說起內存參數,大家肯定多知道容量、頻率,甚至是電壓、顆粒來源等,但和頻率一樣決定了內存性能高低的時序(也常說延遲),卻往往容易被忽視。
今天,影馳就內存時序做了一個簡單的科普,一起來了解下。
內存頻率是一個數字,而內存時序則是一大串數字,最常用的就有4個,表述的時候中間用破折號隔開,例如16-18-18-38。
這些數字都表示延遲,也就是內存的反應時間。當內存接收到CPU發來的指令后,通常需要幾個時鍾周期來處理它,比如訪問某一塊數據,這就對應時序參數。
當然了,這個處理時間越短,內存性能越好。
內存時序4個數字對應的參數分別為CL、tRCD、tRP、tRAS,單位都是時間周期,也就是一個沒有單位的純數字。
CL(CAS Latency):列地址訪問的延遲時間,是時序中最重要的參數
tRCD(RAS to CAS Delay):內存行地址傳輸到列地址的延遲時間
tRP(RAS Precharge Time):內存行地址選通脈沖預充電時間
tRAS(RAS Active Time):行地址激活的時間
看完感覺更懵圈了?沒關系,給你舉個例子。
我們可以把內存存儲數據的地方想象成下面這樣,每個方格都存儲着不同的數據。CPU需要什么數據,就向內存發來相應的指令,比如想要的位置是C4。
內存收到CPU的指令之后,要先確定數據具體在哪一行,時序的第二個參數tRCD就代表這個時間,意思就是內存控制器接收到行的指令后,需要等待多長時間才能訪問這一行。
由於每一行都有多個數據,內存並不能哪一個才是CPU需要找的,所以tRCD只是一個估值,這也就是為什么小幅改動這個數值,並不會顯著改變內存的性能。
內存確定了數據所在的行之后,要想找出數據,還得確定列。時序的第一個數字也就是CL(CAS),就表示內存確定了行數之后,還得等待多長時間,才能訪問具體的列數(時間周期)。
行列必然產生交點,也就是說確定了行數和列數之后,就能准確找到目標數據,所以CL是一個准確的值,任何改動都會影響目標數據的位置,所以它在時序當中是最關鍵的一個參數,對內存性能的發揮着舉足輕重的作用。
內存時序的第三個參數tRP,就是如果我們已經確定了一行,還要再確定另外一行所需要等待的時間(時間周期)。
第四個參數tRAS,可以簡單理解成內存寫入或者讀取數據的一個時間,它一般接近於前三個參數的總和。
所以,在保障穩定性的前提下,內存時序越低越好,而高頻率和低時序是個矛盾體,一般頻率上去了,時序就得有所犧牲,要想足夠低的時序,頻率又很難拔高。
那么,時序對內存性能的影響到底有多大呢?
我們做了一個測試,保持內存頻率不變,可以看到,內存的性能隨着時序的變小而不斷變強。
另外,時序改變后,內存延遲的變化比內存讀寫速度的變化更加明顯,這也說明時序對內存的影響,更側重在延遲方面。
現在,你懂了嗎?