UKAADY SEKWENCYJNE, PRZERZUTNIKI Marek PaweÅ‚czyk Instytut Automatyki Politechniki ÅšlÄ…skiej MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. UKAADY CYFROWE klasyfikacja (przypomnienie) x1 y1 x2 y2 A xn ys Oznaczenia: Xt stan wejÅ›ciowy w chwili t Yt stan wyjÅ›ciowy w chwili t At stan wewnÄ™trzny w chwili t UkÅ‚ad kombinacyjny (bez pamiÄ™ci): Yt = f (Xt) UkÅ‚ad sekwencyjny (z pamiÄ™ciÄ…): Yt = f (Xt, Xt-t1, Xt-t2, ...) PamiÄ™tanie stanów poprzednich odbywa siÄ™ poprzez stany wewnÄ™trzne: t t t At = (a1, a2,...,am) Dla identycznych słów wejÅ›ciowych mogÄ… pojawić siÄ™ różne sÅ‚owa wyjÅ›ciowe, zależnie od stanu ukÅ‚adu, a wiÄ™c w pewnym sensie również czasu! ... ... MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. UKAADY CYFROWE klasyfikacja c.d. ZwiÄ…zki pomiÄ™dzy stanami X, Y, A okreÅ›lajÄ… funkcje: Funkcja przejść ´: t At+Ä = ´ (At , X ) Funkcja wyjść : Automat Moore a wyjÅ›cie zależy wyÅ‚Ä…cznie od stanu Yt = (At ) A Y ´ X t Automat Mealy ego wyjÅ›cie zależy od stanu i od wejÅ›cia Yt = (At, X ) A Y ´ X MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. UKAADY SEKWENCYJNE opis dla ukÅ‚adu Moore a Tablica wyjść Tablica przejść: automatu Moore a: s \ x1x0 00 01 11 10 s y s1 s2 s3 s1 s4 s1 0 s2 s1 s4 s1 s3 s2 1 s3 s4 s1 s2 s1 s3 0 s4 s1 s3 s2 s2 s4 0 1 s2 Graf automatu: graf skÅ‚adajÄ…cy siÄ™ z wÄ™złów (reprezentujÄ…cych stany) i strzaÅ‚ek (reprezentujÄ…cych przejÅ›cia miÄ™dzy stanami) 0 01 0 11 s1 s3 01, 10 s4/0 s4 0 01 10 11, Inna form a z a pi s u MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. UKAADY SEKWENCYJNE opis dla ukÅ‚adu Mealy ego Tablica wyjść Tablica przejść: automatu Mealy ego: s \ x1x0 00 01 11 10 s \ x1x0 00 01 11 10 s1 s2 s3 s1 s4 s1 0 1 1 0 s2 s1 s4 s1 s3 s2 1 1 1 1 s3 s4 s1 s2 s1 s3 0 0 0 0 s4 s1 s3 s2 s2 s4 0 1 1 0 s2 01/1 11/1 s1 s3 01/0, 10/0 s4 01/1 11/0, 10/0 MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. UKAADY SEKWENCYJNE klasyfikacja UkÅ‚ady sekwencyjne, w zależnoÅ›ci od sposobu oddziaÅ‚ywania na stan wewnÄ™trzny dzielÄ… siÄ™ na: UkÅ‚ady asynchroniczne Zmiana stanu wewnÄ™trznego A nastÄ™puje bezpoÅ›rednio pod wpÅ‚ywem zmiany sygnałów wejÅ›ciowych Ai = ´i(a1,a2,...,am, x1, x2,..., xn) i =1,2,...,m ai aktualny stan wewnÄ™trzny brak zmiennej czasu Ai nastÄ™pny stan wewnÄ™trzny UkÅ‚ady synchroniczne Zmiana stanu wewnÄ™trznego A może nastÄ…pić tylko w Å›ciÅ›le okreÅ›lonych chwilach czasu n (taktach) n n n n n Ain+1 = ´i(A1 , A2 ,..., Am, x1 , x2 ,..., xn) i =1,2,...,m p Ain aktualny stan wewnÄ™trzny obecna zmienna czasu Ain+1 nastÄ™pny stan wewnÄ™trzny MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. ELEMENTY PAMICI, PRZERZUTNIK rs Elementy pamiÄ™ci realizuje siÄ™ poprzez sprzężenie zwrotne Najprostszy ukÅ‚ad pamiÄ™tajÄ…cy: Schemat ten można przerysować do nstp.: set s (wej. ustawiajÄ…ce) s q q reset q r r q (wej. zerujÄ…ce) MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PRZERZUTNIK rs c.d. sr s r qn+1 qn 00 01 11 10 0 0 qn s q 0 0 0 - 1 0 1 0 r q 1 1 0 - 1 1 0 1 qn+1 1 1 - - : stan zabroniony qn+1 = r(s + qn) RozwiÄ…zujÄ…c siatkÄ™ Karnaugha: Przerzutnik aktywny w stanie niskim s r: s r qn+1 CzÄ™sto dla uproszczenia stosuje siÄ™ oznaczenia: 0 0 - s q qn q 0 1 1 qn+1 Q r q 1 0 0 1 1 qn MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PRZERZUTNIK RS Przerzutnik: rs asynchroniczny RS synchroniczny (niezbÄ™dne jest dodatkowe wejÅ›cie zegarowe): S Q S Q CLK, CP, C, CK, t C R Q Q R clk Jest to przerzutnik wyzwalany poziomem wysokim stan wyjść może zmieniać siÄ™ caÅ‚y czas, gdy wejÅ›cie zegarowe jest w stanie wysokim Wady wyzwalania poziomem: możliwe stany przejÅ›ciowe na wyjÅ›ciu, przypadkowy stan na wyjÅ›ciu po wÅ‚Ä…czeniu zasilania MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PRZERZUTNIK D D Dn Qn+1 Qn 0 1 Q D 0 0 0 0 1 CLK, CP, C, CK, t Q C 1 1 1 0 1 Qn+1 CLK = 1 to Q = D D Q Q clk Jest to przerzutnik typu zatrzask (ang. latch) wyzwalany poziomem wysokim MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PRZERZUTNIK T T Qn 0 1 Tn Qn+1 Q T 0 0 1 0 Qn CLK, CP, CK, t Q C 1 Qn 1 1 0 Qn+1 Jest to przerzutnik typu przeÅ‚Ä…cznik (ang. toggle) wyzwalany poziomem wysokim 16.04.2014 15 MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PRZERZUTNIK JK JK J K qn+1 Qn 00 01 11 10 0 0 qn J 0 0 0 1 1 Q 0 1 0 C 1 1 0 0 1 1 0 1 Q K Qn+1 1 1 qn - : stan zabroniony DziaÅ‚anie podobne do dziaÅ‚ania przerzutnika RS z wyjÄ…tkiem przypadku JK = 11. Typowo przerzutnik taki wyzwalany jest zboczem opadajÄ…cym: J Q C Q K CzÄ™sto wprowadza siÄ™ priorytetowe wejÅ›cia ustawiajÄ…ce i zerujÄ…ce, aktywne w stanie niskim: J s Q WejÅ›cia ustawiajÄ…ce i zerujÄ…ce wystÄ™pujÄ… również C w przerzutnikach D i T Q K r MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PRZERZUTNIKI tabele przejść Qn Qn+1 Dn Sn Rn Jn Kn Tn 0 0 0 0- 0- 0 0 1 1 10 1- 1 1 0 0 01 -1 1 1 1 1 -0 -0 0 MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PRZYKAADOWE ROZWIZANIA UKAADOWE Przerzutnik D wyzwalany poziomem, z dodatkowymi wejÅ›ciami asynchronicznymi : 7475 Przerzutnik D wyzwalany zboczem narastajÄ…cym, z dodatkowymi wejÅ›ciami asynchronicznymi: 7474 Przerzutnik JK MS (3 wejÅ›cia J, 3 wejÅ›cia K ) z dodatkowymi wejÅ›ciami asynchronicznymi: 7472 Przerzutnik JK MS z blokadÄ… wejść informacyjnych: 74110 MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. KONWERSJE PRZERZUTNIKÓW Dwójka liczÄ…ca: 1 1 J J D T s s s s Q Q Q Q C C C C Q Q Q Q K K r r r r Uwaga: D musi być wyzwalany zboczem D s Q t C JK T: JK D: D t, T: T D: Q r 1 D T 1 J J s s T s Q Q Q D C C C D s Q Q Q Q K K r r r T C Q r 1 1 MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. ELIMINACJA WPAYWU DRGAC ZESTYKÓW +5 V +5 V R2 R2 X X R3 Y Y s 1 0 0 1 R1 R1 +5 V Wada: UkÅ‚ady te zamykajÄ… lub otwierajÄ… bramkÄ™ wyjÅ›ciowÄ… w momencie zmiany poÅ‚ożenia przeÅ‚Ä…cznika, niezależnie od fazy sygnaÅ‚u wejÅ›ciowego, w wyniku czego pierwszy lub ostatni impuls może zostać skrócony Korzystniejsze rozwiÄ…zanie oparte jest o zastosowanie rejestrów MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. ELIMINACJA WPAYWU DRGAC ZESTYKÓW +5 V +5 V R2 R2 a a Q Q D D c c I I Q Q C C II II b b R1 R1 +5 V +5 V Przerzutnik wyzwalany zboczem opadajÄ…cym: Przerzutnik wyzwalany zboczem narastajÄ…cym: Klucz na I: a = 1 Klucz na I: tak jak przy wyzwalaniu zb. opadajÄ…cym Q = 0 do nadejÅ›cia zbocza opadajÄ…cego na C Klucz na II, gdy na wej. C jest stan 0: Q ustala siÄ™ po czasie propagacji przerzutnika D generowanie szpilki! Na c pojawiajÄ… siÄ™ jedynie caÅ‚e impulsy wejÅ›ciowe MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. STANY NIESTABILNE Stan niestabilny stan, w którym ukÅ‚ad zatrzymuje siÄ™ jedynie na czas wynikajÄ…cy z opóznieÅ„ elementów MogÄ… wystÄ…pić w nstp. sytuacjach: 1. dane wejÅ›ciowe zmieniajÄ… siÄ™ w czasie ustalenia ts, poprzedzajÄ…cym pojawienie siÄ™ impulsu zegara. 2. poÅ‚Ä…czenia urzÄ…dzeÅ„ pracujÄ…cych z różnymi czÄ™stotliwoÅ›ciami zegarów Skutki stanów niestabilnych: a). poziom napiÄ™cia wyjÅ›ciowego nie odpowiada poziomowi stanu wysokiego lub niskiego, lecz jest okolicach progu przeÅ‚Ä…czenia; trwa nawet przez kilka µs, b). samoistna zmiana poziomu na przeciwny, po chwilowym ustaleniu. Åšrodki zaradcze: Ad 1. zaprojektowanie ukÅ‚adu synchronicznego z tak dobranymi szybkoÅ›ciami, aby uniknąć powyższego problemu Ad 2. stosowanie powiÄ…zanych ze sobÄ… ukÅ‚adów synchronizujÄ…cych Ad 1,2. zaprojektowanie detektora stanów niestabilnych, który zeruje przerzutnik MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PARAMETRY DYNAMICZNE PRZERZUTNIKÓW Podstawowe parametry dynamiczne: 1. Minimalny czas trwania aktywnego poziomu sygnaÅ‚u tw,min. Najczęściej parametr ten podaje siÄ™ dla wejść asynchronicznych oraz zegarowych reagujÄ…cych na poziom sygnaÅ‚u. 2. Minimalny czas trwania poziomu poprzedzajÄ…cego i nastÄ™pujÄ…cego po aktywnym zboczu sygnaÅ‚u (twL,min dla poziom niskiego, twH,min dla poziomu wysokiego) - podawany dla wejÅ›cia zegarowego. 3. Maksymalny czas trwania zbocza wyzwalajÄ…cego (tTLH,max - dla zbocza narastajÄ…cego oraz tTHL,max dla opadajÄ…cego) - podawane dla wejÅ›cia zegarowego. 4. Czas ustalenia (wyprzedzenia) ts (setup time) - minimalny czas, w którym sygnaÅ‚ musi być obecny na wejÅ›ciach informacyjnych przerzutnika przed nadejÅ›ciem wyzwalajÄ…cego zbocza (lub poziomu) impulsu zegarowego. 5. Czas utrzymania (podtrzymania) th (hold time) - minimalny czas, w którym sygnaÅ‚ wejÅ›ciowy musi pozostać na wejÅ›ciach informacyjnych po wystÄ…pieniu wyzwalajÄ…cego zbocza (lub po wycofaniu aktywnego poziomu) sygnaÅ‚u zegarowego. Czasy ts oraz th mogÄ… mieć inne wartoÅ›ci dla sygnaÅ‚u niskiego. 6. Maksymalna czÄ™stotliwość przebiegu zegarowego fmax. 7. Czas martwy tm - minimalny czas jaki musi upÅ‚ynąć od zakoÅ„czenia sygnaÅ‚u programujÄ…cego do chwili, kiedy może pojawić siÄ™ sygnaÅ‚ zegarowy lub inny sygnaÅ‚ programujÄ…cy. 8. Czasy propagacji sygnałów od wejÅ›cia zegarowego do wyjść Q i Q . 9. Czasy propagacji sygnałów od wejść programujÄ…cych do wyjść Q i Q . Czasy propagacji (punkty 8 i 9) wyróżnia siÄ™ dla przypadku od stanu niskiego do wysokiego (tpLH) oraz od stanu wysokiego do niskiego (tpHL) na wyjÅ›ciu. Åšredni czas propagacji tp jest ich Å›redniÄ… arytmetycznÄ…. MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. ZALEÅ»NOÅšCI CZASOWE - przykÅ‚ad PrzykÅ‚ad: dwójka liczÄ…ca D s Q C Q r Przeniesienie informacji do Q nastÄ™puje po czasie tp Informacja na D nie może być wpisana przez nastÄ™pne zbocze C wczeÅ›niej, niż ts Informacja na D nie może ulec zmianie wczeÅ›niej, niż th Z reguÅ‚y zachodzi: tp > ts Z reguÅ‚y zachodzi: tp > th Kolejne zbocze zegara nie może siÄ™ wiÄ™c pojawić wczeÅ›niej, niż: T1 = tp + ts Minimalny czas trwania okresu zegara niezbÄ™dny dla poprawnej pracy przerzutnika: T2 = twL + twH Minimalny czas trwania okresu zegara niezbÄ™dny dla poprawnej pracy przykÅ‚adowego ukÅ‚adu dwójki liczÄ…cej przerzutnika: Tmin = max(T1, T2) Maksymalna czÄ™stotliwość impulsów zegara: fmax = 1/Tmin MAREK PAWEACZYK, WYKAAD Z TECHNIKI CYFROWEJ, KIERUNEK AIR, WYDZ. AEI, POL. ÅšL. PRZERZUTNIK D rozwiÄ…zania ukÅ‚adowe PrzykÅ‚ad: Przerzutnik D wyzwalany zboczem narastajÄ…cym, z dodatkowymi wejÅ›ciami asynchronicznymi (UCY 7474) PrzykÅ‚ad: Zalecane warunki pracy ukÅ‚adu UCY 7474 PrzykÅ‚ad: Parametry dynamiczne przerzutnika w ukÅ‚adzie UCY 7474 (UCC = 5 V, tamb = 25 °C)