0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

為什么核心頻率沒有什么太大的進步呢

冬至配餃子 ? 來源:開發(fā)內功修煉 ? 作者:張彥飛allen ? 2022-08-30 16:48 ? 次閱讀

從2001年DDR內存面世以來發(fā)展到今天,已經走過了DDR、DDR2、DDR3、DDR4四個大的規(guī)格時代了(DDR5現(xiàn)在也出來了)。內存的工作頻率也從DDR時代的266MHz進化到了今天的3200MHz。這個頻率在操作系統(tǒng)里叫Speed、在內存術語里叫等效頻率、或干脆直接簡稱頻率。這個頻率越高,每秒鐘內存IO的吞吐量越大。但其實內存有一個最最基本的頻率叫核心頻率,是實際內存電路的工作時的一個振蕩頻率。它是內存工作的基礎,很大程度上會影響內存的IO延遲。我今天想給大家揭開另外一面,這個叫核心頻率的東東其實在最近的18年里,基本上就沒有什么太大的進步。

1、內存Speed

Linux上可以查看到你機器上內存的Speed。

poYBAGMNzkSAJAmUAACwXtGpIFc773.png

上述命令可以看出每一個插槽上內存物理設備的情況,由于結果太長我只抽取了其中一個內存的信息列了出來。對于我們開發(fā)者來說,其中有兩個數(shù)據(jù)比較關鍵。

Speed: 1067 MHz:每秒能進行內存數(shù)據(jù)傳輸?shù)乃俣龋?/p>

Data Width: 64 bits:內存工作一次傳輸?shù)臄?shù)據(jù)寬度

我的機器上所有的內存條的Speed都是1067(大家別笑話,因為我的測試機器是線上過保淘汰下來的機器,所以老了一點點)。把Data Width和Speed相乘后得到的就是數(shù)據(jù)帶寬了。我們把歷史上各個階段的內存的Speed和帶寬匯總了一下,如下圖。

poYBAGMNzlmAOOBiAACW4M7-ekM670.png

2、內存背后的秘密-核心頻率

通過Linux我們只看到了內存的一個Speed,它是數(shù)據(jù)傳輸?shù)念l率。這個頻率又叫Data Speed,或等效頻率。各個商家在內存的銷售頁面上也把這個頻率標在特別明顯的位置,提醒消費者他家的內存有多快多快。但其實從內存條的技術參數(shù)上來講,有個最為重要的頻率,是核心頻率,它是內存電路的震蕩頻率,是內存一切工作的基石。

我們來看一下各代內存的更全面詳細的數(shù)據(jù)。

poYBAGMNzniAcrwwAAEkafgGsPg889.png

我匯總了從SDR時代,一直到目前主流的DDR4的內存的頻率表對比。大家可以看到核心頻率已經多年沒有實質性進步了,這是受物理材料的極限限制,內存的核心頻率一直在133MHz~200MHz之間徘徊。我們所看到的內存Speed是在這個核心頻率的基礎上,通過各種技術手段放大出來的。之所以我們感覺內存在越來越快,就是放大技術手段在不斷進步而已。

SDR時代:在最古老的SDR(Single Data Rate SDRAM)年代里,一個時鐘脈沖只能在脈沖上沿時傳輸數(shù)據(jù),所以也叫單倍數(shù)據(jù)傳輸率內存。這個時期內存的提升方法就是提升內存電路的核心頻率。

DDR時代:但是內存制造商們發(fā)現(xiàn)核心頻率到了200MHz再提升的話,難度就很大了。所以在電路時鐘周期內預取2bit,輸出的時候就在上升期和下降期各傳輸一次數(shù)據(jù)。所以核心頻率不變的情況下,Speed(等效頻率)就翻倍了。

DDR2時代:同樣是在上下沿各傳一次數(shù)據(jù),但將Prefech提升為4,每個電路周期一次讀取4bit。所以DDR2的Speed(等效頻率)就達到了核心頻率的4倍。

DDR3時代:同樣也是上下沿各傳一次數(shù)據(jù),進一步將Prefect提升為8。所以DDR3的等效頻率可以達到核心頻率的8倍。

DDR4時代:這時預取的提升已經非常困難,所以和DDR3一樣,Prefech仍然為8。內存制造商們又另辟蹊徑,提出了Bank Group設計。允許各個Bank Group具備獨立啟動操作讀、寫等動作特性。所以等效頻率可以提升到核心頻率的16倍。

內存還有個概念叫IO頻率、也叫時鐘頻率。簡單理解為將DDR內存的Speed頻率除以2,就是內存的IO頻率。這個必須和CPU的外頻相匹配才能工作。例如對于DDR3來說,假如核心頻率133Mhz的內存工作頻率下,匹配533MHz的CPU外頻,其IO頻率就是533Mhz。數(shù)據(jù)傳輸因為上下沿都可以傳,所以是核心頻率的8倍,也就是1066MHz。

我曾試圖在Linux下找到能查看核心頻率和IO頻率的命令,但是沒有找到,在售的各種內存條似乎也很少會提及它。但我們是IT從業(yè)人員,非普通用戶。因此我覺得大家有必要來了解這個原理。(事實上,這兩個頻率會影響后面討論的內存的延遲參數(shù),而延遲參數(shù)又決定了內存的真正性能)

匯總一句話,內存真正的工作頻率是核心頻率,時鐘頻率和數(shù)據(jù)頻率都是在核心頻率的基礎上,通過技術手段放大出來的。內存越新,放大的倍數(shù)越多。但其實這些放大手段都有一些局限性。比如你的內存數(shù)據(jù)存儲并不連續(xù),這時候DDR2、DDR3的數(shù)據(jù)預取對你幫助并不大。再比如你的進程數(shù)據(jù)都存在一個Bank Group里,你的進程內存IO就根本不會達到DDR4廠家宣傳的速度。

3、擴展:內存延遲

除了頻率以外,內存還有幾個比較重要的參數(shù),但是同樣在Linux里沒有找到查看的命令。內存的銷售頁面想找到這幾個參數(shù)也不是特別容易。

所有的內存條都有CL-tRCD-tRP-tRAS四個參數(shù)。其中最重要的是CL-tRCD-tRP這三個參數(shù),只要你費點勁,所有的在售內存你都能找到這3個值。例如經典的DDR3-1066、DDR3-1333及DDR3-1600的CL值分別為7-7-7、8-8-8及9-9-9?,F(xiàn)在京東上一條比較流行的臺式機內存金士頓(Kingston)DDR4 2400 8G,其時序是17-17-17。

第四個參數(shù)有時候會被省略。原因有二,第一:現(xiàn)在的開發(fā)者不需要直接和內存打交道,而操作系統(tǒng)呢又做的比較內存友好,很少會有這個開銷真正發(fā)生。第二,這個開銷的值要比其它的值大很多,實在不太好看。商家為了內存能多賣一些,干脆就避而不談了。

好了,問題來了。為什么內存越進步,延遲周期反而會變大了呢?

這就是因為延遲周期使用延遲時間除以內存Speed算出來的。這其實根本就不科學,最科學的辦法應該是用延遲時間來評估。

延遲時間很大程度上是受內存的核心頻率的制約的。而這些年核心頻率又基本上沒有進步,所以延遲時間也不會有實質的降低。內存的制造商們又為了頻率數(shù)據(jù)好看,能多賣些內存,非得采用Speed作為主周期來用。導致在用這個周期一衡量,貌似延遲周期就越來越大了。今天就帶大家了解到這里,后面我會用實驗來讓你理解你的內存的實際延時。



審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • DDR
    DDR
    +關注

    關注

    11

    文章

    697

    瀏覽量

    64938
  • 內存
    +關注

    關注

    8

    文章

    2903

    瀏覽量

    73543
  • Linux系統(tǒng)

    關注

    4

    文章

    587

    瀏覽量

    27182
收藏 人收藏

    評論

    相關推薦

    要求輸入信號小于5mV,頻率100MHz,放大10倍,有沒有什么芯片好用的?

    你好!要求輸入信號小于5mV,頻率100MHz,放大10倍,有沒有什么芯片好用的?
    發(fā)表于 09-18 06:33

    藍牙連接后處于跳頻狀態(tài),有沒有什么辦法或者指令可以把跳頻功能關閉,設置一個固定信道來通信

    你好,藍牙連接后處于跳頻狀態(tài)的,有沒有什么辦法或者指令可以把跳頻功能關閉,設置一個固定信道來通信?謝謝!
    發(fā)表于 06-27 06:13

    stm32H747-EVAL下載程序太大每次很不方便程序調試怎么處理?

    這種帶有大量UI的工程,UI也放在flash中,沒有什么方法可以將UI和代碼分別存儲,每次有改動分開燒錄程序,
    發(fā)表于 04-10 07:27

    晶振頻率和時鐘頻率本質上有何區(qū)別?時鐘頻率有什么作用?

    晶振頻率和時鐘頻率本質上有何區(qū)別?時鐘頻率有什么作用? 晶振頻率和時鐘頻率是兩個相關但又有所不
    的頭像 發(fā)表于 01-24 16:11 ?2124次閱讀

    tle9893芯片在使用keil5工具開發(fā)時,有沒有什么辦法能讓存在ram里面的部分數(shù)據(jù)在進行軟件復位時沒有被擦除

    tle9893芯片在使用keil5工具開發(fā)時,有沒有什么辦法能讓存在ram里面的部分數(shù)據(jù)在進行軟件復位時沒有被擦除。
    發(fā)表于 01-24 06:39

    影響晶振頻率穩(wěn)定性的有哪些因素?如何解決?

    影響晶振頻率穩(wěn)定性的有哪些因素?如何解決? 晶振頻率穩(wěn)定性是指晶振器在工作過程中頻率的變化程度。晶振器是一種電子元件,廣泛應用于各種電子
    的頭像 發(fā)表于 01-23 16:43 ?1061次閱讀

    ADUCM360有沒有什么指令可以軟件復位的?

    這個為M3的內核,有沒有什么指令可以軟件復位的??
    發(fā)表于 01-15 07:35

    1PH8電機噪音太大怎么解決?

    今天調試項目的時候,客戶說1PH8電機噪音太大,不知道怎么解決,哪位高手給點建議
    發(fā)表于 01-10 07:27

    交流電機經常會出現(xiàn)哪些故障?有沒有什么簡單的判斷方法?

    我們廠最近買了臺交流電機,想要做對該電機的應對措施,現(xiàn)請教交流電機經常會出現(xiàn)哪些故障?有沒有什么簡單的判斷方法?希望解答
    發(fā)表于 12-22 08:11

    步進電機自動控制有沒有什么特殊的要求

    步進電機自動控制有沒有什么特殊的要求?
    發(fā)表于 12-13 07:19

    沒有什么芯片可以代替AD694?

    我需要將8路AD5305輸出的電壓信號轉換成4-20mA的電流芯片,原來的方案是采用8片AD694,但是現(xiàn)在要對板子進行改進 ,8塊AD694太占地方了,請問有沒有什么芯片可以將進行多路電壓電流轉換,要求是能將AD5305輸出電壓信號轉換成4-20mA電流
    發(fā)表于 11-21 08:08

    放大器的反饋電阻不能太大,那具體的選擇需要參考哪些因素?

    放大器的反饋電阻不能太大,那具體的選擇需要參考哪些因素?儀表放大器的增益電阻選擇是否也有同樣的問題? 放大器的反饋電阻不能太大,這是因為反饋電路能夠影響放大器的性能指標,如增益、帶寬和穩(wěn)定性等
    的頭像 發(fā)表于 11-09 15:48 ?838次閱讀

    Skyworks:Q1財季營收將低于預期,華為Mate 60沒有帶來太大影響

    skyworks解釋說:“華為今年8月推出的mate 60并沒有產生太大的影響。這是為了減輕投資者們擔心中國國內半導體制造商之間的競爭激化會導致市場占有率下降的憂慮?!?/div>
    的頭像 發(fā)表于 11-03 11:29 ?804次閱讀

    F407的FATFS工程占用的內存太大了怎么減小?

    F407的FATFS工程占用的內存太大了,怎么減小
    發(fā)表于 10-23 06:13

    沒有什么軟件可以提高STM32的開發(fā)效率?

    沒有什么軟件可以提高STM32的開發(fā)效率
    發(fā)表于 10-09 07:48