輸入輸出接口_第1頁
輸入輸出接口_第2頁
輸入輸出接口_第3頁
輸入輸出接口_第4頁
輸入輸出接口_第5頁
已閱讀5頁,還剩38頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第7章第7章基本輸入輸出接口教學(xué)重點(diǎn)

理解輸入/輸出接口的概念

I/O接口電路的典型結(jié)構(gòu)無條件傳送方式查詢傳送方式

中斷工作過程第7章:教學(xué)要求1.了解I/O接口電路的主要功能、內(nèi)部和外部特點(diǎn)、端口編址方法、I/O地址譯碼特點(diǎn)2.掌握輸入輸出指令3.掌握無條件、查詢傳送方式4.理解中斷傳送方式的傳送過程5.

理解DMA傳送的工作過程第7章:7.1I/O接口概述為什么需要I/O接口(電路)?微機(jī)的外部設(shè)備多種多樣工作原理、驅(qū)動方式、信息格式、以及工作速度方面彼此差別很大它們不能與CPU直接相連必須經(jīng)過中間電路再與系統(tǒng)相連這部分電路被稱為I/O接口電路多種外設(shè)第7章:7.1I/O接口概述(續(xù)1)什么是I/O接口(電路)?I/O接口是位于系統(tǒng)與外設(shè)間、用來協(xié)助完成數(shù)據(jù)傳送和控制任務(wù)的邏輯電路PC機(jī)系統(tǒng)板的可編程接口芯片、I/O總線槽的電路板(適配器)都是接口電路CPU接口電路

I/O設(shè)備第7章:7.1I/O接口概述(續(xù)2)什么是微機(jī)接口技術(shù)?處理微機(jī)系統(tǒng)與外設(shè)間聯(lián)系的技術(shù)注意其軟硬結(jié)合的特點(diǎn)根據(jù)應(yīng)用系統(tǒng)的需要,使用和構(gòu)造相應(yīng)的接口電路,編制配套的接口程序,支持和連接有關(guān)的設(shè)備第7章:7.1.1I/O接口的主要功能⑴對輸入輸出數(shù)據(jù)進(jìn)行緩沖和鎖存(鎖存功能和緩沖隔離功能)輸出接口有鎖存環(huán)節(jié);輸入接口有緩沖環(huán)節(jié)實(shí)際的電路常見:輸出鎖存緩沖環(huán)節(jié)、輸入鎖存緩沖環(huán)節(jié)⑵對信號的形式和數(shù)據(jù)的格式進(jìn)行變換(轉(zhuǎn)換功能)微機(jī)直接處理:數(shù)字量、開關(guān)量、脈沖量⑶對I/O端口進(jìn)行尋址(編址功能)⑷與CPU和I/O設(shè)備進(jìn)行聯(lián)絡(luò)(聯(lián)絡(luò)功能)(5)中斷管理功能(中斷管理功能)第7章:7.1.2I/O接口的典型結(jié)構(gòu)控制總線CB地址總線ABI/O接口電路數(shù)據(jù)控制狀態(tài)數(shù)據(jù)總線DBCPU外設(shè)控制寄存器狀態(tài)寄存器數(shù)據(jù)寄存器1.接口電路的內(nèi)部結(jié)構(gòu)2.接口電路的外部特性3.接口電路芯片的分類4.接口電路的可編程性第7章:1.接口電路的內(nèi)部結(jié)構(gòu)CPU與外設(shè)主要有數(shù)據(jù)、狀態(tài)和控制信息需要相互交換,于是從應(yīng)用角度看內(nèi)部:⑴數(shù)據(jù)寄存器輸入數(shù)據(jù)寄存器:保存外設(shè)給CPU的數(shù)據(jù)輸出數(shù)據(jù)寄存器:保存CPU給外設(shè)的數(shù)據(jù)⑵狀態(tài)寄存器保存外設(shè)或接口電路的狀態(tài)⑶控制寄存器保存CPU給外設(shè)或接口電路的命令第7章:2.接口電路的外部特性主要體現(xiàn)在引腳上,分成兩側(cè)信號面向CPU一側(cè)的信號:用于與CPU連接主要是數(shù)據(jù)、地址和控制信號面向外設(shè)一側(cè)的信號:用于與外設(shè)連接提供的信號五花八門功能定義、時序及有效電平等差異較大第7章:3.接口電路芯片的分類接口電路核心部分往往是一塊或數(shù)塊大規(guī)模集成電路芯片(接口芯片):通用接口芯片支持通用的數(shù)據(jù)輸入輸出和控制的接口芯片面向外設(shè)的專用接口芯片針對某種外設(shè)設(shè)計、與該種外設(shè)接口

面向微機(jī)系統(tǒng)的專用接口芯片與CPU和系統(tǒng)配套使用,以增強(qiáng)其總體功能第7章:4.接口電路的可編程性許多接口電路具有多種功能和工作方式,可以通過編程的方法選定其中一種接口需進(jìn)行物理連接,還需編寫接口軟件接口軟件有兩類:初始化程序段——設(shè)定芯片工作方式等數(shù)據(jù)交換程序段——管理、控制、驅(qū)動外設(shè),負(fù)責(zé)外設(shè)和系統(tǒng)間信息交換第7章:7.1.3I/O端口的編址接口電路占用的I/O端口有兩類編排形式I/O端口獨(dú)立編址I/O地址空間獨(dú)立于存儲地址空間如8086/8088I/O端口與存儲器統(tǒng)一編址它們共享一個地址空間如M680051單片機(jī)等第7章:⑴I/O端口獨(dú)立編址優(yōu)點(diǎn):I/O端口的地址空間獨(dú)立控制和地址譯碼電路相對簡單專門的I/O指令使程序清晰易讀缺點(diǎn):I/O指令沒有存儲器指令豐富內(nèi)存空間I/O空間FFFFF0FFFF80x86采用I/O端口獨(dú)立編址第7章:⑵I/O端口與存儲器統(tǒng)一編址優(yōu)點(diǎn):不需要專門的I/O指令I(lǐng)/O數(shù)據(jù)存取與存儲器數(shù)據(jù)存取一樣靈活缺點(diǎn):I/O端口要占去部分存儲器地址空間程序不易閱讀(不易分清訪存和訪問外設(shè))內(nèi)存部分I/O部分存儲器空間00000FFFFF第7章:7.1.48088/8086的輸入輸出指令輸入指令(IN:將外設(shè)數(shù)據(jù)傳送給CPU內(nèi)的AL/AX)INAL,i8 ;字節(jié)輸入INAL,DX ;字節(jié)輸入INAX,i8 ;字輸入INAX,DX ;字輸入輸出指令(OUT:將CPU內(nèi)的AL/AX數(shù)據(jù)傳送給外設(shè))OUTi8,AL ;字節(jié)輸出OUTDX,AL ;字節(jié)輸出OUTi8,AX ;字輸出OUTDX,AX ;字輸出演示演示第7章:8088/8086的I/O端口8088只能通過輸入輸出指令與外設(shè)進(jìn)行數(shù)據(jù)交換;呈現(xiàn)給程序員的外設(shè)是端口(Port),即I/O地址8086用于尋址外設(shè)端口的地址線為16條,端口最多為216=65536(64K)個,端口號為0000H~0FFFFH每個端口用于傳送一個字節(jié)的外設(shè)數(shù)據(jù)第7章:I/O尋址方式8088/8086的端口有64K個,無需分段,設(shè)計有兩種尋址方式直接尋址:只用于尋址00H~FFH前256個端口,操作數(shù)i8表示端口號間接尋址:可用于尋址全部64K個端口,DX寄存器的值就是端口號對大于FFH的端口只能采用間接尋址方式第7章:數(shù)據(jù)交換方式如果輸入輸出一個字節(jié),利用AL寄存器如果輸入輸出一個字,利用AX寄存器輸入一個字,實(shí)際上是從連續(xù)兩個端口輸入兩個字節(jié),分別送AL(對應(yīng)低地址端口)和AH(對應(yīng)高地址端口)輸出一個字,實(shí)際上是將AL(對應(yīng)低地址端口)和AH(對應(yīng)高地址端口)兩個字節(jié)的內(nèi)容輸出給連續(xù)兩個端口第7章:IN指令實(shí)例(從20H端口輸入一個字);方法1:直接尋址,字量輸入

inax,20h;方法2:間接尋址,字量輸入

movdx,20h inax,dx;方法3:直接尋址,字節(jié)量輸入

inal,21h

mov

ah,al

inal,20h;方法4:間接尋址,字節(jié)量輸入

movdx,21h

inal,dx

mov

ah,al

dec

dx

inal,dx第7章:OUT指令實(shí)例(向300H端口輸出一個字節(jié));唯一的方法:間接尋址,字節(jié)量輸出

mov

al,bvar

;bvar是字節(jié)變量

movdx,300h

outdx,al第7章:7.1.5I/O地址的譯碼I/O地址的譯碼方法與存儲器地址的譯碼方法一樣,但有它的特點(diǎn):部分譯碼時,通常是中間地址線不連接部分譯碼也有最低地址線不連接的情況每個接口電路通常只占用幾個I/O地址,這時可以利用基本邏輯門電路進(jìn)行地址譯碼除采用譯碼器、門電路進(jìn)行譯碼外,I/O地址譯碼還經(jīng)常采用可編程邏輯器件PLD為了給系統(tǒng)一定的選擇余地,有些接口電路利用比較器、開關(guān)或跨接器等進(jìn)行多組I/O地址的譯碼第7章:7.1.6數(shù)據(jù)傳送方式程序控制下的數(shù)據(jù)傳送——通過CPU執(zhí)行程序中的I/O指令來完成傳送,又分為:無條件傳送、查詢傳送、中斷傳送直接存儲器存?。―MA)——傳送請求由外設(shè)向DMA控制器(DMAC)提出,后者向CPU申請總線,最后DMAC利用系統(tǒng)總線來完成外設(shè)和存儲器間的數(shù)據(jù)傳送I/O處理機(jī)——CPU委托專門的I/O處理機(jī)來管理外設(shè),完成傳送和相應(yīng)的數(shù)據(jù)處理第7章:7.2無條件傳送方式及其接口在CPU與慢速變化的設(shè)備交換數(shù)據(jù)時,可以認(rèn)為它們總是處于“就緒”狀態(tài),隨時可以進(jìn)行數(shù)據(jù)傳送,這就是無條件傳送,或稱立即傳送、同步傳送適合于簡單設(shè)備,如LED數(shù)碼管、按鍵或按紐等無條件傳送的接口和操作均十分簡單這種傳送有前提:外設(shè)必須隨時就緒流程第7章:無條件傳送:輸入示例MOV DX,160HINAL,DX第7章:無條件傳送:輸入實(shí)例MOV DX,160HINAL,DX74LS244+5V10Kx8G1G2數(shù)據(jù)總線CSRD第7章:無條件傳送:輸出示例MOVDX,160HMOVAL,[BX]OUTDX,AL第7章:無條件傳送:輸出實(shí)例MOVDX,160HMOVAL,[BX]OUTDX,AL+5V74LS373300

x8LEOE數(shù)據(jù)總線CSWR第7章:無條件傳送:輸入輸出接口K7K1K0+5VD0~D7A0~A15CLKLS06反相驅(qū)動器LS2738D鎖存器LS244三態(tài)緩沖器8000H譯碼+5VLED0LED7……GIOWIORnext: movdx,8000h ;DX指向數(shù)據(jù)端口

inal,dx

;從輸入端口讀開關(guān)狀態(tài)

notal ;反相

outdx,al

;送輸出端口顯示

calldelay ;調(diào)子程序延時

jmpnext ;重復(fù)第7章:7.3查詢傳送方式及其接口CPU需要先了解(查詢)外設(shè)的工作狀態(tài),然后在外設(shè)可以交換信息的情況下(就緒)實(shí)現(xiàn)數(shù)據(jù)輸入或輸出對多個外設(shè)的情況,則CPU按一定順序依次查詢(輪詢)。先查詢的外設(shè)將優(yōu)先進(jìn)行數(shù)據(jù)交換查詢傳送的特點(diǎn)是:工作可靠,適用面寬,但傳送效率低就緒?第7章:查詢傳送的兩個環(huán)節(jié)⑴查詢環(huán)節(jié)尋址狀態(tài)口讀取狀態(tài)寄存器的標(biāo)志位若不就緒就繼續(xù)查詢,直至就緒⑵傳送環(huán)節(jié)尋址數(shù)據(jù)口是輸入,通過輸入指令從數(shù)據(jù)端口讀入數(shù)據(jù)是輸出,通過輸出指令向數(shù)據(jù)端口輸出數(shù)據(jù)輸入狀態(tài)就緒?數(shù)據(jù)交換YN流程第7章:7.3.1查詢輸入接口IOR+5V8D鎖存器8位三態(tài)緩沖器譯碼1位三態(tài)緩沖器RQ

A0~A158000H8001HD0~D7D0D輸入設(shè)備IORSTB

movdx,8000h ;DX指向狀態(tài)端口status:

inal,dx

;讀狀態(tài)端口

testal,01h

;測試標(biāo)志位D0

jzstatus ;D0=0,未就緒,繼續(xù)查詢

incdx

;D0=1,就緒,DX指向數(shù)據(jù)端口

inal,dx

;從數(shù)據(jù)端口輸入數(shù)據(jù)第7章:7.3.2查詢輸出接口8D鎖存器譯碼1位三態(tài)緩沖器RQ

A0~A158000H8001HD0~D7D7D+5V輸出設(shè)備ACKIOWIOR

movdx,8000h ;DX指向狀態(tài)端口status: inal,dx

;讀取狀態(tài)端口的狀態(tài)數(shù)據(jù)

testal,80h

;測試標(biāo)志位D7

jnzstatus ;D7=1,未就緒,繼續(xù)查詢

incdx

;D7=0,就緒,DX指向數(shù)據(jù)端口

mov

al,buf

;變量buf送AL

outdx,al

;將數(shù)據(jù)輸出給數(shù)據(jù)端口第7章:7.4中斷傳送方式斷點(diǎn)主程序中斷服務(wù)程序中斷請求對外設(shè)進(jìn)行處理繼續(xù)執(zhí)行返回斷點(diǎn)CPU在執(zhí)行程序中,被內(nèi)部或外部的事件所打斷,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好的中斷服務(wù)程序;服務(wù)結(jié)束后,又返回原來的斷點(diǎn),繼續(xù)執(zhí)行原來的程序流程第7章:7.4中斷傳送方式中斷傳送是一種效率更高的程序傳送方式進(jìn)行傳送的中斷服務(wù)程序是預(yù)先設(shè)計好的中斷請求是外設(shè)隨機(jī)向CPU提出的CPU對請求的檢測是有規(guī)律的:一般是在每條指令的最后一個時鐘周期采樣中斷請求輸入引腳本節(jié)主要論述中斷在輸入和輸出方面的應(yīng)用中斷還有著非常廣泛的應(yīng)用第7章:7.5DMA傳送方式希望克服程序控制傳送的不足:外設(shè)→CPU→存儲器外設(shè)←CPU←存儲器直接存儲器存取DMA:外設(shè)→存儲器外設(shè)←存儲器CPU釋放總線,由DMA控制器管理第7章:DMA傳送的工作過程⑴CPU對DMA控制器進(jìn)行初始化設(shè)置⑵外設(shè)、DMAC和CPU三者通過應(yīng)答信號建立聯(lián)系:CPU將總線交給DMAC控制⑶DMA傳送DMA讀存儲器:存儲器→外設(shè)DMA寫存儲器:存儲器←外設(shè)⑷自動增減地址和計數(shù),判斷傳送完成否第7章:DMA傳送流程HLDA發(fā)存儲器地址傳送數(shù)據(jù)傳送結(jié)束?DMA結(jié)束修改地址指針流程第7章:傳送方式的比較無條件傳送:慢速外設(shè)需與CPU保持同步查詢傳送:簡單實(shí)用,效率較低中斷傳送:外設(shè)主動,可與CPU并行工作,但每次傳送需要大量額外時間開銷DMA傳送:DMAC控制,外設(shè)直接和存儲器進(jìn)行數(shù)據(jù)傳送,適合大量、快速數(shù)據(jù)傳送思考題及參考答案多種多樣的外設(shè)工作原理不同機(jī)械、電子、機(jī)電、電磁……傳送信息類型多樣數(shù)字量、模擬量、開關(guān)量傳送速度差別極大傳送方式不盡相同串行、并行編碼方式不同二進(jìn)制、BCD碼、ASCII碼……返回輸出接口的鎖存環(huán)節(jié)內(nèi)部數(shù)據(jù)總線外部數(shù)據(jù)引腳鎖存控制DCQDCQDCQ返回輸出接口的鎖存、緩沖環(huán)節(jié)內(nèi)部數(shù)據(jù)總線外部數(shù)據(jù)引腳鎖存控制DCQDCQDCQ讀數(shù)據(jù)返回輸入接口的緩沖環(huán)節(jié)內(nèi)部數(shù)據(jù)總線外部數(shù)據(jù)引腳選通緩沖器返回輸入接口的鎖存、緩沖環(huán)節(jié)內(nèi)部數(shù)據(jù)總線外部數(shù)據(jù)引腳鎖存控制鎖存器緩沖器DCDCDCQQQ選通返回端口(PORT)端口泛指I/O地址,通常對應(yīng)接口電路的寄存器一個接口電路可以具有多個I/O端口(寄存器),每個端口用來保存和交換不同的信息數(shù)據(jù)寄存器、狀態(tài)寄存器和控制寄存器占有的I/O地址常依次被稱為數(shù)據(jù)端口、狀態(tài)端口和控制端口,用于保存數(shù)據(jù)、狀態(tài)和控制信息輸入、輸出端口可以是同一個I/O地址一定要理解返回INAL,21H返回OUT43H,AL返回?zé)o條件傳送流程返回就緒(Ready)在輸入場合“就緒”說明輸入接口已準(zhǔn)備好送往CPU的數(shù)據(jù),正等著CPU來讀取該狀態(tài)也可用接口中數(shù)據(jù)緩沖器已“滿”來描述在輸出場合“就緒”說明輸出接口已做好準(zhǔn)備,等待接收CPU要輸出的數(shù)據(jù)該狀態(tài)也可用接口數(shù)據(jù)緩沖器已“空”、或者用接口(外設(shè))“閑”或不“忙(Busy)”來描述返回就緒:滿,空、閑、不忙查詢傳送流程返回中斷傳送流程返回DMA傳送流程返回思考題及參考答案I/O接口的編址方式可分為_______________、_______________兩種方式。CPU與內(nèi)存及I/O裝置間傳送數(shù)據(jù)的硬件線路通道稱為_______________。CPU和外設(shè)之間的數(shù)據(jù)傳送方式有_______________、_______________、_______________和_______________。I/O與主機(jī)信息的交換采用中斷方式的特點(diǎn)是_________。

A)CPU與設(shè)備串行工作,傳送與主程序串行工作

B)CPU與設(shè)備并行工作,傳送與主程序串行正作

C)CPU與設(shè)備并行工作,傳送與主程序并行工作

D)以上都不對CPU與外設(shè)間數(shù)據(jù)傳送的控制方式有________________。

A)中斷方式B)程序控制方式C)DMA方式D)以上三種都是一般的接口電路中,不包含下面的哪個端口__________。

A)數(shù)據(jù)口B)地址口C)控制口D)狀態(tài)口思考題及參考答案CPU與I/O設(shè)備間傳送的信號有______________。

A)控制信息B)狀態(tài)信息C)數(shù)據(jù)信息D)以上三種都有主機(jī)、外設(shè)不能并行工作的輸入/輸出方式是____________。

A)程序查詢方式B)中斷方式C)DMA方式有關(guān)I/O端口的描述不正確的是_______________。

A)I/O端口從邏輯上講是被CPU訪問的I/O接口電路中的寄存器

B)8086系統(tǒng)對I/O端口的訪問只能通過專用的指令

C)從連接形式上講,I/O端口總是直接與數(shù)據(jù)總線連接

D)I/O端口可以看作是CPU與外設(shè)交換數(shù)據(jù)的中轉(zhuǎn)站中斷與DMA()A)程序中斷可以完全代替DMAB)DMA可以完全代替程序中斷

C)二者各有使用范圍和特點(diǎn),不能互相代替有關(guān)外設(shè)的連接,下面哪個說法是正確的_______

溫馨提示

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

評論

0/150

提交評論