Verwenden von Karnaugh-Karten zum Erstellen und Vereinfachen von Booleschen Ausdrücken

Ich versuche, eine Schaltung basierend auf K-Karten zu konstruieren (siehe Bild) - und ich muss dies nur durch zweistufige Logik (ohne Inverter) tun .

K-Karten

Einige der K-Maps kamen natürlich in zweistufiger Logik heraus, aber einige von ihnen nicht. Ich habe UND-ODER-Logik verwendet, indem ich Einsen genommen habe. Für diejenigen, die zwei Logikpegel überschritten haben, habe ich Folgendes erhalten:

1. Spalte, 4. Karte:

A B + A ¯ B ¯ C + A B ¯ C ¯
Dies würde 3 UND-Gatter (erste Ebene), ein ODER mit zwei Eingängen (zweite Ebene; wir haben keine ODER-Gatter mit drei Eingängen) und ein weiteres ODER mit zwei Eingängen (dritte Ebene) erfordern.

2. Spalte, 2. Karte:

A B ¯ C ¯ + A B C + A ¯ B C ¯
Auch dies würde sich über zwei Ebenen erstrecken.

2. Spalte, 3. Karte:

A ¯ B ¯ C ¯ + A C + A B C ¯
Wieder über zwei Ebenen.

Gibt es eine Möglichkeit, diese Ausdrücke weiter zu reduzieren? Ich dachte, der Zweck der Verwendung von K-Maps sei es, boolesche Ausdrücke in ihrer einfachsten Form zu erhalten. naja zumindest meistens.

Sie haben also NAND/AND-Gatter mit 3 Eingängen, aber keine OR/NOR-Gatter mit 3 Eingängen? Eine K-Karte gibt Ihnen eine minimale SOP-Darstellung, aber das ist oft nicht optimal für die Implementierung.
Leider nein, wir haben keine ODER/NOR-Gatter mit drei Eingängen. Gibt es eine Möglichkeit, es zu reduzieren?
Aber Sie haben 3 Eingangs-NAND/AND-Gatter?
Das ist richtig. Warum?
Wir verwenden übrigens TTL-Logik, nicht sicher, ob das relevant ist.
Verwenden Sie also einfach diese (das NAND / AND mit 3 Eingängen). Es gibt Möglichkeiten, UND-Gatter in ODER-Gatter umzuwandeln, wenn genügend invertierende Punkte vorhanden sind.
Würde das nicht viel mehr als zwei Logikebenen einführen?
Auch nur zur Verdeutlichung. Du sprichst von DeMorgans Theorem, richtig? Ist das nicht für NAND -> Negativ ODER, NOR -> Negativ UND?
Ja, ich spreche von DeMorgans Theorem, aber es gilt nicht nur für NOR/NAND. Das Theorem beschreibt eine Transformation von Operatoren und logischen Umkehrungen, was zu der Fähigkeit führt, zwischen (N)AND und (N)OR umzuwandeln. Unter der Annahme, dass Sie kostenlos invertierte Eingänge erhalten, kann all dies mit 4 NAND-Gattern erreicht werden.
Hm, das ist ein guter Punkt. Ich bin mir nicht sicher, ob nur die Eingangsinversionen kostenlos sind oder ob alle Inversionen frei sind. Ich werde es auf jeden Fall ausarbeiten. Aus Neugier, gibt es eine andere Möglichkeit, diesen Ausdruck auf zwei physische Tore zu reduzieren?
Ausgangsumkehrungen sind kostenlos, solange Sie zwischen AND/NAND wählen können. Den Ausdruck auf zwei physikalische Tore reduzieren? Sehr unwahrscheinlich mit Ihren komplizierteren Ausdrücken, ohne benutzerdefinierte Gates zu erstellen. Wenn Sie benutzerdefinierte Gates zulassen, könnten Sie es auf 1 Gate reduzieren, aber es müsste sich wirklich lohnen. Zwei separate ICs der 7400-Serie sollten einfach sein, aber das haben Sie wahrscheinlich nicht gemeint.
Ups, eigentlich meinte ich drei Tore. Ich verstehe aber, was du meinst. Ich habe mich nur gefragt, warum mein Professor ausdrücklich gesagt hat, wir dürften drei Tore nicht überschreiten. Meinen Sie frei in dem Sinne, dass das Invertieren im Wesentlichen das Richtige auswählt, da ich zwischen UND / NAND wählen kann? Ich dachte, Sie meinten nach der willkürlichen Regel meines Professors, dass Inverter frei sind, was bedeutet, dass sie nicht als Logikpegel zählen.
Deine Frage erscheint mir ziemlich zusammenhanglos. Was meinst du mit "Zwei-Ebenen-Logik"? K-Maps bietet Ihnen eine minimale zweistufige (aber nicht minimale mehrstufige) Logiklösung mit allen NANDs oder allen NORs, aber das wissen Sie bereits . Außerdem ist unklar, welche Funktion Sie minimieren möchten. Bitte konsultieren Sie eine Standardreferenz und verwenden Sie eine Terminologie, mit der sich die Leute identifizieren können ... oder erklären Sie zumindest, was Sie mit Ihrer meinen.
Basierend auf einigen vorübergehenden Bemerkungen darüber, dass einige Schaltkreise nicht vorhanden sind, schätze ich, dass Sie davon sprechen, nur Schaltkreise mit einem Fan-In von zwei zu verwenden . Dies zusätzlich zur zweistufigen Begrenzung oder ist das Fan-in von zwei die einzige Begrenzung? Sind Sie auch auf einige Arten von Toren beschränkt? Im Allgemeinen ist das Problem der mehrstufigen Minimierung einer Funktion, die nur einen festen Satz von Gattern (und Negationen) verwendet, ziemlich schwierig , ohnehin gut von Hand zu erledigen.

Antworten (2)

Wenn wir Exor-Gates zulassen, dann ist hier eine Lösung.

1. Spalte 4. Karte: (A exor C) + AB

2. Spalte 2. Karte: (A exor B) + ABC

2. Spalte 3. Karte: !(A exor C) + AB, alternativ (A exnor C) + AB

Bearbeiten:

Nehmen Sie zum Beispiel Spalte 1 Karte 4. Die ersten beiden Spalten haben ein Muster, das ich als XOR-Gatter erkenne. Erste Reihe ist 01, zweite Reihe ist 10. Jetzt schaue ich mir die Kästchen mit '1' an, A ändert sich, wenn ich zwischen den beiden springe. Suchen Sie nach einer anderen Variablen, die sich ebenfalls ändert; in diesem Fall ist es C. A und C sind entweder 01 oder 10 in den '1'-Kästchen: das sind die Eigenschaften eines XOR-Gatters. Nur zwei '1' verbleiben in der Karte und sie werden in den Begriff AB gruppiert.

Jetzt Spalte 2 Karte 2: Hier sind zwei Gruppen, die für ein XOR-Gatter funktionieren; Spalte 1 & 4 und Spalte 3 & 4. Die erste Gruppe erzeugt ein XOR-Gatter, die zweite ein XNOR-Gatter. Beim XNOR-Gatter müssen beide Eingänge gleich sein, um am Ausgang eine '1' zu erzeugen.

Schließlich Spalte 2 Karte 3. Diese Karte sieht aus wie Spalte 1 Karte 4, außer dass das XOR-Muster umgekehrt ist. Das heißt, wir verwenden ein XNOR-Gatter anstelle des XOR in der ersten Karte, oder wir fügen dem XOR-Ausgang einen Inverter hinzu.

Beachten Sie übrigens in Bezug auf Ihre Gleichung für Spalte 1 Karte 4, dass die beiden unteren Ecken beide '1' haben. Sie können sie gruppieren, um den Term A!C zu erzeugen, wodurch Ihr dritter Term auf zwei Variablen reduziert wird.

Wie kommst du darauf? Ich versuche, andere Ausdrücke zu vereinfachen, also bin ich daran interessiert, zu lernen, wie man das macht.

Annahmen:

  • NOTs zählen nicht.

  • 3-Eingangs-ANDs und NANDs sind gültig.

  • ORs und NORs mit 2 Eingängen.

Sie haben einige Fehler in Ihren Gleichungen. Kanten von K-Maps schleifen sich herum und Sie können Begriffe wiederverwenden.

Die richtige Antwort für 1. Spalte, 4. kmap lautet:

A B + A ¯ B ¯ C + A C ¯

Nehmen Sie DeMorgans: Ausdruck umkehren, Vorzeichen ändern, Terme umkehren.

A B ¯ A ¯ B ¯ C ¯ A C ¯ ) ¯ ¯

Zwei NANDs mit 2 Eingängen + zwei NANDs mit 3 Eingängen. Zwei Ebenen.

Die richtige Antwort für 2. Spalte, 3. kmap lautet:

A ¯ B ¯ C ¯ + A C + A B

Nehmen Sie DeMorgans:

A ¯ B ¯ C ¯ ¯ A C ¯ A B ¯ ¯

Wieder zwei NANDs mit 2 Eingängen + zwei NANDs mit 3 Eingängen. Zwei Ebenen.

Ich glaube, das ist genug für Sie, um ein Konzept zu bekommen. Ihr Lehrer gibt Ihnen ein Problem, das nicht gelöst werden kann, wenn Sie nicht über den Tellerrand des UND-ODERs hinausdenken. UND-ODER wird zu NAND-NAND.