- 1 -
Budowa, historia i rodzaje pamięci RAM i ROM.
Autor artykułu: mgr Jerzy Wałaszek
Potrzebę posiadania urządzenia zapamiętującego informację zauwaŜali juŜ
pionierzy maszyn cyfrowych. W roku 1834 Charles Babbage zaprojektował swoją
maszynę analityczną (ang. analitical engine) w oparciu o karty perforowane (ang.
punched card), które pełniły rolę pamięci programu oraz danych wejściowych.
Niestety, z powodu ciągłych zmian projektu Babbage popadł w konflikt z inŜynierem
wykonującym elementy mechaniczne i idea budowy pierwszego, prawdziwego
komputera nie została urzeczywistniona za Ŝycia jego twórcy. Dopiero w latach 20-
tych ubiegłego wieku wnuk Babbage'a opierając się na oryginalnych planach dziadka
zbudował fragment tej maszyny. Jak moŜna się domyślać, prototyp działał dokładnie
tak, jak tego Ŝyczyłby sobie Charles.
Zasada działania karty perforowanej jest bardzo prosta - informację zapisuje się
przy pomocy układu dziurek. Układ odczytujący (mechaniczny lub elektryczny)
sprawdza wystąpienia dziurek i przekazuje na ich podstawie odpowiednią informację
do maszyny cyfrowej. PoniŜej przedstawiamy kartę perforowaną (tzw. fiszkę), która
była w powszechnym uŜyciu do lat 70-tych ubiegłego wieku.
- 2 -
U góry karty widzimy jej zawartość w postaci tekstu. Ten fragment karty jest
przeznaczony dla człowieka, który ewentualnie sprawdzał treść kart. Dla komputera
informacja jest zakodowana w postaci prostokątnych otworów w pionowych
kolumnach - tzw. perforacji. KaŜdy znak posiadał swoją własną kombinację otworów
w róŜnych wierszach, które tutaj są ponumerowane od 0 do 9. Na przykład dla
powyŜszej karty cyfra 9 jest kodowana otworkiem w wierszu 9 (są dwa otworki obok
siebie, czyli dwie cyfry 99). Spacja to brak otworków, Literka S ma otworki w
wierszu 0 i 2, literka T ma otworki w wierszu 0 i 3, itd. KaŜdy komputer definiował
swój własny kod dla kart perforowanych - całe szczęście, iŜ odeszły one juŜ do
historii.
Na podobnej zasadzie pracuje taśma perforowana (ang. punched tape), którą
wykorzystywał w 1936 roku w swoich komputerach Konrad Zuse - twórca
pierwszego, działającego komputera dwójkowego.
Jako materiału Konrad Zuse wykorzystywał taśmę ze starymi filmami kinowymi (jakimi - nie
wiadomo). Informacja zapisywana była w formie kombinacji dziurek, które moŜna było wybijać w
specjalnym urządzeniu, które równieŜ skonstruował Zuse dla swojej maszyny. Taśma perforowana
(czy karty perforowane) pozwalała zapisywać tylko dane wejściowe dla maszyny lub tylko wyniki.
Nie mogła słuŜyć do chwilowego przechowywania informacji - np. wyników pośrednich przy
róŜnych obliczeniach matematycznych. Z tego powodu Zuse skonstruował dodatkową pamięć
wewnętrzną dla swojej maszyny liczącej. Była to pamięć mechaniczna, w której bity (tak, bity -
maszyna Zusego pracowała w systemie binarnym) zapamiętywane były przy pomocy odpowiednich
przesunięć blaszek i zatrzasków. Całość wyglądała jak na poniŜszej fotografii, która przedstawia
egzemplarz komputera Z3, zrekonstruowanego w latach 90-tych ubiegłego stulecia i który moŜna
obejrzeć w Berlińskim Muzeum Techniki.
- 3 -
W pamięci tej maszyna cyfrowa mogła składować dane w postaci 64 liczb zmiennoprzecinkowych.
Program zapisany na karcie perforowanej odwoływał się do tych danych, dzięki czemu maszyna
Zusego bez problemu realizowała nawet zaawansowane obliczenia numeryczne (np. całki, róŜniczki
itp.).
Wadą pamięci mechanicznej była jej powolność oraz zawodność - blaszki czasami się zacinały
powodując awarię maszyny. Mimo tych niedogodności jeden z późniejszych komputerów Zusego
przez wiele lat po wojnie pracował jako jedyna maszyna cyfrowa w Europie do badań nad
metodami numerycznymi.
Na początku lat 50-tych ubiegłego wieku rozpowszechniły się elektroniczne maszyny cyfrowe.
Szybkość i niezawodność działania pamięci wewnętrznej stały się kluczowym elementem tych
maszyn. Opracowano zatem wiele ciekawych konstrukcji pamięci komputerowych.
1947 - wynalezienie magnetycznej pamięci ferrytowej (ang. magnetic core memory). Zasada
działania opierała się na magnesowaniu malutkich rdzeni ferrytowych. Stan namagnesowania jest
stały i moŜna go odczytywać. KaŜdy rdzeń przechowuje informację o jednym bicie. Na poniŜszym
obrazku widzimy fragment takiej pamięci ferrytowej. Rdzenie posiadają formę małych pierścieni
wykonanych z ferrytu, przez które przechodzą przewody magnesujące i odczytujące stan
namagnesowania (odczyt niszczył zapamiętaną informację, poniewaŜ rdzenie się
przemagnesowywały, dlatego układy sterujące pamięcią ferrytową zawierały specjalne obwody
regenerujące dane po kaŜdym odczycie). Pamięć magnetyczna była pamięcią nieulotną - tzn. nie
traciła informacji po wyłączeniu zasilania.
Aby uzyskać odpowiednio duŜą pojemność, pamięć maszyny cyfrowej montowano z wielu
plastrów ferrytowych, co widzimy na poniŜszej fotografii:
- 4 -
1947 - wynalezienie magnetycznej pamięci bębnowej (ang. magnetic drum memory). Zasada
działania polegała na zapisie informacji binarnej w postaci ścieŜek magnetycznych na obwodzie
bębna pokrytego specjalnym materiałem magnetycznym. Bęben obracając się pozwalał na ciągły
zapis i odczyt danych. Ilość przechowywanej informacji zaleŜała od liczby ścieŜek oraz pojemności
kaŜdej ścieŜki. Na poniŜszym obrazku moŜemy zobaczyć takie urządzenie będące pradziadkiem
współczesnych dysków twardych.
1949 - wynalezienie pamięci z ultradźwiękową linią opóźniającą (ang. ultrasonic delay line
memory). Informacja pamiętana była w postaci fali ultradźwiękowej przemieszczającej się w tubie
wypełnionej rtęcią. Na jednym końcu tuby znajdował się kwarcowy nadajnik, a na drugim
kwarcowy odbiornik drgań. Dane z odbiornika po odpowiedniej regeneracji kształtu fali były z
powrotem kierowane do nadajnika - informacja krąŜyła w kółko. Pojemność pamięci zaleŜała od
długości tuby z linią opóźniającą oraz od ilości tub. Dane moŜna było odczytywać, gdy pojawiły się
na wyjściu. Zapis polegał na wprowadzaniu danych na wejściu w odpowiednich przedziałach
czasowych.
1951 - pierwsze zastosowanie taśmy magnetycznej (ang. magnetic tape memory) do zapisu
informacji w komputerze UNIVAC. Urządzenie zapisujące nosiło nazwę UNISERVO, a nośnikiem
była cienka, półcalowa taśma wykonana z paska fosforobrązu pokrytego niklem. Na jednym calu
taśmy mieściło się 128 znaków - zapis wykonywany był na 8 równoległych ścieŜkach
magnetycznych z prędkością stu cali na sekundę (2,54 m/s), co w efekcie dawało strumień danych o
szybkości 12800 znaków na sekundę.
- 5 -
1966 - powstaje firma Intel i rozpoczyna budowę oraz sprzedaŜ pamięci półprzewodnikowych (ang.
semiconductor memory). Półprzewodnikowe pamięci elektroniczne stają się coraz bardziej
popularne, gdyŜ posiadają wiele zalet nad swoimi rywalami - małe rozmiary, niewielki pobór
energii, rosnącą pojemność wraz z rozwojem układów scalonych oraz malejącą cenę. Pamięć
komputera zaczyna się róŜnicować na szybką pamięć operacyjną (ang. system memory), w której
komputer przechowuje wykonywane programy oraz przetwarzane dane, i na znacznie wolniejszą
pamięć masową (ang. mass storage memory), w której przechowywane są duŜe ilości informacji.
PoniŜej słynny układ scalony Intel 1103 o pojemności 1kb (1024 bity).
Współczesne pamięci komputerowe są bardzo szybkie i posiadają olbrzymie pojemności -
niejednokrotnie liczone w giga bajtach. Na tym polu wciąŜ trwa szybki rozwój i trudno przewidzieć
czym zaskoczą nas w przyszłości producenci komponentów komputerowych.
- 6 -
Pamięć komputerowa (ang. computer memory) jest urządzeniem cyfrowym słuŜącym do
przechowywania informacji w postaci bitów. Dzielimy ją na:
•
pamięć operacyjną (ang. operating memory) - słuŜy do przechowywania uruchomionych
programów oraz przetwarzanych danych. Jest pamięcią szybką, o krótkim czasie dostępu do
przechowywanej informacji. Pamięć operacyjna realizowana jest z układów
półprzewodnikowych. Posiada relatywnie małą pojemność (do kilku giga bajtów).
•
pamięć masową (ang. mass storage) - słuŜy do składowania programów oraz duŜej ilości
informacji. Pamięć masowa posiada dłuŜszy czas dostępu do przechowywanych danych w
porównaniu z pamięcią operacyjną, lecz ma duŜą pojemność (setki gigabajtów).
Realizowana jest w postaci dysków twardych, stacji CD/DVD, dysków sieciowych
(dostępnych poprzez sieć teleinformatyczną). W przyszłości, gdy ulepszone zostaną pamięci
FLASH, pamięć masowa prawdopodobnie zintegruje się z pamięcią operacyjną komputera -
urządzenia mechaniczne, jak dyski twarde i stacje CD/DVD, odejdą do lamusa (tak dzieje
się obecnie ze stacjami dyskietek, zastępują je Pendrive'y).
Pamięć operacyjna RAM
Pamięć RAM (ang. Random Access Memory - pamięć o dostępie swobodnym) jest podstawowym
składnikiem pamięci operacyjnej komputera. Termin RAM oznacza pamięć, z której informacja
moŜe być odczytywana w dowolnej kolejności bez względu na poprzednie odczyty czy zapisy.
Termin RAM wprowadzono w celu odróŜnienia pamięci o dostępie swobodnym od pamięci o
dostępie sekwencyjnym (np. taśmowej, dyskowej itp.), popularnej na początku ery komputerowej.
Informacja przechowywana jest w pamięci RAM w postaci bitów umieszczanych w komórkach
(ang memory cell), których mogą być miliardy. Aby komputer mógł uzyskiwać w prosty sposób
dostęp do kaŜdej komórki pamięci, zostały one ponumerowane. Numery komórek nazywamy
adresami komórek pamięci (ang. memory cell address). PoniŜej przedstawiamy fragment logicznej
struktury pamięci (czyli tak, jak widzi swoją pamięć komputer):
Pamięć
Adres Zawartość komórki
0
11000110
1
00001111
2
11000011
3
11111110
4
00000001
5
11100111
...
...
Ze względów ekonomicznych poszczególne komórki pamięci przechowują grupę kilku bitów
(najczęściej jest ich 8 - czyli 1 bajt, ale rozmiar bitowy komórki pamięci zaleŜy od architektury
systemu komputerowego). Na przykład komórka o adresie 3 przechowuje 8 bitów o zawartości
11111110. Treść tej informacji uzaleŜniona jest od interpretacji stanów bitów.
- 7 -
Komputer steruje pamięcią przy pomocy trzech magistral (ang. bus). Magistrale zbudowane są z
linii, którymi transmituje się sygnały. We współczesnych komputerach magistrale są cyfrowe, co
oznacza, iŜ poszczególne linie przesyłają tylko sygnały dwustanowe, czyli bity. Widać z tego
wyraźnie, iŜ komputery są maszynami binarnymi nie tylko ze względu na rodzaj przetwarzanych
informacji, lecz równieŜ z powodu swojej wewnętrznej budowy - mówimy, iŜ posiadają
architekturę binarną (ang. binary architecture).
Magistrala adresowa (ang. address bus) przekazuje pamięci adres komórki, do której komputer chce
uzyskać dostęp - odczytać zawartość lub umieścić nowe dane. PoniewaŜ adres przekazywany jest
magistralą cyfrową, to sam równieŜ występuje jako liczba binarna. Ilość linii na magistrali
adresowej określa zakres dostępnych adresów, a zatem maksymalny rozmiar pamięci komputera.
Do obliczeń stosujemy prosty wzór:
rozmiar pamięci = 2
liczba linii na magistrali adresowej
Na przykład w starych komputerach magistrala adresowa mogła zawierać maksymalnie 16 linii.
Zatem rozmiar moŜliwej do zaadresowania pamięci wynosił 2
16
= 65536 komórek (sławne 64KB -
kilo bajty). Jeśli magistrala adresowa składa się z 32 linii, to komputer jest w stanie wykorzystać 2
32
= 4294967296 = 4GB pamięci (GB - gigabajt). Oczywiście w systemie moŜe być mniej pamięci
(np. tylko 1GB = 1073741824 komórek), w takim przypadku część adresów nie jest
wykorzystywana, gdyŜ nie stoją za nimi Ŝadne komórki. Ilość moŜliwych do zaadresowania
komórek nosi nazwę przestrzeni adresowej (ang. address space). Natomiast pamięć fizyczna (ang.
physical memory, physical storage) określa ilość pamięci rzeczywiście zainstalowanej w systemie
komputerowym.
Magistrala danych (ang. data bus) umoŜliwia komputerowi przekazywanie danych do pamięci oraz
odczyt przechowywanych przez pamięć informacji z komórek. Magistrala danych zbudowana jest z
linii sygnałowych, po których przekazywane są bity. Ilość linii na magistrali danych zaleŜy od
architektury komputera. Na przykład w systemach 32-bitowych magistrala danych zawiera 32 linie,
co pozwala w jednym cyklu dostępu do pamięci przesłać porcję 32 bitów.
Jeśli dokładnie czytałeś podane wyŜej informacje, to zapewne zauwaŜyłeś, iŜ
pisaliśmy o pamięci zawierającej komórki 8 bitowe. Tutaj z kolei piszemy, Ŝe
magistrala danych jest 32-bitowa. Jak pogodzić ze sobą te dwa fakty. Prześledźmy
krótką historię rozwoju magistral danych.
- 8 -
Popularne w latach 80-tych ubiegłego wieku komputery 8-bitowe
Sinclair ZX-Spectrum
Commodore 64
Atari 800XL
Magistrala danych pierwszych popularnych komputerów domowych była 8 bitowa i odpowiadała
dokładnie rozmiarowi komórki pamięci. Dane umieszczane na 8-bitowej magistrali trafiały
bezpośrednio do zaadresowanej komórki. RównieŜ odczyt danych z dowolnej komórki był
realizowany przy pomocy 8 bitowej magistrali. Stąd systemy takie często określa się dzisiaj
mianem komputerów 8 bitowych. Magistrale 8 bitowe wciąŜ są w uŜyciu w świecie
mikrokontrolerów - małych komputerków, które w całości mieszczą się w pojedynczym układzie
scalonym i sterują róŜnymi urządzeniami - monitorami, radiami, telewizorami, aparatami
fotograficznymi, pralkami, zegarkami, grami elektronicznymi itp.
Komputery 16-bitowe, rozpowszechnione pod koniec lat 80-tych ubiegłego wieku.
Commodore Amiga
500
Atari 520ST
IBM PC-AT
Apple Macintosh
Kolejna generacja komputerów osobistych to maszyny z 16 bitową magistralą danych. Komórki
pamięci zostały dalej 8-bitowe. Pamięć podzielono na dwa banki, które współpracowały z jedną
połówką magistrali danych.
- 9 -
Połączenie banków pamięci z 16-bitową magistralą danych
Bank 1
Bank 0
d
15
d
14
d
13
d
12
d
11
d
10
d
9
d
8
d
7
d
6
d
5
d
4
d
3
d
2
d
1
d
0
Na przykład bank 0 podłączony był do linii d
7
...d
0
, czyli do młodszych 8 bitów magistrali danych.
Poprzez te linie komputer komunikował się z komórkami pamięci zawartymi w banku 0. Z kolei
drugi bank, bank 1, podłączony był do pozostałych 8 linii danych - d
15
...d
8
.
Bank 1
Bank 0
Adres Zawartość
Adres Zawartość
1 01111110
0 11101000
3 11111111
2 11110000
5
00000000
4 11110001
7 10000000
6
00000001
...
...
Z punktu widzenia komputera komórki w banku 0 posiadały adresy parzyste 0, 2, 4, 6, ... Komórki
w banku 1 posiadały adresy nieparzyste. Oba banki pamięci połączone były z tą samą magistralą
adresową bez linii A0, która słuŜyła do wyboru banku pamięci w przypadku danych 8-bitowych.
Dzięki takiemu rozwiązaniu komputer mógł przesłać do lub pobrać z pamięci porcję 16 bitów
(naraz dwie komórki), gdyŜ magistrala adresowa wybierała z obu pamięci komórki leŜące w tym
samym wierszu. Istnieje teŜ pewna niedogodność. Jeśli dane 16-bitowe zostaną umieszczone pod
nieparzystym adresem (tutaj w komórkach 5 i 6), to nie moŜna ich pobrać w jednym cyklu odczytu
pamięci, poniewaŜ znajdują się w dwóch róŜnych wierszach. Powoduje to spowolnienie działania
programu przetwarzającego te dane - komputer musi czytać pamięć dwa razy po 8 bitów, pomimo
Ŝ
e jest maszyną 16-bitową!. Dlatego kompilatory języków programowania posiadają wbudowane
odpowiednie mechanizmy umieszczania danych wielobajtowych pod właściwymi adresami, nawet
jeśli prowadziłoby to do powstania dziur (niewykorzystanych komórek) w obszarze pamięci.
32 bitowe komputery lat 90-tych ubiegłego wieku.
Commodore Amiga 4000
Apple Macintosh LC-475
IBM PC 486
- 10 -
Rozwój komputeryzacji wymusił pojawienie się maszyn 32-bitowych. Pamięć komputera 32-
bitowego wciąŜ zbudowana jest z komórek 8-bitowych. Zastosowano podobne rozwiązanie jak w
systemach 16 bitowych - podzielono pamięć na cztery banki 0, 1, 2 i 3. KaŜdy bank współpracuje z
8 liniami magistrali danych. Banki są podłączone do wspólnej magistrali adresowej z wyjątkiem
linii A1 i A0, które sterują wybieraniem odpowiedniego banku (lub pary banków) w przypadku
danych 8-bitowych (lub 16 bitowych).
Połączenie banków pamięci z 32-bitową magistralą danych
Bank 3
Bank 2
Bank 1
Bank 0
d
31
d
30
d
29
d
28
d
27
D
26
d
25
d
24
d
23
d
22
d
21
d
20
d
19
d
18
d
17
d
16
d
15
d
14
d
13
d
12
d
11
d
10
d
9
d
8
d
7
d
6
d
5
d
4
d
3
d
2
d
1
d
0
PoniŜej przedstawiamy rozłoŜenie adresów komórek w poszczególnych bankach pamięci z punktu
widzenia komputera. Magistrala adresowa wybiera zawsze rząd 4 komórek, leŜących pod tym
samym adresem w kaŜdym z banków. Dwa najmłodsze bity A1 i A0 adresują odpowiedni bank, a
komputer odczytuje lub zapisuje dane wykorzystując linie magistrali danych połączone z
wybranym bankiem (lub z wybranymi bankami).
Bank 3
Bank 2
Bank 1
Bank 0
Adres Zawartość
Adres Zawartość
Adres Zawartość
Adres Zawartość
3 00000000
2 11111111
1 11110000
0 00001111
7 11001100
6 10101010
5 01010101
4 11000011
11 11100111
10 10000001
9 01111110
8 11010011
15 11010110
14 00101100
13 00111010
12 11010100
19 11010010
18 00010100
17 00100100
16 11011110
...
...
...
Aby wykorzystać maksymalnie potencjał systemu 32-bitowego dane 16 bitowe naleŜy umieszczać
pod adresami parzystymi (np. komórki 6-7 i 8-9), a dane 32 bitowe naleŜy umieszczać pod
adresami podzielnymi przez 4 (np. komórki 16-17-18-19). Wtedy komputer będzie miał do nich
dostęp w jednym cyklu odczytu lub zapisu pamięci.
Zwróć uwagę na sposób przechowywania danych wielobajtowych w komórkach pamięci. MoŜliwe
są dwa rozwiązania - tzw. little-endian i big-endian. Wszystkie procesory Intel i kompatybilne
stosują system little-endian, który polega na tym, iŜ w niŜszych adresach przechowuje się mniej
znaczące bajty danych. Zatem dana 16-bitowa w little-endian zostanie umieszczona w kolejnych
dwóch komórkach jako b
7
...b
0
w pierwszej komórce (o niŜszym adresie) i b
15
...b
8
w drugiej
komórce o adresie wyŜszym. Z danymi 32-bitowymi jest identycznie : najmłodszy bajt trafi do
pierwszej komórki, a najstarszy do ostatniej. Porządek ten odzwierciedla nasz schemat
rozmieszczenia bloków pamięci. W systemie big-endian (stosowanym w starszych komputerach
Amiga, Macintosh oraz w niektórych systemach mainframe) jest na odwrót: pierwszy adres
przechowuje starsze bity, następne adresy przechowują coraz młodsze bity danej.
- 11 -
Magistrala sterująca (ang. control bus) umoŜliwia komputerowi kierowanie pracą pamięci. Zawiera
ona kilka linii, które określają rodzaj wykonywanej przez pamięć operacji (zapis lub odczyt) oraz
uaktywniają odpowiednie banki pamięci w systemach 16-, 32- i 64-bitowych.
Prześledźmy teraz uproszczone cykle odczytu i zapisu danych do pamięci.
1.
Na magistrali adresowej A komputer umieszcza
adres komórki pamięci, z której chce odczytać
dane.
2.
Magistralą sterującą S przesłane zostaje do pamięci
Ŝą
danie odczytu danych.
3.
W odpowiedzi pamięć wyszukuje poŜądaną
komórkę i umieszcza na magistrali danych D jej
zawartość.
4.
Komputer odczytuje z magistrali danych zawartość
zaadresowanej komórki.
5.
Cykl zostaje zakończony, sygnały wracają do stanu
neutralnego.
1.
Na magistrali adresowej A komputer umieszcza
adres komórki, do której mają trafić dane.
2.
Na magistrali danych D komputer umieszcza bity
danych, które naleŜy zapamiętać w zaadresowanej
komórce.
3.
Magistralą sterującą S zostaje przesłane Ŝądanie
zapisu danych.
4.
W odpowiedzi pamięć pobiera dane z magistrali
danych D, wyszukuje komórkę o adresie obecnym
na magistrali adresowej A i zapisuje w niej dane.
5.
Cykl zostaje zakończony, sygnały wracają do stanu
neutralnego.
Poszczególne kroki obu cykli muszą być dokładnie skoordynowane w czasie, w przeciwnym razie
pamięć moŜe nie zdąŜyć przygotować danych dla komputera. RównieŜ przy zapisie przekroczenie
dopuszczalnych parametrów czasowych pamięci moŜe prowadzić do zgubienia informacji. Wynika
z tego, iŜ pamięć oraz reszta systemu komputerowego muszą ze sobą ściśle współpracować.
Rodzaje pamięci
W zaleŜności od sposobu zapamiętywania bitów w komórkach pamięć RAM dzielimy na dwa
rodzaje:
Pamięć statyczna RAM (ang. SRAM - Static Random Access Memory). Do zapamiętywania
bitów stosuje się
przerzutniki bistabilne
. Pamięci statyczne są bardzo szybkie i mało kłopotliwe w
obsłudze. Wadą jest złoŜoność przerzutnika zapamiętującego jeden bit danych. Zbudowany jest z co
najmniej 6 elementów elektronicznych (tranzystorów CMOS). PoniewaŜ uŜyteczna pamięć musi
zawierać setki milionów takich przerzutników (np. pamięć 1GB zawiera 8 • 107'3741'824 =
8'589'934'592 przerzutników = 51'539'607'552 tranzystorów CMOS), to jej wewnętrzna budowa
bardzo się komplikuje. JednakŜe przemysł elektroniczny radzi sobie z tymi trudnościami i pamięci
statyczne zdobywają coraz większą popularność.
- 12 -
Pamięć dynamiczna RAM
(ang. DRAM - Dynamic Random Access Memory). PoniewaŜ pamięci
statyczne zawierają duŜo elementów elektronicznych i są trudne w produkcji, inŜynierowie od
dawna poszukiwali prostszych układów pamięciowych. Rozwiązaniem okazała się pamięć
dynamiczna, wynaleziona w 1966 roku i opatentowana w 1968 przez dr Roberta Dennarda z
Centrum Badawczego Thomasa J. Watsona w IBM. Pomysł opiera się na wykorzystaniu
kondensatorów do zapamiętywania bitów informacji. Kondensator naładowany ładunkiem
elektrycznym utrzymuje ten stan. W pamięci dynamicznej dla kaŜdego bitu wykorzystywany jest
mikroskopijny kondensatorek sterowany pojedynczym tranzystorem CMOS (a nie sześcioma, jak w
pamięci statycznej). Problem polega na tym, iŜ w tej skali trudno uzyskać materiały izolacyjne o
wysokich parametrach (a pamięć dynamiczna ma być przecieŜ tania, inaczej jej produkcja traci
sens). Zatem naładowany kondensatorek szybko rozładowuje się z powodu przepływu elektronów
przez warstwę izolacyjną. Czas rozładowania wynosi milisekundy. Ładunek kondensatorka musi
być systematycznie odświeŜany - stąd nazwa pamięć dynamiczna, poniewaŜ informacja jest
pamiętana dynamicznie - trzeba ją cyklicznie regenerować, inaczej dosłownie rozpłynie się w
strukturze układu scalonego. Do odświeŜania (ang. refresh) zawartości pamięci dynamicznej stosuje
się specjalne obwody (mogą one być umieszczone wewnątrz układu scalonego pamięci - wtedy
mamy do czynienia z tzw. pamięcią pseudostatyczną, gdyŜ zewnętrznie obsługiwana jest
identycznie jak pamięć statyczna). Z powodu odświeŜania pamięć dynamiczna jest wolniejsza w
działaniu od pamięci statycznej i bardziej kłopotliwa w eksploatacji. Jej zaletę stanowi natomiast
duŜa pojemność z uwagi na mniejszą liczbę elementów elektronicznych przypadającą na bit danych
w porównaniu z pamięcią statyczną. Pamięci dynamiczne są obecnie powszechnie stosowane w
systemach komputerowych.
Pamięć stała (ang. ROM - Read Only Memory). Opisywane powyŜej pamięci RAM tracą
przechowywaną informację przy zaniku zasilania. Innymi słowy, jeśli wyłączysz komputer, to
przestanie on pamiętać wszystko, co znajduje się w jego pamięci RAM. Z drugiej strony komputer
potrzebuje pamięci, które przechowują dane nawet po wyłączeniu zasilania. Przykładem moŜe być
pamięć ROM-BIOS (ang ROM Basic Input/Output Subsystem), która zawiera program startowy
oraz podstawowe procedury obsługi urządzeń zewnętrznych (klawiatura, monitor, dyski, itp.). Gdy
włączymy zasilanie komputera, właśnie z pamięci ROM-BIOS wykonuje się program startowy,
który uruchomi resztę systemu operacyjnego. Pamięć ROM moŜna tylko odczytywać. Zawarta w
ROM informacja została tam umieszczona na etapie produkcji w strukturze wewnętrznej układu
scalonego i nie moŜe być juŜ zmieniona przez uŜytkownika.
Pamięć FLASH. Jest to pamięć nieulotna, tzn. moŜna w niej zapisać dane, wyłączyć zasilanie, a
dane nie zostaną stracone i wciąŜ będą obecne po ponownym włączeniu zasilania. Bity są
zapamiętywane, podobnie jak w pamięci dynamicznej, w mikroskopijnych kondensatorach. Jednak
tym razem warstwa izolacyjna jest tak dobra, iŜ ładunek zostaje uwięziony nawet na 10 lat. Czemu
w takim razie nie stosuje się pamięci FLASH w charakterze pamięci RAM? Niestety, oprócz
wymienionych zalet, pamięci FLASH posiadają równieŜ istotne wady. Po pierwsze nie są tak
szybkie jak typowe pamięci SRAM czy DRAM. Ustępują im o rząd wielkości. Szybkość pracy
pamięci jest kluczowa dla szybkości działania całego systemu komputerowego. Po drugie kaŜdy
zapis danych degeneruje warstwę izolacyjną i po kilku milionach cykli warstwa ta ulega
całkowitemu uszkodzeniu - pamięć przestaje działać. Pomimo tych wad pamięć FLASH moŜe być
stosowana jako zastępca pamięci ROM do przechowywania BIOS komputera. Dzięki moŜliwości
zapisu danych uŜytkownik moŜe aktualizować oprogramowanie systemowe swojego komputera -
np. aktualizacja usuwa wykryte przez producenta błędy, poprawia współdziałanie z nowymi
składnikami systemu itp. Oczywiście aktualizacja zawartości pamięci FLASH jest wykonywana
przez odpowiedni program producenta płyty głównej - w przeciwnym razie komputer bardzo
szybko przestałby się uruchamiać (odpowiedz sobie dlaczego?).
- 13 -
Pamięci FLASH są intensywnie rozwijane. Rośnie ich szybkość oraz pojemność. Obecnie stosuje
się je powszechnie w aparatach fotograficznych, kamerach cyfrowych, odtwarzaczach mp3 oraz w
dyskach Pendrive.
Cyfrowy aparat
fotograficzny
Cyfrowa kamera
iPod - odtwarzacz
muzyki i filmów
Dysk krzemowy
Pendrive
W przyszłości, gdy zostaną pokonane obecne bariery technologiczne, pamięci FLASH przejmą rolę
pamięci RAM oraz pamięci dyskowej. Wyobraź sobie - system operacyjny na stałe zainstalowany
w pamięci operacyjnej, czyli błyskawiczna gotowość komputera do pracy. Przetwarzane dane nie
ulegają zniszczeniu przy przypadkowym wyłączeniu zasilania. Natychmiastowy dostęp do filmów,
muzyki, informacji. Brak urządzeń mechanicznych zwiększa niezawodność komputerów oraz ich
odporność na trudne warunki eksploatacji (wojsko, transport, sondy kosmiczne, dzieci :) itp.).
Pamięć posiada olbrzymią pojemność liczoną w terabajtach...
Pamięć dyskowa (ang. disk storage, disk memory). Oprócz pamięci operacyjnej, w której
komputer przechowuje bezpośrednio uruchomione programy oraz właśnie wykonywane programy,
w systemach komputerowych stosuje się pamięć masową o bardzo duŜej pojemności. Na dzień
dzisiejszy pamięć masowa realizowana jest za pomocą urządzeń mechaniczno elektronicznych.
Typowym przykładem jest dysk twardy (ang. hard drive, hard disk). Pomysł takiego urządzenia
powstał dosyć dawno, bo w roku 1947 w postaci
pamięci bębnowe
j.
Współczesny dysk twardy zawiera zespół wirujących dysków wykonanych z twardego materiału i
pokrytych bardzo cienką warstwą magnetyczną. Nad powierzchniami dysków unoszą się na
poduszkach powietrznych głowice zapisująco-odczytujące. Zapisany ślad ma formę
koncentrycznych pierścieni, które nazywamy ścieŜkami (ang. track). ŚcieŜki podzielone są na
sektory (ang. sector). W sektorach zapisuje się dane (zwykle 512 lub 1024 bajty). Minimalną
jednostką odczytu lub zapisu jest cały sektor - wynika to z powodów technicznych: bardzo trudno
byłoby zsynchronizować zapis pojedynczych bajtów z obrotem dysku. Sektor, jako większy, łatwiej
rozpoznać na ścieŜce - posiada odpowiednie znaczniki, które głowica odczytuje w trakcie
przeglądania ścieŜki. Na podstawie tych znaczników kontroler dysku twardego (specjalny
mikrokomputer zawarty w kaŜdym dysku twardym) rozpoznaje początek określonego sektora i
moŜe go odczytać do wewnętrznego bufora lub zapisać danymi z bufora.
- 14 -
Jak widać, pamięć dyskowa posiada nieco inną strukturę, niŜ typowa pamięć RAM. Zamiast
pojedynczych komórek mamy sektory. Jeśli jednak potraktujemy sektor jako taką duŜą komórkę
zawierającą 512 (lub 1024) bajtów danych, a numer ścieŜki i numer sektora na ścieŜce jako adres
tej komórki w obszarze dysku, to pojawi się analogia pamięci dyskowej z pamięcią RAM. RóŜnice
są w sposobie dostępu do danych. W pamięci RAM komputer po prostu wysyłał adres na magistralę
adresową i odczytywał sobie dane z magistrali danych. Z dyskiem musi natomiast współpracować
poprzez porty wejścia/wyjścia. Wymaga to całej procedury komunikacyjnej do odczytu i zapisu
sektora. Poza tym dane na dyskach są zorganizowane w tzw. system plików (ang. file system),
którym zarządza system operacyjny komputera. Całość jest na tyle skomplikowana, iŜ samodzielna
obsługa dysku twardego komputera na poziomie sektorów raczej mija się z celem - ilość czynników
do uwzględnienia jest tak duŜa, Ŝe lepiej zostawić to fachowcom - o ile nie jesteś młodym
geniuszem tworzącym konkurencyjny system operacyjny w stosunku do Windows, Linux, Unix itd.
Zaletą dysków twardych jest duŜa pojemność do przechowywania danych oraz oprogramowania,
sięgająca setek gigabajtów. Przewiduję jednakŜe, iŜ w niedalekiej przyszłości dyski twarde, jako
urządzenia w sumie mechaniczne, zostaną wyparte przez pamięci FLASH, które są urządzeniami
czysto elektronicznymi i nie zawierają zuŜywających się części ruchomych. JuŜ dzisiaj takie
rozwiązania moŜna spotkać w sprzęcie komputerowym mniejszego kalibru - aparaty fotograficzne,
kamery, telefony komórkowe itp. Współczesne mikrodyski krzemowe PenDrive mają pojemności
takie, jakie miały dyski twarde w połowie lat 90-tych ubiegłego wieku (a nawet większe - np.
PenDrive 8GB, 16GB).
Innym rodzajem pamięci masowej są stacje dysków elastycznych (ang. floppy drive). Zasada
działania takiej stacji jest bardzo podobna do zasady działania dysku twardego. Dysk jest
umieszczony w plastikowej obudowie (dyskietce) i wykonany z elastycznego materiału pokrytego
warstwą ferromagnetyczną. Po umieszczeniu dyskietki w stacji z dyskiem styka się głowica, która
podobnie jak w magnetofonie, zapisuje lub odczytuje koncentryczne ścieŜki magnetyczne na obu
powierzchniach dysku. ŚcieŜki dzielą się na sektory. W kaŜdym sektorze moŜna umieścić 512
bajtów informacji. Jednostką zapisu lub odczytu jest jeden sektor, z tych samych powodów co dla
dysku twardego. Pojemność dyskietki wynosi 1,44MB (format HD - High Density, wysoka gęstość
zapisu). Na dzisiejsze czasy jest to niewiele - na dyskietce mieści się kilka prostych obrazków lub
kilka dokumentów procesora tekstu Word. Zapis i odczyt jest bardzo wolny i . niestety, niezbyt
pewny. Rozpowszechnienie się tanich pamięci PenDrive wróŜy bardzo szybki koniec stacjom
dysków elastycznych - coraz częściej pojawiają się komputery bez tego urządzenia. Jeden PenDrive
o pojemności 4GB to odpowiednik 2844 dyskietek HD !!! - rozumiesz juŜ, czemu dyskietki muszą
odejść?
- 15 -
Dysk sieciowy (ang. network drive) jest obszarem pamięci dyskowej odległego komputera, który
został udostępniony uŜytkownikowi poprzez sieć lokalną. Z punktu widzenia komputera dysk
sieciowy zachowuje się identycznie jak dysk twardy. MoŜna na nim umieszczać dane i programy.
Posiada on określoną pojemność. RóŜnica jest tylko taka, iŜ dostęp do danych następuje poprzez
procedury obsługi transmisji sieciowych. Dyski sieciowe mogą być współdzielone przez kilku
uŜytkowników sieci, dzięki temu uŜytkownicy są w stanie ze sobą ściśle współpracować - bardzo
istotna cecha w firmach wykorzystujących intensywnie technologie informatyczne. Z drugiej strony
dysk sieciowy zapewnia bezpieczeństwo danych - jeśli komputer uŜytkownika ulegnie awarii, to
dostęp do danych uŜytkownik moŜe uzyskać z innego, sprawnego komputera.
Dysk optyczny (ang. optical disk). W poszukiwaniu tanich nośników informacji pod koniec lat 80-
tych ubiegłego wieku naukowcy zainteresowali się laserami. Laser (ang. Light Amplification by
Stimulated Emission of Radiation - wzmocnienie światła poprzez wymuszoną emisję
promieniowania) jest urządzeniem, które emituje bardzo spójną wiązkę światła. Po wynalezieniu
półprzewodnikowych diod laserowych trafił on do sprzętu powszechnego uŜytku jako urządzenie
odczytujące dane ze specjalnych dysków optycznych CD (ang. compact disk) lub DVD (ang. digital
video disk lub digital versatile disk).
Dyski CD/DVD są wykonane z warstw sztywnego polimeru. Pomiędzy warstwami umieszczona
jest powierzchnia odblaskowa z aluminium lub podobnego materiału. Zadaniem tej powierzchni jest
odbijanie wiązki lasera w kierunku fotodiody (element czuły na światło). W powierzchni
odblaskowej wytłoczone są mikroskopijne zagłębienia, tworzące spiralną ścieŜkę przebiegającą
wokół całej powierzchni czynnej dysku. ŚcieŜka jest śladem, po którym porusza się promień lasera,
gdy dysk optyczny zostanie włoŜony do stacji CD/DVD (ang. CD/DVD Drive). Jeśli promień trafi
na zagłębienie, to zostanie odbity pod innym kątem i nie trafi do układu odczytującego. Przerwy w
odbiorze światła lasera są właśnie informacją cyfrową odczytywaną z dysku. Na ich podstawie
napęd CD odtwarza zapisane na dysku dane cyfrowe.
Dyski CD pierwotnie zaprojektowano do zapisu muzyki. Jednak bardzo szybko okazało się, iŜ
technika ta pozwala zapisywać równieŜ dane - obrazy, filmy, pliki, programy itp. Powstał standard
CD-ROM. Na dysku CD-ROM moŜna zapisać ponad 700MB danych. To bardzo duŜy skok w
porównaniu do dyskietki (1,44MB). UŜytkownicy uzyskali dostęp do olbrzymiej bazy danych
cyfrowych - dyski CD-ROM są np. sprzedawane wraz z czasopismami. Na rynku pojawiły się
urządzenia nagrywające - nagrywarki CD-R i CD-RW (ang. R - read tylko odczyt, RW - read/write
- odczyt/zapis). Dzięki nim uŜytkownik ma moŜliwość utworzenia własnych dysków CD, czy to z
muzyką, czy to z danymi. Rozwój tej technologii doprowadził w krótkim czasie do powstania
dysków DVD o kilkukrotnie większej pojemności (typowo 4,7GB, ale dysk DVD moŜe być
dwuwarstwowy - około 8GB oraz dwustronny - 17GB). Ulepszenie polegało na zmniejszeniu
ś
rednicy wiązki lasera, co pozwoliło zagęścić ścieŜki na dysku oraz zmniejszyć minimalną długość
pitów. W efekcie wzrosła pojemność dysku optycznego. Na jednym krąŜku DVD mieści się około 2
godziny filmu w dobrej jakości cyfrowej.
- 16 -
Prace trwają nadal. Obecnym hitem jest niebiesko-fioletowy laser (w CD i DVD uŜywany był laser
podczerwony) o duŜo mniejszej długości fali. Zmniejszenie długości fali zwiększa rozdzielczość
ś
wiatła laserowego, co pociąga za sobą moŜliwość dalszej miniaturyzacji pitów i zagęszczenie
ś
cieŜek. Nowe dyski nazwano Blu-ray Disk i HD-DVD (to dwa rywalizujące ze sobą rozwiązania).
Mają pojemność 25-30GB. Nowa technologia zapisu cyfrowego umoŜliwia zapis na dysku BD lub
HD-DVD dwie godziny filmu w bardzo wysokiej jakości - przeznaczonego do odtwarzania na
telewizorach HD. Obraz nie ustępuje w niczym obrazowi kinowemu. Na rynku są juŜ dostępne
nagrywarki dysków Blu-ray oraz HD-DVD. CzyŜby zmierzch standardu CD/DVD?
Dyski krzemowe (ang. silicon drive). Są to urządzenia czysto elektroniczne, zawierające pamięć
FLASH. Cechą charakterystyczną tej pamięci jest utrzymywanie zapisanych danych, nawet po
wyłączeniu zasilania. Sprawia to, iŜ idealnie nadaje się do zastosowania w urządzeniach
przenośnych w charakterze dysku twardego. Obecnie pamięć FLASH ustępuje jeszcze szybkością i
trwałością (kaŜdy zapis degeneruje pamięć, po kilku milionach cykli przestanie ona działać)
dyskom twardym, ale technologia ta jest intensywnie badana i postęp następuje bardzo szybko.
Praktycznie co roku podwaja się pojemność i szybkość pamięci FLASH.
Dyski FLASH posiadają obecnie (rok 2007) pojemności do 16GB przy transferze danych do 12
MB/s. Najpopularniejsze cenowo są jednostki od 1 do 4GB. Bardzo wygodne w eksploatacji,
wykorzystują interfejs USB (ang. Uniwersal Serial Bus - uniwersalne łącze szeregowe), który
posiadają wszystkie współczesne komputery. Najczęściej dyski Flash, zwane popularnie PenDrive,
stosuje się do przenoszenia duŜych ilości danych pomiędzy komputerami oraz do archiwizacji - są
to zadania dawniej wykonywane przez odchodzące do historii dyskietki.
Statyczna pamięć RAM
W statycznej pamięci RAM (ang. static RAM - SRAM) bity informacyjne zapamiętywane są w
przerzutnikach
. Nazwa "pamięć statyczna" pochodzi od właściwości przerzutnika, który
zapamiętuje swój stan aŜ do ponownego zapisu nowej porcji informacji. Pomiędzy tymi
zdarzeniami przerzutnik statycznie utrzymuje przechowywaną w nim informację i nie wymaga
Ŝ
adnych dodatkowych zabiegów (oczywiście oprócz dostarczania energii elektrycznej).
Zastosowanie przerzutników upraszcza sterowanie pamięcią, lecz z drugiej strony komplikuje jej
budowę. Powodem komplikacji jest wymagana przez przerzutnik D-Latch ilość przynajmniej 4
tranzystorów CMOS plus dwa tranzystory sterujące zapisem i odczytem danych w komórce.
Pamięć statyczna o pojemności np. 256 MB będzie zawierała ponad:
- 17 -
256
×
1024
×
1024
×
8
×
6 = 12'884'901'888 tranzystorów
Oczywiście moduł pamięci komputerowej moŜe zostać zbudowany z wielu układów scalonych.
JednakŜe powoduje to zwiększenie wymiarów oraz pobieranej energii elektrycznej i w pewnych
zastosowaniach jest nie do przyjęcia (urządzenia miniaturowe).
Układ bitu informacji w komórce pamięci statycznej
Do przechowywania kaŜdego bitu w pamięci statycznej RAM wykorzystywane są dwa krzyŜowo
sprzęŜone inwertory, zbudowane z tranzystorów polowych CMOS oznaczonych na rysunku po
prawej stronie jako M
1
, M
2
i M
3
, M
4
. Inwertory tworzą prosty przerzutnik. posiadający dwa stabilne
stany wykorzystywane do reprezentacji poziomów logicznych 0 i 1. Dodatkowe dwa tranzystory
M
5
i M
6
słuŜą do sterowania dostępem do komórki podczas zapisu i odczytu danych. Są one
podłączone do linii słowa (ang. WL - Word Line). Odpowiednio wysterowane sygnałem na tej linii
tranzystory M
5
i M
6
łączą wyjście Q przerzutnika z linią bitu BL (ang. Bit Line) oraz wyjście
komplementarne Q z linią BL. Do pracy układu wystarczyłaby jedna linia bitu, lecz wykorzystuje
się dwie w celu zwiększenia poziomu sygnału w stosunku do szumów (sygnałów zakłócających),
które pojawiają się w strukturze pamięci półprzewodnikowych.
Komórka pamięci statycznej RAM moŜe znajdować się w jednym z trzech róŜnych stanów:
Stan oczekiwania
Gdy linia słowa WL nie jest wysterowana odpowiednim napięciem, tranzystory M
5
i M
6
separują
wyjścia przerzutnika od linii bitów. Przerzutnik, zbudowany z dwóch sprzęŜonych wzajemnie
inwertorów, pamięta swój stan wewnętrzny ustawiony przy poprzedniej operacji zapisu.
Stan odczytu
ZałóŜmy, iŜ przerzutnik w komórce pamięci pamięta stan logiczny 1, czyli wyjście Q = 1, a Q = 0
(odblokowane tranzystory M
4
i M
1
, zablokowane M
2
i M
3
). Cykl odczytu rozpoczyna się przez
naelektryzowanie obu linii bitów BL i BL do wartości logicznej 1, a następnie przez wysterowanie
linii słowa WL, co spowoduje włączenie (odblokowanie) tranzystorów M
5
i M
6
. Stan wyjść Q i Q
zostaje przeniesiony na linie BL i BL. Linia BL pozostaje w stanie 1, gdyŜ odblokowane
tranzystory M
4
i M
6
łączą ją z napięciem V
dd
. Z kolei napięcie linii BL zostanie rozładowane do
zera, poniewaŜ tranzystory M
1
i M
5
łączą ją z masą układu. W efekcie na linii BL pojawi się 1, a na
BL 0. Jeśli przerzutnik przechowuje wartość 0, to otrzymamy sytuację odwrotną.
- 18 -
Stan zapisu
Przy zapisie ustawia się linie BL zgodnie z wartością zapisywanego bitu (dla 1 BL = 1, BL = 0; dla
0 BL = 0, BL = 1). Następnie linia WL zostaje wysterowana i tranzystory M
5
, M
6
łączą wejścia
inwertorów z liniami BL powodując zapis informacji w przerzutniku. Jest to moŜliwe, poniewaŜ
sygnał na liniach BL i BL jest wystarczająco mocny, aby wymusić zmianę stanu w tranzystorach
M
1
...M
4
przerzutnika, które są z reguły bardzo małe.
Struktura wewnętrzna pamięci statycznej
Wewnątrz układu scalonego pamięci RAM o pojemności 2
n
bitów bity przechowywane są w
plastrze zwanym matrycą pamięci (ang. memory array lub memory matrix). Matryca najczęściej
posiada rozmiar 2
n/2
wierszy na 2
n/2
kolumn. KaŜda komórka matrycy zawiera jeden bit informacji.
Bit zostaje zaadresowany przez wybór wiersza, w którym się znajduje - uaktywniona jest linia
słowa WL, połączona ze wszystkimi komórkami w danym wierszu. W efekcie linie bitów BL
zostają wysterowane zawartością poszczególnych komórek (odczyt) lub wpływają na zmianę stanu
komórek w wierszu (zapis). Linie bitów tworzą kolumny. Przez odczyt odpowiedniej kolumny
mamy dostęp do bitu matrycy.
Jeśli komórka pamięci zawiera więcej niŜ jeden bit (na rysunku po lewej stronie mamy przykład
pamięci o komórkach czterobitowych), to poszczególne bity leŜą w kolejnych matrycach na
przecięciu tych tych samych wierszy i kolumn. Takie rozwiązanie pozwala wykorzystać
wielokrotnie układy sterujące w pamięci RAM. Pamięć o komórkach wielobitowych moŜemy
wyobrazić sobie jako strukturę trójwymiarową.
- 19 -
Z powodu zastosowania matryc bitowych w układzie scalonym pamięci RAM magistrala adresowa
jest dzielona na dwie osobne części - zwykle na połówki zawierające po n/2 bitów (n oznacza ilość
bitów magistrali adresowej). Górne bity magistrali adresowej wybierają wiersz w matrycy bitowej.
Operację tę wykonuje dekoder wierszy, który w zaleŜności od zawartości linii adresowych
uaktywnia odpowiednią linię słowa WL połączoną ze wszystkimi komórkami w danym wierszu
matrycy. Dekoder numeru wiersza jest zwykłym układem kombinatorycznym, zamieniającym kod
binarny na kod 1 z N. Bardzo podobny układ opisaliśmy w projekcie transkodera kodu BCD na kod
1 z 10.
Dolne bity adresowe wykorzystywane są do wyboru określonej kolumny w wierszu. Operację
wykonuje dekoder kolumn oraz zespół wzmacniaczy sygnałów BL. Wybrana przez wiersz i
kolumnę komórka zostaje odczytana lub zapisana nową zawartością. W tym celu pamięć posiada
układ sterowania zapisem i odczytem, który kontroluje sposób pracy wzmacniaczy oraz kierunek
przepływu informacji przez magistralę danych.
Na rysunku obok przedstawiono schemat blokowy pamięci statycznej RAM o komórkach 8
bitowych. Dekoder wierszy wybiera w kaŜdej z ośmiu matryc ten sam wiersz. Wybrane 8 wierszy
przesłane zostaje do zespołu wzmacniaczy, które z kolei są sterowane przez dekoder kolumn. Bity
znajdujące się na przecięciu wierszy i kolumn w poszczególnych matrycach tworzą 8 bitową
komórkę pamięci. Układy dekoderów wierszy i kolumn są wspólne dla wszystkich matryc.
Powoduje to znaczne uproszczenie struktury wewnętrznej układu scalonego.
- 20 -
Sterowanie układem scalonym pamięci statycznej
Typowy układ scalony statycznej pamięci RAM posiada następujące wyprowadzenia:
•
A
n-1
... A
0
- n linii magistrali adresowej. Przy ich pomocy komputer przekazuje pamięci w
postaci binarnej adres poŜądanej komórki. Ilość linii adresowych zaleŜy od pojemności
pamięci. Dla n linii pamięć ma pojemność 2
n
komórek.
•
D
m-1
... D
0
- m linii dwukierunkowej magistrali danych. Liczba linii danych odpowiada
rozmiarowi pojedynczej komórki pamięci (istnieją konstrukcje pamięci, których komórki
mają pojemność np. 16 bitów - w takim przypadku pamięć moŜe posiadać dodatkowe linie
sterujące wprowadzaniem danej 8/16 bitowej, a jeśli 8 bitowej, to w mniej znaczący lub w
bardziej znaczący bajt komórki). Pojemność pamięci w bitach obliczamy jako 2
n
• m. Na
przykład pamięć posiadająca n = 16 wejść adresowych oraz m = 8 wejść danych ma
pojemność równą 216 • 8 = 65536 • 8 = 524'288 bitów. W terminologii układów scalonych
wejścia danych często oznacza się symbolem IO lub I/O (ang. Input Output) z uwagi na ich
dwukierunkowość w przesyłaniu informacji.
•
CE (ang. Chip Enable) - linia uaktywnia układ pamięci. Jeśli jest w stanie wysokim, pamięć
nie reaguje na pozostałe sygnały, a jej magistrala danych przechodzi w stan wysokiej
impedancji. Sygnał CE umoŜliwia w prosty sposób łączenie układów pamięci w większe
jednostki. W takim przypadku system wymaga dodatkowych obwodów logicznych lub
układów zwanych sterownikami/kontrolerami pamięci (ang. memory controler). W stanie
niskim CE układ pamięci zostaje uaktywniony i reaguje na sygnały sterujące wg swojej
specyfikacji.
•
OE (ang. Output Enable) - podłącza w stanie niskim wewnętrzną magistralę danych do linii
D
m
... D
0
. Sygnał OE wykorzystuje się przy odczycie zawartości pamięci.
•
WE (ang. Write Enable) - powoduje, iŜ informacja z magistrali danych zostanie
umieszczona w zaadresowanej komórce pamięci.
- 21 -
Logika sterowania układem scalonym SRAM wygląda w uproszczeniu następująco:
CE OE WE
A
n-
1
...A
0
D
m-
1
...D
0
Operacja
1
X
X
X
X
Układ nieaktywny, magistrala danych w stanie wysokiej impedancji.
0
1
1
adres
X
Układ aktywny, magistrala danych w stanie wysokiej impedancji.
Realizowany jest odczyt pamięci, lecz dane nie są wyprowadzane na
magistralę danych.
0
0
1
adres
dane
→
Zawartość wybranej komórki pojawia się na magistrali danych -
odczyt pamięci.
0
X
0
adres
→
dane
Wybrana komórka zostaje zapisana informacją odczytaną z
magistrali danych - zapis pamięci.
Aby pamięć poprawnie współpracowała z resztą systemu, adresy, dane oraz sygnały sterujące
muszą pojawiać się na swoich magistralach w odpowiednim czasie. Szczegóły techniczne
znajdziesz w materiałach producenta danej pamięci statycznej RAM.
- 22 -
Dynamiczna pamięć RAM
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 C
s
. 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 C
s
do linii bitu. Następuje
wyrównanie ładunków kondensatora C
s
oraz kondensatora utworzonego z linii bitu BL. Jeśli
kondensator C
s
przechowywał bit 1 (napięcie na C
s
równe napięciu zasilającemu), to napięcie na
BL nieco wzrośnie - ładunek C
s
uzupełni ładunek linii BL. Jeśli kondensator C
s
był rozładowany,
czyli przechowywał 0, to napięcie na BL spadnie, poniewaŜ C
s
odbierze nieco ładunku. Zatem
wzrost napięcia BL przy odczycie komórki informuje o stanie 1, spadek o stanie 0.
- 23 -
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
C
s
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
- 24 -
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:
•
A
n-1
... A
0
- 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.
- 25 -
•
D
m-1
... D
0
- 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.
- 26 -
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.
Pami
ęć
stała ROM, PROM, EPROM, EEPROM, FLASH i NV-RAM
Pamięć stała ROM (ang. Read Only Memory - pamięć tylko do odczytu) jest stosowana w
systemach procesorowych do przechowywania danych, które się nie zmieniają - np. róŜnego
rodzaju tabele funkcji, parametry urządzeń, a takŜe procedury startowe komputera i obsługa
róŜnych urządzeń wejścia/wyjścia. Cechą charakterystyczną pamięci ROM jest przechowywanie
zapisanych danych nawet po wyłączeniu zasilania. Dzięki temu są one od razu gotowe do uŜycia
- 27 -
tuŜ po ponownym uruchomieniu systemu komputerowego. Drugą charakterystyczną cechą jest
stałość zapisanych danych, których zwykle nie moŜna zmieniać w trakcie normalnej pracy pamięci
- gwarantuje to, iŜ przechowywana informacja przetrwa nienaruszona podczas róŜnego rodzaju
błędów zapisu pamięci. Stąd bierze swój początek angielska nazwa ROM - Read Only Memory,
czyli pamięć tylko do odczytu.
Rodzaje pamięci ROM
RozróŜniamy pięć podstawowych rodzajów pamięci ROM:
•
ROM - (ang Read Only Memory) pamięć tylko do odczytu
•
PROM - (ang. Programmable ROM), programowalna pamięć ROM
•
EPROM - (ang. Erasable Programmable ROM) wymazywalna, programowalna pamięć
ROM
•
EEPROM - (ang. Electrically Erasable and Programmable ROM) wymazywalna
elektrycznie, programowalna pamięć ROM
•
FLASH
ROM
Pamięć ROM jest produkowana w formie specjalizowanych układów scalonych. Zawartość
komórek jest ustalana juŜ w czasie produkcji przez zastosowanie odpowiedniej struktury logicznej.
Raz wyprodukowana, pamięć ROM nie moŜe juŜ zmienić swojej zawartości - w przypadku błędów
w zapisanych danych nie ma moŜliwości ich poprawienia, całą pamięć trzeba wyprodukować od
nowa, co jest dosyć kosztownym przedsięwzięciem. Wynika z tego równieŜ fakt, iŜ pamięć ROM
nie moŜe być, z uwagi na koszt produkcji, stosowana w urządzeniach jednostkowych czy
eksperymentalnych. JednakŜe, gdy zawartość pamięci jest bez błędów, to układy raz
zaprojektowane moŜna produkować w duŜych ilościach po bardzo niskich kosztach - przykładami
pamięci ROM są generatory znaków (w ROM zapamiętane są kształty liter wyświetlanych na
wyświetlaczu) dla urządzeń cyfrowych, pozytywki odtwarzające melodie czy piosenki, gry
elektroniczne (np. popularne Game Boy, Nintendo, Sega) itp. Pamięci ROM są bardzo pewne w
działaniu i rzadko ulegają awariom.
Budową pamięć ROM przypomina budowę pamięci statycznej. Adres komórki jest przekazywany
do dekodera wierszy i kolumn. Dekoder wierszy uaktywnia jedną z linii WL (ang. word line - linia
słowa). W komórkach przechowujących stan logiczny 1 linia WL połączona jest diodą lub
tranzystorem z linią BL (ang. bit line). W komórkach przechowujących stan 0 jest brak takiego
połączenia. Dioda lub tranzystor zaczyna przewodzić prąd, co powoduje odpowiednią zmianę
napięcia na linii BL. Linie BL biegną do wzmacniaczy bitów, które z kolei sterowane są przez
dekoder kolumn. Stan wybranej linii BL jest przekazywany na magistralę danych pamięci ROM.
- 28 -
PoniewaŜ pamięć ROM zezwala jedynie na operację odczytu danych, układy scalone posiadają
następujące wejścia sterujące:
•
A
n-1
... A
0
- n linii magistrali adresowej.
•
D
m-1
... D
0
- m linii magistrali danych.
•
CS (ang. Chip Select) - linia uaktywnia układ pamięci. Jeśli jest w stanie wysokim, pamięć
nie reaguje na pozostałe sygnały, a jej magistrala danych przechodzi w stan wysokiej
impedancji. W stanie niskim CS układ pamięci zostaje uaktywniony i reaguje na sygnały
sterujące wg swojej specyfikacji.
•
OE (ang. Output Enable) - podłącza w stanie niskim wewnętrzną magistralę danych do linii
D
m
... D
0
. Sygnał OE wykorzystuje się przy odczycie zawartości pamięci.
PROM
Tworzenie od podstaw zawartości pamięci ROM jest bardzo kosztowne w małych ilościach i
zajmuje mnóstwo czasu. Z tego powodu producenci opracowali nowy rodzaj pamięci ROM - tzw.
programowalną pamięć ROM (ang. programable ROM). Pamięć PROM sprzedawana jest jako
pusta - wszystkie komórki pamiętają stan logiczny 1 - zawartość moŜna zdefiniować przy pomocy
specjalnego urządzenia, zwanego programatorem pamięci PROM (ang. PROM programmer lub
PROM burner).
- 29 -
Wewnętrznie PROM przypomina budową zwykłą pamięć ROM. RóŜnica polega na tym, iŜ
połączenia linii WL (lub BL) z diodami komórek wykonane są w formie cienkich drucików, które
moŜna przepalać za pomocą odpowiednio dobranego prądu elektrycznego. Przepalenie drucika
powoduje przerwanie połączenia diody z linią bitu BL - komórka będzie teraz pamiętała bit 0. Jeśli
połączenie istnieje, komórka pamięta bit 1. Do przepalenia drucika w wybranej komórce pamięci
PROM uŜywamy specjalnego programatora (patrz na lewo), a proces nazywa się programowaniem
pamięci PROM (ang. PROM programming) lub wypalaniem pamięci PROM (ang. PROM burning).
Proces wypalania polega na przygotowaniu pliku z zawartością dla poszczególnych komórek
pamięci PROM. Następnie uruchamia się oprogramowanie programatora. Programator łączy się
odpowiednim kablem z komputerem PC. Do programu programatora wczytuje się plik z
zawartością dla PROM. Układ pamięci wkładany jest do niebieskiej podstawki (zwróć uwagę na
małą dźwignię po lewej stronie - słuŜy ona do blokowania wyprowadzeń układu w podstawce). Na
koniec uaktywnia się w programie opcję wypalania pamięci - program odczytuje z pliku zawartość
kolejnych komórek PROM i steruje programatorem, który wypala w komórkach pamięci druciki
tam, gdzie zawartość ma wynosić 0 - komórki z zawartością 1 pozostają nienaruszone. Wypalanie
polega na wysterowaniu układu odpowiednio wyŜszym napięciem niŜ w czasie normalnej pracy -
15..25V. Szczegóły znajdziesz w materiałach producenta, jednakŜe pamięci PROM są dzisiaj juŜ
przestarzałe i mało kto je produkuje.
Pamięć PROM jest wraŜliwa na przepięcia elektryczne (np. elektryczność statyczna, gromadząca
się na ubraniu z tworzyw sztucznych), które mogą uszkodzić wewnętrzne połączenia komórek z
liniami wybierającymi WL. Dlatego z układami PROM naleŜy obchodzić się bardzo ostroŜnie.
Pamięć PROM daje się zaprogramować tylko jeden raz. Jeśli coś pójdzie źle lub zapisana
informacja zawiera błędy, pamięć przestaje być zdatna do uŜytku i naleŜy wypalić drugi
egzemplarz. JednakŜe niski koszt czyni ją doskonałym materiałem do zastosowań prototypowych i
hobbistycznych.
- 30 -
EPROM
Pamięci PROM moŜna zaprogramować tylko jeden raz - jeśli zawartość zawiera błędy, to układ jest
do wyrzucenia - naleŜy zaprogramować nowy. Z tych powodów opracowano pamięć ROM, której
zawartość moŜna programować, a następnie w razie potrzeby wymazywać - EPROM (ang. Erasable
Programmable ROM) , czyli wymazywalna, programowalna pamięć ROM. Takie wymagania
wymusiły zmianę konstrukcji komórek pamięci.
Kasowanie zawartości pamięci wymaga naświetlenia jej struktury światłem ultrafioletowym przez
około 10 - 15 minut. Dlatego w obudowie EPROM umieszczone jest małe okienko kwarcowe
przepuszczające ultrafiolet, poprzez które widoczna jest płytka krzemowa zawierająca elementy
pamięci. Produkuje się równieŜ tzw. jednorazowe pamięci EPROM - bez okienka - tzw. OTP
EPROM (ang. One Time Programmable - programowalen jednorazowo). Układy takie zawierają
strukturę EPROM, jednak mogą być zaprogramowane tylko jeden raz. PoniewaŜ obudowa układu
nie zawiera okna kwarcowego, układ jest tańszy w produkcji. Jednorazowe EPROM'y moŜna
programować w tych samych programatorach, co zwykłe pamięci EPROM. Stosowane są wtedy,
gdy zapisywana zawartość nie zawiera juŜ Ŝadnych błędów.
KaŜde kasowanie EPROM degeneruje materiał półprzewodnikowy, dlatego pamięci te wytrzymują
kilkaset - do kilku tysięcy cykli programowania i kasowania. Natomiast odczytywać zawartość
pamięci EPROM moŜna dowolną liczbę razy. Informacja przechowywana jest przez około 10 lat.
Kasowanie pamięci nie jest selektywne - usuwa informację ze wszystkich komórek i proces
programowania musi być powtórzony w całości. Pamięci EPROM naleŜy chronić przed światłem
słonecznym, które zawiera ultrafiolet. Najczęściej nalepia się na okienko kwarcowe etykietkę z
danymi układu lub z reklamą producenta.
- 31 -
Budowa pamięci EPROM jest standardowa - zawiera dekodery wierszy i kolumn sterowane liniami
magistrali adresowej. RóŜnica dotyczy konstrukcji komórek przechowujących dane. Zbudowane są
one ze specjalnych tranzystorów polowych posiadających dwie bramki - sterującą (ang. control
gate), która podłączona jest do linii słowa WL oraz pływającą (ang. floating gate), która nigdzie nie
jest podłączona. Bramki rozdzielone są od siebie przez warstwę tlenku krzemu, która jest
izolatorem. Dzięki zjawisku tunelowemu Fowlera-Nordheima (przepływ elektronów przez izolator
wykorzystujący zjawiska fizyki kwantowej) bramka pływająca moŜe więzić elektrony, jeśli
tranzystor wysterujemy na linii WL wyŜszym niŜ normalne napięciem (zwykle 12...22V). Elektrony
gromadzące się w bramce pływającej powodują powstanie ujemnego ładunku elektrycznego, który
oddziałuje później z napięciem bramki sterującej. Jeśli ładunek bramki pływającej jest odpowiednio
duŜy, to tranzystor polowy w normalnych warunkach pracy moŜe przestać przewodzić prąd
elektryczny pomiędzy źródłem (S - ang. source) a drenem (D - ang. drain). Odpowiedni układ
porównuje wartość prądu płynącego przez linię BL po przyłoŜeniu napięcia sterującego na linię
WL. Jeśli jest on większy od 50% maksimum, to komórka zawiera wartość 1 (bramka pływająca
posiada za mało elektronów, aby skutecznie zablokować tranzystor). Jeśli prąd spadnie poniŜej 50%
maksimum, to komórka zawiera wartość 0 (bramka pływająca posiada wystarczający ładunek
elektronów do zablokowania tranzystora).
Dzięki izolacji tlenkowej ładunek elektronów moŜe utrzymywać się w bramce pływającej przez
wiele lat (10...20). Usunąć go moŜna przez naświetlenie struktury krzemowej światłem
ultrafioletowym o odpowiednio dobranej długości fali (253,7 nm). Światło UV powoduje jonizację
krzemu i uwolnienie elektronów zgromadzonych w bramkach pływających. Wszystkie komórki
przechodzą wtedy w stan logiczny 1. Wymazaną pamięć naleŜy ponownie zaprogramować.
EEPROM
Pamięć EEPROM (ang. Electrically Erasable and Programmable ROM) jest pamięcią stałą, którą
moŜna wymazywać elektrycznie i programować elektrycznie. Nie jest wymagane naświetlanie
układu promieniami UV, jak w przypadku standardowej pamięci EPROM. Poszerza to krąg
zastosowań pamięci, która teraz moŜe być przeprogramowana w docelowym urządzeniu, np. w
komputerze, przy pomocy odpowiedniego programu. Drugą zaletą w porównaniu z EPROM jest
selektywność kasowania - moŜna usunąć zawartość określonych komórek pamięci bez naruszania
informacji przechowywanej w innych komórkach. Otwiera to przed pamięcią zupełnie nowe
dziedziny zastosowań (np. dyski krzemowe do zapisu plików).
Komórka pamięci EEPROM zbudowana jest podobnie do komórki pamięci EPROM, równieŜ
występuje tranzystor polowy o dwóch bramkach - sterującej i pływającej. RóŜnica leŜy w warstwie
tlenkowej, która w pamięci EEPROM jest cieńsza i pozwala na wystąpienie zjawisk tunelowych
- 32 -
przy sterowaniu tranzystora za pomocą bramki sterującej. PrzyłoŜenie odpowiednio wysokiego
napięcia do tej bramki powoduje gromadzenie się lub rozładowywanie ładunku elektronów na
bramce pływającej - moŜna to porównać do procesu ładowania i rozładowywania akumulatora. Jeśli
bramka pływająca zostanie naładowana ładunkiem elektronów, to wytworzone przez nie napięcie
będzie blokowało w trakcie normalnej pracy funkcje tranzystora polowego - komórka ze stanem
logicznym 0. Jeśli ładunek bramki pływającej zostanie rozładowany, to przestanie ona wpływać na
pracę tranzystora - komórka ze stanem logicznym 1.
PoniewaŜ kasowanie komórki i programowanie odbywa się na drodze czysto elektrycznej, pamięci
EEPROM moŜna programować nową zawartością bezpośrednio w układzie cyfrowym, bez
konieczności ich wyjmowania i naświetlania światłem UV jak w przypadku zwykłych pamięci
EPROM. Pamięć wytrzymuje kilkanaście tysięcy cykli kasowania. Dodatkowo pamięci te moŜna
produkować w zwykłych obudowach zamkniętych, bez okna kwarcowego, co obniŜa znacznie
koszty produkcji układu. Szczegóły obsługi pamięci EEPROM znajdziesz w materiałach
producentów. Obecnie pamięć EEPROM jest coraz częściej zastępowana pamięcią FLASH.
FLASH
Pamięć Flash (ang. Flash Memory) jest pamięcią nieulotną, którą moŜna elektrycznie wymazywać
oraz programować - podobnie jak opisaną wyŜej pamięć EEPROM. Pamięci Flash znalazły obecnie
szerokie zastosowanie w kartach pamięciowych do aparatów, kamer cyfrowych, telefonów,
notebooków, odtwarzaczy mp3, iPodów itp. oraz w dyskach krzemowych USB zwanych Pen Drive.
Pamięć FLASH we współczesnych komputerach pełni rolę dawnej pamięci ROM-BIOS. Takie
rozwiązanie pozwala uŜytkownikowi na aktualizację oprogramowania systemowego komputera.
Aktualizacja moŜe usunąć błędy w działaniu, zauwaŜone juŜ po produkcji podzespołów komputera
- jednakŜe nie licz zbytnio na tę opcję, często producenci zapominają o uŜytkowniku, który posiada
stary sprzęt, chociaŜ są wyjątki.
Pamięć Flash jest specyficznym rodzajem pamięci EEPROM. Zapis informacji odbywa się na
identycznej zasadzie - tranzystor polowy z dwoma bramkami, sterującą i pływającą. Bramka
pływająca jest nasycana elektronami w czasie programowania, co blokuje tranzystor podczas
normalnej pracy. RóŜnica występuje przy kasowaniu zapamiętanej informacji. W pamięci
EEPROM moŜna kasować pojedyncze komórki, lecz prowadzi to do komplikacji układu
cyfrowego, a zatem do wyŜszych kosztów produkcji. Dodatkowo kasowanie bloku komórek jest
czasochłonne - kaŜdą komórkę musimy skasować oddzielnie. W pamięci FLASH kasowany jest
jednocześnie cały blok komórek (np. w porcjach po 1024 bajty). UmoŜliwia to znacznie szybszy
zapis nowej treści niŜ w przypadku EEPROM, stąd pochodzi nazwa FLASH - błysk. Jeśli pamięć
- 33 -
FLASH jest stosowana w charakterze dysku, to kasowanie całych bloków jest nawet bardzo
korzystne. Informacja na dyskach przechowywana jest zawsze w postaci bloków, zwanych
sektorami. Zatem zmiana nawet pojedynczego bitu w bloku wymaga ponownego zapisu całego
bloku danych, a to właśnie odbywa się w pamięci FLASH.
Do elektrycznego kasowania zawartości bloku komórek wymagane jest wyŜsze niŜ normalne
napięcie sterujące - zwykle od 12 do 22V. JednakŜe pamięci Flash są zasilane pojedynczym
napięciem 5V. Potrzebne, wysokie napięcie kasowania jest wytwarzane samodzielnie przez pamięć
Flash wewnątrz układu scalonego przy pomocy odpowiednich obwodów powielaczy napięcia.
Upraszcza to znacznie zastosowanie tej pamięci w róŜnych urządzeniach cyfrowych. Pamięć Flash
wytrzymuje kilka milionów cykli wymazywania i zapisu. W przypadku stosowania jej w
charakterze dysku krzemowego, wystarcza to na około 5 lat pracy.
NV-RAM
Nieulotna pamięć RAM (ang. Non Volatile RAM) nie jest pamięcią stałą, tylko zwykłą pamięcią
RAM ze zintegrowaną baterią, która podtrzymuje działanie pamięci po wyłączeniu zasilania. W
komputerach PC pamięć NV-RAM jest często stosowana do zapamiętywania ustawień płyty
głównej. Układ tej pamięci łatwo rozpoznać - ze względu na zawartą w nim baterię jest on duŜo
wyŜszy od pozostałych układów scalonych na płycie. Wewnętrzna bateria potrafi podtrzymywać
działanie pamięci przez okres około 10 lat. Zaletą NV-RAM w porównaniu z pamięciami typu
EEPROM i FLASH jest szybkość działania oraz standardowa obsługa - pamięć moŜe nawet być
włączona w przestrzeń adresową procesora i pełnić rolę obszaru pamięci, który nie jest kasowany
po wyłączeniu zasilania.
Pami
ęć
dyskowa
- 34 -
Do zapamiętywania olbrzymich ilości danych współczesne komputery wykorzystują pamięć
masową (ang. mass storage, mass memory) opartą na technologii dysków magnetycznych i
optycznych. Idea działania tych urządzeń jest podobna - informacja zostaje zapisana w postaci
binarnej na nośniku o kształcie dysku, skąd jest później odczytywana przez specjalne głowice.
Odczytane dane są wstępnie gromadzone w wewnętrznym buforze pamięciowym, a następnie
przesyłane przez porty wejścia/wyjścia do komputera. Zaletą pamięci dyskowych jest duŜa
pojemność informacyjna sięgająca setek GB dla dysków magnetycznych i dziesiątek GB dla
dysków optycznych (np. technologia bluray). Dodatkowo dyski optyczne są wymienne, co daje
dostęp do nieograniczonej ilości danych - muzyki, filmów, gier lub programów narzędziowych,
prezentacji, itp. W stosunku do dysków optycznych, dyski magnetyczne charakteryzują się większą
szybkością zapisu i odczytu danych, natomiast zapis na dyskach optycznych wymaga specjalnych
urządzeń - nagrywarek CD/DVD/BluRay.
PoniŜej prezentujemy uproszczone zasady działania dysków magnetycznych i optycznych.
Dyski magnetyczne
Jeśli przez przewodnik (ang. conductor) przepuścimy prąd elektryczny (ang. electric current), to
ruch elektronów spowoduje powstanie wokół tego przewodnika pola magnetycznego (ang.
magnetic field).
Zjawisko to wykorzystano do konstrukcji elektromagnesu, zbudowanego z wielu zwojów
przewodnika, który wytwarza biegunowe pole magnetyczne. Dodatkowo w środku zwojów
wstawiany jest rdzeń (ang. core) z materiału dobrze przewodzącego pole magnetyczne, czyli z tzw.
ferromagnetyka. Dzięki rdzeniowi pole staje się jeszcze silniejsze.
- 35 -
PoniewaŜ w elektromagnesie pole powstaje dzięki przepływowi prądu elektrycznego przez zwoje
przewodnika, to moŜemy w prosty sposób sterować wytwarzanym polem magnetycznym przez
włączanie, wyłączanie lub zmianę kierunku płynięcia prądu elektrycznego. Jeśli w polu
magnetycznym umieścimy przedmiot zbudowany z miękkiego ferromagnetyka (materiału łatwo
magnesowalnego), to materiał ten sam stanie się magnesem i będzie wytwarzał własne pole
magnetyczne, nawet po zaniku pola, które go namagnesowało. MoŜesz zrobić prosty eksperyment -
weź śrubokręt i potrzyj go o dowolny magnes - śrubokręt zacznie przyciągać małe metalowe
przedmioty - czasem moŜe to być bardzo poŜyteczne - odkręcona śrubka nie odpadnie od końcówki
ś
rubokręta.
Ś
rubokręt "zapamiętał" to, iŜ wcześniej znajdował się w polu magnetycznym.
Istnieje równieŜ zjawisko odwrotne do opisanego. Jeśli pole magnetyczne porusza się względem
przewodnika lub zmienia się w czasie, to w przewodniku powstaje siła elektromotoryczna (ang.
electromotoric force), czyli po prostu napięcie elektryczne (oczywiście na końcach przewodnika).
Gdy przewodnik uformujemy w zamknięty obwód, to pod wpływem powstałego napięcia popłynie
przez przewodnik prąd elektryczny. Dzięki temu zjawisku moŜesz korzystać w domu z
dobrodziejstw energii elektrycznej - w ten właśnie sposób generatory napędzane turbinami tworzą
prąd elektryczny w elektrowniach.
- 36 -
Prąd elektryczny moŜna wykryć przy pomocy odpowiednich układów elektronicznych, zatem
pośrednio moŜna wykrywać pole magnetyczne. Istnieją równieŜ specyficzne materiały zmieniające
swoje parametry w polu magnetycznym (np. oporność), co równieŜ jest wykorzystywane przez
współczesne pamięci magnetyczne.
Przedstawione dwa zjawiska inŜynierowie wykorzystali przy budowie pamięci magnetycznych.
Składają się one z dwóch podstawowych elementów: głowicy zapisująco-odczytującej (ang. R-W
head) oraz nośnika ferromagnetycznego - dysku magnetycznego (ang. magnetic disk).
Głowica zapisująco/odczytująca jest specjalnej konstrukcji elektromagnesem, który ma za zadanie
wytworzyć mikroskopijnej wielkości pole magnetyczne obejmujące fragment dysku. Pole
magnetyczne namagnesuje ten fragment, przez co zacznie on wytwarzać swoje własne pole
magnetyczne, które głowica będzie później w stanie odczytać. PoniewaŜ dysk się obraca, głowica
zapisuje wciąŜ nowe jego fragmenty na tzw. ścieŜce lub cylindrze (ang. path. cylinder).
- 37 -
Dysk magnetyczny jest wykonany z twardego i sztywnego materiału - aluminium lub kompozyt
ceramiczny - pokrytego bardzo cieniutką warstwą miękkiego ferromagnetyka. Pole magnetyczne
głowicy magnesuje fragmenty tej warstwy tworząc koncentryczne ścieŜki zapisu danych. Ciekawe
jest to, iŜ głowica nie styka się z powierzchnią dysku - inaczej materiał ferromagnetyczny zostałby
bardzo szybko wytarty z jego powierzchni. Gdy dysk zacznie się szybko obracać, wytwarza przy
swej powierzchni cieniutką poduszkę powietrzną, po której ślizga się głowica - zupełnie jak
mikroskopijny poduszkowiec.
Głowice współczesnych dysków twardych są pozycjonowane przy pomocy odpowiedniego
elektromagnesu. Dźwignia głowicy wyposaŜona jest w spręŜynkę, która ma za zadanie obrócić
ramię w połoŜenie startowe (ang. head landing zone) w przypadku zaniku napięcia - w przeciwnym
razie (jak to miało często miejsce w przeszłości) wirujący dysk utraciłby przy zatrzymaniu
poduszkę powietrzną i "lądująca" na nim głowica spowodowałaby wytarcie fragmentu ścieŜki
magnetycznej. Zawarte tam dane stałyby się nieczytelne i co gorsza obszaru tego nie dałoby się
powtórnie namagnesować. Powstałyby tzw. uszkodzone sektory (ang. bad sectors).
W trakcie pracy głowica unosi się nad powierzchnią dysku na wysokości kilku µm. Dlatego
wewnątrz dysku nie moŜe występować kurz, poniewaŜ jego drobinki osiadając na dysku
magnetycznym zakłócałyby ruch głowicy, a to z kolei powodowałoby uszkodzenia warstwy
magnetycznej. Dyski twarde są zamknięte hermetycznie i uŜytkownik nie powinien ich otwierać
bez zachowania odpowiednich warunków czystości powietrza.
- 38 -
Zapisując dane głowica pozostawia na powierzchni wirującego dysku koncentryczne ślady
magnetyczne, które nazywamy ścieŜkami (ang. track) lub cylindrami (ang. cylinder). Ze względów
techniczno-ekonomicznych ścieŜki są dzielone na wycinki - tzw. sektory (ang. sectors). Pomiędzy
sektorami występują małe przerwy (ang. gaps). Ułatwiają one rozpoznawanie początków i końców
sektorów.
Dane zapisywane są w postaci binarnej w sektorach. Sektory posiadają najczęściej pojemność 512
bajtów danych. Pojemność dysku obliczamy wg wzoru:
pojemność = liczba głowic × liczba ścieŜek na dysku × liczba sektorów na ścieŜce × liczba bajtów
w sektorze
PoniewaŜ długość ścieŜki zaleŜy od jej odległości od środka dysku (stary wzór: obwód = 2πr), to
ś
cieŜki wewnętrzne zawierają mniej sektorów od ścieŜek zewnętrznych. Zatem powyŜszy wzór nie
odpowiada fizycznej strukturze dysku. JednakŜe nie musimy się tym przejmować - producenci
dysków podają uśrednioną liczbę sektorów, a odczytem i zapisem informacji na dysku steruje
specjalizowany komputer jednoukładowy, nazywany kontrolerem dysku twardego (ang. hard disk
controller). To on lokalizuje odpowiedni sektor i zapisuje lub odczytuje z niego dane. Nie jest to
wcale łatwe i wymagało rozwiązania całego mnóstwa problemów technicznych, o których ty na
szczęście nic nie musisz wiedzieć.
Przykład:
Pewien dysk twardy, zgodnie z danymi producenta, posiada następujące parametry:
heads
256 - liczba głowic
tracks
1868 - liczba ścieŜek na dysku
sectors/track
63 - liczba sektorów na ścieŜkę
bytes/sector
512 - liczba bajtów na sektor
Obliczamy pojemność dysku:
capacity = heads × tracks × sectors/track × bytes/sector
capacity = 256 × 1868 × 63 × 512 = 15425077248 B = 15063552 KB = 14710,5 MB = 14,366 GB
- 39 -
Organizacją danych na dyskach zajmuje się system operacyjny twojego komputera. To on określa
sektory, w których znajduje się informacja zawarta w określonym pliku. Jeśli tworzysz nowy plik,
system przydziela dla niego odpowiednie sektory, w których będzie zapisywana informacja. Gdy
plik kasujesz, sektory zostają zwolnione i będą mogły być przydzielone innemu plikowi w razie
potrzeby. Do tego celu uŜywany jest fragment dysku, w którym przechowywane są informacje o
plikach i zajmowanych przez nie sektorach - obszar ten nazywany jest tablicą zawartości dysku
(ang. VTOC - Vulume Table of Contents). Dzięki systemowi operacyjnemu nie musisz znać
fizycznej struktury twojego dysku twardego - inaczej praca z komputerem byłaby prawdziwą męką.
Zwróć uwagę na to, iŜ jednostką zapisu/odczytu na dysku twardym jest sektor - nie moŜna zapisać
pojedynczego bitu. Jest to ograniczenie ekonomiczne - tak po prostu jest taniej i wydajniej. W
pamięci RAM moŜna zapisywać pojedyncze komórki - w pamięci dyskowej ich odpowiednikami są
sektory. Informacja odczytana z sektora jest umieszczana w buforze pamięciowym dysku i stamtąd
odczytuje ją komputer - pozwala to przyspieszyć znacznie odczyt, poniewaŜ zwykle dane znajdują
się w sąsiadujących ze sobą sektorach - chociaŜ jeśli często zapisujesz i kasujesz pliki, to moŜe
dojść do tzw. fragmentacji dysku - kolejne sektory z danymi pliku nie będą znajdowały się blisko
siebie i głowica odczytująca musi dosyć intensywnie skakać po ścieŜkach. W takim przypadku
szybkość zapisu/odczytu danych moŜe znacznie zmaleć - dlatego naleŜy co jakiś czas uruchamiać
oprogramowanie defragmentujące dysk twardy. Defragmentacja polega na takim przemieszczeniu
sektorów dla poszczególnych plików, aby znajdowały sie one fizycznie obok siebie.
Dyski CD (ang. Compact Disk) i DVD (ang. Digital Video Disk) są obecnie spotykane
powszechnie. UŜywa się ich do zapisu muzyki, filmów, programów komputerowych, itp. KaŜdy
współczesny komputer osobisty jest wyposaŜany standardowo w stację DVD, która pozwala
odczytywać takie dyski. Coraz popularniejsze stają się równieŜ nagrywarki DVD, które, oprócz
funkcji odczytu, pozwalają równieŜ na zapis danych na specjalnych dyskach optycznych - tzw.
optycznych dyskach zapisywalnych - CD-R, DVD-R. Niektóre z tych dysków umoŜliwiają nawet
wielokrotny zapis - dyski CD-RW, DVD-RW.
Dyski kompaktowe CD opracowano pierwotnie do zapisu muzyki w postaci cyfrowej. Jak zapisać
cyfrowo dźwięk? OtóŜ dźwięk składa się z fali akustycznej, czyli zmian ciśnienia gazu, które
przemieszczają się od źródła do odbiorcy. Falę tę odczytuje się za pomocą specjalnych
przetworników - mikrofonów. Mikrofony zamieniają falę akustyczną w odpowiednio zmienne
napięcie elektryczne. Zmiany napięcia na wyjściu mikrofonu są proporcjonalne do zmian ciśnienia
gazu, które docierają do mikrofonu. Napięcie to jest wzmacniane i mierzone przez tzw. przetwornik
analogowo cyfrowy (ang. A/D converter), który przetwarza wartość napięcia na odpowiadającą mu
liczbę dwójkową. Pomiar napięcia nie jest ciągły, lecz występuje w wybranych momentach czasu z
pewną częstotliwością. Nazywamy to próbkowaniem sygnału (ang. sampling). Dla urządzeń audio
o wysokiej jakości odtwarzania dźwięku (jakość Hi-Fi - ang. High Fidelity - wysoka wierność)
przyjęto, iŜ częstotliwość próbkowania będzie wynosić 44.100 [Hz}. Tzn. w kaŜdej sekundzie
przetwornik A/D dokonuje 44.100 pomiarów napięcia reprezentującego falę dźwiękową.
Gwarantuje to otrzymanie pasma dźwiękowego od 20 [Hz} do 20.000 {Hz}. W takim zakresie
słyszy dźwięki normalny człowiek.
- 40 -
Na wyjściu przetwornika A/D otrzymujemy binarną wartość mierzonego napięcia. Dla standardu
CD przyjęto, iŜ wartość ta będzie liczbą 16-to bitową. 16 bitów odpowiada dwóm bajtom danych.
W ciągu jednej sekundy przetwornik A/D produkuje:
44.100 × 2 = 88.200 B
Cała płyta CD moŜe pomieścić 74 minuty nagrania. Daje to 74 × 60 = 4440 sekund. Zatem płyta
powinna pomieścić:
88.200 B × 4.440 sek × 2 kanały = 783.216.000 B = 747 MB
Rzeczywista pojemność dysku jest nieco większa, poniewaŜ muszą się na nim znaleźć dodatkowe
informacje, np. na temat zapisanych utworów, ich połoŜenia, długości. Dane są kodowane kodem
ECC, który potrafi usuwać błędy odczytu. Gdyby to nie było zrobione, płyta CD bardzo szybko
przestałaby być uŜyteczna z powodu drobnych zarysowań powierzchni.
Sam dysk CD jest w miarę prostym krąŜkiem tworzywa poliwęglanowego o grubości
4
/
100
cala (1.2
mm), średnicy 12 cm i wadze 14 g. Podczas produkcji w fabryce na krąŜku tym zostają odciśnięte
przez matrycę mikroskopijnej wielkości wgłębienia (tzw. pity), tworząc pojedynczą, ciągłą ścieŜkę
spiralną, na której zapisane są dane cyfrowe.
- 41 -
Po odciśnięciu tych wgłębień powierzchnia dysku CD zostaje pokryta cienką warstwą aluminium.
Warstwa ta pełni rolę lustra, które będzie odbijało światło lasera. Następnie na aluminium nakłada
się akrylową warstwę ochronną, na której zwykle drukowana jest etykieta dysku CD. Warstwa ta
ma za zadanie zabezpieczyć aluminium przed ścieraniem się z powierzchni płyty.
Odczyt danych z powierzchni dysku CD odbywa się za pomocą światła lasera. Do tworzenia tego
ś
wiatła stosuje się zwykle diodę LED (ang. Light Emitting Diode), która emituje światło o długości
fali równej 780 nm. Jest to światło czerwone na granicy widzialności oka człowieka. Światło lasera
pada na powierzchnię płytki i zostaje odbite przez warstwę aluminium. Po odbiciu trafia na
fotodiodę, która zamienia strumień świetlny na prąd elektryczny. Prąd ten zostaje odpowiednio
wzmocniony i słuŜy do odczytu informacji zapisanej na płytce CD.
Układ odczytujący warz z optyką jest umieszczony na specjalnym wózku, który przemieszcza się
wzdłuŜ promienia dysku CD przy pomocy małego silniczka.
Optyka ma za zadanie odpowiednio skupić światło lasera na powierzchni dysku. Aby
wyeliminować kurz i małe rysy, wiązka lasera posiada kształt stoŜka, który na powierzchni płyty
ma średnicę około 800 µm, natomiast na powierzchni aluminiowej tylko 1,7 µm. Skonstruowanie
układu ogniskowania, który by zapewniał takie parametry w trakcie wirowania dysku byłoby
bardzo trudne. Dlatego stosuje się dynamiczne ogniskowanie wiązki - soczewki skupiające
umieszczone są wewnątrz specjalnych cewek, które przesuwają się w polu magnetycznym,
ogniskując promień lasera.
- 42 -
Wykorzystuje się do tego celu zmienny kształt wiązki lasera po przejściu jej przez soczewkę
cylindryczną. Gdy wiązka jest w ognisku, ma kształt kołowy. Jeśli jest niezogniskowana, to
przyjmuje kształt eliptyczny z wydłuŜoną osią poziomą lub pionową w zaleŜności od tego, czy
ognisko jest wcześniej, czy później. Plamka lasera pada na specjalny detektor, który jest
wyposaŜony w cztery punkty pomiarowe (fotodiody) A, B, C i D.
Do sterowania ruchem soczewki skupiającej uŜywa się sygnału róŜnicowego (A+B) - (C+D). Taki
system dynamicznie reguluje układ optyczny, który nadąŜa za drganiami spowodowanymi ruchem
dysku CD. Ten sam detektor uŜywany jest równieŜ do pozycjonowania lasera na ścieŜce z pitami.
Jeśli ścieŜka przesuwa się w prawo lub w lewo, do więcej sygnału dostaje się odpowiednio do
diody D lub C.
- 43 -
W takich przypadkach układ sterujący odpowiednio przesuwa wózek z głowicą laserową,
zapewniając ciągły odczyt ścieŜki.
Oprócz problemów z pozycjonowaniem wiązki laserowej, układ napędowy CD musi równieŜ
zapewnić stałą prędkość liniową promienia lasera na ścieŜce. Powoduje to, iŜ dysk CD obraca się z
róŜną prędkością kątową w zaleŜności od połoŜenia głowicy laserowej. Im bliŜej środka dysku, tym
prędkość ta jest większa.
Sam odczyt polega na tym, iŜ laser w róŜny sposób odbija się od powierzchni dysku. Natrafiając na
pit, zostaje on rozproszony i w efekcie do detektora dostaje się mniej światła. Powoduje to
modulację strumienia świetlnego, a w efekcie modulację prądu elektrycznego otrzymywanego z
detektora. Na podstawie tych zmian układy logiczne stacji CD odczytują informację zapisaną na
dysku CD.
Tak w uproszczeniu działa system CD. W toku rozwoju wprowadzono w nim wiele zmian i
ulepszeń, które poprawiły osiągi stacji CD oraz zwiększyły ich niezawodność. Dyski CD pierwotnie
uŜywano tylko do zapisu muzyki, jednakŜe szybko stały się nośnikiem danych cyfrowych dla
rozwijających się komputerów. PoniewaŜ dane cyfrowe nie mogą zawierać Ŝadnych błędów, na
dyskach CD ROM stosuje się lepszy system korekcji błędów ECC. Z tego powodu pojemność
typowego dysku CD wynosi około 650 MB danych.
Technologia dysków CD została rozszerzona o dyski zapisywalne - CD-R (ang. Compact Disk
Recordable). Wymagają one specjalnych stacji CD-ROM, które posiadają moŜliwość zapisu danych
na dysku CD-R, zwanych nagrywarkami CD (ang. CD Recorder). Budowa płyt CD-R nieco róŜni
się od zwykłych płyt CD. Przede wszystkim nie występują w nich pity. Zamiast nich pomiędzy
warstwą poliwęglanu a powłoką odbijającą (zamiast aluminium stosuje się tu warstewkę złota,
dlatego płyty CD-R posiadają często Ŝółty kolor powierzchni refleksyjnej) umieszczona jest
warstwa specjalnego tworzywa, które zmienia barwę pod wpływem odpowiednio silnego światła
lasera. Na wewnętrznej powierzchni dysku z poliwęglanu wykonany jest cieniutki rowek,
posiadający kształt spirali. SłuŜy on do prowadzenia lasera podczas zapisu danych.
- 44 -
W trakcie zapisu laser pracuje z duŜo większą mocą. Rozgrzane tworzywo zmienia swoją barwę.
Zmiany barwy wzdłuŜ rowka zapisującego odpowiadają pitom zwykłej płyty CD. Przy normalnym
odczycie laser nie posiada odpowiednio duŜej mocy, aby zmienić kolor barwnika. Zatem raz
zapisaną płytę CD-R moŜna dowolną ilość razy odczytywać, jak zwykły dysk CD.
Oprócz płyt CD-R, które umoŜliwiają jednokrotny zapis, opracowana równieŜ płyty CD-RW (ang.
Compact Disk ReWritable), pozwalające na wiele cyklów zapisu, kasowania i ponownego zapisu.
W dysku CD-RW pomiędzy warstwą z poliwęglanu a warstwą refleksyjną znajduje się warstwa ze
specjalnego stopu czterech metali - srebra, indu, antymonu i telluru. Warstwa ta posiada własność
zmian przezroczystości pod wpływem światła lasera o róŜnej energii. Proces ten jest w pełni
odwracalny. Dzięki temu informację zapisaną na płycie CD moŜna wymazać i zastąpić inną.
Nagrywarki CD mogą pracować z róŜnymi prędkościami zapisu. Za pojedynczą prędkość
przyjmuje się standardowy czas odtwarzania płyty CD-Audio - 74 minuty. Nagrywarka pracująca z
większą prędkością zapisuje pełen dysk CD w czasie odpowiednio krótszym:
Prędkość zapisu Czas zapisu płyty CD
× 1
74 min
× 2
37 min
× 4
18 min
× 8
9 min
× 16
5 min
× 32
3 min
× 48
2 min
Dysk DVD
Rosnące wymagania uŜytkowników oraz potrzeba cyfrowego zapisu filmów doprowadziły do
opracowania ulepszonego standardu DVD (ang. Digital Video Disk). W systemie DVD
zmniejszono rozmiar plamki lasera, dzięki czemu udało się zwiększyć ponad 6-cio krotnie
pojemność dysku. ŚcieŜki na dysku DVD są mniejsze w porównaniu z dyskiem CD i mieszczą
więcej informacji. Dyski DVD opracowano z myślą o cyfrowym zapisie obrazu TV. Standardowa
pojemność jednej strony dysku DVD wynosi około 4,7 GB, co pozwala na zapis 2 godzin filmu w
formacie MPEG-2 (telewizyjny format cyfrowy). JednakŜe wraz z upowszechnieniem się tego
standardu został on zaadoptowany przez komputery jako tani nośnik duŜej ilości informacji.
- 45 -
Dysk DVD wykorzystuje do maksimum moŜliwości lasera czerwonego. Dalsze zagęszczanie
ś
cieŜek i zmniejszanie rozmiarów pitów napotyka na barierę rozdzielczości promieni lasera.
JednakŜe dyski DVD mogą być dwuwarstwowe oraz obustronne. W płytach dwuwarstwowych
DVD DL (ang. DVD Double Layer) dostęp do głębszej warstwy uzyskuje się regulując skupienie
wiązki laserowej.
Rozwiązanie to pozwala podwoić pojemność płyty DVD do 8,5 GB. Na płycie DVD DL moŜna
zapisać 4 godziny filmu w cyfrowej jakości wraz z 6 kanałowym dźwiękiem. Płyta dwustronna i
dwuwarstwowa DVD posiada pojemność 17,5 GB.
Płyty DVD równieŜ występują w wersji zapisywalnej DVD+R i DVD-R. Oba te standardy
nieznacznie róŜnią się między sobą:
•
DVD-R: pojemność 4,489MB 4,706,074,624 bajtów, czyli 4.383GB - lepsze do filmów
•
DVD+R: pojemność 4,483MB 4,700,372,992 bajtów, czyli 4.377GB - lepsze do danych
Wzrost pojemności dysku DVD-R w porównaniu z CD-R uzyskano za pomocą zmniejszenia
rozmiarów pitów. Zapis i odczyt dokonywany jest laserem o długości fali 650 nm. Dyski wykonuje
się z dwóch krąŜków poliwęglanowych, które klei się razem w trakcie produkcji płyty. Pierwszy z
tych krąŜków posiada warstwę zapisywalną, pokrytą warstwą refleksyjną wykonaną z aluminium i
specjalnego barwnika, zmieniającego kolor pod wpływem odpowiednio silnego światła lasera.
Drugi krąŜek stabilizuje zachowanie się całego dysku DVD podczas operacji odczytu/zapisu. Dyski
dwustronne mają warstwę zapisywalną na obu krąŜkach. Standard DVD wyparł we współczesnym
sprzęcie informatycznym standard CD - nagrywarki DVD stały się standardowym elementem
wyposaŜenia wszystkich współczesnych komputerów. Ich zaletą jest moŜliwość odczytu i zapisu
równieŜ zwykłych płyt CD, CD-R, CD-RW.
Dyski DVD równieŜ występują w wersji wielokrotnego zapisu DVD-RW. Zasada działania tego
systemu jest bardzo podobna do CD-RW. Warstwa zapisywalna moŜe być wielokrotnie kasowana
ś
wiatłem lasera i zapisywana ponownie. Technologia wielokrotnego zapisu dotyczy równieŜ
dysków DVD dwuwarstwowych.
- 46 -
Ilość czasu niezbędnego do zapisu dysku DVD-R lub DVD-RW zaleŜy od szybkości zapisu
nagrywarki DVD, uŜytego trybu zapisu przez tę nagrywarkę, ilości informacji do zapisu oraz
zastosowanego systemu weryfikacji zapisu. Szybkość nagrywania danych mierzona jest w ten sam
sposób, co szybkość odczytywania danych przez zwykłą stację DVD-ROM lub odtwarzarki DVD.
Przy pojedynczej prędkości nagrywarka zapisuje w kaŜdej sekundzie 1,32 MB danych. Większe
prędkości zapisu są wielokrotnościami tej prędkości podstawowej.
Szybkość
odczytu/zapisu
DVD
Szybkość zapisu
MB/sek
Czas zapisu
standardowej płyty
DVD
1x
1.32
57 min
2x
2.64
28 min
3x
3.96
19 min
4x
5.28
14 min
5x
6.60
12 min
6x
7.93
10 min
8x
10.57
7 min
10x
13.21
6 min
12x
15.85
5 min
16x
21.13
4 min
Tryby zapisu
Wykorzystując osiągnięcia standardów CD-R i CD-RW, parametry zapisywalnych dysków DVD
znacznie ulepszono w krótkim czasie. Szybkość zapisu dysków DVD obecnie przewyŜsza nawet
najszybsze nagrywarki CD-R i CD-RW.
Stała Prędkość Liniowa - Constant Linear Velocity (CLV)
Pierwotnie nagrywarki DVD pracowały w trybie CLV w celu utrzymania stałej szybkości przesyłu
danych w obrębie całego dysku. Tryb CLV ustala szybkość obrotową dysku od 1400 obr/min, która
następnie jest zmniejszana do 580 obr/min, gdy głowica laserowa odczytuje lub zapisuje dane ze
wewnętrznej lub zewnętrznej średnicy dysku. PoniewaŜ cały dysk zapisywany jest ze stałą
szybkością przesyłu danych, to zapis 4,7 GB zajmuje około 57 minut czasu przy pojedynczej
prędkości CLV. Gdy rośnie szybkość zapisywania, rośnie równieŜ szybkość przesyłu danych, zatem
przy 4 x CLV czas zapisu wynosi w przybliŜeniu 14 min. Czas zapisywania zaleŜy równieŜ od
ilości danych do zapisu. Zatem dyski niepełne zostaną zapisane w proporcjonalnie krótszym czasie.
Lecz zapisywanie przy duŜych prędkościach wymaga coraz szybszych obrotów dysku (przy 6 x
CLV od 8400 obr/min do 3480 obr/min), co stawia duŜe wymagania fizyczne dla nagrywarek,
dysków DVD oraz oprogramowania. Wytwórcy sprostali tym wyzwaniom wykraczając poza tryb
CLV w celu uzyskania jeszcze wyŜszych parametrów zapisu.
- 47 -
Strefowo Stała Prędkość Liniowa - Zoned Constant Linear Velocity (ZCLV)
W przeciwieństwie do trybu CLV, w którym jest utrzymywana stała prędkość przesyłu danych w
całym procesie zapisu, tryb ZCLV dzieli dysk na strefy w kaŜdej z nich stosuje stopniowo większą
szybkość zapisu. Na przykład nagrywarka 8 x ZCLV DVD+R/+RW zapisuje pierwsze 800 MB
dysku w trybie 6 x CLV, a resztę w trybie 8 x CLV. Nagrywarka DVD-RAM stosuje inny rodzaj
ZCLV, w którym dysk jest dzielony na duŜo więcej stref (np. dysk 4.7 GB na 34 strefy). Tutaj
prędkość obrotowa jest utrzymywana na stałym poziomie w kaŜdej strefie, lecz róŜni się pomiędzy
strefami, dając w wyniku mniej więcej stałą szybkość przesyłu danych w całym procesie zapisu
dysku.
Stała Prędkość Kątowa - Constant Angular Velocity (CAV)
W trybie CAV dysk wykonuje stałą liczbę obrotów w całym procesie zapisu. W wyniku szybkość
przesyłu danych ciągle wzrasta, gdy głowica laserowa przesuwa się wzdłuŜ promienia dysku ku
jego krawędzi. Przykładowo, w trybie 5 x CAV nagrywarka DVD-RAM rozpoczyna zapis przy
prędkości 2 x na wewnętrznej średnicy dysku i przyspiesza stopniowo do 5 x przy zewnętrznej
ś
rednicy dysku.
Weryfikacja Zapisu i Obsługa Błędów
Oprócz prostego zapisu danych, niektóre oprogramowanie nagrywające wykonuje weryfikację
zapisu danych lub stosuje zaawansowane techniki obsługi błędów zapisu, co w rezultacie moŜe
nawet podwoić całkowity czas zapisu dysku. Zwykle weryfikacji dokonuje się po zapisie danych,
natomiast obsługa błędów wykonywana jest w trakcie zapisywania. Weryfikację danych w
niektórych programach zapisujących dyski DVD moŜna wyłączyć, lecz obsługa błędów jest
zaprogramowana w samych nagrywarkach i zwykle nie moŜe być wyłączona.
Region DVD
- 48 -
Wytwórcy filmów podzielili świat na regiony nadając im numery od 1 do 6 (Polska jest w regionie
2). Filmy DVD posiadały zakodowany numer regionu. Ich odtwarzanie było moŜliwe tylko wtedy,
gdy stacja DVD posiadała taki sam kod regionu jak film. Pierwsze stacje DVD pozwalały na
pięciokrotne wprowadzenie kodu regionu. Po wyczerpaniu tego limitu dalsza zmiana kodu nie była
juŜ moŜliwa (oczywiście bez odpowiedniej modyfikacji sprzętowej). Działania te miały na celu
ograniczenie swobodnej dystrybucji filmów DVD na świecie i zagwarantowanie zysków dla ich
producentów (np. tanie filmy z USA nie mogły być odtwarzane w Europie lub Ameryce
Południowej).
Dzisiaj rozwiązanie to juŜ praktycznie straciło na znaczeniu, poniewaŜ współczesne stacje DVD
mają wbudowany kod 0, który pozwala na odtwarzanie dysku DVD z dowolnego regionu. Istnieje
równieŜ oprogramowanie maskujące kod regionu w stacjach DVD-ROM lub jego całkowite
usunięcie przy przegrywaniu. Obecnie coraz popularniejsze staje się zakupywanie filmów poprzez
sieć Internet, a standard DVD będzie powoli odchodził do lamusa.
Dysk Blue-Ray
Ograniczeniem technologii DVD jest długość fali świetlnej zastosowanego tam lasera - 640 - 790
nm. Przy takim świetle nie da się zmniejszać pitów, będących nośnikami danych, gdyŜ przestałyby
być widoczne. Przełom technologiczny nastąpił dopiero po opracowaniu przez japońskiego
naukowca Shuji Nakamurę nowego lasera, który produkuje światło fioletowe o długości 405 nm.
Kolor światła lasera uŜyto w nazwie nowej technologii (ang. blue ray - niebieski promień). Takie
ś
wiatło posiada duŜo większą rozdzielczość, co umoŜliwia z kolei zagęszczenie ścieŜek i
zmniejszenie rozmiaru pitów. Dzięki temu pojemność dysków BD (ang. Blue-ray Disk) osiąga 25
GB. Taka pojemność potrzebna jest do cyfrowego zapisu filmów w technologii HD (ang. High
Definition - Wysoka Jakość).
Dyski BD mogą występować w odmianach wielowarstwowych. Dwuwarstwowy dysk ma
pojemność 50 GB, 4 warstwowy - 100 GB. Rekordzistą jest dysk 16 warstwowy o pojemności 400
GB. Dysk Blu-ray posiada dwie warstwy: pierwsza o grubości 1,1 mm, druga o grubości 0,1 mm,
na której zapisywane są dane. Minimalna długość pitu wynosi 0,15 µm. Odstęp pomiędzy
ś
cieŜkami jest równy 0,32 µm, średnica plamki lasera wynosi 0,48 µm.
Oprócz zwykłych dysków BD-ROM (ang. Blue-ray Read Only Memory) istnieją zapisywalne dyski
BD-R (ang. Blue-ray Disk Recordable) oraz dyski wielokrotnego zapisu BD-RE (Blue-ray Disk
REwritable). Ich technologie są zbliŜone do technologii odpowiednich dysków CD i DVD.
- 49 -
Producenci filmów w jakości HD podzielili świat na trzy regiony (Polska naleŜy do regionu B/2),
podobnie jak w przypadku DVD. Odtwarzacz Blue-ray moŜe odtwarzać tylko płyty BD o takim
samym kodzie regionu jak kod odtwarzacza. Działanie to ma na celu kontrolę nad dystrybucją
filmów na świecie. Oczywiście odpowiedzią rynku było pojawienie się specjalnych odtwarzaczy
Blue-ray od niezaleŜnych producentów, które potrafią odczytywać płyty BD z dowolnego regionu.
NaleŜy tu wspomnieć, iŜ z technologią Blue-ray konkurują dyski HD DVD, które posiadają większą
pojemność - 30 GB. Nowoczesne nagrywarki pozwalają na zapisywanie i odczytywanie obu
rodzajów dysków (jak równieŜ formatów CD i DVD). PoniewaŜ ceny tych urządzeń szybko
spadają, w niedalekiej przyszłości wyprą one standard DVD w komputerach osobistych.