arhitektura ra čunara
DESCRIPTION
Arhitektura ra čunara. vežbe - čas 1 i 2: Minimizacija logi čkih funkcija. Mladen Nikoli ć URL: http://www.matf.bg.ac.yu/~nikolic e-mail: [email protected]. Bulova algebra. Klod Š enon je 1938. uo č io da se Bulova algebra mo ž e koristiti u re š avanju problema digitalne elektronike. - PowerPoint PPT PresentationTRANSCRIPT
1
Arhitektura raArhitektura računaračunara
Mladen NikolićURL: http://www.matf.bg.ac.yu/~nikolic
e-mail: [email protected]
vežbe - čas vežbe - čas 1 i 2: Minimizacija logi1 i 2: Minimizacija logičkih funkcijačkih funkcija
Uvod u organizaciju računara 2
Bulova algebraBulova algebra
Klod Šenon je 1938. uočio da se Bulova algebra može koristiti u rešavanju problema digitalne elektronike.
Bulova algebra se pokazala posebno korisna u sledećim zadacima:– Opis elektronskog kola kao logičke funkcije
ulaza kola.– Nalaženje najboljeg načina realizacije te
funkcije.
Uvod u organizaciju računara 3
Elementi logikeElementi logike
Logičke konstante: 0 i 1Logičke promenljive: A, B, C…Logičke (iskazne) formule su:– Logičke konstante i promenljive.– Ako su P i Q logičke formule, onda su i
(¬P), (PΛQ), (PVQ), (P→Q) i (P↔Q) logičke formule.
– Ništa drugo nije logička formula.
Uvod u organizaciju računara 4
LogiLogiččke funkcijeke funkcije
Funkcije oblika ƒ:{0,1}n→{0,1} nazivamo logičkim funkcijama n promenljivih.
Postoji 22n logičkih funkcija n
promenljivih.Za svaku logičku funkciju postoji bar
jedna logička formula koja joj odgovara i obrnuto.
Uvod u organizaciju računara 5
Potpuni sistemi logiPotpuni sistemi logiččkih funkcijakih funkcija
Za skup logičkih funkcija kažemo da je potpun ako se sve logičke funkcije mogu predstaviti pomoću funkcija ovog skupa.
Potpun sistem je minimalan ako ni jedan njgov pravi podskup nije potpun.
{¬, Λ} je minimalan potpun sistem funkcija. – Npr. AVB=¬(¬A Λ¬B)
Uvod u organizaciju računara 6
Potpuni sistemi logiPotpuni sistemi logiččkih funkcijakih funkcija
Sistemi {↑} i {↓} su potpuni i minimalni. Funkcije ↑ (Ni, Šeferova funkcija) i ↓ (Nili,
Lukašievičeva funkcija) se definišu na sledeći način:
A B A↑B A↓B
0 0
0 1
1 0
1 1
1 1
1 0
1 0
0 0
Uvod u organizaciju računara 7
Potpuni sistemi logiPotpuni sistemi logiččkih funkcijakih funkcija
Potpunost prethodnih sistema se vidi iz sledećih relacija:– ¬A=A↑A– AΛB=(A↑B) ↑(A↑B)– ¬A=A↓A– AΛB=(A↓A) ↓(B↓B)
Uvod u organizaciju računara 8
Normalne formeNormalne forme
Logičke konstante, logičke promenljive i njihove negacije nazivaćemo literalima.
Logička formula je u konjunktivnoj normalnoj formi ako je oblika:– A1 Λ A2 Λ … Λ An gde je svaka od
formula Ai disjunkcija literala.
Uvod u organizaciju računara 9
Normalne formeNormalne forme
Logička formula je u disjunktivnoj normalnoj formi ako je oblika:– A1 V A2 V … V An gde je svaka od
formula Ai konjunkcija literala.
Za svaku logičku formulu postoje ekvivalentne formule u DNF i KNF.
Uvod u organizaciju računara 10
Algoritam za DNFAlgoritam za DNF
Ulaz: Logička formula A Izlaz: DNF formule A
– (1) Eliminisati veznik A↔B koristeći ekvivalenciju A↔B ≡ (A→B) Λ (B→A)
– (2) Eliminisati veznik A→B koristeći ekvivalenciju A→B ≡ ¬A V B
– (3) Dok je moguće primenjivati De Morganove zakone:¬(A Λ B) ≡ ¬A V ¬B i ¬(A V B) ≡ ¬A Λ ¬B
– (4) Eliminisati višestruke negacije koristeći zakon ¬ ¬A ≡ A
– (5) Dok je moguće primenjivati zakone distributivnosti Λ u odnosu na V A Λ (B V C) ≡ (A Λ B) V (A Λ C) i(B V C) Λ A ≡ (B Λ A) V (C Λ A)
Uvod u organizaciju računara 11
PrimerPrimer
Naći DNF formule ¬((A↔B) → C)– (1) ¬((A→B Λ B→A)→C) – (2) ¬(¬((¬AVB) Λ (¬BVA)) V C) – (3) ¬(¬(¬AVB) V ¬(¬BVA) V C) – (3) ¬((¬¬A Λ¬B) V (¬¬B Λ¬A) V C) – (3) ¬(¬¬A Λ¬B) Λ ¬((¬¬B Λ¬A) V C)– (3) (¬¬¬A V ¬¬B) Λ ¬(¬¬B Λ ¬A) Λ ¬C– (3) (¬¬¬A V ¬¬B) Λ (¬¬¬B V ¬¬A) Λ ¬C– (4) (¬A V B) Λ (¬B V A) Λ ¬C– (5) (¬A V B) Λ ((¬B Λ ¬C) V (A Λ ¬C))– (5) ((¬A V B) Λ (¬B Λ ¬C)) V ((¬A V B) Λ (A Λ ¬C))– (5) (¬A Λ ¬B Λ ¬C) V (B Λ ¬B Λ ¬C) V (¬A Λ A Λ ¬C) V (B Λ A Λ ¬C)
Uvod u organizaciju računara 12
PrimerPrimer
Naći DNF sledećih formula:¬((C→A)→B)
¬(C→(A↔B))
(A↔B)→C
(¬(A↔B))→C
¬(A→(B→C))Λ((A→B)→C)
Uvod u organizaciju računara 13
PojednostavljivanjePojednostavljivanje
Formule se mogu pojednostaviti koristeći ekvivalencije: – A Λ ¬A ≡ 0– A V ¬A ≡ 1 – A Λ 0 ≡ 0 – A V 0 ≡ A– A Λ 1 ≡ A– A V 1 ≡ 1– A Λ A ≡ A– A V A ≡ A
Uvod u organizaciju računara 14
PrimerPrimer
Uprostiti:– (¬A Λ ¬B Λ ¬C) V (B Λ ¬B Λ ¬C) V (¬A Λ A Λ ¬C) V (B Λ A Λ ¬C)– (¬A Λ ¬B Λ ¬C) V (0 Λ ¬C) V (0 Λ ¬C) V (B Λ A Λ ¬C)– (¬A Λ ¬B Λ ¬C) V 0 V 0 V (B Λ A Λ ¬C)– (¬A Λ ¬B Λ ¬C) V 0 V (B Λ A Λ ¬C)– (¬A Λ ¬B Λ ¬C) V (B Λ A Λ ¬C)
Uvod u organizaciju računara 15
Formiranje DNF prema tabliciFormiranje DNF prema tablici
Ako je data tablica koja predstavlja neku logičku funkciju, lako se dobija DNF odgovarajuće formule.
DNF se dobija tako što se svakoj vrsti tablice za koju je vrednost funkcije 1 pridruži jedna konjunkcija literala. Literali u konjunkcijama se odredjuju na sledeći način:– Ako u odgovarajućoj vrsti promenljiva X ima vrednost 1,
u konjunkciji se javlja literal X– U suprotnom, ako promenljiva X u toj vrsti ima vrednost
0, u konjunkciji se javlja literal ¬X Disjunkcija svih takvih konjunkcija je tražena
DNF.
Uvod u organizaciju računara 16
PrimerPrimer
Odgovarajuća DNF je:– (¬A Λ B Λ ¬C) V (¬A Λ B Λ C) V (A Λ B Λ ¬C)
A B C F
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
1
1
0
0
1
0
Uvod u organizaciju računara 17
LogiLogiččki elementiki elementi
Logički elementi su elektronski objekti koji implementiraju neke od logičkih funkcija. Argumenti funkcija su ulazi, a vrednosti funkcija su izlazi logičkih elemenata.
Logički elementi obično implementiraju potpune sisteme logičkih funkcija.
Uvod u organizaciju računara 18
LogiLogiččki elementiki elementi
Svaka logička funkcija se u elektronskom obliku može predstaviti mrežom povezanih logičkih elemenata.
Ovi elementi se mogu povezivati tako da predstavljaju npr. DNF formule koja odgovara posmatranoj funkciji.
Uvod u organizaciju računara 19
Minimizacija logiMinimizacija logiččkih funkcijakih funkcija
Radi smanjenja troškova proizvodnje i komplikovanosti sistema, teži se sledećim ciljevima:– Smanjenje složenosti reprezentacije
logičke funkcije– Smanjenje broja različitih logičkih
elemenata, pa se često koristi samo jedan element – Ni ili Nili
Uvod u organizaciju računara 20
Minimizacija logiMinimizacija logiččkih funkcijakih funkcija
Postoji vise načina minimizacije logičkih funkcija. Osnovni su:– Algebarske transformacije– Karnoove (Karnaugh) mape–Metoda Kvin-MekKlaskog
Uvod u organizaciju računara 21
Algebarske transformacijeAlgebarske transformacije
Algebarski pristup minimizaciji logičkih funkcija se zasniva na primenama raznih zakona uprošćavanja i zamene složenih podformula jednostavnijim, logički ekvivalentnim, formulama.
Uvod u organizaciju računara 22
PrimerPrimer
F=(¬AΛBΛ¬C)V(¬AΛBΛC)V(AΛBΛ¬C)(¬AΛBΛ¬C)V(¬AΛBΛC)V(AΛBΛ¬C)V(¬AΛBΛ¬C)
¬AΛBΛ(¬CVC) V (AV¬A)ΛBΛ¬C
¬AΛB V BΛ¬C
Fmin=BΛ(¬AV¬C)
Uvod u organizaciju računara 23
Karnoove mapeKarnoove mape
Karnoove mape predstavljaju tablični metod minimizacije logičkih funkcija. Koriste se za funkcije do 6 promenljivih. Za veće brojeve promenljivih postaju nepregledne i previše složene.
Uvod u organizaciju računara 24
Karnoove mape - opisKarnoove mape - opis
Ako je n broj promenljivih, mapa se sastoji od 2n kvadrata.
Kolone i vrste mape se označavaju kombinacijama vrednosti promenljivih.
Ako je širina (odnosno visina) mape n kvadrata, po širini (odnosno visini) se zadaju vrednosti za log2n promenljivih.
Oznake kolona odnosno vrsta (kombinacije vrednosti pormenljivih) su poredjane tako da čine Grejov kod.
Uvod u organizaciju računara 25
PrimeriPrimeri
Uvod u organizaciju računara 26
PrimeriPrimeri
Uvod u organizaciju računara 27
Karnoove mape - konstrukcijaKarnoove mape - konstrukcija
Logička funkcija koja je zapisana u obliku DNF, može se predstaviti pomoću Karnoove mape tako što se u svako polje mape upiše 1 ukoliko postoji konjunkcija u DNF takva da je njena vrednost 1 za vrednosti promenljivih koje odgovaraju tom polju.
Karnoova mapa se takodje može dobiti i iz tablične reprezentacije funkcije, jednostavnim upisivanjem jedinica u polja koja odgovaraju vrstama tablice za koje je vrednost funkcije 1.
Uvod u organizaciju računara 28
PrimeriPrimeri
Uvod u organizaciju računara 29
Karnoove mape - konstrukcijaKarnoove mape - konstrukcija
Ukoliko tablica koja definiše funkciju nije definisana za sve vrednosti promenljivih (nemamo sve vrste), u polja mape koja odgovaraju tim vrstama možemo upisati neki specijalni simbol. Uobičajeni su d,?,*,n…
Takva polja pri minimizaciji možemo interpretirati kako nam odgovara.
Uvod u organizaciju računara 30
Karnoove mape - minimizacijaKarnoove mape - minimizacija
Pošto Karnoove mape direktno odgovaraju tablicama kojima se zadaju logičke funkcije, DNF formule koja odgovara mapi se može dobiti na isti način. Medjutim, tako dobijena formula ne mora biti minimalna.
Minimizacija se zasniva na postupku uočavanja grupa od po 2k jedinica kojima se konjunkcija može dodeliti kao grupi, umesto da se to radi pojedinačno kao kod konstrukcije iz tablice.
Uvod u organizaciju računara 31
Karnoove mape - minimizacijaKarnoove mape - minimizacija
Kod formiranja grupa jedinica, važe sledeća pravila:– Grupe se sastoje samo od jedinica– Broj jedinica u grupi mora biti stepen dvojke: 1,2,4,8,
…,2i,…– Jedinice moraju biti rasporedjene u susednim poljima u
obliku pravougaonika– Svaka jedinica mora biti u nekoj grupi– Grupe se mogu preklapati– Grupe čija su polja u potpunosti sadržana u nekim
drugim grupama treba zanemariti– Smatra se da mapa ima oblik torusa, odnosno mogu se
grupisati i jedinice koje postaju susedne kada se spoje naspramne ivice mape.
Uvod u organizaciju računara 32
Karnoove mape - minimizacijaKarnoove mape - minimizacija
Poštujući ova pravila može se formirati puno različitih grupisanja, odnosno, ova pravila ne odredjuju jednoznačno grupisanje jedinica.
Osnovni princip koji garantuje minimalnost je: vršiti grupisanje tako da se sa što manje što većih grupa obuhvate sve jedinice.
Uvod u organizaciju računara 33
PrimeriPrimeri
Uvod u organizaciju računara 34
Karnoove mape - Karnoove mape - ččitanjeitanje
Kao što je i ranije naglašeno čitanje Karnoovih mapa bez grupisanja je jednostavno – kao kod konstrukcije DNF iz tablice koja predstavlja funkciju.
Posle grupisanja, mapa se tumači kao disjunkcija konjunkcija koje odgovaraju grupama, a ne pojedinačnim jedinicama, što dovodi do smanjenja reprezentacije funkcije.
Uvod u organizaciju računara 35
Karnoove mape - Karnoove mape - ččitanjeitanje
Svaka promenljiva X koja je konstantna na svim poljima neke grupe učestvuje u konjunkciji koja se pridružuje toj grupi kao literal X ako je vrednost promenljive 1 ili ¬X ako je njena vrednost 0.
Što je grupa veća, to je manji broj promenljivih u konjunkciji koja joj se pridružuje.
Uvod u organizaciju računara 36
PrimerPrimer
Uvod u organizaciju računara 37
PrimerPrimer
Uvod u organizaciju računara 38
Neodredjena poljaNeodredjena polja
Ukoliko mapa sadrži polja za koja nije odredjena vrednost (označena sa d,?,*,n…), njih tumačimo na način koji nam odgovara u cilju grupisanja jedinica u što manje što većih grupa.
Uvod u organizaciju računara 39
PrimerPrimer
Uvod u organizaciju računara 40
PrimerPrimerA B C D F
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1