UKAADY MIKROPROGRAMOWANE
I
T
P
W
ZPT
1
System cyfrowy
Cyfrowy zespół funkcjonalny CZF
XZ D
D, F - przetwarzana informacja
(wektory binarne),
Z
X - sygnały warunków,
Z - sygnały sterujące
US UO
(mikrorozkazy)
XP UO - układ operacyjny
US - układ sterujący
ZY F
I
T
Automat
P
Mikroprogramowany układ sterujący
W
ZPT
2
Mikroprogramowany układ sterujący
1. Układ synchroniczny (Moore a lub Mealy ego)
2. Funkcje przejść i wyjść są zapisane w pamięci
(stałej) mikroprogramu)
3. W każdym takcie pracy układu jest badany
(w zasadzie) jeden warunek z wektora X
4. Opis działania za pomocą sieci działań
(flow diagram)
I
T
P
W
ZPT
3
Układy mikroprogramowane...
... można traktować jako pewien styl projektowania
układów cyfrowych
Były one popularne do końca lat 80. Produkowano je w
postaci wyspecjalizowanych układów scalonych tzw.
mikroprogramowanych układów sterujących.
MUS
???
???
Pamięć mikroprogramu
I
(ROM)
T
P
W
ZPT
4
Sieć działań
Graf zbudowany z wierzchołków (klatek) i krawędzi
Klatki:
Z1
operacyjne
Z2
Z Z Z
x1
xi,...,xk
x
x2 x3 x1
Z3
I
T
P
warunkowe selekcyjne
W
Z4
ZPT
5
Układ sterujący - podstawowe czynności
MIKROINSTRUKCJA MI (Ai)
wygenerowanie mikrorozkazu Z
badanie warunku x " X
określenie adresu A następnej wykonywanej mikroinstrukcji
Ai Ai
Mealy ego
Moore a
1 0
Z
x
1 0
Za Zb
x
Aj Ak Aj Ak
I
T
P
W
Ai : Z = Za, if x then A = Aj else A = Ak Ai :, if x then Z = Za, A = Aj else Z = Zb, A = Ak
ZPT
6
Sieć działań
Podział sieci na stany (dla MUS)
Moore a
Ai
Ai
A0
Z1
Z
Z
A1
Z2
1 0
x
Aj
x1
Aj Ak
A2
Ai
A33
A
x2 x3 x1
Ć
Ć
Ć
Z3 Ć
A4
1 0
I
x
T
P A5
W
Z4
Aj Ak
ZPT
7
Sieć działań
Podział sieci na stany
x1x2x3 000 001 011 010 110 111 101 100
(dla automatu)
A
A A A A A A A A A
0 1 1 1 1 1 1 1 1
A0
A A A A A A A A A
1 1 1 1 1 3 2 2 1
Z1
A A A A A A A A A
2 1 1 1 1 3 3 3 3
A A A A A A A A A
3 3 3 3 3 3 3 3 3
A1
Z2
0
x1
1
0
A2
0
0
x2 x3 x1
Z3
I
T 1
1
P
1
W
A3
ZPT
Z4
8
Mikroprogramowany układ sterujący
RA
Takt
Sygnały (warunki)
UA
A
zewnętrzne
i wewnętrzne
PM
MI
DMI
I
T
Dekoder mikroinstrukcji
P
UO
W
ZPT
9
Format mikroinstrukcji
Adres mikroinstrukcji
Format mikroinstrukcji:
MI =
PM
Pola:
S - sterujÄ…ce (kod MI)
Mikroinstrukcja
B - adresowe
C - kontrolne
Z - operacyjne
(mikrorozkaz)
S B C Z
I
T
P
W
ZPT
10
Przykład syntezy MUS
MajÄ…c do dyspozycji licznik o mikrooperacjach LOAD, COUNT ze
sterowaniem odpowiednio: 1 (dla LOAD), 0 (dla COUNT), pamięć ROM
oraz ewentualnie inne bloki funkcjonalne i bramki, zaprojektować
mikroprogramowany układ sterujący o następującej liście
mikroinstrukcji
µI1 : Z, if xc then A = Ai else A = Ai+1,
µ
µ
µ
µI2 : Z, if xc then A = Ai+2 else A = Ai+1,
µ
µ
µ
µI3 : Z, A = Aj.
µ
µ
µ
W rozwiązaniu należy podać:
fragmenty sieci działań (schematy) odpowiadające wszystkim
mikroinstrukcjom,
schemat blokowy układu sterującego,
I
T
tablicÄ™ prawdy dekodera mikroinstrukcji oraz minimalne
P
W
wyrażenia boolowskie opisujące jego wyjścia.
ZPT
11
Przykład c.d. - mikroinstrukcje
µI1 : Z, if xc then A = Ai else A = Ai+1
µ
µ
µ
(oczekiwanie na spełnienie warunku)
µI2 : Z, if xc then A = Ai+2 else A = Ai+1
µ
µ
µ
(skok warunkowy o 2))
Ai
Ai
µI3 : Z, A = Aj
µ
µ
µ
Ai
(skok bezwarunkowy)
Z
Ai
Z
1
x
Z
1
x
0
Ai+2
)#B, Z*#
Ai+1
I
0
Aj
T
P
)#C, Z*#
Ai+1
W
)#C, Z*#
ZPT
12
Przykład syntezy US - schemat blokowy
Adresy:
B
+2
A, A+1, A+2, B
Q1
00 01 11
Q0
MA
Formaty
mikroinstrukcji
LICZNIK
L
)#C, Z*#
)# *#
)# *#
)# *#
Pola C i B sÄ… polami
A
zgodnymi ponieważ nie
)#C, Z*#
)# *#
)# *#
)# *#
występują
jednocześnie w żadnej
)#B, Z*#
)# *#
)# *#
)# *#
mikroinstrukcji.
00 C Z
Można je umieścić w
PM
X 01 C Z
jednym segmencie PM
10 B Z
B
I
L
s1
C
T
DMI
s0
P
Z
Q1
W
s1s0
Q0
xc
ZPT
13
Przykład c.d. dekoder mikroinstrukcji
Ai
Ai
Ai
A+2
MI3 BA
MI2
MI1
Ai
+2
L
s1
Z Z
DMI
s0
Q1 Q1
00 01 11
Z
MA
Q0 Q0
xc
1
1
x
x
Ai+2
0
Aj
0
Ai+1
MI s1 s0 xc L Q1 Q0
Ai+1
0 0 0 0
1
0 0 1 1 0 1
Count 0
0 1 0 0
2
LICZNIK
L
0 1 1 1 1 1
Load 1
A
3 1 0 1 0 0
I
T
P
W
L = s1 + xc Q1 = s0xc
Q0 = s1
ZPT
14
Sekwenser 2910 (12-bitowy)
DCP
RLD
REJESTR
WST
FULL
D
W W
Detektor
12
zera
Y
I E Y
4
12
CC
J J
CCEN
FULL
STOS
R 2910 R
RLD
PL
C C
CI
MAP
OE
I I
clock
VECT
A A
D R F uM
LMP
CC
CCEN
PLA
I
CI
INC
I
4
T
P
W OE
Y
ZPT
15
PL
MAP
VECT
Sekwenser 2910
Na przykład rozbudowany układ 2910 można znalezć
w postaci wirtualnej w książce K. C. Changa Digital
system Design with VHDL Synthesis: An Integrated
Approach, IEEE Computer Society, Los Alamitos 1999.
I
T
P
W
ZPT
16
Wyszukiwarka
Podobne podstrony:
ulog w8b e
ulog z t
ulog w6b
ulog w12
ulog w7
ulog w6
ulog w9
ulog w6a
ulog w4b
ulog w4a
ulog w10
ulog w8
ulog at
ulog t w8
ulog w7b
ulog w8a e
ULOG zad KOL1
ulog w8a T
więcej podobnych podstron