Podstawy Informatyki
—————————————————————————————
Architektura komputera - pamięci
Pamięci
1.Pamięci komputera
Pamięć komputera [8] jest scharakteryzowana przez:
- pojemność
- szybkość
- koszt
- pobór mocy
3
Podstawy Informatyki
Pojemność pamięci – potencjalna ilość przechowywanej informacji. Określa się ją w
jednostkach bit, bajt lub słowo o zadanej liczbie bitów np. 8, 16, 32, 64. W celu
właściwego adresowania pamięci, dzieli się ją na fragmenty. Pojemność określa się
biorąc długość słowa i liczbę słów. W pamięciach masowych określa się sektory
zawierające większe ilości słów
Pamięci
Szybkość pamięci – oznacza częstotliwość, z jaką procesor może korzystać z pamięci.
Szybkość jest określona przez
czas dostępu – okres czasu od sygnału żądania dostępu do uzyskania danej,
czas cyklu - najkrótszy czas między dwoma żądaniami dostępu do pamięci
szybkość transmisji - określa ile informacji dyskretnej można przesłać pomiędzy
pamięcią a innym urządzeniem w jednostce czasu, mierzona w kb/s lub kB/s (kilobitów
na sekundę lub kilobajtów na sekundę).
Koszt pamięci i zużycie energii rosną przy podwyższaniu parametrów pamięci.
4
Podstawy Informatyki
Pamięci
1.1 Podstawowa klasyfikacja pamięci
1.1.1 Podział ze względu na rolę w systemie komputerowym:
- Pamięć rejestrową procesora;
- Pamięć podręczna (cache);
- Pamięć operacyjna;
- Pamięć masowa;
- Pamięć zewnętrzna.
5
Podstawy Informatyki
Pamięć rejestrowa procesora jest to część procesora zawierająca rejestry 16 i 32
bitowe. Dostęp do nich zapewniają multipleksery sterowane przez układ sterujący
procesora. Czas dostępu do pamięci rejestrowej wynosi ułamki nanosekundy. Zawartość
pamięci rejestrowej istnieje w czasie pracy procesora. Budowa pamięci: pamięć
Pamięci
statyczna z układu przerzutników. Powodem krótkiego czasu dostępu jest rola tej
pamięci. Procesor wykonuje na jej zawartości bezpośrednio operacje logiczne i
arytmetyczne.
6
Podstawy Informatyki
Multiplekser jest układem cyfrowym, który należy wraz z dekoderem do grupy
układów komutacyjnych. Multiplekser służy do wybierania jednego ze słów dostępnych
na wejściu i przesłania go do wyjścia [7].
Pamięci
a)
b)
Rys.1.1. Multiplekser a) symbol, b) schemat
7
Podstawy Informatyki
Pamięć podręczna (cache). Pamięć statyczna o pojemności kilkaset KB. Dostęp do
tej pamięci jest swobodny. Pamięć jest zintegrowana z procesorem. Dane są
przechowywane w pamięci cache tylko w czasie podłączenia zasilania. Służy do
Pamięci
przechowywania najczęściej wykorzystywanych podczas obliczeń fragmentów pamięci
operacyjnej. Czas dostępu do tej pamięci wynosi kilka nanosekund. Przeniesienie
wybranych fragmentów zawartości pamięci operacyjnej do pamięci cache, która działa
szybciej od operacyjne powoduje, że cykl maszynowy skraca się
Pamięć operacyjna zawiera kilkaset MB pamięci częściowo stałej o dostępie
swobodnym (ROM) na część systemową i dynamicznej o dostępie swobodnym (DRAM)
na część użytkową; jest stosunkowo tania, czas dostępu do niej to kilkanaście
nanosekund; zawartość pamięci dynamicznej istnieje tylko przez kilkadziesiąt milisekund
w czasie podłączenia zasilania i wymaga odświeżania; jest używana do
przechowywania danych i kodów zadań aktualnie potrzebnych do wykonywania.
8
Podstawy Informatyki
Pamięć masowa – kilkadziesiąt lub kilkaset GB pamięci przede wszystkim
dyskowej, do której czas dostępu wynosi kilka milisekund; jest tania a jej zawartość jest
Pamięci
trwała (nie licząc starzenia się zapisu magnetycznego na dysku); służy do
przechowywania wszystkich stale używanych w danym systemie komputerowym kodów
programów i danych.
Pamięć zewnętrzna - wymienne dyski lub dawniej kasety do tzw. streamerów,
pamięć taśmowa o stosunkowo długim i to sekwencyjnym sposobie dostępu ale i o
praktycznie nieograniczonej pojemności; bardzo tania, ale nadająca się tylko do
przechowywania archiwaliów programów i danych.
1.1.2 Podział ze względu na trwałość zapisu
Pamięci dzieli się z punktu widzenia trwałości zapisu na
- Pamięci stałe
9
Podstawy Informatyki
- Pamięci ulotne.
Pamięci
Pamięci stałe zachowują zapisane w nich dane po wyłączeniu zasilania komputera.
Mogą to być:
- pamięci półprzewodnikowe ROM zaprogramowane przez producenta,
- pamięci zaprogramowane przez użytkownika UVPROM, EEPROM,
- pamięci dyskowe.
Pamięci ulotne nie zachowują zapisanych danych po wyłączeniu zasilania
Są to
- pamięci operacyjne,
- podręczne,
- rejestrowe.
10
Podstawy Informatyki
Pamięci
1.1.3 Podział ze względu na sposób dostępu do pamięci
Ze względu na dostęp rozróżnia się:
- Pamięć o dostępie swobodnym;
- Pamięć o dostępie cyklicznym
- Pamięć o dostępie sekwencyjnym
- Pamięć asocjacyjna.
Pamięć o dostępie swobodnym RAM (Random Access Memory).
Zapis lub odczyt z tej pamięci wymaga określenia przez system komputerowy adresu
komórki. Jest to na przykład pamięć operacyjna.
11
Podstawy Informatyki
Pamięć o dostępie cyklicznym. Dostęp do danych jest możliwy okresowo. Tak
Pamięci
skonstruowana jest pamięć dyskowa.
Pamięć o dostępie sekwencyjnym. W przypadku tej pamięci dostęp do danych
odbywa się w określonej kolejności. Tak działa pamięć taśmowa.
Pamięć asocjacyjna (skojarzeniowa, adresowalna przez zawartość). W
odpowiedzi na pobudzenie wzorcem. Jedno ze słów zgodnych wybrane według
określonego kryterium selekcji (pierwsze zgodne, ostatnie zgodne, tylko jedynki lub zera
na pozycjach maskowanych) może być skopiowane do bufora wyjściowego [3]. Pamięć
jest wykonywana jako statyczna.
1.1.4 Podział ze względu na trwałość krótkoterminową zapisu
Wyróżnia się dwa rodzaje pamięci:
- Pamięć statyczną;
12
Podstawy Informatyki
- Pamięć dynamiczną.
Pamięci
Pamięć statyczna. Pamięć jest realizowana za pomocą przerzutników
przyjmujących dwa trwałe stany. Dane są pamiętane, gdy układy są zasilane. Szybkość
działania tych przerzutników jest duża. Poza tym pobór mocy jest znaczny i złożoność
układu.
13
Podstawy Informatyki
Pamięć dynamiczna. Pamięć ta jest zbudowana z tranzystorów MOS. Tranzystor
MOS jest tranzystorem polowym z izolowaną bramką. Sterowanie odbywa się za
pomocą pola elektrycznego). Stan 1 odpowiada naładowaniu pojemności kondensatora
tranzystora MOS a 0 stanowi rozładowania. Stan 1 zanika po kilkudziesięciu
milisekundach, ponieważ kondensator rozładowuje się. Wymaga to stosowania
odświeżania stanu. Zaletą tego typu pamięci jest możliwość stosowania wielkiej skali
integracji w porównaniu z pamięciami statycznymi i mniejszy pobór mocy. Natomiast
szybkość działania jest mniejsza.
Pamięci
Pamięci
Z dostępem
swobodnym
Z dostępem
cyklicznym
Z dostępem
sekwencyjnym
Z dostępem
asocjacyjnym
Rejestrowa
Kieszeniowa
Operacyjna
Masowa
ROM
RAM
Dynamiczna
Statyczna
Zewnętrzna
14
Podstawy Informatyki
Rys.1.2. Podstawowa klasyfikacja pamięci
Pamięci
1.2 Pamięci RAM – pamięć o dostępie swobodnym
Pamięć RAM pamięcią ulotną. Zbudowana jest w postaci matrycy komórek, czyli
zbioru jednakowych elementów uporządkowanych w ten sposób, aby można było
odczytać zawartość określonych komórek. Rozmiary pamięci zależą
- magistrali,
- adresowania.
Komunikacja procesora z pamięcią odbywa się poprzez podanie adresu o n bitach,
sygnałów dostępu i sygnałów zapisu i odczytu.
Uporządkowanie komórek pamięci RAM na słowa może być bitowe lub bajtowe.
15
Podstawy Informatyki
DMA (Direct Memory Access – bezpośredni dostęp do pamięci) – technika, w której
Pamięci
inne układy (np. kontroler dysku twardego, karta dźwiękowa, itd.) mogą korzystać z
pamięci operacyjnej RAM lub (czasami) portów we-wy pomijając przy tym procesor
główny – CPU. Wymaga to współpracy ze strony procesora, który musi zaprogramować
kontroler DMA do wykonania odpowiedniego transferu, a następnie na czas przesyłania
danych zwolnić magistralę systemową (przejść w stan wysokiej impedancji). Sam
transfer jest już zadaniem wyłącznie kontrolera DMA.
16
Podstawy Informatyki
Pamięci narysowane symbolicznie na rysunku a) i b) mają tą samą pojemność
wynoszącą 32b, różnią się natomiast organizacją. Pamięć na rys a) ma organizację
bitową; możemy o niej powiedzieć, że jest to pamięć przeznaczona do pamiętania 32
słów 1 bitowych (32x1b). Pamięć na rys b) ma organizację bajtową, czyli przechowuje 4
słowa 8 bitowe (4x1B). Warto w tym miejscu zwrócić uwagę na ilość linii danych i
adresowych dla każdej z pamięci.
Pamięci
Rys.1.3. Interpretacja organizacji pamięci
17
Podstawy Informatyki
Wadą pamięci RAM jest to, że są one ulotne, tj. ich zawartość jest tracona po
wyłączeniu napięcia zasilania. Aby pamięć taka (lub jej część) była nieulotna (non-
volatile) wyposaża się ją w układ bateryjny podtrzymujący napięcie po wyłączeniu
Pamięci
napięcia głównego. Innym rozwiązaniem może być
zastosowanie tzw. pamięci NVRAM.
Jest to taka pamięć półprzewodnikowa, w której w jednej obudowie scalono pamięci
RAM i EEPROM. W; trybie pracy pracuje tylko pamięć RAM, a pod wpływem
odpowiedniego sygnału zewnętrznego zawartość tej pamięci jest przepisywana do
pamięci EEPROM.
Pamięci RAM można podzielić na dwie podstawowe grupy:
pamięci statyczne SRAM (static memory),
pamięci dynamiczne DRAM (dynamic memory).
18
Podstawy Informatyki
Pamięci statyczne są to szybkie pamięci, ale o stosunkowo niewielkiej pojemności i
dużym poborze mocy. Elementami takich pamięci są przerzutniki. Duży pobór mocy
powoduje trudności ze zbudowaniem pamięci o dużej pojemności. Dlatego pamięci
statyczne stosowane tam, gdzie nie jest wymagana duża pojemność, a jedynie duża
Pamięci
szybkość pracy. Przykładem takiego zastosowania jest pamięć kieszeniowa.
Pamięci dynamiczne zaś składają się z elementów, które nie są przerzutnikami, a
specjalnymi układami elektronicznymi zawierającymi mniejszą liczbę elementów.
Podstawowym elementem tych układów jest kondensator, którego stan naładowania
wskazuje na wartość bitu. Pamięci dynamiczne charakteryzują się małym poborem
mocy i stosunkowo dużą pojemnością. Wadą tych pamięci jest to, że informacja
pamiętana jest jedynie przez krótki czas - typowo kilka milisekund (2, 4, 8 ms). Po tym
czasie zawartość pamięci musi zostać odświeżona (refresh).
Tabela Zestawienie podstawowych właściwości pamięci dynamicznych i statycznych
19
Podstawy Informatyki
Cechy pamięci
DRAM
SRAM
Szybkość mała duża
Pamięci
Koszt niski wysoki
Pojemność duża mała
Pobór mocy
mały duży
Łatwość scalania
duża mała
Konieczność
odświeżania
tak nie
Główne
zastosowanie
główna pamięć
operacyjna
pamięć
kieszeniowa
(cache)
20
Podstawy Informatyki
Pamięci
1.2.1 Łączenie układów pamięci
Projektowanie bloków pamięci polega na łączeniu wielu jednakowych układów
pamięci i zapewnieniu odpowiedniego sposobu ich wysterowania. Łączenie to ma na
celu zwiększenie pojemności pamięci. Można w tym miejscu wyróżnić przynajmniej dwa
przypadki:
- zwiększanie długości słowa przy niezmienionej ilości słów,
- zwiększanie ilości słów przy niezmienionej długości słowa.
21
Podstawy Informatyki
Oczywiście w praktyce często oba przypadki występują jednocześnie.
W celu zwiększenia długości słowa pamięci magistralę danych buduje się z linii
danych kolejnych układów pamięci, natomiast magistralę adresową i sygnały sterujące
łączymy równolegle. Połączenie równoległe wejść adresowych oznacza, że we
wszystkich układach, z których buduje się blok o większej długości słowa, wybiera się
Pamięci
słowa położone w takim samym miejscu. Sygnały sterujące aktywują wszystkie układy
przechowujące słowa składowe tworzące słowo o zwiększonej długości, zatem muszą
połączone równolegle sygnały E. Sygnały zapis lub odczyt łączy się również równolegle.
Przykład zwiększania długości słowa przedstawia rys. 1.4.
22
Podstawy Informatyki
Zwiększenie ilości słów pamięci oznacza zwiększenie ilości potrzebnych adresów,
a co za tym idzie - rozbudowę szyny adresowej o dodatkowe bity potrzebne do
uzyskania tych adresów. Przy niezmienionej długości słowa szyna danych pozostaje bez
zmian. Dodatkowe bity adresu służą, przy wykorzystaniu dekodera, do wyboru jednego z
łączonych układów pamięci, z którego odczytamy lub do którego zapiszemy informację.
Wyboru dokonujemy przy użyciu wejścia E uaktywniającego układy pamięci. Magistrale
adresowe, danych i sygnały sterujące układów, z których buduje się nowy blok pamięci,
łączy się równolegle.
Pamięci
Rys.1.4. Zwiększenie długości słowa pamięci
23
Podstawy Informatyki
Załóżmy, że mamy do dyspozycji układy pamięci 16 x 4b i chcemy zbudować blok
pamięci 64 x 4b. Do jego budowy musimy użyć czterech układów pamięci oraz
Pamięci
dekodera. Sposób ich połączenia pokazuje rys.1.5.
Rys.1.5. Zwiększanie ilości słów pamięci
24
Podstawy Informatyki
Bity A
4
i A
5
adresu, podawane na dekoder, uaktywniają dokładnie jedno z jego
Pamięci
czterech wyjść. Powoduje to z kolei uaktywnienie dokładnie jednego układu pamięci. W
ramach tego układu przy pomocy pozostałych bitów adresu wybiera się słowo, na
którym zostanie wykonana operacja zapisu bądź odczytu.
1.3. Pamięci ROM
25
Podstawy Informatyki
Pamięć ROM (Read Only Memorny) jest pamięcią nieulotną, przeznaczoną tylko do
odczytu. Nieulotność oznacza, że po wyłączeniu napięcia zasilania tej pamięci,
informacja w niej przechowywana nie jest tracona (zapominana). Określenie, że jest to
pamięć tytko do odczytu, nie jest równoznaczne z tym, że zawartości tej pamięci w
określonych warunkach nie można zmieniać. Dla niektórych typów technologicznych
pamięci ROM jest to możliwe. Określenie; oznacza, że do pamięci tej nie można
zapisywać danych w trakcie jej normalnej pracy w systemie.
Pamięci
Poniższy podział pamięci ROM oparty jest przede wszystkim na własnościach
użytkowych tych pamięci, choć niewątpliwie ma to związek z zasadą ich działania i
technologią wykonania. Niektóre z wymienionych typów pamięci ROM nie są już
używane, ale były pewnym, bardzo ważnym etapem w rozwoju tych pamięci.
Podstawowymi typami pamięci ROM są:
MROM (ang. mascable ROM) - pamięci, których zawartość jest ustalana w procesie
produkcji (przez wykonanie odpowiednich masek - stąd nazwa) i nie może być
zmieniana. Przy założeniu realizacji długich serii produkcyjnych jest to najtańszy rodzaj
pamięci ROM. W technice komputerowej dobrym przykładem zastosowania tego typu
pamięci jest BIOS obsługujący klawiaturę.
26
Podstawy Informatyki
PROM (programmable ROM) - pamięć jednokrotnie programowalna. Oznacza to, że
użytkownik może sam wprowadzić zawartość tej pamięci, jednakże potem nie można jej
Pamięci
już zmieniać. Cecha ta wynika z faktu, że programowanie tej pamięci polega na
nieodwracalnym niszczeniu niektórych połączeń wewnątrz niej. Obecnie ten typ pamięci
nie jest już używany.
EPROM - pamięć wielokrotnie programowalna, przy czym kasowanie poprzedniej
zawartości tej pamięci odbywa się drogą naświetlania promieniami UV. Programowanie i
kasowanie zawartości tej pamięci odbywa się poza systemem, w urządzeniach zwanych
odpowiednio kasownikami i programatorami pamięci EPROM. Pamięć ta wychodzi już z
użycia.
27
Podstawy Informatyki
EEPROM - pamięć kasowana i programowana na drodze czysto elektrycznej.
Istnieje możliwość wprowadzenia zawartości tego typu pamięci bez wymontowywania jej
z systemu, jeżeli oczywiście jego projektant przewidział taką opcję, choć czas zapisu
informacji jest nieporównywalnie dłuższy niż czas zapisu do pamięci RAM. W tego typu
Pamięci
28
Podstawy Informatyki
pamięci przechowywany jest tak zwany Flash-BIOS czyli oprogramowanie BIOS, które
może być uaktualniane (przez wprowadzanie jego nowej wersji).
Literatura
Literatura
[1] Małecki R., Arendt D., Bryszewski A., Krasiukianis R.: Wstęp do Informatyki. Skrypt P.Ł. Łódź, 1997
[2]
Kisielewicz A.: Wprowadzenie do informatyki. Helion, Gliwice 2002
[3]
Biernat J.: Architektura komputerów. Politechnika Wrocławska, Wrocław 2002
[4] http://pl.wikipedia.org/wiki/Chipset
[5] pl.wikipedia.org/wiki/PCI_Express
[6] pl.wikipedia.org/wiki/Magistrala_komunikacyjna
[7]
Misiurewicz P.: Systemy mikrokomputerowe.WsiP, Warszawa 1986
[8] http://ii.ap.siedlce.pl/~florek/sk/systemy_komputerowe_pliki/pamieci.html
29
Podstawy Informatyki