IT系統架構中總線帶寬及計算方式
2020-04-14 14:02 作者:艾銻無限 瀏覽量:
IT系統架構中總線帶寬及計算方式
在計算機系統中,總線的作用就好比是人體中的神經系統,它承擔的是所有數據傳輸的職責,就像
IT運維有不同的
系統運維方向和
運維技術。而各個子系統間都必須籍由總線才能通訊,例如,CPU和北橋間有前端總線、北橋與顯卡間為AGP總線、芯片組間有南北橋總線,各類擴展設備通過PCI、PCI-X總線與系統連接;主機與外部設備的連接也是通過總線進行,如目前流行的USB 2.0、IEEE1394總線等等,一句話,在一部計算機系統內,所有數據交換的需求都必須通過總線來實現! 按照工作模式不同,總線可分為兩種類型,一種是并行總線,它在同一時刻可以傳輸多位數據,好比是一條允許多輛車并排開的寬敞道路,而且它還有雙向單向之分;另一種為串行總線,它在同一時刻只能傳輸一個數據,好比只容許一輛車行走的狹窄道路,數據必須一個接一個傳輸、看起來仿佛一個長長的數據串,故稱為“串行”。
并行總線和串行總線的描述參數存在一定差別。對并行總線來說,描述的性能參數有以下三個:總線寬度、時鐘頻率、數據傳輸頻率。其中,總線寬度就是該總線可同時傳輸數據的位數,好比是車道容許并排行走的車輛的數量;例如,16位總線在同一時刻傳輸的數據為16位,也就是2個字節;而32位總線可同時傳輸4個字節,64位總線可以同時傳輸8個字節......顯然,總線的寬度越大,它在同一時刻就能夠傳輸更多的數據。不過總線的位寬無法無限制增加。時鐘頻率和數據傳輸頻率的概念在上一期的文章中有過詳細介紹,我們就不作贅述。
總線的帶寬指的是這條總線在單位時間內可以傳輸的數據總量,它等于總線位寬與工作頻率的乘積。例如,對于64位、800MHz的前端總線,它的數據傳輸率就等于64bit×800MHz÷8(Byte)=6.4GB/s;32位、33MHz PCI總線的數據傳輸率就是 32bit×33MHz÷8=133MB/s,等等,這項法則可以用于所有并行總線上面——看到這里,讀者應該明白我們所說的總線帶寬指的就是它的數據傳輸率,其實“總線帶寬”的概念同“電路帶寬”的原始概念已經風馬牛不相及。計算方法:總線寬度為32bit,時鐘頻率為200MHz,若總線上每5個時鐘周期傳送一個32bit的字,問總線帶寬是多少?
解答:
根據總線時鐘頻率為200MHz,
得1 個時鐘周期為1/200MHz=0.005μs
總線傳輸周期為0.005μs×5=0.025μs
由于總線的寬度為32 位=4B(字節)
故總線的數據傳輸率為4B/(0.025μs)=160MBps
對串行總線來說,帶寬和工作頻率的概念與并行總線完全相同,只是它改變了傳統意義上的總線位寬的概念。在頻率相同的情況下,并行總線比串行總線快得多,那么,為什么現在各類并行總線反而要被串行總線接替呢?原因在于并行總線雖然一次可以傳輸多位數據,但它存在并行傳輸信號間的干擾現象,頻率越高、位寬越大,干擾就越嚴重,因此要大幅提高現有并行總線的帶寬是非常困難的;而串行總線不存在這個問題,總線頻率可以大幅向上提升,這樣串行總線就可以憑借高頻率的優勢獲得高帶寬。而為了彌補一次只能傳送一位數據的不足,串行總線常常采用多條管線(或通道)的做法實現更高的速度——管線之間各自獨立,多條管線組成一條總線系統,從表面看來它和并行總線很類似,但在內部它是以串行原理運作的。對這類總線,帶寬的計算公式就等于“總線頻率×管線數”,這方面的例子有PCI Express和HyperTransport,前者有×1、×2、×4、×8、×16和×32多個版本,在第一代PCI Express技術當中,單通道的單向信號頻率可達2.5GHz,我們以×16舉例,這里的16就代表16對雙向總線,一共64條線路,每4條線路組成一個通道,二條接收,二條發送。這樣我們可以換算出其總線的帶寬為2.5GHz×16/10=4GB/s(單向)。除10是因為每字節采用10位編碼。
以上文章由北京艾銻無限科技發展有限公司整理