I/O匯流排

I/O匯流排

I/O匯流排指纜線和連線器系統,用來傳輸I/O路徑技術指定的數據和控制信號,另外還包括一個匯流排終結電阻或電路,這個終結電阻用來減弱電纜上的信號反射干擾

主機和I/O設備之前通過匯流排連線,這個匯流排一般被稱為I/O匯流排。

基本介紹

  • 中文名:I/O匯流排
  • 外文名:I / O bus
  • 學科範疇:計算機組成原理
  • 釋義:連線CPU與I/O設備的匯流排
  • 傳輸信號:數據、地址、控制信號
  • 數據傳輸方式:程式查詢、程式中斷、DMA、通道
常見類型,匯流排方式,標準接口,PCI,SCSI,USB,I/O方式,程式查詢方式,程式中斷方式,DMA方式,通道方式,

常見類型

ISA(Industry Standard Architecture)工業標準體系結構匯流排.
EISA(Extension Industry Standard Architecture)擴展標準體系結構匯流排.
MCA(Micro Channel)微通道匯流排.
此外,為了解決CPU與高速外設之間傳輸速度慢的"瓶頸"問題,出現了兩種局部匯流排,它們是:
VESA(Video Electronic Standards Association)視頻電子標準協會局部匯流排,簡稱VL匯流排.
PCI(Peripheral Component Interconnect)外圍部件互連局部匯流排,簡稱PCI匯流排. 486級的主機板多採用VL匯流排,而奔騰主機板多採用PCI匯流排。 目前,繼PCI之後又開發了更外圍的接口匯流排,它們是:USB(Universal Serial Bus)通用串列匯流排。IEEE1394(美國電氣及電子工程師協會1394標準)俗稱"火線(Fire Ware)"。

匯流排方式

用來傳輸數據的匯流排線路可以分為三個類型:數據線、地址線和控制線。其中控制信號一般包括:同步時序信號或應答信號、數據傳送控制信號(如地址有效、讀寫控制、M/IO選擇)、中斷請求及回響信號、DMA請求及回響信號等。控制信號說明是否執行讀或寫操作。通常,使用單根
線來傳送控制信號,當它被置1時表示進行讀操作,被置0時表示進行寫操作。在允許傳輸不同長度的運算元時,如位元組、字或長字,數據的長度也被顯示出來。
匯流排控制信號還要傳送時序信息。這些信息詳細說明何時處理器和I/O設備可以將數據放到匯流排上或從匯流排上接收數據。目前有多種傳輸數據的方式,大致可以將他們分為同步和異步兩種方式。

標準接口

計算機匯流排有多種可選擇的設計,這種多樣性意味著配備著有這種接口電路的I/O設備適用於一台計算機不一定就適用與另外一台計算機。因此,每一種I/O設備與計算機的連線可能都需要設計一種不同的接口,這樣就會產生很多不同的接口。最符合實際的解決方法就是開發出標準的接口信號和協定。
匯流排結構與處理器結構密切相關,而且還依賴於處理器晶片的電氣特性,所以不可能為處理器匯流排定義一個統一標準。但拓展匯流排就沒有這些限制了,因此可以使用標準的信號方式。事實上,已經有I/O匯流排的標準被制定出來了。其中有些是默認的,當特定的設計在商業上取得成功時,這些設計就成為了事實上的標準。例如,IBM為它的個人計算機PC AT開發的匯流排ISA(工業標準體系結構),由於這種計算機的流行導致其他製造商為他們的I/O設備生產出與ISA兼容的接口,這樣ISA就成為了事實上的標準。
還有一些標準是行業共同協作開發的,由於在兼容產品上的共同切身利益,即使那些互相競爭的公司也參與了標準的開發。IEEE(電氣和電子工程師協會)、ANSI(美國國家標準學會)等組織寄一些國際組織如ISO(國際標準化組織)已經承認了這些標準,並授予他們官方的地位。
一台計算機使用的標準可能不止一個,如典型的Pentium計算機有PCI和ISA兩種匯流排以提供大範圍的設備給用戶選擇。
下面來簡單介紹三種廣泛使用的標準。

PCI

(外圍部件互連)
PCI標準定義了主機板上的一種拓展I/O匯流排。它支持處理器匯流排的功能,但又以一種標準的形式獨立於任何的處理器。連線到PCI匯流排的設備在處理器看來就好像是他們是直接連線到處理器匯流排上的一樣。它們在處理器的存儲器地址空間內分配地址。
PCI是一種廉價且真正獨立於處理器的匯流排。它的設計預見了為支持高速磁碟、圖形和視頻設備而引起的對匯流排頻寬需求的快速增長,也預見了對多處理器系統專業化需求的快速增長。PCI匯流排自1992年首次被推出,作為一個工業標準一直非常流行。
PCI匯流排首創的一個重要特性是I/O設備的即插即用。要連線一台新的設備,用戶只需將設備接口板連線到匯流排上即可,其餘操作由軟體來完成。

SCSI

(小型計算機系統接口)
SCSI標準用來連線機箱內外的附加設備。SCSI匯流排是高速並行匯流排,用於像硬碟和視頻顯示器之類的設備。
SCSI匯流排標準經歷了多次修改,它的數據傳輸能力增長的非常快,幾乎每兩年就會翻一倍。連線到SCSI匯流排的設備不屬於處理器的地址空間,這與連線到處理器匯流排的設備是一樣的。SCSI匯流排通過SCSI控制器連線到處理器匯流排上。這個控制器採用DMA方式在主存和設備之間傳送數據包。數據包可能是一個數據塊,也可以是處理髮送給設備的命令或設備的狀態信息。

USB

(通用串列匯流排)
USB標準也是用來連線機箱內外的附加設備的,使用串列傳輸,適合鍵盤,遊戲控制器和Internet連線等設備的需求。
USB的設計達到如下幾個主要目標:
提供一個簡單、廉價、使用方便的互聯繫統,克服由於計算機只能提供有限數量的I/O連線埠帶來的困難。
能夠滿足I/O設備的多種數據傳送特性,包括電話和Internet連線器。
採用“即插即用”的操作模式,使用戶操作更加方便。

I/O方式

(數據傳輸方式)
通常,輸入輸出的基本控制方式(簡稱為I/O方式)有以下幾種:程式查詢方式程式中斷方式、直接存儲器訪問(direct memory access, DMA)方式和通道方式

程式查詢方式

CPU直接通過I/O指令對I/O接口進行操作訪問,主機與外部設備交換信息的每一過程均在程式中表示出來。如果接口尚未準備好,CPU就等待,如果已經做好準備,CPU才能運行I/O指令。
CPU在讀I/O數據時,首先讀取狀態暫存器中的標誌,以判斷I/O數據是否準備好。如果還沒準備好,則CPU要繼續查詢狀態;如果當標誌指出數據已經準備就緒,則CPU讀取I/O數據暫存器的內容。
CPU在寫數據時也採用類似的辦法。CPU首先讀取I/O狀態暫存器中的標誌,以判斷I/O暫存器是否空閒。如果不空閒(還沒準備好),則CPU要一直查詢I/O狀態;當標誌指出輸出暫存器已經準備空閒,CPU寫數據到輸出暫存器。

程式中斷方式

CPU首先對I/O接口及一個中斷控制器進行初始化,然後去運行CPU自己的程式(用戶程式)。當I/O設備準備好時,由中斷控制器向CPU發出中斷請求。CPU在收到中斷請求後,若能回響中斷,則暫時停止當前正在運行的程式,轉去運行中斷服務程式,然後再返回被中斷的程式繼續運行。顯然,程式中斷方式省去了程式查詢方式下的I/O狀態查詢時間,因此提高了效率。

DMA方式

在主存與I/O設備之間直接傳輸數據,傳輸過程中並不需要CPU干預,而是由一個稱為DMA控制器(DMAC,direct memory access controller)的硬體控制器來實現的。這種由硬體來直接實現I/O數據傳輸的方法被稱為直接存儲器訪問方式。
CPU要做的事情就是對DMAC進行初始化,初始化的工作包括I/O數據在主存中的地址,每次傳輸的位元組數,以及數據的傳輸方向等。
DMA在存儲器和I/O設備之間建立數據通路,讓I/O設備和記憶體通過該數據通路直接交換數據,不經過CPU的干預,實現記憶體與外設之間的快速數據傳送。減少CPU等待時間。

通道方式

通道是一個專用控制器,它通過運行通道程式來進行I/O操作的管理,為主機和I/O設備提供一種數據傳輸通道。CPU先給通道準備好數據和命令,然後傳送簡單的通道命令,啟動通道開始工作。若啟動成功,則CPU可以繼續運行自己的運算處理。而通道則運行相應的通道程式,管理有關的I/O設備,當運行完指定的任務後,再通知CPU。這就使CPU擺脫了大量的I/O管理工作,可以高速的處理其他數據。

相關詞條

熱門詞條

聯絡我們