玩家论坛's Archiver

Onepagebook 发表于 2007-6-11 19:50

[狂少]揭開記憶體各種參數應用的面紗

我想大家都在絞盡腦汁發掘電腦的效能,那這個所謂的效能是啥呢?也就是記憶體頻寬對整個系統從啟動到關機的一些重要作用,它關係到系統整體速度。
大家在設定這些memory timings時,先以低總時脈(高倍頻低外頻)來熟練一切,其效能也許比一味追求高記憶體時脈還要好。

選購記憶體時,大家也都知道,相同頻率下所謂的延遲參數(time of delay value)越低的記憶體其整體寬也會隨之增加,也就是要儘量選CAS/tRCD/tRPD/tRAS參數值低的記憶體。舉個例子,如果系統FSB為400MHz,你需要搭配使用PC3200規格的DDR記憶體,理想的CAS值是2; 這是在DDRI時代大家都知道嚕。
DDR2時代如果要把系統FSB超頻到500MHz,同步的情況下則需要DDRII 1000的記憶體。當大家選購高頻率的記憶體時,應該會發現其CAS延遲通常都比較高,DDRI是CAS 2.5或者3; DDR2是 CAS 4 or 5是比較一般的。然而CAS是最敏感的記憶體參數,CAS值從5降低到4,雖然只有1/5的數值比例(數率),但另一方面,如果這種情況發生在一個fsb為500MHz; CPU : RAM為1:1的系統上,你的系統效能會提升約20%之多!
所以我們在行有餘力之後,如果你能知道如何去把記憶體的效能搾出來,是真的能提升系統效能的.這樣做,並不是只是為求縮短super pi的運算時間,super pi的運算只是一種驗證,就是對系統最基本的效能提升做驗證.
以下狂少將挑一些重要參數來先做解說,這些都是很重要的參數.一直都會出現的參數
.但是老實說,我敢說一句,這些為什麼都沒有人想說把他寫成中文呢?因為是真的很難去把他翻譯的很貼切.那我就做做看.OK..首先,要了解那些煩人的參數,你一定要知道,控制記憶體的總源頭--->記憶體控製器

記憶體控製器:
  記憶體控製器是主機板...或也可說是整部電腦上最重要的組成設備之一。它的功能是監督控制資料從記憶體載入/輸出(input & output); 如果情況需要,還可以對資料的完整性進行檢測(Data integration verification).
  晶片組決定了支援的處理器類型,通常包含幾組控製器, 分別控制著處理器和其他元件的資料交換. 而記憶體控製器是晶片組很一般的一部分,它建立了從記憶體到CPU的資料.如果是支援雙通道模式的晶片組,就會包含兩組記憶體控製器,最另人覺得不同的是, AMD的CPU,內部整合了記憶體控製器; 這是非常創新而且是大膽的設計.大好大壞,好的是如果user今天買到好記憶體控制器的AMD CPU,那真的是要風得風要雨得雨.就算買到不怎樣的ram, 馬上都變黃金ram.反之,如果是AMD內建記憶體是勞賽的...就算你有好ram,也是阿婆生子...一字難.

記憶體參數規格:

  記憶體的時序參數一般簡寫為3/3/3/8/1T的格式,分別代表CAS/tRCD/tRP/tRAS/CMD的值. 3/3/3/8/1T中最後兩個參數,也就是tRAS和CMD(Command縮寫), 是其中較複雜的參數。目前市場上對這兩個參數的認識有一些錯誤,因為部分記憶體廠商直接用它們來代表記憶體效能,這是有點不對的

CMD Rate正解:
  Command Rate是翻譯為"首要指令之延遲",這個參數的含義是選定Bank後多少時間可以發出具體的找尋位址之行(ROW)啟動指令,服務機構是時鐘脈週期。片選是指對行(此處是指Row,後續會有"列")具體Bank的選項(通過DIMM上CS片選的信號來進行);聽起來很複雜對吧?但是大家可以用反面來思考!!如果系統指使用一條單面記憶體,那就不存在片選的問題了,因為此時只有一個具體的Bank數。

  那用更通俗的說法,CMD Rate是一種晶片組意義上的延遲,它並不全由記憶體決定哦, 是由晶片組把虛擬位址解釋為物理位址;所以系統的虛擬記憶體設定是很中要的,在現在這種記憶體早已非10年前記憶體大小的狀況下,我們通常都是設1gb,也就是1024mb~1024mb為衡定vm(virtual memory,虛擬記憶體);一般來說高密度大容量的系統記憶體的物理位址範圍更大,其CMD延遲肯定比只有單條記憶體的系統大,即使是雙面單條. Intel對CMD這個問題就非常敏感, 因此部分晶片組的記憶體通道被限制到四個Bank。這樣就可以比較放心地把CMD Rate限定在1T,而不理用戶最多能安裝多少容量的記憶體. 但是在晶片組與記憶體時脈與容量相對在提高的今日,記憶體同時也邁密度越來越高的時代,1t CMD幾乎已經成為歷史名詞嚕.

  不少廠商一直強調他家CMD Rate可以設為1T實際上多少也算是一種誤導性廣告,因為所有的無緩衝(unbuffered)記憶體都應具有1T的CMD Rate,最多支持四個Bank每條記憶體通道,當然也不排除晶片組的侷限性。
**********************************************************************


Part II
tRAS, tCL, tRCD and tRP

要調好系統的記憶體效能就得先透徹了解這4大金剛在搞啥.這4個參數是到目前為止大家一定會在任何晶片組,或說是任何不同平台的主機板bios內看到. (只要你是玩超頻的啦:D),其它細部副屬參數則是大多衍生自此.所以一定要詳加了解.
先從tRAS講起
**注意, 記憶體位址都會有"行"跟"列";所以狂少這一系列文章都會先以"行"來做說明.所以,先解釋兩個縮寫: RAS 跟CAS

RAS=Row Address Strobe(或是Select)(行的位址選通脈衝)
CAS=Column Address Strobe(或是Select)(列位址選通脈衝)

tRAS:

  tRAS在記憶體規範的解釋是Active to Precharge Delay,"行"的有效至行的預先充電時間。

[color=red]整體上是指memory從收到一個請求後到啟始化RAS真正開始接受資料的間隔時間[/color]

這個參數看上去似乎很重要,其實設定數據上差不了多少但是也有一定高效能的範圍來作設定。tRAS指令是再去執行新資料與指令的程序(例如開啟一個新的程序)
以英文來說就很容易了解:

Active to Precharge Delay (tRAS): After an “Active” command is issued, another “Precharge” command cannot be issued until tRAS has been elapsed. So this parameter limits when the memory can start reading (or writing) a different row.


  接下來幾個記憶體參數分別為CAS延遲,tRCD,以及tRP,這些參數又是如何來影響系統效能的呢?

CAS:

  CAS之意為列的位址選通脈衝(Column Address Strobe 或者Column Address Select),CAS控制著從收到指令到執行指令的間隔時間,通常在DDRI為2,2.5,3這個幾個週期; DDR2則為 3, 4, 5.

[color=Red]在整個記憶體矩陣中(就是行加上列的位址),因為CAS是按列的位址來管理實體位址,因此在穩定的基礎上,這個非常重要的參數值就不是讓大家說設多少多沒差的,當然是越低效能會越高,但相對的,穩定性就會減低,原因就要看看CAS的程序;)[/color]
程序是這樣的,在記憶體陣列中分為行和列,當指令請求到達記憶體後,首先被觸發的是tRAS (Active to Precharge Delay),資料被請求執行後需預先充電,一旦tRAS被啟動後,RAS才開始在一半的物理位址中找尋位址,要被執行的行位被選定後tRCD啟始化,最後才通過CAS找到精確的位址。整個程序也就是先跑"行尋址"再跑"列尋址"也就是從RAS開始到CAS結束.

那比較簡單的說法是: CAS的時間..就是等於...舉例:

[color=Red]從A點到B點,如果是100公尺,兩個人下去跑
甲所需的時間是10.0秒;乙所需的時間是10.5秒
再假設,甲和乙都是機器人..那如果我們所設定的不是兩個都跑單趟
那是不是甲的第10.1秒及乙的第10.6秒才是第2段跑的開始.
**請不必理會方向性.
所以這就是Cas latency的基本概念;)[/color]

**談到CAS Latency,各位知道ram的delay時間長度如何計算嗎?;)
很簡單.我們舉個例子.
假設我手上有一對號稱DDR800 CL3的DDR2 (其實不管是I or II算法都一樣)
那我聽人家說...喔..800的IC是-2.5ns...
好請注意,拜託一下,看了狂少文章之後,請不要再說是"-2.5ns",那是廠商打印時為了區分序號和IC時效所增加的一橫..:D
ok...怎麼算?
DDR 800...其實是跑400對吧?因為是Double Data Rate; 所以我們在算的時候是以真實的頻率去計算.既然是頻率..那還不簡單...知道頻率,那時間就是頻率分之1的數值對吧?所以公式就出現啦:

T= 1/F.....F當然就是Frequency..:D

那ddr800...是跑400mhz...那是1/400嗎? 錯!!...那個M是瞎咪啦?
M=mega=10的6次方..也就是要在400後面再加6個0
所以咧. 1/400000000  等於多少?---->0.0000000025
那為求方便起見,我們都習慣說是2.5x10的負9次方..
在數學上就是所謂的nano,所以一般通稱2.5奈米IC就是DDR800的IC速度

2.5 nano seconds知道後,還要知道啥?...我怎知道狂少說ddr800 cl3比cl4好?
攪不好他亂吹..
好,如果用說的不算,那我們用科學的方法來驗證!!

CL既然是記憶體最主要的延遲數據,那到底在該記憶體的規格上是全部延遲多少?

如果我們把速度都定好都是ddr800(400mhz real), 一個是CL3,一個是CL4,再加一個CL5...

那就是:
公式: 總延遲時間= CL delay time (Value) x period of each clock cycle

DDR800 CL3= 3 x 2.5ns = 7.5ns
DDR800 CL4= 4 x 2.5ns = 10 ns
DDR800 CL5= 5 x 2.5ns = 12.5ns

也就是說,這3種ram是隔2.5ns的效能差距...800 CL3和800 CL5以不超頻跑同速來說
效能上已經差到50%左右嚕.這樣會算了吧.;)


tRCD:

  根據標準tRCD是指 timing of RAS to CAS Delay(RAS至CAS延遲);那我們都知道Ras是代表行的位址,CAS是列. 那在這兩個參數去尋找特定的位址點時,所要花費的時間延遲,就是tRCD, tRCD重要性通常是僅次於Cas Latency.所以大家會看到
xxx牌ram標榜..800 3-4-3-x, 或是1000 4-5-4-15....第2位數就是TRCD!
再以一般通俗講法就是:

[color=Red]tRCD是RAS啟動去尋找特定位址所需時間和CAS啟動去尋找特定位址所需時間的....時間差[/color]
那當然啊,時間越短就是效能越高..
請看圖

[img]http://www.opbcorner.com/guide/trcd.gif[/img]

哈,有趣的來了,大家都知道, memory脫離不了讀與寫;)
從上圖來看,trcd也是等於整個memory從啟動到讀...這動作所需的延遲時間...
所以tRCD也可以稱為"TRCRD". 那大家有可能會產生疑問...mmm,狂少說,讀和寫嘛..
那有沒有TRCWD?...有...而且還是在最受歡迎的Intel P965晶片組上,而且參數設置可以比TRCD緊很多. 不信大家打開memset看看第3個參數是啥?所以像這個TRCWD就是在此出現嚕.


tRP:

  tRP指RAS Precharge Time,就是行的預先充電時間。也就是記憶體從結束一個行的定位結束到重新開始同樣動作的間隔時間,所以參數設置上比較沒那麼吃緊.舉例來說如果你從事的工作需要大量的資料變化; 例如3D繪圖,此時一個程序就需要使用很多的行來存儲!! tRP的參數值越低表示在不同行切換的速度會越快,當然也會促始讀寫動作加快,那此時是不是又產生兩個副參數?那就是 TWTP 和TRTP;一樣的道理, write一定比Read花久一點時間,所以在設置上; twtp一定要比trtp來得鬆,大家也可以參考memset在965晶片上的設定!!都在subtimings中可以找到. TRP的圖解如下

[img]http://www.opbcorner.com/guide/trp.gif[/img]



Part II 總結:

  或許你看完以上的解說後還是有一些不懂,其實大家也沒必要對整個記憶體的虛擬動作與過程瞭解的非常透徹,這個並不影響你選什麼規格的記憶體,以及如何在BIOS中最佳化你的記憶體參數. 最基本的,你應該知道的是系統至少需要搭配能滿足CPU及頻寬的記憶體,然後CAS Latency越低越好.建議大家升級時,多考慮高頻一點的ram,這樣或許你將來升級CPU時可以節省一筆記憶體費用,高頻率的記憶體都是向下相容的!!
  一般而言,想要把超頻做好,記憶體是很重要的一環,不是都靠運氣就會有好超的東西上門;)超頻有85%的難題全部是卡在Ram的瓶頸.所以當開始超新板子時一定是先把CPU及RAM其中一環定好,才不會導至首尾不能兼顧!!


Part III,狂少將會以實例來解釋這些所謂的理論部分. 至少懂這些之後,大家以後看測試圖,一定是有看就有懂.:D


狂少

artkobe 发表于 2007-6-11 23:09

为什么这个好帖没人看呢?

冷血悍将 发表于 2007-6-12 03:13

繁体,看着费劲![s004]

zwj051484 发表于 2007-6-12 14:03

不是非常仔细的看完了。。。

头也晕了!~~[s004] [s004] [s004]

石头 发表于 2007-6-12 19:36

太经典了。。。希望大家能仔细看完,绝对胜读十年书

M.M. 发表于 2007-6-12 19:45

少爷辛苦啦[s023]

看到这个标题我就知道一定是OPB才可以撰的出来,感谢分享!

fayallen 发表于 2007-6-13 11:21

繁体看着是很累饿。。。保存下来慢慢看=。=

简单感觉 发表于 2007-6-13 11:23

看来还是要多读点书了`

烧饼 发表于 2007-6-13 11:25

[s018]

peakking 发表于 2007-6-13 11:26

顶几个,牛人发的牛帖

DaKid 发表于 2007-6-13 11:26

真的要好好的学习下!

liuz18168 发表于 2007-6-13 12:14

晕哦,繁体~~~~~~~~

65181092 发表于 2007-6-13 12:37

难得看到

M.M. 发表于 2007-6-13 16:45

再次解释一下,OnePageBook(狂少)是台湾同胞,那边就用繁体输入啦,看着不方便的朋友请将全文复制到Word中进行繁简转换[s023]

lovepic 发表于 2007-6-15 14:49

好文,拜读了开头了,虽然字多且繁体,不过还是要坚持看完的[s018] 感谢分享!

沧桑De小帅 发表于 2007-6-17 18:22

好东西啊,台湾同胞你好!
真厉害  呵呵,

VictorWang 发表于 2007-6-18 02:24

哇靠,你怎么总是有这么多时间来写教学贴![s008]

M.M. 发表于 2007-6-20 09:10

回复 #17 VictorWang 的帖子

老王,你也多做些贡献嘛

hulandy 发表于 2007-6-21 08:26

好东西。可惜字太多了。又是繁体。[s004]

西门吹雪 发表于 2007-6-23 14:01

好帖
复制收藏了

2002qk 发表于 2007-7-19 08:35

没看完,繁体排版还那么密实在是头昏啊

jacklin78 发表于 2007-8-3 14:01

看文,值得多读.

中村俊辅 发表于 2007-8-4 20:09

onepagebook你是我的偶像![s025]

njb2008 发表于 2007-8-13 16:51

我想大家都在绞尽脑汁发掘电脑的效能,那这个所谓的效能是啥呢?也就是记忆体频宽对整个系统从启动到关机的一些重要作用,它关系到系统整体速度。
大家在设定这些memory timings时,先以低总时脉(高倍频低外频)来熟练一切,其效能也许比一味追求高记忆体时脉还要好。

选购记忆体时,大家也都知道,相同频率下所谓的延迟参数(time of delay value)越低的记忆体其整体宽也会随之增加,也就是要尽量选CAS/tRCD/tRPD/tRAS参数值低的记忆体。举个例子,如果系统FSB为400MHz,你需要搭配使用PC3200规格的DDR记忆体,理想的CAS值是2; 这是在DDRI时代大家都知道噜。
DDR2时代如果要把系统FSB超频到500MHz,同步的情况下则需要DDRII 1000的记忆体。当大家选购高频率的记忆体时,应该会发现其CAS延迟通常都比较高,DDRI是CAS 2.5或者3; DDR2是 CAS 4 or 5是比较一般的。然而CAS是最敏感的记忆体参数,CAS值从5降低到4,虽然只有1/5的数值比例(数率),但另一方面,如果这种情况发生在一个fsb为500MHz; CPU : RAM为1:1的系统上,你的系统效能会提升约20%之多!
所以我们在行有余力之后,如果你能知道如何去把记忆体的效能榨出来,是真的能提升系统效能的.这样做,并不是只是为求缩短super pi的运算时间,super pi的运算只是一种验证,就是对系统最基本的效能提升做验证.
以下狂少将挑一些重要参数来先做解说,这些都是很重要的参数.一直都会出现的参数
.但是老实说,我敢说一句,这些为什么都没有人想说把他写成中文呢?因为是真的很难去把他翻译的很贴切.那我就做做看.OK..首先,要了解那些烦人的参数,你一定要知道,控制记忆体的总源头--->记忆体控制器

记忆体控制器:
  记忆体控制器是主机板...或也可说是整部电脑上最重要的组成设备之一。它的功能是监督控制资料从记忆体载入/输出(input & output); 如果情况需要,还可以对资料的完整性进行检测(Data integration verification).
  晶片组决定了支援的处理器类型,通常包含几组控制器, 分别控制着处理器和其他元件的资料交换. 而记忆体控制器是晶片组很一般的一部分,它建立了从记忆体到CPU的资料.如果是支援双通道模式的晶片组,就会包含两组记忆体控制器,最另人觉得不同的是, AMD的CPU,内部整合了记忆体控制器; 这是非常创新而且是大胆的设计.大好大坏,好的是如果user今天买到好记忆体控制器的AMD CPU,那真的是要风得风要雨得雨.就算买到不怎样的ram, 马上都变黄金ram.反之,如果是AMD内建记忆体是劳赛的...就算你有好ram,也是阿婆生子...一字难.

记忆体参数规格:

  记忆体的时序参数一般简写为3/3/3/8/1T的格式,分别代表CAS/tRCD/tRP/tRAS/CMD的值. 3/3/3/8/1T中最后两个参数,也就是tRAS和CMD(Command缩写), 是其中较复杂的参数。目前市场上对这两个参数的认识有一些错误,因为部分记忆体厂商直接用它们来代表记忆体效能,这是有点不对的

CMD Rate正解:
  Command Rate是翻译为"首要指令之延迟",这个参数的含义是选定Bank后多少时间可以发出具体的找寻位址之行(ROW)启动指令,服务机构是时钟脉週期。片选是指对行(此处是指Row,后续会有"列")具体Bank的选项(通过DIMM上CS片选的信号来进行);听起来很复杂对吧?但是大家可以用反面来思考!!如果系统指使用一条单面记忆体,那就不存在片选的问题了,因为此时只有一个具体的Bank数。

  那用更通俗的说法,CMD Rate是一种晶片组意义上的延迟,它并不全由记忆体决定哦, 是由晶片组把虚拟位址解释为物理位址;所以系统的虚拟记忆体设定是很中要的,在现在这种记忆体早已非10年前记忆体大小的状况下,我们通常都是设1gb,也就是1024mb~1024mb为衡定vm(virtual memory,虚拟记忆体);一般来说高密度大容量的系统记忆体的物理位址范围更大,其CMD延迟肯定比只有单条记忆体的系统大,即使是双面单条. Intel对CMD这个问题就非常敏感, 因此部分晶片组的记忆体通道被限制到四个Bank。这样就可以比较放心地把CMD Rate限定在1T,而不理用户最多能安装多少容量的记忆体. 但是在晶片组与记忆体时脉与容量相对在提高的今日,记忆体同时也迈密度越来越高的时代,1t CMD几乎已经成为历史名词噜.

  不少厂商一直强调他家CMD Rate可以设为1T实际上多少也算是一种误导性广告,因为所有的无缓冲(unbuffered)记忆体都应具有1T的CMD Rate,最多支持四个Bank每条记忆体通道,当然也不排除晶片组的侷限性。
**********************************************************************


Part II
tRAS, tCL, tRCD and tRP

要调好系统的记忆体效能就得先透彻了解这4大金刚在搞啥.这4个参数是到目前为止大家一定会在任何晶片组,或说是任何不同平台的主机板bios内看到. (只要你是玩超频的啦:D),其它细部副属参数则是大多衍生自此.所以一定要详加了解.
先从tRAS讲起
**注意, 记忆体位址都会有"行"跟"列";所以狂少这一系列文章都会先以"行"来做说明.所以,先解释两个缩写: RAS 跟CAS

RAS=Row Address Strobe(或是Select)(行的位址选通脉冲)
CAS=Column Address Strobe(或是Select)(列位址选通脉冲)

tRAS:

  tRAS在记忆体规范的解释是Active to Precharge Delay,"行"的有效至行的预先充电时间。

整体上是指memory从收到一个请求后到启始化RAS真正开始接受资料的间隔时间

这个参数看上去似乎很重要,其实设定数据上差不了多少但是也有一定高效能的范围来作设定。tRAS指令是再去执行新资料与指令的程序(例如开启一个新的程序)
以英文来说就很容易了解:

Active to Precharge Delay (tRAS): After an “Active” command is issued, another “Precharge” command cannot be issued until tRAS has been elapsed. So this parameter limits when the memory can start reading (or writing) a different row.


  接下来几个记忆体参数分别为CAS延迟,tRCD,以及tRP,这些参数又是如何来影响系统效能的呢?

CAS:

  CAS之意为列的位址选通脉冲(Column Address Strobe 或者Column Address Select),CAS控制着从收到指令到执行指令的间隔时间,通常在DDRI为2,2.5,3这个几个週期; DDR2则为 3, 4, 5.

在整个记忆体矩阵中(就是行加上列的位址),因为CAS是按列的位址来管理实体位址,因此在稳定的基础上,这个非常重要的参数值就不是让大家说设多少多没差的,当然是越低效能会越高,但相对的,稳定性就会减低,原因就要看看CAS的程序;)
程序是这样的,在记忆体阵列中分为行和列,当指令请求到达记忆体后,首先被触发的是tRAS (Active to Precharge Delay),资料被请求执行后需预先充电,一旦tRAS被启动后,RAS才开始在一半的物理位址中找寻位址,要被执行的行位被选定后tRCD启始化,最后才通过CAS找到精确的位址。整个程序也就是先跑"行寻址"再跑"列寻址"也就是从RAS开始到CAS结束.

那比较简单的说法是: CAS的时间..就是等于...举例:

从A点到B点,如果是100公尺,两个人下去跑
甲所需的时间是10.0秒;乙所需的时间是10.5秒
再假设,甲和乙都是机器人..那如果我们所设定的不是两个都跑单趟
那是不是甲的第10.1秒及乙的第10.6秒才是第2段跑的开始.
**请不必理会方向性.
所以这就是Cas latency的基本概念;)

**谈到CAS Latency,各位知道ram的delay时间长度如何计算吗?;)
很简单.我们举个例子.
假设我手上有一对号称DDR800 CL3的DDR2 (其实不管是I or II算法都一样)
那我听人家说...喔..800的IC是-2.5ns...
好请注意,拜託一下,看了狂少文章之后,请不要再说是"-2.5ns",那是厂商打印时为了区分序号和IC时效所增加的一横..:D
ok...怎么算?
DDR 800...其实是跑400对吧?因为是Double Data Rate; 所以我们在算的时候是以真实的频率去计算.既然是频率..那还不简单...知道频率,那时间就是频率分之1的数值对吧?所以公式就出现啦:

T= 1/F.....F当然就是Frequency..:D

那ddr800...是跑400mhz...那是1/400吗? 错!!...那个M是瞎咪啦?
M=mega=10的6次方..也就是要在400后面再加6个0
所以咧. 1/400000000  等于多少?---->0.0000000025
那为求方便起见,我们都习惯说是2.5x10的负9次方..
在数学上就是所谓的nano,所以一般通称2.5奈米IC就是DDR800的IC速度

2.5 nano seconds知道后,还要知道啥?...我怎知道狂少说ddr800 cl3比cl4好?
搅不好他乱吹..
好,如果用说的不算,那我们用科学的方法来验证!!

CL既然是记忆体最主要的延迟数据,那到底在该记忆体的规格上是全部延迟多少?

如果我们把速度都定好都是ddr800(400mhz real), 一个是CL3,一个是CL4,再加一个CL5...

那就是:
公式: 总延迟时间= CL delay time (Value) x period of each clock cycle

DDR800 CL3= 3 x 2.5ns = 7.5ns
DDR800 CL4= 4 x 2.5ns = 10 ns
DDR800 CL5= 5 x 2.5ns = 12.5ns

也就是说,这3种ram是隔2.5ns的效能差距...800 CL3和800 CL5以不超频跑同速来说
效能上已经差到50%左右噜.这样会算了吧.;)


tRCD:

  根据标准tRCD是指 timing of RAS to CAS Delay(RAS至CAS延迟);那我们都知道Ras是代表行的位址,CAS是列. 那在这两个参数去寻找特定的位址点时,所要花费的时间延迟,就是tRCD, tRCD重要性通常是仅次于Cas Latency.所以大家会看到
xxx牌ram标榜..800 3-4-3-x, 或是1000 4-5-4-15....第2位数就是TRCD!
再以一般通俗讲法就是:

tRCD是RAS启动去寻找特定位址所需时间和CAS启动去寻找特定位址所需时间的....时间差
那当然啊,时间越短就是效能越高..
请看图

greetapple 发表于 2007-9-6 15:36

好文章,顶顶![s132]

疯狂的神棍 发表于 2008-1-23 00:10

看到眼花了~~总算学到点东西了![s120]

我爱美子 发表于 2008-1-27 17:41

收藏收藏,学习了!

peubaggio 发表于 2008-2-13 19:19

非常透彻,十分感谢

深蓝色海水 发表于 2008-2-18 15:41

好东东呃. . . .
支持[s149]

yshang 发表于 2008-2-19 01:37

已经没有动笔来写一篇帖子的习惯了,所以很赞赏楼主乐于分享的做法,于是写一些东西和大家交流一下:
1,CL为4并不会比CL为5快上20%。首先,tCL这个参数只针对数据读取;其次,一个内存存取操作并不仅仅包括CAS Latency这个时间,从预充电(precharge),到行地址的选中,之后是tCL,然后还有数据的brust time(由brust length决定),所有这些指令构成了一个完整的读操作,而tCL只是其中的一部分时间,如果指令控制得比较合理,能将列选之前的指令都前一个读写操作的过程中完成,一个读操作所花费的时间也至少还包含tCL和数据的brust time。简而言之,CL的影响并不是我们想象中那么大。
2,我所知道的CMD rate为2T是指内存的所有命令和地址信号在发送时都至少持续2个时间周期的时间,目的是给负载最重的命令和地址信号更多的时序裕量。简单的解释一下,对于一个有两条内存插槽的通道,普通情况会有4个CS(Chip Select)片选信号,4个CKE,4个ODT,和CAS,RAS,WE,BA[2:0],A[14:0]这些地址、命令信号,以及数据和时钟信号和这些内存插槽相连。它们的连接方式如下:4个CS(Chip Select)片选信号,4个CKE和4个ODT依次分别连接到第一个内存条的正面颗粒,第一个内存条的背面颗粒,第二个内存条的正面颗粒,第二个内存条的背面颗粒;而地址和命令信号连接所有内存条的所有可以;(数据和时钟信号的连接方式和我们这个讨论无关。)这样,如果插入了两条常见的双面内存条,那么地址和命令信号的负载将达到32个颗粒,远大于CS,CKE和ODT这些控制信号的8个颗粒。在现有的条件下,要满足这么多个负载的信号运行在较高的频率下(例如DDR2-667的1T模式)是不可行的,所以业界采用了2T CMD Rate这么一个解决方案,使地址和命令信号的频率生生下降了一半,来满足这些信号的建立时间和保持时间。简单的经验是,在一些常见的内存控制器中(例如PC主板的北桥),满足1条双面内存条运行在DDR2-667以下的1T模式的可以达到的,但更高的频率或更多的负载,1T就不可能了;而对于1条普通的单面内存条,任何频率下,如果2T可以运行,那么1T也理应可以运行。

kei8864 发表于 2008-3-22 09:45

這一定要頂一個狂少的文章~ [s150]

skk1984 发表于 2008-3-22 10:04

强贴 顶完慢慢看

kpting 发表于 2008-4-29 19:45

先保存下来,有时间时慢慢的在了解,呵呵

页: [1]

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.