Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Pamięci Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz.

Podobne prezentacje


Prezentacja na temat: "Pamięci Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz."— Zapis prezentacji:

1 Pamięci Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz

2 Rodzaje pamięci

3 Rodzaje pamięci – podział ogólny RAM (ang. Random Access Memory), - pamięć o dostępie swobodnym – przeznaczona do zapisu i odczytu. RAM jest pamięcią ulotną, co oznacza, że po wyłączeniu zasilania informacja w niej przechowywana jest tracona. ROM (ang. Read Only Memory) – pamięć półprzewodnikowa – pamięć o dostępie swobodnym przeznaczona do odczytu. ROM jest pamięcią nieulotną.

4 Podstawowe definicje

5 Pamięciami półprzewodnikowymi nazywamy cyfrowe układy scalone przeznaczone do przechowywania większych ilości informacji w postaci binarnej.

6 Podstawowe definicje Adres – niepowtarzalna liczba (numer) przypisana danemu miejscu (słowu) w pamięci w celu jego identyfikacji Słowo w pamięci – zestaw pojedynczych komórek (pojedynczych bitów) pamięci, do którego odwołujemy się pojedynczym adresem Organizacja pamięci – sposób podziału obszaru pamięci na słowa

7 Podstawowe parametry

8 Pamięć o dostępie swobodnym – pamięć, dla której czas dostępu praktycznie nie zależy od adresu słowa w pamięci, czyli od miejsca, w którym jest przechowywana informacja Transfer danych – maksymalna liczba danych, jaką możemy odczytywać z pamięci lub zapisywać do pamięci w danej jednostce czasu

9 Podstawowe parametry Pojemność pamięci – maksymalna liczba informacji, jaką możemy przechować w danej pamięci Czas dostępu – czas, jaki musi upłynąć od momentu podania poprawnego adresu słowa w pamięci do czasu ustalenia się poprawnej wartości tego słowa na wyjściu pamięci w przypadku operacji odczytu lub w przypadku operacji zapisu – czas, jaki upłynie do momentu zapisania wartości do tego słowa z wejścia pamięci.

10 DB AB R/W# CS# MEM M - pojemność pamięci, n - długość słowa przez, m - ilość linii adresowych M = n x 2 m

11 Organizacja pamięci

12 R/W# CS# dane adres Organizacja – bitowa, 32x1b R/W# CS# dane adres Organizacja – bajtowa, 4x1B Organizacja pamięci

13 Metody zwiększania ilości pamięci

14 1. Zwiększanie długości słowa W celu zwiększenia długości słowa szerszą magistralę danych budujemy z bitów linii danych kolejnych układów scalonych pamięci, natomiast magistralę adresową i sygnały sterujące łączymy równolegle.

15 Zwiększanie długości słowa Wyjście/wejście danych Adresy D0 D2 D3 D1 D0 D1 D2 D3 CS# R/W#

16 2. Zwiększanie liczby słów W celu zwiększenia liczby słów pamięci zwiększamy liczbę potrzebnych adresów, a co za tym idzie – rozbudowujemy szynę adresową o dodatkowe bity potrzebne do uzyskania tych adresów. Przy niezmienionej długości słowa szyna danych pozostaje bez zmian. Dodatkowe bity adresu służą, przy wykorzystaniu dekodera, do wyboru jednego z łączonych układów pamięci, z którego odczytamy lub do którego zapiszemy informację. Wyboru dokonujemy przy użyciu wejścia CS# uaktywniającego układy scalone pamięci. Magistrale adresowe, danych i sygnały sterujące układów, z których budujemy nowy blok pamięci, łączymy równolegle.

17 Zwiększanie ilości słów DB (D0-D3) Adres Dekoder 256k x 4b CS# RW# R/W A18 A19 A17-A0 18 4

18 Pamięci dynamiczne RAM

19 Komórki pamięci dynamicznych magazynują ładunki na określonej, niewielkiej pojemności elektrycznej. Pojemność nienaładowana oznacza zero logiczne. Pojemność naładowana oznacza zapisaną jedynkę logiczną.

20 Obsługa asynchronicznych pamięci DRAM

21 Adres słowa, na którym chcemy wykonać operację, podawany jest w dwóch częściach zwanych: adres wiersza, adres kolumny; Taki sposób adresowania upraszcza konstrukcję – wyprowadzeń szyny adresowej dekoderów adresów.

22 Adres MEM Dane WE# ( ang. Write Enable )- zezwolenie na zapis informacji OE# ( ang. Output Enable ) - zezwolenie na odczyt CE# ( ang. Chip Enable )- równoważny CS# RAS# ( ang. Row Adress Select ) i CAS# ( ang. Column Adress Select ) - związane z wprowadzeniem adresu do pamięci Wyprowadzenia pamięci DRAM RAS# CAS# WE# OE# CE#

23 Wejście adresowe RAS# CAS# RZW DW DK RZK DW – dekoder wierszy DK – dekoder kolumn RZW – rejestr zatrzaskowy adresu wiersza RZK – rejestr zatrzaskowy adresu kolumny Sposób adresowania słowa w pamięciach DRAM Matryca komórek pamiętających - zaadresowane słowo w pamięci

24 2n n n n Adres wiersza Adres kolumny We 1 We 0 S Do wejścia adresowego pamięci DRAM 0 dla aktywnego sygnału RAS 1 dla aktywnego sygnału CAS Układ konwersji adresu systemowego na adres dla pamięci DRAM

25 Adresowanie pamięci DRAM

26 Poprawne zaadresowanie pamięci DRAM wymaga wykonania po kolei następujących czynności: Podanie starszej części adresu na linie adresowe pamięci DRAM jako adresu wiersza, a następnie wytworzenie aktywnego zbocza sygnału RAS#, powodującego zapamiętanie tego adresu w rejestrze zatrzaskowym adresu wiersza. Odmierzenie określonego, wymaganego opóźnienia czasowego. Podanie młodszej części adresu na linie adresowe pamięci DRAM jako adresu kolumny i wytworzenie aktywnego zbocza sygnału CAS# powodującego zapamiętanie tego adresu w rejestrze zatrzaskowym adresu kolumny.

27 Adresowanie pamięci DRAM Następnie, zgodnie z sygnałami sterującymi OE# lub WE#, wytwarzana jest operacja odczytu lub zapisu na zaadresowanym słowie. Po operacji odczytu odmierzane jest kolejne opóźnienie czasowe przed rozpoczęciem następnego cyklu, potrzebne do doładowania pojemności komórek pamiętających odczytywane słowo (w praktyce odświeżany jest cały wiersz).

28 Adres wiersza Adres kolumny Adres wiersza Ważne dane tCtC tata t PD t D RAS-CAS RAS# CAS# OE# Wejścia danych Wejścia adresowe pamięci Magistrala zawieszona Rodzaj informacji na magistrali Operacja odczytu dla pamięci DRAM

29 t C – minimalny czas pomiędzy dwoma kolejnymi cyklami t a – czas dostępu - czas jaki upłynął od momentu pojawienia się poprawnych danych na magistrali danych t D RAS-CAS – czas opóźnienia sygnału CAS# względem sygnału RAS# t PD – (ang. precharge delay) czas potrzebny do doładowania komórek pamięci odczytywanego słowa

30 Adres wiersza Adres kolumny Adres wiersza Ważne dane tCtC t D RAS-CAS RAS# CAS# WE# Wejścia danych Wejścia adresowe pamięci Magistrala zawieszona Rodzaj informacji na magistrali Operacja zapisu dla pamięci DRAM

31 Tryby dostępu do pamięci

32 Tryby konwencjonalny dostępu do pamięci (Page Mode)

33 Najstarszy tryb dostępu do pamięci dynamicznej to oddzielane adresowanie wiersza i kolumny dla każdego cyklu. Adres wiersza zdejmowany jest przez układ pamięciowy z szyny adresowej w momencie wykrycia opadającego zbocza sygnału sterującego – RAS (ang. Row Adress Select). Po zatrzaśnięciu tego fragmentu adresu w rejestrze wejściowym następuje krótkotrwałe zwolnienie szyny adresowej, po czym odkłada się na niej fragment adresu odpowiedzialny za numer kolumny. Adres ten wprowadzany jest do układu pamięciowego w momencie zdekodowania opadającego zbocza sygnału sterującego – CAS (ang. Column Adress Select)

34 Tryby dostępu do pamięci (Page Mode) Odczyt: Układ pamięciowy ocenia w momencie zdejmowania adresu kolumny również stan końcówki – WE. Jeżeli jest on wysoki, rozpoznany zostaje cykl odczytu i zawartość zaadresowanej komórki wyprowadzana jest na szynę danych. Zapis: Jeżeli sygnał na linii sterującej – WE znajduje się na poziomie niskim, układ rozpoznaje cykl zapisu i pobiera dane z szyny danych. Tryb adresowania komórki jest taki sam jak w przypadku odczytu.

35 Adres wiersza Adres kolumny Ważne dane RAS# CAS# WE# Operacja odczytu dla pamięci Page Mode

36 Adres wiersza Adres kolumny Ważne dane RAS# CAS# WE# Operacja zapisu dla pamięci Page Mode

37 Tryby konwencjonalny dostępu do pamięci FPM (Fast Page Mode)

38 Tryby dostępu do pamięci FPM (Fast Page Mode) Tryb FPM oferuje pewne skrócenie czasu dostępu. Różnica w stosunku do trybu konwencjonalnego polega na uproszczeniu mechanizmu adresowania. Dostęp do dowolnej komórki pamięci operacyjnej PC nie odbywa się poprzez odczytanie (lub zapis) tylko jednej wartości. Szczegóły konstrukcyjne wynikające z samej architektury (magistrale) narzucają bardziej racjonalny styl postępowania; wymiana danych między pamięcią a resztą systemu odbywa się w porcjach po kilka bajtów równocześnie.

39 Tryby dostępu do pamięci FPM (Fast Page Mode) Odczyt: Sygnał na linii kluczącej adresu wiersza – RAS utrzymuje się na poziomie niskim do czasu zakończenia ostatniego cyklu pakietu. Odczyt rozpoznawany jest dzięki utrzymywaniu sygnału na linii –WE na poziomie wysokim. Zapis: Zapis nie różni się od odczytu niczym szczególnym, prócz zmiany poziomu sygnału linii sterującej – WE. Jego stan musi być utrzymywany na poziomie niskim.

40 Adres wiersza 1 Adres kolumny 1 Adres kolumny 3 Ważne dane RAS# CAS# WE# Operacja odczytu dla pamięci FPM Adres kolumny 2

41 Adres wiersza 1 Adres kolumny 1 Adres kolumny 3 Ważne dane RAS# CAS# WE# Operacja zapisu dla pamięci FPM Adres kolumny 2

42 Tryby konwencjonalny dostępu do pamięci EDO (Extended Data Out)

43 Tryby dostępu do pamięci EDO (Extended Data Out) Pamięci dynamiczne EDO są kolejnym etapem rozwoju prowadzącym do skrócenia czasu dostępu.

44 Tryby dostępu do pamięci EDO (Extended Data Out) Odczyt: Charakterystyczne dla EDO jest to, że aktualny cykl dostępu do pamięci może się rozpocząć przed zakończeniem cyklu poprzedniego, a dane utrzymywane są na wyjściu przez czas dłuższy niż w przypadku pamięci konwencjonalnej lub FPM. Zapis: Korzyści płynące z zastosowania pamięci tego typu pojawiają się jedynie w czasie realizacji cykli odczytu. Zapis do EDO nie różni się niczym od dostępu do pamięci konwencjonalnej.

45 Adres wiersza 1 Adres kolumny 1 Adres kolumny 3 Ważne dane RAS# CAS# WE# Operacja odczytu dla pamięci EDO Adres kolumny 2

46 Tryby konwencjonalny dostępu do pamięci BEDO (Burst EDO)

47 Tryby dostępu do pamięci BEDO (Burst EDO) Pamięci tego typu stanowią kombinację dwóch idei: wydłużenia czasu obecności danych na końcówkach wyjściowych (EDO) strumieniowania (Pipelining). Pamięci tego typu nie są obecnie wykorzystywane, gdyż firma Intel nigdy nie dokonała implementacji tego typu pamięci do swoich układów, nastawiając się od początku na pamięci synchroniczne (SDRAM).

48 Porównanie trybów pracy pamięci dynamicznych

49 0

50 Cykl magistrali – stan oczekiwania

51 Dostęp do pamięci musi odbywać się z zachowaniem określonych zależności czasowych. Praca magistrali taktowana jest zegarem o określonej częstotliwości, będącej zwykle podwielokrotnością częstotliwości zegara taktującego procesor. Wartość tej częstotliwości zależy również od rodzaju magistrali (ISA, PSI).

52 Cykl magistrali – stan oczekiwania Uśpienie

53 Cykl magistrali – stan oczekiwania BCLK – (ang. Bus Clock) WS -stan oczekiwania – (ang. wait state) Ts (ang. send status) lub T1 Tc (ang. perform command) lub T2 stan uśpienia - T i (ang. idle state) VA – ważny adres DI – dane odczytywane DO – dane zapisywane Oznaczenia stosowane na wykresie:

54 Cykl magistrali – stan oczekiwania Dla magistrali ISA pojedynczy cykl magistrali realizowany jest w ciągu dwóch taktów zegara magistrali (BCLK) oznaczany przez T s (ang. send status) lub T1 oraz T c (ang. perform command) lub T2. Dla większych częstotliwości tego zegara lub wolniejszych pamięci konieczne jest opóźnienie wykonania operacji na pamięci np.: W przypadku operacji odczytu musimy poczekać, aż na magistrali danych ustalą się prawidłowe wartości bitów odczytywanego słowa. Opóźnienie to jest realizowane przez wstawienie dodatkowych taktów zegara magistrali zwanych – stanami oczekiwania (ang. wait states)

55 Odświeżanie pamięci DRAM

56 Odświeżanie komórek pamięci DRAM polega na cyklicznym doładowywaniu pojemności pamiętających przechowujących wartość 1. Częstotliwość odświeżania zapewniająca poprawną prace pamięci DRAM podawana jest przez producenta jako parametr katalogowy, którego należy przestrzegać. Odświeżanie pamięci realizowane jest przez układy logiczne odświeżania będące elementem systemu - płyty głównej. Grupa Marlenki do klasówki

57 Sposoby odświeżania pamięci dynamicznych RAM

58 Odświeżanie pamięci DRAM sygnałem RAS (ang. RAS only) – praktycznie już nie stosowany CAS przed RAS (ang. CAS – before - RAS) – wymaga obecności w układach pamięci wewnętrznego licznika odświeżania. Sterownik DRAM wytwarza aktywny sygnał CAS, a następnie RAS. W odpowiedzi na taką sekwencję układy pamięci DRAM odświeżają wiersz wskazany przez ich wewnętrzny licznik odświeżania.

59 Odświeżanie pamięci DRAM odświeżanie ukryte (ang. hidden refresh) – wymaga obecności w układach pamięci wewnętrznego licznika odświeżania. Po wytworzeniu aktywnych poziomów sygnałów RAS i CAS i odczycie komórki sygnał RAS zmienia kolejno stan na nieaktywny i aktywny przy stale aktywnym sygnale CAS. Powoduje to pozostawienie zawartości odczytywanej komórki na wyjściach danych przy jednoczesnym (równoległym) odświeżaniu wiersza zaadresowanego przez wewnętrzny licznik odświeżania pamięci.

60 Odświeżanie pamięci DRAM samoodświeżanie (ang. self-refresh) – układy logiczne odświeżania są zawarte wewnątrz układów pamięci.

61 Odmiany pamięci dynamicznych

62 1. Dostęp w trybie stronicowania

63 Dostęp w trybie stronicowania - odmiany Dostęp do pamięci w trybie stronicowania jest sposobem na przyspieszenie współpracy z pamięcią DRAM. Realizuje się to poprzez wykorzystanie dwóch zależności: większość odczytów dokonywana jest spod kolejnych, położonych koło siebie adresów. Oznacza to, że starsza część adresu (adres wiersza) nie zmienia się, a zmienia się jedynie adres kolumny. Wyjątkiem są słowa położone kolejno na początku i na końcu wiersza. czas t D RAS-CAS stanowi około 50% czasu dostępu. – Jeżeli przy kolejnych odczytach nie będziemy zmieniać adresu wiersza, a jedynie adres kolumny, to czas dostępu do pamięci ulegnie skróceniu (w przybliżeniu o czas opóźnienia sygnału CAS względem RAS)

64 Układy logiczne realizujące tryb stronicowania Rejestr zatrzaskowy komparator Układy logiczne sterowania pamięcią Ten sam wiersz S A19 – A10 A23 – A0 A23 – A20 A19 – A10 A9 – A0 RAS# CAS# Szyna adresowa pamięci Sterownik pamięci DRAM

65 Praca pamięci DRAM w trybie stronicowania

66 Dostęp w trybie stronicowania Początek pracy (dostępu do pamięci) jest prawie identyczny jak dla zwykłych pamięci DRAM. podawany jest adres wiersza, który jest zatrzaskiwany w rejestrze zatrzaskowym wiersza wewnątrz układu pamięci. podawany jest adres kolumny, który jest zatrzaskiwany w rejestrze zatrzaskowym kolumny wewnątrz układu pamięci.

67 Dostęp w trybie stronicowania Kolejny dostęp różni się od poprzedniego. po dodaniu nowego adresu przez zarządcę magistrali jego część będąca adresem wiersza jest porównywana z zawartością rejestru adresu wiersza w układzie sterowania pamięcią. Jeżeli jest identyczna, układ sterowania pamięcią DRAM utrzymuje stan niski sygnału RAS# do końca bieżącego cyklu odczytu. Oznacza to, że kolejny dostęp dotyczy słowa położonego w tym samym wierszu i należy wczytać jedynie adres kolumny, bez generowania opóźnienia sygnału CAS# względem RAS#

68 2. Dostęp w trybie seryjnym (burst)

69 Dostęp w trybie seryjnym (burst) Dostęp do pamięci możliwy jest w postaci cykli zgrupowanych (seryjnych - burst) – najczęściej stosowany przy współpracy pamięci głównej z pamięcią cache. Pamięć ta odczytuje bądź zapisuje informacje liniami, których długość zależy od rozwiązania pamięci cache i przykładowo dla systemów z procesorem Pentium wynosi 32 bajty. Ponieważ procesory Pentium mają 64-bitową (8 bajtów) magistralę danych, potrzeba 4 dostępów do pamięci, aby wypełnić linię. Operacje te dotyczą kolejnych, leżących obok siebie słów.

70 Dostęp w trybie seryjnym (burst) Adres wiersza przy każdym dostępie będzie stały, a jedynie adres kolumny będzie się zmieniał - o jeden więcej. Aby pamięć mogła pracować w trybie burst należy wewnątrz pamięci umieścić układ, który będzie zwiększał wartość adresu kolumny o 1 po każdym podaniu zbocza aktywnego sygnału CAS#. Zysk czasowy wynika z braku konieczności zapewnienia tak zwanego czasu ustalania oraz czasu przetrzymania dla adresu kolumny.

71 Praca pamięci DRAM w trybie seryjnym (burst) CAS# RAS# DQ Wejście adresowe pamięci Adres wiersza Adres kolumny 1 Dana 2Dana 1Dana 3 Dana 4

72 Pamięć SDRAM

73 Odmiany pamięci dynamicznych Architektura PC od czasu Pentium II wymagała zwiększenia przepustowości magistrali pamięciowej powyżej 66 MHz. Podstawka pod procesor Super 7, umożliwiała podwyższenie przepustowości poza zakres 66 MHz. Główny problem polegał na tym, że stosowane pamięci nie dały się dostosować do nowych wymogów – brak możliwości zwiększania częstotliwości taktowania. Rozwiązano ten problem wprowadzając nowy typ pamięci SDRAM.

74 SDRAM Pamięci dynamiczne SDRAM (S – synchroniczne) nie różnią się w swej naturze od innych pamięci dynamicznych; nośnikiem informacji jest nadal matryca komórek bazujących na kondensatorach i tranzystorach w technice CMOS. Inne są natomiast sposoby sterowania taką matrycą oraz technika dostępu. Wszystkie sygnały sterujące SDRAM synchronizowane są poprzez jeden przebieg zegarowy. Ułatwia to integrację pamięci w systemie (współpraca z magistralami), bowiem znacznie prościej jest utrzymać (mimo podwyższonych częstotliwości taktujących) i zagwarantować zaostrzone reżimy czasowe.

75 SDRAM Dostęp do pamięci SDRAM realizowany jest zwykle w formie cykli zgrupowanych (burst). Dostęp grupowy obejmuje swoim zasięgiem 2, 4 lub 8 kolejnych lokacji albo też rozciąga się na cały wiersz. Adres początkowy grupy przenoszony jest w pierwszym cyklu wprowadzającym (lead off). Reszta adresów określana jest w sposób domniemany, a ich wytwarzaniem zajmuje się wewnętrzny licznik pamięci. Dostęp może mieć charakter sekwencyjny i przemierzać kolejne adresy logiczne lub przebiegać według pewnego określonego szablonu w obrębie grupy poczwórnej. Burst może zostać przerwany (przejście w tryb Suspend) i ponownie wznowiony, a jego poszczególne elementy - opuszczone (sygnał DQM)

76 SDRAM Przed przystąpieniem do pracy układ SDRAM musi zostać zaprogramowany. Operacja ta dokonywana jest na polecenie BIOS-u i odbywa się zwykle w momencie włączenia komputera. Większość układów SDRAM dzieli się na niezależne bloki (zwykle 2 lub 4) nazywane bankami. Banki są na tyle autonomiczne, że można je wykorzystywać niezależnie od siebie. Umożliwia to ukrywanie niektórych opóźnień czasu dostępu. Problem odświeżania przeniesiony został całkowicie do wnętrza pamięci SDRAM, a kontroler pamięci nie jest już nim obarczany. Każdy chip wyposażony jest we własny generator pobudzający w odpowiednim rytmie wszystkie wiersze matryc.

77 SDRAM - zalety Zaletą tej techniki jest widoczne (i mierzalne) w określonych warunkach: - skrócenie czasu opóźnienia przy częstotliwościach powyżej 66 MHz – np.: dla 100 MHz – tylko 10 ns.

78 SDRAM – schemat blokowy układu TMS ~CAS ~RAS ~CS ~WE DQM DQ0 – DQ3 Memory Array (Bank0) Row Decoder Sense Amplifier Column Decoder Row Address Buffer Control Logic I/O Buffer CKE CLK Address 4 Uproszczony schemat rys w podręczniku

79 SDRAM – schemat blokowy układu TMS Opis oznaczeń Control Logic – kontrola logicznych sygnałów Row Address Buffer – bufor adresowania wierszów Row Decoder – dekoder adresów wierszów Memory Array (Bank) – tablica (bank) pamięci Sense Amplifier – różnicowy wzmacniacz odczytu Column Decoder – dekoder adresów kolumn I/O Buffer – bufor wejścia - wyjścia

80 SDRAM – schemat blokowy układu TMS Linie zewnętrzne układ zamknięty jest w obudowie TSOP-II( odszukać w Internecie ) i ma 54 końcówki, do których doprowadzone są sygnały zawarte w tabeli: SygnałyZnaczenieSygnałyZnaczenie DQ0 – DQ3 Data Input/ Data Output ~WE Write Enable DQM Output Disable/ Write Mask ~CS Chip select A0 – A9,A11 Row/Col. Address CLK Clock Input A10 (AP) Auto Precharge CKE Clock Enable BS0,BS1 Bank Select ~RAS Row Address Select ~CAS Column Address Select

81 SDRAM – schemat blokowy układu TMS Magistrala danych Każdy z banków (Memory Array) omawianego układu wyprowadza po cztery linie danych, co oznacza, że magistrala danych jest czterobitowa, a banki są całkowicie niezależne. Maskowanie wejścia i wyjścia (DQM) Linia DQM umożliwia wycinanie pojedynczych elementów z pakietów Burst. W normalnym trybie pracy stan sygnału na linii DQM utrzymywany jest na niskim poziomie logicznym. Podniesienie jego poziomu do logicznej 1 – powoduje: W trakcie trwania cyklu zapisu – ignorowanie porcji danych, która byłaby przyjęta przez SDRAM w momencie wyznaczonym przez narastające zbocze sygnału CLK. W trakcie trwania cyklu odczytu – z sekwencji wyjściowej wycinana jest porcja danych, a w fazie czasowej, w której miałaby wystąpić, układ przechodzi w stan wysokiej impedancji.

82 SDRAM – schemat blokowy układu TMS Magistrala adresowa i selektor banku Magistrala adresowa jest dwunastobitowa (A0 – A11) i podlega multipleksowaniu – tymi samymi liniami podawane są różne fragmenty adresu w wydzielonych wycinkach czasowych. W pierwszej kolejności przekazuje się adres wiersza, a następnie adres kolumny. Szczególne znaczenie ma linia A10, która decyduje o trybie dezaktywacji (precharge) banku. Linie BS0 i BS1 umożliwiają wybór do bieżącej operacji jednego z czterech banków układu. Selektory banków można przypisać do magistrali adresowej, co powoduje jej wydłużenie do rozmiaru 14 bitów (A0 – A13). Sygnały sterujące ~RAS, ~CAS, ~WE. Oznaczanie aktualnej fazy podawania adresu dokonywane jest poprzez sygnały sterujące ~RAS (wiersz) i ~CAS (kolumna). Linia ~WE pełni rolę przełącznika zapisu i odczytu.

83 SDRAM – schemat blokowy układu TMS Linia ~CS (Chip Select). Stan końcówki ~CS testowany jest przy każdym narastającym zboczu CLK. Urządzenie znajduje się w stanie aktywnym dopóty, dopóki ~CS pozostaje na poziomie zera logicznego. Wykrycie poziomu 1 powoduje przejście w stan, w którym sterowniki DQ odcinają się od magistrali (stan wysokiej impedancji), a układ nie reaguje na żadne sygnały wejściowe z wyjątkiem ~CS. Funkcje sterujące oferowane przez ~CS znajdują zastosowanie w przypadku grupowania pojedynczych chipów SDRAM w moduły pamięci. Końcówki CLK (Clock) i ~CKE (Clock Enable). a) CLK jest centralnym zegarem sterującym, do którego odnoszą się wszystkie inne sygnały. Układ pamięci SDRAM rejestruje stan wszystkich końcówek wejściowych w momencie wykrycia narastającego zbocza sygnału CLK. Poziom sygnałów na wyjściach układu należy również oceniać w tych samych momentach.

84 SDRAM – schemat blokowy układu TMS Końcówki CLK (Clock) i ~CKE (Clock Enable). ~CKE stanowi bramkę blokującą lub przepuszczającą sygnał zegarowy do wnętrza układu. W normalnym stanie pracy ~CKE znajduje się na wysokim poziomie logicznym. Wymuszenie stanu 0 na tym wejściu powoduje przejście SDRAM w tzw. stan uśpienia (Suspend Mode). Tryb ten charakteryzuje się znacznie zmniejszonym poborem mocy (o około 99%). Z punktu widzenia sygnałów sterujących następuje zamrożenie aktualnego stanu - przerwane zostają cykle zapisu i odczytu, - układ ani nie wyprowadza, - ani nie przyjmuje danych. Przywrócenie normalnego działania następuje przy drugim zboczu CLK liczonym od momentu, gdy ~CKE=1.

85 SDRAM - ROZKAZY Pamięć SDRAM wymienia dane z otoczeniem w dużych porcjach: im są większe, tym wyższa jest skuteczność działania. Pod pewnymi względami chip SDRAM należy rozpatrywać jako pewien programowalny sterownik obsługujące swe własne matryce pamięciowe. Lista rozkazów tego sterownika obejmuje pozycje umożliwiające: - konfigurację urządzenia, - operację zapisu i odczytu, - manipulację bankami.

86 SDRAM – przykładowe rozkazy rozkaz ~CS~RAS~CAS~WE BS1 (A13) BS0 (A12) A11A10A9–A0 Mode Register Set Register Set Data w a-b3-b2-b1 Bank Precharge 0010 Numer banku: 00: B0 01: B1 10: B2 11: B3 Bez znacz. 0 Bez znaczenia Row Address 0011 Numer banku: 00: B0 01: B1 10: B2 11: B3 r - 11r - 10r9-r8-r7-r6-r5-r4-r3-r2-r1-r0 Column Address Entry Read 0101 Numer banku: 00: B0 01: B1 10: B2 11: B3 Bez znacz. 0 c9-c8-c7-c6-c5-c4-c3-c2-c1-c0

87 SDRAM - ROZKAZY Faza programowania (Mode Set). Układ SDRAM musi zostać zaprogramowany przed podjęciem pracy. W trakcie tej operacji określa się następujące parametry: wymiar opóźnienia pomiędzy przyłożeniami adresu kolumny a wprowadzeniem pierwszej porcji danych (CAS Latency). Parametr ten podaje się w jednostkach CLK, a dopuszczalne wartości to 2 lub 3. długość pakietu (Burst Length); dopuszczalne wartości to 1, 2, 4, 8 3. format pakietu – sekwencyjny lub z przeplotem. Powyższe parametry przekazuje się w formie słowa 10-bitowego podawanego na liniach A0 – A9. Układ SDRAM rozpoznaje fazę programowania dzięki określonej konfiguracji sygnałów sterujących: ~RAS= ~CAS= ~WE = 0. Dane na liniach A0 – A9 sprawdzane są pod względem swej poprawności i jeśli nie spełniają przyjętych kryteriów, zostają odrzucone, a stan układu nie ulega zmianie.

88 SDRAM – faza programowania SDRAM Register Set Data ~CLK ~CS ~WE ~RAS ~CAS ADR

89 SDRAM - ROZKAZY Aktywacja banku. Omawiany układ podzielony jest na cztery banki. Banki mogą być wykorzystywane niezależnie. Właściwość ta ma zasadnicze znaczenie z punktu widzenia ciągłości danych. SDRAM zorganizowany w formie pojedynczego banku zmuszony jest do wprowadzania przerw w momencie zmian adresu wiersza. Sekwencje aktywacja – deaktywacja (Precharge) to nic innego, jak przygotowanie elektroniki do odczytu. Następuje tu podładowanie linii wiersza do poziomu połowy napięcia zasilania. Operacja ta jest niezbędna dla zapewnienia prawidłowego funkcjonowania wzmacniaczy różnicowych. Układ rozpoznaje polecenie aktywacji poprzez specyficzną kombinację sygnałów sterujących ~RAS = 0, ~CAS = 1, ~WE = 1. Na liniach A12 i A13 kodowany jest numer banku (0 – 3). Naprzemienne (Interleave) pobudzanie banków maskuje czas potrzebny na przygotowanie wiersza. W danym momencie zawsze pracuje jeden z banków, a wyprowadzana informacja płynie nieprzerwanym strumieniem w tempie określonym przez CLK.

90 SDRAM - ROZKAZY Zapis i odczyt Operacje zapisu i odczytu przebiegają najkorzystniej w formie pakietów (Burst). Ponieważ parametry transmisji określono w fazie programowania, wystarczy podać adres początkowy obszaru pamięci, a kolejne lokalizacje zdefiniowane zostają w sposób jednoznaczny. Adres wiersza ustala się w momencie aktywacji banku tak, że zmieniają się jedynie adresy kolumn, a konkretnie kilka ostatnich bitów (np. Burst ośmiokrotny – 3 bity).

91 SDRAM - ROZKAZY Przykład: Burst Length = 8 Burst Type = Seq Adres początkowy kolumny: xxxx... X101 Adresy kolejne xxxx... X110 xxxx... X111 xxxx... X000 xxxx... X001 xxxx... X010 xxxx... X011 xxxx... X100

92 SDRAM - ROZKAZY Przykład: Burst Length = 4 Burst Type = Seq Adres początkowy kolumny: xxxx... XX10 Adresy kolejne xxxx... XX11 xxxx... XX00 xxxx... XX01

93 SDRAM - ROZKAZY Pierwsza porcja danych pakietu wyprowadzana jest zgodnie z definicją zawartą w fazie programowania (Read Latency lub inaczej CAS Latency) po 2 lub 3 cyklach zegarowych od momentu podania komendy i adresu kolumny. Cykl zapisu następuje bez opóźnienia (Write Latency = 0). Dane przejmowane są z magistrali wraz z wystąpieniem pierwszego narastającego zbocza CLK. (rys.) Po zakończeniu fazy Burst bufory wyjściowe przechodzą automatycznie w stan wysokiej impedancji i układ jest odcinany od magistrali.

94 SDRAM – odczyt danych z pamięci SDRAM

95 SDRAM - ROZKAZY Deaktywacja Podanie adresu nowego wiersza (aktywacja) musi zostać poprzedzone przez deaktywację danego banku. Bank można deaktywować na jeden z trzech sposobów: Deaktywacja określonego banku o numerze kodowanym na bitach A12 i A13. Polecenie ma postać ~RAS = 0, ~WE = 0, ~CAS = 1. Linia A10 utrzymywana jest na niskim poziomie. Jednocześnie deaktywacja wszystkich banków. Rozkaz deaktywacji z ustawionym bitem A10 = 1 odnosi się do wszystkich banków, a stan linii A12 i A13 nie ma znaczenia. Cykle zapisu i odczytu z przyrostkiem Read-P i Write-P (P- Precharge). Różnią się od normalnych operacji ustawieniem linii A10 = 1. Cykle takie przechodzą automatycznie w fazę deaktywacji banku i nie wymagają żadnych dodatkowych działań. Ustawienie A10 = 0 w momencie wydawania polecenia zapisu lub odczytu pozostawia bank w stanie aktywnym.


Pobierz ppt "Pamięci Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz."

Podobne prezentacje


Reklamy Google