Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałDanuta Dziedzic Został zmieniony 9 lat temu
1
I T P W ZPT Konwerter BIN2BCD 1 LK „8” DEC LK = 0 LOAD1 R3R2R1 K S3 S2S1 A B „5” K 5 MUX 1 0 A R4 LOAD2 Y = LD B LB „3” US Układ wykonawczy Układ sterujący UKŁADY MIKROPROGRAMOWANE
2
I T P W ZPT 2 Układ sterujący (kontroler ) Dane wyjściowe Dane wejściowe Sygnały sterujące Stan części operacyjnej Układ wykonawczego System cyfrowy
3
I T P W ZPT 3 Mikroprogramowany układ sterujący Skoro układ sekwencyjny można opisać siecią działań, to powstaje pytanie, czy nie można takiego układu realizować bezpośrednio – bez przekształcania SD na opis w postaci grafu automatu.
4
I T P W ZPT 4 Mikroprogramowany układ sterujący 1. Sekwencyjny układ synchroniczny (Moore’a lub Mealy’ego) 2. Funkcje przejść i wyjść są zapisane w pamięci stałej typu ROM zwanej pamięcią mikroprogramu 3. W każdym takcie pracy układu jest badany (w zasadzie) jeden warunek (sygnał zewnętrzny) spośród zbioru X wszystkich wejść 4. Opis działania za pomocą sieci działań
5
I T P W ZPT 5 Sieć działań Graf zbudowany z wierzchołków (klatek) Klatki: ZZZ x i,...,x k operacyjne warunkoweselekcyjne x x1x1 Z1Z1 Z2Z2 x3x3 x2x2 Z3Z3 x1x1 Z4Z4 i krawędzi
6
I T P W ZPT 6 Mikroinstrukcja - podstawowe segmenty SD MIKROINSTRUKCJA MI (A i ) Moore’a Mealy’ego A i : Z = Z a, if x then A’ = A j else A’ = A k A i :, if x then Z = Z a, A’ = A j else Z = Z b, A’ = A k wygenerowanie mikrorozkazu Z badanie warunku x X określenie adresu A’ następnej wykonywanej mikroinstrukcji Z AiAi AjAj AkAk x 01 ZaZa x AiAi AjAj AkAk 01 ZbZb
7
I T P W ZPT 7 Podział sieci działań… na segmenty odpowiadające mikroinstrukcjom A0A0 A1A1 A2A2 x1x1 Z1Z1 Z2Z2 x3x3 x2x2 Z3Z3 x1x1 Z4Z4 A3A3 A4A4 A5A5 Moore’a Z AiAi AjAj AkAk x 01 AiAi AjAj AkAk x 01 A3A3 Z AiAi AjAj Stany wewnętrzne
8
I T P W ZPT 8 Sieć działań reprezentuje automat Podział sieci na stany (dla automatu) A0A0 A1A1 A2A2 A3A3 x1x1 Z1Z1 Z2Z2 x3x3 x2x2 Z3Z3 x1x1 Z4Z4 0 0 0 0 1 1 1 1 x1x2x3Ax1x2x3A 000001011010110111101100 A 0 A 1 A 3 A 2 A 1 A 2 A 1 A 3
9
I T P W ZPT 9 Mikroprogramowany układ sterujący Takt RA UA UO PM MI A DMI Dekoder mikroinstrukcji Sygnały (warunki) zewnętrzne i wewnętrzne Schemat blokowy MUS
10
I T P W ZPT 10 Format mikroinstrukcji Format mikroinstrukcji: MI = Pola: S - sterujące (kod MI) B - adresowe C - kontrolne Z - operacyjne (mikrorozkaz) PM S B C Z Adres mikroinstrukcji Mikroinstrukcja
11
I T P W ZPT 11 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 I 1 : Z, if x c then A’ = A i else A’ = A i+1, I 2 : Z, if x c then A’ = A i+2 else A’ = A i+1, I 3 : Z, A’ = A j. W rozwiązaniu należy podać: – fragmenty sieci działań (schematy) odpowiadające wszystkim mikroinstrukcjom, – schemat blokowy układu sterującego, – tablicę prawdy dekodera mikroinstrukcji oraz minimalne wyrażenia boolowskie opisujące jego wyjścia.
12
I T P W ZPT 12 Przykład c.d. - mikroinstrukcje I 1 : Z, if x c then A’ = A i else A’ = A i+1 I 3 : Z, A’ = A j I 2 : Z, if x c then A’ = A i+2 else A’ = A i+1 Z AiAi x 0 1 AiAi A i+1 AiAi Z x 0 1 A i+2 AjAj AiAi Z C, Z B, Z (oczekiwanie na spełnienie warunku) (skok warunkowy o 2)) Formaty mikroinstrukcji
13
I T P W ZPT 13 PM Przykład syntezy US - schemat blokowy 00CZ 01CZ 10BZ Z +2 B X C s1s0s1s0 00 01 11 MA Q1Q0Q1Q0 DMI xcxc s1s0s1s0 L Q1Q0Q1Q0 LICZNIK L A Adresy: A, A+1, A+2, B B C, Z B, Z Formaty mikroinstrukcji Pola C i B są polami zgodnymi ponieważ nie występują jednocześnie w żadnej mikroinstrukcji. Można je umieścić w jednym segmencie PM
14
I T P W ZPT 14 Przykład c.d. – dekoder mikroinstrukcji MIs1s1 s0s0 xcxc LQ1Q1 Q0Q0 1 0000–– 001101 2 0100–– 011111 3 10–100 00 01 11 MA Q1Q0Q1Q0 +2 BA A+2 LICZNIK L A Count 0 Load 1 L = s 1 + x c Q 1 = s 0 x c DMI xcxc s1s0s1s0 L Q1Q0Q1Q0 Z AiAi x 0 1 AiAi A i+1 MI 1 AiAi Z x 0 1 A i+1 A i+2 MI 2 AjAj AiAi Z MI 3
15
I T P W ZPT 15 Przykład (str. 139 SUL) Zaprojektować układ sterujący o następującej liście mikroinstrukcji: a) A i : Z, A' = A i+1 b) Ai : Z, A' = A j. c) A i : Z, if x c then A' = A i+1 else A' = A i, Ponadto układ ma umożliwiać obsługę mikropodprogramu.
16
I T P W ZPT 16 Mikroinstrukcje do obsługi (mikro)podprogramu xcxc A i+1 Warunkowe wejście do podprogramu Warunkowe wyjście z podprogramu A i A j A k A i+1 A k+1 1 0 A :=RS RS := A i+1 A i : if x c then A' = A j, RS:= A i+1 else A' = A i+1 A i : if x c then A' = RS else A' = A i+1 adres A i+1 powrotu z podprogramu zapamiętany w rejestrze śladu RS xcxc 1 0 Rejestr Śladu q
17
I T P W ZPT 17 Przykład c.d. Zaprojektować układ sterujący o następującej liście mikroinstrukcji: a) A i : Z, A' = A i+1 b) A i : Z, A' = A j. c) A i : Z, if x c then A' = A i+1 else A' = A i, Ponadto układ ma umożliwiać obsługę mikropodprogramu. d) A i : if x c then A' = A j, RS:= A i+1 else A' = A i+1 e) A i : if x c then A' = RS else A' = A i+1
18
I T P W ZPT 18 Przykład cd. Adresy: A i+1 A j A i RS
19
I T P W ZPT 19 Przykład cd. realizacja z rejestrem adresowym Adresy: A i+1 A j A i RS
20
I T P W ZPT 20 Przykład cd. realizacja z rejestrem adresowym Adresy: A i+1 A j A i RS +1 A I 0 I 1 I 2 I 3 Q q RS RA MUXA PM Z C B S X x c S Qq v v x c MUXW DMI
21
I T P W ZPT 21 Przykład cd. MIs 2 s 1 s 0 x c Qqv a0 0 0 ─I2I2 HOLDZ b0 0 1 ─I0I0 HOLDZ c 0 1 0 0 0 1 I1I2I1I2 HOLD ZZZZ d 0 1 1 0 0 1 1 1 I2I0I2I0 HOLD LOAD NOP e 1 0 0 0 1 0 0 1 I2I3I2I3 HOLD – NOP a)Przejście bezwarunkowe, Z b)Skok bezwarunkowy, Z c)Przejście warunkowe, Z d)Warunkowe wejście do podprogramu e)Warunkowe wyjście z podprogramu
22
I T P W ZPT 22 Przykład cd. z licznikiem adresowym Adresy: A i+1 count A i hold A j load RS load
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.