Przebiegi czasowe masz dobrze, ale do projektowania za pomoca grafu bym sie za to nie bral. Lepiej wziasc zwykly przerzutnik D i pokombinowac jak zrobic zeby to dzialalo na zbocze opadajace Co trzeba dodac.
Podpowiedz:
Bedzie to przerzutnik typu master-slave zbudowany z dwoch D i jednego NOT-a.
Przebiegi czasowe masz dobrze, ale do projektowania za pomoca grafu bym sie za to nie bral.
Da się i wiem jak to zrobić; na podstawie grafu tworzy się tablice przejśc i wyjść, którą się skraca przy użyciu tablicy trójkątnej, następnie kodowanie stanów, minimalizacja zakodowanej tablicy za pomocą siatek Karnaugh no i tak powiniem otrzymać funkcje wzbudzeń dla tego przerzutnika. Wszystko to ma być zawarte w sprawozdaniu i ze wszystkim powinienem sobie poradzić, ale nie mogę wystartować, tzn tak ustalić przebiegów czasowych, żeby nie było takich sprzeczności jak wyżej.
dir3ctor wrote:
Lepiej wziasc zwykly przerzutnik D i pokombinowac jak zrobic zeby to dzialalo na zbocze opadajace Co trzeba dodac.
Nie przejdzie... Mam to zrobić za pomocą bramek, nie inaczej.
Zaraz wezme kartke papieru i pokombinuje Moj problem polega na tym ze uczono mnie metod "inzynierskich" czyli niekoniecznie krok-po-kroku, a troche kombinacji i pomyslunku, dlatego takie problemy rozwiazuje w locie, zamiast siatkami, grafami, etc...
Tabliczki Karnaugha i minimalizacja funkcji logicznych słuszna jest dla układów kombinacyjnych. Tu powstaje układ synchroniczny i do dyspozycji mamy grafy.
Cały problem można sprowadzić do dwóch stanów:
1. Wczytanie zboczem opadającym stanu H,
2. Wczytanie zboczem opadającym stanu L.
Nic więcej układ nie musi robić.
Czyli po nastapieniu sekwencji clocka 1->0 wystawiamy na Q wartosc podana na D.
Code:
CD|Q
11|0
01|1
10|1
00|0
Wszystkie inne stany powinny byc stabilne dla pozostalych wektorow. Dobrze mowie? Niech mnie ktos zweryfikuje.
Prawie dobrze. Looknij do pierwszej książki z TTL. Operują definicją tn dla stanu aktualnego i tn+1 dla kolejnego lub wręcz symbolem zbocza opadającego ze strzałką do dołu. Stany będą tylko dwa, gdyż nie mamy wejść asynchronicznych.
Tak jak mowilem, ja bym po inzyniersku zrobil to tak:
2 przerzutniki D1 i D2. Wejscie pierwszego, to wejscie calosci, a jego wyjscie wchodzi na wejscie drugiego. Do pierwszego podajemy normalny sygnal zegarowy, a do drugiego ten sam zegar przez NOTa. Powinno dzialac.
Przerzutnik D to właściwie przerzutnik RS z dodanym układem próbkującym. Zależnie od potrzeb sygnał D może być próbkowany na przednim lub tylnym zboczu sygnału C.
Przykład rozwiązania (nieminimalny ale działający)
Bramki U1A i U1B tworzą przerzutnik RS ustawiany albo z bramek U1C i U2A albo z wejść R i S (po inwerterach U3E i U3F odwracających stany R i S by było jak w przerzutnikach D układu 4013)
Bramki U1C i U2A są bramkami próbkującymi stan wejścia D (i D zanegowane po U3A). W momencie ich otwarcia, stan wejścia D ustawia odpowiednio przerzutnik wyjściowy U1A/U1B
Przerzutnik U2B/U2C oraz inwertery U3B i U3D tworzą generator impulsu próbkującego sterującego bramkami U1C i U1B.
Generacja ta polega na wytworzeniu dwóch przebiegów (w punktach A i B) przesuniętych w czasie o sumę czasów propagacji U3B, U2B i U3D
Gdy C=1 to A=0 a B=1,
Gdy C=1->0 to najpierw A=1 i B=1 -> następuje próbkowanie wejścia D
Po czasie propagacji U3B, U2B i U3D B=0 i kończy się próbkowanie wejścia D.
Gdy C=0 to A=1 i B=0.
Gdy C=0->1 to A=0, B=0 - próbkowanie nie następuje
Po opóźnieniu A=0, B=1 - próbkowanie nie następuje
C_111111111000000000000001111111111 <- zegar C
A_000000000111111111111110000000000 <-sygnał A
B_111111111110000000000000011111111 <-sygnał B
P_000000000110000000000000000000000 <-próbkowanie wejścia D
Układ powyższy do celów poglądowych nie do kopiowania w celach ocenowych
Dodano po 16 [minuty]:
[quote="dir3ctor"]Czyli po nastapieniu sekwencji clocka 1->0 wystawiamy na Q wartosc podana na D.
Code:
CD|Q
11|0
01|1
10|1
00|0
Tu masz błąd myślowy, bo w przerzutniku D wyzwalanym zboczem występuje niejawnie trzeci sygnał czyli zapamiętany stan wejścia C (dla celów wykrycia zbocza) czyli masz
C[t-1], C[t] i D[t]
C[t] jest przepisywane asynchronicznie do C[t-1]
Próbkowanie D[t] następuje gdy C[t-1] i C[t] są różne
Ciekawy układ.
Można problem rozwiązać i tak ale nie sądzę, by wykładowcy właśnie o to chodziło.
Przerzutnik U2B, U2C wraz z inwerterem U3B nie robi nic, poza wprowadzaniem opóźnienia wynikającego z czasów propagacji. W związku z powyższym U2C można usunąć z układu, łącząc U2B w inwerter. W ten sposób uzyskamy znaczną przejrzystość i łatwiejszą analizę.
Zdecydowanie zachęcam Autora wątku do zabrania głosu, gdyż wykładowcy mają dostęp do sieci. Brak inwencji może zostać nieprzychylnie odebrany.
Witam,
oj kombinujących specjalistów przybyło tu wielu,
ale żaden nie pomyślał o wytyczonym tu celu...
a popatrzeć trza jak Flip-Flop D jest wewnątrz połączony,
co przednim zboczem bywa skutecznie wyzwolony,
by potem sięgnąć po znane de Morgana Prawa i odpowiednie
funktory zamienić co będą go wyzwalać zbocza tylne, a nie przednie...
Chyba nikt nie zrozumiał założyciela tematu. Musi On przejść przez wszystkie etapy syntezy układu. No, chyba, że doradzacie mu "inżynierię wsteczną". Ja proponuję do listy "sygnałów" dodać stan poprzedni zegara. Wtedy można uwzględnić, że przy poziomie 0 lub 1 przerzutnik nie przepisze D na wyjście Q a zrobi to przy zboczu opadającym. A poprzedni stan zegara można uzyskać przez jego negację. Przy optymalizacji wszystko powinno się uprościć. Sporo roboty. Powodzenia i pozdrawiam.
Chyba nikt nie zrozumiał założyciela tematu. Musi On przejść przez wszystkie etapy syntezy układu.
No, dokładnie. Niżej jest oryginalna treść zadania, jak ktoś jeszcze nie rozumie. Jak widać nie mogę tego obejść w żaden sposób, tylko mam wszystko zaprojektować od podstaw.
A rymowana podpowiedź naprawdę zabawna ale nie do końca przydatna...
Na zajęciach było powiedziane, że zaczynamy od narysowania wykresu czasowego, uwzględniającego wszystkie kominacje D, Q i C. Powinno to dać 2³ stanów. Następnie na podstawie przebiegów rysujemy graf, tak by z każdego statnu były przynajmniej dwa wyjścia i tak przykładowo: ze stanu 1 do stanu następuje wyjście na 10, ze stanu 1 do stanu 4 na 11, wejście do stanu 1 jest na 00, a dla 01 jest stan nieokreślony.
Chyba nikt nie zrozumiał założyciela tematu. Musi On przejść przez wszystkie etapy syntezy układu.
No, dokładnie. Niżej jest oryginalna treść zadania, jak ktoś jeszcze nie rozumie. Jak widać nie mogę tego obejść w żaden sposób, tylko mam wszystko zaprojektować od podstaw.
Kolega raczej nie czytał zbyt dokładnie całego wątku.
Tu znajdują się dane CD4013:
www.fairchildsemi.com/ds/CD/CD4013BC.pdf Na pierwszej stronie jest tabliczka prawdy. Proszę usunąć kolumnę S i R (projekt nie zawiera wejść asynchronicznych) oraz wiersze zawierające stany nieznaczące. Ile zostało możliwości?
Klasyczny przerzutnik D, reagujący na zbocze narastające C (CLK), zbudowany jest na bramkach NAND. W celu zmiany zbocza należy układ zaprojektować na innych funktorach, co z resztą podpowiedział kolega Quarz. Ze swojej strony nic więcej dodać nie mogę, bo będzie to nieetyczne a zainteresowany Kolega dostanie lufę za zadanie domowe.
Wykres czasowy nie uwzględnia wewnętrznego zapamiętywania stanu wejścia C w przerzutniku D. To zapamiętanie jest konieczne do wykrycia odpowiedniego zbocza taktującego zatrzaskiwanie danych z wejścia D.
Ponieważ w zadaniu podano, że można użyć przerzutnika, to proponuję na wyjściu użyć przerzutnika RS, i rozpisać sygnały wzbudzające dla niego jako funkcję sygnałów C[t-1], C[t] i D[t]. Sygnał C[t-1] wytwarzasz przez opóźnienie sygnału C[t] wykorzystując fakt istnienia czasu propagacji w elementach.