IO接口的作用?
I/O接口是一電子電路(以IC芯片或接口板形式出現(xiàn)
),其內(nèi)有若干專用寄存器和相應(yīng)的控制邏輯電路構(gòu)成.它是CPU和I/O設(shè)備之間交換信息的媒介和橋梁.CPU與外部設(shè)備、存儲(chǔ)器的連接和數(shù)據(jù)交換都需要通過接口設(shè)備來實(shí)現(xiàn),前者被稱為I/O接口,而后者則被稱為存儲(chǔ)器接口。存儲(chǔ)器通常在CPU的同步控制下工作,接口電路比較簡單;而I/O設(shè)備品種繁多,其相應(yīng)的接口電路也各不相同,因此,習(xí)慣上說到接口只是指I/O接口。
接口功能
由于計(jì)算機(jī)的外圍設(shè)備品種繁多,幾乎都采用了機(jī)電傳動(dòng)設(shè)備,因此,CPU在與I/O設(shè)備進(jìn)行數(shù)據(jù)交換時(shí)存在以下問題:
速度不匹配:I/O設(shè)備的工作速度要比CPU慢許多,而且由于種類的不
同,他們之間的速度差異也很大,例如硬盤的傳輸速度就要比打印機(jī)快出很多。
時(shí)序不匹配:各個(gè)I/O設(shè)備都有自己的定時(shí)控制電路,以自己的速度傳
輸數(shù)據(jù),無法與CPU的時(shí)序取得統(tǒng)一。
信息格式不匹配:不同的I/O設(shè)備存儲(chǔ)和處理信息的格式不同,例如可以分為串行和并行兩種;也可以分為二進(jìn)制格式、ACSII編碼和BCD編碼等。
信息類型不匹配:不同I/O設(shè)備采用的信號(hào)類型不同,有些是數(shù)字信號(hào),而
有些是模擬信號(hào),因此所采用的處理方式也不同。
基于以上原因,CPU與外設(shè)之間的數(shù)據(jù)交換必須通過接口來完成,通常接口有以下一些功能:
(1)設(shè)置數(shù)據(jù)的寄存、緩沖邏輯,以適應(yīng)CPU與外設(shè)之間的速度差異,接口通常由一些寄存器或RAM芯片組成,如果芯片足夠大還可以實(shí)現(xiàn)批量數(shù)據(jù)的傳輸;
(2)能夠進(jìn)行信息格式的轉(zhuǎn)換,例如串行和并行的轉(zhuǎn)換;
(3)能夠協(xié)調(diào)CPU和外設(shè)兩者在信息的類型和電平的差異,如電平轉(zhuǎn)換驅(qū)動(dòng)器、數(shù)/模或模/數(shù)轉(zhuǎn)換器等;
(4)協(xié)調(diào)時(shí)序差異;
(5)地址譯碼和設(shè)備選擇功能;
(6)設(shè)置中斷和DMA控制邏輯,以保證在中斷和DMA允許的情況下產(chǎn)生中斷和DMA請求信號(hào),并在接受到中斷和DMA應(yīng)答之后完成中斷處理和DMA傳輸。