您現在的位置是:首頁 > 攝影首頁攝影

「計算機組成原理」:系統匯流排簡介

由 研芝士計算機考研 發表于 攝影2021-10-04
簡介但是這種方式的效率底下,因為同時只能有一對裝置使用匯流排進行資料傳輸,如果這對裝置傳輸時間很長的話(比如CPU和主存之間的資料傳輸)那麼這段時間內別的裝置只能等待

儲存字長和機器字長有什麼關係

1、什麼是匯流排?

計算機系統的五大部件之間的連結方式有兩種:第一種是各個部件之間使用單獨的導線,這個稱之為分散連結;另一種是將各個部件連結到一組公共的資訊傳輸線上,這個稱之為匯流排連線(BUS)。

2、為什麼需要匯流排?

如果各個部件之間使用分散連線的話,那麼計算機系統必然會因為眾多的裝置而導致擁有大量的資料導線,從而使得系統變得異常複雜,如果需要動態新增一個新的裝置的話,會比較麻煩。

3、總線上資訊傳輸的方式

總體來說,有兩種方式:序列和並行。

序列:資料一位一位地傳遞,只有上一位傳送完畢之後下一位才能傳遞,通常由一根導線設計。

並行:資料中的很多位可以同時傳輸,使用多根導線製造設計。

兩種方式比較如下:

序列:優點:硬體設計簡單,佔用引腳較少,有利於整合。缺點:資料傳輸效率較低。

並行:優點:資料傳輸效率較高,吞吐量大。缺點:硬體設計複雜,佔用較多引腳,整合複雜。

4、常見匯流排結構

單匯流排結構

這種結構是最經典,也是最簡單的結構。所有的裝置,包括CPU,主存,各種I/O裝置全部掛接在一條總線上。但是這種方式的效率底下,因為同時只能有一對裝置使用匯流排進行資料傳輸,如果這對裝置傳輸時間很長的話(比如CPU和主存之間的資料傳輸)那麼這段時間內別的裝置只能等待;另外多個裝置之間可能存在嚴重資源使用衝突的問題。

面向CPU的雙匯流排結構

這種結構以CPU為中心,和上面的結構不同的是,這裡主存不再掛在單一總線上了,而是設計了兩個匯流排:I/O匯流排和M匯流排(Memory)。這樣一來就把專門用於I/O裝置資料傳輸的匯流排和儲存匯流排分開了,解決了單一匯流排中因為CPU訪問記憶體而導致系統匯流排負載較重的問題。

但是這種結構也是有問題的,比如所有的I/O裝置如果需要和主存互動的話,那麼效率是比較低的,因為每次都需要CPU實際參與。

以儲存器為中心的雙匯流排結構

還有一種以儲存器為中心的雙匯流排結構,如上圖所示。它是在單匯流排的基礎上又開闢一條CPU和主存之間的匯流排,稱之為儲存匯流排。這組匯流排速度高,只供主存和CPU之間傳輸資訊。這樣既提高了傳輸效率,又減輕了系統匯流排的負擔,還保留了I/O裝置與儲存器之間交換資訊時不經過CPU的特點。

5、匯流排的分類

匯流排應用廣泛,從不同的角度可以有很多種分類方式。下面我們按照連線部件的不同,分為三類。

片內匯流排

片內匯流排是指晶片內部的匯流排,如在CPU晶片的內部,暫存器和暫存器之間,暫存器和運算邏輯單元ALU之間的都是由片內匯流排連線而成的。

系統匯流排

系統匯流排是指CPU,主存,I/O裝置各大部件之間的資訊傳輸線。由於這些部件通常安放在主機板的各個外掛板上,因此又稱為板級匯流排或板間匯流排。按照系統匯流排傳輸的資訊的不同,又可以分為三類:資料匯流排,地址匯流排,控制匯流排。

資料匯流排

資料匯流排用來傳輸各功能部件之間的資料資訊,它是一個雙向的傳輸匯流排,其位數與機器字長,儲存字長有關,一般為8位,16位或者32位。資料匯流排的位數成為資料匯流排的寬度,它是衡量系統性能的一個重要引數。

地址匯流排

地址匯流排主要用來指出資料匯流排上的源資料或者目的資料在主儲存單元的地址或者I/O裝置的地址。地址匯流排的資料用來指明CPU想要訪問的儲存單元或者I/O埠的地址,由CPU輸出,單向傳輸。資料線的位數代表著系統能夠定址的空間大小,比如地址線寬為20那麼地址空間為2的20次方。

控制匯流排

我們知道,資料匯流排和地址匯流排是被掛在總線上的所有裝置所共享的,那麼這些裝置之間怎麼協調使用呢?答案就是控制匯流排,依靠控制匯流排來完成共享匯流排的佔用申請。控制匯流排是發出各種控制訊號的,因此它的傳輸方向就是單向的。但是,通常對於CPU而言的話,控制匯流排是既有輸入,又有輸出的。常見的控制訊號有:時鐘,復位,匯流排佔用請求等等。

通訊匯流排

這類匯流排用於計算機系統之間或計算機系統與其他系統之間的通訊,比如網路連線。這類通訊涉及許多方面,因此互相之間差別極大,傳輸的類別很多,但是總體可以分為兩種:序列和並行。