




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第八章輸入輸出系統8.1外圍設備的定時方式和信息交換方式8.2程序查詢方式8.3程序中斷方式8.4DMA方式8.5通道方式8.6通用I/O標準接口8.1外圍設備的定時方式和信息交換方式8.1.1外圍設備的速度分級外設種類繁多,存在以下幾種情況:不同種類的外設數據傳輸速率差別很大同一種設備在不同時刻傳輸速率也可能不同高速的CPU與速度參差不齊的外設怎樣在時間上同步呢?首先,看一下輸入輸出設備與CPU交換數據的過程:解決辦法是在CPU和外設之間數據傳送時加以定時。1、速度極慢或簡單的外設(機械開關,led)CPU只需要接受或者發送數據即可。2、慢速或者中速的設備(鍵盤,打印機)CPU與外圍設備之間的定時,有以下三種情況。可以采用異步定時的方式如果CPU從外設接收一個字,則它首先詢問外設的狀態,如果外設的狀態標志表明設備已“準備就緒”,那么CPU就從總線上接收數據。CPU在接收數據后,發出輸入響應信號,告訴外設已經把數據總線的數據取走。3、高速外設CPU以等間隔的速率執行輸入/輸出指令,因此這種方式叫作同步定時方式。ADC0809轉換時間100μs8.1.2信息交換方式1、程序查詢方式2、程序中斷方式3、DMA方式4、通道方式適用于低速設備高速設備1、程序查詢方式在程序查詢方式下,數據在CPU和外設之間的傳送完全靠計算機程序控制。某一設備一旦被選中,主機將不停地查詢這個設備,看其是否準備就緒。2、程序中斷方式在程序中斷方式中,某一外設的數據準備就緒后,就“主動”向CPU發出中斷請求信號,當CPU響應這個中斷時,便暫停現行程序的運行,自動轉移到該設備的中斷服務程序,完成數據交換。當中斷服務程序執行結束后,CPU又回到原來的程序繼續運行。跟程序查詢方式相比,中斷方式更有效,但中斷方式的數據傳送仍以程序方式實現,在程序切換過程中存在許多額外操作,如保護斷點、保護現場、恢復斷點、恢復現場等,所以傳送效率仍然不是很高,只適合中、低速設備的I/O操作。3、直接內存訪問DMA方式在大批量、高速度傳送數據時,需要一種更加有效的方法,這就是DMA。DMA在主存和外設之間實現高速、批量數據交換,數據傳輸完全依靠硬件,不需要執行程序,因而速度快、效率高。DMA方式適用于內存和高速外圍設備之間大批數據交換的場合。 在大型計算機系統中,所連接的I/O設備多、I/O操作多、I/O速度快,單純依靠采用程序中斷和DMA控制方式已不能滿足輸入輸出的要求,于是通道控制方式被引入計算機系統。在通道控制方法下,CPU將部分權力下放給通道,讓通道去管理外設,大大提高了CPU的工作效率。4、通道方式8.2程序查詢方式1、設備編址計算機中有兩種需要編址的器件:一種是存儲器,另一種是接口電路。存儲器是對存儲單元進行編址,而接口電路是對其中的端口進行編址。常用的I/O編址有兩種:獨立編址方式和統一編址方式。把端口當成存儲單元對待,也就是讓端口占用存儲器單元地址。MCS-51就是采用這種編址方式,把外部64K字節的數據存儲器RAM空間的一部分作為擴展外圍I/O的地址空間。把I/O口和存儲器分開進行編址,形成兩個獨立的地址空間,需要專門的I/O指令和控制信號。8086、8088就是采用這種編址方式,它具有兩條I/O指令(IN和OUT)。
(1)獨立編址方式:(2)統一編址方式:2、輸入輸出指令I/O指令一般具有以下功能:1、置1或置0接口的某些控制觸發器。2、測試設備的狀態,如“忙”、“準備就緒”等3、傳送數據某機I/O指令的格式為:01R0~R7OP控制DMsDOAS2,13012345678910……1564個外部設備的設備地址表示把CPU中R2的內容輸出到13號設備的A數據緩沖器中,同時啟動13號設備工作。3、程序查詢接口設備選擇電路:設備地址譯碼器,用來判別地址總線上呼叫的設備是不是本設備。數據緩沖寄存器設備狀態寄存器:是接口中的標志觸發器,如“忙”,“準備就緒”等。⑤③(1)先向I/O設備發出命令字,請求進行數據傳送;(2)從I/O接口讀入狀態字;(3)檢查狀態字中的標志,看看數據交換是否可以進行;(4)假如這個設備沒有準備就緒,則第(2)、第(3)步重復進行,一直到這個設備準備好交換數據,發出準備就緒信號“Ready”為止;(5)CPU從I/O接口的數據緩沖寄存器輸入數據,或者將數據從CPU輸出至接口的數據緩沖寄存器。與此同時,CPU將接口中的狀態標志復位。(6)數據傳送4、程序查詢輸入/輸出方式⑤③CPU在執行主程序的過程中,周期性地查詢外部設備的情況。設備服務子程序的功能:1、實現數據傳送輸入時的數據傳送輸出時的數據傳送2、修改內存地址3、修改傳送字節數,以便修改傳送長度。4、進行狀態分析和其它控制功能8.3程序中斷方式8.3.1中斷的概念、功能8.3.2程序中斷方式的基本接口8.3.3單級中斷8.3.4多級中斷8.3.5Pentium中斷機制(簡單看一下)8.3.1中斷的概念、功能中斷(Interrupt)是指CPU暫時中止現行程序,轉去處理隨機發生的緊急事件,處理完后自動返回原程序的功能和技術。中斷系統是計算機實現中斷功能的軟硬件總稱。一般在CPU中設置中斷機構,在外設接口中設置中斷控制器,在軟件上設置相應的中斷服務程序。中斷系統的功能包括:(1)實現主機和外設的并行工作;(2)處理故障;(3)實現多道程序和分時操作;(4)實時控制;(5)實現人機聯系;(6)實現多機通信。中斷源:能夠向CPU發出中斷請求的事件。常見中斷源有:輸入、輸出設備中斷。數據通道中斷。實時時鐘中斷。故障中斷。系統中斷。為了調試程序而設置的中斷。如鍵盤、打印機等工作過程中已做好接收或發送準備。如磁盤、磁帶等要同主機進行數據交換等。例如電源掉電、設備故障等要求CPU進行緊急處理等。如運算過程出現溢出、數據格式非法,數據傳送過程出現校驗錯,控制器遇到非法指令等等圖8.5中斷處理過程流程圖公操作:是指一條指令執行結束后CPU所進行的操作,如中斷處理、直接內存傳送、取下一條指令等。轉入公操作時才受理設備的中斷請求中斷處理過程注意幾個問題:1、響應中斷時機:外界中斷請求是隨機的,2、斷點保護問題(PC,寄存器內容和狀態的保存)3、開中斷和關中斷問題。4、中斷是由軟硬件結合起來實現的。“中斷周期”由硬件實現,而中斷服務程序由機器指令序列實現。但CPU只有在當前指令執行完畢后,才轉至中斷操作。8.3.2程序中斷方式的基本接口設備選擇器:設備選擇器用來判別總線上送出的地址(或稱呼叫的設備)是否為本設備,它實際上是設備地址的譯碼比較電路。BS外設接口忙(BuSy)標志RD外設準備就緒(ReaDy)標志EI(EnableInterrupt中斷允許觸發器)為1,某設備可以向CPU發出中斷請求。IR(InterruptRequest)中斷請求觸發器為1,表示設備發出中斷請求IM(InterruptMask)中斷屏蔽觸發器為0,CPU可受理外界中斷請求。①表示由程序啟動外設,將該外設接口的“忙”標志BS置“1”,“準備就緒”標志RD清“0”②表示接口向外設發出啟動信號;③表示數據由外設傳送到接口的緩沖寄存器;④表示當設備動作結束或緩沖寄存器數據填滿時,設備向接口送出一控制信號,將數據“準備就緒”標志RD置“1”;⑤表示允許中斷標志EI為“1”時,接口向CPU發出中斷請求信號;⑥表示在一條指令執行末尾CPU檢查中斷請求線,將中斷請求線的請求信號接收到“中斷請求”標志IR;⑦表示如果“中斷屏蔽”標志IM為“0”時,CPU在一條指令執行結束后受理外設的中斷請求,向外設發出響應中斷信號并關閉中斷;⑧表示轉向該設備的中斷服務程序入口;⑩表示CPU發出控制信號C將接口中的BS和RD標志復位。⑨表示在中斷服務程序通過輸入指令把接口中數據緩沖寄存器的數據讀至CPU中的寄存器;圖中①-⑧表示由某一外設輸入數據的控制過程。8.3.3單級中斷所有中斷源屬于同一級,離CPU越近,優先級越高圖8.7類似于第六章的鏈式查詢方式。1、單級中斷的概念2、單機中斷源的識別中斷源的識別:串行排隊鏈法IS1,IS2,IS3為中斷選中信號INTO為中斷排隊輸出INTI為中斷排隊輸入IR1,IR2,IR3為中斷請求信號1、若沒有更高優先級的中斷請求,/INTI=0,門1輸出高電平,即IS1=1,若IR1=1,當CPU發來INTA=1,則發出IR1請求的中斷源被選中。2、選中信號經門7送入編碼電路,產生一個惟一對應的設備地址,并經數據總線送往CPU的主存地址寄存器,然后執行該中斷源設備的中斷服務程序。3、由于/IR1=0,封鎖門2,IS2,IS3=0,即排隊識別工作不再向下進行。4、若IR1無請求,則iR1=0,門7被封鎖,不會向編碼電路送入選中信號。/IR1=1,則IS2=1,如果IR2=1,則被選中,否則繼續往下查詢。01中斷向量:當CPU響應中斷時,由硬件直接產生一個固定的地址(即向量地址)由向量地址指出每個中斷源設備的中斷服務程序入口,這種方法稱為向量中斷。每個中斷源分別有一個中斷服務程序,而每個中斷服務程序又有自己的向量地址。當CPU識別出某中斷源時,由硬件直接產生一個與該中斷源對應的向量地址,很快便引入中斷服務程序。3、中斷向量的產生向量中斷要求在硬件設計時考慮所有中斷源的向量地址,而實際中斷時只能產生一個向量地址。圖8.8中上面部分即為中斷向量產生邏輯,它是由編碼電路實現的。1、有些計算機中由硬件產生的向量地址不是直接地址,而是一個“位移量”,這個位移量加上CPU某寄存器里存放的基地址,最后得到中斷處理程序的入口地址。2、還有一種采用向量地址轉移的方法。假設有8個中斷源,由優先級編碼電路產生8個對應的固定地址碼(例如0,1,2,…7),這8個單元中存放的是轉移指令,通過轉移指令可轉入設備各自的中斷服務程序入口。這種方法允許中斷處理程序放在內存中任何地方,非常靈活。8.3.4多級中斷1、多級中斷的概念系統中有相當多的中斷源,每一中斷級分配一個優先權。一般來說,優先權高的中斷可以打斷優先權低的中斷服務程序。一維多級中斷:二維多級中斷:每一級中斷中只有一個中斷源。每一級中斷中有多個中斷源。1、一個系統有n級中斷,則CPU中有n個IR,n個IM(置1關閉本級和低優先級,置0開放更高優先級。)2、某級中斷被響應后,則關閉本級和低于本級的IM,開放更高級的IM。3、多級中斷可以嵌套,但同一級的中斷不允許嵌套。4、中斷響應時,確定哪一級中斷和中斷源采用硬件實現。采用了獨立請求方式和鏈式查詢方式相結合的方式。5、使用堆棧保存現場,后進先出順序進行,不必單獨設置現場保護區。2、多級中斷源的識別在多級中斷中,每一級均有一根中斷請求線送往CPU的中斷優先級排隊電路,對每一級賦予了不同的優先級。圖8.10給出了獨立請求式的中斷優先級排隊與中斷向量產生的邏輯結構。1、每個中斷請求信號保存在“中斷請求”觸發器中,經“中斷屏蔽”觸發器控制后,可能有若干個請求信號IR’進入虛線框所示的排隊電路。2、排隊電路在若干個中斷源中決定首先響應哪個中斷源,并將IRi置1,其他為0。3、編碼電路根據排上隊的中斷源輸出信號IRi,產生一個預定的地址碼,轉向中斷服務程序。假設中斷源1的優先級最高,中斷源4最低。已知中斷請求寄存器內容為1111,中斷屏蔽寄存器內容為0010,那么進入排隊器的中斷請求是1101。根據優先次序,排隊器輸出為1000。然后由編碼器產生中斷源1所對應的向量地址。100舉例例1、參見圖所示的二維中斷系統。請問:(1)在中斷情況下,CPU和設備的優先級如何考慮?(2)若CPU現執行設備B的中斷服務程序,IM2,IM1,IM0的狀態是什么?如果CPU執行設備D的中斷服務程序,IM2,IM1,IM0的狀態又是什么?請按降序排列各設備的中斷優先級。(3)每一級的IM能否對某個優先級的個別設備單獨進行屏蔽?如果不能,采取什么辦法可達到目的?(4)假如設備C一提出中斷請求,CPU立即進行響應,如何調整才能滿足此要求?分析(1)在中斷情況下,CPU的優先級最低。各設備的優先次序是:(2)執行設備B的中斷服務程序時IM2IM1IM0=111;(3)每一級的IM標志不能對某個優先級的個別設備進行單獨屏蔽。(4)要使設備C的中斷請求及時得到響應,可將設備C從第2級取出來,單獨放在第3級上,使第3級的優先級最高,即令IM3=0即可。可將接口中的EI(中斷允許)標志清“0”,它禁止設備發出中斷請求。執行設備D的中斷服務程序時,IM2IM1IM0=011。A→B→C→D→E→F→G→H→I→CPU。允許和禁止中斷、開放和屏蔽中斷禁止中斷與屏蔽中斷是兩個不同的概念。禁止中斷是指“CPU中”的中斷允許觸發器置0,處于“關中斷”,所有可屏蔽中斷源的中斷請求得不到響應。允許中斷是指CPU中的中斷允許觸發器置1,處于“開中斷”,可以響應中斷源的中斷請求。允許和禁止中斷對應開和關中斷。屏蔽中斷是指某個中斷源“接口中”的中斷屏蔽觸發器被置1,對應的中斷源不能發出中斷請求,處于“中斷封鎖”。當中斷接口中的中斷屏蔽觸發器置0,則該中斷源處于“中斷開放”,此時對應的中斷源可以發出中斷請求。
例、某計算機的中斷系統有4個中斷源,每個中斷源對應一個屏蔽碼。表1為程序優先級與屏蔽碼的關系,中斷響應的優先次序為ABCD。此時,中斷的處理次序和響應次序是一致的。
表1:程序優先級與屏蔽碼的關系中斷服務程序屏蔽碼A設備B設備C設備D設備A設備服務程序1111B設備服務程序0111C設備服務程序0011D設備服務程序0001當A、B、C、D四個中斷請求同時到來時,CPU的運動軌跡如下:
中斷服務程序屏蔽碼A設備B設備C設備D設備A設備服務程序1111B設備服務程序0111C設備服務程序0011D設備服務程序0001當中斷請求按D、C、B、A的次序到來時,CPU運動軌跡為:在不改變中斷響應次序的條件下,改變屏蔽碼可以改變中斷處理次序。在A、B、C、D中斷請求同時到來時,CPU的運動軌跡將發生變化。 響應ABCD;處理ADCB。中斷服務程序屏蔽碼A設備B設備C設備D設備A設備服務程序1111B設備服務程序0100C設備服務程序0110D設備服務程序01118.3.5中斷控制器一個8259A可以管理8級中斷,每一級中斷都可以屏蔽或允許。可通過9片級聯可擴展至64級8259A在中斷響應周期可提供相應的中斷類型碼,從而迅速轉至中斷服務程序。8259A設計有多種工作方式,可以通過編程來選擇,以適應不同的應用場合5V供電8259中斷控制器1、中斷請求寄存器(IR)接受8個外部設備送來的中斷請求,每一位對應一個設備。2、中斷請求寄存器的各位送入優先權判斷器3、根據中斷屏蔽寄存器(IM)各位的狀態來決定最高優先級的中斷請求,并將各位的狀態送入中斷狀態寄存器IS
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 影視行業群眾演員參演及費用結算協議
- 海外倉庫存盤點及風險防控管理服務合同
- 電力設施安全補充協議
- 醫學檢驗實驗室風險投資與合作協議
- 學術論文原創性保證及知識產權合同
- 跨國合作區高標準廠房施工協議
- 體育賽事直播權授權及賽事推廣合作協議
- 歐洲保健品跨境電商平臺入駐與營銷合作協議
- 教育培訓機構招生宣傳資源共享協議
- 會所場地租賃合同終止補充協議
- 危廢轉運合同范例
- DBJT13-323-2019 土壤固化劑應用技術規程
- 手術患者管路安全管理
- 數字化轉型下的對公客戶業務場景解析
- 高中化學物質俗名大全
- 2024鐵路車站及沿線用攝像機技術要求
- 2025年西昌市公開招聘國企業工作人員高頻重點提升(共500題)附帶答案詳解
- 2025年快速注塑機生產線升級改造合同范本3篇
- 2025屆湖北武漢市高考仿真模擬數學試卷含解析
- 《艾滋病患者的護理》課件
- 公園景區安全生產
評論
0/150
提交評論