Zapamiętywanie bitów
Dynamiczna pamięć RAM


Bramki logiczne
Cyfrowe układy scalone TTL i CMOS
Zasilanie układów TTL i CMOS
Zjawisko hazardu w sieciach logicznych
Przerzutniki
Pamięć
Wejście / wyjście
  Pamięci komputerowe
Historia rozwoju pamięci komputerowych
Budowa i rodzaje pamięci komputerowej
Statyczna pamięć RAM
Dynamiczna pamięć RAM
Pamięć stała ROM, PROM, EPROM, EEPROM, FLASH i NV-RAM
Pamięć dyskowa
Pamięć CD/DVD/Blue-Ray

 

Statyczna pamięć RAM wymaga 6 tranzystorów CMOS do przechowania pojedynczego bitu informacji. Powoduje to konieczność umieszczania w układzie scalonym olbrzymich ilości tranzystorów. Dlatego inżynierowie szukali innych rozwiązań, które pozwoliłyby zredukować liczbę niezbędnych elementów na bit informacji - korzyść jest oczywista: przy pomocy identycznej technologii układów scalonych można by w nich pomieścić więcej informacji lub też układ scalony o tej samej pojemności informacyjnej zawierałby mniej elementów, a zatem byłby prostszy i tańszy. Rozwiązaniem okazała się pamięć dynamiczna, (ang dynamic random access memory - DRAM), która działa na zasadzie wykorzystania ładunku elektrycznego zgromadzonego na okładkach mikroskopijnego kondensatora. Do sterowania tym kondensatorem wystarcza pojedynczy tranzystor.

Schemat elektryczny komórki pamięci widzimy po prawej stronie. W porównaniu z komórką pamięci statycznej jest to niesamowite uproszczenie.  Linia słowa WL (ang. word line) steruje tranzystorem polowym, który przyłącza do linii bitu BL (ang. bit line) lub separuje od niej kondensator Cs. Cykl odczytu wygląda następująco:

Linia bitu BL jest ładowana napięciem równym około połowie napięcia zasilającego - możemy ją potraktować jak dodatkowy kondensator. Następnie zostaje wysterowana linia WL, która odblokowuje tranzystor. Odblokowany tranzystor przyłącza kondensator Cs do linii bitu. Następuje wyrównanie ładunków kondensatora Cs oraz kondensatora utworzonego z linii bitu BL. Jeśli kondensator Cs przechowywał bit 1 (napięcie na Cs równe napięciu zasilającemu), to napięcie na BL nieco wzrośnie - ładunek Cs uzupełni ładunek linii BL. Jeśli kondensator Cs był rozładowany, czyli przechowywał 0, to napięcie na BL spadnie, ponieważ Cs odbierze nieco ładunku. Zatem wzrost napięcia BL przy odczycie komórki informuje o stanie 1, spadek o stanie 0.

Zwróć uwagę, iż odczyt zawartości komórki niszczy przechowywaną w niej informację. Dlatego po każdym odczycie zawartość komórki musi być przywrócona - zregenerowana. Operacji tej dokonują wzmacniacze odświeżające (ang. refresh amplifiers), stanowiące integralny element układu scalonego pamięci dynamicznej.

Zapis danych polega na ustawieniu linii BL na napięcie zasilające przy stanie logicznym 1 lub na napięcie masy przy stanie logicznym 0. Następnie zostaje wysterowana linia WL, co spowoduje odblokowanie tranzystora i połączenie kondensatora z linią BL. W zależności od napięcia na linii BL kondensator zostanie albo naładowany (stan 1), albo rozładowany (stan 0).

Podstawowym problemem w pamięciach dynamicznych jest samorozładowywanie się kondensatora Cs spowodowane upływnościami jego izolacji (upływność to przepływ prądu przez izolację, który powoduje "wyciekanie" ładunku zgromadzonego na okładkach kondensatora) oraz przepływem prądu przez sam tranzystor polowy. Po prostu nie da się utworzyć idealnych materiałów izolujących w tak małej skali i przy założonych kosztach. Rozładowywanie się kondensatora oznacza, iż przechowywana w nim informacja może "uciec", jeśli nie będzie odpowiednio często regenerowana.  Proces regeneracji polega na cyklicznym odczycie zawartości komórki pamięci, przy którym wzmacniacze odświeżające automatycznie uzupełniają ładunek kondensatora, jeśli był on naładowany (przy rozładowanym kondensatorze nie trzeba regenerować ładunku). To właśnie dzięki upływności kondensatorów w komórkach opisywany typ pamięci nazwano pamięcią dynamiczną, gdyż wymaga ona ciągłej (czyli dynamicznej) troski o przechowywaną informację. Pomimo tych wad, pamięci dynamiczne DRAM są dzisiaj powszechnie stosowane w sprzęcie komputerowym.

 

Struktura wewnętrzna pamięci dynamicznej

Różnice pomiędzy pamięcią statyczną a dynamiczną spowodowane są koniecznością odświeżania zawartości komórek. Pamięć dynamiczna zorganizowana jest w matryce bitowe. Dekoder wierszy wybiera z matrycy jeden wiersz komórek, które są odczytywane przez wzmacniacze i odświeżane. Wynika stąd, iż odczyt pojedynczej komórki pamięci powoduje odświeżenie całego wiersza komórek. Jednakże przy normalnej pracy systemu nie ma gwarancji, iż odczyty zregenerują wszystkie wiersze pamięci - przecież program może skupić się przez pewien czas tylko na małym fragmencie obszaru adresowego pamięci. Dlatego pamięć dynamiczna musi być wyposażona w specjalny układ odświeżania (ang. refresh unit), który odczytuje w kółko kolejne wiersze z matrycy. Jeśli proces ten jest wykonywany odpowiednio szybko, to zawartość pamięci będzie utrzymywana.

Adres komórki pamięci dynamicznej dostarczany jest w dwóch etapach po tych samych liniach magistrali adresowej - najpierw numer wiersza (ang. row address), a następnie numer kolumny (ang. column address). Takie rozwiązanie ułatwia pracę układów odświeżających. Numery wiersza i kolumny są zapamiętywane w wewnętrznych buforach i przekazywane do dekoderów. Po otrzymaniu numeru wiersza dekoder wierszy wybiera właściwy wiersz z matrycy bitowej. Wiersz zostaje odczytany (i odświeżony) przez wzmacniacze. Następnie, po otrzymaniu numeru kolumny, z odczytanego wiersza wybierana jest właściwa kolumna i dane z niej są albo przekazywane na magistralę danych (odczyt), albo zapisywane informacją z magistrali danych (zapis). Układy odświeżające przekazują pamięci tylko numer wiersza - numer kolumny przy odświeżaniu jest zbędny. Współczesne pamięci dynamiczne zawierają wewnątrz układu scalonego kompletny układ odświeżania (numer wiersza do odświeżenia jest automatycznie generowany przez licznik odświeżania), co znacznie ułatwia konstrukcję pamięci w komputerze - niektóre starsze mikroprocesory (np. Z80 firmy Zilog) zawierały wewnętrzny układ odświeżania prostych pamięci dynamicznych.

Podział adresu na numer wiersza i kolumny zmniejsza liczbę linii magistrali adresowej, co upraszcza konstrukcję komputera. Jednakże dostęp do danych wymaga większego czasu niż w pamięci statycznej, ponieważ adres jest przekazywany w dwóch etapach. Z tego powodu (oraz z uwagi na konieczność odświeżania) pamięci dynamiczne są z reguły wolniejsze od pamięci statycznych.

 

Sterowanie układem scalonym pamięci dynamicznej

Współczesne pamięci DRAM są sterowane na wiele różnych sposobów - szczegółów musisz szukać w materiałach producentów. Typowa pamięć DRAM posiada następujące wyprowadzenia:

  • An-1... A0 - n linii magistrali adresowej. Przy ich pomocy komputer przekazuje pamięci w postaci binarnej numer wiersza lub numer kolumny, w których znajduje się komórka do odczytu lub do zapisu.

  • Dm-1 ... D0 - m linii dwukierunkowej magistrali danych.

  • CS (ang. Chip Select) - linia uaktywnia układ pamięci - odblokowuje pozostałe wejścia sterujące.

  • WE (ang. Write Enable) - jeśli WE jest w stanie niskim, dane są przepisywane do wybranej komórki pamięci. W stanie wysokim WE pamięć realizuje odczyt lub odświeżanie.

  • RAS (ang. Row Address Strobe) - opadające zbocze tego sygnału informuje pamięć, iż na magistrali adresowej znajduje się numer wiersza. Numer ten zostaje zapamiętany w buforze połączonym z dekoderem wierszy. Pamięć odczytuje dany wiersz i odświeża go,

  • CAS (ang. Column Address Strobe) - opadające zbocze informuje pamięć, iż na magistrali adresowej znajduje się numer kolumny. Numer jest zapamiętywany w buforze połączonym z dekoderem kolumn. Komórka znajdująca się w odczytanym wierszu i kolumnie zostaje zapisana nową zawartością przy WE = 0 lub jej zawartość trafia na magistralę danych WE = 1.

 

Odczyt danych z pamięci

Odczyt zawartości komórki pamięci dynamicznej składa się z następujących kroków:

  • Na magistrali adresowej zostaje umieszczony numer wiersza zawierającego komórkę pamięci.

  • Następnie sygnał RAS przechodzi w stan niski. Opadające zbocze RAS powoduje zapis numeru wiersza z magistrali adresowej w zatrzaskach połączonych z dekoderem wierszy. Dekoder adresuje odpowiedni wiersz komórek, których zawartość zostaje przesłana do wzmacniaczy odświeżających. Komórki zostają odczytane i odświeżone - jeśli operacja dotyczyła tylko odświeżania, to w tym momencie może się zakończyć.

  • Na magistralę adresową trafia numer kolumny zawierającej komórkę. Sygnał CAS przechodzi w stan niski - powoduje to zatrzaśnięcie numeru kolumny i przekazanie go do dekodera kolumn. Dekoder adresuje odpowiednią kolumnę wzmacniaczy odświeżających, które przekazują zawartość odczytanej komórki na magistralę danych.

  • Sygnały sterujące wracają do położenia neutralnego.

 


Zapis danych w pamięci

Zapis danych do wybranej komórki pamięci odbywa się wg następującego schematu:

  • Na magistrali adresowej zostaje umieszczony numer wiersza zawierającego komórkę pamięci.

  • Sygnał RAS przechodzi w stan niski, co powoduje zatrzaśnięcie numeru wiersza, zdekodowanie go, odczytanie i odświeżenie wiersza komórek.

  • Na magistrali danych pojawiają się dane do zapisu w komórce.

  • Sygnał WE przyjmuje stan niski - jest to informacja dla pamięci, iż po otrzymaniu reszty adresu - czyli numeru kolumny, dane z magistrali danych należy zapisać w wybranej komórce.

  • Na magistrali adresowej zostaje umieszczony numer kolumny

  • Sygnał CAS przyjmuje stan niski - numer kolumny zostaje zapamiętany, zdekodowany i do wybranej komórki trafia informacja z magistrali danych.

  • Sygnały sterujące wracają do położenia neutralnego.

 



List do administratora Serwisu Edukacyjnego Nauczycieli I LO

Twój email: (jeśli chcesz otrzymać odpowiedź)
Temat:
Uwaga: ← tutaj wpisz wyraz  ilo , inaczej list zostanie zignorowany

Poniżej wpisz swoje uwagi lub pytania dotyczące tego rozdziału (max. 2048 znaków).

Liczba znaków do wykorzystania: 2048

 

W związku z dużą liczbą listów do naszego serwisu edukacyjnego nie będziemy udzielać odpowiedzi na prośby rozwiązywania zadań, pisania programów zaliczeniowych, przesyłania materiałów czy też tłumaczenia zagadnień szeroko opisywanych w podręcznikach.



   I Liceum Ogólnokształcące   
im. Kazimierza Brodzińskiego
w Tarnowie

©2017 mgr Jerzy Wałaszek

Dokument ten rozpowszechniany jest zgodnie z zasadami licencji
GNU Free Documentation License.