NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.

Logické obvody 2 - Řešení příkladů a pravdivostní tabulka

Minule jsme si udělali úvod do logických obvodů a zmínili si několik zadání. Postupme k jejich řešení.

Řešení slovního zadání

Pokud máme úlohu zadánu jako slovní příklad, je zapotřebí udělat něco jako rozbor úlohy. To v podstatě znamená určit vstupní proměnné, (z minula již víme, že to budou nějaká čidla nebo snímače) a určit výstupní funkce (to jsou akční členy – takže vykonají nějakou akci …). Prohlídneme si zadání příkladu a.:

  1. Logický obvod vysílá signál v případě poruchy jednoho nebo obou větráků. U každého větráku jsou umístěny snímače, které vysílají trvale signál, dojde-li k poruše větráku.

Zeleně je označeno, kde se hovoří o snímačích a jejich počtu a červeně je označeno místo, které představuje požadovanou činnost navrhovaného zařízení, myslím tím činnost našeho navrhovaného obvodu. Takže budeme potřebovat dvě vstupní proměnné, protože větráky jsou dva a jednu výstupní funkci, neboť je požadováno pouze vyslání signálu v případě poruchy, je otázkou jakého, ale budeme předpokládat, že jde třeba o rozsvícení ledky.

1. vstupní proměnné … 2 větráky (2 snímače) => 2 proměnné např. a a b

V úvodu je uvedeno, že se logické obvody navrhují podle výrokové logiky, takže by to chtělo nějaké výroky 8-). Výrok vyjadřuje nějaké tvrzení, na které lze odpovědět buď ano, nebo ne.

proměnná a"první větrák přestal pracovat" … pokud ano, pak a = 1; pokud ne, pak a = 0

proměnná b"druhý větrák přestal pracovat" … pokud ano, pak b = 1; pokud ne, pak b = 0

(v praxi se výrok zapisuje tak, aby představoval stav, že se událost, kterou hlídáme, stala. Pak logickou 1 přiřadíme odpovědi ano a logickou 0 odpovědi ne. Samozřejmě může to být i naopak, ale když to budete takto dodržovat, bude to lepší)

2. výstupní proměnné … 1 signál (1 led dioda) => 1 výstupní funkce f

Výstupní funkce f"rozsvítí se led dioda" … ano, je-li f = 1; ne, je-li f = 0

Vlastní logiku, tedy to, kdy se opravdu rozsvítí ledka, provádí navržený logický obvod podle zadání tj.:
"v případě, že dojde k poruše jednoho nebo obou větráků"

Logiku je nejjednodušší navrhnout pomocí pravdivostní tabulky, takže co to vlastně je pravdivostní tabulka?

Pravdivostní tabulka

Jednoznačně přiřazuje určitou konkrétní kombinaci vstupních proměnných jedné nebo několika výstupním funkcím.

Levá část obsahuje všechny možné kombinace vstupních proměnných a stavový index (což je dekadicky vyjádřená binární hodnota příslušné kombinace vstupních proměnných). Počet těchto kombinací je dán počtem proměnných. Takže máme-li dvě proměnné např. a a b, které mohou každá nabývat hodnoty 0 nebo 1, pak máme čtyři různé kombinace a to: 00, 01, 10 a 11. Obecně je počet všech kombinací N = 2n, kde n se rovná počtu vstupních proměnných.

Pravá část obsahuje hodnoty výstupních funkcí, které se stanoví na základě logiky slovního zadání.

Pravdivostní tabulka pro náš předchozí příklad

Bude mít tři sloupce vlevo (stavový index s a dvě vstupní proměnné a a b) a celkem 4 řádky (N=22)

A jen jeden sloupec vpravo f, protože máme jen jednu výstupní funkci.

Pravdivostní tabulka - Hardware

Ze slovního zadání vyplývá, že výstupní funkce bude rovna 1 (tj. rozsvítí se led dioda): „v případě, že dojde k poruše jednoho nebo obou větráků“

Pravdivostní tabulka po doplnění ukazuje všechny případy, ke kterým může dojít:

Pravdivostní tabulka - Hardware

Výhodou pravdivostní tabulky je, že zachycuje všechny kombinace, které mohou nastat a jak bude daný obvod reagovat. Nic jiného ani kombinační obvod neumí a my nemůžeme na nic zapomenout :).

Neúplně zadaná funkce

Někdy se však stane, že pro určitou kombinaci na vstupu neexistuje fyzikální realizace, prostě daná vstupní kombinace není možná. Pak takové pravdivostní tabulce říkáme:

Pravdivostní tabulka s neúplně zadanou funkcí (nebo funkcemi). Důvod je ten, že nevíme, zda výstupní funkce bude nabývat pro danou kombinaci log.1 nebo log.0. Vlastně je to jedno, protože daná vstupní kombinace ani nenastane, pak píšeme x místo 1 nebo 0. Pro názornost si uvedeme jednoduchý příklad.

Příklad neúplně zadané funkce

Př.: Navrhněte hlídání hladiny v nádrži tak, aby se rozsvítila kontrolka K1, pokud klesne hladina pod minimum a kontrolka K2, pokud hladina přesáhne maximum.

1. vstupní proměnné … 2 snímače (minimum a maximum) => 2 proměnné např. a a b

proměnná a"snímač minima pod vodou" … pokud ano, pak a = 1; pokud ne, pak a = 0

proměnná b"snímač maxima pod vodou" … pokud ano, pak b = 1; pokud ne, pak b = 0

2. výstupní proměnné … 2 signály (2 led diody, K1 a K2) => 2 výstupní funkce f1 a f2

výstupní funkce f1"rozsvítí se K1" … ano, je-li f1 = 1; ne, je-li f1 = 0

výstupní funkce f2"rozsvítí se K2" … ano, je-li f2 = 1; ne, je-li f2 = 0

pravdivostní tabulka

Pravdivostní tabulka - Hardware

Tyto "neúplně zadané" stavy je důležité v tabulce vyznačit (a ne je vynechat), neboť se využívají pro zjednodušení minimalizace výstupní funkce.

Zápis funkce stavovým indexem

Jak už bylo uvedeno v předchozím článku, funkci lze také zapsat pomocí stavového indexu. Jde vlastně o zkrácený zápis pravdivostní tabulky. Stavový index je dekadické číslo, jehož hodnota odpovídá binární kombinaci vstupních proměnných v určitém řádku. Samozřejmě zde záleží v jakém pořadí se vstupní proměnné uvádí. V předchozích příkladech je proměnná a vždy nejvíce vpravo a tedy jde o bit s nejnižší vahou 20.

Zápisy pak mají následující tvar:

1.př.: úplně zadaná funkce - porucha vrtáku

za symbolem "suma" je výčet jedničkových stavů výstupní funkce
za symbolem "pí" je výčet nulových stavů výstupní funkce

Zápis funkce stavovým indexem - Hardware

2.př.: neúplně zadaná funkce - Hlídání hladiny vody

Za symbolem "suma" je výčet jedničkových stavů výstupní funkce a za symbolem "suma s x" jsou nedefinované stavy

Za symbolem "pí" je výčet nulových stavů výstupní funkce a za symbolem "pí s x" jsou nedefinované stavy

Zápis funkce stavovým indexem - Hardware

Oba zápisy, ať už ze sumou nebo pí, vyjadřují stejnou funkci.


 

Stáhnout

Stažením následujícího souboru souhlasíš s licenčními podmínkami

Staženo 2059x (743.73 kB)

 

Všechny články v sekci
Hardware
Článek pro vás napsala jasper
Avatar
Uživatelské hodnocení:
3 hlasů
jasper
Aktivity