HTML · Slides · PDF | Přehled předmětu
Cíle přednášky
-
Seznámit se s principy sekvenční (stavové) logiky.
-
Poznat základní logické obvody sekvenční logiky a umět je ve schématu kombinovat do složitějších obvodů
-
Základní sekvenční obvody: klopné obvody, registry, posuvné registry, čítače.
-
Témata: R-S západka (Reset-Set, R-S latch), Klopný obvod D (Data), Klopný obvod J-K, Paralelní registry, Posuvné (sériové) registry, Západky (latches), Čítače, Časové průběhy
Sekvenční logické obvody si vždy něco pamatují (obsah paměti, stav klopného obvodu, registru, hodnotu čítače), mají svůj vnitřní stav — stav na výstupech pak odpovídá jak momentálnímu stavu na vstupech, ale i vnitřnímu stavu.
Co je sekvenční logika?
-
také logika s vnitřním stavem zahrnuje obvody, jejich výstupní stav (stav na výstupech) nemusí záviset pouze na momentálním stavu na vstupech, ale také na vnitřním stavu obvodu.
-
například klopný obvod typu D (Data flip-flop, D-flip-flop) se vstupem dat D, hodinovým vstupem CLK a výstupem Q:
-
jeho stav se změní ve chvíli aktivace hodinovým pulzem
CLK, jinak zůstává.
| Sekvenční logické obvody tedy mají vnitřní stav, paměť. |
Typy základních sekvenčních obvodů
| Západka (latch) |
1bitový paměťový prvek, obvykle asynchronní nebo úrovňově řízený; typický příklad je R-S západka. |
| Klopný obvod (flip-flop) |
1bitový paměťový prvek, obvykle synchronní a mění stav při určené hraně hodinového signálu. |
| Registr |
(register) vícebitová paměť (např. 8-bitová), obvykle složená z více západek nebo klopných obvodů; uchovává jeden vícebitový údaj. |
| Posuvný registr |
(shift-register) speciální registr, který umí bity při hodinových pulsech posouvat. |
| Čítač |
(counter) sekvenční obvod, který uchovává číslo a při hodinových impulsech jej zvyšuje nebosnižuje. |
Rozdíl latch vs. flip-flop je hlavně v řízení změny stavu: latch reaguje po dobu aktivní úrovně řídicího signálu, zatímco flip-flop typicky jen v okamžiku náběžné nebo sestupné hrany hodin.
|
Klopné obvody
-
Klopné obvody si pamatují stav a obvykle mění výstup v návaznosti na hodinový signál.
-
Do širší rodiny 1bitových paměťových prvků patří i západky (latches), které jsou asynchronní nebo úrovňově řízené.
R-S západka (Reset-Set, R-S latch)
-
R-S je základní sekvenční logický obvod, který slouží jako jednobitová paměť.
-
Má jeden vstup pro nulování (
R), jeden pro nastavení do 1 (S). -
Přesněji jde o R-S západku (R-S latch), ne o hranově řízený klopný obvod.
-
Je asynchronní; na rozdíl od dalšího klopného obvodu D nemá hodinový vstup a jeho výstup se mění okamžitě, když se změní vstup
RčiSdo aktivní úrovně. -
Kromě výstupu obvykle značeného
Qmohou mít invertovaný výstupQnesoucí opačnou hodnotu než Q.
Schematická značka R-S
Animace R-S západky
Klopný obvod D (Data)
-
Je synchronní; mění se při příchodu hodinového pulsu = při změně signálu CLK.
-
Zápis může být iniciován náběžnou ↑ (0 → 1) nebo sestupnou ↓ (1 → 0) hranou CLK.
-
Hodnota přítomná na vstupu D ve chvíli aktivace zápisu se vepíše do registru a na výstup Q.
-
Fakticky jde o jednobitový registr, pamatuje si 1 bit.
Schematická značka D klopného obvodu
Animace klopného obvodu D
-
Klopný obvod D - aktivovaný sestupnou hranou CLK
-
Klopný obvod D - aktivovaný vzestupnou hranou CLK
-
Konkrétní součástka (Texas Instruments) Quadruple R-S Latch: SN74279
Klopný obvod D se vstupy R-S
-
Běžně se používají obvody, které mají jak vstup
Dřízený hodinami (synchronně), takRaSchovající se asynchronně (reset či nastavení se provede hned). -
Typický příklad: obvod 7474 z řady TTL logiky je dvojitý klopný obvod D se vstupy R a S.
Pravdivostní tabulka pro D klopný obvod s asynchronním S a R
| CLK (↑) | R | S | D | Q (nový) | Q (nový) | Co se stalo |
|---|---|---|---|---|---|---|
X |
0 |
X |
X |
0 |
1 |
Proběhl Reset |
X |
X |
0 |
X |
1 |
0 |
Proběhl Set |
↑ |
1 |
1 |
0 |
0 |
1 |
Zapsána 0 s náběžnou hranou hodin |
↑ |
1 |
1 |
1 |
1 |
0 |
Zapsána 1 s náběžnou hranou hodin |
| Pokud jsou S = 0 a R = 0 zároveň, stav je nedefinovaný. (Nelze současně resetovat a nastavovat.) |
Klopný obvod J-K
-
Poměrně univerzální klopný obvod, jenž může funkčně nahradit R-S západku i D klopný obvod.
Schematická značka J-K
| J | K | Chování výstupu Q při náběžné hraně hodin |
|---|---|---|
1 |
0 |
Výstup Q přejde do logické 1 (nastavení). |
0 |
1 |
Výstup Q přejde do logické 0 (vynulování). |
1 |
1 |
Výstup Q se překlopení do opačného stavu než byl. |
0 |
0 |
Výstup Q zůstane nezměněn. |
Animace klopného obvodu J-K
-
Konkrétní součástka: 74LS73
Použití klopných obvodů
- Paměť
-
zapamatování 1bitového stavu: třeba světlo zapnuto/vypnuto
- Dělič
-
zavedeme-li Q zpět na vstup, vytvoříme dělič hodinové frekvence
-
každý hodinový puls obrátí hodnotu na výstupu, protože se za vstupu načte předchozí Q,
-
na výstupech Q1… dostáváme tak postupně pulzy s frekvencí f/2, f/4, f/8 …
-
Registry
Registry mají určitý počet bitů, které se pamatují — taková elementární paměť na jeden údaj.
Paralelní registry
-
Klopný obvod RS se dal označit za 1bitový registr, pamatuje si 1 bit, viz Klopné obvody
-
1 bit je ale málo, většinou potřebujeme registr na 4, 8, 32 … bitů — tedy paralelní registr.
-
Registry často mívají třístavové výstupy (tri-state output).
Schematická značka paralelního registru
Značení obvodů
-
SN74LS273 je konkrétní 8bitový registr
- SN
-
je kód, který používá výrobce (Texas Instruments), jinak nic neznamená.
- 74
-
označuje klasickou řadu logických obvodů pro běžné průmyslové použití.
- LS
-
označuje technologii: Low-power Schottky
- 273
-
uvádí, že jde o 8bitový registr
| 54 misto 74 označuje řadu funkčně stejných logických obvodů, ale pro vojenské použití (vyšší odolnost). |
Diagram vstupů a výstupů
-
Dle standardu ANSI/IEEE 91-1984 se vstupy a výstupy obvodů znázorňují diagramem, jako je tento.
-
Je zde vidět, co je vstup (signály xD vlevo), co výstup (signály xQ vpravo)
-
V jaké úrovni jsou signály aktivní poznáme podle případného nadtržení označení signálu:
-
zde vstup CLR (reset) je aktivní v úrovni L (active-low).
Pouzdro
-
Představuje nákres skutečného tvaru pouzdra — zde provedení DIL 20 (Dual-in-line se 20 vývody).
-
Umístění jednotlivých signálů (vstup/výstup, napájení) na vývody odpovídá reálnému výrobku.
SN74273: funkční (pravdivostní) tabulka
Příklad: registr se třístavovými výstupy
-
HIGHSPEED CMOS LOGIC OCTAL D-TYPE FLIP-FLOP 3STATE, POSITIVE-EDGE TRIGGERED
- HIGHSPEED CMOS LOGIC
-
vysokorychlostní CMOS (HCT)
- OCTAL FLIP-FLOP
-
8-bitový registr
- 3STATE
-
se třístavovými výstupy,
- POSITIVE-EDGE TRIGGERED
-
zapisovaný náběžnou hranou hodin
Oproti předchozímu registru vstup OE
-
oproti předchozímu registru další vstup OE (Output Enabled), je active-low
- OE = 0
-
pak jsou výstupy Qi aktivní a je na nich
0nebo1 - OE = 1
-
pak jsou výstupy Qi neaktivní, ve stavu
Z(vysoká impedance), tedy odpojené
Posuvné (sériové) registry
-
Dva typy posuvných registrů:
- serial-in → parallel-out
-
krmí se postupně bity a najednou lze přečíst obsah
- parallel-in → serial-out
-
nakrmí se najednou a postupně umí bity vydávat ven
Schematická značka SIPO registru
Sériový (posuvný) registr 74LS164
-
Datasheet konkrétního provedení od National Semiconductor 74LS164: 8-Bit Serial In-Parallel Out Shift Registers
-
osm klopných obvodů D tvoří řetězec.
-
Každý hodinový impuls posune bity směrem k vyšším výstupům.
-
Nový bit je přiveden na A/B (logické AND dvou vstupů).
-
Asynchronní nCLR (aktivní LOW) vynuluje celý registr.
Vstupy a výstupy 74LS164
A, B-
sériové datové vstupy (AND)
CLK-
hodinový vstup (aktivní náběžná hrana)
nCLR-
reset (aktivní LOW)
Q0 … Q7-
paralelní data
Časování a funkce 74LS164
-
Hodnota z
A/Bse načte doQ0. -
Každé
Qnse přesune doQn+1. -
nCLR= 0 → všechnaQ= 0 (asynchronně).
-
fmax ≈ 25 MHz
-
tpd(CLK→Q) ≈ 20 ns (zpozdění mezi hodinovým pulsem a promítnutím na výstup)
-
Napájení 5 V TTL
Paralelní registr 74LS165
-
Konkrétní součástka SN74165: PARALLEL-LOAD 8-BIT SHIFT REGISTERS
-
8-bitový registr opačné funkce než 74LS164
-
Umožňuje paralelní načtení 8 bitů a jejich sériový výstup.
-
nPL(Parallel Load) = 0 → vstupyD0–D7se načtou. -
CLK↑→ bity se posouvají doprava,Q7→ seriový výstup (Qh). -
SH/nLDaCLK INHumožňují řídit, kdy se data posouvají.
| Vstupy |
|
| Výstupy |
|
Schematická značka PISO registru
Západky (latches)
-
Západka (latch) nebo alternativně závora je 1bitový paměťový prvek, který není hranově synchronní jako typický klopný obvod.
-
Základním příkladem je R-S západka probíraná v předchozí části.
-
Jako samostatné obvody se dělají většinou 8bitové registry obsahující tedy 8 západek.
-
Mohou ale nemusí mít třístavové výstupy.
-
Častěji ano kvůli připojení výstupů více obvodů na společnou sběrnici.
Rozdíl klopný obvod D vs západka
Klopný obvod D (D-Flip-flop) a západka jsou dosti podobné prvky (1-bitové registry) s jedinou principiální odlišností:
-
zapamatuje si hodnotu přítomnou na vstupu
Dv okamžiku aktivace -
aktivace třeba náběžnou hranou hodin (CLK transition from LOW to HIGH)
-
po dobu aktivačního signálu (
LE= Latch Enabled) je "průchozí" a hodnota ze vstupuDse hned promítá na výstup. -
Jakmile aktivační signál pomine, zůstává v západce poslední hodnota.
| Lze tedy říci, že klopný obvod D je prvek synchronní (změna stavu v okamžiku časového pulzu), zatímco západka je asynchronní nebo úrovňově řízená (změna stavu může proběhnout kdykoli po dobu aktivity povolovacího signálu). |
Příklady
-
Registr ze západek: MM74HCT573
-
onsemi MM74HCT573
-
Registr z klopných obvodů: MM74HCT574
-
onsemi MM74HCT574
Čítače
Čítače jsou další ze skupiny základních sekvenčních obvodů.
-
V danou chvíli v sobě drží hodnotu (číslo) v mezích rozsahu čítače, která je dostupná na výstupech, značených například
QAažQD. -
Nejjednodušší mívají rozsah 4 bity, tzn.
0..24-1 = 0..15. -
Umožňují čítání nahoru (přičítání jedničky, inkrementaci, count up), někdy i dolů (odečítání jedničky count down).
Schematická značka čítače
Synchronní čítače
-
Čítání se obvykle děje s příchodem hodinového impulsu, tj. s jeho náběžnou nebo sestupnou hranou dle dokumentace.
-
Některé umí asynchronní (nezávislý) reset (vstupy jako
RST,CLR): okamžité vynulování. -
Do některých se dá asynchronně zapsat hodnota zadaná na vstupech (
LOAD,LD). -
Takové čítače mohou sloužit i jako registry.
Příklad: Čítač SN74LS191
| signál | význam |
|---|---|
D/U |
směr čítání 1 dolů, 0 nahoru |
LOAD |
načtení hodnoty z datových vstupů |
CTEN |
count enabled, povolení čítání |
A–D |
výstupy: A nejnižší bit, D nejvyšší |
MAX/MIN |
dosaženo maximum/minimum |
CLOCK |
hodinový vstup |
RCO |
ripple carry out |
Výstup MAX/MIN je aktivní tehdy, je-li dosažena maximální hodnota
15 (11112 při čítání nahoru D/U = 0) nebo
0 (00002 při čítání dolů D/U = 1).
|
Časové průběhy
Diagramy časových průběhů popisují chování obvodu v modelových situacích:
-
první událostí je aktivace
LOAD = 0, což způsobí zápis hodnoty 13 (11012) ze vstupůA..D -
mezitím jsou aktivní
CTEN = 0(povolení čítání) aD/U = 0, což značí čítání nahoru (Up) -
s příchodem náběžné hrany
CLOCKse výstup zvýší na 14,
-
a s dalším
CLOCKpulzem na15(11112), čímž se aktivujeMAX = 1 -
s bezprostředně následující sestupnou hranou
CLOCKse aktivuje ripple carry outRCO = 0, což značí, -
že s další náběžnou hranou
CLOCKčítač přeteče a vynuluje se. SignálRCOlze využít při kaskádovém propojení dvou či více čítačů; pak lze se dvěma počítat namísto0..15až0..255tedy na 2 * 4 = 8 bitech.
SN74LS191 v pouzdře SOIC
Na další kapitolu: Procesory
HTML · Slides · PDF | Přehled předmětu