微機原理及接口_第1頁
微機原理及接口_第2頁
微機原理及接口_第3頁
微機原理及接口_第4頁
微機原理及接口_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第7章章 I/O接口總論接口總論7.1 I/O接口概述接口概述7.2 I/O端口端口7.3 CPU與外設間的數據傳送方式與外設間的數據傳送方式7.1 I/O接口概述接口概述一、一、I/O接口及接口技術的概念接口及接口技術的概念接口:接口:指指CPU和存儲器、外部設備或者兩種外部設備之間,或和存儲器、外部設備或者兩種外部設備之間,或者兩種機器之間通過系統總線進行連接的邏輯部件(或稱電路者兩種機器之間通過系統總線進行連接的邏輯部件(或稱電路),它是),它是CPU與外界進行信息交換的中轉站。與外界進行信息交換的中轉站。接口技術:接口技術:是專門研究是專門研究CPU與外部設備之間的數據傳送方式、與外

2、部設備之間的數據傳送方式、接口電路工作原理和使用方法的一門技術,其采用硬件與軟件接口電路工作原理和使用方法的一門技術,其采用硬件與軟件相結合的方法,研究相結合的方法,研究CPU如何與外部設備進行最佳耦合,以便如何與外部設備進行最佳耦合,以便在在CPU與外部設備之間實現高效、可靠的信息交換。與外部設備之間實現高效、可靠的信息交換。7.1 I/O接口概述接口概述CPU與外部設備之間交換的信息類型:與外部設備之間交換的信息類型:1.數據信息數據信息 數據是數據是CPU與外部設備之間交換最多的一類信息,微機中的與外部設備之間交換最多的一類信息,微機中的數據通常為數據通常為8位、位、16位或位或32位。

3、位。2.狀態(tài)信息狀態(tài)信息 狀態(tài)信息反映了當前外部設備的工作狀態(tài),是狀態(tài)信息反映了當前外部設備的工作狀態(tài),是CPU與外部設與外部設備之間進行信息交換時的聯絡信號。備之間進行信息交換時的聯絡信號。3.控制信息控制信息 控制信息是控制信息是CPU對外部設備發(fā)出的控制命令,以設置外部設對外部設備發(fā)出的控制命令,以設置外部設備的工作方式等。備的工作方式等。7.1 I/O接口概述接口概述二、二、I/O接口的主要功能接口的主要功能1地址譯碼或設備選擇功能地址譯碼或設備選擇功能 在微型計算機系統中通常會有多個外部設備同時與主機相連在微型計算機系統中通常會有多個外部設備同時與主機相連,而,而CPU在同一時刻只能

4、與一個外部設備進行數據傳送。因此在同一時刻只能與一個外部設備進行數據傳送。因此I/O接口電路應該能夠通過地址譯碼選擇相應設備,只有被選中接口電路應該能夠通過地址譯碼選擇相應設備,只有被選中的設備才能與的設備才能與CPU進行數據交換或通信。進行數據交換或通信。2數據緩沖功能數據緩沖功能 外部設備的數據處理速度通常都遠遠低于外部設備的數據處理速度通常都遠遠低于CPU的數據處理速的數據處理速度,因此在度,因此在CPU與外部設備間進行交換數據時,為了避免因速與外部設備間進行交換數據時,為了避免因速度不匹配而導致數據丟失,在接口電路中一般都設有數據寄存度不匹配而導致數據丟失,在接口電路中一般都設有數據寄

5、存器或鎖存器來緩沖數據信息,同時還提供器或鎖存器來緩沖數據信息,同時還提供“準備好準備好”、“忙忙”、“閑閑”等狀態(tài)信號,以便向等狀態(tài)信號,以便向CPU報告外部設備的工作狀態(tài)。報告外部設備的工作狀態(tài)。7.1 I/O接口概述接口概述3輸入輸入/輸出功能輸出功能 外部設備通過外部設備通過I/O接口電路實現與接口電路實現與CPU之間的信息交換,之間的信息交換,CPU通過向通過向I/O接口寫入命令控制其工作方式,通過讀入命令可接口寫入命令控制其工作方式,通過讀入命令可以隨時監(jiān)測、管理以隨時監(jiān)測、管理I/O接口和外部設備的工作狀態(tài)。接口和外部設備的工作狀態(tài)。4信息轉換功能信息轉換功能 由于外部設備所需要

6、的信息格式往往與由于外部設備所需要的信息格式往往與CPU的信息格式不一的信息格式不一致,因此需要接口電路能夠進行相應的信息格式變換。如正負致,因此需要接口電路能夠進行相應的信息格式變換。如正負邏輯關系轉換、時序配合上的轉換、電平匹配轉換、串邏輯關系轉換、時序配合上的轉換、電平匹配轉換、串 并行并行轉換等。轉換等。7.1 I/O接口概述接口概述三、三、I/O接口的基本結構與分類接口的基本結構與分類1I/O接口的基本結構接口的基本結構 I/O接口一般都由接口一般都由端口寄存器端口寄存器和和控制邏輯控制邏輯兩大部分組成,每兩大部分組成,每部分又包含幾個基本模塊,如圖部分又包含幾個基本模塊,如圖7.2

7、所示。所示。7.1 I/O接口概述接口概述2接口分類接口分類 I/O接口電路從不同角度可分為以下接口電路從不同角度可分為以下4種。種。(1)按數據傳送方式分類,可分為并行接口和串行接口;)按數據傳送方式分類,可分為并行接口和串行接口;(2)按功能選擇的靈活性分類,可分為可編程接口和不可編程)按功能選擇的靈活性分類,可分為可編程接口和不可編程接口;接口;(3)按通用性分類,可分為通用接口和專用接口;)按通用性分類,可分為通用接口和專用接口;(4)按數據控制方式分類,可分為程序型接口和)按數據控制方式分類,可分為程序型接口和DMA型接口。型接口。 近年來,由于大規(guī)模集成電路和計算機技術的發(fā)展,近年

8、來,由于大規(guī)模集成電路和計算機技術的發(fā)展,I/O接接口電路大多采用大規(guī)模、超大規(guī)模集成電路,并向智能化、系口電路大多采用大規(guī)模、超大規(guī)模集成電路,并向智能化、系列化和一體化方向發(fā)展。列化和一體化方向發(fā)展。7.2 I/O端口端口 每個接口電路內部都有若干個寄存器,分別用來存儲不同每個接口電路內部都有若干個寄存器,分別用來存儲不同類型的信息。一般稱這些寄存器為類型的信息。一般稱這些寄存器為I/O端口(端口(PORT),每個端),每個端口對應一個口對應一個I/O端口地址。端口地址。數據端口:數據端口:數據緩沖寄存器用來存儲數據緩沖寄存器用來存儲CPU與外部設備之間傳送與外部設備之間傳送的數據信息。的

9、數據信息。狀態(tài)端口:狀態(tài)端口:狀態(tài)寄存器用來存放外部設備或接口部件的狀態(tài),狀態(tài)寄存器用來存放外部設備或接口部件的狀態(tài),CPU通過狀態(tài)端口來檢測外部設備和接口部件的當前工作狀態(tài)通過狀態(tài)端口來檢測外部設備和接口部件的當前工作狀態(tài)??刂贫丝冢嚎刂贫丝冢嚎刂萍拇嫫饔糜诖娣趴刂萍拇嫫饔糜诖娣臗PU發(fā)出的命令,以便控制接發(fā)出的命令,以便控制接口和外部設備的動作??诤屯獠吭O備的動作。 CPU與外部設備之間的信息傳送就是通過對與外部設備之間的信息傳送就是通過對I/O接口的端口接口的端口地址進行讀寫操作來完成的。如何實現對這些端口的訪問,就地址進行讀寫操作來完成的。如何實現對這些端口的訪問,就是所謂是所謂I/O

10、端口尋址問題。端口尋址問題。7.2 I/O端口端口一、一、I/O端口的編址方式端口的編址方式1統一編址統一編址 統一編址就是將統一編址就是將I/O端口地址與存儲單元一起編址,端口地址與存儲單元一起編址,I/O端口端口占用部分內存地址空間,占用部分內存地址空間,I/O端口可看作是存儲器的一部分。端口可看作是存儲器的一部分。優(yōu)點:優(yōu)點:由于使用訪問存儲器的指令訪問由于使用訪問存儲器的指令訪問I/O端口,因而指令類型端口,因而指令類型多,功能齊全。多,功能齊全。缺點:缺點:端口占用了部分存儲器地址空間,使存儲器容量減少;端口占用了部分存儲器地址空間,使存儲器容量減少; 指令長度比專門的指令長度比專門

11、的I/O指令要長,因而執(zhí)行時間較長;指令要長,因而執(zhí)行時間較長; 由于訪問存儲器的指令和訪問由于訪問存儲器的指令和訪問I/O端口的指令形式上完全端口的指令形式上完全相同,也不易于程序的閱讀和理解。相同,也不易于程序的閱讀和理解。7.2 I/O端口端口2獨立編址獨立編址 獨立編址方式是指獨立編址方式是指I/O端口地址和存儲單元地址各自獨立編端口地址和存儲單元地址各自獨立編址,如址,如80 x86 CPU系統就是采用了這種編址方式。對系統就是采用了這種編址方式。對I/O端口的端口的操作使用輸入操作使用輸入/輸出指令輸出指令IN和和OUT。 優(yōu)點優(yōu)點:在于在于I/O端口地址不占用存儲器空間,而且有專

12、門的端口地址不占用存儲器空間,而且有專門的I/O指令對端口進行操作,指令對端口進行操作,I/O指令短,執(zhí)行速度快,同時指令短,執(zhí)行速度快,同時I/O指令指令與存儲器訪問指令有明顯的區(qū)別,便于程序的閱讀和理解。與存儲器訪問指令有明顯的區(qū)別,便于程序的閱讀和理解。缺點缺點:是訪問是訪問I/O端口的指令功能較弱,一些操作必須由端口的指令功能較弱,一些操作必須由I/O設設備先輸入到備先輸入到CPU的寄存器后才能進行。的寄存器后才能進行。7.2 I/O端口端口二、二、I/O指令指令1輸入指令輸入指令(1)直接尋址的輸入指令指令格式及操作:IN AL/AX,PORT該指令把8位或16位的數據直接由輸入端口

13、PORT(地址為0255)輸入到AL或AX寄存器中。例如:IN AL,0FFH ; 從字節(jié)端口0FFH讀一個字節(jié)到AL中(2)間接尋址的輸入指令 指令格式及操作:IN AL/AX,DX該指令把8位或16位的數據由DX寄存器指定的端口地址輸入到AL或AX寄存器中。例如:MOV DX,300HIN AX,DX; 從字節(jié)端口300H讀一個字節(jié)到AX中7.2 I/O端口端口2輸出指令輸出指令(1)直接尋址的輸出指令指令格式及操作:OUT PORT,AL/AX該指令把AL(8位)或AX(16位)的數據直接輸出到PORT指定的輸出端口地址(0255)。例如:OUT 80H,AL ; 把AL的內容寫到端口8

14、0H中(2)間接尋址的輸出指令 指令格式及操作:OUT DX,AL/AX該指令把AL(8位)或AX(16位)的數據送到由DX寄存器指定的輸出端口。例如:MOV DX,310HOUT DX,AL ; 把AL的內容寫到端口310H中7.2 I/O端口端口四、四、I/O端口地址譯碼端口地址譯碼 I/O端口地址譯碼的方法有多種。一般譯碼原則是把地址分為兩部分: 一部分是高位地址線與CPU的控制信號組合,通過譯碼產生I/O接口芯片的片選信號,實現片間尋址; 另一部分是低位地址線直接連到I/O接口芯片,實現片內尋址,即訪問片內寄存器。片內地址線片內地址線的連接比較簡單,只需要將芯片的地址輸入線與系統地址總

15、線的相應片內地址線一一相連即可;片選地址線片選地址線的連接比較復雜,有多種地址譯碼方式。通常按譯碼電路的形式可分為固定式固定式和可選式可選式譯碼。7.2 I/O端口端口1. 固定式端口地址譯碼固定式端口地址譯碼固定式譯碼:是指接口中用到的端口地址由硬件連線決定,不能更改。這種譯碼方式多用于不需改變端口地址的場合,當只需要一個端口地址時,可采用門電路構成譯碼電路。例如,設計一個“讀2F8H端口”的電路,其電路如圖7.3所示。7.2 I/O端口端口 當接口電路中需要多個端口地址時,一般采用譯碼器進行譯碼。譯碼器的種類很多,常用的譯碼器有2-4譯碼器74LS139、3-8譯碼器74LS138、4-1

16、6譯碼器74LS154等。如圖7.4所示的是IBM-PC機中采用74LS138譯碼產生I/O地址的邏輯圖。7.2 I/O端口端口2. 開關式可選地址譯碼開關式可選地址譯碼當系統要求I/O接口芯片的地址能適應不同場合的地址分配或需要為系統以后擴展留有余地時,常常采用開關式可選地址譯碼方式。這種譯碼方式可以通過開關使接口卡的I/O端口地址根據要求加以改變而無需改動線路,其電路結構形式有兩種。7.2 I/O端口端口(1)直接使用撥動開關或跳接開關在地址譯碼的基礎上,通過線路板上的微型撥動開關DIP或跳接開關連接,使得某個特定的I/O端口在一組地址中選定當前所使用的譯碼地址,從而增加地址譯碼的靈活性。

17、如圖7.5所示的是IBM-PC中兩個異步通信接口COM1和COM2的地址譯碼電路。當跳接開關U15接4、8兩點時,地址范圍為3F8H3FFH,選中COM1為當前串行口適配器;當跳接開關U15接2、6兩點時,地址范圍為2F8H2FFH,選中COM2為當前串行口適配器。7.2 I/O端口端口(2)使用地址開關加比較器在開關式可選地址譯碼電路中,一種更靈活的方法是采用地址開關加比較器的形式,如圖7.6所示。圖中由比較器74LS688和3-8譯碼器組成可選式譯碼電路。其中關鍵器件是比較器74LS688,它有兩組輸入端P7P0和Q7Q0,一個輸出端。其規(guī)則為:當P7P0=Q7Q0時,輸出低電平 當P7P

18、0Q7Q0時,輸出高電平7.3 CPU與外設間的數據傳送方式與外設間的數據傳送方式一、一、程序控制傳送方式程序控制傳送方式 程序控制傳送方式是由程序直接控制外部設備與CPU之間的數據傳送過程,通常是在需要進行數據傳送時由用戶在程序中安排執(zhí)行一系列由I/O指令組成的程序段,直接控制外部設備的工作。由于數據的交換是由相應程序段完成的,因此需要在編寫程序之前預先知道何時進行這種數據交換工作。根據外部設備的特點,程序控制傳送方式又可以分為無條件傳送方式和條件傳送(程序查詢傳送)方式。7.3 CPU與外設間的數據傳送方式與外設間的數據傳送方式1無條件傳送方式無條件傳送方式無條件傳送(又稱為同步傳送)是一

19、種最簡單的程序控制傳送方式。當CPU能夠確信一個外部設備已經準備就緒時,可以不必查詢外部設備的狀態(tài)而直接進行信息傳送。這種方式較少使用,一般只用于如開關、數碼管等一些較簡單的外部設備控制。7.3 CPU與外設間的數據傳送方式與外設間的數據傳送方式2條件傳送方式條件傳送方式條件傳送方式也稱為程序查詢傳送方式,在這種方式下,CPU在傳送數據之前,不斷讀取并檢測外部設備的狀態(tài)。當外部設備的狀態(tài)信息滿足條件時才進行數據傳送,否則CPU就一直等待直到外部設備的狀態(tài)條件滿足。7.3 CPU與外設間的數據傳送方式與外設間的數據傳送方式采用查詢式輸入/輸出傳送數據一般需要以下三個步驟,其工作過程如圖7.10所

20、示。(1)從外部設備的狀態(tài)端口讀入狀態(tài)信息到CPU相應寄存器;(2)通過檢測狀態(tài)信息中的相應狀態(tài)位,判斷外部設備是否“準備就緒”;(3)如果外部設備已經“準備就緒”,則開始傳送數據;如果外部設備沒有“準備就緒”,則重復執(zhí)行(1)、(2)步,直到外部設備“準備就緒”。7.3 CPU與外設間的數據傳送方式與外設間的數據傳送方式二、二、中斷傳送方式中斷傳送方式 中斷方式基本思想中斷方式基本思想是當外部設備準備就緒(輸入設備將數據準備好或輸出設備可以接收數據)時,就會主動向CPU發(fā)出中斷請求,使CPU中斷當前正在執(zhí)行的程序,轉去執(zhí)行輸入/輸出中斷服務程序進行數據傳送,傳送完畢后再返回原來的斷點處繼續(xù)執(zhí)

21、行。 一定程度上實現了CPU與外部設備的并行工作并行工作,提高了CPU的利用率。同時,當有多個外部設備時,CPU只需把它們依次啟動,就可以使它們同時進行數據傳送的準備。若在某一時刻有多個外部設備同時向CPU提出中斷請求,則CPU按照預先規(guī)定好的優(yōu)先級順序,依次處理這幾個外部設備的數據傳送請求,從而實現了外部設備的并行工作。7.3 CPU與外設間的數據傳送方式與外設間的數據傳送方式7.3 CPU與外設間的數據傳送方式與外設間的數據傳送方式三、三、DMA傳送方式傳送方式 所謂DMA(Direct Memory Access,直接存儲器訪問)傳送方式就是在不需要CPU參與的情況下,在外部設備與存儲器之間開辟直接的數據交換通路,由專門的硬件DMAC(DMA Controll

溫馨提示

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

評論

0/150

提交評論