-
Technisches Gebiet
-
Das vorliegende Dokument bezieht sich auf digitale Zeitgeber. Insbesondere bezieht sich das vorliegende Dokument auf eine Verzögerungsleitung eines digitalen Zeitgebers mit Unterabtastgenauigkeit.
-
Hintergrund
-
Viele Anwendungen erfordern Zeitgeber mit genauer Verzögerung, die durch ein asynchrones Ereignis ausgelöst werden und ein Antwortsignal nach einem festgelegten Zeitbetrag nach Ankunft des Auslösers erzeugen. Übliche Implementierungen können auf einer analogen oder digitalen Schaltungsanordnung basieren.
-
Eine analoge Implementierung kann z. B. das Aufladen einer Kapazität bis zu einem bestimmten Schwellenwert beinhalten. Ein solcher Aufladeprozess kann durch ein Auslöseereignis gestartet werden. Ein Vorteil dieser analogen Implementierung besteht darin, dass die asynchrone Auslösung möglich wird, d. h. das System antwortet unmittelbar und startet die Zeitmessung unabhängig von einem Taktzyklus, der typischerweise in digitalen Implementierungen verwendet wird. Es ist jedoch ein Nachteil von analogen Implementierungen, dass es schwierig ist, lange und genaue Zeitgeber zu implementierten. Das Steigern der Genauigkeit von analogen Zeitgebern erfordert typischerweise eine beträchtliche Menge an Feineinstellung, um nachteiligen Prozess-, Spannungs- und Temperaturvariationseffekten (PVT-Variationseffekten) entgegenzuwirken.
-
Digitale Lösungen sind typischerweise taktbasiert und beinhalten einen digitalen Zähler. Der digitale Zeitgeber wird durch ein synchronisiertes Auslöseereignis gestartet. Ein technischer Vorteil von digitalen Implementierungen besteht darin, dass keine zusätzlichen Feineinstellungsschaltungen erforderlich sein können. Überdies können Zeitgeber beliebig lang sein. Digitale Zeitgeber leiden jedoch unter einem innewohnenden Zeitablauffehler aufgrund der Synchronisation. Der resultierende Fehler hängt von der Ankunftszeit des Auslösesignals ab und der maximale Fehler ist gleich der Periode des für die Abtastung verwendeten Taktsignals.
-
In einigen Anwendungsszenarios sind Zeitgeber mit hoher Genauigkeit und mit langen absoluten Zeitgeber-Verzögerungen (> 600 ns ±10 ns) erforderlich, um die erforderlichen Kennzahlen zu erreichen. Ferner ist in einigen Anwendungsszenarios die gewünschte Verzögerung als Bruchteil einer Umschaltperiode eines Leistungsumsetzers definiert. Dies ist unter Verwendung von veralteten Zeitgeberimplementierungen schwierig zu erreichen.
-
Das vorliegende Dokument wendet sich den vorstehend erwähnten technischen Problemen zu. Insbesondere wendet sich das vorliegende Dokument dem technischen Problem des Schaffens eines digitalen Zeitgebers auf Zählerbasis mit einem verringerten Verzögerungsfehler zu, der durch diskrete Synchronisation eingeführt wird. Mit anderen Worten, es ist ein Ziel, den Verzögerungsfehler zu entfernen, wenn ein Auslösesignal detektiert wird. Solche Verzögerungsfehler haften den Systemen an, in denen ein Auslösesignal durch ein getaktetes (synchrones) System abgetastet wird.
-
Zusammenfassung
-
Gemäß einem Aspekt wird ein Zeitgeber vorgestellt, der eine erste Zeitgeberschaltung, die dazu konfiguriert ist, ein Taktsignal und ein Auslösesignal zu empfangen, umfassen kann. Das Taktsignal kann ein periodisches, binäres Signal sein, das zwischen einem logischen hohen Wert (hohe Phase) und einem logischen niedrigen Wert (niedrige Phase) abwechselt. Die Periode des Taktsignals kann auch als Taktzyklus des Taktsignals bezeichnet werden. Eine Flanke des Auslösesignals kann nach einer ersten Flanke des Taktsignals und vor einer zweiten Flanke des Taktsignals ankommen. Im Allgemeinen können alle Flanken innerhalb dieses Dokuments steigende oder fallende Flanken sein. Die erste und die zweite Flanke des Taktsignals können vom gleichen Typ sein, d. h. die erste und die zweite Flanke des Taktsignals können (a) beide steigende Flanken sein oder können (b) beide fallende Flanken sein.
-
Die erste Zeitgeberschaltung kann dazu konfiguriert sein, in einer Erfassungsphase ein Zeitversatzinterfall zum Annähern eines Zeitintervalls zwischen der ersten Flanke des Taktsignals und der Flanke des Auslösesignals zu bestimmen. Die erste Zeitgeberschaltung kann dazu konfiguriert sein, am Ende einer Zählphase eine Flanke eines internen Antwortsignals am Ende eines vorbestimmten Zeitintervalls zu erzeugen, das von der zweite Flanke des Taktsignals gemessen wird. Die erste Zeitgeberschaltung kann dazu konfiguriert sein, am Ende einer Wiederholungsphase eine Flanke eines Rückkehrsignals am Ende des Zeitversatzintervalls zu erzeugen, das von der Flanke des internen Antwortsignals gemessen wird. Sowohl das interne Antwortsignal als auch das Rückkehrsignal können ein aperiodisches binäres Signal darstellen. Eine steigende oder fallende Flanke des Rückkehrsignals kann den Ablauf des Zeitgebers angeben.
-
Das vorbestimmte Zeitintervall kann gleich einer vorbestimmten Anzahl von Taktzyklen des Taktsignals sein. Insbesondere kann die erste Zeitgeberschaltung einen Zähler umfassen, der dazu konfiguriert ist, während der Zählphase die Flanke des internen Antwortsignals durch Zählen - wobei an der zweiten Flanke des Taktsignals gestartet wird - der vorbestimmten Anzahl von Taktzyklen des Taktsignals zu erzeugen. Folglich läuft der beschriebene Zeitgeber ungefähr (N+1) Taktzyklen nach der (asynchronen) Ankunft der Flanke des Auslösesignals ab, wobei N die vorbestimmte Anzahl von Taktzyklen des Taktsignals bezeichnet. Die Auflösung des vorgeschlagenen Zeitgebers ist von der speziellen Ankunftszeit der Flanke des Auslösesignals unabhängig und ist folglich von der Periode des Taktsignals unabhängig.
-
Die erste Zeitgeberschaltung kann eine Verzögerungsleitungsschaltung mit mehreren Verzögerungseinheiten, die in Reihe geschaltet sind, umfassen. Die Verzögerungsleitungsschaltung kann dazu konfiguriert sein, das Zeitversatzintervall in der Erfassungsphase zu bestimmen und die Flanke des Rückkehrsignals am Ende der Wiederholungsphase zu erzeugen.
-
Der Zeitgeber kann dazu konfiguriert sein, in der Erfassungsphase das Taktsignal an die Verzögerungsleitungsschaltung anzulegen, so dass das Taktsignal nacheinander durch die mehreren Verzögerungseinheiten verzögert wird. Der Zeitgeber kann dazu konfiguriert sein, in der Erfassungsphase das Auslösesignal direkt an jede Verzögerungseinheit anzulegen. Der Zeitgeber kann dazu konfiguriert sein, in der Erfassungsphase das Zeitversatzintervall durch Bestimmen einer speziellen der mehreren Verzögerungseinheiten, an der die Flanke des Auslösesignals vor einer verzögerten Version des Taktsignals ankommt, zu bestimmen.
-
Der Zeitgeber kann dazu konfiguriert sein, in der Wiederholungsphase das interne Antwortsignal an die Verzögerungsleitungsschaltung anzulegen, so dass das interne Antwortsignal nacheinander durch die mehreren Verzögerungseinheiten verzögert wird. Der Zeitgeber kann dazu konfiguriert sein, in der Wiederholungsphase die Flanke des Rückkehrsignals zu erzeugen, wenn die Flanke des verzögerten internen Antwortsignals die spezielle der mehreren Verzögerungseinheiten erreicht. In dieser Weise wird das Versatzzeitintervall unmittelbar nach dem vorbestimmten Zeitintervall reproduziert, um das Zeitintervall zu kompensieren, das zwischen der ersten Flanke des Taktsignals und der Flanke des Auslösesignals abgelaufen ist.
-
Die erste Zeitgeberschaltung kann einen Multiplexer umfassen, der dazu konfiguriert ist, in der Erfassungsphase das Taktsignal an die Verzögerungsleitungsschaltung anzulegen. Der Multiplexer kann dazu konfiguriert sein, in der Wiederholungsphase das interne Antwortsignal an die Verzögerungsleitungsschaltung anzulegen. Als Vorteil macht es der Multiplexer möglich, dieselbe Verzögerungsleitung (d. h. die mehreren Verzögerungseinheiten) zum Reproduzieren einer identischen Verzögerung, die während der Erfassungsphase gemessen wurde, wiederzuverwenden. Außerdem wird die Anzahl von Schaltungselementen verringert, da nur eine einzige Verzögerungsleitung erforderlich ist, was zu beträchtlichen Schaltungsflächeneinsparungen führt.
-
Jede Verzögerungseinheit kann ein Verzögerungselement umfassen, das zwischen einen Verzögerungseingang der Verzögerungseinheit und einen Verzögerungsausgang der Verzögerungseinheit gekoppelt ist. Das Verzögerungselement kann dazu konfiguriert sein, ein Signal, das am Verzögerungseingang ankommt, um ein Verzögerungszeitintervall zu verzögern. Beispielsweise können die Verzögerungszeitintervalle der verschiedenen Verzögerungselemente identisch sein. Überdies kann jede Verzögerungseinheit eine Vermittlerschaltung umfassen, die mit einem Ausgang des Verzögerungselements und mit einem Auslösereingang der Verzögerungseinheit gekoppelt ist. Die Vermittlerschaltung kann dazu konfiguriert sein, die spezielle der mehreren Verzögerungseinheiten zu bestimmen.
-
Ferner kann jede Verzögerungseinheit ein zurücksetzbares Speicherelement umfassen, das zwischen einen Ausgang der Vermittlerschaltung und einen Ausgang der Verzögerungseinheit gekoppelt ist. Insbesondere kann das zurücksetzbare Speicherelement mit dem Ausgang der Verzögerungseinheit gekoppelt sein, die angibt, dass das Auslösesignal an der Vermittlerschaltung vor dem verzögerten Taktsignal angekommen ist. Das zurücksetzbare Speicherelement kann dazu konfiguriert sein, einen internen Zustand der Verzögerungseinheit zu speichern, die angibt, dass das Auslösesignal vor der verzögerten Version des Taktsignals an der Vermittlerschaltung dieser Verzögerungseinheit angekommen ist. Mit anderen Worten, das zurücksetzbare Speicherelement kann dazu konfiguriert sein, die spezielle der mehreren Verzögerungseinheiten zu speichern, die durch die entsprechende Vermittlerschaltung bestimmt wurde. Das zurücksetzbare Speicherelement kann beispielsweise ein RS-Signalspeicher sein. Das zurücksetzbare Speicherelement kann so konfiguriert sein, dass es zurückgesetzt wird, nachdem die Flanke des Rückkehrsignals am Ende der Wiederholungsphase erzeugt wurde.
-
Die erste Zeitgeberschaltung kann eine Signalerweiterungsschaltung umfassen, die dazu konfiguriert ist, entweder eine hohe Phase oder eine niedrige Phase des empfangenen Taktsignals zu erweitern. Der Zeitgeber kann ferner eine zweite Zeitgeberschaltung umfassen, die dazu konfiguriert ist, ein weiteres Rückkehrsignal auf der Basis des Taktsignals und des Auslösesignals zu erzeugen. Der Zeitgeber kann eine Inverterschaltung umfassen, die dazu konfiguriert ist, ein invertiertes Taktsignal zu erzeugen, wobei das invertierte Taktsignal eine invertierte Version des Taktsignals ist. Ferner kann der Zeitgeber ein ODER-Gatter zum Bestimmen eines Gesamtrückkehrsignals auf der Basis des Rückkehrsignals der ersten Zeitgeberschaltung und des weiteren Rückkehrsignals der zweiten Zeitgeberschaltung umfassen.
-
Unter Verwendung von zwei verschiedenen Zeitgeberschaltungen mit verschiedenen Polaritäten und Überlappung (wie z. B. durch die Signalerweiterungsschaltung eingeführt) werden potentielle Detektionsprobleme während der Erfassungsphase gelöst, z. B. wenn die Flanke des Auslösesignals nahe der Flanke des Taktsignals auftritt. Eine korrekte Messung kann beispielsweise nur möglich sein, wenn die Flanke des Auslösesignals während einer hohen Phase des Taktsignals ankommt. Unter Verwendung von zwei verschiedenen Zeitgeberschaltungen mit verschiedenen Polaritäten und Überlappung kann folglich eine gültige Messung für alle möglichen Phasenkonstellationen zwischen den Flanken des Auslösesignals und des Taktsignals garantiert werden.
-
Gemäß einem anderen Aspekt wird ein Verfahren zum Betreiben eines Zeitgebers beschrieben. Das Verfahren kann Schritte umfassen, die den funktionalen Merkmalen des im vorliegenden Dokument beschriebenen Zeitgebers entsprechen. Insbesondere kann das Verfahren zum Betreiben eines Zeitgebers für einen Zeitgeber mit einer ersten Zeitgeberschaltung zum Empfangen eines Taktsignals und eines Auslösesignals geeignet sein, wobei eine Flanke des Auslösesignals nach einer ersten Flanke des Taktsignals und vor einer zweiten Flanke des Taktsignals ankommen kann. Das Verfahren kann das Bestimmen eines Zeitversatzintervalls zum Annähern eines Zeitintervalls zwischen der ersten Flanke des Taktsignals und der Flanke des Auslösesignals in einer Erfassungsphase durch die erste Zeitgeberschaltung umfassen. Das Verfahren kann das Erzeugen einer Flanke eines internen Antwortsignals am Ende eines vorbestimmten Zeitintervalls, das von der zweiten Flanke des Taktsignals gemessen wird, am Ende einer Zählphase durch die erste Zeitgeberschaltung umfassen. Das Verfahren kann das Erzeugen einer Flanke eines Rückkehrsignals am Ende des Zeitversatzintervalls, das von der Flanke des internen Antwortsignals gemessen wird, am Ende einer Wiederholungsphase durch die erste Zeitgeberschaltung umfassen.
-
Das vorbestimmte Zeitintervall kann gleich einer vorbestimmten Anzahl von Taktzyklen des Taktsignals sein. Die erste Zeitgeberschaltung kann einen Zähler umfassen. Das Verfahren kann das Erzeugen der Flanke des internen Antwortsignals durch Zählen - wobei bei der zweiten Flanke des Taktsignals gestartet wird - der vorbestimmten Anzahl von Taktzyklen des Taktsignals während der Zählphase durch den Zähler umfassen.
-
Die erste Zeitgeberschaltung kann eine Verzögerungsleitungsschaltung mit mehreren Verzögerungseinheiten, die in Reihe geschaltet sind, umfassen. Das Verfahren kann das Bestimmen des Zeitversatzintervalls durch die Verzögerungsleitungsschaltung in der Erfassungsphase umfassen. Das Verfahren kann das Erzeugen der Flanke des Rückkehrsignals durch die Verzögerungsleitungsschaltung am Ende der Wiederholungsphase umfassen.
-
Das Verfahren kann in der Erfassungsphase das Anlegen des Taktsignals an die Verzögerungsleitungsschaltung umfassen, so dass das Taktsignal nacheinander durch die mehreren Verzögerungseinheiten verzögert wird. Das Verfahren kann in der Erfassungsphase das Anlegen des Auslösesignals direkt an jede Verzögerungseinheit umfassen. Das Verfahren kann in der Erfassungsphase das Bestimmen des Zeitversatzintervalls durch Bestimmen einer speziellen der mehreren Verzögerungseinheiten umfassen, an der die Flanke des Auslösesignals vor einer verzögerten Version des Taktsignals ankommt.
-
Das Verfahren kann in der Wiederholungsphase das Anlegen des internen Antwortsignals an die Verzögerungsleitungsschaltung umfassen, so dass das interne Antwortsignal nacheinander durch die mehreren Verzögerungseinheiten verzögert wird. Das Verfahren kann in der Wiederholungsphase das Erzeugen der Flanke des Rückkehrsignals umfassen, wenn die Flanke des verzögerten internen Antwortsignals die spezielle der mehreren Verzögerungseinheiten erreicht.
-
Die erste Zeitgeberschaltung kann einen Multiplexer umfassen. Das Verfahren kann das Anlegen des Taktsignals an die Verzögerungsleitungsschaltung durch den Multiplexer in der Erfassungsphase umfassen. Das Verfahren kann das Anlegen des internen Antwortsignals an die Verzögerungsleitungsschaltung durch den Multiplexer in der Wiederholungsphase umfassen.
-
Jede Verzögerungseinheit kann ein Verzögerungselement umfassen, das zwischen einen Verzögerungseingang der Verzögerungseinheit und einen Verzögerungsausgang der Verzögerungseinheit gekoppelt ist. Jede Verzögerungseinheit kann eine Vermittlerschaltung umfassen, die mit einem Ausgang des Verzögerungselements und mit einem Auslöseeingang der Verzögerungseinheit gekoppelt ist. Das Verfahren kann das Verzögern eines Signals, das am Verzögerungseingang ankommt, um ein Verzögerungszeitintervall durch das Verzögerungselement umfassen. Das Verfahren kann das Bestimmen der speziellen der mehreren Verzögerungseinheiten durch die Vermittlerschaltung umfassen.
-
Jede Verzögerungseinheit kann ferner ein zurücksetzbares Speicherelement umfassen, das zwischen einen Ausgang der Vermittlerschaltung und einen Ausgang der Verzögerungseinheit gekoppelt ist. Die erste Zeitgeberschaltung kann eine Signalerweiterungsschaltung zum Erweitern entweder einer hohen Phase oder einer niedrigen Phase des empfangenen Taktsignals umfassen. Der Zeitgeber kann ferner eine zweite Zeitgeberschaltung zum Erzeugen eines weiteren Rückkehrsignals auf der Basis des Taktsignals und des Auslösesignals umfassen. Der Zeitgeber kann eine Inverterschaltung zum Erzeugen eines invertierten Taktsignals umfassen, wobei das invertierte Taktsignal eine invertierte Version des Taktsignals ist. Schließlich kann der Zeitgeber ferner ein ODER-Gatter zum Bestimmen eines Gesamtrückkehrsignals auf der Basis des Rückkehrsignals der ersten Zeitgeberschaltung und des weiteren Rückkehrsignals der zweiten Zeitgeberschaltung umfassen.
-
Gemäß einem weiteren Aspekt wird ein Software-Programm beschrieben. Das Software-Programm kann für die Ausführung auf einem Prozessor und zum Durchführen der Verfahrensschritte, die im vorliegenden Dokument umrissen sind, wenn es durch den Prozessor ausgeführt wird, ausgelegt sein.
-
Gemäß einem anderen Aspekt wird ein Speichermedium beschrieben. Das Speichermedium kann ein Software-Programm umfassen, das für die Ausführung auf einem Prozessor und zum Durchführen der Verfahrensschritte, die im vorliegenden Dokument umrissen sind, wenn es durch den Prozessor ausgeführt wird, ausgelegt sein.
-
Gemäß einem weiteren Aspekt wird ein Computerprogrammprodukt beschrieben. Das Computerprogrammprodukt kann Befehle zum Durchführen der Verfahrensschritte, die im vorliegenden Dokument umrissen sind, wenn es durch den Prozessor ausgeführt wird, umfassen.
-
Es sollte beachtet werden, dass die Verfahren und Systeme, einschließlich ihrer bevorzugten Ausführungsformen, wie im vorliegenden Dokument umrissen, eigenständig oder in Kombination mit den anderen Verfahren und Systemen, die in diesem Dokument offenbart sind, verwendet werden können. Außerdem sind die im Zusammenhang mit einem System umrissenen Merkmale auch auf ein entsprechendes Verfahren anwendbar. Ferner können alle Aspekte der Verfahren und Systeme, die im vorliegenden Dokument umrissen sind, beliebig kombiniert werden. Insbesondere können die Merkmale der Ansprüche in beliebiger Weise miteinander kombiniert werden.
-
Im vorliegenden Dokument bezieht sich der Begriff „koppeln“ oder „gekoppelt“ auf Elemente, die miteinander in elektrischer Kommunikation stehen, ob direkt verbunden, z. B. über Drähte, oder in irgendeiner anderen Weise.
-
Figurenliste
-
Die vorliegende Erfindung wird als Beispiel und nicht zur Begrenzung in den Figuren der begleitenden Zeichnungen dargestellt, in denen sich gleiche Bezugszeichen auf ähnliche oder identische Elemente beziehen; es zeigen:
- 1 eine beispielhafte Implementierung des vorgeschlagenen Zeitgebers;
- 2 ein beispielhaftes Zeitablaufdiagramm von Signalen innerhalb des vorgeschlagenen Zeitgebers;
- 3 eine beispielhafte Implementierung einer Verzögerungsleitungsschaltung;
- 4 eine beispielhafte Implementierung einer Verzögerungseinheit;
- 5 Signale innerhalb des vorgeschlagenen Zeitgebers während einer Verzögerungsphase;
- 6 Signale innerhalb des vorgeschlagenen Zeitgebers während einer Erfassungsphase;
- 7 Signale innerhalb des vorgeschlagenen Zeitgebers während einer Zählphase;
- 8 Signale innerhalb des vorgeschlagenen Zeitgebers während einer Wiederholungsphase; und
- 9 Signale innerhalb des vorgeschlagenen Zeitgebers während einer Rücksetzphase.
-
Ausführliche Beschreibung
-
1 zeigt eine beispielhafte Implementierung des vorgeschlagenen Zeitgebers 1 mit einer ersten Zeitgeberschaltung 11 und einer zweiten Zeitgeberschaltung 12.
-
Einerseits umfasst die erste Zeitgeberschaltung 11 einen Zähler 111 zum Zählen von Taktzyklen eines Taktsignals. Die erste Zeitgeberschaltung 11 umfasst auch eine Verzögerungsleitungsschaltung 112 sowohl zum Bestimmen eines Zeitversatzintervalls nach der Ankunft einer Flanke eines Auslösesignals als auch zum Reproduzieren des Zeitversatzintervalls, nachdem der Zähler 111 das Zählen einer vorbestimmten Anzahl von Taktzyklen des Taktsignals beendet hat. Wenn die Verzögerungsleitungsschaltung 112 das Bestimmen des Zeitversatzintervalls beendet hat, erzeugt die Verzögerungsleitungsschaltung 112 eine Flanke eines Signals cnt_go. Wenn der Zähler 111 die Flanke des Signals cnt_go empfängt, startet der Zähler 111 das Zählen der vorbestimmten Anzahl von Taktzyklen bei der nächsten Flanke des Taktsignals. Wenn der Zähler 111 das Zählen der vorbestimmten Anzahl von Taktzyklen des Taktsignals beendet hat, erzeugt der Zähler 111 eine Flanke eines internen Antwortsignals cnt_exp, das wiederum die Verzögerungsleitungsschaltung 112 anweist, das Zeitversatzintervall zu reproduzieren. Die erste Zeitgeberschaltung 111 umfasst auch eine Signalerweiterungsschaltung 113 zum Erweitern der hohen Phase des Taktsignals.
-
Andererseits umfasst die zweite Zeitgeberschaltung 12 einen Zähler 121 zum Zählen von Taktzyklen eines invertierten Taktsignals. Die zweite Zeitgeberschaltung 12 umfasst auch eine Verzögerungsleitungsschaltung 122 sowohl zum Bestimmen des Zeitversatzintervalls als auch Reproduzieren des Zeitversatzintervalls, nachdem der Zähler 121 das Zählen einer vorbestimmten Anzahl von Taktzyklen des invertierten Taktsignals beendet hat. Der Zeitgeber 1 umfasst einen Inverter 13 zum Erzeugen des invertierten Taktsignals clk_inv durch Invertieren des Taktsignals clk. Die zweite Zeitgeberschaltung 12 umfasst auch eine Signalerweiterungsschaltung 123 zum Erweitern der hohen Phase des invertierten Taktsignals clk_inv. Im Allgemeinen entsprechen die Funktionalität und die Signale innerhalb der zweiten Zeitgeberschaltung 12 der Funktionalität und den Signalen innerhalb der ersten Zeitgeberschaltung 11. Es sollte erwähnt werden, dass die Verzögerung des gezeigten Inverters 13 geringer sein sollte als die Phasenerweiterung der Signalerweiterungsschaltung 123, um eine brauchbare Überlappung der jeweiligen hohen Phasen von clk_neg und clk_pos sicherzustellen.
-
Schließlich bestimmt ein ODER-Gatter 14 das endgültige Rückkehrsignal auf der Basis eines ersten Rückkehrsignals rtn_pos, das durch die erste Zeitgeberschaltung 11 erzeugt wird, und eines zweiten Rückkehrsignals rtn_neg, das durch die zweite Zeitgeberschaltung 12 erzeugt wird. Beide Zähler 111 und 121 und beide Verzögerungsleitungsschaltungen 112 und 122 können durch ein Rücksetzsignal zurückgesetzt werden. Ein Konfigurationssignal config kann verwendet werden, um die vorbestimmte Anzahl von Taktzyklen einzustellen, die die Zähler 111 und 121 zählen sollen. Mit anderen Worten, das config-Signal wird verwendet, um das Ziel des synchronen Zählers einzustellen, und ermöglicht konfigurierbare Zeitgeberverzögerungseinstellungen, wobei die Schrittgröße gleich 1 Taktperiode des Taktsignals ist.
-
Insgesamt verwendet die vorgeschlagene Implementierung digitale Zeitgeber (auf Zählerbasis), verwendet jedoch eine asynchrone Schaltungsanordnung (z. B. die Verzögerungsleitungsschaltungen 112 und 122), um die Genauigkeit unter der verfügbaren Taktperiode zu verbessern. Das Basiskonzept ist Folgendes: Zuerst wird das Zeitversatzintervall zwischen einer Taktflanke und einem Auslöser mittels einer asynchronen Verzögerungsleitung gemessen. Zweitens startet, nachdem der Auslöser erfasst ist, ein Zähler das Zählen von M-1 Taktzyklen, wobei M die erforderliche Anzahl von Taktzyklen, um die gewünschte Verzögerung zu erreichen, bezeichnet. Wenn der Zähler abläuft, wird das interne Antwortsignal erzeugt. Drittens wird das Rückkehrsignal unter Verwendung derselben Verzögerungsleitungsschaltung, die für die Bestimmung des Zeitversatzintervalls verwendet wurde, weiter verzögert, um eine Gesamtverzögerung von exakt M Taktzyklen zu erreichen. Um die innewohnende Einstell/Halte-Unsicherheit zu überwinden, wenn der Auslöser nahe der Taktflanke auftritt, werden 2 Zeitgeberinstanzen 111 und 121 verwendet (unter Verwendung von Takten mit entgegengesetzten Polaritäten und Überlappung) und die Ausgaben beider Zeitgeberinstanzen 111 und 121 werden kombiniert.
-
Eine Kernneuerung ist die asynchrone Verzögerungsleitungsschaltung, die in der Lage ist, das Zeitversatzintervall zwischen dem Auslöser und dem Takt zu erfassen und zu wiederholen, und ihre Integration mit dem synchronen Zähler. Im Gegensatz zu einem rein synchronen Zeitgeber erreicht dieses Schema eine Zeitgeberauflösung, die von der Taktperiode unabhängig ist und der Verzögerung eines einzelnen Verzögerungselements der Verzögerungsleitungsschaltung entspricht (wie im Zusammenhang mit der nachstehenden 3 beschrieben wird).
-
Überdies schafft die Erfindung die folgenden zusätzlichen technischen Vorteile: Es ist keine zusätzliche Feineinstellung erforderlich und die absolute Genauigkeit hängt nur vom verwendeten Oszillator ab. Die Verzögerung skaliert automatisch mit der Umschaltperiode eines Leistungsumsetzers, wenn die Umschaltperiode vom gleichen Oszillator abgeleitet ist. Die systeminterne Verzögerung ist über einen breiten Bereich mit minimalem zusätzlichem Mehraufwand konfigurierbar. Im Vergleich zu analogen Implementierungen weist die vorgeschlagene Lösung einen Flächenvorteil für mittlere/lange Zeitgeberverzögerungen auf. Ferner ermöglicht es die Schaltung, einen optimalen Kompromiss zwischen Fläche und Auflösung für eine gegebene Taktperiode und Technologie durch Einstellen der Anzahl von Verzögerungselementen, die in jeder Verzögerungseinheit verwendet werden, zu finden.
-
2 zeigt ein beispielhaftes Zeitablaufdiagramm von Signalen innerhalb des vorgeschlagenen Zeitgebers 1. Das allgemeine Ziel der Schaltung kann beispielsweise darin bestehen, eine steigende Flanke am Rückkehrsignal rtn exakt t=M*clk_period nach der steigenden Flanke des Auslösesignals trig, das in die Schaltung eintritt, zu erzeugen. Dies muss von der Phase/Verzögerung des Auslösesignals trig relativ zum Taktsignal clk unabhängig sein. Das Diagramm zeigt, wie das Auslösesignal trig in beide Zeitgeberinstanzen (tim_pos und tim_neg) eintritt und was in beiden von ihnen passiert. Bei der Ankunft des Auslösesignals trig befindet sich die zweite Zeitgeberschaltung 12 tim_neg in der Messphase und ist bereit, eine Verzögerungsmessung zu starten, während sich die erste Zeitgeberschaltung 11 tim_pos in der blinden Phase befindet. Die Taktsignale für beide Instanzen werden in einer solchen Weise erweitert, dass die Messphasen überlappen. Dadurch wird garantiert, dass eine von den beiden immer bereit ist, ein neues ankommendes Auslösesignal trig anzunehmen. Die Rückkehrsignale rtn an den Ausgängen beider Zeitgeberinstanzen können mit einem einfachen ODER-Gatter 14 kombiniert werden. Die Schaltung kann erwarten, dass das Auslösesignal trig nach einer steigenden Flanke hoch bleibt, zumindest bis eine der Verzögerungseinheiten (siehe 3) das Erfassungssignal (cap-Signal) setzt.
-
3 zeigt eine beispielhafte Implementierung einer Verzögerungsleitungsschaltung 11 (die zur Verzögerungsleitungsschaltung 12 identisch sein kann). Sie umfasst mehrere Verzögerungseinheiten 31, 32 und 33, die in Reihe geschaltet sind. Ferner umfasst sie einen Multiplexer 34, der dazu konfiguriert ist, in einer Erfassungsphase das Taktsignal an die Verzögerungseinheiten 31, 32 und 33 anzulegen und in einer Wiederholungsphase das interne Antwortsignal cnt_exp an die Verzögerungseinheiten 31, 32 und 33 anzulegen. Überdies umfasst die Verzögerungsleitungsschaltung 11 von 3 ein ODER-Gatter 35 zum Erzeugen des Signals cnt_go auf der Basis der Erfassungssignale cap. Überdies umfasst die Verzögerungsleitungsschaltung 11 von 3 ein ODER-Gatter 36 zum Erzeugen eines internen Rückkehrsignals auf der Basis der Rückkehrsignale rtn der individuellen Verzögerungseinheiten 31, 32 und 33. Überdies umfasst die Verzögerungsleitungsschaltung 11 von 3 UND-Gatter 37 zum Aktivieren/Deaktivieren des Auslösesignals, das zu den Verzögerungseinheiten 31, 32 und 33 geliefert wird. Überdies umfasst die Verzögerungsleitungsschaltung 11 von 3 ein UND-Gatter 38 zum Erzeugen des Rückkehrsignals rtn auf der Basis des internen Rückkehrsignals und des internen Antwortsignals cnt_exp.
-
4 zeigt eine beispielhafte Implementierung einer Verzögerungseinheit 31 (die zu den Verzögerungseinheiten 32, 33 und weiteren Verzögerungseinheiten, die in 3 nicht gezeigt sind, identisch sein kann). Die Verzögerungseinheit 31 umfasst ein Verzögerungselement 41, das zwischen einen Verzögerungseingang der Verzögerungseinheit 31 und einen Verzögerungsausgang der Verzögerungseinheit 31 gekoppelt ist, wobei das Verzögerungselement 41 ein Signal, das am Verzögerungseingang ankommt, um ein Verzögerungszeitintervall verzögert. Das Verzögerungselement 41 kann z. B. unter Verwendung von mehreren Inverterschaltungen, die in Reihe geschaltet sind, implementiert werden.
-
Die Verzögerungseinheit 31 umfasst auch eine Vermittlerschaltung 42, die mit einem Ausgang des Verzögerungselements und mit einem Auslösereingang der Verzögerungseinheit 31 gekoppelt ist, wobei die Vermittlerschaltung 42 bestimmt, welcher ihrer zwei Eingänge zuerst ankommt. Die Vermittlerschaltung 42 weist zwei Anforderungseingänge R1 und R2 und zwei Gewährungsausgänge G1 und G2 auf. Die Vermittlerschaltung 42 kann z. B. einen SR-Signalspeicher und ein Metastabilitätsfilter umfassen. Wenn beispielsweise das Signal am R1-Eingang der Vermittlerschaltung 42 zuerst ankommt, wird der G1-Ausgang auf logische 1 gesetzt und der G2-Ausgang wird auf logische 0 gesetzt. Dieser Zustand wird unabhängig vom Signal am R2-Eingang der Vermittlerschaltung 42 aufrechterhalten (gespeichert). Umgekehrt wird, wenn das Signal am R1-Eingang der Vermittlerschaltung 42 zuerst ankommt, der G2-Ausgang auf logische 1 gesetzt und der G1-Ausgang wird auf logische 0 gesetzt. Dieser Zustand wird wieder unabhängig vom Signal am R1-Eingang der Vermittlerschaltung 42 aufrechterhalten (gespeichert).
-
In einer alternativen Implementierung kann das Verzögerungselement 41 zwischen dem Gewährungsausgang G1 der Vermittlerschaltung 42 und dem Ausgang der Verzögerungseinheit 31 angeordnet sein. In dieser Implementierung kann die Vermittlerschaltung 42 dazu konfiguriert sein zu bestimmen, welcher ihrer zwei Eingänge zuerst ankommt, wobei ein Eingang dem Auslösesignal entspricht und der andere Eingang dem Taktsignal entspricht, das durch das Verzögerungselement 41 der vorangehenden Verzögerungseinheit 31 verzögert wurde.
-
Die Verzögerungseinheit 31 umfasst ferner ein zurücksetzbares Speicherelement 43, das zwischen einen Ausgang der Vermittlerschaltung 42 und einen Erfassungsausgang der Verzögerungseinheit 31 gekoppelt ist. Die Verzögerungseinheit 31 kann ferner ein UND-Gatter 44 umfassen, wie in 4 dargestellt.
-
In den folgenden 5 bis 9 wird der Betrieb des vorgeschlagenen Zeitgebers 1 in beispielhafter Weise erläutert. Hierbei stellen durchgezogene Linien zwischen den Schaltungselementen Signale dar, die logisch 0 sind, und gestrichelte Linien zwischen den Schaltungselementen stellen Signale dar, die logisch 1 sind.
-
5 zeigt Signale innerhalb des vorgeschlagenen Zeitgebers 1 während einer Verzögerungsphase. Die Eingänge sind für den Erfassungsmodus konfiguriert: das Auslösesignal trig und das Taktsignal clk werden an die mehreren Verzögerungseinheiten 31, 32 und 33 angelegt. Die positive Flanke des Taktsignals tritt in die Schaltung ein und breitet sich nacheinander durch die Elemente der Verzögerungsleitung aus.
-
6 zeigt Signale innerhalb des vorgeschlagenen Zeitgebers 1 während einer Erfassungsphase. Die positive Flanke des Auslösesignals trig tritt in die Schaltung eine gewisse Zeit nach der positiven Flanke des Taktsignals clk ein. Die Verzögerungselemente, in denen das Auslösesignal trig ankommt, bevor das Taktsignal clk erreicht hat, setzen das interne cap-Signal auf 1. Die Verwendung der Vermittlerschaltungen (Mutex) kann sicherstellen, dass G1 und G2 niemals gleichzeitig gesetzt werden - selbst wenn die R1,R2-Eingänge sich in unmittelbarer Nähe ändern. Eine potentielle Entscheidungsverzögerung (aufgrund der internen Metastabilitätsauflösung in der Vermittlerzelle) verschlechtert nicht die Verzögerungsmessung, da dann das nächste Verzögerungselement cap=1 setzt und der Fehler innerhalb der Dauer eines einzelnen Verzögerungselements enthalten ist. Dies wird zwischengespeichert, bis die Schaltung erneut zurückgesetzt wird.
-
7 zeigt Signale innerhalb des vorgeschlagenen Zeitgebers 1 während einer Zählphase. Sobald die Flanke des Auslösesignals erfasst wird, werden die Eingänge in den Wiederholungsmodus (cnt_go=1) umkonfiguriert. Der synchrone Zähler startet das Zählen bei der nächsten positiven Flanke des Taktsignals clk. Wenn das erste Verzögerungselement die Flanke des Auslösesignals trig detektiert und sein cap=1 setzt, steuert dies das trig-Signal an und ändert den Eingang in die Verzögerungsleitung vom Taktsignal clk auf das cnt_exp-Signal.
-
8 zeigt Signale innerhalb des vorgeschlagenen Zeitgebers 1 während einer Wiederholungsphase. Der synchrone Zähler setzt cnt_exp auf 1 beim Ablauf. Die positive Flanke des cnt_exp-Signals breitet sich nun durch dieselbe Anzahl von Verzögerungselementen aus, die vorher während der Erfassungsphase bestimmt wurde, und löst schließlich den Rückkehr-rtn-Ausgang aus.
-
9 zeigt Signale innerhalb des vorgeschlagenen Zeitgebers 1 während einer Rücksetzphase. Das Eingangssignal reset = 1 initialisiert die Schaltung zurück auf den Erfassungsmodus. Die Zeitgeberschaltung ist nun bereit, ein neues Auslöseereignis anzunehmen.
-
Es sollte beachtet werden, dass die Beschreibung und die Zeichnungen lediglich die Prinzipien der vorgeschlagenen Verfahren und Systeme darstellen. Der Fachmann auf dem Gebiet kann verschiedene Anordnungen implementieren, die, obwohl hier nicht explizit beschrieben oder gezeigt, die Prinzipien der Erfindung verkörpern und innerhalb ihres Gedankens und Schutzbereichs enthalten sind. Ferner sind alle Beispiele und die Ausführungsform, die im vorliegenden Dokument umrissen sind, prinzipiell ausdrücklich nur für Erläuterungszwecke bestimmt, um dem Leser beim Verstehen der Prinzipien der vorgeschlagenen Verfahren und Systeme zu helfen. Ferner sollen alle Aussagen hier, die Prinzipien, Aspekte und Ausführungsformen der Erfindung sowie spezielle Beispiele davon bereitstellen, Äquivalente davon umfassen.