Laboratorium Elementów Logiki i Arytmetyki Komputerów |
||
1. 2. 3. |
Temat: Projektowanie i symulacja układów kombinacyjnych |
Data wykonania 24.04.2012 |
|
|
Data oddania 14.05.2012 |
Grupa: L16 |
|
|
I. Teoria
- Wyświetlacz siedmiosegmentowy jest wyświetlaczem powszechnie używanym do prezentacji cyfr. Jak wskazuje na to nazwa, składa się z siedmiu segmentów (A - G), za pomocą których możemy przedstawić dowolną cyfrę dziesiętną.
- Multiplekser to układ kombinacyjny, najczęściej cyfrowy, służący do wyboru jednego z kilku dostępnych sygnałów wejściowych i przekazania go na wyjście.
Multiplekser jest układem komutacyjnym (przełączającym), posiadającym k wejść informacyjnych (zwanych też wejściami danych), n wejść adresowych (sterujących) (zazwyczaj k=2n) i jedno wyjście y. Posiada też wejście sterujące działaniem układu oznaczane S lub e. Działanie multipleksera polega na przekazaniu wartości jednego z wejść xi na wyjście y. Numer i wejścia jest podawany na linie adresowe a0... an-1.
Jeśli na wejście strobujące (blokujące) S podane zostanie logiczne zero, to wyjście y przyjmuje określony stan logiczny (zazwyczaj zero), niezależny od stanu wejść X i A.
Multiplekser można zbudować z dekodera o takiej liczbie wejść, ile wejść adresowych posiada dany multiplekser oraz bramek AND. Do jednego wejścia każdej bramki AND należy podłączyć odpowiednie wyjście dekodera, do drugiego - odpowiednia linię wejściową. Wyjścia wszystkich bramek AND należy podłączyć do wejść bramki OR.
- Komparatory cyfrowe są to układy służące do porównywania dwóch lub więcej słów (liczb)
dwójkowych n - bitowych. Najprostsze komparatory określają, czy porównywane liczby są sobie równe (A = B?). Bardziej złożone układy mogą określać, która z porównywanych liczb jest większa (A > B?). Istnieją również komparatory tzw. uniwersalne, które określają trzy możliwe, wzajemnie wykluczające się relacje: A > B, A = B i A < B. Komparatory liczb mogą być zrealizowane jako układy równoległe bądź szeregowe.
BCD- sposób zapisu liczb polegający na zakodowaniu kolejnych cyfr dziesiętnych liczby dwójkowo przy użyciu czterech bitów stosowany w elektronice i informatyce. Taki zapis pozwala na łatwą konwersję liczby do i z systemu dziesiętnego, jest jednak nadmiarowy (wykorzystuje tylko 10 czterobitowych układów z 16 możliwych).
II. Zadania
Zadanie 1. Dokonać minimalizacji funkcji wykorzystując multipleksery o wskazanej liczbie wejść adresowych:
F(A,B,C,D) = (1,3,7,10,11) - (4, 3, 2 wejścia)
Nr |
A |
B |
C |
D |
F |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
2 |
0 |
0 |
1 |
0 |
0 |
3 |
0 |
0 |
1 |
1 |
1 |
4 |
0 |
1 |
0 |
0 |
0 |
5 |
0 |
1 |
0 |
1 |
0 |
6 |
0 |
1 |
1 |
0 |
0 |
7 |
0 |
1 |
1 |
1 |
1 |
8 |
1 |
0 |
0 |
0 |
0 |
9 |
1 |
0 |
0 |
1 |
0 |
10 |
1 |
0 |
1 |
0 |
1 |
11 |
1 |
0 |
1 |
1 |
1 |
12 |
1 |
1 |
0 |
0 |
0 |
13 |
1 |
1 |
0 |
1 |
0 |
14 |
1 |
1 |
1 |
0 |
0 |
15 |
1 |
1 |
1 |
1 |
0 |
Dla 4 wejść:
Dla 3 wejść:
Dla 2 wejść:
Zadanie 2. Zaprojektować układ pozwalający na zamianę kodu BCD na kod BCD+3.
3. Zaprojektować dekodery wskazane przez prowadzącego:
a) BCD na 1 z 10
Realizacja funkcji wyjściowych i polega na tym, że każde wyjście i reaguje tylko na jeden stan sygnałów wejściowych A, B, C i D. Skoro tak, dla każdego wyjścia stosuję 4 wejściową bramkę AND. Do wejść bramki doprowadzimy odpowiednie kombinację sygnałów i ich zaprzeczeń. Kombinacja ta powinna być taka, aby dla danego kodu BCD na wejściach bramki były same jedynki logiczne - wtedy wyjście bramki AND przyjmie stan 0. Skorzystamy z poniższej tabelki:
Nr |
D |
C |
B |
A |
D' |
C' |
B' |
A' |
Funkcja |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0=A'B'C'D' |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1=AB'C'D' |
2 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
2=A'BC'D' |
3 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
3=ABC'D' |
4 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
4=A'B'CD' |
5 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
5=AB'CD' |
6 |
0 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
6=A'BCD' |
7 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
7=ABCD' |
8 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
8=A'B'C'D |
9 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
0 |
9=AB'C'D |
Zadanie 4. Zaprojektować koder kodu BCD (lub NB) na kod wyświetlacza siedmiosegmentowego. W celu eliminacji problemu kombinacji sygnałów wejściowych odpowiadających liczbom 10 - 15 należy wyświetlać E(rror).
Dla każdego segmentu wyświetlacza buduję siatki Karnaugh'a, a następnie minimalizujemy i budujemy układ bramek logicznych tak aby dla odpowiedniego stanu bitów wejściowych był on zaświecony (1) bądź nie zaświecony (0). Bity wejściowe oznaczamy kolejno: p, q, r, s.
Stany segmentu dla poszczególnych wejść:
00 00 |
00 01 |
00 10 |
00 11 |
01 00 |
01 01 |
01 10 |
01 11 |
10 00 |
10 01 |
10 10 |
10 11 |
11 00 |
11 01 |
11 10 |
11 11 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Siatka Karnaugh'a dla segmentu A:
rs
pq |
00 |
01 |
11 |
10 |
00 |
1 |
0 |
1 |
1 |
01 |
0 |
1 |
1 |
1 |
11 |
1 |
1 |
1 |
1 |
10 |
1 |
1 |
1 |
1 |
Minimalizacja oraz budowa bramek segmentu A:
Stany segmentu B dla poszczególnych wejść:
00 00 |
00 01 |
00 10 |
00 11 |
01 00 |
01 01 |
01 10 |
01 11 |
10 00 |
10 01 |
10 10 |
10 11 |
11 00 |
11 01 |
11 10 |
11 11 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
Siatka Karnaugh'a dla segmentu B:
rs
pq |
00 |
01 |
11 |
10 |
00 |
1 |
1 |
1 |
1 |
01 |
1 |
0 |
1 |
0 |
11 |
0 |
0 |
0 |
0 |
10 |
1 |
1 |
0 |
0 |
Minimalizacja oraz budowa bramek segmentu B:
Stany segmentu C dla poszczególnych wejść:
00 00 |
00 01 |
00 10 |
00 11 |
01 00 |
01 01 |
01 10 |
01 11 |
10 00 |
10 01 |
10 10 |
10 11 |
11 00 |
11 01 |
11 10 |
11 11 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
Siatka Karnaugh'a dla segmentu C:
rs
pq |
00 |
01 |
11 |
10 |
00 |
1 |
1 |
1 |
0 |
01 |
1 |
1 |
1 |
1 |
11 |
0 |
0 |
0 |
0 |
10 |
1 |
1 |
0 |
0 |
Minimalizacja oraz budowa bramek segmentu C:
Stany segmentu D dla poszczególnych wejść:
00 00 |
00 01 |
00 10 |
00 11 |
01 00 |
01 01 |
01 10 |
01 11 |
10 00 |
10 01 |
10 10 |
10 11 |
11 00 |
11 01 |
11 10 |
11 11 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Siatka Karnaugh'a dla segmentu D:
pq/RS |
00 |
01 |
11 |
10 |
00 |
1 |
0 |
1 |
1 |
01 |
0 |
1 |
0 |
1 |
11 |
1 |
1 |
1 |
1 |
10 |
1 |
1 |
1 |
1 |
Minimalizacja oraz budowa bramek segmentu D:
Stany segmentu E dla poszczególnych wejść:
00 00 |
00 01 |
00 10 |
00 11 |
01 00 |
01 01 |
01 10 |
01 11 |
10 00 |
10 01 |
10 10 |
10 11 |
11 00 |
11 01 |
11 10 |
11 11 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
Siatka Karnaugh'a dla segmentu E:
rs
pq |
00 |
01 |
11 |
10 |
00 |
1 |
0 |
0 |
1 |
01 |
0 |
0 |
0 |
1 |
11 |
1 |
1 |
1 |
1 |
10 |
1 |
0 |
1 |
1 |
Minimalizacja oraz budowa bramek segmentu E:
Stany segmentu F dla poszczególnych wejść:
00 00 |
00 01 |
00 10 |
00 11 |
01 00 |
01 01 |
01 10 |
01 11 |
10 00 |
10 01 |
10 10 |
10 11 |
11 00 |
11 01 |
11 10 |
11 11 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Siatka Karnaugh'a dla segmentu F:
rs
pq |
00 |
01 |
11 |
10 |
00 |
1 |
0 |
0 |
0 |
01 |
1 |
1 |
1 |
1 |
11 |
1 |
1 |
1 |
1 |
10 |
1 |
1 |
1 |
1 |
Minimalizacja oraz budowa bramek segmentu F:
Stany segmentu G dla poszczególnych wejść:
00 00 |
00 01 |
00 10 |
00 11 |
01 00 |
01 01 |
01 10 |
01 11 |
10 00 |
10 01 |
10 10 |
10 11 |
11 00 |
11 01 |
11 10 |
11 11 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Siatka Karnaugh'a dla segmentu G:
rs
pq |
00 |
01 |
11 |
10 |
00 |
0 |
0 |
1 |
1 |
01 |
1 |
1 |
0 |
1 |
11 |
1 |
1 |
1 |
1 |
10 |
1 |
1 |
1 |
1 |
Minimalizacja oraz budowa bramek segmentu G:
Wszystkie zbudowane układy logiczne składamy w jedną całość wejścia podłączając do generatora a wyjścia do wyświetlacza. Wyjścia generatora odpowiadają odpowiednio bitom: 3 - p, 2 - q, 1 - r, 0 - s.