UNIWERSYTET ZIELONOGÓRSKI
INSTYTUT INFORMATYKI I ELEKTROTECHNIKI
ZAKAAD INŻYNIERII KOMPUTEROWEJ
Przygotował: mgr inż. Remigiusz Wiśniewski
LABORATORIUM 10 - 12: SYNTEZA UKAADÓW SEKWENCYJNYCH
Zagadnienia: projektowanie automatów synchronicznych (automat Moore a i automat
Mealy ego), graf stanów, tablice przejść/wyjść, równania wzbudzeń przerzutników, równania
wyjść układu.
Przykład: Zaprojektować synchroniczny licznik rewersyjny modulo 4 zliczający
w naturalnym kodzie binarnym. Do realizacji wykorzystać automat Moore a.
RozwiÄ…zanie:
1. Graf stanów układu.
Na podstawie opisu słownego należy stworzyć graf stanów układu. Należy tu zwrócić uwagę,
że projektowany układ to licznik rewersyjny modulo 4, wobec czego automat może zostać
zrealizowany z wykorzystaniem 4 stanów. Przejścia pomiędzy poszczególnymi stanami
determinuje sygnał wejściowy (oznaczony jako X). W przypadku gdy X jest w stanie wysokim,
układ zlicza w przód (czyli realizuje sekwencję 0, 1, 2, 3, 0,..,). Gdy X jest w stanie niskim
układ zlicza w tył (sekwencja 0, 3, 2, 1, 0,..,).
Poniżej przedstawiony został graf opisujący wszystkie możliwe zmiany stanów w zależności
od sygnału wejściowego X:
S0
X
X
/X
/X
Y1 Y0 Y0
S3 S1
/X /X
X
X
S2
Y1
Rys. 1. Graf stanów układu
2. Tabela stanów.
Alternatywą dla grafu stanów może być tabela stanów układu. Poszczególne wiersze tabeli
zawierają wszystkie możliwe stany w jakich może się znalezć układ oraz reguły decyzyjne
powodujące przejścia pomiędzy poszczególnymi stanami.
STAN STAN
WARUNEK WYJÅšCIA
AKTUALNY NASTPNY
S0 /X S3 /Y1 /Y0
S0 X S1 /Y1 /Y0
S1 /X S0 /Y1 Y0
S1 X S2 /Y1 Y0
S2 /X S1 Y1 /Y0
S2 X S3 Y1 /Y0
S3 /X S2 Y1 Y0
S3 X S0 Y1 Y0
3. Dobór zmiennych stanów i kodowanie stanów.
Każdemu ze stanów należy przyporządkować unikalny kod jednoznacznie identyfikujący stan,
w jakim się znalazł układ. Ilość przerzutników niezbędnych do realizacji układu można określić na
podstawie wzoru:
n = log 2 S
gdzie:
- n oznacza ilość przerzutników,
- S oznacza ilość stanów układu
W prezentowanym przykładzie ilość stanów jest równa 4, wobec czego do realizacji układu potrzebne
będą dwa przerzutniki, których kombinacje wyjść Q utworzą kody stanów. Kody zostały dobrane
w taki sposób, aby kolejne stany różniły się jedną zmienną (kod Gray a):
KOD
STAN
Q1 Q0
S0 0 0
S1 0 1
S2 1 1
S3 1 0
4. Tablica przejść/wyjść układu.
Kolejny krok to tabela przejść/wyjść układu - analogicznie do tabeli stanów z punktu 2 z tą
różnicą, że poszczególne stany tabeli są zakodowane wg reguł określonych w punkcie 3.
STAN AKTUALNY WARUNEK STAN NASTPNY WYJÅšCIA
STAN Q1 Q0 X STAN Q1* Q0* Y1 Y0
S0 0 0 0 S3 1 0 0 0
S0 0 0 1 S1 0 1 0 0
S1 0 1 0 S0 0 0 0 1
S1 0 1 1 S2 1 1 0 1
S2 1 1 0 S1 0 1 1 0
S2 1 1 1 S3 1 0 1 0
S3 1 0 0 S2 1 1 1 1
S3 1 0 1 S0 0 0 1 1
5. Wybór typu przerzutnika.
W tym etapie należy wybrać przerzutnik do realizacji układu. W prezentowanym przykładzie
układ zostanie zrealizowany z wykorzystaniem zarówno przerzutnika typu D jak i przerzutnika
typu JK.
Równania na następny stan przerzutników:
- dla przerzutnika typu D: Q* = D
- dla przerzutnika typu JK: Q* = J/Q + /KQ
6. Tablica wzbudzeń przerzutników, wyznaczanie równań dla przerzutników.
Kolejny krok to wyznaczenie równań wzbudzeń dla przerzutników na podstawie zmienności
stanów poszczególnych przerzutników w każdej regule decyzyjnej (tabela wzbudzeń
przerzutników):
STAN AKTUALNY WARUNEK STAN NASTPNY PRZERZUTNIKI
STAN Q1 Q0 X STAN Q1* Q0* D1 D0 J1 K1 J0 K0
S0 0 0 0 S3 1 0 1 0 1 - 0 -
S0 0 0 1 S1 0 1 0 1 0 - 1 -
S1 0 1 0 S0 0 0 0 0 0 - - 1
S1 0 1 1 S2 1 1 1 1 1 - - 0
S2 1 1 0 S1 0 1 0 1 - 1 - 0
S2 1 1 1 S3 1 0 1 0 - 0 - 1
S3 1 0 0 S2 1 1 1 1 - 0 1 -
S3 1 0 1 S0 0 0 0 0 - 1 0 -
Równania wzbudzeń dla przerzutników typu D:
D1 = /Q1 /Q0 /X + /Q1 Q0 X + Q1 Q0 X + Q1 /Q0 /X = Q0 " X
D0 = /Q1 /Q0 X + /Q1 Q0 X + Q1 Q0 /X + Q1 /Q0 /X = Q1 •" X
Równania wzbudzeń dla przerzutników typu JK (po minimalizacji):
J1 = Q0 " X
K1 = Q0 •" X
J0 = Q1 •" X
K0 = Q1 " X
7. Równania wyjść.
Na podstawie tablicy przejść/wyjść można wyprowadzić równania wyjść układu. Ponieważ układ
jest projektowany w oparciu o automat Moore a, wyjścia zależą od stanu, w jakim się aktualnie
układ znajduje.
W omawianym przypadku uzyskano następujące równania wyjść (po minimalizacji):
Y1 = Q1
Y0 = Q1 •" Q0
8. Schemat układu.
a) z wykorzystaniem przerzutników typu D:
X
FDC
FDC
D Q
Y1
D Q
D1
XNOR2
D0
XOR2
C
CLR
C
CLR
Y0
XOR2
CLK
CLR
Rys. 2. Schemat układu zrealizowanego z wykorzystaniem przerzutników D
b) z wykorzystaniem przerzutników typu JK:
X
FJKC
FJKC
XNOR2
J
XOR2
J
K Q
JK1 Y1
K Q
JK0
XOR2
XNOR2
C
C CLR
CLR
CLK
CLR
Y0
XOR2
Rys. 3. Schemat układu zrealizowanego z wykorzystaniem przerzutników JK
9. Przebiegi czasowe.
Przebiegi czasowe dla układu realizowanego z wykorzystaniem przerzutników typu D oraz układu
realizowanego z wykorzystaniem przerzutników typu JK są identyczne. Aby ułatwić obserwację
wyników, podczas symulacji układu w środowisku Active-HDL wyjścia układu (Y1 oraz Y0)
zostały połączone w magistralę (na Rys. 4 magistrala oznaczona została jako VBUS1).
Rys. 4. Przebiegi czasowe zrealizowanego układu
Wskazówka: Aby podczas symulacji połączyć sygnały w magistralę należy je zaznaczyć, a
następnie z menu kontekstowego (prawy przycisk myszki) wybrać opcję Merge Signals.
Zad. 1. Zaprojektować, w oparciu o automat Mealy ego, układ realizujący poniższą sieć
działań:
Y0
0 1
X0
Y1 Y2
0 1
X1
Rys. 5. Sieć działań projektowanego układu
Zad. 2. Zaprojektować układ z zadania 1 z wykorzystaniem automatu Moore a.
Zad. 3. Zaprojektować synchroniczny układ realizujący funkcję węża świetlnego. Układ
powinien posiadać cztery wyjścia Y1,..,Y4 (diody sygnalizacyjne) oraz wejście sterujące X.
Układ może znajdować się w jednym z czterech stanów. W stanie pierwszym (S1) zapalone
sÄ… diody Y1 i Y2, w stanie drugim (S2) Y2 i Y3, w stanie trzecim (S3) Y3 i Y4 w stanie
czwartym (S4) Y1 i Y4. Przejścia pomiędzy poszczególnymi stanami warunkuje sygnał X.
Jeśli X jest w stanie wysokim układ realizuje przejścia pomiędzy poszczególnymi stanami
w sekwencji S1, S2, S3, S4, S1,..., jeśli X jest w stanie niskim układ realizuje sekwencję
odwrotnÄ… (S1, S4, S3, S2, S1,..).
Zad. 4. Zaprojektować synchroniczny licznik modulo 6 zliczający w naturalnym kodzie
binarnym z wykorzystaniem przerzutników typu D.
Zad. 5. Zaprojektować synchroniczny licznik modulo 6 zliczający w naturalnym kodzie
binarnym z wykorzystaniem przerzutników typu JK.
Realizacja zadań 3-5: Należy wybrać do realizacji jedno z zadań 3-5, a następnie
przygotować sprawozdanie z realizacji ćwiczenia. Sprawozdanie powinno zawierać:
- stronę tytułową (imię, nazwisko, temat ćwiczenia, datę oddania sprawozdania),
- opis słowny zadania,
- opis realizacji układu (graf stanów lub tabela stanów układu, kody poszczególnych
stanów wraz z uzasadnieniem wyboru, wszystkie tablice przejść i wyjść układu,
równania przerzutników i wyjść),
- schemat układu,
- przebiegi czasowe oraz ich charakterystyka,
- wnioski z przeprowadzonego ćwiczenia.
Wyszukiwarka
Podobne podstrony:
Układy Logiczne Lab 8,9Układy Logiczne Lab 3Układy Logiczne Lab 13Układy Logiczne Lab 2Układy Logiczne Lab 4Układy Logiczne Lab 5,6Układy Logiczne Lab 7Układy Logiczne Lab 1Wykład 2 10 3 1210 12 lat 5Lab 10 SOwykład 3 27 10 12wykład 1 4 10 1210 12 lat 11INS LAB PEWN 3 12 13więcej podobnych podstron