Zasada działania pamięci RAM
Transkrypt
Zasada działania pamięci RAM
Zasada działania pamięci RAM Pamięć operacyjna (robocza) komputera zwana pamięcią RAM (ang. Random Access Memory - pamięć o swobodnym dostępie) służy do przechowywania danych aktualnie przetwarzanych przez program oraz ciągu rozkazów, z których składa się ten program. Pamięć RAM jest pamięcią ulotną, co oznacza, iż po wyłączeniu komputera, informacja w niej zawarta jest tracona. Pamięć ta często nazywana jest DRAM (ang. Dynamic RAM) ze względu na zasadę działania: pojedyncza komórka pamięci zawiera kondensator (pojemność), który naładowany do pewnego napięcia, przechowuje jeden bit danych. Kondensator szybko jednak rozładowuje się i należy systematycznie odświeżać zawartość komórki, poprzez zaadresowanie jej i ponowne doładowanie kondensatora. Proces ten nosi nazwę odświeżania pamięci i musi być realizowany cyklicznie. Pamięć charakteryzowana jest przez dwa istotne parametry: pojemność oraz czas dostępu. Pojemność pamięci jest funkcją liczby linii adresowych i wielkości komórki; jeśli pamięć jest adresowana za pomocą 10-liniowej (10bitowej) szyny adresowej, a każda komórka może przechować 8 bitów, to pojemność jej wynosi 1024 bajty (1KB). Czas jaki upłynie od momentu zaadresowania komórki pamięci do uzyskania zapisanej w tej komórce informacji nazywa się czasem dostępu. Czasy dostępu współczesnych pamięci DRAM wynoszą kilka nanosekund, co oznacza, iż w ciągu tych kilku nanosekund, zanim nie zostanie odczytana informacja, nie można zaadresować następnej komórki. Pamięć RAM Pamięć w komputerze spotykamy na każdym kroku. RAM to jeden z najważniejszych typów. Pamięć to każdy rodzaj nośnika umożliwiający przechowywanie informacji. Jest nią zarówno dyskietka, płyta CD-ROM, dysk twardy, RAM i pamięć podręczna procesora. Po co komputerowi aż tyle różnych rodzajów pamięci? Pecet mógłby sobie poradzić, korzystając wyłącznie z jednego typu pamięci -na przykład dysku twardego. Niestety, taki komputer byłby niesamowicie wolny. Szybki dysk twardy dysponuje średnim tempem transferu danych na poziomie kilku dziesięciu MB/s. Tymczasem pamięć RAM oferuje transfer 2500 MB/s. Pamięć podręczna umieszczona w procesorze jest jeszcze szybsza - oferowany przez nią transfer to mniej więcej 50 GB/s. Czy nie byłoby zatem dobrym rozwiązaniem wyposażyć cały komputer w jeden - najszybszy rodzaj pamięci? Na przeszkodzie staje cena im szybsza pamięć, tym droższa. Jeden megabajt dysku twardego kosztuje w przybliżeniu 1000 razy mniej niż jeden megabajt RAM-u. Z tego powodu komputer wyposażony jest w duże ilości taniej pamięci i mniejsze-droższej. Ze względu na swoją szybkość i cenę idealnym buforem pomiędzy wolny dyskiem twardym a bardzo drogą pamięcią podręczną procesora jest pamięć RAM. W niej umieszczane są aktualnie wykorzystywane dane, wyniki obliczeń, pliki uruchamianych aplikacji. Struktura wewnętrzna pamięci - przypomina prostokątną matrycę komórek. Każda komórka składa się z jednego tranzystora i kondensatora i może przechowywać jeden bit informacji (wartość O lub 1). Aby odnaleźć konkretną komórkę, musimy znać jej adres, czyli numer wiersza i kolumny. Szyna danyc h Szyna adresowa Dekoder adresu rzędów Ponieważ do poszczególnych komórek pamięci możemy odwoływać się w dowolnej kolejności, taki typ pamięci nazywamy RAM-em (ang. Random Access Memory -pamięć o dostępie swobodnym). Oprócz komórek pamięci w modułach znajdują się struktury obsługujące matrycę - dekodujące adres otrzymany za pośrednictwem szyny adresowej z kontrolera pamięci umieszczonego w chipsecie płyty głównej, wybierając odpowiednią komórkę, odczytując jej zawartość i wysyłając ją szyną danych z powrotem do kontrolera. Rytm pracy pamięci RAM jest wyznaczany specjalnym zegarem W wypadku pamięci SDRAM, DDR-SDRAM i RDRAM jest on zsynchronizowany z zegarem procesora. Sygnałem do działania jest wznoszące się zbocze sygnału zegarowego. W chwili, gdy dane mają być odczytane z pamięci na szynie adresowej, pojawia się informacja. Specjalny sygnał (RAS) informuje pamięć, że jest nią adres rzędu matrycy, z którego pochodzić będą dane. Następnie pojawia się sygnał (CAS) informujący, że od tej chwili przekazywany jest już adres kolumny. Docelowa komórka pamięci znajduje się na przecięciu wybranej kolumny i rzędu. W wypadku pamięci SDRAM następne komórki w danym rzędzie mogą być odczytywane z pominięciem procedury wybierania adresu. Typ pamięci RAM wykorzystywany powszechnie w pecetach to tak zwany DRAM, czyli dynamiczny RAM. Jego zaletą w porównaniu ze Statycznym RAM-em (SRAM) jest znacznie prostsza (i tańsza) konstrukcja komórek pamięci. Wadą że pamięć tego typu bardzo szybko traci swoją zawartość. Aby więc nożna było z niej korzystać, cała zawartość DRAM-u musi być regularnie odświeżana. Odświeżanie polega na odczytywaniu zawartości pamięci ponownym jej zapisywaniu i jest cyklicznie wykonywane przez cały czas działania komputera. Parametry pamięci Kupując pamięć, należy zwrócić uwagę na dwa parametry. Pierwszy z nich to czas dostępu jest on podawany w nanosekundach. Jeśli komputer ma pracować z szyną systemową taktowaną zegarem 166 MHz, to najdłuższy akceptowalny czas dostępu pamięci RAM obliczymy, dzieląc 1 przez 166 MHz (166 000 000 Hz). Wynik otrzymany w nanosekundach. W tym wypadku będzie to 6 ns Pamięć z dłuższym czasem dostępu nie jest w stanie pracować z tak szybką magistralą. Istotnym parametrem jest czas latencji - CAS. Liczba opisująca CAS i czas dostępu podawana jest bez przecinka. Jeżeli jest dwucyfrowa, to drugą cyfrę traktujemy jako część dziesiętną. CAS to opóźnienie podawane w cyklach zegarowych pomiędzy otrzymaniem przez pamięć polecenia odczytu a pojawieniem się na szynie danych pierwszych informacji. Typowe pamięci SDRAM mają CAS = 3, DDR-SDRAM zaś = 2,5. Droższe moduły mają CAS = 2. Krótszy czas latencji to wyższa o kilka procent wydajność komputera. CAS i inne parametry pracy pamięci można ustawić w BlOS-ie. Im niższe będą poszczególne wartości, tym pamięć będzie pracowała wydajniej. Jeśli jednak ustawimy zbyt krótkie opóźnienia, system zacznie pracować niestabilnie. Rodzaje pamięci FPM DRAM - ang, Fast Page Mode Dynamic Random Access Memory - 32-bitowa pamięć pojawiła się masowo w 1987 roku. Można przyjąć, że od niej zaczyna się historia współczesnej pamięci RAM. Zaletą FPM w porównaniu ze starszymi pamięciami typu DRAM był znacznie szybszy dostęp do danych. Uzyskano to dzięki specjalnemu trybowi adresowania komórek pamięci. Nie musiały być już adresowane pojedynczo. Jeden sygnał aktywował cały ich rząd (tak zwaną stronę) i do wybrania kolejnych komórek wystarczało zmieniać adres kolumny. EDO DRAM – ang. Extended Data Output DRAM - pamięć dostępna na rynku od 1995 roku. Powstała w wyniku modyfikacji FPM DRAM. Dane z wybranego rzędu mogły być odczytywane nie tylko wtedy, gdy ustawiony był adres tego rzędu, lecz także podczas wybierania już adresu innego rzędu, co przyspieszało działanie pamięci. SDRAM –ang. Synchrous DRAM-64-bitowa pamięć popularna od 1997 roku. W odróżnieniu od poprzedników SDRAM pracowała synchronicznie z zegarem taktującym procesor. Dzięki temu unikano sytuacji, gdy procesor oczekiwał na dane, bo zakończył wykonywane operacje pomiędzy cyklami odczytu/zapisu pamięci. Zaletą SDRAM-u była też możliwość pracy w trybie pakietowym (burst). Ten tryb wykorzystuje fakt, że w zdecydowanej większości wypadków potrzebne akurat dane zapisane są w kolejnych komórkach. Czas na ustawienie adresu jest tu wymagany tylko do wybrania adresu pierwszej komórki. Komórki o kolejnych adresach mogą być błyskawicznie (co jeden takt zegara) odczytywane bez straty czasu na wybieranie pełnego ich adresu. Kolejną innowacją była organizacja pamięci w obrębie jednego modułu w kilka banków (zazwyczaj cztery). Gdy jeden bank jest zajęty jakąś operacją (zapis, odczyt, odświeżanie), komputer nie musi czekać na jego ponowne przygotowanie do wykorzystania - dane można zapisać w innym banku. DDR-SDRAM - ang. Double Data Rate SDRAM - następna generacja pamięci SDRAM. Różnica względem poprzednika to praca przy rosnącym i opadającym zboczu sygnału sterującego. Dzięki temu przy tej samej częstotliwości zegara wykonywane jest dwa razy więcej operacji. RDRAM - ang. Rambus DRAM -16-bitowa pamięć zaprojektowana przez firmę Rambus (premiera w roku 1999) specjalnie dla Pentium 4, Wykorzystuje moduły podobne do DDRSDRAM jednak o zupełnie innej wewnętrznej organizacji. Każdy układ scalony wchodzący w skład modułu RDRAM może zawierać do 32 banków. Połowa z nich jest zawsze przygotowana do pracy. Dzięki tak dużej liczbie otwartych banków możliwa jest praca z bardzo wysokimi częstotliwościami (400, 533 MHz) Prędkości te dodatkowo są podwajane tak jak w wypadku pamięci typu DDR. Popularna metoda oznaczania pamięci uwzględnia prędkość magistrali systemowej. Często można spotkać się także z inna. metodą uwzględniającą przepustowości kości RAM (podana w nawiasach). PC100 (800 MB/s) Nie produkowany już typ pamięci SDRAM pracujący z magistralą systemową 100 MHz PC133 (1100 MB/s) Pamięci typu SDRAM współpracujące z magistralą systemową 133 MHz PC200 (1600 MB/s) Pamięci typu DDR-SDRAM współpracujące z magistralą systemową 100 MHz PC266 (2100MB/s) Pamięć typu DDR-SDRAM współpracujące z magistralą systemową 133 MHz PC333 (2700 MB/s) Pamięć typu DDR-SDRAM współpracujące z magistralą systemową 166 MHz PC400 (3200 MB/s) Pamięć typu DDR-SDRAM współpracujące z magistralą systemową 200 MHz PC800 (3200 MB/s) Pamięci typu RDRAM. Współpracują z magistralą systemową 400 MHz PC1066 (4200 MB/s) Pamięci typu RDRAM. Współpracują z magistralą systemową 533 MHz