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

下載本文檔

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

文檔簡介

1、第第7章章 輸入輸出接口輸入輸出接口l7.1 微機(jī)接口概述l7.2 I/O端口及其編址方式l7.3 端口地址譯碼l7.4 CPU與外設(shè)之間的數(shù)據(jù)傳送方式7.1 微機(jī)接口及接口技術(shù)l7.1.1. 設(shè)置接口電路的目的l7.1.2 接口電路中的信息l7.1.3 接口的基本功能l7.1.4 接口的基本結(jié)構(gòu)返返 回回7.1.1.設(shè)置接口電路的目的lCPUCPU與外設(shè)兩者的信號線不兼容,在信號線功能定義、邏與外設(shè)兩者的信號線不兼容,在信號線功能定義、邏輯定義和時序關(guān)系上都不一致輯定義和時序關(guān)系上都不一致l l兩者的工作速度不兼容,兩者的工作速度不兼容,CPUCPU速度高,外設(shè)速度低速度高,外設(shè)速度低 l若

2、不通過接口,而由若不通過接口,而由CPUCPU直接對外設(shè)的操作實(shí)施控制,就直接對外設(shè)的操作實(shí)施控制,就會使會使CPUCPU處于窮于應(yīng)付與外設(shè)打交道之中,大大降低處于窮于應(yīng)付與外設(shè)打交道之中,大大降低CPUCPU的的效率效率 l若外部設(shè)備直接由若外部設(shè)備直接由CPUCPU控制,也會使外設(shè)的硬件結(jié)構(gòu)依賴控制,也會使外設(shè)的硬件結(jié)構(gòu)依賴于于CPUCPU,對外設(shè)本身的發(fā)展不利。,對外設(shè)本身的發(fā)展不利。 數(shù)字化存儲數(shù)字化存儲示波器、數(shù)示波器、數(shù)字化萬用表字化萬用表終端、調(diào)制終端、調(diào)制解調(diào)器解調(diào)器 A/D轉(zhuǎn)換器轉(zhuǎn)換器 開關(guān)量輸入開關(guān)量輸入 D/A轉(zhuǎn)換器轉(zhuǎn)換器 開關(guān)量輸出開關(guān)量輸出鍵盤、鼠標(biāo)、數(shù)鍵盤、鼠標(biāo)、數(shù)

3、字化字化 儀、光筆、儀、光筆、圖形輸入儀麥克圖形輸入儀麥克風(fēng)、掃描儀風(fēng)、掃描儀 打印機(jī)打印機(jī)顯示器顯示器磁盤磁帶磁盤磁帶軟盤光盤軟盤光盤智能儀器接口智能儀器接口通信接口通信接口過程控制接口過程控制接口輸入接口輸入接口輸出接口輸出接口外存接口外存接口CPU內(nèi)存內(nèi)存 DB AB CB圖圖7-17-1微機(jī)系統(tǒng)各類接口框圖微機(jī)系統(tǒng)各類接口框圖 返返 回回7.1.2 7.1.2 接口電路中的信息接口電路中的信息 v數(shù)據(jù)信息數(shù)據(jù)信息v狀態(tài)信息狀態(tài)信息v控制信息控制信息習(xí)慣上把分別傳送這三種信息的端口稱為習(xí)慣上把分別傳送這三種信息的端口稱為數(shù)據(jù)口、狀態(tài)口、控制口數(shù)據(jù)口、狀態(tài)口、控制口 1數(shù)據(jù)信息數(shù)據(jù)信息l(

4、1)數(shù)字量:數(shù)字量: 通常以通常以8位或位或16位的二進(jìn)制數(shù)以及位的二進(jìn)制數(shù)以及ASCII碼的形式傳輸,碼的形式傳輸,主要指由鍵盤、磁盤、光盤等輸入的信息或主機(jī)送給打主要指由鍵盤、磁盤、光盤等輸入的信息或主機(jī)送給打印機(jī)、顯示器、繪圖儀等的信息。印機(jī)、顯示器、繪圖儀等的信息。l(2)模擬量:模擬量: 模擬的電壓、電流或者非電量。對模擬量輸入而言,需模擬的電壓、電流或者非電量。對模擬量輸入而言,需先經(jīng)過傳感器轉(zhuǎn)換成電信號,再經(jīng)先經(jīng)過傳感器轉(zhuǎn)換成電信號,再經(jīng)A/D轉(zhuǎn)換器變成數(shù)字轉(zhuǎn)換器變成數(shù)字量;如果需要輸出模擬控制量的話,就要進(jìn)行上述過程量;如果需要輸出模擬控制量的話,就要進(jìn)行上述過程的逆轉(zhuǎn)換。的逆

5、轉(zhuǎn)換。l(3)開關(guān)量:開關(guān)量: 用用“0”和和“1”來表示兩種狀態(tài),如開關(guān)的通來表示兩種狀態(tài),如開關(guān)的通/斷、電機(jī)斷、電機(jī)的轉(zhuǎn)的轉(zhuǎn)/停、閥門的開停、閥門的開/關(guān)等。關(guān)等。2狀態(tài)信息狀態(tài)信息lCPU在傳送數(shù)據(jù)信息之前,經(jīng)常需要先了解外在傳送數(shù)據(jù)信息之前,經(jīng)常需要先了解外設(shè)當(dāng)前的狀態(tài)。如輸入設(shè)備的數(shù)據(jù)是否準(zhǔn)備好、設(shè)當(dāng)前的狀態(tài)。如輸入設(shè)備的數(shù)據(jù)是否準(zhǔn)備好、輸出設(shè)備是否忙等。輸出設(shè)備是否忙等。l用于表征外設(shè)工作狀態(tài)的信息就叫做狀態(tài)信息,用于表征外設(shè)工作狀態(tài)的信息就叫做狀態(tài)信息,它總是由外設(shè)通過接口輸入給它總是由外設(shè)通過接口輸入給CPU的。的。l狀態(tài)信息的長度不定,可以是狀態(tài)信息的長度不定,可以是1個二

6、進(jìn)制位或多個二進(jìn)制位或多個,含義也隨外設(shè)的具體情況不同而不同。個,含義也隨外設(shè)的具體情況不同而不同。3控制信息控制信息l用來發(fā)布控制命令、控制外設(shè)工作的信息,用來發(fā)布控制命令、控制外設(shè)工作的信息,例如例如A/D轉(zhuǎn)換器的啟停信號。轉(zhuǎn)換器的啟停信號。l控制信息總是控制信息總是CPU通過接口發(fā)出的。通過接口發(fā)出的。返返 回回7.1.3 接口的基本功能l1 1 速度協(xié)調(diào)速度協(xié)調(diào)l2 2 數(shù)據(jù)鎖存數(shù)據(jù)鎖存l3. 3. 三態(tài)緩沖三態(tài)緩沖l4 4 數(shù)據(jù)轉(zhuǎn)換數(shù)據(jù)轉(zhuǎn)換1. 速度協(xié)調(diào)l由于速度上的差異,使得數(shù)據(jù)的由于速度上的差異,使得數(shù)據(jù)的I/O傳送只能以傳送只能以異步方式進(jìn)行,即只能在確認(rèn)外設(shè)已為數(shù)據(jù)傳異步方式

7、進(jìn)行,即只能在確認(rèn)外設(shè)已為數(shù)據(jù)傳送作好準(zhǔn)備的前提下才能進(jìn)行送作好準(zhǔn)備的前提下才能進(jìn)行I/O操作。而要知操作。而要知道外設(shè)是否準(zhǔn)備好,就需要通過接口電路產(chǎn)生道外設(shè)是否準(zhǔn)備好,就需要通過接口電路產(chǎn)生或傳送外設(shè)的狀態(tài),以此進(jìn)行或傳送外設(shè)的狀態(tài),以此進(jìn)行CPU與外設(shè)之間與外設(shè)之間的速度協(xié)調(diào)。的速度協(xié)調(diào)。2 數(shù)據(jù)鎖存l在接口電路中需設(shè)置鎖存器,以保存輸出數(shù)據(jù)在接口電路中需設(shè)置鎖存器,以保存輸出數(shù)據(jù)直至為輸出設(shè)備所接收。因此數(shù)據(jù)鎖存就成為直至為輸出設(shè)備所接收。因此數(shù)據(jù)鎖存就成為接口電路的一項(xiàng)重要功能。接口電路的一項(xiàng)重要功能。 3. 三態(tài)緩沖l只允許當(dāng)前時刻正在進(jìn)行數(shù)據(jù)傳送的數(shù)據(jù)源使用數(shù)據(jù)總只允許當(dāng)前時刻正

8、在進(jìn)行數(shù)據(jù)傳送的數(shù)據(jù)源使用數(shù)據(jù)總線,其它數(shù)據(jù)源都必須與數(shù)據(jù)總線處于隔離狀態(tài)。為此線,其它數(shù)據(jù)源都必須與數(shù)據(jù)總線處于隔離狀態(tài)。為此要求接口電路能為數(shù)據(jù)輸入提供三態(tài)緩沖功能。要求接口電路能為數(shù)據(jù)輸入提供三態(tài)緩沖功能。l三態(tài)緩沖電路就是具有三態(tài)輸出的門電路,因此也稱之三態(tài)緩沖電路就是具有三態(tài)輸出的門電路,因此也稱之為三態(tài)門(為三態(tài)門(TSL)。所謂三態(tài),就是指低電平狀態(tài)、高)。所謂三態(tài),就是指低電平狀態(tài)、高電平狀態(tài)和高阻抗三種狀態(tài)。當(dāng)三態(tài)緩沖器的輸出為高電平狀態(tài)和高阻抗三種狀態(tài)。當(dāng)三態(tài)緩沖器的輸出為高或低電平時,就是對數(shù)據(jù)總線的驅(qū)動狀態(tài);當(dāng)三態(tài)緩沖或低電平時,就是對數(shù)據(jù)總線的驅(qū)動狀態(tài);當(dāng)三態(tài)緩沖器的

9、輸出為高阻抗時,就是對總線的隔離狀態(tài)(也稱浮器的輸出為高阻抗時,就是對總線的隔離狀態(tài)(也稱浮動狀態(tài))。在隔離狀態(tài)下,緩沖器對數(shù)據(jù)總線不產(chǎn)生影動狀態(tài))。在隔離狀態(tài)下,緩沖器對數(shù)據(jù)總線不產(chǎn)生影響,猶如緩沖器與總線隔開一般。響,猶如緩沖器與總線隔開一般。l在電路中,由在電路中,由”三態(tài)控制三態(tài)控制”信號控制緩沖器的輸出是驅(qū)信號控制緩沖器的輸出是驅(qū)動狀態(tài)還是高阻抗?fàn)顟B(tài)。當(dāng)動狀態(tài)還是高阻抗?fàn)顟B(tài)。當(dāng)”三態(tài)控制三態(tài)控制”信號為低電平信號為低電平時,緩沖器輸出狀態(tài)反映輸入的時,緩沖器輸出狀態(tài)反映輸入的 數(shù)據(jù)狀態(tài)。而當(dāng)數(shù)據(jù)狀態(tài)。而當(dāng)”三三態(tài)控制態(tài)控制”信號為高電平時,緩沖器的輸出為高阻抗?fàn)顟B(tài)。信號為高電平時,緩

10、沖器的輸出為高阻抗?fàn)顟B(tài)。4 數(shù)據(jù)轉(zhuǎn)換l 需要使用接口電路進(jìn)行數(shù)據(jù)信號的轉(zhuǎn)換。其中需要使用接口電路進(jìn)行數(shù)據(jù)信號的轉(zhuǎn)換。其中包括:模包括:模 / 數(shù)轉(zhuǎn)換、數(shù)數(shù)轉(zhuǎn)換、數(shù) / 模轉(zhuǎn)換、串模轉(zhuǎn)換、串 / 并轉(zhuǎn)并轉(zhuǎn)換和并換和并/ 串轉(zhuǎn)換。串轉(zhuǎn)換。7.1.47.1.4接口的基本結(jié)構(gòu)接口的基本結(jié)構(gòu)l1端口l2地址譯碼電路l3數(shù)據(jù)緩沖器與鎖存器1端口lI/O接口通常設(shè)置有若干個寄存器,用來暫存接口通常設(shè)置有若干個寄存器,用來暫存CPU和外和外設(shè)之間傳輸?shù)臄?shù)據(jù)、狀態(tài)和控制信息。設(shè)之間傳輸?shù)臄?shù)據(jù)、狀態(tài)和控制信息。l一般有三類寄存器,分別是數(shù)據(jù)寄存器、狀態(tài)寄存器、一般有三類寄存器,分別是數(shù)據(jù)寄存器、狀態(tài)寄存器、控制寄

11、存器。控制寄存器。l接口內(nèi)的寄存器通常被稱為端口。根據(jù)寄存器內(nèi)暫存信接口內(nèi)的寄存器通常被稱為端口。根據(jù)寄存器內(nèi)暫存信息的類型,分別稱為數(shù)據(jù)端口、控制端口和狀態(tài)端口。息的類型,分別稱為數(shù)據(jù)端口、控制端口和狀態(tài)端口。l每個端口有一個獨(dú)立的地址,每個端口有一個獨(dú)立的地址,CPU可以用端口地址代碼可以用端口地址代碼來區(qū)別各個不同的端口,并對它們分別進(jìn)行讀來區(qū)別各個不同的端口,并對它們分別進(jìn)行讀/寫操作。寫操作。2地址譯碼電路地址譯碼電路l 它由譯碼器或能實(shí)現(xiàn)譯碼功能的其它芯它由譯碼器或能實(shí)現(xiàn)譯碼功能的其它芯片構(gòu)成。片構(gòu)成。l它的作用是進(jìn)行設(shè)備選擇,是接口中不可它的作用是進(jìn)行設(shè)備選擇,是接口中不可缺少的

12、部分。這部分電路不包含在集成接缺少的部分。這部分電路不包含在集成接口芯片中,要由用戶自行設(shè)計(jì)。口芯片中,要由用戶自行設(shè)計(jì)。3數(shù)據(jù)緩沖器與鎖存器數(shù)據(jù)緩沖器與鎖存器l在微機(jī)系統(tǒng)的數(shù)據(jù)總線上,連接著許多能夠向在微機(jī)系統(tǒng)的數(shù)據(jù)總線上,連接著許多能夠向CPU發(fā)送發(fā)送數(shù)據(jù)的設(shè)備,如內(nèi)存儲器、外設(shè)的數(shù)據(jù)輸入端口等。數(shù)據(jù)的設(shè)備,如內(nèi)存儲器、外設(shè)的數(shù)據(jù)輸入端口等。l為了不使系統(tǒng)數(shù)據(jù)總線的信號傳輸發(fā)生為了不使系統(tǒng)數(shù)據(jù)總線的信號傳輸發(fā)生“信息沖突信息沖突”,要求所有的這些連接到系統(tǒng)數(shù)據(jù)總線的設(shè)備具有三態(tài)輸要求所有的這些連接到系統(tǒng)數(shù)據(jù)總線的設(shè)備具有三態(tài)輸出的功能。出的功能。l也就是說,在也就是說,在CPU選中該設(shè)備時

13、,它能向系統(tǒng)數(shù)據(jù)總線選中該設(shè)備時,它能向系統(tǒng)數(shù)據(jù)總線發(fā)送數(shù)據(jù)信號,而在其它時刻,它的輸出端必須呈高阻發(fā)送數(shù)據(jù)信號,而在其它時刻,它的輸出端必須呈高阻狀態(tài)。為此,所有接口的輸入端口必須通過三態(tài)緩沖器狀態(tài)。為此,所有接口的輸入端口必須通過三態(tài)緩沖器與系統(tǒng)數(shù)據(jù)總線相連。與系統(tǒng)數(shù)據(jù)總線相連。返返 回回7.2 I/O端口及其編址方式l7.2.1 I/0端口l7.2.2 I/O端口的編址方式返返 回回7.2.1 I/0端口l端口(端口(portport)是接口電路中能被)是接口電路中能被CPUCPU直接訪問的寄存器的地址。直接訪問的寄存器的地址。 l計(jì)算機(jī)給接口電路中的每個寄存器分配一個端口,因此計(jì)算機(jī)給

14、接口電路中的每個寄存器分配一個端口,因此,CPU,CPU在訪在訪問這些寄存器時,只需指明它們的端口,不需指出是什么寄存器。問這些寄存器時,只需指明它們的端口,不需指出是什么寄存器。 lCPUCPU對數(shù)據(jù)端口進(jìn)行一次讀或?qū)懖僮?,也就是與該接口連接的外設(shè)對數(shù)據(jù)端口進(jìn)行一次讀或?qū)懖僮?,也就是與該接口連接的外設(shè)進(jìn)行一次數(shù)據(jù)傳輸進(jìn)行一次數(shù)據(jù)傳輸lCPUCPU對狀態(tài)端口進(jìn)行一次讀操作,就可以獲得外設(shè)或接口自身的狀對狀態(tài)端口進(jìn)行一次讀操作,就可以獲得外設(shè)或接口自身的狀態(tài)代碼態(tài)代碼lCPUCPU把若干位控制代碼寫入控制端口,則意味著對該接口或外設(shè)發(fā)把若干位控制代碼寫入控制端口,則意味著對該接口或外設(shè)發(fā)出一個控

15、制命令,要求該接口或外設(shè)按規(guī)定的要求工作出一個控制命令,要求該接口或外設(shè)按規(guī)定的要求工作返返 回回7.2.2 I/O端口的編址方式l1 端口地址和存儲器地址統(tǒng)一編址,也稱端口地址和存儲器地址統(tǒng)一編址,也稱存儲器映射方式存儲器映射方式l2 I/O端口地址和存儲器地址分開獨(dú)立編端口地址和存儲器地址分開獨(dú)立編址,也稱址,也稱I/O映射方式映射方式 1 統(tǒng)一編址方式統(tǒng)一編址方式l又稱為存儲器映像編制方式,從存儲器空間劃出一部分地址空間又稱為存儲器映像編制方式,從存儲器空間劃出一部分地址空間給給I/O設(shè)備,把設(shè)備,把I/O接口中的端口當(dāng)作存儲器單元一樣進(jìn)行訪問,不接口中的端口當(dāng)作存儲器單元一樣進(jìn)行訪問,

16、不設(shè)置專門的設(shè)置專門的I/O指令指令l優(yōu)點(diǎn):優(yōu)點(diǎn):l訪問訪問I/O端口可實(shí)現(xiàn)輸入端口可實(shí)現(xiàn)輸入/輸出操作,還可以對端口內(nèi)容進(jìn)行算術(shù)邏輸出操作,還可以對端口內(nèi)容進(jìn)行算術(shù)邏輯運(yùn)算、移位等等;輯運(yùn)算、移位等等;l 能給端口有較大的編址空間,這對大型控制系統(tǒng)能給端口有較大的編址空間,這對大型控制系統(tǒng)l和數(shù)據(jù)通信系統(tǒng)是很有意義的;和數(shù)據(jù)通信系統(tǒng)是很有意義的;l 缺點(diǎn):缺點(diǎn):l 端口占用了存儲器的地址空間,使存儲器容量減小;端口占用了存儲器的地址空間,使存儲器容量減??;l 指令長度比專門指令長度比專門I/O指令要長,因而執(zhí)行速度較慢;指令要長,因而執(zhí)行速度較慢; 2 獨(dú)立編址方式獨(dú)立編址方式lI/O端口地

17、址空間和存儲器地址空間是獨(dú)立的、分開的,即端口地址空間和存儲器地址空間是獨(dú)立的、分開的,即I/O端口端口地址不占用存儲器地址空間。地址不占用存儲器地址空間。l優(yōu)點(diǎn)優(yōu)點(diǎn)lI/O端口地址不占用存儲器空間;端口地址不占用存儲器空間;l使用專門的使用專門的I/O指令對端口進(jìn)行操作,指令對端口進(jìn)行操作,I/O指令短、執(zhí)行速度快;指令短、執(zhí)行速度快;l并且由于專門并且由于專門I/O指令與存儲器訪問指令有明顯的區(qū)別,使程序中指令與存儲器訪問指令有明顯的區(qū)別,使程序中I/O操作和存儲器操作層次清晰,程序的可讀性強(qiáng)。操作和存儲器操作層次清晰,程序的可讀性強(qiáng)。 l缺點(diǎn)缺點(diǎn)l這種編址方式中,微處理器對存儲器及這種編

18、址方式中,微處理器對存儲器及I/O端口是采用不同的控制端口是采用不同的控制線進(jìn)行選擇的,因而接口電路比較復(fù)雜。線進(jìn)行選擇的,因而接口電路比較復(fù)雜。 存儲存儲單元單元 統(tǒng)一編址統(tǒng)一編址I/O端口端口2201M內(nèi)存單元內(nèi)存單元21664KI/O端端口口獨(dú)立編址方式獨(dú)立編址方式7.3 端口地址譯碼l7.3.1 門電路譯碼l7.3.2 譯碼器譯碼l7.3.3 比較器譯碼l7.3.4 可編程邏輯器件譯碼返返 回回7.3.1 門電路譯碼門電路譯碼l這是最基本的也是最簡單的地址譯碼方法通常這是最基本的也是最簡單的地址譯碼方法通常采用各種門電路,如與門、或門、非門等電路采用各種門電路,如與門、或門、非門等電路

19、的組合。的組合。l 設(shè)計(jì)時首先分配好地址,然后寫成二進(jìn)制形式,設(shè)計(jì)時首先分配好地址,然后寫成二進(jìn)制形式,再根據(jù)地址總線數(shù)分配各與非門輸入管腳地址。再根據(jù)地址總線數(shù)分配各與非門輸入管腳地址。l門電路譯碼需要芯片種類較多,且譯出的端口門電路譯碼需要芯片種類較多,且譯出的端口地址單一,接口中用到的端口地址不能更改。地址單一,接口中用到的端口地址不能更改。7.3.2 譯碼器譯碼譯碼器譯碼l若接口電路中需使用多個端口地址,則采用譯碼器譯碼若接口電路中需使用多個端口地址,則采用譯碼器譯碼比較方便。比較方便。l譯碼器的型號很多,如譯碼器的型號很多,如38譯碼器譯碼器74LS138;416譯譯碼器碼器74LS

20、154;雙;雙24譯碼器譯碼器74LS139、74LS155等。等。l這些譯碼器通常由三個部分組成:譯碼控制端,選擇輸這些譯碼器通常由三個部分組成:譯碼控制端,選擇輸入端,譯碼輸出端。入端,譯碼輸出端。7.3.3 比較器譯碼比較器譯碼l將比較器的將比較器的A(A(或或B)B)輸入端輸入地址信號,輸入端輸入地址信號,B(B(或或A)A)端接一組端接一組DIP(Dual In-line Package)DIP(Dual In-line Package)開關(guān)。地址總線所送的地址開關(guān)。地址總線所送的地址與與DIPDIP所設(shè)置的地址相等時,產(chǎn)生一選通信號輸出。所設(shè)置的地址相等時,產(chǎn)生一選通信號輸出。l特

21、點(diǎn)特點(diǎn)l可以通過改變可以通過改變DIPDIP開關(guān)的設(shè)置,很容易地改變接口的地址。開關(guān)的設(shè)置,很容易地改變接口的地址。l不但同一功能的模塊在不同微型計(jì)算機(jī)應(yīng)用中可以被分配不但同一功能的模塊在不同微型計(jì)算機(jī)應(yīng)用中可以被分配不同的地址,而且即使在同一微型計(jì)算機(jī)系統(tǒng)中,也可通不同的地址,而且即使在同一微型計(jì)算機(jī)系統(tǒng)中,也可通過改變過改變DIPDIP開關(guān)的設(shè)置而控制不同的設(shè)備開關(guān)的設(shè)置而控制不同的設(shè)備. .。l這種譯碼電路應(yīng)用非常廣泛,常用的比較器有四位比較器這種譯碼電路應(yīng)用非常廣泛,常用的比較器有四位比較器74LS8574LS85和八位比較器和八位比較器74LS68874LS688。7.3.4 可編程

22、邏輯器件譯碼可編程邏輯器件譯碼l 以上的譯碼以及端口的讀寫控制都采用傳統(tǒng)的邏輯電以上的譯碼以及端口的讀寫控制都采用傳統(tǒng)的邏輯電路或時序電路完成相應(yīng)的功能,這些邏輯電路或時序電路路或時序電路完成相應(yīng)的功能,這些邏輯電路或時序電路芯片都是中小規(guī)模的集成電路,使用起來簡單方便。但如芯片都是中小規(guī)模的集成電路,使用起來簡單方便。但如果控制邏輯復(fù)雜,且要求保密性能高,則一般不采用這些果控制邏輯復(fù)雜,且要求保密性能高,則一般不采用這些芯片,而采用可編程器件。芯片,而采用可編程器件。l 可編程器件(可編程器件(PLD)有)有GAL(如(如16V8,20V8等)、等)、PAL以及目前流行的以及目前流行的CPL

23、D、FPGA等高級可編程器件。等高級可編程器件。這些可編程器件集成度較高,改變邏輯靈活多變,并具有這些可編程器件集成度較高,改變邏輯靈活多變,并具有可靠的加密功能,廣泛應(yīng)用于各個領(lǐng)域的邏輯和時器件編可靠的加密功能,廣泛應(yīng)用于各個領(lǐng)域的邏輯和時器件編程,即可得到各種控制邏輯。程,即可得到各種控制邏輯。 7.4 CPU與外設(shè)之間的數(shù)據(jù)傳送方式l7.4.1 程序控制方式l7.4.2 中斷傳送方式l7.4.3 直接存儲器存取方式返返 回回7.4.1 程序控制方式l程序控制方式是指CPU與外設(shè)間的數(shù)據(jù)傳送是在程序的控制下完成的一種數(shù)據(jù)傳送方式。l分為l1. 無條件傳送方式l2. 查詢傳送方式1. 無條件

24、傳送方式l所謂無條件,就是假設(shè)外設(shè)已處于就緒狀態(tài),數(shù)據(jù)傳送所謂無條件,就是假設(shè)外設(shè)已處于就緒狀態(tài),數(shù)據(jù)傳送時,程序就不必再去查詢外設(shè)的狀態(tài),而直接執(zhí)行時,程序就不必再去查詢外設(shè)的狀態(tài),而直接執(zhí)行I/O指令進(jìn)行數(shù)據(jù)傳輸。指令進(jìn)行數(shù)據(jù)傳輸。l當(dāng)簡單外設(shè)作為輸入設(shè)備時,其輸入數(shù)據(jù)的保持時間相當(dāng)簡單外設(shè)作為輸入設(shè)備時,其輸入數(shù)據(jù)的保持時間相對于對于CPU的處理時間要長得多,所以可直接使用三態(tài)緩的處理時間要長得多,所以可直接使用三態(tài)緩沖器與系統(tǒng)數(shù)據(jù)總線相連。沖器與系統(tǒng)數(shù)據(jù)總線相連。l當(dāng)簡單外設(shè)作為輸出設(shè)備時,由于外設(shè)的速度較慢,當(dāng)簡單外設(shè)作為輸出設(shè)備時,由于外設(shè)的速度較慢,CPU送出的數(shù)據(jù)必須在接口中保

25、持一段時間,以適應(yīng)外送出的數(shù)據(jù)必須在接口中保持一段時間,以適應(yīng)外設(shè)的動作,因此輸出采用鎖存器。設(shè)的動作,因此輸出采用鎖存器。2查詢傳送方式l查詢傳送方式在傳送數(shù)據(jù)前先查詢外設(shè)的狀態(tài),當(dāng)外設(shè)準(zhǔn)備好時,查詢傳送方式在傳送數(shù)據(jù)前先查詢外設(shè)的狀態(tài),當(dāng)外設(shè)準(zhǔn)備好時,CPUCPU執(zhí)行執(zhí)行I/OI/O指令傳送數(shù)據(jù);若未準(zhǔn)備好時,則指令傳送數(shù)據(jù);若未準(zhǔn)備好時,則CPUCPU等待。等待。l要求要求CPUCPU與外設(shè)間的接口電路需要兩個端口:數(shù)據(jù)端口和狀態(tài)端口。與外設(shè)間的接口電路需要兩個端口:數(shù)據(jù)端口和狀態(tài)端口。l優(yōu)點(diǎn):能較好地協(xié)調(diào)外設(shè)與優(yōu)點(diǎn):能較好地協(xié)調(diào)外設(shè)與CPUCPU之間的定時關(guān)系,因而比無條件傳送之間的定

26、時關(guān)系,因而比無條件傳送方式容易實(shí)現(xiàn)準(zhǔn)確傳送。方式容易實(shí)現(xiàn)準(zhǔn)確傳送。l缺點(diǎn)缺點(diǎn): :該方式需要不斷查詢外設(shè)的狀態(tài),大量時間花在等待循環(huán)中,該方式需要不斷查詢外設(shè)的狀態(tài),大量時間花在等待循環(huán)中,當(dāng)主機(jī)與中、低速外設(shè)交換信息時,大大降低了當(dāng)主機(jī)與中、低速外設(shè)交換信息時,大大降低了CPUCPU利用率。利用率。查詢傳送方式 例例7-3l設(shè)接口電路中狀態(tài)端口的地址為設(shè)接口電路中狀態(tài)端口的地址為STATUS,數(shù),數(shù)據(jù)端口的地址為據(jù)端口的地址為DATA,則,則CPU讀取輸入設(shè)備讀取輸入設(shè)備的數(shù)據(jù)應(yīng)執(zhí)行下列程序段:的數(shù)據(jù)應(yīng)執(zhí)行下列程序段:l POLL: IN AL, STATUS ;l TEST AL, 80

27、H ;l JE POLL ;l IN AL, DATA ;例例7-4l設(shè)接口電路中狀態(tài)端口的地址為設(shè)接口電路中狀態(tài)端口的地址為STATUS,數(shù),數(shù)據(jù)端口的地址為據(jù)端口的地址為DATA,則,則CPU將內(nèi)存將內(nèi)存STORE單元的內(nèi)容送至輸出設(shè)備應(yīng)執(zhí)行下列程序段:單元的內(nèi)容送至輸出設(shè)備應(yīng)執(zhí)行下列程序段:l POLL: IN AL, STATUS ;l TEST AL, 80H ;l JNE POLL ;l MOV AL, STORE ;l OUT DATA, AL ;返返 回回7.4.2 中斷傳送方式 l含義含義: :在中斷方式下,外設(shè)掌握向在中斷方式下,外設(shè)掌握向CPUCPU申請服務(wù)的主動權(quán),申請

28、服務(wù)的主動權(quán),當(dāng)輸入設(shè)備將數(shù)據(jù)準(zhǔn)備好,或者輸出設(shè)備已做好接收數(shù)當(dāng)輸入設(shè)備將數(shù)據(jù)準(zhǔn)備好,或者輸出設(shè)備已做好接收數(shù)據(jù)的準(zhǔn)備時,向據(jù)的準(zhǔn)備時,向CPUCPU發(fā)出中斷請求信號,要求發(fā)出中斷請求信號,要求CPUCPU為其服為其服務(wù)。若此時中斷允許觸發(fā)器是開放的,則務(wù)。若此時中斷允許觸發(fā)器是開放的,則CPUCPU暫停目前暫停目前的工作,與外設(shè)進(jìn)行一次數(shù)據(jù)傳輸,等的工作,與外設(shè)進(jìn)行一次數(shù)據(jù)傳輸,等I/OI/O操作完成以操作完成以后,后,CPUCPU繼續(xù)執(zhí)行原來的程序。繼續(xù)執(zhí)行原來的程序。l優(yōu)點(diǎn)優(yōu)點(diǎn): :保證了保證了CPUCPU對外設(shè)的實(shí)時服務(wù),又不會因?qū)Ω鲗ν庠O(shè)的實(shí)時服務(wù),又不會因?qū)Ω鱅/OI/O設(shè)備的隨時關(guān)照而花費(fèi)設(shè)備的隨時關(guān)照而花費(fèi)CPUCPU太多的機(jī)時,使高速運(yùn)行的太多的機(jī)時,使高速運(yùn)行的CPUCPU與速度參差不齊的各種外設(shè)之間形成了良好的匹配與速度參差不齊的各種外設(shè)之間形成了良好的匹配( (并行工作并行工作) )關(guān)系,確保了關(guān)系,確保了CPUCPU的高效率

溫馨提示

  • 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

提交評論