第7章計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸_第1頁(yè)
第7章計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸_第2頁(yè)
第7章計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸_第3頁(yè)
第7章計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸_第4頁(yè)
第7章計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第七章第七章 計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸 7.1 接口電路接口電路 7.1.1 接口的用途接口的用途接口電路或集成的接口電路即接口芯片,用于實(shí)現(xiàn)外部設(shè)備與主機(jī)之間的連接(connection)和信息交換。如圖7-1所示。 接口電路中通常包括3種信息,即:數(shù)據(jù)信息、狀態(tài)信息和控制信息。1. 數(shù)據(jù)信息數(shù)據(jù)信息 CPU與外設(shè)交換的基本信息就是數(shù)據(jù)。數(shù)據(jù)信息一般分為3種類型,即數(shù)字量、模擬量、開(kāi)關(guān)量。2.狀態(tài)信息狀態(tài)信息狀態(tài)信息是反映外設(shè)當(dāng)前工作狀態(tài)的信息。每種狀態(tài)用1位表示,每個(gè)外設(shè)可以有幾個(gè)狀態(tài)位,它們可由CPU讀取,以測(cè)試或檢查外設(shè)的狀態(tài),決定程序的流程。3.控制信息控制信息控

2、制信息是CPU通過(guò)接口傳送給外設(shè)的控制信息,它是用來(lái)控制外設(shè)工作的信息。如選通信號(hào)、啟停信號(hào)等。這3類信息在形式上都是二進(jìn)制代碼,它們都是通過(guò)數(shù)據(jù)總線(DB)來(lái)傳送的,但它們的性質(zhì)是不同的,必須分別傳送,分別放在接口內(nèi)的不同端口中。而接口對(duì)數(shù)據(jù)總線(DB)上數(shù)據(jù)類型的識(shí)別是根據(jù)相應(yīng)的端口地址來(lái)區(qū)分的。 7.1.2 接口的功能接口的功能(1)數(shù)據(jù)緩沖和鎖存。 (2)執(zhí)行CPU命令。 (3)地址譯碼或設(shè)備選擇。 (4)信號(hào)轉(zhuǎn)換與數(shù)據(jù)格式轉(zhuǎn)換。 然而并不是每種接口都具有以上全部功能,但前三項(xiàng)功能應(yīng)是一般接口都需要具有的功能。 7.1.3 IO端口端口CPU與外設(shè)交換的數(shù)據(jù)信息都保存在接口電路的這些寄

3、存器(輸出數(shù)據(jù)鎖存器和輸入數(shù)據(jù)緩沖器 )中,CPU對(duì)外設(shè)的操作實(shí)際上就是對(duì)這些寄存器的操作,這些寄存器在計(jì)算機(jī)系統(tǒng)中被稱之為端口(port),對(duì)它們的操作也叫I/O端口操作。 I/O端口編址端口編址 I/O端口的編址方式有兩種:I/O端口與存儲(chǔ)器統(tǒng)一編址方式和I/O端口獨(dú)立編址方式。 (1)I/O端口與存儲(chǔ)器統(tǒng)一編址 I/O端口與存儲(chǔ)器統(tǒng)一編址就是在整個(gè)CPU的地址空間中,劃出一部分作為存儲(chǔ)器地址空間,另一部分為I/O端口地址空間,如圖7-2(a)所示。8051單片機(jī)系統(tǒng)就采用該種編址方式。 在統(tǒng)一編址方式下,CPU將I/O端口與存儲(chǔ)器同等對(duì)待,因此不需要專門的I/O指令,CPU對(duì)存儲(chǔ)器的全部

4、操作指令均可用于I/O操作,故I/O指令多,且使用方便。統(tǒng)一編址的缺點(diǎn)是I/O端口占用了部分存儲(chǔ)器地址空間,從而減少了存儲(chǔ)器可用地址空間的大小,程序不易閱讀(不易區(qū)分到底是訪問(wèn)主存還是訪問(wèn)外設(shè))。 圖 7-2 兩種編址方式 同步輸入方式(1)同步輸入過(guò)程提供端口地址,以便CPU從指定的外設(shè)中讀入數(shù)據(jù)。執(zhí)行IN指令或存儲(chǔ)器讀指令。地址譯碼器輸出,同時(shí)產(chǎn)生M/和控制信號(hào)。數(shù)據(jù)從端口中輸入至CPU寄存器。(2)同步輸入硬件接口電路 硬件接口電路必須保證同步輸入過(guò)程的正確執(zhí)行。圖7-3是一個(gè)同步輸入硬件接口電路。 圖7-3同步輸入硬件接口電路 2. 同步輸出方式(1)同步輸出過(guò)程提供端口地址,以便CP

5、U將數(shù)據(jù)送到指定的外設(shè)。執(zhí)行OUT指令或存儲(chǔ)器寫(xiě)指令。地址譯碼器輸出,同時(shí)產(chǎn)生M/和信號(hào)。CPU將數(shù)據(jù)輸出到端口。(2)同步輸出硬件接口電路除了正確提供端口地址外,還需將數(shù)據(jù)鎖存或驅(qū)動(dòng)后提供給外設(shè)。圖7-6 是一個(gè)同步輸出的硬件接口電路。 圖7-6 同步輸出接口電路 7.2.2 程序查詢傳送程序查詢傳送 方式及其應(yīng)用方式及其應(yīng)用程序查詢方式也稱條件方式,用查詢方式傳送時(shí),CPU通過(guò)執(zhí)行程序不斷讀取并測(cè)試外設(shè)的狀態(tài),如果外設(shè)處于準(zhǔn)備好狀態(tài)(輸入設(shè)備)或者空閑狀態(tài)(輸出設(shè)備),則CPU執(zhí)行輸入指令或輸出指令與外設(shè)交換信息。因此,要求外設(shè)應(yīng)能提供其工作狀態(tài)的信息,要求接口電路除了有傳送數(shù)據(jù)的端口,還

6、得提供狀態(tài)端口。對(duì)于條件傳送來(lái)說(shuō),一個(gè)數(shù)據(jù)傳送過(guò)程由3個(gè)環(huán)節(jié)組成:(1)CPU從接口中讀取狀態(tài)字;(2)CPU檢測(cè)狀態(tài)字的對(duì)應(yīng)位是否滿足“就緒”的條件,如果不滿足,則回到前一步讀取狀態(tài)字;(3)如狀態(tài)字表明外設(shè)已處于“就緒”狀態(tài),則傳送數(shù)據(jù)。 查詢方式傳送數(shù)據(jù)流程如圖7-10所示。 圖7-10 查詢方式傳送數(shù)據(jù)流程圖 一般的查詢方式輸入/輸出電路如圖7-12、圖7 - 13所示。圖7-12 一般的查詢傳送方式輸入電路圖7-13一般的查詢傳送方式輸出電路例例【7-2】 見(jiàn)課本7.2.3 中斷傳送方式及其應(yīng)用中斷傳送方式及其應(yīng)用 中斷傳送方式有如下特點(diǎn):1、CPU和外設(shè)大部分時(shí)間處于并行工作狀態(tài),

7、 CPU只在響應(yīng)外設(shè)的中斷申請(qǐng)后,進(jìn)入數(shù)據(jù)傳送的過(guò)程;2、中斷傳送方式提高了CPU的效率。中斷傳送方式的優(yōu)點(diǎn)是保證了CPU對(duì)外設(shè)的實(shí)時(shí)服務(wù),又不會(huì)因?qū)Ω鱅/O設(shè)備的隨時(shí)關(guān)照而花費(fèi)CPU太多的時(shí)間,使高速運(yùn)行的CPU與速度參差不齊的各種外設(shè)之間形成了良好的匹配(并行工作)關(guān)系,確保了CPU的高效率。缺點(diǎn)是為了實(shí)現(xiàn)中斷傳送,要求在CPU與外設(shè)之間設(shè)置中斷控制器,增加了硬件開(kāi)銷。 中斷傳送方式輸入的接口電路如圖7-15所示。圖7-15 中斷方式輸入的接口電路7.3 DMA傳送方式傳送方式 7.3.1 DMA傳送方式的提出傳送方式的提出DMA(Direct Memory Access)傳送方式是在內(nèi)存

8、與外設(shè)之間(或內(nèi)存到內(nèi)存之間)開(kāi)辟一條直接數(shù)據(jù)傳送的通道,并把傳送過(guò)程交給DMA控制器進(jìn)行管理。CPU本身僅接收DMA控制器的DMA請(qǐng)求并發(fā)送DMA允許信號(hào),不參與實(shí)際的數(shù)據(jù)傳送。7.3.2 DMA傳送方式接口的結(jié)構(gòu)特點(diǎn)傳送方式接口的結(jié)構(gòu)特點(diǎn) DMA傳送方式采用一個(gè)專門的接口電路,該接口電路除具有一般接口的基本功能外,還具有總線管理功能,就是在數(shù)據(jù)傳輸時(shí),DMA總線管理器(即DMA控制器)接管總線管理權(quán)。DMA控制器的結(jié)構(gòu)如圖7-16所示。 圖7-16 DMA控制器結(jié)構(gòu)1. DMA控制器功能(1)能接收外設(shè)的DMA請(qǐng)求信號(hào)DREQ,并能向外設(shè)發(fā)出DMA響應(yīng)信號(hào)DACK;(2)能向CPU發(fā)出總線

9、請(qǐng)求信號(hào)(HOLD),當(dāng)CPU發(fā)出總線響應(yīng)信號(hào)(HLDA)后能接管對(duì)總線的控制權(quán),進(jìn)入DMA傳送方式;(3)能發(fā)出地址信息,對(duì)存儲(chǔ)器尋址并修改地址指針;(4)能向存儲(chǔ)器和外設(shè)發(fā)出讀/寫(xiě)控制信號(hào);(5)能決定傳送的字節(jié)數(shù),并能判斷DMA傳送是否結(jié)束;(6)能發(fā)出DMA結(jié)束信號(hào),釋放總線,讓CPU重新獲得總線控制權(quán)。2. DMA的工作過(guò)程的工作過(guò)程 外設(shè)數(shù)據(jù)準(zhǔn)備好后,發(fā)出一選通信號(hào),使DMA請(qǐng)求觸發(fā)器置1,。它有兩個(gè)走向,一是向控制/狀態(tài)端口發(fā)出準(zhǔn)備就緒信號(hào),一是向DMA控制器發(fā)出DMA請(qǐng)求信號(hào); DMA控制器接收到DMA請(qǐng)求后,就向CPU發(fā)出總線保持請(qǐng)求信號(hào)(HOLD),要求接管總線; CPU在每個(gè)時(shí)鐘上升沿都檢測(cè)是否有HOLD請(qǐng)求,若有此請(qǐng)求,且自身正處在總線空閑周期中,CPU就立即響應(yīng)此總線保持請(qǐng)求,即,向DMA控制器發(fā)出響應(yīng)信號(hào)(HLDA),允許DMA接管總線。如果CPU正在執(zhí)行某個(gè)總線周期,則要到這個(gè)總線周期結(jié)束后再響應(yīng)此總線保持請(qǐng)求; CPU將CB、AB及DB的控制權(quán)讓出,由DMA控制器進(jìn)行控制; DMA控制器向外設(shè)發(fā)出DMA請(qǐng)求信號(hào)的回答信號(hào); 進(jìn)行DMA傳送

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論