logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Wykrywanie "1101" na wejsciu szeregowym w 4taktach

Platon 03 Cze 2009 00:39 2773 6
REKLAMA
  • #1 6609386
    Platon
    Poziom 42  
    Posty: 9185
    Pomógł: 744
    Ocena: 170
    Witam,
    Mam do zrealizowania następujące zadanie:
    Zbudować układ wykrywający stan 1101 na wejściu szeregowym w 4 taktach sygnału zegarowego CLK. Można wykorzystać rejestr przesuwający. (poza tym bramki i przerzutniki. Żadne tam mikroprocesory czy inne cuda. Typowe zadanie z techniki cyfrowej)

    Jeżeli ktoś ma zrealizowany taki projekt i mógłby go tutaj zamieścić, lub jeżeli ktoś ma wystarczające umiejętności i czas, to rozwiązać to zadanie i też zamieścić rozwiązanie tutaj - 2000 punktów czeka.

    Jeżeli ktoś ma elegancko rozwiązane od A do Z podobne zadanie (tj "inna kombinacja" do wykrycia) to tez może zamieścić - 1000 punktów w nagrodę.

    Dziękuję za pomoc.
  • REKLAMA
  • #2 6609581
    mgyz
    Poziom 14  
    Posty: 77
    Pomógł: 6
    Ocena: 4
    np. tak:

    Wykrywanie "1101" na wejsciu szeregowym w 4taktach

    ewentualnie jeszcze zsynchronizować wyjście bramki z zegarem (z przeciwnym zboczem niż przesuwające) żeby glitche nie powodowały błednego ustawiania przerzutnika
  • REKLAMA
  • #3 6609595
    Konto nie istnieje
    Poziom 1  
  • #4 6610036
    Paweł Es.
    VIP Zasłużony dla elektroda
    Posty: 6981
    Pomógł: 1236
    Ocena: 693
    Można nawet bez tego inwertera, bo jak się weźmie np. 2 układy 74LS74 zawierające po 2 przerzutniki typu D, to każdy przerzutnik ma wyjścia proste i zanegowane, więc inwerter jest zbędny.

    Układ można też zrobić na 3 przerzutnikach jako automat wielostanowy ale wtedy wychodzi dużo więcej bramek.
  • REKLAMA
  • #5 6611050
    Platon
    Poziom 42  
    Posty: 9185
    Pomógł: 744
    Ocena: 170
    OK dzięki za te odpowiedzi. Ale chciałbym uscislic zagadnienie: chodzi mi o rozwiązanie akademickie, tj. rozpisanie grafu stanow, przejsc, zapisanie tabel, minimalizacja, realizacja obliczonej logiki na przerzutnikach/bramkach, ew z rejestrem.
    Realizacja układu jest tylko teoretyczna, tj przerzutniki/bramki, bez potrzeby uzywania konkretnych układów.
  • REKLAMA
  • #7 6612843
    Paweł Es.
    VIP Zasłużony dla elektroda
    Posty: 6981
    Pomógł: 1236
    Ocena: 693
    Graf przejść:

    Wykrywanie "1101" na wejsciu szeregowym w 4taktach

    Po dojściu do stanu 4 układ się blokuje i wymaga wyzerowania by znów coś wykryć (np. przez wykorzystanie wejść zerujących przerzutników).

    X - stan wejścia

    Ponieważ jest 5 stanów to układ wymaga 3 przerzutników. Bierzemy przerzutniki typu D

    Kodowanie stanów:

    Wykrywanie "1101" na wejsciu szeregowym w 4taktach

    Tabelki Karnaugha zawierają dodatkowo sygnał wejściowy więc są 4 na 4

    Wykrywanie "1101" na wejsciu szeregowym w 4taktach


    Minimalizacje funkcji:

    $$D0\ =\ Q1*\overline{Q0}*\overline{X}\ +\ \overline{Q2}*\overline{Q1}*\overline{Q0}*X$$

    $$D1\ =\ Q1*\overline{Q0}*\overline{X}\ +\ \overline{Q1}*Q0*X$$


    $$D2\ =\ Q2\ +\ Q1*Q0*X$$

    Wyjscie=Q2

    Przejście na NAND:

    $$D0\ =\overline{(\overline{Q1*\overline{Q0}*\overline{X})} *\overline{(\overline{Q2}*\overline{Q1}*\overline{Q0}*X})}$$

    $$D1\ =\overline{(\overline{Q1*\overline{Q0}*\overline{X}})*(\overline{\overline{Q1}*Q0*X})}$$

    $$D2\ =\overline{(\overline{Q2})*(\overline{Q1*Q0*X})}$$

    Czynnik $$\overline{Q1*\overline{Q0}*\overline{X}$$ jest wspólny dla funkcji D0 i D1, więc można użyć jednej bramki realizującej ten iloczyn i użyć je w dwóch funkcjach.

    Jeżeli do powyższe sumy zrealizujemy na bramkach NAND (bramki sumy zastępujemy odpowiednio połączonymi bramkami NAND) to otrzymamy taki schemat:

    Wykrywanie "1101" na wejsciu szeregowym w 4taktach

    Strzałki na schemacie z wpisanymi nazwami sygnałów oznaczają, że dane punkty o tej samej nazwie należy połączyć => z =>.

    W rzeczywistym układzie na przerzutnikach należy pamiętać o podłączeniu także wejść ustawiających i kasujących (w wersji CMOS trzeba je podłączyć do masy a w wersjach TTL i pochodnych do + zasilania - wymuszenie stanu 1).

    Układ oczywiście prościej było by zrealizować np. na jednym układzie programowalnym, np. GAL16V8, który zawiera przerzutniki D (8 sztuk)i programowalny układ bramek, które możemy dowolnie łączyć przy programowaniu.

    W realizacji na piechotę, w układzie będą 2 układy z przerzutnikami D (są po 2 w układzie, 2 układy zawierające po 2 czterowejściowe bramki NAND i 1 układ zawierający 4 dwuwejściowe bramki NAND.

    Na schemacie są użyte bramki 4 wejściowe mimo, że tylko jeden iloczyn jest czteroargumentowy. Pozwoliło to na ujednolicenie typów bramek i pełne wykorzystanie ich zasobów w układach scalonych.

    I to by było na tyle, tylko czy autor się nauczy sam robić takie zadania ????

Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczy problemu wykrywania binarnej sekwencji "1101" na wejściu szeregowym, synchronizowanej sygnałem zegarowym CLK, w ciągu 4 taktów, z użyciem elementów cyfrowych takich jak rejestry przesuwające, bramki logiczne i przerzutniki, bez mikroprocesorów. Przedstawiono dwa główne podejścia:
1. Wykorzystanie 4-bitowego rejestru przesuwającego, na którego wyjściach (reprezentujących cztery ostatnie bity wejścia) realizowana jest logika kombinacyjna wykrywająca wzorzec "1101". Zaproponowano implementację z użyciem bramek AND i NOT (lub NAND), z możliwością wykorzystania przerzutników D (np. typu 74LS74) posiadających wyjścia zanegowane, co eliminuje potrzebę osobnych inwerterów.
2. Zaprojektowanie układu jako automatu wielostanowego (sekwencyjnego). Przedstawiono szczegółowy "akademicki" proces projektowania: graf stanów (5 stanów wymaga 3 przerzutników D), tabelę stanów, mapy Karnaugha do minimalizacji funkcji przejść i wyjścia, oraz schemat realizujący zminimalizowaną logikę na bramkach NAND i przerzutnikach D. Zauważono, że układ w tej implementacji blokuje się po wykryciu sekwencji i wymaga sygnału zerującego (resetu).

Oba rozwiązania są uznane za poprawne w kontekście zadania z techniki cyfrowej.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA