Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Kapitel 1 Der Boolesche Kalkül 1.1 Boolesche Funktionen 1.2 Boolesche Algebren 1.3 Boolesche Ausdrücke.

Ähnliche Präsentationen


Präsentation zum Thema: "Kapitel 1 Der Boolesche Kalkül 1.1 Boolesche Funktionen 1.2 Boolesche Algebren 1.3 Boolesche Ausdrücke."—  Präsentation transkript:

1 Kapitel 1 Der Boolesche Kalkül 1.1 Boolesche Funktionen 1.2 Boolesche Algebren 1.3 Boolesche Ausdrücke

2 Boolesche Funktionen i1i1i1i1 inininin o1o1o1o1 omomomom Schaltfunktion z.B. Addierer BnBn BmBm Wegen Kodierung von Zahlen und Zeichen im Binärsystem: Gehe aus von B = {0, 1}. mögliche Funktionstabellen 2 n Eingabe- kombinationen 2 m -stelliger Ergebnisvektor (Funktionstabelle)

3 RW-SystemarchitekturKap 1 BB - TIKap Boolesche Funktionen B Eine Abbildung f : B n B m heißt (vollständig definierte) Boolesche Funktion in n Variablen. B n,m := {f | f :B n B m } Eine Abbildung f :D B m mit D B n heisst (partielle) Boolesche Funktion in n Variablen. B n,m (D):= {f | f :D B m } für D B n

4 RW-SystemarchitekturKap 1 BB - TIKap ON(f), OFF(f) Ist m =1, so bezeichnet ON(f ):={ {0,1} n | f ( )=1} die Erfüllbarkeitsmenge von f, OFF(f ):={ {0,1} n | f ( )=0} die Nichterfüllbarkeitsmenge von f. Für f : D B m mit D B n heißt die Menge def(f) := D Definitionsbereich von f die Menge DC(f) := B n n D dont care-Menge von f.

5 RW-SystemarchitekturKap 1 RW-SystemarchitekturKap Beispiele für Boolesche Funktionen, Graphische Darstellung (IEEE-Symbole) i1i1i1i1 i 1 NOT Negation

6 RW-SystemarchitekturKap 1 RW-SystemarchitekturKap Boolesche Algebren Wir betrachten B := {0,1} mit den beiden binären Operationen (logisches Und, Konjunktion), (logisches Oder) und der unären Operation (Negation) Welche Gesetze gelten für B mit diesen Operationen?

7 RW-SystemarchitekturKap 1 Kap Boolesche Algebren Boolesche Algebra: Algebraische Struktur zum Rechnen mit Booleschen Funktionen Es sei M eine nichtleere Menge, auf der zwei binäre Operationen und + und eine unäre Operation definiert sind. Boolesche Algebra Das Tupel (M,, +, ) heißt Boolesche Algebra, falls M eine nichtleere Menge ist und für alle x,y,z M die folgenden Axiome gelten: Kommutativität Kommutativität x+y=y+xx y=y x Assoziativität Assoziativität x+(y+z)=(x+y)+z x (y z)=(x y) z Absorption Absorption x+(x y)=x x (x+y)=x Distributivität Distributivität x+(y z)=(x+y) (x+z) x (y+z) =(x y)+(x z) Komplementregel Komplementregel x+(y ( y))=x x (y+ ( y))= x Satz: Satz:( B,,, ) ist eine Boolesche Algebra.

8 RW-SystemarchitekturKap 1 Kap Weitere Regeln in Booleschen Algebren Es gelten weitere Regeln, die aus den Axiomen ableitbar sind. Vor Angabe und Beweis solcher Regeln: Beispiele für Boolesche Algebren!

9 RW-SystemarchitekturKap 1 Kap Die Boolesche Algebra der Booleschen Funktionen in n Variablen B n := B n,1 Menge der Booleschen Funktionen in n Variablen, m=1 f g B n definiert durch (f g)( )=f ( ) g ( ) B n

10 RW-SystemarchitekturKap 1 Kap Die Boolesche Algebra der Booleschen Funktionen in n Variablen B n := B n,1 Menge der Booleschen Funktionen in n Variablen, m =1 f g B n definiert durch (f g) ( ) = f ( ) g ( ) B n f B n definiert durch f ( )= 1 f ( ) = 0 B n Satz: ( B n,, +, ) ist eine Boolesche Algebra. Beweis: Nachrechnen, dass Axiome gelten.

11 RW-SystemarchitekturKap 1 Kap Die Boolesche Algebra der Teilmengen von S S : Menge 2 S : die Potenzmenge von S M 1 M 2 : die Vereinigung der Mengen M 1 und M 2 aus 2 S M 1 M 2 : der Durchschnitt der Mengen M 1 und M 2 aus 2 S M : das Komplement S\M von M bzgl. S Satz: Satz:( 2 S,,, ) ist eine Boolesche Algebra. Beweis: Nachrechnen, dass Axiome gelten

12 RW-SystemarchitekturKap 1 Kap Weitere Regeln in Booleschen Algebren, ableitbar aus den Axiomen, z.B.: Existenz Neutraler Elemente: Existenz Neutraler Elemente: : x + 0 = x, x 0 = : x 1 = x, x 1 = 1 Doppeltes Komplement: Doppeltes Komplement: ( x) = x Eindeutigkeit des Komplements: Eindeutigkeit des Komplements: 01 (x y = 0 und x + y = 1) y = x Idempotenz: Idempotenz: x + x = xx x = x de Morgan-Regel de Morgan-Regel (x + y) = ( x) ( y) (x y) = ( x) + ( y) Consensus-Regel: Consensus-Regel: (x y)+(( x) z) = (x y) + (( x) z) + (y z) (x + y) (( x) + z) = (x + y) (( x) + z) (y + z)

13 RW-SystemarchitekturKap 1 Kap Dualitätsprinzip bei Booleschen Algebren Prinzip der Dualität duale Gleichung 1 Gilt eine aus den Gesetzen der Booleschen Algebra abgeleitete Gleichung p, so gilt auch die zu p duale Gleichung, die aus p hervorgeht durch gleichzeitiges Vertauschen von + und und 1.Beispiel: (x y) + (( x) z) +(y z) = (x y) + (( x) z) (x + y) (( x) + z) (y + z) = (x + y) (( x) + z)

14 RW-SystemarchitekturKap Boolesche Ausdrücke Eine Beschreibungsmöglichkeit für Boolesche Funktionen bisher: Tabellenform bei n Variablen 2 n Einträge. Ziel: kompaktere Repräsentation. Wir betrachten n Variablen x 1, x 2,..., x n. Sei X n = x 1, x 2,..., x n. Boolesche Ausdrücke werden über einem Alphabet A = X n : definiert.

15 RW-SystemarchitekturKap 1 15 Boolesche Ausdrücke Definition: vollständig geklammerten Booleschen Ausdrücke über X n Definition: Die Menge BE(X n ) der vollständig geklammerten Booleschen Ausdrücke über X n ist eine Teilmenge von A*, die folgendermaßen induktiv definiert ist: Die Elemente 0 und 1 sind Boolesche Ausdrücke Die Symbole/Variablen x 1,..., x n sind Boolesche Ausdrücke Disjunktion Konjunktion Negation Sind g und h Boolesche Ausdrücke, so auch die Disjunktion (g + h), die Konjunktion (g h) und die Negation ( g). Nichts sonst ist ein Boolescher Ausdruck

16 RW-SystemarchitekturKap 1 16 BE(X n ) Vereinbarung für das Schreiben Negation bindet stärker als Konjunktion Konjunktion bindet stärker als Disjunktion + Klammern können häufig weggelassen werden, ohne dass Mehrdeutigkeiten entstehen Statt schreibt man häufig auch statt + auch, statt x i auch x i ´ oder x i _

17 RW-SystemarchitekturKap 1 17 Interpretation Boolescher Ausdrücke Jedem Booleschen Ausdruck kann durch eine Interpretationsfunktion : BE(X n ) B n eine Boolesche Funktion zugeordnet werden. wird folgendermaßen induktiv definiert: (0) = 0 (1) = 1 (x i )( 1,..., n ) = i B n (Projektionsfunktion) ((g+h)) = (g) + (h) (Disjunktion) ((g h))= (g) (h) (Konjunktion) (( g)) = ( (g)) (Negation)

18 RW-SystemarchitekturKap 1 18 Interpretation Boolescher Ausdrücke (e)( ) für ein B n ergibt sich durch Ersetzen von x i durch i für alle i in e und Rechnen in der Booleschen Algebra B. Boolescher Ausdruck beschreibt Gilt (e)=f für einen Booleschen Ausdruck e und eine Boolesche Funktion f, so sagen wir, dass e ein Boolescher Ausdruck für f ist bzw. dass e die Boolesche Funktion f beschreibt. äquivalent Zwei BEs e 1 und e 2 heißen äquivalent (e 1 e 2 ) genau dann, wenn (e 1 ) = (e 2 ). Jeder Boolesche Ausdruck repräsentiert eine Boolesche Funktion. Lässt sich jede Boolesche Funktion als Boolescher Ausdruck darstellen?

19 RW-SystemarchitekturKap 1 19 Spezielle Boolesche Ausdrücke: Polynome Literale positives Literalnegatives Literal Die Booleschen Ausdrücke x i und x i ' heissen Literale, wobei x i als positives Literal und x i ' als negatives Literal bezeichnet wird. Monom Ein Monom ist eine Konjunktion von Literalen mit folgenden Zusatzeigenschaften: jedes Literal kommt höchstens einmal vor, nicht sowohl das positive als auch das negative Literal einer Variablen kommen vor, oder es ist der Boolesche Ausdruck 1. vollständigMinterm Ein Monom heißt vollständig oder Minterm, wenn jede Variable entweder als positives oder als negatives Literal vorkommt.

20 RW-SystemarchitekturKap 1 Konstruktion über Funktionstafeln und ihre Formalisierung Wie baut man einen Booleschen Ausdruck für die durch die Tabelle definierten Booleschen Funktionen? Bsp: Die Funktion, welche s 1 berechnet. 1.Betrachte Einträge, die eine 1 als Ergebnis haben. 2.Konstruiere einen Minterm zu x 1, x 2 und x 3 folgendermaßen: enthält die Spalte zu x i eine 1 x i enthält die Spalte zu x i eine 0 x i 3.Verknüpfe alle Minterme in einer Disjunktion s0s0 s1s1 x3x3 x2x2 x1x1 Funktionstabelle

21 RW-SystemarchitekturKap 1 21 Spezielle Boolesche Ausdrücke: Polynome gehörende Minterm Für ein B n heißt der zu gehörende Minterm Polynom vollständig Eine Disjunktion von paarweise verschiedenen Monomen heißt Polynom. Sind alle Monome des Polynoms vollständig, so heißt das Polynom vollständig. disjunktiven Normalform Unter einer disjunktiven Normalform einer Booleschen Funktion f versteht man ein Polynom von f. kanonischen (bzw. vollständigen) disjunktiven Normalform Unter einer kanonischen (bzw. vollständigen) disjunktiven Normalform einer Booleschen Funktion f versteht man ein vollständiges Polynom von f.

22 RW-SystemarchitekturKap 1 Boolesche Funktionen / BoolescheAusdrücke Lemma Zu jeder Booleschen Funktion f gibt es einen Booleschen Ausdruck, der f beschreibt. Beweis: Es gilt Bem.: Der Boolesche Ausdruck zu einer Booleschen Funktion ist nicht eindeutig. Für jeden Booleschen Ausdruck h gilt (h) = (h+h) = (h+h+h) =...

23 RW-SystemarchitekturKap 1 23 Normalformen kanonische disjunktive Normalform (KDNF) heißt kanonische disjunktive Normalform (KDNF) von f Die kanonische disjunktive Normalform von f ist eindeutig, wenn man voraussetzt, dass die Minterme gemäß ihrer Variablen geordnet sind und die Anordnung von Mintermen im Polynom ebenfalls einer Ordnung folgt. Es gibt weitere zweistufige kanonische Normalformen (konjunktive Normalform, parity-Polynome).

24 RW-SystemarchitekturKap 1 24 Fragen Zweistufige Normalformen aufgrund sehr großer Kosten in der Praxis nur für Boolesche Funktionen mit wenigen Eingängen einsetzbar Wenn es viele Polynome (Boolesche Ausdrücke) für eine Funktion f gibt, wie findet man ein billig(st)es? Wie kann man Boolesche Polynome (Boolesche Ausdrücke) praktisch realisieren? Für den Spezialfall der Booleschen Polynome: Betrachte Programmierbare Logische Felder (programmable logic arrays) bzw. PLAs

25 RW-SystemarchitekturKap 1 (Zweistufige) Logiksynthese 1.4 PLAs und zweistufige Logiksynthese

26 RW-SystemarchitekturKap 1 Programmierbare Logische Felder (PLA) Zweistufige Darstellung zur Realisierung von Booleschen Polynomen f i = m i1 +m i m ik mit m iq aus {m 1,...,m s } Fläche: ~ (m+2n)x(Anzahl_der_benötigten_Monome) Enthält Monom m j k Lite- rale, so werden k Transis- toren in der entsprechen- den Zeile des AND-Feldes benötigt. Besteht die Beschreibung von Funktion f t aus p Mo- nomen, so benötigt man p Transistoren in der ent- sprechenden Spalte des OR-Feldes. Enthält Monom m j k Lite- rale, so werden k Transis- toren in der entsprechen- den Zeile des AND-Feldes benötigt. Besteht die Beschreibung von Funktion f t aus p Mo- nomen, so benötigt man p Transistoren in der ent- sprechenden Spalte des OR-Feldes. AND-Feld OR-Feld m1m1 mjmj msms m2m2 x1x1 x2x2 xnxn fmfm f1f1 f2f2 R1 R1 R1 R1 R1 R1 R1 R1 1 R 1 R 1 R 1 R 1 R 1 R


Herunterladen ppt "Kapitel 1 Der Boolesche Kalkül 1.1 Boolesche Funktionen 1.2 Boolesche Algebren 1.3 Boolesche Ausdrücke."

Ähnliche Präsentationen


Google-Anzeigen