




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
微機原理與接口技術2010-2011學年第二學期黃景濤Telmail:hjt.haust@Lab:10-825河南科技大學電子信息工程學院1第5章微型計算機和外設的數據傳輸主要內容
I/O接口電路的典型結構無條件傳送方式查詢傳送方式中斷工作過程
DMA工作原理25.1為什么要用接口電路為什么需要I/O接口(電路)?微機的外部設備多種多樣工作原理、驅動方式、信息格式、以及工作速度方面彼此差別很大它們不能與CPU直接相連必須經過中間電路再與系統相連這部分電路被稱為I/O接口電路35.1為什么要用接口電路什么是I/O接口(電路)?I/O接口(電路)是位于系統與外設間、用來協助完成數據傳送和控制任務的邏輯電路PC機系統板的可編程接口芯片、I/O總線槽的電路板(適配器)都是接口電路CPU接口電路
I/O設備4I/O接口的主要功能⑴對輸入輸出數據進行緩沖和鎖存輸出接口有鎖存環節輸入接口有緩沖環節⑵對信號的形式和數據的格式進行變換微機直接處理:數字量⑶對I/O端口進行尋址⑷與CPU和I/O設備進行聯絡55.2CPU和輸入輸出設備之間的信號5.2.1數據信息
包括三種形式:數字量模擬量開關量65.2CPU和輸入輸出設備之間的信號5.2.2狀態信息外設通過接口向CPU傳送的信號如:“準備好”(READY)信號、“忙”(BUSY)信號5.2.3控制信息
CPU通過接口傳送給外設的如:外設的啟動信號、停止信號就是常見的控制信息注意:控制信息是CPU通過接口控制外設的與CPU控制接口的信息不同75.3接口部件的I/O端口CPU和外設進行數據傳輸時,各類信息在接口中進入不同的寄存器,(注意接口和端口的不同)一般稱這些寄存器為I/O端口,每個端口有一個端口地址。數據端口(數據寄存器)用于對來自CPU和內存的數據或者送往CPU和內存的數據起緩沖作用。狀態端口(狀態寄存器)用來存放外部設備或者接口部件本身的狀態控制端口(控制寄存器)用來存放CPU發出的命令,以便控制接口和設備的動作理解端口I/O接口電路的典型結構85.3接口部件的I/O端口圖5.1外設通過接口和系統的連接
9I/O端口的編址接口電路占用的I/O端口有兩類編排形式I/O端口單獨編址I/O地址空間獨立于存儲地址空間如8086/8088I/O端口與存儲器統一編址它們共享一個地址空間如MCS51108088/8086的輸入輸出指令8086有單獨的輸入輸出指令輸入指令INAL,i8/DX ;字節輸入INAX,i8/DX ;字輸入輸出指令OUTi8/DX,AL ;字節輸出OUTi8/DX ;字輸出功能演示功能演示115.3接口部件的I/O端口注意:無論輸入還是輸出,所用到的地址總是對端口而言的,不是對接口部件而言的。為了節省地址空間,將數據輸入端口和數據輸出端口對應同一個端口地址。同樣,狀態端口和控制端口也常用同一個端口地址。CPU對外設的輸入/輸出操作就歸結為對接口芯片各端口的讀/寫操作。
12I/O端口單獨編址優點:I/O端口的地址空間獨立控制和地址譯碼電路相對簡單專門的I/O指令使程序清晰易讀缺點:I/O指令沒有存儲器指令豐富80x86采用I/O端口獨立編址內存空間I/O空間FFFFF0FFFF013I/O端口與存儲器統一編址優點:不需要專門的I/O指令I/O數據存取與存儲器數據存取一樣靈活缺點:I/O端口要占去部分存儲器地址空間程序不易閱讀(不易分清訪存和訪問外設)內存部分I/O部分存儲空間0FFFFF145.4CPU和外設之間的數據傳送方式5.4.1程序方式用輸入/輸出指令,來控制信息傳輸的方式,分為兩類:無條件傳送方式條件傳送方式15程序控制方式1——無條件傳送方式在CPU與慢速設備交換數據時,可以認為它們總是處于“就緒”狀態,隨時可以進行數據傳送,這即無條件傳送適合于簡單設備,如LED數碼管、按鍵/按鈕等無條件傳送的接口和操作均十分簡單傳送前提——外設必須隨時處于就緒狀態16程序控制方式1——無條件傳送方式無條件傳送示例圖5.3無條件傳送方式的工作原理17程序控制方式2——(條件)查詢傳送方式CPU先了解(查詢)外設的工作狀態,在外設就緒(可以交換信息)的情況下實現數據的輸入或輸出對多個外設的情況,則CPU按一定順序依次查詢(輪詢)。先查詢的外設將優先進行數據交換查詢傳送的特點是:工作可靠,適用面寬,但傳送效率低18查詢傳送的兩個環節查詢環節尋址狀態口讀取狀態寄存器的標志位若不就緒就繼續查詢,直至就緒傳送環節尋址數據口輸入時由輸入指令從數據口讀入數據輸出時由輸出指令向數據口輸出數據數據交換Y輸入狀態就緒?N查詢式數據傳送流程19查詢式輸入接口電路1查詢式輸入的接口20查詢式輸出接口電路1BUSYREADY0READY查詢式輸出的接口21查詢式輸入流程開始初始化測試數據是否準備好?N輸入1個字節或字到CPU對數據進行處理傳送到內存緩沖區操作完成否?處理緩沖區中數據后處理NYY22程序示例從終端往緩沖區輸入1個字符行,當遇到回車符(0DH)或者字符行超過80個字符時,輸入便結束,并自動加上1個換行符(0AH)。如果在輸人的81個字符中未見到回車符,則在終端上輸出信息“BUFFEROVERFLOW”。用偶校驗。如果校驗出錯,也輸出錯誤信息.假定接口的數據輸入端口地址為0052H,數據輸出端口地址為0054H,狀態端口地址為0056H,并且設定如果狀態寄存器中第1位為1,則表示輸入緩沖器中已經有1個字節準備好,可以進行輸入。此外,還設定如果狀態寄存器的第0位為1,則表示輸出緩沖器已經騰空,因而CPU可以往終端輸出數據23程序示例
DATA_SEG SEGMENTMESSAGEDB‘BUFFEROVERFLOW’,0DH,0AHDATA_SEGENDSCOM_SEGSEGMENTBUFFERDB82DUP(?)COUNTDB?COM_SEGENDSCODE SEGMENT ASSUMEDS:DATA_SEG,ES:COM_SEG,CS:CODESTAT: MOVAX,DATA_SEG MOVDS,AX MOVAX,COM_SEG MOVES,AX MOVDI,OFFSETBUFFER MOVCOUNT,DI MOVCX,81 CLD24程序示例NEXT_IN:
INAL,56H
TESTAL,02H
JZNEXT_IN
INAL,52H
0RAL,0
JPENO_ERROR JMPERRORNO_ERROR: ANDAL,7FH STOSB CMPAL,0DH
LOOPNENEXT_IN JNEOVERFLOW MOVAL,0AH STOSB SUBDI,COUNT MOVCOUNT,DI……OVERFLOW:MOVSI,OFFSETMESSAGE
MOVCX,17NEXT_OUT:
INAL,56H
TESTAL,01H
JZNEXT_OUT
LODSBOUT54H,ALLOOPNEXT_OUT
……255.4.2中斷方式程序斷點主程序中斷請求為外設繼續執行返回斷點CPU在執行程序中,被內部或外部的事件所打斷,轉去執行一段預先安排好的中斷服務程序服務結束后,又返回原來的斷點,繼續執行原來的程序提供服務中斷服務程序
入口中斷方式數據傳送流程26中斷傳送與接口中斷傳送是一種效率更高的程序傳送方式。進行傳送的中斷服務程序是預先設計好的查詢方式CPU主動,中斷方式外設主動,中斷請求是外設隨機向CPU提出的CPU對請求的檢測是有規律的:一般是在每條指令的最后一個時鐘周期采樣中斷請求輸入引腳本節主要論述中斷在輸入和輸出方面的應用中斷還有著非常廣泛的應用27中斷方式輸入的接口電路10圖5.728數據輸入的過程外設準備就緒發(選通信號)STB數據入鎖存器,中斷請求觸發器置1若沒有屏蔽則產生INTRCPU滿足條件(允許中斷;指令執行完)發中斷響應信號INTA進入中斷服務子程序讀數據清中斷請求觸發器,數據送D0~D7。(輸出過程請自己思考)29可屏蔽中斷的執行過程302.中斷優先級問題的解決問題1:系統有多個中斷請求,CPU如何識別哪個中斷源發 出的請求?辦法1: 向量中斷(硬件)辦法2: 中斷查詢(軟/硬件結合)中斷源的識別(解決誰提出服務請求的問題)312.中斷優先級問題的解決問題2:有多個中斷同時請求,CPU如何應對?辦法1:軟件查詢方式辦法2:簡單硬件方式——菊花鏈法辦法3:專用硬件方式中斷優先級排隊(解決先為誰服務的問題)322.中斷優先級問題的解決問題3:中斷處理過程中,又有中斷提出請求,怎么辦?辦法1:鏈式優先權排隊電路辦法2:優先權編碼電路中斷嵌套33(1)軟件查詢方式A0~A15鎖存器INTR三態緩沖器譯碼
8001HD0~D7中斷A中斷B中斷C中斷H……-IOR101034(1)軟件查詢方式35(2)簡單硬件方式—菊花鏈法設計思想將所有的設備連成一條鏈,靠近CPU的設備優先級最高,越遠的設備優先級別越低;若級別高的設備發出了中斷請求,在它接到中斷響應信號的同時,封鎖其后的較低級設備使得它們的中斷請求不能響應只有等它的中斷服務結束以后或中斷服務子程序中開中斷后才允許為低級的設備服務36(2)簡單硬件方式—菊花鏈法中斷優先級菊花鏈及其邏輯電路(a)菊花鏈電路(b)菊花鏈邏輯電路37(3)專用硬件方式采用可編程的中斷控制器芯片。如Intel8259A******385.4.3DMA傳送方式1.DMA傳送方式的提出希望克服程序控制傳送的不足: 外設→CPU→存儲器 外設←CPU←存儲器直接存儲器存取DMA:不經CPU,不用指令
外設→存儲器(DMA寫)
外設←存儲器(DMA讀)
擴展:外設?
外設CPU出讓系統總線(輸出高阻),由DMA控制器(DMAC)接管系統總線392.DMA控制器的功能和DMA傳送的原理DMA控制器應該具備的功能:當外設準備就緒,希望進行DMA操作時DMA控制器應能向CPU發總線請求信號。CPU總線請求允許,DMA控制器應能實行對總線的控制。DMA控制器得到總線控制權以后,要向地址總線發送地址信號,修改所用存儲器的地址指針。在DMA傳送期間,DMA控制器應能發讀寫控制信號。為了決定所傳送的字節數,并且判斷DMA傳送是否結束,在DMA控制器內部必須有1個字節計數器,用來存放所傳送的字節數。DMA過程結束時,DMA控制器應向CPU發出結束信號,將總線控制權交還給CPU。40DMA傳送的工作過程⑴CPU對DMA控制器進行初始化設置⑵外設、DMAC、CPU,3者通過應答信號建立聯系:CPU將總線暫交DMAC控制,事后再將控制權返還。⑶DMA傳送DMA讀:存儲器
→
外設DMA寫:存儲器←
外設⑷DMAC的功能:對存儲器尋址地址自動加1/減1計數器減1判斷傳送是否完成傳送流程41用DMA方式單個數據傳輸42DMA傳送流程HLDA發存儲器地址傳送數據傳送結束?DMA結束修改地址指針YN43DMA傳送(以DMA寫為例)-MEMW-IOR數據總線地址總線輸入設備存儲器DMACCPU②③④①HOLDHLDA44DMA控制器的內部最小配置和接口要求45各傳送方式的特點無條件傳送:慢速外設需與CPU保持同步查詢傳送:簡單實用,效率較低中斷傳送:外設主動,可與CPU并行工作,但每次傳送需要額外時間開銷DMA傳送:DMAC控制,外設直接和存儲器進行數據傳送,適合大量、快速數據傳送46習題與思考:
1.CPU與外設之間的數據傳輸控制方式有哪幾種?何謂程序控制方式?它有哪兩種基本方式?請分別用流程圖的形式描述出來。2.試從程序轉移的角度比較中斷控制與子程序調用這兩種處理過程,它們有哪些根本區別?又有哪些相似之處?3.用查詢方式將DATA開始的存貯區的100個字節數據在0FCH端口輸出,完成程序。(設狀態端口地址為0FFH,最高位為1就緒)4.什么是接口?什么是端口?在8086/8088微機系統中,CPU是如何實現端口尋址的?5.簡述菊花鏈式中斷優先級排隊電路的工作過程?6.中斷處理的主要步驟有哪些?試說明每一步的主要動作。47教學要求1.了解I/O接口電路的主要功能、內部和外部特點、端口編址方法、I/O地址譯碼特點2.溫習掌握輸入輸出指令3.掌握無條件、查詢傳送方式4.理解中斷、中斷源、中斷工作過程、中斷源識別、優先權排隊和中斷嵌套5.理解DMA傳送的工作過程48I/O接口的典型結構控制總線CB地址總線ABI/O接口電路數據控制狀態數據總線DBCPU外設控制寄存器狀態寄存器數據寄存器返回49無條件傳送:輸入示例IOR三態緩沖器OEI/O裝置地址譯碼器CSD7~D0A15~A1A00160HMOVDX,160HINAL,DX返回50無條件傳送:輸入實例MOVDX,160HINAL,DX74LS244+5V10Kx8G1G2數據總線CSRD返回51無條件傳送:輸出示例地址譯碼器數據鎖存器A15A0~A14-IOWCS0160H輸出設備D7~D0MOVDX,160HMOVAL,[BX]OUTDX,AL返回52無條件傳送:輸出實例MOVDX,160HMOVAL,[BX]OUTDX,AL+5V74LS373300
x8LEOE數據總線CSWR返回53無條件傳送:輸入輸出接口K7K1K0+5VD0~D7A0~A15CLKLS06反相驅動器LS2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 花茶創意美術課件
- 部門經理培訓
- 電梯房樓頂施工方案
- 新疆交通職業技術學院《光電成像系統設計》2023-2024學年第二學期期末試卷
- 山東商業職業技術學院《油畫半身像》2023-2024學年第二學期期末試卷
- 遼寧體育運動職業技術學院《小型商住空間設計》2023-2024學年第二學期期末試卷
- 江西應用技術職業學院《工程管理與預算》2023-2024學年第二學期期末試卷
- 許昌陶瓷職業學院《商務英語閱讀III》2023-2024學年第一學期期末試卷
- 山東藥品食品職業學院《金融監管學(雙語)》2023-2024學年第二學期期末試卷
- 皖西學院《微視頻制作》2023-2024學年第一學期期末試卷
- 房屋征拆合同協議
- 湖北省武漢市2025屆高中畢業生四月調研考試數學試卷及答案(武漢四調)
- Unit 1 Growing up (Period 1)(教學設計)-2024-2025學年滬教牛津版(深圳用)英語六年級上冊
- 2025-2030中國實驗動物行業市場深度調研及市場前瞻與投資戰略研究報告
- 湖南湘潭高新集團有限公司招聘考試真題2024
- 2025春季學期國開電大本科《政府經濟學》一平臺在線形考(形考任務1至4)試題及答案
- 2025年蘭州糧油集團有限公司招聘筆試參考題庫含答案解析
- GB 21258-2024燃煤發電機組單位產品能源消耗限額
- DB34∕T 4010-2021 水利工程外觀質量評定規程
- 2024年湖南省長沙市中考地理試卷真題(含答案解析)
- 鄭州工業應用技術學院單招《職測》參考試題庫(含答案)
評論
0/150
提交評論