- Základní princip kodéru:
- Vytváření kodérů pomocí kombinačních logických návrhů
- Kodéry 8: 3:
- Nevýhoda normálních kodérů:
- Kodér priority:
Kodéry, jak název napovídá, kódují větší bit informací do menší bitové hodnoty. Existuje mnoho typů kodérů založených na počtu vstupů a výstupů a na tom, jak funguje. Ale každý kodér má jedno základní pravidlo, počet výstupních řádků na kodéru bude vždy menší než počet vstupních řádků. Více informací o kodérech, co je to kodér, jak a proč se používají v digitálních obvodech, se dozvíme v tomto článku.
Základní princip kodéru:
Představme si, že kodér je černá skříňka, jak je znázorněno níže, která magicky snižuje počet vstupních řádků ze 4 na pouhé 2 výstupní řádky, ale stále poskytuje stejné informace bez ztráty dat.
Nejprve určíme, jak by se jmenoval tento kodér. Má čtyři vstupy a dva výstupy, takže název tohoto kodéru bude 4: 2. Pokud má kodér „ n “ počet výstupních řádků, bude počet vstupních řádků 2 n, v našem případě je počet výstupních linek dva (n = 2), proto by měl být počet vstupních linek (2 2 = 4) čtyři, což je přesně ten případ. Čtyři vstupní piny jsou označeny od I0 do I3 a dva výstupní piny jsou označeny od O0 do O1
Jak tedy kodér převádí čtyři signály na dva, lze to pochopit pohledem na níže uvedenou tabulku pravdivosti. Je také důležité vědět, že běžný kodér, jako je ten, který je zde zobrazen, má pravidlo, že v daném čase by měl být vysoký pouze jeden vstupní pin, takže v následující tabulce pravdivosti bude vysoký pouze jeden vstup.
Veškeré možné podmínky vstupu na výstupu jsou uvedeny ve výše uvedené tabulce pravdivosti. Například když je pouze O1 vysoká (1) a všechny ostatní vstupy jsou nízké (0), pak oba výstupní piny budou nízké (0). Podobně pro každý případ změní výstupní stav také svůj stav. Použitím tohoto stavu výstupních bitů bude uživatel schopen zpětně sledovat, jaký vstupní signál by byl dán kodéru.
Dobře, co se líbí převodu 4 řádků na 2 řádky, proč to vůbec potřebujeme?
Pro účely porozumění jsme vysvětlili kodér 4: 2, ale existují i jiné kodéry, které mohou přijímat vyšší počet vstupů a převádět je na nižší počet výstupů, jako je kodér 8: 3, 16: 4 atd. Tyto typy Encoderu jsou velmi užitečné, když musíme snížit počet pinů použitých na MCU / MPU nebo snížit počet vodičů nesoucích signál v PLC a dalších systémech, kde je řada přepínačů nebo LED. Používá se také při efektivním přenosu dat pomocí menších vodičů. V některých aplikacích se můžeme setkat s situací, kdy by více než jeden vstup mohl být vysoký (1), v takovém případě budeme nazývat Prioritní kodér, o kterém budeme dále hovořit v tomto článku.
Vytváření kodérů pomocí kombinačních logických návrhů
Nyní, když víme, jak kodér funguje a kde se používá. Naučme se, jak jej postavit pomocí jednoduchých logických bran. Přestože jsou kodéry jako 8: 3 k dispozici jako elegantní jediný balíček IC, jako je SN74LS148, je důležité vědět, jak jsou postaveny, abychom mohli pro naše projekty vytvářet vlastní kodéry na základě požadované tabulky pravdivosti.
Booleovský výraz:
Prvním v návrhu zařízení Combinational Logic je nalezení logického výrazu pro tabulku pravdivosti. Je to velmi snadné a lze jej snadno určit pouhým pohledem na tabulku pravdivosti. Stejná tabulka pravdy, kterou jsme viděli dříve, je uvedena níže s několika ilustracemi, které vám pomohou lépe porozumět.
Počet výrazů se bude rovnat počtu výstupních řádků, zde máme dva výstupy, a proto máme dva výrazy. U prvního výstupu O0 stačí zkontrolovat, za jakých podmínek je vysoká (1), a sledovat odpovídající číslo vstupního pinu, které také zůstává vysoké (1). Podobně pro všechny vysoké hodnoty O0 poznamenejte, které číslo vstupního kolíku je vysoké, a přidejte kolíky. Vstupní piny odpovídající výstupnímu kolíku O0 jsou zvýrazněny červeně výše a pro O1 je zvýrazněno modře. Takže výraz pro O0 a O1 bude
O 1 = I 3 + I 2 O 0 = I 3 + I 1
Schéma zapojení kodéru 4: 2:
Jakmile získáme Booleovský výraz, musíme jej nakreslit ve formě bran. Tady, protože máme operaci sčítání (+), použijeme pro konstrukci našich obvodů brány OR. Můžete také zjednodušit nebo upravit logický výraz podle svých potřeb. Schéma zapojení pro výše uvedený výraz je uvedeno níže
Obvod lze snadno sestavit pomocí integrovaného obvodu brány 7432 OR. Postavil jsem svůj obvod enkodéru přes prkénko, jak je uvedeno níže
Čtyři vstupní linky (I0, I1, I2 a I3) jsou poskytovány čtyřmi tlačítky, když je tlačítko stisknuto, spojí + 5V s kolíkem, což je logické 1, a když tlačítko není stisknuto, kolík se drží na zemi přes 10k stahovací rezistor, aby byl logicky nulový. Výstupy (O0 a O1) jsou znázorněny pomocí dvojice červených LED. Pokud dioda LED svítí, znamená to, že výstupní logika je 1 a pokud jsou vypnuty, znamená to, že výstupní logika 0. Kompletní fungování obvodu enkodéru je zobrazeno na videu níže
Jak vidíte, když je stisknuto první tlačítko, vstup I0 je nastaven vysoko, a proto oba výstupy zůstávají nízké. Když je stisknuto druhé tlačítko, vstup I1 je zapnutý a tak jedna LED zhasne, což znamená, že O0 je vysoká. Nakonec, když je stisknuto čtvrté tlačítko, vstup I3 je nastaven vysoko, a tak obě LED svítí vysoko. Jedná se o velmi jednoduchý obvod, proto jsme jej snadno postavili na prkénku, ale pro praktické kodéry bude obvod o něco složitější. Kodéry jsou však k dispozici také jako IC balíčky, které lze zakoupit, pokud to vyhovuje vašemu projektu.
Kodéry 8: 3:
Práce a použití kodéru 8: 3 je také podobné kodéru 4: 2, s výjimkou počtu vstupních a výstupních pinů. Kodér 8: 3 je také nazýván jako osmičkový až binární kodér, blokové schéma kodéru 8: 3 je uvedeno níže
Zde má kodér 8 vstupů a 3 výstupy, pouze jeden vstup by měl být kdykoli vysoký (1). Protože existuje 8 vstupů, nazývá se to osmičkovým vstupem a protože existují tři výstupy, nazývá se to také binární výstup. Tabulka pravdivosti kodéru je uvedena níže.
Tabulka pravdivosti kodéru 8: 3:
Booleovský výraz:
Protože máme ty výstupy, budeme mít tři výrazy, jak je znázorněno níže
O 2 = I 7 + I 6 + I 5 + I 4 O 1 = I 7 + I 6 + I 3 + I 2 O 0 = I 7 + I 5 + I 3 + I 1
Schéma zapojení kodéru 8: 3:
Jakmile je logický výraz získán jako vždy, můžeme sestavit schéma obvodu pomocí bran OR, jak je znázorněno níže.
Obvod používá integrovaný obvod brány se 4 vstupy NEBO, můžete také zjednodušit Booleovský výraz tak, aby používal další běžné vstupní brány 2 se vstupy.
Nevýhoda normálních kodérů:
Tyto typy kodérů trpí následujícími hlavními nevýhodami
- Pokud žádný ze vstupů není vysoký, bude výstup roven celé nule, ale tato podmínka je také v konfliktu s tím, že první bit je vysoký (MSB). Proto je třeba vždy dbát na to, aby alespoň jeden bit zůstal vždy zapnutý
- Když je více než jeden vstup vysoký, výstup se sbalí a může dát výsledek pro jeden ze vstupů, což vede k záměně.
K překonání těchto obtíží používáme jiný typ kodéru, který se nazývá Prioritní kodér a který používá další výstup k určení, zda je výstup platný, a když je více než jeden vstup vysoký, je považován pouze ten, který jde vysoko od LSD, zatímco ignorování ostatních vstupů.
Kodér priority:
Pojďme analyzovat Prioritní kodér 4: 2 jako příklad, abychom pochopili, jak se liší od normálního kodéru a může překonat výše uvedené dvě nevýhody. Blokové schéma prioritního kodéru 4: 2 je uvedeno níže
Kodér priority 4: 2 má také 4 vstupy a 2 výstupy, ale přidáme další výstup s názvem V, což je zkratka pro platný bit. Tento platný bit ověří, zda jsou všechny čtyři vstupní piny nízké (0), pokud je nízký, bit se také sníží, přičemž uvádí, že výstup není platný, takže můžeme překonat první výše zmíněnou nevýhodu.
Tabulka pravdivosti prioritního kodéru 4: 2:
Další nevýhodě se lze vyhnout upřednostněním bitů MSB, Encoder zkontroluje z MSB a jakmile najde první bit tak vysoký (1), vygeneruje odpovídajícím způsobem výstup. Nezáleží na tom, zda jsou ostatní piny vysoké nebo nízké. Proto v níže uvedené tabulce pravdivosti, jakmile je dosaženo 1, jsou hodnoty nezajímavosti prezentovány „X“.
Booleovský výraz:
Nyní musíme odvodit tři výrazy, které jsou pro O0, O1 a V. Jelikož tabulka pravdy nezajímá položky, musíme k odvození booleovského výrazu použít metodu K-map. Nebudeme se zabývat tím, jak řešit pomocí K-map, protože to je mimo rozsah tohoto článku. Ale mapa je zobrazena níže, takže můžete zasahovat a učit se sami.
Na výše uvedených mapách je levá pro O1 a pravá pro O0. Výstupní řádky jsou zmíněny y a vstupní řádky jsou zmíněny x. Uspořádáním rovnice tedy dostaneme následující.
O 1 = I 3 + I 2 O 0 = I 2 I 1 '+ I 3
Podobně lze pro platný bit „V“ zadat logický výraz jako
V = I 3 + I 2 + I 1 + I 0
Kruhový diagram:
Schéma zapojení pro tento projekt lze sestavit pomocí logických výrazů.
Okruh lze sestavit pomocí základních bran NOT, AND a OR. Zde se bity O0 a O1 považují za výstupy, zatímco bit V se používá k ověření výstupu. Pouze pokud je bit V vysoký, výstup se zohlední, pokud je hodnota V nízká (0), výstup by měl být ignorován, protože to znamená, že všechny vstupní piny jsou nulové.