Walka z zegarami

Od zarania komputerowych dziejów elektronicznym maszynom obliczeniowym, wykonującym skomplikowane działania, towarzyszą układy pamięci. Wtedy, gdy komputer osobisty mieszczący się na biurku był tylko wizją futurysty, do budowy maszyn liczących wykorzystywano pamięci oparte na rdzeniach ferrytowych. Podstawowymi wadami ówczesnego rozwiązania były mała pojemność takiego modułu i jego spore rozmiary. Opracowanie w latach 60. minionego wieku metody wytwarzania tranzystorów w strukturze krzemowej stało się milowym krokiem w miniaturyzacji komputerów. Właśnie za sprawą tej technologii możemy się dzisiaj cieszyć nie tylko coraz szybszymi procesorami, ale również pojemniejszymi i szybszymi pamięciami RAM.

W pogoni za wydajnością

Zabierając się do pisania tego artykułu, zapytałem mojego przyjaciela, ile pamięci RAM ma w swoim komputerze. Jego reakcja była tyle zaskakująca, co zabawna. Odpowiedział mi, że nieważne, ile pamięci tkwi w jego maszynie, ponieważ tej zawsze jest za mało. Dzisiaj standardem jest 256 MB, jednak w dobie szybko rosnących wymagań współczesnych procesorów oraz aplikacji taka wielkość wkrótce może okazać się niewystarczająca. Użytkownik znów stanie przed dylematem, ile pamięci kupić i jakie moduły wybrać. W laboratorium mieliśmy rzadką okazję bliżej przyjrzeć się 40 najpopularniejszym obecnie modułom pamięci DDR SDRAM różnych standardów, począwszy od PC2100, a skończywszy na niezatwierdzonych jeszcze przez JEDEC (międzynarodową organizację zajmującą się m.in. ustalaniem standardów pamięci) układach PC3700.

Na dwa zbocza

Pamięci typu DDR są bezpośrednim rozwinięciem koncepcji układów SDRAM. Do przesyłania danych wykorzystano tu pomysł polegający na transmisji danych przy obydwu zboczach sygnału taktującego. Oznacza to, że wewnętrznie kości DDR pracują z podwojoną częstotliwością, czyli w efekcie teoretycznie pozwalają na uzyskanie dwa razy większych niż w przypadku SDRAM transferów. Ze względu na wysoką częstotliwość pracy ulepszono mechanizm synchronizacji oraz buforowania sygnałów, dzięki czemu wymiana danych jest jeszcze bardziej efektywna. Krytyczny wpływ na wydajność mają opóźnienia w przesyłaniu informacji. Dlatego też do synchronizacji transmisji danych używana jest nie tylko częstotliwość systemowa. DDR-y udostępniają do tego celu dodatkowy sygnał o nazwie DQS (Data Strobe). Pozwala to obejść problem pojawiający się wraz z utratą synchronizacji na magistrali między chipsetem i pamięcią. Gdy pojawi się polecenie odczytu, DDR generuje sygnał DQS. Sterując nim w odpowiedni sposób, informuje chipset, kiedy na magistrali danych znajdują się dane związane z określonym natężeniem lub spadkiem sygnału. Zapis odbywa się w odwrotny sposób – chipset generuje sygnał DQS, dając pamięci znak, w którym momencie na magistrali znajdują się dane do przejęcia przez RAM. Zapisywane informacje muszą zostać wcześniej przygotowane do zapisu, tak aby już w momencie przeskoku sygnału DQS były gotowe do pobrania.

Prostota architektury DDR stanowi chyba jej największy atut. Moduły DDR różnią się od SDRAM-ów tylko interfejsem. Zarówno matryce pamięci, jak i logika synchronicznego zapisu i odczytu są praktycznie identyczne, a koszty produkcji osiągają taki sam poziom jak koszty wytwarzania SDRAM–ów o podobnej pojemności. Możemy się o tym pośrednio przekonać, zaglądając do cenników sklepów komputerowych. Obecnie pamięci DDR znajdują się na tym samym poziomie cenowym co SDRAM-y. Z kolei DDR-y są ponaddwukrotnie tańsze od RDRAM-ów.

Zaglądając do wnętrza

Strukturę RAM-u możemy sobie wyobrazić jako macierz komórek. Każdy element należy do określonej kolumny i wiersza. Tak zbudowane macierze grupowane są w banki. Zwykle pamięci DDR SDRAM mają cztery takie banki. Każda komórka pamięci ma swój unikatowy adres. Jednak zaadresowanie całej pamięci w jednym cyklu zegarowym wymagałoby poprowadzenia połączeń do każdego elementu. Z tego też powodu adresowanie podzielono na dwie raty – najpierw kolumny, później wiersze. Do “wydobycia” konkretnej informacji z takiego układu potrzebne są zatem zaledwie dwie linie adresowe – wiersz (Row Line) i kolumna (Column Line).

Ważnymi parametrami wpływającymi na wydajność pamięci DDR są, oprócz częstotliwości zegara taktującego, również tak zwane timingi, czyli opóźnienia określające liczbę taktów zegarowych pamięci pomiędzy wydaniem polecenia odczytu lub zapisu a jego wykonaniem. Pierwszym parametrem (timingiem) podawanym przez producentów w specyfikacji jest CAS Latency (przez niektórych określany jako CL). Określa on liczbę cykli zegara magistrali, jakie upływają od wydania przez procesor polecenia aktywacji wybierania kolumny do momentu przekazania danych do bufora w kontrolerze pamięci. Parametr ten ma dość duży wpływ na wydajność. W przypadku modułów DDR współczynnik ten można ustawić w zakresie od 2.0 do 3.0 (choć w niektórych płytach da się ustawić CL1.5). Kolejnym parametrem (timingiem) jest RAS to CAS Delay (RCD), czyli wartość przerwy czasowej wymaganej pomiędzy podaniem adresu wiersza i kolumny. Parametr RAS Precharge (RP) to czas trwania sygnału odświeżania pamięci. RAS (Row Address Strobe) specyfikuje natomiast liczbę cykli wymaganych do wykonania komendy aktywacji jednego z banków pamięci, zanim załadowanie adresu wiersza może zostać wykonane. Wszystkie cztery parametry podaje się zazwyczaj w postaci liczb oddzielonych myślnikami, np. 2,5-6-4-4.

“>”>www.sirius.pl/

“>”>www.sirius.pl/

“>”>www.action.pl/

“>”>www.wilk.com.pl/

“>”>www.sirius.pl/

“>”>www. geil. pl/

“>”>www.sirius.pl/

“>”>www.wilk.com.pl/

“>”>www.levi.cz/

“>”>www.geil.pl/

“>”>www.asbis.pl/

“>”>www.sirius.pl/

“>”>www.sirius.pl/

“>”>www.sirius.pl/

“>”>www.geil.pl/

“>”>www.pronox.com/

Produkt*Infineon HYS64D32000GU-7-BKingston KVR266X64C25/512Hynix HYMD232646B8R-J WDSpectek P32M6448HHC-6ACorsair CMX256A-2700C2PTGeIL PC2700 333 MHz DDR SDRAM Value SeriesTwinMOS Memory module PC2700 256MBKingston KHX2700/512Kingmax MPXB62D-38KT3RGeIL PC3200 Dual Channel Ultra Low Latency SeriesPQI PMI DDR-400 512MBCorsair CMX256A-3200C2Mushkin PC3200 Level II 512MBOCZ DDR PC-3700 Premier Dual ChannelGeIL PC3700 466MHz DDR Platinum Series TwinMOS Memory module PC3700 512 MB
Cena (z VAT-em)210 zł390 zł165 zł205 zł260 zł230 zł220 zł580 zł425 zł670 zł405 zł300 zł2 200 zł1 100 zł450 zł580 zł
OpisMarkowe i nie za drogie moduły, doskonałe w overclokingu. Spokojnie pracowały jako DDR366, a pod P4 nawet jako DDR400.Moduły o bardzo dużym zapasie mocy. Pracują jako DDR333 na platformie AMD. Pod P4 – rekordowy wynik deklasujący “wyższe” modele (480 MHz).Jedne z tańszych pamięci 256 MB o dużych możliwościach podkręcania. Uzyskały prędkość powyżej 400 MHz na obydwu platformach.Pamięci plasujące się w czołówce serii PC2700. Bardzo duże możliwości podkręcania – bez problemów pracują jako DDR433.Dobre do overclocingu (433/480 MHz – Athlon/P4), niestety, nieco słabsze w normalnym trybie pracy, szczególnie pod P4.Moduły, które doskonale się podkręcają – rekordowy wynik w klasie DDR333. W normalnym trybie pracy – średnie rezultaty.Pamięci o przeciętnych wynikach przy nominalnych ustawieniach, doskonale się jednak podkręcające zarówno pod P4, jak i pod Athlonem. Wyczynowe HyperX-y na nominalnych ustawieniach prześcignęły niektóre moduły DDR400, dość dobrze się też podkręcają, ale tylko pod P4. Pamięci jednostronne o przeciętnych możliwościach podkręcania. Niestety, bardzo słabo wypadły przy ustawieniach nominalnych. Dwumodułowy zestaw, rewelacyjny przy podkręcaniu. Jako jedyny pracował powyżej 466 MHz zarówno z procesorami Intela, jak i AMD! Niedrogie moduły o średniej wydajności i równie przeciętnych możliwościach podkręcania. Bardzo dobre pamięci z serii DDR400 pod względem możliwości overclockingu. Cechą charakterystyczną są niskie timingi.Dwumodułowy zestaw przeznaczony dla overclockerów o “wyżyłowanych” timingach i równie “wyżyłowanej” cenie.Zestaw dwumodułowy o maksymalnej wydajności gwarantowanej przez producenta. Niestety, cena bardzo wysoka.Najwyższe w skali bezwględnej możliwości podkręcania pamięci pozwoliły uruchomić je z częstotliwością prawie 500 MHz. To rekordowa wartość.Wcale nie najdroższe, a za to najwydajniesze przy nominalnych ustawieniach moduły o równie wysokich możliwościach podkręcania.
Dane techniczne (wg producenta)
StandardPC2100/266 MHzPC2100/266 MHzPC2700/333 MHzPC2700/333 MHzPC2700/333 MHzPC2700/333 MHzPC2700/333 MHzPC2700/333 MHzPC3200/400MHzPC3200/400MHzPC3200/400MHzPC3200/400MHzPC3200/400MHzPC3700/466MHzPC3700/466MHzPC3700/466MHz
Pojemno_ć256 MB512 MB256 MB256 MB256 MB256 MB256 MB512 MB256 MB512 MB (2×256 MB)512 MB256 MB1024 MB (2×512 MB)512 MB (2×256 MB)256 MB512 MB
Napięcia min.-maks.2,3-2,7 V2,25-2,75 V2,3-2,7 V2,3-2,7 V2,5-2,6 V2,5-2,7 V2,3-2,7 V2,5-2,7 V2,3-2,7 V2,5-2,9 V2,5-2,7 V2,5-2,6 V2,5-2,75 V2,6-3,1 V2,5-3,1 V2,4-2,8 V
Czas dostępu7,0 ns7,5 ns6 ns6 ns6 ns6 ns6 ns6 ns5 ns5 ns5 ns6 ns5 ns4,5 ns4 ns4,3 ns
Timingi standardowe **)2-7-3-32,5-6-3-32,5-7-3-32,5-7-3-32-6-3-32,5-6-3-22,5-7-3-32-5-2-22,5-7-3-32-6-3-32,5-7-3-32-7-3-32-6-2-23-8-4-42,5-7-3-32,5-8-3-3
Wyniki testu
Cachemem odczyt/zapis P42581,7/847 MB/s2499,1/1231,4 MB/s2636,6/942 MB/s2634,7/966,4 MB/s2633,6/1038,8 MB/s2638,3/946,3 MB/s2590,5/951,8 MB/s2697,2/1482 MB/s2805,1/1117,6 MB/s2828/1248,2 MB/s2762,7/1620,1 MB/s2843,5/1242,3 MB/s2839,6/1645,3 MB/s3258,2/1919,8 MB/s3203,7/1302,8 MB/s3238/1887,1 MB/s
Cachemem odczyt/zapis Athlon1228,3/963 MB/s1227,4/959,4 MB/s1592,7/1003,1 MB/s1607,4/1010,5 MB/s1581/1002 MB/s1585,3/954,5 MB/s1581,7/1002,1 MB/s1655,5/1004,7 MB/s1462,2/995,9 MB/s1494/994,6 MB/s1458,6/993 MB/s1461,8/993,1 MB/s1492,2/994,3 MB/s1531/1041,6 MB/s1541,9/1055,6 MB/s1555,4/1056,6 MB/s
Dostawca [http://]
* – w tabeli zamiesciiśmy moduły najbardziej charakterytyczne dla danego producenta ** – timingi CL-RCD-RP-RAS (CAS Latency-RAS to CAS Delay-RAS Precharge-Row Address Strobe).
Więcej:bezcatnews