版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第八章輸入輸出系統(tǒng)計(jì)算機(jī)硬件可細(xì)分為運(yùn)算器、掌握器、存儲器,輸入設(shè)備和輸出設(shè)備,又可粗略地分為“CPU、存儲器、輸入輸出設(shè)備”三局部。這三局部之間的連接方式和信息交換方式關(guān)系到計(jì)算機(jī)根本功能的實(shí)現(xiàn),是計(jì)算機(jī)輸入輸出系統(tǒng)所要解決的主要問題。計(jì)算機(jī)的輸入輸出系統(tǒng)簡稱為I/O系統(tǒng)。一個計(jì)算機(jī)系統(tǒng)的綜合力量、可擴(kuò)展性、兼容性和性能價格比,都與I/O系統(tǒng)有親密的關(guān)系。I/O系統(tǒng)是計(jì)算機(jī)系統(tǒng)中最具有多樣性和簡單性的局部。1本章的主要內(nèi)容主要內(nèi)容:總線技術(shù)主機(jī)與外設(shè)的連接程序查詢方式中斷系統(tǒng)和程序中斷方式DMA方式及其接口通道掌握方式2一、總線技術(shù) 以總線連接外設(shè)、主存儲器、CPU等計(jì)算機(jī)部件,是計(jì)算機(jī)系統(tǒng)中普遍承受的方式??偩€在計(jì)算機(jī)系統(tǒng)中是一個特別重要的概念。31、總線定義所謂總線是一組能為多個功能部件分時共享的信息傳輸線路,借助該傳輸線路,計(jì)算機(jī)在各功能部件之間實(shí)現(xiàn)地址、數(shù)據(jù)和掌握信息的交換??偩€包含地址總線、數(shù)據(jù)總線和掌握總線。學(xué)習(xí)總線概念應(yīng)搞清晰兩點(diǎn),一要搞清晰“一組信息傳輸線路”,二要搞清晰“分時共享”。例如,鐵路線類似于總線,坐車的人相當(dāng)于要傳送的信息。大家都能坐火車出行是共享;滿員時必需選擇乘坐下一車次便是分時??偩€的工作機(jī)制也是分時共享,任何時間只允許兩個部件或設(shè)備通過總線交換信息??偩€實(shí)體就是一組傳輸線路和相應(yīng)的掌握規(guī)律。掌握規(guī)律的實(shí)現(xiàn)可以是CPU內(nèi)部的掌握規(guī)律,也可以是總線掌握器。4分時共享的實(shí)現(xiàn)如何實(shí)現(xiàn)分時呢?解決的思路是讓不參與通信的設(shè)備與總線在規(guī)律上斷開,從而避開干擾正在輸送數(shù)據(jù)的兩個部件的正常工作??偩€的掌握規(guī)律主要由三態(tài)門實(shí)現(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),也就是在規(guī)律上被斷開,輸入端不影響輸出端。52、總線分類
從不同的角度動身,總線有不同的分類方法。按計(jì)算機(jī)系統(tǒng)的層次構(gòu)造,總線分可為:CPU內(nèi)部總線:CPU內(nèi)部連接各存放器和運(yùn)算部件之間的互聯(lián)線。由于CPU的集成化,這組總線從外部是看不見的。系統(tǒng)總線:連接計(jì)算機(jī)系統(tǒng)各功能部件,如CPU、存儲器、I/O接口之間的總線。系統(tǒng)總線是可見的。外總線:計(jì)算機(jī)之間、計(jì)算機(jī)與其它設(shè)備之間的連接線稱為外總線。在很多狀況下,這些連線不是計(jì)算機(jī)專用的,主要用于其它設(shè)備上。 總線按時序掌握方式可分為同步總線、異步總線、準(zhǔn)同步總線;按數(shù)據(jù)傳送格式可分為串行總線、并行總線。這里不再爭論。63、總線標(biāo)準(zhǔn) 標(biāo)準(zhǔn)化是一種趨勢,總線也不例外,目前總線根本實(shí)現(xiàn)標(biāo)準(zhǔn)化。總線一般按以下四大特征進(jìn)展標(biāo)準(zhǔn)。物理特性:物理特性規(guī)定,總線這種插件尺寸有多大?引腳數(shù)有多少?引腳的相對位置如何?功能特性:功能特性規(guī)定,總線的每一根信號線作什么用。電氣特性:電氣特性規(guī)定,每一個信號線電平的凹凸、信號的傳遞方向等。時間特性:時間特性規(guī)定,信號線完成每一個動作的起止時間,即什么時間有效、能連續(xù)多長時間等。7總線標(biāo)準(zhǔn)〔續(xù)〕 所謂總線標(biāo)準(zhǔn)就是對總線的這四個方面進(jìn)展標(biāo)準(zhǔn)。制定總線標(biāo)準(zhǔn)有以下幾方面的好處〔優(yōu)點(diǎn)、優(yōu)勢〕。從工程的角度考慮,能夠簡化硬件設(shè)計(jì)、易于擴(kuò)大。從用戶的角度考慮,易于獲得,任憑從哪里買、任憑買哪一家的都可以。從廠商的角度考慮,易于批量生產(chǎn)、降低本錢。84、總線的信息傳送方式串行傳送:只有一條傳輸線,承受脈沖傳送。在串行傳送時,挨次傳送一個數(shù)碼的全部二進(jìn)制位,每次一位;先傳送數(shù)碼的最低位,最終傳送最高位。并行傳送:信息字有多少二進(jìn)制位,就需要多少條傳輸線,每個二進(jìn)制位在不同的線上進(jìn)展傳輸。并行傳送一般承受電位傳送,全部位同時被傳送,速度要比串行傳送快。分時傳送:分時傳送有兩種概念,一是承受總線復(fù)用方式,既傳送地址信息,也傳送數(shù)據(jù)信息。為此需要劃分時間片,在不同時間中完成不同的傳送任務(wù)。二是共享總線的部件分時使用總線。95、系統(tǒng)總線總線是一組能為多個功能部件分時共享的信息傳輸線路,借助總線,各功能部件相互交換信息。系統(tǒng)總線主要連接計(jì)算機(jī)系統(tǒng)內(nèi)部的各功能部件,如CPU、存儲器、I/O設(shè)備等。系統(tǒng)總線是可見的。例如,PC機(jī)主板上的很多插槽,實(shí)際上就是系統(tǒng)總線的接口?!蚕到y(tǒng)〕總線設(shè)計(jì)的要素包括總線寬度、總線時序、總線仲裁等幾個方面。10總線寬度任何總線的信號線在功能上可分為數(shù)據(jù)線、地址線、掌握線。所謂總線寬度就是各功能組中的信號線數(shù),關(guān)系到計(jì)算機(jī)系統(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個單元。掌握線主要用來實(shí)現(xiàn)掌握功能,如中斷懇求線和應(yīng)答線、總線懇求線和應(yīng)答線等。11總線的時序 總線在進(jìn)展信息交換時,必需有時間上的協(xié)作,也就是進(jìn)展時序掌握。依據(jù)時序的不同,總線的時序掌握方式分為同步通信方式和異步通信方式。12同步通信方式
同步通信方式是指承受統(tǒng)一的時鐘信號進(jìn)展定時、來協(xié)調(diào)收發(fā)雙方的傳送操作。一般由定寬的時標(biāo)同步,完成一次數(shù)據(jù)交換。完成一次總線操作所需的時間稱為總線周期。同步通信方式適用于總線長度較短的場合,由于無法知道接收方是否正確接收,加上時標(biāo)線上的干擾會引起錯誤同步,所以牢靠性較低。同步通信必需按最慢的部件設(shè)計(jì)時鐘,總線效率會降低。13異步通信方式
異步通信沒有統(tǒng)一的時鐘,也沒有固定的時間間隔,完全依靠收發(fā)雙方相互制約的“握手”信號來實(shí)現(xiàn)定時掌握,也就是定時掌握建立在應(yīng)答式或互鎖機(jī)制根底上。通常把交換信息的兩個部件或設(shè)備分為主設(shè)備和從設(shè)備。獲得總線掌握權(quán)的設(shè)備稱為主設(shè)備,被主設(shè)備訪問的設(shè)備稱為從設(shè)備。交換信息的懇求由主設(shè)備發(fā)起。在異步總線上,后一大事的消失取決于前一大事的消失,總線周期不固定,敏捷性很強(qiáng)。異步通信過程見圖所示。14異步通信方式〔續(xù)〕依據(jù)懇求和應(yīng)答信號的建立和撤銷是否相互依靠,異步通信又可分為三種:非互鎖通信、半互鎖通信和全互鎖通信,其中全互鎖通信的牢靠性最高。15總線判優(yōu)和仲裁
總線是在爭用資源的根底上進(jìn)展工作的。為了解決設(shè)備同時競爭總線掌握權(quán),必需有總線仲裁部件,來打算下一次誰將成為主設(shè)備??偩€掌握方式就是總線判優(yōu)和仲裁方式。按仲裁機(jī)構(gòu)的位置不同,總線掌握分為集中掌握和分布掌握兩大類??偩€掌握規(guī)律根本上集中于一個設(shè)備〔如CPU〕,稱為集中式掌握;而總線掌握規(guī)律分散在連接總線的各個部件或設(shè)備,稱為分布式掌握。集中式掌握方式又分為鏈?zhǔn)讲樵兎绞?、?jì)數(shù)查詢方式以及獨(dú)立懇求方式。16集中式掌握:鏈?zhǔn)讲樵兎绞教攸c(diǎn):連線數(shù)較少;簡潔擴(kuò)大;對故障敏感;部件/設(shè)備離仲裁器越近優(yōu)先級越高。17集中式掌握:計(jì)數(shù)查詢方式特點(diǎn):優(yōu)先級易調(diào)整,先查到的設(shè)備優(yōu)先級高;敏捷性強(qiáng);查詢的實(shí)質(zhì)是比較計(jì)數(shù)值和地址。18集中式掌握:獨(dú)立懇求方式特點(diǎn):響應(yīng)速度快;優(yōu)先級易調(diào)整;掌握線多;硬件簡單。19關(guān)于總線的補(bǔ)充說明實(shí)現(xiàn)總線掌握有現(xiàn)成的芯片可用。例如,總線掌握器8288、總線仲裁器8289。部件或設(shè)備在使用總線時,一般需要經(jīng)過申請、建立、使用、歸還四個階段??偩€通過接口連接各功能部件或設(shè)備,換句話說,接口通過系統(tǒng)總線與主機(jī)連接,同時又通過外部總線連接設(shè)備。20二、主機(jī)與外圍設(shè)備的連接 輸入輸出系統(tǒng)是計(jì)算機(jī)系統(tǒng)的重要組成局部,是溝通計(jì)算機(jī)與外部世界的橋梁。從硬件規(guī)律上看,輸入輸出系統(tǒng)包含系統(tǒng)總線、接口和外圍設(shè)備三局部。其中接口又包含了掌握外設(shè)工作的絕大局部電路,一般以插件的形式插在計(jì)算機(jī)主板的擴(kuò)展槽中;一些公共接口規(guī)律,如中斷掌握器、DMA掌握器等,則常置于主板上。下面爭論主機(jī)與外設(shè)之間的接口。211、輸入輸出接口所謂接口泛指兩個相對獨(dú)立的子系統(tǒng)之間的連接機(jī)構(gòu)。輸入輸出接口,也叫I/O接口,是指主機(jī)和外設(shè)之間的硬件連接規(guī)律以及信號傳遞協(xié)議,用來實(shí)現(xiàn)主機(jī)和外設(shè)之間的信息交換。I/O接口的表現(xiàn)形式有大家常見的接口卡或者叫適配器。通過接口,主機(jī)和外設(shè)可以完成包括數(shù)據(jù)信息、掌握信息、和狀態(tài)信息等的交換。22接口所處的位置為什么必需要通過接口來實(shí)現(xiàn)信息的交換呢?適配器也叫接口系統(tǒng)總線連接主機(jī)和接口外總線連接設(shè)備232、接口的功能與根本組成掌握功能:接口包含大部特別設(shè)的掌握電路,如啟動設(shè)備等。數(shù)據(jù)緩沖功能:主機(jī)和外設(shè)工作速度差異很大,需要解決兩者之間的速度匹配問題。解決的方法是設(shè)立數(shù)據(jù)緩沖存放器。接口中數(shù)據(jù)緩沖存放器對I/O數(shù)據(jù)起緩沖作用。數(shù)據(jù)格式變換功能:在輸入輸出過程中,接口電路必需能對數(shù)據(jù)的格式進(jìn)展轉(zhuǎn)換,以滿足主機(jī)或外設(shè)對信息形式的不同要求。例如,串/并轉(zhuǎn)換,數(shù)/模轉(zhuǎn)換等等。尋址功能:任何一個計(jì)算機(jī)系統(tǒng)都配備多種外設(shè),同一種外設(shè)也可能有多臺,主機(jī)隨時可能與不同外設(shè)交換信息。當(dāng)主機(jī)送來選擇外設(shè)的地址碼時,接口必需能進(jìn)展譯碼,從而正確識別外設(shè)。傳遞掌握命令和狀態(tài)信息功能:接口是主機(jī)命令下達(dá)和外設(shè)狀態(tài)上傳的必由之路,只有正確完成傳遞掌握命令和反響狀態(tài)信息,才能實(shí)現(xiàn)主機(jī)和外設(shè)的信息交換。實(shí)現(xiàn)時序信號的協(xié)作、驅(qū)動力量和工作電平的匹配等功能。24主機(jī)、接口、和外設(shè)之間的連接
接口的根本組成包括:數(shù)據(jù)存放器、命令/狀態(tài)存放器、地址存放器、設(shè)備識別電路、數(shù)據(jù)格式轉(zhuǎn)換電路、掌握電路等。接口〔Interface〕與端口〔Port〕是兩個不同的的概念。端口是指接口電路中可以被CPU訪問的存放器,它至少包含數(shù)據(jù)存放器和命令/狀態(tài)存放器。端口加上相應(yīng)的掌握規(guī)律構(gòu)成接口。和主機(jī)的接口
和外設(shè)的接口
253、接口的編址編址的目的是為了尋址,為了找到進(jìn)展信息交換的外圍設(shè)備。I/O端口地址是主機(jī)與外設(shè)直接通訊的地址,I/O設(shè)備的編址方式就是端口的編址方式。I/O設(shè)備的編址方式有兩種:獨(dú)立編址方式 獨(dú)立編址方式是指I/O端口地址與存儲器地址無關(guān),單獨(dú)編碼,CPU用特地設(shè)置的I/O指令訪問端口。 特點(diǎn):不占用存儲空間,但需要特地設(shè)置I/O指令,且I/O指令僅限于傳輸,功能較弱。如8086系列機(jī)就承受獨(dú)立編址方式。統(tǒng)一編址方式 統(tǒng)一編址方式是把I/O端口當(dāng)作存儲器的單元來安排地址。不設(shè)特地的I/O指令,使用訪存指令就能實(shí)現(xiàn)I/O操作。 特點(diǎn):CPU訪問外設(shè)更敏捷便利,但使內(nèi)存容量減?。贿M(jìn)展I/O操作時,執(zhí)行速度比較慢。PDP-11承受統(tǒng)一編址方式。264、接口的分類按數(shù)據(jù)傳輸?shù)母袷?,可分為串行接口、并行接口。串行接口是指在主機(jī)和接口一側(cè)并行傳送信息、接口和外設(shè)則一側(cè)串行傳送信息。一般而言,串行接口速度慢,但傳輸線數(shù)少,適用于傳輸距離較遠(yuǎn)的場合、以及本身串行工作的設(shè)備。并行接口是指主機(jī)和接口一側(cè)以及接口和設(shè)備一側(cè)都以字節(jié)或字并行傳輸。并行接口傳輸速度快,但傳輸線數(shù)多,適用于傳輸距離較近的場合、以及本身并行工作的設(shè)備。按總線操作時序的掌握方式,可分為同步接口、異步接口。同步接口是指與同步總線相連的接口,其信息傳送由統(tǒng)一的時序信號同步掌握。異步接口則是指與異步總線相連的接口,其信息傳送承受應(yīng)答方式掌握。按主機(jī)對外設(shè)的掌握方式,可分為程序查詢接口、中斷接口、DMA接口、以及通道掌握器等。這將是本章要集中爭論的問題。275、外設(shè)的信息交換方式在計(jì)算機(jī)系統(tǒng)中,CPU治理外設(shè)、實(shí)現(xiàn)信息交換的方式有: 程序查詢方式和程序中斷方式適用于數(shù)據(jù)傳輸速率比較低的設(shè)備;而DMA方式、通道方式、和PPU方式適用于數(shù)據(jù)傳輸率比較高的設(shè)備。目前,單片機(jī)和微型計(jì)算機(jī)中多承受程序查詢方式、程序中斷方式和DMA方式;大、中型計(jì)算機(jī)則承受通道方式和PPU方式。低速設(shè)備高速設(shè)備28三、程序查詢方式
在程序查詢方式下,數(shù)據(jù)在CPU和外設(shè)之間的傳送完全靠計(jì)算機(jī)程序掌握。某一設(shè)備一旦被選中,主機(jī)將不停地查詢這個設(shè)備,看其是否預(yù)備就緒。假設(shè)設(shè)備預(yù)備就緒,就執(zhí)行一次I/O操作,否則連續(xù)循環(huán)查詢。 在程序查詢方式下,CPU只能等待,不能處理其它業(yè)務(wù)。 程序查詢方式又分為兩種狀況:無條件傳送和條件傳送。291、無條件傳送無條件傳送是假設(shè)外設(shè)始終處于預(yù)備好狀態(tài),即預(yù)備好接收主機(jī)送來的數(shù)據(jù)、或者預(yù)備好向主機(jī)發(fā)送數(shù)據(jù)。在這種狀況下,CPU無需查詢外設(shè)的工作狀態(tài),CPU執(zhí)行I/O指令就可以完成需要的I/O操作。在實(shí)際的計(jì)算機(jī)系統(tǒng)中,這種狀況較為少見。例如,繼電器狀態(tài)的輸入,就屬于這種狀況。302、條件傳送很多狀況下,外設(shè)的工作狀態(tài)是很難事先知道的,比方什么時間按下鍵盤的鍵。為了確保外設(shè)送給CPU的數(shù)據(jù)不喪失、或者CPU送出的數(shù)據(jù)能被外備接收,需要CPU在程序中不停地、反復(fù)地查詢外設(shè)的狀態(tài),而且在查詢期間不能做其它事情,否則簡潔造成數(shù)據(jù)喪失。這就是程序查詢方式。313、程序查詢方式的接口電路接口電路的一般原理圖如下:數(shù)據(jù)存放器,雙向,接收CPU數(shù)據(jù)送往外設(shè);或接收外設(shè)數(shù)據(jù)送往CPU。命令存放器,單向,接收CPU送來的命令,并掌握完成讀寫或其它操作。狀態(tài)存放器:存儲反映外設(shè)的工作狀態(tài),這個存放器在程序查詢方式中是必需要設(shè)置的,它是程序進(jìn)展I/O操作的推斷依據(jù)。CPU并不直接訪問外設(shè),而是通過以上三個存放器實(shí)現(xiàn)外設(shè)訪問的。32程序查詢方式的接口電路〔續(xù)〕給出一個具體的輸入接口電路來介紹查詢程序的步驟,設(shè)該電路具有4個端口地址。程序查詢方式的優(yōu)點(diǎn)是掌握簡潔,所用硬件較少;缺點(diǎn)是外設(shè)和主機(jī)不能并行工作,系統(tǒng)效率很低。33四、程序中斷方式 程序查詢方式通過不斷地查詢外設(shè)的狀態(tài),來等待外設(shè)工作的完成,以犧牲CPU的效率,到達(dá)CPU與外設(shè)的同步。中斷方式與此不同,中斷是現(xiàn)代計(jì)算機(jī)有效地發(fā)揮效能和提高效率的一個特別重要的功能。341、中斷的根本概念所謂中斷是指CPU在執(zhí)行程序的過程中,消失了某些突發(fā)大事,CPU必需暫停現(xiàn)行程序的執(zhí)行,轉(zhuǎn)去處理突發(fā)大事,處理完該突發(fā)大事后,CPU又回到原來程序被打斷的位置連續(xù)執(zhí)行。這個過程稱為中斷,這種掌握方式稱為中斷掌握方式。現(xiàn)實(shí)中有很多中斷的例子。在程序中斷方式中,某一外設(shè)的數(shù)據(jù)預(yù)備就緒后,就“主動”向CPU發(fā)出中斷懇求信號,當(dāng)CPU響應(yīng)這個中斷時,便暫?,F(xiàn)行程序的運(yùn)行,自動轉(zhuǎn)移到該設(shè)備的中斷效勞程序,完成數(shù)據(jù)交換。當(dāng)中斷效勞程序執(zhí)行完畢后,CPU又回到原來的程序連續(xù)運(yùn)行。35中斷的根本概念〔續(xù)〕 圖中,主程序只是在設(shè)備A、B、C數(shù)據(jù)預(yù)備就緒時,才去處理A、B、C的數(shù)據(jù)交換??梢钥闯?,在速度較慢的外設(shè)預(yù)備自己的數(shù)據(jù)時,CPU照常執(zhí)行自己的主程序。在這個意義下,CPU和外設(shè)的操作是并行進(jìn)展的。因此,提高了計(jì)算機(jī)系統(tǒng)的效率。362、中斷的實(shí)質(zhì)與特點(diǎn)實(shí)質(zhì):程序切換。從程序的觀點(diǎn)看,中斷就是從現(xiàn)行程序到中斷效勞程序的切換,而中間過程都是為這個切換效勞的。切換的方法:一是保存斷點(diǎn)。程序能夠按挨次正確地執(zhí)行,依靠的是程序狀態(tài)字和程序計(jì)數(shù)器。發(fā)生中斷時,它們的內(nèi)容稱為斷點(diǎn),也就是已經(jīng)執(zhí)行完的最終一條指令的狀態(tài)和將要執(zhí)行的下一條指令的地址。執(zhí)行完中斷效勞程序后,要返回原程序連續(xù)執(zhí)行,就要記住從哪個位置連續(xù)執(zhí)行。二是恢復(fù)斷點(diǎn)。在程序返回時,把從前保存的值〔斷點(diǎn)〕再放回程序狀態(tài)字和程序計(jì)數(shù)器,明顯會接著原來的位置連續(xù)執(zhí)行。切換時間:什么時間切換是重要的。中斷的產(chǎn)生是隨機(jī)的,可能是在指令執(zhí)行的任何一點(diǎn)。為保證程序執(zhí)行的完整性,應(yīng)在一條指令執(zhí)行完、下一條指令開頭執(zhí)行之前進(jìn)展切換。特點(diǎn):隨機(jī)性,無法預(yù)料隨機(jī)大事在什么時間發(fā)生。373、中斷的分類依據(jù)中斷懇求的來源,中斷分為內(nèi)中斷和外中斷。內(nèi)中斷是指中斷懇求來自CPU內(nèi)部的中斷。如,運(yùn)算溢出、除數(shù)為零引起的中斷以及某些軟中斷都為內(nèi)中斷。外中斷是指中斷懇求來自CPU之外的中斷。如,電源掉電、校驗(yàn)錯等硬件故障引起的中斷、由外設(shè)進(jìn)展I/O操作引起的中斷。依據(jù)中斷產(chǎn)生的軟硬件,分為硬件中斷和軟中斷硬件中斷是指由硬件懇求信號引發(fā)的中斷。軟中斷是指由執(zhí)行軟中斷指令引發(fā)的中斷。38中斷的分類〔續(xù)一〕依據(jù)中斷懇求的緊急程度,分為可屏蔽中斷和非屏蔽中斷??善帘沃袛嗍侵改切┫鄬墑e比較低,可以通過屏蔽技術(shù)進(jìn)展制止或開放操作的中斷,常用于一般設(shè)備的I/O操作。非屏蔽中斷是指那些優(yōu)先級別較高,必需馬上響應(yīng),且不能通過屏蔽技術(shù)進(jìn)展制止或開放操作的中斷。常用于應(yīng)急處理,如電源掉電等?!矁?nèi)中斷均屬于不行屏蔽中斷〕。依據(jù)獲得效勞程序入口地址的方法,分為向量中斷和非向量中斷。向量中斷是指由硬件供給中斷效勞程序入口地址的中斷,中斷大事在提出中斷懇求的同時,通過硬件向主機(jī)供給向量地址。非向量中斷是指由軟件供給中斷效勞程序入口地址的中斷,如先固定地供給一個查詢程序的地址,再執(zhí)行該程序查詢找出中斷源,繼而通過分支轉(zhuǎn)移進(jìn)入對應(yīng)的中斷效勞程序。39中斷的分類〔續(xù)二〕404、中斷系統(tǒng)的組成軟件:首先是中斷效勞程序。實(shí)現(xiàn)中斷所要求的功能在中斷效勞程序中完成,如數(shù)據(jù)的輸入輸出操作,要靠中斷效勞程序中的I/O指令來完成。其次是中斷向量表。中斷向量表是中斷系統(tǒng)中的軟硬件的界面,通過中斷向量表實(shí)現(xiàn)由主程序到中斷效勞程序的切換,而且為了贏得時間,切換過程全部由硬件完成。硬件:首先是接口方面。中斷懇求、信號傳遞、排隊(duì)判優(yōu)等由接口中的硬件完成,最終優(yōu)先級最高的中斷懇求到達(dá)CPU。其次是CPU方面,主要是中斷響應(yīng)規(guī)律。CPU收到懇求信號以后,便開頭一個稱為“中斷響應(yīng)周期”的時間段,在這個時間段中完成到中斷效勞程序的切換。415、向量中斷的全過程 向量中斷是一種重要的中斷方式,我們主要爭論向量中斷。通常,向量中斷的過程劃分為五個階段: ①中斷懇求 ②中斷判優(yōu) ③中斷響應(yīng) ④中斷處理 ⑤中斷返回 下面將以向量中斷為例來介紹中斷的全過程。42①中斷懇求與傳遞產(chǎn)生中斷懇求信號的第一個條件是中斷源有中斷懇求。外設(shè)工作完成,等待和主機(jī)進(jìn)展數(shù)據(jù)交換。例如,輸入設(shè)備的數(shù)據(jù)已經(jīng)預(yù)備好,等待主機(jī)取走數(shù)據(jù);或者輸出設(shè)備已經(jīng)將數(shù)據(jù)存放器的數(shù)據(jù)取走,等待主機(jī)送來新的數(shù)據(jù)。產(chǎn)生中斷懇求信號的其次個條件是允許外設(shè)以中斷方式工作。在中斷接口電路中有一個中斷屏蔽觸發(fā)器,它相當(dāng)于一個開關(guān)。當(dāng)該觸發(fā)器為0時,表示開放中斷,即可以發(fā)出中斷懇求信號;當(dāng)該觸發(fā)器為1時,表示屏蔽中斷,即中斷懇求信號不能發(fā)出。43中斷懇求與傳送〔續(xù)一〕 中斷懇求信號必需傳送到CPU才能得到響應(yīng)。有三種傳遞方式:公共懇求線:多個中斷源公用一根懇求線向CPU提出中斷懇求。獨(dú)立懇求線:每個中斷源有自己的中斷懇求線,將中斷信號直接送往CPU。二維構(gòu)造:將中斷懇求線連接成二維構(gòu)造,用多條線向CPU懇求中斷,每條線上有多個中斷源。44②中斷判優(yōu)一臺計(jì)算機(jī)允許有多個中斷源。在中斷接口電路中,記錄中斷大事的觸發(fā)器稱為中斷懇求觸發(fā)器,一個觸發(fā)器紀(jì)錄一個中斷;多個中斷懇求觸發(fā)器通稱為中斷懇求存放器,一個中斷懇求存放器可以記錄多個中斷懇求。CPU在任何瞬間只能承受一個中斷懇求。當(dāng)多個中斷源同時發(fā)出中斷懇求時,應(yīng)領(lǐng)先響應(yīng)誰的中斷懇求,則由中斷優(yōu)先級打算。所謂中斷優(yōu)先級是指多個中斷同時發(fā)生時,CPU響應(yīng)中斷的優(yōu)先次序,它由優(yōu)先級排隊(duì)電路打算。一般原則是依據(jù)中斷大事的輕重緩急劃分優(yōu)先級。對那些提出中斷時需要馬上響應(yīng)和處理的中斷源,規(guī)定較高級別的優(yōu)先級,而對那些提出中斷懇求時可以延遲響應(yīng)和處理的中斷源,則規(guī)定較低的優(yōu)先級。例如,“故障、DMA、外中斷……”優(yōu)先級依次降低。45中斷判優(yōu):軟件判優(yōu) 當(dāng)中斷發(fā)生后,尤其是當(dāng)多個中斷源提出中斷懇求后,如何實(shí)現(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):串行排隊(duì)鏈判優(yōu) 硬件判優(yōu)又分為串行排隊(duì)鏈判優(yōu)和獨(dú)立懇求排隊(duì)判優(yōu)。串行排隊(duì)鏈判優(yōu):串行排隊(duì)鏈判優(yōu)用硬件實(shí)現(xiàn),包括串行排隊(duì)電路和向量編碼電路。當(dāng)同時有兩個〔以上〕中斷源發(fā)出中斷懇求信號時,被選中的總是最左邊的一個中斷源。47中斷判優(yōu):獨(dú)立懇求排隊(duì)判優(yōu)假設(shè)中斷懇求存放器的內(nèi)容為1111,中斷屏蔽存放器的內(nèi)容為0010,那么進(jìn)入排隊(duì)器的中斷懇求是1101。依據(jù)優(yōu)先次序,排隊(duì)輸出為1000,并由編碼器產(chǎn)生中斷源1對應(yīng)的向量地址。硬件排隊(duì)判優(yōu)的特點(diǎn)是速度快,硬件電路簡單。48③中斷響應(yīng)經(jīng)過中斷判優(yōu)的中斷懇求需要等待CPU的響應(yīng)才能得處處理。然而,CPU對中斷的響應(yīng)是有條件的。CPU響應(yīng)中斷要滿足三個條件:中斷源有中斷懇求,而且未受到屏蔽;CPU承受中斷懇求,CPU處于開中斷狀態(tài);一條指令執(zhí)行完畢,而且無DMA懇求。49中斷響應(yīng)〔續(xù)〕 當(dāng)CPU打算響應(yīng)中斷后,進(jìn)入一個稱為“中斷響應(yīng)周期”的過渡期〔位于原程序和中斷效勞程序之間〕。在此期間,完全依靠硬件切換程序,也就是完成以下四項(xiàng)操作。CPU向外設(shè)發(fā)出中斷應(yīng)答信號INTA,表示CPU對中斷的認(rèn)可。中斷掌握器收到該信號后,將中斷的向量地址〔微機(jī)中為中斷類型碼〕發(fā)送到數(shù)據(jù)總線上,CPU取走向量地址,并撤銷INTA。關(guān)中斷。目的是為了保證本次中斷響應(yīng)過程不受干擾。愛護(hù)斷點(diǎn)。斷點(diǎn)指程序計(jì)數(shù)器PC的值和狀態(tài)存放器PSW的值。把兩者內(nèi)容依次壓入堆棧,稱為愛護(hù)斷點(diǎn)。愛護(hù)斷點(diǎn)是為了在中斷完畢后恢復(fù)斷點(diǎn),從而返回被中斷的程序。CPU依據(jù)中斷向量地址獲得中斷效勞程序的入口地址,送入PC。到此中斷響應(yīng)周期完畢,開頭中斷效勞程序的執(zhí)行。50④中斷處理51中斷處理〔續(xù)〕中斷處理是通過執(zhí)行中斷處理程序完成的。中斷處理程序是事先編好放在內(nèi)存固定位置的一段程序。中斷處理程序的編制不行避開會用到一些通用存放器,而這些存放器在被中斷的程序中也可能正在使用,它們存放著現(xiàn)行程序的工作數(shù)據(jù),所以稱之為中斷現(xiàn)場。為了不破壞這個工作現(xiàn)場,必需在中斷程序中加以愛護(hù),由軟件將其轉(zhuǎn)移到安全的地方,通常是壓入堆棧。中斷處理程序一般承受三段式構(gòu)造,開頭愛護(hù)現(xiàn)場,中間為中斷處理〔屬于實(shí)質(zhì)性內(nèi)容〕,結(jié)尾恢復(fù)現(xiàn)場。硬件愛護(hù)斷點(diǎn)軟件愛護(hù)現(xiàn)場52⑤中斷返回 中斷返回是由中斷處理程序的最終一條指令〔IRET〕實(shí)現(xiàn)的,該指令的功能一是恢復(fù)原來被中斷程序的PC和PSW值,這些值在中斷響應(yīng)周期中保存于堆棧中;二是開中斷。這樣就又轉(zhuǎn)到了原來程序的斷點(diǎn)處連續(xù)工作。536、程序中斷方式的根本接口 程序中斷由外設(shè)接口狀態(tài)和CPU兩方面來掌握.在接口中,有打算是否向CPU發(fā)出中斷懇求的機(jī)構(gòu),主要是預(yù)備就緒RD和中斷屏蔽IM兩個觸發(fā)器。在CPU方面,有打算是否受理中斷懇求的機(jī)構(gòu),主要是中斷懇求IR和允許中斷EI兩個觸發(fā)器。547、單級中斷與多級中斷處理單級中斷: 單級中斷系統(tǒng)是中斷構(gòu)造中最根本的一種形式。單級中斷系統(tǒng)中不同優(yōu)先級的設(shè)備同時懇求時,CPU依據(jù)優(yōu)先級一個一個進(jìn)展處理。當(dāng)CPU正在處理某個中斷時,不允許其它中斷源再中斷CPU的程序,即使優(yōu)先權(quán)比它高的中斷源提出中斷懇求也是如此。55單級中斷與多級中斷處理(續(xù))
多級中斷 多級中斷系統(tǒng)是指計(jì)算機(jī)中有很多中斷源,依據(jù)各個中斷大事的輕重緩急的程度分成假設(shè)干級別,每個級別安排一個優(yōu)先權(quán),而且規(guī)定優(yōu)先權(quán)高的中斷級可以打斷優(yōu)先權(quán)低的中斷效勞程序,并以程序嵌套方式進(jìn)展工作。56單級中斷與多級中斷處理(續(xù))中斷屏蔽與中斷處理次序中斷響應(yīng)次序是由硬件排隊(duì)判優(yōu)線路打算的。但是,在中斷屏蔽技術(shù)的掌握條件下,可以通過軟件轉(zhuǎn)變屏蔽位的狀態(tài),從而轉(zhuǎn)變多級中斷〔多重中斷〕的處理次序。中斷系統(tǒng)的優(yōu)先級包含兩層意思,一是響應(yīng)優(yōu)先級,二是處理優(yōu)先級。響應(yīng)優(yōu)先級是指由硬件排隊(duì)電路打算的、CPU預(yù)備響應(yīng)中斷懇求的次序,排隊(duì)電路一旦設(shè)計(jì)好將無法轉(zhuǎn)變;處理優(yōu)先級是指可由中斷屏蔽碼轉(zhuǎn)變的、CPU對中斷懇求的實(shí)際處理的先后次序。假設(shè)不進(jìn)展屏蔽,中斷處理次序就是中斷響應(yīng)次序。57單級中斷與多級中斷處理(續(xù)) 例、某計(jì)算機(jī)的中斷系統(tǒng)有4個中斷源,每個中斷源對應(yīng)一個屏蔽碼。表1為程序優(yōu)先級與屏蔽碼的關(guān)系,中斷響應(yīng)的優(yōu)先次序?yàn)锳BCD。此時,中斷的處理次序和響應(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ù))當(dāng)A、B、C、D四個中斷懇求同時到來時,CPU的運(yùn)動軌跡如下:中斷服務(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運(yùn)動軌跡為:59單級中斷與多級中斷處理(續(xù))在不轉(zhuǎn)變中斷響應(yīng)次序的條件下,轉(zhuǎn)變屏蔽碼可以轉(zhuǎn)變中斷處理次序。在A、B、C、D中斷懇求同時到來時,CPU的運(yùn)動軌跡將發(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ù))允許和制止中斷、開放和屏蔽中斷制止中斷與屏蔽中斷是兩個不同的概念。制止中斷是指“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五、DMA方式跟程序查詢方式相比,中斷方式更有效,但中斷方式的數(shù)據(jù)傳送仍以程序方式實(shí)現(xiàn),在程序切換過程中存在很多額外操作,如愛護(hù)斷點(diǎn)、愛護(hù)現(xiàn)場、恢復(fù)斷點(diǎn)、恢復(fù)現(xiàn)場等,所以傳送效率仍舊不是很高,只適合中、低速設(shè)備的I/O操作。在大批量、高速度傳送數(shù)據(jù)時,需要一種更加有效的方法,這就是DMA。DMA在主存和外設(shè)之間實(shí)現(xiàn)高速、批量數(shù)據(jù)交換,數(shù)據(jù)傳輸完全依靠硬件,不需要執(zhí)行程序,因而速度快、效率高。621、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介入來實(shí)現(xiàn)掌握。DMA方式的主要優(yōu)點(diǎn)是速度快。第一,CPU不參與數(shù)據(jù)傳送操作,不需要取指令、取數(shù)等操作;其次,不需要進(jìn)展愛護(hù)現(xiàn)場、恢復(fù)現(xiàn)場之類的工作。第三,內(nèi)存地址、傳送數(shù)據(jù)個數(shù)的計(jì)數(shù)也由硬件完成。DMA方式的主要缺點(diǎn)是硬件線路簡單。632、特點(diǎn)與應(yīng)用DMA方式的特點(diǎn):以響應(yīng)隨機(jī)懇求方式,實(shí)現(xiàn)主存和外設(shè)之間的快速數(shù)據(jù)傳送;數(shù)據(jù)傳送不影響CPU的程序狀態(tài),除了訪問主存發(fā)生的沖突外,CPU可以連續(xù)執(zhí)行自己的程序;數(shù)據(jù)傳送前的預(yù)備工作由操作系統(tǒng)的治理程序擔(dān)當(dāng),DMA只負(fù)責(zé)簡潔的數(shù)據(jù)傳送操作,傳送完畢后的善后處理則承受程序中斷方式解決。DMA方式一般用于主存和高速設(shè)備間的數(shù)據(jù)傳送、以及DRAM的刷新掌握。高速設(shè)備包括:磁盤、磁帶、光盤等外存儲器。其它帶有局部存儲器的外圍設(shè)備、通信設(shè)備。643、DMA傳送方式 DMA技術(shù)的消失,使得外設(shè)可以通過DMA掌握器直接訪問內(nèi)存;同時,CPU可以連續(xù)執(zhí)行程序,也要訪問內(nèi)存。那么DMA掌握器是如何與CPU分時使用內(nèi)存的?通常狀況下有三種方法:停頓CPU訪問內(nèi)存;周期挪用;DMA與CPU交替訪問內(nèi)存。65停頓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)存。這是一個完整的“申請——建立——傳送——?dú)w還”的過程。優(yōu)點(diǎn):掌握簡潔,適合高速設(shè)備成組傳送數(shù)據(jù); 缺點(diǎn):DMA掌握器訪問內(nèi)存的時間里,內(nèi)存的效能沒有充分發(fā)揮。66周期挪用法當(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ù)的時機(jī)。這種方法使用較多。含申請、建立、傳送、歸還過程67DMA與CPU交替訪問內(nèi)存這種方法是把一個存取周期一分為二,一半給DMA使用,一半給CPU使用。其原理示意圖如下。這種方式不需要總線使用權(quán)的申請、建立和歸還過程,總線使用權(quán)是分時掌握的。CPU和DMA掌握器各有自己訪問內(nèi)存的地址存放器、數(shù)據(jù)存放器、讀寫信號等掌握存放器??偩€掌握權(quán)的轉(zhuǎn)移幾乎不需要時間,DMA傳送效率很高。但硬件掌握規(guī)律也就更加簡單,而且在沒有DMA數(shù)據(jù)傳送狀況下,時間片被鋪張。684、根本的DMA掌握器 一個DMA掌握器是連接DMA方式的外設(shè)與系統(tǒng)總線的接口電路,這個接口電路是在中斷接口的根底上再加DMA機(jī)構(gòu)組成的。DMA掌握器組成:1、主存地址計(jì)數(shù)器2、傳送長度計(jì)數(shù)器3、數(shù)據(jù)緩沖存放器4、DMA懇求觸發(fā)器5、掌握/狀態(tài)規(guī)律6、中斷機(jī)構(gòu)69DMA各部件的功能內(nèi)存地址計(jì)數(shù)器:用來存放要交換數(shù)據(jù)的內(nèi)存地址。在DMA傳送前,由程序初始化。當(dāng)DMA傳送時,每傳送一次數(shù)據(jù),地址計(jì)數(shù)器加1。傳送長度計(jì)數(shù)器:用來記錄傳送數(shù)據(jù)塊的長度。在DMA傳送前,其內(nèi)容也是由程序預(yù)置,并以補(bǔ)碼表示。每傳送一次數(shù)據(jù),地址計(jì)數(shù)器加1,直到計(jì)數(shù)器溢出,引發(fā)DMA掌握器向CPU發(fā)出中斷懇求信號。數(shù)據(jù)緩沖存放器:暫存?zhèn)魉偷臄?shù)據(jù)。內(nèi)存數(shù)據(jù)緩沖器外設(shè)。DMA懇求觸發(fā)器:外設(shè)預(yù)備好一個數(shù)據(jù)后就給出一個掌握信號,使DMA懇求觸發(fā)器置1。該標(biāo)志引發(fā)DMA懇求,即“掌握/狀態(tài)規(guī)律”向CPU發(fā)出總線使用權(quán)的懇求〔HRQ〕,CPU以HLDA響應(yīng),“掌握/狀態(tài)規(guī)律”接收此信號后發(fā)出DMA響應(yīng)信號,使DMA懇求觸發(fā)器復(fù)位。掌握/狀態(tài)規(guī)律:用于修改內(nèi)存地址計(jì)數(shù)器和字計(jì)數(shù)器、指定傳送方向、并對DMA懇求信號和CPU響應(yīng)信號協(xié)調(diào)和同步。中斷機(jī)構(gòu):當(dāng)一數(shù)據(jù)塊傳送完成,溢出信號觸發(fā)中斷機(jī)構(gòu),向CPU提出中斷懇求,報告數(shù)據(jù)傳送完畢。CPU將進(jìn)展DMA傳送的收尾處理。705、DMA數(shù)據(jù)傳送過程 DMA數(shù)據(jù)傳送過程可分為三個階段:預(yù)備階段、傳送階段、完畢階段,完成傳送前的預(yù)處理、數(shù)據(jù)傳送、傳送后的完畢處理。
預(yù)備階段: 在DMA傳送前必需做好預(yù)備工作,主機(jī)向DMA接口傳送以下信息:讀/寫命令。向DMA掌握器的主存地址計(jì)數(shù)器送數(shù)據(jù)塊在內(nèi)存中的首地址。向DMA掌握器的設(shè)備地址存放器送設(shè)備號。向傳送長度計(jì)數(shù)器送數(shù)據(jù)字個數(shù)。啟動DMA。這些工作做完之后,CPU連續(xù)原來的工作。71DMA數(shù)據(jù)傳送過程〔續(xù)〕傳送階段外設(shè)預(yù)備好收發(fā)數(shù)據(jù)時,向主機(jī)發(fā)DMA懇求。CPU在本機(jī)器周期完畢后,響應(yīng)當(dāng)懇求、并使CPU的總線驅(qū)動器處于高阻狀態(tài),讓出主存使用權(quán)。DMA掌握器發(fā)送內(nèi)存地址、讀/寫命令。挪用一個存儲周期,傳送一個數(shù)據(jù),主存地址計(jì)數(shù)器加1,字計(jì)數(shù)器減1,假設(shè)用補(bǔ)碼表示則加1。推斷數(shù)據(jù)是否傳送完畢,即計(jì)數(shù)器是否等于0。假設(shè)不為0,則撤銷DMA懇求,連續(xù)第一步的動作;假設(shè)字計(jì)數(shù)器為0,進(jìn)入完畢階段。完畢階段 DMA掌握器向主機(jī)發(fā)出中斷懇求,報告數(shù)據(jù)傳送完畢。CPU停頓主程序執(zhí)行,轉(zhuǎn)向中斷效勞程序進(jìn)展DMA操作的后處理,包括校驗(yàn)送入內(nèi)存的數(shù)據(jù)、打算是否連續(xù)DMA數(shù)據(jù)傳送、測試是否發(fā)生錯誤等。726、DMA方式與中斷掌握方式比較 DMA是程序中斷技術(shù)的進(jìn)展。在硬件規(guī)律機(jī)構(gòu)的支持下,以更快的速度、更簡便的形式傳送數(shù)據(jù)。兩者之間的區(qū)分在于:中斷方式通過程序?qū)崿F(xiàn)數(shù)據(jù)傳送,而DMA直接用硬件來實(shí)現(xiàn)數(shù)據(jù)傳送。CPU在執(zhí)行完一條指令后響應(yīng)中斷,而在一個機(jī)器周期完畢后響應(yīng)DMA懇求。中斷方式不僅具有傳送數(shù)據(jù)的力量,還能處理特別大事;而DMA只能進(jìn)展數(shù)據(jù)傳送。中斷方式需要切換程序、愛護(hù)現(xiàn)場和恢復(fù)現(xiàn)場;而DMA僅挪用一個存儲周期,不轉(zhuǎn)變CPU現(xiàn)場。DMA懇求比中斷懇求優(yōu)先級高。之所以優(yōu)先響應(yīng)DMA懇求,是為了防止喪失DMA高速傳送的數(shù)據(jù)。73六、通道掌握方式 在大型計(jì)算機(jī)系統(tǒng)中,所連接的I/O設(shè)備多、I/O操作多、I/O速度快,單純依靠承受程序中斷和DMA掌握方式已不能滿足輸入輸出的要求,于是通道掌握方式被引入計(jì)算機(jī)系統(tǒng)。在通道掌握方法下,CPU將局部權(quán)力下放給通道,讓通道去治理外設(shè),大大提高了CPU的工作效率。741、通道的根本概念通道掌握方式是DMA方式的進(jìn)一步進(jìn)展。通道也是實(shí)現(xiàn)外設(shè)和主存之間直接數(shù)據(jù)交換的掌握器,是一個具有特殊功能的處理機(jī),特地負(fù)責(zé)數(shù)據(jù)的輸入輸出治理。通道有自己的指令和程序。從規(guī)律構(gòu)造上講,I/O系統(tǒng)一般具有四級連接: CPU、內(nèi)存通道設(shè)備掌握器外設(shè)。一般大中型計(jì)算機(jī)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)越高。75具有通道的計(jì)算機(jī)系統(tǒng)構(gòu)造圖76①通道的功能 通道的根本功能是執(zhí)行通道指令,組織外設(shè)和內(nèi)存進(jìn)展數(shù)據(jù)傳輸,按I/O指令要求啟動外設(shè),向CPU報告中斷等,具體有五項(xiàng)任務(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è)的中斷懇求和通道懇求按次序準(zhǔn)時報告CPU。77②CPU對通道的治理在具有通道構(gòu)造的計(jì)算機(jī)中,CPU是通過處理來自通道的中斷以及執(zhí)行I/O指令實(shí)現(xiàn)對通道的治理的。來自通道的中斷有兩種:數(shù)據(jù)傳送完畢中斷故障中斷輸入輸出指令分為兩級:CPU執(zhí)行的I/O指令:這種指令比較簡潔,且不直接掌握I/O操作,只是負(fù)責(zé)通道的啟動和停頓,查詢通道或設(shè)備的狀態(tài),掌握通道去完成I/O操作等。通道執(zhí)行的通道程序:在CPU啟動通道后,通道執(zhí)行通道程序來
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO 5273:2025 EN Passenger car tyres - Preparation method for an artificially worn state for wet grip testing
- 二零二五版昆明公租房電子合同租賃合同爭議解決途徑與流程2篇
- 二零二五版教育培訓(xùn)項(xiàng)目合同范本共二十項(xiàng)條款3篇
- 2025版工業(yè)園區(qū)害蟲防治與安全防護(hù)服務(wù)協(xié)議3篇
- 2025版信用社小微企業(yè)貸款業(yè)務(wù)合作協(xié)議3篇
- 酒店管理公司2025年度戰(zhàn)略合作協(xié)議2篇
- 2025版臨時工技能培訓(xùn)免責(zé)合同4篇
- 2025年度建筑裝修工程合同標(biāo)的質(zhì)量驗(yàn)收:1、客戶居住環(huán)境4篇
- 2025水面承包權(quán)經(jīng)營與管理合同3篇
- 上海市房屋預(yù)售合同6篇
- 物業(yè)民法典知識培訓(xùn)課件
- 2023年初中畢業(yè)生信息技術(shù)中考知識點(diǎn)詳解
- 2024-2025學(xué)年八年級數(shù)學(xué)人教版上冊寒假作業(yè)(綜合復(fù)習(xí)能力提升篇)(含答案)
- 《萬方數(shù)據(jù)資源介紹》課件
- 第一章-地震工程學(xué)概論
- 《中國糖尿病防治指南(2024版)》更新要點(diǎn)解讀
- 浙江省金華市金東區(qū)2022-2024年中考二模英語試題匯編:任務(wù)型閱讀
- 青島版(五四制)四年級數(shù)學(xué)下冊全冊課件
- 大健康行業(yè)研究課件
- 租賃汽車可行性報告
- 計(jì)算機(jī)輔助設(shè)計(jì)AutoCAD繪圖-課程教案
評論
0/150
提交評論