什么是帶寬
在各類電子設備和元器件中,我們都可以接觸到帶寬的概念,例如我們熟知的顯示器的帶寬、內存的帶寬、總線的帶 寬和網絡的帶寬等等;對這些設備而言,帶寬是一個非常重要的指標。不過容易讓人迷惑的是,在顯示器中它的單位是MHz,這是一個頻率的概念;而在總線和內 存中的單位則是GB/s,相當于數(shù)據傳輸率的概念;而在通訊領域,帶寬的描述單位又變成了MHz、GHz……這兩種不同單位的帶寬表達的是同一個內涵么? 二者存在哪些方面的聯(lián)系呢?本文就帶你走入精彩的帶寬世界。
一、 帶寬的兩種概念
如果從電子電路角度出發(fā),帶寬 (Bandwidth)本意指的是電子電路中存在一個固有通頻帶,這個概念或許比較抽象,我們有必要作進一步解釋。大家都知道,各類復雜的電子電路無一例 外都存在電感、電容或相當功能的儲能元件,即使沒有采用現(xiàn)成的電感線圈或電容,導線自身就是一個電感,而導線與導線之間、導線與地之間便可以組成電容—— 這就是通常所說的雜散電容或分布電容;不管是哪種類型的電容、電感,都會對信號起著阻滯作用從而消耗信號能量,嚴重的話會影響信號品質。這種效應與交流電 信號的頻率成正比關系,當頻率高到一定程度、令信號難以保持穩(wěn)定時,整個電子電路自然就無法正常工作。為此,電子學上就提出了“帶寬”的概念,它指的是電 路可以保持穩(wěn)定工作的頻率范圍。而屬于該體系的有顯示器帶寬、通訊/網絡中的帶寬等等。
而第二種帶寬的概念大家也許會更熟悉,它所指 的其實是數(shù)據傳輸率,譬如內存帶寬、總線帶寬、網絡帶寬等等,都是以“字節(jié)/秒”為單位。我們不清楚從什么時候起這些數(shù)據傳輸率的概念被稱為“帶寬”,但 因業(yè)界與公眾都接受了這種說法,代表數(shù)據傳輸率的帶寬概念非常流行,盡管它與電子電路中“帶寬”的本意相差很遠。
對于電子電路中的帶 寬,決定因素在于電路設計。它主要是由高頻放大部分元件的特性決定,而高頻電路的設計是比較困難的部分,成本也比普通電路要高很多。這部分內容涉及到電路 設計的知識,對此我們就不做深入的分析。而對于總線、內存中的帶寬,決定其數(shù)值的主要因素在于工作頻率和位寬,在這兩個領域,帶寬等于工作頻率與位寬的乘 積,因此帶寬和工作頻率、位寬兩個指標成正比。不過工作頻率或位寬并不能無限制提高,它們受到很多因素的制約,我們會在接下來的總線、內存部分對其作專門 論述。
二、 總線中的帶寬
在計算機系統(tǒng)中,總線的作用就好比是人體中的神經系統(tǒng),它承擔的是所有數(shù)據傳輸?shù)穆氊煟?各個子系統(tǒng)間都必須籍由總線才能通訊,例如,CPU和北橋間有前端總線、北橋與顯卡間為AGP總線、芯片組間有南北橋總線,各類擴展設備通過PCI、 PCI-X總線與系統(tǒng)連接;主機與外部設備的連接也是通過總線進行,如目前流行的USB 2.0、IEEE1394總線等等,一句話,在一部計算機系統(tǒng)內,所有數(shù)據交換的需求都必須通過總線來實現(xiàn)!
按照工作模式不同,總線 可分為兩種類型,一種是并行總線,它在同一時刻可以傳輸多位數(shù)據,好比是一條允許多輛車并排開的寬敞道路,而且它還有雙向單向之分;另一種為串行總線,它 在同一時刻只能傳輸一個數(shù)據,好比只容許一輛車行走的狹窄道路,數(shù)據必須一個接一個傳輸、看起來仿佛一個長長的數(shù)據串,故稱為“串行”。
并行總線和串行總線的描述參數(shù)存在一定差別。對并行總線來說,描述的性能參數(shù)有以下三個:總線寬度、時鐘頻率、數(shù)據傳輸頻率。其中,總線寬度就是該總線 可同時傳輸數(shù)據的位數(shù),好比是車道容許并排行走的車輛的數(shù)量;例如,16位總線在同一時刻傳輸?shù)臄?shù)據為16位,也就是2個字節(jié);而32位總線可同時傳輸4 個字節(jié),64位總線可以同時傳輸8個字節(jié)......顯然,總線的寬度越大,它在同一時刻就能夠傳輸更多的數(shù)據。不過總線的位寬無法無限制增加。時鐘頻率 和數(shù)據傳輸頻率的概念在上一期的文章中有過詳細介紹,我們就不作贅述。
總線的帶寬指的是這條總線在單位時間內可以傳輸?shù)臄?shù)據總量,它 等于總線位寬與工作頻率的乘積。例如,對于64位、800MHz的前端總線,它的數(shù)據傳輸率就等于64bit×800MHz÷8(Byte)= 6.4GB/s;32位、33MHz PCI總線的數(shù)據傳輸率就是32bit×33MHz÷8=133MB/s,等等,這項法則可以用于所有并行總線上面——看到這里,讀者應該明白我們所說的 總線帶寬指的就是它的數(shù)據傳輸率,其實“總線帶寬”的概念同“電路帶寬”的原始概念已經風馬牛不相及。
對串行總線來說,帶寬和工作頻率的概念與并行總線完全相同,只是它改變了傳統(tǒng)意義上的總線位寬的概念。在頻率 相同的情況下,并行總線比串行總線快得多,那么,為什么現(xiàn)在各類并行總線反而要被串行總線接替呢?原因在于并行總線雖然一次可以傳輸多位數(shù)據,但它存在并 行傳輸信號間的干擾現(xiàn)象,頻率越高、位寬越大,干擾就越嚴重,因此要大幅提高現(xiàn)有并行總線的帶寬是非常困難的;而串行總線不存在這個問題,總線頻率可以大 幅向上提升,這樣串行總線就可以憑借高頻率的優(yōu)勢獲得高帶寬。而為了彌補一次只能傳送一位數(shù)據的不足,串行總線常常采用多條管線(或通道)的做法實現(xiàn)更高 的速度——管線之間各自獨立,多條管線組成一條總線系統(tǒng),從表面看來它和并行總線很類似,但在內部它是以串行原理運作的。對這類總線,帶寬的計算公式就等 于“總線頻率×管線數(shù)”,這方面的例子有PCI Express和HyperTransport,前者有×1、×2、×4、×8、×16和×32多個版本,在第一代PCI Express技術當中,單通道的單向信號頻率可達2.5GHz,我們以×16舉例,這里的16就代表16對雙向總線,一共64條線路,每4條線路組成一 個通道,二條接收,二條發(fā)送。這樣我們可以換算出其總線的帶寬為2.5GHz×16/10=4GB/s(單向)。除10是因為每字節(jié)采用10位編碼。
三、 內存中的帶寬
除總線之外,內存也存在類似的帶寬概念。其實所謂的內存帶寬,指的也就是內存總線所能提供的數(shù)據傳輸能力,但它決定于內存芯片和內存模組而非純粹的總線設計,加上地位重要,往往作為單獨的對象討論。
SDRAM、DDR和DDRⅡ的總線位寬為64位,RDRAM的位寬為16位。而這兩者在結構上有很大區(qū)別:SDRAM、DDR和DDRⅡ的64位總線 必須由多枚芯片共同實現(xiàn),計算方法如下:內存模組位寬=內存芯片位寬×單面芯片數(shù)量(假定為單面單物理BANK);如果內存芯片的位寬為8位,那么模組中 必須、也只能有8顆芯片,多一枚、少一枚都是不允許的;如果芯片的位寬為4位,模組就必須有16顆芯片才行,顯然,為實現(xiàn)更高的模組容量,采用高位寬的芯 片是一個好辦法。而對RDRAM來說就不是如此,它的內存總線為串聯(lián)架構,總線位寬就等于內存芯片的位寬。
和并行總線一樣,內存的帶寬等于位寬與數(shù)據傳輸頻率的乘積,例如,DDR400內存的數(shù)據傳輸頻率為 400MHz,那么單條模組就擁有64bit×400MHz÷8(Byte)=3.2GB/s的帶寬;PC 800標準RDRAM的頻率達到800MHz,單條模組帶寬為16bit×800MHz÷ 8=1.6GB/s。為了實現(xiàn)更高的帶寬,在內存控制器中使用雙通道技術是一個理想的辦法,所謂雙通道就是讓兩組內存并行運作,內存的總位寬提高一倍,帶 寬也隨之提高了一倍!
帶寬可以說是內存性能最主要的標志,業(yè)界也以內存帶寬作為主要的分類標準,但它并非決定性能的唯一要素,在實際應用中,內存延遲的影響并不亞于帶寬。如果延遲時間太長的話相當不利,此時即便帶寬再高也無濟于事。
四、 帶寬匹配的問題
計算機系統(tǒng)中存在形形色色的總線,這不可避免帶來總線速度匹配問題,其中最常出問題的地方在于前端總線和內存、南北橋總線和PCI總線。
前端總線與內存匹配與否對整套系統(tǒng)影響最大,最理想的情況是前端總線帶寬與內存帶寬相等,而且內存延遲要盡可 能低。在Pentium4剛推出的時候,Intel采用RDRAM內存以達到同前端總線匹配,但RDRAM成本昂貴,嚴重影響推廣工作,Intel曾推出 搭配PC133 SDRAM的845芯片組,但SDRAM僅能提供1.06GB/s的帶寬,僅相當于400MHz前端總線帶寬的1/3,嚴重不匹配導致系統(tǒng)性能大幅度下 降;后來,Intel推出支持DDR266的845D才勉強好轉,但仍未實現(xiàn)與前端總線匹配;接著,Intel將P4前端總線提升到533MHz、帶寬增 長至5.4GB/s,雖然配套芯片組可支持DDR333內存,可也僅能滿足1/2而已;現(xiàn)在,P4的前端總線提升到800MHz,而配套的 865/875P芯片組可支持雙通道DDR400——這個時候才實現(xiàn)匹配的理想狀態(tài),當然,這個時候繼續(xù)提高內存帶寬意義就不是特別大,因為它超出了前端 總線的接收能力。
南北橋總線帶寬曾是一個尖銳的問題,早期的芯片組都是通過PCI總線來連接南北橋,而它所能提供的帶寬僅僅只 有133MB/s,若南橋連接兩個ATA-100硬盤、100M網絡、IEEE1394接口......區(qū)區(qū)133MB/s帶寬勢必形成嚴重的瓶頸,為 此,各芯片組廠商都發(fā)展出不同的南北橋總線方案,如Intel的Hub-Link、VIA的V-Link、SiS 的MuTIOL,還有AMD的 HyperTransport等等,目前它們的帶寬都大大超過了133MB/s,最高紀錄已超過1GB/s,瓶頸效應已不復存在。
PCI總線帶寬不足還是比較大的矛盾,目前PC上使用的PCI總線均為32位、33MHz類型,帶寬133MB/s,而這區(qū)區(qū)133MB/s必須滿足網 絡、硬盤控制卡(如果有的話)之類的擴展需要,一旦使用千兆網絡,瓶頸馬上出現(xiàn),業(yè)界打算自2004年開始以PCI Express總線來全面取代PCI總線,屆時PCI帶寬不足的問題將成為歷史。
五、 顯示器中的帶寬
以上我們所說的“帶寬”指的都是速度概念,但對CRT顯示器來說,它所指的帶寬則是頻率概念、屬于電路范疇,更符合“帶寬”本來的含義。
要了解顯示器帶寬的真正含義,必須簡單介紹一下CRT顯示器的工作原理——由燈絲、陰極、控制柵組成的電子槍,向外發(fā)射電子流,這些電子流被擁有高電壓 的加速器加速后獲得很高的速度,接著這些高速電子流經過透鏡聚焦成極細的電子束打在屏幕的熒光粉層上,而被電子束擊中的地方就會產生一個光點;光點的位置 由偏轉線圈產生的磁場控制,而通過控制電子束的強弱和通斷狀態(tài)就可以在屏幕上形成不同顏色、不同灰度的光點——在某一個特定的時刻,整個屏幕上其實只有一 個點可以被電子束擊中并發(fā)光。為了實現(xiàn)滿屏幕顯示,這些電子束必須從左到右、從上到下一個一個象素點進行掃描,若要完成800×600分辨率的畫面顯示, 電子槍必須完成800×600=480000個點的順序掃描。由于熒光粉受到電子束擊打后發(fā)光的時間很短,電子束在掃描完一個屏幕后必須立刻再從頭開始 ——這個過程其實十分短暫,在一秒鐘時間電子束往往都能完成超過85個完整畫面的掃描、屏幕畫面更新85次,人眼無法感知到如此小的時間差異會“誤以為” 屏幕處于始終發(fā)亮的狀態(tài)。而每秒鐘屏幕畫面刷新的次數(shù)就叫場頻,或稱為屏幕的垂直掃描頻率、以Hz(赫茲)為單位,也就是我們俗稱的“刷新率”。以800 ×600分辨率、85Hz刷新率計算,電子槍在一秒鐘至少要掃描800×600×85=40800000個點的顯示;如果將分辨率提高到1024× 768,將刷新率提高到100Hz,電子槍要掃描的點數(shù)將大幅提高。
按照業(yè)界公認的計算方法,顯示器帶寬指的就是顯示器的電子槍在一 秒鐘內可掃描的最高點數(shù)總和,它等于“水平分辨率×垂直分辨率×場頻(畫面刷新次數(shù))”,單位為MHz(兆赫);由于顯像管電子束的掃描過程是非線性的, 為避免信號在掃描邊緣出現(xiàn)衰減影響效果、保證圖像的清晰度,總是將邊緣掃描部分忽略掉,但在電路中它們依然是存在的。因此,我們在計算顯示器帶寬的時候還 應該除一個取值為0.6~0.8 的“有效掃描系數(shù)”,故得出帶寬計算公式如下:“帶寬=水平像素(行數(shù))×垂直像素(列數(shù))×場頻(刷新頻率)÷掃描系數(shù)”。掃描系數(shù)一般取為 0.744。例如,要獲得分辨率1024×768、刷新率85Hz的畫面,所需要的帶寬應該等于:1024×768×85÷0.744,結果大約是 90MHz。
不過,這個定義并不符合帶寬的原意,稱之為“像素掃描頻率”似乎更為貼切。帶寬的 最初概念確實也是電路中的問題——簡單點說就是:在“帶寬”這個頻率寬度之內,放大器可以處于良好的工作狀態(tài),如果超出帶寬范圍,信號會很快出現(xiàn)衰減失真 現(xiàn)象。從本質上說,顯示器的帶寬描述的也是控制電路的頻率范圍,帶寬高低直接決定顯示器所能達到的性能等級。由于前文描述的“像素掃描頻率”與控制電路的 “帶寬”基本是成正比關系,顯示器廠商就干脆把它當作顯示器的“帶寬”——這種做法當然沒有什么錯,只是容易讓人產生認識上的誤區(qū)。當然,從用戶的角度考 慮沒必要追究這么多,畢竟以“像素掃描頻率”作為“帶寬”是很合乎人們習慣的,大家可方便使用公式計算出達到某種顯示狀態(tài)需要的最低帶寬數(shù)值。
但是反過來說,“帶寬數(shù)值完全決定著屏幕的顯示狀態(tài)”是否也成立呢?答案是不完全成立,因為屏幕的顯示狀態(tài)除了與帶寬有關系之外,還與一個重要的概念相 關——它就是“行頻”。行頻又稱為“水平掃描頻率”,它指的是電子槍每秒在熒光屏上掃描過的水平線數(shù)量,計算公式為:“行頻=垂直分辨率×場頻(畫面刷新 率)×1.07”,其中1.07為校正參數(shù),因為顯示屏上下方都存在我們看不到的區(qū)域。可見,行頻是一個綜合分辨率和刷新率的參數(shù),行頻越大,顯示器就可 以提供越高的分辨率或者刷新率。例如,1臺17寸顯示器要在1600×1200分辨率下達到75Hz的刷新率,那么帶寬值至少需要221MHz,行頻則需 要96KHz,兩項條件缺一不可;要達到這么高的帶寬相對容易,而要達到如此高的行頻就相當困難,后者成為主要的制約因素,而出于商業(yè)因素考慮,顯示器廠 商會突出帶寬而忽略行頻,這種宣傳其實是一種誤導。
六、 通訊中的帶寬
在通訊和網絡領域,帶寬的含義又與上述定義存在差異,它指的是網絡信號可使用的最高頻率與最低頻率之差、或者說是“頻帶的寬度”,也就是所謂的“Bandwidth”、“信道帶寬”——這也是最嚴謹?shù)募夹g定義。
在100M以太網之類的銅介質布線系統(tǒng)中,雙絞線的信道帶寬通常用MHz為單位,它指的是信噪比恒定的情況下允許的信道頻率范圍,不過,網絡的信道帶寬 與它的數(shù)據傳輸能力(單位Byte/s)存在一個穩(wěn)定的基本關系。我們也可以用高速公路來作比喻:在高速路上,它所能承受的最大交通流量就相當于網絡的數(shù) 據運輸能力,而這條高速路允許形成的寬度就相當于網絡的帶寬。顯然,帶寬越高、數(shù)據傳輸可利用的資源就越多,因而能達到越高的速度;除此之外,我們還可以 通過改善信號質量和消除瓶頸效應實現(xiàn)更高的傳輸速度。
網絡帶寬與數(shù)據傳輸能力的正比關系最早是由貝爾實驗室的工程師Claude Shannon所發(fā)現(xiàn),因此這一規(guī)律也被稱為Shannon定律。而通俗起見普遍也將網絡的數(shù)據傳輸能力與“網絡帶寬”完全等同起來,這樣“網絡帶寬”表 面上看與“總線帶寬”形成概念上的統(tǒng)一,但這兩者本質上就不是一個意思、相差甚遠。
七、 總結:帶寬與性能
對總線和 內存來說,帶寬高低對系統(tǒng)性能有著舉足輕重的影響——倘若總線、內存的帶寬不夠高的話,處理器的工作頻率再高也無濟于事,因此帶寬可謂是與頻率并立的兩大 性能決定要素。而對CRT顯示器而言,帶寬越高,往往可以獲得更高的分辨率、顯示精度越高,不過現(xiàn)在CRT顯示器的帶寬都能夠滿足標準分辨率下85Hz刷 新率或以上的顯示需要(相信沒有太多的朋友喜歡用非常高的分辨率去運行程序或者游戲),這樣帶寬高低就不是一個太敏感的參數(shù)了,當然,如果你追求高顯示品 質那是另一回事了。
評論
查看更多