CAS latency

CAS latency, CL (ang. column address strobe latency, opóźnienie bramkowania adresu kolumny) – czas utajenia (opóźnienie, czas dostępu), mierzony liczbą cykli zegara, jaki upływa między wysłaniem przez kontroler pamięci RAM żądania dostępu do określonej kolumny pamięci a otrzymaniem danych z tej kolumny przez kontroler.

Im niższa jest wartość CAS latency (przy danej częstotliwości taktowania), tym krótszy jest czas potrzebny na pobranie danych z pamięci – inaczej mówiąc: „im krótszy czas utajenia, tym lepiej”. Czas utajenia wpływa bowiem na szybkość wykonywania w pamięci operacji, takich jak pobranie kolejnej instrukcji do wykonania przez procesor (odczyt, zapis, porównanie, przesunięcie bitowe itp). Im dłuższy czas oczekiwania, tym dłużej procesor musi czekać na reakcję ze strony pamięci. Można przyspieszyć działanie pamięci stosując tzw. przeplot (ang. interleaving), co pozwala na rozdzielenie operacji zapisu na kilka banków pamięci lub stosując pamięć podręczną (ang. cache), umożliwiającą tymczasowe przechowywanie przetwarzanych danych w celu synchronizacji z modułami pamięci.

Większość producentów pamięci dynamicznych (DRAM) podaje parametr CAS latency w nazwie konkretnego modelu; niektórzy podają go bezpośrednio, np. CL15.

Pozostałe parametry pamięci[edytuj | edytuj kod]

  • RCD (RAS to CAS Delay; RAS – Row Access Strobe; CAS – Column Access Strobe) – czas jaki upływa od zakończenia wykonywania polecenia aktywacji konkretnej kolumny (CAS), do rozpoczęcia wykonywania polecenia aktywacji konkretnego wiersza (RAS).
  • RP (RAS Precharge; RAS – Row Access Strobe) – czas jaki upływa między wykonaniem polecenia zamknięcia dostępu do wcześniej aktywowanego wiersza a rozpoczęciem wykonywania polecenia aktywacji kolejnego.
  • RAT (Row Active Time) – czas jaki upływa od żądania wykonania polecenia aktywacji wiersza aż do jego dezaktywacji.
  • CR (Command Rate) – czas jaki upływa pomiędzy poleceniami adresowania dwóch niekoniecznie różnych komórek pamięci.

Opóźnienia CL, RCD, RP według specyfikacji JEDEC, dla poszczególnych częstotliwości w pamięciach typu DDR2, powinny wynosić:

  • DDR2-400 – 3-3-3, 4-4-4
  • DDR2-533 – 3-3-3, 4-4-4
  • DDR2-667 – 4-4-4, 5-5-5
  • DDR2-800 – 4-4-4, 5-5-5, 6-6-6

Parametr RAS JEDEC podaje w nanosekundach. Dla wszystkich standardów oprócz DDR2-400 3-3-3, gdzie ma on wartość od 40 do 70.000, powinien wynosić od 45 do 70.000.

Całkowity ciąg opóźnień[edytuj | edytuj kod]

CL-RCD-RP-RAS - RC-RFC-CR-RRD-WR-WTR-RTP

Wpływ na szybkość dostępu do pamięci[edytuj | edytuj kod]

Synchronous DRAM ma CAS latency, która jest uzależniona od taktu zegara. W związku z opóźnieniami CAS parametry modułu pamięci SDRAM określane są w cyklach zegarowych, a nie w czasie rzeczywistym.

Ponieważ moduł pamięci ma wiele wewnętrznych banków, sygnał wyjściowy może być zajęty w 100%, bez względu na opóźnienie CAS, poprzez pipelining. Niestety, ta maksymalna przepustowość może być osiągnięta jedynie wtedy, gdy znacznie wcześniej przed samym odczytem wiadomo które dane mają być odczytane, jeśli tego nie wiadomo, może nastąpić zjawisko hazardu, którego skutkiem będzie znaczny spadek wydajności. W wypadku całkowicie nieprzewidywalnego dostępu do pamięci, właściwym czasem opóźnienia jest: czas zamknięcia otwartego wiersza plus czas potrzebny na otwarcie nowego (RAS). Z uwagi na to, że operacje zapisu/odczytu są często wykonywane na sąsiadujących danych w jednym wierszu, do określenia opóźnienia wystarczy wtedy sam parametr CAS.

Ponieważ w nowoczesnych modułach pamięci opóźnienia (CAS) określane są w cyklach zegarowych a nie w czasie, aby dokonać rzetelnego porównania przy różnych częstotliwościach taktowania modułu należy przeliczyć podane opóźnienia na jednostkę czasu. Generalnie im mniejsze opóźnienia tym lepiej, z uwagi jednak na różnice w taktowaniu, może zaistnieć sytuacja kiedy większy CAS jednego modułu w praktyce oznacza szybszy dostęp do tego modułu. Producenci pamięci podają opóźnienia dla określonego taktu zegara, a więc możliwe jest obniżenie opóźnień poniżej zaleceń przy jednoczesnym obniżeniu taktowania.

DDR SDRAM wykorzystuje przy operacjach oba zbocza sygnału taktującego. Szybkość ta jest zwykle podawana przez producentów, zamiast właściwej częstotliwości zegara, która jest o połowę mniejsza niż szybkość transferu do i z modułów DDR, przy czym, opóźnienie CAS jest podawane w cyklach właściwego zegara taktującego, nie w cyklach 'DDR'.

Innym czynnikiem utrudniającym wyliczenie dokładnych opóźnień jest wykorzystanie transferów ciągłych. Nowoczesny mikroprocesor może mieć wielkość linii pamięci podręcznej wielkości 64 bajtów, wymaga to 8 transferów po 64-bity (8 bajtów) do wypełnienia linii. Za pomocą opóźnienia CAS można wtedy dokładnie zmierzyć tylko czas przesłania pierwszego słowa. Za czas przesłania kolejnych odpowiada opóźnienie RAS.

W poniższej tabeli dane przedstawione są podane w mln transferów na sekundę (MT/s), a częstotliwości taktowania są podane w megahercach (MHz).

Przykład timingów pamięci (CAS latency tylko)
Generacja Typ Szybkość
transmisji danych
Czas Bit Częstotliwość
taktowania
Czas cyklu CL Pierwsze słowo Czwarte słowo Ósme słowo
SDRAM PC100 100 MT/s 10 ns 100 MHz 10 ns 2 20 ns 50 ns 90 ns
PC133 133 MT/s 7,5 ns 133 MHz 7,5 ns 3 22,5 ns 45 ns 75 ns
DDR SDRAM DDR-333 333 MT/s 3 ns 166 MHz 6 ns 2,5 15 ns 24 ns 36 ns
DDR-400 400 MT/s 2,5 ns 200 MHz 5 ns 3 15 ns 22,5 ns 32,5 ns
2,5 12,5 ns 20 ns 30 ns
2 10 ns 17,5 ns 27,5 ns
DDR2 SDRAM DDR2-400 400 MT/s  2,5 ns 200 MHz  5 ns 3 15 ns 22,5 ns 32,5
4 20 ns 27,5 ns 37,5 ns
DDR2-533 533 MT/s 1,875 ns 266 MHz 3,75 ns 3 11,25 ns 16,88 ns 24,38 ns
4 15 ns 26,63 ns 18,13 ns
DDR2-667 667 MT/s 1,5 ns 333 MHz  3 ns 4 12 ns 16,5 ns 22,50 ns
5 15 ns 19,5 ns 25,5 ns
DDR2-800 800 MT/s 1,25 ns 400 MHz 2,5 ns 4 10 ns 13,75 ns 18,75 ns
4,5 11,25 ns 15 ns 20 ns
5 12,5 ns 16,25 ns 21,25 ns
6 15 ns 18,75 ns 23,75 ns
DDR2-1066 1066 MT/s 0,938 ns 533 MHz 1,875 ns 5 9,38 ns 12,19 ns 15,94 ns
4 7,5 ns 10,31 ns 14,06 ns
4,5 8,44 ns 11,25 ns 15 ns
6 11,25 ns 14,06 ns 17,81 ns
7 13,13 ns 15,94 ns 19,69 ns
DDR3 SDRAM DDR3-1066 1066 MT/s 0,938 ns 533 MHz 1,875 ns 7 13,13 ns 15,94 ns 19,69 ns
DDR3-1333 1333 MT/s 0,75 ns 666 MHz 1,5 ns 6 9 ns 11,25 ns 14,25 ns
7 10,5 ns 12,75 ns 15,75 ns
9 13,5 ns 15,75 ns 18,75 ns
DDR3-1375 1375 MT/s 0,73 ns 687 MHz 1,5 ns 5 7,27 ns 9,45 ns 12,36 ns
DDR3-1600 1600 MT/s 0,625 ns 800 MHz 1,25 ns 6 7,5 ns 9,38 ns 11,88 ns
7 8,75 ns 10,63 ns 13,13 ns
8 10 ns 11,88 ns 14,38 ns
9 11,25 ns 13,13 ns 15,63 ns
10 12,5 ns 14,38 ns 16,88 ns
11 13,75 ns 15,63 ns 18,13 ns
DDR3-1866 1866 MT/s 0,536 ns 933 MHz 1,071 ns 8 8,57 ns 10,18 ns 12,32 ns
9 9,64 ns 11,25 ns 13,39 ns
10 10,71 ns 12,32 ns 14,46 ns
DDR3-2000 2000 MT/s 0,500 ns 1000 MHz 1,000 ns 9 9 ns 10,5 ns 12,5 ns
DDR3-2133 2133 MT/s 0,469 ns 1066 MHz 0,938 ns 7 6,56 ns 7.97 ns 9,84 ns
8 8,44 ns 8,91 ns 10,78 ns
9 8,44 ns 9,84 ns 11,72 ns
10 9,38 ns 10,78 ns 12,66 ns
11 10,31 ns 11,72 ns 13,59 ns
12 11,31 ns 12,66 ns 14,53 ns
DDR3-2200 2200 MT/s 0,455 ns 1100 MHz 0,909 ns 7 6,36 ns 7,73 ns 9,55 ns
DDR3-2400 2400 MT/s 0,417 ns 1200 MHz 0,833 ns 9 7,50 ns 8,75 ns 10,42 ns
10 8,33 ns 9,58 ns 11,25 ns
11 9,17 ns 10,42 ns 12,08 ns
12 10 ns 11,25 ns 12,92 ns
13 10,83 ns 12,08 ns 13,75 ns
DDR3-2600 2600 MT/s 0,385 ns 1300 MHz 0,769 ns 11 8,46 ns 9,62 ns 11,15 ns
DDR3-2666 2666 MT/s 0,375 ns 1333 MHz 0,750 ns 11 8,25 ns 9,38 ns 10,88 ns
12 9 ns 10,13 ns 11,63 ns
13 9,75 ns 10,88 ns 12,38 ns
15 11,25 ns 12,38 ns 13,88 ns
DDR3-2800 2800 MT/s 0,357 ns 1400 MHz 0,714 ns 11 7,86 ns 8,93 ns 10,36 ns
12 8,57 ns 9,64 ns 11,07 ns
16 11,43 ns 12,50 ns 13,93 ns
DDR3-2933 2933 MT/s 0,341 ns 1466 MHz 0,682 ns 12 8,18 ns 9,20 ns 10,57 ns
DDR3-3000 3000 MT/s 0,333 ns 1500 MHz 0,667 ns 12 8 ns 9 ns 10,33 ns
DDR3-3100 3100 MT/s 0,323 ns 1550 MHz 0,645 ns 12 7,74 ns 8,71 ns 10 ns
DDR3-3200 3200 MT/s 0,313 ns 1600 MHz 0,625 ns 16 10 ns 10,94 ns 12,19 ns
DDR3-3300 3300 MT/s 0,303 ns 1650 MHz 0,606 ns 16 9,70 ns 10,61 ns 11,82 ns
DDR4 SDRAM DDR4-1600 1600 MT/s 0,625 ns 800 MHz 1,250 ns 10 12,50 ns 14,38 ns 16,88 ns
11 13,75 ns 15,63 ns 18,13 ns
12 15 ns 16,88 ns 19,38 ns
DDR4-1866 1866 MT/s 0,56 ns 933 MHz 1,071 ns 12 12,86 ns 14,46 ns 16,61 ns
13 13,93 ns 15,54 ns 17,68 ns
14 15 ns 16,61 ns 18,75 ns
DDR4-2133 2133 MT/s 0,469 ns 1066 MHz 0,938 ns 14 13,13 ns 14,53 ns 16,41 ns
15 14,06 ns 15,47 ns 17,34 ns
16 15 ns 16,41 ns 18,28 ns
DDR4-2200 2200 MT/s 0,455 ns 1100 MHz 0,909 ns 7 6,36 ns 7,73 ns 9,55 ns
DDR4-2400 2400 MT/s 0,417 ns 1200 MHz 0,833 ns 9 7,5 ns 8,75 ns 10,42 ns
10 8,33 ns 9,58 ns 11,25 ns
11 9,17 ns 10,42 ns 12,08 ns
12 10 ns 11,25 ns 12,92 ns
13 10,83 ns 12,08 ns 13,75 ns
DDR4-2600 2600 MT/s 0,385 ns 1300 MHz 0,769 ns 11 8,46 ns 9,62 ns 11,15 ns
DDR4-2666 2666 MT/s 0,375 ns 1333 MHz 0,750 ns 11 8,25 ns 9,38 ns 10,88 ns
12 9 ns 10,13 ns 11,63 ns
13 9,75 ns 10,88 ns 12,38 ns
15 11,25 ns 12,38 ns 13,88 ns
DDR4-2800 2800 MT/s 0,357 ns 1400 MHz 0,714 ns 11 7,86 ns 8,93 ns 10,36 ns
12 8,57 ns 9,64 ns 11,07 ns
16 11,43 ns 12,5 ns 13,93 ns
DDR4-2933 2933 MT/s 0,341 ns 1466 MHz 0,682 ns 12 8,18 ns 9,20 ns 10,57 ns
DDR4-3000 3000 MT/s 0,333 ns 1500 MHz 0,667 ns 12 8 ns 9 ns 10,33 ns
DDR4-3100 3100 MT/s 0,232 ns 1550 MHz 0,646 ns 12 7,74 ns 8,71 ns 10 ns
DDR4-3200 3200 MT/s 0,313 ns 1600 MHz 0,625 ns 16 9,7 ns 10,94 ns 12,19 ns
DDR4-3300 3300 MT/s 0,303 ns 1650 MHz 0,606 ns 16 9,7 ns 10,61 ns 11,82 ns
DDR5 SDRAM DDR5-4800 2400 MT/s 0,208 ns 2400 MHz 0,417 ns 34 14,17 ns 14,79 ns 15,63 ns
36 15 ns 15,63 ns 16,46 ns
38 15,83 ns 16,46 ns 17,29 ns
40 16,67 ns 17,29 ns 18,13 ns
DDR5-5200 5200 MT/s 0,192 ns 2600 MHz 0,385 ns 34 13,08 ns 13,65 ns 14,42 ns
36 13,85 ns 14,42 ns 15,19 ns
38 14,62 ns 15,19 ns 15,96 ns
40 15,38 ns 15,96 ns 16,73 ns
DDR5-5600 5600 MT/s 0,179 ns 2800 MHz 0,357 ns 34 13,08 ns 13,65 ns 14,42 ns
36 12,86 ns 13,39 ns 14,11 ns
38 13,57 ns 14,11 ns 14,82 ns
40 14,29 ns 14,82 ns 15,54 ns
DDR5-6000 6000 MT/s 0,167 ns 3000 MHz 0,333 ns 36 12 ns 12,5 ns 13,17 ns
38 12,67 ns 13,17 ns 13,83 ns
40 13,33 ns 13,83 ns 14,5 ns
DDR5-6200 6200 MT/s 0,161 ns 3100 MHz 0,323 ns 36 11,61 ns 12,1 ns 12,74 ns
DDR5-6400 6400 MT/s 0,156 ns 3200 MHz 0,313 ns 32 10 ns 10,47 ns 11,09 ns
34 10,63 ns 11,09 ns 11,72 ns
36 11,25 ns 11,72 ns 12,34 ns
38 11,88 ns 12,34 ns 12,97 ns
40 12,5 ns 12,97 ns 13,59 ns
DDR5-6600 6600 MT/s 3300 MHz 34

Zobacz też[edytuj | edytuj kod]

Linki zewnętrzne[edytuj | edytuj kod]