ARCHITEKTURA
ARCHITEKTURA
PROCESORA
PROCESORA
Schemat blokowy procesora
Schemat blokowy procesora
Rejestry
Rejestry
Blok arytmetyczno-logiczny (ALU)
Blok arytmetyczno-logiczny (ALU)
Układ sterowania
Układ sterowania
ALU
ALU
JEDNOSTKA
JEDNOSTKA
WYKONAWCZA
WYKONAWCZA
układ
układ
sterowania
sterowania
d
e
k
o
d
e
r
d
e
k
o
d
e
r
ro
zk
a
zó
w
ro
zk
a
zó
w
re
je
s
tr
re
je
s
tr
ro
zk
a
zó
w
ro
zk
a
zó
w
rejestry części
rejestry części
wykonawczej
wykonawczej
DANE
DANE
PROGRAM
PROGRAM
WYNIKI
WYNIKI
wewnętrzne
wewnętrzne
sygnały
sygnały
sterujące
sterujące
zewnętrzne
zewnętrzne
sygnały
sygnały
sterujące
sterujące
JEDNOSTKA
JEDNOSTKA
STERUJĄCA
STERUJĄCA
Zadaniem
jednostki
Zadaniem
jednostki
wykonawczej
jest
wykonawczej
jest
wykonywanie
operacji
wykonywanie
operacji
arytmetycznych i logicznych
arytmetycznych i logicznych
w
zależności
od
w
zależności
od
wewnętrznych
sygnałów
wewnętrznych
sygnałów
sterujących
sterujących
Jednostka
sterująca
z
Jednostka
sterująca
z
programu dekoduje rozkaz i
programu dekoduje rozkaz i
na
jego
podstawie
na
jego
podstawie
generowane są wewnętrzne i
generowane są wewnętrzne i
zewnętrzne sygnały sterujące
zewnętrzne sygnały sterujące
SCHEMAT BLOKOWY PROCESORA
SCHEMAT BLOKOWY PROCESORA
SCHEMAT BLOKOWY PROCESORA
SCHEMAT BLOKOWY PROCESORA
8086
8086
Do podstawowych danych mikroprocesora 8086 zaliczamy:
20 linii adresowych definiujących bezpośrednio 2
20
= 1M
8-bitowych komórek pamięci,
16 linii adresowych dla rozkazów definiujących lokacje 2
16
= 64K portów WE/WY,
dwa niezależne układy operacyjne:
o
dla realizacji rozkazu bieżącego (EU),
o
dla równoległego pobierania rozkazu następnego
(BIU),
Układ wykonawczy zawiera:
•
16-bitową jednostkę arytmetyczno-
logiczną,
•
układ sterowania z rejestrem
rozkazów,
•
cztery 16-bitowe rejestry
użytkownika
•
cztery 16-bitowe rejestry adresacji
•
16-bitowy rejestr wskaźników
(rejestr flagowy)
Zadaniem układu wykonawczego
jest dekodowanie i wykonywanie
rozkazów gromadzonych w kolejce.
W trakcie wykonywania rozkazów w
układzie
wykonawczym
układ
sprzęgający magistrali zewnętrznej
otrzymuje zezwolenie na pobranie
rozkazu
następnego
z
pamięci
programu.
Układ sprzęgający magistrali
zawiera:
•
układ generacji adresu
fizycznego,
•
układ kolejkowania rozkazów,
•
16-bitowe rejestry adresacji
(segmentowe i IP)
•
bufor WE/WY
Układ
sprzęgający
przesyła
dane między procesorem a
pamięcią
operacyjną
lub
układami WE/WY pod nadzorem
układu wykonawczego. W czasie
gdy układ wykonawczy realizuje
kolejny rozkaz, BIU pobiera
nowy
rozkaz
z
pamięci
operacyjnej i przekazuje go do
kolejki.
Drugim
istotnym
zadaniem
układu sprzęgającego BIU jest
wyznaczania adresu fizycznego
(m.in. na podstawie danych
przekazywanych z EU)
REJESTRY
REJESTRY
dostępne
dostępne
programowo
programowo
niedostępne
niedostępne
programowo
programowo
(na przykładzie procesora 8086/8088)
(na przykładzie procesora 8086/8088)
FLAGS
FLAGS
AX
AX
AX
AX
BX
BX
CX
CX
DX
DX
SI
SI
DI
DI
BP
BP
SP
SP
IP
IP
CS
CS
DS
DS
ES
ES
SS
SS
15
15
0
0
7
7
15
15
0
0
Rejestr
Rejestr
znacznikó
znacznikó
w
w
(flagowy
(flagowy
Rejestry
Rejestry
powszechneg
powszechneg
o stosowania
o stosowania
Rejestry
Rejestry
wskaźniko
wskaźniko
we i
we i
indeksowe
indeksowe
Rejestry
Rejestry
segmento
segmento
we
we
Wskaźnik
Wskaźnik
rozkazów
rozkazów
OF
OF
DF
DF
IF
IF
TF
TF
SF
SF
ZF
ZF
AF
AF
PF
PF
CF
CF
OF - flaga nadmiaru
OF - flaga nadmiaru
(przepełnienia)
(przepełnienia)
DF - flaga kierunku
DF - flaga kierunku
IF - flaga zezwolenia na
IF - flaga zezwolenia na
przerwanie
przerwanie
TF - flaga pracy krokowej
TF - flaga pracy krokowej
SF - flaga znaku
SF - flaga znaku
ZF - flaga zera
ZF - flaga zera
AF - flaga przeniesienia
AF - flaga przeniesienia
pomocniczego
pomocniczego
PF - flaga parzystości
PF - flaga parzystości
CF - flaga
CF - flaga
przeniesienia
przeniesienia
AH
AH
AL
AL
BH
BH
BL
BL
CH
CH
CL
CL
DH
DH
DL
DL
Wskaźnik stosu
Wskaźnik stosu
Wskaźnik bazy
Wskaźnik bazy
Rejestr
Rejestr
indeksowy
indeksowy
przeznaczenia
przeznaczenia
Rejestr
Rejestr
indeksowy
indeksowy
źródła
źródła
Rejestr danych
Rejestr danych
Rejestr
Rejestr
zliczający
zliczający
Rejestr bazowy
Rejestr bazowy
Akumulator
Akumulator
Rejestr
Rejestr
programu
programu
Rejestr danych
Rejestr danych
Rejestr
Rejestr
dodatkowy
dodatkowy
Rejestr stosu
Rejestr stosu
Znaczniki
Znaczniki
kontrolne
kontrolne
Znaczniki stanu
Znaczniki stanu
REJESTRY
REJESTRY
REJESTRY OGÓLNEGO
REJESTRY OGÓLNEGO
PRZEZNACZENIA
PRZEZNACZENIA
Rejestry ogólnego przeznaczenia
Rejestry ogólnego przeznaczenia
- rejestry przeznaczone
- rejestry przeznaczone
do przechowywania dowolnych danych i wykonywania
do przechowywania dowolnych danych i wykonywania
operacji (arytmetycznych i logicznych), ale jednocześnie
operacji (arytmetycznych i logicznych), ale jednocześnie
spełniające pewne funkcje specjalne. Rejestry te
spełniające pewne funkcje specjalne. Rejestry te
podzielone są na dwie 8-bitowe części: dolną (L) i górną
podzielone są na dwie 8-bitowe części: dolną (L) i górną
(H). Działając na danych 1-bajtowych każdy część może
(H). Działając na danych 1-bajtowych każdy część może
być wykorzystana niezależnie.
być wykorzystana niezależnie.
AX
AX
- (akumulator) rejestr przeznaczony do przechowywania
- (akumulator) rejestr przeznaczony do przechowywania
jednego z operandów (argumentów) wykonywanej operacji
jednego z operandów (argumentów) wykonywanej operacji
oraz wyniku wykonywanej operacji (tylko czasami wynik może
oraz wyniku wykonywanej operacji (tylko czasami wynik może
być umieszczany w innym rejestrze)
być umieszczany w innym rejestrze)
BX
BX
- rejestr bazowy wykorzystywany jest do wskazywania
- rejestr bazowy wykorzystywany jest do wskazywania
położenia i lokalizacji pamięci lub do adresowania położenia w
położenia i lokalizacji pamięci lub do adresowania położenia w
pamięci.
Domyślnie
rejestr
BX,
wraz
z
rejestrem
pamięci.
Domyślnie
rejestr
BX,
wraz
z
rejestrem
segmentowym DS, jest używany jako wskaźnik pamięci.
segmentowym DS, jest używany jako wskaźnik pamięci.
CX
CX
- rejestr wykorzystywany jest głównie jako licznik
- rejestr wykorzystywany jest głównie jako licznik
odliczający powtarzające się fragmenty programów bądź
odliczający powtarzające się fragmenty programów bądź
pojedynczych rozkazów.
pojedynczych rozkazów.
DX
DX
- rejestr wykorzystywany głównie jako wskaźnik adresów
- rejestr wykorzystywany głównie jako wskaźnik adresów
w rozkazach IN i OUT (rozkazy wejścia i wyjścia). Adresowanie
w rozkazach IN i OUT (rozkazy wejścia i wyjścia). Adresowanie
portów odbywać się może tylko poprzez użycie rejestru DX.
portów odbywać się może tylko poprzez użycie rejestru DX.
REJESTRY SEGMENTOWE
REJESTRY SEGMENTOWE
Rejestr CS
Rejestr CS
wskazuje na początek 64KB bloku pamięci lub na
wskazuje na początek 64KB bloku pamięci lub na
segment kodu, w którym rezyduje następny do wykonania rozkaz.
segment kodu, w którym rezyduje następny do wykonania rozkaz.
Dokładne położenie tego rozkazu w segmencie wskazywane jest
Dokładne położenie tego rozkazu w segmencie wskazywane jest
przez offset, którego wartość zawiera rejestr IP. Pełny adres to
przez offset, którego wartość zawiera rejestr IP. Pełny adres to
CS:IP. Rejestr CS może być zmieniany przez niektóre rozkazy ale
CS:IP. Rejestr CS może być zmieniany przez niektóre rozkazy ale
nie można go ładować bezpośrednio.
nie można go ładować bezpośrednio.
Rejestr DS
Rejestr DS
wskazuje na początek segmentu danych czyli 64KB
wskazuje na początek segmentu danych czyli 64KB
blok pamięci zawierający argumenty. Zazwyczaj rejestrami
blok pamięci zawierający argumenty. Zazwyczaj rejestrami
stowarzyszonymi z DS, określającymi offset w tym segmencie są
stowarzyszonymi z DS, określającymi offset w tym segmencie są
rejestry BX, SI lub DI.
rejestry BX, SI lub DI.
Rejestr ES
Rejestr ES
wskazuje na początek 64KB bloku pamięci zwanego
wskazuje na początek 64KB bloku pamięci zwanego
dodatkowym. Segment ten nie jest przypisany do pojedynczych
dodatkowym. Segment ten nie jest przypisany do pojedynczych
zastosowań - stosowany jest do różnych pojawiających się
zastosowań - stosowany jest do różnych pojawiających się
potrzeb. Często używany jest w operacjach łańcuchowych
potrzeb. Często używany jest w operacjach łańcuchowych
(wykorzystują pary rejestrów ES:DI) lub w operacjach na blokach
(wykorzystują pary rejestrów ES:DI) lub w operacjach na blokach
np. kopiowanie, porównywanie, przeszukiwanie, czyszczenie.
np. kopiowanie, porównywanie, przeszukiwanie, czyszczenie.
Rejestr SS
Rejestr SS
wskazuje na początek 64KB bloku pamięci zwanego
wskazuje na początek 64KB bloku pamięci zwanego
segmentem stosu. Wszystkie rozkazy na stosie - odkładania
segmentem stosu. Wszystkie rozkazy na stosie - odkładania
danych na stos, zdejmowania ze stosu, wywołania i powroty
danych na stos, zdejmowania ze stosu, wywołania i powroty
używają segmentu stosu (w tych rozkazach rejestr SP jest zdolny
używają segmentu stosu (w tych rozkazach rejestr SP jest zdolny
tylko do adresowania w obszarze stosu). Z rejestrem SS
tylko do adresowania w obszarze stosu). Z rejestrem SS
skojarzony jest rejestr BP do adresowania parametrów i
skojarzony jest rejestr BP do adresowania parametrów i
zmiennych zawartych w stosie.
zmiennych zawartych w stosie.
Rejestry wskaźnikowe i
Rejestry wskaźnikowe i
indeksowe
indeksowe
SI
SI
- rejestr indeksowy źródła wykorzystywany jest (podobnie
- rejestr indeksowy źródła wykorzystywany jest (podobnie
jak BX) głównie jako wskaźnik pamięci.
jak BX) głównie jako wskaźnik pamięci.
DI
DI
- rejestr indeksowy przeznaczenia wykorzystywany jest
- rejestr indeksowy przeznaczenia wykorzystywany jest
(podobnie jak SI) głównie jako wskaźnik pamięci.
(podobnie jak SI) głównie jako wskaźnik pamięci.
Istnieje tu pewna analogia między rejestrem bazowym BX a
Istnieje tu pewna analogia między rejestrem bazowym BX a
rejestrami indeksowymi SI i DI. Oba te rejestry mogą być użyte
rejestrami indeksowymi SI i DI. Oba te rejestry mogą być użyte
jako wskaźniki pamięci podczas przetwarzania łańcuchów:
jako wskaźniki pamięci podczas przetwarzania łańcuchów:
rejestr DI adresuje przesunięcie przeznaczenia danych w
rejestr DI adresuje przesunięcie przeznaczenia danych w
połączeniu z rejestrem segmentowym ES
połączeniu z rejestrem segmentowym ES
rejestr SI adresuje przesunięcie źródła (wyniku) danych w
rejestr SI adresuje przesunięcie źródła (wyniku) danych w
połączeniu z rejestrem segmentowym DS.
połączeniu z rejestrem segmentowym DS.
Podczas przetwarzania danych nie łańcuchowych oba rejestry
Podczas przetwarzania danych nie łańcuchowych oba rejestry
używane są jako wskaźniki pamięci zawsze względem rejestru
używane są jako wskaźniki pamięci zawsze względem rejestru
segmentowego DS.
segmentowego DS.
BP
BP
(wskaźnik bazy) - rejestr ten używany jest jako wskaźnik
(wskaźnik bazy) - rejestr ten używany jest jako wskaźnik
pamięci, podobnie jak BX, SI, DI, z tą jednak różnicą, że
pamięci, podobnie jak BX, SI, DI, z tą jednak różnicą, że
dotyczy obszaru segmentu stosu i dlatego rejestr ten
dotyczy obszaru segmentu stosu i dlatego rejestr ten
wykorzystywany jest wspólnie z rejestrem segmentowym SS.
wykorzystywany jest wspólnie z rejestrem segmentowym SS.
SP
SP
(wskaźnik stosu) - rejestr ten podaje bieżące położenie
(wskaźnik stosu) - rejestr ten podaje bieżące położenie
wierzchołka stosu.
wierzchołka stosu.
lub
lub
stos
stos
stos
stos
Adres
Program główny
101
Instrukcja
102
Instrukcja
103
Call
Wywołanie podprogramu I
(adres 104 na stos)
1002
Instrukcja
1003
Instrukcja
1004
Call
Wywołanie podprogramu II
(adres 1005 na stos)
2001
Instrukcja
2002
Instrukcja
2003
Ret
1005
Instrukcja
1006
Instrukcja
1007
Ret
Powrót z podprogramu II
(do adresu 1005
odczytanego ze stosu)
104
Instrukcja
105
Instrukcja
106
Instrukcja
Powrót z podprogramu I
(do adresu 104
odczytanego ze stosu)
107
Instrukcja
STOS
STOS
Stosem nazywamy wyróżniony obszar w pamięci używany wg
Stosem nazywamy wyróżniony obszar w pamięci używany wg
reguł:
reguł:
informacje zapisane są na stos do kolejnych komórek (pod kolejnymi
informacje zapisane są na stos do kolejnych komórek (pod kolejnymi
adresami), przy czym żadnego adresu nie wolno pominąć
adresami), przy czym żadnego adresu nie wolno pominąć
odczytujemy informacje w kolejności odwrotnej do ich zapisu
odczytujemy informacje w kolejności odwrotnej do ich zapisu
informacje odczytujemy z ostatnio zapełnionej komórki, natomiast
informacje odczytujemy z ostatnio zapełnionej komórki, natomiast
zapisujemy do pierwszej wolnej
zapisujemy do pierwszej wolnej
Czyli obowiązuje reguła LIFO - ostatni wchodzi pierwszy wychodzi
Czyli obowiązuje reguła LIFO - ostatni wchodzi pierwszy wychodzi
zobacz
prezentację
działania
zobacz
prezentację
działania
stosu
stosu
CALL adres oznacza:
[SP] <— (IP) : zapis do stosu,
SP <— (SP-2) : modyfikacja wskaźnika
stosu po odłożeniu
dwóch
bajtów licznika IP,
IP <— adres : lokacja podprogramu.
RET oznacza:
IP <— [SP] : odczyt ze stosu;
SP <— (SP+2) : modyfikacja wskaźnika
stosu.
REJESTRY
REJESTRY
DF - flaga kierunku
DF - flaga kierunku
DN (down)
DN (down)
UP (up)
UP (up)
IF - flaga zezwolenia na przerwanie
IF - flaga zezwolenia na przerwanie
EI (enables int)
EI (enables int)
DI
DI
(disables int)
(disables int)
OF - flaga nadmiaru (przepełnienia)
OF - flaga nadmiaru (przepełnienia)
OV (over)
OV (over)
NV (not
NV (not
over)
over)
SF - flaga znaku
SF - flaga znaku
NG (negative)
NG (negative)
PL
PL
(plus)
(plus)
ZF - flaga zera
ZF - flaga zera
ZR (zero)
ZR (zero)
NZ (not zero)
NZ (not zero)
AF - flaga przeniesienia pomocniczego
AF - flaga przeniesienia pomocniczego
AC (aux. carry)
AC (aux. carry)
NA (not aux. carry)
NA (not aux. carry)
PF - flaga parzystości
PF - flaga parzystości
PE (parity even)
PE (parity even)
PO (parity odd)
PO (parity odd)
CF - flaga przeniesienia
CF - flaga przeniesienia
CY (arry yes)
CY (arry yes)
NC (no
NC (no
carry)
carry)
Znaczniki
Znaczniki
kontrolne
kontrolne
Znaczniki stanu
Znaczniki stanu
=1
=1
=0
=0
TF - flaga pracy krokowej
TF - flaga pracy krokowej
REJESTR IP I FLAGOWY
REJESTR IP I FLAGOWY
IP
IP
(wskaźnik rozkazów)- rejestr ten zawiera zawsze offset pamięci, w
(wskaźnik rozkazów)- rejestr ten zawiera zawsze offset pamięci, w
którym zawarty jest następny rozkaz do wykonania. Bazowy adres
którym zawarty jest następny rozkaz do wykonania. Bazowy adres
segmentu kodu zawarty jest w rejestrze CS. Stąd pełny adres logiczny
segmentu kodu zawarty jest w rejestrze CS. Stąd pełny adres logiczny
wykonywanego rozkazu wskazywany jest parą rejestrów CS:IP.
wykonywanego rozkazu wskazywany jest parą rejestrów CS:IP.
Oznacza to, że jeśli wykonywany jest rozkaz to wskaźnik rozkazów
Oznacza to, że jeśli wykonywany jest rozkaz to wskaźnik rozkazów
ustawiany jest do następnego adresu pamięci, pod którym znajduje
ustawiany jest do następnego adresu pamięci, pod którym znajduje
się rozkaz do wykonania. Wyjątek stanowią rozkazy wywołania i
się rozkaz do wykonania. Wyjątek stanowią rozkazy wywołania i
skoku.
skoku.
FLAGS
FLAGS
(rejestr znaczników, rejestr flagowy)- rejestr ten jest zbiorem
(rejestr znaczników, rejestr flagowy)- rejestr ten jest zbiorem
poszczególnych bitów kontrolnych (znaczników), które wskazują
poszczególnych bitów kontrolnych (znaczników), które wskazują
wystąpienie określonego stanu procesora.
wystąpienie określonego stanu procesora.
zobacz prezentację działania rejestru
zobacz prezentację działania rejestru
flagowego
flagowego
akumulator rejestr bazowy
rejestr
zliczający
rejestr danych
wskaźnik stosu
wskaźnik bazy
rejestr indeksowy
źródła
rejestr indeksowy
przeznaczenia
rejestr danych
rejestr dodatkowy
rejestr stosu
rejestr programuwskaźnik rozkazów
rejestr flagowy
(znaczników)
DEBUG
DEBUG
flaga parzystości
flaga przeniesienia
pomocniczego
flaga zera
flaga zezwolenia
na przerwanie
flaga nadmiaru
flaga kierunku
flaga znaku
flaga przeniesienia
Flaga (znacznik)
symbol
=1
=0
Flaga nadmiaru
OF
OV
NV
Flaga kierunku
DF
DN
UP
Flaga zezwolenia na przerwanie
IF
EI
DI
Flaga znaku
SF
NG
PL
Flaga zera
ZF
ZR
NZ
Flaga przeniesienia pomocniczego
AF
AC
NA
Flaga parzystości
PF
PE
PO
Flaga przeniesienia
CF
CY
NC
DEBUG
DEBUG
A
A
0
0
- A
- A
3
3
B
B
0
0
- B
- B
3
3
S
S
0
0
- S
- S
3
3
M
M
F
F
0
0
- F
- F
3
3
Sygnały sterujące do
Sygnały sterujące do
wyboru mikrooperacji
wyboru mikrooperacji
logicznej (M=0) lub
logicznej (M=0) lub
arytmetycznej (M=1)
arytmetycznej (M=1)
Przykład 4 bitowego ALU
Przykład 4 bitowego ALU
SN74181
SN74181
BLOK ARYTMETYCZNO-LOGICZNY
BLOK ARYTMETYCZNO-LOGICZNY
Blok
arytmetyczno-logiczny
(ALU)
Blok
arytmetyczno-logiczny
(ALU)
-
jest
uniwersalnym
układem
-
jest
uniwersalnym
układem
kombinacyjnym, który realizuje operacje matematyczne i logiczne w zależności
kombinacyjnym, który realizuje operacje matematyczne i logiczne w zależności
od zaprogramowanej operacji tj. rozkazu umieszczonego w programie.
od zaprogramowanej operacji tj. rozkazu umieszczonego w programie.
Rozkazy mogą dotyczyć
Rozkazy mogą dotyczyć
operacji dwuargumentowych: operacji arytmetycznych (dodawanie i odejmowanie) i
operacji dwuargumentowych: operacji arytmetycznych (dodawanie i odejmowanie) i
operacji logicznych (sumowanie mnożenie, sumowanie mod 2, itp.)
operacji logicznych (sumowanie mnożenie, sumowanie mod 2, itp.)
operacji jednoargumentowych (np. negowanie bitów lub przesuwanie zawartości
operacji jednoargumentowych (np. negowanie bitów lub przesuwanie zawartości
rejestrów)
rejestrów)
Argumentami rozkazów są najczęściej dwa słowa binarne, od długości których
Argumentami rozkazów są najczęściej dwa słowa binarne, od długości których
mówi się o liczbie bitów ALU.
mówi się o liczbie bitów ALU.
Lp. S
Lp. S
0
0
- S
- S
3
3
M=0 M=1
M=0 M=1
A
F
B
A
F
B
A
F
F
AB
F
B
F
B
A
F
B
A
F
B
A
F
B
A
F
B
F
AB
F
F
B
A
F
B
A
F
A
F
1
0
)
1
(
)
(
)
(
2
)
1
(
)
(
)
1
(
)
1
(
)
(
1
)
(
)
(
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
C
A
F
C
A
B
A
F
C
A
AB
F
C
A
F
C
AB
F
C
AB
B
A
F
C
B
A
F
C
AB
A
F
C
A
F
C
B
A
F
C
B
A
B
A
F
C
B
A
A
F
C
F
C
B
A
F
C
B
A
F
C
A
F
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
1111
0111
1011
0011
1101
0101
1001
0001
1110
0110
1010
0010
1100
0100
1000
0000
UKŁAD STEROWANIA
UKŁAD STEROWANIA
Często (a może najczęściej) procesor wykonuje rozkazy
Często (a może najczęściej) procesor wykonuje rozkazy
nie w jednym kroku (jak np. dodawanie) ale w wielu
nie w jednym kroku (jak np. dodawanie) ale w wielu
krokach (np. mnożenie lub dzielenie jako ciąg dodawań i
krokach (np. mnożenie lub dzielenie jako ciąg dodawań i
przesunięć).
przesunięć).
W tym celu potrzebny jest złożony automat sekwencyjny,
W tym celu potrzebny jest złożony automat sekwencyjny,
generujący odpowiednie ciągi słów podawanych na
generujący odpowiednie ciągi słów podawanych na
wejścia sterujące układu ALU - układ sterowania.
wejścia sterujące układu ALU - układ sterowania.
Cechy takiego automatu to:
Cechy takiego automatu to:
konieczność
posiadania
bardzo
dużej
liczby
stanów
konieczność
posiadania
bardzo
dużej
liczby
stanów
dostosowanych
do
wymaganej
liczby
wykonywanych
dostosowanych
do
wymaganej
liczby
wykonywanych
rozkazów;
rozkazów;
konieczność
zapewnienia
synchronizacji
pracy
układu
konieczność
zapewnienia
synchronizacji
pracy
układu
sterowania
i
wykonawczego
(uwzględnienie
czasów
sterowania
i
wykonawczego
(uwzględnienie
czasów
wykonywania poszczególnych operacji).
wykonywania poszczególnych operacji).
W praktyce realizowane są jako:
W praktyce realizowane są jako:
generatory sekwencyjne
generatory sekwencyjne
układy mikroprogramowalne
układy mikroprogramowalne
DZIĘKUJĘ ZA UWAGĘ !
DZIĘKUJĘ ZA UWAGĘ !