計算機系統匯流排基礎

2021-05-21 14:17:26 字數 1697 閱讀 4795

華清遠見嵌入式學院

講師。一. 匯流排的概念

在計算機系統中,不同的子系統必須具有連線彼此的介面,比如,記憶體和處理器需要通訊,處理器和i/o裝置也需要通訊。這些工作都是由匯流排來完成的。匯流排就是一條共享的通訊鏈路,它用一套線路來連線多個子系統。下圖是乙個典型的計算機匯流排示意圖:

匯流排結構的兩個主要優點是功能多和成本低。通過定義一種連線方案,就能夠方便的新增新裝置,比如我們可以輕鬆的為自己的筆記本擴充套件記憶體條,或者外擴一塊硬碟。外圍裝置也可以在使用同類匯流排的計算機系統之間移動。而且,因為同一套線路被多個路徑共享,所以匯流排具有較好的成本效益。

匯流排的主要缺點在於它會產生通訊瓶頸,這可能會限制i/o的最大吞吐量。當i/o資料傳輸必須通過單個匯流排的時候,這條匯流排的頻寬就會限制i/o的最大吞吐量。如何設計匯流排系統,使之能夠滿足處理器的要求並能夠接納大量的i/o裝置,使我們面臨的一大挑戰。

二. 控制線路和資料線路

匯流排通常包括一套控制線路和一套資料線路。控制線路用來傳輸請求和確認訊號,並指出資料線上的資訊型別。匯流排的資料線在源和目的之間傳遞資訊。這種資訊可能包括資料、複雜指令或者位址。比如,如果磁碟要把磁碟扇區中的資料寫入記憶體,記憶體的位址和磁碟的實際資料都會通過資料線來傳輸。控制匯流排則指明了在傳輸過程中每一刻資料線包含的資訊種類。一些匯流排使用兩套訊號線在一次匯流排傳輸中分別傳送資料和位址。不管哪種情況下,控制匯流排都要遵循匯流排協議,並指出匯流排傳輸的內容。由於匯流排的共享的,所以我們還需要乙個協議來決定誰下乙個使用。

三. 處理器-記憶體匯流排和i/o匯流排

對於傳統的pc機,匯流排可以分為處理器-記憶體匯流排和i/o匯流排。處理器記憶體匯流排長度短,速度通常很高,而且配合記憶體系統使記憶體-處理器的頻寬達到最大。與之形成對比的i/o匯流排,它可以很長,可以連線很多態別的裝置,並且經常要連線多種具有不同資料頻寬的裝置。i/o匯流排一般不和記憶體直接連線而是通過處理器-記憶體匯流排或者背板匯流排連線到記憶體上。

i/o匯流排被用作擴充套件機器和連線新外設的手段。主流的i/o匯流排標準有1394和usb等。他們可以把各種外設連線到台式電腦,從鍵盤、相機到磁碟。

下圖為早期的i/o匯流排示意圖:

四. 匯流排通訊的兩種方式:同步和非同步

匯流排的通訊的兩種基本方式是同步和非同步。如果匯流排是同步的,控制線上就有乙個時鐘以及乙個與該時鐘相關的固定的通訊協議。比如,為了使處理器-記憶體匯流排執行乙個從記憶體匯流排執行乙個讀操作。我們需要乙個協議能夠在第乙個時鐘週期傳輸位址和讀操作命令,並使用控制線來指明請求的型別。記憶體可能被要求在第五個時鐘週期做出響應,提供資料字。

同步匯流排主要有兩個缺點。第一,匯流排上的每個裝置必須執行在同乙個時鐘頻率下。其次,由於時鐘偏差問題,速度很快的同步匯流排,長度不能太大。處理器-記憶體匯流排通常是同步的,因為裝置間通訊的距離短,數量少,而且準備在快的時鐘頻率下工作。

非同步匯流排不需要時鐘。正因為不需要時鐘,所以非同步匯流排可以適應很多不同的裝置,非同步匯流排可以延長而不用擔心時鐘偏差或其他同步問題。1394和usb都是非同步匯流排。為了協調傳送者和接受者之間的資料傳輸,非同步匯流排採用握手協議。握手協議由一系列步驟組成,只有當傳送者和接收者達成一致時,才能進行下一步工作。這種協議通過一套附加的控制線路實現的。

計算機組成原理 系統匯流排

注意 資料匯流排 雙向與機器字長 儲存字長有關 控制匯流排 出 儲存器讀 儲存器寫 匯流排允許 中斷確認,入 中斷請求 匯流排請求 通訊匯流排的傳輸方式 序列通訊匯流排 並行通訊匯流排 通過匯流排請求和匯流排忙將各個io裝置連線在一起,當io介面有匯流排請求的時候,會通過匯流排請求線向匯流排控制裝置...

硬體 計算機硬體系統 匯流排

1 概念 2 資料匯流排 5261data bus 在cpu與ram之間來回傳4102送需要處理或是需要儲存的資料。1653 位址匯流排 address bus 用來指定在ram random access memory 之中儲存的資料的位址。控制匯流排 control bus 將微處理器控制單元 ...

計算機系統基礎

includeint main return 0 如果將表示式換成 2147483647 1 2147483647 結果又會怎麼樣呢 編譯器如何處理字面量 高階語言中運算規則 高階語言與指令之間的對應 機器指令的執行過程 機器級資料的表示和運算 sum int a unsigned int len ...