Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięRealizacja automatu asynchronicznego
Moderatorzy:Jacek Bogusz, Moderatorzy
Witam Serdecznie. Drodzy koledzy mam do zrealizowania na laboratorium z cyfrówki następujące zadanie:
Na razie wykonałem graf i chciałbym się dowiedzieć czy jest on poprawnie narysowany, bo jeśli jest źle to dalsze działania nie mają sensu.
Tzn.
Rozwiązanie zadania ma zawierać następujące elementy.
1. Graf stanów projektowanego układu (automatu) asynchronicznego.
2. Pierwotną tablicę przejść-wyjść układu.
3. Minimalizację liczby stanów wewnętrznych automatu.
4. Minimalne TPW automatu Moore'a oraz Mealy'ego. W tablicy wyjść automatu Mealy'ego należy wpisać wartości 0 lub 1 tylko w kratki odpowiadające stanom stabilnym w tablicy przejść. Pozostałe kratki tablicy wyjść należy wypełnić stanami nieokreślonymi.
5. Kodowanie stanów wewnętrznych automatu oraz zakodowane TPW More'a i Mealy'ego. Tablice należy zakodować wykorzystując jak najmniejszą liczbę zmiennych wewnętrznych. Zakodowane TPW nie mogą zawierać wyścigów krytycznych.
6. Minimalne formuły boolowskie dla funkcji wzbudzeń przerzutników oraz funkcji wyjść układu. Do realizacji układu można wykorzystywać asynchroniczne przerzutniki następujących typów :
- przerzutnik sr
- przerzutnik t
7. Schemat serwisowy (tj. schemat narysowany zgodnie z normą Mil. Std. 803b) oraz montażowy projektowanego układu. Rysując schemat można wykorzystywać wyłącznie symbole następujących elementów:
- bramka NOT (bramka negacji),
- 2-, 3- i 4-wejściowa bramka NAND,
- 2-, 3- i 4-wejściowa bramka NOR,
- 2-wejściowa bramka XOR.
- asynchroniczny przerzutnik t
Dodam jeszcze że zawory i grzałka załączane są stanem niskim ("0"):
Z góry dziękuje za pomoc.
Pozdrawiam
Na razie wykonałem graf i chciałbym się dowiedzieć czy jest on poprawnie narysowany, bo jeśli jest źle to dalsze działania nie mają sensu.
Tzn.
Rozwiązanie zadania ma zawierać następujące elementy.
1. Graf stanów projektowanego układu (automatu) asynchronicznego.
2. Pierwotną tablicę przejść-wyjść układu.
3. Minimalizację liczby stanów wewnętrznych automatu.
4. Minimalne TPW automatu Moore'a oraz Mealy'ego. W tablicy wyjść automatu Mealy'ego należy wpisać wartości 0 lub 1 tylko w kratki odpowiadające stanom stabilnym w tablicy przejść. Pozostałe kratki tablicy wyjść należy wypełnić stanami nieokreślonymi.
5. Kodowanie stanów wewnętrznych automatu oraz zakodowane TPW More'a i Mealy'ego. Tablice należy zakodować wykorzystując jak najmniejszą liczbę zmiennych wewnętrznych. Zakodowane TPW nie mogą zawierać wyścigów krytycznych.
6. Minimalne formuły boolowskie dla funkcji wzbudzeń przerzutników oraz funkcji wyjść układu. Do realizacji układu można wykorzystywać asynchroniczne przerzutniki następujących typów :
- przerzutnik sr
- przerzutnik t
7. Schemat serwisowy (tj. schemat narysowany zgodnie z normą Mil. Std. 803b) oraz montażowy projektowanego układu. Rysując schemat można wykorzystywać wyłącznie symbole następujących elementów:
- bramka NOT (bramka negacji),
- 2-, 3- i 4-wejściowa bramka NAND,
- 2-, 3- i 4-wejściowa bramka NOR,
- 2-wejściowa bramka XOR.
- asynchroniczny przerzutnik t
Dodam jeszcze że zawory i grzałka załączane są stanem niskim ("0"):
Z góry dziękuje za pomoc.
Pozdrawiam
Re: Realizacja automatu asynchronicznego
Zadanie jest proste, zwłaszcza że w pytaniu masz całą ściągawkę.
Re: Realizacja automatu asynchronicznego
hehe....proste to zależy jak dla kogo pomoże kolega ???
Dobry jest ten graf???
Dobry jest ten graf???
Ostatnio zmieniony 19 paź 2013, o 21:44 przez Faber33, łącznie zmieniany 1 raz.
Re: Realizacja automatu asynchronicznego
Jeśli chcesz to zrobić pisząc, to ja odpadam. (graficznie mogę to zaprogramować, tylko potrzeba więcej szczegółów typu: temperatury, czasy, ciśnienia przepływy, itp. )hehe....proste to zależy jak dla kogo pomoże kolega ???
Na chwilę obecną mam kupę roboty, i mogę jedynie coś podpowiedzieć.
Re: Realizacja automatu asynchronicznego
No musze to zrobić pisemnie według tych punktów powyżej
Re: Realizacja automatu asynchronicznego
Ja nie wiem co tam studiujesz i co miałeś na wykładach. (dla mnie te punkty nic nie znaczą)
Założenia są proste, lecz trzeba wiedzieć do jakich parametrów je odnieść.
Założenia są proste, lecz trzeba wiedzieć do jakich parametrów je odnieść.
Re: Realizacja automatu asynchronicznego
Nie wiem, jaki stosujecie zapis na zajęciach, czego tak na prawdę wymaga wasz prowadzący, itd., ale wydaje mi się, że pierwsze 3 zadania można rozwiązać tak:
Re: Realizacja automatu asynchronicznego
Dziękuje za odpowiedź. Czyli graf jest okej. Widzę że kolega tylko inną kolejność zmiennych zastosował. Pierwotną tablicę przejść-wyjść układu wygląda że też mam dobrze. Grosza sprawa teraz z Minimalizacja dla Mealeygo i Moora oraz kodowaniem bo tego nie ogarniam do końca .
Re: Realizacja automatu asynchronicznego
To jest to co się zakreśla grupy '1' żeby zrobić postać sumacyjna albo grupy '0' żeby zrobić postać iloczynową?
Re: Realizacja automatu asynchronicznego
Dziwna ta logika.
Zastosuj kolejność wykonywania procedur, a unikniesz wyścigu. (u ciebie to mogą być jakieś przesunięcia w bitach ew. opóźnienia dla bitów slave, bądź przeniesienie określonej procedury do następnej kolejki. Tak bynajmniej jest w programach graficznych gdzie programujesz o wiele większe obiekty niż to co przedstawiłeś)
Mogę dodać, że w logice CMOS stosuje się szeregowe bufory, bądź kondensatory dla bitów slave.
Zastosuj kolejność wykonywania procedur, a unikniesz wyścigu. (u ciebie to mogą być jakieś przesunięcia w bitach ew. opóźnienia dla bitów slave, bądź przeniesienie określonej procedury do następnej kolejki. Tak bynajmniej jest w programach graficznych gdzie programujesz o wiele większe obiekty niż to co przedstawiłeś)
Mogę dodać, że w logice CMOS stosuje się szeregowe bufory, bądź kondensatory dla bitów slave.
Re: Realizacja automatu asynchronicznego
Odpowiedź jak zwykle na temat ;PDziwna ta logika.
Zastosuj kolejność wykonywania procedur, a unikniesz wyścigu. (u ciebie to mogą być jakieś przesunięcia w bitach ew. opóźnienia dla bitów slave, bądź przeniesienie określonej procedury do następnej kolejki. Tak bynajmniej jest w programach graficznych gdzie programujesz o wiele większe obiekty niż to co przedstawiłeś)
Mogę dodać, że w logice CMOS stosuje się szeregowe bufory, bądź kondensatory dla bitów slave.
Re: Realizacja automatu asynchronicznego
Witam.
W automacie Mealy'ego w tym zadaniu są tylko 2 stany kodowane jednym bitem, i problem wyścigów z definicji nie występuje.
W automacie Moore'a musimy zastosować 2 bity, bo są 3 stany. Wygodnie byłoby przyjąć takie kody stanów, aby przy przejściach, jakie występują w warunkach zadania zawsze następowała zmiana tylko na jednym bicie, ale łatwo zauważyć, że tak się tu nie da zrobić. Zawsze będzie takie przejście, gdzie będą się zmieniały 2 bity na raz (oczywiście czysto teoretycznie, gdyby nie było wyścigów).
Tak więc trzeba będzie zadbać o to, by był to wyścig niekrytyczny.
Zadanie ma zapewne różne rozwiązania, nie chce mi się sprawdzać wszystkich możliwych sposobów kodowania. Zrobiłem tylko jedno podejście, przyjmując następujące kody:
stan "01" - q1=0, q1=1 (dalej w skrócie 01)
stan "234" - q1=1. q2=1 (dalej w skrócie 11)
stan "5" - q1=1, q2=0 (dalej w skrócie 10)
Jest to jeden z kodów, w którym funkcje wyjść realizuje się w bardzo prosty sposób: tu z3=q1, z7=q2 d2= NAND(q1, q2).
Przy ograniczeniu się tylko do takich przejść, jak w warunkach zadania, wyścig może powstać przy przechodzeniu ze stanu 10 do 01 występującego, gdy dla stanu 10 pojawi się kombinacja wejść p6=0, p5=0 i p4=0.
W praktyce należy zadbać o to, aby realizując funkcje przejść wybrać takie pokrycie jedynek lub zer w tablicach Karnaugh'a. by w całej kolumnie dla kombinacji wejść 000 zarówno funkcja q1' jak i q2' dawały wynik "monotoniczny" czyli funkcja q1' w całej tej kolumnie była równa 0, a funkcja q2' była równa 1 (czyli aby oba stany przejściowe 00 i 11, jakie mogą pojawić się przy przejściu 10->01 w efekcie przechodziły w stan 01). Jest to warunek, by wyścig był niekrytyczny.
W "moim wykonaniu" funkcje te przybrały postać:
q1' = (q1 Λ p4) V p6 V p5
q2' = ~p6 V p4 (tylda oznacza tu symbol negacji)
Korzystając z praw De Morgana można przekształcić je do postaci:
q1' = NAND(NAND(q1, p4) , ~p6 , ~p5)
q2' = NAND(p6 , ~p4)
Pozdrawiam, i życzę powodzenia.
W automacie Mealy'ego w tym zadaniu są tylko 2 stany kodowane jednym bitem, i problem wyścigów z definicji nie występuje.
W automacie Moore'a musimy zastosować 2 bity, bo są 3 stany. Wygodnie byłoby przyjąć takie kody stanów, aby przy przejściach, jakie występują w warunkach zadania zawsze następowała zmiana tylko na jednym bicie, ale łatwo zauważyć, że tak się tu nie da zrobić. Zawsze będzie takie przejście, gdzie będą się zmieniały 2 bity na raz (oczywiście czysto teoretycznie, gdyby nie było wyścigów).
Tak więc trzeba będzie zadbać o to, by był to wyścig niekrytyczny.
Zadanie ma zapewne różne rozwiązania, nie chce mi się sprawdzać wszystkich możliwych sposobów kodowania. Zrobiłem tylko jedno podejście, przyjmując następujące kody:
stan "01" - q1=0, q1=1 (dalej w skrócie 01)
stan "234" - q1=1. q2=1 (dalej w skrócie 11)
stan "5" - q1=1, q2=0 (dalej w skrócie 10)
Jest to jeden z kodów, w którym funkcje wyjść realizuje się w bardzo prosty sposób: tu z3=q1, z7=q2 d2= NAND(q1, q2).
Przy ograniczeniu się tylko do takich przejść, jak w warunkach zadania, wyścig może powstać przy przechodzeniu ze stanu 10 do 01 występującego, gdy dla stanu 10 pojawi się kombinacja wejść p6=0, p5=0 i p4=0.
W praktyce należy zadbać o to, aby realizując funkcje przejść wybrać takie pokrycie jedynek lub zer w tablicach Karnaugh'a. by w całej kolumnie dla kombinacji wejść 000 zarówno funkcja q1' jak i q2' dawały wynik "monotoniczny" czyli funkcja q1' w całej tej kolumnie była równa 0, a funkcja q2' była równa 1 (czyli aby oba stany przejściowe 00 i 11, jakie mogą pojawić się przy przejściu 10->01 w efekcie przechodziły w stan 01). Jest to warunek, by wyścig był niekrytyczny.
W "moim wykonaniu" funkcje te przybrały postać:
q1' = (q1 Λ p4) V p6 V p5
q2' = ~p6 V p4 (tylda oznacza tu symbol negacji)
Korzystając z praw De Morgana można przekształcić je do postaci:
q1' = NAND(NAND(q1, p4) , ~p6 , ~p5)
q2' = NAND(p6 , ~p4)
Pozdrawiam, i życzę powodzenia.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 40 gości