熱點推薦:
您现在的位置: 電腦知識網 >> 硬件專區 >> 正文

雙通道模式帶寬就高嗎?

2013-09-12 17:18:49  來源: 硬件專區 
  前段時間,讀者詢問了這樣一個問題:“雙通道內存是不是具有更高的帶寬?”對於這個疑問,筆者要指出這是一個錯誤的問題!內存規格中沒有雙通道內存的說法,誤以為它是內存中的一種那就錯了。對於這位讀者所要了解的信息,正確的應該這樣表達:“雙通道模式下內存的帶寬跟單通道模式相比,是不是具有更高、甚至兩倍的帶寬呢?”想要解釋清楚這個問題,我們需要先了解帶寬和雙通道這兩個概念。

一、為何需要雙通道

1.傳輸數據的能力—帶寬

  在專業的角度上帶寬是指波長、頻率或能量帶的范圍,特指以每秒周數表示頻帶的上、下邊界頻率之差。也就是說帶寬是用來描述頻帶寬度的,但是在數字傳輸方面,也常用帶寬來衡量傳輸數據的能力,例如用它來表示單位時間內傳輸數據容量的大小、數據吞吐的能力。帶寬這個詞比較抽象,很多人理解起來可能比較困難,筆者作個比喻吧。

  比如一座橋,當車的數量很少時,橋面寬一些和窄一些,對通過這座橋的車的速度沒有任何影響,但隨著車流的逐漸增大,橋面比較窄就不能在同一時間內通過更多的車輛,甚至造成塞車。當然,為了提高車流量,我們可以通過擴大橋面,也可以提高允許的最大車速。那麼,我們所說的單位時間內通過的車流量就我們可以用公路的路面寬度和允許的最大車速的乘積來表示,那麼這個值相當於橋的“傳輸數據流”的能力,指的就是橋的“帶寬”,數據流當然就是指車流了。tW.WInGwit.coM

  如果我們把CPU到北橋(CPU總線)、北橋到內存(內存總線)之間的通道看作兩座橋的話,那麼就可以用帶寬來表示它們之間傳輸數據的能力。根據數據傳輸率(帶寬)的計算公式:數據傳輸率(帶寬)(Gb/s為單位)=傳輸頻率(MHz為單位)×傳輸位寬(Bit為單位)/8,我們就可以計算出內存或CPU的帶寬了,比如一條DDR400內存的帶寬就為400×64/8=3.2Gb/s。

  小提示:工作頻率或帶寬是內存的兩個最為重要的參數,只要我們知道其中一個,另外一個就可根據帶寬的計算公式計算出來。在如圖1的內存標識上我們可以出這是一根PC3200規格的內存,這表示它的帶寬為3200Mb/s,那麼它的工作頻率=3200×64/8=400Mhz。

2.滿足CPU的胃口—雙通道模式

  理解了上述概念以後,我們知道不管是CPU到北橋,還是北橋到內存各自存在一個帶寬的概念,兩者之間進行數據交換就會引出兩個帶寬之間如何匹配的問題。通常,在實際配機過程中是先選擇一款合適的CPU,然後才根據CPU而選擇合適的內存,也就是可以先確定CPU到北橋的帶寬,然後根據這個帶寬去確定所需要的北橋到內存的帶寬,盡量選擇帶寬跟CPU總線帶寬相等的或者差別不太大的內存。

  筆者以Pentium 4處理器搭配一個比較合適的內存為例,其P4的外頻為200MHz,而P4處理器與北橋芯片的數據傳輸采用QDR(Quad Data Rate,四次數據傳輸)技術,其FSB是外頻的4倍(即800MHz),由於P4 FSB的傳輸位寬為64bit,根據上面所提供的帶寬的計算公式,那麼P4的總線帶寬=800MHz×64Bit/8=6.4Gb/s。而目前DDR 400只有3.2Gb/s,僅能提供處理器所需帶寬的一半,很明顯內存的帶寬已經不能滿足處理器龐大的胃口了。很明顯,這個時候提高內存帶寬成為了必然。

  我們按照帶寬的計算公式知道要想提高帶寬,可以從傳輸頻率和傳輸位寬兩方面入手,但是由於制造工藝上的限制,提高內存自身的傳輸頻率已經非常困難了,品質優秀的內存最多也只能夠工作在250MHz下,即便如此,傳輸率上的提高還是少得可憐。所以,提高傳輸位寬成為了唯一可行的方法。但是這個時候問題又來,由於DDR內存的位寬只有64bit,當然通過內部設計提高到128bit也是不太現實,那麼只有通過其他變相的技術來達到這一目的了,於是雙通道技術就浮出了水面。

  小資料:為什麼SDRAM和DDR是64位的?

  內存系統為了保證CPU的正常工作,必須一次傳輸完CPU在一個傳輸周期內所需要的數量。而CPU在一個傳輸周期能接受的數據容量就是CPU數據總線的位寬,單位是bit(位)。當控制內存與CPU之間數據交換的北橋芯片也因此將內存總線的數據位寬等同於CPU數據總線的位寬,而這個位寬通常我們稱之物理Bank(Physical Bank)的位寬,而Intel Pentium系列的數據總線的位寬是64bit的,那麼內存廠家為了跟處理器的數據總線的位寬匹配就必定把要把內存的物理Bank的位寬設計為64bit的,所以SDRAM和DDR內存是64位的。

二、雙通道是如何提高帶寬的

  也就是說雙通道技術就是提高了CPU 和內存之間的傳輸位寬而設計的,首先它將原本為64bit位寬的內存控制器增加到兩個,總體的內存位寬則擴充至128bit,從而達到提高了內存的整體傳輸率的目的,繼而產生了兩條內存同時工作的解決方案。那麼雙通道到底是怎樣提高傳輸位寬的呢?

  為了大家更好地理解,我們還是打個比喻吧。我們把CPU比喻為工廠,內存比喻為倉庫,那麼工廠要加工倉庫中的材料就必須先把倉庫中的原材料運到工廠進行加工(CPU對內存中的數據進行尋址、讀取操作),然後再把加工好的材料運會到倉庫的保存(CPU對內存進行數據寫入操作),而倉庫和工廠之間就好比有一條雙向的橋,為了讓橋上車輛能夠有序地進行而要在橋上安裝了在同一時間內只能發出一種交通指令的紅綠燈(內存控制器)。那麼單通道就理解為一層或兩層(兩層不能同時處於工作狀態)的橋面,而雙通道就是好比上下兩層的橋面各安裝了一盞紅綠燈,上下兩層橋面可以同時工作在不同交通指令下! 

  主板的雙通道技術原理其實就跟這個雙層雙路燈的橋的原理是一樣的。一個內存控制器控制兩個通道,這就意味著發給兩個通道的尋址、讀取數據的指令是一模一樣的,而一個內存控制器是無法發出兩套指令的。而雙通道則是兩個獨立的控制器分別控制兩個不同的通道,這樣每個通道的內存模組的架構就可以不同,因為兩種指令的獨立性,兩個內存控制器都能夠在彼此間零等待時間的情況下同時運作(圖3)。當控制器准備進行下一次存取內存的時候,另一個控制器就在讀/寫內存,反之亦然。如此一來,兩個內存控制器就具備了互補的“天性”,可以讓有效等待時間縮減50%,從而使CPU到內存之間的傳輸數據的能力翻倍。但是在雙通道帶寬合成方面會有比較大的麻煩,畢竟內存地址的轉換是相當復雜的,變數也就更多。所以,單通道與雙通道代表了兩種設計,而這樣的設計體現來就是在內存配置時有了更多的變數。

  說到這裡,我們可以看出雙通道技術其實只是設計在主板北橋芯片組的內控制CPU對內存中的數據進行尋址、讀取的一種技術而已,目的就是為了提高兩者間數據傳輸能力,跟CPU或內存本身並沒有什麼關系。

三、雙通道技術在實際應用中的差別

  現在CPU的FSB(前端總線頻率)越來越高,而且由於CPU芯片的技術特別的差異,在實際選擇匹配的內存產生了變數,比如兩顆外頻都是200MHz的英特爾 Pentium 4和AMD Athlon XP處理器芯片,由於前者采用了QDR技術使得處理器與北橋芯片的前端總線頻率達到了800MHz,這樣所需要的內存帶寬就達到了6.4Gb/s;然而,對於在處理器與北橋芯片之間的數據傳輸技術采用DDR(Double Data Rate,雙倍數據傳輸)技術的AMD Athlon XP,其對內存帶寬的需求遠遠低於英特爾的 Pentium 4平台,只有後者的一半。

  所以,雙通道的內存控制技術的出現確實令使用P4的系統在性能上得到了提升,而且從理論上而言帶寬可以提高到原來的兩倍,但是在實際的應用過程中也並沒能達到理論上的2倍峰值帶寬,其中因素還有很多,譬如延遲時間、命中率等等。

  而另一方面,在同樣外頻的AMD平台上使用雙通道就不會有太多的實際收效了。譬如,在AMD Athlon XP平台上使用2根256MB DDR400並開啟雙通道模式,這樣並不會比只用一根512MB DDR533在整體性能上有太大的提高,實際效果通常也只有20%左右的性能提升。那麼,這時我們選擇一根512MB DDR533就比選擇兩根256MB DDR400就更具性價比了!  
From:http://tw.wingwit.com/Article/Hardware/201309/2682.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.