background image

Informatyka 1

Informatyka 1

Politechnika Białostocka 

Politechnika Białostocka -- Wydział Elektryczny

Wydział Elektryczny

Elektrotechnika, semestr II, studia stacjonarne I stopnia

Elektrotechnika, semestr II, studia stacjonarne I stopnia

Rok akademicki 2010/2011

Rok akademicki 2010/2011

Wykład nr 7 (04.04.2011)

Wykład nr 7 (04.04.2011)

dr inż. Jarosław Forenc

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

2/46

Plan wykładu nr 7

Plan wykładu nr 7

Architektura harwardzka

Architektura i organizacja systemu komputerowego

Struktura i funkcjonowanie komputera

procesor, rozkazy, przerwania

struktura połączeń, magistrala, DMA

struktura połączeń, magistrala, DMA

systemy pamięci komputerowych

hierarchia pamięci, pamięć podręczna

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

3/46

Architektura harwardzka

Architektura harwardzka

Architektura komputera, w której 

pamięć danych programu jest 

oddzielona od pamięci instrukcji

Nazwa architektury pochodzi komputera 

Harward Mark I

:

zaprojektowany przez Howarda Aikena

pamięć instrukcji - taśma dziurkowana, 

pamięć instrukcji - taśma dziurkowana, 
pamięć danych - elektromechaniczne liczniki   

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

4/46

Architektura harwardzka

Architektura harwardzka

Pamięci danych i instrukcji mogą różnić się: 

technologią wykonania

strukturą adresowania

długością słowa

Przykład:

ATmega16 - 16kB Flash, 1 kB SRAM, 512 B EEPROM

Przykład:

ATmega16 - 16kB Flash, 1 kB SRAM, 512 B EEPROM

Pamięć na instrukcje jest zazwyczaj większa niż pamięć na dane

Pamięć instrukcji i danych zajmują inną przestrzeń adresową

Procesor może w tym samym czasie czytać instrukcje oraz 
uzyskiwać dostęp do danych

Architektura ta jest szybsza od architektury von Neumanna

Stosowana w mikrokomputerach jednoukładowych, procesorach 
sygnałowych oraz przy dostępie procesora do pamięci podręcznej

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

5/46

Architektura harwardzka i von 

Architektura harwardzka i von Neumanna

Neumanna

W architekturze harwardzkiej pamięć instrukcji i pamięć danych:

zajmują różne przestrzenie adresowe

mają oddzielne szyny (magistrale) do procesora

zaimplementowane są w inny sposób

Procesor

Pamięć programu

(instrukcje programu)

Pamięć danych

(dane programu)

Magistrala danych

Magistrala instrukcji

Architektura von Neumanna

Architektura harwardzka

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

6/46

Zmodyfikowana architektura 

Zmodyfikowana architektura harwardzka

harwardzka

Zmodyfikowana architektura harwardzka

łączy w sobie cechy 

architektury harwardzkiej i architektury von Neumanna

W architekturze tej oddzielone są pamięci danych i rozkazów, 
lecz wykorzystują one wspólną magistralę danych i adresową

Architektura ta pozwala na dostęp do pamięci instrukcji tak jakby 
były to dane

Część pamięci instrukcji może zawierać stałe dane, np. łańcuchy 
znaków, które mogą być przesyłane 

bezpośrednio

do procesora 

z pominięciem pamięci na dane - zapewnia to oszczędność 
pamięci na dane

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

7/46

Architektura von Neumanna 

Architektura von Neumanna i harwardzka

i harwardzka

W obecnie stosowanych procesorach występują elementy obu 
architektur:

pamięć operacyjna (RAM) komputera jest to typowa architektura 
von Neumanna

pamięć podręczna (cache) podzielona jest na pamięć instrukcji 
i pamięć danych

i pamięć danych

Z punktu widzenia programisty posługujemy się architekturą 
von Neumana, zaś implementacje sprzętowe zawierają 
architekturę harwardzką

Stosowane obecnie mikrokontrolery są oparte na zmodyfikowanej 
architekturze harwardzkiej (AVR, ZiLOG Z8Encore!)

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

8/46

Architektura i organizacja systemu komputerowego

Architektura i organizacja systemu komputerowego

Przedstawienie struktury i zasady działania komputerów jest 
zagadnieniem dość skomplikowanym, gdyż:

istnieje ogromna różnorodność sprzętu komputerowego 
(od komputerów masywnie równoległych do komputerów PC)

technika komputerowa rozwija się bardzo szybko, ciągle pojawiają 

technika komputerowa rozwija się bardzo szybko, ciągle pojawiają 
się nowe technologie, interfejsy, standardy

komputer jest systemem złożonym z bardzo dużej liczby elementów 

Z powyższych powodów zazwyczaj przedstawia się 

hierarchiczną 

strukturę systemu komputerowego 

system hierarchiczny jest to układ wzajemnie powiązanych 
podsystemów, z których każdy ma również strukturę hierarchiczną

na każdym poziomie określana jest 

struktura składników systemu

(sposób ich wzajemnego powiązania) oraz 

funkcje składników 

systemu 

(działanie poszczególnych składników jako części struktury)

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

9/46

Architektura komputera a organizacja komputera

Architektura komputera a organizacja komputera

Architektura komputera

odnosi się do atrybutów systemu, które są widzialne dla programisty 
i mają bezpośredni wpływ na logiczne wykonywanie programu

do atrybutów architektury należą m.in. lista rozkazów, liczba bitów 
wykorzystywanych do prezentacji różnych typów danych, 
mechanizmy wejścia/wyjścia, metody adresowania pamięci  

mechanizmy wejścia/wyjścia, metody adresowania pamięci  

Organizacja komputera

odnosi się do jednostek operacyjnych i ich połączeń, które stanowią 
realizację specyfikacji typu architektury

atrybuty organizacyjne są to rozwiązania sprzętowe niewidzialne dla 
programisty, np. sygnały sterujące, interfejsy między komputerem 
a urządzeniami peryferyjnymi, wykorzystywana technologia pamięci

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

10/46

Funkcjonowanie komputera

Funkcjonowanie komputera

Funkcje realizowane przez komputer:

przetwarzanie danych

przechowywanie danych 

(krótkotrwałe lub długotrwałe)

przenoszenie danych

przenoszenie danych

(pomiędzy komputerem 
a światem zewnętrznym)

urządzenia peryferyjne
(proces wejścia-wyjścia)

duża odległość
(transmisja danych)

sterowanie 

(powyższymi funkcjami)

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

11/46

Struktura komputera

Struktura komputera

Komputer składa się z czterech głównych składników:

procesor 

(jednostka centralna, CPU) 

- steruje działaniem komputera 
i realizuje funkcje przetwarzania danych

pamięć główna

- przechowuje dane

pamięć główna

- przechowuje dane

wejście-wyjście

- przenosi dane 

między komputerem a jego 
otoczeniem zewnętrznym

połączenia systemu

- wszystkie 

mechanizmy zapewniające komunikację 
między jednostką centralną, pamięcią 
główną a wejściem-wyjściem

Wszystkie powyższe składniki mogą występować w komputerze 
pojedynczo lub w większej liczbie

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

12/46

Struktura procesora

Struktura procesora

Główne składniki strukturalne procesora to:

jednostka sterująca 

- steruje działaniem 

procesora i pośrednio całego komputera

jednostka arytmetyczno-logiczna

(ALU) 

- realizuje funkcję przetwarzania danych 

- realizuje funkcję przetwarzania danych 
przez komputer

rejestry

- realizują wewnętrzne 

przechowywanie danych w procesorze

połączenia procesora

- wszystkie 

mechanizmy zapewniające komunikację 
między jednostką sterującą, ALU 
i rejestrami

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

13/46

Działanie komputera 

Działanie komputera 

Podstawowe zadanie komputera to wykonywanie 

programu

Program składa się z 

rozkazów

przechowywanych w pamięci

Rozkazy są przetwarzane w dwu krokach: 

Cykl pobierania (ang. fetch):

Cykl pobierania (ang. fetch):

odczytanie rozkazu z pamięci

do śledzenia, który rozkaz ma 
być pobrany służy rejestr zwany 

licznikiem rozkazów 

(

PC

) lub 

wskaźnikiem instrukcji

(

IP

)

jeśli procesor nie otrzyma innego 
polecenia, to powoduje 
inkrementację licznika 

PC

po każdym pobraniu rozkazu 
i wykonuje następny rozkaz

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

14/46

Działanie komputera 

Działanie komputera 

Podstawowe zadanie komputera to wykonywanie 

programu

Program składa się z 

rozkazów

przechowywanych w pamięci

Rozkazy są przetwarzane w dwu krokach: 

Cykl wykonywania (ang. execution):

Cykl wykonywania (ang. execution):

może zawierać kilka operacji, 
jest zależny od natury rozkazu 

pobrany rozkaz jest ładowany 
do rejestru w procesorze 
zwanego rejestrem rozkazu (IR)

rozkaz ma formę kodu binarnego 
określającego działania, które ma 
podjąć procesor

procesor interpretuje rozkaz 
i przeprowadza wymagane działania

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

15/46

Działanie komputera 

Działanie komputera 

W celu przyspieszenia pracy systemu stosuje się tzw. 

wstępne 

pobranie instrukcji 

(ang. prefetching)

CP1

CW1

CP2

CW2

CP3

CW3

CP1

CW1

CP2

CW2

CP - cykl pobierania
CW - cykl wykonywania

prefeching

Działania procesora można podzielić na cztery grupy:

przesłanie danych z procesora do pamięci lub odwrotnie

przesłanie danych z procesora do modułu we-wy lub odwrotnie

operacje arytmetyczne lub logiczne na danych

sterowanie (np. zmiana sekwencji wykonywania programu)

Wykonywanie rozkazów może zawierać kombinacje powyższych 
działań

CP3

CW3

czas

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

16/46

Działanie komputera 

Działanie komputera 

Graf stanów cyklu wykonania rozkazu ma następującą postać:

(3) - analiza rozkazu w celu określenia rodzaju operacji, która ma być

wykonana oraz w celu określenia argumentu (jednego lub kilku)

(8) - zapisanie wyniku w pamięci lub skierowanie go do we/wy

Nie wszystkie stany z powyższego schematu muszą występować

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

17/46

Działanie komputera 

Działanie komputera 

Graf stanów cyklu wykonania rozkazu ma następującą postać:

Mogą wystąpić sytuacje, w których jeden rozkaz może określać 
operacje na wektorze liczb lub na szeregu znaków, co wymaga 
powtarzania operacji pobrania i/lub przechowywania

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

18/46

Działanie komputera 

Działanie komputera 

Każdy rozkaz przechowywany jest w postaci 

binarnej

, ma 

określony 

format

i używa określonego 

trybu adresowania

Format 

to sposób rozmieszczenia informacji w kodzie rozkazu

Rozkaz zawiera 

kod operacji

(rodzaj wykonywanej operacji) 

i argumenty (lub adresy argumentów) wykonywanych operacji

i argumenty (lub adresy argumentów) wykonywanych operacji

Tryb adresowania

jest to sposób określania miejsca 

przechowywania argumentów rozkazu (operandów):

natychmiastowe - argument znajduje się w kodzie rozkazu

bezpośrednie - adres argumentu znajduje się w kodzie rozkazu

rejestrowe - argument znajduje się w rejestrze

pośrednie - adres argumentu znajduje się w rejestrze

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

19/46

Działanie komputera 

Działanie komputera -- przerwania 

przerwania 

Wykonywanie kolejnych rozkazów przez procesor może być 
przerwane poprzez wystąpienie tzw. 

przerwania

Można wyróżnić kilka klas przerwań:

programowe 

- generowane po wystąpieniu błędu podczas 

wykonania rozkazu (np. dzielenie przez zero) 

wykonania rozkazu (np. dzielenie przez zero) 

zegarowe

- generowane przez wewnętrzny zegar procesora

we-wy 

- generowane przez sterownik we-wy w celu 

zasygnalizowania normalnego zakończenia operacji lub błędu

uszkodzenie sprzętu 

- generowane przez uszkodzenie, 

np. defekt zasilania, błąd parzystości pamięci 

Przerwania zostały zaimplementowane w celu poprawienia 
efektywności przetwarzania - procesor może wykonywać inne 
rozkazy, gdy jest realizowana operacja we-wy

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

20/46

Działanie komputera 

Działanie komputera -- przerwania 

przerwania 

Aby dostosować się do przerwań do cyklu rozkazu jest dodawany 
cykl przerwania:

Po sygnale przerwania procesor:

zawiesza wykonanie bieżącego 
programu i zachowuje jego 

programu i zachowuje jego 
kontekst

ustawia licznik programu na 
początkowy adres programu 
obsługi przerwania

wykonuje program obsługi 
przerwania

wznawia wykonywanie 
programu użytkowego

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

21/46

Działanie komputera 

Działanie komputera -- przerwania 

przerwania 

Jak działa przerwanie?

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

22/46

Działanie komputera 

Działanie komputera -- przerwania wielokrotne 

przerwania wielokrotne 

Podczas obsługi jednego przerwania może pojawić się sygnał 
kolejnego przerwania

Problem przerwań wielokrotnych rozwiązywany jest na dwa 
sposoby:

uniemożliwienie innych przerwań, 

uniemożliwienie innych przerwań, 
jeśli jakiekolwiek inne przerwanie 
jest przetwarzane

określenie priorytetów przerwań -
przerwanie o wyższym priorytecie 
powoduje przerwanie programu 
obsługi przerwania o niższym 
priorytecie 

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

23/46

Działanie komputera 

Działanie komputera -- struktura połączeń 

struktura połączeń 

Struktura połączeń jest to zbiór ścieżek łączących podstawowe 
moduły komputera, tj. procesor, pamięć i urządzenia we-wy

Pamięć: 

pamięć składa się z określonej 

pamięć składa się z określonej 
liczby słów o jednakowej długości

słowa umieszczone są pod 
konkretnymi adresami

słowo może być odczytane 
z pamięci lub do niej zapisane

typ operacji określają sygnały 
sterujące 

odczyt

zapis

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

24/46

Działanie komputera 

Działanie komputera -- struktura połączeń 

struktura połączeń 

Struktura połączeń jest to zbiór ścieżek łączących podstawowe 
moduły komputera, tj. procesor, pamięć i urządzenia we-wy

Procesor: 

odczytuje rozkazy i dane

odczytuje rozkazy i dane

wysyła dane po przetworzeniu

steruje pracą całego systemu 
poprzez sygnały sterujące

otrzymuje sygnały przerwań

Procesor

Rozkazy

Dane

Sygnały ster.

Dane

Sygnały przerw.

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

25/46

Działanie komputera 

Działanie komputera -- struktura połączeń 

struktura połączeń 

Struktura połączeń jest to zbiór ścieżek łączących podstawowe 
moduły komputera, tj. procesor, pamięć i urządzenia we-wy

Moduł wejścia-wyjścia: 

istnieją dwie operacje: 

Odczyt

Zapis

istnieją dwie operacje: 
zapis i odczyt

każdy z interfejsów z urządzeniem 
zewnętrznym określany jest 
portem i ma jednoznaczny adres

moduł może wysyłać sygnały 
przerwań do procesora  

Moduł
we/wy

Zapis

Adres

Dane wew.

Dane zew.

Dane wew.

Dane zew.

Sygnał przerw.

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

26/46

Działanie komputera 

Działanie komputera -- struktura połączeń 

struktura połączeń 

Struktura połączeń musi umożliwiać przesyłanie następujących 
danych:

DMA - bezpośredni dostęp do pamięci:

najczęściej procesor bezpośrednio 
odczytuje dane z pamięci i zapisuje 
oraz komunikuje się z urządzeniami we-wy

oraz komunikuje się z urządzeniami we-wy

w pewnych przypadkach pożądane jest 
umożliwienie bezpośredniej wymiany 
danych między we-wy a pamięcią

podczas takiego przesyłania moduł we-wy 
odczytuje lub zapisuje rozkazy w pamięci, 
uwalniając procesor od odpowiedzialności 
za tę wymianę

powyższe operacje nazywane są 
bezpośrednim dostępem do pamięci 
(ang. DMA - Direct Memory Access)  

D

an

e

D

an

e

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

27/46

Działanie komputera 

Działanie komputera -- magistrala 

magistrala 

Najczęściej stosowana struktura połączeń to 

magistrala

Magistrala jest wspólnym nośnikiem transmisji, do którego 
dołączonych jest wiele urządzeń, a sygnały wysyłane przez jedno 
z nich mogą być odbierane przez pozostałe urządzenia

Magistrala składa się z wielu linii komunikacyjnych, którym 
przypisane jest określone znaczenie i określona funkcja

Fizycznie magistrala jest zbiorem równoległych połączeń 
elektrycznych

System komputerowy zawiera pewną liczbę różnych magistrali

Magistrala łącząca główne zasoby komputera (procesor, pamięć, 
wejście-wyjście) nazywana jest 

magistralą systemową

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

28/46

Działanie komputera 

Działanie komputera -- magistrala 

magistrala 

Linie dzielą się na trzy grupy: linie danych, adresów i sterowania

Linie danych:

przenoszą dane między modułami systemu

wszystkie linie danych nazywane są 

szyną danych

liczba linii określa szerokość szyny danych (8, 16, 32, 64 bity)

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

29/46

Działanie komputera 

Działanie komputera -- magistrala 

magistrala 

Linie dzielą się na trzy grupy: linie danych, adresów i sterowania

Linie adresowe:

służą do określania źródła i miejsca przeznaczenia danych 
przesyłanych magistralą

liczba linii adresowych (szerokość szyny adresowej) określa 
maksymalną możliwą pojemność pamięci systemu

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

30/46

Działanie komputera 

Działanie komputera -- magistrala 

magistrala 

Linie dzielą się na trzy grupy: linie danych, adresów i sterowania

Linie sterowania:

służą do sterowania dostępem do linii danych i linii adresowych

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

31/46

Działanie komputera 

Działanie komputera -- struktury wielomagistralowe

struktury wielomagistralowe

W przypadku większej liczby urządzeń podłączonych do 
magistrali znacząco spada jej wydajność

Rozwiązaniem tego 
problemu są struktury 
wielomagistralowe 

wielomagistralowe 
o określonej hierarchii

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

32/46

Działanie komputera 

Działanie komputera -- typy magistral

typy magistral

ISA

(ang. Industry Standard Architecture)

1981 rok

8-bitowa (XT) i 16-bitowa (AT) szyna danych

24-bitowa szyna adresowa

teoretyczna przepustowość: 8 MB/s (praktycznie: 1,6-1,8 MB/s)

teoretyczna przepustowość: 8 MB/s (praktycznie: 1,6-1,8 MB/s)

PCI

(ang. Peripheral Component Interconnect)

Wersja

Rok

Szyna danych

Przepustowość

PCI 2.0

1993

32-bitowa

133 MB/s

PCI 2.1

1994

64-bitowa

528 MB/s

PCI 2.2

1999

64-bitowa

528 MB/s

PCI 2.3

2002

64-bitowa

528 MB/s

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

33/46

Działanie komputera 

Działanie komputera -- typy magistral

typy magistral

PCI-Express

(PCIe, PCI-E)

2004 rok 

magistrala lokalna typu szeregowego, łącząca dwa punkty

występuje w kilku wariantach: x1 (250 MB/s), x2 (500 MB/s), 
x4 (1000 MB/s), x8 (2000 MB/s), x16 (4000 MB/s), x32 
(8000 MB/s)

(8000 MB/s)

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

34/46

Systemy pamięci komputerowych

Systemy pamięci komputerowych

Ze względu na 

położenie

pamięci w stosunku do komputera 

wyróżniamy pamięć:

procesora (rejestry)

wewnętrzną (pamięć główna)

zewnętrzną (pamięć pomocnicza - pamięci dyskowe i taśmowe)

zewnętrzną (pamięć pomocnicza - pamięci dyskowe i taśmowe)

Parametry charakteryzujące pamięć:

pojemność

- maksymalna liczba informacji jaką można 

przechowywać w danej pamięci

czas dostępu

- czas niezbędny do zrealizowania operacji 

odczytu lub zapisu

czas cyklu pamięci

- czas dostępu plus dodatkowy czas, który musi 

upłynąć zanim będzie mógł nastąpić kolejny dostęp 

szybkość przesyłania (transferu) -

maksymalna liczba danych jakie 

można odczytać z pamięci lub zapisać do pamięci w jednostce czasu

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

35/46

Systemy pamięci komputerowych

Systemy pamięci komputerowych

Ze względu na 

sposób dostępu

do danych wyróżniamy:

dostęp sekwencyjny (pamięci taśmowe)

dostęp bezpośredni (pamięci dyskowe)

dostęp swobodny (pamięć główna)

dostęp skojarzeniowy (pamięć podręczna)

dostęp skojarzeniowy (pamięć podręczna)

Dostęp sekwencyjny:

jednostka danych to rekord

dostęp do rekordów jest możliwy w określonej sekwencji liniowej

przejście z jednego rekordu do następnego następuje poprzez 
przepuszczenie i odrzucenie rekordów pośrednich

czas dostępu do różnych rekordów może bardzo różnić się  

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

36/46

Systemy pamięci komputerowych

Systemy pamięci komputerowych

Dostęp bezpośredni:

odczyt i zapis realizowany jest za pomocą tego samego mechanizmu

poszczególne bloki (rekordy) mają unikatowy adres oparty na 
fizycznej lokacji

dostęp jest realizowany przez bezpośredni dostęp do najbliższego 

dostęp jest realizowany przez bezpośredni dostęp do najbliższego 
otoczenia, po którym następuje sekwencyjne poszukiwanie, liczenie 
lub oczekiwanie w celu osiągnięcia lokacji finalnej

Dostęp swobodny:

każda adresowalna lokacja w pamięci ma unikatowy fizycznie 
wbudowany mechanizm adresowania

czas dostępu jest stały i niezależny od poprzednich operacji dostępu

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

37/46

Systemy pamięci komputerowych

Systemy pamięci komputerowych

Dostęp skojarzeniowy:

każda lokacja ma własny mechanizm adresowania

czas dostępu jest stały i niezależny od poprzednich operacji dostępu

słowa są wprowadzane na podstawie części swojej zawartości, a nie 
na podstawie całego adresu

na podstawie całego adresu

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

38/46

Hierarchia pamięci

Hierarchia pamięci

Istnieją wzajemne zależności pomiędzy parametrami pamięci: 
kosztem, pojemnością i czasem dostępu:

mniejszy czas dostępu - większy koszt na bit 

większa pojemność - mniejszy koszt na bit

większa pojemność - dłuższy czas dostępu

W systemach komputerowych nie stosuje się jednego typu 
pamięci, ale 

hierarchię pamięci

Rozpatrując hierarchię od góry 
do dołu obserwujemy zjawiska:

malejący koszt na bit

rosnącą pojemność

rosnący czas dostępu

malejącą częstotliwość dostępu 
do pamięci przez procesor 

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

39/46

Półprzewodnikowa pamięć główna

Półprzewodnikowa pamięć główna

RAM (Random Access Memory) - pamięć o dostępie swobodnym

odczyt i zapis następuje za pomocą sygnałów elektrycznych

pamięć ulotna - po odłączeniu zasilania dane są tracone

DRAM:

przechowuje dane podobnie jak kondensator ładunek elektryczny

przechowuje dane podobnie jak kondensator ładunek elektryczny

wymaga operacji odświeżania

jest mniejsza, gęściej upakowana i tańsza niż pamięć statyczna

stosowana jest do budowy głównej pamięci operacyjnej komputera

SRAM:

przechowuje dane za pomocą przerzutnikowych konfiguracji bramek 
logicznych

nie wymaga operacji odświeżania

jest szybsza i droższa od pamięci dynamicznej

stosowana jest do budowy pamięci podręcznej

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

40/46

Półprzewodnikowa pamięć główna

Półprzewodnikowa pamięć główna

ROM

(ang. Read-Only Memory) - pamięć stała

pamięć o dostępie swobodnym przeznaczona tylko do odczytu

dane są zapisywane podczas procesu wytwarzania

pamięć nieulotna

PROM

(ang. Programmable ROM) - programowalna pamięć ROM

PROM

(ang. Programmable ROM) - programowalna pamięć ROM

pamięć nieulotna, może być zapisywana tylko jeden raz

zapis jest realizowany elektrycznie po wyprodukowaniu

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

41/46

Półprzewodnikowa pamięć główna

Półprzewodnikowa pamięć główna

Inne typy pamięci:

EPROM

- pamięć wielokrotnie programowalna, kasowanie następuje 

przez naświetlanie promieniami UV

EEPROM

- pamięć kasowana i programowana na drodze czysto 

elektrycznej

Flash

- rozwinięcie koncepcji pamięci EEPROM, możliwe kasowanie 

i programowanie bez wymontowywania pamięci z urządzenia, 
występuje w dwóch odmianach: 

NOR (Flash BIOS)

NAND (pen drive, karty pamięci) 

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

42/46

Pamięć podręczna

Pamięć podręczna

Zastosowanie pamięci podręcznej ma na celu przyspieszenie 
dostępu procesora do pamięci głównej

W systemie komputerowym występuje względnie duża i wolniejsza 
pamięć główna oraz mniejsza i szybsza pamięć podręczna

pamięć podręczna zawiera kopię części 

pamięć podręczna zawiera kopię części 
zawartości pamięci głównej

przed odczytaniem słowa z pamięci 
następuje sprawdzenie czy znajduje się 
ono w pamięci podręcznej

jeśli tak, to jest przesyłane do procesora

jeśli nie, to blok pamięci głównej 
(ustalona liczba słów) jest wczytywany 
do pamięci podręcznej, a następnie słowo
jest przesyłane do procesora

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

43/46

Pamięć podręczna

Pamięć podręczna

Do pamięci podręcznej jest przesyłany cały blok, gdyż ze względu 
na tzw. zjawisko lokalności odniesień, istnieje duże 
prawdopodobieństwo, że przyszłe odniesienia będą dotyczyły 
innych słów w tym samym bloku

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

44/46

Pamięć podręczna

Pamięć podręczna

Porównanie różnych typów pamięci

Level

Level

Access Time

Access Time

Typical

Typical Size

Size

Technology

Technology

Managed

Managed By

By

Registers

1-3 ns

~1 KB

Custom CMOS

Compiler

Level 1 Cache

źródło:  

http://arstechnica.com/old/content/2002/07/caching.ars/2

Level 1 Cache

(on-chip)

2-8 ns

8 KB-128 KB

SRAM

Hardware

Level 2 Cache

(off-chip)

5-12 ns

0.5 MB - 8 MB

SRAM

Hardware

Main Memory

10-60 ns

64 MB - 1 GB

DRAM

Operating

System

Hard Disk

3,000,000 -

10,000,000 ns

20 - 100 GB

Magnetic

Operating

System/User

background image

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

45/46

Pamięć zewnętrzna

Pamięć zewnętrzna

Do pamięci zewnętrznych zaliczane są: 

dyski twarde - HDD

pamięci optyczne - CD, DVD

magnetyczne pamięci taśmowe

Budowa dysku twardego:

nośnik danych

część mechaniczna

kontroler 

Informatyka 1, studia stacjonarne I stopnia

dr inż. Jarosław Forenc 

Rok akademicki 2010/2011, Wykład nr 7

46/46

Koniec wykładu nr 7

Koniec wykładu nr 7

Dziękuję za uwagę!

Dziękuję za uwagę!

Dziękuję za uwagę!

Dziękuję za uwagę!