Ein von einem MCU gesteuertes Enable-Signal kann ein Startproblem verursachen, selbst wenn die Verbindungen im Schaltplan korrekt sind. Der GPIO kann den erforderlichen Logikpegel erreichen, bevor die Versorgung, die Referenzspannung oder die vorgelagerte Schaltung der gesteuerten Komponente bereit ist. Abhängig von den Startanforderungen des Bauteils kann diese Reihenfolge die Initialisierung verhindern oder einen unbeabsichtigten Zustand erzeugen. Später durchgeführte Messungen können gültige Versorgungsspannungen und ein aktives Enable-Signal zeigen, während der Übergang, der den Fehler verursacht hat, unbemerkt bleibt.
Mixed-Signal-Prozessoren bieten eine Möglichkeit, den MCU-Befehl zu qualifizieren, bevor er an den Enable-Eingang der Komponente weitergegeben wird. Anstatt ein Enable-Toggle-Signal direkt an ein Peripheriegerät zu senden, kann ein Mixed-Signal-Prozessor eine Überwachungsfunktion übernehmen, die bestimmt, ob das Enable-Signal an einen Enable-Pin weitergegeben werden soll. Zwar lässt sich dies auch mit diskreter Logik und einem analogen Front-End umsetzen, ein Mixed-Signal-Prozessor kann diese Komponenten jedoch in einem einzigen Gehäuse zusammenfassen.
Damit Enable-Pins an Peripheriegeräten im richtigen Zeitfenster umgeschaltet werden, gibt es mehrere mögliche Lösungen. Diese erfordern jeweils unterschiedliche Grade an Logikverarbeitung und stehen nicht immer in jedem Host-Controller zur Verfügung:
Das Datenblatt der gesteuerten Peripherie legt in der Regel die Beziehung zwischen Versorgung sowie Enable-/Reset-Timing fest. Andere Faktoren, die das Timing beeinflussen können (andere Signale, einschwingende Versorgung usw.), sind jedoch oft unvorhersehbar, da dafür eine andere Schaltung überwacht werden muss. Deshalb lässt sich nicht allgemein festlegen, wie Enable-Signale zu timen sind.
In den meisten Fällen wird Option 1 eingesetzt, wenn eine Versorgungsüberwachung erforderlich ist, und es kann eine sehr lange Verzögerung verwendet werden, um das Einschwingen der Versorgung sicherzustellen. Option 2 ist mitunter nicht praktikabel, weil sie voraussetzt, dass die MCU einen auf den internen Takt abgestimmten Impulszug bereitstellt, und zudem einen zusätzlichen GPIO-Pin belegt.
Eine feste Verzögerung eignet sich am besten, wenn die relevante Startzeit eine Obergrenze hat und nur geringe oder gar keine Abweichungen von diesem Wert auftreten. Dabei ist das Bezugsereignis entscheidend: Eine Verzögerung ab Aktivierung des Reglers deckt ein anderes Intervall ab als eine Verzögerung ab dem Überschreiten eines Spannungsschwellwerts. Wenn die Startdauer schwankt, etwa durch unvorhersehbare Transienten beim Einschalten, bietet eine Supervisor-Lösung, bei der Versorgung oder Signal aktiv überwacht werden, eine höhere Zuverlässigkeit für jedes Umschalt-Ereignis am Enable-Pin.
GP-enable1A.png
GP-enable1B.png
Option 3 und 4 entsprechen im Wesentlichen derselben Lösung: Entweder die Versorgung oder ein anderes Signal (oder beides) wird überwacht, und mit digitaler Logik wird der geeignete Zeitpunkt zum Umschalten eines Enable-Pins bestimmt.
Ein Supervisor-Ansatz ist geeignet, wenn die Betriebsbereitschaft von Bedingungen abhängt, die sich zwischen einzelnen Startvorgängen unterscheiden, darunter ansteigende Versorgungsspannungen, das Einschwingen von Referenzen oder Aktivitäten in vorgelagerten Schaltungen. Spannungserfassung und/oder Signaleingänge ermöglichen es, das Enable-Timing an beliebige logische Bedingungen anzupassen. So können beispielsweise sowohl eine Versorgungsschiene als auch ein weiteres Steuersignal (digital oder analog) als Bedingungen zum Umschalten eines Enable-Pins verwendet werden. Dieses Beispiel verdeutlicht einen Fall, in dem mehrere Voraussetzungen gemeinsam erfüllt sein müssen, bevor eine Peripherie eingeschaltet wird.
GP-enable2.png
Ein einfacher Supervisor wandelt die gemessene Bereitschaft in eine Logikbedingung um, die den MCU-Befehl qualifiziert. Zur Versorgungsüberwachung erfasst ein Komparator eine geteilte Versorgungsspannung im Vergleich zu einer Referenz, oder ein Supervisor-IC liefert ein Power-Good-Signal. Der Schwellwert berücksichtigt Messfehler und die minimale Versorgungsanforderung der Peripherie. Die MCU-Anforderung und die Bereitschaftsanzeige werden dann einer Logik zugeführt, die den Enable-Ausgang steuert. Ausgangspolarität und Spannungskompatibilität bestimmen, wie die Logik die Peripherie ansteuert.
Die Signalüberwachung folgt derselben Struktur. Ein analoger Komparator kann erkennen, wenn eine Referenz- oder Bias-Spannung ein akzeptables Niveau erreicht, während zwei Komparatoren ein Spannungsfenster festlegen können. Digitale Statussignale können anzeigen, dass vorgelagerte Schaltungen die Initialisierung abgeschlossen haben. Die Kombination dieser Bedingungen erlaubt es, sowohl Versorgungs- als auch Signalbereitschaft zur Qualifizierung derselben Enable-Anforderung zu verwenden, sofern jede Voraussetzung gültig werden kann, während die Peripherie deaktiviert ist.
Mehrere Schaltungsmerkmale bestimmen, wie konsistent der Supervisor reagiert:
Das Einschwingintervall beginnt, wenn die MCU-Anforderung und alle überwachten Voraussetzungen gültig sind. Geht die Bereitschaft verloren, wird die Qualifizierung zurückgesetzt, sodass vor der Aktivierung ein vollständig neues Intervall erforderlich ist. Dieses Verhalten verhindert, dass Zeit unterhalb eines Spannungsschwellwerts als Einschwingzeit mitgezählt wird. Ein vorgelagertes Power-Good-Signal kann dennoch eine zusätzliche Verzögerung erfordern, wenn dessen Aktivierung vor dem für die Peripherie erforderlichen Einschwingpunkt erfolgt.
Ein kleiner Mixed-Signal-Prozessor kann die in diesen Supervisor-Schaltungen verwendeten Komparatoren, Timing-Blöcke und Logikfunktionen zusammenfassen. Bausteine mit geeigneten Ressourcen können analoge Signale, digitale Statussignale und Versorgungsschienen innerhalb desselben Gehäuses überwachen. Verfügbare Komparator-, Timer- und Ausgangsressourcen bestimmen die Kanalanzahl. Mehrere Supervisor-Schnittstellen können sich dieses Gehäuse teilen und dabei separate Qualifizierungsbedingungen beibehalten sowie mehrere Enable-Pins unabhängig voneinander umschalten, wodurch die rund um die MCU erforderliche diskrete Schaltung reduziert wird.
GreenPAK kann die Erfassungs-, Logik- und Timing-Schaltungen zusammenfassen, die MCU-Befehle qualifizieren, bevor sie die Enable-Pins von Peripheriegeräten erreichen. Versorgungsüberwachung, analoge Schwellenwerterkennung und digitale Bereitschaftseingänge können in einem einzigen Baustein zusammengefasst werden. Mehrere Enable-Ausgänge können separate Qualifizierungsbedingungen haben, sodass jede Peripherie startet, wenn ihre eigenen Voraussetzungen erfüllt sind.
On-Chip-Komparatoren erkennen analoge Bedingungen, während konfigurierbare LUTs, Flip-Flops und Zähler festlegen, wann ein Reset ausgelöst, eine Schaltung aktiviert oder der Host aufgeweckt werden soll. Diese Hardwarefunktionen können ohne separaten Firmware-Regelkreis arbeiten, sodass der Prozessor im Sleep-Modus bleiben kann, bis ein qualifiziertes Ereignis seine Aufmerksamkeit erfordert.
Die Entwicklungsumgebung Go Configure ermöglicht es Ingenieuren, Komparator-Schwellwerte, Qualifizierungslogik, Verzögerungen und Ausgangsverhalten zu konfigurieren. Simulation und Entwicklungshardware unterstützen die Bewertung der resultierenden Sequenz, einschließlich früher Anforderungen und unterbrochener Einschwingvorgänge. Die Auswahl des Bausteins hängt von den analogen Ressourcen, Timing-Blöcken und Pins ab, die für jeden unabhängig gesteuerten Enable-Ausgang erforderlich sind.
Um mehr zu erfahren, sehen Sie sich die GreenPAK-Komponenten und Referenzbeispiele an.
Ganz gleich, ob Sie zuverlässige Leistungselektronik oder fortschrittliche digitale Systeme entwickeln müssen – nutzen Sie den vollständigen Satz an PCB-Designfunktionen und erstklassigen CAD-Tools von Altium, um Ihre GreenPAK-Lösungen umzusetzen. Altium bietet die weltweit führende Plattform für die Entwicklung elektronischer Produkte – komplett mit den besten PCB-Designwerkzeugen der Branche und funktionsübergreifenden Kollaborationsfunktionen für fortschrittliche Entwicklungsteams. Kontaktieren Sie noch heute einen Experten bei Altium!