標籤: 暫無標籤

帶寬(Bandwidth)本意指的是電子電路中存在一個固有通頻帶,這個概念或許比較抽象,我們有必要作進一步解釋。通常表示一個網路或者數據傳輸媒體攜帶的數據的容量。它表示在單位時間內從一點到另一點能夠傳遞的最大數據量。

帶寬帶寬
在各類電子設備和元器件中,都可以接觸到帶寬的概念,例如熟知的顯示器的帶寬、內存的帶寬、匯流排的帶寬和網路的帶寬等等;對這些設備而言,帶寬是一個非常重要的指標。不過容易讓人迷惑的是,在顯示器中它的單位是MHz,這是一個頻率的概念;而在匯流排和內存中的單位則是GB/s,相當於數據傳輸率的概念;而在通訊領域,帶寬的描述單位又變成了MHz、GHz..這兩種不同單位的帶寬表達的不是同一個內涵。

通常表示一個網路或者數據傳輸媒體攜帶的數據的容量。它表示在單位時間內從一點到另一點能夠傳遞的最大數據量。

1 帶寬 -帶寬的兩種概念

帶寬帶寬
如果從電子電路角度出發,帶寬(bandwidth)本意指的是電子電路中存在一個固有通頻帶,這個概念或許比較抽象,我們有必要作進一步解釋。大家都知道,各類複雜的電子電路無一例外都存在電感、電容或相當功能的儲能元件,即使沒有採用現成的電感線圈或電容,導線自身就是一個電感,而導線與導線之間、導線與地之間便可以組成電容——這就是通常所說的雜散電容或分佈電容;不管是哪種類型的電容、電感,都會對信號起著阻滯作用從而消耗信號能量,嚴重的話會影響信號品質。這種效應與交流電信號的頻率成正比關係,當頻率高到一定程度、令信號難以保持穩定時,整個電子電路自然就無法正常工作。為此,電子學上就提出了「帶寬」的概念,它指的是電路可以保持穩定工作的頻率範圍。而屬於該體系的有顯示器帶寬、通訊/網路中的帶寬等等。

而第二種帶寬的概念大家也許會更熟悉,它所指的其實是數據傳輸率,譬如內存帶寬、匯流排帶寬、網路帶寬等等,都是以「位元組/秒」為單位。我們不清楚從什麼時候起這些數據傳輸率的概念被稱為「帶寬」,但因業界與公眾都接受了這種說法,代表數據傳輸率的帶寬概念非常流行,儘管它與電子電路中「帶寬」的本意相差很遠。

對於電子電路中的帶寬,決定因素在於電路設計。它主要是由高頻放大部分元件的特性決定,而高頻電路的設計是比較困難的部分,成本也比普通電路要高很多。這部分內容涉及到電路設計的知識,對此不做深入的分析。而對於匯流排、內存中的帶寬,決定其數值的主要因素在於工作頻率和位寬,在這兩個領域,帶寬等於工作頻率與位寬的乘積,因此帶寬和工作頻率、位寬兩個指標成正比。不過工作頻率或位寬並不能無限制提高,它們受到很多因素的制約。

2 帶寬 -匯流排中的帶寬

帶寬帶寬
在計算機系統中,匯流排的作用就好比是人體中的神經系統,它承擔的是所有數據傳輸的職責,而各個子系統間都必須籍由匯流排才能通訊,例如,CPU和北橋間有前端匯流排、北橋與顯卡間為AGP匯流排、晶元組間有南北橋匯流排,各類擴展設備通過PCI、PCI-X匯流排與系統連接;主機與外部設備的連接也是通過匯流排進行,如目前流行的USB2.0、IEEE1394匯流排等等,一句話,在一部計算機系統內,所有數據交換的需求都必須通過匯流排來實現!

按照工作模式不同,匯流排可分為兩種類型,一種是并行匯流排,它在同一時刻可以傳輸多位數據,好比是一條允許多輛車並排開的寬敞道路,而且它還有雙向單向之分;另一種為串列匯流排,它在同一時刻只能傳輸一個數據,好比只容許一輛車行走的狹窄道路,數據必須一個接一個傳輸、看起來彷彿一個長長的數據串,故稱為「串列」。

并行匯流排和串列匯流排的描述參數存在一定差別。對并行匯流排來說,描述的性能參數有以下三個:匯流排寬度、時鐘頻率、數據傳輸頻率。其中,匯流排寬度就是該匯流排可同時傳輸數據的位數,好比是車道容許並排行走的車輛的數量;例如,16位匯流排在同一時刻傳輸的數據為16位,也就是2個位元組;而32位匯流排可同時傳輸4個位元組,64位匯流排可以同時傳輸8個位元組......顯然,匯流排的寬度越大,它在同一時刻就能夠傳輸更多的數據。不過匯流排的位寬無法無限制增加。

匯流排的帶寬指的是這條匯流排在單位時間內可以傳輸的數據總量,它等於匯流排位寬與工作頻率的乘積。例如,對於64位、800MHz的前端匯流排,它的數據傳輸率就等於64bit×800MHz÷8(Byte)=6.4GB/s;32位、33MHzPCI匯流排的數據傳輸率就是32bit×33MHz÷8=133MB/s,等等,這項法則可以用於所有并行匯流排上面——看到這裡,讀者應該明白我們所說的匯流排帶寬指的就是它的數據傳輸率,其實「匯流排帶寬」的概念同「電路帶寬」的原始概念已經風馬牛不相及。

對串列匯流排來說,帶寬和工作頻率的概念與并行匯流排完全相同,只是它改變了傳統意義上的匯流排位寬的概念。在頻率相同的情況下,并行匯流排比串列匯流排快得多,那麼,為什麼現在各類并行匯流排反而要被串列匯流排接替呢?原因在於并行匯流排雖然一次可以傳輸多位數據,但它存在并行傳輸信號間的干擾現象,頻率越高、位寬越大,干擾就越嚴重,因此要大幅提高現有并行匯流排的帶寬是非常困難的;而串列匯流排不存在這個問題,匯流排頻率可以大幅向上提升,這樣串列匯流排就可以憑藉高頻率的優勢獲得高帶寬。而為了彌補一次只能傳送一位數據的不足,串列匯流排常常採用多條管線(或通道)的做法實現更高的速度——管線之間各自獨立,多條管線組成一條匯流排系統,從表面看來它和并行匯流排很類似,但在內部它是以串列原理運作的。對這類匯流排,帶寬的計算公式就等於「匯流排頻率×管線數」,這方面的例子有PCIExpress和HyperTransport,前者有×1、×2、×4、×8、×16和×32多個版本,在第一代PCIExpress技術當中,單通道的單向信號頻率可達2.5GHz,我們以×16舉例,這裡的16就代表16對雙向匯流排,一共64條線路,每4條線路組成一個通道,二條接收,二條發送。這樣我們可以換算出其匯流排的帶寬為2.5GHz×16/10=4GB/s(單向)。除10是因為每位元組採用10位編碼。

3 帶寬 -內存中的帶寬

帶寬帶寬
除匯流排之外,內存也存在類似的帶寬概念。其實所謂的內存帶寬,指的也就是內存匯流排所能提供的數據傳輸能力,但它決定於內存晶元和內存模組而非純粹的匯流排設計,加上地位重要,往往作為單獨的對象討論。

SDRAM、DDR和DDRⅡ的匯流排位寬為64位,RDRAM的位寬為16位。而這兩者在結構上有很大區別:SDRAM、DDR和DDRⅡ的64位匯流排必須由多枚晶元共同實現,計算方法如下:內存模組位寬=內存晶元位寬×單面晶元數量(假定為單面單物理BANK);如果內存晶元的位寬為8位,那麼模組中必須、也只能有8顆晶元,多一枚、少一枚都是不允許的;如果晶元的位寬為4位,模組就必須有16顆晶元才行,顯然,為實現更高的模組容量,採用高位寬的晶元是一個好辦法。而對RDRAM來說就不是如此,它的內存匯流排為串聯架構,匯流排位寬就等於內存晶元的位寬。

和并行匯流排一樣,內存的帶寬等於位寬與數據傳輸頻率的乘積,例如,DDR400內存的數據傳輸頻率為400MHz,那麼單條模組就擁有64bit×400MHz÷8(Byte)=3.2GB/s的帶寬;PC800標準RDRAM的頻率達到800MHz,單條模組帶寬為16bit×800MHz÷8=1.6GB/s。為了實現更高的帶寬,在內存控制器中使用雙通道技術是一個理想的辦法,所謂雙通道就是讓兩組內存并行運作,內存的總位寬提高一倍,帶寬也隨之提高了一倍!帶寬可以說是內存性能最主要的標誌,業界也以內存帶寬作為主要的分類標準,但它並非決定性能的唯一要素,在實際應用,內存延遲的影響並不亞於帶寬。如果延遲時間太長的話相當不利,此時即便帶寬再高也無濟於事。

4 帶寬 -帶寬匹配的問題

帶寬帶寬
計算機系統中存在形形色色的匯流排,這不可避免帶來匯流排速度匹配問題,其中最常出問題的地方在於前端匯流排和內存、南北橋匯流排和PCI匯流排。

前端匯流排與內存匹配與否對整套系統影響最大,最理想的情況是前端匯流排帶寬與內存帶寬相,而且內存延遲要儘可能低。在Pentium4剛推出的時候,Intel採用RDRAM內存以達到同前端匯流排匹配,但RDRAM成本昂貴,嚴重影響推廣工作,Intel曾推出搭配PC133SDRAM的845晶元組,但SDRAM僅能提供1.06GB/s的帶寬,僅相當於400MHz前端匯流排帶寬的1/3,嚴重不匹配導致系統性能大幅度下降;後來,Intel推出支持DDR266的845D才勉強好轉,但仍未實現與前端匯流排匹配;接著,Intel將P4前端匯流排提升到533MHz、帶寬增長至5.4GB/s,雖然配套晶元組可支持DDR333內存,可也僅能滿足1/2而已;現在,P4的前端匯流排提升到800MHz,而配套的865/875P晶元組可支持雙通道DDR400——這個時候才實現匹配的理想狀態,當然,這個時候繼續提高內存帶寬意義就不是特別大,因為它超出了前端匯流排的接收能力。

南北橋匯流排帶寬曾是一個尖銳的問題,早期的晶元組都是通過PCI匯流排來連接南北橋,而它所能提供的帶寬僅僅只有133MB/s,若南橋連接兩個ATA-100硬碟、100M網路、IEEE1394介面......區區133MB/s帶寬勢必形成嚴重的瓶頸,為此,各晶元組廠商都發展出不同的南北橋匯流排方案,如Intel的Hub-Link、VIA的V-Link、SiS的MuTIOL,還有AMD的HyperTransport等等,目前它們的帶寬都大大超過了133MB/s,最高紀錄已超過1GB/s,瓶頸效應已不復存在。

PCI匯流排帶寬不足還是比較大的矛盾,目前PC上使用的PCI匯流排均為32位、33MHz類型,帶寬133MB/s,而這區區133MB/s必須滿足網路、硬碟控制卡(如果有的話)之類的擴展需要,一旦使用千兆網路,瓶頸馬上出現,業界打算自2004年開始以PCIExpress匯流排來全面取代PCI匯流排,屆時PCI帶寬不足的問題將成為歷史。

5 帶寬 -通訊中的帶寬

帶寬帶寬
在通訊和網路領域,帶寬的含義又與上述定義存在差異,它指的是網路信號可使用的最高頻率與最低頻率之差、或者說是「頻帶的寬度」,也就是所謂的「Bandwidth」、「通道帶寬」——這也是最嚴謹的技術定義。

在100M乙太網之類的銅介質布線系統中,雙絞線的通道帶寬通常用MHz為單位,它指的是信噪比恆定的情況下允許的通道頻率範圍,不過,網路的通道帶寬與它的數據傳輸能力(單位Byte/s)存在一個穩定的基本關係。我們也可以用高速公路來作比喻:在高速路上,它所能承受的最大交通流量就相當於網路的數據運輸能力,而這條高速路允許形成的寬度就相當於網路的帶寬。顯然,帶寬越高、數據傳輸可利用的資源就越多,因而能達到越高的速度;除此之外,我們還可以通過改善信號質量和消除瓶頸效應實現更高的傳輸速度。

網路帶寬與數據傳輸能力的正比關係最早是由貝爾實驗室的工程師ClaudeShannon所發現,因此這一規律也被稱為Shannon定律。而通俗起見普遍也將網路的數據傳輸能力與「網路帶寬」完全等同起來,這樣「網路帶寬」表面上看與「匯流排帶寬」形成概念上的統一,但這兩者本質上就不是一個意思、相差甚遠。

6 帶寬 -相關詞條

南橋北橋貝爾實驗室
數據傳輸數據交換信噪比
前端匯流排PCI匯流排硬碟控制卡


 

7 帶寬 -參考資料

[1] 雅虎網 http://ks.cn.yahoo.com/question/1406123121376.html

上一篇[路易斯·斯威夫特]    下一篇 [天水寨]

相關評論

同義詞:暫無同義詞