




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
微型計算機(jī)控制技術(shù)張媛yz@第二章輸入輸出接口技術(shù)和輸入輸出通道第一節(jié)概述第二節(jié)
I/O控制方式第三節(jié)I/O接口設(shè)計第四節(jié)I/O通道
第五節(jié)D/A轉(zhuǎn)換器第六節(jié)A/D轉(zhuǎn)換器第七節(jié)I/O通道的抗干擾措施2由于存儲器的功能單一、品種有限(ROM、RAM)、速度和CPU速度匹配,故可以直接掛在CPU總線上。而計算機(jī)的兩類外圍設(shè)備:(1)鍵盤、CRT、打印機(jī)等;(2)被控設(shè)備、儀表、顯示裝置、操作臺等。第一節(jié)概述兩類外設(shè)都必須通過輸入輸出(I/O)接口電路和輸入輸出(I/O)通道與CPU的總線相連。3圖1-1主機(jī)的外設(shè)插口數(shù)據(jù)類型;數(shù)據(jù)傳輸方向;速度;4外設(shè)的復(fù)雜性種類繁多。機(jī)械式、機(jī)電式、電子式。輸入或輸出類型。速度多樣。有的比CPU速度快,有的比CPU速度慢。信息類型多樣。數(shù)字量、模擬量。傳送方式多樣。并行方式、串行方式。5一、接口、通道及其功能
(一)設(shè)置I/O接口電路的必要性I/O接口電路是主機(jī)和外圍設(shè)備之間交換信息的電路。它在主機(jī)和外設(shè)之間架起了橋梁和紐帶。1.速度不匹配:外設(shè)的工作速度一般要比CPU慢許多。主機(jī)的一個最基本總線周期是400納秒。而一般的外設(shè),如打印機(jī)是毫秒級。而且外設(shè)的速度差異也很大。通過接口電路(通常含有數(shù)據(jù)鎖存器、緩沖器、狀態(tài)寄存器、中斷控制電路),CPU采用查詢或中斷控制方式為慢速的外設(shè)提供服務(wù),提高了CPU的利用率。2.數(shù)據(jù)格式不匹配:CPU只能讀入和輸出并行(8位/16位)數(shù)據(jù)。外圍設(shè)備的數(shù)據(jù)許多是串行(成本低)的。需要由接口芯片完成格式匹配工作。6一、接口、通道及其功能
(一)設(shè)置I/O接口電路的必要性3.時序不匹配:各個I/O設(shè)備都有自己的定時控制電路,以自己的速度傳輸數(shù)據(jù),無法與CPU的時序取得統(tǒng)一。4.解決總線負(fù)載能力和外圍設(shè)備端口選址問題:CPU總線的負(fù)載能力有限,采用接口電路分擔(dān)CPU總線的負(fù)載。CPU和外設(shè)之間是通過雙向數(shù)據(jù)總線交換信息,如果外設(shè)數(shù)據(jù)線直接掛在CPU上,則無法區(qū)分不同數(shù)據(jù)的來源和去向。通過具有三態(tài)門的輸出鎖存器或輸入緩沖器,控制使能信號,決定CPU某一時刻選通某個外設(shè)。7(二)I/O通道(過程通道)定義:它是計算機(jī)和控制對象之間信息傳送和變換的連接通道。功能:它將從被控對象采集的參數(shù)(模擬量)變換成計算機(jī)所要求的數(shù)字量(或開關(guān)量)形式送入計算機(jī);計算機(jī)對這些數(shù)據(jù)進(jìn)行處理后,I/O通道再將結(jié)果以數(shù)字量(開關(guān)量)形式或轉(zhuǎn)換為模擬量形式輸出到被控對象。簡言之,就是數(shù)模轉(zhuǎn)換。在實際應(yīng)用中,通常把I/O接口和I/O通道都做在一塊集成電路上。例如A/D和D/A轉(zhuǎn)換芯片。本章主要解決微機(jī)與外部(外設(shè),被控對象等)的連接問題。8二、I/O信號種類數(shù)據(jù)信息:包括數(shù)字量、模擬量、開關(guān)量、脈沖量。狀態(tài)信息控制信息9(一)數(shù)據(jù)信息:是主機(jī)和外圍設(shè)備交換的基本信息,通常是8、16位數(shù)據(jù),并行或串行的形式傳送。1.數(shù)字量:由鍵盤等設(shè)備輸入,或者計算機(jī)輸出給外設(shè)的信息,是二進(jìn)制碼的數(shù)據(jù)或ASCII碼表示的數(shù)據(jù)字符等。2.模擬量:來自工業(yè)現(xiàn)場的各種參數(shù),一般要經(jīng)過傳感器采集變?yōu)殡娦盘?,要?jīng)過A/D轉(zhuǎn)換變?yōu)閿?shù)字量后才能輸入計算機(jī)處理。3.開關(guān)量:只表示兩個狀態(tài)的量(開關(guān)的閉,合;電機(jī)的啟動,停止),只用一位二進(jìn)制代碼表示即可。4.脈沖量:是一個一個傳送的脈沖序列。脈沖的頻率和個數(shù)可以表示某種物理量。例如檢測電機(jī)軸上的脈沖信號發(fā)生器,可以獲得電機(jī)轉(zhuǎn)速和角位移的信息。10(二)狀態(tài)信息:又稱為應(yīng)答信息和握手信息。外設(shè)通過接口向CPU提供的反映外圍設(shè)備工作狀態(tài)的信息。用作二者的聯(lián)絡(luò)信號,如Ready信號和Busy信號)。(三)控制信息:是CPU通過接口傳送給外設(shè)的,它用來控制外設(shè)的操作,隨著外設(shè)的不同控制信號也不同。有的控制數(shù)據(jù)的流向(輸入或輸出),有的控制數(shù)據(jù)的格式(并行或串行),有的用于端口尋址等。11三種不同的信息都是通過CPU的數(shù)據(jù)總線傳送的。為了便于區(qū)分,各種信息存放在不同的端口中(可由CPU讀寫的寄存器),由此形成了數(shù)據(jù)口、狀態(tài)口、控制口。由于狀態(tài)信息一般只需1~2位二進(jìn)制代碼即可,所以多個外設(shè)可以共享一個狀態(tài)口。圖1-2數(shù)據(jù)總線12三、計算機(jī)與外部的通信(交換信息)方式——并行和串行13三、計算機(jī)與外部的通信(交換信息)方式——并行和串行并行通信就是用n條傳輸線同時來傳送n位數(shù)據(jù)。優(yōu)點:速度快,信息率高,通常只需兩條控制線和狀態(tài)線,就能完成CPU和接口及設(shè)備之間的協(xié)調(diào)和應(yīng)答。缺點:傳輸線較多,成本增大,工程量增大,不適用于長距離、多數(shù)據(jù)位的傳送。(好比并排跑步,占用的路面寬,修路成本高,速度快。)傳輸距離一般小于30米。常用的并行接口芯片:Intel公司的8255A,可編程,使用方便。(一)并行通信1415圖1-38255芯片16(二)串行通信串行通信是數(shù)據(jù)按位傳送。每一位數(shù)據(jù)占據(jù)固定的時間長度。(好比按縱隊跑步,有先有后,占用時間順序不同,占用的路面窄,修路成本低,效率慢。)基本概念:數(shù)據(jù)傳輸率;時鐘;通信協(xié)議串行通信的分類:從數(shù)據(jù)傳輸方向分為:全雙工,半雙工。從數(shù)據(jù)格式分為:同步通信和異步通信。17數(shù)據(jù)傳輸率是指單位時間內(nèi)傳輸?shù)男畔⒘?,可用比特率和波特率來表示。比特率:比特率是指每秒傳輸?shù)亩M(jìn)制位數(shù),用bps(bit/s)表示。波特率,波特率是指每秒傳輸?shù)姆枖?shù),若每個符號所含的信息量為1比特,則波特率等于比特率。
例如:電傳打字機(jī)最快傳輸率為每秒10個字符/秒,每個字符包含11個二進(jìn)制位,則數(shù)據(jù)傳輸率為:11位/字符×10個字符/秒=110位/秒=110波特(Baud)計算機(jī)中常用的波特率是:110、300、600、1200、2400、4800、9600、19200、28800、33600,目前最高可達(dá)56Kbps.
位時間Td
位時間是指傳送一個二進(jìn)制位所需時間,用Td表示。Td=1/波特率=1/B
18發(fā)送和接收時鐘在串行通信中,傳輸?shù)拿恳晃坏某掷m(xù)時間是固定的,由發(fā)送時鐘和接收時鐘的頻率決定。波特率因子:F=n*B;F是時鐘頻率,B是波特率,n是波特率因子(可以設(shè)定),例如n=1,16,64。同步通信中,n=1。191.全雙工方式:串行接口和外設(shè)間有兩條數(shù)據(jù)傳輸線,串口可以同時輸入輸出數(shù)據(jù),計算機(jī)可以同時發(fā)送接收數(shù)據(jù),效率比較高。圖1-4全雙工方式202.半雙工方式:串口和外設(shè)間只有一根數(shù)據(jù)線,某一時刻數(shù)據(jù)只能沿著一個方向傳送,要么輸入/要么輸出。效率比較低。打印機(jī)是半雙工方式。圖1-5半雙工方式213.同步通信:在約定的通信速度下,發(fā)送端和接收端的時鐘信號頻率始終保持一致,將許多字符組成一組,稱為信息幀(可能包含幾十甚至上千字符)
。在每幀信息的開始加上一個同步字符,表示下面要開始信息發(fā)送了;然后再一個一個發(fā)送該幀的數(shù)據(jù)位(每一位具有固定的時間間隔)。接收端在收到對方發(fā)來的同步字符時(同步字符是預(yù)先約定的),就開始按約定的傳輸速率接受對方發(fā)來的信息。若無數(shù)據(jù)傳輸,要發(fā)送“空閑”字符。優(yōu)點:相對異步通信,同步通信的速度較快。缺點:為保持精確的同步時鐘,成本較高。22異步通信:通信中兩個字符之間的時間間隔是不固定的,一個字符中各位的時間間隔是固定的。異步通信格式為:起始位、數(shù)據(jù)位(5~8位)、奇偶校驗位、停止位(高電平)組成。起始位和停止位之間的一串?dāng)?shù)據(jù)稱為幀。異步通信的幀,只包含一個字符。23傳輸從字符的低位向高位進(jìn)行。當(dāng)要開始傳輸數(shù)據(jù)了,輸出線由“1”跳變?yōu)椤?”,叫做起始位,表示數(shù)據(jù)傳輸開始。在起始位后可以傳遞5~8位的有效數(shù)據(jù)位,結(jié)束后加上電平為“1”的停止位。表示信息傳輸結(jié)束,停止位可以由1位,1.5位或2位數(shù)據(jù)位組成。24每接收一個字符,發(fā)送方和接收方要重新同步一串。優(yōu)點:硬件成本低。缺點:傳輸效率較低,因為附加信息位多。圖1-6標(biāo)準(zhǔn)的異步通信數(shù)據(jù)格式25異步通信協(xié)議RS232;RS422;RS485;USB;IEEE139426同步通信和異步通信的區(qū)別?請思考。課堂提問。27第二節(jié)I/O控制方式計算機(jī)控制系統(tǒng)中連接了大量的外圍設(shè)備,各個外設(shè)的工作速度差別極大。為了協(xié)調(diào)外圍設(shè)備的工作,CPU必須對它們采用分時控制,每個外設(shè)只在規(guī)定的時間片斷內(nèi)得到服務(wù)。為使外設(shè)在CPU控制下協(xié)調(diào)高效的工作,就要規(guī)定一個CPU控制各外設(shè)的控制策略,即控制方式。常用的控制方式:一、程序控制方式(無條件、查詢式)二、中斷控制方式二、直接存儲器存取方式28一、程序控制方式以CPU為中心,CPU通過程序控制數(shù)據(jù)傳送,即通過傳送指令和I/O指令實現(xiàn)實現(xiàn)數(shù)據(jù)的傳送。特點:速度較低,傳送路徑要經(jīng)過CPU內(nèi)部寄存器。29(一)無條件I/O方式(同步傳送方式):不必查詢外設(shè)的狀態(tài)直接進(jìn)行信息傳送。適用范圍:適用于簡單外設(shè),或者外設(shè)的工作時間已知。所需軟硬件配置較少。要求外設(shè)始終處于就緒狀態(tài),如開關(guān)和LED數(shù)碼管。缺點:一旦已知信息有誤,可能就會導(dǎo)致數(shù)據(jù)傳輸失敗,數(shù)據(jù)丟失。30圖2-1無條件I/O方式的接口電路原理圖或門31(二)查詢式I/O方式(條件傳送方式)除數(shù)據(jù)端口之外,還有狀態(tài)端口。要首先通過狀態(tài)口的“0”和“1”來表示外設(shè)是否就緒。。CPU通過執(zhí)行輸入指令從狀態(tài)口讀取當(dāng)前狀態(tài)信息,當(dāng)外設(shè)為“就緒”或者“空閑”狀態(tài)時,CPU才執(zhí)行“輸入”或“輸出”指令。否則,CPU將繼續(xù)不斷測試狀態(tài)信息,只到外設(shè)就緒為止。
當(dāng)有多個外設(shè)時,CPU逐個查詢各外設(shè)的狀態(tài),當(dāng)狀態(tài)位為“1”時,表示外設(shè)準(zhǔn)備好或空閑,請求CPU輸入或輸出數(shù)據(jù),則CPU將為其服務(wù)(傳送數(shù)據(jù)),完成后將清除該設(shè)備的狀態(tài)位。再繼續(xù)查詢下一個外設(shè)。當(dāng)所有外設(shè)的狀態(tài)都查詢完畢則回到第一個外設(shè)開始新一輪的查詢,服務(wù)。32端口譯碼≥1≥1輸入緩沖器輸出鎖存器數(shù)據(jù)總線M/≥1三態(tài)緩沖器數(shù)據(jù)輸入數(shù)據(jù)輸出外設(shè)狀態(tài)CPU不斷讀入并測試狀態(tài)口的狀態(tài),只有當(dāng)狀態(tài)口的信號為“1”時,CPU才發(fā)出輸入輸出指令,此時M/才為低電平,譯碼器才開始工作。地址總線圖2-2查詢式I/O方式的接口電路原理圖需讀狀態(tài)信息33用查詢方式對1#2#3#三個設(shè)備進(jìn)行I/O管理
MOVFLAG,0
設(shè)置標(biāo)志為0DVC1:INAL,STAT
讀入外圍設(shè)備狀態(tài)
TESTAL,01H
測試外圍三個設(shè)備的狀態(tài)(是否請求服務(wù))
JZDVC2CALLCCS1(外設(shè)1的I/O處理)DVC2:INAL,STATTESTAL,02HJZDVC3CALLCCS2DVC3:INAL,STATTESTAL,04HJZDDSCALLCCS3DDS:CMPFLAG,1JNZDVC1指令TEST是將兩個操作數(shù)作“按位與”,影響標(biāo)志位圖2-3查詢式I/O方式的軟件流程34查詢式I/O方式的優(yōu)缺點優(yōu)點:1、比無條件I/O方式可靠。2、接口電路簡單,不占用中斷輸入線,程序簡單,易于調(diào)試。3、外設(shè)的工作通過CPU執(zhí)行程序完成,故外設(shè)與程序的執(zhí)行保持同步,特別適用于多個按一定規(guī)律工作的生產(chǎn)過程的控制。缺點:1.CPU要不斷讀取并測試狀態(tài),不管設(shè)備是否提出了請求都會對他的狀態(tài)位進(jìn)行測試,占用時間,效率低。2.當(dāng)CPU與一個外設(shè)傳送數(shù)據(jù)時,其他設(shè)備只能等待。3.只能處理預(yù)先設(shè)定的操作,無法發(fā)現(xiàn)和處理突然出現(xiàn)和預(yù)先無法估計的特殊情況。適用范圍:適用于實時性要求不高,外設(shè)不太多,CPU不太忙的場合。35查詢式I/O方式的使用條件外設(shè)的服務(wù)時間指執(zhí)行某外設(shè)服務(wù)子程序所需的時間。設(shè)備最短響應(yīng)時間指某臺設(shè)備相鄰兩次請求服務(wù)的最短時間間隔。CPU必須在最短響應(yīng)時間內(nèi)為該設(shè)備服務(wù),否則可能造成控制失誤。因為計控系統(tǒng)必須滿足實時性的要求,則為查詢式I/O方式提出了一個使用條件:所有外設(shè)的服務(wù)時間的總和必須小于或等于任一外圍設(shè)備的最短響應(yīng)時間。最短響應(yīng)時間:某臺設(shè)備相鄰兩次請求服務(wù)的最短時間間隔。查詢式I/O方式適用于各外設(shè)的服務(wù)時間不長,最短響應(yīng)時間區(qū)別不大的情況。36(三)中斷控制I/O方式為了更好地滿足實時性的要求,通常采用中斷控制I/O方式。當(dāng)外設(shè)提出中斷請求時,CPU才響應(yīng)。停止當(dāng)前的工作,去執(zhí)行外圍設(shè)備的中斷服務(wù)程序,當(dāng)它執(zhí)行完后回到剛才的執(zhí)行點繼續(xù)執(zhí)行先前未完成的程序。沒有中斷請求時,CPU運(yùn)行主程序。計控系統(tǒng)一般采用外部中斷方式。即通過I/O接口硬件向CPU發(fā)出中斷請求信號。8086有兩個中斷引腳:NMI和INTR。NMI是非屏蔽中斷,不受中斷允許標(biāo)志IF控制的,只要收到信號立即響應(yīng)中斷服務(wù)程序。一般用來處理設(shè)備的中斷故障。INTR為可屏蔽中斷,只有當(dāng)中斷允許標(biāo)志位IF=1時才響應(yīng)中斷服務(wù)程序。3738(一)中斷處理要解決的問題(1)保存現(xiàn)場和恢復(fù)現(xiàn)場。記錄一些現(xiàn)場的地址,數(shù)據(jù)信息,保存通用寄存器的內(nèi)容。PUSH,POP(2)正確判斷中斷源。必須正確判斷是哪個外設(shè)提出的中斷請求,并找到該設(shè)備的中斷服務(wù)程序的入口地址。往往借助中斷管理器8259A芯片。(3)實時響應(yīng)。保證每個外設(shè)的每次中斷能夠在其最短響應(yīng)時間內(nèi)得到響應(yīng),并給予服務(wù)。(4)按優(yōu)先順序處理。應(yīng)該對不同的設(shè)備根據(jù)要求服務(wù)的輕重緩急來設(shè)定他們中斷的優(yōu)先級別,從而實現(xiàn)中斷嵌套,先執(zhí)行級別高的中斷服務(wù)程序。39(二)中斷優(yōu)先級問題三種方式處理中斷優(yōu)先級:1、軟件查詢方式;2、雛菊鏈法;3、專用硬件方式.401、軟件查詢方式
PUSHAX
程序中要用到AX寄存器,故堆棧保存DVC1:INAL,STAT1TESTAL,20HJZDVC2CALLCCS1JMPDVANDDVC2:INAL,STAT2TESTAL,20HJZDVC3CALLCCS2JMPDVANDDVC3:INAL,STAT3TESTAL,20HJMPDVANDCALLCCS3DVEND:POPAXIRET外圍設(shè)備中斷的優(yōu)先權(quán)由所處查詢序列中的位置決定。D4數(shù)據(jù)位是狀態(tài)位,決定是否有中斷請求。圖2-4軟件查詢中斷控制的接口電路412、雛菊鏈法≥11≥111INTR中斷回答中斷應(yīng)答信號。圖2-5雛菊鏈邏輯電路中斷請求非門或門1000100≥11≥111INTR中斷回答中斷應(yīng)答信號。中斷請求非門或門101110042在雛菊鏈電路中如果某級設(shè)備發(fā)出中斷請求,則截獲該選通信號,從而使自己的中斷請求得到響應(yīng)。并且使后面的設(shè)備無法再獲得選通信號。該設(shè)備截獲選通信號后則撤銷自己的中斷請求,然后發(fā)一個中斷類型號,使CPU找到正確的中斷程序入口。如果該設(shè)備沒有提出請求,則該選通信號會繼續(xù)往后傳遞。當(dāng)有幾個設(shè)備同時提出中斷請求時,最接近CPU的設(shè)備先得到響應(yīng),優(yōu)先級最高。作法:在每個外圍設(shè)備對應(yīng)的接口連接上一個邏輯電路,這些邏輯電路構(gòu)成一個鏈,稱為雛菊鏈,由它控制中斷應(yīng)答信號的通路。這種方法是利用外設(shè)在系統(tǒng)中的物理位置來決定中斷優(yōu)先權(quán)的。最靠近CPU的接口,優(yōu)先級最高。43CPU及總線控制邏輯INTR設(shè)備·1接口雛菊鏈邏輯電路1中斷應(yīng)答11中斷請求設(shè)備·2接口雛菊鏈邏輯電路中斷應(yīng)答中斷請求…圖2-6雛菊鏈邏輯電路/INTA可以沿著雛菊璉向后傳遞;若有中斷請求信號,則可截獲/INTA信號。443、專用硬件方式在計控系統(tǒng)中最常用的中斷控制方式是采用專用硬件芯片——中斷控制器來進(jìn)行中斷優(yōu)先級的管理(如8259A)。1片8259A可以管理8級中斷源。效率高,使用靈活方便。45圖2-78259A芯片46復(fù)習(xí)8086系統(tǒng)的中斷源4748IR0優(yōu)先級別最高。49第二次的課后復(fù)習(xí)題:(一)設(shè)置I/O接口的必要性?(二)I/O接口的主要功能?(三)I/O接口的控制方式?(四)三態(tài)門,是哪三態(tài)?50第二次的課后復(fù)習(xí)題簡要答案:一:速度、時序、信息格式、信息類型不匹配。二:設(shè)置數(shù)據(jù)的緩沖器、鎖存器;串行和并行轉(zhuǎn)換;電平轉(zhuǎn)換;A/D轉(zhuǎn)換;D/A轉(zhuǎn)換;協(xié)調(diào)時序差異;地址譯碼;設(shè)置中斷和DMA擴(kuò)展邏輯。三:程序控制(無條件傳輸;查詢;中斷),DMA方式。
四:高電平,低電平,高阻態(tài)。51(三)中斷控制的實時響應(yīng)條件采用中斷控制I/O方式時,當(dāng)外設(shè)沒有提出中斷請求時,CPU運(yùn)行主程序。僅當(dāng)外設(shè)提出中斷請求時才臨時中斷主程序去為外設(shè)服務(wù)。因此中斷控制I/O方式可以較好的解決CPU與外設(shè)在速度上差別很大的問題,協(xié)調(diào)二者的工作,效率較高。為了更好地滿足實時性的要求,可以根據(jù)外設(shè)最短響應(yīng)時間的長短和輕重緩急恰當(dāng)?shù)匕才艃?yōu)先級順序。為了滿足實時性的要求還有一些必須滿足的條件。52軟件查詢的中斷控制方式,按照優(yōu)先級由高到低逐個檢測中斷請求狀態(tài)位,逐個服務(wù)。假設(shè)有n個中斷方式控制的外設(shè)。把它們按照最短響應(yīng)時間從小到大的順序排列。各外設(shè)的實際服務(wù)時間為S1,S2,….Si。設(shè)其中第i個設(shè)備的服務(wù)時間最長。即Si
=Smax。最壞的情況是,CPU剛響應(yīng)第i個外設(shè)時,其它所有的外設(shè)都提出中斷請求。假設(shè)不采用中斷嵌套,那么CPU為第i個設(shè)備服務(wù)完后,才能依次按照優(yōu)先級順序,逐個給予服務(wù)。要滿足實時性要求,必須在各設(shè)備的最短響應(yīng)時間內(nèi)使它們都得到服務(wù),則必須滿足:53采用中斷嵌套時,響應(yīng)時間短、優(yōu)先權(quán)高的設(shè)備,其實時響應(yīng)要求容易滿足。但是若這樣的設(shè)備頻繁中斷其它設(shè)備的服務(wù)程序,則其它設(shè)備的中斷請求能否得到實時響應(yīng),就是麻煩事了。要滿足實時性要求,必須在各設(shè)備的最短響應(yīng)時間內(nèi)(兩次請求之間的間隔時間)使它們都得到服務(wù),則必須滿足:54中斷控制方式的局限性和原因局限性:雖然比程序控制方式的效率高,但仍無法滿足高速傳遞數(shù)據(jù)的場合。原因:在進(jìn)入中斷服務(wù)程序和中斷返回時都要進(jìn)行大量的準(zhǔn)備工作,即入棧和出棧(保存斷點,狀態(tài)信息;恢復(fù)斷點,狀態(tài)信息);而且數(shù)據(jù)的傳遞仍然是通過CPU執(zhí)行輸入輸出指令實現(xiàn)的,效率相對來說不是很高。55二、直接存儲器存取方式——DMA方式
該方式不經(jīng)過CPU,在外設(shè)和存儲器之間直接高速交換數(shù)據(jù)。使用DMAC(直接存儲器控制器,例如芯片8237A),用硬件的方式實現(xiàn)數(shù)據(jù)的傳遞,速度快。
DMA可以實現(xiàn):內(nèi)存與I/O之間;內(nèi)存與內(nèi)存之間;I/O與I/O之間的數(shù)據(jù)傳送。56DMAC直接存儲器控制器(DMAC)暫時占用數(shù)據(jù)總線、地址總線和控制總線。步驟:1、當(dāng)外設(shè)就緒,需要進(jìn)行DMA操作時,向DMAC發(fā)出請求;2、DMAC收到請求后,再向CPU發(fā)出總線請求信號;3、若被CPU接受,則發(fā)出DMA響應(yīng)信號,同時釋放總線,交給DMAC控制。此時,在內(nèi)存和外設(shè)間直接完成高速數(shù)據(jù)傳送,不需要CPU的干預(yù)。圖2-88237A的用途57DMAC4、DMA過程結(jié)束后,DMAC向CPU發(fā)出結(jié)束信號,再將總線控制權(quán)還給CPU。5、8086系統(tǒng)中,CPU的HOLD引腳接受DMAC的總線請求,在HLDA引腳上向DMAC發(fā)送總線請求的允許信號,二者均為高電平有效。圖2-88237A的用途588086系統(tǒng)中,CPU的HOLD引腳接受DMAC的總線請求HRQ,在HLDA引腳上向DMAC發(fā)送總線請求的允許信號,二者均為高電平有效。DMAC先使HOLD為高電平,請求占用總線;CPU響應(yīng)請求后,CPU使HLDA輸出高電平,表示DMAC可以占用總線;當(dāng)DMAC完成數(shù)據(jù)傳送后,將HOLD變?yōu)榈碗娖?,CPU隨后將HLDA變?yōu)榈碗娖健tCPU重新控制總線。59DAM方式的特點:
在DMAC的控制下,外設(shè)直接和存儲器(也可外設(shè)與外設(shè),存儲器與存儲器之間)進(jìn)行數(shù)據(jù)傳送,而不必經(jīng)過CPU,傳送速度基本取決于外設(shè)與存儲器的速度,從而傳送效率大大提高。如磁盤與存儲器之間的傳輸速度每秒高達(dá)幾兆字節(jié),這是采用中斷方式(用CPU執(zhí)行指令傳輸數(shù)據(jù))所實現(xiàn)不了的。602、DMA控制器(DMAC)的功能接收CPU發(fā)出的讀寫信號——初始化;接收外設(shè)發(fā)來的DMA請求;向CPU發(fā)出總線請求信號;接收CPU發(fā)出的總線請求允許信號;向外設(shè)發(fā)出DMA請求允許信號;發(fā)出地址信息,能對存儲器尋址及修改地址指針;能發(fā)出讀/寫等控制信號;能提供數(shù)據(jù)的傳輸數(shù)量;能撤銷總線請求信號,使CPU恢復(fù)正常工作。61二、常用DMAC芯片——Intel82371.基本結(jié)構(gòu)及功能傳輸率:1.6MB/s。4個獨(dú)立通道:每個通道包含16位地址寄存器和16位字節(jié)計數(shù)器,8位模式寄存器。4個通道公用控制寄存器和狀態(tài)寄存器。不同的通道可以用來處理不同的數(shù)據(jù)交換工作:軟盤數(shù)據(jù),硬盤數(shù)據(jù),網(wǎng)絡(luò)數(shù)據(jù)的交換等。圖2-98237A芯片基本結(jié)構(gòu)62第三節(jié)I/O接口設(shè)計
一、設(shè)計任務(wù)I/O接口設(shè)計的任務(wù):根據(jù)生產(chǎn)過程和設(shè)備的具體要求以及外設(shè)的特點,選定合適的I/O控制方式,設(shè)計合適的I/O接口硬件電路和相應(yīng)的接口控制程序,使CPU和外設(shè)間能實時可靠地交換信息??刂品绞降倪x定主要考慮信息交換的速度和CPU的工作效率。硬件和軟件的選擇取決于控制速度、可靠性和成本。63二、I/O接口的編址方式為什么要進(jìn)行編址?在CPU的數(shù)據(jù)總線上同時掛有多種外設(shè)和存儲器。當(dāng)CPU輸入輸出數(shù)據(jù)時必須確定數(shù)據(jù)的來源和去向,所以要涉及到端口尋址的問題。兩種編址方式:I/O接口與存儲器統(tǒng)一編址;I/O接口獨(dú)立編址。64(一)I/O接口與存儲器統(tǒng)一編址方式定義:把所有I/O接口的端口都當(dāng)作是存儲器的一個單元來對待,接口芯片和存儲單元統(tǒng)一編址。不設(shè)置專門的I/O指令。優(yōu)點:訪問內(nèi)存的指令都可以用來訪問I/O接口,數(shù)據(jù)處理能力強(qiáng)。I/O接口可以和存儲器公用“譯碼和控制電路”。I/O地址空間靈活,根據(jù)實際情況使用。缺點:I/O接口占用了存儲空間;沒有專用的I/O指令,程序可讀性較差。I/O接口的編址方式是由所用的微處理器決定。Intel51系列和96系列單片機(jī)。65圖2-3-1統(tǒng)一編址方式66(二)I/O接口獨(dú)立編址方式定義:將存儲器地址空間和I/O接口地址空間分開設(shè)置。設(shè)有專門的輸入(IN)、輸出(OUT)指令完成I/O操作。很多微處理器都采用這種編址方式:8086、Z80、8088、8080等。優(yōu)點:將輸入輸出指令和訪問內(nèi)存的指令分開,使程序可讀性好。I/O指令執(zhí)行速度快,不占有內(nèi)存空間,I/O譯碼電路簡單。缺點:專門的輸入輸出指令。要采用專用I/O周期和I/O控制線。微處理器復(fù)雜化。67圖2-3-2獨(dú)立編址方式681:8086有16條地址線,端口為216(65536,64K)個,端口號為0000H~FFFFH。2:尋址方式分為直接尋址和間接尋址。8086的輸入輸出指令,分為直接輸入輸出指令,間接輸入輸出指令。前者只能用于00H~FFH端口,即前256個端口,INAL,55H;OUT70HAX;后者可以用于所有的64K個端口,且必須將端口號放入DX寄存器中。INAX,DX;OUTDX,AL69三、I/O接口與系統(tǒng)的連接I/O接口與外部的連接如圖所示。劃分為兩部分:第一部分和外設(shè)相連。該部分的接口結(jié)構(gòu)和設(shè)備傳輸要求和數(shù)據(jù)格式有關(guān)。隨外設(shè)不同而不同。第二部分和系統(tǒng)總線相連。該部分的接口結(jié)構(gòu)對不同的接口芯片都基本相同。實現(xiàn)與CPU的啟動、接口的選中等信號的配合,提供傳輸數(shù)據(jù)的I/O端口。圖2-10典型的I/O口和外部的連接70數(shù)據(jù)信號D0~D7:CPU與外設(shè)之間的信息交換、CPU對接口芯片的編程命令、接口芯片送到CPU的狀態(tài)信息都從數(shù)據(jù)線上傳輸。讀寫控制信號(或):低電平有效。片選信號和地址線A0,A1。片選信號是由地址信號線和經(jīng)過譯碼器得到的。用來選擇不同的外設(shè)。A0,A1
用來尋址片內(nèi)寄存器。時鐘、復(fù)位、中斷控制、聯(lián)絡(luò)信號等控制信號,接口芯片不同這些控制信號也有所不同。M/書本30頁的圖2-15和圖2-16分別是并行接口芯片、串行接口芯片和CPU、外設(shè)的連接,由圖知接口芯片與CPU的連接信號分為下面四類:71727374四、I/O接口擴(kuò)展各種微型機(jī)都配有各種可編程的I/O接口電路(8253定時器計數(shù)器,8251A串行接口芯片,8255A并行接口芯片等),但是可能接口數(shù)量和內(nèi)存仍然不滿足實際生產(chǎn)的需要,必須擴(kuò)展,這是計控系統(tǒng)硬件設(shè)計的主要任務(wù)。擴(kuò)展I/O接口需要解決端口的編址、選址問題。每個通用接口芯片都包含一組寄存器,各類信息進(jìn)入不同的端口。CPU和外部之間的信息交換都通過這些端口實現(xiàn),因此擴(kuò)展的地址譯碼電路不僅要提供接口芯片的片選信號,還要內(nèi)區(qū)分各個芯片的內(nèi)部寄存器。地址擴(kuò)展常用的譯碼器:74LS138(3:8)譯碼器75(一)地址譯碼器的擴(kuò)展常用是3-8譯碼器,74LS138。由譯碼器芯片的C、B、A可以使引腳Y0~Y7分別為低電平有效,從而選通不同的芯片。76(二)負(fù)載能力的擴(kuò)展擴(kuò)展的I/O接口和存儲器的數(shù)據(jù)線掛在CPU的數(shù)據(jù)總線上;各芯片的地址和控制線掛在CPU的地址總線和控制總線上。如果CPU總線的負(fù)載太重,各信號線的電平將偏離正常值?!?”電平過高,“1”電平過低,導(dǎo)致系統(tǒng)工作不穩(wěn)定,抗干擾能力差,甚至?xí)p壞器件。常用的器件:TTL器件和MOS器。TTL器件又分為標(biāo)準(zhǔn)TTL器件74×××和低功耗肖特基TTL器件74LS×××TTL和MOS器件的邏輯電平一致,但功耗和驅(qū)動能力不同。MOS器件的輸入電流小,驅(qū)動能力也差??偩€收發(fā)器可以提高總線驅(qū)動能力,例如INTEL的收發(fā)器芯片8286,TI公司的74LS245。77四、(1)I/O接口設(shè)計的方法、步驟1、了解分析常用外設(shè)或被控設(shè)備與CPU之間信息交換的要求(需要的聯(lián)絡(luò)信號、I/O數(shù)據(jù)格式、最短響應(yīng)時間和服務(wù)時間的估計、確定I/O控制方式)。2、考慮硬件和軟件的功能分配。3、進(jìn)行I/O端口的數(shù)量統(tǒng)計、數(shù)據(jù)流向安排、端
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 鳳爪現(xiàn)貨采購合同范本
- 公寓改造協(xié)議空間優(yōu)化
- 35萬畝茶葉種植及產(chǎn)品深加工項目可行性分析報告
- 2025年氯化石蠟項目可行性研究報告
- 公司退休返聘勞務(wù)合同范本
- 個人采購月餅合同范本
- 企業(yè)之間電子合同范本
- 代理記賬廉價合同范本
- 臨時場地出租合同范例
- 酒類實習(xí)報告4篇
- 西方政治思想史-課件
- 學(xué)生心理健康測量表
- GA745-2017銀行自助設(shè)備、自助銀行安全防范要求國標(biāo)
- 邯鄲市垃圾填埋場封場方案
- 2020閩教版信息技術(shù)四年級(下冊)全冊教案
- introduction to pipeline pilot在處理數(shù)據(jù)中的一些應(yīng)用
- 智能中臺數(shù)據(jù)底座解決方案
- 突發(fā)性聾診療指南 (2015版)
- 光伏發(fā)電工程施工組織設(shè)計施工工程光伏發(fā)電工程光伏發(fā)電施工組織設(shè)計
- 11鋼的表面淬火解析
- 導(dǎo)數(shù)應(yīng)用舉例
評論
0/150
提交評論