Podstawy układów mikroelektronicznych wykład dla kierunku Technologie Kosmiczne i Satelitarne Część 2. Podstawy działania układów cyfrowych. dr inż. Waldemar Jendernalik Katedra Systemów Mikroelektronicznych, WETI, Politechnika Gdańska Budynek WETI pokój 39, waldi@eti.pg.edu.pl
Sygnał analogowy przyjmuje dowolne wartości z określonego przedziału wartości są określone w każdej chwili na danym odcinku czasu Sygnały Sygnał cyfrowy przyjmuje wartości dyskretne (skwantowane) wartości zmieniają się w określonych chwilach czasu Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 2
Sygnały Przetwarzanie sygnałów (informacji) wymaga: operacji matematycznych typu dodawanie/odejmowanie, mnożenie/dzielenie, porównanie operacji logicznych zapamiętania próbek sygnału Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 3
Przetwarzanie matematyczne Dodawanie analogowe Łatwe do zaimplemetowania Dokładność zależna od dokładności wykonania elementów Implementacja CMOS: -5 tranzystorów Dodawanie cyfrowe Implementacja znacznie bardziej złożona układowo Dokładność praktycznie niezależna od dokładności wykonania elementów Implementacja CMOS: -5 tranzystorów R R Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 4
Przetwarzanie matematyczne Dodawanie analogowe Łatwe do zaimplemetowania Dokładność zależna od dokładności wykonania elementów Implementacja CMOS: -5 tranzystorów Dodawanie cyfrowe V + V 2 R+ R Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 5 V R V 2 2 2 V3 = + Implementacja znacznie bardziej złożona układowo Dokładność praktycznie niezależna od dokładności wykonania elementów Implementacja CMOS: -5 tranzystorów R 2R + R
Przetwarzanie matematyczne Dodawanie analogowe Łatwe do zaimplemetowania Dokładność zależna od dokładności wykonania elementów Implementacja CMOS: -5 tranzystorów Dodawanie cyfrowe Implementacja znacznie bardziej złożona układowo Dokładność praktycznie niezależna od dokładności wykonania elementów Implementacja CMOS: -5 tranzystorów R R Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 6
Przetwarzanie matematyczne Mnożenie analogowe Łatwe do zaimplemetowania Dokładność zależna od dokładności wykonania elementów Implementacja CMOS: -5 tranzystorów Mnożenie cyfrowe Implementacja bardzo złożona układowo Dokładność praktycznie niezależna od dokładności wykonania elementów Implementacja CMOS: ponad tranzystorów Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 7
Korzyść Mimo nieporównywalnie większej złożoności układowej, przetwarzanie cyfrowe obecnie praktycznie wyparło analogowe. Powody: całkowita powtarzalność (np. kopiowania), większa niezawodność (np. transmisji sygnału), większa ochrona danych, niższe koszty w większości przypadków. Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 8
Sygnał binarny Sygnał cyfrowy dwupoziomowy tylko dwie wartości (poziomy, stany) napięcia poziom wysoki high H, poziom niski low L Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 9
Sygnał binarny Sygnał cyfrowy dwupoziomowy w praktyce poziomy H i L zajmują pewne zakresy np. dla standardu CMOS.8V, V < H < 2 V, -.3 V < L <.5 V H L Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd
Odporność na zakłócenia Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd
Sygnał binarny Strumień dwójkowy (binarny) Strumień cyfr {, } H L () B = 2 + 2 9 + 2 8 +... + 2 = (74) D Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 2
Odporność na zakłócenia Mapa bitowa, -bitowa tzn. piksel ma 2 = 24 odcieni szarości. Piksel Reprezentacja analogowa: 24 kolejne wartości napięcia Biel Reprezentacja cyfrowa: 24 kolejne słowa binarne Czerń Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 3
Logika Logika D Morgana i algebra Bool a Dwie wartości logiczne: prawda (true) i fałsz (false) Sygnał logiczny łatwo skojarzyć z sygnałem binarnym H true L false Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 4
Funkcje logiczne Funcja logiczna AND tzw. iloczyn logiczny false AND false => false = false AND true => false = true AND false => false = true AND true => true = Funcja logiczna OR tzw. suma logiczna + false OR false => false + = false OR true => true + = true OR false => true + = true OR true => true + = Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 5
Bramki logiczne AND in in2 out NAND in in2 out in in2 out OR in in2 out NOR in in2 out XOR in in2 out XNOR in in2 out Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 6
Bramki implementacja CMOS Bramka NAND Bramka NOR Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 7
Przykład : logika sterowania windą Przycisk niewciśnięty stan logiczny false Przycisk wciśnięty stan logiczny true Tabela prawdy dla sterownika windy Winda jedź stan logiczny true Winda stój stan logiczny false Stan przycisku góra niewciśnięty (false) wciśnięty (true) wciśnięty (true) Stan przycisku dół" niewciśnięty (false) wciśnięty (true) niewciśnięty (false) Sygnał dla windy stój (false) stój (false) jedź (true) Sygnał z przycisku góra Sygnał z przycisku dół Sterownik windy? Sygnał dla windy niewciśnięty (false) wciśnięty (true) jedź (true) Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 8
Przykład 2: logika sterowania suwnicą Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 9
Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 2 Przykład 2: logika sterowania suwnicą X X X X X X X X X X X X X X SL (do silnika) SP (do silnika) KL (z czujnika) KP (z czujnika) JL (z kabiny) JP (z kabiny) Wyjścia Wejścia Tabela prawdy układu sterowania
Przykład 2: logika sterowania suwnicą c.d. Schemat układu sterowania suwnicą. Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 2
Quiz Wypełnij tabelę prawdy dla sterownika windy. Wykonaj syntezę logiki sterownika. Sygnał z przycisku góra Sygnał z przycisku dół Sterownik windy? Jedź do góry Jedź w dół Tabela prawdy dla sterownika windy Stan przycisku góra Stan przycisku dół" Jedź do góry Jedź w dół Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 22
Funkcje arytmetyczne Suma arytmetyczna liczb -bitowych A B Wynik + = + = + = + = < > Suma logiczna (OR) A B Wynik + = + = + = + = Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 23
+ = + = + = + = Suma arytmetyczna Suma arytmetyczna liczb -bitowych <=> + = + = + = + = <=> Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 24
Suma arytmetyczna Suma arytmetyczna liczb -bitowych A B Wynik (in) (in2) C out S out + = + = + = + = Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 25
Suma arytmetyczna Suma arytmetyczna liczb 2-bitowych A B Wynik + = + = + = + = + = + = + = + = Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 26 A B 2-bit adder? 2 2+2 = 6 kombinacji Wynik
Suma złożoność implementacji Suma arytmetyczna liczby n-bitowej i m-bitowej daje 2 n+m kombinacji Na przykład dla liczb -bitowych mamy 2 2 =... kombinacji Dla liczb 6-bitowych mamy 2 32 =... kombinacji Należy poszukać inny sposób... Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 27
Suma arytmetyczna Dodawanie z przeniesieniem Carry + Result Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 28
Sumator liczb -bitowych Dodawanie z przeniesieniem Carry + Result Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 29
Sumator liczb n-bitowych Sumator liczb n-bitowych, A+B=S Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 3
Iloczyn arytmetyczny Iloczyn arytmetyczny liczb -bitowych = = = = Iloczyn logiczny (AND) = = = = A B -bit multiplier Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 3
Iloczyn liczb 2-bitowych A B Wynik x = x = x = x = x = x = x = A B 2-bit multiplier 2 2+2 = 6 kombinacji Wynik x = Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 32
Iloczyn złożoność implementacji Metoda mnożenia siłowa, wprost iloczyn liczby n-bitowej i m-bitowej daje 2 n+m kombinacji na przykład dla liczb -bitowych mamy 2 2 =... kombinacji dla liczb 6-bitowych mamy 2 32 =... kombinacji Należy poszukać inny sposób... Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 33
Mnożnik systoliczny Mnożnik liczb 4-bitowych to 6 sumatorów 4-bitowych A 3 A 2 A A B 3 B 2 B B P 4 P 3 P 2 P P + Systolic multiplier Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 34
Mnożnik algorytmiczny Mnożenie w systemie dziesiętnym 89 * = 89 89 * 2 = 89 89 * 3 = 89 * (3* 2 + * + * ) Mnożenie w systemie binarnym * (2 ) D = * (2 2 ) D = * = * (*2 3 + *2 2 + *2 + *2 ) = + + + Potrzebne są 3 sumatory i... Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 35
Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 36 Mnożnik algorytmiczny A*B = * = * (*2 3 + *2 2 + *2 + *2 ) = A B = + + + =
Quiz 2 Załóżmy, że chcemy sterować windę tylko jednym uniwerslanym przyciskiem. Przycisk działa naprzemiennie (inwersyjnie) tzn. kolejne naciśnięcia powodują zmianę kierunku ruchu windy zgodnie z sekwencją... stój jedź do góry stój jedź na dół stój jedź do góry... Wypełnik tabelę prawdy i wykonaj syntezę logiki sterownika. Przycisk uniwersalny Sygnał z przycisku uniwersalnego Sterownik windy? Jedź do góry Jedź w dół Stan przycisku uniwersaln. Jedź do góry Jedź w dół Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 37
Układ logiczny (cyfrowy) - definicja Układ o m wejściach i n wyjściach na których może występować lub. x x 2 Układ x i {,} logiczny y i {,} x m y y 2 y n Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 38
Klasyfikacja układów logicznych Układy logiczne Układy kombinacyjne Układy, w których sygnał wyjściowy zależy tylko od sygnału wejściowego tj. y = f(x). Układy sekwencyjne Układy, w których sygnał wyjściowy zależy od aktualnego sygnału wejściowego oraz od aktualnego i/lub poprzednich sygnałów wyjściowych tj. y(t+) = f(x(t), y(t), y(t-t ), y(t-t 2 ),...). Układy asynchroniczne Układy, w których sygnał wyjściowy może zmieniać się w dowolnych chwilach czasu. Układy synchroniczne Układy, w których sygnał wyjściowy może zmieniać się tylko w ustalonych chwilach czasu. Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 39
Przykład 3: sterowanie stoperem Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 4
Przykład 3: sterowanie stoperem Graf sygnałowy (maszyna stanu, automat). Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 4
Przykład 3: sterowanie stoperem Stany układu zakodowane w postaci binarnej: liczy, stop, reset. Działanie przycisków R i ST: wciśnięty oznacza, puszczony. Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 42
Przykład 3: sterowanie stoperem Schemat układu sterowania stoperem. state() state() reset liczy stop -bitowe komórki pamięci (przerzutniki D) Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 43
Problem zapętlenia Jeśli ST = to układ cały czas zmienia stan! Zamiast czułości na poziom trzeba zastosować czułość na... Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 44
Przerzutnik D, D flip-flop Kiedy CLK narasta, wtedy D jest kopiowane do Q We wszystkich innych momentach, Q utrzymuje swoją wartość Synonimy rising edge-triggered flip-flop, positive edgetriggered flip-flop, master-slave flip-flop CLK D CLK Flip-Flop Q D Q Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 45
Przerzutnik D, D flip-flop W przykładzie stopera do wejść zegarowych podłączono przycisk ST Takie wykorzystanie wejścia clk jest niestandardowe, ale dopuszczalne Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 46
Quiz 3 Załóżmy, że chcemy sterować windę tylko jednym uniwerslanym przyciskiem. Przycisk działa naprzemiennie (inwersyjnie) tzn. kolejne naciśnięcia powodują zmianę kierunku ruchu windy zgodnie z sekwencją... jedź do góry jedź na dół jedź do góry jedź na dół... Narysuj graf i wykonaj syntezę logiki sterownika. Przycisk uniwersalny Sygnał z przycisku uniwersalnego Sterownik windy? Jedź do góry Jedź w dół Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 47
Quiz 4 Załóżmy, że chcemy sterować windę tylko jednym uniwersalnym przyciskiem. Przycisk działa naprzemiennie (inwersyjnie) tzn. kolejne naciśnięcia powodują zmianę kierunku ruchu windy zgodnie z sekwencją... stój jedź do góry stój jedź na dół stój jedź do góry... Narysuj graf i wykonaj syntezę logiki sterownika. Przycisk uniwersalny Sygnał z przycisku uniwersalnego Sterownik windy? Jedź do góry Jedź w dół Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 48
Quiz 4 - rozwiązanie. Etap : maszyna stanu. 4 stany: Jedź do góry, state= Stój, gdyż poprzednio było do góry, state= Jedź na dół, state= Stój, gdyż poprzednio było na dół, state= button button button button D Q D Q CLK CLK button state() state() Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 49
Quiz 4 - rozwiązanie. Etap 2: logika stanu. Sterownik windy button State machine state() state() Combinatorial logic Jedź do góry Jedź w dół Tabela prawdy dla logiki kombinacyjnej State() State() Jedź do góry Jedź w dół Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 5
Combinatorial loop Pamięć 3 V high V low 3 V high V low 3 V high V low??? Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 5
Combinatorial loop Pamięć H L Faza -sza (opened) + - H H H L Faza 2 + - H H Faza 3 (latched) + - H?? Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 52
Combinatorial loop Pamięć Faza -sza (opened) L L H L Faza 2 L L H L Faza 3 (latched) L?? Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 53
Fazę 2 można pominąć! Pamięć L H Faza -sza (opened) L L L H Faza 2 L L Faza 3 (latched) L L H Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 54
Zatrzask typu D, D Latch Wprowadzenie (zapis) sygnału D D Q Q D Q Q Zatrzaśnięcie (zapamiętanie) Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 55
Przypomnienie klucze MOS nmos L H pmos L H Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 56
Zatrzask typu D, D Latch Wprowadzenie (zapis) sygnału D, gdy CLK = High D CLK Q Q CLK CLK Q D Q Zatrzaśnięcie (zapamiętanie), gdy CLK = Low CLK Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 57
Zatrzask typu D, D Latch Czułość na poziom CLK CLK Q D Q D CLK Latch Q Q CLK CLK D Q Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 58
D Przerzutnik D, D flip-flop Utworzony z dwóch zatrzasków D, master i slave Czuły na zbocze CLK Q middle Latch Latch Q CLK D Q middle CLK Q Q CLK CLK CLK CLK CLK D Q Część 2: Podstawy działania układów cyfrowych PUM dla TKIS Slajd 59