DE69207741T2 - Timers for events in the picosecond range - Google Patents

Timers for events in the picosecond range

Info

Publication number
DE69207741T2
DE69207741T2 DE69207741T DE69207741T DE69207741T2 DE 69207741 T2 DE69207741 T2 DE 69207741T2 DE 69207741 T DE69207741 T DE 69207741T DE 69207741 T DE69207741 T DE 69207741T DE 69207741 T2 DE69207741 T2 DE 69207741T2
Authority
DE
Germany
Prior art keywords
latch
signal
event
coarse
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69207741T
Other languages
German (de)
Other versions
DE69207741D1 (en
Inventor
David C Chu
Thomas A Knotts
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agilent Technologies Inc
Original Assignee
Hewlett Packard Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Co filed Critical Hewlett Packard Co
Application granted granted Critical
Publication of DE69207741D1 publication Critical patent/DE69207741D1/en
Publication of DE69207741T2 publication Critical patent/DE69207741T2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R29/00Arrangements for measuring or indicating electric quantities not covered by groups G01R19/00 - G01R27/00
    • G01R29/02Measuring characteristics of individual pulses, e.g. deviation from pulse flatness, rise time or duration
    • G01R29/027Indicating that a pulse characteristic is either above or below a predetermined value or within or beyond a predetermined range of values
    • G01R29/0273Indicating that a pulse characteristic is either above or below a predetermined value or within or beyond a predetermined range of values the pulse characteristic being duration, i.e. width (indicating that frequency of pulses is above or below a certain limit)

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Measurement Of Unknown Time Intervals (AREA)
  • Manipulation Of Pulses (AREA)

Description

Technisches GebietTechnical area

Die Erfindung bezieht sich auf Zeitgebungsschaltungen und insbesondere auf eine Schaltung, die ein Ereignis zeitlich steuert, nämlich den Nulldurchgang eines Signals, und eine digitale Darstellung des zeitlich gesteuerten Ereignisses erzeugt.The invention relates to timing circuits and, more particularly, to a circuit that times an event, namely the zero crossing of a signal, and generates a digital representation of the timed event.

HintergrundtechnikBackground technology

Das Signal-Digitalisierungsverfahren, das in dem Frequenz- und Zeit-Analysator 5371A von Hewlett-Packard verwendet wird, ist ein Beispiel eines sehr nützlichen Typs der Signaldarstellung basierend auf einer kontinuierlichen Zählung und Abtastung ausschließlich bei Nulldurchgängen eines Signals. Mittels dieses Verfahrens ist es möglich, den Phasenfortgang des Signals direkt zu digitalisieren, wodurch jeder Bedarf nach vorher erforderlichen Schritten einer Spannungsdigitalisierung und einer Spannung-zu-Phase-Umwandlung beseitigt wird. Das Verfahren kann daher geeigneterweise als "Phasenfortgang-Digitalisierung" oder "Phasendigitalisierung" bezeichnet werden. Amplitudeninformationen werden weggeworfen.The signal digitization technique used in the Hewlett-Packard 5371A frequency and time analyzer is an example of a very useful type of signal representation based on continuous counting and sampling only at zero crossings of a signal. By means of this technique it is possible to digitize the phase progression of the signal directly, thereby eliminating any need for previously required voltage digitization and voltage-to-phase conversion steps. The technique may therefore be appropriately referred to as "phase progression digitization" or "phase digitization." Amplitude information is discarded.

Eine Phasendigitalisierung ist in Fig. 3 dargestellt, die Signalabtastorte, welche durch dunkle Punkte dargestellt sind, eines sinusförmigen Signals sich ändernder Frequenz zeigt. Die Abtastungen finden bei gelegentlichen Aufwärts- Durchgängen mit einer relativ konstanten Rate statt. Jede Abtastung erzeugt zwei ansteigende Nummern, die Gesamtzykluszahl und den Zeitstempel an diesem Punkt. Die Zykluszahl stammt von dem Lesen eines Zählers, der das Signal zählt. Jeder Zyklus wird gezählt, nicht nur diejenigen, bei denen eine Abtastung stattfindet. Wenn eine Abtastung stattfindet, steuert eine Synchronisiereinrichtung den Aufwärts-Durchgang des Zyklusses, während dem die Abtastung stattfindet, um diesen Zyklus mit einem Zeitstempel zu versehen. Dies wird durch das Lesen eines weiteren Zählers erreicht, der durchgehend einen 500 MHz-Zeitbasistakt zählt. Mit einer Interpolation wird die Auflösung von 2 ns auf 0,2 ns verbessert. Bei der Phasendigitalisierung können Abwärts-Durchgänge des Ereignissignals genauso wie die Aufwärts-Durchgänge oder als eine Alternative zu den Aufwärts-Durchgängen mit einem Zeitstempel versehen werden.A phase digitization is shown in Fig. 3, which shows signal sample locations, represented by dark dots, of a sinusoidal signal of varying frequency. The samples take place at occasional upward passes at a relatively constant rate. Each sample produces two incrementing numbers, the total cycle number and the timestamp at that point. The cycle number comes from reading a counter that counts the signal. Every cycle is counted, not just those where a sample occurs. When a sample occurs, a synchronizer controls the up-pass of the cycle during which sampling takes place to time-stamp that cycle. This is achieved by reading another counter that continuously counts a 500 MHz time base clock. With interpolation, the resolution is improved from 2 ns to 0.2 ns. With phase digitization, down-passes of the event signal can be time-stamped in the same way as the up-passes or as an alternative to the up-passes.

Die bekannte Interpolationstechnik basiert auf der Verzögerungsausbreitung durch verteilte schnelle Flip-Flops. Wie in Fig. 4 gezeigt ist, laufen zwei zwischengespeicherte Signale, die das Auftreten des Ereignisses und den Takt darstellen, zu einer Bank von neun schnellen D-Flip-Flops, die die relative Phase zwischen den zwei Signalen an neun gleich beabstandeten Verzögerungsstufen bestimmen. Die gesamte Verzögerung überspannt die 2-ns-Periode des Zeitbasistakts.The well-known interpolation technique is based on delay propagation through distributed fast flip-flops. As shown in Fig. 4, two latched signals representing the occurrence of the event and the clock are propagated to a bank of nine fast D flip-flops that determine the relative phase between the two signals at nine equally spaced delay stages. The total delay spans the 2 ns period of the time base clock.

Das Ereignis-Latch-Signal wird pro Stufe zunehmend um 200 ps verzögert (einen Zeitbetrag pro Stufe). Die Flip-Flop-Ausgaben werden das Verzögerungszeitintervall quantisieren, wobei Ausgaben logischer Einsen und Nullen die Ereignis-Latch-Verzögerung anzeigen. Die Flip-Flops geben einen Thermometer- Code aus, der in einen Binärcode umgewandelt und mit der Ereigniszahl und der Zeitzahl in einem Speichersystem gespeichert wird. Der Thermometer-Code zählt wie folgt: 000...000, 100...000, 110...000, 111...000,....., 111...110, 111...111. Am Ende der Zahl setzt sich der Code nicht selbst auf Nullen zurück. Die Interpolatorausgabe, die von dem Thermometer-Code in den binären umgewandelt ist, plus die digitale Darstellung der Ereigniszahl ergeben die digitalisierte Zeit des Ereignissignals.The event latch signal is delayed incrementally by 200 ps per stage (one amount of time per stage). The flip-flop outputs will quantize the delay time interval, with outputs of logical ones and zeros indicating the event latch delay. The flip-flops output a thermometer code, which is converted to binary code and stored in a memory system with the event number and time number. The thermometer code counts as follows: 000...000, 100...000, 110...000, 111...000,....., 111...110, 111...111. At the end of the number, the code does not reset itself to zeros. The interpolator output, converted from the thermometer code to binary, plus the digital representation of the event number yields the digitized time of the event signal.

Es existiert eine Anzahl von Problemen, die zu diesem bekannten Verfahren gehören. Da die Latch-Elemente diskrete Komponenten sind, passen dieselben nicht gut zusammen. Eine gute Linearität wird nur durch individuelle Einstellungen jedes Elements erreicht. Neben der Linearität muß die Gesamtverzögerung für eine Genauigkeit mit einer Periode des nicht-unterteilten Taktintervalls übereinstimmen. Die Zeitgebungsauflösung ist durch die physikalische Trennung zwischen diskreten Latch-Elementen bestimmt. Bei vielen Verzögerungsleitungen werden die Verzögerungen im voraus eingestellt und sind Schwankungen unterworfen. Sowohl die Linearität als auch die Genauigkeit werden bei Schaltungsparameterschwankungen verschlechtert sein. Ferner sind die Verzögerungsleitungen im Leerlauf, bis sie durch eine Messung aktiviert werden. Sowohl die Genauigkeit als auch die Linearität ändern sich somit bei verschiedenen Meßraten um ein bestimmtes Maß.There are a number of problems associated with this known method. Since the latch elements are discrete components, they do not fit well together. Good linearity is only achieved by individual adjustments of each element. In addition to linearity, the total delay must match one period of the non-divided clock interval for accuracy. Timing resolution is determined by the physical separation between discrete latch elements. In many delay lines, the delays are set in advance and are subject to variation. Both linearity and accuracy will degrade with circuit parameter variations. Furthermore, the delay lines are idle until they are activated by a measurement. Both accuracy and linearity thus change by a certain amount at different measurement rates.

Dieses Verfahren erfordert ferner N-1 Latch-Elemente, um N-Teilabschnitte zu interpolieren. Es wäre erwünscht, die Anzahl der Latchs relativ zu der Anzahl der Teilabschnitte zu reduzieren.This method also requires N-1 latch elements to interpolate N sections. It would be desirable to reduce the number of latches relative to the number of sections.

Ein weiteres Problem gemäß dem Stand der Technik ist die Notwendigkeit, tatsächlich einen speziellen Taktpuls mit einer Synchronisiereinrichtung zu isolieren, wobei dies mit einem Niederzeit-Jitter geschehen muß. Die Metastabilität des Synchronisierungsverfahrens macht dies schwierig, besonders bei hohen Frequenzen. Eine Schaltung ist "metastabil", wenn ein kleiner Jitter in einem Signal keine plötzliche, große Änderung in einem weiteren zur Folge hat. Ein Fehlen der Metastabilität erscheint während eines Übergangs eines Pulses. Spezieller können leichte Schwankungen zwischen der Phase eines Übergangs in einem Eingangssignal und der Phase eines Übergangs in einem Referenzsignal große und falsche Schwankungen in einem Ausgangssignal bewirken. In Fig. 11 ist beispielsweise der Übergang eines herkömmlichen Zählers oder einer Synchronisiereinrichtung gezeigt, der mit einem Ereignis-Meßpulsstrom in einer Kurve A aufgrund der statistischen Schwankungen, die oben genannt wurden, fehlausgerichtet, d.h. versetzt, ist. Wenn eine Messung zu der Zeit durchgeführt wird, die durch eine vertikale Linie α angezeigt ist, wird die Zahl als 63 oder ((3x16) + 15) gelesen. Wenn eine Messung etwas später zu einer Zeit β durchgeführt wird, ist die Zahl 48 oder ((3x16) + 0). Wenn eine Messung zur Zeit γ durchgeführt wird, ist die Zahl 64 oder ((4x16) + 0). Diese Zähl-Unsicherheiten treten mit einer hohen Wahrscheinlichkeit auf und erzeugen schwerwiegende systematische Fehler.Another problem in the prior art is the need to actually isolate a specific clock pulse from a synchronizer, and this must be done with a low-time jitter. The metastability of the synchronization method makes this difficult, especially at high frequencies. A circuit is "metastable" if a small jitter in one signal does not result in a sudden, large change in another. A lack of metastability appears during a transition of a pulse. More specifically, slight variations between the phase of a transition in an input signal and the phase of a transition in a reference signal can cause large and false variations in an output signal. For example, in Fig. 11, the transition of a conventional counter or synchronizer is shown misaligned, i.e. offset, with an event measurement pulse current in a curve A due to the statistical variations mentioned above. If a measurement is made at the time indicated by a vertical line α, the number is read as 63 or ((3x16) + 15). If a measurement is made a little later at a time β, the number is 48 or ((3x16) + 0). If a measurement is made at time γ, the number is 64 or ((4x16) + 0). These counting uncertainties occur with a high probability and generate serious systematic errors.

Zusammenfassung der ErfindungSummary of the invention

Die oben genannten Probleme wurden in einem Ereignis-Zeitgeber gelöst, der, wie gemäß dem Stand der Technik, einen Interpolator für eine feine Zeitstempelung zwischen zeitlich gesteuerten Ereignissen verwendet, jedoch eine gute Linearität und eine verbesserte Genauigkeit aufweist und ferner die Anzahl der Latchs beim Bilden der Verzögerungs-Teilabschnitte reduziert. Der neuartige Zeitgeber erzeugt eine nahezu gleichmäßige Verzögerung zwischen Elementen und reduziert statistische Fehler, die eine Folge einer Metastabilität und eines Puls-Jitters sind, wodurch sich ein zuverlässigerer Zeitstempel ergibt.The above problems have been solved in an event timer that uses an interpolator for fine time stamping between timed events as in the prior art, but has good linearity and improved accuracy and further reduces the number of latches in forming the delay sub-portions. The novel timer produces a nearly uniform delay between elements and reduces statistical errors resulting from metastability and pulse jitter, resulting in a more reliable timestamp.

Der Ereignis-Zeitgeber der vorliegenden Erfindung verwendet einen Ringoszillator als eine Synchronisiereinrichtung, die in den Interpolator eingesetzt ist. Der Ringoszillator verwendet aktive Schaltungselemente, die mit einem Referenzfrequenz-Standard phasenmäßig verriegelt sind, um jeden Taktpuls zu unterteilen, zusammen mit linearen Kombinierelementen (LCE; LCE = Linear Combining Elements), um den gewünschten Grad an feinen Einteilungen ohne eine mit Abgriffstellen versehene Verzögerungsleitung zu erreichen. Die LCEs erzeugen als Ausgaben einen modifizierten Thermometer-Code, der mit der Taktrate zeitlich zyklisch ist. Er kehrt Zahlen über wechselnde Halbzyklen um, wodurch eine gleichmäßige Interpolation für 2N Teilabschnitte mit nur N Stellen mit einem eindeutigen Signal-Identifizierer für jeden Verzögerungs- Teilabschnitt geliefert wird. Bei diesem modifizierten Thermometer-Code ändert nur eine Stelle zwischen benachbarten Teilabschnitten den Zustand. Der Ereigniszähler weist Vorauseil- und Nacheil-Zähler auf, die bezüglich des Interpolators phasenverschoben sind. Durch das Liefern derartiger Vorauseil-Nacheil-Signale beeinflussen sich metastabile Zustände, ein Jitter und ein Versatz nicht mit den Ereignis- Zeitstempel-Zahlen. Die Ausgabe des Ereigniszählers liefert einen groben Zeitstempel, der mit dem feinen Zeitstempel des Interpolators kombiniert wird. Die Zeitauflösung ist größer als gegenwärtig verfügbare Transistorgatter-Verzögerungen, d.h. in der Größenordnung von 15 ps.The event timer of the present invention uses a ring oscillator as a synchronizing means inserted into the interpolator. The ring oscillator uses active circuit elements phase locked to a reference frequency standard to divide each clock pulse, along with linear combining elements (LCE) to achieve the desired degree of fine division without a tapped delay line. The LCEs produce as outputs a modified thermometer code that is cyclic in time with the clock rate. It inverts numbers over alternate half cycles, thereby providing smooth interpolation for 2N divisions of only N digits with a unique signal identifier for each delay. subsection. In this modified thermometer code, only one location between adjacent subsections changes state. The event counter has lead and lag counters that are out of phase with respect to the interpolator. By providing such lead-lag signals, metastable states, jitter and skew do not interfere with the event timestamp numbers. The output of the event counter provides a coarse timestamp that is combined with the fine timestamp of the interpolator. The timing resolution is greater than currently available transistor gate delays, ie, on the order of 15 ps.

Eine gute Linearität wird ohne Einstellungen durch die Verwendung identischer, abstimmbarer, aktiver Verzögerungselemente erreicht, die in einer monolithischen integrierten Schaltung hergestellt werden können. Die Genauigkeit wird dynamisch durch einen kontinuierlichen Vergleich mit einer Referenzfrequenz beibehalten, selbst während der Messungen, und unterliegt keinen Schaltungsparameter-Schwankungen. Ein phasenstarrer Oszillator ahmt die "mit Abgriffstellen versehene Verzögerungsleitung" nach, welcher der Oszillator selbst ist. Der Oszillator wird zyklisch und kontinuierlich beschäftigt, unabhängig davon, ob eine Messung durchgeführt wird oder nicht. Daher ist die Schaltung auf sich ändernde Meßraten weniger anfällig. Die Ringoszillator-Konfiguration weist eine inhärente Halbwellen-Symmetrie auf, wodurch die Verwendung eines modifizierten Thermometer-Codes möglich ist, der nur N/2 Latchs benötigt, um N Teilabschnitte zu interpolieren - etwa halb so viele wie in einem bekannten Gerät benötigt werden. Die Verwendung der LCEs ermöglicht es, daß der Grad der feinen Einteilung unter der Ausbreitungsverzögerung eines Verzögerungselements eines einzelnen Ringoszillators ist. Eine Zeitauflösung in der Größenordnung von 60 ps wird für die Verzögerungselemente erreicht. Mit den LCEs beträgt die Auflösung etwa 15 ps.Good linearity is achieved without adjustments by using identical, tunable, active delay elements that can be fabricated in a monolithic integrated circuit. Accuracy is maintained dynamically by continuous comparison to a reference frequency, even during measurements, and is not subject to circuit parameter variations. A phase-locked oscillator mimics the "tapped delay line" that the oscillator itself is. The oscillator is cyclically and continuously engaged, whether a measurement is being made or not. Therefore, the circuit is less sensitive to changing measurement rates. The ring oscillator configuration has an inherent half-wave symmetry, allowing the use of a modified thermometer code that requires only N/2 latches to interpolate N subsections - about half as many as are required in a known device. The use of the LCEs allows the degree of fine division to be below the propagation delay of a delay element of a single ring oscillator. A time resolution of the order of 60 ps is achieved for the delay elements. With the LCEs the resolution is about 15 ps.

Das Problem der Synchronisierung zwischen der Interpolation und dem Haupttakt (fein und grob) wird durch die Verwendung zweier Zähler gelöst, wobei einer dem zyklischen Umschlag des modifizierten Thermometer-Codes vorauseilt und der andere demselben nacheilt. Beide Zähler weisen Ausgaben auf, die in Latchs gespeichert sind, wobei jedoch nur der geeignete aufgezeichnet wird. Das höchstwertige Bit (MSB; MSB = Most significant bit) des "feinen" Codes bestimmt, welche aufgezeichnet wird. Bei diesem Verfahren wird eine Zweideutigkeit, die durch das Lesen eines Zählers während des Durchlaufs eingeführt wird, beseitigt, da der Zähler, der während eines Schaltens gelesen wird, niemals aufgezeichnet wird. Außerdem ist keine Synchronisiereinrichtungsschaltung notwendig, um spezielle Taktpulse zur Messung zu isolieren. Tatsächlich ist dieses Verfahren bezüglich des Fehlens einer Kohärenz zwischen den feinen und den groben Abschnitten der Interpolation sehr tolerant. In großen Grenzen hat ein Jitter zwischen feinen und groben Takten keine Konsequenz.The problem of synchronization between interpolation and the master clock (fine and coarse) is solved by using two counters, one leading and the other lagging the cyclic envelope of the modified thermometer code. Both counters have outputs stored in latches, but only the appropriate one is recorded. The most significant bit (MSB) of the "fine" code determines which one is recorded. In this method, an ambiguity introduced by reading a counter during sweep is eliminated, since the counter read during a switch is never recorded. In addition, no synchronizer circuit is necessary to isolate special clock pulses for measurement. In fact, this method is very tolerant of the lack of coherence between the fine and coarse portions of the interpolation. Within wide limits, jitter between fine and coarse clocks is of no consequence.

Als ein zusätzlicher Vorteil dieses Verfahrens sind die groben und die feinen Daten, die somit erhalten werden, "angrenzend verbindbar", d.h. sie können Seite an Seite placiert werden, um ohne eine arithmetische Verarbeitung ein breiteres Wort zu bilden. Dieses verbundene Wort bildet dann einen neuen "feinen" Code, wobei das gleiche Schema zu höherwertigen oder "groben" Bits kaskadierbar ist, wodurch sich ein erweiterter Bereich für die Schaltung ergibt.As an additional advantage of this method, the coarse and fine data thus obtained are "contiguously connectable," i.e. they can be placed side by side to form a wider word without any arithmetic processing. This connected word then forms a new "fine" code, with the same scheme being cascadable to higher order or "coarse" bits, thus providing an extended range for the circuit.

Kurze Beschreibung der ZeichnungenShort description of the drawings

Fig. 1 ist ein vereinfachtes elektrisches Blockdiagramm der Zeitgebungsschaltung der vorliegenden Erfindung.Figure 1 is a simplified electrical block diagram of the timing circuit of the present invention.

Fig. 2 ist ein Signalverlaufdiagramm, das die Einteilung eines Taktsignals in Verzögerungs-Teilbereiche zum Identifizieren eines Ereignissignals zeigt.Fig. 2 is a waveform diagram showing the division of a clock signal into delay sub-regions for identifying an event signal.

Fig. 3 ist ein Signalverlaufdiagramm, das eine bekannte Signalabtastung bei der Phasendigitalisierung zeigt.Fig. 3 is a waveform diagram showing a known signal sampling in phase digitization.

Fig. 4 ist ein vereinfachtes Blockdiagramm eines bekannten Interpolators.Fig. 4 is a simplified block diagram of a known interpolator.

Fig. 5 ist ein Blockdiagramm der Interpolatorschaltung, die in Fig. 1 gezeigt ist.Fig. 5 is a block diagram of the interpolator circuit shown in Fig. 1.

Fig. 6 ist ein schematischer Plan des Ringoszillators, der in der Schaltung der Fig. 1 und 5 verwendet ist.Fig. 6 is a schematic diagram of the ring oscillator used in the circuit of Figs. 1 and 5.

Fig. 7 ist ein detailliertes Blockdiagramm einer Pulsunterteilungsvorrichtung unter Verwendung linearer Kombinierer-Elemente (LCE), die in dem Diagramm von Fig. 5 verwendet sind.Fig. 7 is a detailed block diagram of a pulse division device using linear combiner elements (LCE) used in the diagram of Fig. 5.

Fig. 8A ist ein schematischer Plan, der die Pufferverstärker-Ausgangsanordnung in dem Interpolator von Fig. 5 zeigt.Fig. 8A is a schematic diagram showing the buffer amplifier output arrangement in the interpolator of Fig. 5.

Fig. 8B ist ein Zeitablaufdiagramm der inneren Taktpulse von den Pufferverstärkerausgängen, die in Fig. 8A gezeigt sind.Fig. 8B is a timing diagram of the internal clock pulses from the buffer amplifier outputs shown in Fig. 8A.

Fig. 9A ist die linke Seite und Fig. 9B ist die rechte Seite eines erweiterten Blockdiagramms der Zeitgebungsschaltung, die in Fig. 1 gezeigt ist.Fig. 9A is the left side and Fig. 9B is the right side of an expanded block diagram of the timing circuit shown in Fig. 1.

Fig. 10 ist ein schematisches Diagramm einer Verzögerungsschaltung, die in Fig. 9A gezeigt ist.Fig. 10 is a schematic diagram of a delay circuit shown in Fig. 9A.

Fig. 11 zeigt Signalverlaufdiagramme für die Zählschaltungen, die in den Fig. 9A und 9B gezeigt sind.Fig. 11 shows waveform diagrams for the counter circuits shown in Figs. 9A and 9B.

Fig. 12 ist ein schematisches Diagramm der Mobius-Vorauseil-Nacheil-Zählern, die in Fig. 9A gezeigt sind.Figure 12 is a schematic diagram of the Mobius lead-lag counters shown in Figure 9A.

Fig. 13 ist ein schematisches Diagramm einer Schaltung, die die Zeitgebungsschaltung der Fig. 9a und 9b erweitert.Fig. 13 is a schematic diagram of a circuit that extends the timing circuit of Figs. 9a and 9b.

Beste Art zum Durchführen der ErfindungBest mode for carrying out the invention

In Fig. 1 ist die Gesamtarchitektur der Schaltung der vorliegenden Erfindung zu sehen. Es gibt zwei parallele Wege von dem Ereigniseingang auf der linken Seite zu dem Geräteausgang auf der rechten Seite. Der Geräteeingang ist eine Signalleitung 11, die ein Ereignissignal trägt, dessen positiver Nulldurchgang bezüglich der Null des Ausgangstakts 24, einem lokal erzeugten Signal, gemessen werden soll. Innere Taktpulse werden durch einen Ringoszillator 13 erzeugt, der einen Strom identischer Pulse zu einem Interpolator 15 und einem Zähler 17 überträgt. Der Ringoszillator 13 ist für die Stabilität phasenstarr bezüglich eines Referenztakts, nicht gezeigt. Die Verzögerung in dem Ringoszillator, dessen Frequenz spannungsgesteuert ist, wird bezüglich der Referenz eingestellt.In Fig. 1 the overall architecture of the circuit of the present invention can be seen. There are two parallel paths from the event input on the left to the device output on the right. The device input is a signal line 11 carrying an event signal whose positive zero crossing with respect to the zero of the output clock 24, a locally generated signal, is to be measured. Internal clock pulses are generated by a ring oscillator 13 which transmits a stream of identical pulses to an interpolator 15 and a counter 17. The ring oscillator 13 is phase locked with respect to a reference clock, not shown, for stability. The delay in the ring oscillator, whose frequency is voltage controlled, is adjusted with respect to the reference.

Der Interpolator 15 unterteilt die Taktpulse in Teilabschnitte. Jeder Teilabschnitt wird mit einem Numerierschema bezeichnet, das durch lineare Kombiniererelemente, die nachfolgend beschrieben werden, geliefert wird. Die Teilabschnitte werden durch die Ausbreitung der Verzögerung in einer aktiven Verzögerungsschaltung hergeleitet, die den Ringoszillator einschließt. Das Numerierschema für die sich ausbreitende Verzögerung ist ein modifizierter Thermometer- Code, da sich jeder aufeinanderfolgende Teilabschnitt um eine Stelle ändert, ähnlich dem Gray-Code, mit Ausnahme dessen, daß dieselben sich von links nach rechts ändern. Im physikalischen Erscheinungsbild sieht die Ausbreitung der Stellen, die der Ausbreitung der Verzögerung entspricht, wie ein Thermometer aus, das schrittweise eine Temperaturänderung anzeigt. Ein Vorteil der Verwendung des Thermometer-Codes oder des Gray-Codes besteht darin, daß jeder Fehler in der Auflösung eines Übergangs zwischen Verzögerungswerten, d.h. Teilabschnitten, nur ein Bit beeinflußt, da sich bei diesen Codes Werte zwischen aufeinanderfolgenden Teilabschnitten nur um ein Bit ändern. Die Modifikation des Thermometer-Codes, die hierin verwendet ist, wird nachfolgend erklärt.The interpolator 15 divides the clock pulses into subsections. Each subsection is designated by a numbering scheme provided by linear combiner elements described below. The subsections are derived by propagating the delay in an active delay circuit including the ring oscillator. The numbering scheme for the propagating delay is a modified thermometer code since each successive subsection changes by one digit, similar to the Gray code except that they change from left to right. In physical appearance, the spread of digits corresponding to the propagation of the delay looks like a thermometer gradually indicating a change in temperature. An advantage of using the thermometer code or of the Gray code is that any error in the resolution of a transition between delay values, ie subsections, affects only one bit, since in these codes values between successive subsections change by only one bit. The modification of the Thermometer code used herein is explained below.

Ein Ereignissignal, beispielsweise ein positiv werdendes Null-Durchgangssignal, entlang der Leitung 11, speichert einen Teilabschnitt zum Decodieren und Lesen als eine Ausgabe zwischen. Ein binärer Codierer 19 wandelt die zwischengespeicherte Thermometer-Code-Ausgabe in eine binär codierte Ausgabe um, die von einem Latch 21 als der niederwertigste Abschnitt der Ausgabe gelesen wird.An event signal, such as a positive going zero crossing signal, along line 11 latches a portion for decoding and reading as an output. A binary encoder 19 converts the latched thermometer code output into a binary encoded output which is read by a latch 21 as the least significant portion of the output.

Die maximale Eingangsfrequenz der Ereignisse entlang der Leitung 11 ist typischerweise geringer als die Frequenz des Ringoszillators 13, angenommen etwa 1/8. Der Ringoszillator 13, der bezüglich der Teilabschnitt-Erzeugung einen Arbeitszyklus von 50% aufweist, erzeugt ein inneres Taktsignal, CLK INT, entlang einer Leitung 14. Die relativ langsame Taktrate von CLK INT, die in extrem feine Intervalle unterteilt ist, ermöglicht eine hohe Ereignisauflösung. Ein Ereignis, das eine asynchrone Beschaffenheit aufweist, kann während eines beliebigen der Teilabschnitte von CLK INT auftreten. Diese Teilabschnitt-Identifizierung wird zwischengespeichert und als die feine Zeitgebung angezeigt. Die grobe Zeitgebung wird aus der Anzahl der Taktpulse nach einem Anfangstakt Null, die in dem Vorauseil-Nacheil-Zähler 17 gezählt werden, gefunden, und zum Lesen durch ein Ereignissignal, das zu dem Zähler 17 übertragen wird, zwischengespeichert.The maximum input frequency of events along line 11 is typically less than the frequency of ring oscillator 13, assumed to be about 1/8. Ring oscillator 13, which has a 50% duty cycle with respect to slice generation, generates an internal clock signal, CLK INT, along line 14. The relatively slow clock rate of CLK INT, which is divided into extremely fine intervals, allows for high event resolution. An event having an asynchronous nature may occur during any of the slices of CLK INT. This slice identification is latched and indicated as the fine timing. The coarse timing is found from the number of clock pulses after an initial clock zero counted in lead-lag counter 17 and latched for reading by an event signal transmitted to counter 17.

Der Vorauseil-Nacheil-Zähler 17 weist ein Paar von Zählern in einer phasenverschobenen Beziehung auf, von denen einer durch den Zustand des Thermometer-Codes ausgewählt wird. Beispielsweise kann eine Thermometer-Code-Zahl zwischen 0 und 7 den Vorauseil-Zähler auswählen, während eine Zahl zwischen 8 und 15 den Nacheil-Zähler auswählt. Diese Auswahl kann durch das Lesen eines einzelnen Bits des Thermometer- Codes erreicht werden. Dieses Bit wird zu einem Multiplexer 18 übertragen, der den geeigneten Vorauseil- oder Nacheil- Zähler auswählt.The lead-lag counter 17 comprises a pair of counters in an out-of-phase relationship, one of which is selected by the state of the thermometer code. For example, a thermometer code number between 0 and 7 can select the lead counter, while a number between 8 and 15 selects the lag counter. This selection can be accomplished by reading a single bit of the thermometer code. This bit is transmitted to a multiplexer 18 which selects the appropriate lead or lag counter.

Die Ausgabe des Multiplexers 18, d.h. eine ausgewählte und zwischengespeicherte Zählerausgabe wird durch einen binären Codierer 23 gelesen, der eine binär codierte Ausgabe liefert, die die höchstwertigen Ausgabebits bildet, die zum Lesen durch einen Latch 25 gehalten sind, d.h. die groben Zeitgebungsinformationen. Die zwei Ausgangslatchs 21 und 25 enthalten die niederst- bis höchstwertigen Bits einer binär codierten Ausgabe, die die Zeit darstellt, in der das Ereignis entlang der Linie 11 relativ zur Null eines Ausgangstakts entlang der Leitung 24 auftritt. Der Ausgangstakt kann verwendet werden, um weitere Stufen zu kaskadieren.The output of the multiplexer 18, i.e. a selected and latched counter output, is read by a binary encoder 23 which provides a binary coded output forming the most significant output bits held for reading by a latch 25, i.e. the coarse timing information. The two output latches 21 and 25 contain the least to most significant bits of a binary coded output representing the time at which the event along line 11 occurs relative to the zero of an output clock along line 24. The output clock can be used to cascade further stages.

In Fig. 2 ist der Beginn von CLK INT durch eine vertikale Linie 31 angezeigt. Der erste Puls von CLK INT ist durch die Linie 34 zwischen der vertikalen Linie 31 und einer vertikalen Linie 35 dargestellt. Dieser Puls ist einer von F-Taktpulsen, wobei F eine Zahl ist, die die Frequenz des Takts darstellt. Rechts von der vertikalen Linie 35 auf der Taktlinie 34 ist der zweite Taktpuls, der in Teilabschnitte unterteilt ist, genau wie der erste Puls. Das Ereignissignal wird durch eine Linie 37 dargestellt. Rechts von der vertikalen Linie 31 sind die Unterteilungen des ersten Taktpulses, die durch vertikale Linien 39 angezeigt sind.In Fig. 2, the start of CLK INT is indicated by a vertical line 31. The first pulse of CLK INT is shown by the line 34 between the vertical line 31 and a vertical line 35. This pulse is one of F clock pulses, where F is a number representing the frequency of the clock. To the right of the vertical line 35 on the clock line 34 is the second clock pulse, which is divided into sub-divisions just like the first pulse. The event signal is shown by a line 37. To the right of the vertical line 31 are the subdivisions of the first clock pulse, indicated by vertical lines 39.

Das Intervall zwischen den vertikalen Linien ist ein Zeitintervall Td, das zwischen vertikalen Linien gleichmäßig ist. Eine Art, um die Intervalle Td zu erzeugen, ist durch eine passive Verzögerungsleitung mit gleichmäßig beabstandeten Abgriffstellen. Jedoch sind, um eine Schaltung zu integrieren, aktive Elemente bevorzugt. Jede vertikale Linie, die die Grenze eines Teilabschnitts, Td bezeichnet, ist durch eine Zahl gekennzeichnet, welche durch die Ausbreitungsverzögerungselemente erzeugt wird und sich bezüglich der nächsten Zahl um eine Einheit in dem äußersten linken Bit ändert. Dies ist in dem Numerierschema 41 zu sehen, wobei jede Zahl einer der Teilabschnitt-Linien 39 entspricht. Der Thermometer-Code beginnt mit der ersten Linie, die durch "1" angezeigt ist, die 01111111 lautet. Die nächste Linie lautet 00111111, usw., bis zu der Linie, die durch "N/2" angezeigt ist und nur Nullen aufweist.The interval between the vertical lines is a time interval Td which is uniform between vertical lines. One way to generate the intervals Td is by a passive delay line with equally spaced taps. However, to integrate a circuit, active elements are preferred. Each vertical line, which denotes the boundary of a section, Td, is identified by a number which is represented by the propagation delay elements. and changes with respect to the next number by one unit in the leftmost bit. This can be seen in the numbering scheme 41, where each number corresponds to one of the subsection lines 39. The thermometer code begins with the first line indicated by "1" which is 01111111. The next line is 00111111, and so on, down to the line indicated by "N/2" which has all zeros.

Dann wird die Zahl invertiert und lautet 10000000, usw., bis zu der Linie, die durch die "N" angezeigt ist, und nur Einsen aufweist. Die ansteigende Flanke 43 des Eingangsereignisses entlang der Linie 37 wird einen dieser Codes der Linie 45 zwischenspeichern. Die modifizierte Thermometer-Code-Zahl, die der vertikalen Linie 45 entspricht, wird mittels eines Latchs gehalten und mittels des binären Codierers 19 in Fig. 1 in ein binär codiertes Format umgewandelt. Diese invertierte Zählung in abwechselnden Halbzyklen des Thermometer-Codes kann als ein Ergebnis des von Natur aus exakten 50%-Arbeitssignalverlaufzyklusses, der von dem Ringoszillator erzeugt wird, verwendet werden, wodurch die Herstellung von nur 50% der Verzögerungselemente ermöglicht ist, um die gewünschten Teilabschnitte zu erhalten. Die invertierte Zählung beginnt mit dem Teilabschnitt-Intervall, das in Fig. 2 mit N/2 bezeichnet ist. Wir nennen unseren modifizierten Code "Dualen Thermometer-Code", der durch die Teilabschnitte mit den Zahlen 1 bis N in Fig. 2 dargestellt ist.Then the number is inverted to read 10000000, and so on, up to the line indicated by the "N" which has all ones. The rising edge 43 of the input event along line 37 will latch one of these codes of line 45. The modified thermometer code number corresponding to vertical line 45 is latched and converted to binary coded format by binary encoder 19 in Fig. 1. This inverted count in alternating half cycles of the thermometer code can be used as a result of the inherently exact 50% duty cycle waveform produced by the ring oscillator, allowing the manufacture of only 50% of the delay elements to obtain the desired subsections. The inverted counting starts with the subsection interval labeled N/2 in Fig. 2. We call our modified code "Dual Thermometer Code", which is represented by the subsections numbered 1 to N in Fig. 2.

Bei dem Beispiel von Fig. 2 trat die ansteigende Flanke 43 entlang der Ereignislinie während des ersten Taktpulses entlang der Linie 34 auf. Typischerweise weist das Ereignis eine Auftrittswahrscheinlichkeit (1/64) während eines beliebigen ersten Taktzustands auf, ist jedoch nur als ein Beispiel auf diese Art und Weise gezeigt.In the example of Fig. 2, the rising edge 43 along the event line occurred during the first clock pulse along line 34. Typically, the event has a probability of occurrence (1/64) during any first clock state, but is shown this way only as an example.

In Fig. 5 ist die Architektur des Interpolators gezeigt. Ein Walker-Oszillator 50 ist verwendet, um eine mit Abgriffstellen versehene Verzögerungsleitung mit gleichmäßig beabstandeten Abgriffstellen zu simulieren. Der Walker-Oszillator ist in dem U.S. Patent Nr. 4,884,041 beschrieben und ist ein Ringoszillator mit abstimmbaren linearen Kombiniererelementen (LCE), die gleichwertige Verzögerungszeiten erzeugen können, wie es bei der vorliegenden Erfindung der Fall ist. Der Ringsoszillator 50 führt Taktpulse zu einer Unterteilungsvorrichtung 51, die durch die LCE auf die vorher beschriebene Art und Weise gebildet wird. Dies erhöht die Anzahl von Leitungen mit Verzögerungssignalen von 2 auf 8 und erhöht die zeitliche Auflösung um einen Faktor von 4. Die Ausgaben des Thermometer-Code-Generators werden nachfolgend zu Datenpuffern 53 gesendet. Die Puffer-Ausgangsleitungen sind mit Latchs 55 verbunden&sub1; zu denen das Ereignissignal entlang der Leitung 11 geleitet wird, um einen speziellen reduzierten Thermometer-Code zwischenzuspeichern, wenn das Ereignis auftritt.In Fig. 5 the architecture of the interpolator is shown. A Walker oscillator 50 is used to generate a tapped provided with evenly spaced taps. The Walker oscillator is described in U.S. Patent No. 4,884,041 and is a ring oscillator with tunable linear combiner elements (LCE) capable of producing equivalent delay times as is the case with the present invention. The ring oscillator 50 feeds clock pulses to a divider 51 formed by the LCE in the manner previously described. This increases the number of lines of delay signals from 2 to 8 and increases the temporal resolution by a factor of 4. The outputs of the thermometer code generator are subsequently sent to data buffers 53. The buffer output lines are connected to latches 55 to which the event signal is passed along line 11 to latch a special reduced thermometer code when the event occurs.

Fig. 6 ist ein Blockdiagramm eines Ringoszillators. Ein Hauptmerkmal einer solchen Vorrichtung besteht darin, daß eine Spannung entlang einer Leitung 32 die Verzögerung jeder Verzögerungszelle 57, 59 und folglich die Oszillatorfrequenz einstellen kann. Ein Signal auf einer Leitung 56 wird mittels einer Verzögerungszelle 57 um einen vorbestimmten Betrag verzögert, derart, daß auf der Abgriffstellenleitung 62 eine verzögerte Ausgabe verfügbar ist. Eine im wesentlichen identische Verzögerungszelle 59 liefert eine Ausgabe entlang einer Abriffstellenleitung 63. Die Ausgabe auf der Leitung 63 entspricht dem Beginn des nächsten halben Arbeitszyklusses von CLK INT. Die zwei Abgriffstellen 62 und 63 sind verwendet, um mittels Signal-Unterteilungsvorrichtungen oder Multiplexern acht Verzögerungswerte zu erzeugen.Fig. 6 is a block diagram of a ring oscillator. A key feature of such a device is that a voltage along line 32 can set the delay of each delay cell 57, 59 and hence the oscillator frequency. A signal on line 56 is delayed by a predetermined amount by a delay cell 57 such that a delayed output is available on tap line 62. A substantially identical delay cell 59 provides an output along a tap line 63. The output on line 63 corresponds to the beginning of the next half duty cycle of CLK INT. The two taps 62 and 63 are used to generate eight delay values by means of signal dividing devices or multiplexers.

Das Detail der Unterteilungsvorrichtung 51 ist in Fig. 7 gezeigt. Eine einzelne Verzögerungszelle 57 des Ringoszillators ist gemäß der Darstellung mit einer Mehrzahl von 2:1-Linear-Kombinierer-Elementen (LCE) 71, 73, 75 in einer ersten Reihe verbunden. Ein LCE ist ein gewichteter Multiplexer, wobei Eingangssignale, die durch ein Signal auf einer Abstimmleitung 70 auf der linken Seite jedes LCE-Blocks hinzugefügt werden, gewichtet werden. Die meisten der LCE- Gewichtungsleitungen sind geerdet gezeigt (das Differential unter den Leitungen ist Null), mit Ausnahme derjenigen, die ein Signal Ai aufweisen, wie z.B. auf den LCEs 73, 83 und 87. Die Zahl "i" ist 1 und 2, was die erste Reihe von LCEs darstellt, wie z.B. das LCE 73, dann die zweite Reihe, usw. für weitere Reihen, wenn solche existieren. Wenn die Leitung geerdet ist, gilt A = 0,5. Jedes LCE weist zwei Eingänge und einen einzelnen Ausgang auf und teilt das Zeitintervall zwischen den zwei Eingängen derart, daß die LCE-Ausgabe Z gleich Ax+(1-A)y ist, wobei x und y zwei Eingangssignale sind, die Zeitverzögerungen darstellen, und A eine Zahl ist, die 0≤A≤1 erfüllt. Vorzugsweie ist A gleich 0,5.The detail of the subdivision device 51 is shown in Fig. 7. A single delay cell 57 of the ring oscillator is connected as shown to a plurality of 2:1 linear combiner elements (LCE) 71, 73, 75 in a first row. An LCE is a weighted multiplexer, where input signals added by a signal on a tuning line 70 on the left side of each LCE block are weighted. Most of the LCE weighting lines are shown grounded (the differential among the lines is zero), except for those having a signal Ai, such as on LCEs 73, 83, and 87. The number "i" is 1 and 2, representing the first row of LCEs, such as LCE 73, then the second row, and so on for additional rows if any exist. When the line is grounded, A = 0.5. Each LCE has two inputs and a single output, and divides the time interval between the two inputs such that the LCE output Z is equal to Ax+(1-A)y, where x and y are two inputs representing time delays and A is a number satisfying 0≤A≤1. Preferably A is equal to 0.5.

Die LCEs 71 und 75 sind Hilfsvorrichtungen, die nur vorgesehen sind, um die Verzögerungen auszugleichen und beliebige Verfahrens- und Temperatur-induzierte Verzögerungsänderungen zu verfolgen. Von diesen Vorrichtungen wird keine Verzögerungseinstellung durchgeführt, da beide Eingangsleitungen das gleiche Zeitsignal tragen. Das LCE 73 empfängt Eingaben von jeder Seite der Verzögerungszelle 57 und erzeugt eine Ausgabe entlang einer Leitung 77. In gleicher Weise erzeugen die LCEs 71 und 75 Ausgaben entlang Leitungen 76 bzw. 78. Die Zeit, zu der die Ausgabe von dem LCE 73 auf der Leitung 77 erscheint, liegt mittig zwischen den Zeitpunkten, zu denen die Ausgaben von den LECs 71 und 75 auf den Leitungen 76 und 78 erscheinen. Wenn beispielsweise eine Eingabe zu dem LCE 0 ps wäre, und die andere Eingabe 62,5 ps wäre, wäre die Ausgabe des LCE 73 31,25 ps bezüglich der Ausgabe des LCE 71, wenn A1 etwa gleich 0,5 ist. Die Struktur von LCE 71, 73 und 75 wird in einer unteren Reihe von LCEs 81, 83, 85, 87 und 89 wiederholt. Diese Reihe von LCEs unterteilt die Reihe unmittelbar darüber durch das Liefern von Zeitunterteilungen in den LCEs 83 und 87, die die vorher erwähnten Verzögerungen unterteilen. Die LCEs 81, 85 und 89 sind Hilfsvorrichtungen zum Verzögerungs- und Verfahrens-Abgleich. Die Ausgabezeitelemente sind gleichmäßig beabstandete Verzögerungen. Diese Verzögerungen sind Signale, die die Stellen des dualen Thermometer-Codes bilden. Wenn sich die Zeitverzögerungen von links nach rechts ausbreiten, werden die Stellen des Thermometer-Codes von links nach rechts gebildet.LCEs 71 and 75 are auxiliary devices provided only to compensate for the delays and to track any process and temperature induced delay changes. No delay adjustment is performed by these devices since both input lines carry the same timing signal. LCE 73 receives inputs from each side of delay cell 57 and produces an output along line 77. Similarly, LCEs 71 and 75 produce outputs along lines 76 and 78, respectively. The time at which the output from LCE 73 appears on line 77 is midway between the times at which the outputs from LCEs 71 and 75 appear on lines 76 and 78. For example, if one input to the LCE was 0 ps and the other input was 62.5 ps, the output of the LCE 73 would be 31.25 ps relative to the output of the LCE 71 when A1 is approximately equal to 0.5. The structure of LCEs 71, 73 and 75 is repeated in a lower row of LCEs 81, 83, 85, 87 and 89. This row of LCEs subdivides the row immediately above by providing time divisions in the LCEs 83 and 87 which subdivide the previously mentioned delays. The LCEs 81, 85 and 89 are auxiliary devices for delay and process matching. The output time elements are evenly spaced delays. These delays are signals that form the digits of the dual thermometer code. As the time delays propagate from left to right, the digits of the thermometer code are formed from left to right.

Fig. 8A zeigt Paare von Pufferverstärkern 52 für die Unterteilungsvorrichtung 51. Die acht Ausgangsleitungen der Unterteilungsvorrichtung 51 sind für eine Regeneration zu einer Reihe von Paaren von Pufferverstärkern 52 geführt. Die Paare sind verwendet, um eine Isolation zwischen Baugliedern des Paars zu unterstützen. Ein Ausgang ist für ein interpoliertes Ausgangssignal verwendet, das zu einem Latch gesendet wird, während der andere Ausgang zur Verwendung als ein inneres Taktsignal verfügbar ist. Obwohl acht innere Taktquellen verfügbar sind, werden nur zwei verwendet, nämlich ein erstes inneres Taktsignal, das zu den Vorauseil-Nacheil-Zählern 150 und 151 in Fig. 9A gesendet wird, und ein zweites inneres Taktsignal, das zu einer Verzögerungsschaltung 121 gesendet wird. Die Phase des ersten Takts ist derart gewählt, daß die Übergänge eines MUX-Auswählsignals auf einer Leitung 16 in Fig. 1 bei plus oder minus einem viertel Zyklus bezüglich der Übergänge der Vorauseil/Nacheil-Zähler liegen.Figure 8A shows pairs of buffer amplifiers 52 for the divider 51. The eight output lines of the divider 51 are routed to a series of pairs of buffer amplifiers 52 for regeneration. The pairs are used to support isolation between members of the pair. One output is used for an interpolated output signal sent to a latch, while the other output is available for use as an inner clock signal. Although eight inner clock sources are available, only two are used, namely a first inner clock signal sent to the lead-lag counters 150 and 151 in Figure 9A and a second inner clock signal sent to a delay circuit 121. The phase of the first clock is chosen so that the transitions of a MUX select signal on a line 16 in Fig. 1 are at plus or minus one-quarter cycle with respect to the transitions of the lead/lag counters.

In Fig. 8A ist der erste Ausgang 46 jedes der Pufferpaare von dem zweiten Ausgang 47 isoliert. Eine beliebige Belastung des zweiten Ausgangs beeinflußt das Signal des ersten Ausgangs nicht. Dies ermöglicht es, daß die Interpolatorausgaben die gleichen bleiben, ungeachtet dessen, ob die zweiten Ausgänge verbunden sind. Tatsächlich sind zwei der zweiten Ausgänge verbunden, während sechs nicht verbunden sind.In Fig. 8A, the first output 46 of each of the buffer pairs is isolated from the second output 47. Any loading on the second output does not affect the first output signal. This allows the interpolator outputs to remain the same regardless of whether the second outputs are connected. In fact, two of the second outputs are connected while six are unconnected.

Fig. 8B zeigt das interpolierte Pufferausgangssignal des Thermometer-Codes. Jeder Signalverlauf besitzt eine Periode von 250 ps (4 MHz). Der Signalverlauf 64 ist die Ausgabe des ersten Pufferverstärkers und ist durch eine schraffierte Linie angezeigt. Der Signalverlauf 65 ist die Aufgabe des zweiten, der Signalverlauf 66 des dritten usw.. Die Verzögerung zwischen benachbarten ansteigenden Flanken ist als 15,625 ps gezeigt.Fig. 8B shows the interpolated buffer output of the thermometer code. Each waveform has a period of 250 ps (4 MHz). Waveform 64 is the output of the first buffer amplifier and is indicated by a hatched line. Waveform 65 is the output of the second, waveform 66 of the third, and so on. The delay between adjacent rising edges is shown as 15.625 ps.

In den Fig. 9A und 9B ist der Interpolator von Fig. 5 in Block 80 gezeigt, mit Ausnahme der Latchs. Die Latchs sind in Fig. 9A in Beziehung zu anderen Schaltelementen gezeigt. Kalibrierungseingänge CAL1 und CAL2 des Interpolators 80 sind mit Leitungen A&sub1; und A&sub2; der LCEs der Unterteilungsvorrichtung von Fig. 7 verbunden. Kleine Einstellungen von A&sub1; und A&sub2; können durchgeführt werden, um die beste Gleichmäßigkeit der Beabstandungen der Taktpulse, die in Fig. 8B gezeigt sind, zu erhalten. Nicht gezeigt ist eine Frequenzeinstellungsschaltung, um die Frequenz des Ringoszillators auf einen bekannten Wert zu steuern. Die Ausgabe von den Puffern in Fig. 8A, die nicht als den Block 80 verlassend gezeigt sind, werden auf acht Leitungen 84 mit einer Rate von 4 GHz geführt und zu der ersten Latch-Einrichtung 55 gekoppelt, welche eine Reihe von acht Latchs ist. Die Ereignisleitung 11 ist mit dem Latch 55 verbunden.In Figures 9A and 9B, the interpolator of Figure 5 is shown in block 80, except for the latches. The latches are shown in Figure 9A in relation to other circuit elements. Calibration inputs CAL1 and CAL2 of the interpolator 80 are connected to lines A1 and A2 of the LCEs of the dividing device of Figure 7. Small adjustments of A1 and A2 can be made to obtain the best uniformity of the spacing of the clock pulses shown in Figure 8B. Not shown is a frequency adjustment circuit to control the frequency of the ring oscillator to a known value. The output from the buffers in Fig. 8A, not shown exiting block 80, are carried on eight lines 84 at a rate of 4 GHz and coupled to the first latch 55, which is a series of eight latches. The event line 11 is connected to the latch 55.

Paare von Vorauseil/Nacheil-Zählern 150 und 151 zählen die Anzahl von Malen, zu denen der duale Thermometer-Code in dem Interpolator auf 0 umschlägt. Ein voller Zyklus wird als der innere Takt (CLK INT) bezeichnet, wie durch den Signalverlauf 34 in Fig. 2 gezeigt ist. Wenn die Nummer der Intervallzahlen von 0 bis 15 dann auf 0 zurückzählt, inkrementieren beispielsweise die Vorauseil/Nacheil-Zähler 150, 151 um 1. Die Vorauseil- und Nacheil-Zähler 150 und 151; 152 und 153; 154 und 155 sind bezüglich zueinander und bezüglich des inneren Taktes (CLK INT) versetzt, d.h. der Nacheil-Zähler zählt hinter dem CLK INT, welcher wiederum hinter dem Vorauseil-Zähler ist. Die gepaarten Vorauseil- und Nacheil-Zähler 150, 151 sind eine Mobius-Konfiguration von Flip-Flops, die auch als Johnson-Zähler bekannt ist, wie in Fig. 12 gezeigt ist. Jeder Zähler empfängt entlang Leitungen 86a und 86b mit der 4 GHz-Rate einen CLK INT-Puls. Der CLK INT-Puls kommt von dem Ausgang des Puffers 49 von Fig. 8a. Die Vorauseil- und Nacheil-Zähler befinden sich in einer Master- Slave-Beziehung, da die Ausgabe des Vorauseil-Zählers 151 die Eingabe des Nacheil-Zählers 150 wird. Der Betrag der Vorauseilung beträgt 125 ps, eine Halbperiode des dualen 250 ps-Thermometer-Codes. Der Halbzyklusunterschied ist durch die Linie 31 in Fig. 2 halbiert. Der Ausgang des Vorauseil- Zählers 151 ist entlang von Leitungen 90 mit einem Latch 93 in Fig. 9A verbunden, während der Ausgang des Nacheil-Zählers 150 über Leitungen 91 mit einem Latch 94 in Fig. 9A verbunden, wobei beide Latchs eine zweite Latch-Einrichtung bilden. Die Ausgaben des Vorauseil-Zählers 151 können zu dem kaskadierten Vorauseil-Zähler 153 und dem Nacheil-Zähler 152 in Fig. 9A, die mit einem Viertel der vorherigen Rate, oder einem GHz, getaktet werden, geführt werden. Diese langsameren Zähler liefern eine größere Zählfähigkeit. Der Ausgang des Vorauseil-Zählers 153 ist mit einem Latch 97 verbundene, während der Ausgang des Nacheil-Zählers 162 mit einem Latch 96 verbunden ist, wobei beide Latchs einen weiteren Abschnitt der zweiten Latch-Einrichtung bilden. Die Ausgabe der Zähler 152, 153 bei 250 MHz, entnommen entlang der Leitungen 148, wird zu Vorauseil-Nacheil-Zählern 154, 155 in Fig. 9B übertragen, in denen eine weitere Frequenzreduktion auf 62,5 MHz stattfindet. Der Ausgang des Vorauseil-Zählers 155 ist mit einem Latch 99 verbunden, während der Ausgang des Nacheil-Zählers 154 mit einem Latch 98 verbunden ist, wobei beide Latchs einen weiteren Abschnitt der zweiten Latch-Einrichtung bilden. Die Ausgaben der Latchs 98 und 99 werden zu einem Vierfach-Latch 106 übertragen.Pairs of lead/lag counters 150 and 151 count the number of times the dual thermometer code in the interpolator changes to 0. A full cycle is referred to as the inner clock (CLK INT) as shown by waveform 34 in Fig. 2. As the number of interval numbers from 0 to 15 then counts back to 0, for example, the lead/lag counters 150, 151 increment by 1. The lead and lag counters 150 and 151; 152 and 153; 154 and 155 are offset with respect to each other and with respect to the inner clock (CLK INT), that is, the lag counter counts behind the CLK INT, which in turn is behind the lead counter. The paired lead and lag counters 150, 151 are a Mobius configuration of flip-flops, also known as Johnson counters, as shown in Fig. 12. Each counter receives a CLK INT pulse along lines 86a and 86b at the 4 GHz rate. The CLK INT pulse comes from the output of buffer 49 of Fig. 8a. The lead and lag counters are in a master-slave relationship since the output of lead counter 151 becomes the input of lag counter 150. The amount of lead is 125 ps, one half period of the dual 250 ps thermometer code. The half cycle difference is halved by line 31 in Fig. 2. The output of lead counter 151 is connected along lines 90 to a latch 93 in Fig. 9A while the output of lag counter 150 is connected along lines 91 to a latch 94 in Fig. 9A, both latches forming a second latching device. The outputs of the lead counter 151 may be fed to the cascaded lead counter 153 and lag counter 152 in Fig. 9A, which are clocked at one quarter of the previous rate, or one GHz. These slower counters provide greater counting capability. The output of the lead counter 153 is connected to a latch 97, while the output of the lag counter 162 is connected to a latch 96, both latches forming another section of the second latching means. The output of the counters 152, 153 at 250 MHz, taken along lines 148, is fed to lead-lag counters 154, 155 in Fig. 9B, where a further frequency reduction to 62.5 MHz takes place. The output of the lead counter 155 is connected to a latch 99, while the output of the lag counter 154 is connected to a latch 98, both latches forming another section of the second latching means. The outputs of latches 98 and 99 are transferred to a quad latch 106.

Die Ausgabe der ersten Latch-Einrichtung, des Latchs 55 in Fig. 9A, wird in einer dritten Latch-Einrichtung, dem Latch 101 in Fig. 9B, die eine Acht-Leitungs-Ausgabe des dualen Thermometer-Codes aufweist, wiederum zwischengespeichert. Die Ausgabe der zweiten Latch-Einrichtung, der Latchs 93, 94, 96, 97, 98 und 99 in Fig. 9A wird in einer vierten Latch-Einrichtung erneut zwischengespeichert, die durch Vierfach-Latchs 103, 105 und 106 in Fig. 9B gebildet ist. Das erneute Zwischenspeichern der Ausgaben liefert Zeit für eine Auflösung beliebiger, vorheriger, metastabiler Zustände, die im Latch 55 auftreten konnten. Die Ausgaben der vierten Latch-Einrichtung werden für eine Kompression zu 2:1-Multiplexern 107, 109 und 156 geleitet, wobei der Multiplexer 107 auf einer Leitung 108 das höchstwertige Bit (MSB) des niederstwertigen Worts von dem Dual-Thermometer-Code- Latch 101 als einen Schlüssel zum Auswählen der Vorauseil- oder Nacheil-Ausgabe empfängt. Es sei ins Gedächtnis gerufen, daß das MSB des niederstwertigen Worts des dualen Thermometer-Codes sich zyklisch mit dem MSB gleichmäßig von 1 auf 0 auf 1, usw., ändert. Das Ausgabebit 5 von dem Multiplexer 107 wird als Schlüssel zum Auswählen, im Multiplexer 109, der Vorauseil- oder Nacheil-Ausgabe, die in dem Vierfach-Latch 105 zwischengespeichert ist, verwendet. Das Ausgabebit 7 von dem Multiplexer 109 wird wiederum als ein Schlüssel zum Auswählen der Vorauseil- oder Nacheilausgabe von den Zählern 154 und 155 durch den Multiplexer 156 verwendet.The output of the first latch, latch 55 in Fig. 9A, is again latched in a third latch, latch 101 in Fig. 9B, which has an eight-line output of the dual thermometer code. The output of the second latch, latches 93, 94, 96, 97, 98 and 99 in Fig. 9A, is again latched in a fourth latch formed by quad latches 103, 105 and 106 in Fig. 9B. Re-latching the outputs provides time for resolution of any previous metastable conditions that might have occurred in latch 55. The outputs of the fourth latch are passed to 2:1 multiplexers 107, 109 and 156 for compression, with multiplexer 107 receiving on line 108 the most significant bit (MSB) of the least significant word from dual thermometer code latch 101 as a key for selecting the lead or lag output. Recall that the MSB of the least significant word of the dual thermometer code cycles smoothly with the MSB from 1 to 0 to 1, etc. Output bit 5 from multiplexer 107 is used as a key for selecting, in multiplexer 109, the lead or lag output latched in quad latch 105. Output bit 7 from multiplexer 109 is in turn used as a key for selecting the lead or lag output from counters 154 and 155 by multiplexer 156.

Mit Exklusiv-ODER-Gattern 111, 112, 113 an ihren Ausgängen erzeugen die Multiplexer 107, 109 und 156 sechs Bits einer binären Ausgabe, die die Pulszahlen völlig tolerant gegenüber einem Versatz oder einem Jitter darstellen. Diese sechs Bits, die durch eine Schleife 115 angezeigt sind, stellen die grobe Ereigniszeitgebung dar, während die feine Zeitgebung von dem zwischengespeicherten dualen Thermometer-Code entlang der Leitung 117 kommt. Diese feinen Zeitgebungsdaten werden mittels eines Codierers 119, der eine Logik aufweist, die den Thermometer-Code in einen binären umwandelt, der eine Vier-Bit-Ausgabe auf einer Leitung 122 aufweist. Die vier Bits auf der Leitung 122 werden zusammen mit den sechs Bits der Schleife 115 in Ausgangs-Latchs 130 und 158 gelesen. Das Ausgangs-Latch 130 weist acht Ausgangsleitungen 132 auf. Das Ausgangs-Latch 158 hält zwei grobe Bits, die von dem Latch- Multiplexer 156 empfangen werden. Das Ausgangs-Latch 158 weist zwei Ausgangsleitungen 162 auf, die die gröbsten Ausgangsbits darstellen, welche "angrenzend verbunden" mit den acht Bits auf den Ausgangsleitungen 132 sind. Es sei bemerkt, daß die Latchs 130 und 158 durch das Signal LT1, das von der Verzögerungsschaltung 121 in Fig. 9A hergeleitet wird, getaktet werden. Die Verzögerungsschaltung 121 ist zwischen die erste und die dritte Latch-Einrichtung gelegt, wobei die Verzögerungsausgabe nicht nur die dritte Latch- Einrichtung, sondern ferner die vierte Latch-Einrichtung triggert. Diese Verzögerung ermöglicht eine Zeit zur Auflösung beliebiger metastabiler Zustände.With exclusive-OR gates 111, 112, 113 at their outputs, multiplexers 107, 109 and 156 produce six bits of binary output representing the pulse counts completely tolerant of skew or jitter. These six bits, indicated by a loop 115, represent the coarse event timing while the fine timing comes from the latched dual thermometer code along line 117. This fine timing data is processed by means of an encoder 119 having logic which converts the thermometer code to binary having a four bit output on line 122. The four bits on line 122 are read into output latches 130 and 158 along with the six bits of loop 115. Output latch 130 has eight output lines 132. The output latch 158 holds two coarse bits received from the latch multiplexer 156. The output latch 158 has two output lines 162 representing the coarsest output bits which are "contiguously connected" to the eight bits on the output lines 132. Note that that latches 130 and 158 are clocked by signal LT1 derived from delay circuit 121 in Fig. 9A. Delay circuit 121 is connected between the first and third latches, with the delay output triggering not only the third latch but also the fourth latch. This delay allows time for any metastable conditions to resolve.

Die Verzögerungsschaltung ist in Fig. 10 gezeigt, wobei eine Anzahl von D-Typ-Flip-Flops 141, 143..., 145 und 147 seriell angeordnet sind. Es existieren tatsächlich 13 Flip-Flops, die seriell verbunden sind. Das Ereignissignal wird dann auf der Leitung 11 zu einem Flip-Flop 141 gesendet. Das Signal CLK INT wird entlang der Leitung 14 zugeführt, wobei die ansteigende Taktflanke eine Ausgabe an dem Q-Anschluß triggert, die zu dem D-Eingang eines Flip-Flops 143 übertragen wird, wobei diese Eingabe durch die nächste ansteigende Flanke getaktet wird. Die Schaltung von Fig. 10 verzögert ein Ereignissignal um sechs bis sieben Taktpulse. Dies ist eine ausreichende Zeit, um zu ermöglichen, daß der Latch 55, der in Fig. 9A gezeigt ist, stabilisiert. Ein Verzögerungssignal wird zu der dritten Latch-Einrichtung 101 und zu der vierten Latch-Einrichtung, die durch die Latchs 130, 158 gebildet ist, wie in Fig. 9B gezeigt ist, übertragen.The delay circuit is shown in Fig. 10, with a number of D-type flip-flops 141, 143..., 145 and 147 arranged in series. There are actually 13 flip-flops connected in series. The event signal is then sent on line 11 to a flip-flop 141. The signal CLK INT is supplied along line 14, with the rising clock edge triggering an output at the Q terminal which is transferred to the D input of a flip-flop 143, this input being clocked by the next rising edge. The circuit of Fig. 10 delays an event signal by six to seven clock pulses. This is sufficient time to allow the latch 55 shown in Fig. 9A to stabilize. A delay signal is transmitted to the third latch 101 and to the fourth latch formed by the latches 130, 158 as shown in Fig. 9B.

In Fig. 11 ist der duale Thermometer-Code als eine Reihe von Zeitgebungszuständen 127 gezeigt, die Code-Teilabschnitte darstellen. Die Pulszahl bei 8 Thermometer-Code-Pulsen, die durch vertikale gestrichelte Linien dargestellt sind, fallen mit einem Übergang in dem MUX-AUSWAHL-Signal 129 in der Kurve E zusammen, welche bei der Linie 108 in Fig. 9B erscheint. Dieses Signal wird von der Leitung des Latchs 101 in Fig. 9B entnommen, die das höchstwertige Bit (MSB) des Worts in dem Latch ist. Das MUX-AUSWAHL-Signal 129 wählt entweder die Nacheil-Zähler-Ausgabe, die in der Kurve D gezeigt ist, oder die Vorauseil-Zähler-Ausgabe, die in der Kurve C von Fig. 11 gezeigt ist. Das MUX-AUSWAHL-Signal ist für die Dauer bis zum nächsten Ereignis stabil. Wie in Fig. 9B zu sehen ist, folgt der Multiplexer 109 dem Multiplexer 107 und der Multiplexer 156 folgt dem Multiplexer 109 beinahe unmittelbar.In Fig. 11, the dual thermometer code is shown as a series of timing states 127 representing code subsections. The pulse count at 8 thermometer code pulses, represented by vertical dashed lines, coincide with a transition in the MUX SELECT signal 129 in curve E, which appears at line 108 in Fig. 9B. This signal is taken from the line of latch 101 in Fig. 9B, which is the most significant bit (MSB) of the word in the latch. The MUX SELECT signal 129 selects either the lag counter output shown in curve D or the lead counter output shown in curve C of Fig. 11. The MUX SELECT signal is stable for the duration until the next event. As can be seen in Fig. 9B, multiplexer 109 follows multiplexer 107 and multiplexer 156 follows multiplexer 109 almost immediately.

Zurückkehrend zu Fig. 9A sollte bemerkt werden, daß ein verzögertes Ereignis als eine Ausgabe entlang einer Leitung 140 verfügbar ist. Eine hin- und hergeschaltete Ereignisausgabe, d.h. eine solche, die bei dem ersten Ereignis einen ersten Zustand annimmt, und bei dem nächsten Ereignis den Zustand ändert, ist auf einer Leitung 139 verfügbar. Diese Ereignisausgaben sind besonders nützlich, wenn die Schaltung der Fig. 9A und 9B als ein Chip hergestellt ist, da die Ausgaben in einem erweiterten Schaltungsaufbau verwendet werden können, wie in Fig. 13 gezeigt ist. Obwohl eine bevorzugte Rate für CLK INT auf der Leitung 86, Fig. 9A, 4 GHz ist, was bedeutet, daß jeder Taktpuls 250 ps dauert, können andere Raten verwendet werden. Eine bevorzugte maximale Eingangssignal-Bandbreite für eine solche Taktrate läge in der Größenordnung von 500 MHz. Jeder Taktpuls von 250 ps wurde vorzugsweise in 16 Teilabschnitte unterteilt, derart, daß jeder Teilabschnitt, der durch den Ringoszillator und die dazugehörigen Multiplexer erzeugt wurde, etwa 15,6 ps beträgt, wobei jedoch andere Teilabschnitt-Intervalle verwendet werden könnten. Bei dem hierin gegebenen Beispiel zählen die Vorauseil-Nacheil-Zähler jeweils 64 Teilabschnitte, 250 ps, bevor sie den Zustand ändern. Der Multiplexer, der mit den Zählern verbunden ist, wählt einen Vorauseil-Nacheil-Zähler bei dem doppelten dieser Rate, wobei er den Zustand jeweils bei acht Teilabschnitten oder einem halben Taktpuls ändert. Auf diese Weise werden Taktpulse gekennzeichnet.Returning to Fig. 9A, it should be noted that a delayed event is available as an output along line 140. A toggled event output, i.e., one that assumes a first state on the first event and changes state on the next event, is available on line 139. These event outputs are particularly useful when the circuit of Figs. 9A and 9B is fabricated as a chip, since the outputs can be used in an expanded circuit design as shown in Fig. 13. Although a preferred rate for CLK INT on line 86, Fig. 9A, is 4 GHz, meaning that each clock pulse lasts 250 ps, other rates may be used. A preferred maximum input signal bandwidth for such a clock rate would be on the order of 500 MHz. Each 250 ps clock pulse was preferably divided into 16 sub-slices such that each sub-slice produced by the ring oscillator and associated multiplexers was approximately 15.6 ps, although other sub-slice intervals could be used. In the example given herein, the lead-lag counters each count 64 sub-slices, 250 ps, before changing state. The multiplexer connected to the counters selects a lead-lag counter at twice this rate, changing state every eight sub-slices, or half a clock pulse. In this way, clock pulses are marked.

In Fig. 13 ist eine Zählerweiterungsschaltung, deren Ereignis-Zeitgeberchip den Schaltungsaufbau von Fig. 9, der als Chip 200 dargestellt ist, aufweist, mit externen Verbindungen gezeigt, die eine externe Taktleitung 160 mit 62,5 MHZ, eine Ausgabeleitung 140 für ein verzögertes Ereignis, Ausgabeleitungen 162 für die zwei gröbsten Bits, eine Leitung 139 für das verzögerte und hin- und hergeschaltete Ereignis, welches als ein Datenschreibsignal verwendet ist, und Ausgabeleitungen 132 mit Ereigniszeitdaten in einem binären Format einschließen. Das externe Taktsignal ist durch einen Puffer 202 stabilisiert und wird zu den Vorauseil-Nacheil- Zählern übertragen. Der Zähler 204 bildet den Vorauseil-Zähler mit acht Ausgabebits, wobei der Zähler auf die führende Flanke des externen Taktpulses zählt. Ein Latch 206 bildet den Nacheil-Zähler durch das Zwischenspeichern der acht Ausgabebits des Zählers auf die nachlaufende Flanke des externen Taktpulses. Die vier höchstwertigen Bits von jedem der Vorauseil-Nacheil-Zähler werden zu einem Latch-2: 1-Multiplexer 214 übertragen, während die vier niederstwertigen Bits von jedem der Zähler zu einem Latch-2:1-Multiplexer 212 übertragen werden. Der Multiplexer 212 kopiert die zwei Ausgabebits auf der Leitung 162 als die zwei niederstwertigen Ausgabebits von den zwei Multiplexern 212 und 214. Die nächsten vier Ausgabebits von dem Multiplexer 212 werden zwischen den vier niederstwertigen Bits von dem Vorauseil-Zähler 204 auf einer Leitung 223 oder den vier niederstwertigen Bits von dem Nacheil-Zähler 206 auf einer Leitung 225 ausgewählt, wobei die Auswahl durch das Bit auf einer Leitung 216 getroffen wird, dem höchstwertigen Bit des Codes. Der Multiplexer 214 weist eine Ausgabe der vier höchstwertigen Bits in der Zahl auf. Diese werden entweder von dem Vorauseil- Zähler 204 auf einer Leitung 224 oder von dem Nacheil-Zähler 206 auf einer Leitung 226 hergeleitet. Die zwei Auswahlen werden durch ein Signal durch das höchstwertige Bit auf der Leitung 216, die vorher erwähnt wurde, ausgewählt, wobei die Ausgabe des Vorauseil-Zählers gewählt wird, wenn das Auswahlbit eine Null ist, und die Ausgabe des Nacheil-Zählers für eine Eins ausgewählt wird. Diese Ausgaben werden auf Leitungen 220, 222 gegeben, wodurch sich zehn Bits, die die zwei kopierten Bits von der Leitung 162 einschließen, ergeben. Das Ereignissignal auf der Leitung 140 ist bei der Verzögerung 221 vor der Lieferung zu dem Taktanschluß jedes der Multiplexer 212 und 214 um etwa 625 ps verzögert. Dies ermöglicht es, daß die vorauseilende Phase des Ereignis-Signals auf der Leitung 140 an die verzögerte Phase des Takt signals auf der Leitung 160 angepaßt wird. Ein SCHREIBEN- Ausgangssignal, das sich auf die acht niederstwertigen Ausgabebits von dem Chip 200 bezieht, wird nach dem Leiten durch die Verzögerung 229 auf einer Leitung 228 geliefert. In gleicher Weise wird ein SCHREIBEN-Ausgangssignal für die zehn höchstwertigen Ausgabebits von dem Hilfsschaltungsaufbau von Fig. 13 auf einer Leitung 230 geliefert. Beide Schreibsignale können zu einer Speichervorrichtung übertragen werden, in der die Zeitgeberdaten verwendet werden.In Fig. 13, a counter expansion circuit is shown whose event timer chip has the circuitry of Fig. 9, shown as chip 200, with external connections including an external clock line 160 at 62.5 MHz, a delayed event output line 140, output lines 162 for the two coarsest bits, a line 139 for the delayed and toggle event used as a data write signal, and output lines 132 with event timing data in a binary format. The external clock signal is stabilized by a buffer 202 and is transmitted to the lead-lag counters. Counter 204 forms the lead counter with eight output bits, the counter counting on the leading edge of the external clock pulse. A latch 206 forms the lag counter by latching the eight output bits of the counter on the trailing edge of the external clock pulse. The four most significant bits of each of the lead-lag counters are transmitted to a latch 2:1 multiplexer 214, while the four least significant bits of each of the counters are transmitted to a latch 2:1 multiplexer 212. The multiplexer 212 copies the two output bits on line 162 as the two least significant output bits from the two multiplexers 212 and 214. The next four output bits from the multiplexer 212 are selected between the four least significant bits from the lead counter 204 on a line 223 or the four least significant bits from the lag counter 206 on a line 225, the selection being made by the bit on a line 216, the most significant bit of the code. The multiplexer 214 has an output of the four most significant bits in the number. These are derived from either the lead counter 204 on a line 224 or the lag counter 206 on a line 226. The two selections are selected by a signal through the most significant bit on line 216 mentioned previously, the output of the lead counter being selected when the selection bit is a zero and the output of the lag counter being selected for a one. These outputs are provided on lines 220, 222, resulting in ten bits including the two copied bits from line 162. The event signal on line 140 is delayed by approximately 625 ps at delay 221 before being provided to the clock terminal of each of the multiplexers 212 and 214. This allows the leading phase of the event signal on line 140 is matched to the delayed phase of the clock signal on line 160. A WRITE output signal relating to the eight least significant output bits from chip 200 is provided on a line 228 after passing through delay 229. Similarly, a WRITE output signal for the ten most significant output bits is provided from the auxiliary circuitry of Fig. 13 on a line 230. Both write signals may be transferred to a memory device in which the timing data is used.

Es ist möglich, diese Schaltung noch weiter zu kaskadieren, wodurch die gemessene Zeit zwischen Ereignissen gedehnt wird. Das Verfahren der Erweiterung wäre analog zu der vorliegenden Erweiterung.It is possible to cascade this circuit even further, thus stretching the measured time between events. The method of extension would be analogous to the present extension.

Claims (10)

1. Eine Pikosekunden-Ereigniszeitgeber-Schaltung zum Liefern eines digitalen Ausgangssignals, das die Zeit anzeigt, zu der ein Ereignissignal auftritt, mit folgenden Merkmalen:1. A picosecond event timer circuit for providing a digital output signal indicative of the time at which an event signal occurs, comprising: einer Ringoszillator-Einrichtung (13), die einen Zug von gleichmäßig beabstandeten Taktpulsen mit einer vorbestimmten Taktperiode erzeugt;a ring oscillator device (13) which generates a train of evenly spaced clock pulses having a predetermined clock period; einer Grob-Zeitgebungs-Einrichtung (17), die die Taktpulse empfängt und ein grobes Zeitsignal liefert, das die Zeiten anzeigt, zu denen die Pulse auftreten;a coarse timing device (17) receiving the clock pulses and providing a coarse timing signal indicative of the times at which the pulses occur; einem Interpolator (15), der die Taktpulse empfängt und ein feines Zeitsignal liefert, das eine Periode aufweist, die ein ganzzahliges Teilvielfaches einer vorbestimmten Taktperiode ist;an interpolator (15) which receives the clock pulses and provides a fine timing signal having a period that is an integer multiple of a predetermined clock period; einer Grob-Latch-Einrichtung (93, 94, 96, 97), die das Ereignissignal empfängt und das grobe Zeitsignal zwischenspeichert, wenn das Ereignis auftritt, wodurch ein grobes Zeit-des-Ereignisses-Signal geliefert wird;a coarse latch (93, 94, 96, 97) receiving the event signal and latching the coarse time signal when the event occurs, thereby providing a coarse time of event signal; einer Fein-Latch-Einrichtung (55, 101), die das Ereignis-Signal empfängt und das Feinzeitsignal zwischenspeichert, wenn das Ereignis-Signal auftritt, wodurch ein feines Zeit-des-Ereignisses-Signal geliefert wird; unda fine latch (55, 101) receiving the event signal and latching the fine timing signal when the event signal occurs, thereby providing a fine timing signal; and einer Ausgabeeinrichtung (158, 130), die das grobe und das feine Zeit-des-Ereignisses-Signal empfängt und dieselben in ein digitales Ausgangssignal kombiniert, das eine Mehrzahl von niederstwertigen Bits aufweist, die das feine Zeitsignal anzeigen, und eine Mehrzahl von höchstwertigen Bits, die das grobe Zeitsignal anzeigen.an output device (158, 130) that receives the coarse and fine time-of-event signals and combines them into a digital output signal that a plurality of least significant bits indicating the fine timing signal and a plurality of most significant bits indicating the coarse timing signal. 2. Eine Schaltung gemäß Anspruch 1, bei der die Ringoszillator-Einrichtung (13) einen Walker-Oszillator aufweist, der durch einen Arbeitszyklus von fünfzig Prozent plus oder minus nicht mehr als etwa ein Prozent charakterisiert ist.2. A circuit according to claim 1, wherein the ring oscillator means (13) comprises a Walker oscillator characterized by a duty cycle of fifty percent plus or minus not more than about one percent. 3. Eine Schaltung gemäß Anspruch 1, bei der die Periode der Ringoszillator-Einrichtung (13) durch einen externen Standard (32) gesteuert wird.3. A circuit according to claim 1, wherein the period of the ring oscillator device (13) is controlled by an external standard (32). 4. Eine Schaltung gemäß Anspruch 1, bei der der Interpolator eine Mehrzahl von linearen Kombinierer-Elementen (71, 73...) aufweist, die hierarchisch mit der Ringoszillator-Einrichtung (13) verbunden sind.4. A circuit according to claim 1, wherein the interpolator comprises a plurality of linear combiner elements (71, 73...) which are hierarchically connected to the ring oscillator device (13). 5. Eine Schaltung gemäß Anspruch 4, bei der die linearen Kombiniererelemente (71) abstimmbar sind (70).5. A circuit according to claim 4, wherein the linear combiner elements (71) are tunable (70). 6. Eine Schaltung gemäß Anspruch 1, bei der das feine Zeitsignal einen periodischen Code (39) aufweist, bei dem sich nur ein Bit zwischen zwei beliebigen benachbarten Zuständen unterscheidet.6. A circuit according to claim 1, wherein the fine timing signal comprises a periodic code (39) in which only one bit differs between any two adjacent states. 7. Eine Schaltung gemäß Anspruch 1, bei der die Fein- Latch-Einrichtung einen ersten (55) und einen zweiten (101) Fein-Latch aufweist, wobei der erste Latch eine Verbindung mit dem Ereignis-Signal (11) aufweist, und wobei der zweite Latch eine Verbindung mit dem ersten aufweist und eine Verzögerung bezüglich demselben besitzt.7. A circuit according to claim 1, wherein the fine latch means comprises a first (55) and a second (101) fine latch, the first latch having a connection to the event signal (11), and the second latch having a connection to the first and having a delay with respect to the same. 8. Eine Schaltung gemäß Anspruch 1, bei der die Grob-Zeitgebungseinrichtung eine Mehrzahl von Mobius-Flip-Flops (150, 151) aufweist.8. A circuit according to claim 1, wherein the coarse timing means comprises a plurality of Mobius flip-flops (150, 151). 9. Eine Schaltung gemäß Anspruch 1, bei der die Grob-Zeitgebungseinrichtung zwei Zeitgebungseinrichtungen (150, 151) aufweist, die zueinander phasenverschoben sind.9. A circuit according to claim 1, wherein the coarse timing means comprises two timing means (150, 151) which are phase-shifted with respect to each other. 10. Eine Schaltung gemäß Anspruch 9, bei der die Grob- Latch-Einrichtung einen ersten (93, 94, 96, 97) und einen zweiten (103, 105) Grob-Latch aufweist, wobei der erste Latch eine Verbindung mit dem Ereignissignal aufweist, und wobei der zweite Latch eine Verbindung mit dem ersten Latch aufweist und eine Verzögerung bezüglich desselben besitzt und wirksam ist, um zwischen den zwei Zeitgebungseinrichtungen auszuwählen.10. A circuit according to claim 9, wherein the coarse latch means comprises a first (93, 94, 96, 97) and a second (103, 105) coarse latch, the first latch having a connection to the event signal, and the second latch having a connection to and having a delay with respect to the first latch and being operative to select between the two timing means.
DE69207741T 1991-12-19 1992-08-06 Timers for events in the picosecond range Expired - Fee Related DE69207741T2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/810,946 US5166959A (en) 1991-12-19 1991-12-19 Picosecond event timer

Publications (2)

Publication Number Publication Date
DE69207741D1 DE69207741D1 (en) 1996-02-29
DE69207741T2 true DE69207741T2 (en) 1996-08-29

Family

ID=25205100

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69207741T Expired - Fee Related DE69207741T2 (en) 1991-12-19 1992-08-06 Timers for events in the picosecond range

Country Status (5)

Country Link
US (1) US5166959A (en)
EP (1) EP0547292B1 (en)
JP (1) JP3337507B2 (en)
DE (1) DE69207741T2 (en)
HK (1) HK210496A (en)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2868266B2 (en) * 1990-01-25 1999-03-10 株式会社日本自動車部品総合研究所 Signal phase difference detection circuit and signal phase difference detection method
US5428648A (en) * 1992-09-18 1995-06-27 Sony Corporation Digital PLL circuit having signal edge position measurement
JP2929888B2 (en) * 1993-03-26 1999-08-03 株式会社デンソー Pulse phase difference encoding circuit
GB2296142B (en) * 1994-12-16 1998-03-18 Plessey Semiconductors Ltd Circuit arrangement for measuring a time interval
US5828717A (en) * 1995-03-28 1998-10-27 Matsushita Electric Industrial Co. Ltd. Time counting circuit and counter circuit
US5812626A (en) * 1995-06-13 1998-09-22 Matsushita Electric Industrial Co., Ltd. Time counting circuit sampling circuit skew adjusting circuit and logic analyzing circuit
JP2793524B2 (en) * 1995-07-31 1998-09-03 日本電気アイシーマイコンシステム株式会社 Time measurement system and its measurement method
US5835552A (en) * 1995-11-13 1998-11-10 Matsushita Electric Industrial Co.,Ltd. Time counting circuit and counter circuit
US5703838A (en) * 1996-02-16 1997-12-30 Lecroy Corporation Vernier delay line interpolator and coarse counter realignment
US5793709A (en) * 1996-04-19 1998-08-11 Xli Corporation Free loop interval timer and modulator
US5903522A (en) * 1996-04-19 1999-05-11 Oak Technology, Inc. Free loop interval timer and modulator
JP3123931B2 (en) * 1996-08-29 2001-01-15 日本電気アイシーマイコンシステム株式会社 Time measuring system and time measuring method
US5818890A (en) * 1996-09-24 1998-10-06 Motorola, Inc. Method for synchronizing signals and structures therefor
US6255969B1 (en) * 1997-12-18 2001-07-03 Advanced Micro Devices, Inc. Circuit and method for high speed bit stream capture using a digital delay line
US6377094B1 (en) 2002-03-25 2002-04-23 Oak Technology, Inc. Arbitrary waveform synthesizer using a free-running ring oscillator
US6393088B1 (en) * 2001-01-16 2002-05-21 Wavecrest Corporation Measurement system with a frequency-dividing edge counter
US6535735B2 (en) * 2001-03-22 2003-03-18 Skyworks Solutions, Inc. Critical path adaptive power control
US6894953B2 (en) * 2001-09-12 2005-05-17 Lockheed Martin Corporation Circuit for measuring time of arrival of an asynchronous event
US6480126B1 (en) * 2001-10-26 2002-11-12 Agilent Technologies, Inc. Phase digitizer
US6738143B2 (en) * 2001-11-13 2004-05-18 Agilent Technologies, Inc System and method for interferometer non-linearity compensation
US6792368B2 (en) * 2002-01-17 2004-09-14 Agilent Technologies, Inc. System and method for heterodyne interferometer high velocity type non-linearity compensation
US6868503B1 (en) * 2002-01-19 2005-03-15 National Semiconductor Corporation Adaptive voltage scaling digital processing component and method of operating the same
US6950375B2 (en) * 2002-12-17 2005-09-27 Agilent Technologies, Inc. Multi-phase clock time stamping
US7613263B2 (en) * 2003-03-04 2009-11-03 Altera Corporation Clock and data recovery method and apparatus
US6952175B2 (en) * 2003-09-23 2005-10-04 Agilent Technologies, Inc. Phase digitizer for signals in imperfect quadrature
US20050163255A1 (en) * 2004-01-22 2005-07-28 Broadcom Corporation System and method for simplifying analog processing in a transmitter
US7606321B2 (en) * 2004-01-22 2009-10-20 Broadcom Corporation System and method for simplifying analog processing in a transmitter incorporating a randomization circuit
US6822588B1 (en) * 2004-04-15 2004-11-23 Agilent Technologies, Inc. Pulse width modulation systems and methods
US7436519B2 (en) 2005-06-01 2008-10-14 Agilent Technologies, Inc. System and method for interferometer non-linearity compensation
JP2007085933A (en) * 2005-09-22 2007-04-05 Agilent Technol Inc Frequency measuring technique and frequency measuring device
US7339853B2 (en) * 2005-12-02 2008-03-04 Agilent Technologies, Inc. Time stamping events for fractions of a clock cycle
US7446612B2 (en) * 2006-09-08 2008-11-04 Skyworks Solutions, Inc. Amplifier feedback and bias configuration
US8138843B2 (en) * 2006-09-15 2012-03-20 Massachusetts Institute Of Technology Gated ring oscillator for a time-to-digital converter with shaped quantization noise
US8346832B2 (en) * 2006-10-12 2013-01-01 The Regents Of The University Of Michigan Random number generator
US7696826B2 (en) * 2006-12-04 2010-04-13 Skyworks Solutions, Inc. Temperature compensation of collector-voltage control RF amplifiers
US7605375B2 (en) * 2007-04-26 2009-10-20 Oy Ajat Ltd. Multi-functional radiation/photon identifying and processing application specific integrated circuit and device
US7921312B1 (en) 2007-09-14 2011-04-05 National Semiconductor Corporation System and method for providing adaptive voltage scaling with multiple clock domains inside a single voltage domain
US8050148B2 (en) * 2008-07-03 2011-11-01 Texas Instruments Incorporated Flash time stamp apparatus
US7930121B2 (en) * 2008-07-03 2011-04-19 Texas Instrument Incorporated Method and apparatus for synchronizing time stamps
EP2375294A1 (en) 2010-04-07 2011-10-12 Imec Improvements in or relating to time stamp generation
ITBO20110461A1 (en) 2011-07-29 2013-01-30 Alfa Wassermann Spa PHARMACEUTICAL COMPOSITIONS INCLUDING RIFAXIMINA, PROCESSES FOR THEIR PREPARATION AND THEIR USE IN THE TREATMENT OF VAGINAL INFECTIONS.
US8498373B2 (en) * 2011-09-20 2013-07-30 Arm Limited Generating a regularly synchronised count value
US20160038468A1 (en) 2013-03-15 2016-02-11 Alfa Wassermann S.P.A. Rifaximin for use in the treating of vaginal infections
WO2014140995A2 (en) 2013-03-15 2014-09-18 Alfa Wassermann S.P.A. Method for diagnosing vaginal infections
FR3052559B1 (en) 2016-06-10 2020-06-12 Onera (Office National D'etudes Et De Recherches Aerospatiales) SYSTEM AND METHOD FOR PROVIDING THE AMPLITUDE AND PHASE DELAY OF A SINUSOIDAL SIGNAL
US11641206B2 (en) * 2021-01-07 2023-05-02 AyDeeKay LLC Digitally calibrated programmable clock phase generation circuit

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4468746A (en) * 1981-12-01 1984-08-28 Cincinnati Electronics Corporation Apparatus for determining interval between two events
US4731768A (en) * 1986-09-15 1988-03-15 Tektronix Autoranging time stamp circuit
US4764694A (en) * 1987-04-22 1988-08-16 Genrad, Inc. Interpolating time-measurement apparatus
US4908784A (en) * 1987-08-04 1990-03-13 Wave Technologies, Inc. Method and apparatus for asynchronous time measurement

Also Published As

Publication number Publication date
HK210496A (en) 1996-12-06
EP0547292A1 (en) 1993-06-23
JP3337507B2 (en) 2002-10-21
EP0547292B1 (en) 1996-01-17
US5166959A (en) 1992-11-24
DE69207741D1 (en) 1996-02-29
JPH05273364A (en) 1993-10-22

Similar Documents

Publication Publication Date Title
DE69207741T2 (en) Timers for events in the picosecond range
DE69112232T2 (en) Pulse phase difference coding circuit.
DE68915756T2 (en) PROGRAMMABLE HIGH-SPEED DIVIDER.
DE60204597T2 (en) COMPACT AUTOMATIC TESTER (ATE) WITH TIMING STAMP SYSTEM
DE102008047163B4 (en) Determining a time interval based on a first signal, a second signal and a jitter of the first signal
EP1554803B1 (en) Method and device for generating a clock signal with predetermined clock signal properties
DE19734028C2 (en) Circuit for glitch-free switching of digital signals
EP1352329B1 (en) Data reception circuit for the reception of a serial input data stream
DE19922712A1 (en) Calibrator for phase delay interpolator
DE2625545A1 (en) AUTOMATIC PULSE CALIBRATION DEVICE
DE4231175C1 (en) Arrangement for clock recovery
DE10127293A1 (en) Timer circuit with dual phase locked loops
DE68912635T2 (en) Frequency counter.
DE4004195C2 (en) Circuit arrangement for generating a signal coupled to a reference signal
DE60217847T2 (en) CIRCUIT FOR GENERATING A MULTI-PHASE CLOCK SIGNAL
DE19811868C2 (en) High resolution delay circuit
DE19581595C2 (en) Signal transmission device with multiple LSIs
DE69305761T2 (en) Encoder decoder
DE102008064063B4 (en) A control signal generating circuit for setting a period value of a generated clock signal as the period of a reference signal multiplied by or divided by an arbitrary real number
DE60126316T2 (en) ARRANGEMENT FOR DATA COLLECTION
DE3486447T2 (en) Lock detector for a digital phase locked loop
DE3634594A1 (en) Circuit arrangement for generating frequency ratios with rational numbers
DE60030538T2 (en) synchronization procedures
DE19963684B4 (en) Delay Lock Loop Clock Generator Using Delay Pulse Delay Conversion
DE2435057A1 (en) Synchronisation pulse generator - delivers pulse at specified instant of each binary pulse train

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: AGILENT TECHNOLOGIES, INC. (N.D.GES.D.STAATES DELA

8327 Change in the person/name/address of the patent owner

Owner name: AGILENT TECHNOLOGIES, INC. (N.D.GES.D. STAATES, US

8339 Ceased/non-payment of the annual fee