DW EditSeite anzeigenÄltere VersionenLinks hierherAlles aus-/einklappenNach oben Diese Seite ist nicht editierbar. Sie können den Quelltext sehen, jedoch nicht verändern. Kontaktieren Sie den Administrator, wenn Sie glauben, dass hier ein Fehler vorliegt. ====== Allgemeines ====== * bei der Prüfung sind **keine elektronische Hilfsmittel erlaubt (kein Taschenrechner, Mobiltelefon, Laptop)**. Bereiten Sie sich auf die händische Rechnung vor. * **Ergebnisse ohne Herleitung werden nicht bewertet**. * **Lesen Sie bitte die Aufgabenstellung gut durch**. Bearbeiten Sie die Aufgabe in der gefragten Art und Weise (z.B. als Gatterschaltungen, mit Funktionstabelle, mit Angabe der Rechenregel) * **Nutzen Sie die Chance Unterlagen vorzubereiten**. Eine Formelsammlung (z.B. mit Gesetzen der Booleschen Algebra) verkürzt die Suche in den Unterlagen. Weiterhin bietet es sich an das Skript mit Haftzetteln auszustatten, damit die Suche leichter fällt. \\ <fc #ff0000>Beachten Sie aber, dass in der Klausur weder Formelsammlungen noch Skript zugelassen sind.</fc> ====== Umrechnung der Zahlensysteme ====== * Kennzeichnen Sie bitte immer das Zahlensystem (z.B. Hexadezimalzahlen: 0x10, 10H, 10h) * Die Umrechnung von Hex- in Binärsystem oder zurück (1101b <-> Dh) geht am leichtesten jeweils für ein Nibble über eine Tabelle. * Die Umrechnung von Hex- in Binärsystem oder zurück ist meist einfacher als von Dezimalsystem in die beiden Systeme. Die Umrechnung von Binär- in Dezimalsystem ist etwas aufwändig. Ist die Umwandlung von Dezimal- in Hex- und Binärsystem gefordert, dann ist es fast immer einfacher zunächst die Dezimalzahl in eine Hex-Zahl und dann in eine Binärzahl umzuwandeln (55d = 37h = 0011 0111b). * Auch die Nachkommastellen werden beginnend vom Komma zu Nibbles zusammengefasst. * Beachten Sie, dass dass die Nachkommastellen natürlich auch umzurechnen sind (0,5h ≠ 0,5d !) ====== Vereinfachen von Booleschen Ausdrücken ====== * Bei Funktionstabellen zu Gatterschaltungen bieten sich z.B. Spalten für Zwischenergebnisse an. Ansonsten kann ich bei einem falschen Ergebnis die Zwischenschritte nicht nachvollziehen und damit keine Punkte vergeben. * Verkürzen Sie logische Ausdrücke soweit, dass die möglichst wenig logische Verknüpfungen benötigt werden (häufig ist eine Verkürzung über das De Morgansche Gesetz, Distributivgesetz oder die Definition der XOR-Verknüpfung noch möglich) * Eignen Sie sich [[https://youtu.be/2UwxdCLFW70?t=2m43s|diese Methode an]] an, um binäre Zahlen schnell untereinander schreiben zu können. ====== Aufstellen der KNF und DNF====== * Flüchtigkeitsfehler im Aufstellen der DNF und KNF können vermieden werden, wenn die gleiche Sortierung der Eingänge genutzt wird, wie in der Funktionstabelle. * Ist eine Minimierung der Normalform gefordert, dann sollten Sie die die Booleschen Gesetze anwenden (siehe Vereinfachen der Booleschen Ausdrücke). ====== KV-Diagramme ====== ===== Erstellen eines KV-Diagramms ===== * Falls Sie für viele Ausgänge die boolesche Funktion minimieren sollen und mit einem KV-Diagramm konfrontiert sind, für das Sie keine Vorlage haben, können Sie folgendermaßen vorgehen: Erstellen Sie zunächst ein KV-Diagramm, in dem Sie nur die Dezimalzahlen der Positionen eintragen. Zwei Koordinaten sind schnell in eingetragen. Die 0 ist stets in der Zelle, bei der alle Eingänge negiert sind (i.d.R. oben links). Der Maximalwert ist stets in der Zelle bei der alle Eingänge nicht-negiert sind (i.d.R. in der Mitte). ===== Auslesen der Primimplikanten eines KV-Diagramms ===== - Stellen Sie zunächst fest, was gesucht ist: * Minterme = konjunktive Form = "Gruppen aus **0**en" oder * Maxterme = disjunktive Form = "Gruppen aus **1**en" - Suchen Sie die jeweilig gesuchten Implikanten (**0**en oder **1**en) - Versuchen Sie ausgehend von den Implikanten einen möglichst großen Primimplikanten (= Fläche / Gruppe mit gleichem Binärwert) zu bilden. "Don't care" Zustände (gekennzeichnet mit "d.c.", "-" oder "x") dürfen als geeigneter Implikant angesehen werden. Zu beachten ist, dass nur bestimmte Arten von Gruppen als Primimplikanten zulässig sind: * Die Größe der Primimplikanten kann nur eine Potenz zur Basis 2 sein (1, 2, 4, 8, ...). * Es können nur geradlinige Implikanten verbunden werden, bzw. solche, die nicht nur über Eck aneinander grenzen (z.B. ◨, ▣). - Wenn Sie alle größtmöglichen Primimplikanten gefunden haben, dann ist zu prüfen, welche Abhängigkeiten diese voneinander haben. Häufig gibt es eine Konstellation der Primimplikanten, die am wenigsten Terme aufweist. - Anhand der eingezeichneten Primimplikanten lässt sich die logische Funktion in Gleichungsform ableiten. Im Allgemeinen kann diese noch vereinfacht werden (z.B. über Definition des XOR oder De Morgan'sches Gesetz). ====== Schaltwerke / Zustandsautomaten ====== ==== Schaltwerkssynthese ==== Es bietet sich bei jeder Schaltwerkssynthese folgendes Vorgehen an: - Sorgfältiges Durchlesen der Angaben - Feststellen, welche Vorgaben bereits vorhanden sind, z.B. * Art des Automats (asynchron = Mealy-Automat, synchron = Medwedew-Automat oder Moore-Automat) * Art der zu verwendenden Flipflops (D-FF, JK-FF, SR-FF, ...) - Feststellen der Eingangs-, Zustands- und Ausgangsvariablen - Feststellen der Anzahl der notwendigen Flipflops * bei Mealy-/ Moore-Automaten über Anzahl der unterschiedlichen Zustände * bei Medwedew-Automaten über den auszugebenden Maximalwert - Aufstellen eines Zustandsübergangsdiagramms * Bei Mealy- und Moore-Automaten kann die Zuordnung der Zustands- zu Ausgangswerte beliebig erfolgen. * Bei Medwedew-Automaten ist die Zuordnung der Zustands- zu Ausgangswerte direkt vorgegeben. - Erstellen der Zustandsübergangstabelle aus dem Zustandsübergangsdiagramm * Es bietet sich die unten stehende Spaltenanordnung an. \\ Damit sind die Ein- und Ausgänge für die verschiedenen Schaltnetze (Übergangs- und Ausgangsnetzwerk) direkt nebeneinander. \\ <WRAP center round box 90%> ^Zustands- \\ übergangs- \\ tabelle ^ <fc #800000>Aktueller Zustand</fc> ^^^ <fc #008000>Eingangswert \\ des Automaten </fc> ^ <fc #ff00ff>Nächster Zustand</fc> ^^^ <fc #6495ed>Ausgangswert \\ des Automaten </fc> ^^ | | <fc #800000>**Z2**</fc> |<fc #800000>**Z1**</fc> | <fc #800000>**Z0**</fc> | <fc #008000>**X0**</fc> | <fc #ff00ff>**Z2'**</fc> | <fc #ff00ff>**Z1'**</fc> | <fc #ff00ff>**Z0'**</fc> | <fc #6495ed>**Y1**</fc> | <fc #6495ed>**Y0**</fc> | | ::: | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | | ::: | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | | ::: | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | | ::: | ... | ... | ... | ... | ... | ... | ... | ... | ... | | ::: | ||||||||| | \\ **Übergangsnetzwerk (ÜNW)** |||||||||| |Eingangswert \\ des ÜNW | <fc #800000>Aktueller Zustand</fc> ||| <fc #008000>Eingangswert \\ des Automaten</fc> | ||||| |Ausgangswert \\ des ÜNW *) | |||| <fc #ff00ff>Nächster Zustand</fc> ||| || | \\ **Ausgangsnetzwerk (ANW)** |||||||||| |Eingangswert \\ des ANW | <fc #800000>Aktueller Zustand</fc> ||| nur bei Mealy: \\ <fc #008000>Eingangswert</fc> | ||||| |Ausgangswert \\ des ANW | |||||||<fc #6495ed>Ausgangswert \\ des Automaten </fc>|| </WRAP> * *) Der Ausgangswert des Übergangsnetzwerk ist nur der <fc #ff00ff>nächste Zustand</fc>, wenn das Schaltwerk auf DD-Flipflops realisiert ist. Falls das Schaltwerk nicht auf D-FF realisiert ist, muss eine Umrechnung in FF-Eingangswerte berücksichtigt werden. - Aus den Spalten für das Übergangsnetzwerk und Ausgangsnetzwerk können die KV-Diagramme für die jeweiligen Schaltnetze erstellt werden. CKG Edit