Problematyka wykadu Wprowadzenie Zjawisko hazardu Ukady arytmetyczne Ukady
Problematyka wykładu • Wprowadzenie • Zjawisko hazardu • Układy arytmetyczne • Układy konwersji kodów • Multipleksery i demultipleksery 1
Wprowadzenie Kolejność postępowania przy syntezie kombinacyjnego układu logicznego: • określenie funkcji logicznej odpowiednio do postawionych wymagań np. za pomocą tablicy stanów (tablicy prawdy); • przeprowadzenie procesu minimalizacji funkcji logicznej np. przy użyciu tablic Karnaugha lub metodą algebraiczną; • sporządzenie schematu układu, odpowiadającego zminimalizowanej formie boolowskiej; • optymalizacja konfiguracji schematowej. 2
Wprowadzenie Synteza układu opisanego formą sumacyjną, reguły stosowania symboli funktorów równoważnych dla NAND: 1. bramkę wejściową, na której wyjściu otrzymuje się stany lub poziomy logiczne realizujące pożądaną funkcję, określa się jako reprezentującą pierwszy (nieparzysty) poziom układu. Graficznym symbolem tej bramki jest symbol DOR; POZIOMY UKŁADU 1 F 3
Wprowadzenie Synteza układu opisanego formą sumacyjną, reguły stosowania symboli funktorów równoważnych dla NAND: 2. bramki których wyjścia są przyłączone do wejść bramki wyjściowej, określa się jako reprezentujące drugi (parzysty) poziom układu. Graficznymi symbolami tych bramek są symbole NAND; POZIOMY UKŁADU 2 1 F 4
Wprowadzenie Synteza układu opisanego formą sumacyjną, reguły stosowania symboli funktorów równoważnych dla NAND: 3. dalsze poprzedzające bramki reprezentują odpowiednio dalsze nieparzyste i parzyste poziomy, przy czym na poziomach nieparzystych stosuje się symbole DOR, a na poziomach parzystych symbole NAND; POZIOMY UKŁADU 4 3 2 1 F 5
Wprowadzenie Synteza układu opisanego formą sumacyjną, reguły stosowania symboli funktorów równoważnych dla NAND: 4. w zasadzie każda linia połączeniowa między wyjściem jednej bramki a wejściem drugiej powinna mieć na obydwu końcach symbole wskaźnika negacji lub nie powinna ich mieć w ogóle; POZIOMY UKŁADU 4 3 2 1 F 6
Wprowadzenie Synteza układu opisanego formą sumacyjną, reguły stosowania symboli funktorów równoważnych dla NAND: 5. zmienne wprowadzane na wejścia ze wskaźnikami negacji reprezentowane w formie boolowskiej przez swe dopełnienia; są 6. zmienne wprowadzane na wejścia bez wskaźników reprezentowane w formie boolowskiej bez dopełnienia. są negacji POZIOMY UKŁADU 4 3 2 1 F 7
Wprowadzenie POZIOMY UKŁADU 4 3 2 1 F 8
Wprowadzenie Przykład odstępstwa od reguły 4 -tej F POZIOMY UKŁADU 2 1 F 9
Wprowadzenie Do optymalizacji układów kombinacyjnych (reguła 4 -ta) najczęściej są stosowane następujące kryteria: 1. minimalna złożoność układowa; 2. minimalne opóźnienie propagacji; 3. minimalny koszt; 4. maksymalna niezawodność. 10
Hazard Przyczyny powstania zjawiska hazardu: 1. gdy przynajmniej jeden sygnał wejściowy dochodzi do wyjścia drogami o różnych opóźnieniach; 2. gdy jednocześnie ulegają zmianie dwa lub więcej sygnałów wejściowych i przechodzą one do wyjścia drogami o różnych opóźnieniach; 3. gdy układ zapewnia dla wszystkich sygnałów wejściowych drogi o jednakowych opóźnieniach, lecz sygnały te zmieniają swe stany logiczne niejednocześnie. 11
Zjawisko hazardu statycznego 1 F 2 1 0 0 10 F 1 0 1 10 1 F 3 0 01 1 0 01 01 1 F 1 x 1 x 0 F 2 x 2 00 01 0 F 3 F 1 0 1 1 0 Hazard statyczny w 1 1 11 F 10 1 1 12
Zjawisko hazardu dynamicznego 00 1 1 0 1 1 0 0 F 2 00 1 1 0 0 1 0 1 11 0 F 1 F 3 F 4 10 1 0 01 0 0 1 10 1 0 1 1 0 0 F F 1 F 2 F 3 F 4 F 13 Hazard dynamiczny
Zjawisko hazardu dynamicznego F 2 F 1 x 2 x 3 x 1 0 1 F 3 00 01 11 10 1 1 1 F 4 F F 14
Zjawisko hazardu dynamicznego 0 1 0 1 1 F 1 0 1 0 1 F F 1 F Hazard statyczny w 1 15
Detektor narastającego zbocza sygnału 0 1 1 0 0 0 1 1 0 1 F 1 0 0 1 0 F 16
Detektor opadającego zbocza sygnału 1 0 0 1 1 1 0 0 0 1 F 1 0 0 0 1 1 F 17
Detektor opadającego zbocza sygnału 1 0 0 0 1 1 1 0 0 1 1 0 F 1 F 0 1 1 0 F 18
Układy arytmetyczne Układ półsumatora Równanie Tabela prawdy A Czynniki B C S Suma Przeniesienie Symbol A B C B S C 0 0 1 1 0 1 0 1 1 0 0 1 Tablice Karnaugha S B C 0 0 0 1 0 1 A S A B S 0 0 0 1 1 0 A 19
Układy arytmetyczne Układ półsumatora Tablice Karnaugha B C 0 0 0 1 0 1 A B S 0 0 0 1 1 0 A 20
Układy arytmetyczne Przykłady implementacji układowej półsumatora A Przykład B 21
Układy arytmetyczne Układ sumatora Symbol Równanie Ai Bi Czynniki Ci-1 Ci Si Tablice Karnaugha Ci Suma S Ci-1 Przeniesienie Tabela prawdy Ai Bi Ci-1 Si Ci 0 0 1 1 0 1 0 1 0 1 1 0 0 0 1 1 1 Si Ci-1 Ci Ci-1 Si Ai Bi 00 01 11 10 0 1 0 1 1 1 Ai Bi 00 01 11 10 0 0 1 1 1 0 22
Układy arytmetyczne Układ sumatora Tablice Karnaugha Ci-1 Ci Ai Bi 00 01 11 10 0 1 0 1 1 1 Ci-1 Si Ai Bi 00 01 11 10 0 0 1 1 1 0 23
Układy arytmetyczne Przykłady implementacji układowej sumatora Ai Bi Przykład Ci-1 24
Układy arytmetyczne Realizacja układ sumatora z dwóch półsumatorów Ai Si PÓŁSUMATOR Bi AB PÓŁSUMATOR Ci-1 Ci Przykład 25
Układy arytmetyczne Sumator wielobitowy szeregowy Składnik A. . . . n-bitowy rejestr przesuwający Składnik B. . . . A Suma. . . . Ci-1 S B Ci n-bitowy rejestr przesuwający D n-bitowy rejestr przesuwający Q C Zegar 26
Układy arytmetyczne Sumator wielobitowy szeregowy Składnik A 0 0 0 1 1 0 6 -bitowy rejestr przesuwający Składnik B A Ci-1 S B 0 1 1 01 10 01 0 0 1 0 1 1 0 0 6 -bitowy rejestr przesuwający D C 1 0 3 2 6 4 5 1 0 Ci 1 0 6 -bitowy rejestr przesuwający Suma Q 1 0 Zegar 27
Układy arytmetyczne Sumator wielobitowy równoległy z przeniesieniami szeregowymi Cn Bn An B 3 A 3 B 2 A 2 B 1 A 1 B A B A Ci S Ci-1 Cn-1 C 3 Ci S Ci-1 C 2 Ci S Ci-1 C 1 Ci S S Sn S 3 S 2 S 1 Ci-1 C 0 28
Układy arytmetyczne Sumator wielobitowy równoległy z przeniesieniami szeregowymi B 4 A 4 1 B C 5 1 Ci B 3 0 1 A S Ci-1 S S 4 A 3 B C 3 1 Ci 0 S Ci-1 S 3 A 2 1 A S 0 B 2 B C 2 1 Ci 1 S Ci-1 S 2 A 1 1 A S 0 B 1 B C 1 1 Ci 0 A S Ci-1 C 0 1 S 1 0 29
Układy arytmetyczne Sumator wielobitowy równoległy z przeniesieniami jednoczesnymi C 0 B A Blok przeniesień Cn Blok sumy S 30
Układy arytmetyczne Scalony układ arytmetyczny 31
Układy arytmetyczne Jednostka arytmetyczno-logiczna A 0, . . . , A 3 i B 0, . . . , B 3 - wejścia dla dwóch słów czterobitowych Cn - wejście przeniesienia M - wejście określające tryb pracy S 0, . . . , S 3 - wejścia wyboru funkcji F 0, . . . , F 3 - wyjście wyniku Cn+4 - wyjście przeniesienia G - wyjście przeniesienia generowanego P - wyjście przeniesienia propagowanego A = B - wyjście komparacyjne 32
Układy arytmetyczne Realizacja operacji porównania A=B jest w stanie wysokim gdy obydwie liczby są równe A=B jest w stanie niskim gdy obydwie liczby są różne W wyniku operacji porównania na wyjściach A=B i Cn+4 otrzymujemy: 33
Układ realizujący operację dodawania i odejmowania B 4 B 3 B 2 B 1 A 4 A 3 A 2 A 1 0 1 1 0 0 1 0 1 A 4 A 3 A 2 A 1 S 4 S 3 S 2 S 1 B 2 B 3 B 4 C 0 0 1 1 Sterowanie C 4 Odejmowanie Dodawanie 0 1 1 0 1 34
Układ realizujący operację dodawania liczb w kodzie BCD B 4 B 3 0 B 1 0 1 1 1 A 2 A 1 S 3 S 2 S 1 1 A 3 Cn 0 0 1 S 4 C 4 1 A 4 A 3 A 2 A 1 A 4 B 1 B 2 B 3 B 4 C 0 Cn-1 B 2 1 1 0 0 0 1 1 0 A 3 A 2 A 1 S 4 S 3 S 2 S 1 C 4 A 4 B 1 B 2 B 3 B 4 C 0 1 1 1 0 0 1 0 35
Układ generacji bitu parzystości Generowanie bitu parzystości polega na wytworzeniu jednego bitu i dodaniu go do słowa kodowego, będącego nośnikiem informacji. Bit ten jest zwany bitem parzystości. Jeśli dane słowo kodowe zawiera nieparzystą (parzystą) liczbę jedynek, to bit parzystości przyjmuje wartość 1 w przeciwnym przypadku wartość 0. Bit parzystości generowany jest zgodnie z równaniem: gdzie: - bit słowa informacyjnego (i=0…n). 36
Układ generacji bitu parzystości A 0 A 1 A 2 A 3 0 1 1 0 0 0 1 0 1 1 0 Sygnał sterujący: 0 – generacja bitu parzystości; 1 – generacja bitu nieparzystości. dla bitu parzystości dla bitu nieparzystości 1 0 1 0 – bez błędu; 1 – błąd. 0 – błąd; 1 – bez błędu. 37
Układ generacji bitu parzystości Tabela stanów dla układu 74180 Wejścia Wyjścia Liczba stanów 1 na wejściach danych (A. . . H) od 0 do 7 jest: Parzyste (EI) Nieparzyste (OI) Parzyste (EVEN) Nieparzyste (ODD) Parzysta 1 0 Nieparzysta 1 0 0 1 Parzysta 0 1 Nieparzysta 0 1 1 0 X 1 1 0 0 X 0 0 1 1 38
Układ generacji bitu parzystości B 0 EI OI EVEN ODD A B C D E F G H EI OI 74180 A B C D E F G H 74180 B 7 EVEN ODD Wyjścia kontrolne Wejścia sterujące 39
Układy konwersji kodów Podział: • enkodery (zwane również koderami); § zwykłe § priorytetowe • dekodery; § pełne - jeżeli 2 n = m § niepełne - jeżeli 2 n < m • transkodery. 40
Układ enkodera zwykłego Tabela prawdy Wejścia Kod 1 z 10 Wyjścia Kod 9 8 7 6 5 4 3 2 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 2 3 4 5 6 7 8 9 D C B A 0 0 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 1 Równania dla enkodera 1 z 10 A=1+3+5+7+9 A = (1 + 9) + (3 + 7) + (5 + 7) B=2+3+6+7 B = (2 + 6) + (3 + 7) C=4+5+6+7 C = (4 + 6) + (5 + 7) D=8+9 41
Układ enkodera zwykłego Realizacje układowe Przykład: enkoder 1 z 10. msm 42
Układ enkodera zwykłego Tabela prawdy Wejścia Kod 1 z 10 Wyjścia Kod 9 8 7 6 5 4 3 2 1 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 2 3 4 5 6 7 8 9 D C B A 0 0 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 1 Równania dla enkodera 43
Układ enkodera zwykłego Realizacje układowe Przykład: enkoder_nie_1 z 10. msm 44
Układ enkodera priorytetowego Realizacja z konwersją pośrednią K o d x z n . . w y j ś c i o w y . . Kod 1 z n 45
Układ enkodera priorytetowego Realizacja z konwersją bezpośrednią K o d x z n K o d. . . . w y j ś c i o w y 46
Układ enkodera priorytetowego Realizacja iteracyjna konwersji kodu x z n na kod 1 z n xzn E 0 B 0 0 Y 0 E 1 B 1 1 Y 1 Ei-1 B 2 Bi i En-2 Bi+1 Bn-2 Yi-1 n-2 Yn-2 En-1 Bn-1 Bn Yn-1 1 zn Funkcje przełączające i-tego stopnia mają postać: 47
Zasada działania i-tego stopnia enkodera priorytetowego Symbol Ei Bi Schemat logiczny Bi+1 0 1 Yi 1 1 0 Tabela prawdy Bi+1 0 0 1 1 Ei 0 1 Yi 0 1 0 0 Bi 0 1 1 0 48
Układ enkodera priorytetowego Realizacja z równoległą propagacją przeniesienia 49
Układ dekodera pełnego Tabela prawdy Wyjścia Wejścia x 0 x 1 A B C D 0 0 1 1 1 0 1 0 0 1 1 1 0 0 0 1 1 0 Równania dla dekodera kodu 8421 na 1 z 4 50
Układ dekodera pełnego Realizacje układowe AND A AND B AND C AND D 1 z 4 x 0 NOT x 1 NOT Przykład: dekoder 8421_1 z 4. msm 51
Układ dekodera pełnego Realizacje układowe NOR A NOR B 1 z 4 C NOR D x 0 NOT x 1 NOT 52
Układ dekodera pełnego Tabela prawdy Wyjścia Wejścia x 0 x 1 A B C D 0 0 1 1 1 0 1 0 0 1 1 1 0 0 0 1 1 0 Równania dla dekodera kodu 8421 na 53
Układ dekodera pełnego Realizacje układowe x 0 NAND A NAND B NAND C NAND D NOT x 1 NOT Przykład: dekoder 8421_nie_1 z 4. msm 54
Układ dekodera pełnego Realizacje układowe x 0 OR A OR B OR C OR D NOT x 1 NOT 55
Układ dekodera niepełnego Tabela prawdy A x 1 x 0 Wejścia Wyjścia BCD 8421 1 z 10 X 3 X 2 X 1 X 0 A B C D E F G H I J 0 0 0 0 1 1 1 0 0 0 0 1 1 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 x 3 x 2 0 0 0 0 0 0 0 1 C 00 01 11 10 x 1 x 0 00 01 11 10 x 3 x 2 00 1 0 00 0 1 01 0 0 0 0 11 --- --- 10 0 0 --- --- 56
Układ dekodera niepełnego Tabela stanów dekodera Kod wejściowy x 3 x 2 x 1 x 0 0 0 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 1 Nr aktywnego wyjścia A B C D E F G H I J Stany zabronione 1 1 1 0 0 1 1 0 1 0 1 C, I D, J E, I F, J G, I H, J Przykład: dekoder_8421_1 z 10. msm 57
Układ transkodera Kod wejściowy X DEKODER Kod pierścieniowy ENKODER Kod wejściowy Y Transkoder Kod wejściowy X TRANSKODER Kod wejściowy Y 58
Układ transkodera Tabela prawdy Wejścia Wyjścia 8421 2421 x 1 x 0 x 3 x 2 X 3 X 2 X 1 X 0 A B C D 0 0 0 0 1 1 0 1 0 0 1 1 0 0 0 1 0 1 0 1 0 0 1 1 1 1 C B 00 01 11 10 x 1 x 0 00 01 11 10 x 3 x 2 00 0 0 1 1 01 0 0 1 1 11 --- --- 10 1 1 --- --- A = x 3 D = x 0 59
Multipleksery i demultipleksery W E J Ś C I A 0 1 2 Multiplekser Linia przesyłowa Demultiplekser n-1 n n Adres W Y J Ś C I A Adres 60
Multiplekser scalony 74151 Symbol Tabela stanów Wejścia Adresowe Wyjścia Strobujące C B A S X 0 0 1 1 X 0 1 0 1 1 0 0 0 0 Y W 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7 1 D 0 ’ D 1 ’ D 2 ’ D 3 ’ D 4 ’ D 5 ’ D 6 ’ D 7 ’ Funkcja realizowana przez układ: 61
Realizacja funkcji przełączającej za pomocą multipleksera ba 00 c 0 1 0 4 ? ? 01 1 5 ? ? 11 3 7 ? ? 10 2 6 ? ? 62
Realizacja funkcji przełączającej za pomocą multipleksera ba 00 c 0 1 0 4 0 0 01 1 5 0 1 11 3 7 1 1 10 2 6 0 1 63
Realizacja funkcji przełączającej za pomocą multipleksera ba 00 dc 00 0 01 4 10 0 ? ? 01 1 5 5 1 ? ? 11 3 7 7 3 ? ? 10 2 6 6 2 ? ? 64
Realizacja funkcji przełączającej za pomocą multipleksera ba 00 dc 00 0 01 4 10 0 0 01 1 5 5 1 1 1 0 1 11 3 7 7 3 1 1 1 0 10 2 6 6 2 0 1 1 0 65
Multiplekser scalony 74151 Symbol Tabela stanów Wejścia Adresowe Wyjścia Strobujące C B A S X 0 0 1 1 X 0 1 0 1 1 0 0 0 0 Y W 0 D 1 D 2 D 3 D 4 D 5 D 6 D 7 1 D 0 ’ D 1 ’ D 2 ’ D 3 ’ D 4 ’ D 5 ’ D 6 ’ D 7 ’ Funkcja realizowana przez układ: 66
Demultiplekser scalony 74155 67
Realizacja demultipleksera 8 -bitowego 68
- Slides: 68