3. Steza układów sekwecjch Układ sekwecj. Jest to układ przełączając (rs. ), w którm sta wjść zależ ie tlko od aktualego stau wejść lecz także od poprzedich staów wejść (historii). Układ taki [t ] musi więc bć wposażo w pamięć. Związki pomiędz staem wejść X, aktualm staem [t ] [t] wewętrzm (w chwili t), oraz staem wjść Y określają dwie fukcje: fukcja przejść δ - określa astęp sta wewętrz jako: [ t+ τ ] = δ (, X ), fukcja wjść λ - określa sta wjść jako: Y = λ(, X ) lub Y = λ( ). f. wjść f. wjść δ k λ m δ' p p v M k λ m f. przejść f. wzbudzeń przerzutików blok przejść blok przerzutików Rs.. Schemat układu sekwecjego. Z uwagi a sposób oddziałwaia sgałów wejściowch układ sekwecje dzielim a: aschroicze - reagują atchmiast a każdą zmiaę sgału wejściowego, schroicze - reagują w chwilach czasowch ściśle określoch przez dodatkow zewętrz sgał taktując (zegarow). Układ sekwecj może mieć poadto strukturę: automatu Moore'a - sta wjść zależ włączie od stau wewętrzego układu, automatu Meal'ego - sta wjść zależ zarówo od stau wewętrzego jak i wejść. Poiżej podao krótkie porówaie własości układów aschroiczch i schroiczch: układ aschroicz układ schroicz - ie mają wejścia schroizującego - posiadają dodatkowe wejście schroizujące (zegarowe, taktujące) - reagują bezpośredio a każdą zmiaę stau wejść X - ow sta ustala się po iezerowm opóźieiu wikającm z iezerowch i różch czasów propagacji w elemetach - zmiaa stau wewętrzego astępuje dopiero pod wpłwem sgału zegarowego - ow sta ustala się po czasie τ od wstąpieia sgału zegarowego (i musi bć miejsz iż odstęp kolejch taktów zegarowch)
-stał sta a wejściu (0 lub ) jest traktowa jako pojedcz sgał - ab zapewić jedozaczość aaliz, zakłada się, że ie wstępuje jedoczesa zmiaa kilku sgałów wejściowch oraz wszelkie zmia wejść są dopuszczale tlko wted, gd sta wewętrz ie ulega zmiaie -mogą wstąpić zarówo sta stabile [ t+τ ] [ t+τ ] ( = ) jak i iestabile ( ) -mogą wstąpić iekorzste zjawiska (p. tzw. wścigi), które ależ welimiować (co dodatkowo komplikuje projektowaie) - stał sta a wejściu (0 lub ) trwając przez N taktów sgału zegarowego traktowa jest jako ciąg N kolejch sgałów - w czasie pomiędz impulsami zegarowmi może się jedocześie zmieiać kilka sgałów wejściowch - wszstkie sta wewętrze są stabile (bo są schroizowae sgałem zegarowm) - ie wstępują wścigi (prostsze projektowaie) Poiżej przedstawioo metodę projektowaia główie aschroiczch układów sekwecjch, która prz pewch drobch modfikacjach może zostać użta rówież do projektowaia pewej klas układów schroiczch spełiającch poiższe założeia: blok przerzutików ( pamięć ) będzie realizowa z przerzutików schroiczch, częstotliwość sgału zegarowego jest a tle duża, że wszstkie zmia sgałów wejściowch zostaą zauważoe (zakładam małą częstość zmia sgałów wejściowch), częstotliwość sgału zegarowego jest a tle mała, że zdążą zaikąć wszstkie sta przejściowe (p. hazard) wstępujące prz realizacji fukcji wzbudzeń przerzutików. Podao także wskazówki dla projektowaia układów schroiczch. Steza układów sekwecjch (aschroiczch lub schroiczch) polega a:. określeiu grafu lub tablic przejść i wjść układu (opisującej automat Moore a), 2. zmiejszeiu (miimalizacji) koieczej liczb staów wewętrzch (redukcja staów), 3. kodowaiu staów tablic przejść i wjść (p. w aturalm kodzie dwójkowm), 4. określeiu docelowej struktur bloku przejść (δ) i wjść (λ) i realizacji tch fukcji. Podstawowmi składikami bloku przejść są przerzutiki. W układach schroiczch zmieiają oe swój sta dopiero pod wpłwem sgału zegarowego, w zależości od aktualch wartości sgałów a wejściach iformacjch. Smbole ajczęściej użwach przerzutików wraz z tablicami opisującmi ich pracę został przedstawioe a rs. 2. pamiętaj: w układach schroiczch zmiaa stau wewętrzego astępuje dopiero pod wpłwem zewętrzego sgału taktującego (zegarowego) 2
a) b) D + J K + S R + T 0 0 0 0 0 0 0 0 0 0 0 0 0 - c) d) + D J K T S R 0 0 0 0-0 0-0 - 0 0 0-0 - 0 0-0 + D: = D JK: SR: + = J + + = S + + T: = T + T Rs. 2. Przerzutiki schroicze D, JK, SR, T: a) smbole, b) tablice przejść, c) tablice wzbudzeń, d) fukcje przejść. Prz projektowaiu układów przełączającch ajbardziej przdata jest tablica wzbudzeń, opisująca sta wejść iformacjch, prz którm wstępuje określoa zmiaa stau wjść przerzutików (p. z zera a jede (0 ), itp.). Określeie tablic przejść i wjść. Pierwszm krokiem w stezie układu aschroiczego jest przedstawieie jego właściwości fukcjoalch (zadach w formie zewętrzego opisu słowego, wkresu czasowego lub ciągów zerojedkowch) w formie pierwotej tablic przejść i wjść. Pierwota tablica przejść i wjść powia zawierać wszstkie wewętrze sta stabile oraz przejścia międz imi. Sta uważa się za stabil, jeżeli przebiegi przejściowe dobiegł już końca, a jego zmiaa może astąpić dopiero pod wpłwem zmia stau wejść. W praktce, będzie to każd sta, któremu w daej chwili czasu, dla daego stau wejść odpowiada określo (jedozacz) sta wjść (wikając ze staów poprzedich). Przejściem azwaa jest zmiaa stau wewętrzego, wikająca ze zmia stau wejść. Pierwotą tablicę przejść i wjść budujem tak ab: liczba kolum rówała się liczbie różch kombiacji sgałów wejściowch, liczba wiersz rówała się liczbie staów stabilch układu, każdemu staowi wewętrzemu odpowiadał ściśle określo sta wjść układu. R K + 3
Prz stezie układów schroiczch zwkle ajpierw tworz się graf przejść i wjść, a dopiero potem a jego podstawie tablicę przejść i wjść. Pamiętajm o tm, że dla układów schroiczch wszstkie sta wewętrze są stabile. Wpełiaie pierwotej tablic przejść i wjść:. wpisujem wszstkie sta stabile, tz. takie, dla którch prz iezmiem staie wejść astęp sta wewętrz pokrwa się z aktualm (sta wewętrz się ie zmieia), 2. astępie wpisujem sta iestabile układu wstępujące krótkotrwale, gd zmieił się już sta wejść ale sta wewętrz jeszcze ie zdążł się zmieić, 3. wkrwam ew. sta ieokreśloe, wstępujące prz jedoczesej zmiaie kilku sgałów wejściowch (ale prz założeiach poczioch powżej mogą bć oe utożsamiae ze staami iestabilmi, bo docelowo układ będzie realizowa jako schroicz!!!), 4. pozostałe kratki uzupełiam kreskami (sta dowol iezdefiiowa prz opisie zadaia) lub wpisujem dowol sta (zmiejsza to jedak późiej możliwości miimalizacji), 5. poszczególm staom przpisujem odpowiedi sta wjść (tablica wjść). Redukcja pierwotej tablic przejść i wjść. Po przgotowaiu pierwotej tablic przejść i wjść poddajem ją procesowi miimalizacji (redukcji liczb staów wewętrzch). Redukcji mogą podlegać sta: rówoważe - odpowiadają im iesprzecze sta wjść: (,), (,-), (-,); - przporządkowae mają jedakowe sta wejść; - reakcja a wejścia jest idetcza, pseudorówoważe - odpowiadają im iesprzecze sta wjść; - przporządkowae mają jedakowe sta wejść; - reakcja a wejścia jest iesprzecza, zgode - reakcja a wejścia jest iesprzecza. Jeżeli sta wewętrze są rówoważe (pseudorówoważe) pod warukiem rówoważości (pseudorówoważości) ich staów wewętrzch to takie sta azwam rówoważmi (pseudorówoważmi) warukowo. 4
Przkład redukcji staów: a) 2 (we) (w) sta 00 0 0 Y Y2 2 3-0 2 2 4-7 3 2 3-0 4 2 4 3-0 - 5 5 - - 7 6-4 6 7 0 0 7 8-6 7 0 8 8-7 0 0 sta rówoważe, 3 oraz, 4, 3, 4 (a) sta pseudorówoważe 2, 5 (b) sta pseudorówoważe warukowo 6, 8 (c) (bo, 4 są rówoważe) sta zgode a, b oraz c, d b) 2 sta 00 0 0 Y Y2,3, 2 3-0 4 2,5 2 4-7 6-4 6 7 0 0 7 8-6 7 0 8 8-7 0 0 c) 2 sta 00 0 0 Y Y2 a b a a - 0 b b a - d c c a c d 0 0 d c - c d 0 Rs. 3. Redukcja staów: a) tablica pierwota, b) tablica po redukcji staów rówoważch i pseudorówoważch, c) tablica po redukcji staów warukowch Przed przstąpieiem do redukcji staów tablic pierwotej (rs. 3a), sta stabile warto umieścić w kółku lub zacieiować im kolorem. Zwiększeia to przejrzstość oraz ułatwia aalizę prac układu. Redukcję rozpoczam od staów rówoważch i pseudorówoważch (rs. 3b). Sta iestabile (przejścia) zastępujem stabilmi, kilka staów stabilch odpowiadającch jedej kratce zastępujem jedm (zwkle o ajiższm umerze), sta dowole uzupełiam staami określomi (jeżeli wstępują). Jeśli po jedokrotej redukcji stwierdzim, iż w dalszm ciągu mam sta dające się zredukować, wówczas powższą procedurę ależ powtórzć. Stuacja taka wstępuje w przpadku istieia staów rówoważch lub pseudorówoważch warukowo. Poieważ oraz 4 reprezetują te sam sta wewętrz, 6 i 8 mogą bć zredukowae. Na koiec ależ uporządkować tablicę, adając owe ozaczeia wierszom i kratkom (rs. 3c). sta 00 0 0 a a/ a/0 a/0 c/0 c c/00 a/0 c/00 c/0 Rs. 4. Tablica pierwota po redukcji staów zgodch. Redukcję staów zgodch wkoujem tlko dla automatu Meal ego. W takim przpadku (rs. 4) każdemu staowi wewętrzemu może odpowiadać i sta wjść, w zależości od aktualego stau wejść. Każda kratka tablic, oprócz astępego stau wewętrzego zawiera ow sta wjść. 5
Kodowaie staów wewętrzch. Poprawość działaia układów aschroiczch w dużej mierze zależ od przjętego sposobu kodowaia, ze względu a możliwość wstąpieia tzw. wścigów krtczch. Zjawisko wścigów ma miejsce wówczas, gd prz przejściu ze stau aktualego do stau astępego w zapisach (kodach) tch staów zmieiają się przajmiej dwa bit jedocześie. Kodowaie staów wewętrzch w układach schroiczch jest zaczie prostsze, gdż ie wstępuje w ich iebezpieczeństwo wścigów. Sposób kodowaia jest w zasadzie dowol, więc ajczęściej są stosowae kod NB (atural biar) i Graa, jakkolwiek jest możliwe użcie ich kodów mającch a celu uproszczeie budow bloku wzbudzeń (δ ) lub bloku wjść (λ), albo dostosowach do tpu użtch przerzutików (D, JK, ). Określeie struktur bloku przejść (δ) i wjść (λ). Pierwszą czością jest wbór tpu przerzutików (schroiczch), które mają bć użte w bloku δ (rs. ). Najczęściej stosowae są przerzutiki D lub JK, dla którch tablice wzbudzeń podao a rs. 2. Na podstawie wbraego tpu przerzutika tworz się tablice wzbudzeń, a astępie projektuje bloki bloku wzbudzeń δ i wjść λ (jako układ kombiacje), Automat Moore'a Automatem Moore'a azwam układ przełączając, w którm sta wjść układu zależ w sposób bezpośredi od stau wewętrzego (każdemu staowi wewętrzemu odpowiada ściśle określo sta wjść). f. wzbudzeń przerzutików δ p p v zegar M blok przerzutików k fukcja wjść λ m Y [ t+ τ ] = δ ( = λ( ), X Rs. 5. Automat Moore a. Działaie automatu może bć określoe tablicą programu lub grafem przejść. W przpadku automatu Moore a gałęzie grafu opisae są odpowiedim staem wejść, atomiast sta wjść przpisa jest wierzchołkom, reprezetującm sta wewętrz układu. Graf przejść staowi zwkle bezpośredi odpowiedik pierwotej tablic programu, czasem bwa puktem wjścia do jej tworzeia. Stezę układu przeprowadza się a podstawie zredukowaej tablic programu, w której sta wewętrze przedstawioe są w postaci liczb dwójkowch reprezetującch sta elemetarch układów pamiętającch (przerzutików). ) 6
=K (w) sta 0 Z 2 0 2 3 2 0 3 4 0 4 2 =K (w) 2 0 Z 00 00 0 0 0 0 0 00 0 0 0 00 0 Rs. 6. Automat Moore a: a) graf przejść, b) tablica pierwota, c) tablica zakodowaa. Na rs. 6a pokaza został przkładow graf przejść automatu Moore a realizując wkrwaie sekwecji 0, podawaej a wejście szeregowe (), sgalizowaej jako impuls jedkow a wjściu Z. Grafowi temu odpowiada tablica programu jak a rs. 6b. Do zakodowaia czterech staów wewętrzch wmagae jest użcie dwóch przerzutików (4=2 2 ) o wjściach, 2. Wierszom tablic (rs. 6c) przpisuje się sta wjść przerzutików daego stau wewętrzego, w poszczególe kratki (zależie od stau wejść) wpiswae są przejścia do owch staów wewętrzch (owch staów przerzutików). Korzstając z tablic wzbudzeń przerzutika JK ależ astępie utworzć tablice wzbudzeń Karaugh (rs. 7). W kratkach wpisujem sta a odpowiedim wejściu daego przerzutika, prz którm wstąpi + + przejście 2 2. Np. dla 2=0 i =0 astąpi przejście do 2= (: 0, 2: ), więc: J=, K=-, J2=-, K2=0. Fukcja wjść wika wprost z tablic programu: Z = 2. Rs. 7. Tablice wzbudzeń Karaugh. J = 2 K = + 2 J 2 = K 2 = Rs. 8. Realizacja automatu Moore a a przerzutikach JK. 7
Przkład 2 Zaprojektować układ wkrwając kieruek ruchu wózka (rs. 9). Czujiki c i c2 reagują a obecość wózka. Ich rozstaw jest miejsz iż długość wózka. Lampka Y0 sgalizuje przejazd wózka w lewo, a Y - w prawo. Rozwiązaie: c Rs. 9. Przkład 2. Zadaia tego ie da się rozwiązać jako układu kombiacjego, gdż staom czujików cc2 odpowiada róż sta wjść Y0Y w zależości od kieruku ruchu wózka. Do wzaczeia kieruku ruchu potrzeba jest zajomość zarówo aktualego jak i poprzediego stau wejść czujików. Jest to zatem układ sekwecj. W zadaiu mam trz podstawowe grup staów związae z wjściami układu: ruch w lewo (Y0=, Y=0), ruch w prawo (Y0=0, Y=) oraz wózek poza zasięgiem czujików (Y0=0, Y=0). W grupach tch moża atomiast wróżić sta wewętrze związae z aktwością czujików rejestrującch ruch wózka w dam kieruku (cc2={0,,0}). W związku z tm otrzmujem astępującą listę staów wewętrzch :. wózek poza zasięgiem czujików (Y0=0, Y=0, cc2=00) 2. wózek porusza się w lewo (Y0=, Y=0, cc2=0) 3. wózek porusza się w lewo (Y0=, Y=0, cc2=) 4. wózek porusza się w lewo (Y0=, Y=0, cc2=0) 5. wózek porusza się w prawo (Y0=0, Y=, cc2=0) 6. wózek porusza się w prawo (Y0=0, Y=, cc2=) 7. wózek porusza się w prawo (Y0=0, Y=, cc2=0) Na jej podstawie możem już zbudować pierwotą tablicę przejść i wjść (jak dla układu aschroiczego - rs. 20a). Smbolem * został ozaczoe stuacje, które ie wstąpią prz założeiu iezmieości kieruku ruchu wózka pomiędz czujikami. Został oe zazaczoe dla zwróceia uwagi a wpłw, jaki mają a działaie programu. Sta wewętrze 2, 3, 4 mimo, iż w staie stabilm ustawiają wjścia w te sam sposób, ie mogą bć zredukowae, różią się bowiem reakcją a zmiaę stau czujików (powodującą zmiaę stau wjść). Jeśli jedak założm iezmieość kieruku ruchu wózka, wówczas sta 2, 3, 4 oraz 5, 6, 7 moża zredukować. Tablica przejść i wjść po redukcji przjmie wted postać jak a rs. 20b. a) b) cc2 cc2 sta 00 0 0 Y0Y sta 00 0 0 Y0Y 2-5 00 a a b - c 00 2 * 3-0 b a b b b 0 3-7* 4 0 c a c c c 0 4-6* 0 d - - - - -- 5 * - 6 0 6-7 4* 0 7 3* - 0 Rs. 20: a) Pierwota tablica staów, 8 - - - - -- b) tablica po redukcji. 8 Y0 Y c2
Po zakodowaiu tablic przejść i wjść (rs. 2a), tworzm tablice wzbudzeń (Karaugh) przerzutików. Dla przerzutików D przjmują oe postać jak a rs. 2b. a) b) c) cc2 2 00 0 0 Y0Y 00 00 0 -- 00 0 00 0 0 0 0 00 0 0 -- -- -- -- -- D= c2+ c+ 2c D 2 = c + c2 Rs. 2. a) Zakodowaa tablica przejść-wjść, b) tablice wzbudzeń przerzutików. Fukcje wjść wzaczam a podstawie tablic wjść (Karaugh) układu sterowaia (rs. 22). 2 2 0 0 0 0 0 0 0-0 - Y0= 2 Rs. 22. Tablice wjść (Karaugh). Realizacja układu przedstawioa została a rs.23. Rs. 23. Schemat logicz układu sterowaia dla Przkładu 2. 9