PODSTAWY INFORMATYKI
dr inż. Krzysztof Małecki
Magistrala
Procesor Pamięć Układy I/O
PAMIĆ
... ... ...
300
ADRES 125 126 127 128 129 130 289 290 291 292 293 294 295 296 297 298 299
Pamięci półprzewodnikowe
Cyfrowe układy scalone przeznaczone do
przechowywania dużej ilości informacji
w postaci binarnej.
1
10011101
10101101
10101101
10101101
10000001
10101101
10101101
10101101
10101101
10101101
10101101
10101101
10101101
10101101
10101101
10101101
10101101
10101101
Podstawowe parametry
Pojemność
Maksymalna ilość informacji jaką możemy przechować w danej pamięci
podawana w bitach(b) lub bajtach(B).
najbardziej najmniej
znaczący bit znaczący bit
8 bitów = 1 bajt
210 bajtów = 1 kB
1024 bajty = 1 kB
220 bajtów = 1 MB
1 048 576 bajty = 1 MB
230 bajtów = 1 GB
1 073 741 824 bajty = 1 GB
Czas dostępu
Czas jaki musi upłynąć od momentu podania adresu słowa w
pamięci do czasu ustalenia się poprawnej wartości tego słowa na
wyjściu pamięci (odczyt), lub czas jaki upłynie do momentu
zapisania wartości pochodzącej z wejścia.
Rodzaj dostępu
Sekwencyjne Dostęp swobodny
Czas dostępu nie zależy od
Pamięci taśmowe
adresu słowa w pamięci, czyli
głowica
od miejsca, w którym jest
przechowywana informacja.
2
RAM (Random Access Memory)
Pamięć
operacyjna
program dane
" Pamięć
półprzewodnikowa
o dostępie swobodnym przeznaczona do zapisu i odczytu.
" Pamięć ulotna (brak zasilania powoduje utratę
przechowywanych informacji).
" W pamięci RAM przechowywane są aktualnie
wykonywane programy lub dane początkowe dla tych
programów oraz wyniki ich pracy.
" RAM jest stosowany między innymi jako pamięć
operacyjna komputera (montowany do gniazd na płycie
głównej), jako pamięć niektórych komponentów
komputera (np. kart graficznych, dzwiękowych, itp.) oraz w
wielu innych zastosowaniach - np. w programatorze pralki
automatycznej.
ROM (Read Only Memory)
" Pamięć półprzewodnikowa o dostępie
swobodnym przeznaczona tylko do odczytu.
" Pamięć nieulotna. Zawiera stałe dane potrzebne
w pracy urządzenia - np. procedury startowe
komputera (inicjujące pracę komputera).
" W normalnym cyklu pracy urządzenia pamięć ta
może być tylko odczytywana, zapis do pamięci
dokonywany jest w zależności od rodzaju
pamięci.
3
ROM (Read Only Memory)
MROM (Mascable ROM)
" Zawartość ustalona w procesie produkcji przez nanoszenie
odpowiednich masek. Najtańszy rodzaj ROM (BIOS
klawiatury).
PROM (Programmable ROM)
" Pamięć jednokrotnie programowana przez użytkownika.
Nieodwracalna zmiana, zawartość ustalona w procesie
programowania (nie jest już używana).
EPROM (Elecrically Programmable ROM)
" Pamięć wielokrotnie programowalna. Kasowanie
promieniami UV. Programowanie w specjalnych
programatorach.
ROM (Read Only Memory)
EEPROM (Erasable Electrically Programmable ROM)
" Pamięć wielokrotnie programowalna. Kasowanie i
programowanie na drodze czysto elektrycznej. Zapis do
takiej pamięci (programowanie) nieporównywalnie dłuższy
niż do RAM. Zastosowana w oprogramowaniu BIOS-u,
które może być uaktualniane (Flash-BIOS).
Flash EEPROM
" pozwala na zapisywanie lub kasowanie wielu komórek
pamięci podczas jednej operacji programowania.
NVRAM (Non Volatile RAM)
" Krzyżówka EEPROM z pamięciami statycznymi (parametry
konfiguracyjne urządzeń).
4
Flash EEPROM
" Produkowana w dwóch wersjach: NOR i NAND.
" 1988r. pierwsze opracowanie pamięci NOR w
firmie Intel.
długie czasy zapisu i kasowania.
10 000 do 100 000 cykli kasowania.
w pierwszych wersjach kart pamięci CF, pózniej
zaczęto w nich stosować tańsze pamięci NAND.
Flash EEPROM
" 1989r. Samsung i Toshiba: pamięci NAND.
krótszy czas zapisu i kasowania, większa gęstość
upakowania danych, lepszy współczynnik
koszt/pojemność oraz 10-krotnie większa
wytrzymałość.
wada: sekwencyjny dostęp do danych, co czyni ją
użyteczną jako pamięć masowa, lecz bezużyteczną
jako pamięć komputera.
pierwszą kartą pamięci używającą pamięci NAND była
karta SmartMedia, pózniej zaczęto ich używać w
innych typach, jak: Secure Digital, Memory Stick i xD-
Picture Cards, dyski USB.
5
Organizacja pamięci
n
Wprowadzanie i
wyprowadzanie
Szyna danych DB
informacji do i z
pamięci m
Szyna adresowa AB
PAMIĆ
R/W#
Dokonywanie wyboru
CS#
na którym słowie
dokonujemy operacji
Rodzaj operacji
R - czytanie
W - zapis
Uaktywnienie
układu pamięci
Adres
Niepowtarzalna liczba (numer) przypisana danemu miejscu (słowu) w pamięci
w celu jego identyfikacji.
Słowo
Zestaw pojedynczych komórek pamięci, do którego odwołujemy się
pojedynczym adresem
16 bitów
Długość słowa
Ilość bitów w pojedynczym
1 1 0 1 1 0 0 0 1 0 1 0 0 1 0 1
słowie
16
PAMIĆ
m
Długość słowa = ilość wyprowadzeń szyny danych
N - liczba słów przechowywanych w pamięci
m - liczba linii szyny adresowej
N = 2 m
Aby zaadresować N słów potrzeba linii szyny adresowej
m = log2 N
M - pojemność pamięci
n - długość słowa
.
M = n N = n .2m
6
Różne organizacje pamięci
D0 A4 A3 A2 A1 A0 D7 D6 D5 D4 D3 D2 D1 D0 A1 A0
Organizacja bitowa Organizacja bajtowa
32 x 1b 4 x 1B
Aączenie układów pamięci
" Zwiększanie długości słowa przy niezmienionej ilości słów
" Zwiększenie ilości słów przy niezmienionej długości słowa
Zwiększanie długości słowa przy niezmienionej ilości słów
Dwa układy 1M x 4b = 4Mb
1M x 8b
D7 D6 D5 D4 D3 D2 D1 D0
20
ADRES D0
D1
CS# CS#
D2
R/W# R/W#
D3
D0
D1
CS#
D2
R/W#
D3
7
Zwiększenie ilości słów przy niezmienionej długości słowa
Cztery układy 256k x 4b = 1Mb
1M x 4b = 4Mb
4
D3 - D0
256k x 4b 256k x 4b 256k x 4b 256k x 4b
CS# R/W# CS# R/W# CS# R/W# CS# R/W#
Dekoder
18
R/W#
A19 A18 A17 - A0
Technologia wykonania
Statyczna SRAM Dynamiczna DRAM
tańsza
droga
wolniejsza
szybka
duże pojemności
gorsza do scalenia
wymaga odświeżania
Static RAM
Dynamic RAM
Asynchronous SRAM
Synchronous SRAM
8.5 ns - 12 ns
Burst SRAM
4.5 ns - 8 ns
Pipelined burst SRAM
8
Pamięć dynamiczna
DRAM
Płat pamięciowy
Budowa pojedynczej
komórki pamięci
RZD (Row)
wiersz
Pojedynczy płat
(organizacja)
kolumna
X x Y x 1bit
KOLUMNA (Column)
Liczba płatów = szerokość szyny danych
Adres
Dane
RAS Row Adress Select
RAS #
CAS Column Adress Select
DRAM
CAS#
WE Write Enable
WE#
OE Output Enable
OE# CE Chip Enable
CE#
Sposób adresowania słowa w pamięci DRAM
Rejestr
Wejście
zatrzaskowy
Dekoder
adresowe
adresu
wierszy
wiersza
RAS#
Dekoder
kolumn
Rejestr
zatrzaskowy
adresu
kolumny
CAS#
9
Odczyt z pamięci DRAM PM -Page Mode
tc - czas między cyklami
ta - czas dostępu
tD RAS-CAS
RAS
CAS
Wejście
Adres wiersza Adres kolumny Adres wiersza
adresowe
pamięci
S
OE
Wyjścia
Dane
danych
FPM - Fast Page Mode
" Adres wiersza przekazywany do pamięci tylko 1 raz na 4
cykle dostępu. Pozostałe cykle mają ten sam adres
wiersza a zmienia się adres kolumny
X-X-X-X
Pozostałe cykle
Czas trwania
pierwszego cyklu
Wymiana
danych w
RAS
porcjach po kilka
CAS
bajtów
równocześnie
ADR
Row-1 Col -1 Col -2 Col -3 Col -4
odczyt
WE
zapis
D.Out D.Out D.Out D.Out
DATA
R1-C1 R1-C2 R1-C3 R1-C4
10
EDO - Extended Data Out
" Cykl dostępu do pamięci może się rozpocząć przed
zakończeniem cyklu poprzedniego.
" Dane na wyjściu utrzymywane dłużej niż w PM i FPM.
RAS
5-2-2-2
CAS
ADR
Row-1 Col -1 Col -2 Col -3 Col -4 Row-2
WE
DATA D.Out D.Out D.Out D.Out
R1-C1 R1-C2 R1-C3 R1-C4
BEDO - Burst EDO
5-1-1-1
" uproszczony sposób adresowania.
" adres przekazywany raz na poczwórny cykl i odnosi się do początku obszaru.
" pozostałe adresy są generowane we wnętrzu układu.
SDRAM (Synchroniczne DRAM)
Ta sama matryca komórek
Głównie dostęp sekwencyjny
Inny sposób sterowania
Układy odświeżania zamknięte wewnątrz pamięci
Inna technika dostępu
Dostęp podobnie jak w BEDO 5-1-1-1
Różnica uwidacznia się przy wzroście częst. PC-100 , PC133
DDR-SDRAM Double Data Rate
W każdym takcie zegara przekazywane dwa słowa danych
Standard propagowany jako otwarty brak opłat licencyjnych
Konstrukcja wewnętrznych chipów zbliżona do budowy pamięci SDRAM
DDR2 SDRAM VC-SDRAM
RDRAM HSDRAM
11
Oznaczenie Nazwa Efektywny zegar Szyna danych Przepustowość
PC66 SDRAM 66 MHz 64 bity 0.5 GB/s
PC100 SDRAM 100 MHz 64 bity 0.8 GB/s
SDRAM
PC133 SDRAM 133 MHz 64 bity 1.06 GB/s
PC1600 DDR200 100 MHz 64 bity 1.6 GB/s
PC1600 DDR200 Dual 100 MHz 2 x 64 bity 3.2 GB/s
PC2100 DDR266 133 MHz 64 bity 2.1 GB/s
PC2100 DDR266 Dual 133 MHz 2 x 64 bity 4.2 GB/s
PC2700 DDR333 166 MHz 64 bity 2.7 GB/s
DDR
PC2700 DDR333 Dual 166 MHz 2 x 64 bity 5.4 GB/s
PC3200 DDR400 200 MHz 64 bity 3.2 GB/s
PC3200 DDR400 Dual 200 MHz 2 x 64 bity 6.4 GB/s
PC4200 DDR533 266 MHz 64 bity 4.2 GB/s
PC4200 DDR533 Dual 266 MHz 2 x 64 bity 8.4 GB/s
PC800 RDRAM 400 MHz 2 x 16 bitów 3.2 GB/s
PC1066 RDRAM 533 MHz 2 x 16 bitów 4.2 GB/s
PC1200 RDRAM 600 MHz 2 x 16 bitów 4.8 GB/s
RDRAM
PC800 RDRAM 400 MHz 2 x 32 bity 6.4 GB/s
PC1066 RDRAM 533 MHz 2 x 32 bity 8.4 GB/s
PC1200 RDRAM 600 MHz 2 x 32 bity 9.6 GB/s
Dostęp do pamięci
" Od modelu 8088 do 80186 magistrala adresowa 20-bitowa
" 80286 magistrala adresowa 24-bitowa, pokrycie przestrzeni 16 MB (224)
" 80386DX magistrala adresowa 32-bitowa, pokrycie 4 GB (232)
" Pentium Pro, Pentium III magistrala adresowa 36-bitowa
" Obecnie magistrala adresowa 40-bitowa, adresowanie 1 TB (240)
220 = 1048576 kombinacji (adresów) 1048576 bajtów = 1MB
segment offset
1000110011101001 1000110011101001
Dwa 16-bitowe rejestry
Adres fizyczny = 16 * segment +offset
segment
1000110011101001
0000
Adres logiczny: para rejestrów Segment i Offset
offset
0000111011111011
+
Adres fizyczny
12
segment offset
1000110011101001 1000110011101001
liczba
Początek segmentu x 16
odległość
Adres fizyczny
Maksymalnie 65536 bajtów czyli 64 kB
Offset - adres efektywny
Procesor zaopatrzony jest w rejestry segmentowe: pamięć
CS - rejestr segmentowy programu
DS - rejestr segmentowy danych
SS - rejestr segmentowy stosu
64 kB
procesor
kod programu
CD
DS
SS
64 kB
dane
CS = 1001001011101001
DS = 1101001011101101
Program 1
Program 1
SS = 1000000010001100
CS = 1011001111111111
stos
DS = 0001001011101101
Program 2
Program 2
64 kB
SS = 1111000010001100
CS = 1111001011101001
DS = 0001001011101101
Program 3
Program 3
SS = 1001111010001100
13
Tryb rzeczywisty pracy procesora (Real Mode)
Wady :
- program o rozmiarze max 64 kB
- dwa różne adresy logiczne mogą wskazywać na ten sam adres fizyczny
- segmenty mogą na siebie zachodzić a nawet się pokrywać
- brak mechanizmów ochrony (utrudniona wielozadaniowość)
Tryb chroniony pracy procesora (Protected Mode)
- Ochrona poszczególnych zadań pracujących pod kontrolą wielozadaniowego
systemu operacyjnego
- Czteropoziomowy system uprawnień
Microsoft Office Flash MX Adobe Photoshop Media Player
Wielozadaniowość (multitasking)
Microsoft Office Flash MX Adobe Photoshop Media Player
procesor
Każdemu (procesowi ) przyporządkowany jest kwant czasu. Im jest on
dłuższy tym więcej czasu poświęca procesor na wykonywanie tego
procesu (posiada on wyższy priorytet). W wielu systemach można
zmieniać ten priorytet przydzielając procesom różną moc obliczeniową
procesora.
14
SEGMENTACJA
REJESTR SEGMENTOWY 16-bitowy REJESTR OFFSETOWY 32-bitowy
2 bity - prawa dostępu do segmentu (4 poz.)
13 bitów
Wskaznik do tablicy 1 bit - rodzaj tablicy (lokalna globalna)
Segment Descriptor <
8 BAJTÓW
= 64 bity 20 bitów 32 bity adres 12 bitów
rozmiar segmentu bazowy segmentu granulacja i reszta
BAD
220 = 1 MB 1 B
220 . 212 = 232 = 4GB 4 kB
+
214 = 16384
Deskryptor segmentu
zawiera inf. na temat
ADRES LINIOWY 32-bitowy
lokalizacji i rozmiaru
segmentu
214 . 232 = 64TB
Nie jest możliwe wykonanie tak
wielkiej pamięci operacyjnej
> koszty
> sterowanie Nośnik magnetyczny
RAM
(pamięć masowa)
pamięć operacyjna
> zasilanie
Winamp Winamp Winamp
PAMIĆ
Corel Draw Corel Draw MS Word
program dane MS Word
> za duże segmenty
> za dużo do przerzucania między pam. operacyjną a masową
> niewykorzystane fragmenty pamięci (fragmentacja zewnętrzna)
15
...
Tryb wirtualny pracy procesora (Virtual Mode)
10 bitów 10 bitów 12 bitów
STRONICOWANIE
2 3
RAMKA NR 6
KATALOG STRON
6 4 kB
4
0
24
1
2
1
7
4 kB
3
123
8
4 kB
0 1 2
TABLICA STRON
9 4 kB
221 8 221
0 0 0
24 24 24
1 1 1 10 4 kB
...
2 2 2
45 12 45
3 3 3
65 7 65
Pamięć fizyczna
PRZESTRZEC ADRESÓW
WIRTUALNYCH
PAMIĆ OPERACYJNA
ADRES WIRTUALNY
RAMKA 0
STRONA OFFSET
A W NIEJ STRONA 0
STRONA 1
RAMKA 1
STRONA 1
PUSTA
RAMKA 2
Nr ramki
A W NIEJ STRONA 2
STRONA 0
RAMKA 3
A W NIEJ STRONA 3
STRONA 5
RAMKA 4
STRONA 4
PUSTA
RAMKA 5
STRONA 5
PUSTA
STRONA 6
Adres fizyczny = Nr ramki * 4kB + Offset
16
...
...
...
...
...
...
...
...
...
Tworzenie adresu fizycznego
Adres logiczny
logiczny
SEGMENTACJA
Adres liniowy Adres fizyczny
liniowy Adres
STRONICOWANIE
Adres fizyczny
fizyczny
Coraz wyższe prędkości pracy procesorów wymagają
zwiększenia prędkości działania układów pamięciowych.
Ograniczenia:
Procesor musi czekać coraz dłużej na kolejną porcję danych
> cena
> technologia
PAMIĆ PODRCZNA (CACHE)
Pamięć
CACHE PROCESOR
operacyjna
Duża, tania,
Mała szybka
wolna:
i nie tak bardzo droga
dziesiątki ns
kilka ns
CACHE
PROCESOR
L1 L2 L3
L1
Badania dowiodły, iż większość odwołań do
pamięci mieści się w bloku 16 kb.
17
Różne topologie
Look-Aside
CPU
X86 do Pentium MMX
L1 w procesorze (taktowana tym samym zegarem)
CACHE
L2 dołączona równolegle do magistrali
Częstotliwość Cache i RAM taka sama
RAM
Krótszy czas dostępu
Look-Through (Inline Cache)
CPU CACHE RAM
Dwie magistrale
Inna częstotliwość dla Cache i RAM
Różne topologie cd.
Backside
BSB - Back Side Bus
CPU CACHE
FSB - Front Side Bus
Najnowsze architektury
BSB niezależna magistrala
RAM
Kompromis między szybkością a pojemnością L2
18
Organizacja pamięci podręcznej
" Cache zorganizowana w Cache Lines o rozmiarach 16 lub 32 bajty
(najmniejsza porcja informacji wymieniana z RAM).
" Dla Cache RAM jest zbiorem linijek pogrupowanych w zespoły
zwane stronami
" TAG-RAM - katalog pamięci podręcznej, które linijki z RAM są w
Cache u
Linijka
(Cache Lines)
16 lub 32 bajty
Strona
Mapowanie bezpośrednie (Direct Mapped)
Strona 0 Strona 1 Strona 2 Strona 3 Pamięć główna
Strona 3 Pamięć podręczna
" Rozmiar bloku pamięci podręcznej równy jest rozmiarowi strony
" Prosta konstrukcja i duża szybkość odszukiwania informacji
" Brak elastyczności przy skokach poza granice stron
19
Pełna asocjacja (Fully Associative)
1 2 3 4 5
Pamięć główna
3 4 9 7 8 9 1 2
Pamięć podręczna
" Operuje się wyłącznie linijkami (brak symbolicznego podziału na strony)
" Odszukanie informacji w Cache u wymaga przeszukania całej tablicy
TRAM
" Rozwiązanie dla Cache u mniejszego od 4KB
Asocjacja zespołowa (Set Associative)
Strona 0 Strona 1 Strona 2 Strona 3 Pamięć główna
Kanał 0 Kanał 1 Pamięć podręczna
" Podział pamięci podręcznej na równe porcje (2, 4 lub 8 kanałów)
" Rozmiar strony w RAM jest równy rozmiarowi kanału w Cache
" Układ 8-kanałowy w procesorach Pentium 4
Cache Hit - trafienie - obecność danych w pamięci podręcznej
Cache Miss - brak trafienia - uruchamiana jest magistrala pamięciowa
i sprowadzana jest nowa linijka
20
Koniec
21
Wyszukiwarka
Podobne podstrony:
PIW07 W08 SCRWyklad PI 5W07 08 WYKLADY TIORB 2007 MECHANIZACJA CALOSC z rysunkami0708z sk zlm w07Tosnuc 777 Tosh [PI] NCQ42 16Fund w07Gazownictwo w07ti w07Zimniak Pi=3,13Gotowe pi Euler2QUARTER PIwięcej podobnych podstron