




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1第八章輸入輸出系統(tǒng)計算機硬件可細(xì)分為運算器、控制器、存儲器,輸入設(shè)備和輸出設(shè)備,又可粗略地分為“CPU、存儲器、輸入輸出設(shè)備”三部分。這三部分之間的連接方式和信息交換方式關(guān)系到計算機基本功能的實現(xiàn),是計算機輸入輸出系統(tǒng)所要解決的主要問題。計算機的輸入輸出系統(tǒng)簡稱為I/O系統(tǒng)。一個計算機系統(tǒng)的綜合能力、可擴展性、兼容性和性能價格比,都與I/O系統(tǒng)有密切的關(guān)系。I/O系統(tǒng)是計算機系統(tǒng)中最具有多樣性和復(fù)雜性的部分。1第八章輸入輸出系統(tǒng)計算機硬件可細(xì)分為運算器、控制器、存儲2本章的主要內(nèi)容主要內(nèi)容:總線技術(shù)主機與外設(shè)的連接程序查詢方式中斷系統(tǒng)和程序中斷方式DMA方式及其接口通道控制方式2本章的主要內(nèi)容主要內(nèi)容:3一、總線技術(shù)
以總線連接外設(shè)、主存儲器、CPU等計算機部件,是計算機系統(tǒng)中普遍采用的方式??偩€在計算機系統(tǒng)中是一個非常重要的概念。3一、總線技術(shù) 以總線連接外設(shè)、主存儲器、CPU等計算機部件41、總線定義所謂總線是一組能為多個功能部件分時共享的信息傳輸線路,借助該傳輸線路,計算機在各功能部件之間實現(xiàn)地址、數(shù)據(jù)和控制信息的交換。總線包含地址總線、數(shù)據(jù)總線和控制總線。學(xué)習(xí)總線概念應(yīng)搞清楚兩點,一要搞清楚“一組信息傳輸線路”,二要搞清楚“分時共享”。例如,鐵路線類似于總線,坐車的人相當(dāng)于要傳送的信息。大家都能坐火車出行是共享;滿員時必須選擇乘坐下一車次便是分時??偩€的工作機制也是分時共享,任何時間只允許兩個部件或設(shè)備通過總線交換信息??偩€實體就是一組傳輸線路和相應(yīng)的控制邏輯??刂七壿嫷膶崿F(xiàn)可以是CPU內(nèi)部的控制邏輯,也可以是總線控制器。
41、總線定義所謂總線是一組能為多個功能部件分時共享的信息傳5分時共享的實現(xiàn)如何實現(xiàn)分時呢?解決的思路是讓不參與通信的設(shè)備與總線在邏輯上斷開,從而避免干擾正在輸送數(shù)據(jù)的兩個部件的正常工作??偩€的控制邏輯主要由三態(tài)門實現(xiàn)。三態(tài)門有3種狀態(tài):0、1、高阻態(tài)。三態(tài)門有3只引腳:輸入端、輸出端、控制端(G、G).當(dāng)控制端有效時,三態(tài)門才打開,輸出端反映輸入端的狀態(tài);否則三態(tài)門處于關(guān)閉狀態(tài),輸出端呈現(xiàn)高阻態(tài),也就是在邏輯上被斷開,輸入端不影響輸出端。5分時共享的實現(xiàn)如何實現(xiàn)分時呢?解決的思路是讓不參與通信的設(shè)62、總線分類
從不同的角度出發(fā),總線有不同的分類方法。按計算機系統(tǒng)的層次結(jié)構(gòu),總線分可為:CPU內(nèi)部總線:CPU內(nèi)部連接各寄存器和運算部件之間的互聯(lián)線。由于CPU的集成化,這組總線從外部是看不見的。系統(tǒng)總線:連接計算機系統(tǒng)各功能部件,如CPU、存儲器、I/O接口之間的總線。系統(tǒng)總線是可見的。外總線:計算機之間、計算機與其它設(shè)備之間的連接線稱為外總線。在很多情況下,這些連線不是計算機專用的,主要用于其它設(shè)備上。 總線按時序控制方式可分為同步總線、異步總線、準(zhǔn)同步總線;按數(shù)據(jù)傳送格式可分為串行總線、并行總線。這里不再討論。
62、總線分類 從不同的角度出發(fā),總線有不同的分類方法。按73、總線標(biāo)準(zhǔn)
標(biāo)準(zhǔn)化是一種趨勢,總線也不例外,目前總線基本實現(xiàn)標(biāo)準(zhǔn)化??偩€一般按以下四大特征進(jìn)行規(guī)范。物理特性:物理特性規(guī)定,總線這種插件尺寸有多大?引腳數(shù)有多少?引腳的相對位置如何?功能特性:功能特性規(guī)定,總線的每一根信號線作什么用。電氣特性:電氣特性規(guī)定,每一個信號線電平的高低、信號的傳遞方向等。時間特性:時間特性規(guī)定,信號線完成每一個動作的起止時間,即什么時間有效、能延續(xù)多長時間等。73、總線標(biāo)準(zhǔn) 標(biāo)準(zhǔn)化是一種趨勢,總線也不例外,目前總線基本8總線標(biāo)準(zhǔn)(續(xù))
所謂總線標(biāo)準(zhǔn)就是對總線的這四個方面進(jìn)行規(guī)范。制定總線標(biāo)準(zhǔn)有以下幾方面的好處(優(yōu)點、優(yōu)勢)。從工程的角度考慮,能夠簡化硬件設(shè)計、易于擴充。從用戶的角度考慮,易于獲得,隨便從哪里買、隨便買哪一家的都可以。從廠商的角度考慮,易于批量生產(chǎn)、降低成本。8總線標(biāo)準(zhǔn)(續(xù)) 所謂總線標(biāo)準(zhǔn)就是對總線的這四個方面進(jìn)行規(guī)范94、總線的信息傳送方式串行傳送:只有一條傳輸線,采用脈沖傳送。在串行傳送時,順序傳送一個數(shù)碼的所有二進(jìn)制位,每次一位;先傳送數(shù)碼的最低位,最后傳送最高位。并行傳送:信息字有多少二進(jìn)制位,就需要多少條傳輸線,每個二進(jìn)制位在不同的線上進(jìn)行傳輸。并行傳送一般采用電位傳送,所有位同時被傳送,速度要比串行傳送快。分時傳送:分時傳送有兩種概念,一是采用總線復(fù)用方式,既傳送地址信息,也傳送數(shù)據(jù)信息。為此需要劃分時間片,在不同時間中完成不同的傳送任務(wù)。二是共享總線的部件分時使用總線。94、總線的信息傳送方式串行傳送:只有一條傳輸線,采用脈沖傳105、系統(tǒng)總線總線是一組能為多個功能部件分時共享的信息傳輸線路,借助總線,各功能部件相互交換信息。系統(tǒng)總線主要連接計算機系統(tǒng)內(nèi)部的各功能部件,如CPU、存儲器、I/O設(shè)備等。系統(tǒng)總線是可見的。例如,PC機主板上的很多插槽,實際上就是系統(tǒng)總線的接口。(系統(tǒng))總線設(shè)計的要素包括總線寬度、總線時序、總線仲裁等幾個方面。105、系統(tǒng)總線總線是一組能為多個功能部件分時共享的信息傳輸11總線寬度任何總線的信號線在功能上可分為數(shù)據(jù)線、地址線、控制線。所謂總線寬度就是各功能組中的信號線數(shù),關(guān)系到計算機系統(tǒng)數(shù)據(jù)傳輸?shù)乃俾省⒖晒芾韮?nèi)存的大小、集成度和硬件成本的問題。數(shù)據(jù)線提供各部件數(shù)據(jù)傳送的途徑。典型的數(shù)據(jù)總線有8位、16位、32位等。數(shù)據(jù)總線的寬度決定同時傳送的數(shù)據(jù)位數(shù),增加數(shù)據(jù)總線的寬度能夠提高總線帶寬??偩€帶寬是指單位時間內(nèi)總線傳送的數(shù)據(jù)量,它定義了總線本身所能達(dá)到的最高傳輸速率。地址總線用于傳送讀寫數(shù)據(jù)的單元地址。總線中地址線數(shù)越多,CPU可直接尋址的空間越大。n位總線可尋址2n個單元。控制線主要用來實現(xiàn)控制功能,如中斷請求線和應(yīng)答線、總線請求線和應(yīng)答線等。11總線寬度任何總線的信號線在功能上可分為數(shù)據(jù)線、地址線、控12總線的時序
總線在進(jìn)行信息交換時,必須有時間上的配合,也就是進(jìn)行時序控制。根據(jù)時序的不同,總線的時序控制方式分為同步通信方式和異步通信方式。12總線的時序 總線在進(jìn)行信息交換時,必須有時間上的配合,也13同步通信方式
同步通信方式是指采用統(tǒng)一的時鐘信號進(jìn)行定時、來協(xié)調(diào)收發(fā)雙方的傳送操作。一般由定寬的時標(biāo)同步,完成一次數(shù)據(jù)交換。完成一次總線操作所需的時間稱為總線周期。同步通信方式適用于總線長度較短的場合,由于無法知道接收方是否正確接收,加上時標(biāo)線上的干擾會引起錯誤同步,所以可靠性較低。同步通信必須按最慢的部件設(shè)計時鐘,總線效率會降低。13同步通信方式同步通信方式是指采用統(tǒng)一的時鐘信號進(jìn)行定時14異步通信方式
異步通信沒有統(tǒng)一的時鐘,也沒有固定的時間間隔,完全依靠收發(fā)雙方相互制約的“握手”信號來實現(xiàn)定時控制,也就是定時控制建立在應(yīng)答式或互鎖機制基礎(chǔ)上。通常把交換信息的兩個部件或設(shè)備分為主設(shè)備和從設(shè)備。獲得總線控制權(quán)的設(shè)備稱為主設(shè)備,被主設(shè)備訪問的設(shè)備稱為從設(shè)備。交換信息的請求由主設(shè)備發(fā)起。在異步總線上,后一事件的出現(xiàn)取決于前一事件的出現(xiàn),總線周期不固定,靈活性很強。異步通信過程見圖所示。14異步通信方式異步通信沒有統(tǒng)一的時鐘,也沒有固定的時間間15異步通信方式(續(xù))根據(jù)請求和應(yīng)答信號的建立和撤銷是否互相依賴,異步通信又可分為三種:非互鎖通信、半互鎖通信和全互鎖通信,其中全互鎖通信的可靠性最高。15異步通信方式(續(xù))根據(jù)請求和應(yīng)答信號的建立和撤銷是否互相16總線判優(yōu)和仲裁
總線是在爭用資源的基礎(chǔ)上進(jìn)行工作的。為了解決設(shè)備同時競爭總線控制權(quán),必須有總線仲裁部件,來決定下一次誰將成為主設(shè)備??偩€控制方式就是總線判優(yōu)和仲裁方式。按仲裁機構(gòu)的位置不同,總線控制分為集中控制和分布控制兩大類??偩€控制邏輯基本上集中于一個設(shè)備(如CPU),稱為集中式控制;而總線控制邏輯分散在連接總線的各個部件或設(shè)備,稱為分布式控制。集中式控制方式又分為鏈?zhǔn)讲樵兎绞?、計?shù)查詢方式以及獨立請求方式。
16總線判優(yōu)和仲裁總線是在爭用資源的基礎(chǔ)上進(jìn)行工作的。為了17集中式控制:鏈?zhǔn)讲樵兎绞教攸c:連線數(shù)較少;容易擴充;對故障敏感;部件/設(shè)備離仲裁器越近優(yōu)先級越高。17集中式控制:鏈?zhǔn)讲樵兎绞教攸c:18集中式控制:計數(shù)查詢方式
特點:優(yōu)先級易調(diào)整,先查到的設(shè)備優(yōu)先級高;靈活性強;查詢的實質(zhì)是比較計數(shù)值和地址。18集中式控制:計數(shù)查詢方式特點:19集中式控制:獨立請求方式
特點:響應(yīng)速度快;優(yōu)先級易調(diào)整;控制線多;硬件復(fù)雜。19集中式控制:獨立請求方式特點:20關(guān)于總線的補充說明實現(xiàn)總線控制有現(xiàn)成的芯片可用。例如,總線控制器8288、總線仲裁器8289。部件或設(shè)備在使用總線時,一般需要經(jīng)過申請、建立、使用、歸還四個階段??偩€通過接口連接各功能部件或設(shè)備,換句話說,接口通過系統(tǒng)總線與主機連接,同時又通過外部總線連接設(shè)備。
20關(guān)于總線的補充說明實現(xiàn)總線控制有現(xiàn)成的芯片可用。例如,總21二、主機與外圍設(shè)備的連接
輸入輸出系統(tǒng)是計算機系統(tǒng)的重要組成部分,是溝通計算機與外部世界的橋梁。從硬件邏輯上看,輸入輸出系統(tǒng)包含系統(tǒng)總線、接口和外圍設(shè)備三部分。其中接口又包含了控制外設(shè)工作的絕大部分電路,一般以插件的形式插在計算機主板的擴展槽中;一些公共接口邏輯,如中斷控制器、DMA控制器等,則常置于主板上。下面討論主機與外設(shè)之間的接口。21二、主機與外圍設(shè)備的連接 輸入輸出系統(tǒng)是計算機系統(tǒng)的重要221、輸入輸出接口所謂接口泛指兩個相對獨立的子系統(tǒng)之間的連接機構(gòu)。輸入輸出接口,也叫I/O接口,是指主機和外設(shè)之間的硬件連接邏輯以及信號傳遞協(xié)議,用來實現(xiàn)主機和外設(shè)之間的信息交換。I/O接口的表現(xiàn)形式有大家常見的接口卡或者叫適配器。通過接口,主機和外設(shè)可以完成包括數(shù)據(jù)信息、控制信息、和狀態(tài)信息等的交換。221、輸入輸出接口所謂接口泛指兩個相對獨立的子系統(tǒng)之間的連接口所處的位置為什么必須要通過接口來實現(xiàn)信息的交換呢?
適配器也叫接口系統(tǒng)總線連接主機和接口外總線連接設(shè)備接口所處的位置為什么必須要通過接口來實現(xiàn)信息的交換呢?適配242、接口的功能與基本組成控制功能:接口包含大部分外設(shè)的控制電路,如啟動設(shè)備等。數(shù)據(jù)緩沖功能:主機和外設(shè)工作速度差異很大,需要解決兩者之間的速度匹配問題。解決的辦法是設(shè)立數(shù)據(jù)緩沖寄存器。接口中數(shù)據(jù)緩沖寄存器對I/O數(shù)據(jù)起緩沖作用。數(shù)據(jù)格式變換功能:在輸入輸出過程中,接口電路必須能對數(shù)據(jù)的格式進(jìn)行轉(zhuǎn)換,以滿足主機或外設(shè)對信息形式的不同要求。例如,串/并轉(zhuǎn)換,數(shù)/模轉(zhuǎn)換等等。尋址功能:任何一個計算機系統(tǒng)都配備多種外設(shè),同一種外設(shè)也可能有多臺,主機隨時可能與不同外設(shè)交換信息。當(dāng)主機送來選擇外設(shè)的地址碼時,接口必須能進(jìn)行譯碼,從而正確識別外設(shè)。傳遞控制命令和狀態(tài)信息功能:接口是主機命令下達(dá)和外設(shè)狀態(tài)上傳的必由之路,只有正確完成傳遞控制命令和反饋狀態(tài)信息,才能實現(xiàn)主機和外設(shè)的信息交換。實現(xiàn)時序信號的配合、驅(qū)動能力和工作電平的匹配等功能。242、接口的功能與基本組成控制功能:接口包含大部分外設(shè)的控25主機、接口、和外設(shè)之間的連接
接口的基本組成包括:數(shù)據(jù)寄存器、命令/狀態(tài)寄存器、地址寄存器、設(shè)備識別電路、數(shù)據(jù)格式轉(zhuǎn)換電路、控制電路等。接口(Interface)與端口(Port)是兩個不同的的概念。端口是指接口電路中可以被CPU訪問的寄存器,它至少包含數(shù)據(jù)寄存器和命令/狀態(tài)寄存器。端口加上相應(yīng)的控制邏輯構(gòu)成接口。和主機的接口
和外設(shè)的接口
25主機、接口、和外設(shè)之間的連接接口的基本組成包括:數(shù)據(jù)寄263、接口的編址編址的目的是為了尋址,為了找到進(jìn)行信息交換的外圍設(shè)備。I/O端口地址是主機與外設(shè)直接通訊的地址,I/O設(shè)備的編址方式就是端口的編址方式。I/O設(shè)備的編址方式有兩種:獨立編址方式
獨立編址方式是指I/O端口地址與存儲器地址無關(guān),單獨編碼,CPU用專門設(shè)置的I/O指令訪問端口。 特點:不占用存儲空間,但需要專門設(shè)置I/O指令,且I/O指令僅限于傳輸,功能較弱。如8086系列機就采用獨立編址方式。統(tǒng)一編址方式 統(tǒng)一編址方式是把I/O端口當(dāng)作存儲器的單元來分配地址。不設(shè)專門的I/O指令,使用訪存指令就能實現(xiàn)I/O操作。 特點:CPU訪問外設(shè)更靈活方便,但使內(nèi)存容量減??;進(jìn)行I/O操作時,執(zhí)行速度比較慢。PDP-11采用統(tǒng)一編址方式。263、接口的編址編址的目的是為了尋址,為了找到進(jìn)行信息交換274、接口的分類按數(shù)據(jù)傳輸?shù)母袷?,可分為串行接口、并行接口。串行接口是指在主機和接口一側(cè)并行傳送信息、接口和外設(shè)則一側(cè)串行傳送信息。一般而言,串行接口速度慢,但傳輸線數(shù)少,適用于傳輸距離較遠(yuǎn)的場合、以及本身串行工作的設(shè)備。并行接口是指主機和接口一側(cè)以及接口和設(shè)備一側(cè)都以字節(jié)或字并行傳輸。并行接口傳輸速度快,但傳輸線數(shù)多,適用于傳輸距離較近的場合、以及本身并行工作的設(shè)備。按總線操作時序的控制方式,可分為同步接口、異步接口。同步接口是指與同步總線相連的接口,其信息傳送由統(tǒng)一的時序信號同步控制。異步接口則是指與異步總線相連的接口,其信息傳送采用應(yīng)答方式控制。按主機對外設(shè)的控制方式,可分為程序查詢接口、中斷接口、DMA接口、以及通道控制器等。這將是本章要集中討論的問題。274、接口的分類按數(shù)據(jù)傳輸?shù)母袷剑煞譃榇薪涌?、并行接?85、外設(shè)的信息交換方式
在計算機系統(tǒng)中,CPU管理外設(shè)、實現(xiàn)信息交換的方式有:
程序查詢方式和程序中斷方式適用于數(shù)據(jù)傳輸速率比較低的設(shè)備;而DMA方式、通道方式、和PPU方式適用于數(shù)據(jù)傳輸率比較高的設(shè)備。目前,單片機和微型計算機中多采用程序查詢方式、程序中斷方式和DMA方式;大、中型計算機則采用通道方式和PPU方式。低速設(shè)備高速設(shè)備285、外設(shè)的信息交換方式在計算機系統(tǒng)中,CPU管29三、程序查詢方式
在程序查詢方式下,數(shù)據(jù)在CPU和外設(shè)之間的傳送完全靠計算機程序控制。某一設(shè)備一旦被選中,主機將不停地查詢這個設(shè)備,看其是否準(zhǔn)備就緒。如果設(shè)備準(zhǔn)備就緒,就執(zhí)行一次I/O操作,否則繼續(xù)循環(huán)查詢。 在程序查詢方式下,CPU只能等待,不能處理其它業(yè)務(wù)。 程序查詢方式又分為兩種情況:無條件傳送和條件傳送。
29三、程序查詢方式 在程序查詢方式下,數(shù)據(jù)在CPU和外設(shè)301、無條件傳送無條件傳送是假設(shè)外設(shè)始終處于準(zhǔn)備好狀態(tài),即準(zhǔn)備好接收主機送來的數(shù)據(jù)、或者準(zhǔn)備好向主機發(fā)送數(shù)據(jù)。在這種情況下,CPU無需查詢外設(shè)的工作狀態(tài),CPU執(zhí)行I/O指令就可以完成需要的I/O操作。在實際的計算機系統(tǒng)中,這種情況較為少見。例如,繼電器狀態(tài)的輸入,就屬于這種情況。301、無條件傳送無條件傳送是假設(shè)外設(shè)始終處于準(zhǔn)備好狀態(tài),即312、條件傳送許多情況下,外設(shè)的工作狀態(tài)是很難事先知道的,比如什么時間按下鍵盤的鍵。為了確保外設(shè)送給CPU的數(shù)據(jù)不丟失、或者CPU送出的數(shù)據(jù)能被外備接收,需要CPU在程序中不停地、反復(fù)地查詢外設(shè)的狀態(tài),而且在查詢期間不能做其它事情,否則容易造成數(shù)據(jù)丟失。這就是程序查詢方式。312、條件傳送許多情況下,外設(shè)的工作狀態(tài)是很難事先知道的,323、程序查詢方式的接口電路接口電路的一般原理圖如下:數(shù)據(jù)寄存器,雙向,接收CPU數(shù)據(jù)送往外設(shè);或接收外設(shè)數(shù)據(jù)送往CPU。命令寄存器,單向,接收CPU送來的命令,并控制完成讀寫或其它操作。狀態(tài)寄存器:存儲反映外設(shè)的工作狀態(tài),這個寄存器在程序查詢方式中是必須要設(shè)置的,它是程序進(jìn)行I/O操作的判斷依據(jù)
。CPU并不直接訪問外設(shè),而是通過以上三個寄存器實現(xiàn)外設(shè)訪問的。323、程序查詢方式的接口電路接口電路的一般原理圖如下:數(shù)據(jù)33程序查詢方式的接口電路(續(xù))給出一個具體的輸入接口電路來介紹查詢程序的步驟,設(shè)該電路具有4個端口地址。程序查詢方式的優(yōu)點是控制簡單,所用硬件較少;缺點是外設(shè)和主機不能并行工作,系統(tǒng)效率很低。33程序查詢方式的接口電路(續(xù))給出一個具體的輸入接口電路來34四、程序中斷方式
程序查詢方式通過不斷地查詢外設(shè)的狀態(tài),來等待外設(shè)工作的完成,以犧牲CPU的效率,達(dá)到CPU與外設(shè)的同步。中斷方式與此不同,中斷是現(xiàn)代計算機有效地發(fā)揮效能和提高效率的一個十分重要的功能。34四、程序中斷方式 程序查詢方式通過不斷地查詢外設(shè)的狀態(tài),351、中斷的基本概念所謂中斷是指CPU在執(zhí)行程序的過程中,出現(xiàn)了某些突發(fā)事件,CPU必須暫?,F(xiàn)行程序的執(zhí)行,轉(zhuǎn)去處理突發(fā)事件,處理完該突發(fā)事件后,CPU又回到原來程序被打斷的位置繼續(xù)執(zhí)行。這個過程稱為中斷,這種控制方式稱為中斷控制方式?,F(xiàn)實中有很多中斷的例子。在程序中斷方式中,某一外設(shè)的數(shù)據(jù)準(zhǔn)備就緒后,就“主動”向CPU發(fā)出中斷請求信號,當(dāng)CPU響應(yīng)這個中斷時,便暫?,F(xiàn)行程序的運行,自動轉(zhuǎn)移到該設(shè)備的中斷服務(wù)程序,完成數(shù)據(jù)交換。當(dāng)中斷服務(wù)程序執(zhí)行結(jié)束后,CPU又回到原來的程序繼續(xù)運行。351、中斷的基本概念所謂中斷是指CPU在執(zhí)行程序的過程中,36中斷的基本概念(續(xù))
圖中,主程序只是在設(shè)備A、B、C數(shù)據(jù)準(zhǔn)備就緒時,才去處理A、B、C的數(shù)據(jù)交換??梢钥闯?,在速度較慢的外設(shè)準(zhǔn)備自己的數(shù)據(jù)時,CPU照常執(zhí)行自己的主程序。在這個意義下,CPU和外設(shè)的操作是并行進(jìn)行的。因此,提高了計算機系統(tǒng)的效率。36中斷的基本概念(續(xù)) 圖中,主程序只是在設(shè)備A、B、C數(shù)372、中斷的實質(zhì)與特點實質(zhì):程序切換。從程序的觀點看,中斷就是從現(xiàn)行程序到中斷服務(wù)程序的切換,而中間過程都是為這個切換服務(wù)的。切換的方法:一是保存斷點。程序能夠按順序正確地執(zhí)行,依靠的是程序狀態(tài)字和程序計數(shù)器。發(fā)生中斷時,它們的內(nèi)容稱為斷點,也就是已經(jīng)執(zhí)行完的最后一條指令的狀態(tài)和將要執(zhí)行的下一條指令的地址。執(zhí)行完中斷服務(wù)程序后,要返回原程序繼續(xù)執(zhí)行,就要記住從哪個位置繼續(xù)執(zhí)行。二是恢復(fù)斷點。在程序返回時,把先前保存的值(斷點)再放回程序狀態(tài)字和程序計數(shù)器,顯然會接著原來的位置繼續(xù)執(zhí)行。切換時間:什么時間切換是重要的。中斷的產(chǎn)生是隨機的,可能是在指令執(zhí)行的任何一點。為保證程序執(zhí)行的完整性,應(yīng)在一條指令執(zhí)行完、下一條指令開始執(zhí)行之前進(jìn)行切換。特點:隨機性,無法預(yù)料隨機事件在什么時間發(fā)生。372、中斷的實質(zhì)與特點實質(zhì):程序切換。從程序的觀點看,中斷383、中斷的分類根據(jù)中斷請求的來源,中斷分為內(nèi)中斷和外中斷。內(nèi)中斷是指中斷請求來自CPU內(nèi)部的中斷。如,運算溢出、除數(shù)為零引起的中斷以及某些軟中斷都為內(nèi)中斷。外中斷是指中斷請求來自CPU之外的中斷。如,電源掉電、校驗錯等硬件故障引起的中斷、由外設(shè)進(jìn)行I/O操作引起的中斷。根據(jù)中斷產(chǎn)生的軟硬件,分為硬件中斷和軟中斷硬件中斷是指由硬件請求信號引發(fā)的中斷。軟中斷是指由執(zhí)行軟中斷指令引發(fā)的中斷。383、中斷的分類根據(jù)中斷請求的來源,中斷分為內(nèi)中斷和外中斷39中斷的分類(續(xù)一)根據(jù)中斷請求的緊急程度,分為可屏蔽中斷和非屏蔽中斷??善帘沃袛嗍侵改切┫鄬墑e比較低,可以通過屏蔽技術(shù)進(jìn)行禁止或開放操作的中斷,常用于一般設(shè)備的I/O操作。非屏蔽中斷是指那些優(yōu)先級別較高,必須立即響應(yīng),且不能通過屏蔽技術(shù)進(jìn)行禁止或開放操作的中斷。常用于應(yīng)急處理,如電源掉電等。(內(nèi)中斷均屬于不可屏蔽中斷)。根據(jù)獲得服務(wù)程序入口地址的方法,分為向量中斷和非向量中斷。
向量中斷是指由硬件提供中斷服務(wù)程序入口地址的中斷,中斷事件在提出中斷請求的同時,通過硬件向主機提供向量地址
。非向量中斷是指由軟件提供中斷服務(wù)程序入口地址的中斷,如先固定地提供一個查詢程序的地址,再執(zhí)行該程序查詢找出中斷源,繼而通過分支轉(zhuǎn)移進(jìn)入對應(yīng)的中斷服務(wù)程序。
39中斷的分類(續(xù)一)根據(jù)中斷請求的緊急程度,分為可屏蔽中斷40中斷的分類(續(xù)二)40中斷的分類(續(xù)二)414、中斷系統(tǒng)的組成軟件:首先是中斷服務(wù)程序。實現(xiàn)中斷所要求的功能在中斷服務(wù)程序中完成,如數(shù)據(jù)的輸入輸出操作,要靠中斷服務(wù)程序中的I/O指令來完成。其次是中斷向量表。中斷向量表是中斷系統(tǒng)中的軟硬件的界面,通過中斷向量表實現(xiàn)由主程序到中斷服務(wù)程序的切換,而且為了贏得時間,切換過程全部由硬件完成。硬件:首先是接口方面。中斷請求、信號傳遞、排隊判優(yōu)等由接口中的硬件完成,最后優(yōu)先級最高的中斷請求到達(dá)CPU。其次是CPU方面,主要是中斷響應(yīng)邏輯。CPU收到請求信號以后,便開始一個稱為“中斷響應(yīng)周期”的時間段,在這個時間段中完成到中斷服務(wù)程序的切換。414、中斷系統(tǒng)的組成軟件:首先是中斷服務(wù)程序。實現(xiàn)中斷所要425、向量中斷的全過程
向量中斷是一種重要的中斷方式,我們主要討論向量中斷。通常,向量中斷的過程劃分為五個階段: ①中斷請求 ②中斷判優(yōu) ③中斷響應(yīng) ④中斷處理 ⑤中斷返回 下面將以向量中斷為例來介紹中斷的全過程。425、向量中斷的全過程 向量中斷是一種重要的中斷方式,我們43①中斷請求與傳遞產(chǎn)生中斷請求信號的第一個條件是中斷源有中斷請求。外設(shè)工作完成,等待和主機進(jìn)行數(shù)據(jù)交換。例如,輸入設(shè)備的數(shù)據(jù)已經(jīng)準(zhǔn)備好,等待主機取走數(shù)據(jù);或者輸出設(shè)備已經(jīng)將數(shù)據(jù)寄存器的數(shù)據(jù)取走,等待主機送來新的數(shù)據(jù)。產(chǎn)生中斷請求信號的第二個條件是允許外設(shè)以中斷方式工作。在中斷接口電路中有一個中斷屏蔽觸發(fā)器,它相當(dāng)于一個開關(guān)。當(dāng)該觸發(fā)器為0時,表示開放中斷,即可以發(fā)出中斷請求信號;當(dāng)該觸發(fā)器為1時,表示屏蔽中斷,即中斷請求信號不能發(fā)出。43①中斷請求與傳遞產(chǎn)生中斷請求信號的第一個條件是中斷源有中斷請求與傳送(續(xù)一)
中斷請求信號必須傳送到CPU才能得到響應(yīng)。有三種傳遞方式:公共請求線:多個中斷源公用一根請求線向CPU提出中斷請求。獨立請求線:每個中斷源有自己的中斷請求線,將中斷信號直接送往CPU。二維結(jié)構(gòu):將中斷請求線連接成二維結(jié)構(gòu),用多條線向CPU請求中斷,每條線上有多個中斷源。中斷請求與傳送(續(xù)一) 中斷請求信號必須傳送到CPU才能得到45②中斷判優(yōu)一臺計算機允許有多個中斷源。在中斷接口電路中,記錄中斷事件的觸發(fā)器稱為中斷請求觸發(fā)器,一個觸發(fā)器紀(jì)錄一個中斷;多個中斷請求觸發(fā)器通稱為中斷請求寄存器,一個中斷請求寄存器可以記錄多個中斷請求。CPU在任何瞬間只能接受一個中斷請求。當(dāng)多個中斷源同時發(fā)出中斷請求時,應(yīng)該先響應(yīng)誰的中斷請求,則由中斷優(yōu)先級決定。所謂中斷優(yōu)先級是指多個中斷同時發(fā)生時,CPU響應(yīng)中斷的優(yōu)先次序,它由優(yōu)先級排隊電路決定。一般原則是按照中斷事件的輕重緩急劃分優(yōu)先級。對那些提出中斷時需要立即響應(yīng)和處理的中斷源,規(guī)定較高級別的優(yōu)先級,而對那些提出中斷請求時可以延遲響應(yīng)和處理的中斷源,則規(guī)定較低的優(yōu)先級。例如,“故障、DMA、外中斷……”優(yōu)先級依次降低。45②中斷判優(yōu)一臺計算機允許有多個中斷源。在中斷接口電路中46中斷判優(yōu):軟件判優(yōu)
當(dāng)中斷發(fā)生后,尤其是當(dāng)多個中斷源提出中斷請求后,如何實現(xiàn)優(yōu)先級的判斷呢?中斷判優(yōu)方法有兩種:軟件判優(yōu)法和硬件判優(yōu)法。所謂軟件判優(yōu)是指用程序查詢的方法確定中斷源的優(yōu)先級。軟件判優(yōu)時,最先檢查的中斷源具有最高優(yōu)先級,以后檢查的中斷源的優(yōu)先級逐次遞減,最后檢查的中斷源的優(yōu)先級最低。軟件判優(yōu)可以靈活修改優(yōu)先級。(想想,軟件屬于中斷程序)46中斷判優(yōu):軟件判優(yōu) 當(dāng)中斷發(fā)生后,尤其是當(dāng)多個中斷源提出47中斷判優(yōu):串行排隊鏈判優(yōu)
硬件判優(yōu)又分為串行排隊鏈判優(yōu)和獨立請求排隊判優(yōu)。串行排隊鏈判優(yōu):串行排隊鏈判優(yōu)用硬件實現(xiàn),包括串行排隊電路和向量編碼電路。當(dāng)同時有兩個(以上)中斷源發(fā)出中斷請求信號時,被選中的總是最左邊的一個中斷源。47中斷判優(yōu):串行排隊鏈判優(yōu) 硬件判優(yōu)又分為串行排隊鏈判優(yōu)和48中斷判優(yōu):獨立請求排隊判優(yōu)
假設(shè)中斷請求寄存器的內(nèi)容為1111,中斷屏蔽寄存器的內(nèi)容為0010,那么進(jìn)入排隊器的中斷請求是1101。根據(jù)優(yōu)先次序,排隊輸出為1000,并由編碼器產(chǎn)生中斷源1對應(yīng)的向量地址。硬件排隊判優(yōu)的特點是速度快,硬件電路復(fù)雜。48中斷判優(yōu):獨立請求排隊判優(yōu)假設(shè)中斷請求寄存器的內(nèi)容為149③中斷響應(yīng)經(jīng)過中斷判優(yōu)的中斷請求需要等待CPU的響應(yīng)才能得到處理。然而,CPU對中斷的響應(yīng)是有條件的。CPU響應(yīng)中斷要滿足三個條件:中斷源有中斷請求,而且未受到屏蔽;CPU接受中斷請求,CPU處于開中斷狀態(tài);一條指令執(zhí)行完畢,而且無DMA請求。49③中斷響應(yīng)經(jīng)過中斷判優(yōu)的中斷請求需要等待CPU的響應(yīng)才50中斷響應(yīng)(續(xù))
當(dāng)CPU決定響應(yīng)中斷后,進(jìn)入一個稱為“中斷響應(yīng)周期”的過渡期(位于原程序和中斷服務(wù)程序之間)。在此期間,完全依靠硬件切換程序,也就是完成以下四項操作。CPU向外設(shè)發(fā)出中斷應(yīng)答信號INTA,表示CPU對中斷的認(rèn)可。中斷控制器收到該信號后,將中斷的向量地址(微機中為中斷類型碼)發(fā)送到數(shù)據(jù)總線上,CPU取走向量地址,并撤銷INTA。關(guān)中斷。目的是為了保證本次中斷響應(yīng)過程不受干擾。保護(hù)斷點。斷點指程序計數(shù)器PC的值和狀態(tài)寄存器PSW的值。把兩者內(nèi)容依次壓入堆棧,稱為保護(hù)斷點。保護(hù)斷點是為了在中斷結(jié)束后恢復(fù)斷點,從而返回被中斷的程序。CPU根據(jù)中斷向量地址獲得中斷服務(wù)程序的入口地址,送入PC。到此中斷響應(yīng)周期結(jié)束,開始中斷服務(wù)程序的執(zhí)行。50中斷響應(yīng)(續(xù)) 當(dāng)CPU決定響應(yīng)中斷后,進(jìn)入一個稱為“中④中斷處理④中斷處理52中斷處理(續(xù))中斷處理是通過執(zhí)行中斷處理程序完成的。中斷處理程序是事先編好放在內(nèi)存固定位置的一段程序。中斷處理程序的編制不可避免會用到一些通用寄存器,而這些寄存器在被中斷的程序中也可能正在使用,它們存放著現(xiàn)行程序的工作數(shù)據(jù),所以稱之為中斷現(xiàn)場。為了不破壞這個工作現(xiàn)場,必須在中斷程序中加以保護(hù),由軟件將其轉(zhuǎn)移到安全的地方,通常是壓入堆棧。中斷處理程序一般采用三段式結(jié)構(gòu),開頭保護(hù)現(xiàn)場,中間為中斷處理(屬于實質(zhì)性內(nèi)容),結(jié)尾恢復(fù)現(xiàn)場。硬件保護(hù)斷點軟件保護(hù)現(xiàn)場52中斷處理(續(xù))中斷處理是通過執(zhí)行中斷處理程序完成的。中斷53⑤中斷返回
中斷返回是由中斷處理程序的最后一條指令(IRET)實現(xiàn)的,該指令的功能一是恢復(fù)原來被中斷程序的PC和PSW值,這些值在中斷響應(yīng)周期中保存于堆棧中;二是開中斷。這樣就又轉(zhuǎn)到了原來程序的斷點處繼續(xù)工作。53⑤中斷返回 中斷返回是由中斷處理程序的最后一條指令(I546、程序中斷方式的基本接口
程序中斷由外設(shè)接口狀態(tài)和CPU兩方面來控制.在接口中,有決定是否向CPU發(fā)出中斷請求的機構(gòu),主要是準(zhǔn)備就緒RD和中斷屏蔽IM兩個觸發(fā)器。在CPU方面,有決定是否受理中斷請求的機構(gòu),主要是中斷請求IR和允許中斷EI兩個觸發(fā)器。546、程序中斷方式的基本接口 程序中斷由外設(shè)接口狀態(tài)和CP557、單級中斷與多級中斷處理單級中斷:
單級中斷系統(tǒng)是中斷結(jié)構(gòu)中最基本的一種形式。單級中斷系統(tǒng)中不同優(yōu)先級的設(shè)備同時請求時,CPU按照優(yōu)先級一個一個進(jìn)行處理。當(dāng)CPU正在處理某個中斷時,不允許其它中斷源再中斷CPU的程序,即使優(yōu)先權(quán)比它高的中斷源提出中斷請求也是如此。557、單級中斷與多級中斷處理單級中斷:56單級中斷與多級中斷處理(續(xù))
多級中斷
多級中斷系統(tǒng)是指計算機中有很多中斷源,根據(jù)各個中斷事件的輕重緩急的程度分成若干級別,每個級別分配一個優(yōu)先權(quán),而且規(guī)定優(yōu)先權(quán)高的中斷級可以打斷優(yōu)先權(quán)低的中斷服務(wù)程序,并以程序嵌套方式進(jìn)行工作。56單級中斷與多級中斷處理(續(xù))多級中斷57單級中斷與多級中斷處理(續(xù))中斷屏蔽與中斷處理次序中斷響應(yīng)次序是由硬件排隊判優(yōu)線路決定的。但是,在中斷屏蔽技術(shù)的控制條件下,可以通過軟件改變屏蔽位的狀態(tài),從而改變多級中斷(多重中斷)的處理次序。中斷系統(tǒng)的優(yōu)先級包含兩層意思,一是響應(yīng)優(yōu)先級,二是處理優(yōu)先級。響應(yīng)優(yōu)先級是指由硬件排隊電路決定的、CPU準(zhǔn)備響應(yīng)中斷請求的次序,排隊電路一旦設(shè)計好將無法改變;處理優(yōu)先級是指可由中斷屏蔽碼改變的、CPU對中斷請求的實際處理的先后次序。如果不進(jìn)行屏蔽,中斷處理次序就是中斷響應(yīng)次序。57單級中斷與多級中斷處理(續(xù))中斷屏蔽與中斷處理次序58單級中斷與多級中斷處理(續(xù))
例、某計算機的中斷系統(tǒng)有4個中斷源,每個中斷源對應(yīng)一個屏蔽碼。表1為程序優(yōu)先級與屏蔽碼的關(guān)系,中斷響應(yīng)的優(yōu)先次序為ABCD。此時,中斷的處理次序和響應(yīng)次序是一致的。
表1:程序優(yōu)先級與屏蔽碼的關(guān)系中斷服務(wù)程序屏蔽碼A設(shè)備B設(shè)備C設(shè)備D設(shè)備A設(shè)備服務(wù)程序1111B設(shè)備服務(wù)程序0111C設(shè)備服務(wù)程序0011D設(shè)備服務(wù)程序000158單級中斷與多級中斷處理(續(xù)) 例、某計算機的中斷系統(tǒng)有459單級中斷與多級中斷處理(續(xù))當(dāng)A、B、C、D四個中斷請求同時到來時,CPU的運動軌跡如下:
中斷服務(wù)程序屏蔽碼A設(shè)備B設(shè)備C設(shè)備D設(shè)備A設(shè)備服務(wù)程序1111B設(shè)備服務(wù)程序0111C設(shè)備服務(wù)程序0011D設(shè)備服務(wù)程序0001當(dāng)中斷請求按D、C、B、A的次序到來時,CPU運動軌跡為:59單級中斷與多級中斷處理(續(xù))當(dāng)A、B、C、D四個中斷請求60單級中斷與多級中斷處理(續(xù))在不改變中斷響應(yīng)次序的條件下,改變屏蔽碼可以改變中斷處理次序。在A、B、C、D中斷請求同時到來時,CPU的運動軌跡將發(fā)生變化。 響應(yīng)ABCD;處理ADCB。中斷服務(wù)程序屏蔽碼A設(shè)備B設(shè)備C設(shè)備D設(shè)備A設(shè)備服務(wù)程序1111B設(shè)備服務(wù)程序0100C設(shè)備服務(wù)程序0110D設(shè)備服務(wù)程序011160單級中斷與多級中斷處理(續(xù))在不改變中斷響應(yīng)次序的條件下61*單級中斷與多級中斷處理(續(xù))允許和禁止中斷、開放和屏蔽中斷禁止中斷與屏蔽中斷是兩個不同的概念。禁止中斷是指“CPU中”的中斷允許觸發(fā)器置0,處于“關(guān)中斷”,所有可屏蔽中斷源的中斷請求得不到響應(yīng)。允許中斷是指CPU中的中斷允許觸發(fā)器置1,處于“開中斷”,可以響應(yīng)中斷源的中斷請求。允許和禁止中斷對應(yīng)開和關(guān)中斷。屏蔽中斷是指某個中斷源“接口中”的中斷屏蔽觸發(fā)器被置1,對應(yīng)的中斷源不能發(fā)出中斷請求,處于“中斷封鎖”。當(dāng)中斷接口中的中斷屏蔽觸發(fā)器置0,則該中斷源處于“中斷開放”,此時對應(yīng)的中斷源可以發(fā)出中斷請求。61*單級中斷與多級中斷處理(續(xù))允許和禁止中斷、開放和屏蔽62五、DMA方式跟程序查詢方式相比,中斷方式更有效,但中斷方式的數(shù)據(jù)傳送仍以程序方式實現(xiàn),在程序切換過程中存在許多額外操作,如保護(hù)斷點、保護(hù)現(xiàn)場、恢復(fù)斷點、恢復(fù)現(xiàn)場等,所以傳送效率仍然不是很高,只適合中、低速設(shè)備的I/O操作。
在大批量、高速度傳送數(shù)據(jù)時,需要一種更加有效的方法,這就是DMA。DMA在主存和外設(shè)之間實現(xiàn)高速、批量數(shù)據(jù)交換,數(shù)據(jù)傳輸完全依靠硬件,不需要執(zhí)行程序,因而速度快、效率高。62五、DMA方式跟程序查詢方式相比,中斷方式更有效,但中斷631、DMA的基本概念DMA方式是直接內(nèi)存訪問方式的簡稱,它完全依靠硬件在主存和I/O設(shè)備之間進(jìn)行直接的數(shù)據(jù)傳送,在傳送期間不需要CPU干預(yù)。理解DMA概念,需要弄清兩層含義。其一,直接存儲器訪問時,數(shù)據(jù)不經(jīng)過CPU。這意味著主存和外設(shè)之間有直接的數(shù)據(jù)通路,稱為高速存儲總線;其二,數(shù)據(jù)傳送直接由硬件完成,不依靠程序的執(zhí)行,所以不需要CPU介入來實現(xiàn)控制。DMA方式的主要優(yōu)點是速度快。第一,CPU不參與數(shù)據(jù)傳送操作,不需要取指令、取數(shù)等操作;第二,不需要進(jìn)行保護(hù)現(xiàn)場、恢復(fù)現(xiàn)場之類的工作。第三,內(nèi)存地址、傳送數(shù)據(jù)個數(shù)的計數(shù)也由硬件完成。DMA方式的主要缺點是硬件線路復(fù)雜。631、DMA的基本概念DMA方式是直接內(nèi)存訪問方式的簡稱,642、特點與應(yīng)用DMA方式的特點:以響應(yīng)隨機請求方式,實現(xiàn)主存和外設(shè)之間的快速數(shù)據(jù)傳送;數(shù)據(jù)傳送不影響CPU的程序狀態(tài),除了訪問主存發(fā)生的沖突外,CPU可以繼續(xù)執(zhí)行自己的程序;數(shù)據(jù)傳送前的準(zhǔn)備工作由操作系統(tǒng)的管理程序承擔(dān),DMA只負(fù)責(zé)簡單的數(shù)據(jù)傳送操作,傳送結(jié)束后的善后處理則采用程序中斷方式解決。DMA方式一般用于主存和高速設(shè)備間的數(shù)據(jù)傳送、以及DRAM的刷新控制。高速設(shè)備包括:磁盤、磁帶、光盤等外存儲器。其它帶有局部存儲器的外圍設(shè)備、通信設(shè)備。642、特點與應(yīng)用DMA方式的特點:653、DMA傳送方式 DMA技術(shù)的出現(xiàn),使得外設(shè)可以通過DMA控制器直接訪問內(nèi)存;同時,CPU可以繼續(xù)執(zhí)行程序,也要訪問內(nèi)存。那么DMA控制器是如何與CPU分時使用內(nèi)存的?通常情況下有三種方法:停止CPU訪問內(nèi)存;周期挪用;DMA與CPU交替訪問內(nèi)存。653、DMA傳送方式 DMA技術(shù)的出現(xiàn),使得外設(shè)可以通過D66停止CPU訪存當(dāng)外設(shè)要求傳送一批數(shù)據(jù)時,由DMA控制器提出申請,要求CPU放棄地址總線、數(shù)據(jù)總線和有關(guān)控制總線的使用權(quán)。申請獲得批準(zhǔn)后,DMA控制器開始掌控總線,并進(jìn)行數(shù)據(jù)傳送。數(shù)據(jù)傳送完成后,DMA控制器把總線控制權(quán)交還CPU,通知CPU使用內(nèi)存。這是一個完整的“申請——建立——傳送——歸還”的過程。優(yōu)點:控制簡單,適合高速設(shè)備成組傳送數(shù)據(jù); 缺點:DMA控制器訪問內(nèi)存的時間里,內(nèi)存的效能沒有充分發(fā)揮。66停止CPU訪存當(dāng)外設(shè)要求傳送一批數(shù)據(jù)時,由DMA控制器提67周期挪用法當(dāng)I/O設(shè)備沒有DMA請求時,CPU按程序要求訪問內(nèi)存;一旦I/O設(shè)備有DMA請求并獲得CPU批準(zhǔn)后,CPU讓出一兩個周期的總線控制權(quán),由I/O設(shè)備挪用,進(jìn)行一次數(shù)據(jù)傳送;然后,DMA控制器把總線控制權(quán)交還CPU,CPU繼續(xù)工作。重復(fù),直到數(shù)據(jù)塊傳送完。CPU不需要訪存時,I/O設(shè)備挪用一兩個內(nèi)存周期對CPU執(zhí)行程序沒有影響;I/O設(shè)備和CPU同時要求訪存時,I/O設(shè)備訪存優(yōu)先,因I/O設(shè)備有時間要求,不能錯過收發(fā)數(shù)據(jù)的機會。這種方法使用較多。含申請、建立、傳送、歸還過程67周期挪用法當(dāng)I/O設(shè)備沒有DMA請求時,CPU按程序要求68DMA與CPU交替訪問內(nèi)存這種方法是把一個存取周期一分為二,一半給DMA使用,一半給CPU使用。其原理示意圖如下。這種方式不需要總線使用權(quán)的申請、建立和歸還過程,總線使用權(quán)是分時控制的。CPU和DMA控制器各有自己訪問內(nèi)存的地址寄存器、數(shù)據(jù)寄存器、讀寫信號等控制寄存器??偩€控制權(quán)的轉(zhuǎn)移幾乎不需要時間,DMA傳送效率很高。但硬件控制邏輯也就更加復(fù)雜,而且在沒有DMA數(shù)據(jù)傳送情況下,時間片被浪費。68DMA與CPU交替訪問內(nèi)存這種方法是把一個存取周期一分為694、基本的DMA控制器
一個DMA控制器是連接DMA方式的外設(shè)與系統(tǒng)總線的接口電路,這個接口電路是在中斷接口的基礎(chǔ)上再加DMA機構(gòu)組成的。DMA控制器組成:1、主存地址計數(shù)器2、傳送長度計數(shù)器3、數(shù)據(jù)緩沖寄存器4、DMA請求觸發(fā)器5、控制/狀態(tài)邏輯6、中斷機構(gòu)694、基本的DMA控制器 一個DMA控制器是連接DMA方式70DMA各部件的功能內(nèi)存地址計數(shù)器:用來存放要交換數(shù)據(jù)的內(nèi)存地址。在DMA傳送前,由程序初始化。當(dāng)DMA傳送時,每傳送一次數(shù)據(jù),地址計數(shù)器加1。傳送長度計數(shù)器:用來記錄傳送數(shù)據(jù)塊的長度。在DMA傳送前,其內(nèi)容也是由程序預(yù)置,并以補碼表示。每傳送一次數(shù)據(jù),地址計數(shù)器加1,直到計數(shù)器溢出,引發(fā)DMA控制器向CPU發(fā)出中斷請求信號。數(shù)據(jù)緩沖寄存器:暫存?zhèn)魉偷臄?shù)據(jù)。內(nèi)存數(shù)據(jù)緩沖器外設(shè)。DMA請求觸發(fā)器:外設(shè)準(zhǔn)備好一個數(shù)據(jù)后就給出一個控制信號,使DMA請求觸發(fā)器置1。該標(biāo)志引發(fā)DMA請求,即“控制/狀態(tài)邏輯”向CPU發(fā)出總線使用權(quán)的請求(HRQ),CPU以HLDA響應(yīng),“控制/狀態(tài)邏輯”接收此信號后發(fā)出DMA響應(yīng)信號,使DMA請求觸發(fā)器復(fù)位。控制/狀態(tài)邏輯:用于修改內(nèi)存地址計數(shù)器和字計數(shù)器、指定傳送方向、并對DMA請求信號和CPU響應(yīng)信號協(xié)調(diào)和同步。中斷機構(gòu):當(dāng)一數(shù)據(jù)塊傳送完成,溢出信號觸發(fā)中斷機構(gòu),向CPU提出中斷請求,報告數(shù)據(jù)傳送結(jié)束。CPU將進(jìn)行DMA傳送的收尾處理。70DMA各部件的功能內(nèi)存地址計數(shù)器:用來存放要交換數(shù)據(jù)的內(nèi)715、DMA數(shù)據(jù)傳送過程 DMA數(shù)據(jù)傳送過程可分為三個階段:準(zhǔn)備階段、傳送階段、結(jié)束階段,完成傳送前的預(yù)處理、數(shù)據(jù)傳送、傳送后的結(jié)束處理。
準(zhǔn)備階段: 在DMA傳送前必須做好準(zhǔn)備工作,主機向DMA接口傳送以下信息:讀/寫命令。向DMA控制器的主存地址計數(shù)器送數(shù)據(jù)塊在內(nèi)存中的首地址。向DMA控制器的設(shè)備地址寄存器送設(shè)備號。向傳送長度計數(shù)器送數(shù)據(jù)字個數(shù)。啟動DMA。這些工作做完之后,CPU繼續(xù)原來的工作。715、DMA數(shù)據(jù)傳送過程 DMA數(shù)據(jù)傳送過程可分為三個階段72DMA數(shù)據(jù)傳送過程(續(xù))傳送階段外設(shè)準(zhǔn)備好收發(fā)數(shù)據(jù)時,向主機發(fā)DMA請求。CPU在本機器周期結(jié)束后,響應(yīng)該請求、并使CPU的總線驅(qū)動器處于高阻狀態(tài),讓出主存使用權(quán)。DMA控制器發(fā)送內(nèi)存地址、讀/寫命令。挪用一個存儲周期,傳送一個數(shù)據(jù),主存地址計數(shù)器加1,字計數(shù)器減1,如果用補碼表示則加1。判斷數(shù)據(jù)是否傳送完畢,即計數(shù)器是否等于0。若不為0,則撤銷DMA請求,繼續(xù)第一步的動作;若字計數(shù)器為0,進(jìn)入結(jié)束階段。結(jié)束階段
DMA控制器向主機發(fā)出中斷請求,報告數(shù)據(jù)傳送結(jié)束。CPU停止主程序執(zhí)行,轉(zhuǎn)向中斷服務(wù)程序進(jìn)行DMA操作的后處理,包括校驗送入內(nèi)存的數(shù)據(jù)、決定是否繼續(xù)DMA數(shù)據(jù)傳送、測試是否發(fā)生錯誤等。
72DMA數(shù)據(jù)傳送過程(續(xù))傳送階段736、DMA方式與中斷控制方式比較 DMA是程序中斷技術(shù)的發(fā)展。在硬件邏輯機構(gòu)的支持下,以更快的速度、更簡便的形式傳送數(shù)據(jù)。兩者之間的區(qū)別在于:中斷方式通過程序?qū)崿F(xiàn)數(shù)據(jù)傳送,而DMA直接用硬件來實現(xiàn)數(shù)據(jù)傳送。CPU在執(zhí)行完一條指令后響應(yīng)中斷,而在一個機器周期結(jié)束后響應(yīng)DMA請求。中斷方式不僅具有傳送數(shù)據(jù)的能力,還能處理異常事件;而DMA只能進(jìn)行數(shù)據(jù)傳送。中斷方式需要切換程序、保護(hù)現(xiàn)場和恢復(fù)現(xiàn)場;而DMA僅挪用一個存儲周期,不改變CPU現(xiàn)場。DMA請求比中斷請求優(yōu)先級高。之所以優(yōu)先響應(yīng)DMA請求,是為了防止丟失DMA高速傳送的數(shù)據(jù)。736、DMA方式與中斷控制方式比較 DMA是程序中斷技術(shù)的74六、通道控制方式
在大型計算機系統(tǒng)中,所連接的I/O設(shè)備多、I/O操作多、I/O速度快,單純依靠采用程序中斷和DMA控制方式已不能滿足輸入輸出的要求,于是通道控制方式被引入計算機系統(tǒng)。在通道控制方法下,CPU將部分權(quán)力下放給通道,讓通道去管理外設(shè),大大提高了CPU的工作效率。74六、通道控制方式 在大型計算機系統(tǒng)中,所連接的I/O設(shè)備751、通道的基本概念通道控制方式是DMA方式的進(jìn)一步發(fā)展。通道也是實現(xiàn)外設(shè)和主存之間直接數(shù)據(jù)交換的控制器,是一個具有特殊功能的處理機,專門負(fù)責(zé)數(shù)據(jù)的輸入輸出管理。通道有自己的指令和程序。從邏輯結(jié)構(gòu)上講,I/O系統(tǒng)一般具有四級連接:
CPU、內(nèi)存通道設(shè)備控制器外設(shè)。一般大中型計算機I/O數(shù)據(jù)流量很大,所以I/O系統(tǒng)接有多個通道。設(shè)立多個通道的好處是對不同類型的I/O設(shè)備進(jìn)行分類管理。通道與CPU同時要求訪問內(nèi)存時,通道優(yōu)先權(quán)高于CPU。對于通道,所連接的設(shè)備讀寫速度越快,優(yōu)先權(quán)越高。
751、通道的基本概念通道控制方式是DMA方式的進(jìn)一步發(fā)展。76具有通道的計算機系統(tǒng)結(jié)構(gòu)圖76具有通道的計算機系統(tǒng)結(jié)構(gòu)圖77①通道的功能
通道的基本功能是執(zhí)行通道指令,組織外設(shè)和內(nèi)存進(jìn)行數(shù)據(jù)傳輸,按I/O指令要求啟動外設(shè),向CPU報告中斷等,具體有五項任務(wù):接受CPU的I/O指令,按指令要求與外設(shè)進(jìn)行聯(lián)系。從內(nèi)存取出屬于自己的通道指令,經(jīng)譯碼后向設(shè)備控制器發(fā)送各種命令。在外設(shè)和內(nèi)存之間進(jìn)行數(shù)據(jù)傳送,并根據(jù)需要提供數(shù)據(jù)緩沖空間、以及數(shù)據(jù)存放的主存地址和傳送的數(shù)據(jù)量。根據(jù)要求把從外設(shè)得到狀態(tài)信息、以及通道自身的狀態(tài)信息送給CPU,供其使用。將外設(shè)的中斷請求和通道請求按次序及時報告CPU。77①通道的功能 通道的基本功能是執(zhí)行通道指令,組織外設(shè)和78②CPU對通道的管理
在具有通道結(jié)構(gòu)的計算機中,CPU是通過處理來自通道的中斷以及執(zhí)行I/O指令實現(xiàn)對通道的管理的。來自通道的中斷有兩種:數(shù)據(jù)傳送結(jié)束中斷故障中斷輸入輸出指令分為兩級:CPU執(zhí)行的I/O指令:這種指令比較簡單,且不直接控制I/O操作,只是負(fù)責(zé)通道的啟動和停止,查詢通道或設(shè)備的狀態(tài),控制通道去完成I/O操作等。通道執(zhí)行的通道程序:在CPU啟動通道后,通道執(zhí)行通道程序來實現(xiàn)具體的I/O操作;直到對應(yīng)的通道程序全部執(zhí)行完為止,本次I/O操作才算完成
。78②CPU對通道的管理在具有通道結(jié)構(gòu)的計算機中,CP79CPU對通道的管理(續(xù))通道程序由操作系統(tǒng)的設(shè)備管理程序生成。CPU在執(zhí)行用戶程序時,如果遇到輸入輸出指令,便轉(zhuǎn)入操作系統(tǒng)的設(shè)備管理程序,根據(jù)輸入輸出指令提供的參數(shù),自動生成通道程序,供通道執(zhí)行。通常把CPU運行操作系統(tǒng)管理程序的狀態(tài)稱為管態(tài),而把CPU執(zhí)行用戶程序的狀態(tài)稱為目態(tài)。大、中型計算機的I/O指令都屬于管態(tài)指令,只有當(dāng)CPU處于管態(tài)時,才能運行I/O指令。這是因為大、中型計算機的軟硬件資源為多個用戶共享,而不是分給某個用戶專用的,需要統(tǒng)一管理。CPU
通道設(shè)備控制器
外設(shè)79CPU對通道的管理(續(xù))通道程序由操作系統(tǒng)的設(shè)備管理程序80③通道對設(shè)備控制器的管理
通道通過使用通道指令指揮設(shè)備控制器進(jìn)行數(shù)據(jù)傳送操作。設(shè)備控制器是通道對I/O設(shè)備實現(xiàn)傳輸控制的執(zhí)行機構(gòu)。設(shè)備控制器的具體任務(wù)如下:從通道接收通道命令,控制外設(shè)完成所要求的操作。向通道反映外設(shè)的狀態(tài)。將各種外設(shè)的不同信號轉(zhuǎn)換成通道能識別的標(biāo)準(zhǔn)信號。CPU、內(nèi)存通道設(shè)備控制器
外設(shè)80③通道對設(shè)備控制器的管理 通道通過使用通道指令指揮設(shè)備812、通道的類型
根據(jù)通道的工作方式,通道分為三種:字節(jié)多路型通道選擇型通道數(shù)組多路型通道812、通道的類型 根據(jù)通道的工作方式,通道分為三種:82①字節(jié)多路型通道字節(jié)多路通道主要用于連接多臺低速設(shè)備,這些設(shè)備數(shù)據(jù)傳輸率很低,在傳輸兩個字節(jié)之間有很多空閑時間。在這個空閑時間里,通道可以交替執(zhí)行多個設(shè)備的通道程序,為多個設(shè)備服務(wù)。假如某設(shè)備傳送一個字節(jié)的時間是1毫秒,而通道從設(shè)備接收或向設(shè)備發(fā)送一個字節(jié)只需要幾百納秒,等待的時間遠(yuǎn)大于工作時間,所以在這段等待時間中,便為其它設(shè)備服務(wù)。字節(jié)多路通道的特點:
允許多個設(shè)備同時進(jìn)行數(shù)據(jù)傳送,傳送以字節(jié)為單位。字節(jié)多路通道對于高速設(shè)備是不適用的。82①字節(jié)多路型通道字節(jié)多路通道主要用于連接多臺低速設(shè)備,83②選擇通道選擇通道又叫高速通道,在物理上可以連接多個設(shè)備,但這些設(shè)備不能同時工作,在一段時間內(nèi),通道只能選擇一個設(shè)備進(jìn)行數(shù)據(jù)傳送。可以看出,選擇通道一次只能執(zhí)行一個通道程序,只有當(dāng)這個設(shè)備的通道程序全部執(zhí)行完,才能執(zhí)行其它設(shè)備的通道程序。選擇通道主要用于連接高速設(shè)備,如磁盤、磁帶等。信息以成組方式高速傳送。由于數(shù)據(jù)傳輸率很高,在傳送的兩個字節(jié)之間很少空閑,所以在數(shù)據(jù)傳送期間只能為一個設(shè)備服務(wù)。83②選擇通道選擇通道又叫高速通道,在物理上可以連接多個設(shè)84③數(shù)組多路通道數(shù)組多路通道是對選擇通道的一種改進(jìn),它的基本思想是當(dāng)某設(shè)備進(jìn)行數(shù)據(jù)傳送時,通道只為該設(shè)備服務(wù);當(dāng)設(shè)備執(zhí)行尋址等輔助性動作時,通道暫時斷開與這個設(shè)備的連接,掛起該設(shè)備的通道程序,去為其它設(shè)備服務(wù)。數(shù)組多路通道既保留了選擇通道高速傳送數(shù)據(jù)的優(yōu)點,又充分利用了輔助性操作的時間間隔為其它設(shè)備服務(wù),使通道效率得到充分發(fā)揮。84③數(shù)組多路通道數(shù)組多路通道是對選擇通道的一種改進(jìn),它的853、通道工作過程通道完成一次數(shù)據(jù)傳輸操作分為三步:在用戶程序中使用訪管指令進(jìn)入管理程序,CPU通過管理程序組織一個通道程序,并啟動通道。通道執(zhí)行CPU為它組織的通道程序,完成指定的數(shù)據(jù)輸入輸出操作.通道程序結(jié)束后,向CPU發(fā)中斷請求。CPU響應(yīng)這個中斷請求后,第二次進(jìn)入操作系統(tǒng),調(diào)用管理程序?qū)χ袛嗾埱筮M(jìn)行處理。完成一次輸入輸出操作,CPU只需要兩次調(diào)用管理程序,減少了對用戶程序的打擾853、通道工作過程通道完成一次數(shù)據(jù)傳輸操作分為三步:完成一864、通道方式和DMA方式的比較
通道方式是DMA方式的進(jìn)一步發(fā)展,與DMA方式比較如下:DMA借助硬件完成數(shù)據(jù)交換,而通道則通過執(zhí)行一組通道命令字,即通道執(zhí)行通道程序完成數(shù)據(jù)交換。一個DMA控制器可以連接多臺同類設(shè)備,只能串行工作;一個通道可以連接多臺不同類型設(shè)備,而且能夠同時工作。DMA方式的外設(shè)須由CPU管理和控制,由CPU初始化;而通道則代替CPU管理和控制外設(shè),CPU只通過I/O指令啟動通道,由通道初始化外設(shè)。DMA只控制高速外設(shè),成組數(shù)據(jù)傳送;而通道則對高、低速外設(shè)均可以控制。864、通道方式和DMA方式的比較 通道方式是DMA方式的進(jìn)87第八章輸入輸出系統(tǒng)計算機硬件可細(xì)分為運算器、控制器、存儲器,輸入設(shè)備和輸出設(shè)備,又可粗略地分為“CPU、存儲器、輸入輸出設(shè)備”三部分。這三部分之間的連接方式和信息交換方式關(guān)系到計算機基本功能的實現(xiàn),是計算機輸入輸出系統(tǒng)所要解決的主要問題。計算機的輸入輸出系統(tǒng)簡稱為I/O系統(tǒng)。一個計算機系統(tǒng)的綜合能力、可擴展性、兼容性和性能價格比,都與I/O系統(tǒng)有密切的關(guān)系。I/O系統(tǒng)是計算機系統(tǒng)中最具有多樣性和復(fù)雜性的部分。1第八章輸入輸出系統(tǒng)計算機硬件可細(xì)分為運算器、控制器、存儲88本章的主要內(nèi)容主要內(nèi)容:總線技術(shù)主機與外設(shè)的連接程序查詢方式中斷系統(tǒng)和程序中斷方式DMA方式及其接口通道控制方式2本章的主要內(nèi)容主要內(nèi)容:89一、總線技術(shù)
以總線連接外設(shè)、主存儲器、CPU等計算機部件,是計算機系統(tǒng)中普遍采用的方式。總線在計算機系統(tǒng)中是一個非常重要的概念。3一、總線技術(shù) 以總線連接外設(shè)、主存儲器、CPU等計算機部件901、總線定義所謂總線是一組能為多個功能部件分時共享的信息傳輸線路,借助該傳輸線路,計算機在各功能部件之間實現(xiàn)地址、數(shù)據(jù)和控制信息的交換??偩€包含地址總線、數(shù)據(jù)總線和控制總線。學(xué)習(xí)總線概念應(yīng)搞清楚兩點,一要搞清楚“一組信息傳輸線路”,二要搞清楚“分時共享”。例如,鐵路線類似于總線,坐車的人相當(dāng)于要傳送的信息。大家都能坐火車出行是共享;滿員時必須選擇乘坐下一車次便是分時??偩€的工作機制也是分時共享,任何時間只允許兩個部件或設(shè)備通過總線交換信息??偩€實體就是一組傳輸線路和相應(yīng)的控制邏輯。控制邏輯的實現(xiàn)可以是CPU內(nèi)部的控制邏輯,也可以是總線控制器。
41、總線定義所謂總線是一組能為多個功能部件分時共享的信息傳91分時共享的實現(xiàn)如何實現(xiàn)分時呢?解決的思路是讓不參與通信的設(shè)備與總線在邏輯上斷開,從而避免干擾正在輸送數(shù)據(jù)的兩個部件的正常工作??偩€的控制邏輯主要由三態(tài)門實現(xiàn)。三態(tài)門有3種狀態(tài):0、1、高阻態(tài)。三態(tài)門有3只引腳:輸入端、輸出端、控制端(G、G).當(dāng)控制端有效時,三態(tài)門才打開,輸出端反映輸入端的狀態(tài);否則三態(tài)門處于關(guān)閉狀態(tài),輸出端呈現(xiàn)高阻態(tài),也就是在邏輯上被斷開,輸入端不影響輸出端。5分時共享的實現(xiàn)如何實現(xiàn)分時呢?解決的思路是讓不參與通信的設(shè)922、總線分類
從不同的角度出發(fā),總線有不同的分類方法。按計算機系統(tǒng)的層次結(jié)構(gòu),總線分可為:CPU內(nèi)部總線:CPU內(nèi)部連接各寄存器和運算部件之間的互聯(lián)線。由于CPU的集成化,這組總線從外部是看不見的。系統(tǒng)總線:連接計算機系統(tǒng)各功能部件,如CPU、存儲器、I/O接口之間的總線。系統(tǒng)總線是可見的。外總線:計算機之間、計算機與其它設(shè)備之間的連接線稱為外總線。在很多情況下,這些連線不是計算機專用的,主要用于其它設(shè)備上。 總線按時序控制方式可分為同步總線、異步總線、準(zhǔn)同步總線;按數(shù)據(jù)傳送格式可分為串行總線、并行總線。這里不再討論。
62、總線分類 從不同的角度出發(fā),總線有不同的分類方法。按933、總線標(biāo)準(zhǔn)
標(biāo)準(zhǔn)化是一種趨勢,總線也不例外,目前總線基本實現(xiàn)標(biāo)準(zhǔn)化??偩€一般按以下四大特征進(jìn)行規(guī)范。物理特性:物理特性規(guī)定,總線這種插件尺寸有多大?引腳數(shù)有多少?引腳的相對位置如何?功能特性:功能特性規(guī)定,總線的每一根信號線作什么用。電氣特性:電氣特性規(guī)定,每一個信號線電平的高低、信號的傳遞方向等。時間特性:時間特性規(guī)定,信號線完成每一個動作的起止時間,即什么時間有效、能延續(xù)多長時間等。73、總線標(biāo)準(zhǔn) 標(biāo)準(zhǔn)化是一種趨勢,總線也不例外,目前總線基本94總線標(biāo)準(zhǔn)(續(xù))
所謂總線標(biāo)準(zhǔn)就是對總線的這四個方面進(jìn)行規(guī)范。制定總線標(biāo)準(zhǔn)有以下幾方面的好處(優(yōu)點、優(yōu)勢)。從工程的角度考慮,能夠簡化硬件設(shè)計、易于擴充。從用戶的角度考慮,易于獲得,隨便從哪里買、隨便買哪一家的都可以。從廠商的角度考慮,易于批量生產(chǎn)、降低成本。8總線標(biāo)準(zhǔn)(續(xù)) 所謂總線標(biāo)準(zhǔn)就是對總線的這四個方面進(jìn)行規(guī)范954、總線的信息傳送方式串行傳送:只有一條傳輸線,采用脈沖傳送。在串行傳送時,順序傳送一個數(shù)碼的所有二進(jìn)制位,每次一位;先傳送數(shù)碼的最低位,最后傳送最高位。并行傳送:信息字有多少二進(jìn)制位,就需要多少條傳輸線,每個二進(jìn)制位在不同的線上進(jìn)行傳輸。并行傳送一般采用電位傳送,所有位同時被傳送,速度要比串行傳送快。分時傳送:分時傳送有兩種概念,一是采用總線復(fù)用方式,既傳送地址信息,也傳送數(shù)據(jù)信息。為此需要劃分時間片,在不同時間中完成不同的傳送任務(wù)。二是共享總線的部件分時使用總線。94、總線的信息傳送方式串行傳送:只有一條傳輸線,采用脈沖傳965、系統(tǒng)總線總線是一組能為多個功能部件分時共享的信息傳輸線路,借助總線,各功能部件相互交換信息。系統(tǒng)總線主要連接計算機系統(tǒng)內(nèi)部的各功能部件,如CPU、存儲器、I/O設(shè)備等。系統(tǒng)總線是可見的。例如,PC機主板上的很多插槽,實際上就是系統(tǒng)總線的接口。(系統(tǒng))總線設(shè)計的要素包括總線寬度、總線時序、總線仲裁等幾個方面。105、系統(tǒng)總線總線是一組能為多個功能部件分時共享的信息傳輸97總線寬度任何總線的信號線在功能上可分為數(shù)據(jù)線、地址線、控制線。所謂總線寬度就是各功能組中的信號線數(shù),關(guān)系到計算機系統(tǒng)數(shù)據(jù)傳輸?shù)乃俾?、可管理?nèi)存的大小、集成度和硬件成本的問題。數(shù)據(jù)線提供各部件數(shù)據(jù)傳送的途徑。典型的數(shù)據(jù)總線有8位、16位、32位等。數(shù)據(jù)總線的寬度決定同時傳送的數(shù)據(jù)位數(shù),增加數(shù)據(jù)總線的寬度能夠提高總線帶寬??偩€帶寬是指單位時間內(nèi)總線傳送的數(shù)據(jù)量,它定義了總線本身所能達(dá)到的最高傳輸速率。地址總線用于傳送讀寫數(shù)據(jù)的單元地址??偩€中地址線數(shù)越多,CPU可直接尋址的空間越大。n位總線可尋址2n個單元??刂凭€主要用來實現(xiàn)控制功能,如中斷請求線和應(yīng)答線、總線請求線和應(yīng)答線等。11總線寬度任何總線的信號線在功能上可分為數(shù)據(jù)線、地址線、控98總線的時序
總線在進(jìn)行信息交換時,必須有時間上的配合,也就是進(jìn)行時序控制。根據(jù)時序的不同,總線的時序控制方式分為同步通信方式和異步通信方式。12總線的時序 總線在進(jìn)行信息交換時,必須有時間上的配合,也99同步通信方式
同步通信方式是指采用統(tǒng)一的時鐘信號進(jìn)行定時、來協(xié)調(diào)收發(fā)雙方的傳送操作。一般由定寬的時標(biāo)同步,完成一次數(shù)據(jù)交換。完成一次總線操作所需的時間稱為總線周期。同步通信方式適用于總線長度較短的場合,由于無法知道接收方是否正確接收,加上時標(biāo)線上的干擾會引起錯誤同步,所以可靠性較低。同步通信必須按最慢的部件設(shè)計時鐘,總線效率會降低。13同步通信方式同步通信方式是指采用統(tǒng)一的時鐘信號進(jìn)行定時100異步通信方式
異步通信沒有統(tǒng)一的時鐘,也沒有固定的時間間隔,完全依靠收發(fā)雙方相互制約的“握手”信號來實現(xiàn)定時控制,也就是定時控制建立在應(yīng)答式或互鎖機制基礎(chǔ)上。通常把交換信息的兩個部件或設(shè)備分為主設(shè)備和從設(shè)備。獲得總線控制權(quán)的設(shè)備稱為主設(shè)備,被主設(shè)備訪問的設(shè)備稱為從設(shè)備。交換信息的請求由主設(shè)備發(fā)起。在異步總線上,后一事件的出現(xiàn)取決于前一事件的出現(xiàn),總線周期不固定,靈活性很強。異步通信過程見圖所示。14異步通信方式異步通信沒有統(tǒng)一的時鐘,也沒有固定的時間間101異步通信方式(續(xù))根據(jù)請求和應(yīng)答信號的建立和撤銷是否互相依賴,異步通信又可分為三種:非互鎖通信、半互鎖通信和全互鎖通信,其中全互鎖通信的可靠性最高。15異步通信方式(續(xù))根據(jù)請求和應(yīng)答信號的建立和撤銷是否互相102總線判優(yōu)和仲裁
總線是在爭用資源的基礎(chǔ)上進(jìn)行工作的。為了解決設(shè)備同時競爭總線控制權(quán),必須有總線仲裁部件,來決定下一次誰將成為主設(shè)備。總線控制方式就是總線判優(yōu)和仲裁方式。按仲裁機構(gòu)的位置不同,總線控制分為集中控制和分布控制兩大類??偩€控制邏輯基本上集中于一個設(shè)備(如CPU),稱為集中式控制;而總線控制邏輯分散在連接總線的各個部件或設(shè)備,稱為分布式控制。集中式控制方式又分為鏈?zhǔn)讲樵兎绞?、計?shù)查詢方式以及獨立請求方式。
16總線判優(yōu)和仲裁總線是在爭用資源的基礎(chǔ)上進(jìn)行工作的。為了103集中式控制:鏈?zhǔn)讲樵兎绞教攸c:連線數(shù)較少;容易擴充;對故障敏感;部件/設(shè)備離仲裁器越近優(yōu)先級越高。17集中式控制:鏈?zhǔn)讲樵兎绞教攸c:104集中式控制:計數(shù)查詢方式
特點:優(yōu)先級易調(diào)整,先查到的設(shè)備優(yōu)先級高;靈活性強;查詢的實質(zhì)是比較計數(shù)值和地址。18集中式控制:計數(shù)查詢方式特點:105集中式控制:獨立請求方式
特點:響應(yīng)速度快;優(yōu)先級易調(diào)整;控制線多;硬件復(fù)雜。19集中式控制:獨立請求方式特點:106關(guān)于總線的補充說明實現(xiàn)總線控制有現(xiàn)成的芯片可用。例如,總線控制器8288、總線仲裁器8289。部件或設(shè)備在使用總線時,一般需要經(jīng)過申請、建立、使用、歸還四個階段??偩€通過接口連接各功能部件或設(shè)備,換句話說,接口通過系統(tǒng)總線與主機連接,同時又通過外部總線連接設(shè)備。
20關(guān)于總線的補充說明實現(xiàn)總線控制有現(xiàn)成的芯片可用。例如,總107二、主機與外圍設(shè)備的連接
輸入輸出系統(tǒng)是計算機系統(tǒng)的重要組成部分,是溝通計算機與外部世界的橋梁。從硬件邏輯上看,輸入輸出系統(tǒng)包含系統(tǒng)總線、接口和外圍設(shè)備三部分。其中接口又包含了控制外設(shè)工作的絕大部分電路,一般以插件的形式插在計算機主板的擴展槽中;一些公共接口邏輯,如中斷控制器、DMA控制器等,則常置于主板上。下面討論主機與外設(shè)之間的接口。21二、主機與外圍設(shè)備的連接 輸入輸出系統(tǒng)是計算機系統(tǒng)的重要1081、輸入輸出接口所謂接口泛指兩個相對獨立的子系統(tǒng)之間的連接機構(gòu)。輸入輸出接口,也叫I/O接口,是指主機和外設(shè)之間的硬件連接邏輯以及信號傳遞協(xié)議,用來實現(xiàn)主機和外設(shè)之間的信息交換。I/O接口的表現(xiàn)形式有大家常見的接口卡或者叫適配器。通過接口,主機和外設(shè)可以完成包括數(shù)據(jù)信息、控制信息、和狀態(tài)信息等的交換。221、輸入輸出接口所謂接口泛指兩個相對獨立的子系統(tǒng)之間的連接口所處的位置為什么必須要通過接口來實現(xiàn)信息的交換呢?
適配器也叫接口系統(tǒng)總線連接主機和接口外總線連接設(shè)備接口所處的位置為什么必須要通過接口來實現(xiàn)信息的交換呢?適配1102、接口的功能與基本組成控制功能:接口包含大部分外設(shè)的控制電路,如啟動設(shè)備等。數(shù)據(jù)緩沖功能:主機和外設(shè)工作速度差異很大,需要解決兩者之間的速度匹配問題。解決的辦法是設(shè)立數(shù)據(jù)緩沖寄存器。接口中數(shù)據(jù)緩沖寄存器對I/O數(shù)據(jù)起緩沖作用。數(shù)據(jù)格式變換功能:在輸入輸出過程中,接口電路必須能對數(shù)據(jù)的格式進(jìn)行轉(zhuǎn)換,以滿足主機或外設(shè)對信息形式的不同要求。例如,串/并轉(zhuǎn)換,數(shù)/模轉(zhuǎn)換等等。尋址功能:任何一個計算機系統(tǒng)都配備多種外設(shè),同一種外設(shè)也可能有多臺,主機隨時可能與不同外設(shè)交換信息。當(dāng)主機送來選擇外設(shè)的地址碼時,接口必須能進(jìn)行譯碼,從而正確識別外設(shè)。傳遞控制命令和狀態(tài)信息功能:接口是主機命令下達(dá)和外設(shè)狀態(tài)上傳的必由之路,只有正確完成傳遞控制命令和反饋狀態(tài)信息,才能實現(xiàn)主機和外設(shè)的信息交換。實現(xiàn)時序信號的配合、驅(qū)動能力和工作電平的匹配等功能。242、接口的功能與基本組成控制功能:接口包含大部分外設(shè)的控111主機、接口、和外設(shè)之間的連接
接口的基本組成包括:數(shù)據(jù)寄存器、命令/狀態(tài)寄存器、地址寄存器、設(shè)備識別電路、數(shù)據(jù)格式轉(zhuǎn)換電路、控制電路等。接口(Interface)與端口(Port)是兩個不同的的概念。端口是指接口電路中可以被CPU訪問的寄存器,它至少包含數(shù)據(jù)寄存器和命令/狀態(tài)寄存器。端口加上相應(yīng)的控制邏輯構(gòu)成接口。和主機的接口
和外設(shè)的接口
25主機、接口、和外設(shè)之間的連接接口的基本組成包括:數(shù)據(jù)寄1123、接口的編址編址的目的是為了尋址,為了找到進(jìn)行信息交換的外圍設(shè)備。I/O端口地址是主機與外設(shè)直接通訊的地址,I/O設(shè)備的編址方式就是端口的編址方式。I/O設(shè)備的編址方式有兩種:獨立編址方式
獨立編址方式是指I/O端口地址與存儲器地址無關(guān),單獨編碼,CPU用專門設(shè)置的I/O指令訪問端口。 特點:不占用存儲空間,但需要專門設(shè)置I/O指令,且I/O指令僅限于傳輸,功能較弱。如8086系列機就采用獨立編址方式。統(tǒng)一編址方式 統(tǒng)一編址方式是把I/O端口當(dāng)作存儲器的單元來分配地址。不設(shè)專門的I/O指令,使用訪存指令就能實現(xiàn)I/O操作。 特點:CPU訪問外設(shè)更靈活方便,但使內(nèi)存容量減小;進(jìn)行I/O操作時,執(zhí)行速度比較慢。PDP-11采用統(tǒng)一編址方式。263、接口的編址編址的目的是為了尋址,為了找到進(jìn)行信息交換1134、接口的分類按數(shù)據(jù)傳輸?shù)母袷?,可分為串行接口、并行接口。串行接口是指在主機和接口一側(cè)并行傳送信息、接口和外設(shè)則一側(cè)串行傳送信息。一般而言,串行接口速度慢,但傳輸線數(shù)少,適用于傳輸距離較遠(yuǎn)的場合、以及本身串行工作的設(shè)備。并行接口是指主機和接口一側(cè)以及接口和設(shè)備一側(cè)都以字節(jié)或字并行傳輸。并行接口傳輸速度快,但傳輸線數(shù)多,適用于傳輸距離較近的場合、以及本身并行工作的設(shè)備。按總線操作時序的控制方式,可分為同步接口、異步接口。同步接口是指與同步總線相連的接口,其信息傳送由統(tǒng)一的時序信號同步控制。異步接口則是指與異步總線相連的接口,其信息傳送采用應(yīng)答方式控制。按主機對外設(shè)的控制方式,可分為程序查詢接口、中斷接口、DMA接口、以及通道控制器等。這將是本章要集中討論的問題。274、接口的分類按數(shù)據(jù)傳輸?shù)母袷?,可分為串行接口、并行接?145、外設(shè)的信息交換方式
在計算機系統(tǒng)中,CPU管理外設(shè)、實現(xiàn)信息交換的方式有:
程序查詢方式和程序中斷方式適用于數(shù)據(jù)傳輸速率比較低的設(shè)備;而DMA方式、通道方式、和PPU方式適用于數(shù)據(jù)傳輸率比較高的設(shè)備。目前,單片機和微型計算機中多采用程序查詢方式、程序中斷方式和DMA方式;大、中型計算機則采用通道方式和PPU方式。低速設(shè)備高速設(shè)備285、外設(shè)的信息交換方式在計算機系統(tǒng)中,CPU管115三、程序查詢方式
在程序查詢方式下,數(shù)據(jù)在CPU和外設(shè)之間的傳送完全靠計算機程序控制。某一設(shè)備一旦被選中,主機將不停地查詢這個設(shè)備,看其是否準(zhǔn)備就緒。如果設(shè)備準(zhǔn)備就緒,就執(zhí)行一次I/O操作,否則繼續(xù)循環(huán)查詢。 在程序查詢方式下,CPU只能等待,不能處理其它業(yè)務(wù)。 程序查詢方式又分為兩種情況:無條件傳送和條件傳送。
29三、程序查詢方式 在程序查詢方式下,數(shù)據(jù)在CPU和外設(shè)1161、無條件傳送無條件傳送是假設(shè)外設(shè)始終處于準(zhǔn)備好狀態(tài),即準(zhǔn)備好接收主機送來的數(shù)據(jù)、或者準(zhǔn)備好向主機發(fā)送數(shù)據(jù)。在這種情況下,CPU無需查詢外設(shè)的工作狀態(tài),CPU執(zhí)行I/O指令就可以完成需要的I/O操作。在實際的計算機系統(tǒng)中,這種情況較為少見。例如,繼電器狀態(tài)的輸入,就屬于這種情況。301、無條件傳送無條件傳送是假設(shè)外設(shè)始終處于準(zhǔn)備好狀態(tài),即1172、條件傳送許多情況下,外設(shè)的工作狀態(tài)是很難事先知道的,比如什么時間按下鍵盤的鍵。為了確保外設(shè)送給CPU的數(shù)據(jù)不丟失、或者CPU送出的數(shù)據(jù)能被外備接收,需要CPU在程序中不停地、反復(fù)地查詢外設(shè)的狀態(tài),而且在查詢期間不能做其它事情,否則容易造成數(shù)據(jù)丟失。這就是程序查詢方式。312、條件傳送許多情況下,外設(shè)的工作狀態(tài)是很難事先知道的,1183、程序查詢方式的接口電路接口電路的一般原理圖如下:數(shù)據(jù)寄存器,雙向,接收CPU數(shù)據(jù)送往外設(shè);或接收外設(shè)數(shù)據(jù)送往CPU。命令寄存器,單向,接收CPU送來的命令,并控制完成讀寫或其它操作。狀態(tài)寄存器:存儲反映外設(shè)的工作狀態(tài),這個寄存器在程序查詢方式中是必須要設(shè)置的,它是程序進(jìn)行I/O操作的判斷依據(jù)
。CPU并不直接訪問外設(shè),而是通過以上三個寄存器實現(xiàn)外設(shè)訪問的。323、程序查詢方式的接口電路接口電路的一般原理圖如下:數(shù)據(jù)119程序查詢方式的接口電路(續(xù))給出一個具體的輸入接口電路來介紹查詢程序的步驟,設(shè)該電路具有4個端口地址。程序查詢方式的優(yōu)點是控制簡單,所用硬件較少;缺點是外設(shè)和主機不能并行工作,系統(tǒng)效率很低。33程序查詢方式
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)新素養(yǎng)視角下高中數(shù)學(xué)高效課堂的構(gòu)建
- 中學(xué)教育基礎(chǔ)知到課后答案智慧樹章節(jié)測試答案2025年春白城師范學(xué)院
- 三級人力資源管理師-《企業(yè)人力資源管理師(理論知識)》考前強化模擬卷1
- 高考物理課標(biāo)版一輪復(fù)習(xí)考點規(guī)范練19動量動量定理動量守恒定律的理解
- 重慶市復(fù)旦中學(xué)2024-2025學(xué)年高一下學(xué)期開學(xué)考試生物試題(原卷版)
- 揭陽中式花園施工方案
- 湖南省衡陽縣三中2017-2018學(xué)年高二上學(xué)期期中考試歷史試卷
- 廣東省惠州市惠東中學(xué)2017-2018學(xué)年高三5月熱身綜合練習(xí)生物(二)答案
- 浙江省寧波市2024-2025學(xué)年高三上學(xué)期期末模擬檢測語文試題(原卷版+解析版)
- 河南省南陽市鎮(zhèn)平縣2024-2025學(xué)年七年級上學(xué)期期末語文試題(原卷版+解析版)
- 2025年春新人教版數(shù)學(xué)一年級下冊課件 第一單元 2.拼一拼
- 《煤礦職業(yè)病危害防治》培訓(xùn)課件2025
- 2024年網(wǎng)絡(luò)建設(shè)與運維選擇題理論試題題庫
- 四年級下冊勞動《小小快遞站》課件
- 終止供應(yīng)商協(xié)議書
- 2024年菠菜種子項目可行性研究報告
- 專題12 職業(yè)夢想 -2023年中考英語作文熱點話題終極預(yù)測
- 食品抽檢核查處置重點安全性指標(biāo)不合格原因分析排查手冊
- 暑托班合同范例
- GB/T 44904-2024售后服務(wù)無理由退貨服務(wù)規(guī)范
- 《導(dǎo)管室的無菌原則》課件
評論
0/150
提交評論