




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第5章數(shù)據(jù)輸入/輸出方式
5.1I/O接口5.2輸入/輸出控制方式5.332位數(shù)據(jù)線與8位I/O接口的連接5.1I/O接口
5.1.1輸入/輸出概述
5.1.2接口功能
5.1.3I/O接口組成
5.1.4I/O端口編址
5.1.5I/O接口分類
5.1.1輸入/輸出概述
計(jì)算機(jī)的工作過程包括數(shù)據(jù)輸入、數(shù)據(jù)處理和結(jié)果輸出三個(gè)階段。因此,輸入輸出也是計(jì)算機(jī)工作的重要環(huán)節(jié),其設(shè)備稱為輸入輸出設(shè)備,簡稱外設(shè)。外設(shè)通過接口電路與主機(jī)相連,在主機(jī)的控制下工作。外設(shè)、I/O接口及其相關(guān)的程序統(tǒng)稱為計(jì)算機(jī)的輸入輸出系統(tǒng),即I/O系統(tǒng)。
I/O接口泛指主機(jī)與外部設(shè)備或其它計(jì)算機(jī)之間連接的電路,亦稱為適配器。5.1.2接口功能
主要有:信號(hào)轉(zhuǎn)換、數(shù)據(jù)緩沖與時(shí)序匹配、電氣特性匹配、可編程功能及數(shù)據(jù)轉(zhuǎn)換。
1.信號(hào)轉(zhuǎn)換信號(hào)轉(zhuǎn)換包括電信號(hào)與非電信號(hào)的轉(zhuǎn)換、數(shù)字量與非數(shù)字量信號(hào)的轉(zhuǎn)換、編碼與解碼以及傳送方式的轉(zhuǎn)換等。對(duì)于多媒體設(shè)備,還有音頻、視頻信號(hào)的轉(zhuǎn)換與處理。
2.數(shù)據(jù)緩沖與時(shí)序匹配高速主機(jī)與低速外設(shè)之間常需設(shè)置緩沖器或者緩沖存儲(chǔ)器,以實(shí)現(xiàn)二者之間的速度匹配。比如顯卡中的顯示存儲(chǔ)器。
3.電氣特性匹配計(jì)算機(jī)內(nèi)部使用TTL電平,而外設(shè)的輸入輸出信號(hào)既有TTL電平,也有CMOS或其它規(guī)格的電平,因此需要進(jìn)行電平轉(zhuǎn)換。另外,還需要增強(qiáng)總線的驅(qū)動(dòng)能力
4.可編程功能一般接口電路常有多種工作方式,通過編程進(jìn)行設(shè)定或者選擇。因此在接口電路中常設(shè)有可尋址的狀態(tài)字寄存器和控制字寄存器,以設(shè)定接口的工作方式。
5.數(shù)據(jù)類型轉(zhuǎn)換包括并/串轉(zhuǎn)換或串/并轉(zhuǎn)換,有時(shí)還要實(shí)現(xiàn)ASCII碼、BCD碼甚至漢字?jǐn)?shù)符的轉(zhuǎn)換。
I/O接口如圖5-1所示,是CPU與外部設(shè)備之間進(jìn)行數(shù)據(jù)轉(zhuǎn)換與傳送的控制器。在CPU一端傳送地址、數(shù)據(jù)和控制信號(hào),在I/O設(shè)備一端傳送控制信號(hào)、數(shù)據(jù)和狀態(tài)信息。因此一般包括I/O地址譯碼器、數(shù)據(jù)輸入輸出緩沖電路、控制寄存器、狀態(tài)寄存器、中斷控制邏輯與中斷向量寄存器等部件,傳送的數(shù)據(jù)或(稱信息),可分為三類。
1.數(shù)據(jù)數(shù)據(jù)是輸入輸出設(shè)備傳送的基本信息。輸入時(shí)由輸入設(shè)備傳送給CPU或存入存儲(chǔ)器;輸出時(shí)由輸出設(shè)備顯示、打印,或者傳送給其它設(shè)備。在接口電路中,設(shè)有數(shù)據(jù)鎖存與緩沖器,有時(shí)還需要進(jìn)行格式或者編碼的轉(zhuǎn)換。5.1.3I/O接口組成
圖5-1
2.地址由于外設(shè)往往不是一個(gè),而是多個(gè)。為此分配有不同的地址,以便識(shí)別。數(shù)據(jù)輸入輸出時(shí),首先要發(fā)送地址,經(jīng)譯碼器選擇某一外部設(shè)備。因此,在接口電路中設(shè)有地址鎖存與譯碼器。
3.狀態(tài)與控制信號(hào)狀態(tài)信號(hào)反映的是外設(shè)的工作狀態(tài),存于接口中的狀態(tài)寄存器,以便CPU讀取檢查??刂菩盘?hào)是CPU向外設(shè)發(fā)出的I/O控制命令,經(jīng)接口傳送給外部設(shè)備,實(shí)現(xiàn)相應(yīng)的I/O操作。通過接口電路還可增強(qiáng)信號(hào)的驅(qū)動(dòng)能力。在I/O接口電路中,各寄存器都可作為一個(gè)端口而設(shè)定地址。CPU通過地址對(duì)其訪問或者編程,比如設(shè)定參數(shù),選擇工作方式,讀取狀態(tài)標(biāo)志或中斷向量,傳送數(shù)據(jù)等。
在I/O接口電路中,每一個(gè)可由CPU直接訪問寄存器統(tǒng)稱為端口,可對(duì)其分配地址,也稱為編址,以便CPU訪問。編址的方法有兩種,即統(tǒng)一編址和獨(dú)立編址。
1.統(tǒng)一編址統(tǒng)一編址是把外部設(shè)備的端口地址與存儲(chǔ)器地址統(tǒng)一編排。也就是說,在主存空間中劃出一部分區(qū)域用作I/O地址,使輸入輸出變成對(duì)某個(gè)地址單元的讀/寫操作,CPU可使用訪問主存的指令訪問外部設(shè)備,而不需要專門的I/O指令。但是,I/O端口占用了主存地址空間,使主存減少。5.1.4I/O端口編址
2.獨(dú)立編址獨(dú)立編址是對(duì)I/O端口和主存分別編址,兩者的地址都是從0開始。CPU訪問時(shí),通過專門的選通信號(hào)確定地址總線上傳送的是I/O地址還是主存地址。采用獨(dú)立編址,I/O地址不占用主存空間,但是需要專I/O指令。目前的Pentium微處理器采用的就是這種獨(dú)立編址方式。另外,也可以把二者結(jié)合起來,構(gòu)成混合編址方式。即一部分址獨(dú)立,一部分與主存空間合為一體。
5.1.5I/O接口分類
接口處于主機(jī)與外部設(shè)備之間,有多種類型,而且按照不同的特征或應(yīng)用又有不同的分類方式。
1.按照傳輸信號(hào)分類按照傳輸信號(hào)分類,可分為數(shù)字量輸入輸出接口和模擬量輸入輸出接口。對(duì)于數(shù)字量信號(hào),計(jì)算機(jī)可以通過數(shù)字量接口直接與輸入輸出設(shè)備連接。對(duì)于模擬信號(hào),則要通過A/D或D/A轉(zhuǎn)換器進(jìn)行轉(zhuǎn)換
2.按照傳輸數(shù)據(jù)方式分類按照傳輸數(shù)據(jù)的方式分類,可分為并行I/O接口和串行I/O接口。
(1)并行I/O接口:是多位數(shù)據(jù)同時(shí)傳送,傳輸線的寬度與數(shù)據(jù)位數(shù)一致,而且各條數(shù)據(jù)線的電氣特性也要一致。因此,傳輸效率高,成本較高,傳輸距離受到限制。
(2)串行I/O接口:即按位傳輸,傳輸線少,效率較低,成本低,適合遠(yuǎn)距離傳送。由于在計(jì)算機(jī)中數(shù)據(jù)是并行存儲(chǔ)與處理的,因此串行接口必須配有并/串和串/并轉(zhuǎn)換電路。
3.按照傳輸控制方式分類按照傳輸控制方式分類,可分為直接/查詢傳送方式、中斷控制和DMA傳送方式。另外,還有通道和I/O處理機(jī)等。5.2輸入/輸出控制方式
5.2.1直接傳送方式5.2.2程序查詢傳送方式5.2.3中斷控制輸入/輸出方式5.2.4直接存儲(chǔ)器存?。―MA)方式5.2.5通道控制方式與I/O處理器
計(jì)算機(jī)外部設(shè)備的種類很多,不同的設(shè)備因其工作原理與性能的不同,具有不同的輸入輸出方式。這一點(diǎn)決定了CPU對(duì)外部設(shè)備要有不同的控制方法;同時(shí)還要有相應(yīng)的接口電路。目前,計(jì)算機(jī)所采用的輸入輸出方式主要有直接傳送方式、程序查詢方式、中斷控制方式、直接存儲(chǔ)器存?。―MA)方式、通道方式以及I/O處理機(jī)方式等。5.2.1直接傳送方式
直接傳送方式也稱為無條件傳送方式,它要求外部設(shè)備時(shí)刻處于就緒狀態(tài),隨時(shí)可接收CPU傳送的數(shù)據(jù),或者由CPU執(zhí)行讀操作,而不需要CPU去判斷外部設(shè)備處于何種狀態(tài)。
1.直接輸入如圖5-2所示,數(shù)據(jù)輸出鎖存器與CPU的數(shù)據(jù)總線直接連接。當(dāng)CPU執(zhí)行輸出指令時(shí),由系統(tǒng)總線輸出地址、IO/M信號(hào)、數(shù)據(jù)和讀命令RD;經(jīng)過地址譯碼、IO/M選擇和寫驅(qū)動(dòng)后,輸出數(shù)據(jù)寫入輸出鎖存器,并送輸出設(shè)備。
圖5-2
2.直接輸出如圖5-3所示,數(shù)據(jù)輸出鎖存器與CPU的數(shù)據(jù)總線直接連接。當(dāng)CPU執(zhí)行輸出指令時(shí),由系統(tǒng)總線輸出地址、IO/M信號(hào)、數(shù)據(jù)和寫命令WR;經(jīng)過地址譯碼、IO/選擇和寫驅(qū)動(dòng)后,輸出數(shù)據(jù)寫入輸出鎖存器,并送輸出設(shè)備。圖5-3
3.應(yīng)用舉例
【例5.1】如圖5-4所示,其中輸入設(shè)備是8個(gè)開關(guān)S7~S0,經(jīng)三態(tài)緩沖器74LS244與系統(tǒng)總線連接;輸出設(shè)備是8個(gè)發(fā)光二極管Q7~Q0,連接在鎖存器74LS273的輸出端;完成的功能是扳動(dòng)輸入開關(guān),控制發(fā)光二極管發(fā)光。
解:(1)電路中地址譯碼信號(hào)與相“或”(負(fù)邏輯“與”)后,選通74LS244,可讀入8個(gè)開關(guān)信號(hào)S7~S0;地址譯碼信號(hào)與相“或”
(負(fù)邏輯“與”)后,驅(qū)動(dòng)74LS273,鎖存CPU輸出的數(shù)據(jù)。
(2)扳動(dòng)開關(guān)S7~S0,設(shè)定某種狀態(tài),然后由CPU執(zhí)行下面的程序。
MOVDX,81F4H;取端口地址81F4H→DXINAL,DX;讀開關(guān)狀態(tài)
OUTDX,AL;輸出信號(hào)S7~S0圖5-45.2.2程序查詢傳送方式
程序查詢傳送方式的控制流程如圖5-5所示,通過程序來控制主機(jī)和外部設(shè)備之間的數(shù)據(jù)傳送。在這種方式中,接口要設(shè)有狀態(tài)端口、控制端口和數(shù)據(jù)端口,其示意如圖5-1所示圖5-5
1.查詢方式輸入首先執(zhí)行輸入指令,讀狀態(tài)端口,并判斷外設(shè)數(shù)據(jù)是否準(zhǔn)備好。若準(zhǔn)備就緒,CPU再次執(zhí)行輸入指令從數(shù)據(jù)端口讀取數(shù)據(jù),同時(shí)經(jīng)控制端口向外設(shè)發(fā)“數(shù)據(jù)已接收”信號(hào),以使外設(shè)繼續(xù)準(zhǔn)備下一數(shù)據(jù)。若外設(shè)處于未準(zhǔn)備好狀態(tài),CPU循環(huán)查詢,等待外設(shè)準(zhǔn)備好。
2.查詢方式輸出首先執(zhí)行輸入指令,讀狀態(tài)端口,并判斷外設(shè)是否準(zhǔn)備好接收數(shù)據(jù)。若準(zhǔn)備就緒,CPU執(zhí)行輸出指令通過數(shù)據(jù)端口輸出數(shù)據(jù),同時(shí)從控制端口向外設(shè)發(fā)數(shù)據(jù)輸出信號(hào),啟動(dòng)外設(shè)接收數(shù)據(jù)。若外設(shè)處于未準(zhǔn)備好狀態(tài),CPU循環(huán)查詢,等待外設(shè)準(zhǔn)備好。
3.應(yīng)用舉例
【例5.2】
如圖5-6所示接口電路,是以查詢傳送方式與微機(jī)系統(tǒng)連接傳送數(shù)據(jù)。通過編程,把主存中從D2000H單元開始的1000個(gè)數(shù)據(jù)輸出給外部設(shè)備。
解:(1)數(shù)據(jù)端口、控制端口均由鎖存器74LS273組成,端口地址分別為02F8H和02F9H;狀態(tài)端口由三態(tài)門74LS244組成,端口地址為02FAH。地址選擇信號(hào)由3~8譯碼器74LS138產(chǎn)生。
(2)外部設(shè)備只能在不忙(BUSY=0)時(shí),接收數(shù)據(jù);數(shù)據(jù)線上的數(shù)據(jù)D7~D0由信號(hào)選通輸入給外設(shè);外設(shè)接收數(shù)據(jù)后,進(jìn)行處理,并使標(biāo)志BUSY=1;數(shù)據(jù)處理完后,BUSY=0,可接收新的數(shù)據(jù)。信號(hào)BUSY連接到狀態(tài)端口74LS244上,CPU執(zhí)行IN指令可讀端口02FAH的值,測試D7位,即判定外設(shè)BUSY信號(hào)。CPU執(zhí)行OUT指令,向控制端口02F9H發(fā)控制字,由控制字的D0位產(chǎn)生選通信號(hào)。圖5-6查詢方式輸出接口電路(3)I/O控制程序:DAOUT:MOVAX,0D200HMOVDS,AXMOVBX,0;初始化內(nèi)存首地址
MOVCX,1000;初始化計(jì)數(shù)器
MOVDX,02F9HMOVAL,01HOUTDX,AL;初始化選通信號(hào)
NEXT:MOVDX,
02FAH
WAIT:INAL,DXANDAL,80HJNZWAIT;狀態(tài)查詢
MOVDX,02F8HMOVAL,[BX]OUTDX,AL;數(shù)據(jù)輸出
MOVDX,02F9HMOVAL,00HOUTDX,AL;產(chǎn)生選通信號(hào)
CALLDLY100MS;DLY100MSMOVAL,
01H
OUTDX,
ALINCBX;修改內(nèi)存指針
LOOPNEXT;輸出次數(shù)的循環(huán)控制
RET5.2.3中斷控制輸入/輸出方式
由于CPU的速度很快,而外部設(shè)備的速度常常很慢。為了不在數(shù)據(jù)傳送時(shí)因等候外設(shè)的工作而影響CPU的效率,常采用中斷的方式進(jìn)行控制。
1.中斷處理過程中斷控制是在CPU啟動(dòng)外部設(shè)備工作后繼續(xù)執(zhí)行原來的程序,而外設(shè)進(jìn)行數(shù)據(jù)傳送的準(zhǔn)備工作。當(dāng)外設(shè)準(zhǔn)備好后,向CPU發(fā)中斷請(qǐng)求信號(hào),CPU響應(yīng)后,暫停正在運(yùn)行的程序,轉(zhuǎn)入中斷服務(wù)程序,進(jìn)行數(shù)據(jù)傳送,傳送完畢返回被中斷的位置,繼續(xù)執(zhí)行原來的程序,其示意如圖5-7所示。
為了實(shí)現(xiàn)中斷控制,需由專門的接口電路把外設(shè)的中斷請(qǐng)求信號(hào)傳送給CPU,同時(shí)提供中斷服務(wù)程序的入口地址。CPU根據(jù)入口地址轉(zhuǎn)入相應(yīng)的服務(wù)程序。若有多臺(tái)設(shè)備同時(shí)請(qǐng)求,需能確定首先為哪一臺(tái)設(shè)備服務(wù)。
圖5-7
2.中斷控制方式的特點(diǎn)外部設(shè)備作為CPU的一個(gè)中斷源,以中斷的方式與CPU傳送數(shù)據(jù)。CPU僅當(dāng)響應(yīng)外設(shè)的中斷請(qǐng)求后才去執(zhí)行輸入輸出程序,其余時(shí)間執(zhí)行主程序。其優(yōu)點(diǎn)是外設(shè)可與CPU并行工作,解決了外設(shè)速度慢、主機(jī)速度快的矛盾,節(jié)省了CPU的時(shí)間。但是,接口電路復(fù)雜,除具備一般數(shù)據(jù)輸入輸出的功能外,還要傳送中斷請(qǐng)求與響應(yīng)信號(hào);在CPU響應(yīng)中斷請(qǐng)求時(shí),向CPU提供中斷向量;在有多個(gè)中斷源時(shí),可排隊(duì)判優(yōu)。為了滿足中斷控制方式的需要,目前已有多種中斷控制接口電路,比如常用的Intel8259等。有關(guān)Intel8259的組成與使用,將在第8章介紹。5.2.4直接存儲(chǔ)器存取(DMA)方式
直接存儲(chǔ)器存取DMA(DirectMemoryaccess)方式是在外設(shè)與存儲(chǔ)器之間不經(jīng)CPU控制,直接傳送數(shù)據(jù),如圖5-8所示。因此,需要在CPU與I/O設(shè)備之間增加一個(gè)DMA控制器。圖5-8
當(dāng)外部設(shè)備需要與主存交換數(shù)據(jù)時(shí),首先向DMA控制器發(fā)出DMA請(qǐng)求信號(hào)DMARQ,DMA控制器收到請(qǐng)求信號(hào)后,向CPU發(fā)出總線請(qǐng)求信號(hào)BUSRQ;CPU響應(yīng)總線請(qǐng)求后,向DMA控制器發(fā)總線響應(yīng)信號(hào)BUSAK,同時(shí)讓出總線控制權(quán)。這時(shí),CPU只能執(zhí)行不使用總線的內(nèi)部操作或暫停。
當(dāng)DMA控制器收到信號(hào)后,接受總線控制權(quán),向I/O設(shè)備發(fā)DMA響應(yīng)信號(hào),同時(shí)選通I/O接口。如果是由存儲(chǔ)器向I/O設(shè)備輸出數(shù)據(jù),DMA控制器發(fā)存儲(chǔ)器地址和讀命令,將主存中的數(shù)據(jù)讀到數(shù)據(jù)總線上,接著發(fā)I/O寫命令,寫入I/O接口(即外設(shè)中)。
如果是由I/O設(shè)備向主存輸入數(shù)據(jù),DMA控制器發(fā)I/O讀命令,將I/O設(shè)備中的數(shù)據(jù)讀到數(shù)據(jù)總線上,接著發(fā)存儲(chǔ)器地址和寫命令,寫入主存單元中。傳送一個(gè)字節(jié)數(shù)據(jù)后,DMA控制器修改地址,指向主存的下一單元,且計(jì)數(shù)器減1計(jì)數(shù)。如果沒有傳送完,重復(fù)上述過程。如果傳送結(jié)束,DMA控制器撤銷總線請(qǐng)求信號(hào)DMARQ,歸還總線控制權(quán)。
主要特點(diǎn)是傳送過程由硬件電路控制,一個(gè)總線周期傳送一個(gè)字節(jié),效率高,速度快,且不破壞CPU的現(xiàn)場數(shù)據(jù),不存在保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場的過程,但是硬件電路復(fù)雜。常用接口有Intel8237A或其它包含8237功能的多功能組合芯片。5.2.5通道控制方式與I/O處理器
在大、中型計(jì)算機(jī)系統(tǒng)中,配置的I/O設(shè)備很多,于是DMA控制器發(fā)展成了通道控制器。
1.I/O通道(I/OChannel)
“通道”是一個(gè)專用的名稱,相對(duì)獨(dú)立,有較強(qiáng)的自治能力。早期主要由用于數(shù)據(jù)輸入輸出的CPU構(gòu)成,可配置簡單的輸入輸出程序。它接收主CPU的命令,控制數(shù)據(jù)傳送,可與主CPU并行工作。輸入輸出程序可以在主存中,也可以在通道的局部存儲(chǔ)器中。主CPU一旦啟動(dòng)通道工作,通道CPU即從主存或通道存儲(chǔ)器中取出相應(yīng)的程序,控制數(shù)據(jù)的輸入輸出。
2.I/O處理器(IOP)隨著通道技術(shù)的發(fā)展,通道CPU發(fā)展成I/O處理器(I/OProcessor),也稱為I/O處理機(jī),主要由一個(gè)進(jìn)行I/O操作的CPU、內(nèi)部寄存器、局部存儲(chǔ)器以及設(shè)備控制器組成??捎卸鄠€(gè)通道,分別與多個(gè)設(shè)備控制器連接。而一個(gè)設(shè)備控制器可控制多臺(tái)外設(shè)工作。在實(shí)際使用中,I/O處理器與主CPU構(gòu)成多處理器(或稱
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 上半年工質(zhì)量監(jiān)督工作總結(jié)
- iso認(rèn)證合同范本
- 七夕節(jié)營銷策劃方案
- 協(xié)議控制合同范本
- 一年級(jí)下冊《文具的家》教學(xué)反思
- 公司出售居間合同范本
- 與商家訂食品合同范本
- 出售手扶電梯合同范本
- 《愉快的夢》教案
- 賣合同范本軟件
- 小學(xué)學(xué)校2024-2025學(xué)年教學(xué)質(zhì)量提升實(shí)施方案
- 施工影像資料交底
- 地連墻施工鋼筋籠吊裝計(jì)算書
- 風(fēng)電施工安全生產(chǎn)事故案例匯編(第一期)
- 吊籃施工風(fēng)險(xiǎn)分級(jí)管控與隱患排查治理(匯編)
- 車間維修工培訓(xùn)課件
- 安全管理工作中形式主義及防止對(duì)策
- 2024年鄭州信息科技職業(yè)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 藍(lán)牙基礎(chǔ)知識(shí)全解課件
- 第四次工業(yè)革命課件
- 2023-2024學(xué)年西安市高二數(shù)學(xué)第一學(xué)期期末考試卷附答案解析
評(píng)論
0/150
提交評(píng)論