-
Die
Erfindung betrifft eine Messvorrichtung zur hochpräzisen Laufzeitmessung.
Die Laufzeitmessung ist eines der Schlüsselverfahren für die Implementation
von Lokalisiserungsalgorithmen. Zudem spielt Laufzeitmessung eine
wichtige Rolle bei der Untersuchung verschiedenster physikalischer
Effekte. Grobe Laufzeitmessung für
große
Zeitdifferenzen erfolgt vorrangig mit zählerbasierten Verfahren, wobei
die Auflösung
der Laufzeitmessung durch die Taktrate des Zählers begrenzt ist. Feine Laufzeitmessung
für kleine
Zeitdifferenzen wird entweder mit analogen Verfahren oder unter
Verwendung sogenannter Tapped Delay Lines (TDLs) durchgeführt. TDLs
bieten den Vorteil einer rein digitalen und somit preiswerten Umsetzung.
-
Eine
TDL wird gewöhnlich
als Kette von Verzögerungsgliedern
(„TDL
elements"), welchen
jeweils ein Flip-flog zugeordnet ist, realisiert. Eine solche TDL
ist in 1 dargestellt. Die Dateneingänge D der Flip-flops werden
mit einem dem jeweiligen Flip-flog zugeordneten Abgriffpunkt („tab") der Kette von Verzögerungsgliedern
verbunden. Der Eingang der Kette von Verzögerungsgliedern wird mit einem ersten
Signaleingang für
ein erstes Messsignal S1 verbunden. Die Takteingänge CLK aller Flip-flops der TDL
werden direkt mit einem zweiten Signaleingang für ein zweites Messsignal S2
verbunden. Vorzugsweise weist jedes Verzögerungsglied dieselbe Verzögerungszeit τ auf.
-
Erreicht
das erste Messsignal S1 den Dateneingang D eines Flip-flops, bevor
das zweite Messsignal S2 den Takteingang CLK desselben Flip-flops erreicht,
wird das Flip-flog in dem Moment, in dem das zweite Messsignal S2
den Takteingang CLK erreicht, den logischen Pegel des ersten Messsignals S1,
der an seinem Eingang D anliegt, laden und auf seinem Ausgang Q[0..5]
ausgeben. Im umgekehrten Fall, also wenn das zweite Messsignal S2
den Takteingang CLK erreicht, bevor das erste Messsignal S1 am Eingang
D des Flip-flops anliegt, wird das Flip-flog die logische Inverse
ausgeben. Dadurch trifft der Ausgangswert des Flip-flops eine Aussage
darüber,
welches der beiden Messsignale S1, S2 zuerst am Flip-flog eingetroffen
war.
-
Da
nun das erste Messsignal S1 aufgrund der sich bei Durchlaufen der
Kette von Verzögerungsgliedern
erhöhenden
Gesamtverzögerung
am Dateneingang D jedes Flip-flops
zu einer anderen Zeit erscheint (siehe die Darstellung der zeitlichen Verhältnisse
von Beispielsignalen S1, S2 oberhalb der TDL in 1),
kann eine zeitliche Verzögerung ΔT des zweiten
Messsignals S2 gegenüber
dem ersten Messsignal S1 bestimmt werden, indem die Ausgangswerte
Q[0..5] aller Flip-flops der TDL betrachtet werden.
-
Das
in 1 gezeigte Beispiel einer TDL kann eine Verzögerung nur
bestimmen, wenn S2 später
den logischen Pegel wechselt als S1. Eine TDL kann jedoch modifiziert
werden, so dass auch eine Bestimmung eines Verzögerungswertes möglich ist,
wenn das erste Messsignal S1 gegenüber dem zweiten Messsignal
S2 verzögert
ist.
-
Die
Genauigkeit der Messung ist durch die Verzögerungszeit τ eines Verzögerungsgliedes
vorgegeben und beträgt
bei gängigen
Implementierungen ca. 50 ps. Der in 1 gezeigte
Ergebnisvektor [111100] würde
also einer Verzögerung
des zweiten Messsignals S2 gegenüber
dem ersten Messsignal S1 von ca. 200 ps entsprechen. Die Messgenauigkeit (Zeitauflösung) von
ca. 50 ps ist für
viele Anwendungen zu gering, weshalb es sich die vorliegende Erfindung
zur Aufgabe macht, eine Messvorrichtung anzugeben, die eine höhere Messgenauigkeit
unter Beibehaltung der einfachen und preiswerten Implementierungsmöglichkeit
der TDL ermöglicht.
-
Dem
entsprechend führt
die Erfindung eine Messvorrichtung zur hochpräzisen Laufzeitmessung ein,
welche über
eine Mehrzahl von Reihen von Logikelementen, einen ersten Messeingang
für ein
erstes Messsignal und einen zweiten Messeingang für ein zweites
Messsignal verfügt.
Jedes der Logikelemente weist einen ersten und einen zweiten Signaleingang
für ein
erstes bzw. zweites Eingangssignal auf und ist ausgebildet, einen
ersten logischen Ausgangswert auszugeben, wenn nach Inbetriebnahme ein
logischer Pegel des ersten Eingangssignals wechselt und ein logischer
Pegel des zweiten Eingangssignals seit Inbetriebnahme konstant geblieben
ist, und einen zweiten logischen Ausgangswert auszugeben, wenn nach
Inbetriebnahme der logische Pegel des zweiten Eingangssignals wechselt und
der logische Pegel des ersten Eingangssignals seit Inbetriebnahme
konstant geblieben ist. Der erste Messeingang ist mit dem ersten
Signaleingang eines ersten Logikelementes einer ersten Reihe von
Logikelementen und der zweite Messeingang mit dem zweiten Signaleingang
eines letzten Logikelementes einer letzten Reihe von Logikelementen
verbunden. Die ersten Signaleingänge
aller Logikelemente sind miteinander elektrisch verbunden und die
zweiten Signaleingänge
aller Logikelemente sind miteinander elektrisch verbunden.
-
Da
die elektrische Verbindung der ersten bzw. zweiten Signaleingänge der
Logikelemente zu den ersten bzw. zweiten Signaleingängen direkt
benachbarter Logikelemente zwangsläufig einen begrenzten elektrischen
Leitwert und einen Kapazitätsbelag
aufweisen, verzögern
diese parasitären
Effekte den Signalfluss des ersten bzw. zweiten Messsignals auf
dem Weg von Logikelement zu Logikelement. Diese Verzögerung ist
jedoch gegenüber
der Verzögerung
eines Verzögerungsgliedes
wie z. B. eines CMOS-Inverters
sehr gering, weshalb sich auch eine deutlich erhöhte zeitliche Auflösung ergibt.
-
Jedes
Logikelement muss zu einem durch eines der beiden Messsignale festgelegten
Zeitpunkt eine Bestimmung des logischen Pegels des anderen der beiden
Messsignale durchführen.
Da die Flanke eines Messsignals beim Durchlaufen der Messvorrichtung
nicht durch aktive Elemente aufgefrischt wird, flacht diese mit
der zurückgelegten
Wegstrecke immer mehr ab. Dadurch sinkt jedoch auch die Sicherheit
der Bestimmung des logischen Pegels, weil gleichbleibende Störbeeinflussungen ΔUn der Eingangssignale der Logikelemente etwa
durch Rauschen der Versorgungsspannungen bei immer flacheren Flanken ΔU0/Δt0 immer größeren zeitlichen Abweichungen Δtn entsprechen. Hinzukommt, dass bei einem
Aufbau der Logikelemente als Flip-flog wie für die TDL (nur ohne Verzögerungsglieder)
beschrieben, auch die Flanke an den Takteingängen der Flip-flops abflacht, so
dass der Zeitpunkt, zu dem die Bestimmung des logischen Pegels durchgeführt wird,
ebenfalls aufgrund von Störeinstreuungen
immer ungenauer wird. Die Erfindung tritt diesen Effekten entgegen,
indem sie ein Feld von mehreren Reihen von Logikelementen vorsieht,
an dessen gegenüberliegenden
Ecken der erste und zweite Messeingang angeschlossen sind, so dass
die Bestimmung des logischen Pegels von immer mehr Logikelementen
durchgeführt
wird, je weiter ein Messsignal in die Messvorrichtung vordringt.
Dadurch wird die mit dem Durchlaufen der Messvorrichtung immer ungenauer werdende
Bestimmung des logischen Pegels durch eine immer häufiger parallel
ausgeführte
Messung kompensiert.
-
Bevorzugt
weist die Messvorrichtung eine Ausleseeinheit auf, die ausgebildet
ist, die Ausgangswerte der Logikelemente zu empfangen und auszugeben.
Dadurch ist ein einfaches Auslesen des Ergebnisvektors (Ausgangswerte)
möglich.
-
Zusätzlich kann
die Messvorrichtung eine mit der Ausleseeinheit verbundene Auswertungseinheit besitzen,
welche ausgebildet ist, anhand der von der Ausleseeinheit ausgegebenen
Ausgangswerte eine Verzögerung
zwischen einem Wechsel eines logischen Pegels des ersten Messsignals
und einem Wechsel eines logischen Pegels des zweiten Messsignals
zu bestimmen und als Ergebniswert auszugeben. Die Auswertungseinheit
besitzt den Vorteil, direkt ein verwertbares Ergebnis der Messung
bereitzustellen.
-
Besonders
bevorzugt besitzt die Messvorrichtung hierzu eine mit der Auswertungseinheit
verbundene Speichereinheit für
eine Vielzahl von Statusvektoren, welchen jeweils ein Verzögerungswert zugeordnet
ist, auf. Die Auswertungseinheit ist hierbei ausgebildet, die von
der Ausleseeinheit ausgegebenen Ausgangswerte mit der Vielzahl von
Statusvektoren zu vergleichen und bei Übereinstimmung der Ausgangswerte
mit einem der Statusvektoren den dem Statusvektor zugeordneten Verzögerungswert
als Ergebniswert auszugeben. Die Statusvektoren können beispielsweise
in einem Kalibrierungsverfahren ermittelt und dann für spätere Messungen verwendet
werden.
-
Die
Auswertungseinheit kann alternativ ausgebildet sein, eine erste
Anzahl von ersten Ausgangswerten und eine zweite Anzahl von zweiten Ausgangswerten
zu bestimmen.
-
Die
Auswertungseinheit kann dann ausgebildet sein, einen ersten Ergebniswert
auszugeben, wenn die erste Anzahl größer als die zweite Anzahl ist,
und einen vom ersten Ergebniswert verschiedenen zweiten Ergebniswert
auszugeben, wenn die zweite Anzahl größer ist als die erste Anzahl.
Diese besonders einfache Ausführung
der Auswertungseinheit erlaubt eine binäre Ergebnisbestimmung in dem
Sinne, dass lediglich festgestellt wird, welches Messsignal zuerst
an der Messvorrichtung anlag.
-
Die
Auswertungseinheit kann auch ausgebildet sein, ein Verhältnis der
ersten Anzahl und der zweiten Anzahl zu bestimmen und als Ergebniswert auszugeben.
In diesem Fall erlaubt der Ergebniswert zusätzlich auch noch eine Aussage,
um wieviel früher eines
der Messsignale vor dem jeweils anderen Messsignal an der Messvorrichtung
anlag.
-
Besonders
bevorzugt ist die Auswertungseinheit ausgebildet, jedem Logikelement
einen ersten Verzögerungswert
für das
erste Messsignal und einen zweiten Verzögerungswert für das zweite Messsignal
zuzuweisen. Die Auswertungseinheit bestimmt eine erste Gruppe von
Logikelementen, die den ersten Ausgangswert ausgeben und wenigstens ein direkt
benachbartes Logikelement haben, das den zweiten Ausgangswert ausgibt,
und eine zweite Gruppe von Logikelementen, die den zweiten Ausgangswert
ausgeben und wenigstens ein direkt benachbartes Logikelement haben,
das den ersten Ausgangswert ausgibt. Dann bestimmt die Auswertungseinheit
einen ersten Mittelwert der den Logikelementen der ersten Gruppe
zugeordneten ersten Verzögerungswerte
und einen zweiten Mittelwert der den Logikelementen der zweiten
Gruppe zugeordneten zweiten Verzögerungswerte,
berechnet eine Differenz des ersten Mittelwertes und des zweiten
Mittelwertes und gibt diese als Ergebniswert aus. Diese Variante
erlaubt eine statistische Mittelung der verschiedenen gleichzeitig
durchgeführten
Bestimmungen und dadurch eine Reduktion des Messfehlers.
-
Zusätzlich kann
die Auswertungseinheit ausgebildet sein, die den Logikelementen
der ersten und zweiten Gruppe zugeordneten ersten bzw. zweiten Verzögerungswerte
vor der Mittelwertbildung zu gewichten. Dabei gewichtet sie einen
ersten Verzögerungswert
der Logikelemente der ersten Gruppe jeweils mit einem ersten Gewichtungsfaktor,
wenn das jeweilige Logikelement genau ein direkt benachbartes Logikelement
hat, das den zweiten Ausgangswert ausgibt, mit einem zweiten Gewichtungsfaktor,
wenn das jeweilige Logikelement genau zwei direkt benachbarte Logikelemente
hat, die den zweiten Ausgangswert ausgeben, und mit einem dritten
Gewichtungsfaktor, wenn das jeweilige Logikelement genau drei direkt
benachbarte Logikelemente hat, die den zweiten Ausgangswert ausgeben.
Umgekehrt werden die Verzögerungswerte
der zweiten Gruppe entsprechend gewichtet, also mit dem ersten Gewichtungsfaktor,
wenn das jeweilige Verzögerungselement
genau ein direkt benachbartes Logikelement hat, das den ersten Ausgangswert
ausgibt, mit dem zweiten Gewichtungsfaktor, wenn das jeweilige Logikelement
genau zwei direkt benachbarte Logikelemente hat, die den ersten
Ausgangswert ausgeben, und mit dem dritten Gewichtungsfaktor, wenn
das jeweilige Logikelement genau drei direkt benachbarte Logikelemente
hat, die den ersten Ausgangswert ausgeben. Dabei ist der erste Gewichtungsfaktor größer als
der zweite Gewichtungsfaktor und der zweite Gewichtungsfaktor größer als
der dritte Gewichtungsfaktor.
-
Diese
Ausführungsvariante
berücksichtigt, dass
ein einzelnes Logikelement, das von drei Logikelementen, die einen
entgegengesetzen Ausgangswert ausgeben, umgeben ist, mit hoher Wahrscheinlichkeit
einem Messfehler unterliegt, während
ein Logikelement, dessen vier Nachbarn sich jeweils hälftig auf
die beiden möglichen
Ausgangswerte verteilen, bereits einen zuverlässigeren Ausgangswert zur Verfügung stellt.
Dem entsprechend kann ein Verzögerungswert
eines Logikelementes, das nur einen Nachbarn mit entgegengesetztem
Ausgangswert aufweist, mit einem noch höheren Gewichtungswert versehen
werden.
-
Zusätzlich kann
vorgesehen sein, isolierte Logikelemente, also solche Logikelemente,
deren Ausgangswerte gegenüber
den Ausgangswerten aller vier benachbarter Logikelemente entgegengesetzt
sind, vollständig
zu ignorieren. Außerdem
ist es möglich,
abhängig
von der jeweiligen lokalen Ausbreitungsrichtung der Messsignale
Ausgangswerte, die bestimmte Muster aufweisen, zu ignorieren oder mit
einem größeren oder
geringeren Gewichtungsfaktor zu versehen.
-
Besonders
bevorzugt ist die Messvorrichtung als integrierter Schaltkreis ausgeführt. Solche Integrierten
Schaltkreise weisen gewöhnlich
mehrere Verdrahtungsebenen auf, welche aufgrund unterschiedlicher
Querschnittsflächen
der Leiter unterschiedliche Leitwerte aufweisen. Zusätzlich können weitere
Leitwerte erzeugt werden, indem Leiter verschiedener Verdrahtungsebenen
parallel geführt
und miteinander durch Kontaktierungen verbunden werden, so dass
sich die Leitwerte der einzelnen Verdrahtungsebenen summieren. Außerdem ist
es möglich,
den lateralen Durchmesser eines Leiters zu erhöhen, um dessen Leitwert zu
erhöhen.
Ebenso kann der Kapazitätsbelag
der Leitung beeinflusst werden, indem in einem wählbaren Abstand zur Leitung
eine Masse- oder Versorgungsleitung geführt wird. Durch geeignete Wahl
von Leitwert und Kapazitätsbelag können somit
für jede
Anwendung geeignete Laufzeitverzögerungen
erzeugt werden.
-
Besonders
einfach und preiswert lässt
sich die Messvorrichtung aufbauen, indem ein Field Programmable
Gate Array (FPGA) verwendet wird. Ein FPGA stellt eine Sonderform
eines integrierten Schaltkreises dar, die über eine Vielzahl von in einem Feld
angeordneten Zellen verfügt,
deren Funktion und Verbindung sich durch Programmierung wählen lässt. Da
ein FPGA meist auch über
komplexe Logikzellen und Speicherzellen verfügt, kann auch die Auswertungseinheit
einfach auf dem FPGA verwirklicht werden.
-
Die
Erfindung wird im Folgenden anhand von Abbildungen von Ausführungsbeispielen
näher erläutert.
-
Es
zeigen:
-
1 eine
Tapped Delay Line gemäß dem Stand
der Technik,
-
2 eine
bevorzugte Ausführungsform der
erfindungsgemäßen Messvorrichtung,
-
3 einen zeitlichen Ablauf einer Messung,
und
-
4 Beispiele für mögliche Ergebnisvektoren.
-
2 zeigt
eine bevorzugte Ausführungsform
der erfindungsgemäßen Messvorrichtung 10. Die
Messvorrichtung 10 verfügt über zwei
Signaleingänge 11, 12,
welche an gegenüberliegenden
Ecken eines Feldes von Logikelementen [1, 1] bis [m, n] angeschlossen
sind. Jedes Logikelement [1, 1] bis [m, n] besitzt zwei Signaleingänge, von
denen jeweils einer mit dem ersten Signaleingang 11 und
einer mit dem zweiten Signaleingang 12 verbunden ist. Dadurch
sind auch alle ersten Signaleingänge
aller Logikelemente mit den ersten Signaleingängen aller anderen Logikelemente
verbunden. Entsprechendes gilt für
alle zweiten Signaleingänge
aller Logikelemente. Am einfachsten kann die Verdrahtung verwirklicht
werden, indem an jeder Reihe [y, 1..n] von Logikelementen und an
jeder Spalte [1..m, y] von Logikelementen jeweils eine Leitung für jedes
der beiden Messsignale entlang geführt wird.
-
Bevorzugt
ist das Feld von Logikelementen quadratisch ausgeführt, so
dass m gleich n ist. Aufgrund der unterschiedlichen Wegstrecken,
die jedes der beiden Messsignale von den jeweiligen Signaleingängen 11, 12 zu
einem bestimmten Logikelement zurücklegen muss, ergibt sich für jedes
Logikelement ein bestimmtes Paar von Verzögerungen. Jedes Logikelement
ist ausgeführt,
einen ersten logischen Ausgangswert auszugeben, wenn das erste Messsignal
das Logikelement vor dem zweiten Messsignal erreicht hat. Im entgegengesetzten
Fall, also wenn das zweite Messsignal das Logikelement vor dem ersten
Messsignal erreicht hat, wird das Logikelement einen zweiten logischen
Ausgangswert, der sich vom ersten logischen Ausgangswert unterscheidet,
ausgeben.
-
Die
Messvorrichtung 10 besitzt eine Ausleseeinheit 13,
die mit den Signalausgängen
der Logikelemente [1, 1] bis [m, n] verbunden und ausgebildet ist,
die logischen Ausgangswerte aller Logikelemente [1, 1] bis [m, n]
zu empfangen und auszugeben. Zudem weist die abgebildete Ausführungsform
der Messvorrichtung 10 eine mit der Ausleseeinheit 13 verbundene
Auswertungseinheit 14 auf, welche wiederum mit einer Speichereinheit 15 für eine Vielzahl von
Statusvektoren verbunden ist. Die Auswertungseinheit 14 ist
ausgebildet, die von der Ausleseeinheit 13 ausgegebenen
Ergebnisvektoren zu empfangen und mit den in der Speichereinheit 15 abgelegten Statusvektoren
zu vergleichen. Jedem der Statusvektoren ist eine Verzögerungszeit
zugeordnet, bei deren Vorliegen zwischen dem ersten und zweiten Messsignal
sich der jeweilige Statusvektor ergibt. Findet die Auswertungseinheit 14 eine Übereinstimmung
zwischen dem Ergebnisvektor und einem der in der Speichereinheit 15 abgelegten
Statusvektoren, gibt sie den dem übereinstimmenden Statusvektor zugeordneten
Verzögerungswert
als Ergebniswert der Messung aus.
-
Die
Statusvektoren können
beispielsweise durch zuvor durchgeführte Kalibrierungsmessungen bestimmt
worden sein. Für
die Funktion der Messvorrichtung 10 ist es unerheblich,
welche exakten Laufzeitverzögerungen
die Messsignale auf ihren Wegen durch die Messvorrichtung 10 von
einem Logikelement zum nächsten
tatsächlich
unterworfen sind. Auch ist es unerheblich, ob die Verzögerungen
jeweils gleich sind, wie es eine Voraussetzung der Tapped Delay
Line ist. Dadurch wird der Aufbau der Messvorrichtung gemäß der Erfindung
wesentlich gegenüber
dem Stand der Technik vereinfacht.
-
3 zeigt einen zeitlichen Ablauf einer Messung
anhand dreier Teilabbildungen 3a) bis 3c). Im abgebildeten Beispiel erscheint das erste
Messsignal am ersten Signaleingang 11, bevor das zweite
Messsignal am zweiten Signaleingang 12 anliegt.
-
In
der Teilabbildung 3a) hat das erste Messsignal
bereits die Logikelemente [1, 1], [1, 2] und [2, 1] erreicht, weshalb
diese den ersten logischen Ausgangswert (vertikale Schraffur) speichern und
ausgeben.
-
In
der zweiten Teilabbildung 3b) hat das
erste Messsignal zusätzlich
die Logikelemente [1, 3], [2, 2], [2, 3], [3, 1] und [3, 2] erreicht,
während das
später
eintreffende zweite Messsignal erst das Logikelement [m, n] (hier
[5, 5]) erreicht hat, so dass dieses Logikelement den zweiten logischen
Ausgangswert ausgibt (horizontale Schraffur).
-
Die
dritte Teilabbildung 3c) zeigt schließlich das
vollständige
Ergebnis der Messung. Anhand der logischen Ausgangswerte aller Logikelemente
(Ergebnisvektor) kann nun die Verzögerung zwischen den beiden
Messsignalen bestimmt werden.
-
4 zeigt Beispiele für mögliche Ergebnisvektoren anhand
dreier Teilabbildungen 4a) bis 4c). Im Beispiel der Teilabbildung 4a), welche der Teilabbildung 3c) entspricht, lag das erste Messsignal am ersten
Signaleingang 11 an, bevor das zweite Messsignal am zweiten
Signaleingang 12 anlag. Dem entsprechend geben mehr Logikelemente
den ersten logischen Ausgangswert aus als den zweiten logischen
Ausgangswert. Im Beispiel der Teilabbildung 4b) traten
die beiden Messsignale ungefähr
gleichzeitig auf, im dritten Beispiel (Teilabbildung 4c)
schließlich
erschien das zweite Messsignal am Signaleingang 12, bevor
das erste Messsignal am Signaleingang 11 anlag.