Obsah

Sekvenční logické obvody

Na rozdíl od kombinačních logických obvodů mají zpětnou vazbu.

Klopné obvody

Mají dva stavy a mezi nimi se přepínají.

Astabilní

Sám se překlápí mezi stavy, generuje periodický obdélníkový signál. Perioda každého stavu je t = ln(2)RC, celková perioda je tedy T = t1 + t2 = ln(2) R2 C1 + ln(2) R3 C2.

Princip: Jeden z tranzistorů má o maličko nižší potřebné napětí na bázi, aby se otevřel. Tzn. na začátku se jeden tranzistor (řekněme Q1) otevře dřív. V tu chvíli se C1 začíná vybíjet a C2 naopak nabíjet. Jakmile se C1 vybije, otočí se na něm polarita a nabíjí se opačným směrem. To způsobí napětí na Q2, který se následně otevře, což zařídí vybíjení C2 a následné uzavření Q1. V tu chvíli se proces se otáčí.

Astabilní klopný obvod

Interaktivní ukázka

Monostabilní

Má jeden stabilní stav, pro přechod do druhého je potřeba jej nakopnout, po čase t = ln(2) R2 C1 se zase vrátí zpět do svého stabilního stavu.

Monostabilní klopný obvod

Interaktivní ukázka

Bistabilní

Má oba stavy stabilní, pro přechod je potřeba do něj kopnout vždy. Lze jej tedy použít jako jednoduchou paměť.

Bistabilní klopný obvod

Interaktivní ukázka

RS

RS Reset/Set

R S Akce Q Qdalší
0 0 Ponechá stav Qminulý Q
0 1 Set 0 1
1 0 Reset 1 0
1 1 Nedefinovaný stav

RS klopný obvod se obvykle staví ze dvou NANDů

Interaktivní ukázka

T

T Toggle, přepínač. Změna se provede pouze pokud přijde signál hodin!

T Q Qdalší Akce
0 0 0 Ponechá stav
0 1 1 Ponechá stav
1 0 1 Přepnutí
1 1 0 Přepnutí

JK

JK Kombinace RS a T. Odstraňuje nedefinovaný stav u RS (J = S, K = R) při kterém funguje jako T.

J K Qdalší Akce
0 0 Qminulý Ponechá stav
0 1 0 Reset
1 0 1 Set
1 1 !Qminulý Přepnutí

Interaktivní ukázka

D

D Data – je-li na D 1, nastaví se při impulzu z hodin na 1, je-li 0, nastaví se na 0. Bez impulzu hodin stav vstup D ignoruje a pamatuje si předchozí stav.

Hodiny D Q
1 0 0
1 1 1
0 Qminulý

Interaktivní ukázka

Čítače

Nejjednodušeji je to řada D klopných obvodů které mají vždy svůj invertovaný výstup připojený na svůj vlastní vstup, a jako vstup hodin používají výstup předchozího klopného obvodu (kromě prvního, ten má normální hodinový vstup). Kromě binárního čítače fungují také jako děličky frekvencí. Ripple counter

Interaktivní ukázka

Registry

Paralelní

Nejjednodušší. Paralelně zapojené D KO se společnými hodinami.

Posuvný

Také z D KO se společnými hodinami, ale zapojených za sebe, výstupy vedou na vstupy (kromě prvního), zde také najdeme výstupní bity.

Při zapojení posledního negovaného výstupu na první vstup dostaneme čítač.

Stavové automaty

Sekvenční automat je šestice: A=(X,Y,Q,q0,P,V) kde:

  1. X je vstupní abeceda (množina hodnot vstupního vektoru)
  2. Y je výstupní abeceda (množina hodnot výstupního vektoru)
  3. Q je vnitřní abeceda (množina hodnot vektoru vnitřního stavu)
  4. q0 je podmnožinou Q, je to počáteční stav, ze kterého se vždy startuje
  5. P je přechodová funkce, která některým dvojicím z <m>X * Q</m> přirazuje prvek z Q a platí <m>q_(i+1) = P(x_i,q_i)</m>, pro i = 0,1,2,…,n
  6. V je výstupní funkce, která některým dvojicím z <m>X * Q</m> přirazuje prvek z Y.

Existují dva způsoby definice výstupní funkce: Mealyho a Moorův.

Mealyho automat

Výstup je funkcí vstupu i stavu.

Moorův automat

Výstup je funkcí pouze stavu.

Reprezentace

Pomocí pravdivostních tabulek nebo grafů přechodů.

Implementace

Pro uložení informace o stavu automatu použijeme klopné obvody. Pro generování výstupů použijeme kombinační logické obvody. Pro detaily syntézy těchto obvodů doporučuju projít si slajdy z INC (inc10_syncho.pdf).

V programovacích jazycích se implementují pomocí cyklu a switche.

Shrnutí (na co nezapomenout)

Co je třeba vědět kdyby se zeptali