Download - Osnove logičke algebre
Sinteza logičkih kola 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
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
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� 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)
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Tipična funkcionalnost CAD alata� Koraci u projektovanju:
� Tabela istine, shematski prikaz - način iskazivanja zahtjeva
� Sinteza i optimizacija (sinteza- transformiše � 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
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
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živihlogičkih kola
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
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 literala u kojoj se ni jedna promjenljiva ne javlja više od jednaput, naziva se elementarna konjukcija.
� 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.
Coypright: Lejla Banjanović-Mehmedović
ABD
A B D∨ ∨
Projektovanje logičkih sistema
Konjuktivne i disjunktivne forme� Disjunktivna forma - logički izraz koji ima oblik
disjunkcije više prostijih izraza (članova).
� Disjunktivna normalna forma (DNF) ili suma proizvoda (SOP) – svaki od izraza je elementarna
A BC AB∨ ∨����
proizvoda (SOP) – svaki od izraza je elementarna konjukcija .
� 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
Coypright: Lejla Banjanović-Mehmedović
A BC ABC∨ ∨
Y ABC ABC ABC= ∨ ∨Projektovanje logičkih sistema
Konjuktivne i disjunktivne forme� Konjuktivna forma - logički izraz koji ima oblik
konjukcije više prostijih izraza (članova)
� Konjuktivna normalna forma (KNF) ili proizvod suma (POS) – svaki od izraza je elementarna disjunkcija
( )ABC B C∨
(POS) – svaki od izraza je elementarna disjunkcija
� 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
Coypright: Lejla Banjanović-Mehmedović
( )( )A B C A B C∨ ∨ ∨
( )( )( )Y A B C A B C A B C= ∨ ∨ ∨ ∨ ∨ ∨
Projektovanje logičkih sistema
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.
� Minimalna konjuktivna normalna forma(MKNF)
Coypright: Lejla Banjanović-Mehmedović
..( )
..( )
Y ABC ABC D DNF
Y AB D MDNF
= ∨ ∨= ∨
Projektovanje logičkih sistema
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
A B C Y
0 0 0 1
0 0 1 1vrijednost 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.
� Tražena SDNF je disjunkcija svih takvih mintermi.
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
..( )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
A B C Y
0 0 0 1
0 0 1 1vrijednost 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.
� Tražena SKNF je konjukcija svih takvih makstermi.
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
( )( )( )..( )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...
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 1: Sinteza funkcije korištenjem
mintermi i makstermi
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 1: Realizacija funkcije
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
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, 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č.
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 2: Kontrola rasvjete
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 2: Kontrola rasvjete
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 3: Selekcija ulaznih
vrijednosti
� U računarskim sistemima, neophodno izabrati podatak sa tačno jednog od brojnih ulaza.
� Pretpostavimo dva ulazna signala x1 i x2. � Pretpostavimo dva ulazna signala x1 i x2.
� Njihove vrijednosti se mjenjaju u vremenu u nekim regularnim intervalima u zavisnosti od selekcije kontrolnog signala s.
� Logična tri ulaza (x1,x2,s)
� Izlaz isti kao ulaz x1 ako je s = 0, isti kao x2 ako je s = 1.
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 3: Selekcija ulaznih
vrijednosti
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 3: Selekcija ulaznih
vrijednosti
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 4: Sistem za spaljivanje
toksičnih otpada
� Redudantni sistem:� Sa više senzora
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
� Sa više senzora
� Najmanje 2 senzora detektuju vatru, otvoreni ventili
Primjer 4: Tabela istine za analizirani
sistem
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 4: Realizacija logičke funkcije
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
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∨ =izraziti preko ove dvije operacije:
� Dovoljne negacija i disjunkcija, jer vrijedi formula:
� 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
Coypright: Lejla Banjanović-Mehmedović
X Y XY∨ =
XY X Y= ∨
Projektovanje logičkih sistema
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.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.
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
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 � 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.
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
Realizacija logičkih kola pomoću NI
kola
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
Realizacija elementarnih kola pomoću
NILI kola
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
DeMorgan’s teorema u formi
logičkih gejtova
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Implementacija SOP-a korištenjem
NAND gejtova
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Implementacija POS-a korištenjem
NOR gejtova
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
� 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
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
� NI funkcija
Primjer 5: Komparator signala
SOP: POS:
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
Primjer 6: Pumpni sistem� Rad svake od četiri pumpi se kontroliše pomoću
električnog signala koji ima napon od 5V, ako je pumpa u radu, a nulti napon ako je u kvaru.
� Neophodno je da bar dvije od četiri pumpe budu stalno � 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.
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
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
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
vrijednost (pumpa u radu), dok su ostale jednake nuli.
Primjer 6: Pumpni sistem
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
� Za realizaciju je neophodno ukupno 14 NILI kola (8+6invertora, označenih kružićima)
Primjer 7: Sistem rezervoara� Za održavanje nivoa (dopunjavanjem) u 4
rezervoara (A,B,C,D), na raspolaganju su 2 pumpe, P1 i P2, što je dovoljno u normalnomrežimu. Kada u nekom rezervoaru nivo padneispod dozvoljenog, automatski se generiše signal koji uključuje pumpu radi korekcije nivoa. koji uključuje pumpu radi korekcije nivoa.
� Pumpu P2 može da “pozove” svaki od 4 rezervoara a pumpu P1 samo rezervoari C i D.
� Alarmantna situacija nastaje kada neki odrezervoara ne može da priključi pumpu jer je zauzeta.
� Formirati kolo za generisanje alarmnog signalapomoću NI logičkih kola.
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
Primjer 7: Sistem rezervoara
Pozivni signal ima vrijednost 1 ako rezervoar poziva pumpu, a 0 ako nema potrebe za pumpom
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
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
Coypright: Lejla Banjanović-MehmedovićProjektovanje logičkih sistema
Primjer 8: Solarni sistem zagrijavanja
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
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 � 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
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 8: Solarni sistem zagrijavanja� Postoji nekoliko senzora koji daju nekoliko signala:
� Kada prostorija treba toplotu, signal T postaje TRUE. Ovaj signal se dobija od temperaturnog senzora (termostata) u prostoriji.prostoriji.
� Kada je kameni blok topliji od prostorije (može davati toplotu), B>P signal 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.
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 8: Solarni sistem zagrijavanjaT (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
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
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
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 8: Solarni sistem zagrijavanja� Prikaz minimalne forme funkcije, prikazane
pomoću NAND kola:
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 9: Sistem za pakovanje
Projektovanje logičkih sistema 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
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
� 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.
Projektovanje logičkih sistema Copyright: Lejla Banjanović-Mehmedović
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
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
Projektovanje logičkih sistema Copyright: Lejla Banjanović-Mehmedović
Primjer 9: Sistem za pakovanje
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović
Primjer 9: Sistem za pakovanje
Projektovanje logičkih sistema Coypright: Lejla Banjanović-Mehmedović