V předchozím kurzu jsme se zabývali digitálním hradlem NOT, kterému se běžně říká invertor, a viděli jsme, že výstupní stav hradla NOT je komplementem, opakem nebo inverzí jeho vstupního signálu.
Tak například, když je jediný vstup hradla NOT „HIGH“, jeho výstupní stav bude NE „HIGH“. Když je jeho vstupní signál „NÍZKÝ“, jeho výstupní stav NEBUDE „NÍZKÝ“, jinými slovy „invertuje“ svůj vstupní signál, odtud název „invertor“.
Někdy však v digitálních elektronických obvodech potřebujeme logická hradla od sebe izolovat nebo je nechat řídit či spínat vyšší než běžné zátěže, jako jsou relé, elektromagnety a lampy, aniž bychom potřebovali inverzi. Jeden typ jednovstupového logického hradla, který nám právě toto umožňuje, se nazývá digitální buffer.
Na rozdíl od jednovstupového, jednovýstupového invertoru nebo NOT hradla, jako je TTL 7404, které na výstupu invertuje nebo doplňuje svůj vstupní signál, „buffer“ neprovádí žádnou inverzi ani rozhodovací schopnost (jako logická hradla se dvěma nebo více vstupy), ale místo toho vytváří výstup, který přesně odpovídá výstupu jeho vstupu. Jinými slovy, digitální buffer nedělá nic, protože jeho výstupní stav se rovná jeho vstupnímu stavu.
Tedy digitální buffery můžeme považovat za idempotentní hradla aplikující Booleův idempotentní zákon, protože když vstup prochází tímto zařízením, jeho hodnota se nemění. Digitální buffer je tedy „neinvertující“ zařízení, a proto nám poskytne Booleův výraz: Q = A.
Then we can define the logical operation of a single input digital buffer as being:
„Q is true, only when A is true“
In other words, the output ( Q ) state of a buffer is only true (logic „1“) when its input A is true, otherwise its output is false (logic „0“).
- The Single Input Digital Buffer
- Dvojitá inverze pomocí hradel NOT
- Příklad fan-out digitálního bufferu
- „Trojstavový buffer“
- Ekvivalent třístavového vyrovnávacího paměťového spínače
- Active „HIGH“ Tri-state Buffer
- Active „HIGH“ Inverting Tri-state Buffer
- Active „LOW“ Tri-state Buffer
- Active „LOW“ Inverting Tri-state Buffer
- Třístavové řízení bufferu
- Řízení datové sběrnice třístavového bufferu
- Řízení třístavových vyrovnávacích pamětí
The Single Input Digital Buffer
Symbol | Truth Table | |
The Digital Buffer
|
A | Q |
0 | 0 | |
1 | 1 | |
Boolean Expression Q = A | Read as: A gives Q |
The Digital Buffer can also be made by connecting together two NOT gates as shown below. První z nich „invertuje“ vstupní signál A a druhé jej „převrátí“ zpět na původní úroveň, čímž provede dvojitou inverzi vstupu.
Dvojitá inverze pomocí hradel NOT
Možná si říkáte, no, k čemu je digitální vyrovnávací paměť, když nijak neinvertuje ani nemění svůj vstupní signál, ani neprovádí žádná logická rozhodnutí nebo operace, jako to dělají hradla AND nebo OR, tak proč místo toho nepoužít kus drátu, a to je dobrá připomínka. Neinvertující digitální buffer má však v digitální elektronice mnoho využití, přičemž jednou z jeho hlavních výhod je, že poskytuje digitální zesílení.
Digitální buffer lze použít k vzájemné izolaci jiných hradel nebo obvodových stupňů, čímž se zabrání tomu, aby impedance jednoho obvodu ovlivnila impedanci druhého. Digitální vyrovnávací paměť lze také použít k řízení vysokoproudých zátěží, jako jsou tranzistorové spínače, protože jejich výstupní řídicí schopnost je obecně mnohem vyšší než jejich požadavky na vstupní signál. Jinými slovy, vyrovnávací paměti lze použít k výkonovému zesílení digitálního signálu, protože mají tzv. vysokou „fan-out“ schopnost.
Příklad fan-out digitálního bufferu
Parametr fan-out bufferu (nebo jakéhokoli digitálního integrovaného obvodu) je výstupní řídicí schopnost nebo schopnost výstupního proudu logického hradla poskytující větší výkonové zesílení vstupního signálu. Může být nutné připojit více než jen jedno logické hradlo k výstupu jiného nebo spínat vysokoproudovou zátěž, například LED diodu, pak nám to umožní právě buffer.
Všeobecně je výstup logického hradla obvykle připojen ke vstupům jiných hradel. Každý vstup vyžaduje ke změně stavu určité množství proudu z výstupu hradla, takže každé další připojení hradla zvyšuje jeho zatížení. Ventilátor je tedy počet paralelních zátěží, které mohou být současně řízeny jedním digitálním bufferem logického hradla. Vyrovnávací paměť, která funguje jako zdroj proudu, může mít vysoký fan-out až 20 hradel stejné logické rodiny.
Pokud má digitální vyrovnávací paměť vysoký fan-out (zdroj proudu), musí mít také vysoký „fan-in“ (proudový sink). Šířkové zpoždění hradla se však v závislosti na fan-in rychle zhoršuje, takže je třeba se vyhnout hradlům s fan-in větším než 4.
Pak je zde omezení počtu vstupů a výstupů, než které lze spojit dohromady, a v aplikacích, kde potřebujeme hradla od sebe oddělit, můžeme použít třístavový buffer nebo třístavový výstupní ovladač.
„Trojstavový buffer“
Stejně jako standardní digitální buffer, který jsme viděli výše, existuje i další typ digitálního vyrovnávacího obvodu, jehož výstup lze v případě potřeby „elektronicky“ odpojit od jeho výstupních obvodů. Tento typ vyrovnávací paměti je znám jako třístavová vyrovnávací paměť nebo častěji třístavová vyrovnávací paměť.
Třístavovou vyrovnávací paměť si lze představit jako vstupem řízený spínač s výstupem, který lze elektronicky zapnout nebo vypnout pomocí externího vstupu signálu „Control“ nebo „Enable“ ( EN ). Tento řídicí signál může být buď logická „0“, nebo logický signál typu „1“, což vede k tomu, že třístavový buffer je v jednom stavu, který umožňuje, aby jeho výstup pracoval normálně a produkoval požadovaný výstup, nebo v jiném stavu, kdy je jeho výstup blokován nebo odpojen.
Tedy třístavový buffer vyžaduje dva vstupy. Jeden je datový vstup a druhý je povolovací nebo řídicí vstup, jak je znázorněno na obrázku.
Při aktivaci do třetího stavu vyřadí nebo „vypne“ svůj výstup a vytvoří stav otevřeného obvodu, který není ani na logickém „HIGH“, ani na „LOW“, ale místo toho poskytuje výstupní stav velmi vysoké impedance, High-Z nebo častěji Hi-Z. Pak má tento typ zařízení dva logické vstupy, „0“ nebo „1“, ale může vytvářet tři různé výstupní stavy, „0“, „1“ nebo „Hi-Z“, proto se nazývá „třístavové“ nebo „třístavové“ zařízení.
Všimněte si, že tento třetí stav NENÍ roven logické úrovni „0“ nebo „1“, ale je to stav vysoké impedance, ve kterém je výstup bufferu elektricky odpojen od zbytku obvodu. As a result, no current is drawn from the supply.
There are four different types of Tri-state Buffer, one set whose output is enabled or disabled by an „Active-HIGH“ control signal producing an inverted or non-inverted output, and another set whose buffer output is controlled by an „Active-LOW“ control signal producing an inverted or non-inverted output as shown below.
Active „HIGH“ Tri-state Buffer
Symbol | Truth Table | ||
Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | Hi-Z | |
0 | 1 | Hi-Z | |
1 | 0 | 0 | |
1 | 1 | 1 | |
Read as Output = Input if Enable is equal to „1“ |
An Active-high Tri-state Buffer such as the 74LS241 octal buffer, is activated when a logic level „1“ is applied to its „enable“ control line and the data passes through from its input to its output. When the enable control line is at logic level „0“, the buffer output is disabled and a high impedance condition, Hi-Z is present on the output.
An active-high tri-state buffer can also have an inverting output as well as its high impedance state creating an active-high tri-state inverting buffer as shown.
Active „HIGH“ Inverting Tri-state Buffer
Symbol | Truth Table | ||
Inverting Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | Hi-Z | |
0 | 1 | Hi-Z | |
1 | 0 | 1 | |
1 | 1 | 0 | |
Read as Output = Inverted Input if Enable equals „1“ |
The output of an active-high inverting tri-state buffer, such as the 74LS240 octal buffer, is activated when a logic level „1“ is applied to its „enable“ control line. The data at the input is passes through to the output but is inverted producing a complement of the input. When the enable line is LOW at logic level „0“, the buffer output is disabled and at a high impedance condition, Hi-Z.
The same two tri-state buffers can also be implemented with an active-low enable input as shown.
Active „LOW“ Tri-state Buffer
Symbol | Truth Table | ||
Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | 0 | |
0 | 1 | 1 | |
1 | 0 | Hi-Z | |
1 | 1 | Hi-Z | |
Read as Output = Input if Enable is NOT equal to „1“ |
An Active-low Tri-state Buffer is the opposite to the above, and is activated when a logic level „0“ is applied to its „enable“ control line. The data passes through from its input to its output. When the enable control line is at logic level „1“, the buffer output is disabled and a high impedance condition, Hi-Z is present on the output.
Active „LOW“ Inverting Tri-state Buffer
Symbol | Truth Table | ||
Inverting Tri-state Buffer
|
Enable | IN | OUT |
0 | 0 | 1 | |
0 | 1 | 0 | |
1 | 0 | Hi-Z | |
1 | 1 | Hi-Z | |
Read as Output = Inverted Input if Enable is NOT equal to „1“ |
An Active-low Inverting Tri-state Buffer je opakem výše uvedeného, protože jeho výstup je povolen nebo zakázán, když je na jeho řídicí linku „enable“ přivedena logická úroveň „0“. Když je vyrovnávací paměť povolena logickou „0“, výstup je komplementem jejího vstupu. Když je na řídicí linku „enable“ přivedena logická úroveň „1“, výstup bufferu je zakázán a na výstupu je stav vysoké impedance, Hi-Z.
Třístavové řízení bufferu
Výše jsme viděli, že buffer může zajišťovat napěťové nebo proudové zesílení v digitálním obvodu a lze jej také použít k inverzi vstupního signálu. Viděli jsme také, že digitální vyrovnávací paměti jsou k dispozici v třístavové formě, která umožňuje efektivně vypnout výstup a vytvořit tak stav s vysokou impedancí (Hi-Z), který je ekvivalentní rozpojenému obvodu.
Třístavová vyrovnávací paměť se používá v mnoha elektronických a mikroprocesorových obvodech, protože umožňuje připojení více logických zařízení ke stejnému vodiči nebo sběrnici bez poškození nebo ztráty dat. Předpokládejme například, že máme datovou linku nebo datovou sběrnici, ke které je připojena nějaká paměť, periferní zařízení, I/O nebo procesor. Každé z těchto zařízení je schopno na tuto jedinou datovou sběrnici současně odesílat nebo přijímat data, čímž vzniká tzv. kontaminace.
Kontaminace nastává, když je k sobě připojeno více zařízení, protože některá chtějí řídit svůj výstup vysoko a některá nízko. Pokud tato zařízení začnou odesílat nebo přijímat data současně, může dojít ke zkratu, kdy jedno zařízení vyvede na sběrnici logickou „1“, tedy napájecí napětí, zatímco jiné je nastaveno na logickou úroveň „0“ nebo na zem, což má za následek zkratový stav a případně poškození zařízení i ztrátu dat.
Digitální informace jsou po těchto datových sběrnicích nebo datových dálnicích přenášeny buď sériově, po jednom bitu, nebo může být až osm (nebo více) vodičů dohromady v paralelní formě, jako je tomu v datové sběrnici mikroprocesoru, což umožňuje připojení více třístavových vyrovnávacích pamětí ke stejné datové dálnici bez poškození nebo ztráty dat, jak je znázorněno na obrázku.
Řízení datové sběrnice třístavového bufferu
Třístavový buffer lze použít k oddělení zařízení a obvodů od datové sběrnice a od sebe navzájem. Pokud jsou výstupy několika třístavových vyrovnávacích pamětí elektricky propojeny dohromady, používají se dekodéry, které umožňují, aby byla v daném okamžiku aktivní pouze jedna sada třístavových vyrovnávacích pamětí, zatímco ostatní zařízení jsou ve stavu vysoké impedance. Příklad třístavových bufferů připojených ke čtyřvodičové datové sběrnici je uveden níže.
Tento základní příklad ukazuje, jak lze binární dekodér použít k řízení několika třístavových vyrovnávacích pamětí buď jednotlivě, nebo společně v datových sadách. Dekodér vybere příslušný výstup, který odpovídá jeho binárnímu vstupu, čímž umožní, aby na sběrnici prošla pouze jedna sada dat ve výstupním stavu buď logická „1“, nebo logická „0“. V tomto okamžiku jsou všechny ostatní třístavové výstupy připojené ke stejným sběrnicovým linkám deaktivovány tím, že jsou uvedeny do stavu Hi-Z s vysokou impedancí.
Poté mohou být data z datové sady „A“ přenesena na společnou sběrnici pouze tehdy, když je na třístavové vyrovnávací paměti přiveden aktivní signál HIGH prostřednictvím linky Enable, ENA. Ve všech ostatních případech představují vysokoimpedanční stav, který je efektivně izolován od datové sběrnice.
Podobně datová sada „B“ předává data na sběrnici pouze tehdy, když je prostřednictvím ENB přiveden povolovací signál. Dobrým příkladem třístavových bufferů zapojených společně pro řízení datových sad je TTL 74244 Octal Buffer.
Je také možné zapojit třístavové buffery „back-to-back“ a vytvořit tak tzv. obousměrný bufferový obvod s jedním paralelně zapojeným „active-high bufferem“, ale opačně s jedním „active-low bufferem“.
Tady se řídicí vstup „enable“ chová spíše jako směrový řídicí signál, který způsobuje, že se data čtou „z“ i přenášejí „do“ stejného vodiče datové sběrnice. V tomto typu aplikace lze použít třístavový buffer s obousměrnou spínací schopností, jako je TTL 74245.
Viděli jsme, že třístavový buffer je neinvertující zařízení, které dává výstup (který je stejný jako jeho vstup) pouze tehdy, když je vstup na pin Enable, ( EN ) HIGH, jinak přejde výstup bufferu do stavu vysoké impedance, ( Hi-Z ). Trojstavové výstupy se používají v mnoha integrovaných obvodech a digitálních systémech, a to nejen v digitálních trojstavových bufferech.
Jak digitální buffery, tak i trojstavové buffery lze použít k zajištění napěťového nebo proudového zesílení, které řídí mnohem větší zátěže, jako jsou relé, lampy nebo výkonové tranzistory, než u běžných logických hradel. Buffer lze ale také použít k zajištění elektrické izolace mezi dvěma nebo více obvody.
Viděli jsme, že datovou sběrnici lze vytvořit, pokud je dohromady zapojeno několik třístavových zařízení, a pokud je v jednom okamžiku vybráno pouze jedno, není to žádný problém. Tri-state buses allow several digital devices to input and output data on the same data bus by using I/O signals and address decoding.
Tri-state Buffers are available in integrated form as quad, hex or octal buffer/drivers in both uni-directional and bi-directional forms, with the more common being the TTL 74240, the TTL 74244 and the TTL 74245 as shown.
Commonly available Digital Buffer and Tri-state Buffer IC’s include:
TTL Logic Digital Buffers
- 74LS07 Hex Non-inverting Buffer
- 74LS17 Hex Buffer/Driver
- 74LS244 Octal Buffer/Line Driver
- 74LS245 Octal Bi-directional Buffer
CMOS Logic Digital Buffers
- CD4050 Hex Non-inverting Buffer
- CD4503 Hex Tri-state Buffer
- HEF40244 Tri-state Octal Buffer