第6章輸入輸出技術.ppt_第1頁
第6章輸入輸出技術.ppt_第2頁
第6章輸入輸出技術.ppt_第3頁
第6章輸入輸出技術.ppt_第4頁
第6章輸入輸出技術.ppt_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1 第6章數(shù)據(jù)傳送方式 學習重點 掌握I O接口的概念和功能 微處理器與I O設備之間數(shù)據(jù)傳輸?shù)?種控制方式 深刻理解中斷 包括中斷分類 中斷向量 中斷處理過程 中斷優(yōu)先級及中斷嵌套的概念和實現(xiàn)方案 掌握8259A的使用方法 掌握DMA基本概念 并行接口 串行接口 定時器及模數(shù)數(shù)模轉換結構和原理 2 第6章輸入輸出接口概述 6 1 1輸入輸出接口電路所謂接口是指CPU和存儲器 外部設備或者兩種外部設備之間 或者兩種機器之間通過系統(tǒng)總線進行連接的邏輯部件 或稱電路 它是CPU與外界進行信息交換的中轉站 圖6 1為一個微型計算機的輸入輸出接口結構圖 可以看出 一個簡單的微機系統(tǒng)需要CPU 存貯器 基本輸入輸出接口以及將它們連接在一起的各種信號線和接口電路 3 圖6一1微型計算機的輸入輸出接口結構圖 4 第6章數(shù)據(jù)傳送方式 1 I O信息的組成CPU通過接口與外設交換信息 這些信息包括數(shù)據(jù)信息 狀態(tài)信息和控制信息 1 數(shù)據(jù)信息 可分為數(shù)字量 模擬量和開關量 數(shù)字量 是鍵盤 CRT 打印機及磁盤等I O外設與CPU交換的信息 它是以二進制形式表示的數(shù)或以ASCII碼表示的數(shù)或字符 模擬量 當微型計算機用于控制系統(tǒng)時 大量的現(xiàn)場信息如溫度 壓力 流量 位移等 經(jīng)過傳感器把非電量轉換成電量 并經(jīng)放大處理得到模擬量的電壓或電流 這些模擬量必須先經(jīng)過A D轉換器轉換成數(shù)字量才能輸入計算機 計算機控制信號的輸出也必須先經(jīng)過D A轉換器把數(shù)字量轉換成模擬量才能去控制執(zhí)行機構 5 第6章數(shù)據(jù)傳送方式 開關量即兩個狀態(tài)的量 如開關的斷開與閉合 閥門的打開與關閉等 通常開關量要經(jīng)過相應的電平轉換才能與計算機連接 每個開關量只要一位二進制數(shù)表示 故對于字長為8位 或16位 的計算機 一次可輸入或輸出8位 或16位 開關量 2 狀態(tài)信息狀態(tài)信息是CPU與外設之間交換數(shù)據(jù)時的聯(lián)絡信息 CPU通過讀取外設狀態(tài)信號 可知外設的工作狀態(tài) 如輸入設備的數(shù)據(jù)是否準備好 輸出設備是否空閑 輸出設備正在輸出信息 則用BUSY信號通知CPU暫停送數(shù) 因此 狀態(tài)信號是CPU與I O外設正確進行數(shù)據(jù)交換的重要條件 6 第6章數(shù)據(jù)傳送方式 3 控制信息控制信息是設置I O外設 包括I O接口 的工作模式 命令字的有關信息 如 啟動 停止 信息 2 I O接口的作用 1 轉換信息格式 2 提供聯(lián)絡信號 協(xié)調數(shù)據(jù)傳送的狀態(tài)信息 3 協(xié)調定時差異 4 進行譯碼選址 5 實現(xiàn)電平轉換 6 具備時序控制 7 可編程 7 第6章數(shù)據(jù)傳送方式 3 微處理器與I O接口電路的連接微處理器通過數(shù)據(jù)總線 地址總線和控制總線與存儲器及輸入輸出接口電路連接 為了保證系統(tǒng)工作的可靠性 在構成系統(tǒng)時必須考慮以下幾個方面的問題 1 負載能力的匹配 器件輸出端所接的負載不能超過器件的負載能力 2 速度配合問題 存儲器或輸入輸出端口的讀 寫時間必需小于CPU在讀 寫周期中提供的讀 寫時間 在CPU提供的時間不足時 可以通過選取適當速度的芯片或改變CPU的時鐘頻率等方法滿足上述條件 也可通過READY引腳 請求CPU插入TW周期以實現(xiàn)速度配合 3 邏輯連接的正確性 正確連接地址線 數(shù)據(jù)線及控制總線 保證CPU在執(zhí)行對某一存儲單元或輸入輸出端口的讀寫指令時 該單元或端口確實被選中并進行相應的操作 8 6 1 2CPU與外設之間的數(shù)據(jù)傳送方式 從CPU與外設通信的特點知 在數(shù)據(jù)傳送之前一般要進行狀態(tài)的 聯(lián)絡 計算機的外部設備種類繁多 有機械式 電動式 電子式或其他形式 其輸入的信息也不盡相同 可以是數(shù)字量 模擬量 也可以是開關量或是串行 并行信號 為保證CPU和外設之間能正確 有效f進行信息傳輸 針對不同的外設 不同場合就需要采用不同的數(shù)據(jù)傳送方式 CPU與外設之間的數(shù)據(jù)傳送方式有3種 程序控制傳送方式 中斷傳送方式 DMA傳送方式 9 6 1 2程序控制傳送方式 1 程序控制的輸入輸出程序控制方式是指CPU與外設之間的數(shù)據(jù)傳送是在程序控制下完成 它又可成無條件傳送方式和查詢方式兩類 1 無條件傳送方式最簡單的輸入 輸出控制方式 該方式認為外設始終是準備好的 能隨時提供數(shù)據(jù) 如按鈕開關 發(fā)光二極管等 一般適用于經(jīng)過較長時間間隔數(shù)據(jù)才有顯著變化的情況 這時無需檢查端口的狀態(tài) 就可以立即采集數(shù)據(jù) 這時的端口不需要加鎖存器而直接用三態(tài)緩沖器與系統(tǒng)總線相連 采用無條件傳送方式接口電路如圖6 2所示 10 圖6一2無條件傳送方式接口電路 11 6 1 2程序控制傳送方式 2 查詢傳送方式當快速的CPU與慢速的I O設備之間交換數(shù)據(jù)時 這就很難保證當CPU輸入時 外設已準備好數(shù)據(jù) 輸出時 外設的數(shù)據(jù)鎖存器是空的 因此 在CPU傳送數(shù)據(jù)前 應去查一下外設的狀態(tài) 若設備準備好 就進行數(shù)據(jù)傳送 否則 CPU就等待 查詢式輸入圖6 3所示為查詢式輸入的接口電路 該電路有兩個端口寄存器 即狀態(tài)口寄存器和數(shù)據(jù)口寄存器 當輸入設備準備好數(shù)據(jù)之后 發(fā)出選通信號 查詢式輸出查詢式輸出接口電路 它的狀態(tài)口和數(shù)據(jù)口合用一個地址 當前輸出設備空閑時 狀態(tài)標志觸發(fā)器清0 CPU在輸出數(shù)據(jù)之前 先讀取狀態(tài)信息 假設忙閑標志接至數(shù)據(jù)線D0位 當D0 0時 表示輸出設備空閑 CPU再對數(shù)據(jù)口執(zhí)行輸出指令 12 圖6一3查詢式輸入的接口電路 13 6 1 2中斷傳送方式 2 中斷傳送方式查詢方式中 CPU需要大量時間去執(zhí)行狀態(tài)查詢程序 使CPU的效率大大降低 另一個缺點是難于滿足實時控制的需要 因為在查詢方式下CPU處于主動地位 外設處于消極被查詢的被動地位 而在實時系統(tǒng)中 外設要求CPU為它的服務是隨機的 這就要求外設有主動申請CPU服務的權利 此時 可以采用中斷傳送方式 14 6 1 2中斷傳送方式 CPU啟動外部設備后 繼續(xù)執(zhí)行主程序 當外部設備準備好傳送數(shù)據(jù)時向CPU發(fā)出中斷請求 CPU響應這個請求后就轉向中斷服務程序去進行相應的輸入輸出操作 當對外設的請求處理完畢后 再返回到被中斷的程序繼續(xù)執(zhí)行 采用這種中斷方式時 CPU不再等待或查詢 而是由外部設備決定什么時候為它服務 這種方法允許CPU與外設 甚至多個外設 同時工作 或者說并行工作 提高了CPU效率 而且能在需要的時候隨時為外設服務 實時性好 一般CPU內部均設有相應的硬件線路使其能在執(zhí)行指令的同時監(jiān)測通過中斷引腳送入的中斷請求信號并響應中斷請求 15 6 1 2中斷傳送方式 中斷方式優(yōu)點 可以較為實時地外部中斷源的請求 缺點 由于它需要額外開銷時間 用于中斷響應 斷點保護與恢復等 以及中斷處理的服務時間 使得中斷響應頻率受到了限制 當高速外設與計算機系統(tǒng)進行信息交換時 若采用中斷方式 將會出現(xiàn)CPU頻繁響應中斷而不能有效地完成主要工作或者根本來不及響應中斷而造成數(shù)據(jù)丟失現(xiàn)象 16 6 1 2DMA傳送方式 3 DMA工作方式直接存儲器存取DMA DirectMemoryAccess 技術可確保外設與計算機系統(tǒng)進行高速信息交換 即DMA方式 在DMA方式下 CPU不再直接參加外設與內存間的數(shù)據(jù)傳輸 而是在系統(tǒng)需要進行DMA傳輸時 將CPU對地址總線 數(shù)據(jù)總線 及控制總線的管理權交給DMA控制器進行控制 當完成一次DMA數(shù)據(jù)傳輸后 再將這個控制權還給CPU 以上工作要由DMA控制器 DMAC 用硬件完成對傳送過程的控制 即控制和修改內存地址 控制DMA的開始與結束等 因此 在DMA方式下 要由DMAC來控制地址總線 數(shù)據(jù)總線和相應的控制信號線 而CPU必須讓出這些總線的控制權 在這種工作方式下 數(shù)據(jù)傳送速率可以達到很高 一般可在每秒0 5M字節(jié)以上 17 6 1 2I O處理方式 4 I O處理機方式雖然 DMA方式已能較好的實現(xiàn)高速度 大批量的數(shù)據(jù)傳送 但是 仍然需要CPU對DMAC進行初始化 啟動DMA操作 以及完成每次DMA操作之后檢查傳送的狀態(tài)等 對于I O數(shù)據(jù)的處理 如對數(shù)據(jù)的變換 拆 裝 檢查等 更是離不開CPU的支持 為了能讓CPU進一步擺脫I O數(shù)據(jù)傳送的負擔 提出了I O處理機方式 這種方式下 采用專門的I O協(xié)處理器 它不僅能控制數(shù)據(jù)的傳送 而且 還可以執(zhí)行算術邏輯運算 轉移 搜索和轉換等 當CPU需要進行I O操作時 它只要在存儲器中建立一個信息塊 將所需要的操作和有關的參數(shù)按照規(guī)定列入 然后通知I O協(xié)處理器來讀取 I O協(xié)處理器讀得控制信息后 能自動完成全部的I O操作 在這種系統(tǒng)中 所有的I O操作都是以塊為單位來進行的 18 6 1 3I O端口的編址方式 I O端口 CPU和I O設備進行數(shù)據(jù)傳送 在接口中就必須有一些寄存器或特定的硬件電路供CPU直接存取訪問 稱之為I O端口 如圖6 5所示 I O端口的地址 為了區(qū)分不同的I O端口 也必須像存儲器一樣給它們編號 這就是I O端口的地址 給內存和I O端口分別安排不同的地址 就可以區(qū)分開數(shù)據(jù)傳送的對象是內存還是外設端口 根據(jù)編排地址的方式不同分為 統(tǒng)一編址和獨立編址 CPU通過這些地址讀取狀態(tài)和傳送數(shù)據(jù) 即端口向接口電路中的寄存器發(fā)送命令 因此一個接口可以有多個端口 如命令端口 狀態(tài)端口和數(shù)據(jù)端口 分別對應于控制寄存器 狀態(tài)寄存器和數(shù)據(jù)輸入緩沖器等 19 圖6一5外設通過接口與系統(tǒng)的連接 20 6 1 3I O端口的編址方式 1 統(tǒng)一編址方式將所有I O接口電路中的寄存器或三態(tài)緩沖器當作存儲單元一樣對待 每一個接口寄存器都給予相應的16位地址編碼 這樣 對外設進行輸出輸入操作就如對某一存儲單元進行讀 寫操作一樣 只是各自具有不同的地址而已 優(yōu)點 不需要專門的I O指令 系統(tǒng)編程靈活 缺點 I O端口占用了一部分內存空間 使內存空間減少 訪問I O端口同訪問內存一樣 執(zhí)行時間增加 21 6 1 3I O端口的編址方式 2 獨立編址方式采用獨立編址方式的微型計算機系統(tǒng)中 CPU的指令系統(tǒng)包含有IN指令和OUT指令 在執(zhí)行這些指令時 控制器設有IO M控制信號分別控制訪問內存和訪問外設操作 優(yōu)點 I O端口的地址碼一般比同系統(tǒng)中存儲單元的地址碼短 譯碼電路較簡單 存儲器同I O端口的操作指令不同 程序比較清晰 存儲器和I O端口的控制電路結構相互獨立 可以分別設計 缺點 需要專門的I O指令 這些I O指令一般沒有存儲器訪問指令豐富 所以程序設計的靈活性較差 22 6 2 1中斷系統(tǒng)基本概念 6 2 1中斷系統(tǒng)基本概念中斷是指CPU在正常執(zhí)行程序時 由于內部或外部事件或程序的預先安排引起CPU暫時終止執(zhí)行現(xiàn)行程序 轉而去執(zhí)行請求CPU為其服務的服務程序 待該服務程序執(zhí)行完畢 又能自動返回到被中斷的程序繼續(xù)執(zhí)行 這種中斷就是人們通常所說的外部中斷 除了傳統(tǒng)的外圍部件引起的硬件中斷外 又出現(xiàn)了內部的軟件中斷概念 外部中斷和內部軟件中斷就構成了一個完整的中斷系統(tǒng) 23 6 2 1中斷系統(tǒng)基本概念 1 中斷源微型計算機中能引起中斷的外部設備或內部原因稱為中斷源 不同的計算機的設置有所不同 通常微機系統(tǒng)的中斷源一般有以下幾種 1 一般的輸入 輸出設備 如鍵盤 打印機等 2 實時時鐘 3 故障源 4 軟件中斷 24 6 2 1中斷系統(tǒng)基本概念 2 8086 8088的中斷類型8086 8088CPU有一個簡單而靈活的中斷系統(tǒng) 采用矢量型的中斷結構 共有256個中斷矢量號 又稱中斷類型號 中斷可以由外部設備啟動 也可以由軟件中斷指令啟動 在某些情況下 也可由CPU自身啟動 8086CPU中斷分類如圖6 6所示 1 硬件中斷硬件中斷是由CPU的外部中斷請求信號觸發(fā)的一種中斷 分為不可屏蔽中斷NMI和可屏蔽中斷INTR 2 軟件中斷軟件中斷也稱內部中斷 是由CPU檢測到異常情況或執(zhí)行軟件中斷指令所引起的一種中斷 通常有除法出錯中斷 單步中斷 INTO溢出中斷 INTn中斷 斷點中斷等 25 6 2 1中斷系統(tǒng)基本概念 3 中斷優(yōu)先權實際的中斷系統(tǒng)常常有多個中斷源 而中斷申請引腳往往只有一條中斷請求線 于是在多個中斷源同時請求時 CPU必須確定為哪一個中斷源服務 要能辨別優(yōu)先權最高的中斷源并響應之 當CPU在處理中斷時 也要能響應更高級別的中斷申請 而屏蔽掉同級或較低級的中斷申請 通常有兩種方法解決中斷優(yōu)先權的識別問題 1 用軟件查詢方法確定中斷優(yōu)先權采用軟件查詢中斷方式時 中斷優(yōu)先權由查詢順序決定 先查詢的中斷源具有最高的優(yōu)先權 軟件查詢方法的接口電路如圖6 7所示 26 圖6一7軟件查詢辦法的接口電路 27 6 2 1中斷系統(tǒng)基本概念 優(yōu)點 電路簡單 軟件查詢的順序就是中斷優(yōu)先權的順序 不需要專門的優(yōu)先權排隊電路 可以直接修改軟件查詢順序來修改中斷優(yōu)先權 不必更改硬件 缺點 當中斷源個數(shù)較多時 由逐位檢測查詢到轉入相應的中斷服務程序所耗費的時間較長 中斷響應速度慢 服務效率低 2 硬件優(yōu)先權排隊電路又稱菊花環(huán)式優(yōu)先權排隊電路 它是利用外設連接在排隊電路的物理位置來決定其中斷優(yōu)先權的 排在最前面的優(yōu)先權最高 排在最后面的優(yōu)先權最低 電路如圖6 9所示 28 6 2 1中斷系統(tǒng)基本概念 4 中斷管理8086CPU可管理256種中斷 每種中斷都指定一個中斷矢量號 每一種中斷矢量號都與一個中斷服務程序相對應 中斷服務程序的入口地址存放在內存儲器的中斷矢量表內 中斷矢量表是中斷矢量號與它相應的中斷服務程序的轉換表 8086以中斷矢量為索引號 從中斷矢量表中取得中斷服務程序的入口地址 在8086 8088微機系統(tǒng)的內存中 把0段的0000 03FFH區(qū)域設置為一個中斷向量表 每一個中斷向量占4個存儲單元 其中 前兩個單元存放中斷子程序入口地址的偏移量 IP 低位在前 高位在后 后兩個單元存放中斷子程序入口地址的段地址 CS 也是低位在前 高位在后 在中斷向量表中 這些中斷是按中斷類型的序號 從0單元開始 順序排列 8086 8088的中斷向量表見圖6 10 中斷矢量表分為三部分 29 圖6一1080868088的中斷向量表 30 6 2 1中斷系統(tǒng)基本概念 1 專用中斷 類型0 類型4 共有5種類型 專用中斷的中斷服務程序的入口地址由系統(tǒng)負責裝入 用戶不能隨意修改 2 備用中斷 類型5 類型3FH 這是Intel公司為軟 硬件開發(fā)保留的中斷類型 一般不允許用戶改作其他用途 3 用戶中斷 類型40H 類型FFH 為用戶可用中斷 其中斷服務程序的入口地址由用戶程序負責裝入 31 6 2 1中斷系統(tǒng)基本概念 5 中斷處理過程微機系統(tǒng)的中斷處理過程如圖6 11所示 大致可分為中斷請求 中斷響應 中斷處理和中斷返回四個過程 這些步驟有的是通過硬件電路完成的 有的是由程序員編寫程序來實現(xiàn)的 32 圖6一11中斷處理過程 33 6 2 1中斷系統(tǒng)基本概念 6 中斷處理子程序的結構模式所有的中斷處理子程序都有如下的結構模式 中斷處理子程序的開始必須通過一系列推入堆棧指令來進一步保護中斷時的現(xiàn)場 即保護CPU各寄存器的值 在一般情況下 應該用指令設置中斷允許標志IF來開放中斷 以允許級別較高的中斷請求進入 中斷處理的具體內容是中斷處理子程序的主要部分 中斷處理子程序的尾部則是一系列彈出堆棧指令 使得各寄存器恢復進入中斷處理時的值 最后是中斷返回指令 中斷返回指令的執(zhí)行會使堆棧中保存的斷點值和標志值分別裝入IP CS和標志寄存器 34 6 2 2可編程中斷控制芯片8259A 6 2 2可編程中斷控制芯片8259A1 8259A芯片內部結構8259A可編程中斷控制器28條引腳 雙列直插式封裝 各引腳的信號功能見圖6 12 8259A芯片內部結構見圖6 13 35 6 2 2可編程中斷控制芯片8259A 8259A的引腳1 D0 D7 雙向三態(tài)數(shù)據(jù)線 2 IR0 IR7 外部中斷請求輸入線 3 RD 和WR 讀寫命令信號線 4 CS 片選信號5 A0 用以選擇8259A內部的不同寄存器 通常直接連至地址總線的A0 6 CAS2 CAS0 級聯(lián)信號線 7 INT 與CPU的INTR引腳相連 用來向CPU發(fā)出中斷請求 8 INTA 它與CPU的INTA 引腳相連 用來接收來自CPU的中斷應答信號 36 6 2 2可編程中斷控制芯片8259A 9 SP EN 雙功能引線 8259A工作在緩沖模式時 當數(shù)據(jù)從CPU送往8259A時 SP EN 1 當數(shù)據(jù)從8259A送往CPU時 SP EN 0 工作在非緩沖模式時 該信號與CAS2 CAS0配合使用 用于實現(xiàn)多片8259A的級聯(lián) 8259A為主片時 SP EN接高電平 為從片時 SP EN接地 GND 地VCC 電源 37 6 2 2可編程中斷控制芯片8259A 2 8259A的功能管理和控制80X86的外部中斷請求 實現(xiàn)中斷判優(yōu) 具有8級優(yōu)選權控制 通過級聯(lián)可擴展至64級優(yōu)先權控制 提供中斷向量 屏蔽中斷輸入 38 6 2 2可編程中斷控制芯片8259A 3 8259A的內部結構 39 6 2 2可編程中斷控制芯片8259A 4 8259A的中斷響應過程8259A應用于8086CPU系統(tǒng)中 其中斷響應過程如下 當中斷請求線 IR0 IR7 上有1條或若干條為高電平時 則使中斷請求寄存器IRR的相應位置位 當IRR的某一位被置 1 就會與IMR中相應的屏蔽位進行比較 若該屏蔽位為1 則封鎖該中斷請求 若該屏蔽位為0 則中斷請求被發(fā)往優(yōu)先權電路 優(yōu)先權電路接收到中斷請求后 分析其優(yōu)先權 把當前優(yōu)先權最高的中斷請求信號由INT引腳輸出 送到CPU的INTR端 40 6 2 2可編程中斷控制芯片8259A 若CPU處于開中斷狀態(tài) 則在當前指令執(zhí)行完后 發(fā)出INTA中斷相應信號 8259A接收到第一個INTA信號 把允許中斷的最高優(yōu)先級請求位放入ISR 并清除IRR中相應位 CPU發(fā)出第二個INTA 在該脈沖期間 8259A發(fā)出中斷類型號 若8259A處于自動中斷結束方式 則第二個INTA結束時 相應的ISR位被清 0 在其他方式中 ISR相應位要由中斷服務結束時發(fā)出的EOI命令來復位 CPU收到中斷類型號 將它乘4得到中斷矢量表的地址然后轉至中斷服務程序 41 6 2 2可編程中斷控制芯片8259A 5 8259A的中斷管理方式8259A具有非常靈活的中斷管理方式 可滿足使用者的各種不同要求 而中斷優(yōu)先權是管理的核心問題 8259A對中斷的管理可分為對優(yōu)先權的管理和對中斷結束的管理 1 中斷優(yōu)先權管理8259A對中斷優(yōu)先權的管理 可概括為完全嵌套方式 自動循環(huán)方式和中斷屏蔽方式 1 完全嵌套方式8259A被初始化后自動進入基本工作方式 在此方式下 由各個IRi端引入的中斷請求具有固定的中斷級別 IR0具有最高優(yōu)先級 IR7具有最低優(yōu)先級 其他級別以此類推 42 6 2 2可編程中斷控制芯片8259A 2 自動循環(huán)方式基本思想 每當任何一級中斷被處理完 它的優(yōu)先級別就被改變?yōu)樽畹图?而將最高級賦給原來比它低一級的中斷請求 3 中斷屏蔽方式普通屏蔽方式 將中斷屏蔽寄存器IMR中的某一位或某幾位置1 即可將相應的中斷級的中斷請求屏蔽掉 特殊屏蔽方式 當CPU正在處理某級中斷時 要求僅對本級中斷進行屏蔽 而允許其他優(yōu)先級比它高或低的中斷進入系統(tǒng) 43 6 2 2可編程中斷控制芯片8259A 2 中斷結束的管理當8259A響應某一級中斷而為其服務時 中斷服務寄存器ISR的相應位置 1 當有更高級的中斷請求進入時 ISR的相應位又要置 1 因此 中斷服務寄存器ISR中可有多位同時置 1 在中斷服務結束時 ISR的相應位應清 0 以便再次接收同級別的中斷 中斷結束的管理 就是用不同的方式使ISR的相應位清 0 并確定隨后的優(yōu)先權排隊順序 44 6 2 2可編程中斷控制芯片8259A 8259A中斷結束的管理可分為以下2種情況 1完全嵌套方式 普通EOI方式 當任何一級中斷服務程序結束時 只給8259A送一個EOI結束指令 8259A收到這個EOI命令后 自動將ISR寄存器中級別最高的置1清0 缺點 僅用于當前結束的中斷級別高于其他未處理完的中斷時才可用 否則會造成嚴重后果 特殊EOI方式 不僅中斷程序結束時給8259A發(fā)出EOI命令 還將當前結束的中斷級別也傳送給8259A 在此情況下 8259A將ISR寄存器中指定級別的相應位清0 此方式適應于任何情況下 45 6 2 2可編程中斷控制芯片8259A 自動EOI方式 CPU在發(fā)出第二個INTA 結束響應后 自動將ISR寄存器中相應位清0 被稱作自動EOI方式 2 自動循環(huán)方式 普通EOI循環(huán)方式 當一級中斷處理完后 CPU給8259A回送普通結束命令 8259A接收到此命令后將ISR中優(yōu)先級最高的置1位清0 并賦給它最低優(yōu)先級 后續(xù)以此類推 自動EOI循環(huán)方式由第二個中斷響應信號INTA 的后沿自動將ISR寄存器中相應位清0 并立即改變各級中斷的優(yōu)先級別 改變方法與普通EOI循環(huán)方式相同 特殊EOI循環(huán)方式此方式具有更大的靈活性 它可根據(jù)用戶的要求將最低優(yōu)先級賦給指定的中斷源 46 6 2 2可編程中斷控制芯片8259A 6 8259A的編程8259A編程時通過設計程序對它的命令狀態(tài)字進行設置來實現(xiàn)的 可分為初始化編程和工作方式編程 初始化編程 要通過預置命令字 ICWi 對8259A進行初始化 工作方式編程操 可在8259A工作過程中通過操作命令字 OCWi 來定義8259A的工作方式 而且在8259A的操作過程中允許重置操作命令字 以動態(tài)地改變8259A的操作與控制方式 每片8259A包含兩個內部端口地址 一個偶地址端口 A0 0 一個奇地址端口 A0 1 其他高位地址碼由用戶定義 用來作為8259A的片選信號 CS 47 6 2 2可編程中斷控制芯片8259A 1 預置命令字8259A的預置命令字共四個 ICW1 ICW4 不是任何情況下都需要設置四個預置命令字 可根據(jù)8259A的使用情況來選取 ICW1和ICW2是必須的 ICW3是級聯(lián)使用時才需要設置 ICW4是只在8086 8088 8259A配置系統(tǒng)中需要設置 1 芯片控制初始化命令字ICW1 其格式如下 48 6 2 2可編程中斷控制芯片8259A D7 D5 在8086 8088中未定義 可以為1 也可為0D4 必須為1 用于指出這是初始化命令字ICW1D3 LTIM位 規(guī)定CALL地址的間隔 D2 1 則間隔為4 這適用于建立一個轉移指令表 D2 0 則間隔為8 D1 SNGL位 規(guī)定系統(tǒng)中8259A是單片還是級聯(lián) 為1時單獨 為0時級聯(lián) D0 確定是否設置ICW4 該位為0時不設置ICW4 6 2 2可編程中斷控制芯片8259A 2 中斷類型號初始化命令字ICW2 其格式如下 ICW2的高五位即為中斷號的高五位 低3位的值取決于中斷輸入引腳的序號 即IR0 IR7的序號 上一頁 返回 下一頁 3 主 從片初始化命令字ICW3當ICW1中的SNGL位為0時工作與級聯(lián)方式 才需要寫ICW3設置8259A的狀態(tài) 只在多片級聯(lián)時才使用它 對于主片 ICW3格式為 如果本片是主片 則D7 D0對應于IR7 IR0 主片連到哪個從片上 哪位置1 6 2 2可編程中斷控制芯片8259A 6 2 2可編程中斷控制芯片8259A 從片時 D7 D0對應于IR7 IR0引腳上的連接情況 當某一引腳上接有從片 則對應位為1 否則為0 對于從片 ICW3格式為 上一頁 返回 下一頁 6 2 2可編程中斷控制芯片8259A 2 操作命令字的編程8259A經(jīng)預置完命令字后已進入工作狀態(tài) 可接收來自IRi端的中斷請求 在8259A工作期間 可通過操作控制字OCW來使它按不同的方式操作 操作控制字共有3個OCW1 OCW3 可獨立使用 1 中斷屏蔽操作命令字OCW1 2 控制中斷結束和優(yōu)先權循環(huán)的操作命令字OCW2 上一頁 返回 3 8259A的應用實例 54 6 3 1并行通信與并行接口 6 3 1并行通信與并行接口并行通信是把一個字符的各數(shù)位用幾條線同時進行傳輸 傳輸速度快 信息率高 但它比串行通信所用的電纜多 因此 并行通信常用在傳輸距離較短 幾米至幾十米 數(shù)據(jù)傳輸率較高的場合 實現(xiàn)并行通信的接口就是并行接口 可設計為只作為輸出接口 如一個并行接口連接一臺打印機 還可設計為只作為輸入接口 如一個并行接口連接卡片讀入機 可以設計成既作為輸入又作為輸出的接口 它可以用兩種方法實現(xiàn) 一種是利用同一個接口中的兩個通路 一個作輸入通路 一個作輸出通路 另一種是用一個雙向通路 既作為輸入又作為輸出 前一種方法是用在主機需要同時輸入和輸出的情況 如此接口既接紙帶讀入機 又接紙帶穿孔機 后一種方法是用在輸入 輸出動作并不同時進行的主機與外設之間 如連接兩臺磁盤驅動器 55 6 3 1并行通信與并行接口 典型的并行接口和外設連接如圖6 16所示 圖中的并行接口用一個通道和輸入設備相連 用另一個通道和輸出設備相連 每個通道中除數(shù)據(jù)線外均配有一定的控制線和狀態(tài)線 從圖6 16中看到 并行接口中應該有一個控制寄存器用來接收CPU對它的控制命令 有一個狀態(tài)寄存器提供各種狀態(tài)位供CPU查詢 為了實現(xiàn)輸入和輸出 并行接口中還必定有相應的輸入緩沖寄存器和輸出緩沖寄存器 56 6 3 1并行通信與并行接口 1 并行接口的輸入過程外設首先將數(shù)據(jù)送給接口 并使狀態(tài)線 數(shù)據(jù)輸入準備好 成為高電平 接口把數(shù)據(jù)接收到數(shù)據(jù)輸入緩沖寄存器的同時 使 數(shù)據(jù)輸入回答 線變?yōu)楦唠娖?作為對外設的響應 外設接到此信號 便撤除數(shù)據(jù)和 數(shù)據(jù)輸入準備好 信號 數(shù)據(jù)到達接口中后 接口會在狀態(tài)寄存器中設置 輸入準備好 狀態(tài)位 以便CPU對其進行查詢 接口也可以在此時向CPU發(fā)一個

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論