Registr ze západek: MM74HCT573
onsemi MM74HCT573
HTML · Slides · PDF | Přehled předmětu
Petr Jedlička, Cyril Klimeš, Tomáš Pitner tomas.pitner@mendelu.cz
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: [rs_ff], [d_ff], [jk_ff], [parallel_reg], [serial_reg], [latches], [counters], [timing]
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.
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ěť. |
| 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 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 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 či S do aktivní úrovně.
Kromě výstupu obvykle značeného Q mohou mít invertovaný výstup Q nesoucí opačnou hodnotu než Q.
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.
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
Běžně se používají obvody, které mají jak vstup D řízený hodinami (synchronně), tak R a S chovají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.
| 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.) |
Poměrně univerzální klopný obvod, jenž může funkčně nahradit R-S západku i D klopný obvod.
| 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. |
Konkrétní součástka: 74LS73
zapamatování 1bitového stavu: třeba světlo zapnuto/vypnuto
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 mají určitý počet bitů, které se pamatují — taková elementární paměť na jeden údaj.
Klopný obvod RS se dal označit za 1bitový registr, pamatuje si 1 bit, viz [key_ff]
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).
SN74LS273 je konkrétní 8bitový registr
je kód, který používá výrobce (Texas Instruments), jinak nic neznamená.
označuje klasickou řadu logických obvodů pro běžné průmyslové použití.
označuje technologii: Low-power Schottky
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). |
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).
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.
HIGHSPEED CMOS LOGIC OCTAL D-TYPE FLIP-FLOP 3STATE, POSITIVE-EDGE TRIGGERED
vysokorychlostní CMOS (HCT)
8-bitový registr
se třístavovými výstupy,
zapisovaný náběžnou hranou hodin
OEoproti předchozímu registru další vstup OE (Output Enabled), je active-low
pak jsou výstupy Qi aktivní a je na nich 0 nebo 1
pak jsou výstupy Qi neaktivní, ve stavu Z (vysoká impedance), tedy odpojené
Dva typy posuvných registrů:
krmí se postupně bity a najednou lze přečíst obsah
nakrmí se najednou a postupně umí bity vydávat ven
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.
A, Bsériové datové vstupy (AND)
CLKhodinový vstup (aktivní náběžná hrana)
nCLRreset (aktivní LOW)
Q0 … Q7paralelní data
Hodnota z A/B se načte do Q0.
Každé Qn se přesune do Qn+1.
nCLR = 0 → všechna Q = 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
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 → vstupy D0 – D7 se načtou.
CLK↑ → bity se posouvají doprava, Q7 → seriový výstup (Qh).
SH/nLD a CLK INH umožňují řídit, kdy se data posouvají.
| Vstupy |
|
| Výstupy |
|
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.
Příklad: MM74HCT573
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 D v 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 vstupu D se 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). |
Čí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 QA až 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).
Čí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.
| 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). |
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í)
a D/U = 0, což značí čítání nahoru (Up)
s příchodem náběžné hrany CLOCK se výstup zvýší na 14,
a s dalším CLOCK pulzem na 15 (11112), čímž se aktivuje MAX = 1
s bezprostředně následující sestupnou hranou CLOCK se aktivuje ripple carry out
RCO = 0, což značí,
že s další náběžnou hranou CLOCK čítač přeteče a vynuluje se.
Signál RCO lze využít při kaskádovém propojení dvou či více čítačů;
pak lze se dvěma počítat namísto 0..15 až 0..255 tedy na 2 * 4 = 8 bitech.
HTML · Slides · PDF | Přehled předmětu