Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Układy sekwencyjne - pojęcie automatu

Podobne prezentacje


Prezentacja na temat: "Układy sekwencyjne - pojęcie automatu"— Zapis prezentacji:

1 Układy sekwencyjne - pojęcie automatu
v2 v1 v  V y  Y v3 S2 /Y1 S1 /Y2 v2 v1 v3 v1 v2 v3 Y3 Y1 Y2 v1 v3 v1 S3 /Y3 v2 jest definiowany przez określenie:  a) zbioru liter wejściowych V (X) i wyjściowych Y, b) zbioru stanów wewnętrznych S, c) funkcji przejść (ozn. ), d) funkcji wyjść (ozn. ).

2 Funkcja przejść i wyjść
Funkcja przejść: : S  X  S Funkcja wyjść: : S  X  Y (tzw. automat Mealy’ego) : S  Y (tzw. automat Moore’a) Automat może być zupełny lub niezupełny

3 Specyfikacja automatu
Tablica przejść-wyjść automatu: Moore’a Mealy’ego v1 v2 v3 y S1 S2 S3 y2 y1 y3 v1 v2 S1 S2 y1 y2 S3 y3 ... i graf Mealy’ego: Moore’a: stan wejście/wyjście stan/ wyjście wejście

4 Specyfikacja automatu
Tablica przejść-wyjść automatu: Moore’a Mealy’ego v1 v2 v3 y S1 S2 S3 y2 y1 y3 v1 v2 S1 S2 y1 y2 S3 y3 ... i graf /y2 Moore’a Mealy’ego

5 US Układ sekwencyjny UK BP Jak zrealizowaćautomat 01 00 11 10 x1 xn y1
000 001 010 Q1Q2 011 100 v1 v2 v3 Y S1 S4 y2 S2 S5 S3 y1 y3 y4 01 00 11 10 x1 xn y1 ym Q1 Qk q1 qk US Zakodowane litery wejściowe UK Zakodowane litery wyjściowe Zakodowane stany automatu BP wejście synchronizujące CLK W układach synchronicznych W układach asynchronicznych

6 Klasyfikacja układów sekwencyjnych
x1 xn y1 ym Q1 Qk q1 qk UK BP CLK wejście synchronizujące Układy sekwencyjne: Synchroniczne (BP zbudowany z przerzutników synchronicznych) Asynchroniczne (BP realizują opóźnienia lub przerzutniki asynchroniczne) Brak sygnału zegarowego

7 Synchroniczne układy sekwencyjne
x1 xn y1 ym UK Q1 Qk q1 qk BP Przerzutniki CLK FF I1 I2 Q CLK Przerzutnik – to automat typu Moore’a o dwóch stanach wewnętrznych, jednym lub dwóch wejściach informacyjnych, dwóch wyjściach (prostym i zanegowanym) oraz wejściu synchronizującym (zegarowym).

8 Przerzutniki W zależności od rodzaju wejść informacyjnych wyróżniamy przerzutniki typu: D, T, SR oraz JK. FF S R Q CLK FF J K Q CLK FF T Q CLK FF D Q CLK Przerzutnik jest określony: tablicą przejść, równaniem charakterystycznym, tablicą wzbudzeń.

9 Przerzutniki – tablice przejść
Q 1 D Q 1 Q’ = D SR Q 00 01 11 10 1 JK Q 00 01 11 10 1 Równanie charakterystyczne: Q’ = f(I1,I2,Q)

10 Przerzutniki – tablice wzbudzeń
Q Q’ D T S R J K 00 0 – 01 1 1 0 1 – 10 0 1 – 1 11 – 0 D – delay T – trigger S – Set (wejście włączające) R – Reset (wejście wyłączające) J – wejście włączające K – wejście wyłączające

11 Przebiegi czasowe – przerzutnik typu D
FF D Q CLK CLK D D Q 1 Q

12 Przebiegi czasowe – przerzutnik typu T
FF T Q CLK CLK T T Q 1 Q

13 Przebiegi czasowe - porównanie
CLK D (T) Q (D) Q (T)

14 Synteza układów sekwencyjnych
Etapy syntezy:  synteza abstrakcyjna (utworzenie tablicy przejść-wyjść)  redukcja (minimalizacja) liczby stanów  kodowanie stanów, liter wejściowych i wyjściowych  synteza kombinacyjna (obliczanie funkcji wzbudzeń przerzutników i funkcji wyjściowych) S1 S2 S3 v1 v2 v3 /Y2 /Y1 /Y3 CLK x Y minimalizacja v1 v2 S1 S2 y1 y2 S3 y3 kodowanie

15 Synteza kombinacyjna…
Y = f(X,Q) (Mealy) Q’ Q X Przerzu tniki Y UK we UK wy Obliczanie funkcji sterujących wejściami przerzutników (funkcje wzbudzeń) Obliczanie funkcji wyjściowych CLK Y = f(Q) (Moore) Q’ = f(X,Q)

16 Przykład syntezy (detektor sekwencji)
Do zakodowania trzech symboli stanów potrzebne są dwie zmienne binarne czyli wystarczą dwa przerzutniki, oznaczamy je Q1, Q0 X Q1Q0 1 A 01 00 B 11 C (–) 10 – – X S 1 A B C Kodowanie Y Samo przyporządkowanie symbolom stanów słów binarnych jest zazwyczaj dowolne, gdyż staramy się spełnić wyłącznie warunek jednoznaczności kodowania, ale…

17 Obliczanie funkcji wzbudzeń i wyjściowych
X S Q1Q0 1 A 01 00 B 11 C (–) 10 – – QQ’ D 00 01 1 10 11 Y X Q1Q0 1 00 01 11 10 D1=Q1’ D0=Q0’ Tworzymy tabelki dla funkcji wzbudzeń poszczególnych przerzutników

18 Schemat logiczny detektora sekwencji
x Y CLK Schemat logiczny rysujemy na podstawie obliczonych funkcji wzbudzeń:

19 Przykład... Realizacja T Y – jak poprzednio QQ’ T 00 01 1 10 11 X Q1Q0
1 00 01 11 10 X Q1Q0 1 00 01 11 10 QQ’ T 00 01 1 10 11 Q1’ Q0’ X Q1Q0 1 00 01 11 10 X Q1Q0 1 00 01 11 10 1 1 1 1 1 T1 T0 Y – jak poprzednio

20 Schemat logiczny detektora (T)
x Y CLK Y – jak poprzednio

21 Przykład... Realizacja JK
X Q1Q0 1 00 01 11 10 X Q1Q0 1 00 01 11 10 QQ’ J K 00 0 – 01 1 – 10 – 1 11 – 0 Q1’ Q0’ Q1Q0 1 00 01 11 10 J1 K1 Q1Q0 1 00 01 11 10 J0 K0 1 1 1

22 Schemat logiczny detektora (JK)
CLK Y x Y – jak poprzednio

23 Zadanie: licznik mod. 5 ze sterowaniem
(up, down, clear) x1 x2 clk y a – up – liczenie do przodu b – down – liczenie do tyłu c – clear – zerowanie a – up – liczenie do przodu b – down – liczenie do tyłu c – clear – zerowanie X S a b c Y Q2Q1Q0 00 01 11 10 S0 S1 S4 000 001 100 S2 010 S3 011 1 KODOWANIE

24 Licznik ze sterowaniem…
x1x2 Q2Q1Q0 00 01 11 10 000 001 011 010 110 111 101 100 X Q2Q1Q0 00 01 11 10 000 001 100 010 011 Q2’Q1’Q0’ Q2’Q1’Q0’

25 Przerzutniki D Dla przerzutników typu D: Q’ = D Q2’ Q0’ Q1’ = D2 = D1
x1x2 Q2Q1Q0 00 01 11 10 000 001 100 010 011 110 --- 111 101 Przerzutniki D Dla przerzutników typu D: Q’ = D Q2’Q1’Q0’ Q2’ Q0’ Q1’ x1x2 Q2Q1Q0 00 01 11 10 000 1 001 011 010 110 111 101 100 = D2 = D1 = D0

26 Licznik ze sterowaniem - przerzutniki D
x1x2 Q2Q1Q0 00 01 11 10 000 1 001 011 010 110 111 101 100 D2 D1 D0 D2 = D1 = D0 =

27 Licznik ze sterowaniem - przerzutniki JK
Tablica funkcji Q' Tablica funkcji J funkcji K

28 Licznik ze sterowaniem - JK
QQ’ J K 00 0 – 01 1 – 10 – 1 11 – 0 x1x2 Q2Q1Q0 00 01 11 10 000 1 001 011 010 110 111 101 100 x1x2 Q2Q1Q0 00 01 11 10 000 1 001 011 010 110 111 101 100 J2 K2 Q2’ J2 = K2 = 1

29 Licznik ze sterowaniem - JK
QQ’ J K 00 0 – 01 1 – 10 – 1 11 – 0 x1x2 Q2Q1Q0 00 01 11 10 000 001 1 011 010 110 111 101 100 x1x2 Q2Q1Q0 00 01 11 10 000 001 1 011 010 110 111 101 100 J1 K1 Q1’ J1 = K1 = x1

30 Licznik ze sterowaniem - JK
QQ’ J K 00 0 – 01 1 – 10 – 1 11 – 0 x1x2 Q2Q1Q0 00 01 11 10 000 1 001 011 010 110 111 101 100 x1x2 Q2Q1Q0 00 01 11 10 000 1 001 011 010 110 111 101 100 J0 K0 Q0’ J0 = K0 = 1

31 CAD Nie martwmy się ... Synteza kombinacyjna układów
sekwencyjnych może być (i zazwyczaj jest) procesem żmudnym, trzeba przetwarzać ogromne tablice wypełnione zerami i jedynkami. CAD Ale nie martwmy się! Proces ten – w systemach komputerowego projektowania – jest całkowicie zautomatyzowany.

32 jedyną czynnością użytkownika jest ... zapisanie tablicy p-w w języku
Nie martwmy się ... zapisanie tablicy p-w w języku AHDL lub VHDL …dalej automatycznie …aż do zaprogramowania

33 Specyfikacja automatu
Nie wnikając w szczegóły takiego zapisu (będą one omawiane na innych wykładach) trzeba podkreślić, że jest to wierne odwzorowanie tablicy przejść wyjść automatu. tablica przejśc-wyjść AHDL VHDL Odwzorowanie

34 Na przykład licznik ze sterowaniem...
TABLE % current current next next % % state input state output % s, v[] => s, y; s0, B"00„ => s1, ; s0, B"01„ => s4, ; s0, B"1X„ => s0, ; s1, B"00„ => s2, ; s1, B"01„ => s0, ; s1, B"1X„ => s0, ; s2, B"00„ => s3, ; s2, B"01„ => s1, ; s2, B"1X„ => s0, ; s3, B"00„ => s4, ; s3, B"01„ => s2, ; s3, B"1X„ => s0, ; s4, B"00„ => s0, ; s4, B"01„ => s3, ; s4, B"1X„ => s0, ; END TABLE; X S 00 01 10 Y S0 S1 S4 S2 S3 1 zapisany w języku AHDL, po wprowadzeniu...

35 …specyfikacji do edytora tekstowego
TABLE % current current next next % % state input state output % s, v[] => s, y; s0, B"00„ => s1, ; s0, B"01„ => s4, ; s0, B"1X„ => s0, ; s1, B"00„ => s2, ; s1, B"01„ => s0, ; s1, B"1X„ => s0, ; s2, B"00„ => s3, ; s2, B"01„ => s1, ; s2, B"1X„ => s0, ; s3, B"00„ => s4, ; s3, B"01„ => s2, ; s3, B"1X„ => s0, ; s4, B"00„ => s0, ; s4, B"01„ => s3, ; s4, B"1X„ => s0, ; END TABLE;

36 i uruchomieniu kompilatora…
...zostanie automatycznie zrealizowany bez udziału projektanta. EPM7032 q0 _EQ001 = !q0 & q1 & !X1 & X2 # q2 & !X1 & X2 # !q0 & !q2 & !X1 & !X2; q1 _EQ002 = q2 & !X1 & X2 # q0 & q1 & !X1 & X2 # !q0 & q1 & !q2 & !X1 & !X2 # q0 & !q1 & !q2 & !X1 & !X2; q2 _EQ003 = !q0 & !q1 & !q2 & !X1 & X2 # q0 & q1 & !q2 & !X1 & !X2;

37 Wniosek Skoro kompilator oblicza funkcje wzbudzeń automatycznie, to umiejętność ta nie jest w dzisiejszych czasach sprawą najważniejszą. Lepiej skoncentrować się na tych metodach i procedurach syntezy logicznej, które nie są jeszcze wbudowane do systemów komercyjnych.


Pobierz ppt "Układy sekwencyjne - pojęcie automatu"

Podobne prezentacje


Reklamy Google