第六章微型計算機和外設的數據傳輸_第1頁
第六章微型計算機和外設的數據傳輸_第2頁
第六章微型計算機和外設的數據傳輸_第3頁
第六章微型計算機和外設的數據傳輸_第4頁
第六章微型計算機和外設的數據傳輸_第5頁
已閱讀5頁,還剩62頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第六章第六章 輸入輸出接口基輸入輸出接口基礎(礎(CPU與外設之間的與外設之間的數據傳輸)數據傳輸)把數據給我吧Sorry, I cant understand.哇第六章第六章微機與外設之間的數據傳輸微機與外設之間的數據傳輸主要內容 接口的基本概念接口的基本概念 CPUCPU與端口(外設)之間的數據傳送方與端口(外設)之間的數據傳送方式式 簡單接口電路的擴展簡單接口電路的擴展6.1 接口的基本概念接口的基本概念一、基本問題一、基本問題1 1、什么是、什么是I/OI/O接口(電路)?接口(電路)?I/OI/O接口是位于系統與外設間、用來協助完接口是位于系統與外設間、用來協助完成數據傳送和控制任務

2、的邏輯電路成數據傳送和控制任務的邏輯電路PCPC機系統板的可編程接口芯片、機系統板的可編程接口芯片、I/OI/O總線槽總線槽的電路板(適配器)都是接口電路的電路板(適配器)都是接口電路6.1 接口的基本概念接口的基本概念為什么需要為什么需要I/OI/O接口(電路)?接口(電路)?微機的外部設備多種多樣微機的外部設備多種多樣工作原理不同工作原理不同機械、電子、機電、電磁機械、電子、機電、電磁傳送信息類型多樣傳送信息類型多樣數字量、模擬量、開關量數字量、模擬量、開關量傳送速度差別極大傳送速度差別極大傳送方式不盡相同傳送方式不盡相同串行、并行串行、并行編碼方式不同編碼方式不同二進制、二進制、BCDB

3、CD碼、碼、ASCIIASCII碼碼6.1 接口的基本概念接口的基本概念它們不能與它們不能與CPUCPU直接相連直接相連必須經過中間電路再與系統相連必須經過中間電路再與系統相連這部分電路被稱為這部分電路被稱為I/OI/O接口電路接口電路6.1 接口的基本概念接口的基本概念3、什么是微機接口技術?、什么是微機接口技術?處理微機系統與外設間聯系的技術處理微機系統與外設間聯系的技術注意其軟硬結合的特點注意其軟硬結合的特點根據應用系統的需要,使用和構造相應的接根據應用系統的需要,使用和構造相應的接口電路,編制配套的接口程序,支持和連接口電路,編制配套的接口程序,支持和連接有關的設備有關的設備6.1 接

4、口的基本概念接口的基本概念4 4、接口的功能、接口的功能對對I/OI/O端口進行尋址,對送來的片選信號進行端口進行尋址,對送來的片選信號進行識別;識別; (2)(2) 對輸入數據進行對輸入數據進行緩沖,緩沖,輸出數據進行輸出數據進行鎖存鎖存輸出接口有鎖存環節;輸入接口有緩沖環節輸出接口有鎖存環節;輸入接口有緩沖環節鎖存器:功能是把來自設備的輸入信息鎖存起來,并一直鎖存器:功能是把來自設備的輸入信息鎖存起來,并一直穩定地保持它,直到微處理器取走信息。如圖所示:穩定地保持它,直到微處理器取走信息。如圖所示:18DDENCP.oQQoCP CP 鎖存信號鎖存信號D D 數據輸入數據輸入Q Q數據輸出

5、數據輸出功能:功能:CPCP有效,有效,Q QD DCPCP無效,無效,Q Q保持不變保持不變三態緩沖器是微處理器并行總線接口中必須要使用的一種三態緩沖器是微處理器并行總線接口中必須要使用的一種接口部件。如圖所示:接口部件。如圖所示:oEN輸入輸出為0其中EN開門: 輸入為1時輸出為1輸入為0時其中EN關門: 輸入為1/0,輸出為高阻6.1 接口的基本概念接口的基本概念(3)(3)數據轉換功能:數據轉換功能:對信號的形式和數據的格式進行對信號的形式和數據的格式進行變換;變換;(4)(4)聯絡功能:聯絡功能:與與CPUCPU和和I/OI/O設備進行聯絡設備進行聯絡就緒信號,就緒信號,忙信號等;忙

6、信號等; 中斷管理:發出中斯請求信號、接收中斷響應信中斷管理:發出中斯請求信號、接收中斷響應信號、發送中斷類型碼的功能。并具有優先級管理號、發送中斷類型碼的功能。并具有優先級管理功能;功能; 復位:接收復位信號,從而使接口本身以及所連復位:接收復位信號,從而使接口本身以及所連的外設進行重新啟動;的外設進行重新啟動;可編程:用軟件來決定其工作方式,用軟件來設可編程:用軟件來決定其工作方式,用軟件來設置有關的控制信號;置有關的控制信號;6.1 接口的基本概念接口的基本概念錯誤檢測:一類是傳輸錯誤錯誤檢測:一類是傳輸錯誤, ,比如奇偶校驗。比如奇偶校驗。另另類是覆蓋錯誤,數據還沒有被取走之類是覆蓋錯

7、誤,數據還沒有被取走之前就被新的數據覆蓋掉了。通過在相應的前就被新的數據覆蓋掉了。通過在相應的狀態端口的某一位來控制實現狀態端口的某一位來控制實現。5、接口的分類、接口的分類接口電路按功能可分為兩類接口電路按功能可分為兩類:是使微處理器正常工作所需要的輔助電路:時是使微處理器正常工作所需要的輔助電路:時鐘信號或中斷請求等;鐘信號或中斷請求等;是輸入是輸入/ /輸出接口電路:輸出接口電路:CPUCPU與外部設備信息的與外部設備信息的傳送(接收、發送)。傳送(接收、發送)。 最常用的外部設備:如鍵盤、顯示裝置、打印最常用的外部設備:如鍵盤、顯示裝置、打印機、磁盤機等都是通過輸入機、磁盤機等都是通過

8、輸入/ /輸出接口和總線輸出接口和總線相連的,完成檢測和控制的儀表裝置也屬于外相連的,完成檢測和控制的儀表裝置也屬于外部設備之列,也是通過接口電路和主機相連。部設備之列,也是通過接口電路和主機相連。輔助電路接口輔助電路接口二、二、CPUCPU與輸入輸出設備之間傳輸的信息(三類)與輸入輸出設備之間傳輸的信息(三類)數據信息數據信息:包括三種形式:數字量、模擬量包括三種形式:數字量、模擬量 、開關量。、開關量。狀態信息狀態信息:是外設通過接口往:是外設通過接口往CPUCPU傳送的傳送的 如:如:“準備好準備好”(READY)(READY)信號、信號、“忙忙”(BUSYBUSY)信號。信號。控制信息

9、控制信息:是:是CPUCPU通過接口傳送給外設的通過接口傳送給外設的 如:外設的啟動信號、停止信號就是常見的控如:外設的啟動信號、停止信號就是常見的控制信息。制信息。6.1 接口的基本概念接口的基本概念三、接口與系統的連接三、接口與系統的連接1 1、接口部件的典型結構、接口部件的典型結構控制總線控制總線CB地址總線地址總線ABI/O接口電路接口電路數據數據控制控制狀態狀態數據總線數據總線DBCPU外設外設控制寄存器控制寄存器狀態寄存器狀態寄存器數據寄存器數據寄存器接口芯片的典型結構6.1 接口的基本概念接口的基本概念接口電路的內部結構接口電路的內部結構CPUCPU與外設主要有數據、狀態和控制信

10、息需與外設主要有數據、狀態和控制信息需要相互交換,于是從應用角度看內部:要相互交換,于是從應用角度看內部: 數據寄存器數據寄存器輸入數據寄存器:保存外設給輸入數據寄存器:保存外設給CPUCPU的數據的數據輸出數據寄存器:保存輸出數據寄存器:保存CPUCPU給外設的數據給外設的數據 狀態寄存器狀態寄存器保存外設或接口電路的狀態保存外設或接口電路的狀態 控制寄存器控制寄存器保存保存CPUCPU給外設或接口電路的命令給外設或接口電路的命令6.1 接口的基本概念接口的基本概念接口電路的可編程性接口電路的可編程性許多接口電路具有多種功能和工作方式,許多接口電路具有多種功能和工作方式,可以通過編程的方法選

11、定其中一種可以通過編程的方法選定其中一種接口需進行物理連接,還需編寫接口軟件接口需進行物理連接,還需編寫接口軟件接口軟件有兩類:接口軟件有兩類:初始化程序段初始化程序段設定芯片工作方式等設定芯片工作方式等數據交換程序段數據交換程序段管理、控制、驅動外設,管理、控制、驅動外設,負責外設和系統間信息交換負責外設和系統間信息交換端口(端口(PORT)2 2、接口部件的、接口部件的I/OI/O端口端口CPUCPU和外設進行數據傳輸時,各類信息在接口中和外設進行數據傳輸時,各類信息在接口中進入不同的寄存器,一般稱這些寄存器為進入不同的寄存器,一般稱這些寄存器為I/OI/O端端口,每個端口有一個端口地址。

12、口,每個端口有一個端口地址。 一個接口電路可以具有多個一個接口電路可以具有多個I/OI/O端口(寄存器),端口(寄存器),每個端口用來保存和交換不同的信息每個端口用來保存和交換不同的信息數據寄存器、狀態寄存器和控制寄存器占有的數據寄存器、狀態寄存器和控制寄存器占有的I/OI/O地址常依次被稱為地址常依次被稱為數據端口數據端口、狀態端口狀態端口和和控控制端口制端口,用于保存數據、狀態和控制信息,用于保存數據、狀態和控制信息CPUCPU對外設的輸入對外設的輸入/ /輸出操作就歸結為對接口芯片輸出操作就歸結為對接口芯片各各端口的讀端口的讀/ /寫操作寫操作。返回6.1 接口的基本概念接口的基本概念3

13、 3、輸入輸出的尋址方式(端口的編址方式)、輸入輸出的尋址方式(端口的編址方式)接口電路占用的接口電路占用的I/OI/O端口有兩類編排形式端口有兩類編排形式I/OI/O端口與存儲器統一編址端口與存儲器統一編址它們共享一個地址空間它們共享一個地址空間如如M6800M6800I/OI/O端口單獨編址端口單獨編址I/OI/O地址空間獨立于存儲地址空間地址空間獨立于存儲地址空間如如8086/80888086/80886.1 接口的基本概念接口的基本概念統一編址方式統一編址方式優點:優點:不需要專門的不需要專門的I/OI/O指令指令I/OI/O數據存取與存儲器數數據存取與存儲器數據存取一樣靈活(多種據存

14、取一樣靈活(多種尋址方式)尋址方式)缺點:缺點:I/OI/O端口要占去部分存儲端口要占去部分存儲器地址空間器地址空間程序不易閱讀(不易分程序不易閱讀(不易分清訪存和訪問外設)清訪存和訪問外設)內存內存部分部分I/O部分部分存儲器空間存儲器空間00000FFFFF6.1 接口的基本概念接口的基本概念獨立編址方式獨立編址方式優點:優點:I/O端口的地址空間獨立端口的地址空間獨立控制和地址譯碼電路相對簡單控制和地址譯碼電路相對簡單專門的專門的I/O指令使程序清晰易讀指令使程序清晰易讀缺點:缺點:I/O指令沒有存儲器指令豐富指令沒有存儲器指令豐富內存內存空間空間I/O空間空間FFFFF0FFFF80

15、x86采用采用I/O端口獨立編址端口獨立編址6.1 接口的基本概念接口的基本概念對于對于80868086,M M和和IOIO的不同之處:的不同之處:地址線的條數:地址線的條數:2020、1616地址的范圍:地址的范圍:2 22020、2 21616、指令不同產生的信號不同:指令不同產生的信號不同:M/IOM/IO8088/8086的輸入輸出指令的輸入輸出指令輸入輸出指令舉例輸入輸出指令舉例輸入指令輸入指令(ININ:將外設數據傳送給:將外設數據傳送給CPUCPU內的內的AL/AXAL/AX)IN AL,8IN AL,8; ;字節輸入字節輸入IN AL,DXIN AL,DX; ;字節輸入字節輸入

16、IN AX,8IN AX,8; ;字輸入字輸入IN AX,DXIN AX,DX; ;字輸入字輸入輸出指令輸出指令(OUTOUT:將:將CPUCPU內的內的AL/AXAL/AX數據傳送給外設)數據傳送給外設)OUT 8,ALOUT 8,AL; ;字節輸出字節輸出OUT DX,ALOUT DX,AL; ;字節輸出字節輸出OUT 8,AXOUT 8,AX; ;字輸出字輸出OUT DX,AXOUT DX,AX; ;字輸出字輸出演示演示演示演示IN AL, 21H返回OUT 43H, AL返回第第6章:章:8088/8086的的I/O端口端口8088只能通過輸入輸出指令與外設進行數只能通過輸入輸出指令與

17、外設進行數據交換;呈現給程序員的外設是端口據交換;呈現給程序員的外設是端口(Port),即),即I/O地址地址8086用于尋址外設端口的地址線為用于尋址外設端口的地址線為16條,條,端口最多為端口最多為21665536(64K)個,端口)個,端口號為號為0000H FFFFH每個端口用于傳送一個字節的外設數據每個端口用于傳送一個字節的外設數據第第6章:章:I/O尋址方式尋址方式設計有兩種尋址方式設計有兩種尋址方式v直接尋址直接尋址:只用于尋址:只用于尋址00H FFH前前256個個端口,操作數端口,操作數8表示端口號,表示端口號,IN AL, 21Hv間接尋址間接尋址:可用于尋址全部:可用于尋

18、址全部64K個端口,個端口,DX寄存器的值就是端口號寄存器的值就是端口號, IN AL,DX 對大于對大于FFH的端口只能采用間接尋址方式的端口只能采用間接尋址方式第第6章:數據交換方式章:數據交換方式如果輸入輸出一個字節,利用如果輸入輸出一個字節,利用AL寄存器寄存器如果輸入輸出一個字,利用如果輸入輸出一個字,利用AX寄存器寄存器輸入一個字,實際上是從連續兩個端口輸入輸入一個字,實際上是從連續兩個端口輸入兩個字節,分別送兩個字節,分別送AL(對應低地址端口)(對應低地址端口)和和AH(對應高地址端口)(對應高地址端口),IN AX, 21H輸出一個字,實際上是將輸出一個字,實際上是將AL(對

19、應低地址(對應低地址端口)和端口)和AH(對應高地址端口)兩個字節(對應高地址端口)兩個字節的內容輸出給連續兩個端口的內容輸出給連續兩個端口, OUT 21H,AX6.2 CPU6.2 CPU與外設之間數據的與外設之間數據的傳送方式傳送方式 CPUCPU與外設之間傳輸數據的控制方式通常有與外設之間傳輸數據的控制方式通常有三種:三種:程序方式程序方式: : 無條件傳送方式和有條件傳送方式無條件傳送方式和有條件傳送方式中斷方式中斷方式DMADMA方式方式 6.2 CPU6.2 CPU與外設之間數據的傳送方式與外設之間數據的傳送方式一、程序方式一、程序方式 指用輸入指用輸入/ /輸出指令,來控制信息

20、傳輸輸出指令,來控制信息傳輸的方式,是一種軟件控制方式,根據程序控的方式,是一種軟件控制方式,根據程序控制的方法不同,又可以分為無條件傳送方式制的方法不同,又可以分為無條件傳送方式和條件傳送方式。和條件傳送方式。1 1、無條件傳送方式、無條件傳送方式條件:利用程控方式與外設交換信息時,條件:利用程控方式與外設交換信息時,如果輸入如果輸入/ /輸出的時刻,都可以保證外設總輸出的時刻,都可以保證外設總是處于是處于“準備好準備好”狀態,則可以直接利用狀態,則可以直接利用輸入輸入/ /輸出指令進行信息的輸入輸出指令進行信息的輸入/ /輸出操作。輸出操作。適合于簡單設備,如適合于簡單設備,如LEDLED

21、數碼管、按鍵或按數碼管、按鍵或按紐等紐等無條件傳送的接口和操作均十分簡單無條件傳送的接口和操作均十分簡單這種傳送有前提:外設必須隨時就緒這種傳送有前提:外設必須隨時就緒MOV DX, 160HIN AL, DX74LS244+5V10K x 8G1 G2數據總線數據總線CSRDMOV DX, 160HMOV AL, BXOUT DX, AL+5V74LS373300 x 8LE OE數據總線數據總線CSWR無條件傳送流程無條件傳送流程第第6章:章:6.3 查詢傳送方式及其接口查詢傳送方式及其接口2 2、條件傳送方式、條件傳送方式又稱查詢方式,即通過程序查詢相應設備又稱查詢方式,即通過程序查詢相

22、應設備的狀態,若狀態不符合,則的狀態,若狀態不符合,則CPUCPU不能進行輸不能進行輸入入/ /輸出操作,需要等待;只有當狀態信號輸出操作,需要等待;只有當狀態信號符合要求時,符合要求時,CPUCPU才能進行相應的輸入才能進行相應的輸入/ /輸輸出操作。出操作。 CPUCPU需要先了解(查詢)外設的工作狀態,然后在需要先了解(查詢)外設的工作狀態,然后在外設可以交換信息的情況下(就緒)實現數據輸入外設可以交換信息的情況下(就緒)實現數據輸入或輸出或輸出對多個外設的情況,則對多個外設的情況,則CPUCPU按一定順序依次查詢按一定順序依次查詢(輪詢)。先查詢的外設將優先進行數據交換(輪詢)。先查詢

23、的外設將優先進行數據交換查詢傳送的特點是:工作可靠,適用面寬,但傳送查詢傳送的特點是:工作可靠,適用面寬,但傳送效率低效率低就緒就緒(Ready)在輸入場合在輸入場合“就緒就緒”說明輸入接口已準備好送往說明輸入接口已準備好送往CPUCPU的數據,的數據,正等著正等著CPUCPU來讀取來讀取該狀態也可用接口中數據緩沖器已該狀態也可用接口中數據緩沖器已“滿滿”來描述來描述 在輸出場合在輸出場合“就緒就緒”說明輸出接口已做好準備,等待接收說明輸出接口已做好準備,等待接收CPUCPU要輸出的數據要輸出的數據該狀態也可用接口數據緩沖器已該狀態也可用接口數據緩沖器已“空空”、或者用、或者用接口(外設)接口

24、(外設)“閑閑”或不或不“忙(忙(BusyBusy)”來描述來描述返回就緒:滿,空、閑、不忙就緒:滿,空、閑、不忙第第6章:查詢傳送的兩個環節章:查詢傳送的兩個環節數據的傳送環節由三個環節組成數據的傳送環節由三個環節組成(1)(1)讀取狀態字讀取狀態字尋址狀態口尋址狀態口讀取狀態寄存器的標志位讀取狀態寄存器的標志位(2)(2)查詢環節查詢環節檢測是否滿足,若不就緒就繼續查詢,檢測是否滿足,若不就緒就繼續查詢,直至就緒直至就緒 傳送環節傳送環節尋址數據口尋址數據口是輸入,通過輸入指令從數據端口讀入是輸入,通過輸入指令從數據端口讀入數據數據是輸出,通過輸出指令向數據端口輸出是輸出,通過輸出指令向數

25、據端口輸出數據數據輸入狀態輸入狀態就緒?就緒?數據交換數據交換YN流程流程 查詢式輸入接口電路查詢式輸入接口電路ooooooooo+5VIO/MRDABReadyRDIO/MCSCS 輸輸 入入 裝裝 置置數據數據選通信選通信號號DQ鎖存鎖存器器緩沖緩沖器器緩沖器緩沖器地址譯碼地址譯碼地址譯地址譯碼碼狀態口狀態口數據口數據口數據數據去去DB狀態信息狀態信息&R數據端口數據端口狀態端口狀態端口當輸入裝置數據準備好發出一個選通信號當輸入裝置數據準備好發出一個選通信號, ,一面把數據鎖一面把數據鎖存起來存起來, ,一面送一面送D D觸發器的觸發器的CLKCLK端端, ,將將D=1D=1打入打

26、入Q Q端端, ,使使Q=1Q=1;CPUCPU讀入狀態信息讀入狀態信息READYREADY;當;當READY=1,READY=1,輸入數據;讀輸入數據;讀入數據同時入數據同時, ,將狀態信號清零。將狀態信號清零。程序段如下:程序段如下:G0:G0:ININAL,STATUS-PORTAL,STATUS-PORT;讀入狀態信息;讀入狀態信息TESTTESTAL,10HAL,10H;READY=1READY=1?JZJZG0G0;未準備好;未準備好, ,再查再查ININAL,DATA-PORTAL,DATA-PORT;準備好;準備好, ,讀入讀入查詢式輸出接口電路查詢式輸出接口電路地址譯碼地址譯

27、碼ooooooooIO/MWRIO/MRD+5VQDRACK“BUSY”DB去去 DB狀態信息狀態信息BUSY輸出數據端口輸出數據端口狀態端口狀態端口數據數據輸輸 出出 設備設備鎖存器鎖存器緩沖器緩沖器地址譯碼地址譯碼&CSCS地址譯碼地址譯碼在輸出時在輸出時CPUCPU需了解外設的狀態需了解外設的狀態, ,如無空則等待如無空則等待, ,有空執行輸有空執行輸出指令出指令, ,過程如下:過程如下:當輸出裝置輸出數據后當輸出裝置輸出數據后, ,發發ACKACK信號信號, ,將將D D觸發器置觸發器置0,0,即即BUSY=0BUSY=0CPUCPU查詢查詢BYSY,BYSY,若為若為0,0,

28、轉入轉入, ,否否, ,繼續查繼續查執行輸出指令執行輸出指令, ,把數據送至鎖存器把數據送至鎖存器同時令同時令D D觸發器置觸發器置1,1,它一方面告知外設它一方面告知外設, , 數據已準備好數據已準備好, ,另一方面讓另一方面讓BUSY=1,BUSY=1,阻止阻止CPUCPU輸出新的數據輸出新的數據查詢傳送流程查詢傳送流程返回程序段如下:程序段如下:G0:G0: ININAL,STATUT-PORTAL,STATUT-PORT;輸入狀態信;輸入狀態信息息TESTTESTAL,01AL,01;BUSY=0BUSY=0?JNZJNZG0G0;為;為1,1,再查再查MOVMOVAL,STOREAL

29、,STORE;從緩沖區取數;從緩沖區取數OUTOUTDATA-PORT,ALDATA-PORT,AL ;輸出數據;輸出數據3 3、中斷傳送方式、中斷傳送方式 (1 1)基本原理)基本原理 從查詢式的傳輸過程可以看出,它的優點是從查詢式的傳輸過程可以看出,它的優點是硬件開銷小,使用起來比較簡單。但在此方式下,硬件開銷小,使用起來比較簡單。但在此方式下,CPUCPU要不斷地查詢外設的狀態,當外設未準備好時,要不斷地查詢外設的狀態,當外設未準備好時,CPUCPU就只能循環等待,不能執行其它程序,這樣就就只能循環等待,不能執行其它程序,這樣就浪費了浪費了CPUCPU的大量時間,降低了主機的利用率。的大

30、量時間,降低了主機的利用率。中斷傳送方式:即當中斷傳送方式:即當CPUCPU進行主程序操作時,外設進行主程序操作時,外設的數據已存入輸入端口的數據寄存器;或端口的的數據已存入輸入端口的數據寄存器;或端口的數據輸出寄存器已空,由外設通過接口電路向數據輸出寄存器已空,由外設通過接口電路向CPUCPU發出中斷請求信號,發出中斷請求信號,CPUCPU在滿足一定的條件下,暫在滿足一定的條件下,暫停執行當前正在執行的主程序,轉入執行相應能停執行當前正在執行的主程序,轉入執行相應能夠進行輸入夠進行輸入/ /輸出操作的子程序,待輸入輸出操作的子程序,待輸入/ /輸出操輸出操作執行完畢之后作執行完畢之后CPUC

31、PU即返回繼續執行原來被中斷的即返回繼續執行原來被中斷的主程序。主程序。這樣這樣CPUCPU就避免了把大量時間耗費在等待、查詢狀就避免了把大量時間耗費在等待、查詢狀態信號的操作上,使其工作效率得以大大地提高。態信號的操作上,使其工作效率得以大大地提高。能夠向能夠向CPUCPU發出中斷請求的設備或事件稱為中斷源。發出中斷請求的設備或事件稱為中斷源。微機系統引入中斷機制后,使微機系統引入中斷機制后,使CPUCPU與外設(甚至多與外設(甚至多個外設)處于并行工作狀態,便于實現信息的實個外設)處于并行工作狀態,便于實現信息的實時處理和系統的故障處理。時處理和系統的故障處理。 INTRCPU外設第第6章

32、:章:6.4 中斷傳送方式中斷傳送方式斷點斷點主程序主程序中斷服務程序中斷服務程序中斷請求中斷請求對外設對外設進行處理進行處理繼續執行繼續執行返回斷點返回斷點CPU在執行程序中,在執行程序中,被內部或外部的事件所被內部或外部的事件所打斷,轉去執行一段預打斷,轉去執行一段預先安排好的中斷服務程先安排好的中斷服務程序;服務結束后,又返序;服務結束后,又返回原來的斷點,繼續執回原來的斷點,繼續執行原來的程序行原來的程序流程流程第第6章:章:中斷傳送是一種效率更高的程序傳送方式中斷傳送是一種效率更高的程序傳送方式進行傳送的進行傳送的中斷服務程序是預先設計好的中斷服務程序是預先設計好的中斷請求是外設隨機

33、向中斷請求是外設隨機向CPUCPU提出的提出的CPUCPU對請求的檢測是有規律的對請求的檢測是有規律的:一般是在每:一般是在每條指令的最后一個時鐘周期采樣中斷請求輸條指令的最后一個時鐘周期采樣中斷請求輸入引腳入引腳中斷還有著非常廣泛的應用中斷還有著非常廣泛的應用以輸入為例以輸入為例: :輸入裝置輸入一數據輸入裝置輸入一數據, ,發出選通信號發出選通信號, ,一方面把數據存入鎖存器一方面把數據存入鎖存器, ,一方面又使一方面又使D D觸發器置觸發器置1,1,在中斷允許下在中斷允許下, ,發出發出INTR, CPUINTR, CPU在現行指令執行完在現行指令執行完后后, ,發出發出INTA, IN

34、TA, 把外設送來的中斷向量放到把外設送來的中斷向量放到DBDB上上, ,于是于是CPUCPU轉入中斷服務程序轉入中斷服務程序, ,讀入數據讀入數據, ,同時清除中同時清除中斷請求斷請求INTR,INTR,中斷處理完中斷處理完,CPU,CPU返回被中斷處理的程返回被中斷處理的程序繼續執行。序繼續執行。n中斷請求中斷請求n中斷響應中斷響應n關中斷關中斷n斷點保護斷點保護n中斷識別中斷識別n現場保護現場保護n中斷服務中斷服務n恢復現場恢復現場n開中斷開中斷n中斷返回中斷返回中斷服務是進行數據交換的實質性環節中斷服務是進行數據交換的實質性環節中斷工作過程中斷工作過程3 3、中斷優先級問題的解決、中斷

35、優先級問題的解決 當系統中有多個設備提出中斷請求時,當系統中有多個設備提出中斷請求時,就有一個該響應誰的問題,也就是一個優就有一個該響應誰的問題,也就是一個優先級的問題,解決優先級的問題一般可有先級的問題,解決優先級的問題一般可有三種方法:三種方法:軟件查詢法、簡單硬件方法及軟件查詢法、簡單硬件方法及專用硬件方法專用硬件方法。 軟件查詢法軟件查詢法 只需有簡單的只需有簡單的硬件電路,如將硬件電路,如將A A、B B、C C三臺設備的中三臺設備的中斷請求信號斷請求信號“或或”后作為系統后作為系統INTRINTR。進入中斷服務子程進入中斷服務子程序后,再用軟件查序后,再用軟件查詢的方式分別對不詢的

36、方式分別對不同的設備的服務,同的設備的服務,查詢程序的設計思查詢程序的設計思想同查詢式。想同查詢式。 第第6章:中斷查詢接口章:中斷查詢接口A0A15鎖鎖存存器器INTR三態三態緩沖器緩沖器譯碼譯碼 8001HD0D7中斷中斷A中斷中斷B中斷中斷CIOR簡單硬件方法:以鏈式中斷優先權排隊簡單硬件方法:以鏈式中斷優先權排隊電路為例,菊花鏈法電路為例,菊花鏈法專用硬件方式專用硬件方式采 用 可 編 程 的 中 斷 控 制 器 芯 片 , 如采 用 可 編 程 的 中 斷 控 制 器 芯 片 , 如Intel8259AIntel8259A 中斷源的識別中斷源的識別第第6章:章:問題問題1 1:系統有

37、多個中斷請求,:系統有多個中斷請求,CPUCPU如何識別中斷源?如何識別中斷源?解答解答1:向量中斷向量中斷解答解答2:中斷查詢中斷查詢中斷優先權排隊中斷優先權排隊計算機按中斷源優先權高低逐次響應的過計算機按中斷源優先權高低逐次響應的過程稱優先權排隊,這個過程可通過硬件程稱優先權排隊,這個過程可通過硬件電路來實現,也可以軟件實現電路來實現,也可以軟件實現第第6章:章:6.4.3 中斷優先權中斷優先權(續(續1)問題問題2 2:有多個中斷同時請求,:有多個中斷同時請求,CPUCPU如何應對?如何應對?解答解答1:鏈式優先權排隊電路鏈式優先權排隊電路解答解答2:優先權編碼電路優先權編碼電路解答解答

38、3:軟件查詢軟件查詢中斷嵌套中斷嵌套當當CPU響應某一中斷時,若有優先權高的中斷源發出中響應某一中斷時,若有優先權高的中斷源發出中斷請求,則斷請求,則CPU能中斷正在進行的中斷服務程序,并能中斷正在進行的中斷服務程序,并保留這個程序的斷點(類似于子程序嵌套),響應高保留這個程序的斷點(類似于子程序嵌套),響應高級中斷,高級中斷處理結束以后,再繼續進行被中斷級中斷,高級中斷處理結束以后,再繼續進行被中斷的中斷服務程序,這個過程稱為中斷嵌套的中斷服務程序,這個過程稱為中斷嵌套。第第6章:章:6.4.3 中斷優先權中斷優先權(續(續2)問題問題3 3:中斷處理過程中,:中斷處理過程中,又有中斷提出請

39、求,怎么辦?又有中斷提出請求,怎么辦?解答解答1:鏈式優先權排隊電路鏈式優先權排隊電路解答解答2:優先權編碼電路優先權編碼電路第第6章:章:6.5 DMA傳送方式傳送方式3、 DMA傳送方式傳送方式希望克服程序控制傳送的不足:希望克服程序控制傳送的不足:外設外設CPU存儲器存儲器外設外設CPU存儲器存儲器直接存儲器存取直接存儲器存取DMA:外設外設存儲器存儲器外設外設存儲器存儲器CPU釋放總線,由釋放總線,由DMA控制器管理控制器管理第第6章:傳送方式的比較章:傳送方式的比較4 4、傳送方式的比較、傳送方式的比較無條件傳送無條件傳送:慢速外設需與:慢速外設需與CPUCPU保持同步保持同步查詢傳送查詢傳送: 簡單實用,效率較低簡單實用,效率較低中斷傳送中斷傳送:外

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論