Sinteza logičkih kola Vanr.prof.dr.Lejla Banjanović- Mehmedović
Sadržaj izlaganja Procedura projektovanja logičkih kola Osnovni elementi u projektovanju logičkih kola Primjeri sinteze logičkih kola
Koraci u projektovanju logičkih sistema Razumjeti problem Šta logičko kolo treba da radi Šta su ulazi (podaci, kontrola) i izlazi Nacrtati block diagram ili sliku Formulisati problem korištenjem odgovarajuće forme projektovanja Tabela istine Može zahtjevati kodiranje simboličkih ulaza i izlaza Izabrati implementacioni cilj (diskretna logička kola) Slijediti implementacionu proceduru (CAD alat, hardverski jezik, npr.verilog)
Tipična funkcionalnost CAD alata Koraci u projektovanju: Tabela istine, shematski prikaz - način iskazivanja zahtjeva Sinteza i optimizacija (sinteza- transformiše dizajnerske zahtjeve u logički dizajn) Simulacija Fizički dizajn (transformiše logički graf u layout (blueprint) za fabrikaciju
Sinteza logičkih kola Zadatak sinteze logičkih kola se rješava u četiri etape: Formulisanje tablice istinitosti na osnovu zadate namjene kola Generisanje odgovarajuće Bulove funkcije Uprošćavanje ili minimizacija dobijene Bulove funkcije Realizacija minimizovane Bulove funkcije pomoću raspoloživih logičkih kola
Konjuktivne i disjunktivne forme Literal bilo koja logička promjenljiva ili njena negacija. Logički izraz koji je literal ili predstavlja konjukciju više literala u kojoj se ni jedna promjenljiva ne javlja više od jednaput, naziva se elementarna konjukcija. ABD Logički izraz koji je literal ili predstavlja disjunkciju više literala u kojoj se ni jedna promjenljiva ne javlja više od jednaput, naziva se elementarna disjunkcija. A B D
Konjuktivne i disjunktivne forme Disjunktivna forma - logički izraz koji ima oblik disjunkcije više prostijih izraza (članova). A BC AB Disjunktivna normalna forma (DNF) ili suma proizvoda (SOP) svaki od izraza je elementarna konjukcija. A BC ABC Za funkciju n varijabli, forma proizvoda, u kojoj se svaka od n varijabli pojavljuje jednom naziva se minterma. Savršena disjunktivna normalna forma (SDNF) - disjunktivna normalna forma mintermi Y = ABC ABC ABC
Konjuktivne i disjunktivne forme Konjuktivna forma -logički izraz koji ima oblik konjukcije više prostijih izraza (članova) ABC( B C) Konjuktivna normalna forma (KNF) ili proizvod suma (POS) svaki od izraza je elementarna disjunkcija A( B C)( A B C) Za funkciju n varijabli, forma sume, u kojoj se svaka od n varijabli pojavljuje jednom naziva se maksterma. Savršena konjuktivna normalna forma (SKNF) - konjuktivna normalna forma makstermi Y = ( A B C)( A B C)( A B C)
Konjuktivne i disjunktivne forme Dužina neke disjunktivne ili konjuktivne normalne forme je ukupan broj literala koji se javljaju u njoj, tj. ukupan broj pojavljivanja svake od promjenljivih koja se javlja u funkciji. (npr. 3 ili 8 ili 9). Za logičku funkciju kaže se da je data u minimalnoj disjunktivnoj normalnoj formi (MDNF) ukoliko je data u disjunktivnoj normalnoj formi i ukoliko ne postoji kraća disjunktivna normalna forma koja joj je ekvivalentna. Y = ABC ABC D..( DNF) Y = AB D..( MDNF) Minimalna konjuktivna normalna forma(mknf)
Formiranje logičkog izraza iz kombinacione tabele Da bi se formirao izraz u obliku SDNF koji odgovara zadatoj kombinacionoj tabeli, za svaki red tabele u kojem se uzima vrijednost 1 treba formirati mintermu u kojoj one promjenljive koje u tom redu tabele imaju vrijednost 0 ulaze sa negacijom, a one koje imaju vrijednost 1 ulaze bez negacije. A B C Y 0 0 0 1 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 0 Tražena SDNF je disjunkcija svih takvih 1 1 1 1 mintermi. Y = ABC ABC ABC ABC ABC..( SDNF)
Formiranje logičkog izraza iz kombinacione tabele Da bi se formirao izraz u obliku SKNF koji odgovara zadatoj kombinacionoj tabeli, za svaki red tabele u kojem se uzima vrijednost 0 treba formirati makstermu u kojoj one promjenljive koje u tom redu tabele imaju vrijednost 0 ulaze bez negacije, a one koje imaju vrijednost 1 ulaze sa negacijom. A B C Y 0 0 0 1 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 0 Tražena SKNF je konjukcija svih takvih 1 1 1 1 makstermi. Y = ( A B C)( A B C)( A B C)..( SKNF)
Minterme i maksterme 3 ulazne varijable Realni sistemi su složeni, sa većim brojem varijabli...
Primjer 1: Sinteza funkcije korištenjem mintermi i makstermi
Primjer 1: Realizacija funkcije
Primjer 2: Kontrola rasvjete Velika prostorija ima troje vrata i prekidač u blizini vrata za kontrolu rasvjete u sobi. Moguće je uključiti ili isključiti rasvjetu, promjenom stanja svakog od prekidača (tri ulazne varijable (x1,x2,x3)). Pretpostavimo da je svjetlo isključeno, ako su svi prekidači otvoreni (isključeni). Zatvaranje bilo kojeg od prekidača, će upaliti svjetlo. Potom uključenje drugog prekidača će isključiti rasvjetu. Rasvjeta će biti uključena ako je tačno jedan prekidač uključen (zatvoren) i isključena ako su dva (ili nijedan) prekidač uključen. Ako je rasvjeta isključena, kada su dva prekidača zatvorena, mora biti moguće je uključiti, pritiskom na treći prekidač.
Primjer 2: Kontrola rasvjete
Primjer 2: Kontrola rasvjete
Primjer 3: Selekcija ulaznih vrijednosti U računarskim sistemima, neophodno izabrati podatak sa tačno jednog od brojnih ulaza. Pretpostavimo dvaulaznasignala x1 ix2. Njihove vrijednosti se mjenjaju u vremenu u nekim regularnim intervalima u zavisnosti od selekcije kontrolnogsignalas. Logična tri ulaza (x1,x2,s) Izlaz isti kao ulazx1 ako je s = 0, isti kao x2 ako jes = 1.
Primjer 3: Selekcija ulaznih vrijednosti
Primjer 3: Selekcija ulaznih vrijednosti
Primjer 4: Sistem za spaljivanje toksičnih otpada Redudantni sistem: Sa više senzora Najmanje 2 senzora detektuju vatru, otvoreni ventili
Primjer 4: Tabela istine za analizirani sistem
Primjer 4: Realizacija logičke funkcije
Univerzalne logičke operacije Svaka logička funkcija se može izraziti preko operacija konjukcije, disjunkcije i negacije. Dovoljne negacija i konjukcija, jer se i disjunkcija može izraziti preko ove dvije operacije: X Y = XY Dovoljne negacija i disjunkcija, jer vrijedi formula: XY = X Y Svaka logička funkcija se može izraziti preko Shefferove operacije(negacija konjukcije) ili alternativno preko Pierceove funkcije (negacija disjunkcije); nazivaju se univerzalne logičke operacije. NAND i NOR univerzalna logička kola
Realizacija logičkih kola pomoću NI i NILI kola Svako logičko kolo se može realizovati pomoću NI ili NILI logičkih kola, što je od praktičnog značaja pri realizaciji integralnih digitalnih kola. Problemi realizacije Bulovih funkcija pomoću isključivo NI ili NILI kola (homogenizacija kola) mogu se rješiti i analitičkim postupkom, primjenom De Morganovih pravila.
Realizacija logičkih kola pomoću NI i NILI kola Nakon uvođenja negacija u polazni izraz (parcijalno) primenjujemo De Morganove teoreme tako da: eliminišemo zbirove, prevodeći ih u negirane proizvode, kod realizacije pomoću NI kola. eliminišemo proizvode, prevodeći ih u negirane zbirove, kod realizacije pomoću NILI kola.
Realizacija logičkih kola pomoću NI kola
Realizacija elementarnih kola pomoću NILI kola
DeMorgan steorema u formi logičkih gejtova
ImplementacijaSOP-a korištenjem NAND gejtova
ImplementacijaPOS-a korištenjem NOR gejtova
Primjer 5: Komparator signala Neka je potrebno projektovati logičko kolo koje ima funkciju komparatora dva signala x i y. Izlazni signal treba da bude:
Primjer 5: Komparator signala SOP: NI funkcija POS:
Primjer 6: Pumpni sistem Rad svake od četiri pumpi se kontroliše pomoću električnog signala koji ima naponod 5V, ako je pumpa u radu, a nulti napon ako je u kvaru. Neophodno je da bar dvije od četiri pumpe budu stalno u radu, a u protivnom bi trebalo aktivirati zvučni alarm. Alarmni uređaj se aktivira naponskim signalom od 5V. Projektovati logičko kolo, sastavljeno od NILI kola, kojeće u slučaju potrebe aktivirati alarmni uređaj.
Primjer 6: Pumpni sistem Funkcija alarma ima logičku vrijednost 1 (alarmantna situacija) ako nijedna ili najviše jedna od 4 promenljivih ima jediničnu vrijednost (pumpa u radu), dok su ostale jednake nuli.
Primjer 6: Pumpni sistem Za realizaciju je neophodno ukupno 14 NILI kola (8+6invertora, označenih kružićima)
Primjer 7: Sistem rezervoara Zaodržavanjenivoa(dopunjavanjem) u 4 rezervoara(a,b,c,d), naraspolaganjusu2 pumpe, P1 i P2, štoje dovoljnou normalnom režimu. Kada u nekom rezervoaru nivo padne ispoddozvoljenog, automatskise generišesignal kojiuključujepumpuradi korekcijenivoa. PumpuP2 možeda pozove svakiod 4 rezervoaraa pumpup1 samorezervoari C i D. Alarmantna situacija nastaje kada neki od rezervoarane možedapriključipumpujerje zauzeta. Formirati kolo za generisanje alarmnog signala pomoću NI logičkih kola.
Primjer 7: Sistem rezervoara Pozivni signal ima vrijednost 1 ako rezervoar poziva pumpu, a 0 ako nema potrebe za pumpom Alarm ima vrednost 1 ako 3 ili više rezervoara traži pumpu, ili ako pumpu istovremeno pozivaju rezervoari A i B
Primjer 7: Sistem rezervoara
Primjer 8: Solarni sistem zagrijavanja
Primjer 8: Solarni sistem zagrijavanja Sunce zagrijava solarni kolektor, koji može prenositi toplotu u termo-akumulacijske blokove kamenja (za pohranjivanje toplote) ili direktno u kuću. Ventilator VBP se koristi za pomjeranje topline iz kamenih blokova u prostoriju Ventilator VSP se koristi za pomjeranje topline iz solarnog kolektora u prostoriju Ventilator VSB se koristi za pomjeranje topline iz solarnog kolektora u kamene blokove
Primjer 8: Solarni sistem zagrijavanja Postoji nekoliko senzora koji daju nekoliko signala: Kada prostorija treba toplotu, signal Tpostaje TRUE. Ovaj signal se dobija od temperaturnog senzora (termostata) u prostoriji. Kada je kameni blok topliji od prostorije (može davati toplotu),b>psignal je TRUE. Ovaj signal se dobija komparacijom dvije vrijednosti temperature (dva temp. senzora). Ista logika se koristi i za: Signal S>P kada je solarni kolektor topliji od prostorije Signal S>B kada je solarni kolektor topliji od kamenih blokova.
Primjer 8: Solarni sistem zagrijavanja T (A) B>P (B) S>P (C) S>B (D) VBP VSP VSB 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 1 0 1 1 0 0 0 0 0 1 1 1 0 0 1 1 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 0 1 0 1 1 0 1 0 1 1 0 0 1 0 0 1 1 0 1 1 0 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0
Primjer 8: Solarni sistem zagrijavanja Zapis u SoP obliku i minimizacija Boole-ovom algebrom
Primjer 8: Solarni sistem zagrijavanja Prikaz minimalne forme funkcije, prikazane pomoću NAND kola:
Primjer 9: Sistem za pakovanje Copyright: Lejla Banjanović-Mehmedović
Primjer 9: Sistem za pakovanje Transportna traka kreće na signal START Prilikom aktivacije senzora FOTO, ukoliko je traka aktivna, otvara se ventil koji puni ambalažu dok se ona nalazi u polju fotosenzora. Nakon toga roba s trake izlazi u kutiju. Sistem radi dok se ne aktivira senzor VAG (ograničenje mase kutije proizvoda), koji mjeri masu kutije u koju silaze proizvodi s trake Ukoliko želi, radnik može omogućiti da se zaobiđe blokada trake preopterećenjem vage, aktivacijom preklopke MASAx2. U tom slučaju traka nastavlja raditi iako je vaga preopterećena. START FOTO VAGA MASAx2 VEN TRA 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 0 0 1 0 1 1 0 1 0 0 0 1 0 1 1 0 1 1 1 0 0 1 1 1 1 0 1 1 1 1 1 1 0 0 0 1 1 1 1 1 1 Copyright: Lejla Banjanović-Mehmedović
Primjer 9: Sistem za pakovanje START=A, FOTO=B, VAGA=C, MASAx2=D) VEN: VEN=ABC'D' + ABC'D + ABCD TRA: TRA=AB'C'D' + AB'C'D + AB'CD + ABC'D' + ABC'D + ABCD Minimizacija: VEN: VEN=ABC'(D'+D) + ABCD=ABC' + ABCD= AB(C'+CD)=AB(C'+D)=ABC' +ABD TRA: TRA=AB'C'(D'+D) + ABC'(D'+D) + ACD(B'+B)=AB'C' + ABC' + ACD=AC'(B'+B) +ACD= =AC' +ACD=A(C'+CD)=A(C'+C'D+CD)= A(C'+D(C +C))= AC' +AD Copyright: Lejla Banjanović-Mehmedović
Primjer 9: Sistem za pakovanje
Primjer 9: Sistem za pakovanje