A. I/O介面是什麼
器的連接和數據交換都需要通過介面設備來實現,前者被稱為I/O介面,而後者則被稱為存儲器介面。存儲器通常在CPU的同步控制下工作,介面電路比較簡單;而I/O設備品種繁多,其相應的介面電路也各不相同,因此,習慣上說到介面只是指I/O介面。
一、I/0介面的概念
1、介面的分類
I/O介面的功能是負責實現CPU通過系統匯流排把I/O電路和 外圍設備聯系在一起,按照電路和設備的復雜程度,I/O介面的硬體主要分為兩大類:
(1)I/O介面晶元
這些晶元大都是集成電路,通過CPU輸入不同的命令和參數,並控制相關的I/O電路和簡單的外設作相應的操作,常見的介面晶元如定時/計數器、中斷控制器、DMA控制器、並行介面等。
(2)I/O介面控制卡
有若干個集成電路按一定的邏輯組成為一個部件,或者直接與CPU同在主板上,或是一個插件插在系統匯流排插槽上。
按照介面的連接對象來分,又可以將他們分為串列介面、並行介面、鍵盤介面和磁碟介面等。
2、介面的功能
由於計算機的外圍設備品種繁多,幾乎都採用了機電傳動設備,因此,CPU在與I/O設備進行數據交換時存在以下問題:
速度不匹配:I/O設備的工作速度要比CPU慢許多,而且由於種類的不 同,他們之間的速度差異也很大,例如硬碟的傳輸速度就要比列印機快出很多。
時序不匹配:各個I/O設備都有自己的定時控制電路,以自己的速度傳 輸數據,無法與CPU的時序取得統一。
信息格式不匹配:不同的I/O設備存儲和處理信息的格式不同,例如可以分為串列和並行兩種;也可以分為二進制格式、ACSII編碼和BCD編碼等。
信息類型不匹配:不同I/O設備採用的信號類型不同,有些是數字信號,而 有些是模擬信號,因此所採用的處理方式也不同。
基於以上原因,CPU與外設之間的數據交換必須通過介面來完成,通常介面有以下一些功能:
(1)設置數據的寄存、緩沖邏輯,以適應CPU與外設之間的速度差異,介面通常由一些寄存器或RAM晶元組成,如果晶元足夠大還可以實現批量數據的傳輸;
(2)能夠進行信息格式的轉換,例如串列和並行的轉換;
(3)能夠協調CPU和外設兩者在信息的類型和電平的差異,如電平轉換驅動器、數/模或模/數轉換器等;
(4)協調時序差異;
(5)地址解碼和設備選擇功能;
(6)設置中斷和DMA控制邏輯,以保證在中斷和DMA允許的情況下產生中斷和DMA請求信號,並在接受到中斷和DMA應答之後完成中斷處理和DMA傳輸。
3、介面的控制方式
CPU通過介面對外設進行控制的方式有以下幾種:
(1)程序查詢方式
這種方式下,CPU通過I/O指令詢問指定外設當前的狀態,如果外設准備就緒,則進行數據的輸入或輸出,否則CPU等待,循環查詢。
這種方式的優點是結構簡單,只需要少量的硬體電路即可,缺點是由於CPU的速度遠遠高於外設,因此通常處於等待狀態,工作效率很低
(2)中斷處理方式
在這種方式下,CPU不再被動等待,而是可以執行其他程序,一旦外設為數據交換准備就緒,可以向CPU提出服務請求,CPU如果響應該請求,便暫時停止當前程序的執行,轉去執行與該請求對應的服務程序,完成後,再繼續執行原來被中斷的程序。
中斷處理方式的優點是顯而易見的,它不但為CPU省去了查詢外設狀態和等待外設就緒所花費的時間,提高了CPU的工作效率,還滿足了外設的實時要求。但需要為每個I/O設備分配一個中斷請求號和相應的中斷服務程序,此外還需要一個中斷控制器(I/O介面晶元)管理I/O設備提出的中斷請求,例如設置中斷屏蔽、中斷請求優先順序等。
此外,中斷處理方式的缺點是每傳送一個字元都要進行中斷,啟動中斷控制器,還要保留和恢復現場以便能繼續原程序的執行,花費的工作量很大,這樣如果需要大量數據交換,系統的性能會很低。
(3)DMA(直接存儲器存取)傳送方式
DMA最明顯的一個特點是它不是用軟體而是採用一個專門的控制器來控制內存與外設之間的數據交流,無須CPU介入,大大提高CPU的工作效率。
在進行DMA數據傳送之前,DMA控制器會向CPU申請匯流排控制 權,CPU如果允許,則將控制權交出,因此,在數據交換時,匯流排控制權由DMA控制器掌握,在傳輸結束後,DMA控制器將匯流排控制權交還給CPU。
二、常見介面
1、並行介面
目前,計算機中的並行介面主要作為列印機埠,介面使用的不再是36針接頭而是25針D形接頭。所謂「並行」,是指8位數據同時通過並行線進行傳送,這樣數據傳送速度大大提高,但並行傳送的線路長度受到限制,因為長度增加,干擾就會增加,容易出錯。
現在有五種常見的並口:4位、8位、半8位、EPP和ECP,大多數PC機配有4位或8位的並口,許多利用Intel386晶元組的便攜機配有EPP口,支持全部IEEE1284並口規格的計算機配有ECP並口。
標准並行口4位、8位、半8位:4位口一次只能輸入4位數據,但可以輸出8位數據;8位口可以一次輸入和輸出8位數據;半8位也可以。
EPP口(增強並行口):由Intel等公司開發,允許8位雙向數據傳送,可以連接各種非列印機設備,如掃描儀、LAN適配器、磁碟驅動器和CDROM 驅動器等。
ECP口(擴展並行口):由Microsoft、HP公司開發,能支持命令周期、數據周期和多個邏輯設備定址,在多任務環境下可以使用DMA(直接存儲器 訪問)。
目前幾乎所有的586機的主板都集成了並行口插座,標注為 Paralle1或LPT1,是一個26針的雙排針插座。
2、串列介面
計算機的另一種標准介面是串列口,現在的PC機一般至少有兩個串列口COM1和COM2。串列口不同於並行口之處在於它的數據和控制信息是一位接一位串列地傳送下去。這樣,雖然速度會慢一些,但傳送距離較並行口更長,因此長距離的通信應使用串列口。通常COM1使用的是9針D形連接器,而COM2有些使 用的是老式的DB25針連接器。
3、磁碟介面
(1)IDE介面
IDE介面也叫做ATA埠,只可以接兩個容量不超過528M的硬碟驅動器,介面的成本很低,因此在386、486時期非常流行。但大多數IDE介面不支持DMA數據傳送,只能使用標準的PCI/O埠指令來傳送所有的命令、狀態、數據。幾乎所有的586主板上都集成了兩個40針的雙排針IDE介面插座,分別標注為IDE1和IDE2。
(2)EIDE介面
EIDE介面較IDE介面有了很大改進,是目前最流行的介面。首先,它所支持的外設不再是2個而是4個了,所支持的設備除了硬碟,還包括CD-ROM驅動器磁碟備份設備等。其次,EIDE標准取消了528MB的限制,代之以8GP限制。第三,EIDE有更高的數據傳送速率,支持PIO模式3和模式4標准。
4、SCSI介面
SCSI(SmallComputerSystemInterface)小計算機系統介面,在做圖形處理和網路服務的計算機中被廣泛採用SCSI介面的硬碟。除了硬碟以外,SCSI介面還可以連接CD-ROM驅動器、掃描儀和列印機等,它具有以下特點:
可同時連接7個外設;
匯流排配置為並行8位、16位或32位;
允許最大硬碟空間為8.4GB(有些已達到9.09GB);
更高的數據傳輸速率,IDE是2MB每秒,SCSI通常可以達到5MB每秒,FASTSCSI(SCSI-2)能達到10MB每秒,最新的SCSI-3甚至能夠達到40MB每秒,而EIDE最高只能達到16.6MB每秒;
成本較IDE和EIDE介面高很多,而且,SCSI介面硬碟必須和SCSI介面卡配合使用,SCSI介面卡也比IED和EIDE介面貴很多。
SCSI介面是智能化的,可以彼此通信而不增加CPU的負擔。在IDE和EIDE設備之間傳輸數據時,CPU必須介入,而SCSI設備在數據傳輸過程中起主動作用,並能在SCSI匯流排內部具體執行,直至完成再通知CPU。
5、USB介面
最新的USB串列介面標準是由Microsoft、Intel、Compaq、IBM等大公司共同推出,它提供機箱外的熱即插即用連接,用戶在連接外設時不用再打開機箱、關閉電源,而是採用「級聯」方式,每個USB設備用一個USB插頭連接到一個外設的USB插座上,而其本身又提供一個USB插座給下一個USB設備使用,通過 這種方式的連接,一個USB控制器可以連接多達127個外設,而每個外設間的距離可達5米。USB統一的4針圓形插頭將取代機箱後的眾多的串/並口(滑鼠、MODEM)鍵盤等插頭。USB能智能識別USB鏈上外圍設備的插入或拆卸。 除了能夠連接鍵盤、滑鼠等,USB還可以連接ISDN、電話系統、數字音響、列印機以及掃描儀等低速外設。
三、I/O擴展槽
I/O擴展槽即I/O信號傳輸的路徑,是系統匯流排的延伸,可以插入任意的標准選件,如顯示卡、解壓卡、MODEM卡和音效卡等。通過I/O擴展槽,CPU可對連接到該通道的所有I/O介面晶元和控制卡定址訪問,進行讀寫。
根據匯流排的類型不同,主板上的擴展槽可分為ISA、EISA、MAC、VESA和PCI幾種。
(1)ISA插槽
黑色,分為8位、16位兩種。16位的擴展槽可以插8位和16位的控制卡,但8位的擴展槽只能插8位卡。
(2)EISA插槽
棕色,外型、長度與16位的ISA卡一樣,但深度較大,可插入ISA與EISA控制卡。
(3)VESA插槽
棕色,位於16位ISA擴展插槽的下方,與ISA插槽配合使用。
(4)PCI插槽
白色,與VESA插槽一樣長,與ISA插槽平行,不需要與ISA插槽配合使用,而且只能插入PCI控制卡。由於主板的空間有限,PCI插槽要佔用ISA插槽的位置
參考資料: