Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Zadanie z automatem Moore'a

sopel256 04 Lut 2012 12:41 3584 3
  • #1 04 Lut 2012 12:41
    sopel256
    Poziom 12  

    Witam serdecznie.
    Mam pewien problem z rozwiązaniem zadania. Jego treść to:
    Zaprojektuj i zrealizuj na przerzutnikach D synchroniczny licznik, który zmienia stany według jednej z powtarzających się sekwencji, zależnie od wartości sygnału logicznego na wejściu sterującym S. Dane sekwencje:
    S=0, 0 1 3
    S=1, 0 3 1
    Częstotliwość pracy układu sygnalizuj migającą diodą. Kod aktualnego stanu licznika wyświetlaj na wyświetlaczu 7-seg.

    Tak wyszedł mi graf i tablica przejść o ile się rozczytacie:
    Zadanie z automatem Moore'a

    Po pierwsze nie wiem czy dobrze zrobiłem bo wziąłem pod wzgląd wejście sterujące S i jak widzicie ilość wejść w stosunku do wyjść jest nieproporcjonalna (3 wejścia, 2 wyjścia). Problem w tym przypadku jest z tabelą przejść bo chciałbym dokonać próby kodowania stanów tyle, że we wszystkich materiałach z jakich korzystałem ten stosunek wejść i wyjść jest taki sam więc z kodowaniem nie ma problemu. Tak więc pytanie jeżeli mam taką tabelę jak na tym zdjęciu to jak w takim wypadku dokonać kodowania? Jeżeli nie obędzie się bez minimalizacji to jak to zrobić po minimalizacji stanów? Wszelkie wyjaśnienia, poprawki mile widziane.
    Pozdrawiam.

    0 3
  • #2 05 Lut 2012 15:22
    sopel256
    Poziom 12  

    Próbowałem zrobić to sposobem z wykładu, ale jak próbuję dokonać symulacji w quartusie II to mam stany nieokreślone na wyjściach. Poniżej zdjęcia w jaki sposób wyszły funkcje.
    Zadanie z automatem Moore'a Zadanie z automatem Moore'a
    Bardzo proszę o pomoc naprawdę chciałbym to zrozumieć ponieważ planuję w nie dalekiej przyszłości prace nad układami cyfrowymi.
    Pozdrawiam.

    0
  • Pomocny post
    #3 06 Lut 2012 08:27
    jestam
    Specjalista Automatyk

    Zadanie z automatem Moore'a

    3 stany, więc 2 bity. Zakodowane jako

    q1q0

    00 - stan 0
    01 - stan 1
    11 - stan 3

    Pozostaje 10 - taki stan nie jest używany, ale może się pojawić np. po włączeniu zasilania, czy w wyniku zakłóceń. Ze stanu 10 układ w następnym cyklu (po zboczu na wejściu zegara C) przechodzi do 00.

    Dalej trzeba wypracować bity stanu w następnym cyklu q1(next), q0(next). Po jednej siatce Karnaugh dla każdego bitu stanu, uprościć funkcje, podłączyć na wejścia D odpowiednich przerzutników.

    Sygnały wyjściowe dla LED wypracuj sobie kombinacyjnym dekoderem na podstawie bitów stanu.

    1
  • #4 07 Lut 2012 16:45
    sopel256
    Poziom 12  

    Udało mi się już samemu do tego dojść, ale i tak dziękuję za pomoc. Wyszło wszystko tak samo jak u kolegi. Moim podstawowym błędem było to, że chciałem, aby automat wykonywał sekwencję do końca bez cofania się dlatego też kombinacje ze stanami wewnętrznymi były takie kłopotliwe. Czytając treść zadania doszedłem do wniosku, że nie ma takiego wymogu i układ znaaacznie się uprościł. Wrzucam rozwiązanie.

    Zadanie z automatem Moore'a

    Z tego oczywiście zrobiłem układ w Quartusie (tak jakby nie symulował bo przez przypadek odhaczyłem żeby zapisywał wyniki symulacji do pliku) podłączyłem układ 7449 pod wyjścia Q1 i Q0 (czyli nasze oba y), a pod zegar wstawiłem diodę. Po symulacji układ działa prawidłowo. Temat zakończony.

    0
  Szukaj w 5mln produktów