




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、計算機組成原理計算機組成原理第八章第八章 輸入輸出系統(tǒng)輸入輸出系統(tǒng) 8.1 外圍設(shè)備的速度分級和信息交換方式外圍設(shè)備的速度分級和信息交換方式 8.2 程序查詢方式程序查詢方式 8.3 程序中斷方式程序中斷方式 8.4 DMA方式方式 8.5 通道方式通道方式 8.6 通用通用I/O標(biāo)準(zhǔn)接口標(biāo)準(zhǔn)接口 計算機組成原理計算機組成原理多種多樣的外設(shè)工作原理不同工作原理不同機械、電子、機電、電磁機械、電子、機電、電磁傳送信息類型多樣傳送信息類型多樣數(shù)字量、模擬量、開關(guān)量數(shù)字量、模擬量、開關(guān)量傳送速度差別極大傳送速度差別極大傳送方式不盡相同傳送方式不盡相同串行、并行串行、并行編碼方式不同編碼方式不同二進(jìn)制
2、、二進(jìn)制、BCDBCD碼、碼、ASCIIASCII碼碼8.1 8.1 外圍設(shè)備的速度分級與信息交換方式外圍設(shè)備的速度分級與信息交換方式計算機組成原理計算機組成原理2021年11月4日19時15分l輸入輸出設(shè)備和CPU交換數(shù)據(jù)的過程:輸入過程:CPU把一個設(shè)備地址值放在地址總線上,這一步將選擇一個輸入設(shè)備CPU等候輸入設(shè)備的數(shù)據(jù)成為有效CPU從數(shù)據(jù)總線上讀入數(shù)據(jù),并放在一個相應(yīng)的寄存器中輸出過程:CPU把一個設(shè)備地址值放在地址總線上,這一步將選擇一個輸出設(shè)備CPU把數(shù)據(jù)放在數(shù)據(jù)總線上輸出設(shè)備認(rèn)為數(shù)據(jù)有效,從而把數(shù)據(jù)取走。計算機組成原理計算機組成原理1.1.速度極慢或簡單的外圍設(shè)備速度極慢或簡單的
3、外圍設(shè)備不需要不需要CPU和外設(shè)之間的時間同步!和外設(shè)之間的時間同步!2.2.慢速或中速的外圍設(shè)備慢速或中速的外圍設(shè)備采用采用異步定時方式異步定時方式外設(shè)有外設(shè)有“準(zhǔn)備就緒準(zhǔn)備就緒”狀態(tài)位;狀態(tài)位;CPU查詢狀態(tài)位,就緒查詢狀態(tài)位,就緒時時就讀走;就讀走; 應(yīng)答式數(shù)據(jù)交換。應(yīng)答式數(shù)據(jù)交換。3.3.高速的外圍設(shè)備高速的外圍設(shè)備采用采用同步定時方式同步定時方式 CPU和外設(shè)之間的數(shù)據(jù)交換由時鐘脈沖控制。和外設(shè)之間的數(shù)據(jù)交換由時鐘脈沖控制。 如果把高速工作的主機同不同速度工作的外圍設(shè)備相連接,如何保證主機與外圍設(shè)備在時間上同步?計算機組成原理計算機組成原理8.1.28.1.2信息交換方式信息交換方式
4、 在計算機系統(tǒng)中,CPU管理外圍設(shè)備有以下幾種方式: 1. 程序查詢方式程序查詢方式 2. 程序中斷方式程序中斷方式 3. 直接內(nèi)存訪問直接內(nèi)存訪問(DMA)方式方式 4. 通道方式通道方式 計算機組成原理計算機組成原理 例子例子 假設(shè)幼兒園一個阿姨帶10個孩子,要給每個孩子分4塊水果糖。假設(shè)孩子們都應(yīng)把4塊糖都吃完,那么她采用什么方法呢?l方法1: 她先給孩子甲一塊糖,盯著甲吃完,然后再給第二塊,她先給孩子甲一塊糖,盯著甲吃完,然后再給第二塊,等吃完第二塊又給第三等吃完第二塊又給第三 塊,吃完第三塊又給第四塊。接著給孩塊,吃完第三塊又給第四塊。接著給孩子乙,其過程與孩子甲完全一樣。依次類推,
5、直至到子乙,其過程與孩子甲完全一樣。依次類推,直至到 第第1010個孩個孩子發(fā)完四塊糖。看來這種方法效率太低,重要之點還在于孩子們子發(fā)完四塊糖。看來這種方法效率太低,重要之點還在于孩子們吃糖時她一直在守吃糖時她一直在守 候,什么事也不能干。候,什么事也不能干。( (程序查詢方式)l方法2: 每人發(fā)一塊糖各自去吃,并約定誰吃完后就向老師舉手每人發(fā)一塊糖各自去吃,并約定誰吃完后就向老師舉手報告,再發(fā)第二塊??磥磉@種新方法提高了工作效率,而且在未報告,再發(fā)第二塊。看來這種新方法提高了工作效率,而且在未接到孩子們吃完糖的報告以前,她還可以騰出時間給孩子們改作接到孩子們吃完糖的報告以前,她還可以騰出時間
6、給孩子們改作業(yè)。業(yè)。( (程序中斷方式)l方法3: 進(jìn)行批處理:每人拿進(jìn)行批處理:每人拿4 4塊糖各自去吃,吃完塊糖各自去吃,吃完4 4塊糖后再向塊糖后再向她報告。顯然這種方法工作她報告。顯然這種方法工作 效率大大提高,她可以騰出更多的效率大大提高,她可以騰出更多的時間改作業(yè)。時間改作業(yè)。( (直接內(nèi)存訪問(DMA)方式)l方法4: 權(quán)力下放,把發(fā)糖的事交給另一個人分管,只是必要時權(quán)力下放,把發(fā)糖的事交給另一個人分管,只是必要時她才過問一下。她才過問一下。( (通道方式) 計算機組成原理計算機組成原理1. 程序查詢方式發(fā)地址和“讀”命令檢測設(shè)備狀態(tài)就緒?讀數(shù)據(jù)到CPU是否發(fā)地址、數(shù)據(jù)和“寫”命
7、令檢測設(shè)備狀態(tài)就緒?是否適用許多單片機系統(tǒng)適用許多單片機系統(tǒng)讀讀寫寫計算機組成原理計算機組成原理2. 程序中斷方式l外設(shè)輸入或輸出數(shù)據(jù)就緒時,主動通知外設(shè)輸入或輸出數(shù)據(jù)就緒時,主動通知CPU。lCPU如何如何響應(yīng)響應(yīng)中斷請求,中斷請求,暫?,F(xiàn)行程序,保護好暫?,F(xiàn)行程序,保護好“斷點斷點”;轉(zhuǎn)轉(zhuǎn)“中斷服務(wù)程序中斷服務(wù)程序”,完成對外設(shè)的讀或?qū)懀?,完成對外設(shè)的讀或?qū)懀辉倩氐皆绦?,繼續(xù)執(zhí)行。再回到原程序,繼續(xù)執(zhí)行。A中斷服務(wù)程序B中服C中服主程序A請求中斷B請求C請求計算機組成原理計算機組成原理3. 直接內(nèi)存訪問(DMA)方式外設(shè)控制器外設(shè)控制器(接口卡接口卡)中有中有DMA控制器控制器和和CPU
8、分時分時使用總線;使用總線;數(shù)據(jù)交換不經(jīng)過數(shù)據(jù)交換不經(jīng)過CPU,而直接在內(nèi)存和外圍設(shè),而直接在內(nèi)存和外圍設(shè)備之間進(jìn)行。備之間進(jìn)行。 適用于內(nèi)存和高速外圍設(shè)備之間大批數(shù)據(jù)交換的場合適用于內(nèi)存和高速外圍設(shè)備之間大批數(shù)據(jù)交換的場合 計算機組成原理計算機組成原理4. 通道方式l通道通道是專用于是專用于I/O的處理器的處理器,也稱,也稱IOP。l實現(xiàn)對外圍設(shè)備的統(tǒng)一管理和外圍設(shè)備與內(nèi)存實現(xiàn)對外圍設(shè)備的統(tǒng)一管理和外圍設(shè)備與內(nèi)存之間的數(shù)據(jù)傳送。之間的數(shù)據(jù)傳送。 l進(jìn)一步減少進(jìn)一步減少CPU參與參與I/O過程。過程。計算機組成原理計算機組成原理I/O控制方式控制方式主要由程序?qū)崿F(xiàn)主要由程序?qū)崿F(xiàn)主要由附加硬件實
9、現(xiàn)主要由附加硬件實現(xiàn)計算機組成原理計算機組成原理CPU需要先了解(需要先了解(查詢查詢)外設(shè)的工作狀態(tài),然)外設(shè)的工作狀態(tài),然后在外設(shè)可以交換信息的情況下(后在外設(shè)可以交換信息的情況下(就緒就緒)實現(xiàn))實現(xiàn)數(shù)據(jù)輸入或輸出數(shù)據(jù)輸入或輸出.對多個外設(shè)的情況,按順序依次查詢(輪詢)對多個外設(shè)的情況,按順序依次查詢(輪詢)8.2 程序查詢方式 計算機組成原理計算機組成原理 用程序?qū)崿F(xiàn)輸入用程序?qū)崿F(xiàn)輸入/ /輸出的數(shù)據(jù)傳送,外圍設(shè)備有兩輸出的數(shù)據(jù)傳送,外圍設(shè)備有兩種不同的編址方法。種不同的編址方法。統(tǒng)一編址:統(tǒng)一編址:外設(shè)和內(nèi)存一起編排地址??捎迷L內(nèi)指令訪外設(shè)和內(nèi)存一起編排地址。可用訪內(nèi)指令訪問問I/O
10、設(shè)備。設(shè)備。 外設(shè)不需要專用的指令組。外設(shè)不需要專用的指令組。單獨編址:單獨編址:內(nèi)存地址和內(nèi)存地址和I/O設(shè)備地址是分開的,訪問內(nèi)設(shè)備地址是分開的,訪問內(nèi)存和訪問存和訪問I/O設(shè)備使用不同操作碼的指令。設(shè)備使用不同操作碼的指令。8.2.1 設(shè)備編址計算機組成原理計算機組成原理(5)CPU從I/O接口的數(shù)據(jù)緩沖寄存器輸入數(shù)據(jù),或者將數(shù)據(jù)從CPU輸出至接口的數(shù)據(jù)緩沖寄存器。與此同時,CPU將接口中的狀態(tài)標(biāo)志復(fù)位。(4)假如這個設(shè)備沒有準(zhǔn)備就緒,則第(2)、第(3)步重復(fù)進(jìn)行,一直到這個設(shè)備準(zhǔn)備好交換數(shù)據(jù),發(fā)出準(zhǔn)備就緒信號“Ready”為止;(6)數(shù)據(jù)傳送(3)檢查狀態(tài)字中的標(biāo)志,看看數(shù)據(jù)交換是否
11、可以進(jìn)行;(2)從I/O接口讀入狀態(tài)字;(1)先向I/O設(shè)備發(fā)出命令字,請求進(jìn)行數(shù)據(jù)傳送;程序查詢接口包括程序查詢接口包括設(shè)備選擇電路設(shè)備選擇電路 數(shù)據(jù)緩沖寄存器數(shù)據(jù)緩沖寄存器 設(shè)備狀態(tài)寄存器設(shè)備狀態(tài)寄存器計算機組成原理計算機組成原理按上述步驟執(zhí)行按上述步驟執(zhí)行cpucpu資源浪費嚴(yán)重,實際應(yīng)用中做如下改進(jìn):資源浪費嚴(yán)重,實際應(yīng)用中做如下改進(jìn):1.cpu在執(zhí)行主程序的過程中可周期性的調(diào)用各外部設(shè)備詢問子程序。2.該程序依次測試各I/O設(shè)備的狀態(tài)是否就緒,3.如果ready為1則轉(zhuǎn)去執(zhí)行該設(shè)備的任務(wù),如果為0則測試下一個設(shè)備。4.CPU主動詢問 。計算機組成原理計算機組成原理8.3 程序中斷方式
12、A中斷服務(wù)程序B中服C中服主程序A請求中斷B請求C請求處理器在執(zhí)行程序過程中,被內(nèi)部或外部的事件所打斷,處理器在執(zhí)行程序過程中,被內(nèi)部或外部的事件所打斷,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好的中斷服務(wù)程序;服務(wù)結(jié)束后,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好的中斷服務(wù)程序;服務(wù)結(jié)束后,又返回原來的斷點,繼續(xù)執(zhí)行原來的程序又返回原來的斷點,繼續(xù)執(zhí)行原來的程序17CPUCPU何時響應(yīng)中斷請求?何時響應(yīng)中斷請求?如何保證返回到主程序的如何保證返回到主程序的正確位置?正確位置?當(dāng)當(dāng)CPUCPU響應(yīng)中斷后,若有響應(yīng)中斷后,若有新的中斷請求如何處理?新的中斷請求如何處理?CPU在當(dāng)前指令執(zhí)行完畢轉(zhuǎn)入公在當(dāng)前指令執(zhí)行完畢轉(zhuǎn)入公操作時才受理
13、設(shè)備的中斷請求操作時才受理設(shè)備的中斷請求 保存現(xiàn)場:保存現(xiàn)場:PC的內(nèi)容以及當(dāng)前的內(nèi)容以及當(dāng)前指令執(zhí)行結(jié)束后指令執(zhí)行結(jié)束后CPU的狀態(tài)的狀態(tài)保保存到堆棧中。保證中斷處理后存到堆棧中。保證中斷處理后返回到主程序的正確位置。返回到主程序的正確位置。中斷處理過程是中斷處理過程是由硬件和軟件結(jié)由硬件和軟件結(jié)合完成的。合完成的。硬件硬件軟件軟件l中斷屏蔽:CPU中可設(shè)置中斷屏蔽寄存器,“擋住”中斷請求。l“關(guān)中斷”:中斷屏蔽標(biāo)志置“1”,屏蔽所有中斷請求;l“開中斷”:中斷屏蔽標(biāo)志置“0”,允許所有中斷請求。計算機組成原理計算機組成原理8.3.2程序中斷方式的基本接口l程序中斷由外設(shè)接口的狀態(tài)和CPU兩
14、方面來控制:在接口方面,有決定是否向,有決定是否向CPUCPU發(fā)出中斷請發(fā)出中斷請求的機構(gòu),主要是接口中的求的機構(gòu),主要是接口中的“準(zhǔn)備就緒準(zhǔn)備就緒”標(biāo)志標(biāo)志(RD)(RD)和和“允許中斷允許中斷”標(biāo)志標(biāo)志(EI)(EI)兩個觸發(fā)器;兩個觸發(fā)器;在CPU方面,有決定是否受理中斷請求的機,有決定是否受理中斷請求的機構(gòu),主要是構(gòu),主要是“中斷請求中斷請求”標(biāo)志標(biāo)志(IR)(IR)和和“中斷屏中斷屏蔽蔽”標(biāo)志標(biāo)志(IM)(IM)兩個觸發(fā)器。兩個觸發(fā)器。l BSBS外設(shè)接口忙(外設(shè)接口忙(BuSyBuSy)標(biāo)志)標(biāo)志表示由程序啟動外設(shè),將該外設(shè)接口的“忙”標(biāo)志BS置“1”,“準(zhǔn)備就緒”標(biāo)志RD清“0”
15、;表示接口向外設(shè)發(fā)出啟動信號;表示數(shù)據(jù)由外設(shè)傳送到接口的緩沖寄存器;表示當(dāng)設(shè)備動作結(jié)束或緩沖寄存器數(shù)據(jù)填滿時,設(shè)備向接口送出一控制信號,將數(shù)據(jù)“準(zhǔn)備就緒”標(biāo)志RD置“1”;表示允許中斷標(biāo)志EI為“1”時,接口向CPU發(fā)出中斷請求信號;表示在一條指令執(zhí)行末尾CPU檢查中斷請求線,將中斷請求線的請求信號接收到“中斷請求”標(biāo)志IR;表示如果“中斷屏蔽”標(biāo)志IM為“0”時,CPU在一條指令執(zhí)行結(jié)束后受理外設(shè)的中斷請求,向外設(shè)發(fā)出響應(yīng)中斷信號并關(guān)閉中斷;表示轉(zhuǎn)向該設(shè)備的中斷服務(wù)程序入口;表示在中斷服務(wù)程序通過輸入指令把接口中數(shù)據(jù)緩沖寄存器的數(shù)據(jù)讀至CPU中的寄存器;(10)表示CPU發(fā)出控制信號C將接口
16、中的BS和RD標(biāo)志復(fù)位。計算機組成原理計算機組成原理中斷分類l根據(jù)計算機系統(tǒng)對中斷處理的策略不根據(jù)計算機系統(tǒng)對中斷處理的策略不同,可分為同,可分為單級中斷單級中斷系統(tǒng)和系統(tǒng)和多級中斷多級中斷系統(tǒng)。系統(tǒng)。 l單級中斷單級中斷: :所有中斷源屬于同一級,當(dāng)所有中斷源屬于同一級,當(dāng)響應(yīng)某中斷請求時,不允許其他中斷響應(yīng)某中斷請求時,不允許其他中斷源打斷當(dāng)前中斷服務(wù)程序。離源打斷當(dāng)前中斷服務(wù)程序。離cpucpu最近最近中斷優(yōu)先級最高。中斷優(yōu)先級最高。 l多級中斷:優(yōu)先級高的中斷請求可打多級中斷:優(yōu)先級高的中斷請求可打斷已在運行的其他中斷源的中斷服務(wù)斷已在運行的其他中斷源的中斷服務(wù)程序。程序。主程序主程序
17、1 1級中服級中服2 2級中服級中服3 3級中斷級中斷服務(wù)程序服務(wù)程序計算機組成原理計算機組成原理8.3.3 單級中斷l(xiāng)各中斷源有優(yōu)先級的差別各中斷源有優(yōu)先級的差別離離CPU近的優(yōu)先權(quán)高,存在一個由近的優(yōu)先權(quán)高,存在一個由硬件硬件決定的決定的響應(yīng)響應(yīng)優(yōu)先級。優(yōu)先級。當(dāng)多個中當(dāng)多個中斷源請求時,斷源請求時,CPU選擇優(yōu)先級最高的予以響應(yīng)。選擇優(yōu)先級最高的予以響應(yīng)。鏈?zhǔn)讲樵儗崿F(xiàn)的單級中斷鏈?zhǔn)讲樵儗崿F(xiàn)的單級中斷與鏈?zhǔn)娇偩€控制相對應(yīng)與鏈?zhǔn)娇偩€控制相對應(yīng)計算機組成原理計算機組成原理2. 單級中斷源的識別 如何確定中斷源,并轉(zhuǎn)入被響應(yīng)的中斷服務(wù)程序入口地址,是中斷處理首先要解決的問題。 在單級中斷中,采用
18、串行排隊鏈法串行排隊鏈法來實現(xiàn)具有公共請求線的中斷源判優(yōu)識別。其實現(xiàn)邏輯結(jié)構(gòu)如下圖示。計算機組成原理計算機組成原理計算機組成原理計算機組成原理中斷向量l中斷向量中斷向量指示指示中斷服務(wù)程序的中斷服務(wù)程序的入口入口。l例:某中斷源的例:某中斷源的中斷服務(wù)程序的起始地址中斷服務(wù)程序的起始地址(即入口即入口)是地址是地址001011,則中斷向量為,則中斷向量為001011。計算機組成原理計算機組成原理8.2.4 多級中斷l(xiāng)優(yōu)先級高的中斷請求可打斷已在運行的其他中斷優(yōu)先級高的中斷請求可打斷已在運行的其他中斷源的中斷服務(wù)程序。源的中斷服務(wù)程序。主程序中服1中服2中服3l多級中斷可分為一維多級中斷和二維多
19、級中斷: :l一維多級中斷:每級中斷里只有一個中斷源每級中斷里只有一個中斷源l二維多級中斷:每級中斷里又有多個中斷源每級中斷里又有多個中斷源計算機組成原理計算機組成原理一維多級中斷中斷屏蔽寄存器優(yōu)先級比較主主程程序序D中中服服A中中服服高高優(yōu)優(yōu)先先級級低低計算機組成原理計算機組成原理二維多級中斷鏈?zhǔn)讲樵冎袛嘣赐患壷袛嘣吹奶幚磉^程不能嵌套。為什么?play高高優(yōu)優(yōu)先先級級低低高高 優(yōu)先級優(yōu)先級 低低中斷嵌套:中斷處理中又響應(yīng)中斷中斷嵌套:中斷處理中又響應(yīng)中斷 某一級中斷被響應(yīng)后,置某一級中斷被響應(yīng)后,置“1”(1”(關(guān)閉關(guān)閉) )本級本級和和優(yōu)先權(quán)低于本優(yōu)先權(quán)低于本級級的中斷屏蔽觸發(fā)器,置的中
20、斷屏蔽觸發(fā)器,置“0”(0”(開放開放) )更高級更高級的中斷屏蔽觸發(fā)的中斷屏蔽觸發(fā)器。器。 27高高優(yōu)優(yōu)先先級級低低例1(1) 中斷情況下,CPU和設(shè)備的優(yōu)先級如何考慮?設(shè)備的先級順序如何?答:CPU優(yōu)先級最低。設(shè)備次序:ABCDEFGHICPU(2) 執(zhí)行B中服時,IM2、IM1、IM0為多少?若執(zhí)行D中服呢?答:執(zhí)行B中服時,IM2、IM1、IM0為111。若執(zhí)行D中服,為011。(3)每一級的IM能否對個別設(shè)備單獨屏蔽?若不能,什么辦法可達(dá)到目的?答:不能??蓪⒃O(shè)備接口的EI標(biāo)志置“0”,禁止該設(shè)備發(fā)出中斷請求。(4)假如設(shè)備c一提出中斷請求,cpu立即響應(yīng),如何調(diào)整?答:將c從第2級
21、取出來,單獨放在第3級。計算機組成原理計算機組成原理8.2.5 中斷控制器(集成8259)計算機組成原理計算機組成原理8.3 DMA方式l程序控制傳送方式的不足:程序控制傳送方式的不足:外設(shè)外設(shè)CPU存儲器存儲器外設(shè)外設(shè)CPU存儲器存儲器l直接存儲器存取直接存儲器存取DMA:外設(shè)外設(shè)存儲器存儲器外設(shè)外設(shè)存儲器存儲器lDMA方式:直接內(nèi)存訪問,方式:直接內(nèi)存訪問,數(shù)據(jù)不經(jīng)數(shù)據(jù)不經(jīng)CPU,直,直接在外設(shè)和內(nèi)存之間傳送,接在外設(shè)和內(nèi)存之間傳送,無需保護無需保護CPU現(xiàn)場現(xiàn)場;lDMA控制器負(fù)責(zé)地址修改和傳送計數(shù),適合高控制器負(fù)責(zé)地址修改和傳送計數(shù),適合高速設(shè)備的成組傳送。速設(shè)備的成組傳送。計算機組成
22、原理計算機組成原理 (1) 從外圍設(shè)備發(fā)出DMA請求; (2) CPU響應(yīng)請求,把CPU工作改成DMA操作方式,DMA控制器從CPU接管總線的控制; (3) 由DMA控制器對內(nèi)存尋址,并執(zhí)行數(shù)據(jù)傳送的操作; (4) 向CPU報告DMA操作的結(jié)束。 DMA能執(zhí)行以下一些基本操作:計算機組成原理計算機組成原理8.4.2DMA傳送方式DMA技術(shù)的出現(xiàn),使得外圍設(shè)備可以通過DMA控制器直接訪問內(nèi)存,與此同時,CPU可以繼續(xù)執(zhí)行程序。DMA控制器與CPU分時使用內(nèi)存通常采用以下三種方法: 1. 停止停止CPU訪問內(nèi)存訪問內(nèi)存 2. 周期挪用周期挪用 3. DMA與與CPU交替訪內(nèi)存交替訪內(nèi)存 計算機組成
23、原理計算機組成原理停止CPU訪問內(nèi)存lCPU放棄總線控制權(quán);放棄總線控制權(quán);lCPU無法取指,處于不工作狀態(tài)。無法取指,處于不工作狀態(tài)。內(nèi)存工作時間內(nèi)存工作時間tCPU控制并控制并使用內(nèi)存使用內(nèi)存DMA控制并控制并使用內(nèi)存使用內(nèi)存停止停止CPU的訪問內(nèi)存的訪問內(nèi)存CPU不執(zhí)不執(zhí)行程序行程序DMA不工作不工作DMA不工作不工作DMA工作工作優(yōu)點優(yōu)點: : 控制簡單,適用于數(shù)據(jù)傳輸率很高的設(shè)備進(jìn)行成組傳送。控制簡單,適用于數(shù)據(jù)傳輸率很高的設(shè)備進(jìn)行成組傳送。缺點缺點: :設(shè)備數(shù)據(jù)間隔遠(yuǎn)大于內(nèi)存訪問周期,許多內(nèi)存訪問周期浪費了。設(shè)備數(shù)據(jù)間隔遠(yuǎn)大于內(nèi)存訪問周期,許多內(nèi)存訪問周期浪費了。計算機組成原理計算
24、機組成原理總線周期挪用lCPU按程序要求訪存,如按程序要求訪存,如I/O有有DMA請求,請求,挪用挪用1或幾個內(nèi)存周期。或幾個內(nèi)存周期。內(nèi)存工作時間內(nèi)存工作時間CPU控制并控制并使用內(nèi)存使用內(nèi)存DMA控制并控制并使用內(nèi)存使用內(nèi)存t優(yōu)點:內(nèi)存和優(yōu)點:內(nèi)存和CPUCPU的效率提高。的效率提高。缺點:每次挪用都要申請、建立、釋放總線控制權(quán)。缺點:每次挪用都要申請、建立、釋放總線控制權(quán)。計算機組成原理計算機組成原理DMA和CPU交替訪內(nèi)l則則CPU周期分為周期分為C1和和C2兩部分,兩部分,C1供供DMA訪內(nèi),訪內(nèi),C2供供CPU訪內(nèi)。訪內(nèi)。l這可避免總線申請、建立和施放的開銷。這可避免總線申請、建立
25、和施放的開銷。l也稱也稱透明的透明的DMA方式。方式。計算機組成原理計算機組成原理DMA和CPU交替訪內(nèi)內(nèi)存工作時間內(nèi)存工作時間DMA控制并控制并使用內(nèi)存使用內(nèi)存CPU控制并控制并使用內(nèi)存使用內(nèi)存tC1C1C2C2計算機組成原理計算機組成原理基本的DMA控制器內(nèi)存內(nèi)存CPU中斷機構(gòu)內(nèi)存地址計數(shù)器控制/狀態(tài)邏輯字計數(shù)器DMA請求標(biāo)志數(shù)據(jù)緩沖寄存器設(shè)備選擇設(shè)備中斷請求中斷請求數(shù)據(jù)線數(shù)據(jù)線地址線地址線HOLDHLDA一字準(zhǔn)備一字準(zhǔn)備就緒信號就緒信號DMA請求請求DMA響應(yīng)響應(yīng)數(shù)據(jù)數(shù)據(jù)+1+1記錄傳送的字?jǐn)?shù)。每傳送記錄傳送的字?jǐn)?shù)。每傳送一個字,字計數(shù)器加一個字,字計數(shù)器加“1” ,當(dāng)計數(shù)器溢出即全當(dāng)計
26、數(shù)器溢出即全0,表,表示傳送完畢,示傳送完畢,DMA控制控制器向器向CPU發(fā)中斷信號發(fā)中斷信號。 “DMA請求請求” 標(biāo)志置標(biāo)志置“1”則向則向“控制控制/狀態(tài)狀態(tài)”邏輯邏輯發(fā)出發(fā)出DMA請求;接收請求;接收DMA響應(yīng)信號后標(biāo)志復(fù)響應(yīng)信號后標(biāo)志復(fù)位。位。 修改內(nèi)存地址計數(shù)器和字修改內(nèi)存地址計數(shù)器和字計數(shù)器;指定傳送類型計數(shù)器;指定傳送類型(輸輸入或輸出入或輸出);對;對“DMA請請求求”信號和信號和CPU響應(yīng)信號響應(yīng)信號進(jìn)行協(xié)調(diào)和同步。進(jìn)行協(xié)調(diào)和同步。 當(dāng)字計數(shù)器溢出時當(dāng)字計數(shù)器溢出時(全全0),溢出信號觸,溢出信號觸發(fā)中斷機構(gòu),向發(fā)中斷機構(gòu),向CPU提出中斷報告。提出中斷報告。 計算機組成原
27、理計算機組成原理DMA數(shù)據(jù)傳送過程l傳送前預(yù)處理傳送前預(yù)處理CPU執(zhí)行幾條輸入輸出指令,向執(zhí)行幾條輸入輸出指令,向DMA控制器發(fā)送控制器發(fā)送內(nèi)存起內(nèi)存起始地址始地址、數(shù)據(jù)字個數(shù)數(shù)據(jù)字個數(shù)。l正式傳送數(shù)據(jù)正式傳送數(shù)據(jù)DMA控制器發(fā)總線請求,控制器發(fā)總線請求,CPU在本機器周期結(jié)束后,在本機器周期結(jié)束后,響應(yīng)請求;響應(yīng)請求;DMA傳送數(shù)據(jù),地址和計數(shù)器同時加傳送數(shù)據(jù),地址和計數(shù)器同時加1。計數(shù)器未溢出,轉(zhuǎn)計數(shù)器未溢出,轉(zhuǎn);反之,;反之,DMA中斷請求。中斷請求。l傳送后處理傳送后處理 CPU響應(yīng)中斷后,則停止原程序執(zhí)行,轉(zhuǎn)去執(zhí)行中斷服響應(yīng)中斷后,則停止原程序執(zhí)行,轉(zhuǎn)去執(zhí)行中斷服務(wù)程序,做一些務(wù)程序
28、,做一些DMA結(jié)束處理工作。檢查內(nèi)存數(shù)據(jù),結(jié)束處理工作。檢查內(nèi)存數(shù)據(jù),計算機組成原理計算機組成原理8.4.4 選擇型和多路型DMA控制器l選擇型控制器可物理上接多個設(shè)備,邏輯上只選擇型控制器可物理上接多個設(shè)備,邏輯上只為一個設(shè)備服務(wù)。為一個設(shè)備服務(wù)。l根據(jù)根據(jù)CPUCPU送來的設(shè)備號,控制相應(yīng)設(shè)備與內(nèi)存送來的設(shè)備號,控制相應(yīng)設(shè)備與內(nèi)存之間直接傳送數(shù)據(jù)。之間直接傳送數(shù)據(jù)。l選擇型控制器在某一段時間內(nèi)只能為一個設(shè)備選擇型控制器在某一段時間內(nèi)只能為一個設(shè)備服務(wù)。服務(wù)。 1. 1. 選擇型選擇型DMADMA控制器控制器 計算機組成原理計算機組成原理選擇型DMA控制器的基本結(jié)構(gòu)適用高速適用高速外設(shè)外設(shè)內(nèi)
29、存CPU字計數(shù)器字計數(shù)器內(nèi)存地址內(nèi)存地址數(shù)據(jù)緩沖器數(shù)據(jù)緩沖器狀態(tài)控制狀態(tài)控制設(shè)備號設(shè)備號時序電路時序電路設(shè)備設(shè)備1設(shè)備設(shè)備2設(shè)備設(shè)備n選擇線選擇線系統(tǒng)總線系統(tǒng)總線計算機組成原理計算機組成原理2. 多路型DMA控制器l多多路型路型DMA控制器適合于同時為多個慢速外圍設(shè)控制器適合于同時為多個慢速外圍設(shè)備服務(wù)。備服務(wù)。l物理上可連接多個外設(shè),邏輯上允許這些外設(shè)同物理上可連接多個外設(shè),邏輯上允許這些外設(shè)同時工作。時工作。 l各設(shè)備以各設(shè)備以字節(jié)交叉方式字節(jié)交叉方式,通過,通過DMA控制器訪內(nèi)??刂破髟L內(nèi)。計算機組成原理計算機組成原理 例例3 3下圖中假設(shè)有磁盤、磁帶、打印下圖中假設(shè)有磁盤、磁帶、打印機
30、三個設(shè)備同時工作。磁盤以機三個設(shè)備同時工作。磁盤以30s30s的的間隔向控制器發(fā)間隔向控制器發(fā)DMADMA請求,磁帶以請求,磁帶以45s45s的間隔發(fā)的間隔發(fā)DMADMA請求,打印機以請求,打印機以150s150s間隔發(fā)間隔發(fā)DMADMA請求。根據(jù)傳輸速率,請求。根據(jù)傳輸速率,磁盤優(yōu)先權(quán)最高,磁帶次之,打印機磁盤優(yōu)先權(quán)最高,磁帶次之,打印機最低,圖中假設(shè)最低,圖中假設(shè)DMADMA控制器每完成一次控制器每完成一次DMADMA傳送所需的時間是傳送所需的時間是5s5s。若采用多。若采用多路型路型DMADMA控制器,請畫出控制器,請畫出DMADMA控制器服控制器服務(wù)三個設(shè)備的工作時間圖。務(wù)三個設(shè)備的工
31、作時間圖。 計算機組成原理計算機組成原理分析 由圖看出,在由圖看出,在120s120s時間階段中,為時間階段中,為打印機服務(wù)只有一次打印機服務(wù)只有一次(T1)(T1),為磁盤服務(wù),為磁盤服務(wù)四次四次(T2(T2,T4T4,T6T6,T7)T7),為磁帶服務(wù)三,為磁帶服務(wù)三次次(T3(T3,T5T5,T8)T8)。從圖上看到,在這種。從圖上看到,在這種情況下情況下DMADMA尚有空閑時間,說明控制器還尚有空閑時間,說明控制器還可以容納更多設(shè)備。可以容納更多設(shè)備。 計算機組成原理計算機組成原理8.5 通道方式通道是一種專用于通道是一種專用于I/O的的處理器處理器;有自己的指令集有自己的指令集;通道
32、程序通道程序存放在內(nèi)存中。存放在內(nèi)存中。通道和通道和CPU分時使用內(nèi)存分時使用內(nèi)存。計算機組成原理計算機組成原理IBM4300系統(tǒng)的系統(tǒng)的I/O結(jié)構(gòu)結(jié)構(gòu)主存主存CPU選擇通道選擇通道字節(jié)多路字節(jié)多路通道通道數(shù)組多路數(shù)組多路通道通道磁盤控制器磁盤控制器磁盤控制器磁盤控制器磁盤磁盤磁盤磁盤磁盤磁盤磁盤磁盤設(shè)備控制器設(shè)備控制器設(shè)備控制器設(shè)備控制器設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備控制器設(shè)備控制器設(shè)備控制器設(shè)備控制器設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備設(shè)備存儲管理部件存儲管理部件存存儲儲總總線線I/O總線總線I/O總線總線I/O總線總線 存儲總線存儲總線:承擔(dān)通道與內(nèi)存、:承擔(dān)通道與內(nèi)存、CPU與內(nèi)存間的數(shù)
33、據(jù)傳輸任務(wù)。與內(nèi)存間的數(shù)據(jù)傳輸任務(wù)。 通道總線通道總線I/O總線總線:承擔(dān)外設(shè)與通道間的數(shù)據(jù)傳送任務(wù)。:承擔(dān)外設(shè)與通道間的數(shù)據(jù)傳送任務(wù)。I/O系統(tǒng)一般具有四級連接:系統(tǒng)一般具有四級連接:CPUCPU與內(nèi)存與內(nèi)存 通道通道 設(shè)備控制器設(shè)備控制器 外圍設(shè)備外圍設(shè)備play計算機組成原理計算機組成原理通道的基本功能接收接收CPU的的I/O指令,按指令啟動相應(yīng)設(shè)備;指令,按指令啟動相應(yīng)設(shè)備;從內(nèi)存讀取通道指令,譯碼后發(fā)有關(guān)控制命令;從內(nèi)存讀取通道指令,譯碼后發(fā)有關(guān)控制命令;組織外設(shè)與內(nèi)存之間的數(shù)據(jù)傳送;組織外設(shè)與內(nèi)存之間的數(shù)據(jù)傳送;讀取外設(shè)狀態(tài),供讀取外設(shè)狀態(tài),供CPU查詢;查詢;將外設(shè)的中斷請求和本
34、身的中斷請求,按次序及時報將外設(shè)的中斷請求和本身的中斷請求,按次序及時報告給告給CPU。計算機組成原理計算機組成原理 CPU是通過執(zhí)行I/O指令以及處理來自通道的中斷,實現(xiàn)對通道的管理。 CPU來自通道的中斷有兩種,一種是數(shù)據(jù)數(shù)據(jù)傳送結(jié)束中斷傳送結(jié)束中斷,另一種是故障中斷故障中斷。 管態(tài)管態(tài) CPU運行操作系統(tǒng)的管理程序的狀態(tài)。 目態(tài)目態(tài) CPU執(zhí)行目的程序時的狀態(tài)。 大中型計算機的I/O指令都是管態(tài)指令,只有當(dāng)CPU處于管態(tài)時,才能運行I/O指令,目態(tài)時不能運行I/O指令。CPU對通道的管理計算機組成原理計算機組成原理通道對設(shè)備控制器的管理l執(zhí)行通道指令執(zhí)行通道指令,譯碼后向設(shè)備控制器發(fā)命,
35、譯碼后向設(shè)備控制器發(fā)命令。令。l用用通道狀態(tài)字通道狀態(tài)字接收和存儲外設(shè)的狀態(tài)。接收和存儲外設(shè)的狀態(tài)。l設(shè)備控制器:設(shè)備控制器:通道對外設(shè)實現(xiàn)傳輸控制的執(zhí)行通道對外設(shè)實現(xiàn)傳輸控制的執(zhí)行機構(gòu);機構(gòu);從通道接受控制命令,控制設(shè)備操作;從通道接受控制命令,控制設(shè)備操作;向通道報告狀態(tài);向通道報告狀態(tài);將設(shè)備來的信號轉(zhuǎn)換通道能識別的信號。將設(shè)備來的信號轉(zhuǎn)換通道能識別的信號。計算機組成原理計算機組成原理8.4.2 通道的類型 l選擇通道選擇通道多個設(shè)備不能同時工作,在某一段時間內(nèi)只能多個設(shè)備不能同時工作,在某一段時間內(nèi)只能選擇一個設(shè)備進(jìn)行工作選擇一個設(shè)備進(jìn)行工作只包含一個子通道只包含一個子通道l多路通道多
36、路通道在一段時間內(nèi)能交替執(zhí)行多個設(shè)備的通道程序在一段時間內(nèi)能交替執(zhí)行多個設(shè)備的通道程序數(shù)組多路通道數(shù)組多路通道:以數(shù)據(jù)塊為基本單位與設(shè)備進(jìn):以數(shù)據(jù)塊為基本單位與設(shè)備進(jìn)行數(shù)據(jù)傳送行數(shù)據(jù)傳送字節(jié)多路通道字節(jié)多路通道:以字節(jié)為基本單位與設(shè)備進(jìn)行:以字節(jié)為基本單位與設(shè)備進(jìn)行數(shù)據(jù)傳送數(shù)據(jù)傳送計算機組成原理計算機組成原理8.5.3 通道結(jié)構(gòu)的發(fā)展 l輸入輸出處理器輸入輸出處理器(IOP)IOP可以和可以和CPU并行工作,提供高速的并行工作,提供高速的DMA處理能力,處理能力,實現(xiàn)數(shù)據(jù)的高速傳送。實現(xiàn)數(shù)據(jù)的高速傳送。不是獨立于不是獨立于CPU工作的,而是主機的一個部件。工作的,而是主機的一個部件。IOP應(yīng)用
37、于中小型及微型計算機中。應(yīng)用于中小型及微型計算機中。l外圍處理機外圍處理機(PPU)PPU基本上獨立于主機工作,有自己的指令系統(tǒng)。基本上獨立于主機工作,有自己的指令系統(tǒng)。有的外圍處理機選用已有的通用計算機。有的外圍處理機選用已有的通用計算機。PPU應(yīng)用于大型高效率的計算機系統(tǒng)中。應(yīng)用于大型高效率的計算機系統(tǒng)中。計算機組成原理計算機組成原理8.5 通用I/O標(biāo)準(zhǔn)接口l并行并行I/O接口標(biāo)準(zhǔn)接口標(biāo)準(zhǔn)SCSI(小型計算機系統(tǒng)接口)(小型計算機系統(tǒng)接口)Small Computer System Interface可混接各種磁盤、光盤、打印機、掃描儀、條碼閱讀器等。可混接各種磁盤、光盤、打印機、掃描儀
38、、條碼閱讀器等。高檔高檔PC、工作站都有此接口。、工作站都有此接口。計算機組成原理計算機組成原理SCSI有如下性能特點: (1) SCSI接口總線由8條數(shù)據(jù)線、一條奇偶校驗線、9條控制線組成。使用50芯電纜,規(guī)定了兩種電氣條件:單端驅(qū)動,電纜長6m;差分驅(qū)動,電纜最長25m。 (2) 總線時鐘頻率為5MHz,異步方式數(shù)據(jù)傳輸率是2.5MB/s,同步方式數(shù)據(jù)傳輸率是5MB/s。 (3) SCSI接口總線以菊花鏈形式最多可連接8臺設(shè)備。在pentium中通常是:由一個主適配器HBA與最多7臺外圍設(shè)備相接,如下圖所示。計算機組成原理計算機組成原理并行I/O接口標(biāo)準(zhǔn)SCSIplay計算機組成原理計算機組成原理IEEE 1394總線l高速串行總線標(biāo)準(zhǔn)接口,適合視頻等家電消費類設(shè)高速串行總線標(biāo)準(zhǔn)接口,適合視頻等家電消費類設(shè)備的連接,俗稱火線備的連接,俗稱火線Fire WireFire Wirel具有數(shù)據(jù)傳送的高速性具有數(shù)據(jù)傳送的高速性數(shù)據(jù)傳輸率:數(shù)據(jù)傳輸率:100Mb/s100Mb/s、200Mb/s200Mb/s、400Mb/s400Mb/sl具有數(shù)據(jù)傳送的實時性具有數(shù)據(jù)傳送的實時性保證多媒體數(shù)據(jù)(圖像和聲音)傳送的連續(xù)保證多媒體數(shù)據(jù)(圖像和聲音)傳送的連續(xù)
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025企業(yè)租賃居間合同范本
- 2025企業(yè)管理資料大學(xué)生村官聘用合同書文檔范本
- 幼兒常見傳染病防控要點
- 人教版小學(xué)英語四年級下學(xué)期末測試卷
- 高中歷史選修一表格總結(jié)模版
- 互聯(lián)網(wǎng)常見術(shù)語
- 復(fù)習(xí)課生活與哲學(xué)求索真理的歷程教學(xué)設(shè)計
- 淚溢的臨床護理
- CSS樣式總結(jié)模版
- 透層試驗段施工總結(jié)
- 機械工程設(shè)備維護與保養(yǎng)手冊
- 蘇少版八年級下冊音樂教案:第六單元《走近交響》教學(xué)設(shè)計
- 全市“民族政策宣傳月”知識答題競賽題庫350題(含答案)
- 雷雨劇本文件完整版電子書下載
- 外墻保溫施工考核試卷
- 2025年社群健康助理員職業(yè)技能培訓(xùn)考試題庫
- 中華人民共和國傳染病防治法培訓(xùn)課件
- 儲料倉施工方案
- 舞弊檢測中的深度學(xué)習(xí)特征提取-深度研究
- 新版統(tǒng)編版七年級下冊道德與法治四單元課件 11.1 法不可違
- 入孵企業(yè)合作協(xié)議書范本
評論
0/150
提交評論