第9講微型計算機和外設的數據傳輸_第1頁
第9講微型計算機和外設的數據傳輸_第2頁
第9講微型計算機和外設的數據傳輸_第3頁
第9講微型計算機和外設的數據傳輸_第4頁
第9講微型計算機和外設的數據傳輸_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

微型計算機系統(tǒng)的硬件結構控制總線CB數據總線DB地址總線AB系統(tǒng)總線形成CPU

I/O設備

I/O接口主存系統(tǒng)總線BUS外設主機1第五章微型計算機和外設的數據傳輸教學重點I/O端口的編址I/O指令CPU和外設之間的數據傳送方式和控制方法25.1為什么要用接口按照功能,接口電路可分為兩類:使微處理器正常工作所需要的輔助電路;輸入輸出(I/O)接口電路3為什么要用接口電路?微機的外部設備多種多樣,例如打印機、掃描儀、硬盤等,它們的功能、工作原理、信息格式、以及工作速度等方面彼此差別很大,因此不能與CPU直接相連,必須經過中間電路再與系統(tǒng)相連,這部分電路被稱為I/O接口電路。4接口的用途對于輸入設備來說,接口通常起信息轉換和緩沖的功能,將輸入設備送來的信息變換成CPU能夠接收的格式,并將其放在緩沖器中讓CPU來接收;對輸出設備來說,接口起信息變換和鎖存的功能,將CPU輸出的信息轉換成設備需要的格式??偨Y:輸入輸出接口電路是為了解決計算機和外部設備之間的信息變換問題而提出來的,是計算機和外設之間傳送信息的部件,每個外設都要通過接口和主機系統(tǒng)相連。接口技術專門研究CPU和外設之間的數據傳送方式、接口電路的工作原理和使用方法。55.2CPU和輸入輸出設備之間的信號(1)數據信息數字量模擬量開關量(2)狀態(tài)信息(輸入)外設通過接口送往CPU對輸入設備來講,一般是用READY表示數據準備就緒對輸出設備來講,一般是用BUSY表示設備是否空閑(3)控制信息(輸出)CPU通過接口送給外設,控制外設的工作在微型機系統(tǒng)中,CPU通過接口與外設交換信息時,數據信息、狀態(tài)信息和控制信息都被看做一種數據信息,通過數據總線傳輸。它們對應三種不同的寄存器:數據寄存器、狀態(tài)寄存器和控制寄存器。65.3接口部件的I/O端口什么是端口?

每個接口部件都包含一組寄存器,CPU和外設進行數據傳輸時,各類信息在接口中進入不同的寄存器,一般稱這些寄存器為I/O端口。輸入輸出所用的地址是針對端口而言的,不是接口。一個接口芯片一般對應幾個端口,每一個端口有一個地址。例,地址為20H的端口通常被稱作20H號端口。一定要理解7外設通過接口和系統(tǒng)的連接8接口部件的寄存器:⑴數據寄存器對來自CPU和內存的數據或者對送往CPU和內存的數據起緩沖作用⑵狀態(tài)寄存器存放外設或接口部件本身的狀態(tài)⑶控制寄存器存放CPU發(fā)出的命令,以便控制接口和設備的動作數據寄存器、狀態(tài)寄存器和控制寄存器占有的I/O地址常依次被稱為數據端口、狀態(tài)端口和控制端口,用于保存數據、狀態(tài)和控制信息9I/O端口的編址接口電路占用的I/O端口有兩類編址方式:

統(tǒng)一編址方式I/O端口與存儲器統(tǒng)一編址,它們共享一個地址空間如M6800獨立編址方式I/O端口單獨編址,I/O地址空間獨立于存儲地址空間如8086/808810優(yōu)點:不需要專門的I/O指令;I/O數據存取與存儲器數據存取一樣靈活。缺點:I/O端口要占去部分存儲器地址空間;程序不易閱讀(不易分清訪存和訪問外設)。內存部分I/O部分存儲器空間00000FFFFF統(tǒng)一編址方式11優(yōu)點:專門的I/O指令使程序閱讀方便I/O端口的地址空間獨立,使存儲器地址范圍擴大缺點:I/O指令沒有存儲器指令豐富內存空間I/O空間FFFFF0FFFF獨立編址方式128086使用A0~A15或者A0~A7尋址I/O端口地址的形成(片選,片內尋址)I/O端口地址的形成13使用8086CPU內存擴展連線14I/O端口的地址譯碼15I/O端口地址的形成如果CPU用8088,與8086的地址形成有什么區(qū)別?16有關端口地址問題

8086CPU與外設交換數據可以字或字節(jié)進行,當以字節(jié)進行時,偶地址端口的字節(jié)數據由低8位數據線D7~D0位傳送,奇地址端口的字節(jié)數據由高8位數據線D15~D8傳送,當用戶在安排外設的端口地址時,如果外設是以8位的方式與CPU連接,就只能將其數據線或者與CPU的低八位或者與高八位連接,這樣同一臺外設的所有寄存器端口地址都只能是偶地址或是奇地址,這時設備的端口地址就會是不連續(xù)的。17185.48086的輸入輸出指令輸入指令IN輸出指令OUT參考P83輸入/輸出指令IN/OUT或匯編課本第12章19輸入指令IN指令匯編格式:IN累加器AL或AX,端口地址操作:執(zhí)行IN指令時,CPU可以從一個8位端口讀入一個字節(jié)到AL中,或者從一個16位端口讀一個字到AX中,取決于端口的位數。例:INAL,50H ;字節(jié)直接輸入INAX,70H ;字直接輸入20輸出指令OUT指令匯編格式:OUT端口地址,累加器AL或AX操作:執(zhí)行OUT指令時,CPU可以將AL中的1個字節(jié)寫入一個8位端口,或者將AX中的一個字寫入一個16位端口。例:OUT44H,AL ;字節(jié)直接輸出OUT80H,AX ;字直接輸出21注意:只能用累加器AL或者AX作為執(zhí)行輸入輸出的機構,不能用其它的寄存器代替;輸入輸出指令可以分為兩大類:一類是直接的輸入輸出指令,端口地址直接給出;一類是間接的輸入輸出指令,端口地址由DX寄存器給出;用直接輸入輸出指令時,尋址范圍為0~255(0FFH),間接輸入輸出指令的范圍是0~65535。0~255之間的地址也可用間接輸入輸出指令,但256~65535之間的端口必須要用DX尋址,使用DX前要使用指令如MOVDX,端口地址給DX設置端口號。228位數據長度的I/O端口地址為3FEH,從該端口讀入數據使用的指令段為:MOVDX,3FEH INAL,DX

16位數據長度的I/O端口地址為3FCH,向該端口寫入數據使用的指令段為:MOVDX,3FCH OUTDX,AX23a.

8086CPU的讀總線周期AD15~AD0I/O端口的讀時序24

程序方式:通過CPU執(zhí)行程序中的I/O指令完成信息傳送。中斷方式:CPU響應外設中斷請求完成數據傳輸。

DMA方式:傳送請求由外設向DMA控制器(DMAC)提出,后者向CPU申請總線,最后DMAC利用系統(tǒng)總線來完成外設和存儲器間的數據傳送。5.5CPU和外設之間的數據傳送方式25無條件傳送方式條件傳送方式程序方式26又稱“同步傳送方式”在CPU與設備交換數據時,可以認為它們總是處于“就緒”狀態(tài),隨時可以進行數據傳輸適于簡單外設,如發(fā)光二極管、開關、七段顯示器等這種傳送有前提:外設必須隨時就緒,傳送不能太頻繁無條件傳送方式27無條件傳送方式的工作原理28舉例K7K1K0+5VD0~D7A1~A15CPLS06反相驅動器LS2738D鎖存器LS244三態(tài)緩沖器8000H譯碼+5VLED0LED7譯碼……GWRRDM/IO29next: movdx,8000h ;DX指向數據端口

inal,dx ;從輸入端口讀開關狀態(tài)

notal ;反相

outdx,al ;送輸出端口顯示

calldelay ;調子程序延時

jmpnext ;重復代碼30有8個發(fā)光二極管,其陰極加低電平則亮,用74LS273作為I/O接口與8086通信,端口地址是20H。要求發(fā)光二極管由低位向高位依次循環(huán)顯示。畫出電路圖,寫出實現該功能的程序。思考題31思考題答案

MOVAL,01HNEXT:OUT20H,AL CALLDELAY ROLAL,1;不帶CF循環(huán)左移

JMPNEXT+5VD0~D7A1~A7CPLS06反相驅動器LS2738D鎖存器20H譯碼LED0LED7譯碼…WRM/IO32條件傳送方式又稱“查詢傳送方式”CPU需要先了解(查詢)外設的工作狀態(tài),然后在外設可以交換信息的情況下(就緒)實現數據輸入或輸出接口部件除了有數據端口,還需傳送狀態(tài)的端口對多個外設的情況,則CPU按一定順序依次查詢(輪詢),先查詢的外設將優(yōu)先進行數據交換查詢傳送的特點是:工作可靠,適用面寬,但傳送效率低33條件傳送的兩個環(huán)節(jié)⑴查詢環(huán)節(jié)尋址狀態(tài)口讀取狀態(tài)寄存器的標志位若不就緒就繼續(xù)查詢,直至就緒⑵

傳送環(huán)節(jié)尋址數據口是輸入,通過輸入指令從數據端口讀入數據是輸出,通過輸出指令向數據端口輸出數據輸入狀態(tài)就緒?數據交換YN34查詢式輸入的接口電路RD+5V8位鎖存器8位三態(tài)緩沖器譯碼1位三態(tài)緩沖器RQ

A1~A15300H310HD0~D7D0DDQCP輸入設備輸入設備RDSTBRM/IOM/IO35SPORTEQU300HDPORTEQU310H …… TEST1: MOVDX,SPORT;DX指向狀態(tài)端口

INAL,DX ;讀狀態(tài)端口

TESTAL,01H ;測試標志位D0 JZTEST1 ;D0=0,未就緒,繼續(xù)查詢

MOVDX,DPORT;D0=1,就緒,DX指向數據端口

INAL,DX ;從數據端口輸入數據

……36查詢式輸出的接口電路8D鎖存器譯碼1位三態(tài)緩沖器RQ

A1~A15300H310HD0~D7D0D+5VQD

R輸出設備輸出設備ACKWRRDCPM/IOM/IO37SPORTEQU300HDPORTEQU310H …… MOVDX,SPORT;DX指向狀態(tài)端口TEST2: INAL,DX ;讀狀態(tài)端口

TESTAL,01H ;測試標志位D0 JNZTEST2 ;D0=1,數據未寫入,繼續(xù)等待

MOVDX,DPORT;D0=0,就緒,DX指向數據端口

MOVAL,[BX];待輸出數據在緩沖區(qū)

OUTDX,AL ;從數據端口輸出數據

38在條件傳送方式時,CPU要用大量時間去執(zhí)行狀態(tài)查詢程序,使CPU的效率大大降低。中斷方式則是讓外設在準備好之后通知CPU,執(zhí)行與外設的數據傳輸工作。這樣可以大大提高CPU的利用率。中斷方式INTR主程序響應中斷服務程序返回CPU外設39當外設準備好(輸入)或閑(輸出),向CPU發(fā)出申請,CPU響應后,暫停執(zhí)行原程序,轉去執(zhí)行中斷服務程序。中斷傳送的接口電路如下:40中斷方式輸入的接口電路R41以輸入為例:輸入裝置輸入一數據,發(fā)出選通信號,一方面把數據存入鎖存器,一方面又使D觸發(fā)器置1,在中斷允許下,發(fā)出INTR,CPU在現行指令執(zhí)行完后,發(fā)出INTA,把外設送來的中斷向量放到DB上,于是CPU轉入中斷服務程序,讀入數據,同時清除中斷請求INTR,中斷處理完,CPU返回被中斷處理的程序繼續(xù)執(zhí)行。42DMA方式希望克服程序控制

溫馨提示

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

評論

0/150

提交評論