第五章數(shù)字量輸入輸出1of7_第1頁
第五章數(shù)字量輸入輸出1of7_第2頁
第五章數(shù)字量輸入輸出1of7_第3頁
第五章數(shù)字量輸入輸出1of7_第4頁
第五章數(shù)字量輸入輸出1of7_第5頁
已閱讀5頁,還剩36頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 1主要內(nèi)容:主要內(nèi)容:5.15.1概述概述 1. I/O1. I/O信號的形式信號的形式 2. I/O2. I/O接口的功能接口的功能 3. I/O3. I/O端口的編址端口的編址 4. I/O4. I/O的控制方式的控制方式5.25.2系統(tǒng)總線及簡單接口系統(tǒng)總線及簡單接口 1. 1. 總線標準總線標準 2. 2. 總線周期總線周期 3. 3. 簡單的簡單的I/OI/O接口接口 4. 4. 總線信號與接口的連接總線信號與接口的連接 2主要內(nèi)容(續(xù)):主要內(nèi)容(續(xù)): 幾種重要接口及其它們的可編程接口控制幾種重要接口及其它們的可編程接口控制器件器件5.3 5.3 中斷控制與中斷控制與 Inte

2、l 8259AIntel 8259A5.4 5.4 計數(shù)定時接口與計數(shù)定時接口與 Intel 8253Intel 82535.5 5.5 并行輸入輸出接口與并行輸入輸出接口與 Ins 8255Ins 82555.6 5.6 串行輸入輸出接口與串行輸入輸出接口與 Ins 8250Ins 82505.7 5.7 直接存儲器存取控制與直接存儲器存取控制與 Intel 8237Intel 8237 35.15.1概述概述一、一、I/OI/O信號信號1.1.開關信號開關信號2.2.數(shù)字信號數(shù)字信號3.3.脈沖信號脈沖信號4.4.模擬信號模擬信號二、二、I/OI/O接口接口主機主機接口接口外設外設輸出輸出

3、輸入輸入CPUCPU實現(xiàn)實現(xiàn) 接口實現(xiàn)接口實現(xiàn) 只有兩狀態(tài)只有兩狀態(tài)0 0、1 1所有信號在數(shù)字計算機內(nèi)部都以二進制形式存儲和處理多于兩狀態(tài),多位二進制多于兩狀態(tài),多位二進制0/10/1的跳變,用于選通或計數(shù)的跳變,用于選通或計數(shù)數(shù)值和時間上連續(xù)變化數(shù)值和時間上連續(xù)變化 4中央中央處理器處理器8088協(xié)處協(xié)處理器理器8087總線總線驅動器驅動器總線總線控制器控制器8288RAM存儲存儲器器ROM存儲存儲器器8 級級中斷中斷電路電路4通道通道DMA8 通道通道定時定時/計數(shù)器計數(shù)器喇叭喇叭電路電路鍵盤鍵盤接口接口 8個個擴擴展展插插座座CBABDB時鐘時鐘信號信號發(fā)生器發(fā)生器8284CPU外圍外

4、圍I/O接口接口存儲器接口存儲器接口外圍外圍I/O接口接口IOR IO讀讀IOW IO寫寫MEMR 存儲器讀存儲器讀MEMW 存儲器寫存儲器寫 AEN=1 DMA 占用占用 AB=0 CPU 使用使用AB DACK3 DACK0 5P230 圖圖 5.1 典型的典型的I/O接口接口數(shù)據(jù)鎖存及緩沖數(shù)據(jù)鎖存及緩沖地址譯碼地址譯碼控制邏輯控制邏輯不同端口應占用不同地址。數(shù)據(jù)、狀態(tài)和控制這三類端口I/O的內(nèi)容僅在外設表現(xiàn)不同作用,在CPU執(zhí)行I/O指令時都是通過數(shù)據(jù)線傳送。每一類端口可能不只一個。 6I/OI/O端口:是端口:是I/OI/O接口中的存儲器,接口中的存儲器, CPUCPU用用I/OI/O

5、指令、按指令、按I/OI/O地址進行讀地址進行讀/ /寫。寫。例: IN AL , 40H ; 從40H端口輸入 MOV DX , 200H OUT DX , AX ; 向200H、201H端口輸 出雙字節(jié)CPU使用使用16位位I/O地址只能用地址只能用DX間址。間址。系統(tǒng)系統(tǒng)(IBM PC)限制:只使用限制:只使用10位地址位地址 表示表示I/O空間,空間,用戶開發(fā)的用戶開發(fā)的I/O端口地址只能用端口地址只能用200H以上。以上。 71.1.存儲器映象存儲器映象I/OI/O端口占用存儲器的地址,端口占用存儲器的地址, CPUCPU用訪問存儲器的指令進行用訪問存儲器的指令進行I/OI/O, 控

6、制總線上產(chǎn)生訪問存儲器的信號。控制總線上產(chǎn)生訪問存儲器的信號。I/O端口端口存儲器存儲器片片選選譯譯碼碼內(nèi)存內(nèi)存1內(nèi)存內(nèi)存2ABRDWR片選1片選2片選n 8I/O片片選選譯譯碼碼I/O端口端口 1ABIORIOWI/O端口端口 2I/O端口端口 n片選1片選2片選n 91.1.直接直接接口最簡單,但使用有限制接口最簡單,但使用有限制(即、同步即、同步)。 10 11 mov DX, STATUS_PORT ; 為測試Waiting: in AL, DX test AL, READY_BIT ; 測試“準備好”位 jz Waiting ; 未準備好,查詢 mov DX, DATA_PORT ;

7、 為輸出數(shù)據(jù) mov AL, DATA out DX, AL mov DX, STATUS_PORT ; 為復位 in AL, DX and AL, NOT_READY_BIT ; 清除“準備好”位 out DX, AL 12CPUCPU反復反復查詢查詢接口接口狀態(tài)狀態(tài),認為條件成熟才進行,認為條件成熟才進行傳送傳送特點特點: :增加狀態(tài)端口增加狀態(tài)端口, ,接口較簡單接口較簡單,CPU,CPU效率低效率低輪詢輪詢:多個外設可以輪流查詢適當提高效率。:多個外設可以輪流查詢適當提高效率。查詢方式由程序啟動,又由程序完成,是典查詢方式由程序啟動,又由程序完成,是典型的型的程序控制程序控制I/OI/

8、O方式方式。 13CPUCPU和外設并行工作,接口主動提出請求,和外設并行工作,接口主動提出請求,CPUCPU響應后由響應后由中斷服務程序中斷服務程序完成完成I/OI/O傳送。傳送。中斷方式的接口及過程中斷方式的接口及過程CPUI/O接接口口INT申請申請DBABCBINTA應答應答 IRQ請求請求中斷中斷管理管理電路電路發(fā)送中斷類型號發(fā)送中斷類型號轉入中斷服務程序轉入中斷服務程序 14中斷服務中斷服務程序程序2 2 IRETIRET第1次第2次第3次下一條下一條下一條主程序主程序IRETIRET中斷服務中斷服務程序程序1 1 對于主程序的執(zhí)對于主程序的執(zhí)行,中斷的發(fā)生行,中斷的發(fā)生時間是隨機

9、的。時間是隨機的。當前指令執(zhí)行完當前指令執(zhí)行完成之后才能響應成之后才能響應 15CPUCPU和外設并行工作,效率較高,和外設并行工作,效率較高,對接口響應較快,對接口響應較快,接口較復雜(專用的中斷管理電路接口較復雜(專用的中斷管理電路 例如例如8259A8259A)。)。由中斷服務由中斷服務( (專用專用) )程序完成數(shù)據(jù)傳送。程序完成數(shù)據(jù)傳送。屬于程序控制屬于程序控制I/OI/O方式。方式。使用最廣泛。使用最廣泛。 16DMA方式的接口及過程方式的接口及過程CPUI/O接接口口總線申請總線申請總線響應總線響應 DMA請求請求DMA管理管理電路電路 DMA響應響應內(nèi)存內(nèi)存數(shù)據(jù)傳送數(shù)據(jù)傳送此時

10、此時 AEN = 1 17CPUCPU和外設并行工作和外設并行工作效率最高效率最高對外設響應最快對外設響應最快(當前總線周期結束當前總線周期結束)接口最復雜接口最復雜(專用的(專用的DMA管理電路管理電路,例如例如8237)在高速外設中廣泛使用。在高速外設中廣泛使用。 18總線:多個電路傳送信號的公共通道 各電路有三態(tài)輸出 任何時候只能其中一個器件往傳輸線上輸出“0”或“1”(其他器件輸出呈高阻態(tài))不同范圍的總線: 芯片級(芯片總線)如CPU引腳 系統(tǒng)級(內(nèi)總線) 如:PC/XT(8位數(shù)據(jù)總線), ISA(16位), EISA(32位), PCI(64位) 設備級(外總線) 如: RS232,

11、GPIB,USBIO接口是對接口是對系統(tǒng)總線系統(tǒng)總線的接口的接口 19P236 圖圖5.2 20 EISA 總線總線 針對針對 386、486Extended ISA (Industry Standard Architecture)-擴展工業(yè)標準體系結構擴展工業(yè)標準體系結構總線時鐘頻率總線時鐘頻率8.33MHz,總線寬度,總線寬度32位,尋址能力位,尋址能力4GB,支持突發(fā)傳送支持突發(fā)傳送帶寬約帶寬約33MBps。-外設部件互連標準外設部件互連標準數(shù)據(jù)、地址總線數(shù)據(jù)、地址總線32位,位,可擴充到可擴充到64位。位??蛇M行突發(fā)可進行突發(fā)(burst)式傳輸式傳輸(成組傳送成組傳送: 地址地址 數(shù)

12、據(jù)數(shù)據(jù) 數(shù)據(jù)數(shù)據(jù) )。總線時鐘頻率總線時鐘頻率33MHZ或或66MHZ,最高傳輸率可達最高傳輸率可達528MB/S。 PCI卡內(nèi)有設備信息寄存器組為系統(tǒng)提供卡的信息,卡內(nèi)有設備信息寄存器組為系統(tǒng)提供卡的信息,可實現(xiàn)即插即用(可實現(xiàn)即插即用(Plug & Play)。)。 。2312 2182 21四方面信息:引腳排列、信號名稱、 有效極性、傳送方向。IOR IO讀IOW IO寫MEMR 存儲器讀MEMW 存儲器寫CPU執(zhí)行讀寫指令時執(zhí)行讀寫指令時只能只能4選選1有效。有效。因為只有一套地址總線因為只有一套地址總線 22DMA傳送時讀寫信號傳送時讀寫信號兩兩兩兩同時有效同時有效數(shù)據(jù)直接在

13、總線上傳送數(shù)據(jù)直接在總線上傳送讀內(nèi)存讀內(nèi)存(MEMR)(MEMR)寫接口寫接口(IOW)(IOW)同時同時或者讀接口或者讀接口(IOR)(IOR)寫內(nèi)存寫內(nèi)存(MEMW)(MEMW)同時同時內(nèi)存用地址信號選中內(nèi)存用地址信號選中IO接口不用地址信號而用接口不用地址信號而用DACK信號鎖定信號鎖定CPUI/O接接口口HRQHLDA DRQDMA管理管理電路電路 DACK內(nèi)存內(nèi)存 23 AEN1,DMA地址有效 AEN0,CPU地址有效,CPU執(zhí)行指令時,AEN0 (AEN=1)I/O片選譯碼電路僅在CPU執(zhí)行IN/OUT指令時工作,故加上AEN0(AEN=1)選通。在DMA傳送時I/O接口用DAC

14、KDACK信號鎖定信號鎖定,I/O譯碼電路不工作,地址總線信號用來選中直接訪問的存儲器。 24指令執(zhí)行過程中各總線信號的變化時序。CPU驅動的總線周期 P238 圖5.3 存儲器讀形成形成20位有效地址位有效地址 25指令執(zhí)行過程中各總線信號的變化時序。CPU驅動的總線周期P240 圖5.6 I/O 寫真正的讀/寫在讀/寫信號的后沿附近完成 26 DMAC驅動的總線周期讀存儲器同時寫I/O端口地址總線上是存儲器地址P241圖5.7 DMA存儲器讀 27三態(tài)緩沖器作輸入接口P247 圖5.10 三態(tài)緩沖器用于輸入接口 28設I/0地址為218H時譯碼器輸出選中此接口,執(zhí)行下列指令,可以讀入8個開

15、關狀態(tài): MOV DX,218H IN AL,DX只有數(shù)據(jù)端口。只有數(shù)據(jù)端口。執(zhí)行執(zhí)行IN指令時開指令時開關正在變化如何關正在變化如何保證輸入的數(shù)據(jù)保證輸入的數(shù)據(jù)正確?正確?軟件:重復多次軟件:重復多次IN的內(nèi)容的內(nèi)容相等時(穩(wěn)定)才接收。相等時(穩(wěn)定)才接收。硬件:增加狀態(tài)端口,先硬件:增加狀態(tài)端口,先查詢狀態(tài)穩(wěn)定才輸入數(shù)據(jù)。查詢狀態(tài)穩(wěn)定才輸入數(shù)據(jù)。 29鎖存器作輸出接口P247 圖5.11 D觸發(fā)器用于輸出接口 30設I/0地址為219H時譯碼器輸出選中接口執(zhí)行下列指令,AL的D0位寫入觸發(fā)器,驅動LED : MOV DX,219H OUT DX,AL若連續(xù)輸出如何保證數(shù)據(jù)都被可靠接收?若

16、連續(xù)輸出如何保證數(shù)據(jù)都被可靠接收? 延時延時 增加狀態(tài)接口增加狀態(tài)接口 31P248 圖5.12 查詢式實用接口 右邊右邊(乙乙):BUSY = 1 等待等待BUSY = 0 送出數(shù)據(jù)鎖存到送出數(shù)據(jù)鎖存到74LS373 并使并使 BUSY = 1左邊左邊(甲甲):D0 = 1 等待等待D0 = 0 接收數(shù)據(jù)接收數(shù)據(jù) 并使并使 BUSY=0簡單接口舉例 32 左邊有主機,右邊有外設8位鎖存緩沖器74LS373是數(shù)據(jù)端口,地址為CS1D觸發(fā)器是狀態(tài)端口,Q=1為準備好,地址為CS0,狀態(tài)位送到數(shù)據(jù)總線D0狀態(tài)位的清零也用CS1,讀數(shù)的同時清除狀態(tài)位 33 mov DX, CS1 in AL, DX

17、 ; 假讀,清忙信號 mov CX, DelayTimeChks: mov DX, CS0 in AL, DX and AL, 1 jz Datin loop Chks .Datin: mov DX, CS1 in AL, DX ; 輸入數(shù)據(jù) 341.數(shù)據(jù)信號的連接數(shù)據(jù)信號的連接系統(tǒng)的數(shù)據(jù)總線是雙向三態(tài),若接口的系統(tǒng)的數(shù)據(jù)總線是雙向三態(tài),若接口的數(shù)據(jù)總線也是雙向三態(tài)則可以直接相接:數(shù)據(jù)總線也是雙向三態(tài)則可以直接相接:輸出數(shù)據(jù)一般要求有鎖存,輸出數(shù)據(jù)一般要求有鎖存,輸入數(shù)據(jù)一般要求有三態(tài)緩沖輸入數(shù)據(jù)一般要求有三態(tài)緩沖。8位系統(tǒng)對位系統(tǒng)對8位接口位接口: 按數(shù)據(jù)線位序對應相接按數(shù)據(jù)線位序對應相接D

18、B7D78 8位位 計算計算 機機 系統(tǒng)系統(tǒng) 8 8位位接口接口D0DB0輸入緩輸入緩沖器沖器輸出鎖輸出鎖存器存器外部數(shù)外部數(shù)據(jù)線據(jù)線 358位位鎖存鎖存18位位鎖存鎖存216位位輸出輸出接口接口8位計算機系統(tǒng)位計算機系統(tǒng)低低8位位高高8位位片選片選1片選片選2IOWDB70 8位系統(tǒng)對位系統(tǒng)對16位接口:位接口:按按高低字節(jié)高低字節(jié)分成兩個分成兩個8位端口分別進行位端口分別進行I/O。輸入接口:數(shù)據(jù)傳送方向相反。鎖存器改成三態(tài)輸入接口:數(shù)據(jù)傳送方向相反。鎖存器改成三態(tài)緩沖器,緩沖器,IOW改成改成IOR。更多位接口用更多個更多位接口用更多個8位端口位端口 3616位系統(tǒng)接位系統(tǒng)接8位接口:一

19、般接數(shù)據(jù)總線位接口:一般接數(shù)據(jù)總線低低8位位8位位接口接口18位位接口接口216位計算機系統(tǒng)位計算機系統(tǒng)片選片選1片選片選2IOWDB70 建議建議8位接口地址都用偶地址,地址對準位接口地址都用偶地址,地址對準(aligned)能在一個總線周期完成)能在一個總線周期完成I/O傳送。傳送。 372.控制信號的連接控制信號的連接所有的所有的I/O片選譯碼都要加片選譯碼都要加AEN信號信號控制控制。輸入接口輸入接口(三態(tài)緩沖器三態(tài)緩沖器)用用IOR信號信號選通選通, 輸入數(shù)據(jù)在輸入數(shù)據(jù)在IOR信號的后沿附近采樣。信號的后沿附近采樣。輸出接口輸出接口(鎖存器鎖存器)用用IOW信號信號鎖存鎖存, 輸出數(shù)據(jù)應保持到輸出數(shù)據(jù)應保持到IOW信號的后沿以后消失信號的后沿以后消失中斷方式傳送的接口還要有中斷聯(lián)絡信號,中斷方式傳送的接口還要有中斷聯(lián)絡信號,DMA方式傳送的接口還有方式傳送的接口還有DMA聯(lián)絡信號。聯(lián)絡信號。 383.地址信號的連接地址信號的連接片選地址:片選地址:

溫馨提示

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

評論

0/150

提交評論