版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、主要知識(shí)點(diǎn):1主機(jī)與輸入輸出設(shè)備間傳送數(shù)據(jù)的四種控制方式 程序查詢、中斷、DMA、通道2系統(tǒng)總線的結(jié)構(gòu),理解輸入/輸出接口的分類(lèi)、功能及基本組成。3中斷處理的全過(guò)程,中斷優(yōu)先、中斷屏蔽、中斷嵌套、中斷向量的概念。4DMA方式的原理和工作過(guò)程重點(diǎn)與難點(diǎn): 程序中斷的概念、中斷系統(tǒng)的組成、中斷處理的具體過(guò)程、 DMA方式的基本原理。 5.1 概述 輸入輸出系統(tǒng)包括: (1)硬件部分:外部設(shè)備、接口、系統(tǒng)總線 系統(tǒng)總線是連接主機(jī)與外設(shè)的信息載體; 接口是控制主機(jī)與外設(shè)間信息傳送控制方式的電路 (2)軟件部分: 設(shè)備控制程序是指在一些設(shè)備控制器中由微處理器執(zhí)行的程序; 設(shè)備驅(qū)動(dòng)程序是指“操作系統(tǒng)”中一
2、組對(duì)外設(shè)的驅(qū)動(dòng)程序。 用戶I/O程序:簡(jiǎn)單統(tǒng)一的界面實(shí)現(xiàn)設(shè)備控制一、主機(jī)與外設(shè)的連接模式1、單總線方式2、雙總線方式CPU內(nèi)存設(shè)備接口設(shè)備接口系統(tǒng)總線(單總線結(jié)構(gòu))CPU內(nèi)存設(shè)備接口設(shè)備接口內(nèi)存總線系統(tǒng)總線(雙總線結(jié)構(gòu))CPU內(nèi)存設(shè)備接口IOP(通道)內(nèi)存總線系統(tǒng)總線(三總線結(jié)構(gòu))設(shè)備接口I/O總線3、三總線方式(高性能多總線結(jié)構(gòu))判定與分配選擇通道磁盤(pán)控制器磁盤(pán)控制器字節(jié)多路通道設(shè)備控制器設(shè)備控制器設(shè)備設(shè)備設(shè)備數(shù)組多路通道設(shè)備控制器設(shè)備控制器設(shè)備設(shè)備設(shè)備CPU主存磁盤(pán)磁盤(pán)磁盤(pán)I/O總線IO總線IO總線存儲(chǔ)總線(IBM 370的通道結(jié)構(gòu))(IBM 370的通道結(jié)構(gòu))4、 通道控制方式與輸入輸出
3、處理機(jī)(IOP)方式 通道本身是一個(gè)專門(mén)管理輸入/輸出的控制器。 通道控制器的進(jìn)一步發(fā)展,使之成為一個(gè)處理器,就是IOP方式。 特點(diǎn):信息傳送的吞吐量大,大型計(jì)算機(jī)中采用。 二、總線類(lèi)型與總線標(biāo)準(zhǔn) 總線是一組可以分時(shí)、共享分時(shí)、共享 的公共信息傳輸線路。1、按功能分類(lèi):內(nèi)部總線、系統(tǒng)總線、外部總線CPUCPU地址鎖存器地址鎖存器地址總線地址總線數(shù)據(jù)緩沖器數(shù)據(jù)緩沖器數(shù)據(jù)總線數(shù)據(jù)總線總線控制器總線控制器控制總線控制總線主主存存中中斷斷控控制制器器DMADMA控控制制器器接口接口I/OI/O設(shè)備設(shè)備接口接口I/OI/O設(shè)備設(shè)備適配器外圍設(shè)備CPURAMROMPIOCTC總線控制邏輯總線擴(kuò)展板存儲(chǔ)模塊
4、擴(kuò)展板打印機(jī)接口板顯示器接口板外總線系統(tǒng)總線部件內(nèi)總線(局部總線與系統(tǒng)總線結(jié)構(gòu)圖)2、 按數(shù)據(jù)傳送格式分 并行總線 串行總線發(fā)送部件接收部件10110101高位低位并串轉(zhuǎn)換串并轉(zhuǎn)換發(fā)送部件接收部件傳送數(shù)據(jù)10110101并行總線串行總線3、按時(shí)序控制方式分 同步總線 異步總線4、總線標(biāo)準(zhǔn) 微機(jī)中有:PC總線 ISA總線 EISA總線 PCI總線 等三、接口的功能與分類(lèi) 1、接口功能主要有4點(diǎn): 尋址 數(shù)據(jù)緩沖 數(shù)據(jù)格式變換、電平轉(zhuǎn)換 控制邏輯 2、接口分類(lèi) 并行接口與串行接口 同步接口與異步接口 中斷接口、DMA接口 等等 3、接口的主要部件組成: 數(shù)據(jù)緩沖器 設(shè)備地址識(shí)別線路 設(shè)備狀態(tài)寄存器
5、 主機(jī)命令字寄存器 數(shù)據(jù)格式轉(zhuǎn)換 控制邏輯4、I/O接口(I/O設(shè)備)的編址方式 (1) 統(tǒng)一編址方式 (2) 獨(dú)立編址方式00007FFF8000FFFF主存地址空間I/O地址空間例:統(tǒng)一編址方式0000FFFF主存地址空間000I/O地址空間3FF例: 獨(dú)立編址方式5.2 系統(tǒng)總線 一、總線信號(hào)組成 1、總線標(biāo)準(zhǔn)的制定應(yīng)描述出總線的4個(gè)特性: 物理特性(機(jī)械特性) 電氣特性 邏輯特性(功能特性) 時(shí)序特性 2、按邏輯特性分,系統(tǒng)總線分為4組: (1)電源線、地線 (2)地址線 (3) 數(shù)據(jù)線 (4)控制信號(hào)線 控制信號(hào)線通常包括: (1)復(fù)位信號(hào)(RESET) (2)同步定時(shí)信號(hào) 例:CP
6、U時(shí)鐘(CLOCK)、總線狀態(tài)信號(hào)(S0,S1)、 刷新同步(REFESH)、機(jī)器周期同步(MCSYNC)等 (3)異步應(yīng)答信號(hào) 主同步(MSYNC)、從同步(SSYNC) (4)總線控制權(quán)信號(hào) 總線請(qǐng)求(BREQ)、總線批準(zhǔn)(BACK)、總線忙(BUSY) (5)中斷請(qǐng)求與批準(zhǔn) 信號(hào) 中斷請(qǐng)求(IREQ1IREQ7)、中斷響應(yīng)(INTA) (6)數(shù)據(jù)傳送控制信號(hào) 存儲(chǔ)器讀(MEMR)、存儲(chǔ)器寫(xiě)(MEMW)、 輸入輸出設(shè)備讀(IOR)、輸入輸出設(shè)備寫(xiě)(IOW)T1T2T3T4總 線 周 期時(shí)鐘地址讀命令數(shù)據(jù)(總線的同步控制方式)二、總線操作時(shí)序 1、同步控制方式2、異步控制方式地地址址M MR
7、 RE EQ QR RD DM MS SY YN N數(shù)數(shù)據(jù)據(jù)S SS SY YN N主,請(qǐng)求從,回答主,請(qǐng)求從,回答主,請(qǐng)求從,回答不互鎖半互鎖全互鎖三、總線的仲裁 1、集中式仲裁 鏈?zhǔn)讲樵冎俨?計(jì)數(shù)器定時(shí)查詢仲裁 獨(dú)立請(qǐng)求仲裁 2、分布式仲裁四、總線帶寬 各功能總線組中的信號(hào)線數(shù),即總線一次操作可以傳輸?shù)臄?shù)據(jù)位數(shù),位數(shù)越多則一次傳輸?shù)男畔⒁苍蕉唷?.3 直接程序傳送方式及接口直接程序傳送方式及接口 一、基本原理一、基本原理 通過(guò)通過(guò)CPU執(zhí)行一段程序,控制外部設(shè)備與主機(jī)之間的數(shù)據(jù)傳執(zhí)行一段程序,控制外部設(shè)備與主機(jī)之間的數(shù)據(jù)傳送的整個(gè)過(guò)程。送的整個(gè)過(guò)程。CPU在執(zhí)行程序時(shí)需要不斷查詢外部設(shè)備的
8、狀在執(zhí)行程序時(shí)需要不斷查詢外部設(shè)備的狀態(tài),如果設(shè)備的數(shù)據(jù)傳送沒(méi)有準(zhǔn)備好,態(tài),如果設(shè)備的數(shù)據(jù)傳送沒(méi)有準(zhǔn)備好,CPU就反復(fù)查詢;只有就反復(fù)查詢;只有當(dāng)設(shè)備準(zhǔn)備好(當(dāng)設(shè)備準(zhǔn)備好(READY),),CPU才能用才能用I/O指令傳送一個(gè)數(shù)據(jù)。指令傳送一個(gè)數(shù)據(jù)。 特點(diǎn):特點(diǎn): (1)CPU主動(dòng)的不斷查詢外設(shè)狀態(tài);主動(dòng)的不斷查詢外設(shè)狀態(tài);(2)數(shù)據(jù)的輸入)數(shù)據(jù)的輸入/輸出都必須經(jīng)過(guò)輸出都必須經(jīng)過(guò)CPU;(3)CPU 與設(shè)備間是串行工作,所以與設(shè)備間是串行工作,所以CPU的使用效率低。的使用效率低。二、程序控制流程二、程序控制流程 直接程序傳送方式的直接程序傳送方式的程序流程圖見(jiàn)右邊的圖。程序流程圖見(jiàn)右邊的圖
9、。 啟動(dòng)設(shè)備 準(zhǔn)備好?傳送數(shù)據(jù)修改內(nèi)存地址數(shù)據(jù)量減1 傳送完?關(guān)閉設(shè)備N(xiāo)YNY讀取設(shè)備狀態(tài)三、程序查詢方式的接口三、程序查詢方式的接口電路電路數(shù)據(jù)緩沖寄存器命令/狀態(tài)寄存器譯碼地址IOWIOR系統(tǒng)總線設(shè)備0號(hào)采集器準(zhǔn)備好?1號(hào)采集器準(zhǔn)備好?2號(hào)采集器準(zhǔn)備好?3號(hào)采集器準(zhǔn)備好?從0號(hào)采集器輸入一個(gè)數(shù)據(jù)YesNo從1號(hào)采集器輸入一個(gè)數(shù)據(jù)YesNo從2號(hào)采集器輸入一個(gè)數(shù)據(jù)YesNo從3號(hào)采集器輸入一個(gè)數(shù)據(jù)YesNo主程序流(程序直接控制方式的順序查詢程序流程)5.4 程序中斷方式及接口程序中斷方式及接口 一、一、 基本概念基本概念 1、什么叫程序中斷、什么叫程序中斷 在程序執(zhí)行過(guò)程中,由于某個(gè)隨機(jī)在
10、程序執(zhí)行過(guò)程中,由于某個(gè)隨機(jī)事件的請(qǐng)求,暫停現(xiàn)程序的執(zhí)行,轉(zhuǎn)事件的請(qǐng)求,暫?,F(xiàn)程序的執(zhí)行,轉(zhuǎn)去執(zhí)行一段處理此隨機(jī)事件的程序,去執(zhí)行一段處理此隨機(jī)事件的程序,處理完后又回到原程序繼續(xù)執(zhí)行,這處理完后又回到原程序繼續(xù)執(zhí)行,這一過(guò)程叫一過(guò)程叫“程序中斷程序中斷”。返回中斷服務(wù)程序響應(yīng)主程序中斷請(qǐng)求2、程序中斷的特點(diǎn):、程序中斷的特點(diǎn):(1)當(dāng)數(shù)據(jù)傳送)當(dāng)數(shù)據(jù)傳送“準(zhǔn)備好準(zhǔn)備好”時(shí)由設(shè)備主動(dòng)向時(shí)由設(shè)備主動(dòng)向CPU提出中斷請(qǐng)求;提出中斷請(qǐng)求;(2)CPU與設(shè)備是并行工作的;與設(shè)備是并行工作的;(3)一般用于低速設(shè)備的數(shù)據(jù)傳送。)一般用于低速設(shè)備的數(shù)據(jù)傳送。3、 中斷分類(lèi)中斷分類(lèi) 中斷內(nèi)中斷外中斷外設(shè)的請(qǐng)
11、求人工干預(yù)自愿中斷強(qiáng)迫中斷硬件故障軟件故障(強(qiáng)迫中斷)(程序中安排,通過(guò)中斷指令引起)如“溢出中斷”二、二、 中斷請(qǐng)求信號(hào)的提出與傳送中斷請(qǐng)求信號(hào)的提出與傳送 1、中斷請(qǐng)求信號(hào)的提出、中斷請(qǐng)求信號(hào)的提出QIRQD CQIRQD CIRQIRQ屏蔽寄存器IRQIRQ07INT中斷控制器TDTMTDTMINT0INTnCPUCPUINT多線請(qǐng)求單線請(qǐng)求CPUINTINT0nINT0INTnINTi二維多線請(qǐng)求2、中斷請(qǐng)求信號(hào)的傳送、中斷請(qǐng)求信號(hào)的傳送 (1) 多線請(qǐng)求多線請(qǐng)求 (2)單線請(qǐng)求)單線請(qǐng)求 (3)二維結(jié)構(gòu)方式)二維結(jié)構(gòu)方式 (4)混合方式)混合方式三、優(yōu)先權(quán)邏輯與屏蔽技術(shù)三、優(yōu)先權(quán)邏輯
12、與屏蔽技術(shù) 優(yōu)先權(quán)有兩種類(lèi)型:優(yōu)先權(quán)有兩種類(lèi)型: (1) CPU與中斷源間的優(yōu)先關(guān)系與中斷源間的優(yōu)先關(guān)系 (2)各個(gè)中斷源之間的優(yōu)先關(guān)系)各個(gè)中斷源之間的優(yōu)先關(guān)系1、CPU與中斷源間的優(yōu)先關(guān)系與中斷源間的優(yōu)先關(guān)系 對(duì)于中斷源的中斷請(qǐng)求,對(duì)于中斷源的中斷請(qǐng)求,CPU是否是否“有求必應(yīng)有求必應(yīng)”? 不是的。不是的。 當(dāng)當(dāng)CPU當(dāng)前的優(yōu)先權(quán)高于中斷源的優(yōu)先權(quán)時(shí),當(dāng)前的優(yōu)先權(quán)高于中斷源的優(yōu)先權(quán)時(shí),CPU可以不可以不響應(yīng)中斷請(qǐng)求。反之,則必須響應(yīng)。響應(yīng)中斷請(qǐng)求。反之,則必須響應(yīng)。 CPU內(nèi)部設(shè)有一個(gè)內(nèi)部設(shè)有一個(gè)“中斷允許觸發(fā)器中斷允許觸發(fā)器” TIEN, TIEN =1時(shí),時(shí),允許允許CPU響應(yīng)中斷,響
13、應(yīng)中斷, TIEN =0時(shí),不允許時(shí),不允許CPU響應(yīng)中斷。響應(yīng)中斷。 可以用指令使可以用指令使TIEN =1,稱,稱“開(kāi)中斷開(kāi)中斷”,例,例8086中的開(kāi)中斷中的開(kāi)中斷指令指令 STI; 可以用指令使可以用指令使TIEN =0,稱,稱“關(guān)中斷關(guān)中斷”,例,例8086中的關(guān)中斷中的關(guān)中斷指令指令 CLI。2、中斷源之間的優(yōu)先關(guān)系、中斷源之間的優(yōu)先關(guān)系 分兩種情況:分兩種情況: (1)同時(shí)有多個(gè)中斷源請(qǐng)求,優(yōu)先響應(yīng)誰(shuí)?)同時(shí)有多個(gè)中斷源請(qǐng)求,優(yōu)先響應(yīng)誰(shuí)? (2)當(dāng))當(dāng)A中斷源的請(qǐng)求正在處理時(shí),中斷源的請(qǐng)求正在處理時(shí),B中斷源又提出請(qǐng)求,中斷源又提出請(qǐng)求,CPU是否響應(yīng)?(也即是否響應(yīng)?(也即 中
14、斷嵌套中斷嵌套 的問(wèn)題)的問(wèn)題) 優(yōu)先關(guān)系的基本原則:優(yōu)先關(guān)系的基本原則: 故障中斷故障中斷 DMA請(qǐng)求請(qǐng)求 外設(shè)中斷請(qǐng)求外設(shè)中斷請(qǐng)求 快速外設(shè)快速外設(shè) 慢速外設(shè)慢速外設(shè) 輸入設(shè)備輸入設(shè)備 輸出設(shè)備輸出設(shè)備 進(jìn)一步優(yōu)先權(quán)處理方法:進(jìn)一步優(yōu)先權(quán)處理方法: 對(duì)于同時(shí)請(qǐng)求的多個(gè)中斷源,采用對(duì)于同時(shí)請(qǐng)求的多個(gè)中斷源,采用“優(yōu)先排隊(duì)優(yōu)先排隊(duì)”技術(shù)。如下:技術(shù)。如下:(1)軟件查詢方法)軟件查詢方法 CPU響應(yīng)中斷后,響應(yīng)中斷后,進(jìn)入一個(gè)公共的中斷處進(jìn)入一個(gè)公共的中斷處理程序,在該程序中,理程序,在該程序中,CPU用用“查詢查詢I/O指指令令”,依次測(cè)試各中斷,依次測(cè)試各中斷源是否有中斷請(qǐng)求,若源是否有中
15、斷請(qǐng)求,若有請(qǐng)求,有請(qǐng)求,CPU就轉(zhuǎn)入相就轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序,;應(yīng)的中斷服務(wù)程序,;沒(méi)有,就繼續(xù)往下查詢。沒(méi)有,就繼續(xù)往下查詢。 可見(jiàn),先查詢到的中斷可見(jiàn),先查詢到的中斷源優(yōu)先權(quán)高。源優(yōu)先權(quán)高。 軟件查詢方法的程軟件查詢方法的程序流程圖見(jiàn)右邊:序流程圖見(jiàn)右邊:0號(hào)設(shè)備請(qǐng)求?1號(hào)設(shè)備請(qǐng)求?2號(hào)設(shè)備請(qǐng)求?3號(hào)設(shè)備請(qǐng)求?執(zhí)行0號(hào)設(shè)備中斷服務(wù)程序YesNo執(zhí)行1號(hào)設(shè)備中斷服務(wù)程序YesNo執(zhí)行2號(hào)設(shè)備中斷服務(wù)程序YesNo執(zhí)行3號(hào)設(shè)備中斷服務(wù)程序YesNo保護(hù)斷點(diǎn)和現(xiàn)場(chǎng)(響應(yīng)中斷)恢復(fù)斷點(diǎn)和現(xiàn)場(chǎng)(返回主程序)(程序中斷方式的固定優(yōu)先級(jí)查詢流程)INTR0INTR1INTR2INTR0INTR1IN
16、TR2(具有獨(dú)立請(qǐng)求線的并行排優(yōu)邏輯)(2) 并行優(yōu)先排隊(duì)邏輯并行優(yōu)先排隊(duì)邏輯 每個(gè)中斷源提供獨(dú)立的中斷請(qǐng)求信號(hào)給每個(gè)中斷源提供獨(dú)立的中斷請(qǐng)求信號(hào)給CPU。 特點(diǎn):特點(diǎn): 響應(yīng)的響應(yīng)的速度快;速度快; 但硬件但硬件成本高。成本高。 適用于適用于具有多請(qǐng)具有多請(qǐng)求線的計(jì)求線的計(jì)算機(jī)系統(tǒng)。算機(jī)系統(tǒng)。CPUI/OI/O編碼INTINTA鏈?zhǔn)絻?yōu)先排隊(duì)(菊花鏈方式)I/OI/O編碼INTINTA鏈?zhǔn)絻?yōu)先排隊(duì)(多重查詢方式)(3) 鏈?zhǔn)絻?yōu)先排隊(duì)邏輯鏈?zhǔn)絻?yōu)先排隊(duì)邏輯設(shè)備A設(shè)備B設(shè)備C設(shè)備D設(shè)備E設(shè)備F設(shè)備G設(shè)備H設(shè)備I01IR201IM2中斷優(yōu)先排隊(duì)電路與中斷控制邏輯01IR101IM101IR001IM0
17、INTR2INTR1INTR0高低優(yōu)先權(quán)CPUINTA2INTA1INTA0(4)二維結(jié)構(gòu)的優(yōu)先排隊(duì))二維結(jié)構(gòu)的優(yōu)先排隊(duì)中斷請(qǐng)求寄存器優(yōu)先級(jí)分析電路中斷服務(wù)寄存器中斷屏蔽寄存器數(shù)據(jù)緩沖讀/寫(xiě)邏輯級(jí)聯(lián)緩沖與比較器IREQ0IREQ1IREQ2IREQ3IREQ4IREQ5IREQ6IREQ7INTINTAD -DARDWRCSCAS0CAS1CAS2SP/EN007中斷控制器8259A結(jié)構(gòu)示意圖(5) 中斷控制器集成芯片的優(yōu)先排隊(duì)中斷控制器集成芯片的優(yōu)先排隊(duì)(Intel 8259A) 屏蔽技術(shù)的應(yīng)用,屏蔽技術(shù)的應(yīng)用, 解決中斷嵌套的問(wèn)題。解決中斷嵌套的問(wèn)題。 在多重中斷方式下,在多重中斷方式下,
18、CPU響應(yīng)某個(gè)中斷源的請(qǐng)求后,應(yīng)響應(yīng)某個(gè)中斷源的請(qǐng)求后,應(yīng)禁止響應(yīng)優(yōu)先權(quán)小于或等于它的中斷請(qǐng)求。而可以響應(yīng)優(yōu)先禁止響應(yīng)優(yōu)先權(quán)小于或等于它的中斷請(qǐng)求。而可以響應(yīng)優(yōu)先權(quán)大于它的中斷源的請(qǐng)求。權(quán)大于它的中斷源的請(qǐng)求。 通常采用設(shè)置屏蔽碼的辦法。屏蔽掉優(yōu)先權(quán)低的中斷請(qǐng)求,通常采用設(shè)置屏蔽碼的辦法。屏蔽掉優(yōu)先權(quán)低的中斷請(qǐng)求,開(kāi)放優(yōu)先權(quán)高的請(qǐng)求。開(kāi)放優(yōu)先權(quán)高的請(qǐng)求。 利用屏蔽技術(shù),動(dòng)態(tài)修改優(yōu)先權(quán)。利用屏蔽技術(shù),動(dòng)態(tài)修改優(yōu)先權(quán)。 中斷響應(yīng)優(yōu)先權(quán)中斷響應(yīng)優(yōu)先權(quán):指由硬件優(yōu)先排隊(duì)電路分配的各個(gè)中斷:指由硬件優(yōu)先排隊(duì)電路分配的各個(gè)中斷源在中斷響應(yīng)時(shí)的優(yōu)先關(guān)系,一經(jīng)確定,不易改變。源在中斷響應(yīng)時(shí)的優(yōu)先關(guān)系,一經(jīng)確定
19、,不易改變。 中斷處理優(yōu)先權(quán)中斷處理優(yōu)先權(quán):指利用屏蔽字,分配各中斷源被處理時(shí):指利用屏蔽字,分配各中斷源被處理時(shí)的優(yōu)先關(guān)系??梢酝ㄟ^(guò)修改屏蔽字的值,改變中斷源的優(yōu)先的優(yōu)先關(guān)系。可以通過(guò)修改屏蔽字的值,改變中斷源的優(yōu)先關(guān)系。關(guān)系。四、中斷服務(wù)程序入口的獲取方式四、中斷服務(wù)程序入口的獲取方式1、 非向量中斷非向量中斷 CPU響應(yīng)中斷后響應(yīng)中斷后 ,產(chǎn)生一個(gè),產(chǎn)生一個(gè)固定的地址,由此地址單元中讀固定的地址,由此地址單元中讀取中斷查詢程序的入口地址,取中斷查詢程序的入口地址,通通過(guò)軟件查詢確定中斷源,過(guò)軟件查詢確定中斷源,并轉(zhuǎn)入并轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序。相應(yīng)的中斷服務(wù)程序。01JMP nnnn查詢程
20、序 如圖:以如圖:以1號(hào)單元作為固定地址,號(hào)單元作為固定地址,該單元中安排一條轉(zhuǎn)移指令,轉(zhuǎn)到地該單元中安排一條轉(zhuǎn)移指令,轉(zhuǎn)到地址為址為nn的查詢程序去。的查詢程序去。 非向量中斷法的優(yōu)點(diǎn)是:簡(jiǎn)單、易實(shí)現(xiàn),成本低。非向量中斷法的優(yōu)點(diǎn)是:簡(jiǎn)單、易實(shí)現(xiàn),成本低。 缺點(diǎn)是響應(yīng)的速度慢。缺點(diǎn)是響應(yīng)的速度慢。向量中斷向量中斷 (1) 有關(guān)的概念有關(guān)的概念 . 中斷向量中斷向量 所有中斷服務(wù)程序的入口地址和狀態(tài)字在一起,稱做中斷所有中斷服務(wù)程序的入口地址和狀態(tài)字在一起,稱做中斷向量。向量。 . 中斷向量表中斷向量表 所有中斷服務(wù)程序的入口地址(或包括服務(wù)程序的狀態(tài)字)所有中斷服務(wù)程序的入口地址(或包括服務(wù)程
21、序的狀態(tài)字)組織成一維表,存放在一段連續(xù)的存儲(chǔ)區(qū)。該存儲(chǔ)區(qū)叫中斷組織成一維表,存放在一段連續(xù)的存儲(chǔ)區(qū)。該存儲(chǔ)區(qū)叫中斷向量表。向量表。 . 向量地址向量地址 存放某中斷源的中斷服務(wù)程序入口地址的單元地址叫向量存放某中斷源的中斷服務(wù)程序入口地址的單元地址叫向量地址。地址。 (2) 向量中斷向量中斷 響應(yīng)中斷時(shí),由響應(yīng)中斷時(shí),由硬件直接產(chǎn)生硬件直接產(chǎn)生對(duì)應(yīng)于中斷源的向量地址,據(jù)此訪問(wèn)對(duì)應(yīng)于中斷源的向量地址,據(jù)此訪問(wèn)中斷向量表,從中讀取服務(wù)程序入口地址,由此轉(zhuǎn)向服務(wù)程序。中斷向量表,從中讀取服務(wù)程序入口地址,由此轉(zhuǎn)向服務(wù)程序。 0000000100020003偏移量 .段地址 .中斷向量表向量地址00
22、04;00230024;007F0080;03FF中斷類(lèi)型號(hào)0型1型255型專用區(qū)中斷向量表一例五、中斷響應(yīng)五、中斷響應(yīng) 1、 CPU響應(yīng)中斷的條件響應(yīng)中斷的條件 (1)有中斷請(qǐng)求信號(hào)產(chǎn)生而且沒(méi)有被屏蔽;)有中斷請(qǐng)求信號(hào)產(chǎn)生而且沒(méi)有被屏蔽; (2)CPU處于開(kāi)中斷狀態(tài);處于開(kāi)中斷狀態(tài); (3)在一條指令執(zhí)行結(jié)束時(shí)響應(yīng)中斷。)在一條指令執(zhí)行結(jié)束時(shí)響應(yīng)中斷。 2、 CPU的中斷響應(yīng)過(guò)程的中斷響應(yīng)過(guò)程 CPU響應(yīng)中斷后就進(jìn)入響應(yīng)中斷后就進(jìn)入“中斷周期中斷周期” IT 。 在中斷周期,在中斷周期,CPU完成三件事:完成三件事: (中斷隱指令)(中斷隱指令) (1)關(guān)中斷)關(guān)中斷 (2)保護(hù)斷點(diǎn))保護(hù)斷
23、點(diǎn) (3)轉(zhuǎn)向中斷服務(wù)程序)轉(zhuǎn)向中斷服務(wù)程序進(jìn)入中斷周期,執(zhí)行隱指令,(關(guān)中斷,保護(hù)斷點(diǎn),轉(zhuǎn)中斷處理)響應(yīng)保護(hù)現(xiàn)場(chǎng)及舊屏蔽字設(shè)置新屏蔽字開(kāi)中斷執(zhí)行中斷服務(wù)程序關(guān)中斷恢復(fù)現(xiàn)場(chǎng)及屏蔽字開(kāi)中斷返回(中斷處理過(guò)程)六、中斷處理六、中斷處理 中斷處理過(guò)程分:?jiǎn)渭?jí)中斷處理過(guò)程分:?jiǎn)渭?jí)中斷方式、多重中斷方式。中斷方式、多重中斷方式。 右圖是多重中斷方式處右圖是多重中斷方式處理過(guò)程的流程圖。理過(guò)程的流程圖。 處理過(guò)程中,有兩次關(guān)處理過(guò)程中,有兩次關(guān)中斷、兩次開(kāi)中斷。其中中斷、兩次開(kāi)中斷。其中在執(zhí)行中斷服務(wù)程序的前在執(zhí)行中斷服務(wù)程序的前的開(kāi)中斷、執(zhí)行后的關(guān)中的開(kāi)中斷、執(zhí)行后的關(guān)中斷是為了能在執(zhí)行中斷服斷是為了能
24、在執(zhí)行中斷服務(wù)程序時(shí)實(shí)現(xiàn)中斷嵌套。務(wù)程序時(shí)實(shí)現(xiàn)中斷嵌套。設(shè)備選擇電路地址總線命令字寄存器數(shù)據(jù)總線狀態(tài)字寄存器數(shù)據(jù)總線數(shù)據(jù)緩沖器數(shù)據(jù)總線其它控制邏輯中斷控制器IRQi數(shù)據(jù)總線INTINTA中斷接口組成模型系統(tǒng)總線IRQ0IRQ7七、中斷接口七、中斷接口組成模型組成模型 圖中的中斷控制器是多個(gè)設(shè)備公用的,它包含有中斷優(yōu)先排隊(duì)、中斷屏蔽等功能電路。 5.5 DMA方式及接口 一、基本概念 1、程序中斷方式的不足之處 對(duì)于高速的外部設(shè)備,采用程序中斷方式,會(huì)造成數(shù)據(jù)的丟失。 2、直接內(nèi)存訪問(wèn)直接內(nèi)存訪問(wèn)(DMA ) 方式方式 的定義 DMA方式是一種完全由硬件執(zhí)行I/O交換的工作方式。在這種方式中,D
25、MA控制器從CPU完全接管對(duì)總線的控制,數(shù)據(jù)交換不經(jīng)過(guò)CPU,而直接在內(nèi)存和I/O設(shè)備之間進(jìn)行。在數(shù)據(jù)傳送期間不需要CPU的程序干預(yù),而是由DMA控制器向內(nèi)存發(fā)出地址和控制信號(hào),修改地址,對(duì)傳送的字的個(gè)數(shù)計(jì)數(shù),并且以中斷方式向CPU報(bào)告?zhèn)魉筒僮鞯慕Y(jié)束。 3、DMA方式的特點(diǎn)方式的特點(diǎn) DMA方式的主要特點(diǎn)是速度快。方式的主要特點(diǎn)是速度快。 由于由于CPU根本不參加傳送操作,因此就省去了根本不參加傳送操作,因此就省去了CPU取指令、取數(shù)、送數(shù)等操作。在數(shù)據(jù)傳送過(guò)程中,取指令、取數(shù)、送數(shù)等操作。在數(shù)據(jù)傳送過(guò)程中,沒(méi)有保存現(xiàn)場(chǎng)、恢復(fù)現(xiàn)場(chǎng)之類(lèi)的工作。內(nèi)存地址修改、沒(méi)有保存現(xiàn)場(chǎng)、恢復(fù)現(xiàn)場(chǎng)之類(lèi)的工作。內(nèi)存
26、地址修改、傳送字個(gè)數(shù)的計(jì)數(shù)等等,也不是由軟件實(shí)現(xiàn),而是用傳送字個(gè)數(shù)的計(jì)數(shù)等等,也不是由軟件實(shí)現(xiàn),而是用硬件線路直接實(shí)現(xiàn)的。所以硬件線路直接實(shí)現(xiàn)的。所以DMA方式能滿足高速方式能滿足高速I(mǎi)/O設(shè)備的要求,也有利于設(shè)備的要求,也有利于CPU效率的發(fā)揮。效率的發(fā)揮。 4、DMA的三種傳送方式的三種傳送方式(1)停止停止CPU訪問(wèn)內(nèi)存(成組連續(xù)傳送方式)訪問(wèn)內(nèi)存(成組連續(xù)傳送方式) 當(dāng)外圍設(shè)備要求傳送一批數(shù)據(jù)時(shí),由當(dāng)外圍設(shè)備要求傳送一批數(shù)據(jù)時(shí),由DMA控制控制器發(fā)一個(gè)停止信號(hào)給器發(fā)一個(gè)停止信號(hào)給CPU,要求,要求CPU放棄對(duì)系統(tǒng)總線放棄對(duì)系統(tǒng)總線的使用權(quán)。的使用權(quán)。DMA控制器獲得總線控制權(quán)以后,開(kāi)始
27、進(jìn)控制器獲得總線控制權(quán)以后,開(kāi)始進(jìn)行數(shù)據(jù)傳送。在行數(shù)據(jù)傳送。在一批數(shù)據(jù)一批數(shù)據(jù)傳送完畢后,傳送完畢后,DMA控制器通控制器通知知CPU可以使用內(nèi)存,并把總線控制權(quán)交還給可以使用內(nèi)存,并把總線控制權(quán)交還給CPU。這種傳送方式的時(shí)間圖如下:這種傳送方式的時(shí)間圖如下: 優(yōu)點(diǎn)優(yōu)點(diǎn): 控制簡(jiǎn)單,控制簡(jiǎn)單,它適用于數(shù)據(jù)傳輸率很高的設(shè)備進(jìn)行成組傳送。它適用于數(shù)據(jù)傳輸率很高的設(shè)備進(jìn)行成組傳送。缺點(diǎn)缺點(diǎn): 在在DMA控制器訪內(nèi)階段,內(nèi)存的效能沒(méi)有充分發(fā)揮,相當(dāng)控制器訪內(nèi)階段,內(nèi)存的效能沒(méi)有充分發(fā)揮,相當(dāng)一部分內(nèi)存工作周期是空閑的。這是因?yàn)?,外圍設(shè)備傳送兩個(gè)數(shù)一部分內(nèi)存工作周期是空閑的。這是因?yàn)?,外圍設(shè)備傳送兩個(gè)
28、數(shù)據(jù)之間的間隔一般總是大于內(nèi)存存儲(chǔ)周期,即使高速據(jù)之間的間隔一般總是大于內(nèi)存存儲(chǔ)周期,即使高速I(mǎi)/O設(shè)備也是設(shè)備也是如此。如此。 (2)周期挪用法(單字傳送方式)周期挪用法(單字傳送方式) 當(dāng)當(dāng)I/O設(shè)備沒(méi)有設(shè)備沒(méi)有DMA請(qǐng)求時(shí),請(qǐng)求時(shí),CPU按程序要按程序要求訪問(wèn)內(nèi)存;一旦求訪問(wèn)內(nèi)存;一旦I/O設(shè)備有設(shè)備有DMA請(qǐng)求,則由請(qǐng)求,則由I/O設(shè)備挪用一個(gè)或幾個(gè)內(nèi)存周期,傳送一個(gè)字設(shè)備挪用一個(gè)或幾個(gè)內(nèi)存周期,傳送一個(gè)字的數(shù)據(jù)。的數(shù)據(jù)。 I/O設(shè)備要求設(shè)備要求DMA傳送時(shí)可能遇到兩種情況:傳送時(shí)可能遇到兩種情況: 1) 此時(shí)此時(shí)CPU不需要訪內(nèi),如不需要訪內(nèi),如CPU正在執(zhí)行乘正在執(zhí)行乘法指令。由于
29、乘法指令執(zhí)行時(shí)間較長(zhǎng),此時(shí)法指令。由于乘法指令執(zhí)行時(shí)間較長(zhǎng),此時(shí)I/O訪內(nèi)與訪內(nèi)與CPU訪內(nèi)沒(méi)有沖突,即訪內(nèi)沒(méi)有沖突,即I/O設(shè)備挪用一二設(shè)備挪用一二個(gè)內(nèi)存周期對(duì)個(gè)內(nèi)存周期對(duì)CPU執(zhí)行程序沒(méi)有任何影響。執(zhí)行程序沒(méi)有任何影響。2)I/O設(shè)備要求訪內(nèi)時(shí)設(shè)備要求訪內(nèi)時(shí)CPU也要求訪內(nèi),這也要求訪內(nèi),這就產(chǎn)生了訪內(nèi)沖突。就產(chǎn)生了訪內(nèi)沖突。 在這種情況下在這種情況下I/O設(shè)備訪內(nèi)優(yōu)先,因?yàn)樵O(shè)備訪內(nèi)優(yōu)先,因?yàn)镮/O訪內(nèi)有時(shí)間要求,前一個(gè)訪內(nèi)有時(shí)間要求,前一個(gè)I/O數(shù)據(jù)必須在下一數(shù)據(jù)必須在下一個(gè)訪內(nèi)請(qǐng)求到來(lái)之前存取完畢。顯然,在這個(gè)訪內(nèi)請(qǐng)求到來(lái)之前存取完畢。顯然,在這種情況下種情況下I/O 設(shè)備挪用一二個(gè)內(nèi)
30、存周期,意味設(shè)備挪用一二個(gè)內(nèi)存周期,意味著著CPU延緩了對(duì)指令的執(zhí)行,或者更明確地延緩了對(duì)指令的執(zhí)行,或者更明確地說(shuō),在說(shuō),在CPU執(zhí)行訪內(nèi)指令的過(guò)程中插入執(zhí)行訪內(nèi)指令的過(guò)程中插入DMA請(qǐng)求,挪用了一二個(gè)內(nèi)存周期。請(qǐng)求,挪用了一二個(gè)內(nèi)存周期。 這種傳送方式的時(shí)間圖如下:這種傳送方式的時(shí)間圖如下:特點(diǎn):特點(diǎn):周期挪用的方法既實(shí)現(xiàn)了周期挪用的方法既實(shí)現(xiàn)了I/O傳送,又較好地發(fā)揮了內(nèi)存?zhèn)魉?,又較好地發(fā)揮了內(nèi)存和和CPU的效率。但是的效率。但是I/O設(shè)備每一次周期挪用都有申請(qǐng)總線控制設(shè)備每一次周期挪用都有申請(qǐng)總線控制權(quán)、建立線控制權(quán)和歸還總線控制權(quán)的過(guò)程,所以傳送一個(gè)字權(quán)、建立線控制權(quán)和歸還總線控制權(quán)
31、的過(guò)程,所以傳送一個(gè)字對(duì)內(nèi)存來(lái)說(shuō)要占用一個(gè)周期,但對(duì)對(duì)內(nèi)存來(lái)說(shuō)要占用一個(gè)周期,但對(duì)DMA控制器來(lái)說(shuō)一般要控制器來(lái)說(shuō)一般要25個(gè)內(nèi)存周期個(gè)內(nèi)存周期(視邏輯線路的延遲而定視邏輯線路的延遲而定)。因此,因此,周期挪用的方法適用于周期挪用的方法適用于I/O設(shè)備讀寫(xiě)周期大于內(nèi)存存儲(chǔ)周設(shè)備讀寫(xiě)周期大于內(nèi)存存儲(chǔ)周期的情況。期的情況。 (3)DMA與與CPU交替訪內(nèi)交替訪內(nèi) 如果如果CPU的工作周期比內(nèi)存存取周期長(zhǎng)很多,此的工作周期比內(nèi)存存取周期長(zhǎng)很多,此時(shí)采用交替訪內(nèi)的方法可以使時(shí)采用交替訪內(nèi)的方法可以使DMA傳送和傳送和CPU同時(shí)發(fā)同時(shí)發(fā)揮最高的效率。假設(shè)揮最高的效率。假設(shè)CPU工作周期為工作周期為 1.
32、2s,內(nèi)存存取,內(nèi)存存取周期小于周期小于0.6s,那么一個(gè),那么一個(gè)CPU周期可分為周期可分為C1和和C2兩個(gè)兩個(gè)分周期,其中分周期,其中C1供供DMA控制器訪內(nèi),控制器訪內(nèi),C2專供專供CPU訪訪內(nèi)。這種傳送方式的時(shí)間圖如下:內(nèi)。這種傳送方式的時(shí)間圖如下: 特點(diǎn):特點(diǎn):這種方式不需要總線使用權(quán)的申請(qǐng)、建立和歸這種方式不需要總線使用權(quán)的申請(qǐng)、建立和歸還過(guò)程,總線使用權(quán)是通過(guò)還過(guò)程,總線使用權(quán)是通過(guò)C1和和C2分時(shí)進(jìn)行的。分時(shí)進(jìn)行的。 CPU和和DMA控制器各自有自己的訪內(nèi)地址寄存器、控制器各自有自己的訪內(nèi)地址寄存器、數(shù)據(jù)寄存器和讀數(shù)據(jù)寄存器和讀/寫(xiě)信號(hào)等控制寄存器。寫(xiě)信號(hào)等控制寄存器。 對(duì)于總
33、線,這是用對(duì)于總線,這是用C1,C2控制的一個(gè)多路轉(zhuǎn)換器,控制的一個(gè)多路轉(zhuǎn)換器,這種總線控制權(quán)的轉(zhuǎn)移幾乎不需要什么時(shí)間,所以對(duì)這種總線控制權(quán)的轉(zhuǎn)移幾乎不需要什么時(shí)間,所以對(duì)DMA傳送來(lái)講效率是很高的。傳送來(lái)講效率是很高的。5、DMA方式的硬件組成方式的硬件組成(Inter 8237) 地址總線數(shù)據(jù)總線控制總線I/O緩沖I/O緩沖I/O緩沖時(shí)序與控制邏輯優(yōu)先級(jí)仲裁邏輯命令控制邏輯A3-0A7-4DB7-0HLDAHRQDACK7-0DREQ7-0(至接口)8237DMA控制器結(jié)構(gòu)寄存器組與標(biāo)志觸發(fā)器(1)內(nèi)存地址計(jì)數(shù)器內(nèi)存地址計(jì)數(shù)器 用于存放內(nèi)存中要交換的數(shù)據(jù)的地址。在用于存放內(nèi)存中要交換的數(shù)據(jù)
34、的地址。在DMA傳送前,須通過(guò)程序?qū)?shù)據(jù)在內(nèi)存中的起始位置傳送前,須通過(guò)程序?qū)?shù)據(jù)在內(nèi)存中的起始位置(首首地址地址)送到內(nèi)存地址計(jì)數(shù)器。而當(dāng)送到內(nèi)存地址計(jì)數(shù)器。而當(dāng)DMA傳送時(shí),每交傳送時(shí),每交換一次數(shù)據(jù),將地址計(jì)數(shù)器加換一次數(shù)據(jù),將地址計(jì)數(shù)器加“1”,從而以增量方,從而以增量方式給出內(nèi)存中要交換的一批數(shù)據(jù)的地址式給出內(nèi)存中要交換的一批數(shù)據(jù)的地址。 (3)數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器 用于暫存每次傳送的數(shù)據(jù)用于暫存每次傳送的數(shù)據(jù)(一個(gè)字一個(gè)字)。當(dāng)輸入時(shí),由。當(dāng)輸入時(shí),由設(shè)備設(shè)備(如磁盤(pán)如磁盤(pán))送往數(shù)據(jù)緩沖寄存器,再由緩沖寄存器送往數(shù)據(jù)緩沖寄存器,再由緩沖寄存器通過(guò)數(shù)據(jù)總線送到內(nèi)存。反之,輸出
35、時(shí),由內(nèi)存通過(guò)通過(guò)數(shù)據(jù)總線送到內(nèi)存。反之,輸出時(shí),由內(nèi)存通過(guò)數(shù)據(jù)總線送到數(shù)據(jù)緩沖寄存器,然后再送到設(shè)備。數(shù)據(jù)總線送到數(shù)據(jù)緩沖寄存器,然后再送到設(shè)備。 (2)字計(jì)數(shù)器字計(jì)數(shù)器 用于記錄傳送數(shù)據(jù)塊的長(zhǎng)度用于記錄傳送數(shù)據(jù)塊的長(zhǎng)度(多少字?jǐn)?shù)多少字?jǐn)?shù))。其。其內(nèi)容也是在數(shù)據(jù)傳送之前由程序預(yù)置,交換的字內(nèi)容也是在數(shù)據(jù)傳送之前由程序預(yù)置,交換的字?jǐn)?shù)通常以補(bǔ)碼形式表示。在數(shù)通常以補(bǔ)碼形式表示。在DMA傳送時(shí),每傳傳送時(shí),每傳送一個(gè)字,字計(jì)數(shù)器就加送一個(gè)字,字計(jì)數(shù)器就加“1” ,當(dāng)計(jì)數(shù)器溢出,當(dāng)計(jì)數(shù)器溢出即最高位產(chǎn)生進(jìn)位時(shí),表示這批數(shù)據(jù)傳送完畢,即最高位產(chǎn)生進(jìn)位時(shí),表示這批數(shù)據(jù)傳送完畢,于是引起于是引起DMA控
36、制器向控制器向CPU發(fā)中斷信號(hào)。發(fā)中斷信號(hào)。(4)“DMA請(qǐng)求請(qǐng)求”標(biāo)志標(biāo)志 每當(dāng)設(shè)備準(zhǔn)備好一個(gè)數(shù)據(jù)字后給出一個(gè)控制信每當(dāng)設(shè)備準(zhǔn)備好一個(gè)數(shù)據(jù)字后給出一個(gè)控制信號(hào),使號(hào),使“DMA請(qǐng)求請(qǐng)求” 標(biāo)志置標(biāo)志置“1”。該標(biāo)志置位后。該標(biāo)志置位后向向“控制控制/狀態(tài)狀態(tài)”邏輯發(fā)出邏輯發(fā)出DMA請(qǐng)求,后者又向請(qǐng)求,后者又向CPU發(fā)出總線使用權(quán)的請(qǐng)求發(fā)出總線使用權(quán)的請(qǐng)求(HOLD),CPU響應(yīng)此響應(yīng)此請(qǐng)求后發(fā)回響應(yīng)信號(hào)請(qǐng)求后發(fā)回響應(yīng)信號(hào)HLDA,“控制控制/狀態(tài)狀態(tài)”邏輯接邏輯接收此信號(hào)后發(fā)出收此信號(hào)后發(fā)出DMA響應(yīng)信號(hào),使響應(yīng)信號(hào),使“DMA請(qǐng)求請(qǐng)求”標(biāo)志復(fù)位,為交換下一個(gè)字做好準(zhǔn)備。標(biāo)志復(fù)位,為交換下一
37、個(gè)字做好準(zhǔn)備。 (5)“控制控制/狀態(tài)狀態(tài)”邏輯邏輯 由控制和時(shí)序電路以及狀態(tài)標(biāo)志等組成,用于修由控制和時(shí)序電路以及狀態(tài)標(biāo)志等組成,用于修改內(nèi)存地址計(jì)數(shù)器和字計(jì)數(shù)器,指定傳送類(lèi)型改內(nèi)存地址計(jì)數(shù)器和字計(jì)數(shù)器,指定傳送類(lèi)型(輸入輸入或輸出或輸出),并對(duì),并對(duì)“DMA請(qǐng)求請(qǐng)求”信號(hào)和信號(hào)和CPU響應(yīng)信號(hào)響應(yīng)信號(hào)進(jìn)行協(xié)調(diào)和同步。進(jìn)行協(xié)調(diào)和同步。 (6)中斷機(jī)構(gòu)中斷機(jī)構(gòu) 當(dāng)字計(jì)數(shù)器溢出時(shí)當(dāng)字計(jì)數(shù)器溢出時(shí)(全全0),意味著一組數(shù)據(jù)交換,意味著一組數(shù)據(jù)交換完畢,由溢出信號(hào)觸發(fā)中斷機(jī)構(gòu),向完畢,由溢出信號(hào)觸發(fā)中斷機(jī)構(gòu),向CPU提出中斷提出中斷報(bào)告。這里的中斷與上一節(jié)介紹的報(bào)告。這里的中斷與上一節(jié)介紹的I/O中
38、斷所采用中斷所采用的技術(shù)相同,但中斷的目的不同,前面是為了數(shù)據(jù)的技術(shù)相同,但中斷的目的不同,前面是為了數(shù)據(jù)的輸入或輸出,而這里是為了報(bào)告一組數(shù)據(jù)傳送結(jié)的輸入或輸出,而這里是為了報(bào)告一組數(shù)據(jù)傳送結(jié)束。因此它們是束。因此它們是I/O系統(tǒng)中不同的中斷事件系統(tǒng)中不同的中斷事件。6、DMA數(shù)據(jù)傳送過(guò)程數(shù)據(jù)傳送過(guò)程 可分為三個(gè)階段: 傳送前預(yù)處理傳送前預(yù)處理 正式傳送正式傳送 傳送后處理傳送后處理。 預(yù)處理預(yù)處理 由由CPU執(zhí)行幾條輸入輸出指令,測(cè)試設(shè)備狀態(tài),執(zhí)行幾條輸入輸出指令,測(cè)試設(shè)備狀態(tài),向向DMA控制器的設(shè)備地址寄存器中送入設(shè)備號(hào)并控制器的設(shè)備地址寄存器中送入設(shè)備號(hào)并啟動(dòng)設(shè)備,向內(nèi)存地址計(jì)數(shù)器中送
39、入起始地址,向啟動(dòng)設(shè)備,向內(nèi)存地址計(jì)數(shù)器中送入起始地址,向字計(jì)數(shù)器中送入交換的數(shù)據(jù)字個(gè)數(shù)。在這些工作完字計(jì)數(shù)器中送入交換的數(shù)據(jù)字個(gè)數(shù)。在這些工作完成后,成后,CPU繼續(xù)執(zhí)行原來(lái)的主程序繼續(xù)執(zhí)行原來(lái)的主程序。正式傳送正式傳送 當(dāng)外設(shè)準(zhǔn)備好發(fā)送數(shù)據(jù)當(dāng)外設(shè)準(zhǔn)備好發(fā)送數(shù)據(jù)(輸入輸入)或接受數(shù)據(jù)或接受數(shù)據(jù)(輸輸出出)時(shí),它發(fā)出時(shí),它發(fā)出DMA請(qǐng)求,由請(qǐng)求,由DMA控制器向控制器向CPU發(fā)出總線使用權(quán)的請(qǐng)求發(fā)出總線使用權(quán)的請(qǐng)求(HOLD)。下圖示出了停。下圖示出了停止止CPU訪內(nèi)方式的訪內(nèi)方式的DMA傳送數(shù)據(jù)的流程圖。傳送數(shù)據(jù)的流程圖。 后處理后處理 一旦一旦DMA的中斷請(qǐng)求得到響應(yīng),的中斷請(qǐng)求得到響應(yīng),
40、CPU停止主停止主程序的執(zhí)行,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序做一些程序的執(zhí)行,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序做一些DMA的結(jié)束處理工作。這些工作包括校驗(yàn)送入內(nèi)存的的結(jié)束處理工作。這些工作包括校驗(yàn)送入內(nèi)存的數(shù)據(jù)是否正確;決定繼續(xù)用數(shù)據(jù)是否正確;決定繼續(xù)用DMA方式傳送下去,方式傳送下去,還是結(jié)束傳送;測(cè)試在傳送過(guò)程中是否發(fā)生了錯(cuò)還是結(jié)束傳送;測(cè)試在傳送過(guò)程中是否發(fā)生了錯(cuò)誤等等。誤等等。二、二、DMA控制器與接口的連接方式控制器與接口的連接方式 DMA控制器定義為以下功能: 申請(qǐng)總線申請(qǐng)總線、 控制總線控制總線、 控制控制DMA傳送傳送 狹義DMA接口定義為以下功能: 與具體設(shè)備相適配與具體設(shè)備相適配 進(jìn)行數(shù)據(jù)傳送的
41、接口邏輯進(jìn)行數(shù)據(jù)傳送的接口邏輯 以上的控制器與接口組成以上的控制器與接口組成廣義的接口廣義的接口。CPU主存控制/狀態(tài)邏輯數(shù)據(jù)緩沖寄存器地址寄存器/計(jì)數(shù)器字寄存器中斷機(jī)構(gòu)設(shè)備選擇電路設(shè)備 系統(tǒng)總線總線請(qǐng)求總線批準(zhǔn)DMA控制器(接口)(單通道DMA控制器 )1、單通道、單通道DMA控制器控制器CPU主存控制/狀態(tài)邏輯數(shù)據(jù)緩沖寄存器地址寄存器/計(jì)數(shù)器字寄存器中斷機(jī)構(gòu)設(shè)備選擇電路 系統(tǒng)總線總線請(qǐng)求總線批準(zhǔn)DMA控制器(接口)I/OI/OI/O總線(選擇型DMA控制器)2、選擇型、選擇型DMA控制器控制器CPU主存總線請(qǐng)求總線批準(zhǔn)接口接口I/OI/ODREQ0DACK0DREQ3DACK3系統(tǒng)總線DM
42、A控制器(多路型DMA控制器)3、多路型、多路型DMA控制器控制器 現(xiàn)有磁盤(pán)、磁帶、打印機(jī)三個(gè)設(shè)備同時(shí)工作。 磁盤(pán)、磁帶、打印機(jī)分別以30s、 45s、 150s的間隔向控制器發(fā)DMA請(qǐng)求。 根據(jù)傳輸速率,磁盤(pán)優(yōu)先權(quán)最高,磁帶次之,打印機(jī)最低。 假設(shè)DMA控制器每完成一次DMA傳送所需的時(shí)間是5s。畫(huà)出多路型DMA控制器服務(wù)三個(gè)設(shè)備的工作時(shí)間圖。多路型多路型DMA控制器工作過(guò)程舉例:控制器工作過(guò)程舉例:T1間隔中控制器首先為打印機(jī)服務(wù)。間隔中控制器首先為打印機(jī)服務(wù)。T2間隔前沿首先為優(yōu)先權(quán)高的磁盤(pán)服務(wù),然后為磁帶服間隔前沿首先為優(yōu)先權(quán)高的磁盤(pán)服務(wù),然后為磁帶服務(wù),每次服務(wù)傳送一個(gè)字節(jié)。務(wù),每次
43、服務(wù)傳送一個(gè)字節(jié)。在在120s時(shí)間階段中,為打印機(jī)服務(wù)只有一次時(shí)間階段中,為打印機(jī)服務(wù)只有一次(T1),為磁,為磁盤(pán)服務(wù)四次盤(pán)服務(wù)四次(T2,T4,T6,T7),為磁帶服務(wù)三次,為磁帶服務(wù)三次(T3,T5,T8)。4、多個(gè)、多個(gè)DMA控制器的連接控制器的連接(1)級(jí)連方式)級(jí)連方式D DM MA A控控制制器器D DR RE EQ Q0 0D DA AC CK K0 0D DR RE EQ Q3 3D DA AC CK K3 3D DM MA A控控制制器器D DR RE EQ Q0 0D DA AC CK K0 0C CP PU UH HR RQ QH HL LD DA AD DM MA A控控制制器器D DM MA A控控制制器器D DM MA A控控制制器器C CP PU UH HL LD DA AH HR RQ Q(2)公共請(qǐng)求方式)公共請(qǐng)求方式D DM MA A控控制制器器D DM MA A控控制制器器C CP PU UH HL LD DA A0 0H HR RQ Q0 0D DM MA A控控制制器器H HL LD DA A1 1H HL LD DA An nH HR
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度籃球用品店場(chǎng)地租賃服務(wù)協(xié)議
- 中山酒店綠化景觀施工方案
- 紹興可移動(dòng)民宿施工方案
- 巫山木紋格柵吊頂施工方案
- 吊頂造型施工方案
- 推算施工方案
- 2025年度寵物冷鏈物流及運(yùn)輸合同標(biāo)準(zhǔn)版3篇
- 2025版圖書(shū)館定制圖書(shū)采購(gòu)及配送合同3篇
- 二零二五年度變壓器行業(yè)標(biāo)準(zhǔn)化體系建設(shè)合同范本3篇
- 二零二四年度影視廣告制作委托創(chuàng)作合同范文3篇
- 藝術(shù)哲學(xué):美是如何誕生的學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 北京海淀區(qū)2025屆高三下第一次模擬語(yǔ)文試題含解析
- 量子醫(yī)學(xué)治療學(xué)行業(yè)投資機(jī)會(huì)分析與策略研究報(bào)告
- 碳纖維增強(qiáng)復(fù)合材料在海洋工程中的應(yīng)用情況
- 多重耐藥菌病人的管理-(1)課件
- (高清版)TDT 1056-2019 縣級(jí)國(guó)土資源調(diào)查生產(chǎn)成本定額
- 環(huán)境監(jiān)測(cè)對(duì)環(huán)境保護(hù)的意義
- 2023年數(shù)學(xué)競(jìng)賽AMC8試卷(含答案)
- 神經(jīng)外科課件:神經(jīng)外科急重癥
- 2023年十天突破公務(wù)員面試
- 《瘋狂動(dòng)物城》中英文對(duì)照(全本臺(tái)詞)
評(píng)論
0/150
提交評(píng)論