Układy cyfrowe
• Działanie układów cyfrowych oparte jest
na wykorzystaniu dwóch stanów niskiego
(L-low) i wysokiego (H-high). Duża część
tej informacji to liczby, stąd przyjęło się
nazywać te stany jedynką i zerem.
Możemy więc stwierdzić że wszelka infor.
w komp. musi występować w postaci 0 i 1-
binarnej. Przy użyciu tych stanów musimy
przedstawić wszystkie rodzaje informacji
występujących w układach cyfrowych.
W tym celu stosowane są odpowiednie
struktury:
• dwójkowy system liczbowy oraz
• kody - reprezentują informacje w
układach cyfrowych.
Więc potrzebne są reguły przekształcania
różnych postaci informacji na inf. binarną.
Proces przekształcania inf. jednego
rodzaju postaci na inną postać nazywamy
kodowaniem.
Def.
Kodowaniem
nazywamy
przyporządkowanie poszczególnym
obiektom zbioru kodowanego
odpowiadających im elementów zwanych
słowami kodowanymi, przy czym
każdemu słowu kodowanemu musi
odpowiadać dokładnie jeden element
kodowany.
A
B
C
111
010
100
001
Zbór
(obiektów)
elementów
kodowanych
Zbór słów
kodowanych
reprezentowanie
Fakt Ze literze C odpowiadają
dwa słowa kodowe nie przeszkadza
w poprawnym przetwarzaniu inf. (choć
stanowi pewne utrudnienie procesu
Kodowania. Sytuacja odwrotna była by
Niedopuszczalna, bo gdybyśmy uzyskali
w procesie przetwarzania inf. słowo
kodowe 001 to nie wiedzieli byśmy czy
wynik odpowiada np. literze A czy B.
Sposoby określania kodu, czyli procesu
kodowania może być różny. Może to być
opis słowny (tekst) ciąg znaków, wzór,
tabela przekodowująca lub każdy inny
sposób zgodny z definicją.
Informacja kodowana – postacie:
1. Tekst (ciąg znaków)
2. Polecenia do wykonania przez komputer
(instrukcje dla procesora)
3. Wartości logiczne czy też liczby
Def. Kodem liczbowym nazywamy taki
kod, który liczbom dowolnego systemu
będzie przyporządkowywał słowa kodowe
w postaci zerojedynkowej.
• Naturalny Kod Binarny (NKB)
Def. Jeżeli dowolnej liczbie dziesiętnej
przyporządkujemy odpowiadającą jej
liczbe binarną, to otrzymamy NKB np.
0000(bin)=0(dec), 0001=1 itd.
• Kod prosty (BCD)
1. każdej cyfrze dziesiętnej przyporząd.
cztero cyfrową liczbę dwójkową (tetradę)
2. Słowo kodowe w kodzie prostym BCD
odpowiadającej danej liczbie otrzymujemy
zapisując każdą cyfrę w postaci czwórki cyfr
binarnych np. 463(dec)=0100 0110
0011(BCD)
• Kod ASCII (Amerykański standardowy kod
dla wymiany informacji)
Jest to kod służący do kodowania tekstów i
przesyłania ich pomiędzy urządzeniami.
Koduje on oprócz znaków alfa numerycznych
tak zwane znaki sterujące do sterowania
transmisją i pracą drukarki. Kod ten jest w
postaci tabeli zawierającej kodowane obiekty
i odpowiadające im słowa kodowane.
Znaki w PC jak i większości komputerów
zapisane są jednym Bajtem, co oznacza że
może ich być aż 256
.
Właściwe ASCII (techniczne) składa się z 128 znaków
od 0 do 127, a znaki od 128 do 255 nazywane są
rozszerzonymi znakami ASCII, stanowią pewien
Nieoficjalny standard, zwane znakami IBM (istnieją
urządzenia nie obsługujące drugiej polówki)
Zestaw znaków ASCII o kodach od 0 do 127 dzieli
się na dwie części pierwsza o kodach od 0 do 32,
druga od 32 do 127 są to litery i znaki przestankowe
Od 0 do 32 znajdują się znaki sterujące, maja
specjalne znaczenie, kiedy komp. porozumiewa się
Z drukarką musi jej powiedzieć co i jak ma
wydrukować (kiedy kończy się wiersz, a kiedy strona)
Pierwsze 32 kody nie są używane do
przekazywania danych, zapewniają
natomiast polecenia, sygnały kontrolne i
sterujące.
Podstawowe układy cyfrowe
1. Bramki logiczne
2.
3. Przerzutniki
4. Rejestry
5. Bramki trójstanowe
6. Magistrala
7. Jednostka arytmetyczno-logiczna (ALU)
8. Dekodery kodery piorytetu
9. liczniki
Bramki logiczne
• W technice cyfrowej działania logiczne
wykonywane są przez układy cyfrowe
zwane bramkami, z których buduje się
bardziej skomplikowane ukł. cyf.
• Zmienną logiczną nazywamy zmienną,
która może przyjmować jedną z dwóch
wartości logicznych: prawdę lub fałsz
(1 lub 0)
• Iloczyn logiczny- bramka AND
zapisujemy y=x1 x2 lub y=x1*x2
symbol:
zależnie jaki sygnał podamy na x2 (1 to y=x1,
0
to y=0) np.. sygnał x2 jest sygnałem sterującym
tabela prawdy
&
x1
x2
y
x1
x2
y
0
0
0
0
1
0
1
0
0
1
1
1
Przedstawia wszystkie możliwe
kombinacje argumentów
i odpowiadających im wartości
logicznych w wyniku danego
działania
-
mnożenia
Prawda tylko gdy wszystkie argumenty
równe są 1.
• Suma logiczna – bramka OR
Zapisujemy y=x1 x2 lub y=x1+x2
Symbol:
Tabela prawdy:
1
x1
x2
y
x1
x2
y
0
0
0
0
1
1
1
0
1
1
1
1
Tylko
wtedy
jest
zero
• Negacja – bramka NOT
zapis:
y=~x (
matematyczny
) y= x (
w ukł. cyf
.
) y=x# (
zapis intela
)
symbol:
Tabela prawdy:
1
X
x
y
0
1
1
0
Y
• Określenie negacji – jeśli wartość
argumentu jest równa 0 (fałsz) to wynik
otrzymamy 1(prawda), i na odwrót.
Negacja działa zawsze na jeden
argument.
• Ponieważ sygnały logiczne mogą być
negowane na wej. i wyj. układu,
przyjęto że operację negacji oznacza w
symbolu bramki NOT kółeczko przy wej.
lub wyj.
Funkcja NOT może być połączona z
innymi funkcjami, tworząc NAND i NOR
Wkrótce zobaczymy, że są one bardziej
popularne, niż AND i OR
Exclusive-OR Exclusive-OR (XOR, czyli
WYŁĄCZNE LUB) jest ciekawą funkcją, chociaż
mniej podstawową niż AND i OR. Wyjście
bramki XOR jest w stanie wysokim, jeżeli jedno
albo drugie wejście jest w stanie wysokim (jest
to zawsze funkcja dwóch zmiennych). Mówiąc
inaczej, wyjście jest w stanie wysokim, jeżeli
stany wejść są różne.
Podział układów logicznych
1. Układy kombinacyjne i sekwencyjne
2. Układy synchroniczne i
asynchroniczne
Układy sekwencyjne nazywamy ukł.
cyfrowymi, w których stan wyjść zależy
od stanu wejść oraz od poprzednich
stanów układu.
Układem asynchronicznym nazywamy taki
ukł. dla którego w dowolnym momencie jego
działania stan wejść oddziałuje na stan wyjść.
Układen synchronicznym nazywamy taki
ukł. cyf. dla którego stan wej. wpływa na stan
wyj. jedynie w pewnych określonych
odcinkach czasupracy ukł. zwanych czasem
czynnym, natomiast w pozostałych
odcinkach czasu zwanych czasem martwym,
stan wej. nie wpływa na stan wyj.. Odcinki
czasu czynnego i martwego wyznaczane są
przez podanie specjalnego przebiegu
zwanego przebiegiem zegarowym lub
taktującym na wejście zwane wej.
zegarowym lub taktującym.
cyfrowy przebieg zegarowy
Do tej pory zajmowaliśmy się układami
kombinacyjnymi - to znaczy takimi, w
których stan sygnałów wyjściowych zależy w
każdej chwili wyłącznie od bieżącego stanu
sygnałów wejściowych. Natomiast przerzutniki
są elementami zaliczanymi do grupy układów
sekwencyjnych. W układach
sekwencyjnych stan na wyjściu układu jest
funkcją nie tylko bieżących stanów
wejściowych, ale również stanów na wyjściu
układu w poprzednich chwilach czasowych. W
układach tych oprócz elementów logicznych
(kombinacyjnych) występują elementy
pamięciowe. W zależności od trybu pracy
układy sekwencyjne możemy podzielić na
asynchroniczne i synchroniczne
.
Układ asynchroniczny zmienia swój stan wyjść
bezpośrednio po zmianie stanu wejść.
W układach synchronicznych zmiana stanu
wyjść odbywa się w chwilach wyznaczonych
zmianą sygnału synchronizującego.
Podstawowym elementem sekwencyjnym, który
zapamiętuje jeden bit informacji jest układ
nazywany przerzutnikiem. Przerzutnik jest
układem o co najmniej dwóch wejściach i z reguły
dwóch wyjściach.
Większość przerzutników to przerzutniki
synchroniczne. Wyjątek stanowi najprostszy
przerzutnik nazywany asynchronicznym
przerzutnikiem RS.
Wejścia mogą być:
• zegarowe CK (ang. Clock), zwane inaczej
synchronizującymi albo wyzwalającymi,
• informacyjne,
• programujące.
Jeśli przerzutnik ma wejście synchronizujące, to
jest nazywany przerzutnikiem
synchronicznym, natomiast jeśli nie ma
takiego wejścia-przerzutnikiem
asynchronicznym.
Przerzutnik synchroniczny reaguje na
informację podawaną na wejścia informacyjne
tylko w obecności impulsu zegarowego.
Przerzutnik może być wyposażony w dwa wejścia
programujące: ustawiające S (ang. Set) i zerujące
R (ang. Reset) nazywane również Preset i Clear.
Wejścia programujące są zawsze wejściami
asynchronicznymi (niezależne od sygnału
zegarowego).
Istnieje wiele typów przerzutników.Podstawowe to:
RS, D i JK.
Działanie logiczne przerzutników najczęściej
obrazuje się za pomocą tablicy stanów, w której
przedstawione są stany na wejściach
informacyjnych układu oraz odpowiadające im
stany na wyjściu(ach) układu. Wyjścia
przerzutników oznaczane są zazwyczaj symbolami
Q i Q . W tablicy stanów zazwyczaj prezentuje się
stan wyjścia Q pomijając wyjście Q ,które jest jego
negacją.
Symbole graficzne przerzutników w wersji
TTL (Transistor Transistor Logic )
Symbole graficzne przerzutników odzwierciedlają
ich strukturę wewnętrzną. Jeżeli umieścimy
wskaźnik negacji na wejściu przerzutnika to
wejście jest aktywowane niskim poziomem
logicznym (w symbolu graficznym należy umieścić
okrąg przed nazwą wejścia. Wejścia zegarowe
(synchronizujące) oznaczone są poprzez trójkąt
równoboczny. Niektóre przerzutniki są wyzwalane
(aktywowane) przy zmianie sygnału na wejściu
zegarowym; wejście takie nazywamy wejściem
dynamicznym. Mówimy wówczas o takim
przerzutniku, że jest wyzwalany frontem (sygnału
zegarowego):
Asynchroniczny przerzutnik RS
Przerzutnik ten składa się z dwóch odpowiednio
połączonych ze sobą bramek. Do budowy tego
przerzutnika można wykorzystać bramki NAND lub
NOR. Przerzutnik ten ma dwa wejścia
informacyjne/programujące R i S oraz dwa wyjścia
Q i Q . Wejścia R i S są wejściami asynchronicznymi
tzn. ich stany natychmiast oddziaływują na stany
wyjść. Rysunek przedstawia schemat przerzutnika
asynchronicznego RS zbudowanego z bramek NOR.
Podanie stanu „1” na jedno z wejść informacyjnych
(programujących) powoduje ustawienie na wyjściu
odpowiadającej mu bramki stanu „0” (Suma dwóch
sygnałów, z których co najmniej jeden jest równy
„1” wynosi „1” a po zanegowaniu daje „0” NOR
A+B)
Schemat logiczny
Symbol graficzny
tabela stanów
tabela stanów
uproszczona
Podanie stanu „1” na obydwa wejścia
przerzutnika spowodowałoby wystąpienie
stanów „0” na obydwu wyjściach, co jest
niezgodne z założeniem, że w przerzutniku
jedno wyjście jest negacją drugiego. Stan
ten jest nazywany stanem niedozwolonym
N. Podanie stanu „0” na obydwa wejścia
daje możliwość określenia stanu wyjść w
chwili n-tej wyłącznie na podstawie stanu
wyjść w chwili n-1. Jest to stan w którym
przerzutnik realizuje funkcję pamiętania
sygnału poprzedniego. Na rysunkach
symbol X oznacza dowolny sygnał.
Synchroniczny przerzutnik RS
Synchroniczny przerzutnik RS różni się w
swojej budowie od przerzutnika
asynchronicznego dodatkowymi dwoma
bramkami dołączonymi na wejściu
układu. Przerzutnik ten można zbudować
zarówno z bramek NOR, jak i NAND.
Na shemacie przedstawiony jest
Synchroniczny przerzutnik RS zbudowany
bramek NOR:
schemat logiczny
symbol graficzny
tabela stanów
uproszczona tabela stanów
W tablicy stanów podkreślono stany stabilne, tzn. nie powodujące zmiany
stanu wyjść.
Przerzutnik D typu „latch” (zatrzask)
Przerzutnik ten jest przerzutnikiem
synchronicznym reagującym na poziom
niski lub wysoki – wejście zegarowe.
Zatem reaguje on tylko na stan wysoki
(czynny) na wejściu zegarowym, w czasie
martwym stan przerzutnika nie będzie
ulegał zmianie – stan pamiętania.
CK
D
Q
Q
D
Q
n+1
0
0
1
1
Przerzutniki te służą do budowy rejestrów typu latch
Cyfrowe układy funkcjonalne
Są to złożone układy cyfrowe, na
podbudowie układów poznanych
wcześniej, pełnią określone funkcje:
1.Wykonywanie działań arytmetycznych
2. Krótkoterminowego przechowywania
informacji.
3. Dekodowania adresów
Wszystkie te układy będą omawiane na
zasadzie czarnej skrzynki.
Rejestry
Def. Rejestrem nazywamy ukł. cyfrowy
przeznaczony do krótko terminowego
przechowywania niewielkich ilości inf. lub do
zmiany postaci inf. z równoległej na
szeregową albo odwrotnie.
Def. Wejściem cyfrowym równoległym
nazywamy takie wejście, które umożliwia
wprowadzenie do układu cyfrowego
wszystkich bitów słowa w jednym takcie
zegarowym.
Wynika z tego że ilość zacisków wej. musi być
równa ilości bitów wprowadzanych w słowie.
Def. Wejściem cyf. szeregowym nazywamy
takie wejście, które umożliwia
wprowadzanie inf. do układu bit po bicie.
Do wprowadzenia słowa n-bitowego
potzreba n taktów zegara.
Def. Jeżeli inf. wprowadzamy,
wyprowadzamy lub przesyłamy bit po bicie,
jeden bit na jeden takt zegarowy, to taką
postać inf. nazywamy szeregową.
Jeżeli wprowadzamy, wyprowadzamy lub
przesyłamy wszystkie bity słowa inf.
jednocześnie, w jednym takcie zegarowym,
to taką inf. nazywamy równoległą.
Podział rejestrów na następujące grupy:
-rejestr z wej. i wyj. równoległym – PIPO
-rejestr z wej. i wyj. szeregowym – SISO
-rejestr z wej. szereg. i wyj. równ. – SIPO
-rejestr z wej. równ. i wyj. szereg. – PISO
Bramki trójstanowe
W ukł. cyf. a szczególnie w ukł. i systemach
mikroprocesorowych (komputer), występuje
często potrzeba odseparowania elektrycznego
dwóch lub więcej punktów ( wielkości elektryczne
takie jak napięcie czy prąd nie wpływają
wzajemnie na siebie)
W ukł. cyf. stan logiczny w jednym
punkcie odseparowany od innego punktu,
nie wpływa na niego i nie jest z nim w
żaden sposób związany.
Układami umożliwiającymi
odseparowanie 2-punktów są bramki
trójstanowe
Wej.
Wyj
.
Wej Enable Wyj
0
1
0
1
1
1
x
0
z
Enable - umożliwiać
Stan Z występujący w tabeli oznacza tak zwany stan wysokiej impedancji, czyli brak
wzajemnego wpływu wej - wyj. Z jest oprócz 1 i 0 trzecim stanem – stąd nazwa.
Magistrala
W systemach mikroprocesorowych istnieje
konieczność zapewnienia komunikacji pomiędzy
wieloma układami takimi jak: mikroprocesor,
pamięć RAM, ROM, układami wej./wyj.. Połączenie
wielu układów każdy z każdym doprowadziło by
do nadmiernej ilości połączeń i jest praktycznie
nierealne. Dlatego stosuje się sposób połączenia
przy pomocy tak zwanej magistrali. Magistrala
jest wspólną drogą dzięki której, komunikują się
pomiędzy sobą poszczególne układy wchodzące
w skład systemu. Aby zapewnić poprawną pracę i
brak kolizji w połączeniach, magistrala
obsługiwana jest według ściśle określonych,
podanych w definicji reguł.
Def.
Magistralą nazywamy zestaw linii oraz
układów przełączających, łączących
dwa lub więcej układów mogących być
nadajnikami lub odbiornikami
informacji. Przesyłanie informacji
zachodzi zawsze pomiędzy dokładnie
jednym układem będącym nadajnikiem
a dokładnie jednym układem będącym
odbiornikiem, przy pozostałych
układach odseparowanych od linii
przesyłowych.
Jak wynika z powyższej def., układy
dołączone do magistrali muszą mieć
możliwość elektrycznego
odseparowania się od linii w których
przesyłana jest informacja. Wynika z
konieczności zapewnienia
jednoznacznego stanu każdej z linii
(np. gdyby podłączyły się dwa
nadajniki z różnymi stanami logicznymi
0 i 1 to wystąpił by konflikt). Układami
zapewniającymi możliwość separacji
są właśnie bramki trójstanowe.
Dwukierunkowe wzmacniacze
buforowe
Pomiędzy układy będące w danym momencie na
magistrali nadajnikiem a odbiornikiem stosuje się
zwykle układy buforowe, pośredniczące w
wymianie informacji. Zadaniem tego typu ukł. jest
zmniejszenie obciążenia nadajnika przez odbiornik,
zwiększenie prądu wyj. i co za tym idzie poprawy
kształtu zboczy. W przypadku magistrali, po
których inf. może być przesyłana w obydwu
kierunkach, takich jak np. magistrala danych,
układy wzmacniaczy buforowych muszą działać w
dwóch kierunkach tak zwane: nadajnik-odbiornik
(transmitter-receiver) ukł. te mogą przejść w stan
wysokiej impedancji, separując nawzajem od
siebie łączone układy.
Jednostka arytmetyczno logiczna -
ALU
Def. Jednostką arytmetyczno logiczną
(ALU) nazywamy uniwersalny układ
cyfrowy przeznaczony do wykonania
operacji arytmetycznych i logicznych
Słowo „uniwersalny” w def. ALU oznacza,
że zestaw operacji, które potrafi
zrealizować jednostka aytmetyczno-
logiczna powinien być funkcjonalnie
pełny, jeżeli za jego pomocą jesteśmy w
stanie zrealizować dowolny algorytm
przetwarzania informacji.
Algorytm
reguły postępowania służące do
rozwiązania konkretnych zadań dla
różnych zestawów danych,
zapewniające otrzymanie
rozwiązania w skończonej liczbie
kroków. Jeżeli rozwiązanie opiera się
na obliczeniach, to trzeba podać w
jakiej kolejności według jakich
wzorów mają one być wykonane.
Do zestawu operacji wykonanych przez ALU
należą najczęściej dodawanie i odejmowanie
algebraiczne, przesuwanie bitów słowa w
prawo i w lewo, porównywanie (komparacja)
wartości dwóch słów, operacje iloczynu i sumy
logicznej, negacji i alternatywy wykluczającej
ALU nie posiada układów pamiętających,
dlatego musi współpracować z pewnym
zestawem rejestrów. Rejestr przechowujący
wyniki operacji nazywa się akumulatorem.
Oraz rejestr flagowy zawierający cechy wyniku
(np. przeniesienie bitu lub przekroczenie
zakresu) Są to dwa podstawowe rejestry z
którymi ALU współpracuje.
Dekodery i kodery priorytetu
Dekodery i kodery priorytetu pełnią w
systemach mikroprocesorowych ważne
funkcje pomocnicze.
Def. Dekoderem nazywamy układ
cyfrowy mający n wej. oraz k wyj., przy
czym k≤2
n
. Na wej. dekodera podajemy
zakodowany numer wyj. na którym ma
się pojawić wyróżniony sygnał o wartości
np.0 . Na pozostałych wyjściach dekodera
powinien występować stan przeciwny do
sygnału wyróżnionego o wartosci np.1
Kodery priorytetu są pewną modyfikacją
układu zwanego koderem, działanie
kodera jest w pewnym sensie odwrotne do
działania dekodera.
Def. Koderem nazywamy układ cyfrowy o
n wyj. i k≤2
n
wejściach, przy czym na wyj.
pojawia się zakodowany numer tego wej.,
na którym ten sygnał wystepuje.
W systemach cyfrowych zachodzi często
potrzeba przyjmowania sygnałów zgłoszeń
od wielu urządzeń i następnie
zdecydowania, które z nich będzie
obsługiwane. Realizację tych czynności
umożliwia koder piorytetu.
Def. Koderem priorytetu nazywamy ukł.
kodera, w którym wprowadzono
następujące zmiany:
1. Na jego wej. może pojawić się więcej
niż jeden sygnał wyróżniony.
2. Każdemu wej. przyporządkowano
pewien stopień ważności zwany
priorytetem
3. Na wyj. pojawia się zakodowany
numer tego wej. z wyróżnionym
sygnałem, które posiada najwyższy
priorytet.
Licznik
Def. Licznikiem nazywamy ukł. cyfr. na
którego wyj. pojawia się zakodowana liczba
impulsów podanych na wej. zliczające
licznika i zliczone przez licznik.
Podstawowymi parametrami licznika jest
jego pojemność oraz kod w którym jest
podawana ilość zliczanych impulsów.
Pojemność określa max ilość impulsów którą
może zliczyć licznik. Po przekroczeniu tej
wartości licznik zaczyna zliczanie impulsów
od początku. Liczniki w systemach
mikroproces. są ukł. pomocniczymi.
Pamięci półprzewodnikowe
Służą do przechowywania inf. w postaci
cyfrowej. Ilość inf., które mogą przechowywać
pojedyncze ukł. scalone pamięci zawiera się
w zakresie od kilkudziesięciu KB do setek MB.
Pamięci dynamiczne RAM (DRAM)
pozwalają uzyskać duże pojemności w
pojedynczym ukł. scalonym. Zasada działania
opiera się na magazynowaniu ładunku w
określonej, niewielkiej pojemności
elektrycznej. Pojemność nie naładowana
oznacza 0 logiczne, zaś poje. naładowana
oznacza 1 logiczne.
Pamięci DRAM ze względu na sposób
przechowywania inf. wymagają
odświeżania (cyklicznego doładowania
tych pojemności które przechowują
wartość 1 )
Dostęp do pamięci musi odbywać się z
zachowaniem określonych zależności
czasowym.
W odświeżaniu występuje tryb
stronicowania – jest to sposób na
przyśpieszenie współpracy z pamięcią
DRAM.
Pamięć SDRAM działanie polega na
zsynchronizowaniu operacji pamięci z
zewnętrznym zegarem. Poprzednie
pamięci pracowały asynchronicznie w
stosunku do pracy procesora, który z kolei
jest ukł. synchronicznym.
Synchronizacja operacji pamięci z zegarem
procesora pozwala osiągnąć optymalną
szybkość współpracy obydwu ukł.
Inną metodą pozwalającą zwiększyć
szybkość komunikacji jest stosowanie tak
zwanego przeplotu
Pamięć ROM jest pamięcią nie ulotną,
przeznaczoną tylko do odczytu. Nie
oznacza to że jeżeli jest do odczytu to w
określonych warunkach nie można jej
zmieniać
EEPROM jest pamięcią flash-Bios czyli
oprogramowanie Bios, które możemy
uaktualniać (np.. na nowe wersje)
Komputer jest zespołem ukł. cyfrowych
tworzących system mikroprocesorowy w
jego skład wchodzą ukł. przedstawione
wcześniej.
Ukł. cyfrowe służą do przetwarzania
informacji. Przetwarzanie inf. polega na
dostarczeniu danych do ukł. bądź
systemu, które poddawane są określonym
działaniom, dzięki którym otrzymujemy
określone wyniki. Wynikami mogą być
przykładowo sygnały sterujące pracą
pewnych urządzeń, obrazy, teksty itp..
Procesor przetwarza informacje, wykonuje
elementarne operacje zwane instrukcjami
bądź (rozkazami). Ciąg takich instrukcji
realizujących konkretne zadanie nazywamy
programem.
Jednym z elementów systemu
mikroprocesorowego jest uniwersalny ukł.
przetwarzający informacje. Wykonuje on
działania arytmetyczne i logiczne potrzebne
do osiągnięcia zamierzonego wyniku. Układ
musi jednak współpracować z dodatkowymi
układami w celu stworzenia użytecznego
systemu mikroprocesorowego.
Schemat blokowy systemu
mikroprocesorowego
CPU - centralna jednostka przetwarzająca
MEM–pamięć RAM I ROM (Bios – podstawowy system
obsługi we/wy
I/O – układ we/wy
AB – magistrala adresowa
DB – magistrala danych
CB – magistrala sterująca
CPU
I/O
MEM
ROM
(Bios)
RAM
(PAO)
DB
AB
CB
Zadaniem CPU oprócz przetwarzania inf. jest
sterowanie pracą pozostałych układów.
Zegar systemowy wytwarza przebiegi
czasowe niezbędne do pracy mikroprocesora
i systemu.
Sterowniki magistrali jest układ który
pośredniczy w sterowaniu magistralami,
wytwarzając na podstawie inf. otrzymanych
z mikroprocesora (tzw. sygnałów
statusowych i sterujących) sygnały sterujące
pracą układów pamięci i układów we/wy.
Wszystkie operacje zachodzące w systemie
są sterowane bądź inicjowane przez
mikroproc. Rodzaj tych działań zależy od
ciągu instrukcji (programu)
Program musi być przechowywany w
pamięciach półprzewodnikowych (szybki
dostęp) gdyż pamięci masowe są zbyt wolne,
czas pobierania kolejnych instrukcji z nich
jest zbyt długi.
Pamięci RAM (pamięć operacyjna)
przechowywane są w niej instrukcje tworzące
programy, dane oraz wyniki działań.
Aby system rozpoczął pracę, musi więc
istnieć miejsce, gdzie przechowywany jest
program inicjujący pracę systemu. Miejsce to
musi pamiętać program niezależnie od tego
czy napięcie zasilające jest włączone czy nie.
Takim miejscem jest pamięć ROM, w niej
jest przechowywany Bios czyli podstawowy
system obsługi we/wy. Zawiera on między
innymi procedury inicjujące pracę systemu
oraz umożliwiające wprowadzenie do pamięci
operacyjnej dalszego oprogramowania.
Ostatnim niezbędnym blokiem systemu jest
blok ukł. WE / WY (I/O), pośredniczą one w
wymianie inf. pomiędzy mikroprocesorem i
pamięcią systemu a urządzeniami
zewnętrznymi (peryfyrejnymi) w stosunku do
systemu (drukarka, monitor, stacje dysków).
Potrzeba tego pośrednictwa wynika z
konieczności sterowaniem przepływów inf. o
różnej prędkości.
Wszystkie te informacje między tymi
blokami przesyłane są przez magistrale:
1. Magistrala danych
2. Magistrala adresowa
3. Magistrala sterujaca
Ad.1. Przeznaczona jest do przesyłania
danych, wyników oraz kodów instrukcji,
jest to magistrala dwukierunkowa.
Ad.2. Przesyłane są adresy komórek pamięci
lub ukł. we/wy z którymi chce się
komunikować mikroprocesor – magistrala
jednokierunkowa adresy są generowane
przez mikroprocesor, natomiast trafiają
do pamięci bądź do ukł. we/wy
Ad.3. Właściwie zestaw linii sterujących, linie
te służą do sterowania praca ukł.
współpracujących z mikroprocesorem oraz do
sygnalizowania pewnych ich określonych
stanów.
Mikroprocesor – pojedynczy ukł. scalony o
dużej skali integracji.
Schemat blokowy mikroprocesora dzieli się na:
1. Jednostkę wykonawczą
2. Jednostkę sterująca
Ad.1. Przetwarzanie inf., czyli wykonywanie
wszelkich operacji arytmetycznych i
logicznych. Rodzaj wykonywanych operacji
zależy od wewnętrznych sygnałów
wytwarzanych przez CPU.
W skład jednostki wykonawczej wchodzą
ALU oraz zestaw współpracujących z nią
rejestrów. Informacją wej. części
wykonawczej są dane, zaś wyjściową wyniki
(liczby, inf. tekstowe, sygnały sterujące )
Ad.2. W skład jednostki sterującej wchodzą:
-rejestr rozkazów IR
-dekoder rozkazów
-układ sterowania
W rejestrze rozkazów przechowywany jest
kod aktualnie wykonywanego rozkazu. Kody
rozkazów pobierane są do rejestru
rozkazów z pamięci, ciąg rozkazów tworzy
program wykonywany przez system.
Po pobraniu z pamięci kod rozkazu jest
dekodowany w dekoderze rozkazów. Na tej
podstawie układ sterowania wytwarza
wewnętrzne i/lub zewnętrzne sygnały
sterujące realizujące dany rozkaz.
Rejestry procesora dostępne programowo:
-rejestr flagowy
-licznik rozkazów
-wskaźnik stosu
-rejestry robocze
Zgodnie ze schematem blokowym
mikroprocesora zarówno ALU jak i ukł.
sterujący współpracują z określonymi
zestawem rejestrów.
Zawartość pewnej części rejestrów z tego
zestawu może być zmieniana w wyniku
wykonywania przez procesor określonej
instrukcji. Rejestry te nazywane są
rejestrami dostępnymi programowo.
Pozostałe rejestry są niedostępne dla
użytkownika i ich zestaw nie jest zwykle
znany. W rejestrach dostępnych
programowo występują takie typy
rejestrów, których odpowiedniki znajdują
się praktycznie w każdym procesorze. Ich
pojemność czy ilość może się zmieniać,
jednak wykonywane zadania pozostają
takie same.
Akumulatorem nazywamy rejestr,
który zawiera jeden z argumentów
wykonanej operacji i do którego jest
ładowany wynik wykonanej operacji.
Rejestr flagowy nazywamy rejestr
zawierający dodatkowe cechy wyniku
wykonywanej operacji, potrzebne do
podjęcia decyzji o dalszym sposobie
przetwarzania informacji. Cechami
tymi mogą być np. znak wyniku,
przekroczenia zakresu wyniku lub
parzystości lub nieparzystości
wyniku. Wystąpienie określonego
wyniku (+lub-) sygnalizowane jest
ustawieniem lub wyzerowaniem
określonego bitu w rejestrze
flagowym, (znaczniki, flagi)
A
F
B
C
D
E
H
L
IPC
SP
Rejestry procesora
dostępne
programowo
A – Akumulator
F – rejestr flagowy
B, C, D, E, H, L–rejestry
robocze (uniwersalne)
IPC – Licznik rozkazów
SP – Wskaźnik Stosu
Licznik rozkazów jest jednym z
istotniejszych rejestrów, w nowszych
mikroprocesorach nosi nazwę IP – wskaźnika
instrukcji.
def. Licznikiem rozkazów nazywamy rejestr
mikroprocesorowy zawierający adres komórki
pamięci, w której przechowywany jest kod
rozkazu przeznaczony do wykonania jako
następny.
Z def. tej wynika że po wczytaniu kolejnego
kodu rozkazu zawartość licznika rozkazów
powinna zostać zmieniona tak, aby
wskazywał on na kolejny rozkaz przeznaczony
do wczytania do mikroprocesora.
Wskaźnik stosu
def. Stosem nazywamy wyróżniony obszar
pamięci używany według następujących
reguł.
1. Informacje zapisywane są na stos do
kolejnych komórek (po kolei pod każdymi
adresami), przy czym żadnego adresu nie
wolno pominąć.
2. Odczytujemy informację w kolejności
odwrotnej do ich zapisu.
3. Informację odczytujemy z ostatnio
zapełnionej komórki a zapisujemy do
pierwszej wolnej.
Stos jest więc rodzajem pamięci (czy też
buforem). Pamięć taką można porównać do
stosu talerzy. Talerze dokładamy do stosu
kładąc je na wierzchu a zbieramy zdejmując
je także z wierzchu. W przypadku pojęcia
stosu w pamięci, konieczna jest znajomość
adresu ostatniej zapełnionej komórki stosu,
przy czym komórkę odczytana uważamy za
pustą. Komórka ta zwana jest wierzchołkiem
stosu.
def. Wskaźnikiem stosu nazywamy rejestr
zawierający adres ostatniej zapełnionej
komórki stosu (wierzchołka stosu)
Jednym z klasycznych zastosowań stosu
jest zapamiętanie adresu powrotu do
programu wywołującego w przypadku
wywołania tak zwanego podprogramu.
Ponieważ podprogram może wywołać inny
podprogram, adresy powrotów odkładane
są na stos, gdyż muszą być odczytane w
kolejności odwrotnej do kolejności ich
zapisu.
Rejestry robocze-uniwersalne są
pewnym zestawem rejestrów ogólnego
przeznaczenia. Mają przechowywać
argumenty wykonanych operacji i wyniki.
Realizując program, system
mikroprocesorowy wykonuje pewne
powtarzające się czynności polegające na
cyklicznym pobieraniu kodów rozkazów z
pamięci i wczytywaniu ich do ukł. sterowania
mikroprocesora, a następnie realizację
rozkazu (tego kodu). I dlatego rozróżniamy
dwie fazy: fazę pobrania, fazę wykonania.
Komputer będący systemem
mikroprocesorowym przetwarza informacje
zgodne z wykonywanym programem.
Program jest ciągiem instrukcji realizujący
określony algorytm działania systemu.
W pamięci systemu mikroprocesorowego
program przechowywany jest w postaci
binarnych kodów instrukcji maszynowych
(rozkazów) właściwych dla danego
procesora.
def. Rozkazem (instrukcją maszynową)
nazywamy najprostszą operację, której
wykonanie programista może zażądać od
procesora.
def. Listą rozkazów nazywamy zestaw
wszystkich instrukcji maszynowych
(rozkazów), jakie potrafi wykonać dany
procesor.
Rozróżniamy:
1.Rozkazy przesłań
2.Rozkazy arytmetyczno-logiczne
3.Rozkazy sterujące (skoki, wywołania, pętle)
4.inne (np.. sterowanie pracą procesora,
rozkazy testujące, operacje w trybie
chronionym)
Układy wej/wyj są układami
elektronicznymi pośredniczącymi w
wymianie informacji pomiędzy systemem
mikroprocesorowym a zewnętrznymi
urządzeniami współpracującymi, zwanymi
„urządzeniami peryferyjnymi”.
Potrzeba pośredniczenia w wymianie
informacji wynika z następujących faktów:
-istnieją różnice w szybkości działania
-istnieją różnice w parametrach
elektrycznych
-urządzenia wymagają podania informacji w
określonym formacie wraz z pewnymi
sygnałami sterującymi
def. Układem wej/wyj nazywamy ukł.
elektroniczny pośredniczący w wymianie
inf. pomiędzy mikroprocesorem i pamięcią
systemu z jednej strony a urządzeniami
peryferyjnymi z drugiej.
Operacje wej/wyj - programy realizujące
wymianę inf. i wszelkie operacje jej dotyczące
nazywamy operacjami wej/wyj.
def. Operacjami wej/wyj nazywamy
całokształt działań potrzebnych do realizacji
wymiany inf. pomiędzy mikroprocesorem i
pamięcią z jednej strony a układem wej/wyj z
drogiej.
Operacje wej/wyj musza być realizowane od
początku do końca przez procesor lub tylko
przez zainicjowanie operacji wej/wyj przez
mikroprocesor, który z kolei przekazuje
nadzór nad nią innemu układowi (zarządca
magistrali) Stąd operacja dzieli się na:
-operacja z bezpośrednim
-operacja z pośrednim sterowaniem przez
procesor
Z czego operacje z bezpośrednie dzieli się:
-bezwarunkowe operacje wej/wyj
-operacje wej/wyj z testowaniem stanu ukł.
wej/wyj
-operacje wej/wyj z przerwaniem programu
def. Bezwarunkową operacją wej/wyj
nazywamy taka operację przy której
realizacji mikroprocesor nie sprawdza
gotowości ukł. wej/wyj do tej wymiany.
def. Przy realizacji operacji wej/wyj z
testowaniem stanu ukł. wej/wyj
mikroprocesor sprawdza sygnał (np. może
to być określony bit) gotowości ukł.
wej/wyj do tej wymiany. W przypadku
potwierdzenia gotowości do tej wymiany
przez ukł. jest ona realizowana. Brak
gotowości ukł. wej/wyj do wymiany
powoduje wykonanie przez mikroprocesor
tak zwanej pętli przepytania, w której
cyklicznie sprawdza on gotowość ukł. do
wymiany.
Jedną z oczywistych wad operacji wej/wyj z
testowaniem stanu ukł. wej/wyj jest
konieczność wykonania przez mikroprocesor
pętli przepytania w celu stwierdzenia
gotowości tego ukł. do wymiany. Rozwiązanie
tego problemu jest takie że mikropro.
wykonuje pewien program zwany programem
głównym, oczekując na sygnał gotowości do
wymiany zgłoszony ze strony ukł. wej/wyj. W
tym celu mikroprocesor dysponuje
określonym wej. zwanym wej. zgłoszenia
przerwania. Aktywny poziom na tym wej.
sygnalizuje tak zwane zgłoszenie przerwania,
czyli gotowości ukł. wej/wyj do wymiany.
OGÓLNA BUDOWA KOMPUTERA
Komputery typu PC są obecnie
najbardziej rozpowszechnionymi
systemami komputerowymi w naszym
kraju. Posiadają konstrukcję modułową,
pozwalającą na konfigurowanie systemu
według potrzeb użytkownika. Każdy
komputer zawiera jednostkę systemową,
do której dołączona jest klawiatura i
monitor i inne urządzenia zewnętrzne np.
drukarka.
Komputer zawiera następujące
urządzenia i bloki funkcjonalne:
• płytę główną,
• karty rozszerzające funkcje zestawu
(karta graficzna, karta dźwiękowa, karta
sieci lokalnej, itd),
• napęd CD,
• napęd dysków elastycznych,
• dysk twardy,
• zasilacz.
Podstawowym komponentem jednostki
systemowej jest płyta główna, zawierająca
główne elementy architektury systemu, takie
jak:
• procesor (np. PENTIUM firmy Intel lub ATHLON
firmy AMD, itd)
• pamięć główną RAM, umieszczoną w specjalnych
złączach,
•pamięć stałą EPROM - zawierającą podstawowe
testy diagnostyczne oraz oprogramowanie BIOS,
pamięć CMOS z zegarem czasu rzeczywistego,
•układy (zwane Chipset) odpowiedzialne za
przepływ informacji pomiędzy poszczególnymi
komponentami systemu.
Płyta główna zawiera również sporą
liczbę złącz, zworek i
mikroprzełączników.
Posiada przede wszystkim kilka złącz (gniazd
rozszerzeń), pozwalających dołączyć do
systemu komputerowego karty, rozszerzające
funkcje zestawu. Mogą to być karty graficzne,
sterowniki interfejsów, karty sieci lokalnych,
karty modemowe, karty dźwiękowe, itd.
Złącze (gniazdo rozszerzeń) wg. standardu
ISA posiada 16-bitową szynę danych. Gniazda
standardu PCI posiadają 32-bitową magistralę
danych taktowaną zegarem 33 MHz, obecnie
szeroko stosowane są złącza PCI.
•Każda płyta główna posiada również
gniazda pozwalające rozszerzyć pojemność
pamięci RAM. Starszego typu złącza typu
SIMM (ang. Single In-line Memory Modules)
lub nowszego typu DIMM (ang. Dual In-line
Memory Modules), w które osadzić można
moduły pamięci o standardowych
pojemnościach (np. 128 MB). Moduły SIMM
(DIMM) są to podłużne płytki wyposażone w
złącze krawędziowe, na których umieszczono
"kostki" pamięci. Moduły te dostarczane są w
różnych rozmiarach, od kilku do kilkuset MB.
•Współczesne procesory instalowane są
na płytach głównych w gniazdach Socket
lub Slot. Konstrukcja tych gniazd
umożliwia łatwą wymianę procesorów.
•Pamięć stała EEPROM przechowuje
oprogramowanie obsługujące urządzenia
wejścia/wyjścia, dołączone do
mikrokomputera (tzw. BIOS). Pamięć tę
użytkownik może sam skasować i
ponownie zaprogramować. Pozwala to na
uaktualnianie systemu BIOS i
wprowadzanie nowej wersji).
Pamięć CMOS przechowuje informację o
konfiguracji systemu (np. typ dysków
elastycznych i twardych, typ karty
graficznej, itd.). Informację tę wpisuje
użytkownik za pomocą programu SETUP.
Integralną częścią tego układu jest zegar
czasu rzeczywistego. Dla podtrzymania
informacji w pamięci CMOS, po wyłączeniu
komputera i podtrzymania pracy zegara,
niezbędne jest niezależne źródło zasilania.
Jest nim bateria umieszczona na płycie
głównej.
Sterowanie klawiaturą odbywa się za
pomocą jednoukładowego procesora typu
8042 wbudowanego przeważnie w jeden z
układów typu Chipset. W pamięci stałej
tego procesora zawarty jest program
autonomicznie obsługujący interfejs
klawiatury. Klawiatura łączona
jest z systemem, 5-stykowym złączem typu
DIN lub tzw. złączem PS/2 (ang. Keyboard
Connector). Ponadto na płycie głównej
znajduje się kilka układów scalonych
wysokiej skali integracji (typu Chipset).
Zapewniają one współpracę pomiędzy
poszczególnymi elementami systemu
komputerowego. Współczesne płyty główne
zawierają przeważnie dwa lub trzy układy
typu Chipset.
Starsze płyty zasilane są przez 12-stykowe
złącze (ang. Power Supply Connector), za
pomocą którego doprowadza się z zasilacza
napięcia: +5V, -5V, +12V, -12V. Nowsze płyty
(standardu ATX) wyposażone są w 20-
stykowe złącze zasilania zapewniające
następując napięcia: +12V, -12V, +5V, -5V,
+3.3V.
Obecnie pracuje się nad standardem BTX.
ZASADA DZIAŁANIA KOMPUTERA
Typowy system mikroprocesorowy składa się
z następujących elementów: procesora,
pamięci operacyjnej RAM, pamięci stałej
ROM, układów wejścia/wyjścia oraz układów
sterujących przepływem informacji pomiędzy
w/w elementami.
Procesor jest zarazem mózgiem i sercem
komputera, elementem który potrafi wykonać
dane instrukcje – programy. Procesor
wykonuje operacje matematyczno-logiczne.
Często jest nazywany główną jednostką
przetwarzającą lub CPU, czasami także
mikroprocesorem.
Procesor przetwarza dane, wykonując na nich
podstawowe operacje arytmetyczne i
logiczne, na podstawie instrukcji (rozkazów)
odczytanych z pamięci operacyjnej. Zbiór
tych instrukcji, określających sposób
wykonania konkretnego zadania nazywamy
programem. Program i dane przechowywane
są w pamięci operacyjnej komputera. W
pamięci tej zapisywane są również rezultaty
wszelkich operacji (np. obliczeń)
wykonywanych przez procesor. Jest to więc
pamięć umożliwiająca zapis i odczyt
informacji, tzw. pamięć o swobodnym
dostępie (ang, Rondom Access Memory, RAM)
Jest to pamięć ulotna, co oznacza, iż po
wyłączeniu zasilania, informacja w niej
przechowywana jest bezpowrotnie tracona.
•Układy wejścia/wyjścia (ang. Input/Output,
l/O), zwane też peryferyjnymi, umożliwiają
komunikację człowieka z komputerem.
•W pamięci stałej (służącej tylko do odczytu
- ang. Read Only Memory, ROM) znajdują
się podstawowe testy diagnostyczne
mikrokomputera (ang. POST - Power On Self
Tesf) oraz oprogramowanie obsługujące
urządzenia wejścia/wyjścia, dołączone do
mikroprocesora (ang. BIOS, Basic Input
Output System).
Pamięć ta zachowuje swoją zawartość
nawet po wyłączeniu zasilania. We
współczesnych komputerach stosuje się
najczęściej pamięć stałą typu EEPROM,
którą użytkownik może sam skasować i
ponownie zaprogramować, bez
wymontowywania jej z systemu. Pozwala
to na uaktualnianie systemu BIOS
(wprowadzanie nowej wersji).
Umieszczona jest ponadto w podstawce,
dzięki czemu istnieje możliwość jej
wymiany.
Współpraca mikroprocesora z otoczeniem
odbywa się z pomocą szyny adresowej, szyny
danych i sygnałów sterujących,
umożliwiających zapis lub odczyt danych
do/z pamięci lub układów wejścia/wyjścia.
Pamięć adresowana jest z użyciem sygnałów
MEMW (Memory Write - zapis do pamięci) i
MEMR (Memory Read - odczyt z pamięci).
Układy wej/wyj dostępne są dla procesora
przy aktywnych sygnałach IOW (Input/Outpm
Write - zapis do układów wejścia/wyjścia) i
IOR (Input/Output Read - odczyt z układów
wejścia/wyjścia). Rysunek ilustruje schemat
systemu mikroprocesorowego zawierającego
blok pamięci i układy wej/wyj.
PAMIĘĆ OPERACYJNA (główna)
Pamięć operacyjna (zwana też pamięcią główną -
ang. Main Memory) przechowuje programy (lub
fragmenty programów) oraz dane, na których
aktualnie wykonywane są operacje. Współczesne
oprogramowanie wymaga zastosowania pamięci o
dużych pojemnościach, rzędu kilkudziesięciu-
kilkuset megabajtów (MB). Z tego powodu w
komputerach stosowane są głównie pamięci
dynamiczne RAM (ang. Dynamie RAM, DRAM),
które charakteryzują się niskimi kosztami
wytwarzania. Niestety szybkość działania tych
pamięci jest zdecydowanie niższa od szybkości
procesorów. Fakt ten powoduje wyraźne
spowolnienie pracy procesora.
Dlatego też w komputerach PC, pomiędzy
wolną dynamiczną pamięcią operacyjną
(DRAM) a procesorem wstawiona została (w
formie bufora) szybka pamięć podręczna
(ang. Cache Memory), służąca do
przechowywania często używanych danych.
Do tego celu wykorzystuje się wprawdzie
drogą, ale za to bardzo szybką pamięć
statyczną RAM (ang. Static RAM, SRAM) o
niewielkiej pojemności (256K - 2M). Pracą
pamięci podręcznej steruje kontroler (ang.
Cache Conlroller), którego działanie
wyjaśnione zostanie na przykładzie odczytu
danych z pamięci operacyjnej.
Żądanie procesora odczytu danych jest
przechwytywane przez kontroler, który
sprawdza czy dane, które procesor chce
odczytać, znajdują się w pamięci
podręcznej. W sytuacji trafienia (ang.
Cache Hit), kontroler przesyła te dane do
procesora, bez konieczności czytania ich z
wolnej pamięci operacyjnej, a tym samym,
bez konieczności wprowadzania procesora
w stan oczekiwania. W przypadku
chybienia, kontroler odczytuje dane z
pamięci operacyjnej, przesyła je do
procesora oraz jednocześnie wpisuje je do
pamięci podręcznej.
Liczba trafień do całkowitej liczby
odczytów jest większa niż 90%, co
oznacza że ponad 90% odczytów jest
dokonywanych z pamięci podręcznej, a
tylko 10% ze znacznie wolniejszej pamięci
DRAM. Pozwala to wydatnie zwiększyć
szybkość pracy komputera. Zapis danych
przesyłanych z procesora do pamięci
operacyjnej DRAM odbywa się z
wykorzystaniem jednej z dwóch metod:
•Write Through (zapis równoczesny) i
•Write Back (zapis opóźniony).
Metoda Write Through polega na zapisie
danych z procesora do pamięci Cache i
jednoczesnym uaktualnieniu ich w pamięci
głównej. Metoda Write Back polega na
tym, iż kontroler Cache uaktualnia dane w
pamięci głównej tylko w szczególnych
przypadkach, np. gdy blok danych w
pamięci Cache ma być skasowany. Pamięć
Cache składa się z dwóch części:
•banku danych Cache i
•katalogu (TAG RAM).
Początkowo procesory wyposażane były w
wewnętrzną, zintegrowaną z jądrem
procesora, pamięć Cache o pojemności od
32 do 128 kilobajtów. Pamięć ta, zwana
pamięcią Cache pierwszego poziomu,
oznaczana jest symbolem L1 (ang. Level 1).
Na starszych płytach głównych montowana
była dodatkowo pamięć zewnętrzna Cache
(zwana też pamięcia drugiego poziomu i
oznaczana symbolem L2). Obecnie
wszystkie produkowane procesory
wyposażane są standardowo w pamięci
Cache L1 i L2, które w sposób zauważalny
zwiększają szybkość przetwarzania danych
(tzw. moc obliczeniową komputera).
Układy wejścia/wyjścia
Podczas operacji wejścia/wyjścia zachodzi
wymiana informacji pomiędzy pamięcią
operacyjną systemu mikroprocesorowego a
urządzeniami peryferyjnymi. Operacje te
mogą być realizowane na dwa sposoby: pod
nadzorem procesora lub z bezpośrednim
dostępem do pamięci (bez udziału
procesora).
Operacje we/wy nadzorowane przez
procesor, zwane są również operacjami typu
PIO (ang. Programmed Input/Output).
Procesor generuje wszystkie sygnały
sterujące i adresy, niezbędne do przesłania
informacji do/z pamięci operacyjnej.
W trakcie tej czynności nie może wykonywać
żadnych innych operacji - fakt ten spowalnia
pracę komputera. Typowym przykładem
operacji nadzorowanych przez procesor są
tzw. operacje we/wy z przerwaniem
programu. Cykl operacji rozpoczyna
urządzenie peryferyjne, które sygnalizuje za
pomocą lini IRQn (ang. Interrupt Request -
żądanie przerwania) gotowość wymiany
informacji. Specjalny układ, zwany
kontrolerem przerwań powiadamia o tym
fakcie procesor (sygnałem INTR), który z kolei
przerywa wykonywanie swojego programu
(potwierdza to sygnałem INTA) i rozpoczyna
wymianę informacji pomiędzy urządzeniem a
pamięcią operacyjną.
Każde urządzenie posiada swój oryginalny
numer przerwania (np. IRQ3, IRQ4,...). Jeśli
dwa urządzenia zgłoszą jednocześnie żądanie
przerwania, to obsłużone najpierw zostanie
urządzenie o wyższym priorytecie (niższy
numer przerwania to wyższy priorytet).
Wymiana informacji (pomiędzy pamięcią
operacyjną a urządzeniem peryferyjnym) z
bezpośrednim dostępem do pamięci (ang.
Direct Memory Access - DMA) zachodzi bez
udziału procesora (który w tym czasie może
wykonywać inne operacje). Sterowanie
operacją wejścia/wyjścia realizowane jest
przez specjalny układ zwany kontrolerem
DMA, który przejmuje kontrolę nad
magistralami.
Operacja DMA inicjowana jest przez
urządzenie sygnałem DRQn (n - numer
kanału DMA). Układ DMA, za pomocą
sygnału HRQ, zgłasza gotowość przejęcia
kontroli nad magistralami. Procesor
wprowadza swoje magistrale w stan
zawieszenia i fakt ten potwierdza
sygnałem HLDA. Kontroler, za pomocą linii
DACK, informuje urządzenie o ustawieniu
trybu DMA. Rozpoczyna się transmisja
danych.