xyz 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 0 0

Transkrypt

xyz 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 0 0
Dr inż. Jan Chudzikiewicz
Pokój 117/65
Tel. 683-77-67
E-mail: [email protected]
Materiały: http://www.ita.wat.edu.pl/~jchudzikiewicz/
Warunki zaliczenie:
• Otrzymanie pozytywnej oceny z kolokwium zaliczeniowego.
• 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)
Negacja
(nie 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
p⇔q
¬p
4
Poziomy logiczne
U[V]
5
1
2
0,8
0
0
t
Dla układów TTL serii standardowej:
U O L m ax ≤ 0, 4 V
U O H m in ≥ 2, 4 V
U IL m ax ≤ 0, 8 V
U IH m in ≥ 2 V
5
Poziomy logiczne
U[V]
5
1
2
0,8
0
0
t
Marginesy zakłóceń:
M L m in = U IL m ax − U O L m ax = 0, 8 − 0, 4 = 0, 4 V
M H m in = U O H m in − U IH m in = 2, 4 − 2, 0 = 0, 4 V
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
Systemy liczbowe
Liczba w kodzie naturalnym:
a n − 1 p n − 1 + a n − 2 p n − 2 + ... + a 1 p 1 + a 0 p 0 +
n −1
+ a −1 p
−1
+ a −2 p
−2
+ ... + 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 }
8
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
9
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
10
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
11
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
12
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
13
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
14
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
15
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
16
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
17
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
18
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
19
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
20
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
21
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
22
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
23
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
24
Metody opisu układów kombinacyjnych
Kanoniczna forma sumacyjna
2n − 1
F = f ( x 0 , x 1, x 2 , ...... , x n −1 ) =
U
ai Ii
i = 0
gdzie:
ai = 0 lub 1;
Ii - reprezentuje postać w naturalnym kodzie binarnym wartości
i;
U
- znak oznaczający sumę logiczną.
25
Metody opisu układów kombinacyjnych
Kanoniczna forma iloczynowa
2n − 1
F = f ( x 0 , x1, x 2 ,......, x n −1 ) =
I (a
i
+ Si )
i=0
gdzie:
ai = 0 lub 1;
Si - reprezentuje postać w naturalnym kodzie binarnym wartości
i;
I - znak oznaczający iloczyn logiczny.
26
Metody minimalizacji funkcji przełączającej
x1x0
x3x2
00
01
11
10
00
01
11
10
27
Metody minimalizacji funkcji przełączającej
x1x0
x3x2
00
01
11
10
00
01
11
10
28
Metody minimalizacji funkcji przełączającej
x1x0
x3x2
00
01
11
10
00
01
11
10
29
Metody minimalizacji funkcji przełączającej
x2
x2
x2x1x0
x4x3
000
001
011
010
110
111
101
100
00
01
11
10
30
Metody minimalizacji funkcji przełączającej
x2x1x0
x4x3
000
001
011
010
110
111
101
100
00
01
11
10
31
Metody minimalizacji funkcji przełączającej
x2x1x0
x4x3
000
001
011
010
110
111
101
100
00
01
11
10
32
Metody minimalizacji funkcji przełączającej
x2x1x0
x4x3
000
001
011
010
110
111
101
100
00
01
11
10
33
Metody minimalizacji funkcji przełączającej
x2x1x0
x4x3
000
001
011
010
110
111
101
100
00
01
11
10
34
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
100
5
0
4
1
0
31
---
13
0
---
12
0
---
23
21
0
20
0
0
29
28
0
35
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
F
Y
X
Y
&
F
Y
≥1
F
Y
X
X
Konwencja
prostokątna
F
F = X′
F = X *Y
F = X +Y
F = X ⊕Y
X
X
1
F
&
F
Y
X
≥1
F
Y
X
=1
F
Y
36
Podstawowe układy kombinacyjne
Symbole dualne podstawowych funktorów
a)
X
F
Y
X
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
RÓWNOWAŻNE
X
F
F=X
DNOT
NOT
b)
X
X
F
Y
F=X*Y
RÓWNOWAŻNE
F
Y
AND
DNOR
X
F
Y
OR
F=X+Y
X
F=X+Y
RÓWNOWAŻNE
F
Y
F=X*Y
DNAND
37
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
38

Podobne dokumenty