Wie bestimmt ein Latch seinen Ausgangszustand?

9

Wie erhält ein Latch seinen Ausgangszustand? Ich vermute, dass es von den Rennbedingungen abhängt und welche Bedingung zuerst eintritt, dann ist dies der Zustand, mit dem die Verriegelung beginnt.

Lightyear Buzz
quelle
3
Die Überschriftenfrage ist zu weit gefasst, um eine einzige Antwort zu generieren. Daher passt sie wahrscheinlich nicht zu dieser Website. Ihre (gültige) technische Frage ist so ziemlich ein Duplikat einer anderen Frage von heute: electronic.stackexchange.com/questions/25581/…
The Photon
Ja, aber die Antworten auf diese Frage waren nicht so informativ wie die folgenden, und ich bin mir nicht sicher, ob zu viele Fragen eine einzige Antwort haben, was teilweise durch eine solche Site belegt wird. Ich stimme zwar zu, dass dies etwas zu weit gefasst sein könnte, aber mit all den anderen hilfreichen allgemeinen Fragen auf diesen Seiten dachte ich, es wäre am besten, diese Frage sowohl für andere als auch für mich zu posten.
Lightyear Buzz
1
Wenn Sie die Frage so bearbeiten, dass sie nur den technischen Teil (2. Absatz) enthält, entferne ich meine Ablehnung.
Das Photon
3
Genug, um sich ein vergessenes Konzept schnell wieder beizubringen. Oder sich auf die gleiche Weise ein neues Konzept beizubringen. Sofern kein Paradigmenwechsel eintritt, sind die Grundlagen relevant, und die meisten (praktischen) Veränderungen in der Technologie sind marginal genug, um Schritt zu halten.
Jon L
Es gibt keine richtige Antwort auf diese Frage. Wenn die Community wirklich möchte, dass diese Frage offen bleibt, sollte es zumindest ein Community-Wiki sein.
Kellenjb

Antworten:

21

In der Schule wird sicherlich viel unterrichtet, was auf dem Arbeitsmarkt nicht erforderlich ist. Und natürlich gibt es eine Menge, die nicht gelehrt wird und die es sein sollte. Dies könnte wahrscheinlich über jeden Arbeitsmarkt gesagt werden, da es davon abhängt, in welchem ​​Fachgebiet die Person beschäftigt ist. Leider können weder Ihre Professoren noch ich Ihnen sagen, was Sie verwenden werden und was nicht, sobald Sie einen richtigen Job bekommen dein Feld.

Zum Beispiel verwende ich in meinem Job als EE keinen Kalkül. Aber ein Mitarbeiter, der auch technisch ein EE ist, verwendet fast täglich Kalkül. Ich entwerfe Leiterplatten und FPGAs, während er DSP-Algorithmen schreibt. Unsere Lehrer hätten auf keinen Fall wissen können, was wir brauchten, um die Arbeit zu erledigen.

Davon abgesehen ... Ihre Frage an Ihre Lehrerin nach dem Anfangswert des Latch oder Flip Flop (FF) war eine großartige Frage, und die Art und Weise, wie Ihre Professorin antwortete, zeigt, dass sie die Anforderungen für den Entwurf praktischer digitaler Logikschaltungen nicht kennt.

Einfach ausgedrückt ist der Anfangswert eines Latch oder FF unbestimmt. Das heißt, es wird einen Anfangswert haben, aber Sie werden nicht im Voraus wissen, was es ist. Ein gegebener Latch / FF kann sogar unterschiedliche Anfangswerte von einem Einschalten zum nächsten haben. Manchmal ist es eine '0', manchmal eine '1'. Dinge wie die Temperatur und wie schnell die Stromschienen hochfahren, wirken sich auf den Anfangswert aus.

Wenn Ihre Schaltung einen bekannten Anfangswert benötigt, müssen Sie den Wert erzwingen. Normalerweise erfolgt dies über eine Art Set / Reset / Clear-Eingang, der von einem Reset-Signal angesteuert wird. Dies ist auch der Grund, warum fast jede digitale Schaltung von angemessener Komplexität ein Rücksetzsignal hat. Reset-Signale gelten nicht nur für CPUs.


quelle
4
Während meines Studiums habe ich eine Menge Dinge gelernt, die ich in meinem Berufsleben nicht unbedingt später brauchte, die mir aber trotzdem sehr nützlich waren. Ein wichtiger Teil einer Ausbildung ist das „Lernen zu lernen“.
Wouter van Ooijen
2
Sie wissen nie, was Sie wissen müssen. Ich habe meinen EE-Abschluss schon in den 1960er Jahren gemacht. Ich erinnere mich, dass ich Kurse wie Mikrowellenradio besucht habe und damals dachte, ich werde mit digitalen Systemen arbeiten und nichts davon verwenden (zu der Zeit wurde Mikrowelle hauptsächlich von der Telefongesellschaft für Fernfunkrelais verwendet ). Jetzt, mehr als 40 Jahre später, arbeite ich an eingebetteten Systemen, alles ist drahtlos, und ich lege Mikrostreifenantennen auf einer Leiterplatte aus.
Tcrosley
1
@davidKessner, ich dachte, in einigen der Rennzustandsverriegelungen ist es wirklich wichtig, wie Ihre Stromschiene aufgeladen wird. Eine sehr schnelle Ladung könnte zu einer Sache führen, eine langsame Ladung zu einer anderen, aber Sie brauchten eine sehr gute Charakterisierung Ihrer Tore. Dies allein würde den Prozess für jedes echte Gerät, bei dem ein Reset-Pin mit wenig Design und geringer Komplexität problemlos funktioniert, etwas wertlos machen.
Kortuk
4

Wenn Sie beim Einschalten (vor dem Zurücksetzen) meinen, dann ist es ziemlich genau so, wie Sie sagen - die Tore im FF sind nicht perfekt symmetrisch, so dass man das Rennen "gewinnt" und der Riegel in Richtung dieses Zustands fährt. Welcher Zustand es sein wird, ist unvorhersehbar.

Es ist ein bisschen so, als würde man einen Ball auf einem spitzen Hausdach balancieren - theoretisch sollte er dort bleiben, wenn alles vollkommen ruhig ist. In der Praxis rollt es immer zur einen oder anderen Seite ab.

Aus diesem Grund müssen beim Einschalten die meisten digitalen Schaltkreise auf einen bekannten Zustand zurückgesetzt werden (wo der Zustand zunächst bekannt sein muss, müssen einige Register undefiniert / unbenutzt bleiben, bis Ihre zum ersten Mal geschrieben werden).

Oli Glaser
quelle
1

Ich denke, es hängt davon ab, von welchem ​​Riegel Sie sprechen.

http://en.wikipedia.org/wiki/Latch_%28electronics%29

Einige der Latches können zurückgesetzt werden, sodass Sie wissen, wo Sie beginnen. Ich denke auch, dass sie nur versucht hat, das Konzept des "unveränderten" / "behalten" -Zustands zu demonstrieren , es spielt keine Rolle, was der vorherige Zustand ist.

Smallbee
quelle
1

Zwei kurze Dinge: Bei der ersten Frage bin ich noch Student, mache ein Praktikum in einem Unternehmen und fand, dass viele Konzepte, auch einige, die ich für weniger wichtig hielt, nützlich sind, und Sie werden sich beschweren, wenn Sie gewonnen haben Ich kenne diese Vorstellungen nicht gut, weil du einen schlechten Lehrer hattest. (Ich weiß, dass es trivial erscheinen mag, aber es ist der erste Eindruck, den ich hatte, als ich in die reale Welt kam)

Bei der zweiten Frage möchte ich nur meinen Standpunkt hinzufügen: Latches und FFs sollen Werte enthalten, und sie sind sinnvoll, wenn Sie diesen Wert zuerst angeben (es sei denn, Sie möchten einen irgendwie zufälligen Generator erstellen). Beim Zurücksetzen oder Setzen eines Werts ist der erste Schritt immer die Eingabe.

Clabacchio
quelle
0

(
Deutsche Übersetzung weiter unten)

Die akzeptierte Antwort des Benutzers "user3624" und die anderen Antworten geben bereits viele gute und ausreichende Informationen.
Aber alle beziehen sich entweder auf das theoretische Verhalten der Schaltung. Oder sie beziehen sich auf echte ICs, dh elektronische Schaltungen, die unter industriellen Bedingungen gebaut werden: Die Schaltungen sind sehr genau und nahezu symmetrisch.
Theoretisch wird ein Latch oder Flipflop niemals funktionieren, da die Theorie (die perfekte elektronische Teile verwendet) das Einschaltverhalten der Schaltung nicht erklären kann. Aus dem gleichen Grund können viele Simulatoren kein (perfektes) Flipflop simulieren.

Wenn Sie in einem IC kein Latch oder Flipflop verwenden (wie ICs aus der 7400-Serie, z. B. 7474 oder 74279), sondern selbst ein einfaches erstellen, können Sie es leicht ändern, um einen perfekt bestimmten Ausgangszustand zu erhalten. Das Erstellen eines Latch ist sehr einfach und erfordert nur ein paar Teile: 2 Transistoren und 4 Widerstände; und 2 Drucktastenschalter zur Steuerung der Zustände.
Hier ist ein Schaltplan eines einfachen Latch. Ich habe die gleichen Transistoren verwendet, die im Diagramm gezeigt sind:
Geben Sie hier die Bildbeschreibung ein Beim Aufbau dieser Schaltung auf einem Steckbrett (mit einer zusätzlichen LED vor dem 1k-Widerstand) stellte ich fest, dass beim Einschalten immer dieselbe LED leuchtet. Dies liegt an den Toleranzen in den elektronischen Teilen: Ein Transistor ist niemals wie der andere. Es schaltet etwas schneller oder langsamer, so dass die gesamte Schaltung einen bevorzugten Ausgangszustand hat, in den sie beim Einschalten fällt.
Jetzt wollte ich diese Schaltung in den entgegengesetzten Ausgangszustand zwingen, in dem die andere LED beim Einschalten immer leuchtet. Ich habe im Internet einige Ratschläge gefunden, darunter:

  • Verwenden Sie unterschiedliche Widerstände an den Transistorbasen
  • Fügen Sie eine Diode vor einer Transistorbasis hinzu

Ich habe beide einzeln und zusammen ausprobiert, aber das Ergebnis war nicht zufriedenstellend. Anstatt immer den gleichen Ausgangszustand zu haben, wurde er zufällig, wenn eine oder beide der genannten Änderungen angewendet wurden. Also ging es in die richtige Richtung, aber es war nicht genug. Ich hätte die Widerstandswerte mehr ändern oder 2 Dioden anstelle von einer verwenden können, aber ich denke, dass dies immer noch keine sichere Lösung wäre. Also hatte ich eine andere Idee:

  • Setzen Sie einen kleinen Kondensator auf eine Transistorbasis, wobei eine Seite mit der Transistorbasis und die andere Seite mit Masse verbunden ist.

Ich habe zuerst 1uF ausprobiert und es hat perfekt funktioniert. Dann ging ich auf 10nF und weiter auf 100pF und 10pF, und es funktionierte immer noch. Es funktionierte sogar 90% der Zeit mit 1pF.
Geben Sie hier die Bildbeschreibung ein Dies funktioniert, weil der Kondensator die angeschlossene Transistorbasis (Q1) für eine sehr kurze Zeit gegen Masse kurzschließt, bis der Kondensator aufgeladen wird ... würde aufgeladen werden. "wäre", da dieser kurze Moment ausreicht, um den anderen Transistor Q2 einzuschalten, und sobald Q2 eingeschaltet ist, ist die Basis von Q1 mit Masse verbunden, so dass Q1 ausgeschaltet bleibt, bis jemand SW2 drückt. Wenn SW2 gedrückt wird, wird der Kondensator aufgeladen und wenn fertig, wird Q1 eingeschaltet.

Für eine sichere Langzeitnutzung möchten Sie möglicherweise einen kleinen Widerstand (wie 10R) in Reihe mit dem Kondensator hinzufügen, um hohe Ströme beim Entladen zu vermeiden.

(Schaltpläne online erstellt mit "CircuitLab")


Schließlich schreibe ich den ganzen Text wieder auf Deutsch, weil ich Deutscher bin und weil ich möchte, dass meine Landsleute auch in unserer Sprache Antworten finden:

Die anerkannte Antwort von Benutzer "user3624" und die anderen Antworten bereits viele gute und Informationen.
Aber alle, die sich auf das theoretische Verhalten der Schaltung beziehen, oder das sie sich auf ein persönliches IC beziehen, auch eine elektronische Schaltung, die unter industriellen Bedingungen wurde: extrem genau und schnell symmetrisch.
In der Theorie wird eine bistabile Kippstufe oder ein Flipflop nie geführt, da die Theorie mittels perfekter elektronischer Bauteile den Eingaltvorganggang nicht erklärt kann. Aus diesem Grund können Flipflops von vielen Simulatoren auch nicht simuliert werden.

Falls man keine Kippstufe oder Flipflop in einem IC verwendet (wie in der 7400er Serie, zB 7474 oder 74279), kann man sich selbst eine bauen, kann man diese sehr einfach modifizieren, um einen sicheren eigenen Status zu bekommen. Eine Kippstufe führt ist sehr einfach und man unterscheidet sich von einer anderen Bauteile: 2 Transistoren und 4 Widerstände und 2 Taster zum Umschalten des Zustandes.
Oben ist ein Schaltplan einer richtigen Kippstufe abgebildet. Ich habe in meiner Schaltung Berechtigung Transistoren wie im Schaltplan verwendet.
[BILD 1]
Als ich diese Schaltung auf eine Steckplatine gehört habe, habe ich gesehen, dass ich LED LED beim Einschalten gelehrten Hut habe. Das liegt an den Toleranzen in den Bauteilen: Kein Transistor ist wieder der andere. Einer schaltet schneller oder verlorener, der die gesamte Schaltung einen bestimmten Zustand hat, den sie nach dem Einschalten einlassen.
Nun, ich habe die Schaltung verwirklicht, beim Einschalten des gegenteiligen Zustands hinterlegt, bei dem stets die anderen LED leuchtet. Im Internet hab ich verschiedene gefunden gefunden, gefunden:

  • Unterschiedliche Widerstände vor den Transistorbasen finden
  • eine Diode vor einer Transistorbasis

Ich habe mich getrennt, gehört und auch zusammen, aber das Ergebnis war nicht zufriedenstellend. Dies ist immer Zufall, welche LED nach dem Einschalten leuchtete. Es geht in die richtige Richtung, aber es ist nicht in Sicherheit. Ich habe die Widerstandswerte noch besser als oder auch noch 2 Dioden in Reihe vor die Transistorbasis schalten können, aber ich denke, dass stirbt immer noch keine sichere Lösung brächte. Daher hatte ich eine andere Idee:

  • einen kleinen Kondensator für eine Transistorbasis, eine Seite mit der Transistorbasis und die andere mit Masse.

Ich hab gehört 1uF gehört und es hat perfekt funktioniert. Dann hab ich Steuern Werte verwendet, erst 10nF, dann 100pF und 10pF, und es funktionierte immer noch. Es funktionierte sogar in 90% der Fälle noch mit 1pF.
[BILD 2]
Es funktioniert, weil der Kondensator kurz die Basis von Transistor Q1 mit Masse kurz gehört, bis der Kondensator aufgeladen ist ... aufgeladen ist. "Wäre". Wenn SW2 wird wird, wird der Kondensator geladen und sofort geht Q1 durchgeschaltet.

Für eine sichere persönliche Anwendung ist es empfehlenswerte, einen kleinen Widerstand (zB 10R) in Reihe mit dem Kondensator zu schalten, um hohe Entladeströme zu gehören.

Tobias Knauss
quelle
Willkommen bei EE.SE. Beachten Sie, dass bei Verwendung der CircuitLab-Schaltfläche in der Editor-Symbolleiste ein bearbeitbarer Schaltplan in Ihrem Beitrag gespeichert wird. Das macht es uns einfach, unsere Antworten zu kopieren und zu bearbeiten. Sie benötigen kein CircuitLab-Konto, keine Screenshots, keine Bild-Uploads und kein Hintergrundraster.
Transistor