2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩67頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第10章 微型計算機的I/O接口技術(shù),北京大學出版社,10.1 I/O接口的概念與功能,組成微機最核心的硬件是CPU和存儲器,最基本的語言是匯編語言。但是還必須配上各種外圍設(shè)備進行人機交互,才能使微機進行工作。把外圍設(shè)備同微機連接起來實現(xiàn)數(shù)據(jù)傳送的電路稱為I/O接口電路。,10.1.1 概述,圖10.1 I/O接口框圖,10.1.2 I/O接口電路的基本功能1. 對輸入/輸出數(shù)據(jù)進行緩沖、隔離和鎖存2. 對信號的形式和數(shù)

2、據(jù)格式進行交換與匹配3. 提供信息相互交換的應答聯(lián)絡(luò)信號4. 根據(jù)尋址信息選擇相應的外設(shè),10.1.3 I/O接口信號的分類數(shù)據(jù)信息數(shù)據(jù)通常為8位或16位,可分為3種基本形式:數(shù)字量、開關(guān)量和模擬量。2. 狀態(tài)信息指I/O接口反映I/O設(shè)備工作狀態(tài)的信息,如表示輸入裝置是否已準備好的信息(READY信號),表示輸出裝置是否忙的信息(BUSY信號)等。3. 控制信息指CPU向接口內(nèi)部控制寄存器發(fā)出的各種控制命

3、令,用于改變接口的工作方式及功能,如選通信號、啟停信號等。,10.1.4 I/O端口的概念與編址方式1. 端口地址的概念2. 兩種編址方式1) I/O設(shè)備獨立編址2) I/O設(shè)備與存儲器統(tǒng)一編址,10.2 數(shù)據(jù)傳送的控制方式,在計算機的操作過程中,最基本和使用最多的操作是數(shù)據(jù)傳送。在微機系統(tǒng)中,數(shù)據(jù)主要在CPU、存儲器和I/O接口之間傳送。在數(shù)據(jù)傳送過程中,關(guān)鍵問題是數(shù)據(jù)傳送的控制方式,微機系統(tǒng)中數(shù)據(jù)傳送的控制方式主要有程序

4、控制傳送方式和DMA(直接存儲器存取)傳送方式。,10.2.1 程序控制傳送方式無條件傳送方式無條件傳送方式又稱為“同步傳送方式”。主要用于外設(shè)的定時是固定的且已知的場合,外設(shè)必須在微處理器限定的指令時間內(nèi)把數(shù)據(jù)準備就緒,并完成數(shù)據(jù)的接收或發(fā)送。,圖10.2 無條件傳送方式,2. 查詢傳送方式查詢傳送方式又稱為“異步傳送方式”。 查詢傳送方式的優(yōu)點:(1)安全可靠;(2)用于接口的硬件較省。缺點:CPU必須循環(huán)等

5、待外設(shè)準備就序,導致效率不高。3. 中斷方式,圖10.3 查詢方式流程圖,10.2.2 DMA傳送方式DMA傳送的基本過程如下:一個DMA控制器通??梢赃B接一個或幾個輸入/輸出接口,每個接口通過一組連線和DMA控制器相連。習慣上,將DMA控制器中和某個接口有聯(lián)系的部分稱為一個通道。這就是說,一個DMA控制器一般由幾個通道組成。,圖10.5 DMA控制器編程結(jié)構(gòu)和外部連線,外設(shè)提出DMA傳送請求由外設(shè)或外設(shè)控制電路

6、向DMA控制器發(fā)出DMA請求信號DREQ,表示請求進行一 次DMA傳送。2. DMA控制器響應請求DMA控制器接到請求后,經(jīng)控制電路向CPU提出保持請求信號HOLD,并等待CPU的回答。 3. CPU響CPU在每個時鐘上升沿都檢測有無HOLD請求,若有此請求,且自身正處在總線空閑周期中,CPU就立即響應保持請求。如果CPU正在執(zhí)行某個總線周期,那么要到這個總線周期結(jié)束后再響應此保持請求。,4. DMA控制器的動作

7、DMA控制器在收到HLDA回答后,即開始對直接存儲器存取的過程控制。它向外設(shè)送出DACK作為對DMA請求的響應,同時也作為外設(shè)的數(shù)據(jù)選通。還向系統(tǒng)總線送出控制信號和地址信號,以選擇合適的存儲單元。在一次DMA結(jié)束后,控制器撤除HOLD信號,CPU也消除HLDA,并重新開始對總線的使用。,10.3 8253定時器/計數(shù)器,10.3.1 8253的功能與引腳1. 8253的基本功能8253的基本功能是對外部輸入脈沖進行計數(shù),若

8、外部輸入脈沖是連續(xù)而均勻的,則利用脈沖個數(shù)乘以脈沖周期可以計算出時間,從而實現(xiàn)了定時功能。,2. 8253的引腳1) 與CPU的接口引腳2) 與外設(shè)的接口引腳,圖10.6 8253引腳,3. 8253的內(nèi)部結(jié)構(gòu)1) 數(shù)據(jù)總線緩沖器該緩沖器為8位雙向三態(tài),是CPU與8253內(nèi)部之間的數(shù)據(jù)傳輸通道。2) 讀/寫邏輯電路接收CPU送來的讀寫、片選及地址信號,對8253內(nèi)部各部件進行控制。3) 控制字寄存器每個計數(shù)

9、通道有一個控制字寄存器,用來接收CPU寫入的控制字。4) 計數(shù)器0~28253包含3個相互獨立的、內(nèi)部結(jié)構(gòu)完全相同的16位減法計數(shù)器。,圖10.7 8253內(nèi)部結(jié)構(gòu)圖,10.3.2 8253的工作方式1. 方式0 計數(shù)結(jié)束產(chǎn)生中斷(Interrupt on Terminal Count),圖10.8 方式0的工作波形圖,2. 方式1 可編程單穩(wěn)態(tài)(Hardware Retriggerable one-shot),圖1

10、0.9 方式1的工作波形圖,3. 方式2 分頻器(Rate Generator),圖10.10 方式2的工作波形圖,4. 方式3 方波發(fā)生器(Square Ware Mode),圖10.11 方式3的工作波形圖,5. 方式4 軟件觸發(fā)選通脈沖(Software Triggered Strobe),圖10.12 方式4的工作波形圖,6. 方式5 硬件觸發(fā)選通脈沖(Hardware Triggered Strobe),圖10

11、.13 方式5的工作波形圖,8253的6種工作方式之特點總結(jié)見表10-1。,10.3.3 8253的控制字與編程1. 工作方式控制字,,圖10.14 8253的工作方式控制字,2. 初始化編程8253使用前,必須首先對其進行初始化,初始化包括寫入控制字和計數(shù)初值。順序如下:,,關(guān)于計數(shù)初值,需要說明以下幾點:(1) 使用任一計數(shù)通道,首先要向該通道寫入方式控制字,以確定該通道的工作方式,寫入的控制字存入通道對應的控制寄存

12、器中。當控制字D0=0時,即二進制計數(shù),初值可在0000H~FFFFH之間選擇,初值為0表示最大值65536(216);當控制字D0=1時,裝入初值應為BCD碼格式,其值可在0000~9999之間選擇,初值為0表示最大值10000(104),在寫入指令中還必須寫成十六進制數(shù),例如計數(shù)初值為79,采用BCD計數(shù),則指令中的79必須寫成79H。(2) 控制字D5D4位決定控制字的位數(shù)(8位或16位),若為“01”,則只需寫入計數(shù)值的低8位

13、,高8位自動置0;若為“10”,則只需寫入計數(shù)值的高8位,低8位自動置0;若為“11”,則計數(shù)值為16位,分兩次寫入,必須先寫低8位,后寫高8位。(3) 計數(shù)初值要寫入各計數(shù)器對應的端口地址,計數(shù)器0對應A1A0=00的端口地址,計數(shù)器1對應A1A0=01的端口地址,計數(shù)器2對應A1A0=10的端口地址。,【例10.2】 某系統(tǒng)中8253的端口地址為2F80H~2F83H,要求通道1工作在方式3,以BCD方式計數(shù),計數(shù)初值為1000,

14、試寫出初始化程序。此例中,在寫入計數(shù)值時,可只寫高8位,也可寫16位,以寫16位為例,則控制字格式為:01110111B=77HMOVAL,77HMOVDX,2F83HOUTDX,ALMOVDX,2F81HMOVAL,0OUTDX,ALMOVAL,10HOUTDX,AL,3. 8253在PC/XT中的應用PC/XT中,使用了一片8253,其地址范圍為40H~43H,3個CLK的輸入均為1.19MH

15、z,GATE0和GATE1接+5V電源,GATE2由8255的PB0控制(參見10.4節(jié)中圖10.24)。3個計數(shù)通道的作用及BIOS中初始化程序分別為:(1) 計數(shù)器0:編程為方式3,每55ms向中斷控制器的IRQ0引腳發(fā)送一次中斷請求信號,用于CPU計時和磁盤驅(qū)動器的定時。初始化程序如下:MOVAL,00110110B;通道0方式控制字OUT43H,ALMOVAL,0OUT40H,AL;計數(shù)初值為65536

16、OUT40H,AL,(2) 計數(shù)器1:工作于方式2,OUT1輸出接至DMA請求觸發(fā)器的CP端,每隔15.12請求一次DMA操作,進行動態(tài)RAM的刷新。初始化程序如下:MOVAL,01010100BOUT43H,ALMOVAL,12HOUT41H,AL(3) 計數(shù)器2用于產(chǎn)生方波驅(qū)動揚聲器發(fā)聲。BIOS中有一個發(fā)聲子程序BEEP,它對計數(shù)通道2的初始化代碼為:MOVAL,10110110BOUT43H,ALM

17、OVAX,0533HOUT42H,ALMOVAL,AHOUT42H,AL,10.4 并行接口芯片8255A,10.4.1 8255A概述Intel-8255A是一種通用的可編程并行I/O接口芯片,又稱“可編程外設(shè)接口芯片”(Programmable Peripheral Interface,PPI),可通過軟件編程的方法分別設(shè)置它的3個8位I/O端口的工作方式,通用性強,使用靈活。通過8255A,CPU可以和大多

18、數(shù)并行傳輸?shù)耐庠O(shè)直接連接,是應用最廣的典型可編程并行接口芯片。,1. 8255A的主要特性8255A是通用的8位并行輸入/輸出接口芯片,使用靈活,功能強大,具有如下特點:(1) 8255A具有3個8位的數(shù)據(jù)口(A口、B口和C口),其中C口還可當作兩個4位口來使用。三個數(shù)據(jù)口均可用來輸入或輸出。(2) 8255A具有3種工作方式:方式0、方式1和方式2??蛇m應CPU與外設(shè)間的多種數(shù)據(jù)傳輸方式,如無條件傳送方式、查詢傳送方式、中斷方式

19、等。(3) 8255A的C口還具有按位置0與置1功能。,2. 8255A的內(nèi)部結(jié)構(gòu)8255A內(nèi)部結(jié)構(gòu)如圖10.15所示,它由如下幾部分組成。1) 數(shù)據(jù)總線緩沖器2) 讀/寫控制邏輯3) A組和B組控制4) 數(shù)據(jù)端口A、B、C,圖10.15 8255A的內(nèi)部結(jié)構(gòu),8255A有3個8位數(shù)據(jù)端口,分別具有如下特點:(1)  A口具有一個8位數(shù)據(jù)輸入鎖存器和一個8位數(shù)據(jù)輸出鎖存器/緩沖器。端口A無論用作輸入口

20、還是輸出口,其數(shù)據(jù)均能被鎖存。(2)  B口具有輸出鎖存器/緩沖器和輸入緩沖器。作為輸入口時,它不具備鎖存能力,因此外設(shè)輸入的數(shù)據(jù)必須維持到被微處理器讀取為止。(3)  C口具有輸出鎖存器/緩沖器和輸入緩沖器。C口除用作輸入和輸出口外,在方式1及方式2下,其部分引腳要作為A口及B口的聯(lián)絡(luò)信號用。,3. 8255A的外部引腳8255A芯片采用NMOS工藝制造,是一個40引腳雙列直插式(DI

21、P)封裝組件,其引腳排列如圖10.16所示。1) 與微處理器連接的信號線2) 8255A與外部設(shè)備連接的信號線,圖10.16 8255A引腳,10.4.2 8255A的控制字控制字用來設(shè)置8255A的工作方式,8255A有二個控制字,方式選擇控制字和C口按位置位/復位控制字。這二個控制字寫入同一端口地址(A1A0=11),為了進行區(qū)分,控制字的D7位作為標位,D7=1表示是工作方式控制字;D7=0表示是按位置位/復位控制字

22、。,1. 工作方式控制字8255A有3種工作方式:方式0基本輸入/輸出方式,方式1選通輸入/輸出方式(應答方式)和方式2雙向傳送方式。,,圖10.17 8255A工作方式控制字,2. C口按位置位/復位控制字按位置位/復位控制字的作用是使C口的某一引腳輸出特定的電平狀態(tài)(高電平或低電平),控制字的格式如圖10.18所示。,,圖10.18 C口按位置位/復位控制字,10.4.3 8255A的工作方式8255A芯片有

23、3種工作方式:方式0、方式1和方式2,下面介紹這3種方式的特點。1. 方式0:基本輸入/輸出,,圖10.19 8255A工作方式0,8255A工作于方式0時,它具有以下功能:(1) 具有兩個8位端口,即A口、B口,兩個4位端口,即C口的高4位、低4位。每個端口都可設(shè)定為輸入或輸出,共有16種組合,由方式控制字確定,但每個端口不能同時既輸入又輸出。(2) 輸出具有鎖存能力,輸入只有緩沖能力,而無鎖存功能。,2. 方式1:帶選通的輸

24、入/輸出方式1的特點是:僅A口、B口可工作在這種方式下,A口或B口可以為輸入,也可以為輸出,但不能既輸入又輸出。不論輸入還是輸出,都要占用C口的某些引腳作為聯(lián)絡(luò)信號用,并且這種占用關(guān)系是固定的。C口未被占用的位仍可用于輸入或輸出(控制字的D3位決定)。方式1下的數(shù)據(jù)輸入/輸出均具有鎖存能力。,1) 方式1的輸入A口和B口都設(shè)置為方式1輸入時的情況,如圖10.20所示。,,圖10.20 8255A工作方式1輸入,2) 方式1的

25、輸出A口和B口都設(shè)置為方式1輸出時的情況如圖10.21所示。,,圖10.21 8255A工作方式1輸出,方式1輸出的信號交接過程說明如下:CPU通過執(zhí)行OUT指令,向8255A端口輸出數(shù)據(jù),此時將產(chǎn)生有效信號。寫操作完成后,的上升沿使變低,表示輸出緩沖器已滿,通知外設(shè)取走數(shù)據(jù),并且的上升沿使中斷請求INTR變低,即使之無效。外設(shè)取走數(shù)據(jù)后,用一個有效的信號回答8255A,的下降沿使變高(無效)。如果INTE=1,則負脈沖的下降

26、沿再使INTR變高(有效),產(chǎn)生中斷請求。CPU可在中斷服務(wù)程序中向8255A輸出下一個數(shù)據(jù)。,3. 方式2:帶選通的雙向輸入/輸出,,圖10.22 8255A工作方式2,10.4.4 8255A編程8255A工作時首先要初始化,即要寫入控制字來指定其工作方式。如果需要中斷,還要用C口按位置位/復位控制字將中斷標志INTE置1或置0。初始化完成后,就可對3個數(shù)據(jù)端口進行讀/寫。,【例10.6】 如圖10.23所示,設(shè)8255A

27、端口地址為2F80~2F83H,編程設(shè)置8255A,A組、B組均工作于方式0,A口輸出,B口輸出,C口高4位輸入,低4位輸出。然后,讀入開關(guān)S的狀態(tài),若S打開,則使發(fā)光二極管熄滅;若S閉合,則使發(fā)光二極管點亮。MOVAL,88HMOVDX,2F83HOUTDX,ALMOVDX,2F82HINAL,DXMOVDX,2F81HANDAL,20HJZL1;條件成立時PC5=0,S閉合MOVAL,0

28、OUTDX,ALJMPEND1L1:MOVAL,40HOUTDX,ALEND1:HLT,圖10.23 例10.3圖,10.5 DMA控制器8237A,10.5.1 概述DMA控制器一方面可以控制系統(tǒng)總線,這時稱它為總線主模塊,另一方面又可以和其他接口一樣,接受CPU對它的讀/寫操作,這時DMA控制器就成了總線從模塊。作為總線主模塊時,DMA控制器必須完成以下功能:(1) 能夠響應外設(shè)的DMA請求,使

29、CPU暫停工作,接管總線控制權(quán)。(2) 能夠按節(jié)拍提供外設(shè)和存儲器工作的各種控制信號。(3) 提供存儲器地址。,8237A的主要技術(shù)特性:(1) 有4個完全獨立的DMA通道,可以分別編程控制4個不同的DMA操作對象。每個通道都允許開放或禁止DMA請求,都可以獨立控制自動預置方式。(2) 具有三種基本的傳送方式:單字節(jié)傳送、數(shù)據(jù)塊傳送和請求傳送。(3) 具有存儲器到存儲器的傳送功能。(4) 可以用級聯(lián)的方法無限擴展DMA通道數(shù)

30、。(5) 具有正常時序和壓縮時序兩種基本時序。(6) 有兩種優(yōu)先級管理方式:固定優(yōu)先級和循環(huán)優(yōu)先級。(7) 有較高的數(shù)據(jù)傳輸速率,允許DMA傳輸速度高達1.6MB/s。,10.5.2 8237A引腳1. 8237A的引腳特點8237A采用40引腳雙列直插封裝(見圖10.27)。8237A的引腳主要圍繞其二種工作狀態(tài)而設(shè)置,有一些引腳在兩種狀態(tài)下都有用,而有些則是專用的。2. 與DMA周期有關(guān)的引腳3. 與CPU讀、寫

31、有關(guān)的引腳,,圖10.27 8237A引腳,10.5.3 8237A內(nèi)部結(jié)構(gòu)與寄存器1. 概述8237A內(nèi)部結(jié)構(gòu)框圖如圖10.28所示,圖中標明了有關(guān)寄存器和邏輯。8237A寄存器數(shù)量眾多,理解這些寄存器的作用是正確使用8237A的關(guān)鍵。表10-4列出了8237A寄存器的名稱、特性和地址,這個地址是由前述A3~A0在空閑周期中由CPU提供的,沒有考慮I/O端口地址的高位編碼。后面提到的各寄存器地址都指的是芯片內(nèi)部地址。,圖1

32、0.28 8237A的內(nèi)部編程結(jié)構(gòu)和外部連接,2. 地址和字數(shù)寄存器,表10-4 8237A內(nèi)部寄存器、命令與地址關(guān)系表,3. 工作方式寄存器,圖10.29 工作方式寄存器,D7D6:DMA操作方式設(shè)定。共有4種方式,如下所述:(1)單字節(jié)方式 (2) 成組傳送方式 (3) 請求方式(4) 級聯(lián)方式 D5:控制地址變化方向。 D3D2:數(shù)據(jù)傳送方向。 D1D0:通道選擇。,圖10.30 8237A的級聯(lián)使用,4.

33、控制寄存器,圖10.31 控制寄存器,5. DMA請求寄存器,圖10.32 DMA請求寄存器,6. 屏蔽寄存器,圖10.33 屏蔽寄存器,圖10.34 綜合屏蔽命令字,7. 狀態(tài)寄存器,圖10.35 狀態(tài)寄存器,8. 暫存寄存器在存儲器到存儲器的傳送方式時,暫存寄存器保存從源單元讀出的數(shù)據(jù),再由它寫入目的單元。完成傳送時,其中保留傳送的最后一個字節(jié),該字節(jié)可由CPU讀出,RESET之后使之復位。,10.5.4 8237

34、A的軟件命令1. 主清除命令2. 清除先/后觸發(fā)器命令3. 清屏蔽寄存器命令,10.5.5 8237A的工作時序1. 正常DMA讀/寫操作,圖10.36 8237A時序圖,2. 擴展寫與壓縮時序所謂擴展寫是當8237A輸出寫信號(或)時,使其有效的時間提前。正常情況下在S3才送出的有效寫控制信號,提前到S2就變得有效。這可以使得寫入的設(shè)備有更多的寫入時間。當命令寄存器的D5=1時,就選擇了擴展寫方法。,10.5.6

35、8237A的初始化及其在PC機中的應用1. 8237A的初始化在進行DMA操作之前,必須對8237A進行初始化編程。初始化編程有以下內(nèi)容:(1) 輸出復位命令,使8237A處于復位狀態(tài),以接收新的命令;(2) 寫命令寄存器,設(shè)置8237A的工作方式;(3) 寫工作方式寄存器,設(shè)置需使用的通道的工作方式和傳送類型;,(4) 根據(jù)所選通道,把內(nèi)存儲器的起始地址寫入相應通道當前地址寄存器和基地址寄存器(先寫低位,后寫高位);(

36、5) 把傳送的字節(jié)數(shù)-1,寫入當前字節(jié)計數(shù)器和基字節(jié)數(shù)寄存器;(6) 清除該通道屏蔽寄存器的屏蔽位;(7) 寫入請求寄存器,便可由軟件啟動DMA傳送。否則,經(jīng)過以上6步編程后,由通道DREQ啟動DMA傳送的過程。,2. 8237A在PC機中的應用個人計算機的系統(tǒng)板上用了一片8237A DMA控制器,它的4個通道中,通道0用作動態(tài)存儲器的刷新控制,通道1為用戶預留,用戶可以通過系統(tǒng)與之連接,通道2作為軟磁盤驅(qū)動器數(shù)據(jù)傳輸控制用,

37、通道3留給硬盤驅(qū)動器用。PC/XT機中8237A的端口地址為0000H~000FH。為了能訪問20位地址,系統(tǒng)提供了DMA頁面寄存器,頁面寄存器采用寄存器堆電路74LS670,存入4個DMA通道的高4位地址A19~A16,當為低電平時,頁面寄存器的輸出允許端READ有效,送出工作通道的高4位地址。它們與8237A輸出的16位地址一起,組成20位地址信息。通道0、通道1、通道2、通道3對應的頁面寄存器的I/O端口地址分別為87H、8

溫馨提示

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

評論

0/150

提交評論