pamieci 3

background image

Pamięci

Opracował: Andrzej

Nowak

Bibliografia:
Urządzenia techniki komputerowej, K.
Wojtuszkiewicz

background image

Rodzaje pamięci

background image

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ą.

background image

Podstawowe

definicje

background image

Podstawowe definicje

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

background image

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

background image

Podstawowe

parametry

background image

Podstawowe parametry

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

background image

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.

background image

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

background image

Organizacja pamięci

background image

R/W#
CS#

dane

adres

Organizacja –

bitowa

,

32x1b

R/W#
CS#

dane

adres

Organizacja –

bajtowa

,

4x1B

Organizacja pamięci

background image

Metody zwiększania

ilości pamięci

background image

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.

background image

Zwiększanie długości

słowa

Wyjście/wejście
danych

Adresy

D0

D2
D3

D1

D0

D0

D1
D2
D3

CS#

R/W#

background image

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.

background image

Zwiększanie ilości

słów

DB

(D0-D3)

A

d

re

s

D

e

ko

d

e

r

2

5

6

k

x

4

b

2

5

6

k

x

4

b

2

5

6

k

x

4

b

2

5

6

k

x

4

b

C

S

#

C

S

#

C

S

#

C

S

#

R

W

#

R

W

#

R

W

#

R

W

#

R/W

A18

A19

A17-A0

18

4

background image

Pamięci

dynamiczne RAM

background image

Pamięci dynamiczne RAM

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ą

.

background image

Obsługa

asynchronicznych

pamięci DRAM

background image

Obsługa asynchronicznych pamięci
DRAM

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.

background image

Adres

MEM

Dan
e

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#

background image

Wejście
adresow
e

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

background image

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

Do
klasówki

background image

Adresowanie

pamięci DRAM

background image

Adresowanie pamięci DRAM

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.

Grupa
Marlenki

background image

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).

background image

Adres

wiersza

Adres

kolumny

Adres

wiersza

Ważne

dane

t

C

t

a

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

background image

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

background image

Adres

wiersza

Adres

kolumny

Adres

wiersza

Ważne

dane

t

C

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

background image

Tryby dostępu

do pamięci

background image

Tryby konwencjonalny

dostępu do pamięci

(

Page Mode

)

background image

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

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)

background image

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.

background image

Adres

wiersza

Adres

kolumny

Ważne

dane

RAS#

CAS#

WE#

Operacja odczytu dla pamięci Page
Mode

background image

Adres

wiersza

Adres

kolumny

Ważne

dane

RAS#

CAS#

WE#

Operacja zapisu dla pamięci Page
Mode

background image

Tryby konwencjonalny

dostępu do pamięci

FPM

(

Fast Page Mode

)

background image

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.

background image

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.

background image

Adres

wiersza 1

Adres

kolumny 1

Adres

kolumny 3

Ważne

dane

RAS#

CAS#

WE#

Operacja odczytu dla pamięci
FPM

Adres

kolumny 2

background image

Adres

wiersza 1

Adres

kolumny 1

Adres

kolumny 3

Ważne

dane

RAS#

CAS#

WE#

Operacja zapisu dla pamięci FPM

Adres

kolumny 2

background image

Tryby konwencjonalny

dostępu do pamięci

EDO

(

Extended Data

Out

)

background image

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.

background image

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.

background image

Adres

wiersza 1

Adres

kolumny 1

Adres

kolumny 3

Ważne

dane

RAS#

CAS#

WE#

Operacja odczytu dla pamięci
EDO

Adres

kolumny 2

background image

Tryby konwencjonalny

dostępu do pamięci

BEDO

(

Burst EDO

)

background image

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).

background image

Porównanie trybów

pracy pamięci

dynamicznych

background image

Porównanie trybów pracy pamięci
dynamicznych

0

R1

R1

R1 C1

R2

C1

C1

C2

C2

C2

C3

C3

C3

C4

C4

C4

R3

R4

R1/C
1

R1/C
1

R1/C1

R2/C
2

R2/C
2

R2/C2

R3/C
3

R3/C
3

R3/C3

R4/C
4

R4/C
4

R4/C
4

FPM

DRA
M

EDO

RAS

RAS

RAS

CAS

CAS

CAS

AD
R

AD
R

AD
R

DATA

DATA

DATA

200ns

100n
s

300n
s

400n
s

background image

Cykl magistrali

– stan oczekiwania

background image

Cykl magistrali – stan oczekiwania

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).

background image

Cykl magistrali – stan oczekiwania

Uśpienie

Uśpienie

Uśpienie

Uśpienie

Ti

Ti

T2

T1

T1

T1

Ti

Ti

Ti

T2

T2

T2

T2

DI

DI

DO

VA

VA

VA

(0 WS)

Odczyt

(1 WS)

(1 WS)

Odczyt

Zapis

BCLK

A23 – A0

W / R#

READY

D15 – D0

background image

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:

background image

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)

background image

Odświeżanie pamięci

DRAM

background image

Odświeżanie pamięci DRAM

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

background image

Sposoby odświeżania

pamięci dynamicznych

RAM

background image

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.

background image

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.

background image

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.

background image

Odmiany

pamięci

dynamicznych

background image

1.

Dostęp w trybie

stronicowania

background image

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)

background image

Układy logiczne realizujące tryb

stronicowania

Rejestr

zatrzasko
wy

komparat
or

Układy

logiczne

sterowani
a

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

background image

Praca pamięci DRAM w trybie

stronicowania

CAS#

RAS#

DQ

Wejście
adresowe
pamięci

Adres
wiersza

Adres
kolumny
1

Adres
kolumny
3

Adres
kolumny
2

Adres
kolumny
4

Dana 2

Dana 1

Dana 3

Dana 4

background image

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.

Grupa
rosyjskieg
o

1 kt

background image

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#

background image

2

.

Dostęp w trybie seryjnym

(

burst

)

background image

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.

background image

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.

background image

Praca pamięci DRAM w trybie seryjnym

(burst)

CAS#

RAS#

DQ

Wejście
adresowe
pamięci

Adres
wiersza

Adres
kolumny
1

Dana 2

Dana 1

Dana 3

Dana 4

background image

Pamięć SDRAM

background image

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.

background image

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.

background image

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)

background image

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.

background image

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.

background image

SDRAM

– schemat blokowy układu

TMS664414

~CAS

~RAS

~CS
~WE

DQM

DQ0 – DQ3

Memory Array

(Bank0)

R

o

w

D

e

co

d

e

r

Sense Amplifier

Column Decoder

R

o

w

A

d

d

re

ss

B

u

ff

e

r

C

o

n

tr

o

l L

o

g

ic

I/O

Buffer

CKE

CLK

Address

4

Uproszczony schemat rys. 2.48 w podręczniku

background image

SDRAM

– schemat blokowy układu

TMS664414

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

background image

SDRAM

– schemat blokowy układu

TMS664414

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ły

Znaczenie

Sygnały

Znaczenie

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

background image

SDRAM

– schemat blokowy układu

TMS664414

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.

background image

SDRAM

– schemat blokowy układu

TMS664414

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.

background image

SDRAM

– schemat blokowy układu

TMS664414

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.

background image

SDRAM

– schemat blokowy układu

TMS664414

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.

background image

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.

background image

SDRAM

– przykładowe rozkazy

rozkaz

~C

S

~RA

S

~CA

S

~W

E

BS1

(A13)

BS0

(A12

)

A11

A10

A9–A0

Mode Register
Set

0

0

1

0

0

0

0

0

Register Set Data
w-0-0-13-12-11-a-b3-b2-
b1

Bank
Precharge

0

0

1

0

Numer
banku:
00: B0
01: B1
10: B2
11: B3

Bez
znacz
.

0

Bez znaczenia

Row Address

0

0

1

1

Numer
banku:
00: B0
01: B1
10: B2
11: B3

r - 11

r -
10

r9-r8-r7-r6-r5-r4-r3-r2-r1-
r0

Column
Address Entry
Read

0

1

0

1

Numer
banku:
00: B0
01: B1
10: B2
11: B3

Bez
znacz
.

0

c9-c8-c7-c6-c5-c4-c3-c2-
c1-c0

background image

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.

background image

SDRAM

– faza programowania

SDRAM

Registe
r Set
Data

~CLK

~CS

~WE

~RA
S

~CA
S

ADR

background image

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.

background image

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).

background image

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

background image

SDRAM

- ROZKAZY

Przykład:

Burst Length =

4

Burst Type =

Seq

Adres początkowy kolumny:

xxxx ...

XX10

Adresy kolejne

xxxx ...

XX11

xxxx ...

XX00

xxxx ...

XX01

background image

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.

background image

SDRAM

– odczyt danych z pamięci SDRAM

background image

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.

background image


Document Outline


Wyszukiwarka

Podobne podstrony:
03 Odświeżanie pamięci DRAMid 4244 ppt
wykład 12 pamięć
8 Dzięki za Pamięć
06 pamięć proceduralna schematy, skrypty, ramyid 6150 ppt
Pamięć
PAMIĘĆ 3
Architektura i organizacja komuterów W5 Pamięć wewnętrzna
Test Pamięci Wzrokowej Bentona2 3
Pamięć robocza i modele umysłowed
uwaga i pamięć
Pamięć i psychologia poznawcza
Pamięć
budowa i rodzaje pamięci
pamiec rodzaje
PamięciMasowe

więcej podobnych podstron