




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
侯彥利第6章輸入/輸出與中斷技術吉林大學工學部計算機硬件基礎課程
微機原理與接口技術1第6章輸入/輸出與中斷技術
侯彥利23本章教學目的了解輸入輸出系統的基本知識了解系統總線與輸入輸出設備的連接方式。掌握簡單設備接口的設計方法了解中斷的基本概念了解中斷的處理過程熟悉8088/8086中斷系統46.1I/O接口概述通常把處理器和主存儲器之外的部分稱為輸入輸出系統。包括輸入輸出設備、輸入輸出接口和輸入輸出軟件;56.1.1I/O接口的功能(1)信號電平轉換不同規格的電平轉換為TTL或者MOS電路的電平(2)數據格式轉換串并轉換或數模轉換(3)速度匹配通過緩沖或鎖存保證CPU與外設傳輸數據時各部件都能正確接收數據。6(4)數據傳送建立數據傳輸的邏輯關系,即規定好數據傳輸的過程與時序。(5)尋址能力為外設的各個端口編址,使外設能被cpu訪問到。(6)錯誤檢測功能可進行數據校驗,保證數據傳輸的正確性。7高速的微處理器與低速的外設能夠協調的工作,需要有一個具有數據緩沖和鎖存能力、數據格式轉換能力、提供外設狀態和定時控制能力的連接電路,我們把它叫做輸入輸出接口。86.1.2I/O接口的分類CPU與接口之間通過系統總線傳輸信息,屬于并行傳輸,傳輸的信息有接口的地址信息、控制信息和數據信息。接口與設備之間可以通過串行和并行兩種方式交換信息,包括數據信息、控制信息和狀態信息。9按接口與設備之間的數據傳送方式,接口分為:并行接口:一次傳送一個字節或字的所有位。串行接口:一位一位地傳送。106.2I/O端口及其編址方式CPU與外設進行數據傳輸,接口電路需要設置若干專用寄存器,緩沖輸入輸出數據,設定控制方式,保存輸入輸出狀態信息,這些寄存器常稱為端口。接口中可被CPU直接訪問的專用寄存器稱為端口。端口可分為:數據端口:CPU與外設交換數據信息;狀態端口:保存外設當前的狀態信息;控制端口:CPU向外設發出的控制信息;11CPU通過對端口分配地址識別它們,稱為編址。CPU給每個端口分配一個地址,稱為端口地址或端口號。一個接口中的多個端口分配連續地址。思考:專用寄存器中保存的是什么數據?這些數據可能是從哪里來的?12根據傳輸方向,端口可分為輸入端口和輸出端口。輸入端口:具有“通斷”控制能力輸出端口:具有鎖存能力13D0~D774LS244+5VK0K1K2K3K4K5K6K7DO0~DO7I0I1I2I3I4I5I6I7E1E2≥1IORA2A3A4A5A6A7A8A9A15A10A11A12A13A14系統總線信號≥1&三態門作輸入接口1474LS273作輸出端口系統總線信號D0D0D7D7~~A0A1A2A3A4A5A6A7IOW&&≥111CP+5VQ0Q1Q6Q7…A8A9A10A11A12A13A14A15+5V74LS27374LS273156.2.2I/O端口的編址方式I/O端口編址方式是計算機系統為I/O端口分配端口號的方式。常見的I/O編址方式有兩種:與內存單元統一編址方式獨立編址方式16與內存單元統一編址方式:將存儲器的存儲單元與外設的端口統一編址,即一個端口與一個存儲器單元等同看待;通常為一個外設的各個端口分配連續的地址。優點:數據傳送指令、測試指令都可以訪問I/O端口,不用設置專門的I/O指令;不需要專用的I/O端口控制信號。缺點:劃出的端口地址范圍,不能再作為內存地址使用,所以減少了內存地址空間。17獨立編址方式:又稱單獨編址方式,給外部設備分配專用的端口地址,提供專用的控制信號,使它們成為一個獨立的I/O地址空間,與內存編址無關。優點:不占用內存空間;輸入輸出地址線根數少,I/O端口譯碼電路簡單。
缺點:需要專用的I/O指令、專用控制線。188088/8086CPU采用了I/O端口獨立編址方式,它使用地址信號線A0~A15,最多能夠管理64K個端口,地址范圍0000H~FFFFH,有專用的控制信號IOR和IOW或IO/M、WR、RD;8位的端口地址用于訪問系統主板上的設備;16位的端口地址用于訪問串行口或并行口以及視頻和磁盤驅動系統。1920
D0
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
A13
A14
A15
≥1
&
≥1
IOR
+5V
10KΩ
K21專用指令:INOUT內存地址(共1MB)0端口地址(共64KB)0FFFFFHFFFFHb獨立編址地址空間內存地址(共960KB)0端口地址(共64KB)EFFFFHFFFFFHF0000Ha統一編址地址空間圖6-2兩種不同編址方式的地址空間22I/O端口地址的譯碼I/O端口的地址譯碼與內存地址譯碼原理一樣,可以用基本邏輯門電路搭建,也可以使用專用的譯碼器譯碼。23D0D7~D0D7~Q011111111Q1Q2Q3Q4Q5Q6Q7CP74LS2737406510Ω×8abcdefg+5V10KΩKCIOW≥174LS138≥1A0IORA1A2A3A4A5A6A7A8A9A10A11A12A13A14A15≥1&CG2AG2BBAY0Y1系統總線D0DPG1A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A00000000011110XXX74LS24424256.3CPU與外部設備之間的數據傳送方式主機與外設之間通過一定的控制方式進行信息交換,常用的控制的方式包括無條件傳送方式、程序查詢傳送方式、中斷傳送方式、直接存儲器存取(DMA)方式。266.3.1無條件傳送方式又稱為同步方式,適合簡單外設的數據輸入輸出。常用外設:開關、繼電器、步進電機、發光二極管等。優點:控制程序簡單,軟、硬件開銷都少。27無條件輸入接口28無條件輸出接口296.3.2程序查詢傳送方式又稱為條件傳送方式。I/O接口中有一個狀態端口,CPU通過讀取狀態端口的信息了解設備目前的狀態。工作過程:檢查外設的狀態,判斷外設是否“準備好”。若沒有準備好,則繼續查詢其狀態。外設已準備好,CPU與外設進行數據傳送。若還有數據待傳輸,則轉①,否則終止傳輸。30程序查詢傳送方式流程圖缺點:效率低實時性差316.3.3中斷傳送方式當設備處于空閑狀態或者外設數據準備好時,接口向CPU發出中斷請求信號,CPU收到申請后及時響應接口的中斷請求,暫停執行主程序,轉入執行I/O操作程序(中斷服務子程序),完成數據傳輸之后再返回到主程序繼續執行,這種數據傳送方式稱為中斷方式。32中斷傳送流程圖優點:實時性好處理迅速缺點:不適用于
大量數據
的高速傳輸執行主程序是否有中斷請求?中斷處理,執行數據輸入/輸出中斷響應中斷返回執行主程序輸入/輸出指令執行主程序一條指令執行結束33程序控制下的輸入輸出方式無條件傳送方式、程序查詢傳送方式和中斷傳送方式在數據傳送過程中,CPU從內存讀出數據,再輸出到外部設備,因此,這三種方式被統稱為程序控制下的輸入輸出方式(Programmedinputandoutput),簡稱PIO方式。346.3.4DMA方式直接存儲器存取(DirectMemoryAccess)方式簡稱為DMA方式。是在內存儲器和I/O設備之間建立數據通路,不經過CPU的干預,實現內存與外設之間的快速數據傳送。實現DMA方式需要專門的硬件裝置DMA控制器(DMAC),它負責控制外設與內存之間的數據傳輸。(8237A-5、8237-2)35DMAC的功能DMAC接收外設請求信號,并向CPU發出總線請求信號。DMA過程中可實現:向地址總線發送地址信號,能夠生成讀寫控制信號。控制數據傳送的字節數。DMA過程結束時,能向CPU發出DMA結束信號,并將總線的控制權交還給CPU。36DMAC的工作流程①
外設向DMA控制器發出“DMA傳送請求”信號(DRQ);②DMA控制器收到請求后,向CPU發出“總線請求”信號HOLD,表示希望占用總線;③CPU將數據總線、地址總線和相應的控制信號線均置為高阻態,向DMA控制器發出“總線響應”信號(HLDA)。④DMA控制器收到HLDA信號后,就開始控制總線,并向外設發出DMA響應信號DACK;⑤DMA控制器送出地址信號和相應的控制信號,實現外設與內存或內存與內存之間的直接數據傳送;⑥
規定的數據傳送完后,DMA控制器就撤銷發往CPU的HOLD信號。CPU檢測到HOLD失效后,緊接著撤銷HLDA信號,并在下一時鐘周期重新開始控制總線。37386.4簡單接口電路的應用接口電路結構包括:(1)和系統總線的連接部分;(2)和外設的連接部分;(3)信號轉換電路;(4)上述三部分的控制邏輯。391.簡單的輸入接口電路4074LS244:8個三態門兩個控制端:1G和2G,低電平有效,各控制4個三態門A端為數據輸入端,Y端為數據輸出端。當控制端為低電平時,數據從A端輸入,Y端輸出;當控制端為高電平時,三態門呈高阻狀態,A端與Y端斷開。41端口地址分別為FFC0H與FFC1H。讀取開關的程序:MOVDX,0FFC0HINAL,DX42【例題6-1】分析電路,說明輸入端口的地址范圍,編寫程序判斷8個開關的狀態,如果8個開關都閉合執行GOON程序段,否則執行NEXT程序段。4344 MOVDX,0FFC1H INAL,DX TESTAL,0FFH JZGOONNEXT: … MOVAX,BX ADDAX,CXGOON: …45測試K3的狀態,K3斷開時轉到Label處執行,程序段如下:
TESTAL,4 JNZLabel ……Label:……466.4.2簡單的輸出接口電路74LS273、74LS3748位D鎖存器,輸入端D0~D7,輸出端Q0~Q7MR清除端,為低電平時,芯片復位,Q端輸出全為0;CP觸發端,上升沿觸發,當CP從低電平到高電平跳變時,D0~D7的數據輸出到Q0~Q7并鎖存。4774LS273作輸出端口系統總線信號D0D0D7D7~~A0A1A2A3A4A5A6A7IOW&&≥111CP+5VQ0Q1Q6Q7…A8A9A10A11A12A13A14A15+5V74LS27374LS27348八段LED顯示器abcdefghcomabcdefghcomabcdefgh圖6-13八段LED顯示器(a)段排列(b)共陰極(c)共陽極49八段LED顯示字形代碼表字型共陽極代碼共陰極代碼字型共陽極代碼共陰極代碼0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHB83H7CH3B0H4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF8EH71H7F8H07H滅FFH00H880H7FH50【例題6-2】74LS273作為輸出接口電路驅動一個共陰極8段LED顯示器。請在LED顯示器上循環顯示數字0~F。515274LS273的端口地址為FE00H53程序數據段DSEG SEGMENTSEG8 DB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB6FH,77H,7CH,39H,5EH,79H,71H,00HDSEG ENDS54程序代碼段CSEG SEGMENT ASSUMECS:CSEG,DS:DSEGSTART: MOV AX,DSEG MOV DS,AX LEA BX,SEG8 ;取8段碼顯示字形表基地址 MOVDX,0FE00H AA1:MOV SI,0 AA2:MOV AL,[BX+SI]
;取顯示字形碼 OUT DX,AL55 CALLDELAY ;調用延時子程序 INCSI CMPSI,16 JZ AA1 JMPAA2 MOVAH,4CH INT21HCSEGENDS ENDSTART56延時子程序DELAY PROCNEAR ;子程序開始
PUSH CX MOV CX,2FFFHSUBS:LOOP SUBS POP CX RETDELAY ENDP ;子程序結束576.5中斷技術58中斷的概念中斷,是指在程序執行過程中,出現某種緊急事件,CPU暫停執行現行程序,轉去執行處理該事件的程序——中斷服務程序,執行完后再返回到被暫停的程序繼續執行,這一過程稱為中斷。59中斷源引起中斷的設備或事件稱為中斷源,計算機的中斷源可能是某個硬件部件,也可能是軟件。常見的中斷源有:外圍設備、CPU、存儲器、控制器、總線、實時鐘的定時中斷、程序指令、硬件故障;60中斷的分類:內部中斷和外部中斷內部中斷包括:由CPU本身產生的中斷、由控制器產生的中斷、由程序員安排的中斷指令引起的中斷。外部中斷又根據中斷事件的緊迫程度將中斷源劃分為可屏蔽中斷和不可屏蔽中斷。可屏蔽中斷是指可以延時處理的事件,例如打印機的輸入輸出中斷請求。
不可屏蔽中斷是指事件異常緊急,必須馬上處理,例如掉電、內存奇偶校驗錯引起的中斷。616.6中斷處理的基本過程中斷處理的基本過程包括中斷請求、中斷判優、中斷響應、中斷服務和中斷返回。626.6.1中斷請求內部中斷無需請求外部中斷請求由中斷源提出。CPU的兩個中斷輸入引腳INTR和NMI負責接收中斷請求信號。INTR可屏蔽中斷請求輸入引腳。可屏蔽中斷請求信號一般為高電平。受中斷允許標志位IF的影響,當IF=1時,CPU接受中斷請求;當IF=0時,CPU不予響應,該請求被屏蔽。NMI不可屏蔽中斷請求輸入引腳,上升沿觸發。63646.6.2中斷判優CPU一次只能接受一個中斷源的請求。多個中斷源同時向CPU提出中斷請求時,CPU必須找出中斷優先級最高的中斷源,這一過程稱為中斷判優。中斷判優可以采用硬件方法,也可采用軟件方法。65軟件判優CPU檢測到中斷請求后,響應中斷進入中斷服務程序,首先讀取中斷寄存器的內容,逐位檢測它們的狀態,檢測到某一位為1,就確定對應的中斷源有中斷請求,轉去執行它的中斷服務程序。先檢測哪一個,哪一個的優先級就高,后檢測哪一個,哪一個優先級就低,檢測的順序就是各中斷源的優先級順序。66軟件判優的簡單電路67查詢程序:
MOVDX,87FFHINAL,DX ;讀中斷請求寄存器內容RCRAL,1JCIR0 ;IRQ0有請求,轉IR0RCRAL,1JCIR1 ;IRQ1有請求,轉IR1RCRAL,1JCIR2 ;IRQ2有請求,轉IR2軟件判優的硬件電路簡單,優先權安排靈活,但軟件判優所花的時間長,如果中斷源很多,中斷的實時性就很差。68硬件判優兩種常見的方式:菊花鏈判優電路和中斷控制器判優。691.菊花鏈判優電路基本設計思想:每個中斷源都有一個中斷邏輯電路,所有的中斷邏輯電路連成一條鏈,形如菊花。排在鏈前端的中斷源優先級最高,越靠后的設備優先級越低。CPU收到中斷請求,如果允許中斷,CPU發出中斷應答信號INTA,INTA信號首先到達菊花鏈的前端。70INTA71如果中斷源1提出了中斷請求,它就會截獲INTA信號,封鎖它,使它不能向下一個中斷源傳送,下面中斷源的中斷請求不能被響應。72中斷控制器判優CPU根據中斷向量碼確定中斷源。中斷控制器中,有一個中斷優先級判別器判斷中斷優先級,將優先級最高的中斷源的中斷向量碼提供給CPU。736.6.3中斷響應中斷響應時,CPU向中斷源發出中斷應答信號INTA,同時:①
保護硬件現場,即將標志寄存器FLAGS入棧;②
關中斷,即設置IF=0;③
保護斷點,把主程序斷點的CS和IP值壓入堆棧;④
獲得中斷服務程序的入口地址,分別送入IP和CS中。746.6.4中斷服務中斷服務的過程:保護現場開中斷中斷服務恢復現場返回756.6.5中斷返回中斷返回操作是中斷響應操作的逆過程,CPU從堆棧中彈出IP、CS和FLAGS,恢復被中斷程序的基本信息,使被中斷程序繼續運行。在中斷服務程序的最后一條語句IRET的功能就是中斷返回的操作。766.78086/8088中斷系統8086/8088CPU的中斷系統可以處理256種中斷。每種中斷對應一個編號,范圍0~255,這個編號稱為中斷源的中斷類型碼或中斷向量碼。77中斷分為兩類:內部中斷和外部中斷。外部中斷又分為可屏蔽中斷和不可屏蔽中斷兩類。781.外部中斷不可屏蔽中斷編號為2NMI是不可屏蔽中斷請求信號的輸入端。優先級最高。CPU不需獲取中斷向量碼,不發送INTA,直接查中斷向量表獲得中斷服務程序的入口地址。不可屏蔽中斷用于處理緊急事件,如存儲器讀/寫出錯、電源掉電等。79可屏蔽中斷INTR是可屏蔽中斷請求信號的輸入端。CPU收到中斷請求信號后,檢測中斷允許標志位IF,若IF=1,CPU準備響應INTR請求;若IF=0時,CPU屏蔽INTR請求。中斷標志位IF可以用指令STI和CLI進行設置。可屏蔽中斷的優先級低于不可屏蔽中斷。802.內部中斷內部中斷包括:INTnINT3INTO指令除法錯中斷單步中斷。81INTnCPU執行INTn指令,產生中斷向量碼為n的中斷。n的取值范圍0~255。不管是內部中斷還是外部中斷都可以通過INTn指令調用其中斷服務程序。INT3CPU執行INT3指令引起的中斷,稱為斷點中斷,中斷向量碼為3。這是個單字節指令,代碼為0CCH。在調試程序時用這條指令設置斷點。82INTO指令4號CPU執行INTO指令時,檢測溢出標志位OF,如果OF=1,則產生中斷向量碼為4的中斷。若OF=0,INTO指令不起作用。
MOVBL,126 MOVAL,5 ADDAL,BL;OF=1 INTO;執行溢出中斷服務程序83除法錯中斷0號執行除法指令時,除數為0或商數超出了結果寄存器的取值范圍,產生中斷,中斷向量碼為0。這個中斷的處理過程一般由系統軟件負責。單步中斷1號也叫陷阱中斷,中斷向量碼為1。標志寄存器的標志位TF=1產生的中斷,TF也叫陷阱(Trap)標志。如果TF=1,CPU執行一條指令后產生單步中斷。單步中斷常用于調試程序。843.中斷優先級與中斷嵌套8088/8086系統的中斷優先級如下:不可屏蔽中斷>除法錯中斷>INTn>INTO>可屏蔽中斷>單步中斷中斷可以嵌套8088/8086中斷的處理流程CPU在每條指令的最后一個時鐘周期檢測中斷請求信號:(1).若有非屏蔽中斷請求,則CPU執行完現行指令后,就立即響應中斷。2號。8586(2).如果有可屏蔽中斷請求,CPU響應中斷需要滿足4個條件:
①
CPU處于開中斷狀態,即IF=1;②
當前沒有發生復位、沒有總線請求、沒有內部中斷、沒有不可屏蔽中斷;③
當前執行的指令不是開中斷指令STI,也不是中斷返回指令IRET。如果剛巧是,CPU將它們執行結束后,再執行一條指令,CPU才能響應中斷。④CPU執行完現行指令。(3).進入中斷響應階段,CPU向中斷源發出中斷應答信號INTA,同時:①
保護硬件現場,即將標志寄存器FLAGS入棧;②
關中斷,即設置IF=0;③
保護斷點,把主程序斷點的CS和IP值壓入堆棧;④
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 績效分配協議書
- 空地租賃協議書
- 資產帶持協議書
- 退聘人員協議書
- 稻草供貨協議書
- 瓷磚磚鋪貼合同協議書
- 通航產業協議書
- 聘請工作協議書
- 宣傳車廣告合同協議書
- 資源買賣協議書
- 學校食堂“三同三公開”制度實施方案
- 危化品駕駛員押運員安全培訓
- 2025年福建福州地鐵集團有限公司招聘筆試參考題庫含答案解析
- 肝硬化行TIPS術后整體護理查房
- 人工智能在新聞媒體領域的應用
- 【MOOC】儒家倫理-南京大學 中國大學慕課MOOC答案
- 銀保部三年規劃
- 2024治安調解協議書樣式
- 零工市場(驛站)運營管理 投標方案(技術方案)
- 小學二年級數學找規律練習題及答案
- 智研咨詢重磅發布:2024年中國航運行業供需態勢、市場現狀及發展前景預測報告
評論
0/150
提交評論