



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第六章第六章 輸入輸出接口基輸入輸出接口基礎(chǔ)(礎(chǔ)(CPU與外設(shè)之間的與外設(shè)之間的數(shù)據(jù)傳輸)數(shù)據(jù)傳輸)把數(shù)據(jù)給我吧Sorry, I cant understand.哇第六章第六章微機(jī)與外設(shè)之間的數(shù)據(jù)傳輸微機(jī)與外設(shè)之間的數(shù)據(jù)傳輸主要內(nèi)容 接口的基本概念接口的基本概念 CPUCPU與端口(外設(shè))之間的數(shù)據(jù)傳送方與端口(外設(shè))之間的數(shù)據(jù)傳送方式式 簡單接口電路的擴(kuò)展簡單接口電路的擴(kuò)展6.1 接口的基本概念接口的基本概念一、基本問題一、基本問題1 1、什么是、什么是I/OI/O接口(電路)?接口(電路)?I/OI/O接口是位于系統(tǒng)與外設(shè)間、用來協(xié)助完接口是位于系統(tǒng)與外設(shè)間、用來協(xié)助完成數(shù)據(jù)傳送和控制任務(wù)
2、的邏輯電路成數(shù)據(jù)傳送和控制任務(wù)的邏輯電路PCPC機(jī)系統(tǒng)板的可編程接口芯片、機(jī)系統(tǒng)板的可編程接口芯片、I/OI/O總線槽總線槽的電路板(適配器)都是接口電路的電路板(適配器)都是接口電路6.1 接口的基本概念接口的基本概念2 2、為什么需要、為什么需要I/OI/O接口(電路)?接口(電路)? 需要分析一下外部設(shè)備的輸入需要分析一下外部設(shè)備的輸入/ /輸出操作和輸出操作和存儲器讀存儲器讀/ /寫操作的寫操作的不同之處不同之處: :存儲器都是用來保存信息的,功能單一,傳送方存儲器都是用來保存信息的,功能單一,傳送方式單一(一次必定是傳送式單一(一次必定是傳送1 1個字節(jié)或者個字節(jié)或者1 1個字),個
3、字),品種很有限品種很有限( (只有只讀類型和可讀只有只讀類型和可讀/ /可寫類型可寫類型) ),存取速度基本上和存取速度基本上和CPUCPU的工作速度匹配。的工作速度匹配。外部設(shè)備的功能多種多樣的(輸入設(shè)備,輸出設(shè)外部設(shè)備的功能多種多樣的(輸入設(shè)備,輸出設(shè)備,輸入設(shè)備備,輸入設(shè)備/ /輸出設(shè)備),信息多樣(數(shù)字式輸出設(shè)備),信息多樣(數(shù)字式的,模擬式的),信息傳輸?shù)姆绞剑ú⑿械?,串的,模擬式的),信息傳輸?shù)姆绞剑ú⑿械模械模?,外設(shè)的工作速度通常比行的),外設(shè)的工作速度通常比CPUCPU的速度低得的速度低得多,而且各種外設(shè)的工作速度互不相同,這也要多,而且各種外設(shè)的工作速度互不相同,這也要
4、求通過接口電路對輸入求通過接口電路對輸入/ /輸出過程起一個緩沖和輸出過程起一個緩沖和聯(lián)絡(luò)的作用。聯(lián)絡(luò)的作用。6.1 接口的基本概念接口的基本概念微機(jī)的外部設(shè)備多種多樣微機(jī)的外部設(shè)備多種多樣工作原理不同工作原理不同機(jī)械、電子、機(jī)電、電磁機(jī)械、電子、機(jī)電、電磁傳送信息類型多樣傳送信息類型多樣數(shù)字量、模擬量、開關(guān)量數(shù)字量、模擬量、開關(guān)量傳送速度差別極大傳送速度差別極大傳送方式不盡相同傳送方式不盡相同串行、并行串行、并行編碼方式不同編碼方式不同二進(jìn)制、二進(jìn)制、BCDBCD碼、碼、ASCIIASCII碼碼6.1 接口的基本概念接口的基本概念它們不能與它們不能與CPUCPU直接相連直接相連必須經(jīng)過中間電
5、路再與系統(tǒng)相連必須經(jīng)過中間電路再與系統(tǒng)相連這部分電路被稱為這部分電路被稱為I/OI/O接口電路接口電路6.1 接口的基本概念接口的基本概念3、什么是微機(jī)接口技術(shù)?、什么是微機(jī)接口技術(shù)?處理微機(jī)系統(tǒng)與外設(shè)間聯(lián)系的技術(shù)處理微機(jī)系統(tǒng)與外設(shè)間聯(lián)系的技術(shù)注意其軟硬結(jié)合的特點(diǎn)注意其軟硬結(jié)合的特點(diǎn)根據(jù)應(yīng)用系統(tǒng)的需要,使用和構(gòu)造相應(yīng)的接根據(jù)應(yīng)用系統(tǒng)的需要,使用和構(gòu)造相應(yīng)的接口電路,編制配套的接口程序,支持和連接口電路,編制配套的接口程序,支持和連接有關(guān)的設(shè)備有關(guān)的設(shè)備6.1 接口的基本概念接口的基本概念4 4、接口的功能、接口的功能對對I/OI/O端口端口進(jìn)行尋址,對送來的片選信號進(jìn)行進(jìn)行尋址,對送來的片選信
6、號進(jìn)行識別;識別; (2)(2)根據(jù)讀根據(jù)讀/ /寫信號決定當(dāng)前進(jìn)行的是輸入操作還寫信號決定當(dāng)前進(jìn)行的是輸入操作還是輸出操作,對輸入輸出數(shù)據(jù)進(jìn)行緩沖和鎖存是輸出操作,對輸入輸出數(shù)據(jù)進(jìn)行緩沖和鎖存輸出接口有輸出接口有鎖存環(huán)節(jié)鎖存環(huán)節(jié);輸入接口有;輸入接口有緩沖環(huán)節(jié)緩沖環(huán)節(jié)實(shí)際的電路常見:實(shí)際的電路常見:輸出鎖存緩沖環(huán)節(jié)輸出鎖存緩沖環(huán)節(jié)、輸入鎖存緩沖環(huán)節(jié)輸入鎖存緩沖環(huán)節(jié)鎖存器:功能是把來自設(shè)備的輸入信息鎖存起來,并一直鎖存器:功能是把來自設(shè)備的輸入信息鎖存起來,并一直穩(wěn)定地保持它,直到微處理器取走信息。如圖所示:穩(wěn)定地保持它,直到微處理器取走信息。如圖所示:18DDENCP.oQQoCP CP 鎖
7、存信號鎖存信號D D 數(shù)據(jù)輸入數(shù)據(jù)輸入Q Q數(shù)據(jù)輸出數(shù)據(jù)輸出功能:功能:CPCP有效,有效,Q QD DCPCP無效,無效,Q Q保持不變保持不變?nèi)龖B(tài)緩沖器是微處理器并行總線接口中必須要使用的一種三態(tài)緩沖器是微處理器并行總線接口中必須要使用的一種接口部件。如圖所示:接口部件。如圖所示:oEN輸入輸出為0其中EN開門: 輸入為1時輸出為1輸入為0時其中EN關(guān)門: 輸入為1/0,輸出為高阻6.1 接口的基本概念接口的基本概念(3)(3)數(shù)據(jù)轉(zhuǎn)換功能:數(shù)據(jù)轉(zhuǎn)換功能:對信號的形式和數(shù)據(jù)的格式進(jìn)行對信號的形式和數(shù)據(jù)的格式進(jìn)行變換;變換;(4)(4)聯(lián)絡(luò)功能:聯(lián)絡(luò)功能:與與CPUCPU和和I/OI/O設(shè)備
8、進(jìn)行聯(lián)絡(luò)設(shè)備進(jìn)行聯(lián)絡(luò)就緒信號,就緒信號,忙信號等;忙信號等; 中斷管理:發(fā)出中斯請求信號、接收中斷響應(yīng)信中斷管理:發(fā)出中斯請求信號、接收中斷響應(yīng)信號、發(fā)送中斷類型碼的功能。并具有優(yōu)先級管理號、發(fā)送中斷類型碼的功能。并具有優(yōu)先級管理功能;功能; 復(fù)位:接收復(fù)位信號,從而使接口本身以及所連復(fù)位:接收復(fù)位信號,從而使接口本身以及所連的外設(shè)進(jìn)行重新啟動;的外設(shè)進(jìn)行重新啟動;可編程:用軟件來決定其工作方式,用軟件來設(shè)可編程:用軟件來決定其工作方式,用軟件來設(shè)置有關(guān)的控制信號;置有關(guān)的控制信號;6.1 接口的基本概念接口的基本概念錯誤檢測:一類是傳輸錯誤錯誤檢測:一類是傳輸錯誤, ,比如奇偶校驗(yàn)。比如奇偶
9、校驗(yàn)。另另類是覆蓋錯誤,數(shù)據(jù)還沒有被取走之類是覆蓋錯誤,數(shù)據(jù)還沒有被取走之前就被新的數(shù)據(jù)覆蓋掉了。通過在相應(yīng)的前就被新的數(shù)據(jù)覆蓋掉了。通過在相應(yīng)的狀態(tài)端口的某一位來控制實(shí)現(xiàn)狀態(tài)端口的某一位來控制實(shí)現(xiàn)。注:一些接口還可根據(jù)具體情況設(shè)置其它注:一些接口還可根據(jù)具體情況設(shè)置其它的檢測信息。的檢測信息。 5、接口的分類、接口的分類接口電路按功能可分為兩類接口電路按功能可分為兩類:是使微處理器正常工作所需要的輔助電路:時是使微處理器正常工作所需要的輔助電路:時鐘信號或中斷請求等;鐘信號或中斷請求等;是輸入是輸入/ /輸出接口電路:輸出接口電路:CPUCPU與外部設(shè)備信息的與外部設(shè)備信息的傳送(接收、發(fā)送
10、)。傳送(接收、發(fā)送)。 最常用的外部設(shè)備:如鍵盤、顯示裝置、打印最常用的外部設(shè)備:如鍵盤、顯示裝置、打印機(jī)、磁盤機(jī)等都是通過輸入機(jī)、磁盤機(jī)等都是通過輸入/ /輸出接口和總線輸出接口和總線相連的,完成檢測和控制的儀表裝置也屬于外相連的,完成檢測和控制的儀表裝置也屬于外部設(shè)備之列,也是通過接口電路和主機(jī)相連。部設(shè)備之列,也是通過接口電路和主機(jī)相連。輔助電路接口輔助電路接口二、二、CPUCPU與輸入輸出設(shè)備之間的信號(三類)與輸入輸出設(shè)備之間的信號(三類)數(shù)據(jù)信息數(shù)據(jù)信息:包括三種形式:數(shù)字量、模擬量包括三種形式:數(shù)字量、模擬量 、開關(guān)量。、開關(guān)量。狀態(tài)信息狀態(tài)信息:是外設(shè)通過接口往:是外設(shè)通過接
11、口往CPUCPU傳送的傳送的 如:如:“準(zhǔn)備好準(zhǔn)備好”(READY)(READY)信號、信號、“忙忙”(BUSYBUSY)信號。信號??刂菩畔⒖刂菩畔ⅲ菏牵菏荂PUCPU通過接口傳送給外設(shè)的通過接口傳送給外設(shè)的 如:外設(shè)的啟動信號、停止信號就是常見的如:外設(shè)的啟動信號、停止信號就是常見的控制信息??刂菩畔?。6.1 接口的基本概念接口的基本概念三、接口與系統(tǒng)的連接三、接口與系統(tǒng)的連接1 1、接口部件的典型結(jié)構(gòu)、接口部件的典型結(jié)構(gòu)控制總線控制總線CB地址總線地址總線ABI/O接口電路接口電路數(shù)據(jù)數(shù)據(jù)控制控制狀態(tài)狀態(tài)數(shù)據(jù)總線數(shù)據(jù)總線DBCPU外設(shè)外設(shè)控制寄存器控制寄存器狀態(tài)寄存器狀態(tài)寄存器數(shù)據(jù)寄存器
12、數(shù)據(jù)寄存器接口芯片的典型結(jié)構(gòu)6.1 接口的基本概念接口的基本概念接口電路的內(nèi)部結(jié)構(gòu)接口電路的內(nèi)部結(jié)構(gòu)CPUCPU與外設(shè)主要有數(shù)據(jù)、狀態(tài)和控制信息需與外設(shè)主要有數(shù)據(jù)、狀態(tài)和控制信息需要相互交換,于是從應(yīng)用角度看內(nèi)部:要相互交換,于是從應(yīng)用角度看內(nèi)部: 數(shù)據(jù)寄存器數(shù)據(jù)寄存器輸入數(shù)據(jù)寄存器:保存外設(shè)給輸入數(shù)據(jù)寄存器:保存外設(shè)給CPUCPU的數(shù)據(jù)的數(shù)據(jù)輸出數(shù)據(jù)寄存器:保存輸出數(shù)據(jù)寄存器:保存CPUCPU給外設(shè)的數(shù)據(jù)給外設(shè)的數(shù)據(jù) 狀態(tài)寄存器狀態(tài)寄存器保存外設(shè)或接口電路的狀態(tài)保存外設(shè)或接口電路的狀態(tài) 控制寄存器控制寄存器保存保存CPUCPU給外設(shè)或接口電路的命令給外設(shè)或接口電路的命令6.1 接口的基本概念
13、接口的基本概念接口電路的外部特性接口電路的外部特性主要體現(xiàn)在引腳上,分成兩側(cè)信號主要體現(xiàn)在引腳上,分成兩側(cè)信號面向面向CPUCPU一側(cè)的信號:一側(cè)的信號:用于與用于與CPUCPU連接連接主要是數(shù)據(jù)、地址和控制信號主要是數(shù)據(jù)、地址和控制信號面向外設(shè)一側(cè)的信號:面向外設(shè)一側(cè)的信號:用于與外設(shè)連接用于與外設(shè)連接提供的信號五花八門提供的信號五花八門功能定義、時序及有效電平等差異較大功能定義、時序及有效電平等差異較大6.1 接口的基本概念接口的基本概念接口電路芯片的分類接口電路芯片的分類接口電路核心部分往往是一塊或數(shù)塊大規(guī)接口電路核心部分往往是一塊或數(shù)塊大規(guī)模集成電路芯片(接口芯片):模集成電路芯片(接
14、口芯片):通用接口芯片通用接口芯片支持通用的數(shù)據(jù)輸入輸出和控制的接口芯片支持通用的數(shù)據(jù)輸入輸出和控制的接口芯片面向外設(shè)的專用接口芯片面向外設(shè)的專用接口芯片針對某種外設(shè)設(shè)計(jì)、與該種外設(shè)接口針對某種外設(shè)設(shè)計(jì)、與該種外設(shè)接口 面向微機(jī)系統(tǒng)的專用接口芯片面向微機(jī)系統(tǒng)的專用接口芯片與與CPUCPU和系統(tǒng)配套使用,以增強(qiáng)其總體功能和系統(tǒng)配套使用,以增強(qiáng)其總體功能6.1 接口的基本概念接口的基本概念接口電路的可編程性接口電路的可編程性許多接口電路具有多種功能和工作方式,許多接口電路具有多種功能和工作方式,可以通過編程的方法選定其中一種可以通過編程的方法選定其中一種接口需進(jìn)行物理連接,還需編寫接口軟件接口需進(jìn)
15、行物理連接,還需編寫接口軟件接口軟件有兩類:接口軟件有兩類:初始化程序段初始化程序段設(shè)定芯片工作方式等設(shè)定芯片工作方式等數(shù)據(jù)交換程序段數(shù)據(jù)交換程序段管理、控制、驅(qū)動外設(shè),管理、控制、驅(qū)動外設(shè),負(fù)責(zé)外設(shè)和系統(tǒng)間信息交換負(fù)責(zé)外設(shè)和系統(tǒng)間信息交換端口(端口(PORT)2 2、接口部件的、接口部件的I/OI/O端口端口CPUCPU和外設(shè)進(jìn)行數(shù)據(jù)傳輸時,各類信息在接口中和外設(shè)進(jìn)行數(shù)據(jù)傳輸時,各類信息在接口中進(jìn)入不同的寄存器,一般稱這些寄存器為進(jìn)入不同的寄存器,一般稱這些寄存器為I/OI/O端端口,每個端口有一個端口地址???,每個端口有一個端口地址。 一個接口電路可以具有多個一個接口電路可以具有多個I/O
16、I/O端口(寄存器),端口(寄存器),每個端口用來保存和交換不同的信息每個端口用來保存和交換不同的信息數(shù)據(jù)寄存器、狀態(tài)寄存器和控制寄存器占有的數(shù)據(jù)寄存器、狀態(tài)寄存器和控制寄存器占有的I/OI/O地址常依次被稱為地址常依次被稱為數(shù)據(jù)端口數(shù)據(jù)端口、狀態(tài)端口狀態(tài)端口和和控控制端口制端口,用于保存數(shù)據(jù)、狀態(tài)和控制信息,用于保存數(shù)據(jù)、狀態(tài)和控制信息返回注意:注意: 輸入還是輸出,所用到的地址總是輸入還是輸出,所用到的地址總是對端口對端口而言而言的,不是對接口部件而言的。的,不是對接口部件而言的。 為了節(jié)省地址空間,將數(shù)據(jù)輸入端口和數(shù)據(jù)輸為了節(jié)省地址空間,將數(shù)據(jù)輸入端口和數(shù)據(jù)輸出端口對應(yīng)出端口對應(yīng)同一個端
17、口地址同一個端口地址。同樣,狀態(tài)端口和。同樣,狀態(tài)端口和控制端口也常用控制端口也常用同一個端口地址同一個端口地址。 CPUCPU對外設(shè)的輸入對外設(shè)的輸入/ /輸出操作就歸結(jié)為對接口芯輸出操作就歸結(jié)為對接口芯片各片各端口的讀端口的讀/ /寫操作寫操作。6.1 接口的基本概念接口的基本概念3 3、輸入輸出的尋址方式(端口的編址方式)、輸入輸出的尋址方式(端口的編址方式)接口電路占用的接口電路占用的I/OI/O端口有兩類編排形式端口有兩類編排形式I/OI/O端口與存儲器統(tǒng)一編址端口與存儲器統(tǒng)一編址它們共享一個地址空間它們共享一個地址空間如如M6800M6800I/OI/O端口單獨(dú)編址端口單獨(dú)編址I/
18、OI/O地址空間獨(dú)立于存儲地址空間地址空間獨(dú)立于存儲地址空間如如8086/80888086/80886.1 接口的基本概念接口的基本概念統(tǒng)一編址方式統(tǒng)一編址方式優(yōu)點(diǎn):優(yōu)點(diǎn):不需要專門的不需要專門的I/OI/O指令指令I(lǐng)/OI/O數(shù)據(jù)存取與存儲器數(shù)數(shù)據(jù)存取與存儲器數(shù)據(jù)存取一樣靈活(多種據(jù)存取一樣靈活(多種尋址方式)尋址方式)缺點(diǎn):缺點(diǎn):I/OI/O端口要占去部分存儲端口要占去部分存儲器地址空間器地址空間程序不易閱讀(不易分程序不易閱讀(不易分清訪存和訪問外設(shè))清訪存和訪問外設(shè))內(nèi)存內(nèi)存部分部分I/O部分部分存儲器空間存儲器空間00000FFFFF6.1 接口的基本概念接口的基本概念獨(dú)立編址方式獨(dú)
19、立編址方式優(yōu)點(diǎn):優(yōu)點(diǎn):I/O端口的地址空間獨(dú)立端口的地址空間獨(dú)立控制和地址譯碼電路相對簡單控制和地址譯碼電路相對簡單專門的專門的I/O指令使程序清晰易讀指令使程序清晰易讀缺點(diǎn):缺點(diǎn):I/O指令沒有存儲器指令豐富指令沒有存儲器指令豐富內(nèi)存內(nèi)存空間空間I/O空間空間FFFFF0FFFF80 x86采用采用I/O端口獨(dú)立編址端口獨(dú)立編址6.1 接口的基本概念接口的基本概念對于對于80868086,M M和和IOIO的不同之處:的不同之處:地址線的條數(shù):地址線的條數(shù):2020、1616地址的范圍:地址的范圍:2 22020、2 21616、指令不同產(chǎn)生的信號不同:指令不同產(chǎn)生的信號不同:M/IOM/I
20、O8088/8086的輸入輸出指令的輸入輸出指令輸入輸出指令舉例輸入輸出指令舉例輸入指令輸入指令(ININ:將外設(shè)數(shù)據(jù)傳送給:將外設(shè)數(shù)據(jù)傳送給CPUCPU內(nèi)的內(nèi)的AL/AXAL/AX)IN AL,8IN AL,8; ;字節(jié)輸入字節(jié)輸入IN AL,DXIN AL,DX; ;字節(jié)輸入字節(jié)輸入IN AX,8IN AX,8; ;字輸入字輸入IN AX,DXIN AX,DX; ;字輸入字輸入輸出指令輸出指令(OUTOUT:將:將CPUCPU內(nèi)的內(nèi)的AL/AXAL/AX數(shù)據(jù)傳送給外設(shè))數(shù)據(jù)傳送給外設(shè))OUT 8,ALOUT 8,AL; ;字節(jié)輸出字節(jié)輸出OUT DX,ALOUT DX,AL; ;字節(jié)輸出字
21、節(jié)輸出OUT 8,AXOUT 8,AX; ;字輸出字輸出OUT DX,AXOUT DX,AX; ;字輸出字輸出演示演示演示演示IN AL, 21H返回OUT 43H, AL返回第第6章:章:8088/8086的的I/O端口端口8088只能通過輸入輸出指令與外設(shè)進(jìn)行數(shù)只能通過輸入輸出指令與外設(shè)進(jìn)行數(shù)據(jù)交換;呈現(xiàn)給程序員的外設(shè)是端口據(jù)交換;呈現(xiàn)給程序員的外設(shè)是端口(Port),即),即I/O地址地址8086用于尋址外設(shè)端口的地址線為用于尋址外設(shè)端口的地址線為16條,條,端口最多為端口最多為21665536(64K)個,端口)個,端口號為號為0000H FFFFH每個端口用于傳送一個字節(jié)的外設(shè)數(shù)據(jù)每
22、個端口用于傳送一個字節(jié)的外設(shè)數(shù)據(jù)第第6章:章:I/O尋址方式尋址方式8088/8086的的端口有端口有64K個,無需分段,設(shè)個,無需分段,設(shè)計(jì)有兩種尋址方式計(jì)有兩種尋址方式v直接尋址直接尋址:只用于尋址:只用于尋址00H FFH前前256個個端口,操作數(shù)端口,操作數(shù)8表示端口號表示端口號v間接尋址間接尋址:可用于尋址全部:可用于尋址全部64K個端口,個端口,DX寄存器的值就是端口號寄存器的值就是端口號對大于對大于FFH的端口只能采用間接尋址方式的端口只能采用間接尋址方式第第6章:數(shù)據(jù)交換方式章:數(shù)據(jù)交換方式如果輸入輸出一個字節(jié),利用如果輸入輸出一個字節(jié),利用AL寄存器寄存器如果輸入輸出一個字,
23、利用如果輸入輸出一個字,利用AX寄存器寄存器輸入一個字,實(shí)際上是從連續(xù)兩個端口輸入輸入一個字,實(shí)際上是從連續(xù)兩個端口輸入兩個字節(jié),分別送兩個字節(jié),分別送AL(對應(yīng)低地址端口)(對應(yīng)低地址端口)和和AH(對應(yīng)高地址端口)(對應(yīng)高地址端口)輸出一個字,實(shí)際上是將輸出一個字,實(shí)際上是將AL(對應(yīng)低地址(對應(yīng)低地址端口)和端口)和AH(對應(yīng)高地址端口)兩個字節(jié)(對應(yīng)高地址端口)兩個字節(jié)的內(nèi)容輸出給連續(xù)兩個端口的內(nèi)容輸出給連續(xù)兩個端口第第6章:章:IN指令實(shí)例(指令實(shí)例(從從20H端口輸入一個字)端口輸入一個字);方法;方法1 1:直接尋址,字量輸入:直接尋址,字量輸入in ax,20hin ax,20
24、h;方法;方法2 2:間接尋址,字量輸入:間接尋址,字量輸入mov dx,20hmov dx,20hin ax,dxin ax,dx;方法;方法3:直接尋址,字節(jié)量輸入直接尋址,字節(jié)量輸入in al,21hin al,21hmov ah,almov ah,alin al,20hin al,20h;方法;方法4:間:間接尋址,字節(jié)量輸入接尋址,字節(jié)量輸入mov dx,21hmov dx,21hin al,dxin al,dxmov ah,almov ah,aldec dxdec dxin al,dxin al,dx第第6章:章:OUT指令實(shí)例(向指令實(shí)例(向300H端口輸出一個字節(jié))端口輸出一個
25、字節(jié));唯一的方法:間接尋址,字節(jié)量輸出;唯一的方法:間接尋址,字節(jié)量輸出mov al,bvarmov al,bvar;bvarbvar是字節(jié)變量是字節(jié)變量mov dx,300hmov dx,300hout dx,alout dx,al4 4、接口與系統(tǒng)的連接、接口與系統(tǒng)的連接接口電路位于接口電路位于CPUCPU與外設(shè)之間,從結(jié)構(gòu)上看,與外設(shè)之間,從結(jié)構(gòu)上看,可以把一個接口分為兩個部分:可以把一個接口分為兩個部分: 用來和用來和I/OI/O設(shè)備相連;設(shè)備相連; 用來和系統(tǒng)總線相連,這部分接口電路結(jié)用來和系統(tǒng)總線相連,這部分接口電路結(jié)構(gòu)類似,連在同一總線上。構(gòu)類似,連在同一總線上。下圖是一個典型
26、的下圖是一個典型的I/OI/O接口和外部電路的連接接口和外部電路的連接圖圖 聯(lián)絡(luò)信號:讀聯(lián)絡(luò)信號:讀/ /寫信號,以便決定數(shù)據(jù)傳輸方寫信號,以便決定數(shù)據(jù)傳輸方向。向。地址譯碼器,片選信號:地址譯碼器除了接收地址譯碼器,片選信號:地址譯碼器除了接收地址信號外,還用來區(qū)分地址信號外,還用來區(qū)分I/0I/0地址空間和內(nèi)存地址空間和內(nèi)存地址空間的信號地址空間的信號(M/)(M/)用于譯碼過程。用于譯碼過程。 注:注:一個接口通常有一個接口通常有若干個寄存器若干個寄存器可讀可讀/ /寫,寫,一般用一般用1-21-2位低位地址位低位地址結(jié)合讀結(jié)合讀/ /寫信號來實(shí)現(xiàn)寫信號來實(shí)現(xiàn)對接口內(nèi)部寄存器的尋址。對接
27、口內(nèi)部寄存器的尋址。P2796.2 CPU6.2 CPU與外設(shè)之間數(shù)據(jù)的傳送方式與外設(shè)之間數(shù)據(jù)的傳送方式 CPUCPU與外設(shè)之間傳輸數(shù)據(jù)的控制方式通常有與外設(shè)之間傳輸數(shù)據(jù)的控制方式通常有三種:三種:程序方式程序方式: : 無條件傳送方式和有條件傳送方式無條件傳送方式和有條件傳送方式中斷方式中斷方式DMADMA方式方式 6.2 CPU6.2 CPU與外設(shè)之間數(shù)據(jù)的傳送方式與外設(shè)之間數(shù)據(jù)的傳送方式一、程序方式一、程序方式 指用輸入指用輸入/ /輸出指令,來控制信息傳輸輸出指令,來控制信息傳輸?shù)姆绞?,是一種軟件控制方式,根據(jù)程序控的方式,是一種軟件控制方式,根據(jù)程序控制的方法不同,又可以分為無條件傳
28、送方式制的方法不同,又可以分為無條件傳送方式和條件傳送方式。和條件傳送方式。1 1、無條件傳送方式、無條件傳送方式條件:利用程控方式與外設(shè)交換信息時,條件:利用程控方式與外設(shè)交換信息時,如果輸入如果輸入/ /輸出的時刻,都可以保證外設(shè)總輸出的時刻,都可以保證外設(shè)總是處于是處于“準(zhǔn)備好準(zhǔn)備好”狀態(tài),則可以直接利用狀態(tài),則可以直接利用輸入輸入/ /輸出指令進(jìn)行信息的輸入輸出指令進(jìn)行信息的輸入/ /輸出操作。輸出操作。適合于簡單設(shè)備,如適合于簡單設(shè)備,如LEDLED數(shù)碼管、按鍵或按數(shù)碼管、按鍵或按紐等紐等無條件傳送的接口和操作均十分簡單無條件傳送的接口和操作均十分簡單這種傳送有前提:外設(shè)必須隨時就緒
29、這種傳送有前提:外設(shè)必須隨時就緒工作原理圖無條件傳送流程無條件傳送流程第第6章:章:6.3 查詢傳送方式及其接口查詢傳送方式及其接口2 2、條件傳送方式、條件傳送方式又稱查詢方式,即通過程序查詢相應(yīng)設(shè)備又稱查詢方式,即通過程序查詢相應(yīng)設(shè)備的狀態(tài),若狀態(tài)不符合,則的狀態(tài),若狀態(tài)不符合,則CPUCPU不能進(jìn)行輸不能進(jìn)行輸入入/ /輸出操作,需要等待;只有當(dāng)狀態(tài)信號輸出操作,需要等待;只有當(dāng)狀態(tài)信號符合要求時,符合要求時,CPUCPU才能進(jìn)行相應(yīng)的輸入才能進(jìn)行相應(yīng)的輸入/ /輸輸出操作。出操作。 CPUCPU需要先了解(查詢)外設(shè)的工作狀態(tài),然后在需要先了解(查詢)外設(shè)的工作狀態(tài),然后在外設(shè)可以交換
30、信息的情況下(就緒)實(shí)現(xiàn)數(shù)據(jù)輸入外設(shè)可以交換信息的情況下(就緒)實(shí)現(xiàn)數(shù)據(jù)輸入或輸出或輸出對多個外設(shè)的情況,則對多個外設(shè)的情況,則CPUCPU按一定順序依次查詢按一定順序依次查詢(輪詢)。先查詢的外設(shè)將優(yōu)先進(jìn)行數(shù)據(jù)交換(輪詢)。先查詢的外設(shè)將優(yōu)先進(jìn)行數(shù)據(jù)交換查詢傳送的特點(diǎn)是:工作可靠,適用面寬,但傳送查詢傳送的特點(diǎn)是:工作可靠,適用面寬,但傳送效率低效率低就緒就緒(Ready)在輸入場合在輸入場合“就緒就緒”說明輸入接口已準(zhǔn)備好送往說明輸入接口已準(zhǔn)備好送往CPUCPU的數(shù)據(jù),的數(shù)據(jù),正等著正等著CPUCPU來讀取來讀取該狀態(tài)也可用接口中數(shù)據(jù)緩沖器已該狀態(tài)也可用接口中數(shù)據(jù)緩沖器已“滿滿”來描述來描
31、述 在輸出場合在輸出場合“就緒就緒”說明輸出接口已做好準(zhǔn)備,等待接收說明輸出接口已做好準(zhǔn)備,等待接收CPUCPU要輸出的數(shù)據(jù)要輸出的數(shù)據(jù)該狀態(tài)也可用接口數(shù)據(jù)緩沖器已該狀態(tài)也可用接口數(shù)據(jù)緩沖器已“空空”、或者用、或者用接口(外設(shè))接口(外設(shè))“閑閑”或不或不“忙(忙(BusyBusy)”來描述來描述返回就緒:滿,空、閑、不忙就緒:滿,空、閑、不忙第第6章:查詢傳送的兩個環(huán)節(jié)章:查詢傳送的兩個環(huán)節(jié)數(shù)據(jù)的傳送環(huán)節(jié)由三個環(huán)節(jié)組成數(shù)據(jù)的傳送環(huán)節(jié)由三個環(huán)節(jié)組成(1)(1)讀取狀態(tài)字讀取狀態(tài)字尋址狀態(tài)口尋址狀態(tài)口讀取狀態(tài)寄存器的標(biāo)志位讀取狀態(tài)寄存器的標(biāo)志位(2)(2)查詢環(huán)節(jié)查詢環(huán)節(jié)檢測是否滿足,若不就緒就
32、繼續(xù)查詢,檢測是否滿足,若不就緒就繼續(xù)查詢,直至就緒直至就緒 傳送環(huán)節(jié)傳送環(huán)節(jié)尋址數(shù)據(jù)口尋址數(shù)據(jù)口是輸入,通過輸入指令從數(shù)據(jù)端口讀入是輸入,通過輸入指令從數(shù)據(jù)端口讀入數(shù)據(jù)數(shù)據(jù)是輸出,通過輸出指令向數(shù)據(jù)端口輸出是輸出,通過輸出指令向數(shù)據(jù)端口輸出數(shù)據(jù)數(shù)據(jù)輸入狀態(tài)輸入狀態(tài)就緒?就緒?數(shù)據(jù)交換數(shù)據(jù)交換YN流程流程 查詢式輸入接口電路查詢式輸入接口電路ooooooooo+5VIO/MRDABReadyRDIO/MCSCS 輸輸 入入 裝裝 置置數(shù)據(jù)數(shù)據(jù)選通信選通信號號DQ鎖存鎖存器器緩沖緩沖器器緩沖器緩沖器地址譯碼地址譯碼地址譯地址譯碼碼狀態(tài)口狀態(tài)口數(shù)據(jù)口數(shù)據(jù)口數(shù)據(jù)數(shù)據(jù)去去DB狀態(tài)信息狀態(tài)信息&R數(shù)據(jù)端
33、口數(shù)據(jù)端口狀態(tài)端口狀態(tài)端口當(dāng)輸入裝置數(shù)據(jù)準(zhǔn)備好發(fā)出一個選通信號當(dāng)輸入裝置數(shù)據(jù)準(zhǔn)備好發(fā)出一個選通信號, ,一面把數(shù)據(jù)鎖一面把數(shù)據(jù)鎖存起來存起來, ,一面送一面送D D觸發(fā)器的觸發(fā)器的CLKCLK端端, ,將將D=1D=1打入打入Q Q端端, ,使使Q=1Q=1;CPUCPU讀入狀態(tài)信息讀入狀態(tài)信息READYREADY;當(dāng);當(dāng)READY=1,READY=1,輸入數(shù)據(jù);讀輸入數(shù)據(jù);讀入數(shù)據(jù)同時入數(shù)據(jù)同時, ,將狀態(tài)信號清零。將狀態(tài)信號清零。程序段如下:程序段如下:G0:G0:ININAL,STATUS-PORTAL,STATUS-PORT;讀入狀態(tài)信息;讀入狀態(tài)信息TESTTESTAL,10HAL,
34、10H;READY=1READY=1?JZJZG0G0;未準(zhǔn)備好;未準(zhǔn)備好, ,再查再查ININAL,DATA-PORTAL,DATA-PORT;準(zhǔn)備好;準(zhǔn)備好, ,讀入讀入查詢式輸出接口電路查詢式輸出接口電路地址譯碼地址譯碼oooooooo輸入裝置輸入裝置數(shù)據(jù)數(shù)據(jù)鎖存器鎖存器緩沖器緩沖器緩沖器緩沖器中斷矢量中斷矢量去去DBINTA(中斷響應(yīng)信號中斷響應(yīng)信號)INTR去數(shù)據(jù)總線去數(shù)據(jù)總線DB地址總線地址總線選通選通IOR+5VDQ&RCS地址譯碼地址譯碼以輸入為例以輸入為例: :輸入裝置輸入一數(shù)據(jù)輸入裝置輸入一數(shù)據(jù), ,發(fā)出選通信號發(fā)出選通信號, ,一方面把數(shù)據(jù)存入鎖存器一方面把數(shù)據(jù)存入鎖存器
35、, ,一方面又使一方面又使D D觸發(fā)器置觸發(fā)器置1,1,在中斷允許下在中斷允許下, ,發(fā)出發(fā)出INTR, CPUINTR, CPU在現(xiàn)行指令執(zhí)行完在現(xiàn)行指令執(zhí)行完后后, ,發(fā)出發(fā)出INTA, INTA, 把外設(shè)送來的中斷向量放到把外設(shè)送來的中斷向量放到DBDB上上, ,于是于是CPUCPU轉(zhuǎn)入中斷服務(wù)程序轉(zhuǎn)入中斷服務(wù)程序, ,讀入數(shù)據(jù)讀入數(shù)據(jù), ,同時清除中同時清除中斷請求斷請求INTR,INTR,中斷處理完中斷處理完,CPU,CPU返回被中斷處理的程返回被中斷處理的程序繼續(xù)執(zhí)行。序繼續(xù)執(zhí)行。n中斷請求中斷請求n中斷響應(yīng)中斷響應(yīng)n關(guān)中斷關(guān)中斷n斷點(diǎn)保護(hù)斷點(diǎn)保護(hù)n中斷識別中斷識別n現(xiàn)場保護(hù)現(xiàn)場保
36、護(hù)n中斷服務(wù)中斷服務(wù)n恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場n開中斷開中斷n中斷返回中斷返回中斷服務(wù)是進(jìn)行數(shù)據(jù)交換的實(shí)質(zhì)性環(huán)節(jié)中斷服務(wù)是進(jìn)行數(shù)據(jù)交換的實(shí)質(zhì)性環(huán)節(jié)中斷工作過程中斷工作過程3 3、中斷優(yōu)先級問題的解決、中斷優(yōu)先級問題的解決 當(dāng)系統(tǒng)中有多個設(shè)備提出中斷請求時,當(dāng)系統(tǒng)中有多個設(shè)備提出中斷請求時,就有一個該響應(yīng)誰的問題,也就是一個優(yōu)就有一個該響應(yīng)誰的問題,也就是一個優(yōu)先級的問題,解決優(yōu)先級的問題一般可有先級的問題,解決優(yōu)先級的問題一般可有三種方法:三種方法:軟件查詢法、簡單硬件方法及軟件查詢法、簡單硬件方法及專用硬件方法專用硬件方法。 軟件查詢法軟件查詢法 只需有簡單的只需有簡單的硬件電路,如將硬件電路,如將
37、A A、B B、C C三臺設(shè)備的中三臺設(shè)備的中斷請求信號斷請求信號“或或”后作為系統(tǒng)后作為系統(tǒng)INTRINTR。進(jìn)入中斷服務(wù)子程進(jìn)入中斷服務(wù)子程序后,再用軟件查序后,再用軟件查詢的方式分別對不詢的方式分別對不同的設(shè)備的服務(wù),同的設(shè)備的服務(wù),查詢程序的設(shè)計(jì)思查詢程序的設(shè)計(jì)思想同查詢式。想同查詢式。 第第6章:中斷查詢接口章:中斷查詢接口A0A15鎖鎖存存器器INTR三態(tài)三態(tài)緩沖器緩沖器譯碼譯碼 8001HD0D7中斷中斷A中斷中斷B中斷中斷CIOR簡單硬件方法:以鏈?zhǔn)街袛鄡?yōu)先權(quán)排隊(duì)簡單硬件方法:以鏈?zhǔn)街袛鄡?yōu)先權(quán)排隊(duì)電路為例,菊花鏈法電路為例,菊花鏈法基本設(shè)計(jì)思想:將所有的設(shè)備連成一條鏈,靠近基本
38、設(shè)計(jì)思想:將所有的設(shè)備連成一條鏈,靠近CPUCPU的設(shè)備優(yōu)先級最高,越遠(yuǎn)的設(shè)備優(yōu)先級別越低,的設(shè)備優(yōu)先級最高,越遠(yuǎn)的設(shè)備優(yōu)先級別越低,則發(fā)出中斷響應(yīng)信號,若級別高的設(shè)備發(fā)出了中則發(fā)出中斷響應(yīng)信號,若級別高的設(shè)備發(fā)出了中斷請求,在它接到中斷響應(yīng)信號的同時,封鎖其斷請求,在它接到中斷響應(yīng)信號的同時,封鎖其后的較低級設(shè)備使得它們的中斷請求不能響應(yīng),后的較低級設(shè)備使得它們的中斷請求不能響應(yīng),只有等它的中斷服務(wù)結(jié)束以后才開放,允許為低只有等它的中斷服務(wù)結(jié)束以后才開放,允許為低級的設(shè)備服務(wù)級的設(shè)備服務(wù)。 設(shè)備1設(shè)備2設(shè)備3接口接口接口Cpu以及總線控制邏輯INTAINTR菊花鏈邏輯電路菊花鏈邏輯電路菊花鏈
39、邏輯電路中斷回答中斷請求INTAINTR菊花鏈邏輯電路中斷回答中斷請求中斷菊花鏈優(yōu)先級及其邏輯電路中斷菊花鏈優(yōu)先級及其邏輯電路專用硬件方式專用硬件方式采 用 可 編 程 的 中 斷 控 制 器 芯 片 , 如采 用 可 編 程 的 中 斷 控 制 器 芯 片 , 如Intel8259AIntel8259A 中斷源的識別中斷源的識別第第6章:章:問題問題1 1:系統(tǒng)有多個中斷請求,:系統(tǒng)有多個中斷請求,CPUCPU如何識別中斷源?如何識別中斷源?解答解答1:向量中斷向量中斷解答解答2:中斷查詢中斷查詢中斷優(yōu)先權(quán)排隊(duì)中斷優(yōu)先權(quán)排隊(duì)計(jì)算機(jī)按中斷源優(yōu)先權(quán)高低逐次響應(yīng)的過計(jì)算機(jī)按中斷源優(yōu)先權(quán)高低逐次響應(yīng)
40、的過程稱優(yōu)先權(quán)排隊(duì),這個過程可通過硬件程稱優(yōu)先權(quán)排隊(duì),這個過程可通過硬件電路來實(shí)現(xiàn),也可以軟件實(shí)現(xiàn)電路來實(shí)現(xiàn),也可以軟件實(shí)現(xiàn)第第6章:章:6.4.3 中斷優(yōu)先權(quán)中斷優(yōu)先權(quán)(續(xù)(續(xù)1)問題問題2 2:有多個中斷同時請求,:有多個中斷同時請求,CPUCPU如何應(yīng)對?如何應(yīng)對?解答解答1:鏈?zhǔn)絻?yōu)先權(quán)排隊(duì)電路鏈?zhǔn)絻?yōu)先權(quán)排隊(duì)電路解答解答2:優(yōu)先權(quán)編碼電路優(yōu)先權(quán)編碼電路解答解答3:軟件查詢軟件查詢中斷嵌套中斷嵌套當(dāng)當(dāng)CPU響應(yīng)某一中斷時,若有優(yōu)先權(quán)高的中斷源發(fā)出中響應(yīng)某一中斷時,若有優(yōu)先權(quán)高的中斷源發(fā)出中斷請求,則斷請求,則CPU能中斷正在進(jìn)行的中斷服務(wù)程序,并能中斷正在進(jìn)行的中斷服務(wù)程序,并保留這個程序
41、的斷點(diǎn)(類似于子程序嵌套),響應(yīng)高保留這個程序的斷點(diǎn)(類似于子程序嵌套),響應(yīng)高級中斷,高級中斷處理結(jié)束以后,再繼續(xù)進(jìn)行被中斷級中斷,高級中斷處理結(jié)束以后,再繼續(xù)進(jìn)行被中斷的中斷服務(wù)程序,這個過程稱為中斷嵌套的中斷服務(wù)程序,這個過程稱為中斷嵌套。第第6章:章:6.4.3 中斷優(yōu)先權(quán)中斷優(yōu)先權(quán)(續(xù)(續(xù)2)問題問題3 3:中斷處理過程中,:中斷處理過程中,又有中斷提出請求,怎么辦?又有中斷提出請求,怎么辦?解答解答1:鏈?zhǔn)絻?yōu)先權(quán)排隊(duì)電路鏈?zhǔn)絻?yōu)先權(quán)排隊(duì)電路解答解答2:優(yōu)先權(quán)編碼電路優(yōu)先權(quán)編碼電路第第6章:章:6.5 DMA傳送方式傳送方式3、 DMA傳送方式傳送方式希望克服程序控制傳送的不足:希望克
42、服程序控制傳送的不足:外設(shè)外設(shè)CPU存儲器存儲器外設(shè)外設(shè)CPU存儲器存儲器直接存儲器存取直接存儲器存取DMA:外設(shè)外設(shè)存儲器存儲器外設(shè)外設(shè)存儲器存儲器CPU釋放總線,由釋放總線,由DMA控制器管理控制器管理第第6章:傳送方式的比較章:傳送方式的比較4 4、傳送方式的比較、傳送方式的比較無條件傳送無條件傳送:慢速外設(shè)需與:慢速外設(shè)需與CPUCPU保持同步保持同步查詢傳送查詢傳送: 簡單實(shí)用,效率較低簡單實(shí)用,效率較低中斷傳送中斷傳送:外設(shè)主動,可與:外設(shè)主動,可與CPUCPU并行工作,并行工作,但每次傳送需要大量額外時間開銷但每次傳送需要大量額外時間開銷 DMADMA傳送傳送:DMACDMAC控制,外設(shè)直接和存儲器控制,外設(shè)直接和存儲器進(jìn)行數(shù)據(jù)傳送,適合大量、快速數(shù)據(jù)傳進(jìn)行數(shù)據(jù)傳送,適合大量、快速數(shù)據(jù)傳送送6.3 6.3 簡單接口電路的擴(kuò)展簡單接口電路的擴(kuò)展例例1 1 邏輯門電路進(jìn)行邏輯門電路進(jìn)行I/OI/O地址譯碼地址譯碼A9A8A7A6A5A2A4A3AENA1A074LS033E7HA9 A8 A7 A6 A5 A21 1 1 1 1 1A4 A30 0A
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 綏化智能小區(qū)管理辦法
- 繼續(xù)教育學(xué)院管理辦法
- 育嬰師職業(yè)道德培訓(xùn)課件
- 肩周炎中醫(yī)講座課件
- 機(jī)房安全管理培訓(xùn)課件
- 復(fù)印五年級數(shù)學(xué)試卷
- 阜陽一模高三數(shù)學(xué)試卷
- 東營三模高考數(shù)學(xué)試卷
- 高三五調(diào)數(shù)學(xué)試卷
- 高起本高等數(shù)學(xué)試卷
- 交通事故責(zé)任認(rèn)定書模板
- 設(shè)備運(yùn)行狀態(tài)實(shí)時監(jiān)測系統(tǒng)
- 深圳市企業(yè)職工養(yǎng)老保險養(yǎng)老金申請表
- DLT1249-2013 架空輸電線路運(yùn)行狀態(tài)評估技術(shù)導(dǎo)則
- 業(yè)主項(xiàng)目部項(xiàng)目管理策劃
- 劍橋Think第一級Unit+1+Welcome課件
- 基于水凝膠模板原位合成磷酸鈣類骨組織修復(fù)材料及表征
- 畜牧獸醫(yī)畢業(yè)論文名字
- 報(bào)告流動式起重機(jī)械定期檢驗(yàn)自檢報(bào)告
- 系統(tǒng)規(guī)劃與管理師-輔助記憶口訣
- 預(yù)防接種異常反應(yīng)監(jiān)測與處理
評論
0/150
提交評論