Слайд 1Pamięc RAM
Denys Bykovskyi
ETI 3.3
Слайд 2Literatura
Józef Kalisz – Podstawy Elektroniki Cyfrowej
Baranowski J. et.al. Układy Elektroniczne
cz.3 – Układy i systemy cyfrowe
www.wikipedia.org (ang.)
http://galaxy.uci.agh.edu.pl/~jamro/tc
Слайд 3Pamięci
RAM (Random Access Memory)
Statyczne (SRAM)
Asynchroniczne
Synchroniczne
Dynamiczne (DRAM)
-Asynchroniczne (historia)
- Synchroniczne SDRAM, DDR,
DDR2, DDR3, RAM-BUS (RDRAM), XDR-DRAM
Specjalizowane
FIFO (First-In First-Out)
LIFO (Last-In First-Out –
stos)
CAM (Content-Addressable Memory)
LUT (Look-Up Table) (pamięć ROM/RAM)
Слайд 4Podstawowa komórka pamięci SRAM
Przerzutnik bistabilny – dwa inwertery
Przerzutnik RS –
przejście w inny stan poprzez zwarcie
Слайд 5Schemat Blokowy układ: AS7C4096
512k×8bit
Слайд 6Cech pamięci SRAM
• AS7C4096 (5V version)
• AS7C34096 (3.3V version)
• Industrial
and commercial temperature
• Organization: 524,288 words × 8 bits
• High
speed
- 10/12/15/20 ns address access time
- 5/6/7/8 ns output enable access time
• Low power consumption: ACTIVE
- 1375 mW (AS7C4096) / max @ 12 ns
- 468 mW (AS7C34096) / max @ 12 ns
• Low power consumption: STANDBY
- 110 mW (AS7C4096) / max CMOS
- 72 mW (AS7C34096) / max CMOS
• Equal access and cycle times
• Easy memory expansion with CE, OE inputs
• TTL-compatible, three-state I/O
Слайд 12Łączenie pamięci
Zwiększenie szerokości magistrali danych (preferowane)
Zwiększenie szerokości magistrali adresowej
Слайд 13Pamięci wieloportowe
Dwa takie same niezależne interface’y do pamięci – ale
ta sama pamięć!
Слайд 14Komórka pamięci wieloportowej
Pamięć jednoportowa dwuportowa
czteroportowa
Слайд 15Optymalizacja komórki pamięci dwuportowej
Literatura: Area-Efficient Dual-Port Memory Architecture for Multi-Core
Processors - Hassan Bajwa and Xinghao Chen
Слайд 16Pamięci SRAM synchroniczne - odczyt
Слайд 17Pamięci SRAM synchroniczne - zapis
Слайд 18Dynamic RAM
Pierwsze tranzystory-kondensatory
Dzisiejsze kondensatory są budowane w 3 wymiarach aby
zmniejszyć rozmiar powierzchni i zwiększyć pojemność C
Слайд 20Odczyt pamięci DRAM
RAS – Raw Address Strobe
CAS – Column Address
Strobe
Слайд 22Odświeżanie
Odświeża się cały wiersz podczas pojedynczego odczytu
CAS before RAS
Jeśli /CAS
jest ustawiany w stan niski (aktywny) prezzd sygnałem /RAS to
pamięć DRAM ignoruje adres podany na magistrali adresowej i używa swojego wewnętrznego licznika odświeżeń aby odświeżyć kolejny wiersz
Слайд 24Pamięć SDRAM Synchronouse DRAM (Single Data Rate)
Слайд 25Parametry czasowe
tCAS-tRCD-tRP-tRAS przykład: 2.5-3-3-8
CL = CAS Latency time: The
time it takes between a command having been sent to
the memory and when it begins to reply to it. It is the time it takes between the processor asking for some data from the memory and it returning it.
TRCD = DRAM RAS# to CAS# Delay: The number of clock cycles performed between activating the Row Access Strobe and the Column Access Strobe. This parameter relates to the time it takes to access stored data.
TRP = DRAM RAS# Precharge: The amount of time between the 'precharge' command and the 'active' command. The precharge command closes memory that was accessed and the active command signifies that a new read/write cycle can begin.
TRAS = Active to Precharge delay: The total time that will elapse between an active state and precharge state. This is the sum of the previous timings: CL + TRCD + TRP
Слайд 26Komendy SDRAM
Precharge – zakończenie dostępu do danego wiersza oraz ustawienie
wzmacniaczy na napięcie progowe
Слайд 29DDR SDRAM- Double Date Rate
Transfer danych następuje 2 razy na
takt zegara – na narastające i opadające zbocze
Komendy akceptowane są
co takt zegara (w pierwszym przybliżeniu) i są podobne jak dla sdram
Obniżono napięcie zasilania z 3.3V (sdr sdram) na 2.5V (DDR)
Szybkość transmisji: 2(ddr) * 8 (bajtów) *f
Слайд 30DDR2
Transfer danych na narastającym i opadającym zboczu (błędem jest twierdzenie
że 4 razy na takt zegara)
Częstotliwość wewnętrzna pamięci 2 razy
mniejsza od częstotliwości magistrali zewnętrznej – dlatego podczas jednego odczytu z pamięci wewnętrznej odczytywane są 4 bity, które są kolejno transferowane pojedynczo
Obniżone napięci zasilania na 1.8V
Aby osiągnąć wyższą wydajność od pamięci DDR pamięci DDR2 są taktowane wyższą częstotliwością
Pamięci te mają większe opóźnienie (latency), np. Dla DDR typowe to 2 do 3, dla DDR2 typowe to 4 do 6 taktów zegara – opóźnienie to jest częściowo rekompensowane większą częstotliwością taktowania
Слайд 31DDR3
Częstotliwość wewnętrzna pamięci 4 razy mniejsza od częstotliwości zewnętrznej –
dlatego podczas jednego odczytu wewnętrznego czytanych jest 8 bitów, które
z kolei są transmitowane pojedynczo w 4 taktach zegara
Zwiększono częstotliwość taktowania
Zwiększono opóźnienie (latency)
Zmniejszono napięcie zasilania do 1.5V
Слайд 32Dual-Channel Memory
Zwiększona szerokość magistrali danych z 64-bitów do 128-bitów
Слайд 33First-In First-Out (FIFO)
Wejście: A, B, - ,C, - , D,
E
Wyjście: - , A, - , B, - , -
, C, - , D , E
empty
full
Слайд 34Last-In Last-Out (LIFO)
(stos)
Wejście: A, B, - ,C, - , D,
E
Wyjście: - , B, - , C, - , -
, E, - , D , A
Слайд 35Content-addressable memory
(CAM)
Podajemy wartość danej a pamięć CAM zwraca adres (lub
adresy) pod którymi znajduje się podane dana
W konsekwencji należy przeszukać
całą pamięć aby otrzymać adres pod którym znajduje się podana dana
Слайд 36Look-Up Table (LUT)
Kwadrat:
Adres: 0, 1, 2, 3, 4...
Dana: 0, 1,
4, 9, 16...