Technologie  

Rambus RAM - panaceum czy p≤│╢rodek?
Ryszard Sobkowski


Struktura RAMbus
Struktura RAMbus wyra╝nie uwidacznia poszczeg≤lne pamiΩci do│▒czone do szyny
Nowa architektura pamiΩci RAM stanie siΩ w najbli┐szym czasie faktem. Na razie najwiΩksze szanse na rolΩ nowego lidera ma architektura RAMbus, wspierana przez Intela i AMD. W czym jest lepsza?

Wsp≤│czesne procesory stosowane w PC pracuj▒ z zegarami zbli┐aj▒cymi siΩ szybko do 500 MHz, wsp≤│pracuj▒c z otoczeniem przez szynΩ taktowan▒ zegarem 100 MHz. Z otoczeniem - to znaczy g│≤wnie z pamiΩci▒. Wsp≤│pracuj▒ - to znaczy spΩdzaj▒ znaczn▒ czΩ╢µ czasu na oczekiwaniu na dane...

Nie czekaj▒c na dane


32-bitowy procesor z zegarem 500 MHz by│by w stanie przetworzyµ strumie± danych 2 GB/s, a 64-bitowa szyna FSB pracuj▒ca z zegarem 100 MHz jest w stanie dostarczyµ mu co najwy┐ej 800 MB na sekundΩ - w operacjach na danych z pamiΩci RAM procesor mo┐e wykorzystaµ zaledwie 40% swojej maksymalnej wydajno╢ci, a praktycznie jeszcze mniej!

Ten katastroficzny obraz w praktyce nie jest na razie a┐ tak czarny. Znaczna czΩ╢µ operacji, wykonywanych przez procesor, nie wymaga maksymalnej szybko╢ci przesy│ania danych, ale operacji wykonywanych na danych masowych wci▒┐ przybywa - animowana grafika 3D i przetwarzanie informacji multimedialnych wi▒┐▒ siΩ z obr≤bk▒ ogromnych ilo╢ci danych. W dodatku w konstrukcji procesor≤w powszechnie pojawiaj▒ siΩ rozwi▒zania superskalarne, znacznie zwiΩkszaj▒ce wydajno╢µ operacji na danych masowych - tryb SIMD pozwala, w zale┐no╢ci od architektury procesora, na jednoczesne wykonanie tej samej instrukcji na kilku argumentach, co zwielokrotnia strumie± danych przep│ywaj▒cych przez procesor.

PamiΩµ podrΩczna cache, nawet wsp≤│pracuj▒ca z procesorem z pe│n▒ szybko╢ci▒ jego zegara, niewiele pomo┐e, je╢li na wiΩkszym bloku danych zostanie wykonana zmiennoprzecinkowa operacja arytmetyczna w trybie SIMD.

Pracuj▒c w tym trybie procesor Katmai bΩdzie m≤g│ generowaµ cztery 10-bajtowe wyniki operacji zmiennoprzecinkowych w ka┐dym cyklu pracy - 512 kB cache wystarczy zaledwie na kilkana╢cie tysiΩcy takich operacji, podczas gdy przetwarzane w tym trybie bloki danych mog▒ mieµ du┐o wiΩksz▒ objΩto╢µ. Przyjdzie poczekaµ, tym bardziej ┐e Katmai bΩdzie mia│ cache pracuj▒c▒ z po│ow▒ czΩstotliwo╢ci zegara procesora...

ZwiΩkszenie szybko╢ci


przep│ywu danych pomiΩdzy procesorem a pamiΩci▒ RAM to obecnie najbardziej pal▒cy problem konstrukcyjny i technologiczny. Pozornie najprostszym rozwi▒zaniem by│oby kolejne zwiΩkszenie szeroko╢ci szyny FSB, z 64 do 128 bit≤w, co pozwoli│oby na dwukrotne zwiΩkszenie szybko╢ci przep│ywu danych. Ale za progiem czeka ju┐ 64-bitowy Merced z szyn▒ FSB o szeroko╢ci 128 bit≤w i zegarem szybszym od 500 MHz - problem szybko╢ci wr≤ci, tylko w 128-bitowej skali. Pozostaje przyspieszenie pamiΩci.

Stosowane obecnie pamiΩci SDRAM zbli┐aj▒ siΩ nieub│aganie do granicy swoich mo┐liwo╢ci, ponadto zasada ich dzia│ania ogranicza wykorzystanie przepustowo╢ci szyny - praktycznie mo┐liwe jest wykorzystanie co najwy┐ej 75% maksymalnej przepustowo╢ci, tj. 600 MB/s przy 100-megahercowym zegarze FSB. Prowadzone s▒ badania nad technik▒ podwojenia szybko╢ci transferu danych z pamiΩci SDRAM podobnie, jak to nastΩpuje w AGP x2, tj. przez odczyt lub zapis danych na obu zboczach sygna│u zegarowego. Koncepcja jest atrakcyjna, zw│aszcza ze wzglΩdu na niskie koszty technologiczne pamiΩci SDRAM, ale uzyskiwany dziΩki niej wzrost przepustowo╢ci do 1,2 GB/s to trochΩ za ma│o, bo przecie┐ apetyt na dane, jaki bΩd▒ mia│y procesory przysz│ego roku, przekroczy tΩ warto╢µ dwukrotnie...

Potrzebna jest ca│kiem nowa architektura pamiΩci, kt≤ra przy niskim koszcie pozwoli│aby na uzyskanie szybko╢ci dostΩpu do danych odpowiadaj▒cej szybko╢ciom przetwarzania oferowanym przez wsp≤│czesne procesory. Najszybszymi obecnie pamiΩciami s▒ pamiΩci statyczne. Ale takie pamiΩci, o czasach dostΩpu pozwalaj▒cych na pracΩ z pe│n▒ szybko╢ci▒ zegara procesora, s▒ wci▒┐ bardzo kosztowne - id▒ca w tysi▒ce dolar≤w r≤┐nica ceny pomiΩdzy Pentium II Deschutes a Pentium II Xeon wynika w znacznym stopniu z ceny stosowanej w tym ostatnim procesorze pamiΩci cache o czasie dostΩpu ok. 1 ns. Nawet dla niezbyt licz▒cych siΩ z kosztami producent≤w stacji roboczych taki poziom cen nie jest akceptowalny.

NajwiΩksze nadzieje


konstruktorzy wi▒┐▒ obecnie z pamiΩciami RAMbus. Architektura ta nie jest nowo╢ci▒, liczy sobie ju┐ prawie dwa lata zastosowa± - g│≤wnie w kartach graficznych i szybkich urz▒dzeniach transmisji danych, gdzie potrzebne s▒ transmisje masowych danych, wykonywane z du┐▒ szybko╢ci▒. PamiΩµ RAMbus stanowi zesp≤│ przy│▒czonych do jednej szyny pamiΩci RAM, adresowanych przesuniΩtymi wzglΩdem siebie sygna│ami szyny adresowej.

W jednym cyklu zegara adresowanych jest 8 kolejnych pamiΩci, co przy 16-bitowej szeroko╢ci szyny danych uk│adu zapewnia transfer 1,6 GB/s. W 64-bitowej architekturze PC takie rozwi▒zanie mo┐e pozwoliµ na uzyskanie szczytowej szybko╢ci przep│ywu danych rzΩdu 6,4 GB/s, co powinno zaspokoiµ najbardziej ┐ar│oczne z procesor≤w najbli┐szego okresu. Pocz▒tkowo konstruktorzy PC nie dostrzegali atrakcyjno╢ci architektury RAMbus, przede wszystkim ze wzglΩdu na "masowy" charakter przesy│u danych i trudno╢µ adresowania. Zreszt▒ wydajno╢µ procesor≤w nie uzasadnia│a potrzeby tak wydajnych pamiΩci. Obecnie sytuacja uleg│a zmianie - wiΩkszo╢µ operacji na pamiΩci RAM wykonywana jest w trybie masowej wymiany danych pomiΩdzy RAM a cache L2, natomiast potrzeba zwiΩkszenia wydajno╢ci pamiΩci sta│a siΩ bardzo pilna.

Praktyczne wykorzystanie pamiΩci RAMbus wi▒┐e siΩ jednak z pokonaniem sporych trudno╢ci, spo╢r≤d kt≤rych najpowa┐niejsz▒ stanowi ogromna czΩstotliwo╢µ zegara wewnΩtrznej szyny pamiΩci - przy 100 MHz FSB zegar podsystemu pamiΩci bΩdzie mia│ 800 MHz! Przy tak wysokich czΩstotliwo╢ciach bardzo istotne znaczenie maj▒ d│ugo╢ci ╢cie┐ek, przecie┐ d│ugo╢µ fali elektromagnetycznej o tej czΩstotliwo╢ci to niespe│na 40 cm - kilkucentymetrowa ╢cie┐ka obwodu drukowanego staje siΩ w tej sytuacji zar≤wno "lini▒ d│ug▒" z elektrycznego punktu widzenia, jak i ca│kiem skuteczn▒ anten▒ nadawcz▒.

Drugim, prostszym do rozwi▒zania, problemem jest "pakietowa" struktura danych, odczytywanych z pamiΩci i zapisywanych do niej. Konstrukcja kontrolera pamiΩci umo┐liwiaj▒cego zar≤wno kompletowanie pakiet≤w po 8 adres≤w, jak i ich rozpakowywanie do struktury zgodnej z pozosta│▒ czΩ╢ci▒ architektury PC, nie nastrΩcza│aby powa┐niejszego problemu, gdyby nie fakt, ┐e musi on r≤wnie┐ pracowaµ z zegarem 800 MHz. Na szczΩ╢cie nie jest to bariera nie do pokonania - ju┐ 2 lata temu produkowany przez Cirrus Logic popularny chip Laguna 3D wsp≤│pracowa│ z pamiΩci▒ RAMbus z zegarem 600 MHz. Tym niemniej sterownik pamiΩci mo┐e okazaµ siΩ elementem do╢µ kosztownym, przynajmniej w pocz▒tkowym okresie wdra┐ania nowej architektury.

Jak to bΩdzie wygl▒daµ?


Podsystem pamiΩci RAMbus
Podsystem pamiΩci RAMbus na p│ycie g│≤wnej
Modu│y pamiΩci RIMM (RAMbus Integrated Memory Module) przypominaj▒ swoim wygl▒dem popularne obecnie modu│y DIMM i przeznaczone s▒ do podobnie wygl▒daj▒cych gniazd, ale nie s▒ z nimi zgodne i nie bΩd▒ mog│y byµ stosowane zamiennie z dotychczas stosowanymi modu│ami SDRAM. Wymagania geometryczne i rozmiary modu│≤w sprawiaj▒, ┐e w wyniku powodowanych wysok▒ czΩstotliwo╢ci▒ zegara ogranicze± d│ugo╢ci ╢cie┐ek, na p│ycie bΩd▒ umieszczane 3 gniazda RIMM. Wszystkie trzy gniazda bΩd▒ musia│y byµ obsadzone!

Nie znaczy to wcale, ┐e bΩdziemy zmuszeni do kupowania potr≤jnej ilo╢ci pamiΩci - przewidziano mo┐liwo╢µ stosowania modu│≤w zastΩpczych, bez pamiΩci, s│u┐▒cych tylko zachowaniu dopasowania falowego szyny pamiΩci. W przypadku rozbudowy, modu│ taki bΩdzie zastΩpowany prawdziwym modu│em RIMM.

Co nam to da, kiedy i za ile?


Modu│ RIMM
Modu│ RIMM
Wzrost wydajno╢ci komputera, wynikaj▒cy z przyspieszenia transferu danych miΩdzy procesorem a pamiΩci▒, jest bardzo trudny do jednoznacznego oszacowania - w przypadku operacji wykonywanych na danych z pamiΩci mo┐e on przekroczyµ nawet 30% dla maszyn z zegarem 400 MHz i szybszym.

Takiego przyspieszenia mo┐na siΩ spodziewaµ np. przy obr≤bce grafiki czy generowaniu scen w grach 3D. W przypadku aplikacji korzystaj▒cych z peryferi≤w (np. odczytuj▒cych dane z dysku sta│ego lub CD) wzrost wydajno╢ci mo┐e byµ znacznie mniej spektakularny, a w przypadku aplikacji korzystaj▒cych z danych w pamiΩci RAM w spos≤b ma│o uporz▒dkowany, nie tylko nie bΩdzie przyspieszenia, lecz wrΩcz przeciwnie - spadek wydajno╢ci... Bo pakietowa struktura transmisji oraz sama zasada dzia│ania RAMbus sprawiaj▒, ┐e jednostkowy czas dostΩpu do pojedynczego, odseparowanego adresu jest blisko dwukrotnie wiΩkszy ni┐ w przypadku SDRAM.

Zatem najlepszy efekt zastosowania RAMbus uzyska siΩ w przypadku wsp≤│pracy z procesorami o du┐ej pojemno╢ci pamiΩci cache i dobrym zarz▒dzaniu t▒ pamiΩci▒ - wymiana miΩdzy cache i RAM bardzo odpowiada pakietowej strukturze danych.

Licencje na pamiΩci RAMbus zakupi│a ju┐ wiΩkszo╢µ producent≤w pamiΩci, a prace nad przygotowaniem do praktycznego wdro┐enia architektury RAMbus prowadz▒ obecnie wszyscy licz▒cy siΩ producenci chipset≤w "core logic". Mo┐na siΩ spodziewaµ, ┐e wiosn▒ przysz│ego roku ju┐ wielu producent≤w bΩdzie mieµ takie p│yty w swojej ofercie. Niestety, nie mo┐na liczyµ na niskie ceny - z dwu powod≤w. Po pierwsze, koszt technologiczny pamiΩci RAMbus jest wy┐szy od SDRAM z powodu wiΩkszej powierzchni struktury, po drugie za╢, co istotniejsze, producenci bΩd▒ musieli zdyskontowaµ skok wydajno╢ci system≤w w celu pokrycia wysokich koszt≤w wdro┐enia nowej architektury. Ale, jak to zwykle w technologii mikroelektronicznej bywa, ceny szybko spadn▒ do poziomu tylko nieznacznie przekraczaj▒cego obecny poziom cen pamiΩci SDRAM.

Mo┐na przypuszczaµ, ┐e na przysz│oroczn▒ GwiazdkΩ niekt≤rzy z Czytelnik≤w kupi▒ ju┐ komputery z procesorami przekraczaj▒cymi 500 MHz, wyposa┐one w pamiΩµ RAMbus.

(c) Copyright LUPUS