sprawko 4, Studia, PWR, 3 semestr, Logika układów cyfrowych, laboratoria


Sprawozdanie nr 4

Logika układów cyfrowych

Prow. A. Sterna

Zadanie 1

Zaprojektować automat, który sprawdzi, czy ilość wprowadzonych 0 i 1 jest parzysta czy nieparzysta.

  1. Możemy założyć, że stanów wewnętrznych automatu jest 4.

  1. Alfabet wejściowy składa się z dwóch sygnałów z0 i z1, które oznaczają przejścia do stanów po `jedynce' i po `zerze'.

  1. Można przyjąć cztery wyjścia Y0, Y1, Y2, Y3, zależne od stanów wewnętrznych.

  1. Pierwszy jest stan, przy którym zarówno ilość jedynek i zer wynosi 0, więc obie wartości są parzyste. Stanem początkowym jest Q1. Po wprowadzeniu `0' automat przechodzi do stanu, gdzie liczba zer jest nieparzysta, więc do stanu Q3. Po wprowadzeniu `1' przechodzi do stanu, gdzie liczba jedynek jest nieparzysta, więc do stanu Q2.

0x08 graphic

  1. Taką analizę należy przeprowadzić z każdym ze stanów z osobna. Przykładowo, w stanie Q4 zarówno `jedynki' jak i `zera' są nieparzyste, więc po wprowadzeniu `0' liczba zer staje się parzysta i automat przechodzi do stanu Q2, a po wprowadzeniu `1' liczba jedynek staje się parzysta i automat przechodzi do stanu Q3. Po ukończonej analizie automatu, graf przedstawia się następująco:

0x08 graphic

  1. Do graficznie zaprojektowanego automatu należy napisać wyrażenie symboliczne:

0x08 graphic

Zadanie 2

Zaprojektować automat, który przy wprowadzaniu kolejnych wyrazów, będzie je analizował w następujący sposób: nie może wystąpić na początku ani na końcu wyrazu cyfra ani podkreślenie. Inne litery alfabetu są dopuszczalne.

  1. Należałoby się zastanowić, ile jest potrzebnych stanów do realizacji tego automatu. Z pewnością cztery. Jeden odpowiadający stanowi początkowemu `start' (Q1), jeden odpowiadający stanowi wprowadzenia litery (Q2), jeden odpowiadający stanowi cyfry lub podkreślnika (Q3) i jeszcze jeden na stan błędu (Q4).

  2. Sygnałów przejściowych `z' zaprojektowano trzy. Z0 odpowiada za wprowadzenie cyfry lub podkreślenia, z1 za wprowadzenie litery, a z2 za prowadzenie umownego sygnału oznaczającego koniec danego słowa (dalej umownie nazywany enterem).

  3. Wyjście zaprojektowano jedno, tylko w stanie błędu.

  1. Należało by się zastanowić, jak ma działać ten automat. Z pierwszego stanu Q1, nazywanego potem `startem' mogą odchodzić trzy sygnały. Wprowadzenie cyfry jest niedopuszczalne, więc automat przechodzi do stanu błędu (Q4). Wprowadzenie litery przenosi automat do stanu litery (Q2) i tam czeka na dalsze instrukcje. Wprowadzenie entera zapętla automat do stanu startu. Ze stanu litery (Q2) po wprowadzeniu entera automat powinien przejść do startu i czekać na nowe słowo. Po wprowadzeniu litery powinien pozostać w bieżącym stanie, zaś po cyfrze przejść do stanu cyfry (Q3), gdzie powinien czekać na kolejną literę słowa. Jeśli w stanie cyfry zostanie wprowadzony enter, automat powinien przejść do stanu błędu, gdyż sytuacja istnienia cyfry jako ostatniego symbolu słowa jest niedopuszczalne. Po wprowadzeniu litery bądź cyfry, automat powinien odpowiednio przeskoczyć na stan Q2 i Q3. Przyjęto, że ze stanu błędu do startu może wyprowadzić jedynie enter, pozostałe sygnały będą zapętlały się na Q4.

  1. Graficznie automat można przedstawić następująco:

0x08 graphic

  1. Wyrażenie symboliczne wygląda następująco:

0x08 graphic

Zadanie 3

Zaprojektować automat, który zmienia wyjście automatu z Y1 na Y2, po wprowadzeniu trzech jedynek w ciągu

  1. Alfabet przejściowy składa się z dwóch sygnałów z0 po wprowadzeniu `zera' i z1 po wprowadzeniu `1'

  2. Na pierwszy rzut oka, stanów powinno być osiem, ale po dokładniejszej analizie, okazuje się, że stanów potrzebnych jest sześć. Początkowy Q1 o wyjściu Y1. Po wprowadzeniu zera zapętla się na Q1, po `jedynce' przechodzi na Q2, i tak dalej. Analogicznie do momentu, kiedy zostanie wprowadzona trzecia jedynka w stanie Q4. Stan Q4 ma już wyjście Y2 i zaczyna nową pętlę wprowadzania. Podobnie jak wcześniej po zerach, automat będzie wracał do stanu Q4, a po jedynkach przeskakiwał do stanów kolejnych, aż do Q6, gdzie pojawiła się druga jedynka w „drugiej turze”. Po trzeciej jedynce, automat może przejść z powrotem na stan Q1 z wyjściem Y1.

  1. Graficznie automat przedstawia się:

0x08 graphic

  1. Wyrażenie symboliczne:

0x08 graphic



Wyszukiwarka