1.09k likes | 1.63k Views
Digitális technika I. Rész: Kombinációs hálózatok. Dr. Turóczi Antal turoczi.antal @ nik.uni-obuda.hu. Bevezető. A tárgy célja D igitális rendszer technikai alapfogalmak alapismeretek módszerek megismertetése Informatikai eszközök működésének megértéséhez,
E N D
Digitális technikaI. Rész: Kombinációs hálózatok Dr. Turóczi Antal turoczi.antal@nik.uni-obuda.hu
Bevezető • A tárgy célja • Digitális rendszertechnikai • alapfogalmak • alapismeretek • módszerek megismertetése • Informatikai eszközök működésének megértéséhez, • Mérnöki szemlélet kialakításához
Bevezető • Tananyag • Logikai hálózat fogalma, logikai hálózatok csoportosítása. • Kombinációs hálózatok leírási módjai. • Logikai függvények, igazságtáblázat, logikai kapcsolási rajz, Karnaugh tábla. Kombinációs hálózatok vizsgálata és tervezése. • Jelterjedési késési idő, kombinációs hálózatok hazárdjai. • Tipikus kombináció hálózatok. • Programozható kombinációs hálózatok. • Sorrendi hálózat fogalma, sorrendi hálózatok csoportosítása. • Szinkron és aszinkron hálózatok. • Tároló alapelemek, flip-flop típusok. • Szinkron hálózatok vizsgálata, állapottáblázat, állapotegyenlet, állapot-diagram. Szinkron hálózat tervezési módszerei. • Tipikus egyszerű szinkron hálózatok, számlálók és regiszterek. • Aszinkron hálózatok vizsgálata
Bevezető • Követelmények • Heti óraszámok: 2 óra előadás • Számonkérés módja: • 1. ZH: • 2-6. hét labor kis ZH, összesen max. 50% • 7. hét on-line tesztkérdések max. 50% • 2. ZH: • 7-12. hét labor kis ZH, összesen max. 50% • 13. hét on-line tesztkérdések max. 50% • Pót zh-k – 14. hét • A labor kis ZH-val összevont pótlás • Vizsga • A vizsgára bocsátás feltétele, hogy mindkét ZH legalább 50%-os eredményű legyen • Első rész: on-line vizsga, tesztkérdések • Az első részben a kapható maximális pontszám legalább 51 százalékát el kell érni ahhoz, hogy a vizsga eredménye elégséges vagy jobb legyen • Második rész: írásbeli példamegoldás és önálló laborfeladat megoldása • A végső pontszám az első és a második részre kapott pontok összege lesz
Bevezető • Ajánlott irodalom • Kóré László: Digitális elektronika I. BMF 1121 • Dr. Arató Péter: Logikai rendszerek tervezése, Tankönyvkiadó, Budapest • További segédletek • http://nik.uni-obuda.hu/vill/Digit_tech_I/
Bevezető • Számrendszerek • Tízes számrendszer • A legelterjedtebb, a mindennapos életben használt számrendszer • Alapszáma a 10 • A valós számokat a 0,1,2,3,4,5,6,7,8,9 karakterekkel ábrázoljuk • Pl: • 7890 = 7·103+8·102+9·101+0·100 • 543, 21 = 5·102+4·101+3·100+2·10-1+1·10-2 • Kettes (bináris) számrendszer • Alapszáma a 2 • A legkisebb egész helyi értéke az 1 • A valós számokat a 0 és 1 karakterekkel ábrázoljuk • Pl: • 11012 = 1·23+1·22+0·21+1·20 = 1·8+1·4+0·2+1·1 = 13 • 11012 = 1101b
Bevezető • Számrendszerek • Nyolcas (oktális) számrendszer • Alapszáma a 8 • A kettes számrendszer „rövidített” formájaként használjuk • A valós számokat a 0,1,2,3,4,5,6,7 karakterekkel ábrázoljuk • Pl: • 24168 = 010 100 001 1102 = 2·83+4·82+1·81+6·80 = 1294 • C programozási nyelvben: 02416 → 24168 • Tizenhatos (hexadecimális) számrendszer • Alapszáma a 16 • A kettes számrendszer „rövidített” formájaként használjuk • A valós számokat a 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F karakterekkel ábrázoljuk • Pl: • 5E016 = 0011 1110 00002 = 5·162+14·161+0·160 = 24168 = 1294 • C programozási nyelvben: 0x5E0 • Egyéb jelölés: 5E0h
Bevezető • Számrendszerek
Bevezető • Számrendszerek • Prefixek • Néhány kettő hatvány értéket a gyakorlatban rövidítve is használunk • IEC szabvány • Pl: • 4 Gbyte = 4·230 = 22·230 = 232 = 4 294 967 296 Byte
Bevezető • Számrendszerek • Prefixek • SI szimbólumok • Pl: • 25 KW = 25·103 = 25 000 W (Watt)
Bevezető • Számkódok • Binárisan kódolt decimális számok (BCD) • A decimális szám minden helyiérték együtthatóját kettes számrendszerben fejezzük ki négy helyi értéken • Pl: • 7890 = (0111 1000 1001 0000)BCD 7 8 9 0
Bevezető • Számkódok • Egylépéses kódok • A szomszédos kódszavak a lehető legkevésbé, vagyis 1 helyiértéken térnek csak el egymástól • Hibavédelem
Bevezető • Számkódok • Egylépéses kódok • A szomszédos kódszavak a lehető legkevésbé, vagyis 1 helyiértéken térnek csak el egymástól • Hibavédelem
Bevezető • Számkódok • Egylépéses kódok • A szomszédos kódszavak a lehető legkevésbé, vagyis 1 helyiértéken térnek csak el egymástól • Hibavédelem
Bevezető • Számkódok • Alfanumerikus kódok • betűk, írásjelek és számok, (karakterek) bináris kódolását valósítják meg • Pl: ASCII kód • 26 db latin nagybetű (41H…5AH) • 26 db latin kisbetű (61H…7AH) • 33 db írásjel, matematikai jel, speciális karakter (20H…2FH, 3AH…40H, 58H…60H, 78H…7EH) • 33db vezérlő karakter (00H…1FH és 7FH.) • adatforgalom szervezésére, az írógép-nyomtató vezérlésére (pl.: CR=kocsi vissza, LF=soremelés,…), ill. a megelőző karakter törlésére (DEL) stb. szolgálnak
Bevezető • Számkódok • ASCII kódok
Bevezető • Jelek • A jel valamely fizikai mennyiség értéke vagy értékváltozása amely információ megjelenítésére továbbítására vagy tárolására alkalmas • A gyakorlatban a jeleket villamos mennyiséggé alakítjuk • Feszültség (ritkábban áram) • Ez a feszültség más fizikai mennyiséget reprezentálhat • Szenzorok – jelátalakítók (pl: nyomás → feszültség) • Analóg jel • Digitális jel
Bevezető • Jelek • Analóg jel: • Időbeli lefolyása általában folytonos függvénnyel ábrázolható • Pl: • mikrofonnal (elektroakusztikus átalakító) előállított villamos jel (feszültség) • Digitális jel: • Az információt diszkrét jelképekben tartalmazó jel • Pl. számként kódolt formában • Digitális rendszerekben időben és értékkészletben is kvantált jelek
Bevezető • Jelek • Digitális jel: Példa • Minta Bináris kód • 0 000 • 4 100 • 5 101 • 4 100 • 3 011 • 4 100 • 6 110 • 7 111 • 5 101 • 3 011 • 3 011 • 4 100 • 4 100
Bevezető • Analóg és digitális áramkörök • Analóg áramkörök • A be- és kimeneti mennyiségek folytonosak • Fokozott zajérzékenység • Alkalmas folytonos jelek közvetlen feldolgozására • Digitális áramkörök • A be- és kimeneti feszültségek csak diszkrét értékeket vehetnek fel • Adott mértékig érzéketlen a zajokra • Digitális jelekkel végez műveleteket • Üzembiztosabb működés
A Bool-algebra alapjai • Formális logika • Kialakulása: ókori Görögország • Az emberi gondolkodás szabályainak keresése és megfogalmazása • Ismeretek feldolgozása, értelmezése • Állítások(premisszák) összekapcsolása • Következtetések(konklúziók) létrehozására • Egyszerűsítések • Egy állítás vagy IGAZ vagy HAMIS • Egy esemény bekövetkezik vagy nem • Logikai változóként kezelhetjük, amely két értéket vehet fel • A logikai változók bináris számrendszerben jól szimbolizálhatók IGAZ HAMIS TRUE FALSE HIGH LOW 1 0
A Bool-algebra alapjai • Logikai (Bool) algebra • George Boole és Augustus De Morgan nevéhez fűződik • Halmazelméleti tárgyalási mód, amelyben az elemek száma kettő (hamis és igaz) • Az elemek jelölésére használt 0 és 1 nem számjegyek, hanem szimbólumok, amihez a hamis és igaz értéket rendeljük • A logikai mennyiségek leírásának módjai • Algebrai alak • Egyenlőség formájában adjuk meg a mennyiség logikai értékét • Grafikus alak • Euler-kör, Veitch-diagram • Idődiagram • A logikai változó értéke grafikusan ábrázolva az idő függvényében • Igazságtáblázat • A változók táblázatba rendezve, azok minden érték kombinációja szerepel • Szimbolikus jelek • A változók kapcsolatainak szimbólumok felelnek meg (kapcsolási rajz) • Utasításlista • A változók közötti kapcsolatot utasításokkal fogalmazzuk meg (Assembly, VHDL)
A Bool-algebra alapjai • Logikai (Bool) algebra • Logikai alapműveletek • „VAGY” művelet, logikai összeadás • „ÉS” művelet, logikai szorzás • „Tagadás” művelet, negálás inverz
A Bool-algebra alapjai • Logikai (Bool) algebra • Logikai VAGY kapcsolat • Legalább egy állításnak igaznak kell lennie ahhoz, hogy a következtetés is igaz legyen. • Másként fogalmazva • VAGY az 1, 2 VAGY az n-edik állításnak igaznak kell lennie, hogy a következtetés is igaz legyen. • Pl: • Ha Judit és Sándor apja vagy anyja azonos, akkor Judit és Sándor testvérek • Szimbolikus jelképek: • Veitch-diagram: • Igazságtáblázat: • Algebrai alak: • Y = A+B = A || B • A • Y • B • Utasításlista: • (VHDL) • Y <= A or B • A • Y • B • Idődiagram: • Y
A Bool-algebra alapjai • Logikai (Bool) algebra • Logikai ÉS kapcsolat • Minden állításnak igaznak kell lennie ahhoz, hogy a következtetés is igaz legyen • Másként fogalmazva • az egyik ÉS a másik ÉS az n.-edik állításnak is igaznak kell lennie, hogy a következtetés is igaz legyen • Pl: • Ha Dénes és Sándor egy napon születtek és azonosak a szüleik, akkor Dénes és Sándor ikrek • Szimbolikus jelképek: • Veitch-diagram: • Igazságtáblázat: • Algebrai alak: • Y = A·B = AB = A && B • A • Y • B • Utasításlista: • (VHDL) • Y <= A and B • A • Y • B • Idődiagram: • Y
A Bool-algebra alapjai • Logikai (Bool) algebra • Tagadás, Negálás, NEM, Inverzió • Ha egy állítás igaz, akkor a következtetés hamis, • Másként fogalmazva • Ha egy állítás hamis, akkor a következtetés igaz. • Pl: • Ha holnap esik az eső, akkor nem megyünk kirándulni • Szimbolikus jelképek: • Veitch-diagram: • Igazságtáblázat: • Algebrai alak: • Y = A = !A • – • A • Y • Utasításlista: • (VHDL) • Y <= not A • Y • A • Idődiagram: • Y
A Bool-algebra alapjai • Logikai (Bool) algebra • Alaptételek, műveleti szabályok • Állandókkal végzett műveletek
A Bool-algebra alapjai • Logikai (Bool) algebra • Alaptételek, műveleti szabályok • Állandókkal és változókkal végzett műveletek • Együtthatás, ugyanazon változóval végzett műveletek
A Bool-algebra alapjai • Logikai (Bool) algebra • Alaptételek, műveletek tulajdonságai: • Kommutativitás (felcserélhetőség) A + B = B + A A ∙ B = B ∙ A • Asszociatív tulajdonság (társíthatóság) A + (B + C) = (A + B) + C = (A + C) + B = A + B + C A ∙ (B ∙ C) = (A ∙ B) ∙ C = (A ∙ C) ∙ B = A ∙ B ∙ C • Disztributivitás A ∙(B + C) = (A ∙ B) + (A ∙ C) A + (B ∙ C) = (A + B) ∙ (A + C)
A Bool-algebra alapjai • Logikai (Bool) algebra • Alaptételek: • Abszorbciós tétel • De-Morgan tételek • Több változó esetén is igaz
A Bool-algebra alapjai • Logikai (Bool) algebra • Logikai függvények • A független változók és a függő változók is logikai jelek (csak 0 vagy 1 értékűek lehetnek) • A változókkal VAGY, ÉS ill. Invertálás műveleteket végzünk. • Az alapműveletek definícióinál két, ill. egyváltozós függvényeket definiáltunk • Y = A+B • Y = AB • Y = A • A független változók számának ismeretében meghatározhatjuk az összes lehetséges különböző logikai függvényt • n független változó esetén 2n változó kombináció • Minden változókombinációnál a függvény értéke 0 vagy 1 lehet • Összesen 2 • Pl: • Egyváltozós függvények száma 4 • Kétváltozós függvények száma 16 • ….. • Ötváltozós függvények száma 4 294 967 296 • – • 2n
A Bool-algebra alapjai • Logikai (Bool) algebra • Logikai függvények • Kétváltozós logikai függvények táblázatos formában • Bal oldalon a független változók • A 16 lehetséges logikai függvény Y1-Y15-ig 13 = 1·23+1·22+0·21+1·20 • ←20 • ←21 • ←22 • ←23 • ____ • __ • – • – • VAGY • VAGY • 0 • B • A • ÉS • ÉS • 1 • B • A Egyargumentumos Egyargumentumos Logikai konstansok
A Bool-algebra alapjai • Logikai (Bool) algebra • Logikai függvények • – • Logikai konstansok: • Y0 = 0 • Y15 = 1 • Egyargumentumos: • Y3 = A • Y5 = B • Y10 = B • Y12 = A • Antivalencia, Ekvivalencia: • Y6 = A + B = AB+AB (XOR) • Y9 = A · B = AB+AB (XNOR) • Inhibíció: • Y2 = AB • Y4 = AB • Implikáció: • Y11 = A+B • Y13 = A+B • ÉS-VAGY: • Y8 = AB (AND) • Y14 = A+B (OR) • NEM-VAGY, NEM-ÉS: • Y1 = A+B (NOR) • Y7 = AB (NAND) • – • – • O • – – • O • ___ • – • – • __ • – • – • Univerzális műveletek: • Minden más logikai függvény felépíthető belőlük • – • –
A Bool-algebra alapjai • Logikai (Bool) algebra • Logikai kapuk jelképi jelölései VHDL operátor Y <= A or B Y <= A and B Y <= not A Y <= A nor B Y <= A nand B Y <= A xor B
A Bool-algebra alapjai • Logikai (Bool) algebra • Gyakorló feladatok 1. • Számrendszerek • Bool algebra • Alaptételek • Műveleti szabályok
Logikai hálózatok • Logikai hálózatnak nevezzük azokat a rendszereket • melyeknek bemeneti illetve kimeneti jelei logikai jelek, • a kimeneti jeleket a bemeneti jelek függvényében többé-kevésbé bonyolult logikai műveletsorozat eredményeként állítják elő. • A logikai hálózatok két nagy csoportja • Kombinációs hálózatok • Kombinációs hálózatoknak nevezzük azokat a logikai hálózatokat, melyeknek kimeneti jelei csak a bemeneti jelek pillanatnyi értékétől függnek • „Emlékezet” nélküli hálózat • Sorrendi hálózatok • Sorrendi (szekvenciális) hálózatoknak nevezzük azokat a logikai hálózatokat, melyek kimeneti jelei nemcsak a pillanatnyi bemeneti jelkombinációtól függnek, hanem attól is, hogy korábban milyen bemeneti jelkombinációk voltak
Kombinációs hálózatok • Tulajdonságok • A bemenetek pillanatnyi állapota (a tranziensektől eltekintve egyértelműen meghatározza a kimenetek állapotát, függetlenül attól, hogy korábban milyen bementi állapottal vezéreltük a hálózatot • A kombinációs hálózatokban minden bemeneti kombináció egyértelműen és kizárólagosan meghatározza a kimeneti kombinációt • A kimeneti kombinációból viszont általában nem tudjuk egyértelműen meghatározni az azt előidéző bemeneti kombinációt, mert nem követelmény, hogy különböző bemeneti kombinációk minden esetben más-más kimeneti kombinációt hozzanak létre
Kombinációs hálózatok • Példa: Szavazatszámláló • A bizottság 3 tagból áll, többségi szavazással döntenek. A szavazás eredménye IGEN, ha legalább 2 tag IGEN-nel szavaz • A működést leíró igazságtáblázat
Kombinációs hálózatok • Példa: Szavazatszámláló • Leírás Bool-algebrai összefüggésekkel (logikai függvénnyel) • Az egyenlet egyszerűsíthető • Felhasználva hogy • A működést leíró egyszerűsített logikai egyenlet: • VHDL leírás Y <= (B and A)or(C and A)or(C and B)
Kombinációs hálózatok • Példa: Szavazatszámláló • Leírás kapcsolási rajzzal (kapcsolási rajzjelekkel) • Az egyszerűsítéssel kevesebb kapuval, és kevesebb kapubemenettel realizálható a hálózat • Egyszerűsítés nélkül: 4 db 3 bemenetű AND és 1 db 4 bemenetű OR kapu kell • Egyszerűsítéssel: 3 db 2 bemenetű AND és 1 db 3 bemenetű OR kapu kell
Kombinációs hálózatok • A feladat megoldás menete • A szöveges megfogalmazás alapján értéktáblázat készítése • A függvény 1 értékéhez tartozó változókombinációk kikeresése • Ezeknél a kombinációknál a változók ÉS kapcsolatát (logikai szorzatát) vesszük • A változók a kombinációnak megfelelően eredeti vagy negált értékükkel szerepelnek • A működést leíró logikai függvénykapcsolatot a változókombinációk szorzatának VAGY kapcsolata (logikai összege) adja meg
Kombinációs hálózatok • Logikai függvények normál (kanonikus) alakjai • Diszjunktív normál alak • Logikai változó szorzatok összege, ahol a függvény 1 értékű • Minden szorzatban minden változó pontosan egyszer szerepel (eredeti vagy negált formában) • Diszjunktív teljes normál alak • Pl: előző példa • Ha nem minden szorzatban szerepel minden változó • Diszjunktív normál, de nem diszjunktív teljes normál alak • Pl: előző példa egyszerűsített alakja • A diszjunktív teljes normál alakban szereplő szorzatok: mintermek • Jelölésük mni • n: változók száma • i: a függvény melyik mintermje • A mintermek megfelelő összeadásával bármelyik függvény előállítható • A diszjunktív teljes normál alak rövidített jelölésére • Az i indexek felsorolása S jel után
Kombinációs hálózatok • Logikai függvények normál (kanonikus) alakjai • Diszjunktív normál alak • Szavazatszámláló példa m33 m35 m36 m37 Y = S(3,5,6,7) =F3232 232 = 27+26+25+23 = 1110 10002 • ←20 • ←21 • ←22 • ←23 • ←24 • ←25 • ←26 • ←27 3
Kombinációs hálózatok • Logikai függvények normál (kanonikus) alakjai • Konjuktív normál alak • Logikai változó összegek szorzata, ahol a függvény 0 értékű • Minden összegben minden változó pontosan egyszer szerepel (eredeti vagy negált formában) • Konjuktív teljes normál alak • Pl: • Ha nem minden összegben szerepel minden változó • Konjuktív normál, de nem konjuktív teljes normál alak • Pl: • A konjuktív teljes normál alakban szereplő szorzatok: maxtermek • Jelölésük Min • n: változók száma • i: a függvény melyik maxtermje • A konjuktív teljes normál alak rövidített jelölésére • Az i indexek felsorolása P jel után • A konjuktív normál alak algebrai átalakításokkal megkapható a diszjunktív normál alakból • És fordítva is igaz 3 = P(3, 5, 7)
Kombinációs hálózatok • Logikai függvények normál (kanonikus) alakjai • Átalakítások a normál alakok között • Algebrai átalakításokkal, a De-Morgan azonosságok felhasználásával • Pl: • Minterm alak: • Az inverz függvény: • Algebrai átalakítások: • Maxterm alak:
Kombinációs hálózatok • Feladatmegoldás menete • Pl. diszjunktív normál alak felírása az igazságtáblából • Egyszerűsített függvényalak keresése • A hálózat minél egyszerűbb legyen • Minél kevesebb kapu • Minél kevesebb kapubemenet • Minimalizálási eljárások • Algebrai átalakítások • Keressünk olyan logikai szorzatokat amelyekben a szorzat egy része megegyezik • Pl: • A közös részt kiemeljük, a zárójelben maradó rész 1 lesz • A változó és negáltjának összege marad • Minél bonyolultabb, minél több változós egy logikai függvény, annál nehezebb megtalálni milyen algebrai összevonások lehetségesek • További egyszerűsítési eljárások
Kombinációs hálózatok A B • Példa: Digitális komparátor • Az A1A0 és B1B0 két kétbites bináris szám összehasonlítása • Négy bemenet, három kimenet • A = A1·21+A0·20 A = 0,1,2,3 • B = B1·21+B0·20 B = 0,1,2,3 • Y0 = 1 ha A > B egyébként 0 • Y1 = 1 ha A = B egyébként 0 • Y2 = 1 ha A < B egyébként 0
Kombinációs hálózatok • Példa: Digitális komparátor • Y0 = 1 ha A > B egyébként 0 • Y0 = A1·A0·B1·B0 + A1·A0·B1·B0 + A1·A0·B1·B0 + A1·A0·B1·B0 + A1·A0·B1·B0 + A1·A0·B1·B0 • A fenti logikai függvény egyszerűsítése, már sokkal nehezebb feladat • Y0 = A1·B1 + A0·B1·B0 + A1·A0·B0 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Kombinációs hálózatok • Karnaugh-táblás egyszerűsítés • Grafikus leírási mód • Az igazságtáblázat célszerűen átalakított változata • Előnye: gyorsabb, biztosabban jó eredményt adó, kevesebb munkát igénylő módszer • Hátránya:legfeljebb 4 (esetleg 5) változóig használható • 2 változós Karnaugh tábla • A változókat a tábla szélein tüntetjük fel • A változókhoz tartozó 0 illetve 1 értékek a mellettük lévő sorokra, ill. oszlopokra vonatkoznak • Az egyes cellákhoz az adott változókombinációnak megfelelő minterm tartozik • Minden mintermnek egy és csak egy helye van a Karnaugh-táblán • Az egymás melletti mintermek egyetlen változóban térnek el egymástól • Az algebrai egyszerűsítéseknél is ilyen szorzatokat kerestünk
Kombinációs hálózatok • Karnaugh-táblás egyszerűsítés • 3 változós Karnaugh tábla • Az egymás melletti mintermek egyetlen változóban térnek el egymástól • Egylépéses Gray-kód szerint számozzuk a sorokat oszlopokat • A függvényt úgy ábrázoljuk a táblán, hogy a függvényben szereplő minterm cellájába 1-est írunk