Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Boolsk Algebra og Logiske Porter

Liknende presentasjoner


Presentasjon om: "Boolsk Algebra og Logiske Porter"— Utskrift av presentasjonen:

1 Boolsk Algebra og Logiske Porter
INF1400 – Kap 02 Boolsk Algebra og Logiske Porter

2 Hovedpunkter Toverdi Boolsk algebra Huntington’s postulater
Diverse teorem Boolske funksjoner med sannhetstabell Forenkling av uttrykk (port implementasjon) Komplement av uttrykk Maksterm / minterm Flerinputsporter Designprosedyre med eksempler

3 Algebra, definisjon Algebraisk system: Mengde av elementer
Et sett av operasjoner på elementene (funksjoner) som tilfredsstiller en liste av aksiomer/postulater Aksiom/postulat – Regler som ikke skal bevises (utgangspunkt for algebraisk system) Matrise alg- AB er ikke nødv BA, AB=0 medfører ikke nødv at A eller B er 0 Eksempler på algebraiske system: ”Vanlig” algebra, Boolsk algebra, matrise algebra, osv... Algebra - Studiet av algebraiske system

4 Eksempler på postulater
Det er mulig å trekke et rett linjestykke fra et punkt til et annet punkt Det er mulig å forlenge et linjestykke til en rett linje Det er mulig å slå en sirkel med et hvilket som helst punkt som senter med radius lik hvilket som helst linjestykke som starter i senteret Alle rette vinkler er like Hvis en rett linje skjærer to rette linjer slik at de indre vinklene på den ene siden tilsammen utgjør mindre enn to rette vinkler, da vil de to linjene møte hverandre. Det vil skje på den siden der de vinklene lå som tilsammen var mindre enn to rette vinkler Euklidsk geometri

5 Digitale system, anvendelser
Vanlig regning med tall: Logiske operasjoner: Beskrives av Boolsk algebra Beskrives av ”vanlig algebra” Eksempler: ALU-PC Signalprosessorer osv... Eksempler: Generering av binære utfall gitt ett sett med binære hendelser Oppbygging av aritmetiske funksjoner NY NB: ”vanlig algebra” inkluderer også binære tall, siden eneste forskjell er representasjonen

6 Hvorfor trenger vi en Boolsk algebra?
Muliggjør design av komplekse digitale system Muliggjør analyse av komplekse digitale system Forenkling av logiske uttrykk - Gir enklere fysisk implementasjon NY

7 ”Toverdi” Boolsk algebra
Definisjon: Mengde: {0,1} OR 1 x y x+y x•y AND 2 operasjoner på mengden over: OR ”+” AND ”•” Husk: +/• har ingenting med addisjon og multiplikasjon å gjøre

8 Huntington postulater / toverdi Boolsk algebra
P1: Mengden {0,1} er lukket under ”+” og ”•” lukket P2: x + 0 = x x • 1 = x ident. el. P5: x + x´ = 1 x • x´ = 0 ’ komplem. P6: 0  minst 2 el. P3: x + y = y + x x • y = y • x kommutativ P4: x•(y+z) = x•y + x•z x+(y•z) = (x+y)•(x+z) distributiv Komplement er ikke invers, invers finnes ikke i Boolsk algebra. Eksistens av komplement gir komplementoperator. Dualitet for postulatene: kan bytte ”•” med ”+” hvis man bytter ”0” med ”1” Presedens: først utføres ”()”, så ” ’ ”, så ”•” og til slutt ”+”

9 Teorem P2: x + 0 = x x • 1 = x P5: x + x´ = 1 x • x´ = 0
Bevis: x + x = (x + x) • 1 P2 P2: x + 0 = x x • 1 = x x + x = (x + x)•(x + x´) P5 P5: x + x´ = 1 x • x´ = 0 x + x = x + (x•x´) P4 P4: x + (y•z) = (x + y)•(x + z) Teorem 1a: x + x = x x + x = x P5 x + x = x P2

10 Teorem P2: x + 0 = x x • 1 = x P5: x + x´ = 1 x • x´ = 0
Bevis: x•x = x•x P2 P2: x + 0 = x x • 1 = x x•x = x•x + x•x´ P5 P5: x + x´ = 1 x • x´ = 0 x•x = x•(x + x´) P4 P4: x•(y + z) = x•y + x•z Teorem 1b: x•x = x x•x = x•1 P5 x•x = x P2

11 Teorem P4: x+(y•z) = (x+y)•(x+z)
P2: x • 1 = x Bevis: x + 1 = 1•(x + 1) P2 / P3 P3: x • y = y • x x + 1 = (x + x´)•(x + 1) P5 P5: x + x´ = 1 x + 1 = x + x´•1 P4 P4: x+(y•z) = (x+y)•(x+z) Teorem 2a: x + 1 = 1 I boka: holder det med P2. Eksistens er deffet begge veier x + 1 = x + x´ P2 x + 1 = 1 P5

12 Flere teorem Dualitet for ligninger utledet fra postulat:
kan bytte ”•” med ”+” hvis man bytter ”0” med ”1” Bevis: x + 1 = 1 (teorem 2a), samt dualitet Teorem 2b: x•0 = 0

13 Flere teorem Teorem 3 Teorem 4 – Assosiativt Teorem 6 – Absorpsjon
(x’)’ = x Teorem 4 – Assosiativt x + (y + z) = (x + y) + z x(yz) = (xy)z Teorem 6 – Absorpsjon x + xy = x x(x + y) = x

14 Et siste, men sentralt teorem
DeMorgans teorem (mye brukt): (x • y)´ = x´ + y´ (x + y)´ = x´• y´ På invertert form: x • y = (x´ + y´)´ x + y = (x´• y´)´

15 Teorem/postulatliste
x + 0 = x x•1 = x x + y = y+x xy = yx x + x´ = 1 xx´ = 0 x + (y+z) = (x+y) + z x (yz) = (xy)z x(y+z) = xy + xz x + (yz) = (x+y)(x+z) x + xy = x x(x+y) = x (x+y)´ = x´y´ (xy)´ = x´ + y´ x + x = x x•x = x x + 1 = 1 x•0 = 0 (x’)’ = x

16 Boolske funksjoner Tilordner en binær variabel en verdi bestemt av verdien på en eller flere andre binære variabler Eksempel: F1 = x + y’z geer Direkte port-implementasjon: y´z

17 Sannhetstabell En boolsk funksjon kan visualiseres i en sannhetstabell
Eksempel: F = x + y’z 1 x y z F En gitt funksjon har kun en sannhetstabell Men, en gitt sannhetstabell har uendelig mange funksjonsuttrykk geer Stikkord: forenkling av funksjonsuttrykk

18 Forenkling av uttrykk Eksempel: F2 = x’y’z + x’yz + xy’ Forenkling
F2 = x’z + xy’ Prosedyre: geer F2 = x’z(y’ + y) + xy’ F2 = x’z • 1 + xy’ F2 = x’z + xy’

19 Port-implementasjon av F2
x´y´z x´yz xy´ geer xy´ x´z

20 Forenklingseksempler
Eksempel: Eksempel: Eksempel: F = x(x’+y) F = x+x’y F = (x+y)(x+y’) F = xx’+xy F = (x+x’)(x+y) F = x + (yy’) F = 0+xy F = 1(x+y) F = x + 0 geer F = xy F = x+y F = x

21 Forenklingseksempler
Eksempel: Eksempel: F = xy+x’z+yz F = (x+y)(x’+z)(y+z) F = xy+x’z+yz(x+x’) F = (x+y)(x’+z) Dualitet F = xy+x’z+xyz+x’yz geer F = xy(1+z)+x’z(1+y) F = xy+x’z

22 Komplement av funksjon
Inverterer begge sider, og bruker DeMorgan Eksempel: Eksempel: F = x’yz’+x’y’z F = x(y’z’+yz) geer F’ = (x’yz’+x’y’z)’ F’ = (x(y’z’+yz))’ F’ = (x’yz’)’(x’y’z)’ F’ = x’+(y’z’+yz)’ F’ = (x+y’+z)(x+y+z’) F’ = x’+(y’z’)’(yz)’ F’ = x’+(y+z)(y’+z’)

23 Minterm I en funksjon kan en binær variabel x opptre som x eller x’
En funksjon kan være gitt på ”sum av produkt” form F = xy + xy’ + x Eksempel: Hvert ”produktledd” som inneholder alle variablene kalles en minterm geer xy + xy’ + x’y + x’y’ For to variable fins det 4 forskjellige mintermer: xyz + xyz’ + xy’z + xy’z’+x’yz + x’yz’ + x’y’z + x’y’z’ For 3 variable fins det 23 forskjellige mintermer:

24 Maksterm En funksjon kan være gitt på ”produkt av sum” form Eksempel:
F = (x+y)(x+y’)y Eksempel: Hvert ”summeledd” som inneholder alle variablene kalles en maksterm geer (x+y)(x+y’)(x’+y)(x’+y’) For to variable fins det 4 forskjellige makstermer: For n variable fins det 2n forskjellige makstermer:

25 Sannhetstabell Hvis man genererer en funksjon ut i fra sannhetstabellen får man en sum av mintermer F = Eksempel minterm: 1 x y z F x’y’z 1 + xy’z’ 1 + xyz’ 1 geer Eksempel maksterm: F = (x + y + z)(x + y’ + z)(x + y’ + z’)(x’ + y + z)(x’ + y’ + z’) En sannhetstabell kan sees på som en liste av mintermer/makstermer

26 Notasjon Mintermer / maxtermer har notasjon mx / Mx geer
Funksjoner som bare består av sum/produkt av min/maxtermer (kanonisk form) har følgende notasjon Eksempel: F(x,y,z) = S(m3, m6) = S(3, 6) = x’yz+xyz’ F(x,y,z) = (M3, M6) = (3, 6) = (x+y’+z’)(x’+y’+z)

27 Sammenheng min/maksterm
Komplementet til en funksjon uttrykt som en sum av mintermer er summen av mintermene som mangler i originalfunksjonen F(A,B,C) = S(1,4,5,6,7) F’(A,B,C) = S(0,2,3) For å konvertere en funksjon fra sum av mintermer til produkt av makstermer bruker man summene som mangler i originalfunksjonen som makstermer F(A,B,C) = (0,2,3)

28 Flerinputs-porter Flerinputs- implementasjon av AND / OR
1 x y z F OR Flerinputs- implementasjon av AND / OR kan lages direkte 1 A B C F AND geer

29 Flerinputs-porter Flerinputs- implementasjon av NAND / NOR
1 x y z F NOR Mulig løsning F = (x+y+z) ´ Flerinputs- implementasjon av NAND / NOR kan ikke lages direkte 1 A B C F NAND Mulig løsning F = (ABC)´ geer

30 Flerinputs-porter Flerinputs- implementasjon av XOR (oddefunksjon)
kan lages direkte 1 A B C F XOR geer F = xyz (1 XOR 1) XOR 1 = 0 XOR 1 = 1

31 Designeksempel 1 Styring av heis Inngangssignaler fra sensorer:
K - Knapp trykket inn: 0/1 V - Overvekt: 0/1 D - Dør lukket: 0/1 1 K V D M Utgangssignal til aktuator: M - Motor på: 0/1 geer M = KV’D 1 Kontroll logikk K V D M

32 Designeksempel 1 Implementasjon av kontroll logikken M = KV´D geer

33 Designeksempel 1 Hva om man bare har 2-inputs NAND porter? M = KV’D
M = K (VV)’ D geer M = (VV)’ (DK) M = ((VV)’ (DK)’’)’’

34 Designeksempel 1 Hva om man bare har 2-inputs NAND/NOR porter?
M = ((VV)’ (DK)’’)’’ M = ( (VV)’ (DK) )’’ DeMorgan: geer M = ( (VV) + (DK)’ )’ M = (V+(DK)’)’

35 Forenkling på portnivå
Det er ikke alltid at det enkleste funksjonsuttrykket resulterer i den enkleste port-implementasjonen Ved forenkling på portnivå må man vite hvilke porter man har til rådighet, og så justere funksjonsuttrykket mot dette. (håndverk) geer

36 Generell design prosedyre
1. Bestem hvilke signal som er innganger og utganger 2. Sett opp sannhetstabell for alle inngangskombinasjoner geer 3. Generer funksjonsuttrykket som sum av mintermer 4. Tilpass /forenkle funksjonsuttrykket mot aktuelle porter

37 Oppsummering Boolsk algebra - Huntington postulat - Diverse teoremer
Boolske funksjoner Minterm / maksterm / sannhetstabell Komplementer / DeMorgan geer Forenkling av uttrykk Port-implementasjoner Flerinputsporter Designprosedyre


Laste ned ppt "Boolsk Algebra og Logiske Porter"

Liknende presentasjoner


Annonser fra Google