Warum implementieren wir immer das Komplement des booleschen Ausdrucks, wenn wir eine CMOS-Schaltung entwerfen?

Ich bin neu in der Implementierung von booleschen Ausdrücken in CMOS-Form, und ich verstehe, dass das "C" in CMOS für "Complementary" steht, es handelt sich also um eine Inverterschaltung.

Was ich nicht verstehe, ist: Alle Tutorials sagen, dass Sie, wenn Sie ein "UND" -Gatter entwerfen möchten, die Transistoren in Reihe schalten müssen, wenn es sich um nMOS handelt, und parallel , wenn es sich um pMOS handelt . Warum das?

Warum können wir nicht einfach sagen "für UND-Gatter: Platzieren Sie den nMOS parallel und den pMOS in Reihe", damit wir die Funktionen direkt implementieren können, ohne dass ein Inverter vor dem Ausgang erforderlich ist?

Würde das ein Problem schaffen, auf das ich noch nicht gestoßen bin?

Ich hatte eine CMOS-Volladdierschaltung, aus der ich den booleschen Ausdruck extrahieren musste, und ich bemerkte, dass der Ausdruck, den ich extrahierte, gemäß den oben genannten Implementierungsregeln korrekt war, aber dann bemerkte ich den Inverter vor dem Ausgang und war verwirrt. Gibt es einen logischen Grund dafür, dass die Regeln so sind?

BEARBEITEN: Im folgenden Bild entspricht die ODER-Operation in nMOS der Parallelschaltung der Transistoren. Das Gegenteil gilt für pMOS. Meine Frage ist, warum mussten wir die Umkehrfunktion implementieren? Hätten wir die Schaltung nicht direkt herstellen können, indem wir die ursprüngliche Funktion verwendet und die "Regeln" über OR entsprechend nMOS parallel invertiert hätten (sie stattdessen "nMOS entspricht nMOS in Reihe" machen)?

implementierte Funktion ist !Z.  Warum nicht direkt Z?

(Link des Videos, wo ich den obigen Screenshot habe: https://www.youtube.com/watch?v=7XEUB_dTaK0 )

Ein Schema ist besser als Worte. Sie können einen hinzufügen, indem Sie die CircuitLab-Schaltfläche in der Editor-Symbolleiste verwenden. Doppelklicken Sie auf eine Komponente, um ihre Eigenschaften zu bearbeiten. 'R' = drehen, 'H' = horizontal spiegeln. 'V' = vertikaler Flip. Beachten Sie, dass bei Verwendung der CircuitLab-Schaltfläche in der Editor-Symbolleiste und „Speichern und Einfügen“ im Editor ein bearbeitbarer Schaltplan in Ihrem Beitrag gespeichert wird. Das macht es uns leicht, unsere Antworten zu kopieren und zu bearbeiten. Sie benötigen kein CircuitLab-Konto, keine Screengrabs, keine Bild-Uploads, kein Hintergrundraster.
Why can't we say "for AND gate: place the nMOS in parallel and the pMOS in series" so that we'll be able to implement the functions directly, without need of an inverter before the output?----- NEIN, denn das wird nicht sein A . B , es wird sein A ' . B ' stattdessen. Zeichnen und analysieren ....
aber wir werden den Wechselrichter entfernt haben. Wird es dadurch nicht wieder AB?
@mltsd Ich denke, Sie konzentrieren sich zu sehr auf die boolesche Algebra und verwenden falsche Ideen, die schwer zu überprüfen sind, da sie in Gleichungsform vorliegen. Setzen Sie sich hin und zeichnen Sie eine Wahrheitstabelle eines UND- oder ODER-Gatters. Dann Parallel<->Reihe tauschen und die Wahrheitstabelle neu zeichnen. Sie sollten feststellen, dass dies die Operation ändert, aber die Umkehrung der Eingänge bleibt (zumindest habe ich das gefunden, es sei denn, ich habe einen Fehler gemacht).
@DKNguyen Ich habe verstanden, wo ich verwirrt war. Ich habe mir nMOSFETs in Reihe angesehen und das in eine UND-Operation übersetzt, wenn es sich um ein NAND handelt. Muss das irgendwo gesehen haben und verwirrt gewesen sein.

Antworten (3)

In CMOS (wie in den meisten Logikfamilien) möchten wir immer vermeiden, dass die Stromversorgung gegen Masse kurzgeschlossen wird.

Nehmen wir also an, Sie haben ein NAND-Gatter, das so aussieht:Geben Sie hier die Bildbeschreibung ein

Wir müssen sicherstellen, dass, wenn der Pfad von Z zur Erde eingeschaltet ist, der Pfad von Z zu Vdd ausgeschaltet sein muss.

Damit also ein Pfad von Z zur Erde vorhanden ist, müssen sowohl N1 als auch N2 eingeschaltet sein. Dazu müssen sowohl A als auch B HIGH sein. Aber wenn sowohl A als auch B hoch sind, dann sind P1 und P2 beide abgeschnitten. Also kein Weg durch sie hindurch.

Wir müssen auch sicherstellen, dass, wenn der Pfad von Z zu Vdd eingeschaltet ist, der Pfad von Z zu Masse ausgeschaltet sein muss.

Damit es also einen Pfad von Z nach Vdd gibt, muss entweder P1 oder P2 eingeschaltet sein. Dazu muss entweder A oder B (oder beide) LOW sein. Wenn A niedrig ist, dann ist N2 abgeschnitten. Wenn B niedrig ist, dann ist N1 abgeschnitten.


Wie in der früheren Antwort vorgeschlagen, bezieht sich das "Komplementär" in CMOS auf die Geräte. Aber tatsächlich müssen in statischen Gattern die Pull-up- (P-Vorrichtung) und Pull-down- (N-Vorrichtung) Teilschaltungen komplementär sein.

Die Regel lautet: Bei einer gegebenen Pulldown-Schaltung, die durch ein seriell-paralleles Netzwerk beschrieben wird: a) Transformiere für zwei beliebige Knoten, die durch zwei in Reihe geschaltete Geräte getrennt sind, die Teilschaltung in dieselben zwei Knoten, die durch zwei parallel geschaltete Geräte verbunden sind. b) Für zwei beliebige Knoten, die durch zwei parallele Geräte getrennt sind, wandeln Sie die Teilschaltung in dieselben zwei Knoten um, die durch zwei in Reihe geschaltete Geräte verbunden sind.

Das P-Netzwerk ist also immer das serielle/parallele "Dual" des N-Netzwerks. Dadurch wird sichergestellt, dass der Stapel unabhängig von der eingehenden Eingangskombination niemals Strom und Masse kurzschließt.

Danke, mein Hauptverwirrungspunkt war, dass einige Leute nMOS-Transistoren in Reihe geschaltet und gesagt haben, dass dies eine UND-Operation sei. Ich sehe jetzt, dass wir in CMOS mit NANDs und NORs arbeiten.
Ahhh .... Sie lagen nicht falsch. Sie verwendeten AND in dem Sinne, dass die Pulldown- Gleichung A AND B war . Darin liegt eine gewisse Konsequenz.

Komplementär bedeutet nicht, dass es eine Inverterschaltung gibt.

Komplementär bedeutet, dass es sowohl NMOS- als auch PMOS-Transistoren gibt, da die Logik, die vor CMOS existierte, nur NMOS-Transistoren hatte.

In einer CMOS-Schaltung können NMOS-Transistoren stark nach unten ziehen und PMOS-Transistoren können stark nach oben ziehen.

Danke, ich hatte die Bedeutung des Wortes falsch interpretiert

Das „komplementäre“ in CMOS bezieht sich auf den Herstellungsprozess von Feldeffekttransistoren, der komplementäre und symmetrische Paare von p-Typ- und n-Typ-MOSFETs für Logikfunktionen verwendet. (Dies ist anstelle von allen p-Typ- oder allen n-Typ-Transistoren.)

Wenn Sie einen Schaltplan Ihrer Reihen- und Parallelschaltungen posten können, können wir uns auch darum kümmern.