CAS Latency

CAS Latency

列地址選通脈衝時間延遲,CL反應時間是衡定內存的另一個標誌。CL是CAS Latency的縮寫,指的是內存存取數據所需的延遲時間,簡單的說,就是內存接到CPU的指令后的反應速度。

簡介


列地址選通脈衝時間延遲,CL反應時間是衡定內存的另一個標誌。CL是CAS Latency的縮寫,指的是內存存取數據所需的延遲時間,簡單的說,就是內存接到CPU的指令后的反應速度。一般的參數值是2和3兩種。數字越小,代表反應所需的時間越短。在早期的PC133內存標準中,這個數值規定為3,而在Intel重新制訂的新規範中,強制要求CL的反應時間必須為2,這樣在一定程度上,對於內存廠商的晶元及PCB的組裝工藝要求相對較高,同時也保證了更優秀的品質。因此在選購品牌內存時,這是一個不可不察的因素。
什麼是CAS,CL(CAS Latency)? CAS意為列地址選通脈衝(Column Address Strobe 或者Column Address Select),CAS控制著從收到命令到執行命令的間隔時間,通常為2,2.5,3這個幾個時鐘周期。在整個內存矩陣中,因為CAS按列地址管理物理地址,因此在穩定的基礎上,這個非常重要的參數值越低越好。過程是這樣的,在內存陣列中分為行和列,當命令請求到達內存后,首先被觸發的是tRAS (Active to Precharge Delay),數據被請求后需預先充電,一旦tRAS被激活后,RAS才開始在一半的物理地址中定址,行被選定后,tRCD初始化,最後才通過CAS找到精確的地址。整個過程也就是先行定址再列定址。從CAS開始到CAS結束就是現在講解的CAS延遲了。因為CAS是定址的最後一個步驟,所以在內存參數中它是最重要的。
CL(CAS Latency):為CAS的延遲時間,這是縱向地址脈衝的反應時間,也是在一定頻率下衡量支持不同規範的內存的重要標誌之一。
內存負責向CPU提供運算所需的原始數據,而目前CPU運行速度超過內存數據傳輸速度很多,因此很多情況下CPU都需要等待內存提供數據,這就是常說的“CPU等待時間”。內存傳輸速度越慢,CPU等待時間就會越長,系統整體性能受到的影響就越大。因此,快速的內存是有效提升CPU效率和整機性能的關鍵之一。
在實際工作時,無論什麼類型的內存,在數據被傳輸之前,傳送方必須花費一定時間去等待傳輸請求的響應,通俗點說就是傳輸前傳輸雙方必須要進行必要的通信,而這種就會造成傳輸的一定延遲時間。CL設置一定程度上反映出了該內存在CPU接到讀取內存數據的指令后,到正式開始讀取數據所需的等待時間。不難看出同頻率的內存,CL設置低的更具有速度優勢。
在Intel公司的PC100內存技術白皮書中指出:“符合PC100標準的內存晶元應該以CAS Latency(以下簡稱CL)= 2的情況穩定工作在100MHZ的頻率下。”CL=2所表示的意義是此時內存讀取數據的延遲時間是兩個時鐘周期。當CL=3時,內存讀取數據的延遲時間就應該是三個時鐘周期,因此,這“2”與“3”之間的差別就不僅僅局限於“1”了,而是1個時鐘周期。工作在相同頻率下的同種內存,將CL設置為2會得到比3更優秀的性能(當然你的內存必須支持CL=2的模式)。為了使主板正確地為內存設定CAS延遲時間,內存生產廠商都將其內存在不同工作頻率下所推薦的CAS延遲時間記錄在了內存PCB板上的一塊EEPROM上,這塊晶元就是我們所說的SPD。當系統開機時,主板BIOS會自動檢測SPD中的信息並最終確定是以CL=2還是CL=3來運行。
上面只是給大家建立一個基本的CL概念,而實際上內存延遲的基本因素絕對不止這些。內存延遲時間有個專門的術語叫“Latency”。要形象的了解延遲,我們不妨把內存當成一個存儲著數據的數組,或者一個EXCEL表格,要確定每個數據的位置,每個數據都是以行和列編排序號來標示,在確定了行、列序號之後該數據就唯一了。內存工作時,在要讀取或寫入某數據,內存控制晶元會先把數據的行地址傳送過去,這個RAS信號(Row Address Strobe,行地址信號)就被激活,而在轉化到行數據前,需要經過幾個執行周期,然後接下來CAS信號(Column Address Strobe,列地址信號)被激活。在RAS信號和CAS信號之間的幾個執行周期就是RAS-to-CAS延遲時間。在CAS信號被執行之後同樣也需要幾個執行周期。此執行周期在使用標準PC133的SDRAM大約是2到3個周期;而DDR RAM則是4到5個周期。在DDR中,真正的CAS延遲時間則是2到2.5個執行周期。RAS-to-CAS的時間則視技術而定,大約是5到7個周期,這也是延遲的基本因素。
CL設置較低的內存具備更高的優勢,這可以從總的延遲時間來表現。內存總的延遲時間有一個計算公式,總延遲時間=系統時鐘周期×CL模式數+存取時間(tAC)。首先來了解一下存取時間(tAC)的概念,tAC是Access Time from CLK的縮寫,是指最大CAS延遲時的最大數輸入時鐘,是以納秒為單位的,與內存時鐘周期是完全不同的概念,雖然都是以納秒為單位。存取時間(tAC)代表著讀取、寫入的時間,而時鐘頻率則代表內存的速度。
舉個例子來計算一下總延遲時間,比如一條DDR333內存其存取時間為6ns,而其內存時鐘周期為6ns(DDR內存時鐘周期=1X2/內存頻率,DDR333內存頻率為333MHz,則可計算出其時鐘周期為6ns)。我們在主板的BIOS中將其CL設置為2.5,則總的延遲時間=6ns X2.5+6ns=21ns,而如果CL設置為2,那麼總的延遲時間=6ns X2+6ns=18 ns,就減少了3ns的時間。
從總的延遲時間來看,CL值的大小起到了很關鍵的作用。所以對系統要求高和喜歡超頻的用戶通常喜歡購買CL值較低的內存。目前各內存顆粒廠商除了從提高內存時鐘頻率來提高DDR的性能之外,已經考慮通過更進一步的降低CAS延遲時間來提高內存性能。
不過,並不是說CL值越低性能就越好,因為其它的因素會影響這個數據。例如,新一代處理器的高速緩存較有效率,這表示處理器比較少地直接從內存讀取數據。再者,列的數據會比較常被存取,所以RAS-to-CAS的發生幾率也大,讀取的時間也會增多。最後,有時會發生同時讀取大量數據的情形,在這種情形下,相鄰的內存數據會一次被讀取出來,CAS延遲時間只會發生一次。

注意


選擇購買內存時,最好選擇同樣CL設置的內存,因為不同速度的內存混插在系統內,系統會以較慢的速度來運行,也就是當CL2.5和CL2的內存同時插在主機內,系統會自動讓兩條內存都工作在CL2.5狀態,造成資源浪費。