Schaltgleichung vereinfachen < Sonstiges < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 18:31 Fr 06.10.2017 | Autor: | volk |
EDIT: Ich sehe gerade, dass die Formeln nicht korrekt dargestellt werden.
Hallo,
ich versuche die Gleichungen für den Volladdierer zu bestimmen. Aus der Wertetabelle erhalte ich für die Summe die folgende:
[mm] S=A\bar{B}\bar{C}{\vee}\bar{A}B\bar{C}{\vee}\bar{A}\bar{B}C
[/mm]
Zusammengefasst:
[mm] S=\bar{C}(A{\oplus}B){\vee}C(\bar{A}\bar{B}{\vee}AB)
[/mm]
Laut Skript lautet die Gleichung für den Ausgang S des Volladdierers
[mm] S=A{\oplus}B{\oplus}C
[/mm]
Meine Frage ist, wie man die Gleichung soweit zusammenfassen kann, dass das Ergebnis rauskommt?
Ich habe mittlerweile auch das Gefühl, dass viele Lösungen richtig sind und man sich die 'schönste' aussucht.
Für den Ausgang C (Carry Output) z.B. erhalte ich aus der Wertetabelle und mittels KV-Diagramm minimiert:
[mm] C_{out}=AB{\vee}C(A{\vee}B)
[/mm]
Laut Skript:
[mm] C_{out}=AB{\vee}C(A{\oplus}B)
[/mm]
Beide Gleichungen liefern nach Wertetabelle die gleichen Ergebnisse.
Wieso steht im Skript die Lösung mit dem 'exklusiven Oder' oder anders, was unterscheidet sie von der Lösung mit dem einfachen Oder?
Viele Grüße
volk
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 11:24 So 08.10.2017 | Autor: | Infinit |
Hallo Volk,
wenn ich mal das Karnaugh-Diagramm für so einen Volladdierer aufstelle, so bekomme ich folgendes Bildchen:
[Dateianhang nicht öffentlich]
Die Einsen sind hier wunderbar verteilt und ich sehe da keine Chance, irgendwelche Gebiete für eine Minterm-Beschreibung zusammenzufassen. Du wirst hier vier Terme brauchen, und nicht nur die drei, die Du angegeben hast. Mit Hilfe der Boolschen Algrabra kommst Du unmöglich in einem Schritt zu einer solchen Beschreibung, wie Du sie in Deiner zweiten Gleichung angegeben hast.
Wenn Du jedoch nur die Aussage des Skripts überprüfen willst, so kannst Du ja ohne Probleme die Definition der XOR-Verknüpfung benutzen. Diese besagt ja, dass der Ausgang solch eines Gatters dann eine "1" ergibt, wenn eine ungeradzahlige Anzahlen von Einsen am Eingang anliegt. Dass dies stimmt, kannst Du aus dem Karnaugh-Diagramm direkt ablesen.
Viele Grüße,
Infinit
Dateianhänge: Anhang Nr. 1 (Typ: jpg) [nicht öffentlich]
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 19:09 So 08.10.2017 | Autor: | volk |
Hallo Infinit,
vielen Dank für deine Antwort. Du hast Recht. Ich habe einen Term unterschlagen:
[mm] S=A\bar{B}\bar{C}{\vee}\bar{A}B\bar{C}{\vee}\bar{A}\bar{B}C{\vee}ABC
[/mm]
Jetzt klappt auch die Zusammenfassung:
[mm] S=\bar{C}(A{\oplus}B){\vee}C(\bar{A}\bar{B}{\vee}AB)
[/mm]
Es keinen Weg von diesem Term zu der doppelten XOR-Verknüpfung zu gelangen, sondern die Zusammenfassung ist nur über die Definition des XOR möglich?
Viele Grüße
volk
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 18:44 Fr 13.10.2017 | Autor: | Infinit |
Hallo Volk,
ich glaube, ich habe eine Lösung gefunden, indem ich, was ein Ingenieur gerne macht, das Problem mal "von hinten" angegangen bin. Ausgangslage sind die vier Terme aus Deiner ersten Gleichung, die man in EXOR-Terme umwandeln müsste. Ich habe vor gut 35 Jahren so etwas nicht gelernt, aber wozu gibt es das Internet heute. Ich habe also mich mal auf die Suche gemacht, ob es nicht ein Verfahren gibt, mit dessen Hilfe man Minterme, die wir ja haben, mit EXOR-Verknüpfungen darstellen kann. Das gibt es tatsächlich und es nennt sich die Ringsummenormalform. Schaue mal in Wikipedia nach, da gibt es ein schönes Beispiel, das die Vorgehensweise klarmacht. In dem Ausdruck dürfen keine negierten Terme mehr auftreten, das bekommt man hin, indem man
[mm] \bar{x}=x \oplus 1 [/mm]
ausnutzt. Dann habe ich vier, fünf Zeilen rumgerechnet nach den Regeln, die in Wikipedia angegeben sind. Es ist sozusagen ein Ausmultiplizieren und demzufolge existieren danach eine Menge Terme. Negative Terme tauchen nicht mehr auf, aber dafür eine Menge positive.
Hier sind alle meine Terme:
[mm] ABC \oplus AB \oplus AC \oplus A \oplus ABC \oplus AB \oplus BC \oplus B \oplus ABC \oplus AC \oplus BC \oplus C \oplus ABC [/mm]
Das sieht wild aus, aber nun sollte man ausnutzen, dass eine geradzahlige Anzahl von Exor-Verknüpfungen des gleichen Terms gerade eine Null ergeben;
[mm] y \oplus y = 0 [/mm]
und das gilt auch für vier Terme. Jetzt schaue mal oben nach, wieviele solcher Verknüpfungen dort auftauchen, es sind jeweils zwei oder vier, man kann sie also einfach rausstreichen, da die Exor-Verknüpfung mit einer Null gerade den Term ergibt, der mit der Null verknüpft ist. Damit verschwinden alle Terme, die mehr als eine Variable beinhalten, und übrig bleibt
[mm] A \oplus B \oplus C [/mm]
und das wolltest Du doch haben.
Viele Grüße,
Infinit
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 14:25 Sa 14.10.2017 | Autor: | volk |
Hallo Infinit,
wow, vielen Danke für deine ausführliche Antwort. Genau so etwas habe ich gesucht. Ich werde mir den Artikel bezüglich der "Ringsummenormalform" mal ausführlichst durchlesen
Schöne Grüße
volk
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 15:11 Sa 14.10.2017 | Autor: | Infinit |
Hallo Volk,
gerne geschehen. Die Methode ist, wie man so schön heute sagt, ergebnisgetrieben, scheint aber zu klappen. Eventuell studierst Du ja etwas in dieser Richtung, dann kann es sein, dass Du damit problemlos zurecht kommst, aber "einfach so" kommt man sicher nicht auf diese Methode.
Viel Spaß beim Nachverfolgen wünscht
Infinit
|
|
|
|