TDC-GP1 - acam messelectronic gmbh

Transcrição

TDC-GP1 - acam messelectronic gmbh
TDC-GP1
Universeller 2-Kanal TDC
2 Kanäle 250ps / 1 Kanal 125ps Auflösung
Funktionsbeschreibung
18.12.2003
acam - solutions in time
Precision Time Interval Measurement
TDC-GP1
Zum Aufbau der Funktionsbeschreibung
Inhaltsverzeichnis
Zum Aufbau der Funktionsbeschreibung .............................................................. 3
1. Der GP1 im Überblick
4
Was ist ein TDC ? ............................................................................................ 4
1.2 Hauptmerkmale des TDC-GP1 ...................................................................... 4
1.3 Prinzipschaltbild des GP1 ............................................................................ 5
1.4 Messungen im Messbereich 1 ...................................................................... 6
1.5 Messungen im Messbereich 2 ...................................................................... 7
1.6 Die R-L-C Einheit ....................................................................................... 7
1.7 Der High Resolution Modus ......................................................................... 7
1.8 Der Resolution Adjust Modus ...................................................................... 8
1.9 Kalibration des GP1 ................................................................................... 8
1.10 Haupt-ALU und Vor-ALU ........................................................................... 8
1.11 Ausgangsregister .................................................................................... 9
1.12 Einstell- und Werteregister ....................................................................... 9
1.13 Rechnerschnittstelle ................................................................................ 9
1.14 Sonstige Funktionen des GP1 .................................................................. 10
2. Der GP1 im Detail
11
2.1 Vorbemerkung ......................................................................................... 11
2.2 Die Lese- und Schreibregister des GP1 ...................................................... 11
2.2.4 Initialisierung ....................................................................................... 16
2.3 Messen im Messbereich 1 ......................................................................... 17
2.4 Messen im Messbereich 2 ......................................................................... 20
2.5 Messen im Resolution Adjust Modus .......................................................... 23
2.6 Zuschalten des High Resolution Modus ....................................................... 27
2.7 RLC-Messung .......................................................................................... 29
2.8 Kalibration des GP1 ................................................................................. 33
2.9 Berechnungsmöglichkeiten mit dem GP1 ..................................................... 34
2.10 Die Rechnerschnittstelle......................................................................... 38
2.11 Sonstige Funktionen des GP1 .................................................................. 40
3. Anwendungsbeispiele
46
3.1 Applikationsbeispiel 1 ............................................................................... 46
3.2 Applikationsbeispiel 2 ............................................................................... 47
3.3 Einzelmessung im Messbereich 2 ............................................................... 48
3.4 Multihit: Auslesen mehrerer Hits ............................................................... 48
4. Messergebnisse und Diagramme
49
4.1 Was bedeuten Auflösung und Genauigkeit ? ................................................. 49
4.2 Standardabweichungen des TDC-GP1 .......................................................... 49
4.3 Offsetfehler des GP1 ................................................................................ 50
4.4 Systematische Fehler des GP1 .................................................................. 50
4.5 Histogramme .......................................................................................... 51
5. Bekannte Probleme und deren Lösung
53
5.1 Kalibrierwertgenerierung .......................................................................... 53
5.2
Fehler der ALU Berechnung ................................................................... 54
5.3 Retrigger ................................................................................................ 55
6 Letzte Änderungen
56
Kontakt ........................................................................................................ 56
7. Quick Reference
57
7.1Electrical Characteristics .......................................................................... 57
7.2 Pin Description ........................................................................................ 57
7.3 Timings ................................................................................................... 57
7.4 Registers ............................................................................................... 58
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
2
TDC-GP1
Zum Aufbau der Funktionsbeschreibung
Zum Aufbau der Funktionsbeschreibung
Diese Funktionsbeschreibung des GP1 gliedert sich in 5 Hauptabschnitte. Sie ist so aufgebaut, dass
man beim Arbeiten und Entwickeln mit diesem Baustein ein Informations- und Nachschlagewerk zur
Hand hat, das möglichst alle Fragen beantworten kann, ohne dass die gesuchte Detailinformation in
der Menge der anderen Informationen ertrinkt. Es sind dabei einige wichtige Informationen mehrfach
in der Funktionsbeschreibung aufgeführt um dauerndes Herumblättern und Suche zu vermeiden.
Die 5 Hauptabschnitte sind
! Der GP1 im Überblick
Dieser Hauptabschnitt gibt einen Überblick über die vielfältigen Funktionsmöglichkeiten des GP1
ohne auf die einzelnen Funktionen im Detail einzugehen. Hier findet man alles Wissenswerte um
die prinzipielle Einsetzbarkeit für eine geplante Messaufgabe abschätzen zu können. Ein
lesenswerter Abschnitt für all diejenigen, die sich das erste Mal mit diesem Baustein
beschäftigen, oder die sich für eine neue Entwicklung einen kurzen Überblick verschaffen wollen.
! Der GP1 im Detail
Hier wird detailliert auf die Funktionen des Bausteines und deren Handhabung eingegangen. Die
vielfältigen Möglichkeiten sind umfassend erläutert. Hier kann der Entwickler die Informationen
finden, die er für eine Schaltungs- und Softwareentwicklung benötigt.
! Anwendungsbeispiele, Applikationshinweise
Hier werden an einigen konkreten Beispielen die Beschaltung und die Ansteuerung des GP1
erläutert.
! Messergebnisse und Diagramme
Grau ist alle Theorie - oder - erzählen kann man viel. Wie gut ist der GP1 eigentlich wirklich?
Hier lässt der GP1 die Hosen runter und zeigt dem Anwender was in ihm steckt und zwar auch
bzgl. seiner Grenzen. Dieser Abschnitt ist interessant für alle, aber besonders für diejenigen, die
den Baustein bis an die Grenzen ausnutzen wollen (müssen). Ein interessanter Teil auch für
diejenigen, die einen Vergleichsmaßstab der eigenen Messergebnisse suchen. Sind Ihre
Messergebnisse deutlich besser oder schlechter als die unsrigen, rufen Sie uns an oder
schicken Sie uns eine Mail. Wir geben gerne Tipps bzw. lernen gerne dazu.
! Bekannte Probleme und deren Lösung
Hier finden Sie Beschreibungen und Umgehungsmöglichkeiten von Problemen des Bausteins.
'Nobody is Perfect' auch der GP1 hat 'Funktionalitäten', die in der Art nicht geplant waren.
Dieses Kapitel sollte auf jeden Fall durchgelesen werden um von vornherein informiert zu sein
und Problemen aus dem Weg zu gehen.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
3
TDC-GP1
Was ist ein TDC ?
1. Der GP1 im Überblick
Was ist ein TDC ?
TDCs sind heute immer noch vielfach unbekannte Bausteine, deshalb hier einige kurze Anmerkungen
dazu.
Die Abkürzung TDC steht für T ime to D igital C onverter. Es sind Bausteine die Zeitdifferenzen
hochauflösend in digitale Werte umwandeln. Sie sind damit das Analogon zu ADCs (Analog to Digital
Converter), die das gleiche mit analogen Spannungen tun. Obwohl laut dieser Definition bereits
Armbanduhren oder einfache digitale Zähler zu TDCs zu rechnen wären, ist der Begriff TDC nur für
Zeitdifferenzwandler hoher Auflösung gebräuchlich. Unter TDCs versteht man deshalb im allgemeinen
Wandler mit Auflösungen unter einer Nanosekunde. Diese Auflösungen sind mit Zählern o.ä. ohne
erheblichen Aufwand nicht mehr zu erreichen und erfordern eigene, darauf zugeschnittene Lösungen.
Die TDCs der acam-messelectronic gmbh basieren auf der Ausnutzung digitaler Laufzeiten vorwiegend
auf CMOS Prozessen. Die damit erreichbaren Auflösungen liegen z. Zt. im Bereich von 30 ps - 300 ps
je nach Verfahren.
Der GP1 deckt mit seiner Auflösung von 250 ps im 2 Kanal Betrieb bzw. 125 ps im High Resolution
Betrieb den Bereich der meisten Anwendungen ab. Ein TDC ist, wie jeder andere Baustein auch, nicht
nur durch sein 'Key Feature' wie z. B. hier die Auflösung charakterisiert, sondern durch eine Vielzahl
anderer Eigenschaften, wie Bedienbarkeit, Flexibilität in der Anwendung, problemloses 'Design In'
u.s.w. Diesen Punkten haben wir bei der Entwicklung viel Aufmerksamkeit gewidmet und uns bemüht,
den GP1 mit umfassenden Funktionsmöglichkeiten auszustatten.
1.2 Hauptmerkmale des TDC-GP1
Stichwortartig die Key Features des GP1:
! 2 Messkanäle mit je 250 ps Auflösung
!
!
!
!
a.
b.
!
!
!
!
oder 1 Kanal mit 125 ps Auflösung beider
Kanäle absolut identisch
4-fach Multihitfähigkeit, im Queuing bis
8-fach Multihit.
Doppelpulsauflösung 15 ns typ.
optional retriggerfähig
2 Messbereiche
3ns - 7.6 µs
60 ns -200 ms (mit Vorteiler, nur 1 Kanal)
die 8 Ereignisse der beiden Kanäle können
beliebig zueinander vermessen werden,
keine minimale Zeitdifferenz erforderlich;
negative Zeiten können erkannt und
vermessen werden
Resolution Adjust Modus; in diesem Modus
kann die Auflösung quarzgenau und
per
Software
temperaturunabhängig
eingestellt werden
4
Ports
zum
Ausmessen
von
Widerständen,
Induktivitäten
und
Kapazitäten
Flankensensitivität der Messeingänge kann
eingestellt werden
! Enable
!
!
!
!
!
!
!
!
Pins der beiden Stopp-Eingänge
ermöglichen
flexible
externe
Fensterbildung
leistungsfähige interne 16-Bit ALU, das
Messergebnis kann kalibriert und mit einer
24-Bit Zahl multipliziert werden
Berechnungszeit der ALU unabhängig von
externem Takt; ca. 4 µs für komplette
Kalibration und Multiplikation
bis zu 4 kalibrierte oder 8 unkalibrierte
Messwerte intern speicherbar
Kalibrations- und Steuertakt von 500 kHz
bis 35 MHz wählbar (bis 100 MHz bei
Verwendung des chipinternen Vorteilers)
platzsparendes
und
dennoch
produktionsfreundliches 44 TQFP Gehäuse
(0.8 mm Pitch, 1.27 mm max. Bauhöhe)
industrieller Temperaturbereich:
-40 ºC ... +85 ºC
Betriebsspannungsbereich:
2.7 V ... 5.5 V
extrem geringe Stromaufnahme, voll
batterietauglich
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
4
TDC-GP1
1.3 Prinzipschaltbild des GP1
1.3 Prinzipschaltbild des GP1
Abbildung 1
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
5
TDC-GP1
1.4 Messungen im Messbereich 1
1.4 Messungen im Messbereich 1
Der GP1 verfügt über 2 Messkanäle mit je ca. 250 ps typischer Auflösung und einem
Grundmessbereich von 15 Bit.
! Beide Kanäle sind in der Auflösung absolut identisch.
! Beide Kanäle haben einen gemeinsamen Start und bis zu 4 voneinander unabhängige Stopps.
! Die Kanäle können optional hintereinander geschaltet werden (queuing), dadurch ist 1 Kanal mit 8fach Multihitfähigkeit möglich
Es kann jedoch nicht nur der Start zu den jeweiligen Stopps vermessen werden, sondern auch die
Stopps untereinander, gleichgültig ob es sich um Stopps des gleichen Kanals oder verschiedener
Kanäle handelt. Es können beliebige Zeitdifferenzen der 8 möglichen Ereignisse gemessen werden.
Vergleicht man Ereignisse verschiedener Kanäle, können beliebig kleine Zeitdifferenzen vermessen
werden. Bei Ereignissen auf dem gleichen Kanal ist die Doppelpulsauflösung des Kanals der
begrenzende Faktor. Bild 1 verdeutlicht den Zusammenhang. Die Doppelpulsauflösung liegt bei ca. 15
ns typ., d.h. kommen 2 Stopps auf dem gleichen Kanal in kürzerem Abstand als 15 ns, wird der 2.
Stopp ignoriert, da er innerhalb der Erholzeit der Messeinheit liegt.
Abbildung 2 : Mögliche Messfolge beim 2 Kanal Betrieb
Es ist nicht notwendig zu wissen, welches der beiden Ereignisse, die man gegeneinander ausmessen
will, das Erste war. Ist die Zeitdifferenz negativ wird auch das Ergebnis negativ.
Eine mögliche Anwendung ist z.B. das Vermessen der Phasendifferenz zweier gegeneinander
phasenmodulierter Signale. Man gibt das 1. Signal auf Kanal 1 und das 2. Signal auf Kanal 2. Es
können nicht nur beliebig kleine Phasendifferenzen vermessen werden, sondern es können auch
negative Phasenlagen erkannt und vermessen werden. Die direkte Vermessung einer
Phasenmodulation um 0 ist möglich.
Der Start der beiden Kanäle muss mindestens 3 ns vor dem ersten Stopp kommen. Das letzte
Ereignis, das man vermessen will, muss innerhalb von (2 -2 LSBs ( ca. 7,6 µs) nach dem Start
kommen, da sonst der TDC in den Timeout geht. Misst man Ereignisse zwischen Stopp 1 und Stopp 2
aus, ist die Lage des Startimpulses unter Beachtung der Timeout Bedingung nicht weiter von
Bedeutung.
Ein weiteres Feature im Messbereich 1 ist das Queuing. Darunter versteht man die Möglichkeit, die
Hits beider Kanäle von einem Stopp-Input auszunutzen. Es entsteht dabei ein 1 Kanal TDC mit 8-fach
Multihitfähigkeit. Ist diese Option eingestellt, wird, automatisch nachdem die Werteregister von Kanal
1durch Treffer gefüllt sind, der Stopp von Kanal 1 auf den 2. Kanal durchgeschaltet. Der Stopp-Input
von Kanal 2 wird in diesem Modus ignoriert.
15
11
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
6
TDC-GP1
1.5 Messungen im Messbereich 2
1.5 Messungen im Messbereich 2
Zum Messen größerer Zeitdifferenzen ist es vorteilhaft, ein Vorteilerprinzip einzuführen. Bei diesem
Prinzip wird vom Start einer zu messenden Zeitdifferenz bis zur nächsten steigenden Flanke des
Kalibriertaktes mit der Messeinheit gemessen (FC1). Danach startet ein Zähler der die ganzen
Perioden des Vorteilers zählt. Mit der Stoppflanke der Zeitdifferenz wird die Messeinheit wieder
gestartet und mit der nächsten Flanke des Kalibrationstaktes gestoppt (FC2). Im weiteren Verlauf
werden eine und zwei Perioden des Kalibrationstaktes ausgemessen. Nach der Formel in Bild 2 kann
dann die gemessene Zeitdifferenz berechnet werden. Der GP1 verfügt über einen 16-Bit Vorteiler. Es
können mit diesem Verfahren auch sehr große Zeitdifferenzen (> 200 ms) mit der vollen Auflösung
des TDCs gemessen werden.
Abbildung 3 : Messen großer Zeitdifferenzen mit Vorteiler
FC1 − FC 2 

time = period *  cc +
 , cc=value of the precounter

Cal 2 − Cal1
Bei Messungen im Messbereich 2 verfügt der GP1 nur noch über einen Kanal. Der Stopp1 Eingang ist
dabei aktiv. Dieser Kanal hat bei Einfachauflösung 4-fach Multihitfähigkeit. Es können keine
Stoppereignisse untereinander, sondern nur zum Start hin vermessen werden. Die
Doppelpulsauflösung beträgt 1,5 Perioden +24 ns des Kalibriertaktes.
1.6 Die R-L-C Einheit
Es ist durch einfache Schaltungstechnik möglich, Verhältnisse von Widerständen, Kapazitäten oder
Induktivitäten auf eine Zeitdifferenzmessung zurückzuführen. Die R-L-C Einheit ermöglicht es, mit
einfacher Außenbeschaltung des Bausteines, dies direkt mit dem GP1 durchzuführen. Diese Einheit
ermöglicht den Einsatz des Bausteines in verschiedenen Sensoranwendungen, die auf diese 3
Grundgrößen der Elektronik zurückgreifen. Der GP1 hat 4 Messports, an die Widerstände,
Induktivitäten oder Kapazitäten angeschlossen werden können. Es wird prinzipiell von einer
Verhältnismessung ausgegangen, d.h. man setzt z.B. einen Messwiderstand ins Verhältnis zu einem
Referenzwiderstand. Ist der Messwiderstand temperaturabhängig, so kann man damit sehr einfach
eine Temperaturmessung durchführen. In gleicher Art und Weise kann man die beiden anderen
Grundgrößen der Elektrotechnik Kapazitäten und Induktivitäten ins Verhältnis setzen, und damit
ebenfalls durch Zeitdifferenzmessung andere physikalische Größen schnell und hochgenau messen.
1.7 Der High Resolution Modus
Der TDC-GP1 bietet durch die gewählte Schaltungstechnik die Möglichkeit, beide Kanäle zu verbinden
und dadurch die Auflösung des Bausteines zu verdoppeln. Diese Option ist über die Moderegister des
Chips einstellbar. In diesem Falle hat man einen 1 Kanal 4-fach Multihit TDC mit einer Auflösung von
ca. 125 ps. Der Stopp 2 Eingang des Bausteines ist abgeschaltet. Die Messmöglichkeiten des einen
Kanals bleiben sinngemäß Bild 1 erhalten. Auch hier können Ereignisse relativ zum Start oder
untereinander vermessen werden. Benutzt man im Messbereich 2 den High Resolution Modus, hat
man nur noch 3-fach Multihitfähigkeit.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
7
TDC-GP1
1.8 Der Resolution Adjust Modus
1.8 Der Resolution Adjust Modus
Ein weiteres äußerst interessantes Feature des GP1 ist der Resolution Adjust Modus. Dies ist die
Möglichkeit, die Auflösung des Bausteines quarzgenau und für beide Kanäle gemeinsam einzustellen.
Als Referenz für die Einstellung der Auflösung wird ein aus dem Referenztakt abgeleiteter Takt
herangezogen. Die Auflösung des Bausteines wird per Software über ein Register festgelegt, sie ist
direkt proportional zu dem eingestellten Wert und dem anliegenden Takt. Die sich ergebende
Auflösung ist von vornherein exakt bekannt.
Die Auflösung wird durch Veränderung der Messkreisspannung stabil gehalten, die wiederum über
eine PLL (Phase Locked Loop) geregelt wird. Die äußere Beschaltung der PLL benötigt nur wenige
einfache und preisgünstige Bauteile. Der GP1 verfügt über getrennte Spannungsversorgungen für
I/O Buffer und interne Schaltung (Core). Es ist damit möglich, die I/Os des Chips mit einer konstanten
Spannung (z.B. 5V) zu betreiben, und die Einstellung der Auflösung nur durch Regelung der Core
Spannung zu erreichen. Es entstehen bei dieser Option keine Probleme der Pegelanpassung mit
externen Komponenten.
Im Resolution Adjust Modus gibt es keinen Start, sondern 2 Kanäle mit jeweils 4-fach Multihit Stopp.
Es können die Stopp Ereignisse zueinander vermessen werden. Der Messbereich ist in diesem Modus
nur halb so groß (2 - 2 ) LSB, ca. 3.8 µs (typ.), d.h. zwischen dem ersten und dem letzten Stopp
dürfen nicht mehr als (2 - 2 ) LSBs an Zeitdifferenz liegen.
14
11
14
11
In diesem Modus ist die Auflösung nicht mehr abhängig vom einzelnen Baustein, nicht mehr abhängig
von der Temperatur oder Spannung und absolut langzeitstabil. Es braucht in diesem Modus weder vor
noch während des Betriebes kalibriert zu werden.
Der Einstellbereich der Auflösung geht von -30% bis +8% der nominalen Auflösung bei 5 V, 25 °C.
Während des Betriebes ist jederzeit abfragbar, ob der Baustein sich im Adjust Modus befindet. Falls
er z.B. durch zu große Temperaturschwankungen und eine Einstellung zu knapp an der Einstellgrenze
die Auflösung nicht mehr halten kann, geht er automatisch in den Floating Resolution Betrieb über,
beobachtet den weiteren Verlauf, und stellt die gewählte Auflösung wieder ein, sobald es wieder
möglich ist.
In diesem Modus steigt die Stromaufnahme des Bausteines an. Der Baustein benötigt auch dann
Strom, wenn nicht gemessen wird. Die Stromaufnahme beträgt fast unabhängig von der Messrate ca.
25 mA.
Der Resolution Adjust Modus kann mit High Resolution Modus kombiniert werden. Er kann nicht mit
dem Messbereich 2 kombiniert werden.
1.9 Kalibration des GP1
Wird der Baustein nicht im Resolution Adjust Modus betrieben, muss er regelmäßig kalibriert werden.
Der GP1 kann:
! per Befehl
! automatisch nach einem Start/Stopp Ereignis
kalibriert werden.
Bei einem Kalibriervorgang werden aus dem Kalibriertakt eine und zwei Taktperioden vermessen. Die
Ergebnisse werden in eigens dafür vorgesehenen Kalibrierwertregistern gespeichert, die bei jedem
Kalibriervorgang mit den aktuellen Werten überschrieben werden.
Ein separater Kalibriervorgang wird durch Setzen eines Bits im Moderegister ausgelöst. Das Bit wird
automatisch gelöscht nachdem der Vorgang beendet ist.
Bei automatischer Kalibrierung wird, nachdem die Anzahl der eingestellten Hits auf beiden Kanälen
erreicht ist, eine Kalibration eingeleitet. (bitte 'bekannte Probleme und Lösungen' beachten)
1.10 Haupt-ALU und Vor-ALU
Der GP1 verfügt über 2 arithmetisch logische Einheiten, welche die Rohwerte des Messkreises
mathematisch bearbeiten. Die Vor-ALU dient dazu, die Rohwerte des Messkreises, die bedingt durch
das Messprinzip in einem eigenen Format vorliegen, in einen unsigned Integer Wert umzurechnen, um
ihn dann auf bekannte arithmetische Weise weiterverarbeiten zu können. Dieser ALU ist eine
Datenselektionseinheit vorgeschaltet, welche die einzelnen Rohwerte der Register auswählt. Die VorALU benötigt keinen Takt.
Die Haupt-ALU hat mehrere Aufgaben
! Offsetkorrektur und Subtraktion unkalibrierter Daten
! Kalibration der Messwerte mit den CAL Werten
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
8
TDC-GP1
1.11 Ausgangsregister
! Multiplikation
des kalibrierten Wertes mit einer 24-Bit Festkommazahl, das MSB des
Multiplikationsfaktors hat die Wertigkeit 2 .
Alle Daten werden durch die Haupt-ALU geschleust, je nach eingestelltem Modus wird dabei der Wert
nur durchgereicht, eine Offsetkorrektur bzw. Subtraktion zweier Werte vorgenommen oder ein
Berechnungszyklus mit Kalibration und Multiplikation durchgeführt.
Die Haupt ALU hat einen eigenen Taktgenerator, der sie von externen Takten unabhängig macht. Die
Berechnungszeit für eine Kalibration beträgt ca. 2µs für eine anschließende Multiplikation ebenfalls ca.
2µs, so dass ein kompletter Zyklus ca. 4 µs benötigt. Ohne Kalibration oder Multiplikation werden
zwischen 120-350ns Berechnungszeit je nach Modi benötigt, Die Frequenz des Taktgenerators kann
eingestellt werden.
0
1.11 Ausgangsregister
Die Haupt ALU schreibt die Messergebnisse in die Ausgangsregister (8 Register a 16 Bit)
Nur Werte der Ausgangsregister können über die Rechnerschnittstelle des Bausteines ausgelesen
werden. Ein unkalibrierter Messwert, der nicht im Messbereich 2 möglich ist, belegt 1 Register. Ein
kalibrierter und (optional) multiplizierter Messwert belegt 2 Register. Es können 8 unkalibrierte oder 4
kalibrierte Werte im GP1 zwischengespeichert werden. Es können jederzeit alle oder einzelne Register
ausgelesen werden, ohne dadurch andere Aktionen zu stören bzw. auszulösen.
Die Werte werden rotierend von Register 0 bis 7 beschrieben. Wird nach dem Beschreiben des
obersten Registers ein weiterer Berechnungsvorgang gestartet, wird der Wert wieder ins untere
Register geschrieben. Da über die Rechnerschnittstelle beliebig viele Berechnungsvorgänge ausgelöst
werden können, ist es möglich, die verschiedensten Zeitereignisse zueinander zu berechnen und
auszulesen, ohne durch die Registeranzahl des GP1 behindert zu werden.
1.12 Einstell- und Werteregister
Der GP1 verfügt über insgesamt
Schreibregister:
! 7 Einstellregister à 8 Bit
! 4 Werteregister à 8 Bit, 3 für den Multiplikationswert und eines für den Einstellwert der PLL im
Resolution Adjust Modus
Leseregister:
! 8 Werteregister
! 2 Statusregister
! 1 Werteregister in dem der mittlere Einstellfaktor der PLL für den Resolution Adjust Modus steht
Diese Register werden über die Rechnerschnittstelle beschrieben bzw. gelesen
1.13 Rechnerschnittstelle
Der GP1 verfügt über eine Standard 8-Bit Rechnerschnittstelle. Über die Signale
! WRN
! RDN
! CSN
! ALE
werden die Daten geschrieben und gelesen. Die Adressierung erfolgt über einen 4 Bit Adressbus. Die
Schnittstellenarchitektur orientiert sich damit an gängigen und bekannten Standards. Der Daten und
der Adressbus sind am Chip getrennt, können aber auch durch Verbinden der entsprechenden Pins
zusammengelegt werden. Ebenfalls kann durch eine '1' am ALE Input das interne Address Latch
transparent geschaltet werden, so dass die Register direkt durchadressiert werden können. Es
ergeben sich eine Reihe von Beschaltungsmöglichkeiten, mit denen die Schnittstelle auf die jeweiligen
Erfordernisse angepasst werden kann. Der Datenbus ist bidirektional, der Adressbus unidirektional.
Beim Lesen der Messwertregister sorgt ein interner Zähler für ein automatisches Inkrementieren
nach einem Lesevorgang, wenn die Adresse sich dabei nicht ändert. Durch Setzen des Lesezählers an
die gewünschte Stelle und entsprechend viele Reads können die Messwerte auf einfache Art und
Weise am Stück ausgelesen werden. Man kann durch neues Setzen der Adresse jederzeit auf einen
anderen Messwert springen. Die Statusregister werden durch Direktadressierung ausgelesen, ein
automatisches Inkrementieren findet hier nicht statt.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
9
TDC-GP1
1.14 Sonstige Funktionen des GP1
1.14 Sonstige Funktionen des GP1
!
Auto Noise Einheit
Der GP1 verfügt über eine Einheit, die pseudozufällig einen Offset zu den Stopps dazufügt, der
ebenfalls in gleicher Art und Weise bei einer nachfolgenden Kalibration vorhanden ist. Dadurch ist es
möglich, ein Pseudorauschen auf die Stoppereignisse zu addieren, das durch die Kalibration wieder
herausgerechnet werden kann. Durch diesen Rauscheffekt wird beim Vermessen sehr konstanter
Zeitdifferenzen eine Unterdrückung von Quantisierungseffekten erreicht. Dazu ist eine
Mittelwertbildung über mehrere Messwerte notwendig. Einzelereignisse werden in der Genauigkeit
dadurch nicht berührt. Im Resolution Adjust Modus macht die Auto Noise Einheit keinen Sinn, da
durch die Art der Messung automatisch der gewünschte Effekt entsteht.
! Einstellbare Flankensensitivität
Die Flankensensitivität des Start Eingangs und der Stopp Eingänge kann über die Moderegister
eingestellt werden.
! Kanal Enable
Jeder Stopp Eingang kann über einen externen Pin disabled werden. Damit kann unmittelbar z.B. über
externe Logik der Kanal gesteuert werden. Es können beliebig Hits ausgeblendet werden (nicht im
Messbereich 2).
! Spike Unterdrückung bei RDN und CSN
In rauer Umgebung kann es sinnvoll sein, die Grenzfrequenz der Signale RDN und CSN zu begrenzen,
um Spikes auf diesen Leitungen, die durch externe Störungen verursacht werden zu unterdrücken.
Über die Moderegister ist dies beim GP1 wählbar. Ist das S pike-U
U nterdrückungs-II nterface
eingeschaltet, werden Spikes bis ca. 6 ns unterdrückt. Ohne Spikeunterdrückung werden solche
Impulse vom GP1 je nach deren Länge als Read oder Chip Select Signal gewertet, es werden falsche
Daten in die Register geschrieben oder es wird der Lesezeiger unzulässigerweise weitergetaktet.
Durch Einschalten des SUI Interfaces wird das Timing der Schnittstelle langsamer, was zu
berücksichtigen ist.
! Half Resolution
Physikalisch bedingt hat der GP1 bei normaler und bei doppelter Auflösung eine relativ schlechte
differentielle Nichtlinearität. Dies ist für die allermeisten Anwendungen nicht weiter von Belang. Bei
einigen Anwendungen jedoch (vor allem bei physikalischen Experimenten) ist eine geringe differentielle
Nichtlinearität von großer Wichtigkeit.
Hier kommt die Eigenschaft der Kennlinie des GP1 positiv zum Tragen, dass die differentielle
Nichtlinearität streng periodisch mit der Periode 2 ist, d.h. auf ein schmales LSB kommt immer ein
breites und umgekehrt. Damit kann man durch Zusammenfassen von 2 LSBs die differentielle
Nichtlinearität stark verbessern. Deshalb bietet der TDC-GP1 optional die Möglichkeit, die Auflösung
zu halbieren.
!
Retriggerfähigkeit
Retri ggerfähigkeit
Kommen ohne Retrigger bei einer Messung mehrere Start Impulse, so werden nach dem ersten Start
weitere Starts ignoriert. Dies ist für manche Anwendungen ungünstig und es wäre besser, wenn der
letzte Start zu den Stopps vermessen werden könnte. Diese Option bietet der Retrigger Modus.
Kommen mit Retrigger mehrere Starts, ohne dass ein Stopp kommt, wird mit jedem Start die
Messeinheit neu initialisiert. Nach dem ersten Stopp auf einem der beiden Kanäle wird ein weiterer
Start dann ignoriert. Gerät nach einem Start die Messeinheit in den Überlauf und kommt ein weiterer
Start, wird die Messeinheit ebenfalls neu initialisiert und es beginnt ein neuer Messlauf.
Dieser Modus funktioniert nicht im Messbereich 2 und ebenfalls nicht im Resolution Adjust Modus.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
10
TDC-GP1
2.1 Vorbemerkung
2. Der GP1 im Detail
2.1 Vorbemerkung
Ziel dieses Hauptabschnittes ist es, den Benutzer in die Lage zu versetzen, den GP1 mit all seinen
Möglichkeiten zu benutzen. Hier wird auf jede mögliche Funktion im Detail eingegangen. Die
entsprechende Einstellung der Register wird erläutert, für die Funktion wichtige Register sind mit
komplettem Inhalt im jeweiligen Abschnitt dargestellt. Soweit möglich wird auf die Kombinierbarkeit
der einzelnen Features eingegangen. Dieser Hauptabschnitt ist für jeden ein Muss, der den GP1 in
seine Schaltung einbaut bzw. Software dafür schreibt.
! Rohwerteregister
6 Rohwerteregister (15-Bit) pro Kanal. In diese Register werden direkt von der Messeinheit
gewonnene Werte geschrieben. Mit Ausnahme des Resolution Adjust Modus sind diese Werte
unkalibriert also prozess-, spannungs- und temperaturabhängig. Von diesen 6 Registern sind 2
Register nur für Kalibrierwerte reserviert. Die Rohwerteregister können nicht direkt ausgelesen
werden.
! Ergebnisregister (nur lesen)
8 Ergebnisregister à 16-Bit. Dieser Ergebnisregister werden von der sequentiellen ALU je nach
eingestelltem Berechnungsmodus beschrieben. Für einen unkalibrierten Wert der direkt aus den
Rohwerten oder aus Differenzen von Rohwerten gewonnen wird, wird ein Register (16-Bit) benötigt,
für einen kalibrierten Wert werden 2 Register (32-Bit) benötigt.
! Einstellregister, Werteregister (nur schreiben)
7 Einstellregister in denen die verschiedenen Betriebsmodi und sonstige Möglichkeiten eingestellt
werden können und 4 Werteregister für den Multiplikationsfaktor und den PLL Einstellfaktor.
! Statusregister (nur lesen)
!
2 Statusregister in denen wichtige Statusparameter des GP1 ausgelesen werden können
1 Werteregister (nur lesen)
In dieses Register schreibt die PLL den im Set Parameter Modus ermittelten Einstellfaktor der PLL.
Dieser Wert dient zur Orientierung der möglichen Einstellfaktoren und damit den möglichen
Auflösungen.
2.2 Die Lese- und Schreibregister des GP1
In tabellarischer Form die Einstellregister mit kurzen Erläuterungen
2.2.1 Schreibregister und Adressen
Wichtige Bemerkung: Die Schreibregister können nicht gelesen werden
Register 0
Adresse: 0
Bit Nr.
Name
7
CAL
6
CALIBRATE
5
4
MULTIPLICATE
MESSB2
3
EN_CAL_AUTO
2
1
0
EDGE_STP2
EDGE_STP1
EDGE_STA
Bedeutung
initialisiert einen separaten CAL Lauf # Update der
CAL-Werte in den Kalibrierwert Registern
instruiert
die
ALU
eine
Kalibrierberechnung
durchzuführen
instruiert die ALU eine Multiplikation durchzuführen
schaltet in den Messbereich mit Vorteiler, 1= mit
Vorteiler
1= nach einer Messung wird eine automatischer
Kalibrierlauf durchgeführt
selektiert Flankensensitivität Stopp2-Input 0=rise
selektiert Flankensensitivität Stopp1-Input 0=rise
selektiert Flankensensitivität Start-Input 0=rise
Default
0
0
0
0
0
0
0
0
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
11
TDC-GP1
2.2 Die Lese- und Schreibregister des GP1
Register 1
Adresse: 1
Bit Nr.
Name
Bedeutung
7
RESO_ADJ
schaltet in Resolution Adjust Modus
6
HIGH_RES
schaltet in High Resolution Modus
5
ADJ<5>
Abgleichbit 5 des High Resolution Modus
4
ADJ<4>
Abgleichbit 4 des High Resolution Modus
3
ADJ<3>
Abgleichbit 3 des High Resolution Modus
2
ADJ<2>
Abgleichbit 2 des High Resolution Modus
1
ADJ<1>
Abgleichbit 1 des High Resolution Modus
0
ADJ<0>
Abgleichbit 0 des High Resolution Modus
Anmerkung: optimale Einstellung für ADJ<5:0> = 0x0d
Default
0
0
0
0
0
0
0
0
Register 2
Adresse: 2
Bit Nr.
Name
7
HIT2_IN<3>
6
HIT2_IN<2>
5
HIT2_IN<1>
4
HIT2_IN<0>
3
HIT1_IN<3>
2
HIT1_IN<2>
1
HIT1_IN<1>
0
HIT1_IN<0>
Instruktionsregister für die ALU
Berechnungsvorschrift: HIT1_IN - HIT2_IN
Bedeutung
Kanal select für oberes Nibble: 0= channel1, 1=channel2
#Hit für in Bit 7 selektiertem Kanal
#Hit für in Bit 7 selektiertem Kanal
#Hit für in Bit 7 selektiertem Kanal
Kanal select für unteres Nibble: 0= channel1, 1=channel2
#Hit für in Bit 3 selektiertem Kanal
#Hit für in Bit 3 selektiertem Kanal
#Hit für in Bit 3 selektiertem Kanal
Register 3
Adresse: 3
Bit Nr.
Name
7
FAK_PLL<7>
6
...
5
...
4
...
3
...
2
...
1
...
0
FAK_PLL<0>
Einstellregister für die Auflösung im Resolution Adjust
Mode
Bedeutung
Default
MSB Einstellfaktor der PLL
1
...
0
0
0
0
0
...
0
LSB Einstellfaktor der PLL
0
Register 4
Adresse: 4
Bit Nr.
Name
7
SEL_CLK_TDC<2>
6
SEL_CLK_TDC<1>
5
SEL_CLK_TDC<0>
4
NEG_PH_PLL
3
2
1
0
SET_PAR_PLL
SEL_CLK_PLL<2>
SEL_CLK_PLL<1>
SEL_CLK_PLL<0>
Default
0
1
0
1
0
1
0
1
Bedeutung
Default
Teiler für Kalibriertakt TDC (Tabelle in 2.11.3)
0
...
0
...
0
Negierung des Phasen Outputs der PLL (muss auf '1' wenn 0
empfohlene Schaltung verwendet wird)
1=Track Modus der PLL (Set Par Modus)
0
Teiler für Referenztakt der PLL (Tabelle in 2.11.3)
0
...
0
...
0
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
12
TDC-GP1
2.2 Die Lese- und Schreibregister des GP1
Register 5
Adresse: 5
Bit Nr.
Name
7
RLC_NR<2>
6
RLC_NR<1>
5
RLC_NR<0>
4
SINGLE_EN
3
C_SEL
2
SEL_CLK_RLC<2>
1
SEL_CLK_RLC<1>
0
SEL_CLK_RLC<0>
Register 6
Adresse:
Adresse : 6
Bit Nr.
Name
7
INT_SEL
6
QUEUING
5
RETRIG_EN
4
NOISE_EN
3
RLC_EN
2
USE_TRANS
1
SPEED<1>
0
SPEED<0>
Register 7
Adresse: 7
Bit Nr.
Name
7
HALF_RES
6
EN_SUI
5
EN_HIT2<2>
4
EN_HIT2<1>
3
EN_HIT2<0>
2
EN_HIT1<2>
1
EN_HIT1<1>
0
EN_HIT1<0>
RLCRLC - Konfigurationsregister
Bedeutung
Einstellung welcher / wie viele RLC Ports gemessen werden
"
"
selektiv Ports messen = 1, 0= alle Ports von 1 bis RLC_NR
Kapazitätsverhältnisse ausmessen = 1
Teilerverhältnis für Takt der RLC Einheit
"
"
Default
1
0
0
0
0
0
0
0
Bedeutung
Interrupt Select (0= ALU fertig, 1= Overflow)
Enable Queuing im Messbereich 1
Enable Retrigger Modus
Noise Enable
startet eine RLC-Messung
1= Benutzung eines externen Transistors bei der RLC
Unit
Frequenzeinstellung BIGALU Takt (default: lowest
speed)
(siehe auch 2.9.8)
Default
0
0
0
0
0
0
Bedeutung
Halbe Auflösung des Messkreises
Enable der Spikeunterdrückung bei RDN
Anzahl der möglichen Hits auf Kanal 2 (max. 4)
"
"
Anzahl der erlaubten Hits auf Kanal 1 (max. 4)
"
"
Default
0
0
1
0
0
1
0
0
1
0
Register 88 - 10
Adresse:8Adresse:8 - 10
Register 8
Register 9
Register 10
Adresse 11:
Name
Bit Nr.
7
POR.
6
POR.
5
POR.
4
POR.
3
n.c.
2
CLK_NOISE
1
INIT_BIGALU
0
INIT_TDC
Multiplikationsfaktor<7..0>
Multiplikationsfaktor<15..8>
Multiplikationsfaktor<23..16>
Default
0
0
128
Sonderadresse für Init
Bedeutung
Power On Reset (1)
Power On Reset (0)
Power On Reset (1)
Power On Reset (0)
Clock für PRBS Zähler in Auto Noise Einheit
Init für Bigalu Einheit
Init für TDC Einheit
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
13
TDC-GP1
2.2 Die Lese- und Schreibregister des GP1
2.2.2 Leseregister und Adressen
Der GP1
Adresse
0
1
2
3
4
5
6
7
8
9
A
verfügt über folgende Leseregister
Name
Bitbreite
Bemerkung
bei kalibrierten Daten
ERG_REG0
16
Ergebnisregister 1
Nachkomma 0
ERG_REG1
16
Ergebnisregister 2
Vorkomma 0
ERG_REG2
16
Ergebnisregister 3
Nachkomma 1
ERG_REG3
16
Ergebnisregister 4
Vorkomma 1
ERG_REG4
16
Ergebnisregister 5
Nachkomma 2
ERG_REG5
16
Ergebnisregister 6
Vorkomma 2
ERG_REG6
16
Ergebnisregister 7
Nachkomma 3
ERG_REG7
16
Ergebnisregister 8
Vorkomma 3
STAT1
8
Statusregister 1
STAT2
8
Statusregister 2
REF_PLL
8
Register für Referenzwert der PLL der in einem SET_PAR
Lauf gewonnen wurde
Statusregister 1
Adresse: 8
Bit Nr.
Name
7
PLL_LOCK
6
OFL
5
HIT2_TDC<2>
4
HIT2_TDC<1>
3
HIT2_TDC<0>
2
HIT1_TDC<2>
1
HIT1_TDC<1>
0
HIT1_TDC<0>
Statusregister
Adresse:9
Bit Nr.
7
6
5
4
3
2
1
0
Bedeutung
Lock Anzeige der PLL
Overflow der Messeinheit
Anzeige der vorhandenen Hits in Kanal 2
Anzeige der vorhandenen Hits in Kanal 2
Anzeige der vorhandenen Hits in Kanal 2
Anzeige der vorhandenen Hits in Kanal 1
Anzeige der vorhandenen Hits in Kanal 1
Anzeige der vorhandenen Hits in Kanal 1
2
Name
N.C.
N.C.
RLC_END
Multiplicate
Calibrate
LD_REGS<2>
LD_REGS<1>
LD_REGS<0>
Bedeutung
nicht benutzt
nicht benutzt
Ende einer RLC-Messung
Anzeige ob multipliziert wird (=Bit5 des Register0)
Anzeige ob Kalibrationsberechnung durchgeführt wird
(=Bit6 des Register 0)
Ladezustand der Ausgangsregister
Ladezustand der Ausgangsregister
Ladezustand der Ausgangsregister
2.2.3 Erläuterungen zu den Leseregistern
2.2.3.1 Datenstruktur der Ergebnisregister
Wie man aus obiger Tabelle entnehmen kann, verfügt der GP1 über 8 Ergebnisregister à 16 Bit.
Die Datenstruktur und Belegung der Register hängt davon ab, ob es sich um kalibrierte oder
unkalibrierte Daten handelt. Bei unkalibrierten Daten wird ein Ergebnisregister belegt, für kalibrierte
Daten werden 2 Ergebnisregister benötigt. Zu den unkalibrierten Daten zählen in diesem Sinne auch
die Ergebnisse, die im Resolution Adjust Modus gewonnen wurden.
Datenstruktur
Dat enstruktur unkalibrierte Daten
Unkalibrierte Daten werden dann erzeugt, wenn im Einstellregister 0 das Bit 6 (Calibrate) auf 0 ist.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
14
TDC-GP1
2.2 Die Lese- und Schreibregister des GP1
Unkalibrierte Daten sind vom Typ 'Signed Integer'. Die Zahl liegt im 2er Komplement vor
vor.
Beispiele:
Registerinhalt
0x0ABC
0xC002
0x7073
0xFF12
sich ergebender Wert
2748
-16382
28787
-238
Datenstruktur kalibrierter Daten
Kalibrierte Daten sind eine Festkommazahl mit 16 Bit Vorkomma- und 16 Bit Nachkommastellen.
Jedes kalibrierte Ergebnis belegt somit 2 Ergebnisregister. Im unteren stehen die Nachkommastellen
und im oberen die Vorkommastellen.
Beispiele:
Registerinhalte sich ergebender Wert Vorkomma.Nachkomma
0x0001.ABCD 1.671096
(Ergebnis von: 1+43981/65536)
0xFFFE.1234 -1.071105
(gilt nur im Messbereich 1)
0x0067.A001 103.62501
(Zahl nur im Messbereich 2 möglich)
0xD002.A001 53250.62501
(Zahl nur im Messbereich 2 möglich)
Wie die Beispiele schon zeigen, gilt es einige Fälle zu unterscheiden. Es gilt:
! nur im Messbereich 1 sind negative Zahlen möglich.
! im Messbereich 2 gibt es nur positive Zahlen, die Zahl ist hier Vorzeichenlos zu betrachten
! ohne Multiplikation kann das Ergebnis im Messbereich 1 nicht größer als +- 1.99 werden, da keine
größeren Zeitdifferenzen als das Doppelte des Kalibriertaktes berechnet werden können.
2.2.3.2 Auslesen der Ergebnisregister
Während die Statusregister und das PLL Register durch eine Standard Memory Mapped Auslese
ausgelesen werden, ist dies bei den Ergebnisregistern etwas anders.
Grundsätzlich gilt ffür
ür Ergebnisregister Folgendes:
Wird beim Setzen der Leseadresse eins der Ergebnisregister selektiert und mehrfach von dieser
Adresse gelesen, so wird mit jedem Auslesevorgang der interne Lesezeiger um eins inkrementiert.
Legt man mit einem Lesevorgang eine neue Adresse an, so springt der Lesezeiger auf die neue
Adresse.
Für das Auslesen eines Ergebnisregisters sind immer 2 Read Strobes notwendig, bei denen die
Adresse nicht geändert werden darf. Am 8-Bit Bus erscheint zuerst das LSByte und dann das MSByte.
Beispiele:
1. Auslesen aller 8 Ergebnisregister
Vorgehensweise: Anlegen der Adresse 0 und anschließend 16 Read Strobes. Es werden nun jeweils
vom LSByte zum MSByte alle Ergebnisregister ausgelesen.
2. Auslesen von Ergebnisregister 1 und 3
Vorgehensweise: Anlegen der Adresse 1 und 2 Read Strobes; dann Anlegen der Adresse 3 und 2
Read Strobes.
2.2.3.3 Erläuterungen zu den Statusregistern
Statusregister 1
Bit 00-5
Die Signale HIT1_TDC<2:0> und HIT2_TDC<2:0> zeigen die Anzahl der vorhandenen Hits auf jedem der
Kanäle. Es sind jeweils Zahlen von 0 bis 4 möglich. Diese Hitzähler inkrementieren dann, wenn der Hit
in der Messeinheit registriert wird. D.h. zum Zeitpunkt der Registrierung ist dieser Hit noch nicht
auslesbar, sondern muss erst noch über die gewählten ALU Operationen ins Ausgangsregister
geschrieben werden.
Bit 6
Bit 6 zeigt einen Overflow der Messeinheit an. D.h. dieses Bit geht auf 1 wenn während einer Messung
mit der gewählten Anzahl Hits eine Messbereichsüberschreitung stattfand.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
15
TDC-GP1
2.2.4 Initialisierung
Bit 7
Bit 7 signalisiert im Resolution Adjust Modus, dass die PLL eingerastet ist und die im Register
gewählte Auflösung eingestellt werden konnte.
Statusregister 2
Bit 00-2
Diese Bits zeigen an, auf welcher Adresse der Schreibzeiger der Ausgangsregister steht. Steht er z.B.
auf 4 wurden die Adressen 0 - 3 bereits beschrieben, und es sind 4 abholbare 16 Bit Ergebnisse bzw.
2 abholbare 32 Bit Ergebnisse vorhanden.
Die 0 ist hier doppelt belegt, d.h. 0 kann sowohl kein abholbares Ergebnis als auch 8 abholbare 16 Bit
Ergebnisse bedeuten. Ist das Interrupt Flag (Pin 34) auf Values gestellt, kann mit diesem Pin
entschieden werden, ob es sich um 0 oder 8 Werte handelt. Ist das INTFLAG auf 1, sind 8 abholbare
Ergebnisse vorhanden.
Bit 3 und 4
Diese beiden Bits zeigen an, ob die ALU auf Kalibration und/oder Multiplikation eingestellt ist. Es sind
direkt die Bits 5 und 6 des Einstellregisters 0. Das Setzen und Auslesen dieser Bits kann z.B. auch für
erste Tests der Rechnerschnittstelle verwendet werden.
Bit 5
Bit 5 zeigt das Ende einer RLC-Messung an.
2.2.4 Initialisierung
Vor jeder Messung steht, unabhängig vom gewählten Messmodi, eine Initialisierung des Bausteines
an. Im elementarsten Fall besteht diese Initialisierung aus einem Power On Reset. Der GP1 verfügt
über einen komfortablen Init Befehl der mehrere Möglichkeiten der Initialisierung zulässt. In folgender
Tabelle ist der Init Befehl mit seinen Möglichkeiten näher erläutert.
Adresse
Bit Nr.
7
6
5
4
3
2
1
0
11:
Name
POR.
POR.
POR.
POR.
n.c.
CLK_NOISE
INIT_BIGALU
INIT_TDC
Sonderadresse für Init
Bedeutung
Power On Reset (1)
Power On Reset (0)
Power On Reset (1)
Power On Reset (0)
Clock für PRBS Zähler in Auto Noise Einheit
Init für Bigalu Einheit
Init für TDC Einheit
!
Init der GP1 internen Messeinheit
Mit dem INIT_TDC wird die interne TDC Einheit initialisiert. Der Hitzähler wird auf 0 gesetzt, ein evtl.
Timeout wird gelöscht. Die Einheit ist wieder mit den vorher gewählten Einstellungen messbereit. Die
TDC Einheit ist 30 ns nach der positiven Flanke von WRN wieder messbereit.
! Init der sequentiellen ALU
Mit INIT_BIGALU wird die sequentielle ALU initialisiert. Der Schreibzeiger wird auf 0, d.h. auf das erste
Ausgangsregister gesetzt, die Einheit ist wieder mit den vorher gewählten Einstellungen rechenbereit.
Die BIGALU ist 30 ns nach der positiven Flanke von WRN wieder rechenbereit.
! Init des Auto Noise Zählers
Das Bit 2 taktet bei einer 1 den Pseudozufallszähler der Auto Noise Einheit weiter, unabhängig ob
diese Einheit enabled ist oder nicht.
! Power On Reset
Mit einem hex A auf dem oberen Nibble des Datenbusses kann ein Power On Reset durchgeführt
werden. Damit wird der gesamte Chip in den Grundzustand versetzt, alle Einstell- und Werteregister
werden auf die Default Werte initialisiert.
Die Rohwerteregister der TDC Messeinheit und die Ergebnisregister der Bigalu sind grundsätzlich
nicht initialisierbar und werden auch durch einen Power On Reset nicht verändert.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
16
TDC-GP1
2.3 Messen im Messbereich 1
Der Power On Reset kann auch über den Pin RST_N mit der gleichen Wirkung ausgelöst werden.
Dieser Pin ist 'low active' (min. Dauer: 50 ns). Wird ein Power on Reset über die Software ausgelöst,
so darf bis 50 ns nach der positiven Flanke des WRN Signals keine weitere Aktion erfolgen, da in
dieser Zeit der GP 1 sich im Reset Zustand befindet.
2.3 Messen im Messbereich 1
Einstellung des Messbereiches:
Relevante Register:
Einstellregister 0
Adresse: 0
Relevante Bits:
4
Wirkung:
0 = Messbereich 1 ; 1 = Messbereich 2
Default:
Messbereich 1
2.3.1 Mögliche Messfolge und Messzeiten
Abbildung 4 : Zeiten im Messbereich 1
Der Messmodus 1 bietet einen 2 Kanal TDC mit Common Start und 4-fach Multihitfähigkeit pro Kanal.
Bild 1 verdeutlicht eine typische Messfolge.
Mit der sensitiven Flanke des Startimpulses wird die Messeinheit für beide Kanäle gemeinsam
gestartet. Es können jetzt auf jedem Kanal voneinander unabhängig bis zu 4 Stopps kommen. Die
Zeitdaten dieser Ereignisse relativ zum gemeinsamen Start werden in den 4 Rohwerteregistern der
Kanäle gespeichert. Es sind dabei folgende Zeiten zu beachten (typ.):
! nach einem Start darf frühestens nach 3 ns ein Stopp auf einem der Kanäle kommen. Stopps die
früher kommen, werden ignoriert.
# t = 3 ns
! zwischen 2 Ereignissen auf dem gleichen Kanal müssen mindestens 15 ns liegen
(Doppelpulsauflösung). Liegen Ereignisse näher aneinander wird das 2. Ereignis nicht erkannt, da
es in der Erholzeit des Kanals liegt.
# t = 15 ns
! zwischen 2 Ereignissen auf verschiedenen Kanälen gibt es keine Restriktionen bzgl. einer
#t
0 ns
minimalen Zeitdifferenz
! alle zu messenden Ereignisse müssen innerhalb von 30.720 LSBs (215-211) nach dem Start
# t ≈ 7,6 µs (typ.)
kommen
! die minimale Pulsweite des Starteingangs und der Stoppeingänge beträgt
# tpw = 2.5 ns (typ.)
1 min
2 min
.
3 min =
4 max
Diese minimale Pulsweite gilt in allen Modi für negative und positive Pulse
2.3.2 Steuerung der ALU im Messbereich 1
Die ausführliche Beschreibung der gesamten Möglichkeiten der ALU ist in Abschnitt 2.9 in diesem
Manual dargestellt. Hier eine Zusammenfassung für den Messbereich 1.
Im Messbereich 1 kann man
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
17
TDC-GP1
2.3 Messen im Messbereich 1
! jeden Stopp der beiden Kanäle zum Start hin vermessen
! alle Stopps untereinander vermessen
! das Ergebnis optional kalibrieren und multiplizieren
Die Steuerung welches Ereignis zu welchem Ereignis vermessen wird, geschieht im Einstellregister 2.
Es besteht aus 2 Einstellwerten à 4 Bit (Nibbles). Es wird die Berechnungsvorschrift
Ergebnis = unteres Nibble - oberes Nibble
durchgeführt.
Ob kalibriert und multipliziert wird, wird im Einstellregister 0 festgelegt.
Einige Beispiele zur Verdeutlichung (die kompletten Zusammenhänge in Abschnitt 2.9)
Beispiel 1:
Inhalt Register 0: 0x60
Inhalt Register 2: 0x01
Ergebnis: Es wird der erste Hit von Kanal 1 zum Start hin berechnet, das Ergebnis wird kalibriert und
multipliziert 32-bittig in ein Ausgangsregister geschrieben. Der gesamte Berechnungsvorgang dauert
ca. 4.2 µs. Unbedingt beachten, dass das Messergebnis nicht größer als die doppelte Periodendauer
des Kalibriertaktes sein darf, da ansonsten die ALU in den Überlauf geht.
Beispiel 2:
Inhalt Register 0: 0x00
Inhalt Register 2: 0xA3
Ergebnis: Es wird vom 3. Hit des Kanals 1 der 2. Hit des Kanals 2 subtrahiert. Das Ergebnis wird 16bittig in ein Ausgangsregister geschrieben. Der gesamte Berechnungsvorgang dauert ca. 180 ns.
2.3.3 Steuerung der Messung, Einstellmöglichkeiten
Es gibt verschiedene Möglichkeiten diese Messfolge zu steuern und auszuwerten.
Praktisch alle Einstellmöglichkeiten sind auch bei anderen Messmodi einsetzbar.
einsetzbar . Bitte die Hinweise
b e achten.
! Enable der Hitanzahl
Relevante Register: Einstellregister 7
Adresse: 7
Relevante Bits:
5-0
Wirkung:
siehe Tabelle
Default:
4 Hits pro Kanal
Im Einstellregister 7 (Adresse 7) wird die Anzahl der möglichen Hits pro Kanal eingestellt. Es gilt dabei
folgende Einstellung.
Tabelle: Hit Enable Einstellungen
EN_HITx<2>
EN_HITx<1>
EN_HITx<0>
Anzahl der möglichen Hits
0
0
0
0 Hits, Software Disable des Kanals
0
0
1
1 Hit
0
1
0
2 Hits
0
1
1
3 Hits
1
0
0
4 Hits
Werden beide Kanäle auf 0 Hits gesetzt, ist die gesamt Messeinheit disabled und ein Start wird
ebenfalls ignoriert. Diese Einstellung ist unabhängig bei allen Messmodi verwendbar.
!
Einstellung der Flankensensitivität
Relevante Register: Einstellregister 0
Adresse: 0
Relevante Bits:
2-0
Wirkung:
0 = rise;
1 = fall
Default:
rise
Diese Einstellung ist unabhängig bei allen Messmodi verwendbar.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
18
TDC-GP1
2.3 Messen im Messbereich 1
!
Retrigger Modus
Relevante Register: Einstellregister 6
Adresse: 6
Relevante Bits:
5
Wirkung:
0 = off;
1 = on
Default:
off
Kommt im Retrigger Modus vor dem ersten Stopp auf einem der Kanäle mehr als 1 Start, so wird mit
jedem Start die Messeinheit neu initialisiert und setzt diesen Start als den Beginn einer Messung (vgl.
ohne Retrigger wird nach dem ersten Start jeder weitere Start ignoriert). Nach einem Stopp auf
einem der Kanäle werden weitere Starts ignoriert. Damit hat man die Möglichkeit bei mehreren Starts
ohne Stopp den letzten Start zu den Stopps hin zu vermessen.
Der Retrigger Modus macht nur im Messbereich 1 Sinn, er muss im Messbereich 2 ausgeschaltet
sein und hat bei Resolution Adjust keine Wirkung.
Im Retrigger Modus steigt die minimal messbare Zeitdifferenz zwischen Start und den Stopps auf
# t = 6 ns
! Queuing
1 min
Relevante Register: Einstellregister 6
Adresse: 6
Relevante Bits:
6
Wirkung:
0 = off;
1 = on
Default:
off
Unter Queuing versteht man die Möglichkeit, die verfügbaren Hits der beiden Kanäle von nur einem
Stopp aus ausnutzen zu können. Ist das Queuing enabled, wird der Stopp 2 Eingang abgeschaltet.
Kommen nun am Stopp 1 Eingang mehr Stopps als enabled sind, werden die Stopps auf Kanal 2
durchgeschaltet, bis auch dort die Anzahl der eingestellten Stopps erreicht ist. Man erhält dadurch
einen 1 Kanal TDC mit 8-fach Multihitfähigkeit.
Queuing ist auch im Resolution Adjust Modus möglich, nicht im Messbereich 2.
! Auto Noise
Relevante Register: Einstellregister 6
Adresse: 6
Relevante Bits:
4
Wirkung:
0 = off;
1 = on
Default:
off
Die
Auto
Noise
Einheit
addiert
zum
Stopp1
und
Stopp2, gesteuert von einen
Pseudozufallszahlengenerator, ein Offset Delay dazu. Die Delays beider Stopp Eingänge sind
voneinander unabhängig, so dass auch zwischen den Stopps ein variables Delay auftritt.
Sinn dieser Einstellmöglichkeit:
Will und kann man zur Verbesserung des Messergebnisses Mittelwertbildung einsetzen und kann
keinen Resolution Adjust Modus verwenden (z.B. wegen der Stromaufnahme), ist es notwendig, dass
die zu mittelnden Werte nicht immer exakt die gleiche Zeitdifferenz aufweisen, sondern ein gewisses
'Rauschen' aufweisen, damit die Kennlinie des GP1 an möglichst vielen Stellen zur Messung
herangezogen wird. Dies ist nicht der Fall, wenn sehr konstante Zeitdifferenzen gemessen werden,
man würde immer wieder auf das gleiche LSB der Kennlinie treffen.
Beispiel: Beim Vermessen eines quarzgenauen Taktes ist es ohne Auto Noise nicht möglich eine
wesentliche Genauigkeitssteigerung durch Mittelwertbildung zu erreichen, da die gemessene
Zeitdifferenz praktisch immer gleich ist, und damit immer das gleiche LSB getroffen wird.
Das Weitertakten des Pseudo Zufallsgenerator und damit die Generierung eines neuen Offset Wertes
geschieht bei der Initialisierung durch das Bit 3 des Registers 11. Es kann also bei einem Init
entschieden werden, ob ein neuer Offset eingestellt wird oder nicht. Damit hat der Benutzer alle
Flexibilität zum Einsatz dieser Option.
Dieser Offset muss auch bei der zum Messwert gehörenden Kalibrierung bestehen bleiben. Dies ist
bei Autokalibration automatisch der Fall, und muss bei separater Kalibrierung entsprechend gesteuert
werden. Ist dies der Fall, wird bei der anschließenden Berechnung der Zeitdifferenz der addierte
Offset wieder herausgerechnet, so dass dadurch kein zusätzlicher Messfehler entsteht.
Auto Noise ist auch im Messbereich 2 möglich, bei Resolution Adjust macht diese Option keinen Sinn
und führt zu zusätzlichen Messfehlern und sollte unbedingt ausgeschaltet bleiben.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
19
TDC-GP1
2.4 Messen im Messbereich 2
2.4 Messen im Messbereich 2
Einstellung des Messbereiches:
Relevante Register:
Einstellregister 0
Relevante Bits:
4
Wirkung:
0 = Messbereich 1;
Default:
Messbereich 1
Adresse: 0
1 = Messbereich 2
2.4.1 Mögliche Messfolge und Messzeiten
Abbildung 5 : Zeiten im Messbereich 2
FC1 − FC 2 

time = period *  cc +
 , cc=value of the precounter

Cal 2 − Cal1
Zum Messen größerer Zeitdifferenzen ist es vorteilhaft, ein Vorteilerprinzip einzuführen. Bei diesem
Prinzip wird vom Start einer zu messenden Zeitdifferenz bis zur nächsten positiven Flanke des
Kalibriertaktes mit der Messeinheit gemessen (FC1). Danach startet ein Zähler, der die ganzen
Perioden des Vorteilers zählt. Mit der Stoppflanke der Zeitdifferenz wird die Messeinheit wieder
gestartet und mit der nächsten Flanke des Kalibrationstaktes gestoppt (FC2). Kommt mehr als 1
Stopp, wird mit den nächsten Stopps wie mit FC2 verfahren. Nach der Formel in Bild 1 kann dann die
gemessene Zeitdifferenz mit den vorhandenen oder bei dieser Messung generierten Kalibrierwerten
berechnet werden. Der GP1 verfügt über einen 16-Bit Vorteiler. Es können mit diesen Verfahren auch
sehr große Zeitdifferenzen (bis 240 ms) mit der vollen Auflösung des TDCs gemessen werden.
Bei Messungen im Messbereich 2 verfügt der GP1 nur noch über einen Kanal. Der Stopp1 Eingang ist
dabei aktiv. Dieser Kanal hat bei Einfachauflösung 4-fach Multihitfähigkeit. Es können keine
Stoppereignisse untereinander sondern nur zum Start hin vermessen werden.
Es sind dabei folgende Zeiten zu beachten:
! nach einem Start darf frühestens nach 2 Kalibriertaktperioden der erste Stopp kommen. Stopps,
die früher kommen, werden ignoriert.
# t = 1.5 * CAL_CLK + 25ns
! zwischen 2 Stopps müssen mindestens 2 Kalibriertaktperioden + 4ns liegen. Liegen 2 Stopps
näher aneinander wird der 2. Stopp nicht erkannt
# t
= 1.5 * CAL_CLK + 25ns
Beispiel: bei 20 MHz Kalibriertakt liegt die minimal messbare Zeitdifferenz bei 104 ns
! alle zu messenden Stopps müssen innerhalb von 2
Kalibriertaktperioden kommen.
# t = 2 * CAL_CLK
Der Kalibriertakt wird über den einstellbaren Teilerfaktor SEL_CLK_TDC aus dem Referenztakt
gewonnen:
CAL_CLK = T *SEL_CLK_TDC.
Je größer der Faktor des Vorteilers ist, desto größer ist der Messbereich t , desto schlechter ist
aber die Doppelpulsauflösung t .
1min
2min
16
3max
16
ref
3max
2min
Beispiel 1:
Referenz Clock 20MHz: Tref
Teiler Kalibrier Clock:
∆t = 50ns*64*2
∆t = 1.5*50ns*64+24ns
max
max
16
=
=
=
=
50ns
64
209.7ms
4824ns
Beispiel 2:
Referenz Clock20MHz: Tref
Teiler Kalibrier Clock:
∆t = 50ns*1*2
∆t = 1.5*50ns*1+24ns
max
max
16
=
=
=
=
50ns
1
3.277ms
99ns
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
20
TDC-GP1
2.4 Messen im Messbereich 2
Bei niedrigem Kalibriertakt kann man Zeitdifferenzen über 200 ms mit der vollen Auflösung des GP1
messen. Hierbei ist jedoch zu beachten, dass die absolute Genauigkeit der gemessenen Zeitdifferenz
von der Genauigkeit des Kalibriertaktes abhängt. Die obere Grenze des Messbereiches ist durch
folgende Randbedingung gegeben:
2*T *SEL_CLK_TDC < 30.720*Resolution (≈7.6µs).
Der Kalibriertakt kann
350 kHz bis 35 MHz betragen. Für nähere Erläuterungen bitte den
Unterabschnitt Kalibration beachten.
Bitte beachten: Der Kalibriertakt ist der Takt, der direkt auf die Messeinheit geführt wird. Er wird
erzeugt aus dem externen Referenztakt der durch den im Einstellregister 4 (Bit 5-7) eingestellten
Teilerfaktor geteilt wird. Die Frequenz am Referenztakteingang (Pin 3) kann bis zu 100 MHz betragen,
wenn die internen Teiler verwendet werden.
Verhalten des GP1 bei zu geringer Zeitdifferenz: Liegt zwischen Start und dem ersten Stopp eine
Zeitdifferenz, die kleiner ist als 1.5 Kalibriertaktperioden + 25ns, so kann diese Zeitdifferenz nicht
mehr mit Sicherheit gemessen werden. Der GP1 verhält sich dabei so, dass Zeiten zwischen 0.5
Perioden +25ns des Kalibriertaktes und 1.5 Perioden + 4 ns abhängig von der Phasenlage vom
Start/Stopp zum Kalibriertakt noch vermessen werden können, wobei bei sinkender Zeitdifferenz die
Wahrscheinlichkeit, dass der Wert noch gemessen werden kann, abnimmt. Unterhalb 0.5 Perioden +
25 ns wird kein Stopp mehr erkannt. Wichtig ist, dass keine falschen Ergebnisse produziert werden.
Wird die Zeitdifferenz gemessen, dann ist das Ergebnis auch richtig. Wird sie nicht gemessen, wird
dieser Stopp ignoriert und die Messeinheit läuft weiter. Kommt kein weiterer Stopp mehr, geht die
Messeinheit in den Overflow.
ref
2.4.2 Belegung der Rohwerteregister mit Messwerten
Für das Verständnis einiger Einstellungen im Messmodus 2 und zur erfolgreichen Steuerung dieses
Messmodus ist es unbedingt erforderlich, die Belegung der Rohwerteregister mit den Messwerten
der Messeinheit zu beachten.
Jeder der beiden Messkanäle hat 4 Rohwerteregister in denen unkalibrierte Messwerte der
Messeinheit gespeichert werden. Diese Register werden im Messbereich 2 wie folgt belegt.
Der Vollständigkeit halber auch mit der Belegung im 'High Resolution' Modus. Für die genaue
Bedeutung bitte im entsprechenden Unterabschnitt nachschlagen.
Kanal
Rohwertregister
1
1
1
1
2
2
2
2
1
2
3
4
1
2
3
4
gespeicherter Wert im Messbereich 2
high resolution
Normal
FC 1
FC 1
FC 2
FC 2
FC 3
FC 3
FC 4
FC 4
FC 5
FC 1
n.c.
FC 2
n.c.
FC 3
n.c.
FC 4
2.4.3 Steuerung der ALU im Messbereich 2
Die ausführliche Beschreibung der gesamten Möglichkeiten der ALU ist in Abschnitt 2.9 in diesem
Manual dargestellt. Hier eine Zusammenfassung für den Messbereich 2.
Im Messbereich 2 kann man
! den Stopp zum Start hin vermessen
! es können keine Stopps untereinander vermessen werden.
! das Ergebnis kann optional multipliziert werden.
Es können nur kalibrierte Werte ausgegeben werden. Es muss immer das Calibrate Bit im
Einstellregister 0 gesetzt sein.
Die Steuerung, welches Ereignis zum Start vermessen wird geschieht im Einstellregister 2. Es besteht
aus 2 Einstellwerten à 4 Bit (Nibbles). Es wird die Berechnungsvorschrift
Ergebnis = unteres Nibble - oberes Nibble
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
21
TDC-GP1
2.4 Messen im Messbereich 2
durchgeführt. Die ALU muss so instruiert werden, dass sie zum gewünschten Hit gemäß folgender
Formel die richtigen Finecount Werte voneinander subtrahiert.
FC1 − FC 2 

∆t = CAL _ CLK *  CC +


Cal 2 − Cal1
Einige Beispiele zur Verdeutlichung (die kompletten Zusammenhänge in Abschnitt 2.9)
Beispiel 1:
Inhalt Register 0: 0x50
Inhalt Register 2: 0x21
# FC1 - FC2
Ergebnis: Es wird der 1. Hit zum Start hin berechnet, das Ergebnis wird kalibriert 32-bittig in ein
Ausgangsregister geschrieben. Der gesamte Berechnungsvorgang dauert ca. 2.2 µs.
Beispiel 2:
Inhalt Register 0: 0x50
Inhalt Register 2: 0x91 # FC1-FC5
Ergebnis: Es wird der 4. Hit zum Start hin berechnet, das Ergebnis wird kalibriert 32-bittig in ein
Ausgangsregister geschrieben. Der gesamte Berechnungsvorgang dauert ca. 2.2 µs.
2.4.4 Steuerung der Messung, Einstellmöglichkeiten
! Enable der Hitanzahl
Relevante Register:
Einstellregister 7
Adresse: 7
Relevante Bits:
5-0
Wirkung:
siehe Tabelle
Default:
4 Hits pro Kanal (gültig nur für Messbereich 1)
Gemäß der Registerbelegung mit den FCx Werten ergibt sich folgende Tabelle für die Steuerung der
erlaubten Hits
EN_HIT1<2..0>
2
3
4
4
EN_HIT2<2..0>
0
0
0
1
Anzahl Hits
1
2
3
4
Für die Generierung eines Messwertes benötigt man 2 FC (FC1 und FC2-5) Werte, für jeden weiteren
Hit wird ein weiterer FC Wert generiert. Der FC1 Wert wird für jeden Hit benötigt.
! Einstellung der Flankensensitivität
Einstellung identisch mit Messbereich 1, bitte 2.3.2 beachten !!!
! Retrigger Modus
!
!
Dieser Modus kann im Messbereich 2 nicht benutzt werden. Unbedingt ausschalten !!!
Queuing
Keine Wirkung des Queuing Bits im Messbereich 2 !!!
Auto Noise
Die Auto Noise Einheit funktioniert wie im Messbereich 1, jedoch mit der Ausnahme, dass bei
Benutzen der Auto Noise Einheit kein 4-fach Multihit, sondern nur ein maximal 3-fach Multihit möglich
ist.
Bitte beachten:
Auto Noise ist im Messbereich 2 nur dann sinnvoll, wenn der Startimpuls phasenstarr zum
Kalibriertakt liegt. Haben Startimpuls und Kalibriertakt keine feste Phasenbeziehung, ist Auto Noise
nicht notwendig, sondern entsteht quasi von selbst.
In diesem Modus müssen die Stoppeingänge während der gesamten Messung extern aktiviert sein
(Pin 37, 42).
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
22
TDC-GP1
2.5 Messen im Resolution Adjust Modus
2.5 Messen im Resolution Adjust Modus
Einstellung des Messbereiches:
Relevante Register:
Einstellregister 1
Adresse: 1
Relevante Bits:
7
Wirkung:
0 = off;
1 = on
Default:
off
Anmerkung:
Die hohe Auflösung des GP1 wird durch Ausnutzung interner Gatterlaufzeiten erreicht. Diese
Gatterlaufzeiten sind spannungs-, temperatur- und prozessabhängig. Bedingt durch diese Abhängigkeit
ist im 'Normalfall' die Auflösung des GP1 unbekannt, und muss durch Kalibriermessungen ermittelt
werden. Des Weiteren ist die Auflösung nicht konstant, sondern schwankt mit der Spannung und
Temperatur. Dies gilt nicht im Resolution Adjust Modus des GP1. In diesem Modus kann die Auflösung
des GP1 quarzgenau und absolut temperaturstabil eingestellt werden. Erreicht wird dies durch einen
Phasenregelkreis (Phase-Locked Loop), der die Core Spannung des GP1 so regelt, dass die in einem
Register eingestellte Auflösung exakt erreicht und gehalten wird.
Der Resolution Adjust Modus kann im Messbereich 1 bei normaler Auflösung und bei High Resolution
verwendet werden (bitte die Einschränkungen beachten).
2.5.1 Mögliche Messfolge und Messzeiten
Beim Resolution Adjust Modus gibt es keinen Start Impuls, da sich die Messeinheit in einem prinzipiell
anderen Betriebsmodus befindet.
Abbildung 6 : Zeiten im Resolution Adjust Modus
Es sind folgende Zeiten zu beachten (typ.):
2 Ereignissen auf dem gleichen Kanal müssen mindestens 15 ns liegen
(Doppelpulsauflösung). Liegen Ereignisse näher aneinander wird das 2. Ereignis nicht erkannt, da
es in der Erholzeit des Kanals liegt.
# Messbereich1: t
= 15 ns
! zwischen
1 min
! zwischen 2 Ereignissen auf verschiedenen Kanälen gibt es keine minimale Zeit
# Messbereich1: t
2 min
= 0 ns
! alle zu messenden Ereignisse müssen innerhalb von 15.360 LSBs (2 1 4 -2 1 1 ) nach dem ersten
Messpuls auf einem der Stopps kommen (kann optional erweitert werden)
# Messbereich1: t ≈ 3,8 µs (typ.)
3 max
2.5.2 Steuerung der ALU im Resolution Adjust
Die ausführliche Beschreibung der gesamten Möglichkeiten der ALU ist in Abschnitt 2.9 weiter hinten
in diesem Manual dargestellt. Hier eine Zusammenfassung für den Resolution Adjust Modus.
Im Resolution Adjust kann man
! jeden Stopp der beiden Kanäle zu jedem anderen Stopp hin vermessen
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
23
TDC-GP1
2.5 Messen im Resolution Adjust Modus
! Es kann weder kalibriert noch multipliziert werden.
Die Steuerung welches Ereignis zu welchem Ereignis vermessen wird, geschieht im Einstellregister 2.
Es besteht aus 2 Einstellwerten à 4 Bit (Nibbles). Es wird die Berechnungsvorschrift
Ergebnis = unteres Nibble - oberes Nibble
durchgeführt.
Einige Beispiele zur Verdeutlichung (die kompletten Zusammenhänge in Abschnitt 2.9)
Beispiel 1:
Inhalt Register 0: 0x00
Inhalt Register 2: 0x21
Ergebnis: Es wird vom 1. Hit des Kanals 1 der 2. Hit des Kanals 1 subtrahiert, das Ergebnis wird 16bittig in ein Ausgangsregister geschrieben. Der gesamte Berechnungsvorgang dauert ca. 180 ns.
Beispiel 2:
Inhalt Register 0: 0x00
Inhalt Register 2: 0xA3
Ergebnis: Es wird vom 3. Hit des Kanals 1 der 2. Hit des Kanals 2 subtrahiert. Das Ergebnis wird 16bittig in ein Ausgangsregister geschrieben. Der gesamte Berechnungsvorgang dauert ca. 180ns.
2.5.3 Einschränkungen im Resolution Adjust Modus
Für den Resolution Adjust Modus gelten einige Einschränkungen, die es unbedingt zu beachten gilt.
! Nicht anwenden im Messbereich 2
Der Resolution Adjust Modus kann nur im Messbereich 1 verwendet werden. Im Messbereich 2 ist
keine sinnvolle Messung möglich. Da im Messbereich 2 aufgrund des Aufbaus einer Messung immer
eine Normierung z.B. mit den Kalibrierwerten erforderlich ist, wäre eine solche Berechnung auch im
Resolution Adjust Modus notwendig, was den Effekt dieses Modus praktisch wieder aufheben würde
! keine Kalibrierwertgenerierung möglich
Im Resolution Adjust Modus ist eine Kalibrierwertgenerierung nicht möglich - und - auch nicht
notwendig.
! Kein kalibrieren oder multiplizieren der ALU
Es ist in diesem Modus nicht möglich, mit der ALU eine Kalibrierberechnung durchzuführen. Auf eine
Multiplikation des Ergebnisses sollte verzichtet werden. Sie kann aber durchgeführt werden, wenn der
berechnete Wert der subtrahierten Hits positiv ist.
! Der Messbereich ist nur halb so
s o groß wie ohne Resolution Adjust ( 15.360 LSBs)
Durch richtige Interpretation der Messergebnisse ist es allerdings möglich den Messbereich
praktisch zu verdreifachen (nicht im high Resolution). Bitte Unterpunkt 2.5.8 beachten.
! Keine negativen Werte bei 'H
'High
igh Resolution'
Bei Verwendung des High Resolution Modus ist es nicht möglich, durch die ALU negative Zeiten
berechnen zu lassen. Dies ist auch nicht notwendig, da nur die Multihits eines Kanals untereinander
vermessen werden können und hier von vornherein bekannt ist, welcher Hit vor welchem kam. Es kann
also immer nur der Hit mit der niedrigeren Hitnummer von dem mit der höheren subtrahiert werden.
2.5.4 Externe Beschaltung des GP1
Im Falle, dass der Resolution Adjust Betrieb benutzt werden soll, muss eine externe Beschaltung für
die Core Spannungsversorgung vorgesehen werden.
Bild 1 zeigt ein Beispiel für eine preisgünstige externe Beschaltung der Core Spannungsversorgung
des GP1 im Falle des Resolution Adjust Betriebs. Es ist zu beachten, dass nur die Core Spannung
geregelt wird und nicht die I/O Spannung des Bausteines. Diese bleibt fest auf z.B. 5 V, ansonsten
besteht die Gefahr, dass die Eingangsschutzdioden der Inputs des GP1 bei zu niedriger
Betriebsspannung, verursacht durch die Regelung, überfahren werden.
Achtung: Die Core darf unter keinen Umständen (Worst case Phase = 0) unter 2.7 V sinken.
Ansonsten besteht die Gefahr der Fehlfunktion.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
24
TDC-GP1
2.5 Messen im Resolution Adjust Modus
Abbildung 7
5V
12V
2 x 22µ
& 2 x 100n
2 x 100n
Vi
10µ
Vo
LM 3 1 7
V c c_ c o re
2K2
V c c _ IO
A d j.
T D C -G P 1
Phase
4K7
10µ
GND
5K6
10R
Stromaufnahme: Im Resolution Adjust Betrieb steigt die Stromaufnahme des TDC-GP1 an. Sie liegt bei
ca. 25 mA und ist praktisch unabhängig von der Messrate.
2.5.5 Steuerung der Messung, Einstellmöglichkeiten
!
Einstellung des Messmodus
Relevante Register:
Relevante Bits:
Wirkung:
! Enable der Hitanzahl
Einstellregister 1
Adresse: 1
7
0 = off;
1 = on ;Default: off
Relevante Register:
Einstellregister 7
Adresse: 7
Relevante Bits:
5-0
Wirkung:
siehe Tabelle
Default:
4 Hits pro Kanal
Gemäß der Registerbelegung mit den FCx Werten ergibt sich folgende Tabelle für die Steuerung der
erlaubten Hits
EN_HITx<2..0>
Anzahl Hits
1
1
2
2
3
3
4
4
! Einstellung der Flankensensitivität
Einstellung identisch mit Messbereich 1 !!!
! Erkennung des Adjust Zustandes
Ob die PLL die gewählte Auflösung einstellen konnte kann im Statusregister 1 Bit 7 abgefragt werden.
Dieses Bit geht ca. 10 ms nachdem die PLL eingerastet ist auf 1. Für Labortests ist außerdem der
Ausgang PHASE des GP1 ein guter Beobachtungspunkt. Im eingerasteten Zustand wird hier ein
digitaler Takt mit veränderlichem Puls/Pause Verhältnis ausgegeben, dessen Gleichanteil die
Regelspannung für den Spannungsregler ist. Die Gesamtzeit, welche die PLL braucht um einzurasten,
liegt bei ca. 100 ms.
! Verhalten bei Überschreiten der Einstellgrenze
Einstellgrenze
Wurde eine Einstellung zu knapp an der Einstellgrenze gewählt und wird dann durch
Temperaturänderungen diese Einstellgrenze überschritten, geht dieses Signal dauerhaft in eine 0
oder eine 1 über. Der Regelkreis kann nicht mehr nachregeln. Der GP1 befindet sich nun im Floating
Resolution Modus. Das Signalisierungs-Bit im Statusregister 1 geht auf 0. Der Baustein geht
automatisch wieder in den resolution Adjust Betrieb über, sobald es aufgrund der eingestellten
Parameter oder sonstiger Bedingungen wieder möglich ist. Das gleiche Verhalten zeigt der GP1, wenn
die Auflösung der Registereinstellungen von vornherein nicht eingestellt werden kann.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
25
TDC-GP1
2.5 Messen im Resolution Adjust Modus
2.5.6
Weitere Besonderheiten
im Resolution Adjust Modus
Wie bereits beschrieben gibt es im Resolution Adjust Modus keinen Start. Es können damit nur die
Stopps untereinander vermessen werden.
Im Resolution Adjust Modus ist eine RLC-Messung durchführbar. Wobei es nicht sinnvoll ist, den
Resolution Adjust Modus zu verwenden, wenn man nur über die RLC Ports messen will. Diese Option
ist dazu gedacht, die Möglichkeit zu bieten, im Resolution Adjust Modus auch zusätzlich eine RLCMessung durchzuführen (z.B. eine Temperaturmessung) ohne den Modus verlassen zu müssen.
Die PLL verfügt auch über einen SET_PAR Modus (Register 4 Bit 3). In diesem Modus ist der
Regelkreis nicht geschlossen. Am Ausgang PHASE wird ein Takt mit festem 50:50 Puls Pause
Verhältnis ausgegeben, man hätte also nach beiden Seiten den maximalen Regelbereich. Die PLL
bestimmt nun von sich aus den Einstellwert des PLL-Einstellregisters (Register 3) der sich bei diesen
Verhältnissen ergeben würde und schreibt ihn in das Leseregister hex A. Dieser Modus ist dazu da,
sich einen Überblick über die Einstellmöglichkeiten zu verschaffen.
Setzt man den Wert des PLL-Einstellregisters (Adresse 3) auf 255 und schaltet man den SET_PAR
Modus ab, wird dieser ermittelte Wert automatisch verwendet und der Regelkreis wird geschlossen.
Timeout: Auch im Resolution Adjust Modus wird ein Timeout generiert. Im Gegensatz zu den anderen
Modi hat dies jedoch keinen Einfluss auf laufende Messungen. Es wird lediglich das Timeout Flag
gesetzt. Die Messung wird nicht unterbrochen. Es werden nach einem Timeout weiterhin Hits bis zur
maximal eingestellten Zahl akzeptiert.
2.5.7
Erweitern des Messbereiches
auf bis zu 11 µs
Wenn die 3.8 µs Messbereich nicht ausreichen, gibt es eine Möglichkeit diesen Messbereich durch
richtige Interpretation der Ergebnisse praktisch zu verdreifachen. Hier macht man sich die Tatsache
zunutze, dass der GP1 im Resolution Adjust Modus nach einem Timeout nicht aufhört zu messen,
sondern auch darüber hinaus richtig misst. Nur die ALU ist nicht mehr in der Lage den Wertebereich
kontinuierlich weiterzuführen.
Die ALU reagiert wie folgt:
Wird der Wertebereich der ALU überschritten (bei ca. 15.360 LSBs), wird von der ALU ein
konstanter Offset von 30.720 LSB subtrahiert. Bis auf diesen Offset ist das Ergebnis korrekt. Dies
eröffnet nur eine sehr einfache Möglichkeit den Messbereich erst einmal zu verdoppeln. Dazu ist es
allerdings notwendig, dass man definitiv weiß, welcher Stopp vor welchem kam, das richtige Ergebnis
darf nicht negativ sein.
2.5.7.1
Korrekturvorschrift für Verdoppelung
des Messbereiches:
Werden negative Ergebnisse ausgelesen, so müssen zu diesen Ergebnissen 30.720 LSB dazuaddiert
werden. Der jetzt erhaltene Wertebereich liegt zwischen 0 und 30.720 LSB und damit bei ca. 7.8 µs
(typ.).
Damit werden nach ca. 30.720 LSBs die ausgelesenen Ergebnisse wieder positiv. Will man den
möglichen Messbereich verdreifachen, muss man noch zusätzlich das Overflow Flag (Statusregister 1,
Bit 6) auswerten.
2.5.7.2
Korrekturvorschrift für
Verdreifachung des Messbereiches:
Zusätzlich zu obiger Vorschrift gilt dann Folgendes:
Ist das ausgelesene Messergebnis positiv und das Overflow Flag = 0 befinden wir uns im eigentlich
richtigen Messbereich, das Ergebnis ist so korrekt.
Ist das ausgelesene Messergebnis positive und das Overflow Flag = 1 befinden wir uns oberhalb von
30.720 LSBs. Es muss zum ausgelesenen Messergebnis 30.720 dazuaddiert werden.
Da man mit dieser Erweiterung das Overflow Flag nicht im eigentlichen Sinn nutzt, muss man natürlich
anderweitig sicherstellen, dass die so erweiterten Messbereiche des GP1 nicht überschritten werden,
bzw. dass man ein Überschreiten des Messbereiches erkennt. (z.B. durch einen externen 1 MHz
Zähler der grob die Hits einteilt)
2.5.8 Berechnung der Auflösung des GP1
Für die Einstellung der Auflösung sind 3 Parameter beteiligt
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
26
TDC-GP1
2.6 Zuschalten des High Resolution Modus
! die Periodendauer des Referenztaktes
! das Teilerverhältnis des Referenzteilers (Register 4: Bits 2.0)
! der eingestellte Wert des PLL -Einstellregisters (Register 3: alle Bits)
Die sich einstellende Auflösung des TDC-GP1 berechnet sich nach folgender Formel
Resolution =
Beispiel:
Tref ∗ 2nref
120 ∗ PLL _ L
Referenz Takt = 10 MHz # Tref = 100 ns
Teilerfaktor Referenztakt nref=5 #2 = 32
PLL-Einstellwert= 100
5
Mit diesen Einstellungen ergibt sich eine Auflösung von 266,66 ps bei einfacher Auflösung bzw.
133.33 ps bei high Resolution.
2.6 Zuschalten des High Resolution Modus
Die beiden Kanäle des GP1 sind streng miteinander korreliert, was sich zum Beispiel darin äußert,
dass sie immer exakt die gleiche Auflösung haben. Diese enge Kopplung eröffnet die Möglichkeit beide
Kanäle so miteinander zu verschalten, dass ein 1 Kanal TDC mit der doppelten Auflösung entsteht.
Dies ist im High Resolution Modus realisiert. Der Stopp 2 Eingang ist in diesem Modus abgeschaltet.
Stopp Impulse auf Stopp 2 haben keine Wirkung.
Der High Resolution Modus kann im
! Messbereich1
! Messbereich2
! Resolution Adjust Modus
zugeschaltet werden
2.6.1 Mögliche Messfolge und Messzeiten
a. Messbereich 1 und Messbereich 2
Abbildung 8 : Zeiten High Resolution, MB1 und MB2
Es sind dabei folgende Zeiten zu beachten (typ.):
! nach einem Start darf frühestens nach 3 ns ein Stopp auf einem der Kanäle kommen. Stopps die
früher kommen werden ignoriert
# Messbereich1: t = 3 ns
# Messbereich2: t = 1.5*CAL_CLK+25ns
! zwischen 2 Ereignissen müssen mindestens 15 ns (Messbereich2: 2*CAL_CLK+4ns) liegen
(Doppelpulsauflösung). Liegen Ereignisse näher aneinander wird das 2. Ereignis nicht sicher
erkannt, da es in der Erholzeit des Kanals liegt.
# Messbereich1: t = 15 ns
# Messbereich2: t = 1.5*CAL1.5*CAL - CLK+25ns
CLK +25ns
! alle zu messenden Ereignisse müssen innerhalb von 30.720 LSBs (2 -2 ) nach dem Start kommen
(Messbereich2: 2 *CAL_CLK)
# Messbereich1: t ≈ 3,8 µs (typ.)
# Messbereich2: t = 2 *CAL*CAL - CLK
1 min
1 min
2 min
2 min
15
11
16
3 max
3 max
16
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
27
TDC-GP1
2.6 Zuschalten des High Resolution Modus
b. Resolution Adjust Modus
Abbildung 9 : Zeiten High Resolution, Res. Adj. Modus
Es können nur Ereignisse die auf dem Stopp1 Input ankommen untereinander vermessen werden
Es sind dabei folgende Zeiten zu beachten (typ.):
! zwischen 2 Ereignissen müssen mindestens 15 ns liegen (Doppelpulsauflösung). Liegen Ereignisse
näher aneinander wird das 2. Ereignis nicht sicher erkannt, da es in der Erholzeit des Kanals liegt.
# Messbereich1: t = 15 ns
! alle zu messenden Ereignisse müssen innerhalb von 15.360 LSBs (2 -2 ) nach dem Start kommen
2 min
14
# Messbereich1: t
3 max
11
≈ 1,9 µs (typ.)
Im High Resolution kann keine Messbereichserweiterung gemäß
werden.
Vorschrift 2.5.8 durchgeführt
2.6.2 Steuerung der Messung, Einstellmöglichkeiten
!
Einstellung des
des Modus:
Relevante Register:
Relevante Bits:
Wirkung:
Einstellregister 1
Adresse: 1
6-0
Bit 6 = Aktivierung, 0=off, 1=on, Default=off
Bit 5-0 Einstellbits, default=0
Um eine optimale Kennlinie in diesem Modus zu erhalten, müssen die Einstellbits 5-0 des
Einstellregisters auf
Bit< 5 .. 0>: 001101
gestellt werden.
! Messungen im Messbereich 1
Im Messbereich 1 hat man einen 1 Kanal TDC mit 4-fach Multihitfähigkeit.
Enable der Hitanzahl
Relevante Register:
Einstellregister 7
Adresse: 7
Relevante Bits:
2-0
Wirkung:
siehe Tabelle
Default:
4 Hits pro Kanal
Im Einstellregister 7 (Adresse 7) wird die Anzahl der möglichen Hits pro Kanal eingestellt. Es gilt dabei
folgende Einstellung.
EN_HIT1<2..0>
0
1
2
3
4
Anzahl der möglichen Hits
0 Hits, Software Disable des Kanals
1 Hit
2 Hits
3 Hits
4 Hits
Die Bits EN_HIT2<2..0> werden nicht ausgewertet. Die Einstellung der Flankensensitivität, Retrigger
Modus und Auto Noise bleiben wie bei einfacher Auflösung erhalten. Qeuing ist nicht möglich.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
28
TDC-GP1
2.7 RLC-Messung
!
Messungen
Me ssungen im Messbereich 2
Im Messbereich 2 hat man einen 1 Kanal TDC mit 3-fach Multihitfähigkeit. Hier muss man auf einen
Multihit verzichten, da bereits mit 3 Multihits alle Rohwerteregister belegt sind.
! Enable der Hitanzahl
Relevante Register:
Relevante Bits:
Wirkung:
Default:
Im Einstellregister 7
folgende Einstellung.
EN_HIT1<2..0>
2
3
4
Einstellregister 7
Adresse: 7
2-0
siehe Tabelle
3 Hits
(Adresse 7) wird die Anzahl der möglichen Hits pro Kanal eingestellt. Es gilt dabei
EN_HIT2<2..0>
x
x
x
Anzahl Hits
1
2
3
Die Bits EN_HIT2<2..0> werden nicht ausgewertet. Die Einstellung der Flankensensitivität, Retrigger
Modus und Auto Noise bleiben wie bei einfacher Auflösung erhalten.
2.7 RLC-Messung
2.7.1 Prinzipielle Vorgehensweise
Die Bestimmung vieler physikalischer Grundgrößen lässt
sich relativ einfach auf eine
Zeitdifferenzmessung zurückführen. Das gilt auch für die 3 Grundgrößen der Elektrotechnik
! R (Widerstand)
! L (Induktivität)
! C (Kapazität)
Der GP1 bietet die Möglichkeit dies durch einfache äußere Beschaltung des Bausteines zu tun. Die
Bestimmung der Größen erfolgt (wie bei allen anderen Messgeräten auch) über Verhältnisbildung mit
RLC Komponenten bekannter Größe. Diesmal eine Verhältnisbildung über Zeitdifferenzen.
Beispiel: Widerstandsbestimmung
Hier wird im 1. Schritt über einen unbekannten Widerstand ein Kondensator entladen. Mit dem
Beginn der Entladung wird ein Startimpuls generiert. Unterschreitet die Spannung des Kondensators
die Schaltschwelle eines Komparators (z.B. Schmitt Trigger) wird ein Stoppimpuls generiert. Die Zeit
zwischen Start und Stopp wird mit dem TDC gemessen.
Im 2. Schritt wird das Ganze mit einem Referenzwiderstand bekannter Größe wiederholt. Das
Verhältnis der beiden Zeitdifferenzen ist gleich dem Verhältnis der beiden Widerstände, wenn man bei
beiden Messungen den gleichen Kondensator und Komparator verwendet.
Beim Bestimmen von Induktivitäten und Kapazitäten geht man analog vor.
Durch die sehr hohe Auflösung eines TDCs ist diese Art der Größenbestimmung innerhalb weniger
Mikrosekunden durchführbar. Dies hat den Vorteil, dass man auch schnelle Änderungen erfassen
kann. Ein weiterer Vorteil liegt in der geringen Stromaufnahme eines solchen Messvorgangs. Die
komplette Bestimmung eines Widerstandes braucht bei richtiger Auslegung weniger als 1 µAs. Damit
lassen sich bei wenigen Messungen pro Sekunde Betriebsströme von wenigen µA realisieren.
Der Schaltungsaufwand ist sehr gering und damit kostengünstig. Es lassen sich sehr präzise
Messungen durchführen.
2.7.2 Mögliche Messfolge und Messzeiten
Messfolge
Es lassen sich RLC-Messungen auf 2 verschiedene Arten durchführen
! als Komplettmessung von Port 1-n (n = 4). Hier werden so viele Ports ausgemessen (beginnend
von Port 1) wie eingestellt sind
! als Einzelmessung. Hier wird nur der selektierte Port ausgemessen
max
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
29
TDC-GP1
2.7 RLC-Messung
Messzeiten
Die RLC-Messung kann sowohl im Messbereich 1 als auch im Messbereich 2 durchgeführt werden.
Die maximal messbare Zeitdifferenz ergibt sich aus den Messbereichen.
Messablauf
Die Messung wird mit einem 0-> 1 Übergang am Bit 3 des Einstellregister 6 gestartet. Nachdem ein
Port ausgemessen wurde wird optional kalibriert. Danach wird die Berechnung der ALU durchgeführt,
die vorher in den entsprechenden Registern eingestellt wurde. Nach der Berechnung wird das
Ergebnis in ein Ausgangsregister der ALU geschrieben. Bei Multiportmessung wird dabei jeweils um
eine Adresse erhöht. Nach dem Ende eines Messzyklus wird das RLC_END Flag gesetzt, das über das
Statusregister abgefragt werden kann. Der ganze Zyklus dauert bei einer Messung mit 4 Ports ca.
1000 R-L-C Taktzyklen plus Messzeit. Bei einer 1 Port Messung ca. 250 R-L-C Taktzyklen plus
Messzeit.
Beispiel: Eine RLC-Messung mit 4 Ports und 10 MHz RLC Takt und einer Messzeit pro Port von ca. 10
µs benötigt ca. 140 µs. War die ALU auf kalibrieren geschaltet, stehen danach die 4 Messergebnisse
je als 32 Bit Festkommazahl von Port 1 aus aufsteigend in den Ergebnisregistern 1-8. Jeder Wert
belegt zwei 16-Bit Register.
2.7.3 Steuerung der Messung, Einstellmöglichkeiten
!
Einstellung des Modus:
Relevante Register:
Relevante Bits:
Wirkung:
Einstellregister 6
Adresse: 6
3, 2
Bit 3 = Aktivierung, 0=off, 1=on, Default=off
Bit 2 = Benutzung externer Transistoren 0= nein, 1= ja , default=nein
Relevante Register:
Einstellregister 5
Adresse: 5
Relevante Bits:
7-0
Wirkung:
siehe weitere Erklärungen
! Einstellungen im Register 5:
Register 5
Adresse: 5
Bit Nr.
Name
7
RLC_NR<2>
6
RLC_NR<1>
5
RLC_NR<0>
4
SINGLE_EN
3
C_SEL
2
SEL_CLK_RLC<2>
1
SEL_CLK_RLC<1>
0
SEL_CLK_RLC<0>
Bedeutung
Auswahl welcher bzw. wie viele RLC Ports gemessen werden
"
"
selektiv Ports Messen = 1, 0= alle Ports von 1 bis RLC_NR
Kapazitätsverhältnisse ausmessen = 1
Select für Takt der RLC Einheit
"
"
Default
1
0
0
0
0
0
0
0
Im Bit 7-5 wird bei SINGLE_EN=0 die Anzahl der zu messenden Ports eingestellt. Bei SINGLE_EN=1
wird der zu messende Port selektiert.
Es gilt folgende Tabelle
RLC_NR<2..0>
SINGLE_EN=0
Anzahl Ports
0
1
1
2
2
3
3
4
4
SINGLE_EN=1
Port Nummer
1
2
3
4
C_SEL
C_SEL
Bei der R- und bei der L- Messung ist die Ansteuerung der Ports identisch. Bei einer C-Messung
müssen die Ports dagegen anders angesteuert werden. Es ist deswegen notwendig dem Chip
mitzuteilen, dass es sich um eine C-Messung handelt. Dafür ist Bit 3 (C_SEL) verantwortlich. Bei einer
1 wird von einer C-Messung ausgegangen und die Ports werden entsprechend angesteuert.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
30
TDC-GP1
2.7 RLC-Messung
SEL_CLK_RLC
Die Ablaufsteuerung, welche die RLC-Messung steuert, wird vom CLK_REF getaktet. Dieser Takt kann
durch einen chipinternen Teiler auf die Erfordernisse angepasst werden. Das Teilerverhältnis wird mit
SEL_CLK_RLC eingestellt.
SEL_CLK_RLC<2..0>
0
1
2
3
4
5
6
7
!
Teilerfaktor
1
2
4
8
16
32
64
64
Einstellungen im Register 6
Im Register 6 sind Bit 2 und 3 weitere Steuerbits für die RLC-Messung
USE_TRANS
Vor allem bei niederohmigen R- oder L- Messungen empfiehlt es sich nicht auf die chipinternen PortTreiber zurückzugreifen, sondern externe Transistoren zu verwenden, z.B. NPN-Transistoren. Benutzt
man diese Möglichkeit, muss dies der GP1 wissen, um seine Ansteuerung entsprechend anzupassen.
Dies geschieht über dieses Bit. Bei 1 wird von der Verwendung externer Transistoren ausgegangen.
Ob diese Maßnahme ergriffen werden muss, hängt vom Widerstand und von der benötigten
Messgenauigkeit ab. Mann kann davon ausgehen, dass die internen Port Treiber bei 5 V/ 25 C einen
R -ON von ca. 15 Ohm haben und das Matching untereinander ca. 1.5 Ohm beträgt. Ob diese Qualität
ausreicht, muss von Fall zu Fall entschieden werden.
RLC_EN
Mit einer 1 bei diesem Bit wird die RLC-Messung gestartet. Das Bit muss während der gesamten
Messung auf 1 bleiben. Die Messung schaltet sich am Ende automatisch ab. Das RLC_END Flag wird
auf dem Statusregister ausgegeben.
DS
Das RLC_EN Bit wird am Ende der Messung nicht automatisch auf 0 gesetzt. Will man eine neue RLCMessung starten, muss dieses Bit auf 0 und dann wieder auf 1 gesetzt werden, wobei das Bit
mindestens 6 RLC-Taktperioden auf 0 sein muss.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
31
TDC-GP1
2.7 RLC-Messung
2.7.4 Außenbeschaltung der Ports
In den folgenden 3 Schaltbildern wird die Außenbeschaltung der Ports bei R-, L- und C-Messung mit
und ohne externe Transistoren dargestellt.
Abbildung 10:
10 : Widerstandsmessung mit externen Transistoren
Abbildung 11:
11 : Externe Beschaltung bei Induktivitätsmessung ohne externe Transistoren
Abbildung 12:
12 : Externe Beschaltung bei Kapazitätsmessung ohne externe Transistoren
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
32
TDC-GP1
2.8 Kalibration des GP1
2.7.5 Genauigkeiten bei der RLC-Messung
Bei der RLC-Messung lassen sich die Verhältnisse der Komponenten bei Einzelmessung bis auf ca. 50
ppm genau bestimmen. Durch Mittelung über mehrere Messungen sind < 10 ppm erreichbar. Damit
diese Genauigkeit auch erreicht werden kann, sind jedoch einige Dinge zu beachten.
Die erreichbare Genauigkeit ist nicht von der TDC-Einheit abhängig, sondern vor allem von der
Rauschfreiheit der Schmitt-Trigger Schwelle und der Niederohmigkeit der Schalttransistoren. Deshalb
gilt es zu beachten.
! während des Messvorgangs dürfen keine I/O Operationen über den Bus stattfinden z.B. Polling des
Statusregisters. Dies stört empfindlich die Schaltschwellengenauigkeit des Chip-internen SchmittTriggers. Ist dies nicht möglich, sollte ein externer Schmitt-Trigger vor den Input SENSE geschaltet
werden, der diese Problematik behebt.
! sollen niederohmige Widerstände hochgenau vermessen werden (z.B. PT 500), sind externe
Transistoren, am besten MOSFETs mit geringen RDS on, vorzusehen. Die internen Port
Transistoren sind zu hochohmig.
2.8 Kalibration des GP1
(Hauptabschnitt 5 'Bekannte Probleme und deren Lösung' beachten)
Es kann auf 2 verschiedene Arten eine Kalibrierung des GP1 durchgeführt werden
! per Befehl
! automatisch nach einem Start/Stopp Ereignis
Bei einem Kalibriervorgang werden aus dem Kalibriertakt eine und zwei Taktperioden vermessen. Die
Ergebnisse werden in speziellen Kalibrierwertregistern gespeichert, die bei jedem Kalibriervorgang
mit den aktuellen Werten überschrieben werden. Ein separater Kalibriervorgang wird durch Setzen
eines Bits im Moderegister ausgelöst. Das Bit wird automatisch gelöscht nachdem der Vorgang
beendet ist. Bei automatischer Kalibrierung wird, nachdem die Anzahl der eingestellten Hits auf
beiden Kanälen erreicht ist, eine Kalibration eingeleitet.
Abbildung 13
Cal2
Cal1
offset
Tref
2*T r e f
2.8.1 Steuerung der Kalibration
!
separate Kalibrierung
Relevante Register:
Relevante Bits:
Wirkung:
Default:
! AutoAuto - Kalibrierung
Relevante Register:
Relevante Bits:
Wirkung:
Einstellregister 0
Adresse: 0
7
1 = Kalibrierung wird durchgeführt
0
Einstellregister 0
Adresse: 0
3
1 = Auto Kalibrierung wird durchgeführt
2.8.2 Wirkung der Einstellungen
Separate Kalibrierung
Wurde das Bit der separaten Kalibrierung gesetzt, werden aus dem am Messkreis anliegenden
Kalibriertakt Start und Stoppsignale generiert, deren Abstand eine Kalibriertaktperiode ist. Daraus
werden dann im Multihitverfahren 2 Hits generiert, die eine und zwei Kalibriertaktperioden darstellen.
Nach einem separaten Kalibrierlauf wird das CAL Bit automatisch gelöscht. Damit muss für eine
separate Kalibrierung nur einmal das Register 0 beschrieben werden.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
33
TDC-GP1
2.9 Berechnungsmöglichkeiten mit dem GP1
Auto Kalibrierung
Werden nur sehr wenige Messungen durchgeführt bzw. hat man genügend Zeit zwischen den
Messungen, kann man alternativ auf automatische Kalibrierung schalten. Bei dieser Option wird
automatisch, nachdem die Anzahl der eingestellten Hits erreicht ist, eine Kalibration durchgeführt, die
den gleichen Ablauf wie die separate Kalibrierung hat.
Die Kalibrierwerte können auch zur Kontrolle ausgelesen werden. Diese Möglichkeit wird im Abschnitt
'Berechnungsmöglichkeiten mit dem GP1' näher beschrieben.
2.9 Berechnungsmöglichkeiten mit dem GP1
Steuerung der ALU
Wie bereits erwähnt, kann man nur Messwerte aus den 8 Ausgangsregistern des GP1 auslesen.
Diese Ausgangsregister werden über die sequentielle ALU beschrieben. Die Art und Weise, wie diese
Messwerte vorher durch die sequentielle ALU bearbeitet werden, lässt sich in sehr weiten Bereichen
durch die Einstellregister 0, 1 und 2 steuern.
2.9.1 Wirkung der Einstellregister
Register 2
Das elementare Einstellregister bei der Auswahl der Hits ist das Register 2. Hier stehen 2 Worte à 4
Bit zur Verfügung, welche zur Selektion der gewählten Hits dienen.
Register 2
Adresse: 2
Bit Nr.
Name
7
HIT2_IN<3>
6
HIT2_IN<2>
5
HIT2_IN<1>
4
HIT2_IN<0>
3
HIT1_IN<3>
2
HIT1_IN<2>
1
HIT1_IN<1>
0
HIT1_IN<0>
Instruktionsregister für die ALU
HIT1_IN - HIT2_IN
Berechnungsvorschrift:
Bedeutung
Kanal select für oberes Nibble: 0= channel1, 1=channel2
#Hit für in Bit 7 selektiertem Kanal
#Hit für in Bit 7 selektiertem Kanal
#Hit für in Bit 7 selektiertem Kanal
Kanal select für unteres Nibble: 0= channel1, 1=channel2
#Hit für in Bit 3 selektiertem Kanal
#Hit für in Bit 3 selektiertem Kanal
#Hit für in Bit 3 selektiertem Kanal
Default
0
1
0
1
0
1
0
1
Jede Berechnung die durch die sequentielle ALU durchgeführt wird, beginnt mit der Funktion
HIT1_IN - HIT2_IN
Es wird dabei der selektierte Hit des oberen Nibbles des Einstellregisters 2 subtrahiert vom
selektierten Hit des unteren Nibbles des Einstellregisters 2.
Format der Nibbles im Einstellregister 2:
Das oberste Bit des jeweiligen Nibbles selektiert die Kanalnummer.
Nomenklatur: 0 = Kanal 1; 1= Kanal 2
Die unteren 3 Bit stellen die Hit Nummer des jeweiligen Kanals dar.
Beispiele
Inhalt v. Reg. 2: 0xa4 Wirkung:
Inhalt v. Reg. 2: 0x13 Wirkung:
Inhalt v. Reg. 2: 0x3b Wirkung:
4. Hit Kanals 1
3. Hit Kanals 1
3. Hit Kanals 2
minus 2. Hit des Kanal 2
minus 1. Hit des Kanal 1
minus 3. Hit des Kanal 1
Steht im oberen Nibble eine 0 wird zum Start hin vermessen d.h. der untere Wert ohne arithmetische
Verarbeitung durchgereicht.
Beispiele
Inhalt v. Reg. 2: 0x04 Wirkung:
Inhalt v. Reg. 2: 0x0c Wirkung:
4. Hit Kanal 1
4. Hit Kanal 2
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
34
TDC-GP1
2.9 Berechnungsmöglichkeiten mit dem GP1
Selektion der Kalibrierwerte
Durch die Einstellung des Registers 2 kann ebenfalls auf die Kalibrierwerte zugegriffen werden.
Dabei gilt bei den unteren 3 Bit eines Nibbles: 6 = CAL 1; 7 = CAL2. Das obere Bit wiederum
selektiert den Kanal.
Beispiele
Inhalt v. Reg. 2: 0x0f Wirkung:
Inhalt v. Reg. 2: 0x06 Wirkung:
Inhalt v. Reg. 2: 0x67 Wirkung:
CAL 2 von Kanal 2
CAL 1 von Kanal 1
CAL 2 von Kanal 1 minus CAL 1 von Kanal 1
Der Wert 5 der unteren 3 Bit eines Nibbles ist nicht belegt. Dies ist der default Zustand des
Registers 2 nach einem Power On Reset. Bei dieser Einstellung des Registers 2 führt die ALU keine
Berechnung durch.
Register 0
Die durch die Einstellung im Register 2 ausgewählten und durch die entsprechende Operation
vorverarbeiteten Hits werden nun durch die gewählten Einstellungen der Bits 5 und 6 des Registers 0
weiterverarbeitet. Ist das Bit 6 des Registers 0 auf 1 wird das Ergebnis der vorherigen Operation
kalibriert. Ist zusätzlich das Bit 5 des Registers 0 auf 1 wird das nach der Kalibration entstandene
Ergebnis mit dem Wert des 24 Bit Multiplikationsregisters multipliziert.
Achtung: Es ist nicht vorgesehen, dass ein Wert ohne vorangegangene Kalibration multipliziert wird.
Dies macht normalerweise auch wenig Sinn, da es sich um unkalibrierte Werte handelt. Es ist
dennoch möglich, wenn man sicherstellen kann, dass der zu multiplizierende Wert positiv und kleiner
15.360 ist. Bitte dann aber unbedingt beachten, dass trotzdem pro Wert 32 Bit beschrieben werden.
2.9.2 Das Multiplikationsregister
Der Multiplikand für die Multiplikation wird in einem 24 Bit Multiplikationsregister gespeichert, das
von der Rechnerschnittstelle beschrieben wird. Es gelten folgende Adressen.
Register 88 - 10
Adresse:8Adresse:8 - 10
Register 8, Adresse 8
Register 9, Adresse 9
Register 10, Adresse 10
Multiplikationsfaktor<7..0>
Multiplikationsfaktor<15..8>
Multiplikationsfaktor<23..16>
Default
0
0
128
Das MSB des 24 Bit Wertes hat die Wertigkeit 2 . Es lassen sich also Multiplikationsfaktoren von 0
bis 2 einstellen. Der Default Wert nach dem Power On Reset ist 1.
0
2.9.3 Verwendete Rechenvorschriften in Messbereich1
Folgende Rechenvorschrift kann im Messbereich 1 durchgeführt werden
ERG= MULT ∗
Dabei ist:
1. VAL(HIT2_IN) - VAL(HIT1_IN) :
2. 2*CAL1-CAL2:
3. CAL2-CAL1:
4. MULT:
5. ERG:
(VAL (HIT2 _ IN) − VAL (HIT1 _ IN)) − (2 ∗ CAL1 − CAL2)
CAL2 − CAL1
Ausführung der Berechnung von Register 2
Offsetkorrektur durch die Kalibrierwerte
Steigung (Auflösung) der Kalibriergeraden
Multiplikationsfaktor
Ergebnis, das in die Ausgangsregister geschrieben wird.
Ist Calibrate und Multiplicate im Register 0 auf 0 wird nur Operation 1 durchgeführt. Ist Calibrate auf
1 wird die Operation des Bruchstriches ausgeführt. Ist auch Multiplicate auf 1 wird die gesamte
Rechenvorschrift ausgeführt.
2.9.4 Verwendete Rechenvorschriften in Messbereich2
Folgende Rechenvorschrift wird im Messbereich 2 durchgeführt.
(VAL (HIT1 _ IN) − VAL (HIT2 _ IN)) 

ERG = MULT ∗  CC +

CAL2 − CAL1


acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
35
TDC-GP1
2.9 Berechnungsmöglichkeiten mit dem GP1
Dabei ist:
Ausführung der Berechnung von Register 2
1. VAL(HIT1_IN) - VAL(HIT2_IN) :
2. CAL2-CAL1:
Steigung (Auflösung) der Kalibriergeraden
3. CC
Wert des Vorteilers (Coarse Count)
Multiplikationsfaktor
4. MULT:
5. ERG:
Ergebnis, das in die Ausgangsregister geschrieben wird.
Calibrate sollte sinnvollerweise im Messbereich 2 immer auf 1 sein, da sonst kein interpretierbares
Ergebnis zu Stande kommt. Ist nur Calibrate auf 1 wird die Rechenvorschrift mit Ausnahme der
Multiplikation durchgeführt. Das Ergebnis steht dann als Vielfaches des Kalibriertaktes im
Ausgangsregister. Ist auch Multiplicate auf 1 wird die gesamte Rechenvorschrift ausgeführt.
2.9.5 Besonderheiten im Messbereich 1
Der kalibrierte Wert (ohne Multiplikation) kann aufgrund der ALU Struktur nicht größer als 2 werden.
Es wäre auch nicht sinnvoll einen solchen Wert erzeugen zu wollen, da dies ja bedeuten würde, dass
der gemessene Wert größer als der CAL2 Wert wäre. In diesem Fall gäbe es zusätzliche Fehler durch
Quantisierungsungenauigkeiten der Kennlinien.
Abbildung 14
tmess
forbidden
Tcal
2*Tcal
Es muss deshalb darauf geachtet werden, dass die Periode des Kalibriertaktes mindestens die Hälfte
der maximal zu messenden Zeitdifferenz beträgt.
Zum Abfangen von Fehlbedienungen verfügt die ALU im Messbereich 1 über eine Overflowanzeige. Ist
ein Overflow bei der Berechnung eingetreten, wird das Bit mit der Wertigkeit 2 beim Einschreiben ins
Ausgangsregister auf 1 gesetzt. Damit ist das Ergebnis größer als 128. Dies kann im normalen
Betrieb nie auftreten, da selbst bei einer Multiplikation mit 2 ein korrektes Ergebnis nie größer als 4
werden kann.
7
2.9.6 Besonderheiten im Messbereich 2
In Messbereich 1 lässt sich mit oben beschriebenem Rechenbeispiel jede beliebige der vorhandenen
Möglichkeiten der Hits berechnen. Der Messmodus 2 verfügt demgegenüber über einen prinzipiell
anderen Messablauf, der sich in den Berechnungsmöglichkeiten niederschlägt. Wir haben hier 2
Finecounts, die mit der Messeinheit generiert werden und einen Coarse Count, der ein Zählerwert
eines mit dem Kalibriertakt betriebenen Zählers darstellt.
Im Messbereich 2 können keine Hits untereinander ausgerechnet werden. Es können nur die Werte
zum Start hin berechnet werden.
Die Einstellung des Registers 2 ergibt sich aus der Belegung der Finecounts in den Rohwertregistern.
Zur Erinnerung (vgl. 2.4.2)
Kanal
Rohwertregister
1
1
1
1
2
2
2
2
1
2
3
4
1
2
3
4
gespeicherter Wert im Messbereich 2
Normal
high resolution
FC 1
FC 1
FC 2
FC 2
FC 3
FC 3
FC 4
FC 4
FC 5
FC 1
n.c.
FC 2
n.c.
FC 3
n.c.
FC 4
Es müssen im Register 2 die Finecounts voneinander subtrahiert werden, die für die Berechnung des
gewählten Hits notwendig sind. Die ALU generiert sich aus dieser Einstellung die Adresse für den
dazugehörigen Coarse Count.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
36
TDC-GP1
Beispiel: Es soll der 3. Hit berechnet werden. Daraus folgt das FC1 - FC 4 berechnet werden muss.
Damit ergibt sich als Einstellung für das Register 2 der Wert: 'h41. Der dazugehörige Coarse Count
wird von der ALU selbst bestimmt.
Achtung: Werden Finecounts angegeben die keinen Sinn machen, wird auch dies von der ALU ohne
Fehlermeldung akzeptiert und ein (sinnloses) Ausgangsergebnis generiert, dem man nicht unbedingt
auf Anhieb ansieht, dass es falsch ist - hier unbedingt aufpassen.
2.9.7 Besonderheiten im Resolution Adjust Modus
Im Resolution Adjust Modus können sinnvoller Weise nur Stopps untereinander vermessen werden.
Das Ausmessen absoluter Werte macht keinen Sinn. Auch hier akzeptiert die ALU ohne
Fehlermeldung die Adressierung eines Absolutwertes (0 im oberen Nibble) im Register 2, und schreibt
einen sinnlosen Wert ins Ausgangsregister. Auch können im Resolution Adjust Modus jederzeit die
Kalibrierwertregister ausgelesen werden. Es kann jedoch kein Kalibrationslauf durchgeführt werden.
2.9.8 Berechnungszeiten der ALU
Die Berechnungszeiten der ALU sind abhängig vom verwendeten Modus, dem eingestellten Wert für
den BIGALU Takt im Einstellregister 6 (SPEED<1:0> und der Betriebsspannung des Cores.
Für den Speed Parameter im Einstellregister 6 gilt folgende Tabelle:
SPEED<1:0>
0
1
2
3
Speed Faktor
1
1,37
1,37
Bemerkung
nicht erlaubt
mittlere Einstellung
langsamste Einstellung (default)
redundant mit Einstellung 2
Mit diesem Speed Faktor können alle nachfolgenden Zeiten bei entsprechender Einstellung
multipliziert werden. Er ist bezogen auf die mittlere Einstellung.
Bei mittlerer Speed Faktor Einstellung, 5 V Core Spannung, 25°C und typischen Eigenschaften des
Chips gilt folgende Tabelle für die Berechnungszeiten.
Tabelle: Berechnungszeiten
High Res
Berechnungszeit
Berechnungsart
HITx zum Start
no
140 ns
HITx - HITy
no
180 ns
HITx zum Start
yes
182 ns
HITx-HITy
yes
263 ns
+ Kalibration
+ 2000 ns
+Multiplikation
+ 2000 ns
Bemerkungen:
! für Kalibration und Multiplikation sind jeweils die angegeben Werte zu den vorherigen Zeiten zu
addieren
! im Resolution Adjust Modus nur HITx-HITy möglich
Bei Berücksichtigung des Worst Case Herstellungsprozesses sind obige Zeiten mit dem Faktor 1.4
(Kp) zu multiplizieren bei Best Case mit dem Faktor 0,61
Für die Temperatur gilt folgende Tabelle
Tabelle: Kt
Temp
Kt
125 C 1.26
85 C
1.15
70 C
1.11
25 C
1.00
-25 C
0.87
-40 C
0.82
-55 C
0.79
Für die Core Spannung gilt folgende Tabelle
Tabelle: Kv
VDD
Kv
5.5 V
0.94
5.0 V
1.00
4.5V
1.07
3.3 V
1.39
3.0 V
1.54
2.7 V
1.74
Für die Berechnung der resultierenden ALU Berechnungszeit gilt folgende Formel
Time=time1*Kp*Kv*Kt
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
37
TDC-GP1
2.10 Die Rechnerschnittstelle
2.10 Die Rechnerschnittstelle
Der GP1 verfügt über eine 8-Bit Rechnerschnittstelle, die sich an den gängigen Standards orientiert.
Sie verfügt über einen
! 8-Bit bidirektionalen Daten Bus
! 4-Bit unidirektionalen Address Bus
und über die Steuersignale
! WRN
(schreiben in den GP1, low active)
! RDN
(lesen aus dem GP1, low active)
! CSN
(Chip Select, low active)
! ALE
(Address Latch Enable, das Address Latch ist high transparent)
2.10.1 Timing - Schreiben in den GP1
Bei Schreiben in den GP1 kann man 2 Fälle unterscheiden
! mit ALE, notwendig bei gemeinsamen Daten/Address Bus
! ohne ALE, bei getrenntem Daten/Address Bus kann das ALE Signal konstant auf '1' gelegt werden.
Es kann natürlich auch bei getrenntem Daten/Address Bus mit ALE gearbeitet werden.
Die folgenden beiden Diagramme zeigen die notwendigen Timings die bei beiden Fällen eingehalten
werden müssen
Abbildung 15:
15 : mit ALE und gemeinsamen Daten Address Bus
Abbildung 16:
16 : ohne ALE und getrennten Daten Address Bus (ALE konstant auf '1')
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
38
TDC-GP1
2.10 Die Rechnerschnittstelle
Es gelten folgende Zeiten
Name
Bedeutung
tsu-d
Th-d
tsu-csn
Th-csn
tsu-adr
Th-adr
tpw-wl
tpw-wh
tpw-ale
tsu-adr2
tsu-ale
th-adr2
Setup-Time Daten zu positiver Flanke WRN
Hold-Time Daten zu positiver Flanke WRN
Setup-Time neg. Flanke CSN zu neg. Flanke WRN
Hold-Time pos. Flanke CSN zu pos. Flanke WRN
Setup-Time Adresse zu negativer Flanke ALE
Hold-Time Adresse zu negativer Flanke ALE
Puls-Weite des negativen WRN Pulses
Puls-Weite positive Phase WRN
Puls-Weite ALE
Setup-Time Adresse zu positiver Flanke WRN, Fall 2
Setup-Time neg. Fl. ALE zu neg. Fl. WRN
Hold-Time Adresse zu positiver Flanke WRN, Fall 2
Wert ohne SUI
(Default)
> 10 ns
> 0 ns
> 0 ns
> 0 ns
> 10 ns
> 3 ns
> 25 ns
> 25 ns
> 20 ns
> 10 ns
> 0 ns
> 3 ns
Wert mit SUI
no Change
no Change
no Change
no Change
no Change
no Change
> 40 ns
> 40 ns
no Change
no Change
no Change
> 3 ns
Zur Beachtung:
Diese Zeiten gelten im Standard Mode der Rechnerschnittstelle bei 5 V +- 10 % Betriebsspannung.
! Bei Benutzung des Spike Unterdrückungs-Interfaces gelten die Werte der rechten Spalte.
! Bei Verwendung geringer Betriebspannungen für den Core werden die angegebenen Werte größer.
Bei Multiplikation aller Werte mit dem Faktor 2,5 kann jede Betriebsspannung zwischen 2.7 V und
5.5 V verwendet werden.
Im Unterabschnitt 2.2 (Einstell- und Werteregister) sind alle beschreibbaren Register mit
zugehörigem Inhalt angegeben. Die Timings der Schnittstelle gelten für das Schreiben aller Einstellund Werteregister und das Sonderregister INIT (Adresse 11).
2.10.2 Timing - Lesen aus dem GP1
Für das Lesen aus dem GP1 gelten die gleichen Grundvoraussetzungen wir für das Schreiben. Auch
hier gilt es die Fälle zu unterscheiden, die in den nachfolgenden Diagrammen dargestellt sind.
Abbildung 17:
17 : mit ALE und gemeinsamem Daten Address Bus
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
39
TDC-GP1
2.11 Sonstige Funktionen des GP1
Abbildung 18:
18 : ohne ALE und getrenntem Daten Address Bus (ALE konstant auf '1')
Es gelten folgende Zeiten
Name
Bedeutung
tv-d
th-d
tsu-csn
th-csn
tsu-adr
th-adr
tpw-wl
tpw-wh
tpw-ale
tv-adrd
tsu-ale
th-adr2
Zeit bis Daten stabil sind von negativer Flanke RDN
Hold-Time Daten zu positiver Flanke RDN
Setup-Time neg. Flanke CSN zu neg. Flanke RDN
Hold-Time pos. Flanke CSN zu pos. Flanke RDN
Setup-Time Adresse zu negativer Flanke ALE
Hold-Time Adresse zu negativer Flanke ALE
Puls-Weite des negativen RDN Pulses
Puls-Weite positive Phase RDN
Puls-Weite ALE
Setup-Time Adresse zu stabilen Daten
Setup-Time neg. Fl. ALE zu neg. Fl. RDN
Hold-Time Adresse zu positiver Flanke RDN, Fall 2
Wert ohne SUI
(default)
< 18 ns
> 2 ns
> 0 ns
> 0 ns
> 10 ns
> 3 ns
> 25 ns
> 25 ns
> 20 ns
> 20 ns
> 0 ns
> 3 ns
Wert mit SUI
< 30 ns
> 5 ns
no Change
no Change
no Change
no Change
> 40ns
> 40 ns
no Change
no Change
no Change
no Change
Zur Beachtung:
Diese Zeiten gelten im Standard Mode der Rechnerschnittstelle bei 5 V +- 10 % Betriebsspannung.
! Bei Benutzung des Spikeunterdrückungs-Interfaces gelten die Werte der rechten Spalte.
! Bei Verwendung geringer Betriebspannungen für den Core werden die angegebenen Werte größer.
Bei Multiplikation aller Werte mit dem Faktor 2,5 kann jede Betriebsspannung zwischen 2.7 V und
5.5 V verwendet werden.
2.10.3 Test der Schnittstelle
Eine Möglichkeit, die Kommunikation zwischen Microcontroller und TDC-GP1 zu testen besteht darin,
dass man in das Register 0 den Wert 0x60 schreibt. Diese Bits werden im Statusregister 2
gespiegelt. Bei korrekter Kommunikation sollte man aus dem Register 9, Bits 3 und 4 jeweils eine ‚1’
auslesen.
2.11 Sonstige Funktionen des GP1
2.11.1 Enable der Messkanäle
Jeder Kanal verfügt über einen Enable Pin (EN_STOPP1, EN_STOPP2). Über diesen Pin können die
Stopps jedes Kanals einzeln und jederzeit enabled bzw. disabled werden. Bei einer 1 sind die Stopps
der Kanäle enabled. Diese Pins betreffen nicht den Start Eingang. Ein Start wird auch dann akzeptiert,
wenn beide Stopps über diese Pins disabled sind. Es können damit per externer Hardware gezielt
einzelne Stopps aus- bzw. eingeblendet werden. Ist der Enable Eingang auf 1 werden Stopps am
entsprechenden Eingang akzeptiert. Ist der Enable Eingang auf 0 werden ankommende Stopps
ignoriert, die Messeinheit läuft dabei weiter.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
40
TDC-GP1
2.11 Sonstige Funktionen des GP1
Achtung: Im Messbereich 2 müssen während der gesamten Messung die Enable Pins der Stopp
Eingänge (Pin 37, 42) auf HIGH liegen. Ein Ausblenden einzelner Hits ist nicht möglich.
Die Enable Eingänge haben im Messbereich 1 und Resolution Adjust Modus folgendes Timing zu den
aktiven Flanken der Stopp Eingänge
Tabelle: Setup/Hold Zeiten der Enable
Setup Time
Hold Time
min.
1.4 ns
4 ns
typ.
2.2 ns
6 ns
max.
4 ns
11 ns
d.h. im typischen Fall muss der Enable Eingang 2.2 ns vor der aktiven Flanke des betreffenden Stopps
auf 1 sein und darf frühestens 6 ns nach der aktiven Flanke wieder auf 0 gehen. Verletzungen dieser
Timings können auch zu falschen Messzeiten führen.
2.11.2 Interrupt Flag
Der GP1 verfügt am Pin 34 über einen Signalisierungs- Ausgang, den man als Interrupt Signalisierung
verwenden kann. Es stehen 2 Interrupt Quellen zur Verfügung, die auf diesen Ausgang gelegt werden
können.
! Die Signalisierung, dass mindestens eines der Ausgangsregister beschrieben ist (default VALUE
Einstellung)
! Overflow der Messeinheit (Overflow Einstellung)
Die Selektion der Interrupt Quelle wird im Einstellregister 6 Bit 7 durchgeführt. Mit der Default
Einstellung kann z.B. eine sehr schnelle Auslese durch externe Hardware organisiert werden, die mit
der positiven Flanke des Interrupt Flags gestartet wird. Bei voller Ausnutzung dieser Möglichkeit
lassen sich Messraten von ca. 4 Mio. Messungen/sec. erreichen.
2.11.3 Teilerfaktoren für die internen Takte
Aus dem am Pin 3 zugeführten Referenztakt werden 3 interne Takte abgeleitet
! der Kalibriertakt für die Messeinheit
! der Referenztakt für die PLL
! der Takt für die Ablaufsteuerung der RLC Einheit
Jeder dieser Takte kann unabhängig voneinander eingestellt werden. Es sind Teilerfaktoren bis zu 64.
Dies erlaubt die flexible Anpassung des GP1 an die jeweiligen Gegebenheiten und Aufgaben.
Die Einstellung der Teilerfaktoren erfolgt in den Registern 4 und 5. Es gelten folgende Einstellungen
für die Teilerfaktoren
SEL_CLK
Teilerfaktor
Bemerkung
0
1
1
2
2
4
3
8
4
16
5
32
6
64
bei SEL_CLK_RLC = 32
7
64
Am Referenztakteingang (Pin 3) können bis zu 100 MHz anliegen, wenn durch die internen
Teilerverhältnisse sichergestellt ist, dass keiner der 3 daraus erzeugten Take über 35 MHz liegt.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
41
TDC-GP1
2.11 Sonstige Funktionen des GP1
2.12 Sonstige Angaben
2.12.1 Empfohlene Betriebsbedingungen
Außerhalb dieser Bereiche kann eine einwandfreie Funktion der Bausteine nicht garantiert werden
Symbol
minimal
maximal
Unit
Parameter
Unit
Supply Voltage
VDD
2.7
5.5
V
Input Signal Voltage
Vi
0
VDD
V
Ambient Temperature
Ta
-40
+85
C
HI Input Voltage
VIH
0.7 * VDD
VDD
V
LOW Input Voltage
VIL
0
0.3 * VDD
V
pos. trigger Spg
Vp
0,8*VDD
V
neg. trigger Spg
Vn
0,2*VDD
V
Hysterese
Vh
1.0
V
Input Rise/Fall Time
tr, tf
0
200
ns
Input Schmitt Rise/Fall
tr, tf
0
10
ms
2.12.2 Absolut Maximum Ratings
Ein Überschreiten dieser Werte kann zur sofortigen Zerstörung des Bausteines oder zur
Beeinträchtigung der Langzeitzuverlässigkeit führen
Parameter
Parameter
Supply Voltage
Input Signal Voltage
Input Pin Current
Storage Temperature
Lead Temperature
Symbol
VDD
Vi
Tst
minimal
-0.3
-0.3
-10.0
-55
maximal
7.0
VDD+0.3V
+10.0
+125
300
Unit
V
V
mA
°C
°C for 10 sec.
2.12.3 Stromaufnahme
Es kann mit etwa folgenden Stromaufnahmen des Bausteines gerechnet werden @ 5V 25 C
! Ruhestromaufnahme
Der Baustein hat eine typische Ruhestromaufnahme von ca. 1.5 µA
! Stromaufnahme ohne Resolution Adjust
Ohne Resolution Adjust ist die Stromaufnahme streng linear von der aktiven Messzeit der
Hochgeschwindigkeitseinheit abhängig. Bei der Messung braucht diese Einheit ca. 25 mA.
Dazu zu kalkulieren ist noch der sonstige Stromverbrauch des GP1, der vor allem vom Arbeitstakt der
ALU2 erzeugt wird.
Es ist mit ca. folgenden Strömen zu rechnen
- Messeinheit ca. 20 mA im aktiven Zustand
- ALU2 ca. 5 mA bei der Berechnung
- Referenzclock Einheit ca. 90 µA/MHz
Beispiel:
1000 Messungen pro Sekunde über 1 µs Messzeit Messbereich1 jeweils Kalibrieren und
Multiplizieren, 10 MHz Referenztakt.
Es ergeben sich somit:
Stromaufnahme der Messeinheit: Die Messeinheit ist 1ms/sec aktiv # 20 µA
Stromaufnahme Referenzclock: bei 10 Mhz # 10 * 90 µA = 0,9 mA
Stromaufnahme ALU: Bei 1000 Berechnungen/sec und 4 µs pro Berechnung = 40 ms aktive Zeit #
5 mA * 0,04 = 200 µA
Der GP1 wird in diesem Modus ca. 1,2 mA Stromaufnahme haben.
! Stromaufnahme mit Resolution Adjust
Mit Resolution Adjust bleiben die Stromaufnahmen vom Referenzclock und der ALU2 erhalten. Die
Stromaufnahme des Messkreises und zusätzlich der PLL steigt jedoch auf ca. 25 mA an und dominiert
damit praktisch die gesamte Stromaufnahme. Zu beachten ist noch, dass die Stromaufnahme etwa
linear mit der Core Spannung sinkt, so dass je nach eingestellter Auflösung auch eine andere
Stromaufnahme einstellt.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
42
TDC-GP1
2.11 Sonstige Funktionen des GP1
2.12.4
Gehäusemaßzeichnung
Passende Sockel:
Yamaichi
IC51-467.KS-11787
IC149-044-*52-55
2.12.5 Pinbelegung
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
43
TDC-GP1
2.11 Sonstige Funktionen des GP1
2.12.6 I/O Buffer Typ
Folgende Buffertypen wurden für die entsprechenden I/O Signale verwendet
Namen
Direktion
Buffertyp
RLC_P1 ... RLC_P4, CHARGE
OUTPUT
16 mA CMOS Tri State
SENSE
INPUT
CMOS Schmitt-Trigger
STOPP1, STOPP2, EN_STOPP1, EN_STOPP2
INPUT
CMOS
START, WRN, RDN, CSN, ALE, ADR0-3
RST_N, CLK_REF
PHASE
OUTPUT
4 mA CMOS
INTFLAG
OUTPUT
8 mA CMOS Slew Rate controlled
DATA 0 .. DATA 7
BIDIR
8 mA CMOS Slew Rate controlled
Unbedingt beachten:
Keiner der Input Buffer und I/O Buffer hat einen internen Pull Up oder Pull Down. Es müssen daher
alle Input Signale beschaltet werden, und der Datenbus darf nicht längere Zeit floaten. Es besteht
ansonsten die Gefahr, dass diese Buffer oszillieren, dadurch die Stromaufnahme stark ansteigt und
keine Funktion des GP1 mehr gegeben ist.
2.12.7 Auslegung der Spannungsversorgung
Der TDC-GP1 ist zwar ein voll digitaler Baustein ohne analoge Komponenten, da er jedoch auf die
'analoge' Größe Durchlaufzeit für seine Funktion zurückgreift, gehen analoge Größen wie z.B. die
Versorgungsspannung auf seine Messqualität ein. Die gute Auslegung seiner Betriebsspannung ist für
gute Messergebnisse von besonderer Bedeutung. Bei einer Messung steigt sein Strom von praktisch
0 innerhalb weniger Nanosekunden auf ca. 25 mA an. Dieser kurzfristige Stromanstieg kann durch
Spannungsregler
nicht
ausgeglichen
werden.
Eine
hochkapazitive
und
induktionsarme
Spannungsversorgung ist notwendig. Vor allem die Größe der Blockkapazitäten muss an die maximale
Messzeit in der Anwendung angepasst werden. Die maximale Messzeit ist dabei die Summe aller
Einzelzeiten einer Messung.
Als guter Richtwert hat sich eine Größe von 30 µF Blockkapazität pro 1 µs Messzeit ergeben.
Beispiel: Es wird in einer Applikation im Messbereich 2 mit 2 MHz Vorteiler gearbeitet. Die absolute
Länge der Zeitdifferenz ist im Messbereich 2 nicht wichtig. Zählt man alle Laufzeiten der
Hochgeschwindigkeitsmesseinheit inkl. Kalibration zusammen kommt man auf 4 Kalibriertaktperioden
= 2 µs. Es ergibt sich damit eine erforderliche Blockkapazität von 60 µF.
Es empfiehlt sich weiterhin, diese Kapazität auf mehrere (z.B. 3*22µF) Kapazitäten mit möglichst
geringer Eigeninduktivität und geringem seriellen Widerstand zu verteilen. Die Verwendung
zusätzlicher Keramikkondensatoren (z.B. 100 nF) ist zwar sicherlich kein Fehler, es wurden jedoch
keine nennenswerten Effekte dadurch festgestellt. Es ist zusätzlich auf eine induktionsarme Verlegung
der Spannungszuführungen auf der Platine zu achten. Multilayer Platinen mit Volllagen Vcc und GND
haben sich gut bewährt, allerdings ist auch eine sorgfältige Auslegung auf einer 2-Lagen Platine
ausreichend.
2.12.8 MIN/MAX Timings
Die Timings des Bausteins, und dazu gehört auch die Auflösung, unterliegen 3 verschiedenen
Änderungsparametern
! Prozesstoleranzen
! Spannungsschwankungen
! Temperaturschwankungen
Die resultierenden Timings ergeben sich aus
Tpd = T (typ.) * K * K * K
pd
p
v
T
Kp = Prozesskoeffizient
Kv = Spannungskoeffizient
KT = Temperaturkoeffizient
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
44
TDC-GP1
2.11 Sonstige Funktionen des GP1
Für den Prozesskoeffizient gilt folgende Tabelle
Tabelle: Kp
Prozessbedingu
ng
Best-Case
Typical
Worst-Case
Wert
0,61
1.0
1.4
Für die Spannung gilt folgende Tabelle
Tabelle: Kv
VDD
Kv
5.5 V
0.94
5.0 V
1.00
4.5V
1.07
3.3 V
1.39
3.0 V
1.54
2.7 V
1.74
Für die Temperatur gilt folgende Tabelle
Tabelle: Kt
Temp
Kt
125 C 1.26
85 C
1.15
70 C
1.11
25 C
1.00
-25 C
0.87
-40 C
0.82
-55 C
0.79
Unter Berücksichtigung aller Parameter ergeben sich folgende mögliche Auflösungen für den
TDC-GP1
Best-Case
Typical
Worst-Case
(-40 C, 5.5 V, Best-Case Prozess):
( 25 C, 5 V , typical Prozess):
( 85 C, 4,5 V, Worst-Case Prozess):
120 ps
220 ps *
380 ps
* Die in diesem Datenbuch als typisch angegebene Auflösung von 250 ps ergibt sich aus der über
mehrere Produktionschargen ermittelten mittleren Auflösung und nicht aus den sich aus den
Prozessparametern ergebenden typischen Werten.
Mit Hilfe obiger Tabellen kann man nun für den vorgesehenen Betriebsfall die zu erwartenden
Auflösungen bzw. die im Resolution Adjust Betrieb möglichen Auflösungen berechnen.
Beispiel: Resolution Adjust Betrieb; die Core Spannung soll bei 25°C bei 4 V liegen um die Auflösung
über den vollen Temperaturbereich konstant halten zu können. Mit folgendem Auflösungsbereich muss
über alle möglichen Produktionschargen kalkuliert werden.
Best-Case: Tpd= 220ps * 0,61* 1.20 * 1,0 = 161 ps
Typical:
Tpd= 220ps * 1.0 * 1,20 * 1.0 = 264 ps
Worst-Case: Tpd= 220ps * 1.4 * 1,20 * 1.0 = 369 ps
Anmerkung: Der Kv Faktor von 1.20 bei 4 Volt wurde aus den Werten der Tabelle interpoliert
Eine solch große Toleranz über die Chargen ist zwar möglich, aber sehr unwahrscheinlich. Die
Auflösung schwankt aus der Erfahrung heraus aufgrund von Prozessschwankungen zwischen typisch 10 % und typisch + 25 %.
Bausteine einer Charge schwanken um ca. +- 5% um den chargentypischen Wert.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
45
TDC-GP1
3.1 Applikationsbeispiel 1
3. Anwendungsbeispiele
Auf den folgenden Seiten sind Applikationsbeispiele dargestellt, welche die äußere Beschaltung des
TDC-GP1 an einigen Beispielen erläutert. In diesem Abschnitt werden keine neuen Informationen
geliefert, sondern es soll das auf vorhergehenden Seiten Geschriebene vertieft werden.
3.1 Applikationsbeispiel 1
In diesem einfachen Anwendungsbeispiel wurde von Folgendem ausgegangen
! µP Schnittstelle mit gemeinsamem Daten/Address Bus
! keine RLC-Messung
! kein Resolution Adjust
Prinzipschaltbild: Applikation Note 1
Abbildung 19:
19 : Prinzipschaltbild: Anwendung 1
Weitere Anmerkungen:
! Ohne Resolution Adjust können die Vcc und GND Pins von Core und I/O Buffer jeweils
zusammengelegt werden.
! Der Baustein kann mit 2,7 V ... 5,5 V betrieben werden
! Wenn die RLC Einheit nicht benutzt wird, muss Sense (Pin 7) auf Vcc gelegt werden
! RST_N (low aktiv) kann auch direkt auf Vcc gelegt werden. Power on Reset über Software
auslösbar.
! hier nicht beschaltete Pins können offen gelassen werden
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
46
TDC-GP1
3.2 Applikationsbeispiel 2
3.2 Applikationsbeispiel 2
In diesem einfachen Anwendungsbeispiel wurde von Folgendem ausgegangen
! µP Schnittstelle mit getrenntem Daten/Address Bus
! keine RLC-Messung
! Resolution Adjust Modus
Abbildung 20:
20 : Prinzipschaltung Anwendung 2
Weitere Anmerkungen:
!
!
!
!
!
!
Im Resolution Adjust Modus müssen die Vcc von Core und I/O getrennt werden.
detaillierte externe Beschaltung für Resolution Adjust in 2.6.2 (Seite 24)
Start Eingang (Pin 36) ohne Funktion; muss auf Ground
Der Baustein kann mit der Core Spannung von 2,7 V ... 5,5 V betrieben werden
Wenn die RLC Einheit nicht benutzt wird, muss Sense (Pin 7) auf Vcc gelegt werden
hier nicht beschaltete Pins können offen gelassen werden
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
47
TDC-GP1
3.3 Einzelmessung im Messbereich 2
3.3 Einzelmessung im Messbereich 2
Die folgende C-Routine zeigt, wie der TDC-GP1 typischerweise für eine Messung im Messbereich 2
angesprochen wird:
Konfiguration:
output_byte(Reg7,0x00);
output_byte(Reg11,0x07);
output_byte(Reg0,0x78);
output_byte(Reg2,0x21);
output_byte(Reg4,0xC0);
output_byte(Reg7,0x02);
Kommentar:
Disable of Stopp inputs
Init TDC and ALU
Measurement range 2
autocalibration + multiplication
FC1-FC2 -> Stopp1 Chan.1 – Start
SEL_CLK_TDC = 6
Range = 2^16*50ns*64 = 209ms
enable 2 hits on channel 1
Messung:
while(!quit)
{
output_byte(Reg11,0x07);
valid = 0;
while(valid==0)
{
valid=input(INTFLAG);
}
nk0=input_byte(Reg0);
nk1=input_byte(Reg0);
vk0=input_byte(Reg0);
vk1=input_byte(Reg0);
vk1=vk1*256;
vk1=vk1|vk0
nk1=nk1*256;
nk1=nk1|nk0
}
Init TDC and ALU
Check Interrupt Flag
Lower byte
Higher byte
Lower byte
Higher byte
xxxx.xxXX
xxxx.XXxx
xxXX.xxxx
XXxx.xxxx
shift left
XXXX.xxxx
shift left
xxxx.XXXX
result = 50.0*((float)(vk1)+(float)(nk1)/65536.0);
20MHz reference clock -> 50ns
printf("result=%6.3fns\n",result);
Print result
end while
3.4 Multihit: Auslesen mehrerer Hits
Schreibt man Software für eine Multihit-Anwendung, dann sollte man folgendes beachten:
Sobald eine Messung abgeschlossen ist beginnt die ALU mit dem Bearbeiten der
Berechnungsvorschrift, die im Register 2 vorgegeben ist. Das Ergebnis wird in das Ausgangsregister
geschrieben.
Sobald ein neuer Wert in das Register 2 geschrieben wird, beginnt die ALU automatisch mit der
Bearbeitung der neuen Rechenvorschrift. Das Ergebnis wird in das folgende Ausgangsregister
geschrieben.
Der zeitliche Ablauf könnte also wie folgt aussehen:
Enable 3 hits on channel1
Reg2: 0x01 Hit 1 - Start
Init TDC
Check INT_FLAG (wait until the measurement is finished)
Reg2: 0x02 Hit 2 - Start
Wait for 3us (time, the ALU needs for calculation)
Reg2: 0x03 Hit 3 - Start
Wait for 3us (time, the ALU needs for calculation)
Set address pointer to zero
With calibrated values read 12 times
(4 Bytes each value, the Addresses are automatically incremented)
Weitere Informationen finden Sie im ATMD-Manual.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
48
TDC-GP1
4.1 Was bedeuten Auflösung und Genauigkeit ?
4. Messergebnisse und Diagramme
Die folgenden Seiten zeigen was der GP1 eigentlich wirklich kann. Wo die Möglichkeiten und die
Grenzen bzgl. seiner Messgenauigkeit und anderer wichtiger Parameter liegen. Alle hier gezeigten
Ergebnisse wurden an den Prototypen des GP1 mit dem ATMD Messsystem evaluiert.
4.1 Was bedeuten Auflösung und Genauigkeit ?
Zuallererst wollen wir hier einige Anmerkungen zu obiger Frage machen, und (zumindest für diesen
Abschnitt) definieren. Wenn wir bei TDCs von Auflösung sprechen, dann meinen wir damit, in Analogie
zu Analog-Digital-Convertern, die kleinste digitale Quantisierungsstufe, also ein LSB. Die Genauigkeit
einer Messung wird durch verschiedene Parameter charakterisiert, deren Summe bzw. Überlagerung
Einschränkungen zum idealen Wandler darstellen.
Im Einzelnen unterscheiden wir hier:
4.1.1 Standardabweichung
Die Standardabweichung ist der mittlere quadratische Fehler über eine Reihe von Messergebnissen
zum arithmetischen Mittelwert dieser Messergebnisse. Sie ist damit ein gutes Maß für das 'Rauschen'
der Messergebnisse verursacht durch Quantisierungseffekte oder andere zufällig verteilte
Ungenauigkeitsquellen. Ist obige Annahme der Zufälligkeit erfüllt, lässt sich durch Mittelung von
Ergebnissen die Standardabweichung mit der Wurzel der Mittelungsraten verbessern.
Hat man beispielsweise die Möglichkeit, über 100 Messungen zu mitteln und dann den Mittelwert als
eigentlichen Messwert zu nehmen, wird die Standardabweichung dieses Mittelwertes etwa 1/10
(Wurzel aus 100) der Standardabweichung eines Einzelwertes betragen.
4.1.2 Systematische Fehler
Systematische Fehler sind Fehler, die an der gleichen Stelle der Kennlinie immer im gleichen Betrag
und Richtung auftreten. Man wird also, wenn man die gleiche Zeitdifferenz misst, immer den gleichen
Fehler vom wahren Wert haben. Systematische Fehler sind also nicht zufällig um das Messergebnis
verteilt. Sie sind deshalb auch nicht durch Mittelwertbildung zu beseitigen sondern nur klarer
herauszuarbeiten. Durch diesen Charakter sind sie im Allgemeinen die 'unangenehmeren' Fehler, die
nur sehr schwer zu beseitigen sind.
4.1.2 Offsetfehler
Der Offsetfehler ist ein über den gesamten Messbereich konstanter Fehlerwert, der zum Messwert
addiert/subtrahiert wird. Offsetfehler zählen somit zu den systematischen Fehlern werden dennoch
hier getrennt behandelt.
4.2 Standardabweichungen des TDC-GP1
Die erreichbaren Werte für die Standardabweichung sind vom verwendeten Messmodus abhängig.
Sie können mit folgenden Standardabweichungen der Messergebnisse in folgenden Modi kalkulieren.
! Messbereich 1 ohne Resolution Adjust normale Auflösung: ca. 0,5 - 0,6 LSBs
! Messbereich 1 ohne Resolution Adjust high Resolution:
ca. 0,6 - 0,7 LSBs
! Messbereich 2 ohne Resolution Adjust normale Auflösung: ca. 0,7 - 0,8 LSBs
! Messbereich 2 ohne Resolution Adjust high Resolution:
ca. 0,8 - 0,9 LSBs
! Messbereich 1 mit Resolution Adjust normale Auflösung: ca. 0,7 - 0,8 LSBs
! Messbereich 1 mit Resolution Adjust high Resolution:
ca. 0,8 - 0,9 LSBs
Unbedingt beachten:
Diese Werte sind durch Mittelwertbildung wie oben beschrieben noch deutlich zu verbessern.
Wird ohne Resolution Adjust gearbeitet, muss bei Mittelwertbildung die gemessene Zeitdifferenz von
sich aus einen Jitter von mehreren LSBs aufweisen. Ist dies nicht der Fall, kann man durch die Auto
Noise Einheit 'nachhelfen'. Mit dieser Maßnahme kann eine Verbesserung um ca. den Faktor 5-10
erreicht werden, dann machen sich systematische Effekte vom Auto Noise bemerkbar, und verhindern
eine weiteres steigern der Messgenauigkeit.
Mit Resolution Adjust hat man optimale stochastische Vorraussetzungen. Hier kann man durch
Mittelwertbildung die Genauigkeit des Ergebnisses bis in den Femtosekundenbereich hinein steigern,
ohne sich zusätzliche Fehler dabei einzuhandeln. Auch braucht die gemessene Zeitdifferenz kein
Eigenrauschen zu besitzen, der GP1 sorgt von sich aus in diesem Modus für die notwendige Statistik
bei der Messung.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
49
TDC-GP1
4.3 Offsetfehler des GP1
4.3 Offsetfehler des GP1
Auch beim Offsetfehler des GP1 ist genau zwischen den Messmodi zu unterscheiden. Es ist mit
folgenden Restoffsets bei folgenden Modi und Betriebsarten zu rechnen.
! Messbereich 1 ohne Resolution Adjust normale Auflösung: < 1,2 LSB
! Messbereich 1 ohne Resolution Adjust high Resolution:
< 2,0 LSB
! Messbereich 2 ohne Resolution Adjust normale Auflösung: < 0,5 LSB
! Messbereich 2 ohne Resolution Adjust high Resolution:
< 0,8 LSB
! Messbereich 1 mit Resolution Adjust normale Auflösung: < 0,3 LSB
! Messbereich 1 mit Resolution Adjust high Resolution:
< 0,1 LSB
Zu beachten ist auch hier ein prinzipieller Unterschied zwischen Betrieb mit und ohne Resolution
Adjust. Ohne Resolution Adjust ist der Offset temperaturabhängig und wird letztendlich von den
Kalibriervorgängen innerhalb der oben angegebenen Bereiche gehalten. Mit Resolution Adjust ist der
Offset durch die Schaltungsanordnung stabilisiert und ist deutlich weniger anfällig gegen
Temperaturschwankungen. In diesem Modus beträgt die Temperaturdrift ohne High Resolution noch
ca. 0.1 LSB über den gesamten Temperaturbereich und mit High resolution sogar nur noch ca. 0.03
LSB. Der Offset ist dann also praktisch von der Temperatur unabhängig !!!!
4.4 Systematische Fehler des GP1
Abbildung
Abbi ldung 21:
21 : Genauigkeit TDCTDC - GP1, AV 10.000 Dat.: 10.5.97
0,25
0,24
Error GP1 / ns
0,23
0,22
0,21
Reihe1
0,2
0,19
0,18
0,17
0,16
195,4551
190,42137
185,39577
180,40298
175,41056
170,39779
165,41228
160,42126
155,36739
150,42376
145,43062
140,37081
135,4293
130,39672
125,38159
120,44567
115,40721
110,40566
105,4324
100,40153
0,15
Time / ns
Obiges Diagramm zeigt die gemessene Abweichung des GP1 zu einem Referenzgerät im Zeitbereich
von 100 ns - 200 ns. Der GP1 wurde mit Resolution Adjust und normaler Auflösung betrieben. Um
systematische Fehler überhaupt erkennen zu können, muss mit hohen Mittelungsraten gearbeitet
werden, um diese Fehler aus dem Quantisierungsrauschen herauszufiltern. Es wurde eine
Mittelungsrate von 10.000 gewählt. Bitte die Teilung der Y-Achse von 10ps/div beachten. Der
absolute Offset von ca. 190 ps ist nicht weiter von Belang, da dieser von leicht unterschiedlichen
Leitungslängen, Schaltschwellen u.s.w. herrührt. Man erkennt hier systematische Abweichungen in der
Kennlinie in der Größenordnung von ca. 10 ps Spitze-Spitze.
Nähere Untersuchungen haben allerdings eindeutig ergeben, dass selbst diese kleinen Fehler nicht
vom GP1 sondern vom Referenzgerät stammen. Wir können daher feststellen, dass der
systematische Messfehler des GP1 z.Zt. nicht exakt festgestellt werden kann, da er unterhalb des von
uns messbaren liegt. Er ist auf jeden Fall deutlich kleiner als 10 ps. Es macht also bei GP1 Sinn, bei
Bedarf und Möglichkeit durch hohe Mittelungsraten das Ergebnis entsprechend zu verbessern, ohne
durch die systematischen Fehler ins Limit zu laufen und sich ggf. selbst zu belügen.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
50
TDC-GP1
4.5 Histogramme
4.5 Histogramme
Für einige Anwendungen in Forschung und Industrie wird der GP1 zur Histogrammbildung eingesetzt,
so dass hier vor allem Fragen nach der Homogenität (differentielle Nichtlinearität) der Kennlinie zu
stellen sind. Auch im Falle der Histogrammbildung bzw. bei allen anderen Anwendungen, wo es auf
minimale differentielle Nichtlinearität ankommt, ist es absolut zu empfehlen den Resolution Adjust
Modus zu verwenden. Hier wird man die besseren Ergebnisse erzielen.
Bild 1 zeigt das Histogramm bei normaler Auflösung im Resolution Adjust Modus. Hier sieht man
deutlich die Periodizität der Breite der einzelnen LSBs. Auf ein breites LSB folgt ein schmales und
umgekehrt. Man sieht auch weitere periodische Abweichungen, die sich alle 30 LSBs wiederholen. Die
differentielle Nichtlinearität beträgt in diesem Modus ca. 50 %.
Abbildung 22
Histogramm, normres, resoadj, Dat.: 7.5.97
350
300
Width/ps
250
200
Reihe1
150
100
50
583
576
569
562
555
548
541
534
527
520
513
506
499
492
485
478
471
464
457
450
443
436
429
422
415
408
0
# LSB
Ist man auf eine sehr gute differentielle Nichtlinearität angewiesen, kann man den Half Resolution
Modus mit Resolution Adjust verwenden. Dieser fasst dann jeweils 2 LSB schon im GP1 zusammen.
Der Modus ist über die Einstellregister selektierbar.
Das Ergebnis ist in Abbildung 23 dargestellt. Die differentielle Nichtlinearität ist auf ca. 2 % gesunken.
Erkauft hat man sich dies durch die Verdoppelung der Auflösung, in diesem Fall auf 485 ps. Allerdings
dürfte jetzt die Qualität des Histogramms fast keine Wünsche mehr offen lassen.
Der Half Resolution Modus kann mit dem High Resolution Modus verknüpft werden. Somit erhält man
einen TDC, der bei einer Auflösung von typ. 250ps eine vergleichbar gute differentielle Nichtlinearität
bietet. Abbildung 24 zeigt die Messergebnisse für den Resolution Adjust Modus. Mit dieser
Kombination steht allerdings nur ein Messkanal zur Verfügung.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
51
TDC-GP1
4.5 Histogramme
Abbildung 23:
23 : Histogramm, halfres, resadj.
re sadj.
500
450
400
Width/ps
350
300
250
200
150
100
50
483
486
489
2
4
495
480
0
492
477
8
474
6
471
468
465
462
459
456
453
450
447
444
441
438
435
432
429
426
423
420
417
414
411
0
LSB
Abbildung 24:
24 : Histogram, half+high res, resoadj.
350
300
200
150
100
50
79
79
79
78
78
4
78
2
78
0
78
8
77
6
77
4
2
77
77
0
8
77
6
76
4
76
2
76
76
0
76
8
75
6
75
4
75
2
75
0
75
8
74
6
4
74
74
2
0
74
Width/ps
250
LSB
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
52
TDC-GP1
5.1 Kalibrierwertgenerierung
5. Bekannte Probleme und deren Lösung
5.1 Kalibrierwertgenerierung
Betrifft:
- separate Kalibrierung über Einstellregister 0 Bit 7
- automatische Kalibrierung über Einstellregister 0 Bit 3
Auswirkung:
Kommt nach einer Kalibration des Bausteines ein weiterer Start auf den Baustein ohne das vorher ein
Init des TDC Messkreises (Adresse 11 Bit 0) gegeben wurde, so startet der Messkreis erneut. Evtl.
darauf folgende Stopps sind nicht mehr durch Timeout oder Hit Enable (Einstellregister 7 ) limitiert.
Kommen genügend Stopps, werden auch die Kalibrierwertregister überschrieben.
Der Fall tritt nur auf wenn ein weiterer Start kommt. Kommen nach einer Kalibration nur weitere
Stopps, werden diese ignoriert.
Dieses Problem betrifft nicht den Resolution Adjust Modus.
Beispiel:
Ein typischer Fall, wo dies in der Regel zu erheblichen Problemen führt, ist das Ausmessen einer
Frequenz durch den TDC-GP1. Hier gibt man den auszumessenden Takt sinnvoller Weise gleichzeitig
auf Start und Stopp Input. Führt man nun eine separate Kalibration aus oder hat man Auto Kalibration
eingestellt, kommen bei einem kontinuierlich laufenden Takt nach der Kalibration weitere Starts und
Stopps auf den Messkreis, welche die richtigen Messwerte in den Werteregistern überschreiben.
Lösung des Problems:
Liegt obiger Fall des nicht steuerbaren Starts vor, sollte auf Autokalibration verzichtet werden.
Eine sichere separate Kalibration führt man folgender Weise aus.
1. Hit Enables in Einstellregister 7 auf 0 stellen
2. Separate Kalibrierung im Einstellregister 0 auslösen
3. nach dem Ende der Kalibrierung Init TDC über Adresse 11 auslösen
4. Hit Enables in Einstellregister 7 auf die gewünschte Anzahl einstellen
Programmbeispiel in Borland C aus den Applikationsprogrammen des ATMD
// secure calibration of the TDC-GP1
outport(adr_cntrl2,7);
// disable Hits
outport(adr_tdc,0x00);
outport(adr_cntrl2,11);
// init TDC
outport(adr_tdc,0x01);
outport(adr_cntrl2,0);
// selecting separate calibration bit
outport(adr_tdc,0x80):
outport(adr_cntrl2,7);
// enable Hits
outport(adr_tdc,0x09); // minimum 1 in each channel; now the separate calibration is done
// end of calibration
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
53
TDC-GP1
5.2
Fehler der ALU
5.2 Fehler der ALU Berechnung
Resolution Adjust Mode
Betrifft:
Half Resolution im Resolution Adjust Modus
High Resolution im Resolution Adjust Modus
Half Resolution mit High Resolution im Resolution Adjust Modus
Betrifft nicht normale Auflösung im Resolution Adjust Modus
Auswirkung:
Wird im Resolution Adjust Modus das Half Resolution oder das High Resolution Bit gesetzt
(Einstellregister 7 Bit 7 oder Einstellregister 1 Bit 6) kommt es zu Fehlern in der ALU.
Dieser Fehler betrifft bei Half Resolution nur negative Zeiten.
Half Resolution:
Der Fehler wirkt sich dadurch aus, dass das Ergebnis um 15.360 LSBs zu groß ist. Nur wenige
Ergebnisse sind falsch. Der Fehler kann dadurch erkannt werden, dass in diesem Modus keine
Ergebnisse größer 7.680 vorkommen können. Die falschen Ergebnisse liegen alle im Bereich von
7.680 bis 15.360. Der Fehler kommt mit einer Wahrscheinlichkeit von ca. 0.03 % vor.
Beispiel:
Ausgelesener Wert: 6.500 # Ergebnis korrekt
Ausgelesener Wert: -3.000 # Ergebnis korrekt
Ausgelesener Wert: 8.500 # Ergebnis falsch; korrekt: 8.500-15.360 = - 6.860
High Resolution:
Der Fehler wirkt sich dadurch aus, dass das Ergebnis um 15.360 LSBs zu klein oder zu groß ist. Nur
wenige Ergebnisse sind falsch. Dementsprechend müssen 15.360 LSB addiert oder subtrahiert
werden. Der Fehler kommt mit einer Wahrscheinlichkeit von ca. 0.03 % vor.
Beispiel:
Ausgelesener Wert: 6.500 # Ergebnis korrekt
Ausgelesener Wert: -1.000 # Ergebnis falsch; korrekt: -1.000+15.360 = 14.360
High Resolution mit Half Resolution:
Der Fehler wirkt sich dadurch aus, dass das Ergebnis um 7.680 LSBs zu groß ist. Nur wenige
Ergebnisse sind falsch. Der Fehler kann dadurch erkannt werden, dass in diesem Modus keine
Ergebnisse größer 7.680 vorkommen können. Die falschen Ergebnisse liegen alle im Bereich von
7.680 bis 15.360. Der Fehler kommt mit einer Wahrscheinlichkeit von ca. 0.03 % vor.
Beispiel:
Ausgelesener Wert: 6.500 # Ergebnis korrekt
Ausgelesener Wert: 8.500 # Ergebnis falsch; korrektes Ergebnis: 8.500-7.680 = 820
Lösung des Problems:
Ergebnisse auf Einhaltung obiger Wertebereiche überprüfen und ggf. nach obigen Vorschriften
korrii gieren.
korr
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
54
TDC-GP1
5.3 Retrigger
5.3 Retrigger
Kommt im Retrigger-Mode nach einem Stoppimpuls ein weiterer Startimpuls (Nr. 2), so wird dieser
korrekterweise nicht berücksichtigt. Kommt nach diesem Startimpuls Nr. 2 ein Stoppimpuls, so
bewirkt dieser, dass ein weiterer Startimpuls (Nr. 3) zwar ebenfalls nicht berücksichtigt wird, dass
aber die Statusregister zurückgesetzt werden.
Der Fehler kann extern durch eine Schaltung behoben werden, die nach dem Eintreffen eines
Stoppimpulses den Start-Eingang bis zum nächsten TDC-INIT abschaltet.
Abbildung 25:
25 : Externe Schaltung bei Retrigger mit Multihit
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
55
TDC-GP1
Kontakt
6 Letzte Änderungen
Okt-2000: Kapitel 5.1 Sichere Kalibration
Feb-2001: Kapitel 2.4.4, 2.11.1 Kein Hit-Disable im MB2
Dez-2003: Kapitel 2.4.3, 2.5.4 und 2.10.3
Kontakt
Hauptsitz:
Repräsentanten:
acam-messelectronic gmbh
Am Hasenbiel 27
D - 76297 Stutensee-Blankenloch
Ph: +49-7244-7419-0
Fax: +49-7244-7419-29
email: [email protected]
www.acam.de
$
USA
Transducers Direct, LCC
1120 Cottonwood Dr
Loveland, Ohio 45140
Ph: 513-583-9491
Fax: 513-583-9476
email:
[email protected]
www.transducersdirect.com
$
Israel
ArazimLtd.
4 Hamelacha St. Lod
P.O.Box 4011
Lod 71110
Ph: 972-8-9230555
Fax: 972-8-9230044
email: [email protected]
www.arazim.co.il
$
Schweiz
Computer Controls AG
Neunbrunnenstr. 55
8050 Zürich
Tel.: +41-1-308 6666
Fax: +41-1-308 6655
email: [email protected]
www.ccontrols.ch
Distributoren:
$ France
microel (CATS S.A.)
Immeuble "Oslo" - Les Fjords
19, avenue de Norvège
Z.A. de Courtaboeuf - BP 3
91941 LES ULIS Cedex
Tél. : +33 1 69 07 08 24
Fax : +33 1 69 07 17 23
[email protected]
www.microel.fr
$
Italy
ESCO ITALIANA S.p.A.
Via G.B. Stucchi, 66/28
20052 Monza (MI)
Ph. : (+39) 039/20481
Fax : (+39) 039/2048234
email : [email protected]
www.escoitaliana.it
$
P.R. China
Broadtechs Technology Co. Ltd.
38-6-401 Xiang Hua Qiao Road,
Chang Ning District
Shanghai, 200052
Ph.: +86-21-62837389
Fax: +86-21-62830657
email : [email protected]
www.broadtechs.com
Die hier präsentierten Informationen sind nach bestem Wissen korrekt. Die acam-messelctronic gmbh übernimmt jedoch
keine Verantwortung für Fehler oder Auslassungen. Die acam-messelectronic übernimmt keine Verantwortung für den
Gebrauch dieser Information, dies geht allein auf Verantwortung und Risiko des Nutzers. Eventuell bestehende
Patentansprüche von anderer Seite sind hier nicht berücksichtigt.
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
56
TDC-GP1
7. Quick Reference
7.1Electrical
Characteristics
Recommended Operating conditions
Parameter
Symbol
min.
Supply Voltage
Vcc-IO
2.7
Vcc-core
2.7
Input Signal Voltage
Vi
0
Ambient Temperature
Ta
-40
HI Input Voltage
VIH
0.7 * Vcc-IO
LOW Input Voltage
VIL
0
pos. trigger Spg
Vp
neg. trigger Spg
Vn
0,2* Vcc-IO
Hysteresis
Vh
1.0
Input Rise/Fall Time
tr, tf
0
Input Schmitt Rise/Fall
tr, tf
0
Absolute Maximum Ratings
Parameter
Symbol
min.
Supply Voltage
Vcc-IO
-0.3
Input Signal Voltage
Vi
-0.3
Input Pin Current
-10.0
Storage Temperature
Tst
-55
Lead Temperature
max.
5.5
Vcc-IO+0,3
VDD
+85
Vcc-IO
0.3 * Vcc-IO
0,8* Vcc-IO
200
10
Unit
V
V
V
C
V
V
V
V
V
ns
ms
max.
7.0
Vcc-IO+0.3V
+10.0
+125
300 (10s)
Unit
V
V
mA
C
C
Integral non-linearity
Differential non-linearity
MB1, normal resolution
MB1, high + half resolution
Resolution adjust, normal res.
Resolution adjust, normal res.
INIT TDC
INIT ALU
Power On Reset
Symbol
RST_N
TEST
CLK_REF
CHARGE
VCC_CORE
GND_CORE
SENSE
RLC_P4
RLC_P3
RLC_P2
RLC_P1
GND_IO
DATA0- DATA3
VCC_IO
GND_IO
DATA4-DATA7
ADR0-ADR3
GND_Core
VCC_CORE
ALE
RDN
WRN
CSN
Phase
INTFLAG
VCC_IO
START
EN_STOPP2
STOPP2
VCC_IO
GND_IO
STOPP1
EN_STOPP1
GND_Core
VCC_Core
Start
typ.
250
Max.
308
0.6
0.7
0.8
0.9
0.9
0.9
t2
t3
t5
Measurement range 1, normal resolution:
Timings (@ 25°C, 5V):
t1
Minimum time difference
t2
Double pulse resolution one channel
t3
Double pulse resolution between 2 channels
t4
Maximum time interval (30,720*Resolution)
t5
Minimum pulse width
Number of channels
Number of hits per channel
start available
min.
typ.
3ns
15ns
0ns
7.6us
2.5ns
Max.
4.2ns
21ns
4ns
2
4
yes
Measurement range 1, high resolution:
Timings (@ 25°C, 5V):
t1
Minimum time difference
t2
Double pulse resolution one channel
t4
Maximum time interval (15,360*Resolution)
t5
Minimum pulse width
Number of channels
Number of hits per channel
Start available
1
4
yes
Measurement range 2, normal resolution:
Timings (@ 25°C, 5V):
t1
Minimum time difference
t2
Double pulse resolution one channel
t4
Maximum time difference
t5
Minimum pulse width
Number of channels
Number of hits per channel
Start available
min.
typ.
max.
1.5*CAL_CLK+25ns
1.5*CAL_CLK+25ns
2^16*CAL_CLK
2.5ns 4ns
1
4
yes
min.
typ.
3ns
15ns
3.8us
2.5ns
Max.
4.2ns
21ns
4ns
Measurement range 2, high resolution:
Timings (@ 25°C, 5V):
min.
typ.
max.
t1
Minimum time difference
1.5*CAL_CLK+25ns
t2
Double pulse resolution one channel
1.5*CAL_CLK+25ns
t4
Maximum time difference
2^16*CAL_CLK
t5
Minimum pulse width
2.5ns 4ns
Number of channels
1
Number of hits per channel
3
Start available
yes
CAL_CLK = Tref * SEL_CLK_TDC (control register 4)
Resolution Adjust Mode, normal resolution:
Timings (@ 25°C, 5V):
min.
typ.
max.
t2
Double pulse resolution one channel
15ns
21ns
t3
Double pulse resolution between 2 channels
0ns
t4
Maximum time interval (15,360*Resolution)
3.8us
t5
Minimum pulse width
2.5ns 4ns
Number of channels
2
Number of hits per channel
4
Start available
no
Unit
ps
LSB
LSB
LSB
LSB
LSB
LSB
1.2
2.0
0.5
0.8
0.3
0.1
42
42
70
Stop2
7.3 Timings
min.
134
.25
,03
30
30
50
Stop1
Description
Reset (low active)
Test pin, must be connected to GND
Input external reference clock
Charge pin for RLC measurements
Core supply voltage
Core Ground
Schmitt trigger input for RLC-measurements
Port 4 for RLC-measurement
Port 3 for RLC-measurement
Port 2 for RLC-measurement
Port 1 for RLC-measurement (Reference)
Ground of IO Ports
Data bus
Supply voltage IO ports
Ground IO ports
Data bus
Address bus
Core Ground
Core supply voltage
Address latch enable (high active)
Read (low active)
Write (low active)
Chip select (low active)
Phase out for regulation in res. Adj. mode
Interrupt flag (high active)
Supply voltage IO ports
Start input
enable Stopp input 2 (high active)
Stopp input 2
Supply voltage IO ports
Ground IO ports
Stopp 1 input
enable Stopp input 1 (high active)
Ground core
Supply voltage core
Timings (@ 25°C, 5V):
Resolution (LSB)
Standard deviation
MB1, normal resolution
MB1, high resolution
MB2, normal resolution
MB2, high resolution
Resolution adjust, normal res.
Resolution adjust, high resolution
Offset
MB1, normal resolution
MB1, high resolution
MB2, normal resolution
MB2, high resolution
Resolution adjust, normal res.
Resolution adjust, high res.
18
18
30
LSB
LSB
LSB
LSB
LSB
LSB
ns
ns
ns
t4
t1
7.2 Pin Description
Pin
1
2
3
4
5
6
7
8
9
10
11
12
13-16
17
18
19-22
23-26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
0
Resolution Adjust Mode, high resolution:
Timings (@ 25°C, 5V):
t2
Double pulse resolution one channel
t3
Double pulse resolution between 2 channels
t4
Maximum time interval (7.680*Resolution)
t5
Minimum pulse width
Number of channels
Number of hits per channel
Start available
min.
typ.
15ns
0ns
1.9us
2.5ns
Max.
21ns
4ns
1
4
no
LSB
LSB
LSB
LSB
LSB
LSB
acam-messelectronic gmbh - Am Hasenbiel 27 - D-76297 Stutensee-Bl. - Germany - www.acam.de
57
7.4 Registers
Write Registers
Reg isters and Addresses
Register 0
Bit Name
7
CAL
6
5
4
3
2
1
0
Address: 0
Description
initializes a separate CAL run# Update of CAL-values in
the calibration value registers
instructs the ALU to do a calibration calculation
instructs the ALU to do a multiplication
'1' switches to measurement with predivider
1= automatic calibration after measurement
selects slope sensitivity Stopp2-Input 0=rise
selects slope sensitivity Stopp1-Input 0=rise
selects slope sensitivity Start-Input 0=rise
CALIBRATE
MULTIPLICATE
MESSB2
EN_CAL_AUTO
EDGE_STP2
EDGE_STP1
EDGE_STA
Register 1
Bit Name
7
RESO_ADJ
6
HIGH_RES
5
ADJ<5>
4
ADJ<4>
3
ADJ<3>
2
ADJ<2>
1
ADJ<1>
0
ADJ<0>
Address: 1
Description (Remark: optimum value for ADJ<5:0> = 0x0d)
switches to resolution adjust mode
switches to high resolution mode
adjustment bit 5 of high resolution mode
adjustment bit 4 of high resolution mode
adjustment bit 3 of high resolution mode
adjustment bit 2 of high resolution mode
adjustment bit 1 of high resolution mode
adjustment bit 0 of high resolution mode
Register 2
Bit Name
7
HIT2_IN<3>
6
HIT2_IN<2>
5
HIT2_IN<1>
4
HIT2_IN<0>
3
HIT1_IN<3>
2
HIT1_IN<2>
1
HIT1_IN<1>
0
HIT1_IN<0>
Address: 2
Description
channel select for upper Nibble: 0= channel1, 1=channel2
hit-no. for channel selected in bit 7
hit-no. for channel selected in bit 7
hit-no. for channel selected in bit 7
channel select for lower Nibble: 0= channel1, 1=channel2
hit-no. for channel selected in bit 3
hit-no. for channel selected in bit 3
hit-no. for channel selected in bit 3
Description of nibbles in detail
HITx_IN<3> HITx_IN<2> HITx_IN<1>
0
0
0
0 or 1
0
0
0 or 1
0
1
0 or 1
0
1
0 or 1
1
0
0 or 1
1
1
0 or 1
1
1
Register 3
Bit Name
7
FAK_PLL<7>
6
...
5
...
4
...
3
...
2
...
1
...
0
FAK_PLL<0>
...
LSB adjustment of PLL
SET_PAR_PLL
SEL_CLK_PLL<2>
SEL_CLK_PLL<1>
SEL_CLK_PLL<0>
Register 5
Bit Name
7
RLC_NR<2>
6
RLC_NR<1>
5
RLC_NR<0>
4
SINGLE_EN
3
C_SEL
2
SEL_CLK_RLC<2>
1
SEL_CLK_RLC<1>
0
SEL_CLK_RLC<0>
Register 6
Bit Name
7
INT_SEL
6
QUEUING
5
RETRIG_EN
4
NOISE_EN
3
RLC_EN
2
USE_TRANS
1
SPEED<1>
0
SPEED<0>
Number of Hits
Start
1. Hit of channel 1 or 2
2. Hit of channel 1 or 2
3. Hit of channel 1 or 2
4. Hit of channel 1 or 2
Cal 1 of channel 1 or 2
Cal 2 of channel 1 or 2
Address: 3
Description
MSB adjustment of PLL
...
Register 4
Bit Name
7
SEL_CLK_TDC<2>
6
SEL_CLK_TDC<1>
5
SEL_CLK_TDC<0>
4
NEG_PH_PLL
3
2
1
0
HITx_IN<0>
0
1
0
1
0
0
1
Address: 4
Description
divider for calibration clock of TDC
...
...
Negotiation of phase outputs of PLL (has to be '1' if
the recommended circuit is used)
1=Track mode of PLL (Set Par Modus)
divider for reference clock of PLL
...
...
Address: 5
Description
sets the number of RLC-ports to be measured
or the number of the port
"
single port measure. = 1, 0= all ports 1 to n
measure capacitors = 1
clock divider for RLC-unit
"
"
Address: 6
Description
Interrupt Select (0= ALU ready, 1= Overflow)
Enable Queuing in measurement range 1
Enable retrigger mode
Noise Enable
starts RLC measurement
1= RLC-unit uses external transistor
sets frequency of BIGALU (default: lowest speed)
"
Register 7
Bit Name
7
HALF_RES
6
EN_SUI
5
EN_HIT2<2>
4
EN_HIT2<1>
3
EN_HIT2<0>
2
EN_HIT1<2>
1
EN_HIT1<1>
0
EN_HIT1<0>
Address: 7
Description
Half resolution
Enable spike suppression at RDN
number of allowed hits on channel 2 (max. 4)
"
"
number of allowed hits on channel 1 (max. 4)
"
"
Register 88-10
Register 8
Register 9
Register 10
Address:8Address:8-10
multiplication factor<7..0>
multiplication factor <15..8>
multiplication factor <23..16>
Register 11
Bit Name
7
POR.
6
POR.
5
POR.
4
POR.
3
n.c.
2
CLK_NOISE
1
INIT_BIGALU
0
INIT_TDC
Address 11:
Description
Power On Reset (1)
Power On Reset (0)
Power On Reset (1)
Power On Reset (0)
Clock for PRBS counter in auto noise unit
Init for Bigalu unit
Init for TDC unit
Read registers and
Addresses
0
1
2
3
4
5
6
7
8
9
A
Name
ERG_REG0
ERG_REG1
ERG_REG2
ERG_REG3
ERG_REG4
ERG_REG5
ERG_REG6
ERG_REG7
STAT1
STAT2
REF_PLL
No.Bits
16
16
16
16
16
16
16
16
8
8
8
Description
Result register 1
Result register 2
Result register 3
Result register 4
Result register 5
Result register 6
Result register 7
Result register 8
Status register 1
Status register 2
Reference value of the
SET_PAR run
calibrated data
after-decimal 0
pre-decimal 0
after-decimal 1
pre-decimal 1
after-decimal 2
pre-decimal 2
after-decimal 3
pre-decimal 3
PLL that is won in a
Statusregister 1
Name
Bit
7
PLL_LOCK
6
OFL
5
HIT2_TDC<2>
4
HIT2_TDC<1>
3
HIT2_TDC<0>
2
HIT1_TDC<2>
1
HIT1_TDC<1>
0
HIT1_TDC<0>
Address: 8
Description
Indicates whether PLL has locked
Overflow of measuring unit
Indicates number of present hit on channel 2
Indicates number of present hit on channel 2
Indicates number of present hit on channel 2
Indicates number of present hit on channel 1
Indicates number of present hit on channel 1
Indicates number of present hit on channel 1
Statusregister 2
Bit
Name
7
N.C.
6
N.C.
5
RLC_END
4
Multiply
3
Calibrate
2
LD_REGS<2>
1
LD_REGS<1>
0
LD_REGS<0>
Address: 9
Description
not used
not used
End of RLC-measurement
Indication of multiplication (=Bit5 of register0)
Indication of calibration (=Bit6 of register 0)
pointer position in result register
pointer position in result register
pointer position in result register
Clock/PLL divider factors
SEL_CLK_x
division by
0
1
1
2
2
4
3
8
4
16
5
32
6
64
7
64
Description
with SEL_CLK_RLC = 32

Documentos relacionados