Digitales Frequenzverdreifacher-Design

Wie kann ich eine digitale Schaltung mit booleschen Logikgattern implementieren? Geben Sie hier die Bildbeschreibung ein
Wie Sie sehen, tritt bei jeder steigenden Flanke eine Oszillation auf und das Signal kehrt nach der Oszillation auf den HIGH-Logikpegel zurück. Dies gilt auch für die fallende Flanke.

Haben Sie ein Taktsignal in Ihrem Design? Wie hoch ist die Taktfrequenz im Vergleich zum Eingang?
Nein, ich habe kein Taktsignal. Das Eingangssignal dieser Schaltung ist das Ausgangssignal einer reinen kombinatorischen Logikschaltung. Übergänge treten aufgrund einer Änderung der Eingänge der kombinatorischen Quellenschaltung auf.
Dürfen Sie reaktive Komponenten verwenden oder muss alles komplett digital sein?
Ich denke, das hängt mit seiner anderen Frage zusammen - electronic.stackexchange.com/questions/150209/… - vielleicht ein anderes Problem für denselben Kurs? Wenn es für einen Kurs ist?
@pkp Ich möchte das Ergebnis jeder Frage in derselben Aufgabe verwenden, es handelt sich jedoch um unterschiedliche Fragen mit unterschiedlichen Details.
VSB, Ok, können Sie sagen, können Sie diskrete Komponenten wie Widerstände und Kondensatoren verwenden oder müssen Sie alles in Silizium machen?

Antworten (3)

Versuchen Sie, zwei neue Signale mit einer Verzögerungs-RC-Schaltung und einem Schmitt-Trigger zu erstellen: -

Geben Sie hier die Bildbeschreibung ein

Verwenden Sie dann exklusive ODER-Gatter für die drei Signale, um Ihr gewünschtes Ausgangssignal zu erzeugen.

Hmm .. Ich glaube nicht, dass Sie genau seine Frage beantworten. Er hat gefragt, wie dies mit (nur?) Logikgattern zu tun ist, und seine andere Frage ( electronic.stackexchange.com/questions/150209/… ) führt mich zu glauben, dass er irgendeinen Kurs für digitale mikroelektronische Schaltungselemente belegt. Eine nette Antwort auf eine allgemeine Frage, und tatsächlich könnten Ausbreitungsverzögerungen mikroelektronischer Schaltungen bis zu einem gewissen Grad als RC-Verzögerungen angesehen werden.
Ich habe die gewünschte Antwort gepostet.
@PkP - das ist schwierig, weil das Wort "nur" Netzteile und Entkopplungskondensatoren ausschließen könnte. OK, ich treibe das hier ein wenig voran, aber ich möchte auch darauf hinweisen, dass die Verzögerung eines Logikelements hauptsächlich auf das Laden von Kondensatoren durch Geräte mit begrenztem Strom zurückzuführen ist, und dies ist Widerstands-Kondensator-Elementen sehr ähnlich. Aha, ich sehe, dass du das oben gesagt hast.

Wenn dies, wie Sie sagen, ein rein asynchrones Design ist, müssen Sie eigene Zeitsignale generieren. Wenn dies eine Frage zum Universitätsstudium ist, besteht die erwartete Antwort wahrscheinlich darin, die Ausbreitungsverzögerungen unabhängiger Gates zu verwenden, um Signale nach oben und unten zu treiben. Verbinden Sie mehrere Gatter (z. B. Inverter) hintereinander, um Signale mit unterschiedlichen Laufzeitverzögerungen zu erzeugen. Verwenden Sie dann unabhängige Logikgatter, um die verzögerten Signale zu der gewünschten Ausgangswellenform zu kombinieren. Diese Techniken sind mit vollständig benutzerdefiniertem IC-Design oder durch Verwendung separater Logikgatter (wie z. B. Logik-ICs der Serie 74HCxxx) möglich. Aber diese Designmethodik ist mit FPGAs nicht möglich, da FPGAs keine separaten Gates haben. (Es sei denn, Sie platzieren und routen das FPGA von Hand mit Gates aus handverlesenen Makrozellen, deren Eigenschaften Sie kennen.)

Andere Entwurfsmethoden erfordern die Erzeugung eines Taktsignals durch Verwendung einer Art Oszillator. Anschließend können Sie dieses Taktsignal verwenden, um ein synchrones Design zu erstellen, das mit jeder Designmethode Ihrer Wahl, wie z. B. FPGAs, implementiert werden kann. (Ich erwähne FPGAs, weil Sie in einer anderen Frage von Ihnen darüber sprechen).

Ich habe die Schaltung sktechd im folgenden Schema implementiert:

schematisch

Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan

Die Implementierung in Verilog und die Simulation auf Xilinx ISE unter Berücksichtigung von Gate-Verzögerungen führt zu folgendem Ergebnis:Geben Sie hier die Bildbeschreibung ein

Danke für die Klarstellung. Du hast es also im Grunde genommen so gemacht, wie ich es vorgeschlagen habe?
Ja, aber ich denke, das praktische Ergebnis in FIELD wird viel besser sein, da ich denke, dass die Verzögerung von Switch-Boxen und Drähten in der Simulation nicht vollständig überwacht werden.
OK danke. Denken Sie nur daran, dass, wenn Sie dies in FPGA implementieren, es so funktionieren kann oder nicht, je nachdem, wie die Gates zugeordnet sind. Normalerweise entfernt der Logikoptimierer diese Inverter ("NOT"-Ports) und Sie erhalten am Ende "a xor a xor a", also wird das XOR ebenfalls wegoptimiert und der Ausgang wird direkt mit dem Eingang verbunden (Nr Logik erzeugt).
Ich habe (* KEEP = "TRUE" *)INV-Gatter hinzugefügt, um zu vermeiden, dass sie während der Synthese entfernt werden.