Boolsk Algebra og Logiske Porter

Slides:



Advertisements
Liknende presentasjoner
Regning i alle fag Ungdomstrinnsatsningen
Advertisements

Ebus Management Center En liten bruksanvisning for de enkleste funksjonene.
PowerPoint laget av Bendik S. Søvegjarto Konsept, tekst og regler av Skage Hansen.
IS-102 Klassedefinisjoner
Eksempel AOA (Activity On Arc)
Kompleksitetsanalyse
Forside Motivasjon Analyse Forside Motivasjon Analyse  -notasjon O og  Relasjoner Klasser Fallgruver Spørsmål Kompleksitetsanalyse Åsmund Eldhuset asmunde.
Generelt I/O if/else Funksjoner Lists Løkker Dictionaries Annet Listebehandling Klasser Python med noen algdat-anvendelser Åsmund Eldhuset asmunde *at*
Utvidelser av tallområdet:
INF 295 Forelesning 15 - kap 9 Grafer Hans Fr. Nordhaug (Ola Bø)
Repetisjon kap 6,7,8.
MAT6 REPETISJON Kap 1 og 2 Laila.
Klargjøring fra forrige gang
Vektorfelt.
Del- operator Egenskaper. Del-operator Definisjon Notasjon Del-operator.
Parameteriserte kurver
Chapter 02 Wavelets - Lineær algebra
Komplekse tall Naturlige tall
Muntlige presentasjoner
Combining Compound Conceptual User Interface Components with Modelling Patterns - a Promising Direction for Model-based Cross-platform User Interface Development.
Kap 10 Graf.
Hvordan uttrykke krav Kapittel 4.4. Innledning Målet er å samles rundt ett entydig språk som ikke kan misforståes eller feiltolkes. Gjør sporbarheten.
Dynamisk programmering
Ch 4 INTEGRASJON Integrasjon innebærer å finne alle funksjoner F som har f derivert. Disse funksjoner kalles antiderivert av f og formelen for de er det.
1 Arrayer og form(ularer) (Kapittel 4). 2 Mål  Forstå assosiative og superglobale arrays  Kunne behandle webformularer (forms)  Kjenne forskjellen.
Grunnleggende PHP - Ronny Mandal1 Grunnleggende PHP.
Dynamiske nettsider PHP Del 1 – variable. PHP  PHP (Personal Home Page)  Fritt tilgjengelig programmeringsspråk  åpen kildekode  Plattformuavhengig.
Hvordan kan foreldre bruke de vangligste funksjonene i Itslearning.com
Fra Euklid til CABRI En geometrisk reise.
2007 INF3400/4400 våren 2007 Tidsforsinkelse i logiske kjeder Tidsforsinkelse i kjede av logiske porter Logisk effort i kjede: Elektrisk effort i kjede:
Tidsforsinkelse i kjede av logiske porter
Diskrete stokastiske variable
Oppgaver til kodegenerering etc. INF-5110, 2013 Oppgave 1: Vi skal se på koden generert av TA-instruksjonene til høyre i figur 9.10 i det utdelte notatet,
Magnus Haug Algoritmer og Datastrukturer
Kapping av plater Mål: Vi skal lage komponenter for en møbelfabrikk ut fra standardiserte plater på 12 x 24 dm. Komponentene har lengde og bredde oppgitt.
Laplace Invers transformasjon Residue
Euklids Geometri Af Natacha Dam Langaas.
INF3400/4400 våren 2007 Grunnleggende digital CMOS
INF3400 Del 1 Oppgaver Grunnleggende Digital CMOS.
En formel er gyldig hviss den sann i alle tolkninger Utsagnslogikk Tolkning = linje i sannhetsverditabell Altså: En formel er gyldig hviss den har T i.
INF3400 Del 6 Tidsforsinkelse i logiske kjeder. Tidsforsinkelse i kjede av logiske porter Logisk effort i kjede: Elektrisk effort i kjede: Forgreiningseffort:
Repetisjon INF1400.
Hypotesetesting, og kontinuerlige stokastiske variable
TMA 4245 Statistikk Mandag Les dette Powerpointmalen inneholder 3 forskjellige tittel-ark som du kan velge mellom. I tillegg kan du velge lys.
2008 INF3400 Grunnleggende digital CMOS Transistor som bryter PÅAV PÅAV Logisk 0 = gnd (V SS ) Logisk 1 = V DD s = source g = gate d = drain Source terminal.
2008 INF3400 Grunnleggende digital CMOS Transistor som bryter PÅAV PÅAV Logisk 0 = gnd (V SS ) Logisk 1 = V DD s = source g = gate d = drain Source terminal.
INF3400 Del 9 Dynamisk CMOS. Introduksjon til dynamisk CMOS KomplementærPseudo nMOSDynamisk ” Footed ” dynamisk.
Nummer 8-10 H. Aschehoug & Co Sehesteds gate 3, 0102 Oslo
Vektorer og geometri i rommet
Sannsynlighet og kombinatorikk
Matematikk 1 årskurs 26. oktober 2009
Algebra Vår 2009 = 72∙41 A1A/A1B.
§4. Irrasjonale og komplekse tall
INF1400 – Kap 1 Digital representasjon og digitale porter
INF3400 Del 1 Teori Grunnleggende Digital CMOS. INF3400 Grunnleggende digital CMOS Transistor som bryter PÅAV PÅAV Logisk 0 = gnd (V SS ) Logisk 1 = V.
INF3400 Del 1 Teori og oppgaver Grunnleggende Digital CMOS.
Funksjoner Kapittel 2.
De fire regneartene.
Roboter og matematikk.
Omgrepssamling 1. og 2. trinn
Geometri 2.

Grunnleggende Digital CMOS
Introduksjon til dynamisk CMOS
INF5110 – 5. og 7. mai 2015 Stein Krogdahl, Ifi, UiO
INF3400 Del 9 Oppgaver Dynamisk CMOS.
God undervisning og dybdelæring i matematikk
Brukerveiledning til programmering av LEGO Mindstorm NXT-roboter
Grunnleggende Digital CMOS
Åpen økonomi aggregert etterspørsel
Utskrift av presentasjonen:

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

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

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

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

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

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

”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

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  1 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 ”+”

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 + 0 P5 x + x = x P2

Teorem P2: x + 0 = x x • 1 = x P5: x + x´ = 1 x • x´ = 0 Bevis: x•x = x•x + 0 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

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

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

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

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´)´

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

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 y´

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

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’

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

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

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

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’)

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:

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:

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

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)

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)

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

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

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

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

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

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)’’)’’

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)’)’

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

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

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