第七章1 IO接口(要用).ppt_第1頁
第七章1 IO接口(要用).ppt_第2頁
第七章1 IO接口(要用).ppt_第3頁
第七章1 IO接口(要用).ppt_第4頁
第七章1 IO接口(要用).ppt_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第七章 計算機輸入輸出接口,7.1接口的功能與組成,程序、原始數(shù)據(jù)和信息,要通過輸入設(shè)備送入計算機;處理的結(jié)果或給出的信號,要通過輸出設(shè)備顯示、打印。輸入輸出設(shè)備是計算機系統(tǒng)的重要組成。 輸入輸出設(shè)備統(tǒng)稱外部設(shè)備,簡稱“外設(shè)”或“I/O”設(shè)備。與主機配合工作時,必須通過相應(yīng)的部件。協(xié)調(diào)、匹配外設(shè)與主機正常工作的邏輯部件及相應(yīng)的控制軟件就是計算機輸入輸出接口。,7.1 輸入輸出接口基本知識,7.1.1 輸入輸出接口的功能 外設(shè)是機械、電子或機電、磁電結(jié)合的設(shè)備,信息傳送的速度有快有慢,有并行、串行,為使計算機能夠適應(yīng)各種外設(shè)不同編碼方式和不同傳送速度的要求,計算機的輸入輸出接口應(yīng)有以下四項重要功

2、能。,1.能進行地址譯碼及設(shè)備選擇,2.能實現(xiàn)數(shù)據(jù)緩沖與數(shù)據(jù)鎖存 數(shù)據(jù)總線是公用的傳輸線,設(shè)備分時使用,被選中的設(shè)備在讀/寫周期內(nèi)使用總線,未選中的對總線呈高阻抗。 外設(shè)和CPU工作速度差異大,解決方法是在接口電路中實現(xiàn)數(shù)據(jù)鎖存。,有多個外設(shè),主機和不同的外設(shè)交換信息,就要用地址碼來選擇不同的外部設(shè)備。接口須進行地址譯碼,產(chǎn)生選擇信號,使主機和指定的外設(shè)交換信息。,3. 能完成信息格式和電平的轉(zhuǎn)換,計算機系統(tǒng)中的信息采用并行二進制,而一些外設(shè)如CRT顯示器,采用一位接一位的串行傳送,就要求接口具有并行/串行或串行/并行格式轉(zhuǎn)換功能。 有些外設(shè)的輸入或輸出不是計算機能處理的,要處理必須進行數(shù)字量

3、/模擬量或模擬量/數(shù)字量的轉(zhuǎn)換。 外設(shè)信號電平并不都與計算機信號電平兼容,接口還要具有對信號電平的轉(zhuǎn)換功能。,4. 能保證數(shù)據(jù)傳送的定時與協(xié)調(diào),接口還應(yīng)為CPU和外設(shè)之間在時間上的協(xié)調(diào)者,保證數(shù)據(jù)連續(xù)不斷地在二者之間正確傳輸。圖7-1表示聯(lián)絡(luò)方式,(A)是輸出時的,(B)是輸入時的聯(lián)絡(luò)方式。接口與外設(shè)之間的聯(lián)絡(luò)信號只有兩個:一是“數(shù)據(jù)準備好”信號,由送出數(shù)據(jù)方通知接收數(shù)據(jù)方;另一是“數(shù)據(jù)接收完畢”的響應(yīng)信號,當接收方正確接收后回送的響應(yīng)信號,表示允許新的數(shù)據(jù)傳輸。,圖7-1 接口與外設(shè)之間的聯(lián)絡(luò)方式:,7.1.2 輸入輸出接口的基本結(jié)構(gòu)與組成,接口中傳遞三種信息: 數(shù)據(jù)來自外設(shè)或送往外設(shè)的各種

4、各樣數(shù)據(jù)信息; 狀態(tài)反映外設(shè)當前工作狀態(tài)的信息; 控制CPU發(fā)向外設(shè)的啟動或停止的控制信息。 是完全不同的三種信息,但都是通過數(shù)據(jù)總線傳送的。使CPU分清與哪個外設(shè)交換哪種信息。,接口電路中用設(shè)置存放數(shù)據(jù)、狀態(tài)和控制信息的寄存器解決。 當CPU與外設(shè)交換信息時,使用不同的地址來選擇接口電路中的某個寄存器,就可將不同的信息分別傳送。 接口電路中不同地址、可由CPU進行讀/寫操作的寄存器稱為端口。,圖7-2 接口的基本結(jié)構(gòu),圖7-2 接口的基本結(jié)構(gòu),7.1.3 輸入輸出接口的分類,有多種分類法: 按數(shù)據(jù)傳送方式分為串行接口與并行接口; 按數(shù)據(jù)收發(fā)雙方配合方式分為同步接口與異步接口; 按通信的協(xié)調(diào)控

5、制方式分為程序傳送接口、中斷傳送接口和DMA接口; 按電路規(guī)模分為簡單普通接口、可編程接口及外設(shè)接口適配器等。,1. 串行接口與并行接口,串行接口:接口與外設(shè)間以串行方式傳送數(shù)據(jù),而接口與主機之間仍是并行方式。要求串行接口實現(xiàn)數(shù)據(jù)格式的并串轉(zhuǎn)換;統(tǒng)一收發(fā)雙方數(shù)據(jù)傳送的速率及將串行數(shù)碼分離成字。INTEL8250、8251和MC6850、6852等是典型的串行接口組件。,并行接口:主機與接口、接口與外設(shè)間以并行方式傳送數(shù)據(jù),數(shù)據(jù)通路寬度是按字或字節(jié)設(shè)置的,有較高的傳送速率。當外部設(shè)備采用并行工作方式、且與主機距離較近(幾米內(nèi))時,選用并行接口。INTEL8255、MOTOROLA公司的MC682

6、0、ZILOG公司的Z80-PIO等都是典型的并行接口組件。,2. 同步接口與異步接口,同步接口:操作在主機系統(tǒng)時鐘控制下進行,I/O操作周期只能取系統(tǒng)時鐘周期的整數(shù)倍。 異步接口:主機與I/O設(shè)備之間采用“應(yīng)答方式” 傳送信息,接口操作不由系統(tǒng)時鐘控制。雙方的信息交換過程一問一答地進行。“請求”到“應(yīng)答”的時間由操作的實際時間決定,不由CPU的時鐘周期確定。,3. 程序傳送接口、中斷傳送接口與DMA接口,程序傳送接口:CPU用程序傳送方式與I/O設(shè)備交換數(shù)據(jù)。分為無條件程序傳送和程序查詢方式接口。前者適用于簡單的同步外設(shè),后者用于低速外設(shè)。工作協(xié)調(diào)主要靠軟件解決。,中斷傳送接口,中斷是CPU

7、處理緊急或突發(fā)事件的重要功能。有緊急或突發(fā)事件要處理時,CPU暫停當前工作轉(zhuǎn)去處理,完畢后繼續(xù)原來工作。 CPU用中斷傳送方式與外設(shè)交換數(shù)據(jù),必須配有中斷控制邏輯的接口電路,即中斷傳送接口。在計算機系統(tǒng)中,用這種接口與速度低的外設(shè)通信。,DMA接口,程序傳送和中斷傳送接口在數(shù)據(jù)的傳送過程中,都要CPU參與。數(shù)據(jù)量較大,如從磁盤向內(nèi)存中讀取程序時,耗用CPU許多時間。 DMA接口可以實現(xiàn)直接存儲器存取,在存儲器與外設(shè)之間直接傳送數(shù)據(jù),不需CPU介入。,4. 簡單普通接口、可編程接口以及外設(shè)接口適配器,簡單接口:中、小規(guī)模集成電路制成的功能單一接口,滿足某一外設(shè)的需要而專門設(shè)計。 可編程接口:大規(guī)

8、模集成電路制成的通用接口,有多種功能且能編程靈活設(shè)定,可滿足多種外設(shè)的需要。早期微型機系統(tǒng)中大量使用。 超大規(guī)模集成電路的發(fā)展,一塊集成電路芯片中能集成多種功能的接口電路,包含一個微型機系統(tǒng)常用的幾種接口。,外設(shè)接口適配器,復(fù)雜外部設(shè)備如CRT等,有多種控制信號、時序邏輯、數(shù)據(jù)格式變換等,單一接口芯片難以滿足,須用一塊由各種功能的芯片和電路組成的插件板,叫作外設(shè)接口適配器。只為某一外設(shè)專用,又簡稱設(shè)備卡。如顯卡、語音卡等。 微型機中,外設(shè)接口適配器通過系統(tǒng)總線與主機組成系統(tǒng)。備有多個I/O插座,俗稱擴展槽,供用戶插入某種外設(shè)接口適配器。,7.1.4 輸入輸出接口的編址方式,接口電路中,具有多個

9、可由CPU進行讀或?qū)懙募拇嫫鳎步卸丝凇?不同型號的CPU對端口的編址方式不同: (1)與存儲器統(tǒng)一的編址方式,叫存儲器統(tǒng)一編址; (2)采用單獨編址方式,叫端口獨立編址。,1. 存儲器統(tǒng)一編址,將接口電路中的端口地址與存儲器的存儲單元統(tǒng)一編址,即一個端口占用一存儲單元地址。CPU用對存儲器操作的同樣方法對端口讀/寫操作。 統(tǒng)一編址優(yōu)點:一是CPU指令類型多,功能齊全,使用方便;二是端口的地址空間較大。 存在占用存儲器空間和執(zhí)行速度慢的不足?,F(xiàn)在微型機很少采用。,2. I/O端口獨立編址,CPU給I/O接口中的各端口提供完全獨立的I/O地址空間。用專用指令(IN和OUT)對端口進行讀/寫操作。

10、 獨立編址方式優(yōu)點:一是專門的I/O指令,與訪問內(nèi)存完全分開;二是執(zhí)行速度快;三是不占用內(nèi)存地址空間。 缺點是端口地址范圍較小,一般為256至1024個,間接尋址最多達64K個?,F(xiàn)各種系列微型機大都用這種方式。,7.2 主機與外設(shè)之間的數(shù)據(jù)傳送控制方式,分為:程序直接傳送控制、中斷傳送控制、直接存儲器存取控制和輸入輸出處理機傳送控制等幾種方式。 7.2.1 程序直接傳送控制方式 分為無條件傳送控制和有條件傳送控制兩種方式,有條件傳送控制方式也稱程序查詢傳送控制方式。,1. 無條件傳送控制方式,外設(shè)隨時處于準備好狀態(tài),通信可采取無條件方式傳送。CPU可在任意時刻直接進行數(shù)據(jù)傳送,不需要詢問和應(yīng)答

11、。比如顯示器可根據(jù)輸入數(shù)據(jù)隨時改變顯示內(nèi)容,因而CPU可直接向其發(fā)送數(shù)據(jù),無需查詢。又如溫度傳感器,任何時有一溫度值,CPU要讀溫度值也不需要預(yù)先進行聯(lián)系。,2. 程序查詢傳送控制方式,即有條件的傳送控制方式。CPU傳送數(shù)據(jù)前,對外設(shè)狀態(tài)檢測,滿足條件時才傳送,否則等待。微機系統(tǒng)常用的方式,分查詢輸入和查詢輸出兩種。 一次數(shù)據(jù)傳送的過程是: CPU執(zhí)行一條輸入指令,從狀態(tài)端口讀入外設(shè)的 現(xiàn)行狀態(tài); 檢查狀態(tài)是否滿足條件; 狀態(tài)不滿足,則重復(fù)執(zhí)行過程,直到條件滿足; 狀態(tài)滿足,CPU從I/O端口讀入或?qū)懗鰯?shù)據(jù),同時使I/O端口狀態(tài)復(fù)位。,圖7-3 查詢輸入方式接口電路,圖7-4 查詢輸入的信息格

12、式及程序流程,LOOP: IN AL,STATUS-PORT; 讀入RDY AND AL,80H; 檢查RDY JZ LOOP; RDY=0等待 IN AL,DATA-PORT; 讀入數(shù)據(jù) 可見,CPU與外設(shè)的這種傳送控制方式中,狀態(tài)信號起到了“聯(lián)絡(luò)”的作用。,圖7-5 查詢輸出方式接口電路,圖7-6 查詢輸出的信息格式及程序流程,LOOP: IN AL,S-PORT; 讀入BUSY AND AL,80H; 檢測BUSY=0? JNZ LOOP; BUSY=1,等待 MOV AL,BUFFER; BUSY=0,不忙 OUT D-PORT,AL; 輸出數(shù)據(jù) 程序中,S-PORT是狀態(tài)端口的符號地

13、址,DPORT是數(shù)據(jù)端口的符號地址,內(nèi)存單元地址為BUFFER。,查詢傳送方式優(yōu)點是:能協(xié)調(diào)外設(shè)與主機之間的時間差異,所用的硬件較少。 缺點:其一是主機與外設(shè)只能串行工作。外設(shè)未準備好主機一直不斷循環(huán)等待,CPU工作效率大大降低。 其二是主機在一時段內(nèi)只能和一臺外設(shè)交換數(shù)據(jù)信息,外設(shè)不能同時工作。僅適用于對速度要求不高,外設(shè)數(shù)量不多的情況。,7.2.2 中斷傳送控制方式,主機在啟動外設(shè)開始某一操作之后并不等待查詢,繼續(xù)執(zhí)行原程序;當外設(shè)完成準備后,向主機發(fā)中斷請求信號;CPU響應(yīng)請求暫時中斷原正執(zhí)行的工作(程序)而轉(zhuǎn)去執(zhí)行外設(shè)請求進行處理的服務(wù)程序,數(shù)據(jù)交換完后主機仍返回執(zhí)行原來程序。,7.2

14、.3 直接存儲器存取控制方式,CPU執(zhí)行中斷服務(wù)程序總要占用一段時間,對于快速數(shù)據(jù)傳輸來說,中斷方式也不能滿意,例如讀寫磁盤。 提出一種沒有CPU參與、在外設(shè)與存儲器之間直接進行數(shù)據(jù)傳輸?shù)目刂品绞?直接存儲器存取控制方式,也叫DMA(Direct Memory Access)方式。,硬件電路(DMA控制器)向CPU請求并接管系統(tǒng)總線的控制權(quán),使存儲器與外部設(shè)備之間直接進行數(shù)據(jù)交換,不需CPU干預(yù),解決了通過CPU傳送的“瓶頸”問題,加快了數(shù)據(jù)傳送速度,滿足了高速外設(shè)傳送的要求。 DMA方式是高速外設(shè)與主機成批交換數(shù)據(jù)的有效方式。 DMA方式也有局限性,DMA控制器只能對同類外設(shè)控制,適合于外設(shè)

15、不多的微小型計算機系統(tǒng)。,7.3 中斷控制技術(shù),中斷是計算機主機處理突發(fā)事件的重要功能,也是大部分輸入/輸出接口的必備功能之一。 7.3.1 中斷的概念 計算機暫時終止現(xiàn)行程序而轉(zhuǎn)去處理隨機出現(xiàn)或有意安排的緊迫任務(wù)、處理完畢后能自動恢復(fù)原程序執(zhí)行的過程叫“中斷”。 通常把這些處理緊迫任務(wù)而編制的程序叫做中斷服務(wù)程序。各種硬件、軟件所構(gòu)成的中斷系統(tǒng)已成為現(xiàn)代計算機不可缺少的組成部分。,機器中引起中斷產(chǎn)生的事件或發(fā)生中斷請求的來源統(tǒng)稱為中斷源。分為I/O中斷、數(shù)據(jù)通道中斷、時鐘中斷、故障中斷和程序中斷五種。 由機器內(nèi)部產(chǎn)生的中斷統(tǒng)稱為內(nèi)部中斷,如電源故障中斷、主機設(shè)備故障中斷、由運算產(chǎn)生的中斷、由

16、控制器產(chǎn)生的中斷和定時時鐘中斷等; 由外部設(shè)備引起的中斷叫作外部中斷,如鍵盤中斷、磁盤存儲器申請中斷、打印機中斷及生產(chǎn)過程發(fā)出的中斷等。,CPU響應(yīng)可屏蔽中斷須滿足三個條件: 中斷源有中斷請求; CPU允許接受中斷請求; 一條指令執(zhí)行完畢后才能響應(yīng)中斷。 中斷響應(yīng)如圖。其工作過程包括:,圖7-10 中斷響應(yīng)過程,7.3.2 中斷系統(tǒng)的功能,中斷系統(tǒng)指為了完成一次中斷操作的全過程需要的各種部件及相互關(guān)系。一個完整的中斷系統(tǒng)是相當復(fù)雜的,只從原則上了解系統(tǒng)中應(yīng)包括的內(nèi)容,以及它們在中斷過程中所起的作用。,1.中斷請求的檢測與屏蔽,檢測: 外設(shè)送來的中斷請求信號由CPU檢測。由于CUP總是不斷執(zhí)行指

17、令,所以對中斷請求線上的狀態(tài)檢測,只能定時進行。檢測時間安排在一指令周期的最后一個機器周期,以確定下一機器周期是繼續(xù)執(zhí)行指令還是進入中斷處理。CPU對中斷事件的處理是在指令之間進行,不能在一條指令執(zhí)行之中進行。要求送CPU的請求信號保持一足夠長時間,到CPU響應(yīng)中斷后才撤除。,屏 蔽: 有時不希望打斷主程序的執(zhí)行,即屏蔽(不響應(yīng))外部的中斷請求。 在CPU中設(shè)置一中斷允許寄存器IF:=1時允許中斷,=0時禁止中斷-屏蔽中斷。 CPU響應(yīng)一次外中斷后, IF自動復(fù)位,不允許再發(fā)生中斷。這個寄存器受軟件控制,可用指令使之復(fù)位或置位。CPU對中斷響應(yīng)與否就能由程序方便地控制。,2.堆棧與斷點保護,為

18、處理外設(shè)提出的服務(wù)請求,CPU暫時終止當前程序,轉(zhuǎn)而執(zhí)行一個處理中斷用的專用程序,即中斷處理子程序。當前程序被暫時中斷的那個地址稱為斷點,斷點地址必須保存,才能恢復(fù)原程序的正確執(zhí)行。 保存斷點地址以及一些寄存器內(nèi)容的地方叫堆棧??梢杂梢恍S眉拇嫫鹘M成,但在微機中將內(nèi)存的一個區(qū)辟出作為堆棧,用一專門寄存器指明堆棧頂部地址,該寄存器稱為堆棧指針。這樣保存斷點或恢復(fù)斷點的操作,成了特殊尋址的存儲器讀、寫過程。,設(shè)主程序放在0100H開始的地址段中,中斷處理子程序放在1800H開始的地址中,堆棧指針指向FFF0H。設(shè)當程序執(zhí)行到0180H所存的指令時,外部送來一個中斷請求,CPU執(zhí)行該指令的最后一個

19、機器周期中檢測到請求,執(zhí)行完畢后響應(yīng)此中斷。 如這條已執(zhí)行的指令是兩字節(jié)長,那么斷點就是0182H,即把PC=0182H自動壓入堆棧保存。壓入的兩個單元地址是FFF0H和FFEFH。而將程序計數(shù)器PC的內(nèi)容改為1800H,開始執(zhí)行中斷處理子程序。,3.矢量中斷與中斷矢量,根據(jù)發(fā)生中斷時CPU取得中斷處理子程序地址的方式而得名。提供一個矢量,指向中斷處理子程序的起始址。這種方式的主要優(yōu)點是從主程序轉(zhuǎn)到中斷處理子程序的速度快。 中斷矢量是一個指針,它總是指向中斷處理子程序的起始地址。微機是把全部中斷矢量放在內(nèi)存的某一區(qū)域,形成一中斷矢量表。 發(fā)生中斷時,根據(jù)中斷源不同,從表中取出對應(yīng)的中斷矢量送給

20、CPU,成為新的PC值,CPU開始對中斷處理子程序的執(zhí)行。,4.多重中斷與中斷優(yōu)先級,多重中斷: CPU響應(yīng)一中斷、執(zhí)行中斷處理子程序后,如果令中斷允許寄存器IF=1,CPU還可以接受別的中斷請求。又一個中斷請求到來時,會使正在執(zhí)行的中斷處理子程序再次中斷,形成多重中斷。有點類似子程序的“嵌套”。 是否允許多重中斷,取決于CPU是否開放中斷。如果關(guān)中斷,IF=0,后到的中斷請求只能掛起,直到前一中斷處理完后,才能響應(yīng)后一中斷。,中斷優(yōu)先級: CPU上往往連接多個中斷源,互相之間不同步工作。CPU對中斷請求的檢測時可能出現(xiàn)幾個中斷請求同時存在的現(xiàn)象。每次只能響應(yīng)一個中斷,要對中斷源作優(yōu)先級劃分,

21、同時請求的中斷中,優(yōu)先級高的先響應(yīng),待高優(yōu)先級中斷處理完后,再按同樣原則進行后續(xù)處理。 優(yōu)先級安排根據(jù)處理事件的重要、緊急程度預(yù)先確定,中斷系統(tǒng)須能作優(yōu)先級判斷。可用軟件的方法,也可用硬件方法實現(xiàn)。,8086CPU中斷處理的優(yōu)先順序確定為:內(nèi)部中斷優(yōu)先于外部中斷(單步操作中斷除外),內(nèi)部中斷的具體順序為:除法錯、INT 類型號、INTO、單步中斷。,(2)硬件中斷,外部事件觸發(fā)引起的中斷稱硬件中斷或外部中斷。 8086有兩個中斷請求輸入端,INTR是可屏蔽中斷請求, NMI是不可屏蔽中斷。 INTR是電平信號輸入端,CPU無法緩存鎖定。中斷請求信號要一直保持到這個中斷被檢測且開始響應(yīng)才能撤消。能否為CPU響應(yīng),受CPU內(nèi)IF的控制,IF=1,才允許響應(yīng)中斷。 可定義為0255間任意一個中斷類型,與中斷

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論