Document

advertisement
Dr inż. Jan Chudzikiewicz
Pokój 253/S
Tel. 683-93-57
E-mail: [email protected]
Dane przedmiotu
Wykład: 14 godzin
Ćwiczenia laboratoryjne: 16 godzin
Warunki zaliczenie:
• Otrzymanie
pozytywnej
oceny
z
kolokwium
przeprowadzonego na ostatnim wykładzie.
• Otrzymanie pozytywnej oceny z laboratoriów.
• Ocena końcowa z przedmiotu jest średnią ocen z:
laboratoriów oraz kolokwium.
1
Literatura do części pierwszej wykładów
Zieliński C.: Podstawy projektowania układów cyfrowych, Wydawnictwo
Naukowe PWN, Warszawa 2003.
Kamionka-Mikuła H.: Układy cyfrowe – teoria i przykłady, Pracownia
komputerowa Jacka Skalmierskiego, Gliwice 2002.
Tyszer J., Mrugalski G.: Układy cyfrowe. Zbiór zadań z rozwiązaniami,
Wydawnictwo Politechniki Poznańskiej, Poznań 2002.
Kalisz J.: Podstawy elektroniki cyfrowej, WKiŁ, Warszawa 1998.
Traczyk W.: Układy cyfrowe. Podstawy teoretyczne i metody syntezy, WNT,
Warszawa 1994.
Baranowski, Kalinowski.: Układy elektroniczne cz. III. Układy i systemy
cyfrowe, WNT, Warszawa 1994.
2
Problematyka wykładu
• Wprowadzenie
• Kody liczbowe stosowane w technice cyfrowej
• Arytmetyka dwójkowa
• Metody opisu układów kombinacyjnych
• Metody minimalizacji funkcji logicznych
(przełączających)
3
Rachunek zdań
Zdania
Zmienne
zdaniowe
Koniunkcja
(p i q)
Alternatywa
(p lub q)
Implikacja
(jeśli p to q)
Równoważność
(p wtedy i tylko
wtedy, gdy q)
pq
Negacja
(nie p)
Øp
p
q
p Ùq
p Úq
pÞ q
0
0
0
0
1
1
1
0
1
0
1
1
0
1
1
0
0
1
0
0
0
1
1
1
1
1
1
0
4
Poziomy logiczne
U[V]
5
1
2
0,8
0
0
t
Dla układów TTL serii standardowej:
U OL max  0, 4 V
U OH min  2, 4V
U IL max  0,8 V
U IH min  2V
5
Poziomy logiczne
U[V]
5
1
2
0,8
0
0
t
Marginesy zakłóceń:
M L min  U IL max  U OL max  0,8  0, 4  0, 4V
M H min  U OH min  U IH min  2, 4  2, 0  0, 4V
6
Algebra Boole’a
Zerojedynkowa algebra Boole’a sygnałów binarnych
 B, , *, , 0, 1 
Podstawowe funkcje logiczne:
• iloczyn logiczny I (AND),
• suma logiczna LUB (OR),
• negacja NIE (NOT).
7
Algebra Boole’a
X
Y
Suma – ‘+’
Iloczyn – ‘*’
Negacja – ‘ X ‘
0
0
0
0
1
0
1
1
0
1
1
0
1
0
0
1
1
1
1
0
8
Prawa algebra Boole’a
x0 x
x *0  0
x  1  1 x *1  x
xx  x
x*x  x
x  x 1 x*x  0
xx
x *( y  z )  x * y  x * z
x  y * z  ( x  y ) *( x  z )
9
Prawa algebra Boole’a
x *( x  y )  x
x *( x  y )  x * y
x  x* y  x
xx*y  x y
x* y  y* z  x * z  x* y  x *z
( x  y ) *( y  z ) *( x  z )  ( x  y) *( x  z )
x * y  x * y  y ( x  y )*( x  y )  y
x yz
x* y* z*
 x * y*z *
xyz 
10
Przykłady stosowania algebry Boole’a
F  x * y * z  x * y * z  x * y *( z  z )  x * y
1
F  x * y  z *( x * y  z )  x * y  z * x * y  z * z 
 x * y *(1  z )  x * y
0
1
F  x * y  y * z  x * z  x * y  y * z *( x  x )  x * z 
 x* y  x* y* z  x * y* z  x *z 
 x * y *(1  z )  x * z *( y  1)  x * y  x * z
1
1
11
Przykłady stosowania algebry Boole’a
Znajdź najprostszą postać funkcji.
F  x*z  x * y *z  y*z
F  x  x* y  x* z  x* y * z
Przekształć, wykorzystując prawa de Morgana, poniższe funkcje do postaci
zawierającej jedynie operatory sumy i negacji.
F  x * y  x *z  y*z
F  ( y  z )*( x  y )*( y  z )
12
Systemy liczbowe
Liczba w kodzie naturalnym:
an 1 p n1  an 2 p n2 
 a1 p 1  a2 p 2 
 a1 p1  a0 p 0 
n1
 a m1 p  m1  a m p  m   ai p i
i 0
Najbardziej rozpowszechnione systemy liczbowe

system dwójkowy (binarny)
p  2, a i {0,1}

system ósemkowy (oktalny)
p  8, a i {0,1, 2, 3, 4, 5, 6, 7}

system dziesiętny (dziesiątkowy, decymalny)
p  10, a i {0,1, 2, 3, 4, 5, 6, 7, 8, 9}
 system szesnastkowy (heksadecymalny, heksagonalny)
p  16, a i {0,1, 2, 3, 4, 5, 6, 7, 8, 9, A, B,C, D, E, F }
13
Systemy liczbowe
Przykład zapisu liczb w zaprezentowanych kodach
Kod dziesiętny
Naturalny
kod binarny
Kod
ósemkowy
Kod
szesnastkowy
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
00000
00001
00010
00011
00100
00101
00110
00111
01000
01001
01010
01011
01100
01101
01110
01111
10000
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
20
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
10
14
Systemy liczbowe - konwersja liczb
Istotą konwersji liczb jest przekształcenie liczby zapisanej w jednym
systemie liczbowym na równoważną jej liczbę zapisaną w innym
systemie liczbowym.
Ze względu na to, że wynik konwersji zapisu liczby z dowolnego
systemu na binarny jest dłuższy niż pierwotna postać tej liczby, konwersję
do postaci binarnej nazywa się również znajdowaniem rozwinięcia
dwójkowego liczb, zaś jej wynik rozwinięciem dwójkowym liczby
poddawanej konwersji.
Prostym sposobem znajdowania rozwinięcia dwójkowego liczby
dziesiętnej, czyli przeprowadzania konwersji dziesiętno-dwójkowej, jest
znalezienie:
•
•
dla części całkowitej - ciągu reszt dzielenia przez dwa, który
w odwrotnym porządku daje część całkowitą wyniku;
dla części ułamkowej - ciągu części całkowitych mnożenia przez
dwa.
15
Systemy liczbowe - konwersja liczb
Znaleźć rozwinięcie dwójkowe liczby 61.5625
Część ułamkowa liczby
Część całkowita
liczby:
61 .
30 1
Kolejne
1
1250
15 0
0
2500
7
1
0
5000
3
1
1
0000
1
1
0
1
wyniki
dzielenia
przez 2
Część
całkowita
.
5625
Kolejne
wyniki
mnożenia
przez 2
Reszta
61.562510 = 111101.10012
16
Systemy liczbowe - konwersja liczb
Konwersja z systemu dwójkowego do dziesiętnego liczby 111101.1001
Nr pozycji
1
2
3
4
5
6
7
8
9
10
Waga
2
4
8
16
32
64
128
256
512
1024
Nr pozycji
0
-1
-2
-3
-4
-5
-6
-7
-8
-9
Waga
1
0.5
0.25
0.125
0.0625
0.03125
0.015625
0.0078125
0.00390625
0.00195312
1 25  1 24  1 23  1 22  0 21  1 20  61
1
2
3
4
1 2  0 2  0 2  1 2  0.5  0.0625  0.5625
111101.10012 = 61.562510
17
Systemy liczbowe - konwersja liczb
Konwersja z systemu dwójkowego do ósemkowego liczby
1111000111000.111000111B
 dokonuje się podziału na grupy:
1 111 000 111 000.111 000 111
 oraz podstawienia (w razie potrzeby po uzupełnieniu na początku końcu
odpowiednią ilością zer, aby skrajne grupy były trzycyfrowe):
001 111 000 111 000.111 000 111
1 7
0 7 0 . 7 0 7
 uzyskany wynik:
1111000111000.111000111B = 17070.707oct
18
Systemy liczbowe - konwersja liczb
Konwersja z systemu ósemkowego do dwójkowego liczby
2340.5671oct
 przedstawienie każdej cyfry w postaci binarnej:
2 3
4 0 . 5 6 7 1
010 011 100 000 . 101 110 111 001
 uzyskany wynik:
2340.5671oct = 010011100000.101110111001B
19
Systemy liczbowe - konwersja liczb
Konwersja z systemu dwójkowego do szesnastkowego liczby
1111000111000.111000111B
 dokonuje się podziału na grupy:
1 1110 0011 1000.1110 0011 1
 oraz podstawienia (w razie potrzeby po uzupełnieniu na początku końcu
odpowiednią ilością zer, aby skrajne grupy były trzycyfrowe):
0001 1110 0011 1000.1110 0011 1000
1
E
3
8 . E
3
8
 uzyskany wynik:
1111000111000.111000111B = 1E38.E38H
20
Systemy liczbowe - konwersja liczb
Konwersja z systemu szesnastkowego do dwójkowego liczby
0E6C.7F8H
 przedstawienie każdej cyfry w postaci binarnej:
E
6
C . 7
F
8
1110 0110 1100 . 0111 1111 1000
 uzyskany wynik:
0E6C.7F8H = 111001101100.011111111000B
21
Systemy liczbowe
System dziesiętny kodowany dwójkowo
Jest to system liczbowy, w którym cyfry dziesiętne są
przedstawiane w kodzie dwójkowym (są kodowane dwójkowo).
Dla jednoznacznego przedstawienia 10 cyfr {0, 1, 2, 3, 4, 5, 6, 7,
8, 9} systemu dziesiętnego trzeba zastosować kod dwójkowy
przynajmniej 4-pozycyjny (4-bitowy). Kody służące do kodowania
dwójkowego cyfr systemu dziesiętnego noszą nazwę kodów
dwójkowo-dziesiętnych (ang. Binary Coded Decimal).
8
1
5
1000
0001
0101
setki
dziesiątki
jednostki
22
Systemy liczbowe
System dziesiętny kodowany dwójkowo
Kody dwójkowo-dziesiętne wagowe
Kod
8421
2* 4 2 1
Aikena
2421
7421
8 4-2-1
0
0000
0000
0000
0000
0000
1
0001
0001
0001
0001
0111
2
0010
0010
0010
0010
0110
3
0011
0011
0011
0011
0101
4
0100
0100
0100
0100
0100
5
0101
0101
1011
0101
1011
6
0110
0110
1100
0110
1010
7
0111
0111
1101
1000
1001
8
1000
1110
1110
1001
1000
9
1001
1111
1111
1010
1111
Cyfra
23
Systemy liczbowe
System dziesiętny kodowany dwójkowo
Kody dwójkowo-dziesiętne niewagowe
Kod
Wattsa
1 z 10
(pierścieniowy)
Johnsona
pseudopierścieniowy
0011
0000
0000000001
00000
1
0100
0001
0000000010
00001
2
0101
0011
0000000100
00011
3
0110
0010
0000001000
00111
4
0111
0110
0000010000
01111
5
1000
1110
0000100000
11111
6
1001
1010
0001000000
11110
7
1010
1011
0010000000
11100
8
1011
1001
0100000000
11000
9
1100
1000
1000000000
10000
Z nadmiarem
3
0
Cyfra
24
Systemy liczbowe
System dziesiętny kodowany dwójkowo
Przykład.
Liczbę dziesiętną A=197 można przedstawić:
1
9
7
w kodzie 8421
A8421 = 0001
1001
0111B
w kodzie 2421
A2421 = 0001
1111
1101B
w kodzie 84-2-1 A84-2-1= 0111
1111
1001B
25
Kod Graya
Kod dziesiętny
Kod refleksyjny
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
00000
00001
00011
00010
00110
00111
00101
00100
01100
01101
01111
01110
01010
01011
01001
01000
11000
26
Kod Graya
Konwersja liczby z NKB na kod Graya
bn1 ,
, bk ,
b1b0  bn1 ,
, bk ,
b1b0
bk  bk  bk 1
przy czym:
bn  0;
bn1  bn 1.
Przykład
1010  10102  1 1 1 1
b0  b0  b1  0  1  1
b1  b1  b2  1 0  1
b2  b2  b3  0  1  1
b3  b3  1
27
Funkcja EX-OR
Równania manipulacyjne dla funkcji EX-OR
L.p.
Równanie
1
XY = X’Y’
2
XY’ = X’Y = (XY)’
3
XX = 0
4
XX’ = 1
5
X1 = X’
6
X0 = X
7
11 = 0
8
10 = 1
9
00 = 0
10
Jeśli XY = Z, to XZ = Y i ZY =
X
28
Arytmetyka dwójkowa
Dodawanie liczb dwójkowych
Przeniesienie
1
1
1
1
1
Liczba pierwsza
1
1
0
0
1
Liczba druga
0
1
1
1
1
0
1
0
0
0
Wynik
1
29
Arytmetyka dwójkowa
Odejmowanie liczb dwójkowych z zastosowaniem kodów
uzupełnieniowych
Uzupełnienie p-1
U ( p  1)( L)  p n  p m  L
Reguła praktyczna: uzupełnienie U(p-1) liczby dodatniej otrzymuje
się przez odjęcie każdej cyfry tej liczby od (p-1).
Przykład: U1(1011001) = 0100110
U1(10.11001) = 01.00110
U1(0) = 1
U1(0.0) = 1.1
Przedział wartości: - 2n-1 do 2n-1-1
30
Operacje arytmetyczne
Reguła odejmowania: A-B = A+U1(B)
Odjąć liczbę 19 od liczby 15
1510
= 000011112
1910
= 000100112
U1(19) = 111011002
1
1
0
0
0
0
1
1
1
1
1
1
1
0
1
1
0
0
1
1
1
1
1
0
1
1
Wynik = -11111011U1 = -410
31
Operacje arytmetyczne
Reguła odejmowania: A-B = A+U1(B)
Odjąć liczbę 15 od liczby 19
1510
= 000011112
1910
= 000100112
U1(15) = 111100002
1
1
1
1
0
0
0
1
0
0
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
Wynik = 000001002 = 410
0
0
0
1
0
0
32
Operacje arytmetyczne
Odejmowanie liczb dwójkowych z zastosowaniem kodów
uzupełnieniowych
Uzupełnienie p
U ( p)( L)  p n  L
Reguła praktyczna: uzupełnienie U(p) liczby dodatniej otrzymuje się
przez dodanie jedynki na namniej znaczącej
pozycji uzupełnienia U(p-1).
Przykład: U2(1011001) = 0100111
U2(10.11001) = 01.00111
U2(0) = 0
U2(0.0) = 0.0
Przedział wartości: - 2n-1 do 2n-1-1
33
Operacje arytmetyczne
Reguła odejmowania: A-B = A+U2(B)
Odjąć liczbę 19 od liczby 15
1510
= 000011112
1910
= 000100112
U2(19) = 111011012
1
1
1
1
0
0
0
0
1
1
1
1
1
1
1
0
1
1
0
1
1
1
1
1
1
1
0
0
Wynik = -11111100U2 = -410
34
Operacje arytmetyczne
Reguła odejmowania: A-B = A+U2(B)
Odjąć liczbę 15 od liczby 19
1510
= 000011112
1910
= 000100112
U2(15) = 111100012
1
1
1
0
0
1
1
1
0
0
0
1
0
0
1
0
0
1
1
1
0
0
0
1
1
1
1
0
0
0
Wynik = 00000100U2 = 410
35
Arytmetyka dwójkowa
Dodawanie w kodzie BCD
9
1
0
5
0
1
0
3
1 0
1
0
0
6
1 1 0 1 1 0
Dodawanie dwójkowe
1
1
0
0
1
0
1
1
Korekcja (-10 = 0110U2)
1
1
0
0
1
3
1
0
0
0
1
1
36
Metody opisu układów kombinacyjnych
Opis słowny:
Wyznaczyć funkcję przełączającą układu, który stanem F=1
wyróżnia wśród liczb wejściowych z przedziału 0-7, podawanych w
naturalnym kodzie binarnym takie, w których liczba jedynek jest
parzysta.
Tabela prawdy:
i
x0
x1
x2
..................
xn-1
0
1
2
3
.
.
.
.
2n - 1
0
0
0
.
.
.
.
.
1
0
0
0
.
.
.
.
.
1
0
0
0
.
.
.
.
.
1
...................
...................
.
.
.
.
.
.
...................
0
1
0
.
.
.
.
.
1
F
37
Metody opisu układów kombinacyjnych
Opis słowny:
Wyznaczyć funkcję przełączającą układu, który stanem F=1
wyróżnia wśród liczb wejściowych z przedziału 0-7, podawanych w
naturalnym kodzie binarnym takie, w których liczba jedynek jest
parzysta.
Tabela prawdy:
i
x0
x1
x2
F
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
0
1
1
0
38
Metody opisu układów kombinacyjnych
Kanoniczna forma sumacyjna
2n  1
F  f ( x 0 , x1, x 2 ,......, x n 1 ) 
a
i 0
i
Ii
gdzie:
ai = 0 lub 1;
Ii - reprezentuje postać w naturalnym kodzie binarnym wartości
i;

- znak oznaczający sumę logiczną.
39
Metody opisu układów kombinacyjnych
Przykład
Wyznaczyć kanoniczną formę sumacyjną funkcji przełączającej układu,
który stanem F=1 wyróżnia wśród liczb wejściowych z przedziału 0-7,
podawanych w naturalnym kodzie binarnym takie, w których liczba jedynek
jest parzysta.
i
x0
x1
x2
F
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
0
1
1
0
f ( x0 , x1 , x2 ) 
23 1
ai I i 
i 0
 0* I 0  0* I1  0* I 2  1* I3  0* I 4  1* I5  1* I 6  0* I 7 
 1* I3  1* I5  1* I6 
 x0 * x1 * x2  x0 * x1 * x2  x0 * x1 * x2
40
Metody opisu układów kombinacyjnych
Kanoniczna forma iloczynowa
2n  1
F  f ( x0 , x1, x2 ,......, xn1 ) 
gdzie:
 (a
i 0
i
 Si )
ai = 0 lub 1;
Si - reprezentuje postać w naturalnym kodzie binarnym wartości
i;
 - znak oznaczający iloczyn logiczny.
41
Metody opisu układów kombinacyjnych
Przykład
Wyznaczyć kanoniczną formę sumacyjną funkcji przełączającej układu,
który stanem F=1 wyróżnia wśród liczb wejściowych z przedziału 0-7,
podawanych w naturalnym kodzie binarnym takie, w których liczba jedynek
jest parzysta.
i
x0
x1
x2
F
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
1
0
1
1
0
f ( x0 , x1 , x2 ) 
23 1
(ai  Si ) 
i 0
 (0  S0 )*(0  S1 )*(0  S2 )*(1  S3 )*(0  S4 )*
*(1  S5 )*(1  S6 )*(0  S7 ) 
 (0  S0 )*(0  S1 )*(0  S2 )*(0  S4 )*(0  S7 ) 
 ( x0  x1  x2 )*( x0  x1  x2 )*( x0  x1  x2 )*
*( x0  x1  x2 )*( x0  x1  x2 )
42
Metody opisu układów kombinacyjnych
Wyznaczenie kanonicznej formy sumacyjnej poprzez rozkład funkcji:
Rozkład funkcji względem zmiennej x1:
f ( x1 , x 2 , x 3 ,
, xn )  x1 f (1, x 2 , x 3 ,
, xn )  x1 f (0, x 2 , x 3 ,
, xn )
Rozkład funkcji względem zmiennej x2:
f ( x1 , x 2 , x 3 ,
, xn )  x1 x 2 f (1,1, x 3 ,
 x1 x 2 f (1, 0, x 3 ,
, xn )  x1 x 2 f (0,1, x 3 ,
, xn )  x1 x 2 f (0, 0, x 3 ,
, xn ) 
, xn )
Przykład:
f ( x1 , x 2 )  x1 * x 2  x1
f ( x1, x 2 )  x1 *(1* x 2  0)  x1 *(0* x 2 1)  x1 * x 2  x1
f ( x1 , x 2 )  x 2 *( x1 *1  x1 )  x2 *( x 1*0  x 1 ) 
 x1 * x 2  x 1*x 2  x 1* x2
43
Metody opisu układów kombinacyjnych
Wyznaczenie kanonicznej formy iloczynowej poprzez rozkład funkcji:
Rozkład funkcji względem zmiennej x1:
f ( x1 , x 2 , x 3 ,
, xn )  [ x1  f (0, x 2 , x 3 ,
, xn )]*[ x1  f (1, x 2 , x 3 ,
, xn )]
Rozkład funkcji względem zmiennej x2:
f ( x1 , x 2 , x 3 , , xn )  [ x1  x 2  f (0,0, x 3 , , xn )]*[ x1  x 2  f (1,0, x 3 , , xn )]*
*[ x1  x 2  f (0,1, x 3 , , xn )]*[ x1  x 2  f (1,1, x 3 , , xn )]
Przykład:
f ( x1 , x 2 )  x1 * x 2  x1
f ( x1, x 2 )  [ x1  (0* x 2 1)]*[ x1  (1* x 2 0)]  x1  x 2
f ( x1, x 2 )  [ x 2  ( x1  0)]*[ x2  ( x 1 1)]  x 1  x 2
44
Metody opisu układów kombinacyjnych
Wyznaczenie kanonicznej formy sumacyjnej oraz iloczynowej
z wykorzystaniem binarnego diagramu decyzyjnego:
f ( x1 , x 2 ,
f (0, x 2 ,
x2  0
0
, xn )
x1  0
x1  1
, xn )
f (1, x 2 ,
x2  1
f (1, x3 ,
, xn )
x2  0
1
, xn )
x2  1
f (1, x3 ,
, xn )
45
Metody opisu układów kombinacyjnych
Wyznaczenie kanonicznej formy sumacyjnej oraz iloczynowej
z wykorzystaniem binarnego diagramu decyzyjnego:
x1 * x 2  x1 * x 2  x 3
Przykład:
x1  0
x2  0
1
x 2x 3
x1  1
x2  1
x3  0
x3
x2  0
x3  1
0
F1={(00x);(011);(101);(11x)}
1
x3  0
x3
x 2 x 3
x3  1
0
x2  1
1
1
F0={(010);(100)}
FS  x1 * x 2 *x 3  x1 * x 2 *x 3  x1 * x 2 *x 3  x1 * x 2 *x 3 
 x1 * x 2 *x 3  x1 * x 2 *x 3
FI  ( x1  x 2  x 3 )*( x1  x 2  x 3 )
46
Metody minimalizacji funkcji przełączającej
Tablicą Karnaugha nazywamy uporządkowaną strukturę prostokątną,
złożoną z prostokątów elementarnych (kratek), z których każdy
reprezentuje jedno wyrażenie logiczne.
Przy n zmiennych tablica Karnaugha zwiera 2n kratek, obejmując
wszystkie możliwe wyrażenia.
x1x0
x2
00
01
11
10
0
1
Reguła upraszczania:
x1 * x2  x1 * x2  x1
( x1  x2 ) *( x1  x2 )  x1
47
Metody minimalizacji funkcji przełączającej
x1x0
x2
00
01
11
10
0
1
Zasady łączenia kratek:
•
liczba kratek elementarnych łączonych ze sobą musi być potęgą dwójki (1, 2, 4,
..., 2n);
•
łączone kratki muszą być sąsiednimi, tzn. oddzielonymi od siebie linią pionową,
poziomą lub krawędzią tablicy. Ewentualnie, jak ma to miejsce w przypadku
tablicy dla ilości zmiennych większej od czterech, można sklejać kratki
zajmujące pozycje będące swoimi zwierciadlanymi odbiciami;
•
łączone pola muszą mieć kształt symetryczny względem swych osi (kwadraty
lub prostokąty);
48
Metody minimalizacji funkcji przełączającej
x1x0
x3x2
00
01
11
10
00
01
11
10
49
Metody minimalizacji funkcji przełączającej
x2
x2
x2x1x0
x4x3
000
001
011
010
110
111
101
100
00
01
11
10
50
Metody minimalizacji funkcji przełączającej
Wyznaczyć funkcję przełączającą układu, który stanem F=1 wyróżnia
wśród liczb wejściowych z przedziału 0-7, podawanych w naturalnym
kodzie binarnym takie, które są podzielne przez 2.
i
x0
x1
x2
F
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
1
0
1
0
1
0
F  x1 * x2  x0 * x2
x1x2
00
01
11
10
0
0
0
0
1
1
1
0
0
1
x0
x0 * x2
x1 * x2
51
Metody minimalizacji funkcji przełączającej
Wyznaczyć funkcję przełączającą układu, który stanem F=1 wyróżnia
wśród liczb wejściowych z przedziału 0-7, podawanych w naturalnym
kodzie binarnym takie, które są podzielne przez 2.
i
x0
x1
x2
F
0
1
2
3
4
5
6
7
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
1
0
1
0
1
0
F  x1 * x2  x0 * x2
F  x2 *( x0  x1 )
x1x2
00
01
11
10
0
0
0
0
1
1
1
0
0
1
x0
x0  x1
x2
52
Metody minimalizacji funkcji przełączającej
Wyznaczyć, wykorzystując tablicę Karnaugha, postać minimalną funkcji
przełączającej, która stanem logicznym 1 sygnalizuje pojawienie się na wejściu
układu liczby z zakresu 0-24, której suma z następną w kolejności zawiera się
w przedziałach od 3 do 9 oraz od 17 do 24. Liczbą kolejną dla 24 jest 0. Liczby
podawane są na wejście układu w postaci binarnej.
x2x1x0
x4x3
00
01
11
10
000
0
0
8
1
24
1
16
0
001
1
1
9
1
25
--17
0
011
3
11
27
19
1
1
--0
010
2
10
26
18
1
1
--0
110
111
6
0
7
14
0
---
15
0
30
22
101
5
0
31
---
13
23
21
0
0
29
100
0
4
1
0
---
12
0
---
0
20
28
0
53
Metody minimalizacji funkcji przełączającej
Wyznaczyć, wykorzystując tablicę Karnaugha, postać minimalną funkcji
przełączającej, która stanem logicznym 1 sygnalizuje pojawienie się na wejściu
układu liczby z zakresu 0-24, której suma z następną w kolejności zawiera się
w przedziałach od 3 do 9 oraz od 17 do 24. Liczbą kolejną dla 24 jest 0. Liczby
podawane są na wejście układu w postaci binarnej.
x2x1x0
x4x3
00
01
11
10
000
001
011
010
110
111
101
100
0
1
1
0
1
1
--0
1
1
---
1
1
--0
0
0
0
1
0
---
0
---
0
---
0
---
0
0
0
0
0
F  x2 * x3  x2 * x0 * x4  x2 * x1 * x4  x0 * x1 * x2 * x3 * x4
54
Podstawowe układy kombinacyjne
Funktor
AND
Realizowana
funkcja
Symbol
X
F
F  X *Y
X
F  X Y
X
Y
X
F
OR
Y
NOT
NAND
F
F
Y
X
NOR
EX-OR
Y
F
Y

F
F  X
F  X *Y
X
X

F
&
F
Y
F
Y
X
&
Y
X
X
Konwencja
prostokątna
F
F  X Y
X
F  X Y
X

F
Y
=1
F
Y
55
Podstawowe układy kombinacyjne
System wskaźników negacji (SWN)
Wskaźnik negacji stosuje się przy konstrukcji schematów logicznych
w konwencji abstrakcyjnych stanów logicznych (0,1), tzn. abstrahując od
występujących w realnych układach poziomów wielkości fizycznych (np.
napięć) reprezentujących te stany. Ten system oznaczeń określa się jako
system wskaźników negacji (SWN).
SWN jest oparty na następujących regułach:
1. brak
wskaźnika
negacji
(kółeczka)
pomiędzy
symbolem
podstawowym a jego końcówką oznacza, że stan wewnętrzny jest
taki sam jak zewnętrzny;
2. obecność wskaźnika negacji oznacza, że stan wewnętrzny jest
negacją stanu zewnętrznego.
56
Podstawowe układy kombinacyjne
System wskaźników negacji (SWN)
Z reguły drugiej można wysnuć wniosek, że obecność wskaźnika negacji
na wejściu symbolu oznacza negację odpowiedniej zmiennej wejściowej
w zapisie matematycznym funkcji logicznej, realizowanej przez ten element.
Natomiast obecność wskaźnika negacji na wyjściu symbolu oznacza
negację tej funkcji.
System wskaźników negacji może być użyty do opisu realnych układów,
jeżeli dodatkowo wprowadzone zostaną jednoznaczne związki miedzy
abstrakcyjnymi stanami 0 i 1 i rzeczywistymi poziomami L i H.
57
Podstawowe układy kombinacyjne
System wskaźników negacji (SWN)
Istnieją tylko dwie takie konwencje (przeciwstawne), które określa się
jako „logika dodatnia” i „logika ujemna”. Definicje tych konwencji
w odniesieniu do schematów logicznych są następujące:
1. logika dodatnia oznacza, że na wszystkich końcówkach symboli stan 1
jest równoważny poziomowi wysokiemu H, a stan 0 jest równoważny
poziomowi niskiemu L;
2. logika ujemna oznacza, że na wszystkich końcówkach symboli stan
1 jest równoważny poziomowi niskiemu L, a stan 0 jest równoważny
poziomowi wysokiemu H.
58
Podstawowe układy kombinacyjne
Symbole dualne podstawowych funktorów
a)
X
X
F
Y
F = X * Y RÓWNOWAŻNE
F
Y
NAND
F=X+Y
DOR
X
X
F
Y
F = X + Y RÓWNOWAŻNE
F
DAND
NOR
X
F=X*Y
Y
F
F=X
X
RÓWNOWAŻNE
F
F=X
DNOT
NOT
b)
X
F
Y
F=X*Y
RÓWNOWAŻNE
X
F
Y
AND
DNOR
X
F
Y
OR
F=X+Y
X
F=X+Y
RÓWNOWAŻNE
F
Y
F=X*Y
DNAND
59
Wyprowadzenie
x  y * z  ( x  y ) *( x  z )
x y
xz
( x  y ) *( x  z )
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
1
1
1
1
1
1
1
1
0
0
0
1
1
1
1
1
0
1
0
1
1
1
1
1
1
0
0
1
1
1
1
1
1
1
1
1
1
1
1
x
y
z y*z x  y* z
0
0
0
0
0
0
1
0
1
0
60
Wyprowadzenie
x  y * z  ( x  y ) *( x  z )
( x  y ) *( x  z ) 
 x* x  x* z  x* y  y* z 
 x(1  z  y )  y * z 
 x  y*z
Powrót
61
Download