Vítejte u komplexního průvodce Základy digitální logiky a paměti, který vám pomůže pochopit klíčové principy číslicových systémů. Ať už se připravujete na zkoušku, maturitu nebo si jen chcete rozšířit obzory, tento článek vám poskytne přehledné shrnutí a podrobný rozbor této fascinující oblasti digitální techniky. Projdeme si vše od základních pojmů, přes kombinační logické funkce, až po realizaci paměťových obvodů.
Základy digitální logiky a paměti: Klíčové pojmy
V digitální technice se pracuje s abstrakcí, kde signály nabývají pouze dvou možných hodnot, označených jako logická jednička (log. 1) a logická nula (log. 0). Tyto dvouhodnotové veličiny se interpretují různými způsoby, nejčastěji logicky (1, 0), pravdivostně (pravdivý, nepravdivý) nebo jako binární číslice (1, 0).
Fyzicky se tyto hodnoty zobrazují nejčastěji pomocí úrovně fyzikální veličiny, jako je napětí nebo proud, s úrovněmi H (vyšší) a L (nižší). Většinou se setkáváme s kladnou logikou, kde úroveň H odpovídá logické 1. Aktivní úroveň řídicí veličiny (1) může být vyjádřena i úrovní L, což se pak zapisuje jako invertovaná proměnná.
Definice základních pojmů
- Logická proměnná: Proměnná nabývající pouze hodnot 0 nebo 1.
- Logický signál: Fyzikální signál s hodnotami ve dvou nepřekrývajících se množinách.
- Logická funkce: Vztah mezi závislými a nezávislými logickými proměnnými.
- Logický člen: Zařízení realizující logické funkce.
- Logický systém: Matematický model logického obvodu, charakterizující jeho chování.
- Logický obvod: Fyzikální systém, kde každá veličina nabývá ve ustáleném stavu dvou hodnot.
Logické systémy mohou být synchronní, kdy jsou změny akceptovány jen při náběžných nebo sestupných hranách synchronizačního signálu. Dělí se na kombinační a sekvenční.
Kombinační logické funkce: Podrobný rozbor
Elektronické obvody, které realizují logické funkce, se dělí na kombinační a sekvenční logické systémy. Právě pochopení kombinačních logických funkcí je základem.
Rozdíl mezi kombinačními a sekvenčními systémy
- Kombinační logické systémy: Výstupní stav závisí pouze na okamžitých stavech (kombinaci) vstupních logických proměnných. Změna výstupu nastane se zpožděním daným průchodem signálu obvody.
- Sekvenční logické systémy: Výstupní stav závisí na hodnotě vstupních logických proměnných a na předchozí hodnotě výstupu. Obsahují paměťový prvek a jejich výstup je definován časovou posloupností změn vstupních hodnot. Většina digitálních systémů, jako například čítače, jsou sekvenční.
Kombinační logická funkce: Charakteristika a typy
Kombinační logická funkce je pravidlo, které každé kombinaci vstupních proměnných (0 a 1) přiřazuje jedinou hodnotu výstupní proměnné. Funkce mohou být úplně určené, pokud jejich definiční obor zahrnuje všechny kombinace vstupních proměnných, nebo neúplně určené, pokud některé kombinace nezahrnují.
Pro jednu vstupní proměnnou (x) existují čtyři základní úplně určené kombinační logické funkce:
y = f0(x) = 0(nulová funkce)y = f1(x) = x(totožnost, opakování)y = f2(x) = x̅(negace, inverze)y = f3(x) = 1(jednotková funkce)
Počet kombinačních logických funkcí
Počet možných úplně určených kombinačních logických funkcí pro n vstupních proměnných je 2^(2^n). Například pro dvě proměnné je to 2^(2^2) = 2^4 = 16 funkcí. S rostoucím počtem proměnných roste počet funkcí velmi rychle.
Lze ukázat, že jakákoliv kombinační logická funkce libovolného množství proměnných může být vyjádřena pomocí několika elementárních logických funkcí, které tvoří tzv. úplný soubor logických funkcí. Příkladem jsou samotné funkce NAND nebo NOR, případně soubor funkcí OR spolu s inverzí nebo AND spolu s inverzí.
Způsoby zápisu a zobrazení kombinačních logických funkcí
Pro práci s kombinačními logickými funkcemi je klíčové umět je zapsat a zobrazit.
Pravdivostní tabulka
Pravdivostní tabulka je nejjednodušší způsob zápisu. Obsahuje vstupní a výstupní logické proměnné. Pro n vstupních proměnných a m výstupních funkcí má tabulka n + m sloupců a 2^n řádků (všechny možné kombinace vstupních stavů). Kombinace vstupů se obvykle uvádí jako posloupnost binárních čísel, označovaných jako stavový index.
Logický výraz
Logický výraz je zápis skupiny identifikátorů logických proměnných oddělených logickými operátory (součet, součin, inverze, EX-OR). Závorky určují pořadí operací. Důležité typy logických výrazů jsou:
- Součinový term (implikant, konjunkce): Obsahuje jen operátory logického součinu (např.,
s.t.u). - Součtový term (inhibent, disjunkce): Obsahuje jen operátory logického součtu (např.,
s + t + u). - Minterm: Součinový term obsahující všechny vstupní proměnné (přímé nebo invertované).
- Maxterm: Součtový term obsahující všechny vstupní proměnné (přímé nebo invertované).
- Úplný term: Minterm nebo maxterm.
Funkce se často zapisují ve tvaru:
- Součet součinů (Sum of Products, SOP): Tvořen součtem součinových termů. Je-li úplný, jde o součet mintermů.
- Součin součtů (Product of Sums, POS): Tvořen součinem součtových termů. Je-li úplný, jde o součin maxtermů.
Úplné součtové a součinové tvary lze přímo odvodit z pravdivostní tabulky. Pomocí De Morganových pravidel lze jeden tvar převést na druhý.
Karnaughova mapa
Karnaughova mapa je grafický způsob zobrazení kombinačních logických funkcí, považovaný za upravenou pravdivostní tabulku. Buňky mapy jsou uspořádány tak, že se stavové indexy sousedních buněk liší v hodnotě pouze jedné vstupní proměnné. Sousedními buňkami jsou i ty na okrajích mapy. Do buněk se zapisují funkční hodnoty (často jen 1 nebo 0). Mapa je vhodná pro až čtyři vstupní proměnné, pro více proměnných je interpretace složitější.
Logická schémata
Logický výraz lze převést do grafického tvaru logického schématu, kde vstupní a výstupní proměnné jsou signály a operace jsou znázorněny grafickými značkami logických členů (AND, OR, NOT, EX-OR atd.).
Zjednodušování a minimalizace logických funkcí
Minimalizace logických funkcí je klíčová pro efektivní realizaci digitálních obvodů. Cílem je najít nejjednodušší tvar zápisu, který obvykle vyžaduje nejmenší počet součástek nebo termů.
Metody minimalizace logických funkcí
- Algebraické úpravy: Využívají základní zákony Booleovy algebry, například
(a + a̅) = 1pro slučování termů. Vhodné pro funkce s malým počtem termů. - Karnaughova mapa: Velmi efektivní metoda pro vizuální minimalizaci funkcí s menším počtem proměnných (do 4-5). Slučováním sousedních buněk (dvojice, čtveřice, osmerice) se vylučují proměnné a zjednodušuje se výraz.
- Quine-McCluskeyho algoritmus: Algoritmické vyjádření postupu zjednodušování, vhodné pro počítačovou minimalizaci složitějších funkcí s velkým počtem proměnných. Vychází z úplné součtové formy a systematicky zjednodušuje implikanty.
- Metoda TANT (Tree-level AND-NOT logic with True inputs): Rozšíření Quine-McCluskeyho metody, generuje tříúrovňové logické sítě se členy NAND, umožňující jednodušší realizaci.
Realizace kombinačních logických funkcí
Realizace kombinační logické funkce znamená sestavení obvodu, který zadanou funkci vykonává. K tomu se využívá řada přístupů.
Základní digitální integrované obvody
- Obvody NAND, NOR (a AND, OR): Ideální pro jednoduché funkce, které lze realizovat s jedním nebo dvěma pouzdry. Výhodou je jednoduchost, nízká cena a malé zpoždění. Příkladem je realizace funkce ve struktuře NAND-NAND nebo NOR-OR.
- Členy AND-OR-INVERT: Integrované obvody s pevně danými součinovými a součtovými sekcemi. Výhodou je menší zpoždění a zjednodušení obrazce spojů, ale jejich použití je dnes méně časté.
Multiplexory a demultiplexory
- Multiplexor (MUX): Digitální obvod, který funguje jako přepínač. Má
nadresových vstupů,2^ndatových vstupů a jeden výstup. Signál z vybraného datového vstupu (podle adresy) se převede na výstup. Multiplexory jsou vhodné pro realizaci jedné nebo malého počtu funkcí s nevelkým počtem vstupních proměnných. - Demultiplexor: Provádí opačnou operaci než multiplexor – má jeden vstup, několik adresovacích vstupů a
nvýstupů. Stejnou funkci vykonává i dekodér. Demultiplexor vede signál z datového vstupu na výstup vybraný adresovými vstupy. Dekodéry se často používají jako stavební prvek pamětí PROM a programovatelných logických obvodů.
Speciální kombinační integrované obvody
Patří sem například enkodéry, generátory parity, sčítačky, aritmeticko-logické jednotky a další obvody určené pro často se vyskytující funkce. Nabízejí výhodné řešení, pokud jde o funkce, pro které jsou navrženy.
Paměti PROM a EPROM
Paměti ROM, PROM a jejich varianty (EPROM, EEPROM) mohou být naprogramované rovněž považovány za kombinační logické obvody. Jsou univerzální a schopné realizovat jakoukoliv funkci svých vstupních proměnných. Vhodné pro složité funkce mnoha proměnných. Nevýhodou je často větší zpoždění a pro jednoduché funkce nadměrná kapacita.
Programovatelné logické obvody (PLD, FPGA)
Programovatelné logické obvody (PLD) a Field Programmable Gate Arrays (FPGA) představují moderní řešení realizované na jednom čipu. Jejich funkce se mění naprogramováním. Umožňují realizovat jak kombinační, tak sekvenční bloky, což přispívá ke zmenšení počtu pouzder a celkové integraci systému. Jejich rychlost je podobná jako u jiných kombinačních obvodů.
Paměťové obvody: SRAM, DRAM a ROM
Polovodičové paměti jsou základním kamenem digitálních systémů. Dělíme je na ROM (Read Only Memory) a RWM (Read Write Memory).
Paměti ROM (Read Only Memory)
Jsou to paměti konstant s neměnným zápisem dat, ze kterých lze pouze číst. Udržují informaci i při vypnutém napájení (energeticky nezávislé). Typy ROM:
- Maska programovatelné ROM: Data jsou pevně dána maskami při výrobě čipu. Výroba se vyplatí ve velkých sériích.
- PROM (Programmable ROM) nebo OTP (One Time Programmable): Elektricky jednorázově programovatelná permanentní paměť. Každý bit lze přepsat z H na L, ale změna je nevratná. Využívá tranzistory s plovoucím hradlem.
- EPROM (Erasable Programmable Read-Only Memory): Mazatelná paměť typu ROM pomocí ultrafialového záření (UV). Operaci mazání lze opakovat (řádově 100x). Data se programují selektivně zápisem L úrovně do H buněk.
- EEPROM (Electrically Erasable Programmable Read-Only Memory): Elektricky mazatelná a přepisovatelná paměť typu ROM. Výhodou je kratší doba mazání a možnost mazání menších sektorů. Specifickým druhem jsou FLASH paměti.
- FLASH paměti: Levnější na výrobu než EEPROM. Dělí se na:
- NOR Flash: Poskytují rozhraní s vyhrazenými adresovými a datovými vodiči, umožňují přímý přístup k buňce. Menší hustota, pomalejší zápis, rychlejší čtení.
- NAND Flash: Jednoduché připojovací rozhraní, data multiplexována. Vyšší hustota, rychlejší zápis, pomalejší čtení. Vhodné pro hromadné ukládání dat.
Paměti RWM (Read Write Memory)
Jsou to paměti, jejichž obsah lze jednoduše měnit zápisem. Mohou být energeticky závislé (volatile), což znamená, že po odpojení napájení ztrácejí informaci. Dále se dělí na:
- Statické (SRAM - Static Random Access Memory): Uchovávají informaci po celou dobu připojení k napájení. Jsou realizovány jako bistabilní klopné obvody. Nedestruktivní čtení. Jsou rychlejší, ale dražší a mají nižší hustotu než DRAM.
- Dynamické (DRAM - Dynamic Random Access Memory): Informace je uložena jako elektrický náboj na kondenzátoru. Mají tendenci ztrácet náboj, proto je nutné informaci periodicky obnovovat (refresh). Destruktivní čtení, po kterém se informace musí zapsat zpět. Mají vysokou integraci a nízké výrobní náklady, proto jsou používány pro operační paměti, avšak s vyšší přístupovou dobou.
Nejčastější dotazy studentů o digitální logice a pamětech
Jaký je hlavní rozdíl mezi kombinačními a sekvenčními obvody?
Hlavní rozdíl spočívá v závislosti výstupu. Kombinační obvody mají výstup závislý pouze na aktuálních vstupech, zatímco sekvenční obvody závisí navíc i na předchozích stavech (díky paměťovým prvkům).
Proč je důležité zjednodušování logických funkcí?
Zjednodušování logických funkcí je klíčové pro minimalizaci složitosti obvodu. Vede k menšímu počtu použitých součástek, nižší spotřebě energie, menšímu zpoždění signálu a celkově ekonomičtější a spolehlivější realizaci digitálních systémů.
K čemu se používají Karnaughovy mapy a jak fungují?
Karnaughovy mapy jsou grafický nástroj pro ruční zjednodušování logických funkcí s malým počtem proměnných. Fungují tak, že vizuálně seskupují mintermy (jedničky) nebo maxtermy (nuly) ve speciálně uspořádané tabulce, což umožňuje identifikovat a eliminovat nadbytečné proměnné z logického výrazu.
Jaký je princip pamětí ROM a RWM?
Paměti ROM (Read Only Memory) jsou určeny pro trvalé uložení dat a lze z nich pouze číst, přičemž uchovávají data i bez napájení. Paměti RWM (Read Write Memory) umožňují čtení i zápis dat, a jejich obsah je často závislý na napájení (např. SRAM, DRAM).
Jak se liší SRAM a DRAM?
SRAM (Static RAM) uchovává data pomocí bistabilních klopných obvodů a nepotřebuje obnovování, je rychlejší, ale dražší a má menší hustotu. DRAM (Dynamic RAM) uchovává data jako náboj na kondenzátorech, vyžaduje periodické obnovování (refresh), je pomalejší, ale levnější a má vyšší hustotu, proto se používá jako hlavní paměť počítačů.