版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、計(jì)算機(jī)組成原理武漢科技大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院第八章 輸入輸出系統(tǒng)本章內(nèi)容8.1 外圍設(shè)備的速度分級(jí)與信息交換方式8.2 程序查詢方式8.3 程序中斷方式8.4 DMA方式 8.5 通道方式8.6 通用I/O標(biāo)準(zhǔn)接口8.1 外圍設(shè)備的速度分級(jí)與信息交換方式8.1.1 外圍設(shè)備的速度分級(jí)1. 將高速工作的處理機(jī)同不同速度工作的外圍設(shè)備相連接需解決的問(wèn)題處理機(jī)與外圍設(shè)備在時(shí)間上的同步(定時(shí)問(wèn)題)2. 輸入/輸出設(shè)備同CPU交換數(shù)據(jù)的過(guò)程輸入過(guò)程: (1)CPU把一個(gè)地址值放在地址總線上,選擇某一輸入設(shè)備(2)CPU等候輸入設(shè)備的數(shù)據(jù)成為有效(3)CPU從數(shù)據(jù)總線讀入數(shù)據(jù),并存入一個(gè)相應(yīng)的寄存器輸出
2、過(guò)程: (1)CPU把一個(gè)地址值放在地址總線上,選擇一個(gè)輸出設(shè)備(2)CPU把數(shù)據(jù)放到數(shù)據(jù)總線上(3)輸出設(shè)備認(rèn)為數(shù)據(jù)有效,從而把數(shù)據(jù)取走數(shù)據(jù)何時(shí)有效是關(guān)鍵數(shù)據(jù)何時(shí)有效是關(guān)鍵目錄3. CPU與外圍設(shè)備之間的定時(shí)方式(1) 速度極慢或簡(jiǎn)單的外圍設(shè)備無(wú)條件輸入輸出(2) 慢速或中速的外圍設(shè)備異步定時(shí)(查詢輸入輸出、中斷)在CPU和外設(shè)間用問(wèn)答信號(hào)進(jìn)行定時(shí),故稱為應(yīng)答式數(shù)據(jù)交換(3) 高速的外圍設(shè)備同步定時(shí)、DMA輸入輸出外設(shè)以相等的時(shí)間間隔進(jìn)行操作,CPU也以等間隔的速率執(zhí)行輸入/輸出指令 ,故稱為同步定時(shí)方式;一旦CPU和外設(shè)發(fā)生同步,它們之間的數(shù)據(jù)交換便靠時(shí)鐘脈沖來(lái)控制直接內(nèi)存訪問(wèn)(DMA)方
3、式是更快的同步傳送CPU接收一批數(shù)據(jù)字的流程圖定時(shí)方式啟動(dòng)就緒?傳送一個(gè)字CPU發(fā)響應(yīng)信號(hào)復(fù)位就緒結(jié)束NNYY傳送完?4. I/O對(duì)系統(tǒng)性能的影響【例1】假設(shè)有一個(gè)運(yùn)行時(shí)間為100秒的基準(zhǔn)程序,其中90秒是CPU時(shí)間,剩下的是I/O占用的時(shí)間。如果在以后的5年里,CPU的速度每年提高50%但I(xiàn)/O時(shí)間保持不變,那么5年后運(yùn)行程序要耗費(fèi)多少時(shí)間? I/O時(shí)間所占的比例是多少?解:耗費(fèi)的時(shí)間=CPU時(shí)間+ I/O時(shí)間目前, I/O時(shí)間=100-90=10秒今后五年內(nèi)CPU時(shí)間、I/O時(shí)間及其所占比例如下表:第n年后CPU時(shí)間I/O時(shí)間耗費(fèi)總時(shí)間I/O時(shí)間所占比例09010秒100秒10%190/1
4、.5=60秒10秒70秒14%260/1.5=40秒10秒50秒20%340/1.5=27秒10秒37秒27%427/1.5=18秒10秒28秒36%518/1.5=12秒10秒22秒45%8.1.2信息交換方式CPU管理外圍設(shè)備的方式分為4種1. 程序查詢方式 優(yōu)點(diǎn):硬件結(jié)構(gòu)簡(jiǎn)單缺點(diǎn):CPU效率低,即使是輪詢2. 程序中斷方式 優(yōu)點(diǎn):節(jié)省了CPU的時(shí)間,適用于隨機(jī)出現(xiàn)的、實(shí)時(shí)性的服務(wù)缺點(diǎn):硬件結(jié)構(gòu)比程序查詢方式復(fù)雜一些,服務(wù)開銷時(shí)間較大3. 直接內(nèi)存訪問(wèn)(DMA)方式DMA控制器接管對(duì)總線的控制,數(shù)據(jù)交換不經(jīng)過(guò)CPU,直接在內(nèi)存和外圍設(shè)備之間,以高速進(jìn)行數(shù)據(jù)傳送優(yōu)點(diǎn):數(shù)據(jù)傳送速度很高,僅受到
5、內(nèi)存訪問(wèn)時(shí)間的限制缺點(diǎn):與中斷方式相比,需要更多的硬件適用于內(nèi)存和高速外圍設(shè)備之間大批數(shù)據(jù)交換的場(chǎng)合4. 通道方式 通道一個(gè)具有特殊功能的處理器,也稱輸入輸出處理器(IOP),可以實(shí)現(xiàn)對(duì)外圍設(shè)備的統(tǒng)一管理和外圍設(shè)備與內(nèi)存之間的數(shù)據(jù)傳送大大提高了CPU的工作效率,但以花費(fèi)更多硬件為代價(jià)輸入/輸出控制方式主要由程序?qū)崿F(xiàn)程序查詢方式程序中斷方式DMA方式通道方式外圍設(shè)備的輸入/輸出控制方式主要由硬件實(shí)現(xiàn)8.2 程序查詢方式(程序控制I/O方式)(2)從I/O接口讀入狀態(tài)字(3)檢查狀態(tài)字中的標(biāo)志,判斷可否進(jìn)行數(shù)據(jù)交換(4)若該設(shè)備沒有準(zhǔn)備就緒,重復(fù)(2)、(3),直至其準(zhǔn)備好(5)從接口的數(shù)據(jù)緩沖器
6、讀取輸入的數(shù)據(jù)或?qū)?shù)據(jù)輸出至接口的數(shù)據(jù)緩沖器;并將狀態(tài)標(biāo)志復(fù)位目錄(1)CPU向I/O設(shè)備發(fā)出命令字,請(qǐng)求進(jìn)行數(shù)據(jù)傳送1、設(shè)備編址統(tǒng)一編址獨(dú)立編址2、輸入輸出指令具有的3個(gè)基本功能3、程序查詢方式的接口設(shè)備選擇電路數(shù)據(jù)緩沖寄存器設(shè)備狀態(tài)標(biāo)志4、程序查詢輸入/輸出方式程序執(zhí)行的動(dòng)作查詢方式傳送一批數(shù)據(jù)的流程圖程序查詢(輪詢)流程圖用查詢方式傳送一批數(shù)據(jù)的程序流程圖設(shè)置計(jì)數(shù)值設(shè)置內(nèi)存緩沖區(qū)首址啟動(dòng)外設(shè)傳送一個(gè)數(shù)據(jù)修改內(nèi)存地址結(jié)束I/O傳送修改計(jì)數(shù)器準(zhǔn)備好?傳送完?否是是否程序查詢I/O設(shè)備流程圖設(shè)備服務(wù)程序的功能:(1) 實(shí)現(xiàn)數(shù)據(jù)傳送輸入/輸出(2)修改內(nèi)存地址,為下一次數(shù)據(jù)傳送做準(zhǔn)備(3)修改傳
7、送字節(jié)數(shù),以便修改傳送長(zhǎng)度(4)進(jìn)行狀態(tài)分析或其他控制功能8.3 程序中斷方式8.3.1 中斷的基本概念1. 中斷的概念特點(diǎn):CPU和外圍設(shè)備的一些操作并行地進(jìn)行,效率高2. 中斷處理過(guò)程流程圖目錄主程序A請(qǐng)求中斷B請(qǐng)求中斷C請(qǐng)求中斷主程序A中斷服務(wù)子程序B中斷服務(wù)子程序C中斷服務(wù)子程序中斷處理示意圖中斷處理過(guò)程流程圖說(shuō)明:(1) 受理中斷請(qǐng)求的時(shí)刻(2) 保存現(xiàn)場(chǎng)(3) 響應(yīng)中斷時(shí)對(duì)中斷屏蔽觸發(fā)器的設(shè)置;允許中斷嵌套時(shí)的處理方法(4) 中斷處理過(guò)程由硬件和軟件結(jié)合來(lái)完成中斷周期(硬件)中斷服務(wù)子程序(軟件)控制8.3.2 程序中斷方式的基本I/O接口IMIR公用寄存器0 1BSEI數(shù)據(jù)緩沖寄
8、存器中斷向量邏輯設(shè)備選擇PCIR動(dòng)作開始動(dòng)作結(jié)束傳送數(shù)據(jù)動(dòng)作開始數(shù)據(jù)緩沖寄存器傳送數(shù)據(jù)12345動(dòng)作結(jié)束67PCIR8公用寄存器109接口設(shè)備CPU0 1RD輸入數(shù)據(jù)的控制過(guò)程程序中斷方式基本接口示意圖準(zhǔn)備就緒的標(biāo)志(RD) 中斷觸發(fā)器允許中斷觸發(fā)器(EI) 中斷請(qǐng)求觸發(fā)器(IR)中斷屏蔽觸發(fā)器(IM)控制1.單級(jí)中斷的概念所有中斷源都屬同一級(jí),通過(guò)一條線發(fā)中斷申請(qǐng),離CPU近的優(yōu)先權(quán)高;不允許嵌套;以鏈?zhǔn)讲樵兎绞阶R(shí)別中斷源8.3.3單級(jí)中斷2.單級(jí)中斷源的識(shí)別采用串行排隊(duì)鏈法INTO001010001011001000數(shù)據(jù)總線編碼器INTAINTIIR1IS1IR2IS2IR3IS31234
9、56IR1IR2IR3中斷優(yōu)先級(jí)排隊(duì)鏈中斷向量產(chǎn)生邏輯3.中斷向量的產(chǎn)生向量地址由一串布爾量序列表示的存儲(chǔ)器的地址碼向量中斷:CPU識(shí)別出某中斷源時(shí),由硬件直接產(chǎn)生一個(gè)與該中斷源對(duì)應(yīng)的向量地址,指出中斷源設(shè)備的中斷服務(wù)程序入口有些計(jì)算機(jī)中的向量地址不是直接地址,而是個(gè)“位移量”還有些采用向量地址轉(zhuǎn)移的方法1.多級(jí)中斷的概念根據(jù)各中斷事件的輕重緩急程度不同將中斷源分為若干級(jí)別,每一中斷級(jí)分配一個(gè)優(yōu)先權(quán);優(yōu)先權(quán)高的中斷級(jí)可打斷優(yōu)先權(quán)低的中斷服務(wù)程序,以程序嵌套方式工作8.3.4 多級(jí)中斷主程序一級(jí)中斷服務(wù)程序二級(jí)中斷服務(wù)程序三級(jí)中斷服務(wù)程序多級(jí)中斷示意圖根據(jù)系統(tǒng)的配置不同分類:一維多級(jí)中斷、二維多
10、級(jí)中斷設(shè)備A設(shè)備D一維多級(jí)中斷結(jié)構(gòu)設(shè)備G(1)中斷請(qǐng)求寄存器、中斷屏蔽寄存器在多級(jí)中斷中的作用(2)不同級(jí)的中斷源間可實(shí)現(xiàn)嵌套,但同一級(jí)內(nèi)一般不允許嵌套(3)多級(jí)中斷系統(tǒng)由硬件邏輯識(shí)別中斷源;在二維中斷結(jié)構(gòu)中,先用中斷優(yōu)先級(jí)排隊(duì)電路確定優(yōu)先響應(yīng)的中斷級(jí),再通過(guò)鏈?zhǔn)讲樵兊挠布壿嫶_定具體的中斷源采用了獨(dú)立請(qǐng)求方式與鏈?zhǔn)讲樵兎绞较嘟Y(jié)合的方法決定首先響應(yīng)哪個(gè)中斷源(4) 和單級(jí)中斷類似,多級(jí)中斷中也使用堆棧保存現(xiàn)場(chǎng)信息使用堆棧保存現(xiàn)場(chǎng)的好處控制邏輯簡(jiǎn)單,先進(jìn)后出原則;不需單獨(dú)設(shè)置現(xiàn)場(chǎng)保護(hù)區(qū)關(guān)于多級(jí)中斷的說(shuō)明2.多級(jí)中斷源的識(shí)別一維的多級(jí)中斷請(qǐng)求采用獨(dú)立請(qǐng)求方式的邏輯結(jié)構(gòu)中斷源識(shí)別的過(guò)程在二維多級(jí)中斷
11、中,還要進(jìn)一步用串行鏈?zhǔn)椒绞讲樵儾捎枚S方式設(shè)計(jì)中斷排隊(duì)邏輯【例2】二維中斷系統(tǒng)如圖,請(qǐng)問(wèn): (1)在中斷情況下,CPU和設(shè)備的優(yōu)先級(jí)如何考慮?請(qǐng)按降序排列各設(shè)備的中斷優(yōu)先級(jí)(2)若CPU現(xiàn)執(zhí)行設(shè)備B的中斷服務(wù)程序,IM2,IM1,IM0的狀態(tài)是什么?如果CPU執(zhí)行設(shè)備D的中斷服務(wù)程序,IM2,IM1,IM0的狀態(tài)又是什么? (3)每一級(jí)的IM能否對(duì)某個(gè)優(yōu)先級(jí)的個(gè)別設(shè)備單獨(dú)進(jìn)行屏蔽?如果不能,采取什么辦法可達(dá)到目的?(4)假如設(shè)備C一提出中斷請(qǐng)求,CPU立即進(jìn)行響應(yīng),如何調(diào)整才能滿足此要求? 【解】(1)在中斷情況下,CPU的優(yōu)先級(jí)最低;各設(shè)備的優(yōu)先次序是:ABCDEFGHICPU(2)執(zhí)行設(shè)
12、備B的中斷服務(wù)程序時(shí)IM2IM1IM0=111 執(zhí)行設(shè)備D的中斷服務(wù)程序時(shí),IM2IM1IM0 =011(3)每一級(jí)的IM標(biāo)志不能對(duì)某個(gè)優(yōu)先級(jí)的個(gè)別設(shè)備進(jìn)行單獨(dú)屏蔽??蓪⒔涌谥械腅I(中斷允許)標(biāo)志清“0”,禁止設(shè)備發(fā)出中斷請(qǐng)求(4)要使設(shè)備C的中斷請(qǐng)求及時(shí)得到響應(yīng),可將設(shè)備C從第2級(jí)取出來(lái),單獨(dú)放在第3級(jí)上,使第3級(jí)的優(yōu)先級(jí)最高,即令I(lǐng)M3=0即可?仍然采用3級(jí)中斷,只是把C提到A的前面(最靠近CPU),是否滿足要求【例3】參見例2所示的系統(tǒng),只考慮A,B,C三個(gè)設(shè)備組成的單級(jí)中斷結(jié)構(gòu),要求CPU在執(zhí)行完當(dāng)前指令時(shí)對(duì)中斷請(qǐng)求進(jìn)行服務(wù)。設(shè):(1)CPU“中斷批準(zhǔn)”機(jī)構(gòu)在響應(yīng)一個(gè)新的中斷之前,先
13、要讓被中斷程序的一條指令一定要執(zhí)行完畢;(2)TDC為查詢鏈中每個(gè)設(shè)備的延遲時(shí)間;(3)TA,TB,TC分別為設(shè)備A,B,C的服務(wù)程序所需的執(zhí)行時(shí)間; (4)TS,TR為保存現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)所需的時(shí)間;(5)主存工作周期為TM。 試問(wèn):就這個(gè)中斷請(qǐng)求環(huán)境來(lái)說(shuō),系統(tǒng)在什么情況下達(dá)到中斷飽和?【解】參閱中斷處理流程8.5,并假設(shè)執(zhí)行一條指令的時(shí)間也為TM。如果三個(gè)設(shè)備同時(shí)發(fā)出中斷請(qǐng)求,那么依次分別處理設(shè)備A、設(shè)備B、設(shè)備C的時(shí)間如下:tA = 2TM + TDC + TS + TA + TRtB = 2TM + 2TDC + TS + TB + TRtC = 2TM + 3TDC + TS + TC
14、 + TR處理三個(gè)設(shè)備所需的總時(shí)間為:T=tA+tB+tCT是達(dá)到中斷飽和的最小時(shí)間,即中斷極限頻率為:f=1/T其中2TM是取出指令并執(zhí)行指令的時(shí)間將中斷接口與優(yōu)先級(jí)判斷等功能集于一身8.3.5 中斷控制器(8259)8259的中斷優(yōu)先級(jí)的選擇方式(1)完全嵌套方式固定優(yōu)先級(jí)方式,IR0的優(yōu)先級(jí)最高,IR7的最低(2)輪換優(yōu)先級(jí)方式A:優(yōu)先級(jí)自動(dòng)輪換(3) 輪換優(yōu)先級(jí)方式B:指定輪換方式(4)查詢方式:由CPU查詢8259的中斷狀態(tài)寄存器8259提供的屏蔽方式(1)簡(jiǎn)單屏蔽方式:提供8位屏蔽字(2)特殊屏蔽方式允許來(lái)自低優(yōu)先級(jí)的外設(shè)中斷請(qǐng)求去中斷高優(yōu)先級(jí)的服務(wù)程序1.中斷類型中斷 通常稱為外
15、部中斷,由CPU的外部硬件信號(hào)引發(fā);分為:(1)可屏蔽中斷:INTR引腳、IF標(biāo)志(2)非屏蔽中斷:NMI引腳;不能被禁止 異常 通常稱為異常中斷,由指令執(zhí)行引發(fā)的;分為:(1)執(zhí)行異常:CPU執(zhí)行一條指令過(guò)程中出現(xiàn)錯(cuò)誤、故障等引發(fā)(2)執(zhí)行軟件中斷指令:執(zhí)行INT n指令異常中斷的優(yōu)先級(jí)高于外部中斷Pentium共有256種中斷和異常;中斷向量號(hào)(0-255)CPU識(shí)別中斷類型取得中斷向量號(hào)的途徑:(1)外部提供:INTR和NMI的中斷向量號(hào)的獲取方法(2)CPU識(shí)別錯(cuò)誤、故障現(xiàn)象,自動(dòng)指定向量號(hào)(3)指令給出,如軟件中斷指令I(lǐng)NT n8.3.6Pentium中斷機(jī)制2.中斷服務(wù)子程序進(jìn)入過(guò)
16、程中斷向量號(hào)檢索表實(shí)模式為中斷向量表IVT;保護(hù)模式為中斷描述符表IDTCPU由中斷類型號(hào)獲取中斷服務(wù)子程序入口地址的方法(1)實(shí)模式下使用中斷向量表(2)保護(hù)模式下使用中斷描述符表保護(hù)模式下使用中斷描述符表 保護(hù)模式為32位尋址。中斷描述符表IDT每一表項(xiàng)對(duì)應(yīng)一個(gè)中斷向量號(hào),表項(xiàng)稱為中斷門描述符、陷阱門描述符。這些門描述符為8字節(jié)長(zhǎng),對(duì)應(yīng)256個(gè)中斷向量號(hào),IDT表長(zhǎng)為2KB。由中斷描述符表寄存器IDTR來(lái)指示IDT的內(nèi)存地址以中斷向量號(hào)乘以8作為訪問(wèn)IDT的偏移,讀取相應(yīng)的中斷門/陷阱門描述符表項(xiàng)。門描述符 給出中斷服務(wù)子程序入口地址(段,偏移),其中32位偏移量裝入EIP寄存器,16位的
17、段值裝 入CS寄存器。由于此段值是選擇符,還必須訪問(wèn)GDT或LDT,才得到段的基地址3.中斷處理過(guò)程(1)當(dāng)中斷處理的CPU控制權(quán)轉(zhuǎn)移涉及到特權(quán)級(jí)改變時(shí),必須把當(dāng)前的SS和ESP的內(nèi)容壓入系統(tǒng)堆棧予以保存(2)標(biāo)志寄存器EFLAGS的內(nèi)容也壓入堆棧(3)清除標(biāo)志觸發(fā)器TF和IF(4)當(dāng)前的代碼段寄存器CS和指令指針EIP也壓入此堆棧(5)如果中斷發(fā)生伴隨有錯(cuò)誤碼,則錯(cuò)誤碼也壓入此堆棧(6)完成上述中斷現(xiàn)場(chǎng)保護(hù)后,獲取的中斷服務(wù)子程序入口地址(段,偏移)分別裝入CS和EIP,開始執(zhí)行中斷服務(wù)子程序(7)中斷服務(wù)子程序最后的IRET指令使中斷返回;保存在堆棧中的中斷現(xiàn)場(chǎng)信息被恢復(fù),并由中斷點(diǎn)繼續(xù)執(zhí)
18、行原程序8.4 DMA (Direct Memory Access)方式8.4.1 DMA的基本概念 1. 特點(diǎn):完全由硬件執(zhí)行的I/O交換;DMA控制器從CPU完全接管對(duì)總線的控制;數(shù)據(jù)交換不經(jīng)過(guò)CPU;DMA方式一般用于高速傳送成組數(shù)據(jù)2. 主要優(yōu)點(diǎn):速度快且有利于CPU效率的發(fā)揮3. DMA的基本操作(1) 外圍設(shè)備發(fā)出DMA請(qǐng)求 (2)CPU響應(yīng)請(qǐng)求,改成DMA操作方式,DMA控制器接管總線(3)由DMA控制器對(duì)內(nèi)存尋址、數(shù)據(jù)傳送個(gè)數(shù)的計(jì)數(shù),并執(zhí)行數(shù)據(jù)傳送的操作 (4)向CPU報(bào)告DMA操作的結(jié)束目錄注:傳送前預(yù)處理和傳送后處理均由管理程序承擔(dān)DMA控制器與CPU分時(shí)使用內(nèi)存的三種方法
19、:1.停止CPU訪問(wèn)內(nèi)存DMA傳送過(guò)程中,CPU基本處于不工作或者說(shuō)保持狀態(tài)8.4.2 DMA傳送方式優(yōu)點(diǎn):控制簡(jiǎn)單,適用于數(shù)據(jù)傳輸率很高的設(shè)備進(jìn)行成組傳送缺點(diǎn):在DMA控制器訪內(nèi)階段,內(nèi)存的效能沒有充分發(fā)揮內(nèi)存工作時(shí)間CPU控制并使用內(nèi)存停止CPU訪問(wèn)內(nèi)存CPU不工作DMA工作DMA控制并使用內(nèi)存DMA不工作DMA不工作t2.周期挪用I/O設(shè)備有DMA請(qǐng)求時(shí),可挪用一個(gè)或幾個(gè)內(nèi)存周期 I/O設(shè)備要求DMA傳送時(shí)可能遇到的兩種情況:(1) I/O訪內(nèi)與CPU訪內(nèi)沒有沖突,即I/O設(shè)備挪用一二個(gè)內(nèi)存周期對(duì)CPU執(zhí)行程序沒有任何影響(2) I/O設(shè)備與CPU產(chǎn)生訪內(nèi)沖突,此時(shí)I/O設(shè)備訪內(nèi)優(yōu)先在C
20、PU執(zhí)行訪內(nèi)指令過(guò)程中插入DMA請(qǐng)求,挪用一二個(gè)內(nèi)存周期DMA控制并使用內(nèi)存內(nèi)存工作時(shí)間CPU控制并使用內(nèi)存CPU周期挪用方式t優(yōu)點(diǎn):實(shí)現(xiàn)了I/O傳送,又較好地發(fā)揮了內(nèi)存和CPU的效率缺點(diǎn):I/O設(shè)備每次周期挪用都有申請(qǐng)、建立和歸還總線控制權(quán)的過(guò)程,所以傳送一個(gè)字對(duì)DMA控制器來(lái)說(shuō)一般要25個(gè)內(nèi)存周期應(yīng)用:適用于I/O設(shè)備讀寫周期大于內(nèi)存存儲(chǔ)周期的情況3.DMA與CPU交替訪內(nèi)(透明的DMA方式)適用于CPU的工作周期比內(nèi)存存取周期長(zhǎng)很多的情況內(nèi)存工作時(shí)間DMA控制并使用內(nèi)存CPU控制并使用內(nèi)存DMA與CPU交替訪內(nèi)C1C1C2C2t特點(diǎn):對(duì)DMA傳送來(lái)講效率很高;DMA傳送對(duì)CPU來(lái)講是透明
21、的;對(duì)總線而言,相當(dāng)于用C1,C2控制的多路轉(zhuǎn)換器;但要求CPU周期比存儲(chǔ)周期長(zhǎng)很多,且硬件邏輯更加復(fù)雜一個(gè)CPU周期分為C1和C2兩個(gè)分周期1.DMA控制器的基本組成DMA控制器的基本邏輯結(jié)構(gòu) (1)內(nèi)存地址計(jì)數(shù)器存放內(nèi)存中要交換的數(shù)據(jù)的地址(2)字計(jì)數(shù)器記錄傳送數(shù)據(jù)塊的長(zhǎng)度(多少字?jǐn)?shù))(3)數(shù)據(jù)緩沖寄存器暫存每次傳送的數(shù)據(jù)(一個(gè)字)(4)“DMA請(qǐng)求”標(biāo)志設(shè)備準(zhǔn)備好一個(gè)數(shù)據(jù)字后使該標(biāo)志置“1”,通過(guò)“控制/狀態(tài)”邏輯發(fā)出DMA請(qǐng)求;得到CPU的響應(yīng)信號(hào)時(shí),將其復(fù)位(5)“控制/狀態(tài)”邏輯由控制和時(shí)序電路以及狀態(tài)標(biāo)志等組成,用于修改內(nèi)存地址計(jì)數(shù)器和字計(jì)數(shù)器,指定傳送類型(輸入或輸出),并對(duì)“
22、DMA請(qǐng)求”信號(hào)和CPU響應(yīng)信號(hào)進(jìn)行協(xié)調(diào)和同步(6)中斷機(jī)構(gòu)字計(jì)數(shù)器溢出時(shí)(全0),向CPU提出中斷報(bào)告8.4.3基本的DMA控制器DMA控制器的基本組成內(nèi)存CPU中斷機(jī)構(gòu)控制/狀態(tài)邏輯DMA請(qǐng)求標(biāo)志內(nèi)存地址計(jì)數(shù)器字計(jì)數(shù)器數(shù)據(jù)緩沖寄存器設(shè)備選擇設(shè)備HOLDHLDADMA請(qǐng)求DMA響應(yīng)1011地址線數(shù)據(jù)線中斷請(qǐng)求系統(tǒng)總線數(shù)據(jù)溢出信號(hào)2.DMA數(shù)據(jù)傳送過(guò)程(1) 傳送前預(yù)處理:由CPU執(zhí)行輸入輸出指令完成測(cè)試設(shè)備狀態(tài);送入設(shè)備號(hào)并啟動(dòng)設(shè)備;裝入內(nèi)存首地址、數(shù)據(jù)塊長(zhǎng)度、指定數(shù)據(jù)傳送方向(2) 正式傳送:以停止CPU訪內(nèi)方式為例DMA傳送數(shù)據(jù)的流程圖請(qǐng)求、響應(yīng)和傳送過(guò)程(3) 傳送后處理由CPU進(jìn)行一
23、些DMA的結(jié)束處理工作基本DMA控制器與系統(tǒng)的連接方式:(1) 公用的DMA請(qǐng)求方式(2) 獨(dú)立的DMA請(qǐng)求方式DMA數(shù)據(jù)傳送過(guò)程執(zhí)行指令DMA響應(yīng)發(fā)送內(nèi)存地址傳送一個(gè)字?jǐn)?shù)據(jù)DMA結(jié)束修改地址指針傳送結(jié)束否?否是DMA請(qǐng)求?取指令否是修改字計(jì)數(shù)器硬件實(shí)現(xiàn)1. 選擇型DMA控制器物理上可連接多個(gè)設(shè)備,而邏輯上只允許連接一個(gè)設(shè)備內(nèi)部結(jié)構(gòu):在簡(jiǎn)單DMA控制器基礎(chǔ)上增加一個(gè)設(shè)備號(hào)寄存器工作原理從預(yù)置直到數(shù)據(jù)塊傳送結(jié)束,只為所選設(shè)備服務(wù);數(shù)據(jù)傳送以數(shù)據(jù)塊為單位進(jìn)行適用場(chǎng)合:數(shù)據(jù)傳輸率很高以至接近內(nèi)存存取速度的設(shè)備2. 多路型DMA控制器在邏輯上也允許多個(gè)外圍設(shè)備同時(shí)工作,各設(shè)備以字節(jié)交叉方式通過(guò)DMA控
24、制器進(jìn)行數(shù)據(jù)傳送內(nèi)部結(jié)構(gòu)、操作過(guò)程適用場(chǎng)合:適合于同時(shí)為多個(gè)慢速外圍設(shè)備服務(wù)多路型DMA分為鏈?zhǔn)蕉嗦沸秃酮?dú)立請(qǐng)求多路型DMA8.4.4 選擇型和多路型DMA控制器內(nèi)存CPU字計(jì)數(shù)器內(nèi)存地址數(shù)據(jù)緩沖器狀態(tài)/控制設(shè)備號(hào)時(shí)序電路設(shè)備1設(shè)備2設(shè)備n選擇型DMA控制器系統(tǒng)總線選擇型DMA控制器一種多路DMA控制器芯片8個(gè)內(nèi)存地址寄存器(16位)多路型DMA控制器內(nèi)存CPUDMA控制器設(shè)備設(shè)備內(nèi)存CPUDMA控制器設(shè)備設(shè)備鏈?zhǔn)蕉嗦沸虳MA獨(dú)立請(qǐng)求多路型DMA某個(gè)外圍設(shè)備請(qǐng)求DMA服務(wù)時(shí)的操作過(guò)程(1)DMA控制器接到設(shè)備發(fā)出的DMA請(qǐng)求時(shí),轉(zhuǎn)送給CPU (2)CPU在適當(dāng)時(shí)刻響應(yīng)DMA請(qǐng)求若CPU不需要占
25、用總線則繼續(xù)執(zhí)行指令;需要占用 總線,則進(jìn)入等待狀態(tài)(3)DMA控制器接到CPU的響應(yīng)信號(hào)后,進(jìn)行以下工作:對(duì)現(xiàn)有DMA請(qǐng)求中優(yōu)先權(quán)最高的請(qǐng)求 給予DMA響應(yīng);選擇相應(yīng)的地址寄存器的內(nèi)容驅(qū)動(dòng)地址總線;根據(jù)所選設(shè)備操作寄存器的內(nèi)容,向總線發(fā)讀、寫信號(hào);外圍設(shè)備向數(shù)據(jù)總線傳送數(shù)據(jù),或從數(shù)據(jù)總線接收數(shù)據(jù); 每個(gè)字節(jié)傳送完畢后,DMA控制器使相應(yīng)的地址寄存器和長(zhǎng)度寄存器加“1”或減“1” 以上是一個(gè)DMA請(qǐng)求的過(guò)程,在一批數(shù)據(jù)傳送過(guò)程中,要多次重復(fù)上述過(guò)程,直到外圍設(shè)備表示一個(gè)數(shù)據(jù)塊已傳送完畢,或該設(shè)備的長(zhǎng)度控制器判定傳送長(zhǎng)度已滿多路型DMA控制器(1)中斷方式通過(guò)程序?qū)崿F(xiàn)數(shù)據(jù)傳送;而DMA方式不使用
26、程序,直接靠硬件來(lái)實(shí)現(xiàn)(2)CPU對(duì)中斷的響應(yīng)是在執(zhí)行完一條指令之后;而對(duì)DMA的響應(yīng)則可以在指令執(zhí)行過(guò)程中的任何兩個(gè)存儲(chǔ)周期之間(3)中斷方式不僅具有數(shù)據(jù)傳送能力,而且還能處理異常事件;DMA只能進(jìn)行數(shù)據(jù)傳送(4)中斷方式必須切換程序,要進(jìn)行CPU現(xiàn)場(chǎng)的保護(hù)和恢復(fù)操作;DMA僅挪用了一個(gè)或幾個(gè)存儲(chǔ)周期,不改變CPU現(xiàn)場(chǎng)(5)DMA請(qǐng)求的優(yōu)先權(quán)比中斷請(qǐng)求高,CPU優(yōu)先響應(yīng)DMA請(qǐng)求,是為了避免DMA所連接的高速外設(shè)丟失數(shù)據(jù)DMA與程序中斷的區(qū)別【例4】下圖中假設(shè)有磁盤、磁帶、打印機(jī)三個(gè)設(shè)備同時(shí)工作。磁盤以30s的間隔向控制器發(fā)DMA請(qǐng)求,磁帶以45s的間隔發(fā)DMA請(qǐng)求,打印機(jī)以150s間隔發(fā)D
27、MA請(qǐng)求。根據(jù)傳輸速率,磁盤優(yōu)先權(quán)最高,磁帶次之,打印機(jī)最低,圖中假設(shè)DMA控制器每完成一次DMA傳送所需的時(shí)間是5s。若采用多路型DMA控制器,請(qǐng)畫出DMA控制器服務(wù)三個(gè)設(shè)備的工作時(shí)間圖【解】說(shuō)明:T1間隔中控制器首先為打印機(jī)服務(wù),因?yàn)榇藭r(shí)只有打印機(jī)有請(qǐng)求。T2間隔前沿磁盤、磁帶同時(shí)有請(qǐng)求,首先為優(yōu)先權(quán)高的磁盤服務(wù),然后為磁帶服務(wù),每次服務(wù)傳送一個(gè)字節(jié)。在150s時(shí)間階段中,為打印機(jī)服務(wù)只有一次(T1),為磁盤服務(wù)四次(T2,T4,T6,T7),為磁帶服務(wù)三次(T3,T5,T8)。從圖上看到,DMA尚有空閑時(shí)間,說(shuō)明控制器還可容納更多設(shè)備8.5 通道方式通道是具有特殊功能的處理器,負(fù)責(zé)對(duì)設(shè)備
28、的統(tǒng)一管理;它有自己的指令和程序?qū)iT負(fù)責(zé)數(shù)據(jù)輸入輸出的傳輸控制進(jìn)一步提高了CPU的效率 CPU只負(fù)責(zé)“數(shù)據(jù)處理”功能,而將“傳輸控制”功能下放給通道實(shí)現(xiàn)了CPU內(nèi)部運(yùn)算與I/O設(shè)備的并行工作通道與CPU分時(shí)使用內(nèi)存 一個(gè)主機(jī)可連多個(gè)通道;每個(gè)通道又可連多臺(tái)I/O設(shè)備,這些設(shè)備可以是不同種類、具有不同速度 增強(qiáng)了主機(jī)與通道操作的并行能力以及各通道之間、同一通道的各設(shè)備之間的并行操作能力;同時(shí)也為用戶提供了增減外圍設(shè)備的靈活性目錄8.5.1 通道的功能1. 通道的功能(1) 通道的結(jié)構(gòu)典型的具有通道的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)具有兩種類型總線邏輯結(jié)構(gòu)上,I/O系統(tǒng)一般具有四級(jí)連接:CPU與存儲(chǔ)器通道I/O模
29、塊外圍設(shè)備;通道與I/O模塊間采用統(tǒng)一的標(biāo)準(zhǔn)接口CPU啟動(dòng)通道后,通道自動(dòng)去內(nèi)存取通道指令并執(zhí)行,直到數(shù)據(jù)交換結(jié)束向CPU發(fā)出中斷請(qǐng)求,進(jìn)行通道結(jié)束處理工作MMU通道與CPU同時(shí)要求訪存時(shí),通道優(yōu)先權(quán)高于CPU;多個(gè)通道有訪存請(qǐng)求時(shí),選擇通道優(yōu)先權(quán)高于多路通道(2) 通道的基本功能執(zhí)行通道指令,組織外圍設(shè)備和內(nèi)存進(jìn)行數(shù)據(jù)傳輸,按I/O指令要求啟動(dòng)外圍設(shè)備,向CPU報(bào)告中斷等典型通道結(jié)構(gòu)四級(jí)管理:CPU與存儲(chǔ)器通道I/O模塊外圍設(shè)備通道的具體任務(wù):(1)接受CPU的I/O指令,按要求與指定的外圍設(shè)備進(jìn)行通信 (2)從存儲(chǔ)器選取屬于該通道程序的通道指令,經(jīng)譯碼后向I/O控制器模塊發(fā)送各種命令(3)
30、組織外圍設(shè)備和存儲(chǔ)器之間進(jìn)行數(shù)據(jù)傳送,并根據(jù)需要提供數(shù)據(jù)緩存的空間,以及數(shù)據(jù)存入內(nèi)存的地址和傳送的數(shù)據(jù)量(4)從外圍設(shè)備得到設(shè)備的狀態(tài)信息,形成并保存通道本身的狀態(tài)信息,根據(jù)要求將這些狀態(tài)信息送到存儲(chǔ)器的指定單元,供CPU使用(5)將外設(shè)的和通道本身的中斷請(qǐng)求,按次序及時(shí)報(bào)告CPU2. CPU對(duì)通道的管理通過(guò)執(zhí)行I/O指令以及處理來(lái)自通道的中斷來(lái)實(shí)現(xiàn)兩種來(lái)自通道的中斷數(shù)據(jù)傳送結(jié)束中斷;故障中斷3. 通道對(duì)設(shè)備控制器的管理通道指令、通道狀態(tài)字I/O模塊是通道對(duì)I/O設(shè)備實(shí)現(xiàn)傳輸控制的執(zhí)行機(jī)構(gòu)I/O模塊的具體任務(wù): (1)從通道接受通道指令,控制外圍設(shè)備完成所要求的操作 (2)向通道反映外圍設(shè)備的
31、狀態(tài)(3)將各種外圍設(shè)備的不同信號(hào)轉(zhuǎn)換成通道能識(shí)別的標(biāo)準(zhǔn)信號(hào)1在用戶程序中使用訪管指令進(jìn)入管理程序,由CPU通過(guò)管理程序組織一個(gè)通道程序,并啟動(dòng)通道2通道處理機(jī)執(zhí)行CPU為它組織的通道程序完成指定的數(shù)據(jù)輸入輸出工作3通道程序結(jié)束后向CPU發(fā)中斷請(qǐng)求。CPU響應(yīng)這個(gè)中斷請(qǐng)求后,第二次進(jìn)入操作系統(tǒng),調(diào)用管理程序?qū)斎胼敵鲋袛嗾?qǐng)求進(jìn)行處理主要過(guò)程分為三步進(jìn)行:1. 選擇通道(又稱高速通道)物理上可連接多個(gè)設(shè)備,但這些設(shè)備不能同時(shí)工作主要用于連接高速外圍設(shè)備,以數(shù)據(jù)塊方式高速傳輸特點(diǎn):數(shù)據(jù)傳輸率很高;但這類設(shè)備的輔助操作時(shí)間很長(zhǎng),因此整個(gè)通道的利用率不是很高2. 多路通道(又稱多路轉(zhuǎn)換通道)同一時(shí)間能
32、處理多個(gè)I/O設(shè)備的數(shù)據(jù)傳輸,分為數(shù)組多路通道和字節(jié)多路通道(1) 數(shù)組多路通道是對(duì)選擇通道的改進(jìn) 基本思想:某設(shè)備進(jìn)行數(shù)據(jù)傳送時(shí),通道只為該設(shè)備服務(wù);設(shè)備在執(zhí)行尋址等控制性動(dòng)作時(shí),通道的處理方法在物理上和邏輯上都可連接多個(gè)設(shè)備(高速設(shè)備)優(yōu)點(diǎn):既有選擇通道的高速性,又充分利用了控制性操作的時(shí)間間隔為其他設(shè)備服務(wù),充分提高了通道的效率8.5.2通道的類型選擇通道、多路通道(2) 字節(jié)多路通道主要用于連接大量的低速設(shè)備,通道在傳送兩個(gè)字節(jié)之間有很多空閑時(shí)間,通道利用這個(gè)空閑時(shí)間為其他設(shè)備服務(wù)字節(jié)多路通道和數(shù)組多路通道的比較相同點(diǎn): 都是多路通道,在一段時(shí)間內(nèi)能交替執(zhí)行多個(gè)設(shè)備的通道程序,使這些設(shè)
33、備同時(shí)工作不同之處:(1)數(shù)組多路通道允許多個(gè)設(shè)備同時(shí)工作,但只允許一個(gè)設(shè)備進(jìn)行傳輸型操作,其他設(shè)備進(jìn)行控制型操作;而字節(jié)多路通道允許多個(gè)設(shè)備同時(shí)進(jìn)行傳輸型操作(2)數(shù)組多路通道與設(shè)備之間數(shù)據(jù)傳送的基本單位是數(shù)據(jù)塊;而字節(jié)多路通道與各設(shè)備之間的數(shù)據(jù)傳送以字節(jié)為單位交替進(jìn)行 在IBM系統(tǒng)中常常用到子通道的概念。子通道是指實(shí)現(xiàn)每個(gè)通道程序所對(duì)應(yīng)的硬設(shè)備。選擇通道在物理上可以連接多個(gè)設(shè)備,但在一段時(shí)間內(nèi)只能執(zhí)行一個(gè)設(shè)備的通道程序,也就是說(shuō)在邏輯上只能連接一個(gè)設(shè)備,所以它只包含一個(gè)子通道。數(shù)組多路通道和字節(jié)多路通道不僅在物理上可以連接多個(gè)設(shè)備,而且在一段時(shí)間內(nèi)能交替執(zhí)行多個(gè)設(shè)備的通道程序,換句話說(shuō)在邏
34、輯上可以連接多個(gè)設(shè)備,所以它們包含有若干個(gè)子通道。注意,一個(gè)子通道可以連接多個(gè)設(shè)備,但子通道數(shù)并不等于物理上可連接的設(shè)備數(shù),而是該通道中能同時(shí)工作的設(shè)備數(shù)通道結(jié)構(gòu)的進(jìn)一步發(fā)展,出現(xiàn)了兩種計(jì)算機(jī)I/O系統(tǒng)結(jié)構(gòu): 1. 輸入輸出處理器(IOP):是通道結(jié)構(gòu)的I/O處理器,可以和CPU并行工作,提供高速的DMA處理能力,實(shí)現(xiàn)數(shù)據(jù)的高速傳送;但是它不是獨(dú)立于CPU工作的,而是主機(jī)的一個(gè)部件;有些IOP還提供數(shù)據(jù)的變換、搜索以及字裝配/拆卸能力;該方式可應(yīng)用于服務(wù)器及微型計(jì)算機(jī)中2. 外圍處理機(jī)(PPU):基本上獨(dú)立于主機(jī)工作,有自己的指令系統(tǒng),可完成算術(shù)/邏輯運(yùn)算、讀/寫主存儲(chǔ)器、與外設(shè)交換信息等;有
35、的外圍處理機(jī)就選用已有的通用機(jī);一般應(yīng)用于大型高效率的計(jì)算機(jī)系統(tǒng)中 8.5.3通道結(jié)構(gòu)的發(fā)展通道方式與DMA方式的比較相同點(diǎn)從CPU處接管了外設(shè)與內(nèi)存交換數(shù)據(jù)過(guò)程的控制權(quán),使外設(shè)能與主機(jī)并行工作主要的不同點(diǎn)(1). DMA與通道的實(shí)現(xiàn)方法不同DMA完全采用硬件控制數(shù)據(jù)交換,速度較快;而通道采用軟硬件結(jié)合的方法,通過(guò)執(zhí)行通道程序控制數(shù)據(jù)交換的過(guò)程(2). DMA與通道的功能不同通道比DMA的功能更強(qiáng); CPU在DMA中的開銷較大,通道控制則接管了相關(guān)工作,減輕了CPU的負(fù)擔(dān)(3). DMA與通道所控制的外設(shè)類型不同DMA只能控制速度較快、類型單一的外設(shè);而通道支持多種本章要點(diǎn)8.6 通用I/O標(biāo)
36、準(zhǔn)接口(不講)8.6.1并行I/O標(biāo)準(zhǔn)接口SCSI(Small Computer System Interface ) SCSI是小型計(jì)算機(jī)系統(tǒng)接口的簡(jiǎn)稱,其設(shè)計(jì)思想來(lái)源于IBM大型機(jī)系統(tǒng)的I/O通道結(jié)構(gòu),目的是使CPU擺脫對(duì)各種設(shè)備的繁雜控制。它是一個(gè)高速智能接口,可以混接各種磁盤、光盤、磁 帶機(jī)、打印機(jī)、掃描儀、條碼閱讀器以及通信設(shè)備。它首先應(yīng)用于Macintosh和Sun平臺(tái)上,后來(lái)發(fā)展到工作站、網(wǎng)絡(luò)服務(wù)器和pentium系統(tǒng)中,并成為ANSI(美國(guó)國(guó)家標(biāo)準(zhǔn)局)標(biāo)準(zhǔn)SCSI有如下性能特點(diǎn):(1)SCSI接口總線由8條數(shù)據(jù)線、一條奇偶校驗(yàn)線、9條控制線組成。使用50芯電纜,規(guī)定了兩種電氣條
37、件:?jiǎn)味蓑?qū)動(dòng),電纜長(zhǎng)6m;差分驅(qū)動(dòng),電纜最長(zhǎng)25m(2)總線時(shí)鐘頻率為5MHz,異步方式數(shù)據(jù)傳輸率是2.5MB/s,同步方式數(shù)據(jù)傳輸率是5MB/s目錄(3)SCSI接口總線以菊花鏈形式最多可連接8臺(tái)設(shè)備。在pentium中通常是:由一個(gè)主適配器HBA與最多7臺(tái)外圍設(shè)備相接,HBA也算作一個(gè)SCSI設(shè)備,由HBA經(jīng)系統(tǒng)總線(如PCI)與CPU相連,請(qǐng)參見CAI演示(4)每個(gè)SCSI設(shè)備有自己的唯一設(shè)備號(hào)ID07。ID=7的設(shè)備具有最高優(yōu)先權(quán),ID=0的設(shè)備優(yōu)先權(quán)最低。SCSI采用分布式總線仲裁策略。在仲裁階段,競(jìng)爭(zhēng)的設(shè)備以自己的設(shè)備號(hào)驅(qū)動(dòng)數(shù)據(jù)線中相應(yīng)的位線(如ID=7的設(shè)備驅(qū)動(dòng)DB7線),并與數(shù)
38、據(jù)線上的值進(jìn)行比較。因此仲裁邏輯比較簡(jiǎn)單,而且在SCSI的總線選擇階段,啟動(dòng)設(shè)備和目標(biāo)設(shè)備的設(shè)備號(hào)能同時(shí)出現(xiàn)在數(shù)據(jù)線上(5)所謂SCSI設(shè)備是指連接在SCSI總線上的智能設(shè)備,即除主適配器HBA外,其他SCSI設(shè)備實(shí)際是外圍設(shè)備的適配器或控制器。每個(gè)適配器或控制器通過(guò)各自的設(shè)備級(jí)I/O線可連接一臺(tái)或幾臺(tái)同類型的外圍設(shè)備(如一個(gè)SCSI磁盤控制器接2臺(tái)硬盤驅(qū)動(dòng)器)。標(biāo)準(zhǔn)允 許每個(gè)SCSI設(shè)備最多有8個(gè)邏輯單元,每個(gè)邏輯單元可以是物理設(shè)備也可以是虛擬設(shè)備。每個(gè)邏輯單元有一個(gè)邏輯單元號(hào)(LUN0LUN7)(6)由于SCSI設(shè)備是智能設(shè)備,對(duì)SCSI總線以至主機(jī)屏蔽了實(shí)際外設(shè)的固有物理屬性(如磁盤柱面
39、數(shù)、磁頭數(shù)等參數(shù)),各SCSI設(shè)備之間就可用一套標(biāo)準(zhǔn)的命令進(jìn)行數(shù)據(jù)傳送,也為設(shè)備的升級(jí)或系統(tǒng)的系列化提供了靈活的處理手段(7)SCSI設(shè)備之間是一種對(duì)等關(guān)系,而不是主從關(guān)系。SCSI設(shè)備分為啟動(dòng)設(shè)備(發(fā)命令的設(shè)備 )和目標(biāo)設(shè)備(接受并響應(yīng)命令的設(shè)備)。但啟動(dòng)設(shè)備和目標(biāo)設(shè)備是依當(dāng)時(shí)總線運(yùn)行狀態(tài)來(lái)劃分的,而不是預(yù)先規(guī)定的總之,SCSI是系統(tǒng)級(jí)接口,是處于主適配器和智能設(shè)備控制器之間的并行I/O接口。一塊主適配器可以接7臺(tái)具有SCSI接口的設(shè)備,這些設(shè)備可以是類型完全不同的設(shè)備,主適配器卻只占主機(jī)的一個(gè)槽口。這對(duì)于緩解計(jì)算機(jī)掛接外設(shè)的數(shù)量和類型越來(lái)越多、主機(jī)槽口日益緊 張的狀況很有吸引力為提高數(shù)據(jù)傳
40、輸率和改善接口的兼容性,90年代又陸續(xù)推出了SCSI-2和SCSI-3標(biāo)準(zhǔn)。SCSI-2擴(kuò)充了SCSI的命令集,通過(guò)提高時(shí)鐘速率和數(shù)據(jù)線寬度,最高數(shù)據(jù)傳輸率可達(dá)40MB/s,采用68芯電纜,且對(duì)電纜采用有源終端器。SCSI-3標(biāo)準(zhǔn)允許SCSI總線上連接的設(shè)備 由8提高到16,可支持16位數(shù)據(jù)傳輸。另一個(gè)變化是發(fā)展串行SCSI,使串行數(shù)據(jù)傳輸率達(dá)到640Mb/s(電纜)或1Gb/s(光纖),從而使串行SCSI成為IEEE1394標(biāo)準(zhǔn)的基礎(chǔ) 1. 1394性能特點(diǎn)IEEE1394串行接口與SCSI等并行接口相比,有如下三個(gè)顯著特點(diǎn): (1)數(shù)據(jù)傳送的高速性 1394的數(shù)據(jù)傳輸率分為100Mb/s、
41、200Mb/s、400Mb/s三檔。而SCSI-2也只有40MB/s(相當(dāng)于320Mb/s)。這樣的高速特性特別適合于新型高速硬盤及多媒體數(shù)據(jù)傳送。1394之所以達(dá)到高速,一是串行傳送比并行傳送容易提高數(shù)據(jù)傳送時(shí)鐘速率;二是采用了DS-Link編碼技術(shù),把時(shí)鐘信號(hào)的變化轉(zhuǎn)變?yōu)檫x通信號(hào)的變化,即使在高的時(shí)鐘速率下也不易引起信號(hào)失真(2)數(shù)據(jù)傳送的實(shí)時(shí)性 實(shí)時(shí)性可保證圖像和聲音不會(huì)出現(xiàn)時(shí)斷時(shí)續(xù)的現(xiàn)象,因此對(duì)多媒體數(shù)據(jù)傳送特別重要。1394之所以做到實(shí)時(shí)性,原因有二:一是它除了異步傳送外,還提供了一種等步傳送方式,數(shù)據(jù)以一系列的固定長(zhǎng)度的包規(guī)整間隔地連續(xù)發(fā)送,端到端既有最大延時(shí)限制而又有最小延時(shí)限制
42、;二是總線仲裁除優(yōu)先權(quán)仲裁之外,還有均等仲栽和緊急仲栽方式8.6.2串型I/O標(biāo)準(zhǔn)接口IEEE1394 (3)體積小易安裝,連接方便 1394使用6芯電纜,直徑約為6mm,插座也小。而SCSI使用50芯或68芯電纜,插座體積也大。 在當(dāng)前個(gè)人機(jī)要連接的設(shè)備越來(lái)越多、主機(jī)箱的體積越顯窄小情況下,電纜細(xì)、插座小的1394是很有吸引力的,尤其對(duì)筆記本電腦一類機(jī)器。1394的電纜不需要與電纜阻抗匹配的終端,而且電纜上的設(shè)備隨時(shí)可從插座重拔出或插入, 即具有熱插入能力。這對(duì)用戶安裝和使用1394設(shè)備很有利2.1394配置結(jié)構(gòu) 1394采用菊花鏈?zhǔn)脚渲茫苍试S樹形結(jié)構(gòu)配置。事實(shí)上,菊花鏈結(jié)構(gòu)是樹型結(jié)構(gòu)的一
43、種特殊情況 1394接口也需要一個(gè)主適配器和系統(tǒng)總線相連。這個(gè)主適配器的功能邏輯在高檔的pentium機(jī)中集成在主板的核心芯片組的PCI總線到ISA總線的橋芯片中。機(jī)箱的背面只看到主適配器的外接端口插座我們將主適配器及其端口稱為主端口。主端口是1394接口樹形配置結(jié)構(gòu)的根節(jié)點(diǎn)。一個(gè)主端口最多可連接63臺(tái)設(shè)備,這些設(shè)備稱為節(jié)點(diǎn),它們構(gòu)成親子關(guān)系。兩個(gè)相鄰節(jié)點(diǎn)之間 的電纜最長(zhǎng)為4.5m,但兩個(gè)節(jié)點(diǎn)之間進(jìn)行通信時(shí)中間最多可經(jīng)過(guò)15個(gè)節(jié)點(diǎn)的轉(zhuǎn)接再驅(qū)動(dòng),因此通信的最大距離是72m。電纜不需要終端器 IEEE1394配置的實(shí)例見CAI演示。 其中右側(cè)是線性鏈接方式,左側(cè)是親子層次鏈接方式。整體是一個(gè)樹形結(jié)
44、構(gòu) 1394采用集中式總線仲裁方式。中央仲裁邏輯在主端口內(nèi),并以先到先服務(wù)方法來(lái)處理節(jié)點(diǎn)提出的總線訪問(wèn)請(qǐng)求。在n個(gè)節(jié)點(diǎn)同時(shí)提出使用總線請(qǐng)求時(shí),按照優(yōu)先權(quán)進(jìn)行仲裁。最靠根節(jié)點(diǎn)的競(jìng)爭(zhēng)節(jié)點(diǎn)有高的優(yōu)先權(quán);同樣靠近根節(jié)點(diǎn)的競(jìng)爭(zhēng)節(jié)點(diǎn),其設(shè)備標(biāo)識(shí)號(hào)ID大的有更高優(yōu)先權(quán)。1394具有PnP功能,設(shè)備標(biāo)識(shí)號(hào)是系統(tǒng)自動(dòng)指定的,而不是用戶設(shè)定的為了保證總線設(shè)備的對(duì)等性和數(shù)據(jù)傳送的實(shí)時(shí)性,1394的總線仲裁增加了均等仲裁和緊急仲裁功能均等仲裁 是將總線時(shí)間分成均等的間隔,當(dāng)間隔期間開始時(shí),競(jìng)爭(zhēng)的每個(gè)節(jié)點(diǎn)置位自己的仲 裁允許標(biāo)志,在間隔期內(nèi)各節(jié)點(diǎn)可競(jìng)爭(zhēng)總線的使用權(quán)。一旦某節(jié)點(diǎn)獲得總線訪問(wèn)權(quán),則它的仲裁允許標(biāo)志被復(fù)位,在
45、此期間它不能再去競(jìng)爭(zhēng)總線,以此來(lái)防止具有高優(yōu)先權(quán)的忙設(shè)備獨(dú)占總線緊急仲裁 指對(duì)某些高優(yōu)先權(quán)的節(jié)點(diǎn)可為其指派緊急優(yōu)先權(quán)具有緊急優(yōu)先權(quán)的節(jié)點(diǎn)可在一個(gè)間隔期內(nèi)多次獲得總線控制權(quán),允許它控制75%的總線可用時(shí)間3.1394協(xié)議集1394的一個(gè)重要特色是:它規(guī)范了一個(gè)三層協(xié)議集,將串行總線與各外圍設(shè)備的交互動(dòng)作標(biāo)準(zhǔn)化下圖為IEEE1394協(xié)議集:(1)業(yè)務(wù)層 定義了一個(gè)完整的請(qǐng)求響應(yīng)協(xié)議實(shí)現(xiàn)總線傳輸,包括讀操作、寫操作和鎖定操作(2)鏈路層 可為應(yīng)用程序直接提供等步數(shù)據(jù)傳送服務(wù)。它支持異步和等步的包發(fā)送和接收異步包傳送 一個(gè)可變總量的數(shù)據(jù)及業(yè)務(wù)層的幾個(gè)信息字節(jié)作為一個(gè)包傳送到顯式地址的目標(biāo)方,并要求返回
46、一個(gè)認(rèn)可包等步包傳送 一個(gè)可變總量的數(shù)據(jù)以一串固定大小的包按照規(guī)整間隔來(lái)發(fā)送,使用簡(jiǎn)化尋址方式,不要求目標(biāo)方認(rèn)可子動(dòng)作 1394完成一個(gè)包的遞交過(guò)程 (3)物理層 將鏈路層的邏輯信號(hào)根據(jù)不同的串行總線介質(zhì)轉(zhuǎn)換成相應(yīng)的電信號(hào),也為串行總線的接口定義了電氣和機(jī)械特性。實(shí)際上,1394串行接口的物理拓?fù)浣Y(jié)構(gòu)分成“底板環(huán)境”和“電氣環(huán)境”兩部分??偩€規(guī)范并未要求特別的環(huán)境設(shè)定。所有節(jié)點(diǎn)可嚴(yán)格限定在單一底板上,也可直接連在電纜上(4)串行總線管理 它提供總線節(jié)點(diǎn)所需的標(biāo)準(zhǔn)控制、狀態(tài)寄存器服務(wù)和基本控制功能 1. I/O系統(tǒng)設(shè)計(jì)要考慮的主要規(guī)范:時(shí)延約束和帶寬約束時(shí)延約束:確保一次操作的I/O延遲時(shí)間被限
47、制在某個(gè)時(shí)間范圍內(nèi)帶寬約束:給定一個(gè)工作負(fù)載,設(shè)計(jì)一個(gè)滿足一組帶寬約束的I/O系統(tǒng);或者給定一個(gè)部分配置好的I/O系統(tǒng),要求設(shè)計(jì)者平衡系統(tǒng),以維持該系統(tǒng)預(yù)配置部分規(guī)定的可能達(dá)到的最大帶寬2. 設(shè)計(jì)一個(gè)系統(tǒng)的一般方法(1) 找出I/O系統(tǒng)中效率最低的連接,它是I/O路徑中約束設(shè)計(jì)的部件(2) 配置這個(gè)部件,以保持所需帶寬(3) 研究系統(tǒng)中其他部分的需求,配置它們以支持這個(gè)帶寬8.6.3I/O系統(tǒng)設(shè)計(jì) 【例5】考慮如下的計(jì)算機(jī)系統(tǒng):(1) CPU每秒支持30億條指令,在操作系統(tǒng)中每次I/O中平均運(yùn)行100 000條指令(2) 內(nèi)存底板總線傳輸速度可達(dá)1000MB/s(3) SCSI Ultra320型控制器有320MB/s的傳輸速率,最多支持7個(gè)磁盤(4) 磁盤驅(qū)動(dòng)器的讀/寫帶寬為75MB/
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 愚人節(jié)活動(dòng)策劃 合集15篇
- 心靈捕手觀后感9篇
- 團(tuán)學(xué)干部培訓(xùn)課程
- 語(yǔ)文學(xué)科研究性學(xué)習(xí)的思考與實(shí)踐
- 智研咨詢發(fā)布-2024年中國(guó)集成電路行業(yè)產(chǎn)業(yè)鏈全景分析及發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
- 靜力水準(zhǔn)系統(tǒng)在合肥光源的安裝調(diào)試及其在ATL模型研究中的應(yīng)用
- 定位與發(fā)展核心競(jìng)爭(zhēng)力
- 二零二五版商業(yè)綜合體物業(yè)安全保障責(zé)任合同3篇
- 二零二五版中小學(xué)食堂營(yíng)養(yǎng)餐配餐系統(tǒng)采購(gòu)合同3篇
- 二零二五年度國(guó)際鐵礦石價(jià)格波動(dòng)風(fēng)險(xiǎn)管理合同3篇
- 化學(xué)-河南省TOP二十名校2025屆高三調(diào)研考試(三)試題和答案
- 智慧農(nóng)貿(mào)批發(fā)市場(chǎng)平臺(tái)規(guī)劃建設(shè)方案
- 小學(xué)數(shù)學(xué)分?jǐn)?shù)四則混合運(yùn)算300題帶答案
- 林下野雞養(yǎng)殖建設(shè)項(xiàng)目可行性研究報(bào)告
- 2023年水利部黃河水利委員會(huì)招聘考試真題
- Python編程基礎(chǔ)(項(xiàng)目式微課版)教案22
- 01J925-1壓型鋼板、夾芯板屋面及墻體建筑構(gòu)造
- 欠電費(fèi)合同范本
- 2024年新高考地區(qū)數(shù)學(xué)選擇題填空壓軸題匯編十八含解析
- 大型商場(chǎng)招商招租方案(2篇)
- 2022年袋鼠數(shù)學(xué)競(jìng)賽真題一二年級(jí)組含答案
評(píng)論
0/150
提交評(píng)論