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
1. 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 2. 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.
X Q X Q X Q K X Q X Q X Q J X Q X Q X Q K X Q X Q X Q J 1 1 1 2 1 1 1 2 2 2 2 1 2 2 2 1 (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 X Q Q X Q X Q X Q Q Y X Q Q X Q X Q X Q Q Y X Q Q X Q X Q X Q Q Y X Q Q X Q X Q X Q Q Y 1 2 1 2 1 2 3 1 2 1 2 1 2 2 1 2 2 1 1 2 1 1 2 1 2 1 2 0 (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