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

下載本文檔

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

文檔簡(jiǎn)介

第3章微型計(jì)算機(jī)和外設(shè)的數(shù)據(jù)傳輸為什么要用接口電路CPU和輸入輸出設(shè)備之間的信號(hào)接口部件的I/O端口CPU和外設(shè)之間的數(shù)據(jù)傳送方式教師:李軍Email:dpi_Lijun@163.com1為什么要用接口電路什么是接口:接口是指通過(guò)三總線與CPU相連的外圍芯片或部件。接口電路按功能可分為兩類(lèi):使微處理器正常工作所需的輔助電路。輸入輸出接口電路。為什么要用接口電路輸入/輸出功能:接口要根據(jù)送來(lái)的讀/寫(xiě)信號(hào)決定當(dāng)前進(jìn)行的是輸入操作還是輸出操作,并且隨之能從總線上接收來(lái)自CPU的數(shù)據(jù)和控制信息,或者將數(shù)據(jù)或狀態(tài)信息送到總線上。第三章

1

2

3為什么要用接口電路

CPU和輸入輸出設(shè)備之間的信號(hào)接口部件的I/O端口教師:李軍Email:dpi_Lijun@163.com1為什么要用接口電路數(shù)據(jù)轉(zhuǎn)換功能:接口不但要從外設(shè)輸入數(shù)據(jù)或者將數(shù)據(jù)送往外部設(shè)備,并且要把CPU輸出的并行數(shù)據(jù)轉(zhuǎn)換成所連的外設(shè)可接受的格式(比如串行格式);或者反過(guò)來(lái),把從外設(shè)輸入的信息轉(zhuǎn)換成并行數(shù)據(jù)送往CPU。聯(lián)絡(luò)功能:當(dāng)接口從總線上接收一個(gè)數(shù)據(jù)以后,或者在把一個(gè)數(shù)據(jù)送到總線上以后,能發(fā)一個(gè)就緒信號(hào),以通知CPU,數(shù)據(jù)傳輸已經(jīng)完成,從而可以準(zhǔn)備進(jìn)行下一次傳輸。中斷管理功能:作為中斷控制器的接口應(yīng)該具有發(fā)送中斷請(qǐng)求信號(hào)和接收中斷響應(yīng)信號(hào)的功能,而且還有發(fā)送中斷類(lèi)型號(hào)的功能,此外,如果總線控制邏輯中沒(méi)有中斷優(yōu)先級(jí)管理電路,那么,接口還應(yīng)該具有優(yōu)先級(jí)管理功能。教師:李軍Email:dpi_Lijun@163.com1為什么要用接口電路復(fù)位功能:接口應(yīng)該能接受復(fù)位信號(hào),從而能使接口本身以及所連的外設(shè)進(jìn)行重新啟動(dòng)??删幊坦δ埽盒枰密浖?lái)設(shè)置接口的工作方式和設(shè)置控制信號(hào),因此接口應(yīng)該有可編程功能。錯(cuò)誤檢測(cè)功能:在接口設(shè)計(jì)中,常常要考慮對(duì)錯(cuò)誤的檢測(cè)問(wèn)題。一般可編程接口芯片可檢測(cè)下列兩類(lèi)錯(cuò)誤:一類(lèi)是傳輸錯(cuò)誤。因?yàn)榻涌诤驮O(shè)備之間的連線常常受噪聲干擾,從而引起傳輸錯(cuò)誤,接口常采用奇/偶校驗(yàn)位對(duì)傳輸錯(cuò)誤進(jìn)行檢測(cè)。另一類(lèi)是覆蓋錯(cuò)誤。當(dāng)輸入數(shù)據(jù)時(shí),如果計(jì)算機(jī)還沒(méi)有取走數(shù)據(jù),數(shù)據(jù)緩沖寄存器由于某種原因又被裝上了新的數(shù)據(jù),造成數(shù)據(jù)丟失;就會(huì)產(chǎn)生一個(gè)覆蓋錯(cuò)誤,輸出數(shù)據(jù)類(lèi)似。教師:李軍Email:dpi_Lijun@163.com2CPU和輸入輸出設(shè)備之間的信號(hào)從功能上,信號(hào)可分為:數(shù)據(jù)信息,數(shù)據(jù)通常為8位或16位,又分為:數(shù)字量:二進(jìn)制形式的數(shù)據(jù)或是以ASCII碼表示的數(shù)據(jù)及字符,通常是8位的。模擬量:連續(xù)變化的物理量。開(kāi)關(guān)量:用1位二進(jìn)制數(shù)表示。狀態(tài)信息:反映了當(dāng)前外設(shè)所處的工作狀態(tài),是外設(shè)通過(guò)接口往CPU傳送的??刂菩畔ⅲ菏荂PU通過(guò)接口傳送給外設(shè)的,CPU通過(guò)發(fā)送控制信息控制外設(shè)的工作。三類(lèi)信息都通過(guò)數(shù)據(jù)總線來(lái)傳送,但在接口中,用不同的寄存器分別存放這三種信息。第三章

1

2

3為什么要用接口電路

CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口教師:李軍Email:dpi_Lijun@163.com3接口部件的I/O端口I/O端口分類(lèi):CPU和外設(shè)交換信息實(shí)際上是通過(guò)接口的I/O端口進(jìn)行,端口分為:數(shù)據(jù)端口:用于存放CPU讀寫(xiě)的數(shù)據(jù)

。通常包括數(shù)據(jù)輸入端口和數(shù)據(jù)輸出端口。狀態(tài)端口:用來(lái)存放外設(shè)或接口本身的狀態(tài)??刂贫丝诨蛎疃丝冢捍娣臗PU發(fā)出的命令。外設(shè)和系統(tǒng)的連接圖第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口CPU和外設(shè)之間的數(shù)據(jù)傳送方式教師:李軍Email:dpi_Lijun@163.com3接口部件的I/O端口I/O端口地址編址方式統(tǒng)一編址:這種方式,是從存儲(chǔ)空間劃出一部分地址空間給I/O設(shè)備,把I/O接口中的端口當(dāng)作存儲(chǔ)器單元一樣進(jìn)行訪問(wèn),不設(shè)置專(zhuān)門(mén)的I/O指令。凡對(duì)存儲(chǔ)器可以使用的指令均可用于端口。獨(dú)立編址:不占用存儲(chǔ)器空間,微處理器設(shè)置專(zhuān)門(mén)的輸入/輸出指令來(lái)訪問(wèn)端口,形成一個(gè)獨(dú)立的I/O地址空間,通過(guò)控制總線來(lái)確定CPU到底要訪問(wèn)內(nèi)存空間還是I/O空間。8086系統(tǒng)采用了這種I/O端口編址方法。優(yōu)點(diǎn):輸入/輸出指令和訪問(wèn)存儲(chǔ)器指令有明顯的區(qū)別,可使程序編制清晰,便于理解。缺點(diǎn):輸出/輸入指令類(lèi)型少,一般只能對(duì)端口進(jìn)行傳送操作。第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口CPU和外設(shè)之間的數(shù)據(jù)傳送方式教師:李軍Email:dpi_Lijun@163.com4CPU和外設(shè)之間的數(shù)據(jù)傳送方式程序方式中斷方式DMA方式輸入輸出過(guò)程中提出的幾個(gè)問(wèn)題教師:李軍Email:dpi_Lijun@163.com4.1程序方式程序傳送方式是指在程序控制下進(jìn)行信息傳送,分為:無(wú)條件傳送方式:適合于那些隨時(shí)都能讀、寫(xiě)數(shù)據(jù)的設(shè)備。它認(rèn)為外設(shè)一直是準(zhǔn)備就緒的,因而不必查詢(xún)外設(shè)的狀態(tài)。條件傳送方式:也稱(chēng)為查詢(xún)傳送方式,是指主機(jī)在傳送數(shù)據(jù)之前,要檢查外設(shè)是否“準(zhǔn)備好”,若沒(méi)有準(zhǔn)備好,則繼續(xù)查其狀態(tài),直至外設(shè)準(zhǔn)備好了。條件傳送的三個(gè)環(huán)節(jié):CPU從接口中讀取狀態(tài)字CPU檢測(cè)狀態(tài)字傳送數(shù)據(jù)第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.1.1無(wú)條件傳送方式無(wú)條件傳送方式的工作原理圖第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

要點(diǎn)簡(jiǎn)單外設(shè)作為輸入設(shè)備時(shí),可直接使用三態(tài)緩沖器和數(shù)據(jù)總線相連。簡(jiǎn)單外設(shè)作為輸出設(shè)備時(shí),一般都需要鎖存器。教師:李軍Email:dpi_Lijun@163.com4.1.2條件傳送方式查詢(xún)式輸入的接口電路第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

要點(diǎn)CPU從外設(shè)輸入數(shù)據(jù)前要先讀取狀態(tài)字,確認(rèn)是否數(shù)據(jù)準(zhǔn)備就緒。CPU是主動(dòng)的,而外部設(shè)備是被動(dòng)的。教師:李軍Email:dpi_Lijun@163.com4.1.2條件傳送方式

查詢(xún)式輸入過(guò)程的流程圖第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.1.2條件傳送方式查詢(xún)式輸出的接口電路第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

要點(diǎn)CPU向外設(shè)輸出數(shù)據(jù)前要先讀取狀態(tài)字,確認(rèn)是否設(shè)備準(zhǔn)備就緒。CPU是主動(dòng)的,而外部設(shè)備是被動(dòng)的。教師:李軍Email:dpi_Lijun@163.com4.1.3查詢(xún)式輸入輸出程序設(shè)計(jì)舉例假設(shè)從終端往緩沖區(qū)輸入1個(gè)字符行,當(dāng)遇到回車(chē)符(0DH)或者字符行超過(guò)80個(gè)字符時(shí),輸入便結(jié)束,并自動(dòng)加上1個(gè)換行符(0AH)。如果在輸入的81個(gè)字符中未見(jiàn)到回車(chē)符,則在終端上輸出信息“BUFFEROVERFLOW”。已知條件:字符采用7位ASCII碼表示,其中最高位為偶校驗(yàn)位。接口的數(shù)據(jù)輸入端口地址為0052H,數(shù)據(jù)輸出端口地址為0054H狀態(tài)端口地址為0056H,若輸入緩沖器數(shù)據(jù)準(zhǔn)備好,第1位置1,否則置0;若輸出緩沖器空,第0位置1,否則置0。這兩個(gè)狀態(tài)位的置位和復(fù)位是由硬件自動(dòng)實(shí)現(xiàn)的。第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.1.3查詢(xún)式輸入輸出程序設(shè)計(jì)舉例DATA_SEGSEGMENTMESSAGEDB‘BUFFEROVERFLOW’,0DH,OAH……DATA_SEGENDSCOM_SEGSEGMENTBUFFERDB82DUP(?);接受緩沖區(qū)

COUNTDW?;計(jì)數(shù)器COM_SEGENDS……CODESEGMENTASSUMEDS:DATA_SEG,ES:COM_SEG,CS:CODESTART:MOVAX,DATA_SEG;DS作初始化MOVDS,AXMOVAX,COM_SEGMOVES,AX;對(duì)ES作初始化MOVDI,OFFSETBUFFER;計(jì)數(shù)器指向緩沖區(qū)首址MOVCOUNT,DIMOVCX,81;字符行長(zhǎng)度CLD;清方向標(biāo)志NEXT_IN:INAL,56H;讀入狀態(tài)TESTAL,02H;測(cè)狀態(tài)寄存器第1位JZNEXT_IN;未準(zhǔn)備好,則等待,再測(cè)第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.1.3查詢(xún)式輸入輸出程序設(shè)計(jì)舉例INAL,52H;準(zhǔn)備好,則輸入字符ORAL,0;校驗(yàn)JPENO_ERROR;校驗(yàn)正確,則轉(zhuǎn)NO_ERRORJMPERROR;校驗(yàn)錯(cuò)誤,則轉(zhuǎn)ERRORNO_ERROR:ANDAL,7FH;清除校驗(yàn)位STOSB;將字符送緩沖區(qū)CMPAL,0DH;是否為回車(chē)符LOOPNENEXT_IN;不是回車(chē),則再輸入JNEOVERFLOW;不是回車(chē)且溢出,轉(zhuǎn)OVERFLOWMOVAL,0AH;加一個(gè)換行符STOSB;存入緩沖區(qū)SUBDI,COUNT;計(jì)算輸入字符數(shù)MOVCOUNT,DI;COUNT中為輸入字符數(shù)……OVERFLOW:MOVSI,OFFSETMESSAGE;SI中為字符串首址MOVCX,17;字符數(shù)NEXT_OUT:INAL,56H;讀狀態(tài)寄存器TESTAL,01H;測(cè)狀態(tài)寄存器第0位JZNEXT_OUT;如沒(méi)有就緒,則再測(cè)LODSB;將字符取到AL中OUT54H,AL;輸出字符LOOPNEXT_OUT;輸出下一個(gè)字符第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.2中斷方式中斷方式:當(dāng)外設(shè)作好傳送準(zhǔn)備后,主動(dòng)向CPU請(qǐng)求中斷服務(wù),CPU在執(zhí)行完每條指令后測(cè)試是否有中斷請(qǐng)求。特點(diǎn):在中斷方式下,外部設(shè)備是主動(dòng)的,CPU是被動(dòng)的。適用場(chǎng)合:中斷方式用于CPU的任務(wù)比較忙,傳送速度不太高的系統(tǒng)中,尤其適合實(shí)時(shí)控制中緊急事件的處理。優(yōu)點(diǎn):無(wú)需CPU反復(fù)測(cè)試外部設(shè)備的狀態(tài),提高了CPU的工作效率。8086系統(tǒng)包括硬件中斷和軟件中斷,這里所指的是硬件中斷。第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.2中斷方式中斷的原理設(shè)備通過(guò)-INT申請(qǐng)中斷,CPU通過(guò)-INTA應(yīng)答。應(yīng)答時(shí)用兩個(gè)負(fù)脈沖,設(shè)備送中斷類(lèi)型碼。中斷傳送方式的基本原理圖第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.2中斷方式可屏蔽中斷的響應(yīng)和執(zhí)行第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.2中斷方式中斷優(yōu)先級(jí)問(wèn)題的提出:由于一個(gè)計(jì)算機(jī)系統(tǒng)中通常有多個(gè)設(shè)備用中斷方式和CPU進(jìn)行數(shù)據(jù)傳輸,為了保證它們有序工作,要對(duì)它們賦予相應(yīng)的優(yōu)先級(jí)。其作用在于:當(dāng)多個(gè)中斷請(qǐng)求到達(dá)時(shí),CPU要首先響應(yīng)優(yōu)先級(jí)相對(duì)高的請(qǐng)求。當(dāng)CPU正在進(jìn)行中斷服務(wù)時(shí),優(yōu)先級(jí)相對(duì)高的中斷請(qǐng)求能中斷優(yōu)先權(quán)相對(duì)低的中斷服務(wù)。中斷優(yōu)先級(jí)的解決方法軟件查詢(xún)菊花鏈法專(zhuān)用硬件第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.2.1軟件查詢(xún)方式第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

要點(diǎn)借助于簡(jiǎn)單的硬件電路。無(wú)需中斷類(lèi)型碼,只有一個(gè)服務(wù)程序入口地址。采用軟件查詢(xún)方式,在中斷服務(wù)程序中進(jìn)行中斷優(yōu)先權(quán)的處理。軟件查詢(xún)接口

軟件查詢(xún)流程

教師:李軍Email:dpi_Lijun@163.com4.2.2簡(jiǎn)單硬件方式——菊花鏈法第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

要點(diǎn)在每個(gè)外設(shè)對(duì)應(yīng)的接口上連接一個(gè)邏輯電路,構(gòu)成一個(gè)鏈,稱(chēng)為菊花鏈。菊花鏈從硬件上確定了各個(gè)外設(shè)中斷優(yōu)先級(jí),各個(gè)外設(shè)接口不會(huì)競(jìng)爭(zhēng)中斷回答信號(hào)-INTA。獲得-INTA的設(shè)備接口發(fā)中斷類(lèi)型碼。(a)菊花鏈(b)菊花鏈邏輯電路教師:李軍Email:dpi_Lijun@163.com4.2.3專(zhuān)用硬件方式第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

要點(diǎn)是當(dāng)前在微型機(jī)系統(tǒng)中解決中斷優(yōu)先級(jí)管理的最常用的辦法。采用可編程的中斷控制器,它是一個(gè)用于中斷優(yōu)先級(jí)管理的專(zhuān)用芯片。來(lái)自外設(shè)的輸入/輸出接口的中斷請(qǐng)求信號(hào)并行地送到中斷優(yōu)先級(jí)管理電路,由此管理電路為各中斷請(qǐng)求信號(hào)分配優(yōu)先級(jí)。由中斷控制器向CPU發(fā)中斷請(qǐng)求并為CPU提供中斷類(lèi)型碼??删幊痰闹袛嗫刂破鞯拇蟛糠止δ芏伎梢杂沙绦蚩刂?,它們的優(yōu)先級(jí)排列方式也可以通過(guò)指令來(lái)設(shè)置。在8086系統(tǒng)中,可編程中斷控制器使用的是Intel公司的8259A。教師:李軍Email:dpi_Lijun@163.com4.2.3專(zhuān)用硬件方式典型的可編程中斷控制器

第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.3DMA方式要點(diǎn)提出:雖然中斷傳送方式可以在一定程度上實(shí)現(xiàn)CPU與外設(shè)并行工作,但是在進(jìn)行數(shù)據(jù)傳送時(shí),還是要經(jīng)過(guò)CPU中轉(zhuǎn),在進(jìn)行大批量數(shù)據(jù)傳送時(shí),會(huì)造成中斷次數(shù)過(guò)于頻繁,使得CPU的使用效率大大降低。優(yōu)點(diǎn):是一種不需要CPU干預(yù)也不需要軟件介入的高速數(shù)據(jù)傳送方式。CPU只啟動(dòng)而不干預(yù)這一傳送過(guò)程,同時(shí)只由硬件完成而不需軟件介入,所以其數(shù)據(jù)傳送速率可以很高。DMA控制器的工作特點(diǎn)是一個(gè)接口電路。能夠控制系統(tǒng)總線。操縱外設(shè)和存儲(chǔ)器之間的數(shù)據(jù)傳輸。第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.3.1DMA控制器的傳送原理及功能原理:使用DMA控制器(DMAC),無(wú)需CPU介入,由DMA控制器掌握總線的控制權(quán),在它的控制下,實(shí)現(xiàn)I/O與存儲(chǔ)器之間高速、批量數(shù)據(jù)傳遞。DMA控制器申請(qǐng)總線控制權(quán)的過(guò)程如下:外部設(shè)備向DMAC發(fā)出DMA請(qǐng)求信號(hào)(DREQ)。DMAC向CPU發(fā)出總線請(qǐng)求信號(hào)HOLD,請(qǐng)求CPU讓出總線。通常CPU完成當(dāng)前的總線周期之后,使數(shù)據(jù)總線、地址總線處于高阻抗?fàn)顟B(tài),并發(fā)出響應(yīng)信號(hào)HLDA讓出總線。DMAC收到HLDA,接管總線控制權(quán),通知外設(shè)進(jìn)行數(shù)據(jù)轉(zhuǎn)輸(DACK)。在整個(gè)DMA操作期間,HOLD和HLDA信號(hào)一直保持有效。當(dāng)DMAC完成操作后,使HOLD信號(hào)變?yōu)榈碗娖?,放棄?duì)總線的控制,8086檢測(cè)到HOLD信號(hào)變?yōu)榈碗娖胶螅矊LDA信號(hào)變?yōu)榈碗娖?,于是,CPU又控制了系統(tǒng)總線。第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.3.1DMA控制器的傳送原理及功能功能向CPU發(fā)總線請(qǐng)求信號(hào),多設(shè)備時(shí)確定優(yōu)先級(jí)。對(duì)總線進(jìn)行控制,發(fā)地址、讀寫(xiě)等控制信號(hào)。修改所用的存儲(chǔ)器或接口的地址指針。存放數(shù)據(jù)長(zhǎng)度。交還總線控制權(quán)。第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

I/O設(shè)備與存儲(chǔ)器傳送示意圖

教師:李軍Email:dpi_Lijun@163.com4.3.2DMA輸入輸出數(shù)據(jù)第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

從內(nèi)存向接口輸出單個(gè)數(shù)據(jù)的原理圖教師:李軍Email:dpi_Lijun@163.com4.3.2DMA輸入輸出數(shù)據(jù)從接口往內(nèi)存?zhèn)鬏斠粋€(gè)數(shù)據(jù)塊的過(guò)程接口往DMA控制器發(fā)一個(gè)DMA請(qǐng)求。DMA控制器向CPU發(fā)一個(gè)DMA請(qǐng)求。CPU允許,得到總線控制權(quán)。地址寄存器的內(nèi)容送地址總線。向接口發(fā)讀命令,接口將數(shù)據(jù)送到數(shù)據(jù)總線。向內(nèi)存發(fā)寫(xiě)命令,數(shù)據(jù)送到所指單元。地址寄存器的值加1。字節(jié)計(jì)數(shù)器的值減1。放棄總線控制權(quán),交還CPU(也可不放棄)。如字節(jié)計(jì)數(shù)器的值不為0,則回到開(kāi)始重復(fù)執(zhí)行。否則結(jié)束。第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.3.3DMA控制器的內(nèi)部最小配置第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.3.4DMA傳輸?shù)囊髮?duì)接口控制寄存器有1位指出數(shù)據(jù)傳輸方向??刂萍拇嫫饔?位用來(lái)啟動(dòng)I/O操作。狀態(tài)寄存器有1位指出設(shè)備當(dāng)前是否處于忙狀態(tài)。對(duì)DMA控制寄存器有1位作為DMA允許位。有1位用來(lái)確定DMA方向。狀態(tài)寄存器有1位表示數(shù)據(jù)塊傳輸是否結(jié)束。有1位決定進(jìn)行一次傳輸后放棄還是維持對(duì)總線的控制權(quán)。對(duì)DMA控制器和接口部件預(yù)置的信息往DMA控制器的字節(jié)計(jì)數(shù)器設(shè)置初值。往DMA控制器的地址寄存器中設(shè)置地址初值。對(duì)DMA控制器設(shè)置控制字并啟動(dòng)DMA操作。對(duì)接口部件設(shè)置控制字并啟動(dòng)I/O操作。第三章

2

3

4CPU和輸入輸出設(shè)備之間的信號(hào)

接口部件的I/O端口

CPU和外設(shè)之間的數(shù)據(jù)傳送方式

教師:李軍Email:dpi_Lijun@163.com4.4輸入輸出過(guò)程中提出的幾個(gè)問(wèn)題系統(tǒng)如何知道接口已準(zhǔn)備好數(shù)據(jù)等待CPU提取或者準(zhǔn)備接收CPU的數(shù)據(jù)?在查詢(xún)方式下,是通過(guò)程序來(lái)檢測(cè)接口中狀態(tài)寄存器中的“準(zhǔn)備好”位,以確定當(dāng)前是否可以進(jìn)行數(shù)據(jù)傳輸?shù)摹T谥袛喾绞较?,?dāng)接口中已經(jīng)有數(shù)據(jù)要往CPU輸入或者準(zhǔn)備好接收數(shù)據(jù)時(shí),接口會(huì)向CPU發(fā)一個(gè)外部中斷請(qǐng)求。在DMA方式下,由CPU預(yù)先啟動(dòng)外設(shè)傳輸數(shù)據(jù)的要求,然后外設(shè)的接口會(huì)向DMA控制器發(fā)DMA請(qǐng)求信號(hào),DMA控制器

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論