Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Układy asynchroniczne

Podobne prezentacje


Prezentacja na temat: "Układy asynchroniczne"— Zapis prezentacji:

1 Układy asynchroniczne
Model układu asynchronicznego x1 xn y1 ym Q1 Qk q1 qk UK układ kombinacyjny BP blok pamięci realizuje opóźnienia x x W automacie asynchronicznym wszystkie stany są stanami stabilnymi t s Tadeusz Łuba ZCB Stan stabilny s: (s,x) = s

2 Najprostszy układ asynchroniczny
SR q 00 01 11 10 1 Przerzutnik SR Q S Q Tadeusz Łuba ZCB R

3 Przykład Zaprojektować układ asynchroniczny o dwóch wejściach binarnych x1, x2 i jednym wyjściu y, który ma sygnalizować jedynką pojawienie się na wejściu sekwencji wektorów wejściowych ..., 00, 01, 11. Należy założyć, że jednoczesna zmiana dwóch sygnałów wejściowych jest niemożliwa. x1x2 S 00 01 11 10 y 1 2 3 4 5 6 11 00 01 01 11 1/0 4/1 2/0 00 10 00 01 10 01 00 11 6/0 01 3/0 5/0 Tadeusz Łuba ZCB 11 10 11 10

4 Redukcja stanów . . . jest prosta a kodowanie . . . x1x2 S 00 01 11 10
y x1x2 S 00 01 11 10 y 1 2 3 4 5 6 A 1,2 1 2 4 3 B 4 6 4 3 1 C 3,5,6 1 6 5 3 x1x2 S 00 01 11 10 y A B C 1 Tadeusz Łuba ZCB a kodowanie . . .

5 Graf stanów automatu minimalnego
Kodowanie stanów . . . jest trudne x1x2 S 00 01 11 10 y A B C 1 Kod stanu 11 00 00 11 01 A/0 B/1 01 10 00 10 01 C/0 x1x2 S 00 01 11 10 y A B 1 (-) C 10 10 01 11 Graf stanów automatu minimalnego Tadeusz Łuba ZCB Y = Q2

6 Analiza działania układu asynchronicznego (1)
x1 x2 x1x2 S 00 01 11 10 y A B 1 (-) C Układ kombinacyjny (bez opóźnień) y Q1 Q2 q1 q2 10 1 2 Opóźnienia Stan wejść 1 >  2 0 1 0 0 1 0  1 <  2 0 1 1 1 1 0 01 ––;00 00 Wyścig krytyczny! 1 >  2 11 ––;01 01 01 ––;10 01 01 ––;10 11 01 ––;10 10 Tadeusz Łuba ZCB 1 <  2 Stan wewn. Stan następny Wyścig niekrytyczny!

7 Analiza działania układu asynchronicznego (2)
x1 x2 y Q1 Q2 q1 q2 Układ kombinacyjny (bez opóźnień) 1 2 Opóźnienia x1x2 S 00 01 11 10 y A B 1 (-) C 10 10 Stan wejść 10 ––;10 00 10 ––;10 1 >  2 11 ––;01 01 10 ––;10 01 10 Wyścig niekrytyczny! 10 ––;10 11 10 ––;10 1 <  2 Stan wewn. Stan następny Tadeusz Łuba ZCB

8 Kodowanie stanów Aby uniknąć wyścigów krytycznych należy kodowanie przeprowadzić tak, aby kody stanów, pomiędzy którymi jest przejście, różniły się tylko na jednej pozycji. Np.: 000 001; 011 010; 111  101 itp.. Takie kodowanie zapewnia „rozpięcie” grafu stanów automatu na kwadracie lub sześcianie kodowym. 101 100 00 01 000 001 Tadeusz Łuba ZCB 10 11 010 011 110 111

9 Kodowanie stanów 01 00 10 A/0 C/0 11 Kod stanu B/1 00 01 11 10 A B C 10 10 01 (-) (-) 01 11 x1x2 S 00 01 11 10 y A B 1 (-) C Wyścig niekrytyczny można wykorzystać do właściwego kodowania stanów w układach asynchronicznych. Tadeusz Łuba ZCB

10 Tablice przejść Q1’Q2’ Q1’ Q2’ x1x2 S 00 01 11 10 y A B – 1 (-) C x1x2
B 1 (-) C x1x2 Q1Q2 00 01 11 10 1 -- - Tadeusz Łuba ZCB Q1’Q2’ Q1’ Q2’

11 Dlaczego dodano dodatkową pętlę – składnik ?
Funkcje wzbudzeń x1x2 Q1Q2 00 01 11 10 1 -- - Y = Q2 Q1’Q2’ Q1’ Q2’ Dlaczego dodano dodatkową pętlę – składnik ? Tadeusz Łuba ZCB Zjawisko hazardu

12 Jest to hazard statyczny - szkodliwy w układach asynchronicznych!
Zjawisko hazardu 1 2 Przy Q1 = 1, x1 = 1, a przy zmianie x2: 1  0 na wyjściu Z powinna być stała 1 Na skutek opóźnienia sygnału w sygnale Z pojawia się krótki impuls o wartości 0. Jest to hazard statyczny - szkodliwy w układach asynchronicznych! Tadeusz Łuba ZCB

13 Zjawisko hazardu W układach asynchronicznych funkcje wzbudzeń muszą być realizowane w taki sposób, aby nie występował hazard statyczny. Wyrażenia boolowskie należy uzupełnić o składnik (nadmiarowy), odpowiadający pętli na tablicy Karnaugha, w taki sposób, aby każde dwie sąsiednie jedynki były objęte wspólną pętlą. x1x2 Q1Q2 00 01 11 10 1 - Tadeusz Łuba ZCB

14 Realizacja układu Y = Q2 Tadeusz Łuba ZCB

15 Jak jest zbudowany przerzutnik synchroniczny? (1)
Q Clk R Jest to synchronizacja „szerokością impulsu” – latch (zatrzask) Strefa oddziaływania CLK Stan Q przerzutnika zmienia się dwukrotnie w czasie trwania okresu przebiegu zegarowego! S R Tadeusz Łuba ZCB Q

16 Problem synchronizacji
Przerzutniki tego typu mają prostą budowę, ale mogą służyć tylko do przechowywania (zatrzaskiwania) informacji. Nie mogą służyć do budowy układów sekwencyjnych. Prawidłowa synchronizacja powinna działać tak, aby w czasie trwania okresu przebiegu zegarowego sygnał wejściowy przerzutnika był odczytywany jeden raz, a stan przerzutnika zmieniał się także jeden raz – niezależnie od zmiany sygnałów wejściowych. Tadeusz Łuba ZCB

17 Jak jest zbudowany przerzutnik synchroniczny? (2)
Q 1 ? Przerzutnik typu D Clk Tadeusz Łuba ZCB

18 Przykład – synteza przerzutnika D
Synchroniczny przerzutnik typu D synchronizowany zboczem dodatnim Q 00 01 11 10 1 Tadeusz Łuba ZCB

19 Przykład c.d. 11 01 Automat sterujący wytwarza na wyjściach Y1 lub Y2 sygnał 0 (włączający lub wyłączający przerzutnik ) tylko wówczas, gdy w sygnale Clk pojawi się zbocze synchronizujące, to jest zmiana Clk 0  1. D clk 00 10 11 2/01 00 10 1/11 Jeśli w tym momencie na wejściu D jest 1, to 0 pojawi się na wyjściu Y1 ( ) – przerzutnik zostanie włączony. 01 11 01 Jeśli na wejściu D jest 0, to 0 pojawi się na wyjściu Y2 ( ) – przerzutnik zostanie wyłączony 00 10 3/10 Tadeusz Łuba ZCB

20 Zakodowana tablica p-w
Przykład c.d. Tablica przejść-wyjść D,clk S 00 01 11 10 Y1Y2 1 3 2 (clk  c) D,c Q1Q2 00 01 11 10 Y1Y2 -- (2) 01 (1) 11 (3) 10 Zakodowana tablica p-w (kody stanów takie same, jak wyjścia Y1, Y2) Tadeusz Łuba ZCB

21 Przykład c.d. Q1’ Q1’ (clk  c) Q1’ Q2’ D,c Q1Q2 00 01 11 10 Y1Y2 --
(2) 01 (1) 11 (3) 10 Q1’ Q2’ D,c Q1Q2 00 01 11 10 - (2) 01 1 (1) 11 (3) 10 D,c Q1Q2 00 01 11 10 - (2) 01 1 (1) 11 (3) 10 Tadeusz Łuba ZCB Q1’ Q1’

22 Przykład - realizacja Tadeusz Łuba ZCB

23 Kodowanie metodą „n1” Liczba stanów automatu wynosi n. Długość wektora kodowego ustalamy na n  1. Jeden stan kodujemy wektorem złożonym z samych zer. Pozostałe stany kodujemy wektorami z jedną jedynką. Między każde dwa stany S, T kodowane wektorami z jedną jedynką wstawiamy stan niestabilny R o wektorze kodowym R = S  T A: 000 C: 100, B: 010, D: 001 110 x1x2 S 00 01 11 10 y A D B C 1 10 B/0 01 D/0 00 C/1 11 A/0 000 100 110 Tadeusz Łuba ZCB 011 001 010

24 Modyfikacja tablicy p-w
Kodowanie „n  1” 10 B/0 01 D/0 00 C/1 11 A/0 000 100 001 010 011 110 Modyfikacja tablicy p-w x1x2 Q1Q2Q3 00 01 11 10 y A 000 D B 010 C 100 1 001 110 011 E F E E F F E B C F D B Tadeusz Łuba ZCB

25 Zakodowana tablica p-w
Kodowanie „n  1” Zakodowana tablica p-w x1x2 Q1Q2Q3 00 01 11 10 y A 000 001 010 D 011 F B 110 E 100 (-) 111 101 C 1 Tadeusz Łuba ZCB Q1’ Q2’Q3’ Y = Q1

26 Kodowanie „n  1” x1x2 Q1Q2Q3 00 01 11 10 000 001 011 010 1 110 111 101 100 Tadeusz Łuba ZCB

27 Kodowanie „n  1” x1x2 Q1Q2Q3 00 01 11 10 000 1 001 011 010 110 111 101 100 Pętla antyhazardowa Tadeusz Łuba ZCB

28 Kodowanie „n  1” x1x2 Q1Q2Q3 00 01 11 10 000 1 001 011 010 110 111 101 100 Tadeusz Łuba ZCB

29 Zadanie dodatkowe Zaprojektować asynchroniczny układ o wejściach x1 i x2 wyjściu y pracujący w następujący sposób: y=1 gdy x1=x2=1 i przedostatnia zmiana sygnału wejściowego była zmianą na wejściu x1. W pozostałych przypadkach y=0. Zmiana przedostatnia 11 01 11/1 00 10 Zmiana ostatnia 01 7/0 11 00 00 01 01 11 01 11 10 00 01 11 1/0 3/1 2/0 4/0 11 5/0 10 11 00 10 Tadeusz Łuba ZCB 11 00 6/0 10 10

30 Zadanie c.d. 1/0 2/0 6/0 3/1 00 11 10 01 4/0 5/0 7/0 x1x2 S 00 01 11 10 y 1 2 6 5 3 4 7 Tadeusz Łuba ZCB

31 Zadanie c.d. Minimalizacja Automat minimalny x1x2 S 00 01 11 10 y 1 –
6 5 3 4 7 x1x2 S 00 01 11 10 y 1,6 5 2 1 6 2,4 3 4 5,7 7 Automat minimalny x1x2 S 00 01 11 10 y A 1,6 D B 2,4 C 1 5,7 Tadeusz Łuba ZCB

32 Zadanie c.d. Kodowanie x1x2 S 00 01 11 10 y A D B C – 1 x1x2 S 00 01
C 1 x1x2 S 00 01 11 10 y A 00 C 01 1 B 11 D 10 01 01 11 00 01 10 11 A/0 C/1 10 01 11 00 01 11 Tadeusz Łuba ZCB 10 01 01 D/0 B/0 10 00 00 10 11

33 Zadanie c.d. Synteza kombinacyjna Q1’ Q2’ x1x2 Q1Q2 00 01 11 10 y – 1
1 Synteza kombinacyjna Q1’ Q2’ x1x2 Q1Q2 00 01 11 10 1 x1x2 Q1Q2 00 01 11 10 1 Tadeusz Łuba ZCB

34 Zadanie c.d. - realizacja
y x1 x2 Q1’ Q2’ Tadeusz Łuba ZCB


Pobierz ppt "Układy asynchroniczne"

Podobne prezentacje


Reklamy Google