Cel ćwiczenia.
Celem ćwiczenia na dzisiejszych zajęciach było zbudowania za pomocą bramek logicznych multipleksera i demultipleksera. Układy należało zaimplementować w środowisku Quartus i przetestować na płycie DE1.
Przebieg ćwiczenia.
Realizacja funkcji logicznej na demultiplekserze na podstawie wypełnionej przez prowadzącego siatki Karnaugha.
bc a |
00 | 01 | 11 | 10 |
---|---|---|---|---|
0 | 0 | 1 | 1 | 0 |
1 | 1 | 0 | 0 | 1 |
$$\mathbf{f =}\overset{\overline{}}{\mathbf{a}}\mathbf{c} + \mathbf{a}\overset{\overline{}}{\mathbf{c}}$$
Funkcja ta realizowana jest na poniższym diagramie. W funkcji występują jedynie wejścia a i c co ułatwiło nam zadanie, ponieważ nie musieliśmy tworzyć wejścia b. Kolejnym ułatwieniem było to, że funkcja posiada jedynie dwa wyrazy co skutkuje połączeniem tylko dwóch bramek w jedną aby uzyskać poprawnie działający diagram.
Realizacja funkcji logicznej na multiplekserze – adresowanie sygnałami ab.
cd ab |
00 | 01 | 11 | 10 |
---|---|---|---|---|
00 | 0 | 1 | 1 | 0 |
01 | 1 | 0 | 0 | 1 |
11 | 0 | 1 | 1 | 0 |
10 | 1 | 1 | 0 | 0 |
$$\mathbf{f =}\overset{\overline{}}{\mathbf{a}}\overset{\overline{}}{\mathbf{b}}\mathbf{d}\mathbf{+}\overset{\overline{}}{\mathbf{a}}\mathbf{b}\overset{\overline{}}{\mathbf{d}}\mathbf{+}\mathbf{\text{abd}}\mathbf{+}\mathbf{a}\overset{\overline{}}{\mathbf{b}}\overset{\overline{}}{\mathbf{c}}$$
Funkcja ta realizowana jest na poniższym diagramie. Do jego wykonania posłużyliśmy się diagramem z poprzedniego ćwiczenia po uprzednim zmodyfikowaniu go na potrzeby aktualnego polecenia. Zasada działania jest identyczna jedynie zmienia się ilość wejść.
Realizacja funkcji logicznej na multiplekserze – adresowanie sygnałami cd.
cd ab |
00 | 01 | 11 | 10 |
---|---|---|---|---|
00 | 0 | 1 | 1 | 0 |
01 | 1 | 0 | 0 | 1 |
11 | 0 | 1 | 1 | 0 |
10 | 1 | 1 | 0 | 0 |
$$\mathbf{f =}\left( \mathbf{a \oplus b} \right)\overset{\overline{}}{\mathbf{c}}\overset{\overline{}}{\mathbf{d}}\mathbf{+}\left( \mathbf{a +}\overset{\overline{}}{\mathbf{b}} \right)\mathbf{*}\overset{\overline{}}{\mathbf{c}}\mathbf{d}\mathbf{+}\left( \mathbf{ab +}\overset{\overline{}}{\mathbf{a}}\overset{\overline{}}{\mathbf{b}} \right)\mathbf{\text{cd}}\mathbf{+ (}\overset{\overline{}}{\mathbf{a}}\mathbf{b}\mathbf{)}\mathbf{c}\overset{\overline{}}{\mathbf{d}}$$
Funkcja ta realizowana jest na poniższym diagramie. Podobnie jak w poprzednim ćwiczeniu tutaj także wykorzystaliśmy poprzedni diagram jako bazę, aby zaoszczędzić czas. Tym razem liczba modyfikacji była o wiele większa i wymuszała między innymi wprowadzenie bramki XOR do realizacji pierwszego wyrazu funkcji.
Wnioski.
Za pomoca multiplekserów i demultiplekserów możemy bezproblemowo realizować funkcje logiczne.
Przy adresowaniu multiplekserów bardzo ważny jest wybór sygnałów.
Korzystając z metody siatek Karnaugha można zauważyć, że jest to metoda szybka, prosta i dzięki nie możemy znaleźć funkcję w uproszczonej wersji.
Środowisko Quartus z którego korzystaliśmy podczas zajęć jest prostym i wygodnym narzędziem do budowy i sprawdzania układów cyfrowych.
Przy adresowaniu bardzo ważne jest aby znaleźć i stworzyć jak najwięcej grup zerowych lub jedynkowych.