第4章 輸入輸出與中斷
I/O接口——把外圍設備同微型計算機連接起來實現(xiàn)數(shù)據(jù)傳送的控制電路稱為“外設接口電路”,即I/O接口
I/O端口——I/O接口中可以由CPU進行讀或寫的寄存器被稱為“端口”
外設接口與CPU的信息傳送:
1. 外設接口通過微機總線(片總線、內總線、外總線)與CPU連接
2. CPU同外設接****換的三種信息:
(1) 數(shù)據(jù)信息,包括數(shù)字量、模擬量和開關量
(2) 狀態(tài)信息,表示外設當前所處的工作狀態(tài)
(3) 控制信息用于控制外設接口的工作
3. 數(shù)據(jù)信息、狀態(tài)信息、控制信息都是通過數(shù)據(jù)總線來傳送的
I/O端口的編址方式及其特點:
1. 獨立編址(專用的I/O端口編址)——存儲器和I/O端口在兩個獨立的地址空間中
(1) 優(yōu)點:I/O端口的地址碼較短,譯碼電路簡單,存儲器同I/O端口的操作指令不同,程序比較清晰;存儲器和I/O端口的控制結構相互獨立,可以分別設計
(2) 缺點:需要有專用的I/O指令,程序設計的靈活性較差
2. 統(tǒng)一編址(存儲器映像編址)——存儲器和I/O端口共用統(tǒng)一的地址空間,當一個地址空間分配給I/O端口以后,存儲器就不能再占有這一部分的地址空間
(1) 優(yōu)點:不需要專用的I/O指令,任何對存儲器數(shù)據(jù)進行操作的指令都可用于I/O端口的數(shù)據(jù)操作,程序設計比較靈活;由于I/O端口的地址空間是內存空間的一部分,這樣,I/O端口的地址空間可大可小,從而使外設的數(shù)量幾乎不受限制
(2) 缺點:I/O端口占用了內存空間的一部分,影響了系統(tǒng)的內存容量;訪問I/O端口也要同訪問內存一樣,由于內存地址較長,導致執(zhí)行時間增加
微機系統(tǒng)中,數(shù)據(jù)傳送的控制方式:
1. 程序控制方式,以CPU為中心,數(shù)據(jù)傳送的控制來自CPU,通過預先編制好的程序實現(xiàn)數(shù)據(jù)的傳送
2. DMA方式,直接存儲器訪問,不需要CPU干預,也不需要軟件介入的高速傳送方式
程序控制傳送方式分為三種:
1. 無條件傳送方式,又稱“同步傳送方式”,用于外設的定時是固定的而且是已知的場合,外設必須在微處理器限定的指令時間內準備就緒,并完成數(shù)據(jù)的接收或發(fā)送
2. 查詢傳送方式,當CPU同外設工作不同步時,為保證數(shù)據(jù)傳送的正確而提出的,CPU必須先對外設進行狀態(tài)檢測,若外設已“準備好”,才進行數(shù)據(jù)傳送
3. 中斷傳送方式,解決了“無條件傳送方式”和“查詢傳送方式”只能串行工作的缺點,為了使CPU和外設之間可以并行工作,提出中斷傳送方式,采用中斷方式傳送數(shù)據(jù)時,CPU從啟動外設到外設就緒這段時間,仍在執(zhí)行主程序,當“中斷服務程序”執(zhí)行完畢后,則重新返回主程序
DMA操作的基本方法:
1. 周期挪用,DMA乘存儲器空閑時訪問存儲器,周期挪用不減慢CPU的操作
2. 周期擴展,CPU與DMA交替訪問存儲器,這種方法會使CPU處理速度減慢,一次只能傳送一個字節(jié)3. CPU停機方式,CPU等待DMA的操作,這是最常用的DMA方式,由于CPU處于空閑狀態(tài),所以會降低CPU的利用率
DMAC及其傳送方式:
1. 在DMA傳送方式中,對數(shù)據(jù)傳送過程進行控制的硬件稱為DMA控制器,即:DMAC
2. DMAC的三種傳送方式:
(1) 單字節(jié)傳送方式
(2) 成組傳送方式
(3) 請求傳送方式
DMAC的基本功能:
1. 能接收外設的DMA請求信號,并能向外設發(fā)出DMA響應信號
2. 能向CPU發(fā)出總線請求信號,當CPU發(fā)出總線響應信號后,能接管對總線的控制權,進入DMA方式
3. 能發(fā)出地址信息,對存儲器尋址并修改地址指針
4. 能發(fā)出讀、寫等控制信號,包括存儲器訪問信號和I/O訪問信號
5. 能決定傳送的字節(jié)數(shù),并能判斷DMA傳送是否結束
6. 能發(fā)出DMA結束信號,釋放總線,使CPU恢復正常工作