Witam ponownie. Cos duzo tych zadan z cyfrowki dostales na Swieta

.
Licznik zliczajacy w naturalnym kodzie dwojkowym modulo 13 (zakladam, ze liczy w gore) robi sie bardzo prosto.
"Modulo N" oznacza ilosc stanow licznika. Ma byc 13? Tzn najprosciej gdy zlicza od zera QDQCQBQA=0000 az do QDQCQBQA=1100 - w sumie jest wiec 13 stanow. Gdy pojawi sie stan nastepny =1101 licznik musi zostac wyzerowany. Zalatwia to 3wejsciowa bramka AND, ktora wejscia ma polaczone z wyjsciami QD,QC,QA. Wyjscie bramki moze asynchronicznie zerowac (wejscia RESET) przerzutnikow D. Jezeli sa to wejscia aktywne w stanie niskim, to bramka bedzie typu NAND.
Nalezy jeszcze sprawdzic, czy dla stanow zabronionych (13- na pewno,14-?,15-na pewno) uklad samoczynnie wejdzie do poprawnego cyklu.
Mozesz cos takiego narysowac? Potem wyslij na forum i obecni zweryfikuja...
Ja chyba ide spac :sleeping:
Dodano po 3 [godziny] 28 [minuty]: Chyba juz spalem jak pisalem poprzedni post. Chciales przeciez licznik synchroniczny….
Notabene nie napisalem tam jak polaczyc wejscia zegarowe... Poniewaz i tak chodzilo Ci o cos innego, to nie bede uzupelnial, bo to trywialne.
Wracajac do tego czego oczekujesz...
W zadaniu masz wykorzystac przerzutniki D, wiec calkowicie pomine JK. I masz miec modulo 13, wiec wszystkio ponizej bedzie dla tej wlasnie wartosci.
Wejscia zegarowe CLK wszystkich przerzutnikow synch. laczy sie ze soba razem. Mozna tez wszystkie wejscia zerujace RESET (o ile istnieja) polaczyc razem, by np. po zalaczeniu zasilania ASYNCHRONICZNE!!! wymusic poprawny stan poczatkowy. ZAWSZE na zakonczenie nalezy sprawdzic, czy zaprojektowany licznik potrafi sam wyjsc ze „nieuzywanych” stanow po skonczonej liczbie impulsow zegarowych (najlepiej po jednym impulsie).
W synchronicznych licznikach wykorzystuje sie wlasciwie przerzutniki typu „T”, a nie „D”. Normalnie nie ma w sprzedazy ukladow T (ja nie slyszalem), bo uzyskuje sie je poprzez polaczenie wejscia D z zanegownym wyjsciem Q (czyli ~Q) tego samego przerzutnika.
Zanim przejdziesz dalej przypomnij sobie wczesniej tablice przejsc przerzutnika T.
Synchroniczny licznik mozna zbudowac na dwa sposoby:
-poprzez zerowanie:
(0->1->2->3->4->5->6->7->8->9->10->11->12 i po tym stanie od poczatku ->0->1 itd)
- poprzez pominiecie stanow posrednich:
(0->1->2->3->4->5->6->7->8->9->10->11->15 i po tym stanie od poczatku ->0->1 itd)
Klasycznie (bez upraszczania, bo nie dla kazdego wejscia T bramka AND jest konieczna) dla pierwszej metody robi sie to tak.
- budujesz 4wejsciowa bramke NAND (4 czyli tyle, ile przerzutnikow)
- wejscia tej bramki NAND laczysz nastepujaco: Q3,Q2, (~Q1),(~Q0) co odpowiada dziesietnie „12”; znak „~” oznacza zanegowane wyjscie Q
- do wejscia „T” kazdego przerzutnika podepinasz bramke AND (2 lub 3 wejsciowa)
- dla przerzutnika zerowego na wejscie bramki podajesz „1” (jedynke logiczna) –
- jedno wejscie bramki AND polacz z wyjsciami POPRZEDNIEGO (Q-1go) przerzutnika; drugie wejscie z wyjsciem (Q-2go przerzutnika)
czyli: AND(wejT3)=Q2Q1(wyjscieNAND),
AND(wejT2)=Q1Q0(wyjscieNAND),
AND(wejT1)=Q0(wyjscieNAND),
AND(wejT0)=”1”(wyjscieNAND);
I to byloby chyba na tyle. Ty musisz sprawdzic, czy dla stanow „nieuzywanych” (tutaj 13,14,15) uklad potrafi wskoczyc w ktorys ze stanow 0,...,12 , bo dalej uklad poradzi sobie sam. No i ewentualnie uproscic uklad. Jak dla mnie – koniec.
Narysuj, moze nawet przesumuluj dzialanie, wysli na post to sprawdze i ewentualnie skoryguje ja lub ktos obecny.