計算機組成原理 第5章課件_第1頁
計算機組成原理 第5章課件_第2頁
計算機組成原理 第5章課件_第3頁
計算機組成原理 第5章課件_第4頁
計算機組成原理 第5章課件_第5頁
已閱讀5頁,還剩78頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第五章

輸入輸出系統(tǒng)第一節(jié)概述第二節(jié)I/O設(shè)備第三節(jié)I/O接口第四節(jié)程序查詢方式第五節(jié)程序中斷方式第六節(jié)DMA方式作業(yè)第一節(jié)概述一、輸入輸出系統(tǒng)的發(fā)展概況二、輸入輸出系統(tǒng)的組成三、I/O設(shè)備與主機的聯(lián)系方式四、I/O設(shè)備與主機信息傳送的控制方式一、輸入輸出系統(tǒng)的發(fā)展概況1.早期分散連接CPU和I/O設(shè)備通信控制程序查詢方式2.接口模塊和DMA階段總線連接CPU和I/O設(shè)備并行

工作中斷方式DMA方式每個I/O設(shè)備都有一套獨立邏輯電路和CPU連接實現(xiàn)I/O設(shè)備與主機之間的信息交換

輸入輸出過程是穿插在CPU執(zhí)行程序過程之中進行的

I/O設(shè)備通過接口模塊與主機相連。

設(shè)有數(shù)據(jù)和控制通路,數(shù)據(jù)經(jīng)過接口既起到了緩沖作用,又可完成串-并轉(zhuǎn)換,而且可使多臺I/O設(shè)備分時占用總線,實現(xiàn)并行工作。串行

工作3.具有通道結(jié)構(gòu)的階段4.具有I/O處理機的階段通道是用來負責管理I/O設(shè)備以及實現(xiàn)主存與I/O設(shè)備之間交換信息的部件,可視為一種具有特殊功能的處理器;有專用通道指令,能獨立地執(zhí)行用通道指令編寫的輸入輸出程序,但不是一個完全獨立的處理器;是從屬于CPU的一個專用處理器;

基本獨立于主機工作,既可完成I/O通道的功能,又可以進行碼制轉(zhuǎn)換、格式處理、數(shù)據(jù)塊檢錯、糾錯等二、輸入輸出系統(tǒng)的組成1.I/O軟件(1)I/O指令(2)

通道指令CPU指令的一部分通道自身的指令指出數(shù)組的首地址、傳送字數(shù)、操作命令如IBM/370通道指令為64位操作碼命令碼設(shè)備碼2.I/O硬件設(shè)備接口模塊、設(shè)備控制器、設(shè)備帶有接口的I/O系統(tǒng)具有通道的I/O系統(tǒng)具有通道的I/O系統(tǒng)三、I/O設(shè)備與主機的聯(lián)系方式1.I/O設(shè)備編址方式(1)統(tǒng)一編址(2)不統(tǒng)一編址用取數(shù)、存數(shù)指令有專門的I/O指令2.設(shè)備選址用設(shè)備選擇電路識別是否被選中3.傳送方式(1)串行(2)并行4.聯(lián)絡(luò)方式(1)立即響應(yīng)(2)異步工作“Ready”“Strobe”I/O

接口I/O

設(shè)備CPU并行指令一到,立即響應(yīng),無需特殊聯(lián)絡(luò)信號

在交換信息前,各司其職,出現(xiàn)聯(lián)絡(luò)信號時才準備交換信息。

一般用于I/O設(shè)備與主機工作速度不匹配時。采用應(yīng)答信號(3)同步工作采用同步時標要求I/O設(shè)備與CPU的工作速度完全同;

CPU必須以I/O設(shè)備的速率接收和傳送數(shù)據(jù);數(shù)據(jù)字命令字命令字01101000起始位終止位9.09ms2×

9.09ms串行起始位終止位9.09ms2×

9.09ms5.I/O設(shè)備與主機的連接方式(1)輻射式連接(2)總線連接

外設(shè)Ⅰ

外設(shè)Ⅱ

外設(shè)Ⅲ主機不便于增刪設(shè)備每臺設(shè)備都配有一套控制線路和一組信號線便于增刪設(shè)備四、I/O設(shè)備與主機信息傳送的控制方式程序查詢方式;程序中斷方式;直接存儲器存取DMA方式;I/O通道方式;I/O處理機方式;CPU和I/O串行工作踏步等待CPU讀I/O狀態(tài)檢查狀態(tài)未準備就緒出錯從I/O接口中讀一個字到CPU從CPU向主存寫入一個字CPU向I/O發(fā)讀指令CPU讀I/O狀態(tài)檢查狀態(tài)

完成否未準備就緒現(xiàn)行程序是出錯已準備就緒否程序查詢方式流程1.程序查詢方式2.程序中斷方式I/O工作CPU不查詢CPU暫?,F(xiàn)行程序自身準備與主機交換信息CPU和I/O并行工作

啟動I/O設(shè)備現(xiàn)行程序

……中斷服務(wù)程序KK+1…沒有踏步等待現(xiàn)象中斷現(xiàn)行程序程序中斷方式流程CPU向I/O發(fā)讀指令CPU讀I/O狀態(tài)檢查狀態(tài)完成否?CPU做其他事情I/O設(shè)備工作準備就緒CPUI/O從CPU向主存寫入一個字CPU主存從I/O接口中讀一個字到CPUI/OCPU中斷請求I/OCPU出錯是否未錯3.DMA方式主存和I/O之間有一條直接數(shù)據(jù)通道不中斷現(xiàn)行程序周期挪用(周期竊?。〤PU和I/O并行工作存取周期結(jié)束CPU執(zhí)行現(xiàn)行程序CPU執(zhí)行現(xiàn)行程序DMA請求啟動I/OI/O準備I/O準備一個存取周期實現(xiàn)I/O與主存之間的傳送存取周期結(jié)束CPU執(zhí)行現(xiàn)行程序CPU執(zhí)行現(xiàn)行程序DMA請求啟動I/OI/O準備I/O準備一個存取周期實現(xiàn)I/O與主存之間的傳送CPU

執(zhí)行現(xiàn)行程序CPU查詢等待并傳輸I/O數(shù)據(jù)CPU

執(zhí)行現(xiàn)行程序啟動I/OI/O準備及傳送指令執(zhí)行周期結(jié)束CPU執(zhí)行現(xiàn)行程序CPU執(zhí)行現(xiàn)行程序啟動I/O中斷請求I/O準備I/O準備CPU處理中斷服務(wù)程序?qū)崿F(xiàn)I/O與主機之間的傳送間斷啟動I/O啟動I/OI/O準備中斷請求啟動I/OI/O準備一個存取周期DMA請求程序查詢方式程序中斷方式DMA方式I/O準備及傳送間斷I/O準備I/O準備三種方式的CPU工作效率比較第二節(jié)I/O設(shè)備一、概述二、輸入設(shè)備三、輸出設(shè)備四、其他五、多媒體技術(shù)一、概述主機

設(shè)備控制器機、電磁、光部分I/O接口外部設(shè)備外部設(shè)備大致分三類鍵盤、鼠標、打印機、顯示器磁盤、光盤、磁帶1.人機交互設(shè)備2.計算機信息存儲設(shè)備3.機機通信設(shè)備調(diào)制解調(diào)器等二、輸入設(shè)備1.鍵盤2.鼠標按鍵判斷哪個鍵按下將此鍵翻譯成ASCII碼(編碼鍵盤法)機械式金屬球電位器光電式光電轉(zhuǎn)換器完成輸入程序、數(shù)據(jù)和操作命令等采用硬件確認哪個鍵被按下的方法4.其它輸入設(shè)備3.觸摸屏光筆畫筆與圖形板圖像輸入設(shè)備電阻式、電容式、表面超聲波式掃描紅外線式、壓感式三、輸出設(shè)備1.顯示器(1)字符顯示(2)圖形顯示(3)圖像顯示字符發(fā)生器主觀圖像客觀圖像2.打印機(1)擊打式(2)非擊打式點陣式(逐字、逐行)噴墨(逐字)激光(逐頁)四、其他1.A/D、D/A2.終端3.漢字處理完成顯示控制與存儲、鍵盤管理及通信控制模擬/數(shù)字(數(shù)字/模擬)轉(zhuǎn)換器漢字輸入、漢字存儲、漢字輸出由鍵盤和顯示器組成五、多媒體技術(shù)1.什么是多媒體2.多媒體計算機的關(guān)鍵技術(shù)強調(diào)計算機與聲音、活動圖像和文字的結(jié)合視頻和音頻數(shù)據(jù)的壓縮與解壓縮技術(shù)多媒體專用芯片大容量存儲器適用于多媒體技術(shù)的軟件第三節(jié)I/O接口一、概述二、接口的功能和組成三、接口類型一、概述為什么要設(shè)置接口?1.實現(xiàn)設(shè)備的選擇2.實現(xiàn)數(shù)據(jù)緩沖達到速度匹配4.實現(xiàn)電平轉(zhuǎn)換5.傳送控制命令6.反映設(shè)備的狀態(tài)(“忙”、“就緒”、“中斷請求”)3.實現(xiàn)數(shù)據(jù)串并格式轉(zhuǎn)換注意接口和端口的區(qū)別:端口是指接口電路中的一些寄存器,這些寄存器分別用來存放數(shù)據(jù)、控制和狀態(tài)信息二、接口的功能和組成(1)設(shè)備選擇線(2)數(shù)據(jù)線(3)命令線(4)狀態(tài)線I/O接口設(shè)備I/O接口設(shè)備數(shù)據(jù)線命令線狀態(tài)線I/O總線設(shè)備選擇線總線連接方式的I/O接口電路2.接口的功能和組成功能組成選址功能傳送命令的功能傳送數(shù)據(jù)的功能反映設(shè)備狀態(tài)的功能設(shè)備選擇電路命令寄存器、命令譯碼器數(shù)據(jù)緩沖寄存器設(shè)備狀態(tài)標記完成觸發(fā)器D工作觸發(fā)器B中斷請求觸發(fā)器INTR屏蔽觸發(fā)器MASK3.I/O接口的基本組成

命令寄存器和命令譯碼器

設(shè)備選擇電路

設(shè)備狀態(tài)標記

數(shù)據(jù)緩沖寄存器DBR

控制邏輯電路I/O接口外部設(shè)備數(shù)據(jù)線命令狀態(tài)數(shù)據(jù)線命令線狀態(tài)線CPU地址線并行接口串行接口可編程接口不可編程接口1.按數(shù)據(jù)傳送方式

分類2.按功能選擇的靈活性

分類Intel8255Intel8251Intel8255、Intel8251Intel8212三、接口類型通用接口專用接口3.按通用性

分類4.按數(shù)據(jù)傳送的控制方式

分類中斷接口DMA接口Intel8255、Intel8251Intel8279、Intel8275Intel8259Intel8257第四節(jié)程序查詢方式一、程序查詢流程二、程序查詢方式的接口電路一、程序查詢流程1.查詢流程檢查狀態(tài)標記交換數(shù)據(jù)準備就緒?是否單個設(shè)備測試指令轉(zhuǎn)移指令傳送指令檢查狀態(tài)標記1

設(shè)備1

準備就緒?檢查狀態(tài)標記N

設(shè)備N準備就緒?…處理設(shè)備1是否否處理設(shè)備N是多個設(shè)備2.程序流程設(shè)置主存緩沖區(qū)首址設(shè)置計數(shù)值啟動外設(shè)傳送一個數(shù)據(jù)修改主存地址修改計數(shù)值結(jié)束I/O傳送準備好?傳送完?未完是完否

保存寄存器內(nèi)容②設(shè)備選擇電路DBRQQ&數(shù)據(jù)線準備就緒啟動命令地址線SEL輸入數(shù)據(jù)啟動設(shè)備設(shè)備工作結(jié)束①③④⑤⑥D(zhuǎn)B二、程序查詢方式的接口電路①②③⑤1010④以輸入為例⑥第五節(jié)程序中斷方式一、中斷的概念二、I/O中斷的產(chǎn)生三、程序中斷方式的接口電路四、I/O中斷處理過程五、中斷服務(wù)程序流程一、中斷的概念…KK+1QQ+1……中斷服務(wù)程序1中斷服務(wù)程序2入口1入口2中斷:計算機在執(zhí)行過程中,當出現(xiàn)異常情況或特殊請求時,停止現(xiàn)行程序的運行,轉(zhuǎn)向這些情況或請求的處理,處理結(jié)束后再返回現(xiàn)行程序中斷處,繼續(xù)執(zhí)行原程序。二、I/O中斷的產(chǎn)生以打印機為例發(fā)中斷請求

空閑接收數(shù)據(jù)接收數(shù)據(jù)準備發(fā)中斷請求打印打印打印機執(zhí)行主程序繼續(xù)執(zhí)行主程序繼續(xù)執(zhí)行主程序響應(yīng)中斷中斷返回響應(yīng)中斷中斷返回

啟動打印機傳送數(shù)據(jù)傳送數(shù)據(jù)CPUCPU與打印機并行工作三、程序中斷方式的接口電路1.配置中斷請求觸發(fā)器和中斷屏蔽觸發(fā)器DQ&1INTR中斷請求觸發(fā)器INTR=1有請求MASK中斷屏蔽觸發(fā)器MASK=1被屏蔽來自CPU的中斷查詢信號受設(shè)備本身控制INTRDMASKQD完成觸發(fā)器中斷請求不允許級別低的中斷源中斷正在運行的中斷程序2.排隊器排隊在CPU內(nèi)或在接口電路中(鏈式排隊器)硬件軟件詳見第八章INTP1′INTP2′INTP3′INTP4′INTR1INTR2INTR3INTR41&1&1&1&INTR1設(shè)備1#、2#、3#、4#

優(yōu)先級按降序排列INTRi

=1有請求即INTRi=01INTP11INTP21INTP31INTP4&&&&INTR1INTR2INTR3INTR4INTR1INTR2INTR3INTR41&1&1&1&INTP1′INTP2′INTP3′INTP4′INTR2INTR1INTR1INTR21&INTP23.中斷向量地址形成部件入口地址…向量地址…排隊器輸出硬件向量法由軟件產(chǎn)生

顯示器服務(wù)程序

打印機服務(wù)程序JMP400JMP300JMP200…………主存12H13H14H200300向量地址入口地址入口地址中斷向量地址形成部件

設(shè)備編碼器1000…000100100100…00010011由硬件

產(chǎn)生向量地址再由向量地址

找到入口地址設(shè)備選擇電路DBRDQ&數(shù)據(jù)線啟動命令地址線SEL輸入數(shù)據(jù)啟動設(shè)備設(shè)備工作結(jié)束&1QQDINTRBQQMASK

設(shè)備編碼器排隊器中斷查詢來自高一級的排隊器至低一級的排隊器向量地址中斷響應(yīng)

INTA中斷請求命令譯碼4.程序中斷方式接口電路的基本組成四、I/O中斷處理過程1.CPU響應(yīng)中斷的條件和時間(1)條件(2)時間允許中斷觸發(fā)器EINT=1用開中斷

指令將EINT置“1”用關(guān)中斷

指令將EINT置“0”

或硬件自動復(fù)位當D=1(隨機)且MASK=0

時在每條指令執(zhí)行階段的結(jié)束前CPU

發(fā)中斷查詢信號(將INTR置“1”)設(shè)備選擇電路DBRDQ&數(shù)據(jù)線啟動命令地址線SEL輸入數(shù)據(jù)啟動設(shè)備設(shè)備工作結(jié)束&1QQDINTRBQQMASK設(shè)備編碼器排隊器中斷查詢來自高一級的排隊器至低一級的排隊器向量地址中斷響應(yīng)

INTA中斷請求命令譯碼①②③④⑤⑥⑦⑧2.I/O中斷處理過程①10&DBR④⑤⑦⑧設(shè)備選擇電路01以輸入為例②③⑥五、中斷服務(wù)程序流程1.中斷服務(wù)程序的流程(1)保護現(xiàn)場(2)中斷服務(wù)(3)恢復(fù)現(xiàn)場(4)中斷返回對不同的I/O設(shè)備具有不同內(nèi)容的設(shè)備服務(wù)中斷返回指令中斷隱指令完成進棧指令出棧指令程序斷點的保護寄存器內(nèi)容的保護2.單重中斷和多重中斷不允許中斷

現(xiàn)行的中斷服務(wù)程序單重

中斷多重

中斷允許級別更高

的中斷源中斷

現(xiàn)行的中斷服務(wù)程序3.單重中斷和多重中斷的服務(wù)程序流程中斷否?保護現(xiàn)場設(shè)備服務(wù)恢復(fù)現(xiàn)場

開中斷中斷返回取指令執(zhí)行指令中斷服務(wù)程序

中斷響應(yīng)程序斷點進棧關(guān)中斷向量地址PC中斷周期是中斷返回保護現(xiàn)場設(shè)備服務(wù)恢復(fù)現(xiàn)場開中斷開中斷開中斷中斷隱指令中斷隱指令否取指令執(zhí)行指令中斷否?否

中斷響應(yīng)程序斷點進棧關(guān)中斷向量地址PC中斷周期是中斷服務(wù)程序單重多重單重中斷和多重中斷的服務(wù)程序流程主程序和服務(wù)程序搶占CPU示意圖準備工作準備工作準備工作傳送數(shù)據(jù)傳送數(shù)據(jù)發(fā)中斷請求發(fā)中斷請求I/O宏觀

上CPU和I/O并行

工作微觀

上CPU中斷現(xiàn)行程序

為I/O服務(wù)主程序繼續(xù)執(zhí)行主程序啟動外設(shè)

服務(wù)程序(傳送數(shù)據(jù))

服務(wù)程序(傳送數(shù)據(jù))繼續(xù)執(zhí)行主程序CPU第六節(jié)DMA方式DMA(DirectMemoryAccess)方式即直接存儲器訪問方式,是為了在主存與外設(shè)之間實現(xiàn)高速、批量數(shù)據(jù)交換而設(shè)置的;DMA方式的數(shù)據(jù)傳送直接依靠硬件(DMA控制器)來實現(xiàn),不需要執(zhí)行任何程序;無論程序查詢還是程序中斷方式,主要的工作都是由CPU執(zhí)行程序完成的,這需要花費時間,因此不能實現(xiàn)高速外設(shè)與主機的信息交換。一、DMA方式的特點二、DMA接口的功能和組成三、DMA的工作過程四、DMA接口的類型一、DMA方式的特點1.DMA和程序中斷兩種方式的數(shù)據(jù)通路CPU主存ACC

中斷接口DMA接口I/O

設(shè)備中斷方式數(shù)據(jù)傳送通路輸入指令輸出指令DMA方式數(shù)據(jù)傳送通路既不需要CPU干預(yù)也不需要軟件介入的情況下在兩者之間進行的高速數(shù)據(jù)傳送2.DMA與主存交換數(shù)據(jù)的三種方式(1)停止CPU訪問主存控制簡單用DMA請求信號迫使CPU讓出總線控制權(quán);CPU在現(xiàn)行機器周期執(zhí)行完成之后,使其數(shù)據(jù)、地址總線處于三態(tài),并輸出總線批準信號;每次DMA請求獲得批準,DMA控制器獲得總線控制權(quán)以后,連續(xù)占用若干個存取周期(總線周期)進行成組連續(xù)的數(shù)據(jù)傳送,直至批量傳送結(jié)束,DMA控制器才把總線控制權(quán)交回CPU;主存工作時間CPU不執(zhí)行程序DMA不工作DMA不工作DMA工作CPU控制并使用主存DMA控制并使用主存tCPU處于不工作狀態(tài)或保持狀態(tài),僅能進行一些與總線無關(guān)的內(nèi)部操作;未充分發(fā)揮CPU對主存的利用率,只適用于高速外設(shè)的成組傳送(2)周期挪用(或周期竊?。┊斖庠O(shè)沒有DMA請求時,CPU按程序要求訪問主存;一旦外設(shè)有DMA請求并獲得CPU批準后,CPU讓出一個周期總線控制權(quán),由DMA控制器控制系統(tǒng)總線,挪用一個存取周期進行一次數(shù)據(jù)傳送,傳送一個字節(jié)或字;然后,DMA控制器將總線控制權(quán)交回CPU,CPU繼續(xù)進行自己的操作,等待下一個DMA請求的到來。重復(fù)上述過程,直至數(shù)據(jù)塊傳送完畢。DMA訪問主存有三種可能CPU此時不訪存CPU正在訪存CPU與DMA同時請求訪存CPU將總線控制權(quán)讓給DMA,優(yōu)先保證DMA工作周期挪用對CPU無影響必須等待當前機器周期結(jié)束主存工作時間CPU控制并使用主存DMA控制并使用主存t

當主存工作速度高出外設(shè)較多時,采用周期挪用法可以提高主存的利用率,且對CPU的影響較小,因此,高速主機系統(tǒng)常采用這種方法。(3)DMA與CPU交替訪問適用于CPU的工作周期比主存周期長的情況;將一個CPU周期分成兩個時間周期C1和C2;CPU工作周期C1專供DMA訪存C2專供CPU訪存所有指令執(zhí)行過程中的一個基準時間主存工作時間DMA控制并使用主存CPU控制并使用主存t不需要申請、建立和歸還總線;CPU不停止現(xiàn)行程序的運行,也不進入保持狀態(tài);相應(yīng)的硬件邏輯變得更復(fù)雜;DMA不工作DMA不工作CPU控制并使用主存DMA控制并使用主存主存工作時間停止CPU訪問主存交替訪問周期挪用DMA三種傳送方式CPU控制并使用主存DMA控制并使用主存主存工作時間CPU控制并使用主存DMA控制并使用主存主存工作時間二、DMA接口的功能和組成DMA接口相對于查詢式接口和中斷式接口來說比較復(fù)雜,在DMA傳送過程中,DMA接口將接管CPU的地址總線、數(shù)據(jù)總線和控制總線,CPU的主存控制信號被禁止使用;DMA傳送結(jié)束后,DMA接口將恢復(fù)CPU的一切權(quán)力并開始執(zhí)行其操作; 由此可見,DMA接口必須具有控制系統(tǒng)總線的能力,即能夠像CPU一樣輸出地址信號,接收或發(fā)出控制信號,輸入或輸出數(shù)據(jù)信號。1.DMA接口功能(1)向CPU申請

DMA傳送(2)處理總線控制權(quán)的轉(zhuǎn)交(3)管理

系統(tǒng)總線、控制

數(shù)據(jù)傳送(4)確定

數(shù)據(jù)傳送的首地址和長度(5)DMA傳送結(jié)束時,給出操作完成信號修正

傳送過程中的數(shù)據(jù)地址和長度2.DMA接口組成(1)主存地址計數(shù)器(AR)

用來存放待交換數(shù)據(jù)的主存地址。該計數(shù)器的初始值為主存緩沖區(qū)的首地址,當DMA傳送時,每傳送一個數(shù)據(jù),將地址計數(shù)器加“1”,直至這批數(shù)據(jù)傳送完畢為止。(2)字計數(shù)器(WC)

用來記錄傳送數(shù)據(jù)塊的長度。其初始值為傳送數(shù)據(jù)的總字數(shù)或總字節(jié)數(shù),每傳送一個字或一個字節(jié),計數(shù)器自動減“1”,當其內(nèi)容為0時表示數(shù)據(jù)已全部傳送完畢。

(有些DMA控制器中,初始時將字數(shù)或字節(jié)數(shù)求補之后送計數(shù)器,每傳送一個字或一個字節(jié),計數(shù)器加“1”,當計數(shù)器溢出時,表示數(shù)據(jù)傳送完畢)(3)數(shù)據(jù)緩沖寄存器(BR)

用來暫存每次傳送的數(shù)據(jù)。輸入時,數(shù)據(jù)由外設(shè)(如磁盤)先送往數(shù)據(jù)緩沖寄存器,再通過數(shù)據(jù)總線送到主存。輸出,則相反。(4)設(shè)備地址寄存器(DAR)

存放I/O設(shè)備的設(shè)備碼或表示設(shè)備信息存儲區(qū)的尋址信息,如磁盤數(shù)據(jù)所在區(qū)號、盤面號等,具體內(nèi)容取決于I/O設(shè)備的數(shù)據(jù)格式和地址編碼方式。(5)DMA請求觸發(fā)器 每當外設(shè)準備好數(shù)據(jù)后給出一個控制信號DREQ,使DMA請求觸發(fā)器置位。(6)DMA控制邏輯 它由控制和時序電路以及狀態(tài)標志等組成,當收到設(shè)備準備好一個數(shù)據(jù)字時發(fā)送的DREQ

信號后,發(fā)送DMA請求信號HRQ到CPU

,在收到CPU響應(yīng)信號HLDA后負責管理DMA傳送全過程,包括修改傳送參數(shù)、識別總線類型、指定傳送方向,通知設(shè)備已授予使用一個DMA周期,發(fā)出DACK信號。(7)中斷機構(gòu) 當一個數(shù)據(jù)塊傳送完畢后觸發(fā)中斷機構(gòu),向CPU提出中斷請求,CPU將進行DMA傳送的后處理。DMA接口主存CPUDMA接口組成DMA

控制邏輯

中斷機構(gòu)設(shè)備HLDAARWCDARHRQ中斷請求數(shù)據(jù)線地址線+1+1溢出信號DREQDACKBR三、DMA的工作過程1.DMA傳送過程預(yù)處理、數(shù)據(jù)傳送、后處理(1)預(yù)處理通過幾條輸入輸出指令預(yù)置如下信息

通知DMA控制邏輯傳送方向(入/出)

設(shè)備地址DMA的DAR

主存地址DMA的AR

傳送字數(shù)DMA的WC(2)數(shù)據(jù)傳送預(yù)處理:主存起始地址設(shè)備地址傳送數(shù)據(jù)個數(shù)啟動設(shè)備DMADMADMA數(shù)據(jù)傳送:繼續(xù)執(zhí)行主程序同時完成一批數(shù)據(jù)傳送后處理:中斷服務(wù)程序做DMA結(jié)束處理繼續(xù)執(zhí)行主程序CPU允許傳送?主存地址送總線數(shù)據(jù)送I/O設(shè)備(或主存)修改主存地址修改字計數(shù)器

數(shù)據(jù)塊傳送結(jié)束?向CPU申請程序中斷DMA請求否否是是數(shù)據(jù)傳送DMA傳送過程示意圖BR設(shè)備DMA

控制邏輯

中斷機構(gòu)ARWCDARDMA接口主存CPU+1+1數(shù)據(jù)傳送過程(輸入)DREQ②HRQ③HLDA④地址線⑤DACK⑥①數(shù)據(jù)線⑦溢出信號中斷請求ARWC+1+1BRBRBRBRBRBR設(shè)備DMA

控制邏輯

中斷機構(gòu)ARWCDARDMA接口主存CPU+1+1BRDREQ②HRQ③HLDA④地址線⑤DACK⑥①數(shù)據(jù)線⑦溢出信號中斷請求ARWC+1+1數(shù)據(jù)傳送過程(輸出)BRBRBRBR(3)后處理校驗送入主存的數(shù)是否正確決定是否繼續(xù)用DMA傳送其它數(shù)據(jù)塊測試傳送過程是否正確,錯則轉(zhuǎn)診斷及處理程序由中斷服務(wù)程序完成例5.3:由傳輸速率確定每秒傳輸字節(jié)數(shù);9600/8=1200B由最大批量字節(jié)數(shù)確定傳輸數(shù)據(jù)塊數(shù);

1200B/400B=3塊采用DMA方式占用處理器時間;0.1×1200+5×3=135us采用中斷方式,每個字符要申請一次中斷;5×12

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論