輸入輸出系統(tǒng)_第1頁
輸入輸出系統(tǒng)_第2頁
輸入輸出系統(tǒng)_第3頁
輸入輸出系統(tǒng)_第4頁
輸入輸出系統(tǒng)_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

輸入輸出系統(tǒng)計(jì)算機(jī)組成原理程序查詢中斷DMA本章主要內(nèi)容本章內(nèi)容簡介輸入輸出系統(tǒng)簡稱I/O系統(tǒng),包括I/O接口、I/O管理部件及相關(guān)軟件。它與計(jì)算機(jī)系統(tǒng)的綜合處理能力、可擴(kuò)展性、兼容性和性價(jià)比等,存在密切關(guān)系。本章首先說明外圍設(shè)備的定時(shí)方式和信息交換方式,之后重點(diǎn)介紹程序中斷方式、DMA方式、通道方式,最后介紹通用的并行I/O標(biāo)準(zhǔn)接口SCSI和串行I/O標(biāo)準(zhǔn)接口IEEE1394。重點(diǎn)內(nèi)容中斷方式DMA方式5輸入輸出方式接口:主機(jī)和外設(shè)之間的交接界面,實(shí)現(xiàn)主機(jī)與外設(shè)之間的信息交換。數(shù)據(jù)信息、控制信息、狀態(tài)信息、聯(lián)絡(luò)信息等端口:接口電路中可以進(jìn)行讀/寫的寄存器若干個(gè)端口加上相應(yīng)的控制邏輯電路才組成接口。接口端口I/O端口編址方式統(tǒng)一編址I/O端口地址和內(nèi)存單元地址是統(tǒng)一編址的不設(shè)置專門的I/O指令I(lǐng)/O端口占用了內(nèi)存地址獨(dú)立編址內(nèi)存地址空間與I/O端口地址空間互相獨(dú)立分別有訪問內(nèi)存和訪問I/O外設(shè)的控制線有專門的I/O指令外圍設(shè)備的輸入/輸出方式I/O控制方式主要由程序?qū)崿F(xiàn)主要由附加硬件實(shí)現(xiàn)IOP方式程序查詢方式程序中斷方式DMA方式通道方式程序直接控制方式由CPU執(zhí)行一段輸入輸出程序來實(shí)現(xiàn)內(nèi)存與外設(shè)之間數(shù)據(jù)傳送。無條件傳送CPU假設(shè)I/O端口總是處于準(zhǔn)備好的狀態(tài),在CPU認(rèn)為需要時(shí),直接訪問I/O端口。軟、硬件簡單,但要求時(shí)序嚴(yán)格配合例:假設(shè)輸入端口地址為30H,輸出端口為31H。INAL,30H;從30口輸入數(shù)據(jù)OUT31H,AL;將數(shù)據(jù)從31口輸出下圖為一恒溫器,其引線D0—D7可送出當(dāng)前溫度的二進(jìn)制編碼(如:D0—D7為64H,溫度為100度)A、B為溫度控制輸入端,其控制功能編碼如下:1.請使用8255A將此恒溫器接到8088系統(tǒng)總路線上,畫出連接圖(不用設(shè)計(jì)地址碼電路)2.每20秒檢測一次溫度,若溫度大于100℃,則減溫;若溫度小于96℃,則加溫;在此范圍內(nèi),則保持。設(shè)8255A端口地址為60H—63H,試編寫對接口的初始化程序和控制程序。(若用到延遲程序,則可直接調(diào)用)舉例——2001年試題D0...D7AB恒溫器BA功能00保持10加溫11減溫可編程并行接口8255AIntel公司的標(biāo)準(zhǔn)外圍接口電路。8255A的引腳和外設(shè)相連的信號PA7~PA0:A口數(shù)據(jù)線PB7~PB0:B口數(shù)據(jù)線PC7~PC0:C口數(shù)據(jù)線,可兼作控制線和主機(jī)相連的信號Reset:復(fù)位信號。D7~D0:數(shù)據(jù)線。CS:片選線RD:讀信號WR:寫信號A1

A0:端口選擇信號00:A口01:B口10:C口11:控制端口8255AD7~D0CSRDWRA1A0ResetPA7~PA0PC7~PC4PC3~PC0PB7~PB0VCCGND8255A的控制字8255A的工作方式方式0:基本輸入/輸出方式,適用于端口A、B、C方式1:選通輸入/輸出方式,適用于端口A、B方式2:雙向方式,只適用于端口A方式選擇控制字

D7

D6D5

D4

D3

D2

D1

D0A組控制B組控制1:方式字標(biāo)志A組方式選擇00:方式001:方式11X:方式2B組方式選擇0:方式01:方式1C口高4位1:輸入0:輸出C口低4位1:輸入0:輸出B口1:輸入0:輸出A口1:輸入0:輸出MOVAL,90HOUT63H,ALMOVAL,0;保持

L0:OUT61H,AL;B口輸出控制

CALLDELAY20;延進(jìn)20SINAL,60H;讀A口溫度值CMPAL,100JADOWN;高于100℃,減溫CMPAL,96;低于96℃,加溫JBUPMOVAL,0;96℃~100℃,保持JMPL0DOWN:MOVAL,03H;減溫JMPL0UP:MOVAL,02H;加溫JMPL08255AD0~D7A0PA7A1~CSPA0WRPB0

RDPB1D7~D0A0A1

WRRDD0...D7AB恒溫器譯碼A2

~A900001001方式字A組方式0初始化控制字C高4未用B組方式0B口輸出C低4未用A口輸入答案程序查詢方式CPU查詢外設(shè)的工作狀態(tài)如外設(shè)未準(zhǔn)備好,循環(huán)等待;直到外設(shè)準(zhǔn)備好,CPU才與外設(shè)進(jìn)行數(shù)據(jù)交換。優(yōu)點(diǎn)保證數(shù)據(jù)傳送的正確性缺點(diǎn)實(shí)時(shí)性、并行性差對未知錯(cuò)誤和異常無法處理查詢式輸入INDATA:INAL,STATUS_PORT;從狀態(tài)端口讀入狀態(tài)TESTAL,01H;測試是否“準(zhǔn)備好”JZINDATA;未準(zhǔn)備好,循環(huán)測試INAL,DATA_PORT;準(zhǔn)備好,輸入數(shù)據(jù)數(shù)據(jù)端口EN狀態(tài)端口EN鎖存器CPRCPReadyQD輸入設(shè)備STB

IBF&&地址譯碼D7~D0A7~A0+5VIO/MRDD0準(zhǔn)備好狀態(tài)端口查詢式輸出OUTDATA:INAL,STATUS_PORT;從狀態(tài)端口讀入狀態(tài)TESTAL,80H;測試是否“忙”JNZOUTDATA;忙,循環(huán)測試MOVAL,STORE;空閑,從緩沖區(qū)取數(shù)據(jù)

OUTDATA_PORT,AL;輸出到數(shù)據(jù)端口忙標(biāo)志數(shù)據(jù)端口CP狀態(tài)端口ENCPRBUSYDQ輸出設(shè)備ACK

OBF&&地址譯碼D7~D0A7~A0+5VIO/MWRD7RD5.2程序中斷方式采用中斷技術(shù)的原因解決速度矛盾快速主機(jī)與慢速外設(shè)提高并行性多個(gè)外設(shè)可同時(shí)工作,CPU分時(shí),提高吞吐率。實(shí)現(xiàn)實(shí)時(shí)處理對隨機(jī)事件及時(shí)處理。及時(shí)故障處理電源掉電、除數(shù)為0等。中斷的概念當(dāng)計(jì)算機(jī)執(zhí)行現(xiàn)行程序時(shí),系統(tǒng)中出現(xiàn)某些急需處理的異常情況和特殊請求;CPU暫時(shí)中止現(xiàn)行程序,而轉(zhuǎn)去對隨機(jī)發(fā)生的更緊迫的事件進(jìn)行處理;處理完畢后,自動(dòng)返回原來的程序繼續(xù)執(zhí)行。主程序主程序A請求中斷B請求中斷C請求中斷A中斷服務(wù)子程序B中斷服務(wù)子程序C中斷服務(wù)子程序引發(fā)執(zhí)行子程序是由程序員預(yù)先設(shè)計(jì)的(由一條調(diào)用子程序指令轉(zhuǎn)入)執(zhí)行中斷服務(wù)程序是由隨機(jī)的中斷事件引起的;與主程序關(guān)系子程序的執(zhí)行受到主程序或上層子程序的控制中斷服務(wù)程序一般與被中斷的現(xiàn)行程序毫無關(guān)系;同時(shí)性不存在同時(shí)調(diào)用多個(gè)子程序的情況有可能發(fā)生多個(gè)外設(shè)同時(shí)請求CPU為自己服務(wù)的情況中斷與子程序區(qū)別中斷的基本類型按中斷產(chǎn)生方式強(qiáng)迫中斷:由某種隨機(jī)產(chǎn)生的緊急事件引發(fā)的中斷。自愿中斷:由程序中事先安排好的中斷指令引發(fā)按中斷處理方式程序中斷:CPU響應(yīng)中斷后,轉(zhuǎn)去執(zhí)行相應(yīng)的中斷處理程序。簡單中斷(DMA方式):CPU響應(yīng)中斷后,不執(zhí)行中斷處理程序,只是讓出幾個(gè)總線周期給DMAC完成DMA操作。按中斷源內(nèi)中斷:由CPU內(nèi)部軟硬件原因引發(fā),如單步中斷外中斷:CPU以外的部件引發(fā)非屏蔽中斷:優(yōu)先級高,用于應(yīng)急處理可屏蔽中斷:優(yōu)先級低,用于一般外設(shè)傳送中斷的基本類型按中斷響應(yīng)方式向量中斷將所有的中斷處理程序的入口地址(第一條指令的地址)排成一張表,稱為中斷向量表;在中斷響應(yīng)時(shí),CPU通過這張表找到各個(gè)中斷處理程序的入口地址。非向量中斷中斷源不提供中斷服務(wù)程序的入口地址,而通過軟件查詢的方法得到。按中斷重?cái)?shù)單重中斷:在CPU執(zhí)行中斷服務(wù)程序的過程中不能再被打斷多重中斷(中斷嵌套):在執(zhí)行某個(gè)中斷服務(wù)程序的過程中,CPU可去響應(yīng)級別更高的中斷請求。中斷全過程流程圖取指令執(zhí)行指令中斷?響應(yīng)中斷關(guān)中斷,即“中斷屏蔽”置位找出中斷源,并保存(PC)轉(zhuǎn)中斷服務(wù)子程序AA保存CPU現(xiàn)場設(shè)備服務(wù)恢復(fù)CPU現(xiàn)場開中斷,即“中斷屏蔽”復(fù)位是否公操作一條指令執(zhí)行完畢后,CPU所進(jìn)行的操作。(如中斷處理、DMA傳送、取下條指令等)中斷周期中斷服務(wù)子程序中斷全過程中斷請求中斷判優(yōu)中斷響應(yīng)主程序子程序中斷返回中斷處理中斷請求中斷源:引起中斷的原因或發(fā)出中斷申請的來源輸入輸出設(shè)備、實(shí)時(shí)時(shí)鐘、故障源、軟中斷指令中斷請求方式獨(dú)立請求線可直接識別中斷源中斷請求線數(shù)目有限公共請求線通過軟硬件識別中斷源中斷源數(shù)目可擴(kuò)充二維結(jié)構(gòu)同級別采用相同請求線不同級別采用不同請求線CPU中斷源n中斷源1INTRnINTR1…CPU中斷源n中斷源1INTAINTR…CPU中斷源1,n中斷源1,1INTA1INTR1…中斷源m,n中斷源m,1INTAmINTRm……中斷判優(yōu)CPU現(xiàn)行程序與中斷請求之間現(xiàn)行程序優(yōu)先級低于中斷請求優(yōu)先級,CPU可以響應(yīng)中斷請求。各中斷請求之間軟件查詢方式查詢順序可通過編程改變,靈活;查詢、判優(yōu)靠程序?qū)崿F(xiàn),占用CPU時(shí)間,速度慢。硬件排隊(duì)方式優(yōu)先級高的自動(dòng)封鎖優(yōu)先級低的中斷請求。速度快,成本高,難于修改。INT1對1號中斷源服務(wù)INT2對2號中斷源服務(wù)INT3對3號中斷源服務(wù)INTn對n號中斷源服務(wù)YYYYNNNN…CPU響應(yīng)中斷的條件CPU接收到中斷請求信號CPU允許中斷一條指令執(zhí)行完畢中斷響應(yīng)過程保存斷點(diǎn):入?;虼嫒胫付▋?nèi)存單元。關(guān)中斷:防止中斷響應(yīng)過程被打斷。形成中斷服務(wù)程序入口中斷響應(yīng)假定用0#內(nèi)存單元保存斷點(diǎn)(*用堆棧保存斷點(diǎn))0#

→MAR*SP→MARPC→MDR;斷點(diǎn)保存WriteMDR→M(MAR)向量地址→PC0→EI;中斷允許觸發(fā)器清0,關(guān)中斷由中斷隱指令實(shí)現(xiàn)并不是真正的指令,由硬件直接實(shí)現(xiàn)的中斷響應(yīng)過程中的基本操作。形成中斷處理程序入口軟件方法:軟件判優(yōu)、尋找中斷源,轉(zhuǎn)中斷處理硬件方法(向量中斷):硬件自動(dòng)形成中斷處理程序的入口地址(中斷向量)。向量地址通常有兩種情況:向量地址是中斷服務(wù)程序的入口地址CPU不需要再經(jīng)過處理就可以進(jìn)入相應(yīng)的中斷服務(wù)程序。適合于中斷源比較少的情況。向量地址是中斷向量表的指針中斷源給出的向量地址是中斷服務(wù)程序入口地址的地址。例:8086中斷系統(tǒng)。中斷響應(yīng)中斷處理及中斷返回中斷服務(wù)程序流程保護(hù)現(xiàn)場:將中斷服務(wù)程序所要使用的有關(guān)寄存器的內(nèi)容壓入堆棧保存。開中斷:允許中斷嵌套。中斷服務(wù):根據(jù)中斷源的要求進(jìn)行具體的服務(wù)操作。關(guān)中斷并恢復(fù)現(xiàn)場:防止受干擾,先關(guān)中斷;然后從堆棧彈出舊現(xiàn)場信息。開中斷:由于中斷程序的插入是隨機(jī)的,無法在返回原來的程序之后再來開中斷,因此必須在中斷返回之前,由中斷服務(wù)程序執(zhí)行開中斷指令。中斷返回:從堆棧中彈出斷點(diǎn)地址,便可從服務(wù)程序返回到原來程序的斷點(diǎn)處,繼續(xù)執(zhí)行原程序。中斷嵌套概念一個(gè)系統(tǒng)中有多個(gè)中斷源若CPU正在某中斷服務(wù)程序時(shí)有更重要的中斷源申請中斷,則CPU就中止正在服務(wù)的程序,轉(zhuǎn)為新的中斷源服務(wù),在處理完畢后,再返回到被中止的服務(wù)程序,直至處理完,返回主程序。中斷嵌套的關(guān)鍵中斷處理程序中開中斷利用堆棧保證中斷的逐級返回。中斷子程序A中斷子程序BAB斷點(diǎn)1斷點(diǎn)2重要性如何判斷?是否可變?中斷屏蔽中斷優(yōu)先級包括兩層含義響應(yīng)優(yōu)先級多個(gè)中斷源同時(shí)發(fā)出中斷請求時(shí),由硬件排隊(duì)線路決定的CPU的響應(yīng)次序,稱為硬排隊(duì)。處理優(yōu)先級CPU在處理中斷的過程中,優(yōu)先執(zhí)行哪個(gè)中斷服務(wù)程序的次序??梢杂芍袛嗥帘未a來改變優(yōu)先級順序,稱為軟排隊(duì)中斷屏蔽通過改變中斷屏蔽碼來改變中斷優(yōu)先級的技術(shù)。中斷屏蔽例:某計(jì)算機(jī)的中斷系統(tǒng)有4級響應(yīng)優(yōu)先級1→2→3→4,每級對應(yīng)一個(gè)屏蔽碼,如表所示,表中屏蔽碼為“0”表示開放,為“1”表示屏蔽。1000第4級1100第3級1110第2級1111第1級4級3級2級1級屏蔽碼中斷服務(wù)程序級別中斷屏蔽當(dāng)有多個(gè)中斷源同時(shí)提出中斷請求時(shí),中斷處理優(yōu)先級與中斷響應(yīng)優(yōu)先級一致;當(dāng)中斷請求先后出現(xiàn)時(shí),允許級別高的中斷請求打斷級別低的中斷請求,以實(shí)現(xiàn)中斷嵌套。CPU運(yùn)行軌跡如圖:①②④③②中斷服務(wù)程序①②③④主程序①中斷屏蔽改變中斷屏蔽碼:將優(yōu)先級順序改變?yōu)?→4→3→2。則中斷屏蔽碼應(yīng)改寫為:1110第4級0110第3級0010第2級1111第1級4級3級2級1級屏蔽碼中斷服務(wù)程序級別中斷屏蔽此時(shí)CPU運(yùn)行軌跡為:③②中斷服務(wù)程序①②④主程序③①②④①中斷控制器可編程中斷控制器8259A內(nèi)部結(jié)構(gòu)數(shù)據(jù)總線緩沖器讀寫邏輯級聯(lián)緩沖比較器控制邏輯中斷服務(wù)寄存器(ISR)優(yōu)先級分析器中斷請求寄存器(IRR)中斷屏蔽寄存器(IMR)D7~D0…IR0IR7INTINTACSCAS0CAS1CAS2SP/ENRDWRA0內(nèi)部總線8259A的級聯(lián)9片825964級中斷主片8259從片08259從片78259IR0IR7…INTINT……IR0IR7IR0IR7INTINTA8259A的編程8259的不同工作方式是通過編程來選擇的首先根據(jù)需要,有選擇地寫入初始化控制字,使其處于預(yù)定的工作狀態(tài)初始化控制字共有4個(gè):ICW1~ICW4然后根據(jù)編程要求,寫入工作方式控制字工作方式控制字:OCW1~OCW3中斷方式及其接口控制BSRDEI數(shù)據(jù)緩沖寄存器中斷向量邏輯設(shè)備選擇動(dòng)作開始動(dòng)作結(jié)束傳送數(shù)據(jù)IMIR公用寄存器IRPCCPU接口設(shè)備INTADBCS0101010101工作標(biāo)志觸發(fā)器準(zhǔn)備就緒標(biāo)志觸發(fā)器允許中斷觸發(fā)器中斷請求觸發(fā)器中斷屏蔽觸發(fā)器P279中斷方式及其接口控制BSRDEI數(shù)據(jù)緩沖寄存器中斷向量邏輯設(shè)備選擇動(dòng)作開始動(dòng)作結(jié)束傳送數(shù)據(jù)IMIR公用寄存器IRPCCPU接口設(shè)備INTADBCS程序啟動(dòng)外設(shè):將該外設(shè)接口的BS置1,RD清0接口向外設(shè)發(fā)出啟動(dòng)信號數(shù)據(jù)由外設(shè)傳送到接口的緩沖寄存器設(shè)備動(dòng)作結(jié)束或緩沖寄存器滿時(shí),將RD置1EI為1時(shí),接口向CPU發(fā)出中斷請求信號IM為0時(shí),CPU受理中斷請求中斷處理程序讀入數(shù)據(jù)發(fā)控制信號C,使BS,RD復(fù)位101236415171017向外設(shè)發(fā)INTA,并關(guān)中斷8轉(zhuǎn)中斷處理程序入口公操作時(shí),接收中斷請求信號9010DMA方式的概念DMA——DirectMemoryAccess直接存儲(chǔ)器訪問在不需要CPU干預(yù)和軟件介入的情況下,在高速外設(shè)和內(nèi)存之間直接進(jìn)行的大批量成組的數(shù)據(jù)傳送。DMA方式的應(yīng)用內(nèi)存與高速外設(shè)間簡單的數(shù)據(jù)傳送磁盤的快速讀寫通信設(shè)備的批量數(shù)據(jù)傳送動(dòng)態(tài)存儲(chǔ)器DRAM的刷新復(fù)雜情況,常綜合應(yīng)用DMA方式與中斷方式DMA方式CPU存儲(chǔ)器高速外設(shè)DMA通道DMA方式的特點(diǎn)內(nèi)存和外設(shè)之間實(shí)現(xiàn)快速數(shù)據(jù)傳送(由硬件控制不用CPU干預(yù));用硬件電路控制傳送數(shù)據(jù)塊的內(nèi)存地址和傳送長度計(jì)數(shù);內(nèi)存中要開辟專用緩沖區(qū),及時(shí)供給和接收外設(shè)的數(shù)據(jù);傳送速度快,CPU除了訪問主存會(huì)發(fā)生沖突以外,可以和外設(shè)并行工作,提高了系統(tǒng)的效率;傳送前通過程序進(jìn)行預(yù)處理,結(jié)束后通過中斷方式進(jìn)行后處理。多路型DMA控制器允許各設(shè)備以字節(jié)為單位交叉?zhèn)魉停蛞詳?shù)據(jù)塊為單位成組傳送。DMA和中斷的區(qū)別對CPU的占用程度不同中斷方式:由CPU執(zhí)行程序切換和保護(hù)、恢復(fù)現(xiàn)場DMA方式:除預(yù)處理和后處理階段,不占用CPU資源,但是占用總線。響應(yīng)時(shí)機(jī)不同對中斷請求的響應(yīng)只能發(fā)生在每條指令執(zhí)行完畢時(shí)對DMA請求的響應(yīng)可發(fā)生在每個(gè)機(jī)器周期結(jié)束時(shí)優(yōu)先級不同DMA請求的優(yōu)先級高于中斷請求功能不同中斷有對異常事件的處理能力DMA方式僅局限于信息塊的輸入輸出DMA斷點(diǎn)取指令取源數(shù)取目的數(shù)執(zhí)行中斷斷點(diǎn)DMA傳送方式CPU停止訪存法DMA請求信號迫使CPU在現(xiàn)行周期結(jié)束后,將總線控制權(quán)交給DMAC;DMAC獲得總線控制權(quán)后,連接占用若干個(gè)存取周期進(jìn)行成組連續(xù)的數(shù)據(jù)傳送,直至批量傳送結(jié)束,DMAC才把總線控制權(quán)交回CPU。DMA操作期間,CPU處于保持狀態(tài),停止訪問內(nèi)存,僅能進(jìn)行一些與總線操作無關(guān)的內(nèi)部操作。CPU控制并使用內(nèi)存DMA控制并使用內(nèi)存內(nèi)存工作時(shí)間tDMA不工作DMA不工作DMA工作優(yōu)點(diǎn):控制簡單,適用于高速外設(shè)成組的數(shù)據(jù)交換缺點(diǎn):即使高速外設(shè)也跟不上內(nèi)存速度,存儲(chǔ)周期浪費(fèi)CPU控制并使用內(nèi)存DMA控制并使用內(nèi)存內(nèi)存工作時(shí)間tDMA傳送方式周期挪用法外設(shè)有DMA請求,獲取總線控制權(quán),挪用一個(gè)存取周期進(jìn)行一個(gè)字節(jié)(字)的數(shù)據(jù)傳送,歸還總線權(quán)再申請,再傳送一個(gè)字節(jié)(字)如此重復(fù),直至數(shù)據(jù)塊傳送完畢優(yōu)點(diǎn):DMA只挪用少數(shù)周期,對CPU執(zhí)行程序無影響適用:內(nèi)存速度快的高速主機(jī)系統(tǒng)CPU控制并使用內(nèi)存DMA控制并使用內(nèi)存內(nèi)存工作時(shí)間tDMA傳送方式DMA與CPU交替訪存法將一個(gè)CPU周期分成2個(gè)時(shí)間片,一片分給CPU,一片分給DMA,使CPU和DMA交替訪存。優(yōu)點(diǎn):無須申請和歸還總線,總線控制權(quán)切換很快,CPU不停止現(xiàn)行程序缺點(diǎn):內(nèi)存同時(shí)為兩個(gè)部件服務(wù),要求內(nèi)存工作速度提高一倍;很少有能與CPU速度配合的外設(shè),DMA操作時(shí)間片可能成為空操作。DMA控制器(DMAC)DMA的過程系統(tǒng)總線CPU

MDMA控制器接口接口I/OI/O1.DMA控制器功能(1)接收初始化信息(主存首址、交換量、傳送方向)。初始化(2)接收外設(shè)DMA請求,判優(yōu),向CPU申請總線。傳送前(3)接管總線權(quán),發(fā)地址、讀/寫命令。傳送期間控制/狀態(tài)邏輯中斷機(jī)構(gòu)內(nèi)存地址計(jì)數(shù)器傳送長度計(jì)數(shù)器數(shù)據(jù)緩沖寄存器DMA請求觸發(fā)器DMA控制器(DMAC)DMAC的組成內(nèi)存CPU設(shè)備選擇設(shè)備數(shù)據(jù)線地址線溢出信號HOLDHLDA控制線控制/狀態(tài)邏輯中斷機(jī)構(gòu)內(nèi)存地址計(jì)數(shù)器傳送長度計(jì)數(shù)器數(shù)據(jù)緩沖寄存器DMA請求觸發(fā)器設(shè)備選擇傳送長度計(jì)數(shù)器設(shè)備DMA請求觸發(fā)器內(nèi)存地址計(jì)數(shù)器+1中斷機(jī)構(gòu)中斷請求溢出信號控制/狀態(tài)邏輯HOLDHLDA數(shù)據(jù)緩沖寄存器參看P291DMA控制器(DMAC)DMAC的功能接受DMA請求接受外設(shè)發(fā)出的DMA請求——DREQ并向CPU發(fā)出占用總線請求——HOLD接管總線控制權(quán)接收CPU發(fā)出的DMA響應(yīng)——HLDA向外設(shè)發(fā)出DMA響應(yīng)——DACK接管對總線的控制,進(jìn)入DMA操作周期控制數(shù)據(jù)傳送確定數(shù)據(jù)的內(nèi)存地址及傳送長度,并能自動(dòng)修改發(fā)出讀寫控制信號,執(zhí)行數(shù)據(jù)傳送操作傳送完畢,向CPU提出中斷,報(bào)告DMA操作的結(jié)束DMA控制器(DMAC)DMAC的引出線內(nèi)存CPUDMAC外設(shè)MEMRMEMWIORIOWDREQDACKHRQHLDA計(jì)數(shù)器MEMWIORMEMRMEMRIOWDBABDREQDACKHLDAHRQ參看P298DMA控制器(DMAC)DMAC的連接和傳送(P298-299-300)內(nèi)存CPUDMAC外設(shè)MEMRMEMWIORIOWDBABDREQDACKHRQHLDA6計(jì)數(shù)器7+18重復(fù)5、6、79撤銷HLDA,總線歸還CPU1DREQ2HRQ3HLDA4DACK566DMA傳送過程預(yù)處理:CPU執(zhí)行初始化測試外設(shè)狀態(tài)對DMAC寄存器賦初值(傳送方向、

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論