Załącznik do ćwiczenia: Projektowanie liczników (jako przykładowy układ sekwencyjny)
Zadanie
Zaprojektować układ sekwencyjny Mealy'ego o zadanej tablicy przejść -tab.1 i wyjść -tab.2. Do zapamiętania stanów wewnętrznych układu użyć przerzutników typu JK.
Tab.1. Tablica przejść Tab.2. Tablica wyjść
A\X |
0 |
1 |
|
A\X |
0 |
1 |
||||||
0 1 2 3 |
1 2 3 0 |
3 0 1 2 |
|
0 1 2 3 |
1 0 0 0 |
0 1 0 0 |
0 0 1 0 |
0 0 0 1 |
0 1 1 1 |
1 0 1 1 |
1 1 0 1 |
1 1 1 0 |
|
Y3 |
Y2 |
Y1 |
Y0 |
Y3 |
Y2 |
Y1 |
Y0 |
Rozwiązanie zadania
Układ sekwencyjny przechodzi przez 4 stany wewnętrzne A = 0,1,2,3, więc są potrzebne 2 przerzutniki do ich realizacji. Kodujemy stany wewnętrzne wg tablicy kodów - tab. 3 otrzymując zakodowaną tablicę przejść - tab.1a i zakodowaną tablicę wyjść - tab.2a.
Tab.3. Tabela kodów Tab.4. Tabela wzbudzeń przerzutnika JK
A |
Q2 |
Q1 |
|
Qn |
Qn+1 |
J |
K |
0 1 2 3 |
0 0 1 1 |
0 1 1 0 |
|
0 0 1 1 |
0 1 0 1 |
0 1 Ø Ø |
Ø Ø 1 |
|
|
|
|
|
|
|
0 |
Ø - stan dowolny, tzn. 0 lub 1
Tab.1a. Zakodowana tabela przejść Tab.2a. Zakodowana tabela wyjść
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
||||||
00 01 11 10 |
01 11 10 00 |
10 00 01 11 |
|
00 01 11 10 |
1 0 0 0 |
0 1 0 0 |
0 0 1 0 |
0 0 0 1 |
0 1 1 1 |
1 0 1 1 |
1 1 0 1 |
1 1 1 0 |
|
Y3 |
Y2 |
Y1 |
Y0 |
Y3 |
Y2 |
Y1 |
Y0 |
Na podstawie tablicy wzbudzeń przerzutnika JK - tab.4 otrzymuje się wymagane stany wejść J1, K1 i J2, K2 - tab.5a i 5b, a następnie tablice 6a-6d. Dla przerzutnika nr 1 należy rozpatrzyć parzyste kolumny tab. 1a (podkreślone), a dla przerzutnika nr 2 nieparzyste.
Tab.1a Tab.5a Tab.5b
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
00 01 11 10 |
01 11 10 00 |
10 00 01 11 |
|
00 01 11 10 |
1Ø Ø0 Ø1 0Ø |
0Ø Ø1 Ø0 1Ø |
|
00 01 11 10 |
0Ø 1Ø Ø0 Ø1 |
1Ø 0Ø Ø1 Ø0 |
J1K1 J1K1 J2K2 J2K2
Tab.6a Tab.6b Tab.6c Tab.6d
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
00 01 11 10 |
1 Ø Ø 0 |
0 Ø Ø 1 |
|
00 01 11 10 |
Ø 0 1 Ø |
Ø 1 0 Ø |
|
00 01 11 10 |
0 1 Ø Ø |
1 0 Ø Ø |
|
00 01 11 10 |
Ø Ø 0 1 |
Ø Ø 1 0 |
J1 J1 K1 K1 J2 J2 K2 K2
Wyrażenia W1 otrzymuje się minimalizując tab. 6.
(W1)
3. Tablice 7a-d powstają z rozbicia zakodowanej tablicy wyjść - tab.2a. Minimalizując tab. 7 otrzymuje się wyrażenia W2.
Tab.7a Tab.7b Tab.7c Tab.7d
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
|
Q2Q1\X |
0 |
1 |
00 01 11 10 |
0 0 0 1 |
1 1 1 0 |
|
00 01 11 10 |
0 0 1 0 |
1 1 0 1 |
|
00 01 11 10 |
0 1 0 0 |
1 0 1 1 |
|
00 01 11 10 |
1 0 0 0 |
0 1 1 1 |
Y0 Y0 Y1 Y1 Y2 Y2 Y3 Y3
(W2)
4. Rysunek 1 przedstawia zaprojektowany układ sekwencyjny (opisany w pliku Ukl_sekA.ca4) w programie Electronics Workbench 4.0 - dla wersji 5.0 Ukl_sekA.ewb.
Rys. 1
--- koniec rozwiązania zadania ---