Schaltfunktion, Definition Sei S = { 0,1}. Dann heißt eine Abbildung f: S n S eine Schaltfunktion. = f(x n-1,x n-2,...,,, ), x n-1, x n-2,...,,, S x i X = (x n-1,x n-2,...,,, ) Eingangsvariable Eingangsvektor Funktionswert, Ausgang Grundfunktionen sind die Operationen und, oder und Negation der Schaltalgebra. = & = v = x und-funktion oder-funktion Negation
Alle Schaltfunktionen mit 2 Variablen 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 Mit 2 Variablen lassen sich 16 verschiedene Schaltfunktionen definieren. Mit n Variablen lassen sich 2 (2n ) verschiedene Schaltfunktionen definieren.
Algebraische Darstellung Formeln & v x Aufbau von Formeln aus Formeln Wenn A und B Formeln sind, dann sind auch (A & B) (A v B) A Formeln.
Wertetabelle für 4 Variable Beispiel: = ( v ( & )) & 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0
KV-Diagramm für 4 Variable Karnaugh-Veitch-Diagramm (KV-Diagramm) 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 00 01 11 10 Jedes Kästchen im Karnaugh-Veitch-Diagramm (KV- Diagramm) entspricht einem Eintrag in einer Wertetabelle. Die Anordnung der Kästchen ist so, dass sich die Eingangsbelegungen zweier benachbarter Kästchen nur im Wert einer einzigen Variablen unterscheiden. Die so entstehende Nachbarschaftsbeziehung ist wichtig für die Minimierung von Schaltfunktionen
KV-Diagramm für 4 Variable Karnaugh-Veitch-Diagramm (KV-Diagramm) 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 00 01 11 10 Jedes Kästchen im Karnaugh-Veitch-Diagramm (KV- Diagramm) entspricht einem Eintrag in einer Wertetabelle. Die Anordnung der Kästchen ist so, dass sich die Eingangsbelegungen zweier benachbarter Kästchen nur im Wert einer einzigen Variablen unterscheiden. Die so entstehende Nachbarschaftsbeziehung ist wichtig für die Minimierung von Schaltfunktionen
KV-Diagramm für 4 Variable Standard-KV-Diagramm 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 00 1 0 11 10
KV-Diagramm für 3 Variable Vertikale Anordnung der Kästchen 0 0 0 0 0 1 0 1 0 00 0 1 0 1 1 01 1 0 0 1 0 1 1 1 0 11 10 1 1 1 KV-Diagramm mit nicht verwendeten Variablen
KV-Diagramm für 2 Variable Vertikale Anordnung der Kästchen 0 0 0 1 1 0 1 1 00 01 11 10 KV-Diagramm mit nicht verwendeten Variablen Quadratische Anordnung der Kästchen
KV-Diagramm für 1 Variable Vertikale Anordnung der Kästchen 0 1 0 1 KV-Diagramm mit nicht verwendeten Variablen
KV-Diagramm für 0 Variable Gibt es eigentlich nicht! KV-Diagramm mit nicht verwendeten Variablen
KV-Diagramm: Einsstellenblöcke 1er-Blöcke = Minterme (4 Variable) 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 00 0 0 0 0 1 0 0 0 0 0 11 0 1 0 0 10 0 0 0 0 1-Stellen ( 0, 1, 1, 1 ) = f(,,, ) = = m 7
KV-Diagramm: Einsstellenblöcke 2er-Blöcke (4 Variable) 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 00 0 1 0 0 1 0 0 1 0 0 11 0 0 0 0 10 0 0 0 0 1-Stellen ( 0, 1, 0, ) = f(,,, ) =
KV-Diagramm: Einsstellenblöcke 2er-Blöcke (4 Variable) 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 00 0 0 0 1 1 0 0 0 0 0 11 0 0 0 0 10 0 0 0 1 1-Stellen ( 1, 0,, 0 ) = f(,,, ) =
KV-Diagramm: Einsstellenblöcke 4er-Blöcke (4 Variable) 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 00 0 0 0 0 1 0 1 1 0 0 11 1 1 0 0 10 0 0 0 0 1-Stellen ( 0,,, 1 ) = f(,,, ) =
KV-Diagramm: Einsstellenblöcke 4er-Blöcke (4 Variable) 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 1 0 0 1 0 1 0 1 0 1 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 00 1 0 0 1 1 0 0 0 0 0 11 0 0 0 0 10 1 0 0 1 1-Stellen (, 0,, 0 ) = f(,,, ) =
KV-Diagramm: Einsstellenblöcke 4er-Blöcke (4 Variable) 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 00 1 0 0 0 1 0 1 0 0 0 11 1 0 0 0 10 1 0 0 0 1-Stellen ( 0, 0,, ) = f(,,, ) =
KV-Diagramm: Einsstellenblöcke 8er-Blöcke (4 Variable) 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 00 1 1 0 0 1 0 1 1 0 0 11 1 1 0 0 10 1 1 0 0 1-Stellen ( 0,,, ) = f(,,, ) =
KV-Diagramm: Einsstellenblöcke 16er-Block (4 Variable) 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 0 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 1 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 00 1 1 1 1 1 0 1 1 1 1 11 1 1 1 1 10 1 1 1 1 1-Stellen (,,, ) = f(,,, ) = 1
KV-Diagramm: Nullstellenblöcke 1er-Blöcke = Maxterme (4 Variable) 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 00 1 1 1 1 1 0 0 1 1 1 11 1 1 1 1 10 1 1 1 1 0-Stellen ( 0, 0, 0, 1 ) = f(,,, ) = v v v = M 1
KV-Diagramm: Nullstellenblöcke 2er-Blöcke (4 Variable) 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 0 0 1 0 1 0 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 00 1 0 1 1 1 0 1 0 1 1 11 1 1 1 1 10 1 1 1 1 0-Stellen ( 0, 1, 0, ) = f(,,, ) = v v
KV-Diagramm: Nullstellenblöcke 4er-Blöcke (4 Variable) 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 0 1 0 1 1 0 1 1 0 0 1 1 1 0 1 1 1 1 1 0 0 1 1 1 1 0 00 1 1 1 1 1 0 1 1 1 1 11 1 1 0 0 10 1 1 0 0 0-Stellen ( 1,, 1, ) = f(,,, ) = v
KV-Diagramm: Nullstellenblöcke 8er-Blöcke (4 Variable) 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 00 0 1 1 0 1 0 0 1 1 0 11 0 1 1 0 10 0 1 1 0 0-Stellen (, 1,, ) = f(,,, ) =
KV-Diagramm: Nullstellenblöcke 16er-Block (4 Variable) 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 1 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 0 00 0 0 0 0 1 0 0 0 0 0 11 0 0 0 0 10 0 0 0 0 0-Stellen (,,, ) = f(,,, ) = 0
Schaltbilder Smbole und oder Negation NAND NOR XOR Beispiel = (( & ) v ( & ))
Wertetabelle algebraischer Ausdruck
Expansions- und Reduktionstheoreme Expansionstheoreme f(x n-1,...,, ) = ( & f(x n-1,...,,0)) v ( & f(x n-1,...,,1)) f(x n-1,...,, ) = ( v f(x n-1,...,,1)) & ( v f(x n-1,...,,0)) Reduktionstheoreme & f(x n-1,...,, ) = & f(x n-1,...,,0) & f(x n-1,...,, ) = & f(x n-1,...,,1) v f(x n-1,...,, ) = v f(x n-1,...,,1) v f(x n-1,...,, ) = v f(x n-1,...,,0)
Hauptsatz der Schaltalgebra
Beispiel zum Hauptsatz der Schaltalgebra
Normalformen Disjunktive Normalformen Eine Schaltfunktion f(x n-1,...,, ) ist in einer disjunktiven Normalform, wenn f eine Disjunktion von Konjunktionen gewisser Variablen ist. Kanonische disjunktive Normalform Eine disjunktive Normalform heißt kanonische disjunktive Normalform, wenn in jeder Konjunktion alle Variablen vorhanden sind, jede Variable genau einmal vorkommt und alle Konjunktionen von einander verschieden sind. Eine Schaltfunktion f(x n-1,...,, ) ist in der kanonischen disjunktiven Normalform, wenn f eine Disjunktion von Mintermen ist, und wenn kein Minterm mehrfach auftritt. Konjunktive Normalformen Eine Schaltfunktion f(x n-1,...,, ) ist in einer konjunktiven Normalform, wenn f eine Konjunktion von Disjunktionen gewisser Variablen ist. Kanonische konjunktive Normalform Eine konjunktive Normalform heißt kanonische konjunktive Normalform, wenn in jeder Disjunktion alle Variablen vorhanden sind, jede Variable genau einmal vorkommt und alle Disjunktionen von einander verschieden sind. Eine Schaltfunktion f(x n-1,...,, ) ist in der kanonischen konjunktiven Normalform, wenn f eine Disjunktion von Maxtermen ist, und wenn kein Minterm mehrfach auftritt.
Umwandlung eines algebraischen Ausdrucks in die kanonische disjunktive [konjunktive] Normalform Anwendung der Theoreme der Schaltalgebra 1. Verknüpfungen, die keine der Grundverknüpfungen und oder oder sind, werden durch äquivalente Ausdrücke ersetzt, die nur noch die Grundverknüpfungen enthalten. 2. Die Regeln von de Morgan werden so oft angewendet, bis der Negationsstrich nur noch über einzelnen Variablen auftritt. 3. Das Distributivgesetz wird so oft angewendet, bis der Ausdruck eine Disjunktion von Konjunktionen [Konjunkion von Disjunktionen] ist. 4. Jede Konjunktion [Disjunktion], in der eine Variable x i weder bejaht (nicht negiert) noch negiert vorkommt, wird mit (x i v x i ) konjunktiv [(x i x i ) disjunktiv] ergänzt. Mit dem Distributivgesetz wird der Ausdruck wieder in eine disjunktive [konjunktive] Form gebracht. 5. Mehrfach vorkommende gleiche Konjunktionen [Disjunktionen] werden nur einmal berücksichtigt. Mit Hilfe einer Wertetabelle Zunächst wird eine Wertetabelle erstellt. Dann bildet man die Disjunktion [Konjunktion] aller Minterme [Maxterme], für die die Schaltfunktion den Wert 1 [0] annimmt, und erhält so die disjunktive [konjunktive] Normalform. Zusammenhang zwischen kanonischer disjunktiver und kanonischer konjunktiver Normalform Sei n die Anzahl der Variablen einer Schaltfunktion, n m die Anzahl der Minterme in der kanonischen disjunktiven Normalform und n M die Anzahl der Konjunktionen in der kanonischen konjunktiven Normalform, dann gilt: n m + n M = 2 n Ist die kanonischen disjunktive Normalform einer Schaltfunktion bekannt, erhält man die kanonischen konjunktive Normalform, indem man die Konjunktion der Komplemente aller Minterme bildet, die in der disjunktiven Normalform nicht enthalten sind.