DE69014701T2 - Verfahren zum Betreiben einer programmierbaren Verzögerungsschaltung und programmierbare Verzögerungsschaltung. - Google Patents

Verfahren zum Betreiben einer programmierbaren Verzögerungsschaltung und programmierbare Verzögerungsschaltung.

Info

Publication number
DE69014701T2
DE69014701T2 DE69014701T DE69014701T DE69014701T2 DE 69014701 T2 DE69014701 T2 DE 69014701T2 DE 69014701 T DE69014701 T DE 69014701T DE 69014701 T DE69014701 T DE 69014701T DE 69014701 T2 DE69014701 T2 DE 69014701T2
Authority
DE
Germany
Prior art keywords
delay
circuit
signal paths
err
additional
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
DE69014701T
Other languages
English (en)
Other versions
DE69014701D1 (de
Inventor
Jeffrey Herbert Fisher
Lawrence Joseph Grasso
Dale Eugene Hoffman
Daniel Edward Skooglund
Diane Kay Young
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69014701D1 publication Critical patent/DE69014701D1/de
Publication of DE69014701T2 publication Critical patent/DE69014701T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/131Digitally controlled
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K5/13Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals
    • H03K5/135Arrangements having a single output and transforming input signals into pulses delivered at desired time intervals by the use of time reference signals, e.g. clock signals
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/00078Fixed delay
    • H03K2005/00097Avoiding variations of delay using feedback, e.g. controlled by a PLL
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/00078Fixed delay
    • H03K2005/00097Avoiding variations of delay using feedback, e.g. controlled by a PLL
    • H03K2005/00104Avoiding variations of delay using feedback, e.g. controlled by a PLL using a reference signal, e.g. a reference clock
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/0015Layout of the delay element
    • H03K2005/00234Layout of the delay element using circuits having two logic levels
    • H03K2005/00247Layout of the delay element using circuits having two logic levels using counters
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K5/00Manipulating of pulses not covered by one of the other main groups of this subclass
    • H03K2005/00013Delay, i.e. output pulse is delayed after input pulse and pulse length of output pulse is dependent on pulse length of input pulse
    • H03K2005/0015Layout of the delay element
    • H03K2005/00234Layout of the delay element using circuits having two logic levels
    • H03K2005/00254Layout of the delay element using circuits having two logic levels using microprocessors

Landscapes

  • Physics & Mathematics (AREA)
  • Nonlinear Science (AREA)
  • Pulse Circuits (AREA)

Description

  • Die vorliegende Erfindung betrifft im allgemeinen Signalverzögerungsschaltungen und im besonderen eine programmierbare Verzögerungsschaltung, mit der ein elektronisches Signal hochgenau um eine festgelegte Zeitspanne verzögert werden kann.
  • Hintergrund der Erfindung
  • Die Möglichkeit, reproduzierbare, hochgenaue Zeitverzögerungsinkremente zu erzeugen, stellt in vielen digitalen Signalverarbeitungssystemen ein kritisches Problem dar. Beispielsweise erfordern automatische Testsysteme zur Prüfung von höchstintegrierten (VLSI - very large scale integration) Logikschaltungen und Speichermatrizen die Möglichkeit, wählbare Zeitverzögerungen im Pikosekundenbereich (ps) mit hoher Genauigkeit bereitzustellen.
  • Weil solche Testsysteme verwendet werden, um Chips zu überprüfen, bei denen die Anzahl der Ein-/Ausgabeanschlüsse (I/O) 200 bis 500 erreichen kann, müssen hochgenaue Signalverzögerungen des oben beschriebenen Typs in entsprechend großen Anzahlen erzeugt werden, d.h. für einen hohen Prozentsatz der E/A-Anschlüsse. Folglich müssen Schaltungen zur Erzeugung solcher Verzögerungen nicht nur in der Lage sein, die erforderliche Genauigkeit zu liefern, sondern müssen bezüglich Größe und Kosten ebenfalls ökonomisch sein, um für den Einsatz in großen Stückzahlen praktisch geeignet zu sein.
  • Das U.S.-Patent Nr. 4 016 511 von Ramsey et al. zeigt eine programmierbare digitale Verzögerungsschaltung für Verzögerungen variabler Länge, wobei getaktete Schieberegisterelemente variabler Länge über digital steuerbare Schalter miteinander verbunden sind. Die Steuerung der Schalter bewirkt die Steuerung der Verzögerung. Die Schaltung von Ramsey et al. hat jedoch den Nachteil, daß die Zeitverzögerungsinkremente durch die Taktfrequenz der Schieberegister begrenzt sind. Desweiteren erfordert die Schaltung von Ramsey et al. die Implementierung einer relativ komplexen, teuren Schalteranordnung.
  • Das U.S.-Patent Nr. 3 781 822 von Ahamed zeigt eine Schaltung zur Änderung der Datenrate und zur Umordnung von Daten, wobei eine Vielzahl in Reihe geschalteter Stufen bereitgestellt werden, jede Stufe ein Paar parallelgeschaltete Verzögerungspfade umfaßt und jeder Verzögerungspfad eine andere Verzögerung bereitstellt. Bei Ahamed sind die Ausgänge jedes Verzögerungspfadpaares so verschaltet, daß Daten, die über die unterschiedlichen Pfade übertragen werden, in gewünschter Weise wieder zusammengesetzt werden. Diese Schaltungsanordnung umfaßt eine Vielzahl Verzögerungsstufen, wobei jede Verzögerungsstufe erste und zweite Signalpfade für das elektronische Signal enthält. Der erste Signalpfad hat eine Referenzverzögerung (Ni), während der zweite Signalpfad die Referenzverzögerung plus eine zusätzlich Verzögerung (Ni + 2i) besitzt. Eine Steuerschaltung führt für jede Stufe die Auswahl zwischen dem ersten und dem zweiten Signalpfad durch. Die tatsächlichen Verzögerungszeiten der unterschiedlichen Signalpfade sind so ausgewählt, daß keine fein einstellbaren Verzögerungen bereitgestellt werden, sondern daß eine gewünschte Veränderung der Datenrate oder eine Umordnung der verarbeiteten Daten vorgenommen werden kann.
  • Das U.S.-Patent Nr. 3 526 840 von Wheaton Jr. zeigt eine Vielzahl in Reihe geschalteter Stufen mit Steuer- und Zeitgeberschaltung, wobei jede Stufe ein Paar paralleler Pfade enthält und jeder Pfad eine andere Verzögerungszeit bereitstellt. Bei Wheaton Jr. hat der erste Pfad eine minimale Verzögerung durch ein Gatter, während der zweite Pfad einen längeren Verzögerungspfad über einen monostabilen Multivibrator umfaßt. Eine solche Anordnung könnte nicht die fein aufgelösten Verzögerungen bereitstellen, wie sie durch die beanspruchte Erfindung bereitgestellt werden.
  • Das U.S.-Patent Nr. 4 737 670 von Chan zeigt eine Schaltung zur Erzeugung einer konstanten Verzögerung zwischen einem Eingang und einem Ausgang, unabhängig von Veränderungen der Gatterverzögerungen aufgrund veränderlicher Faktoren wie beispielsweise Temperatur und Spannungsversorgungspegel. Die Schaltungsanordnung enthält eine Ringoszillatorschaltung, die auf demselben Halbleiterchip aufgebaut ist wie eine variable Verzögerungsschaltung. Die Frequenz der Ringoszillatorschaltung wird periodisch gemessen und dazu verwendet, die geeignete Verzögerung auszuwählen. Somit wird, wenn sich die Frequenz der Ringoszillatorschaltung verändert, die geeignete variable Verzögerung ausgewählt, um die gewünschte feste Verzögerung bereitzustellen. Das beanspruchte System ist so ausgelegt, daß eine konstante Verzögerung bereitgestellt wird und keine programmierbare wählbare Verzögerung wie bei der vorliegenden Erfindung.
  • Das U.S.-Patent Nr. 4 504 749 von Yoshida zeigt eine Verzögerungsschaltung mit Impulserzeugung, welche eine veränderliche Verzögerung innerhalb einer Schaltung verwendet, um eine gewünschte Verzögerung zu erzeugen. Die veränderliche Verzögerung ist in eine Rückkopplungsschaltung einbezogen, die während eines Kalibrierintervalles schwingt. Die Schwingungsfrequenz wird gemessen, die Verzögerung durch die Schaltung wird berechnet und mit einer gewünschten Verzögerung verglichen, und es wird eine Schaltung bereitgestellt, mit der die veränderliche Verzögerung so eingestellt wird, daß man die gewünschte Verzögerung erhält. Um die veränderliche Verzögerung so einzustellen, daß man die gewünschte Verzögerung erhält, wird ein binärer Suchalgorithmus bereitgestellt. Wie bei dem oben beschriebenen Patent von Chan betrifft das dort beanspruchte Patent eine Schaltung, welche kalibriert wird, um eine einzelne Verzögerung genau bereitzustellen.
  • US-A-4 458 165 offenbart eine programmierbare Verzögerungsschaltung, welche erste beziehungsweise zweite Pfade besitzt, die eine Referenzverzögerung und die Referenzverzögerung plus eine zusätzlich Verzögerung besitzen. Um die Verzögerung innerhalb der Reihenschaltung der Verzögerungsstufen zu messen, wird eine negative Rückkopplung eingesetzt.
  • Zusammenfassung der Erfindung
  • Die Hauptaufgabe der vorliegenden Erfindung besteht darin, ein neues und verbessertes Verfahren zum Betreiben einer Verzögerungsschaltung bereitzustellen.
  • Eine andere Aufgabe der vorliegenden Erfindung ist es, eine Verzögerungsschaltung bereitzustellen, mit welcher man in der Lage ist, hochpräzise Zeitverzögerungen im Subnanosekundenbereich zu erzeugen.
  • Eine weitere Aufgabe der vorliegenden Erfindung ist es, eine Verzögerungsschaltung des oben beschriebenen Typs bereitzustellen, mit welcher man in der Lage ist, wählbare Zeitverzögerungen zu erzeugen.
  • Eine andere Aufgabe der vorliegenden Erfindung ist es, eine Verzögerungsschaltung des oben beschriebenen Typs bereitzustellen, welche in einer integrierten Schaltungsumgebung unter Verwendung einer relativ ökonomischen Anzahl bereits verfügbarer Bauelemente implementiert werden kann.
  • Noch eine andere Aufgabe der vorliegenden Erfindung ist es, eine Verzögerungsschaltung des oben beschriebenen Typs bereitzustellen, welche einfach und schnell kalibriert werden kann, um diese an interne Veränderungen anzupassen, wie beispielsweise solche, die durch Veränderungen der Umgebungstemperatur, der Versorgungsspannungen und Variationen des Herstellungsprozesses bewirkt werden.
  • Diese und andere Aufgaben der Erfindung werden durch ein Verfahren, wie es im Anspruch 1 beansprucht wird sowie durch die Schaltung nach Anspruch 4 erfüllt.
  • Kurze Beschreibung der Zeichnungen
  • Diese und andere Aufgaben, Merkmale und Vorteile der Erfindung, werden durch Betrachtung der folgenden ausführlichen Beschreibung und der Zeichnungen offensichtlich, in denen:
  • Fig. 1 ist ein Blockschaltbild einer Verzögerungsschaltung, die entsprechend der vorliegenden Erfindung implementiert worden ist;
  • Fig. 2 ist eine schematische Darstellung einer Möglichkeit zur Implementierung der Verzögerungsstufen der Schaltung nach Fig. 1 unter Verwendung konventioneller digitaler Logikschaltungen;
  • Fig. 3 ist ein Blockschaltbild, das Mittel zur Kalibrierung der Verzögerungsschaltung von Fig. 1 zeigt;
  • Die Fig. 4A und 4B enthalten ein Ablaufdiagramm eines Verfahrens zum Betreiben der Verzögerungsschaltung von Fig. 1, um damit eine hochgenaue Verzögerung zu erhalten; und
  • Fig. 5 ist ein Blockschaltbild, das Kompensationsmittel für den Betrieb der Verzögerungsschaltung von Fig. 1 zeigt, um solche Einflußfaktoren wie thermische Drift und Fluktuationen der Versorgungsspannungen zu berücksichtigen.
  • Detaillierte Beschreibung der Erfindung
  • Wir beziehen uns jetzt auf Fig. 1. Es ist eine Schaltung 20 dargestellt, mit der ein digitales Signal/Impulssignal, das das Eingangssignal ist, bezogen auf einen Schaltungspfad mit minimaler Verzögerung wählbar und hochgenau zeitlich verzögert wird. Diese Zeitverzögerung wird hierin als "differentielle Verzögerung" bezeichnet.
  • Die Schaltung 20 enthält 5 in Reihe geschaltete Verzögerungsstufen 22, 24, 26, 28, 30, wobei jede Stufe einen Demultiplexer (DEMUX) 22A bis 30A, einen ersten Schaltungspfad 22B bis 30B mit minimaler Zeitverzögerung, einen zweiten Schaltungspfad 22C bis 30C mit minimaler Verzögerung plus einer zusätzlichen Verzögerung und ein logisches ODER-Gatter 22D bis 30D enthält. Wie weiter unten beschrieben wird, sind zwischen begrenzenden Paaren von DEMUXern und ODER-Gattern die "C"-Schaltungspfade 22C bis 30C zu den entsprechenden "B"-Schaltungspfaden 22B bis 30B parallelgeschaltet.
  • Der DEMUX 22A ist so angeschlossen, daß er ein digitales Taktsignal TAKT empfängt und dieses Signal zu einem ausgewählten Schaltungspfad 22B oder 22C weiterleitet. Das logische ODER-Gatter 22D dient dazu, die Ausgangssignale sowohl vom Schaltungspfad 22B als auch vom Schaltungspfad 22C zu empfangen. Der DEMUX 24A ist so angeschlossen, daß er das Ausgangssignal des ODER- Gatters 22D empfängt und dieses Ausgangssignal des ODER-Gatters auf einem der ausgewählten Schaltungspfade 24B oder 24C weiterleitet. Die DEMUX 26A, 28A und 30A sind gleichartig angeschlossen, um die Ausgangssignale der ODER-Gatter der vorhergehenden Stufe zu empfangen und um diese Signale über einen ausgewählten Schaltungspfad der nachfolgenden Stufe weiterzuleiten.
  • Ein Ausgangs-DEMUX 32 ist so angeschlossen, daß er das Ausgangssignal des ODER-Gatters 30D empfängt und als Treiber arbeitet. Ein Mikroprozessor 34 ist so angeschlossen, daß er über einen Eingang Daten von mindestens zwei Periodendauermeßeinrichtungen (Fig. 3 und 5) empfängt und über Ausgänge mit jedem DEMUX 22A bis 30A und 32 verbunden ist, um die DEMUX in unten beschriebener Weise zu steuern.
  • Wir betrachten jetzt Fig. 2. Darin wird eine Ausführungsform der Verzögerungsstufe 22 gezeigt, wobei der DEMUX 22A vier logische ODER-Gatter 36, 38, 40, 42 umfaßt. Das Gatter 36 besitzt einen Eingang, der so angeschlossen ist, daß er das Taktsignal TAKT empfängt sowie einen invertierenden Ausgang, der mit den ersten Eingängen der Gatter 40 und 42 verbunden ist. Das Gatter 38 besitzt einen Eingang, der so angeschlossen ist, daß er ein Steuersignal C1 vom Mikroprozessor 34 empfängt sowie einen nichtinvertierenden Ausgang, der mit dem zweiten Eingang des Gatters 42 verbunden ist.
  • Der Schaltungspfad 22B umfaßt ein einzelnes logisches ODER-Gatter 44, dessen Eingang mit einem invertierenden Ausgang des Gatters 40 verbunden ist und dessen Ausgang mit einem Eingang des Gatters 22D verbunden ist. Der Schaltungspfad 22C umfaßt X in Reihe geschaltete logische ODER-Gatter 46 bis 46X, wobei der Eingang des ersten Gatters mit einem invertierenden Ausgang des Gatters 42 verbunden ist. Der Ausgang des Gatters 46X ist zu einem Eingang von Y parallelgeschalteten Gattern 48 bis 48Y und zu dem zweiten Eingang des Gatters 22D parallelgeschaltet.
  • Es wird verstanden werden, daß die nachfolgenden Verzögerungsstufen 24 bis 30 der Verzögerungsschaltung 20 in gleicher Weise aufgebaut sind, wie die in Fig. 2 gezeigte und beschriebene Ausführungsform der Verzögerungsstufe 22, mit dem einzigen Unterschied, daß die Anzahlen der in Reihe beziehungsweise parallelgeschalteten Gatter X beziehungsweise Y in den "C"-Verzögerungspfaden unterschiedlich sind. In einer unten detaillierter beschriebenen Weise wird die Anordnung der Gatter in jedem der "C"-Schaltungspfade ausgewählt, um eine gewünschte Signalverzögerung bereit zustellen.
  • Im Betrieb, der im besonderen mit Bezug auf die in den "B"- und "C"-Verzögerungspfaden der Stufe 22 verwendeten Bezeichnungen beschrieben wird, ist der Verzögerungspfad 22B so aufgebaut, daß er eine typische Zeitverzögerung d(n) bereitstellt. Der Verzögerungspfad 22C ist so aufgebaut, daß er eine Zeitverzögerung bereitstellt, die ungefähr gleich der Verzögerung d(n) des Signalpfades 22B plus einer zusätzlichen Verzögerung von 2n x delta (delta2n) ist, wobei delta gleich einem minimalen, physikalisch realisierbaren Verzögerungsinkrement ist und n eine Potenz von 2 darstellt, die in Abhängigkeit von einer gewünschten maximalen Verzögerung ausgewählt wird und im allgemeinen von der Anzahl der Verzögerungsstufen in der Schaltung 20 bestimmt wird (dabei sind die mehrfach vorhandenen minimalen 2&sup0;-Verzögerungsstufen, wie beispielsweise die Stufen 28 und 30 nicht mit eingeschlossen).
  • In der bevorzugten Ausführungsform der vorliegenden Erfindung enthält jeder "C"-Verzögerungspfad 22C bis 28C der Verzögerungsschaltung 20 bezogen auf seinen entsprechenden "B"-Schaltungspfad eine zusätzliche Verzögerung, die gleich einem Vielfachen einer Potenz von 2 mit der Delta-Verzögerung ist und die unterschiedlichen "C"-Verzögerungspfade sind untereinander in steigender/fallender binärer Reihenfolge angeordnet. Zum Zweck der Beschreibung der vorliegenden Erfindung soll angenommen werden, daß n = 3 gilt. Somit enthält Schaltung 20 4 Stufen: n = 3 (Stufe 22), n = 2 (Stufe 24), n = 1 (Stufe 26), n = 0 (Stufe 28) und eine extra Stufe n = 0 (Stufe 30), um die Genauigkeit der Verzögerung in unten beschriebener Weise zu erhöhen. Der sich ergebende "C"-Verzögerungspfad wird in der Praxis gewöhnlich als eine binäre Kette bezeichnet.
  • Wir betrachten jetzt die Verzögerungen in jeder der Stufen. Der Verzögerungspfad 22C besitzt eine Verzögerung von 2³ x delta (delta2³) bezogen auf den Pfad 22B. Der Verzögerungspfad 24C besitzt eine Verzögerung delta2² bezogen auf den Pfad 24B. Genauso besitzen die Verzögerungspfade 26C, 28C und 30C Verzögerungen von delta2¹, delta2&sup0; und delta2&sup0; bezogen auf ihre entsprechende "B"-Verzögerungspfade. Auf eine unten detaillierter beschriebene Weise werden die zusätzlichen Verzögerungen in den "C"-Schaltungspfaden (bezogen auf die ihnen entsprechenden "B"-Schaltungspfade) durch geeignete Auswahl von Gattern in den "B"- und "C"-Schaltungspfaden (d.h. durch die Anzahl X und Y der in Reihe und parallelgeschalteten Gatter) bereitgestellt.
  • Um die vorliegende Erfindung zu beschreiben, wird angenommen, daß ein logisches ODER-Gatter wie beispielsweise Gatter 44 oder 46, eine typische Verzögerungszeit von ungefähr 160 Picosekunden (ps) besitzt, wenn es eine einzelne Ausgangslast treibt. Jedes in Reihe geschaltete Gatter, wie beispielsweise das Gatter 46, vergrößert somit die Signalverzögerung über einen Schaltungspfad "C" um ungefähr 160 ps, was es ermöglicht, große Verzögerungswerte zu erhalten. Um kleinere Verzögerungswerte zu erhalten wird ein parallelgeschaltetes Gatter, wie beispielsweise Gatter 48, bereitgestellt und angenommen, daß dies die Signalverzögerung über den Schaltungspfad um ungefähr 20 ps vergrößert.
  • Es wird verstanden werden, daß die Verzögerungszeit eines Gatters von der Herstellung des Gatters abhängig ist und beträchtlich veränderlich ist, wie aus den für die Erklärung der Erfindung ausgewählten Beispielen, von 160 ps (in Reihe geschaltet) bis 20 ps (parallelgeschaltet), ersichtlich ist.
  • Eine weitere grundlegende Erkenntnis der vorliegenden Erfindung ist, daß es aufgrund von nicht steuerbaren Veränderungen bei der Herstellung der logischen Gatter und der Zwischenverbindungen, wahrscheinlich ist, daß kein gegebenes logisches Gatter die exakte typische Verzögerung, hier mit 160 ps für eine Reihenschaltung und mit 20 ps für eine Parallelschaltung angenommen, besitzt. Es ist dem Stand der Technik entsprechend wohlbekannt, daß Veränderungen der externen Bedingungen, im besonderen der Umgebungstemperatur und der Versorgungsspannungspegel, eine proportionale Veränderung der Gatterverzögerungen bewirken.
  • Wir setzen die Beschreibung der Arbeitsweise der vorliegenden Erfindung fort. Die Annahme, daß die Schaltung 20 so aufgebaut ist, daß sie n = 4 Verzögerungsstufen 22, 24, 26, 28 und eine separate, minimale 2&sup0; Verzögerungsstufe besitzt, wird beibehalten. Es wird weiterhin angenommen, daß gewünscht wird, eine minimale Delta-Verzögerung von 20 ps zu realisieren. Aus der Betrachtung der obigen Diskussion der Gatterverzögerungszeiten wird ersichtlich, daß eine minimale Delta-Verzögerung von 160 ps mit einem einzelnen, in Reihe geschalteten Gatter oder mit einer Vielzahl parallelgeschalteter Gatter realisierbar ist.
  • Gemäß der oben beschriebenen Parameter, werden die "B"-Schaltungspfade 22B bis 30B so ausgewählt, daß sie typische Verzögerungen von d(3) = d(2) = d(1) = d(0) = d'(0) = 160 ps (ungefähr) besitzen. Diese Verzögerungen werden durch die Auswahl der Anzahl und der Verbindung der Gatter in jedem "B"-Verzögerungspfad eingestellt. Im Verzögerungspfad 22C sind die darin enthaltenen Gatter so verbunden, daß eine Verzögerung von 160 ps + 2³ x 20 ps = 320 ps bereitgestellt wird. Der Schaltungspfad 24C ist so aufgebaut, daß er eine Zeitverzögerung von 160 ps + 2² x 20 ps = 240 ps besitzt und Schaltungspfad 26C hat eine Verzögerung von 160 ps + 2i x 20 ps = 200 ps. Genauso ist jeder der Schaltungspfade 28C und 30C so aufgebaut, daß er eine minimale Verzögerung von 160 ps + 20 x 20 ps = 180 ps bereitstellt.
  • Wegen der oben beschriebenen Variationen der einzelnen Gatterverzögerungen wird verstanden werden, daß die verschiedenen Verzögerungspfade nicht so aufgebaut werden können, daß sie die exakte gewünschte Verzögerung besitzen. Durch eine Kombination theoretischer Berechnungen und zweckmäßiger aktueller Messungen werden die verschiedenen "B"- und "C"-Verzögerungspfade so hergestellt, daß diese so nah wie nur praktisch möglich an die gewünschten Verzögerungen herankommen. Durch Subtraktion der typischen "B"-Stufenverzögerung von d(n) = 160 ps von jeder "C"-Verzögerungsstufe ergeben sich die in unten stehender Tabelle 1 dargestellten zusätzlichen Verzögerungen, die durch jeden der Schaltungspfade 22C bis 30C verfügbar sind. Tabelle 1 Schaltungspfad theoretische zusätzliche Verzögerung 320 ps = maximale zusätzliche Verzögerung
  • Aus der Betrachtung des Obigen wird verstanden werden, daß durch eine geeignete Steuerung der DEMUX 22A bis 30A vom Mikroprozessor 34 entsprechend eines weiter unten beschriebenen Verfahrens, die Verzögerungsschaltung 20 in der Lage ist, einen Impuls zu erzeugen, der eine wählbare zusätzliche Verzögerung zwischen 20 ps und 320 ps besitzt, wählbar in binären 20 ps Inkrementen (minimale Delta-Verzögerung). Diese ausgewählte oder differentielle Verzögerung bezieht sich auf einen minimal verzögerten Impuls, der sich ausschließlich über die "B"-Schaltungspfade ausbreitet.
  • Während die Schaltung 20 eine differentielle Zeitverzögerung in sehr feinen Inkrementen von ungefähr 20 ps bereitstellt, kann aus oben beschriebenen Gründen von keinem der Gatter der Schaltung 20 angenommen werden, daß es die exakte, theoretische Verzögerung bereitstellt. Jeder Delta-Verzögerungspfad 22C bis 30C wird folglich um einen gewissen Betrag von der theoretischen Verzögerung, die in Tabelle 1 dargestellt ist, abweichen.
  • Ein Verfahren und eine Vorrichtung für eine exaktere Kalibrierung der mit der Verzögerungsschaltung 20 wählbaren Zeitverzögerungen wird jetzt mit Bezug auf die Fig. 3 und 4 beschrieben werden.
  • Wir beziehen uns zuerst auf Fig. 3. Es wird eine Kalibrierschaltung 60 dargestellt, die zur Kalibrierung der Funktion der Verzögerungsschaltung 20 dient, so daß die tatsächlichen zusätzlichen Verzögerungen über jeden der Schaltungspfade 22C bis 30C gemessen werden können. Die Kalibrierschaltung 60 enthält ein logisches ODER-Gatter 62, das einen ersten Eingang besitzt, der so angeschlossen ist, daß er ein Taktsignal TAKT empfängt sowie einen Ausgang, der mit dem Eingang der Verzögerungsschaltung 20 verbunden ist. Der Ausgang der Verzögerungsschaltung 20 ist sowohl mit einer optionalen, groben Verzögerungsschaltung 64 als auch mit dem ersten Eingang eines logischen ODER-Gatters 66 verbunden. Das Ausgangssignal der groben Verzögerungsschaltung 64 wird zur nachfolgenden Verwendung durch ein System (nicht dargestellt) bereitgestellt, das sehr viel größere Verzögerungen, die Vielfache des Eingangstaktes der vorliegenden Erfindung sind, benötigt. Zum Beispiel für ein Testsystem für integrierte Schaltkreise.
  • Das Gatter 66 besitzt einen zweiten Eingang, zum Empfangen eines Kalibrierfreigabesignals CAL AKTIV, einen nichtinvertierenden Ausgang, der mit einer Periodendauermeßeinrichtung 68 verbunden ist und einen invertierenden Ausgang, der auf den zweiten Eingang des Gatters 62 zurückgeführt wird. Somit wird über die Gatter 62 und 66 eine Rückführschleife zwischen dem Eingang und dem Ausgang der Verzögerungsschaltung 20 gebildet.
  • Die grobe Verzögerungsschaltung 64 umfaßt eine Schaltung, für die dem Fachmann eine Vielzahl Schaltungsanordnungen bekannt sind, zum Hinzufügen einer groben Zeitverzögerung zu der relativ feinen Zeitverzögerung, die durch die Verzögerungsschaltung 20 bereitgestellt wird. Die Periodendauermeßeinrichtung 68 ist ein konventionelles Meßgerät für die Periodendauer, wobei deren Genauigkeit vorzugsweise ungefähr ein Hundertstel der Delta-Zeitverzögerung, die im Signalpfad "C" der Verzögerungsschaltung 20 gewählt wurde, sein sollte. Eine solche Periodendauermeßeinrichtung enthält der Frequenzzähler Modell HP5385A von Hewlett Pakkard, der eine Genauigkeit von ungefähr 0.01 ps besitzt.
  • Im Betrieb wird, immer dann, wenn es gewünscht wird, die tatsächlichen (gegen die theoretischen oder typischen) Zeitverzögerungen durch die Signalpfade der Verzögerungsschaltung 20 zu messen, d.h. sowohl die gesamte minimale Verzögerung durch die "B"-Signalpfade als auch die Verzögerung (einschließlich der zusätzlichen Verzögerung) durch jeden der "C"-Signalpfade, das Signal GAL AKTIV verwendet, um das Gatter 66 freizugeben. Eine solche Kalibrierung kann beispielsweise durchgeführt werden, wenn erstmalig Spannung an die Verzögerungsschaltung 20 angelegt wurde und danach während des Betriebes der Schaltung in periodischen Abständen.
  • Wenn sowohl das Gatter 66 als auch die Periodendauermeßeinrichtung 68 freigegeben sind, wird die Periodendauermeßeinrichtung die Periodendauer zwischen angrenzenden digitalen Impulsen, die ihr geliefert werden, genau messen. Der Mikroprozessor 34 wird zuerst die DEMUX 22A bis 30A so steuern, daß der Pfad mit der minimalen Zeitverzögerung, d.h. der "B"-Signalpfad in jeder der Stufen 22 bis 30, ausgewählt wird. Die Periodendauermeßeinrichtung 68 mißt folglich die tatsächliche minimale Verzögerung der Verzögerungsschaltung 20. Nachdem diese minimale Verzögerung bekannt ist, steuert der Mikroprozessor 34 die DEMUX so, daß während eines gegebenen Zeitabschnittes ein DEMUX einen relativ verzögerten oder "C"-Signalpfad in der Schaltung 20 auswählt, während die anderen DEMUX jeweils einen "B"-Signalpfad auswählen. Somit wird, wenn jeder "C"-Signalpfad ausgewählt wird, dessen tatsächliche Verzögerung bezogen auf die minimale Verzögerung einfach dadurch bestimmt, daß die Verzögerung mit dem eingeschalteten, ausgewählten "C"-Signalpfad von der minimalen Verzögerung über den "B"-Signalpfad subtrahiert wird. Diese Berechnung wird vorzugsweise im Mikroprozessor 34 durchgeführt. Wenn jeder einzelne der "C"-Signalpfade 22C bis 30C nacheinander ausgewählt wurde, sind die tatsächlichen Verzögerungen von jedem dieser Signalpfade bekannt.
  • Die unten dargestellte Tabelle 2 enthält einen Satz tatsächlicher/gemessener zusätzlicher Verzögerungen für die Schaltungspfade 22C bis 30C. Solche tatsächlichen Verzögerungen erhält man bei Verwendung der Kalibrierschaltung von Fig. 3 in der unmittelbar beschrieben Weise. Tabelle 2 Verzögerungsstufe theoretische zus. Verzögerung tatsächliche zus. Verzögerung
  • Wir beziehen uns jetzt auf Fig. 4. Es wird ein Verfahren bereitgestellt, bei dem die tatsächlichen zusätzlichen Verzögerungen, die in den Schaltungspfaden 22C bis 30C gemessen wurden, verwendet werden, um den Signalpfad durch die Verzögerungsstufen 22 bis 30 zu bestimmen, der eine differentielle Verzögerung bereitstellt, die einer gewünschten Verzögerung GV am nächsten kommt. Das Verfahren wird zuerst allgemein beschrieben werden und anschließend noch anhand von Beispielen, wobei die Schaltung 20 die theoretischen und tatsächlichen Delta-Verzögerungen besitzen soll, wie sie in Tabelle 2 oben dargestellt sind.
  • Allgemein ausgedrückt, erlauben das Verfahren und die Vorrichtung der vorliegenden Erfindung die Auswahl einer gewünschten Verzögerung auf der Basis der theoretisch möglichen Verzögerungen (d.h. eine Potenz von 2 mal der Delta-Verzögerung). Weil jedoch die gemessenen tatsächlichen Verzögerungen durch die verschiedenen Signalstufen von den theoretischen Verzögerungen abweichen, wird auf der Basis der tatsächlichen Verzögerungen eine differentielle Verzögerung erzeugt, die bezogen auf die gewünschte Verzögerung den kleinsten möglichen Fehler besitzt.
  • Allgemein wird mit der größten zusätzlichen Verzögerungsstufe begonnen und in fallender Richtung vorgegangen. Jede tatsächliche Verzögerung wird zu einer vorhergehend ausgewählten Gesamtverzögerung addiert. Wenn die Auswahl dieser tatsächlichen Verzögerung eine differentielle Verzögerung ergibt, die einen kleineren Fehler bezogen auf die gewünschte Verzögerung aufweist, dann wird ein Vermerk gemacht und diese Verzögerungsstufe wird ausgewählt, um bei der Erzeugung der differentiellen Verzögerung verwendet zu werden. Wenn die Auswahl dieser tatsächlichen Verzögerung eine differentielle Verzögerung ergibt, die bezogen auf die gewünschte Verzögerung einen größeren Fehler besitzt, dann wird diese tatsächliche Verzögerung nicht ausgewählt. Wenn alle aktuellen Verzögerungen wie oben beschrieben benutzt worden sind, hat die ausgewählte, tatsächliche, differentielle Verzögerung bezogen auf die theoretisch gewünschte Verzögerung den kleinsten möglichen Fehler.
  • Das Verfahren setzt die Verfügbarkeit einer Bit-Speichermatrix B(N) voraus, die ein Markierüngsbit für jede der n + 1 Verzögerungsstufen in der Schaltung 20 (d.h. eine 1 x 5 Matrix) besitzt. Der Fehler zwischen der gewünschten Verzögerung GV und der berechneten Verzögerung wird zu jedem beliebigen Zeitpunkt während der Ausführung des Verfahrens durch ERR (error) angezeigt. Das Verfahren wird typischerweise als Gomputerprogramm im Mikroprozessor 34 ausgeführt.
  • Die folgende Tabelle 3 definiert die Variablen, die in dem beanspruchten Verfahren verwendet werden. Jene Variablen, bei denen angezeigt wird, daß sie in Sekunden gemessen werden können, sind natürlich Zeitwerte. Tabelle 3 GV - gewünschte Verzögerung (Sekunden) B(n) - Markierungsbit für ein n-langes Feld BF - Markierungsbitzähler ERR - Verzögerungsfehler (Sekunden) MIN ERR - minimaler Fehler (Sekunden) POS ERR - positiver Fehler (Sekunden) N - Zykluszähler delta2n - tatsächliche, zusätzliche Verzögerung im 2nten-"C"-Schaltungspfad
  • Das Verfahren beginnt damit, daß der Zykluszähler N gleich der Anzahl der Verzögerungsstufen in der Schaltung der Verzögerungsleitung minus 1 gesetzt wird und der minimale Fehler MIN ERR auf den Wert der tatsächlichen, zusätzlichen Delta-Verzögerung delta2n der größten Verzögerungsstufe gesetzt wird.
  • Die gewünschte Verzögerung GV wird eingegeben und der positive Fehler POS ERR wird gleich der gewünschten Verzögerung gesetzt. Die zusätzliche Verzögerung delta2n wird vom positiven Fehler POS ERR subtrahiert, um den Fehler ERR zu berechnen.
  • Der Verzögerungsfehler ERR wird überprüft, um festzustellen, ob er größer oder kleiner als 0 ist. Die im Fall "größer als 0" folgenden Operationen werden zuerst beschrieben.
  • Wir nehmen an, daß der Verzögerungsfehler ERR größer als 0 ist. Das Markierungsbit B(N), das der Verzögerungsstufe n zugeordnet ist, wird auf Eins gesetzt, was anzeigt, daß diese zusätzliche Verzögerung (d.h. dieser "C"-Signalpfad) verwendet werden wird und der positive Fehler POS ERR wird gleich dem Fehler ERR gesetzt.
  • Der Fehler ERR wird überprüft, um festzustellen, ob er kleiner als der minimale Fehler MIN ERR ist. Wenn der Fehler ERR kleiner als der minimale Fehler MIN ERR ist, wird MIN ERR gleich ERR gesetzt und der Markierungsbitzähler BF wird gleich -1 gesetzt, was anzeigt, daß der minimale Fehler aufgetreten ist, während der Fehler ERR positiv war. Wenn der Fehler ERR größer als der minimale Fehler MIN ERR ist, dann werden die oben erwähnten Schritte nicht ausgeführt. Als nächstes wird N überprüft, um festzustellen, ob es gleich Null ist. Wenn N nicht gleich Null ist, wird N dekrementiert und die Schleife wiederholt.
  • Wir beschreiben jetzt die Operationen, die ausgeführt werden, wenn der Verzögerungsfehler ERR kleiner als Null ist. Die Addition weiterer zusätzlicher Verzögerungen würde zu einem noch negativeren Verzögerungsfehler ERR führen. Deshalb wird das Markierungsbit B(N) gleich Null gesetzt, ebenso wird die momentane zusätzliche Verzögerung nicht ausgewählt (d.h. die momentane "C"-Verzögerungsstufe wird nicht ausgewählt) . Der Betrag des Verzögerungsfehler [ERR] wird überprüft, um festzustellen, ob er kleiner als der minimale Fehler MIN ERR ist. Wenn dies der Fall ist, dann wird der minimale Fehler MIN ERR gleich dem Betrag des Verzögerungsfehlers ERR gesetzt, und der Markierungsbitzähler BF wird auf N gesetzt, was anzeigt, daß der minimale Fehler MIN ERR aufgetreten ist, während der Verzögerungsfehler negativ war und um anzuzeigen, bei welcher zusätzlichen Verzögerungsstufe n er aufgetreten ist. Wenn der Betrag des Verzögerungsfehlers [ERR] nicht kleiner als der minimale Fehler MIN ERR ist, werden die oben erwähnten Schritte nicht ausgeführt. Als nächstes wird N überprüft, um festzustellen, ob es gleich Null ist. Wenn N nicht gleich Null ist, wird N dekrementiert und die Schleife wiederholt.
  • Der oben beschriebene Vorgang wird solange wiederholt, solange N nicht gleich (d.h. N ist größer als) Null ist. Wenn N = 0 ist, identifizieren die Markierungsbits B(N) die "C"-Signalpfade, welche den kleinsten positiven minimalen Fehler bezogen auf die gewünschte Verzögerung ergeben. Es ist jedoch auch möglich, daß der minimale Fehler bei einem negativen Verzögerungsfehler auftritt.
  • Wir beziehen uns jetzt auf Fig. 4B. Der Markierungsbitzähler BF wird überprüft, um festzustellen, ob er gleich -1 ist. Wenn das der Fall ist, zeigt dies an, daß der minimale Fehler bei einem positiven Verzögerungsfehler eingetreten ist und die Markierungsbits B(N) identifizieren die "C"-Signalpfade, welche die beste differentielle Verzögerung bereitstellen. Das Programm wird folglich beendet.
  • Wenn der Markierungsbitzähler nicht gleich -1 ist, zeigt dies an, daß der minimale Fehler bei einem negativen Verzögerungsfehler aufgetreten ist und daß er während eines Schleifendurchlaufs mit N = BF aufgetreten ist. Deshalb bleiben alle Verzögerungen ausgewählt, die ausgewählt wurden, während N > BF war. Die Verzögerung (BF) wird ebenfalls ausgewählt, indem B(BF) gleich Eins gesetzt wird. Die Auswahl der zusätzlichen Verzögerungen, für die N < BF gilt, wird aufgehoben. Diese letzten Schritte werden in der unteren Schleife in Fig. 4B dargestellt. Nachdem B(BF) auf Eins gesetzt worden ist, wird der Markierungsbitzähler BF dekrementiert und überprüft, um festzustellen, ob er gleich -1 ist. Wenn nicht, dann wird B(BF) auf Null gesetzt (d.h. die Auswahl dieser zusätzlichen "C"-Verzögerungsstufe wird aufgehoben) und die untere Schleife wird wiederholt. Das Programm wird beendet, wenn festgestellt wird, daß der Markierungsbitzähler BF gleich -1 ist.
  • Nach Beendigung des in den Fig. 4A und 4B dargestellten Prozesses ist der optimale Pfad durch die Verzögerungsschaltung 20 (Fig. 1) ausgewählt. Die "C"-Schaltungspfade werden für jede Verzögerungsstufe ausgewählt, für die in der Matrix der Markierungsbits B(N) = 1 steht. Wie aus der Betrachtung des unten stehenden Beispiels zu erkennen ist, liefert das oben beschriebene Verfahren auf Grundlage der gemessenen Delta-Verzögerung jedes "C"-Schaltungspfades eine differentielle Verzögerung, welche der gewünschten Verzögerung GV am nächsten kommt. Wie ebenfalls zu erkennen ist, kann sich der so bestimmte Schaltungspfad von dem Schaltungspfad unterscheiden, der auf der Grundlage der theoretischen Delta-Verzögerungen berechnet würde.
  • Der oben beschriebene Prozeß wird jetzt mit Bezug auf zwei separate Beispiele beschrieben werden. Das erste Beispiel hat eine gewünschte Verzögerung GV von 240 ps und das zweite Beispiel hat eine gewünschte Verzögerung von 100 ps.
  • Beispiel 1
  • Die Werte, die sich bei der Durchführung des oben beschriebenen Verfahrens für eine gewünschte Verzögerung von 240 ps ergeben, werden in zusammengefaßter Form in unten stehender Tabelle 4 dargestellt. Das Verfahren beginnt, indem der Zykluszähler N mit der Anzahl der Stufen der Schaltung 20 minus 1 initialisiert wird: N = 5 - 1 = 4. Der minimale Fehler MIN ERR wird gleich der tatsächlichen Verzögerung der höchstwertigen Verzögerungsstufe gesetzt MIN ERR = delta2³ = 152,5 ps (alle tatsächlichen Verzögerungen erhält man aus obiger Tabelle 2).
  • Mit N = 4 wird der positive Fehler gleich der gewünschten Verzögerung GV gesetzt: POS ERR = 240 ps. Die tatsächliche Verzögerung delta2n wird vom positiven Fehler POS ERR subtrahiert, um den Fehler ERR zu erhalten: ERR = 240 - 152,5 = 87,5 ps. Weil der Fehler ERR größer als 0 ist, wird das Markierungsbit B(4) gleich 1 gesetzt, und der positive Fehler POS ERR wird gleich ERR gesetzt POS ERR = 87,5 ps. Weil der Fehler ERR kleiner als der minimale Fehler MIN ERR ist (87,5 < 152,5), wird MIN ERR gleich ERR gesetzt: MIN ERR = 87,5 ps, und der Markierungsbitzähler BF wird auf -1 gesetzt.
  • Mit dem Dekrementieren von N ergibt sich N = 3, ERR = POS ERR - delta2² ERR = 87,5 - 85,8 = 1,7. Weil ERR größer als 0 ist, wird B(3) auf 1 gesetzt, und es ergibt sich POS ERR = ERR = 1,7. Weil ERR < MIN ERR (d.h. 1,7 < 87,5), wird dann MIN ERR gleich ERR gesetzt und der Markierungsbitzähler wird gleich -1 gesetzt MIN ERR = 1,7 und BF = -1.
  • Mit dem Dekrementieren von N ergibt sich N = 2, ERR = POS ERR - delta2¹ : ERR = 1,7 - 36,3 = -34,6. Weil ERR kleiner als 0 ist, wird B(2) gleich 0 gesetzt. Weil der absolute Betrag von ERR nicht kleiner als MIN ERR ist (d.h. -34,6 ist nicht kleiner als 1,7), wird N dekrementiert, und die Schleife wird wiederholt. POS ERR, MIN ERR und BF bleiben unverändert.
  • Mit dem Dekrementieren von N ergibt sich N = 1, ERR = POS ERR - delta2&sup0; : ERR = 1,7 - 17,2 = -15,5. Weil ERR kleiner als 0 ist, wird B(2) gleich 0 gesetzt. Weil der absolute Betrag von ERR nicht kleiner als MIN ERR ist (d.h. -15,5 ist nicht kleiner als 1,7), wird N dekrementiert, und die Schleife wird wiederholt. POS ERR, MIN ERR und BF bleiben unverändert.
  • Mit dem Dekrementieren von N auf 0 ergibt sich ERR = POS ERR - delta2&sup0; : ERR = 1,7 - 16,7 = -15. Weil ERR kleiner als 0 ist, wird B(1) gleich 0 gesetzt. Weil der absolute Betrag von ERR nicht kleiner als MIN ERR ist (d.h. -15 ist nicht kleiner als 1,7), wird N dekrementiert, und die Schleife wird wiederholt. POS ERR, MIN ERR und BF bleiben unverändert. Tabelle 4
  • Weil N jetzt auf Null steht, setzt das Verfahren wie in Fig. 4B dargestellt fort. Weil der Markierungsbitzähler auf -1 steht, wird der Prozeß beendet.
  • Betrachtet man den Inhalt der Matrix der Markierungsbits B(n) und bringt diesen Inhalt mit der Schaltung 20 von Fig. 1 in Verbindung, dann ist zu sehen, daß die "C"-Schaltungspfade für die höchstwertige (d.h. Verzögerungsstufe 22) und für die zweithöchstwertige (d.h. Verzögerungsstufe 24) Stufe der Schaltung 20 ausgewählt wurden. Tatsächlich führt, bezogen auf die minimale Verzögerung über die "B"-Schaltungspfade, die Auswahl dieser "C"-Schaltungspfade zu einer differentiellen Verzögerungszeit von 238,3 ps (152,5 + 85,8).
  • Beispiel 2
  • In diesem Beispiel wird die gewünschte Verzögerung mit 100 ps vorgewählt. N wird wieder auf 4 initialisiert und MIN ERR auf 152,5 ps. Weil die in Fig. 4A gezeigten Schritte analog zu denen von Beispiel 1 ausgeführt werden, sind die Ergebnisse in zusammengefaßter Form unten in Tabelle 5 dargestellt. Tabelle 5
  • Analysiert man die Ergebnisse von Tabelle 5 mit Bezug auf das Verfahren von Fig. 4B, so wird zuerst beim Überprüfen des Markierungsbitzählers ersichtlich, daß er nicht gleich -1 ist, sondern auf 0 steht. Deshalb wird das Verfahren wie in Fig. 4B dargestellt fortgesetzt. B(BF) = B(0) wird gleich 1 gesetzt. Der Markierungsbitzähler wird von 0 auf -1 dekrementiert und das Verfahren wird beendet.
  • Betrachtet man den Inhalt der Matrix der Markierungsbit B(n), so sieht man, daß die Markierungsbits für die Verzögerung der zweithöchsten Ordnung und der niedrigsten Ordnung auf 1 gesetzt sind. Die angezeigten "C"-Pfade durch die Schaltung 20 von Fig. 1 sind folglich der delta2²-"C"-Pfad mit 85,5 ps plus der delta2&sup0; -"C"-Pfad mit 16,7 ps, was eine gesamte differentielle Verzögerung von 102,5 ps ergibt. Der Leser kann sich einfach davon überzeugen, daß dies der optimale Signalpfad ist, um die gewünschte Verzögerung von 100 ps zu erhalten. Der einzige andere Pfad, der dem nahe kommt, würde sich ergeben, wenn die Verzögerung der ersten unteren Ordnung von 17,2 ps den identifizierten Signalpfad von 16,7 ps ersetzen würde, was zu einem Anwachsen der Verzögerungszeit führen würde, das die Differenz zu den gewünschten 100 ps vergrößern würde.
  • Von den Erfindern wurde festgestellt, daß durch das Einbeziehen von mehreren Verzögerungen der unteren Ordnung, in diesem Fall den zwei Stufen der unteren Ordnung 28C und 30C in die Verzögerungsschaltung 20, die Genauigkeit, mit der die gewünschte Verzögerung erzeugt werden kann, wesentlich erhöht wird. Es ist auch wirklich so, daß unter der Annahme, daß die tatsächliche, gemessene Verzögerung jeder Verzögerungsstufe zufällig um einen theoretisch erwarteten Wert schwankt, die Einbeziehung von zwei oder mehr Verzögerungsstufen der untersten Ordnung einen unerwartet starken und wesentlichen Effekt auf die Reduzierung des Fehlers ausübt, mit welchem eine Subnanosekundenverzögerung in dem oben beschriebenen Bereich erzeugt werden kann.
  • Wir beziehen uns jetzt auf Fig. 5. Es wird die Schaltung eines Schleifenoszillators gezeigt, der sich auf einem Teil eines integrierten Schaltkreischips 72 befindet, welcher ebenfalls die Verzögerungsschaltung 20 und die Kalibrierschaltung 60 enthält. Der Schleifenoszillator 70 umfaßt beispielsweise eine Anordnung in Reihe geschalteter logischer Gatter mit einem Rückkopplungszweig und eine Verbindung zu einer Periodendauermeßeinrichtung 74.
  • Im Betrieb wird die Periodendauer des Schleifenoszillators 70 mit der Periodendauermeßeinrichtung 74 während des ersten Anlaufens der Logik auf dem integrierten Schaltkreischip 72 gemessen. Diese Messung der Frequenz des Schleifenoszillators wird im wesentlichen gleichzeitig mit der oben beschriebenen ersten Kalibrierung der Verzögerungsschaltung 20 durchgeführt. Die Frequenz der Kreisschaltung 70 wird dann, wenn der Chipteil 72 weiter arbeitet, Wärme erzeugt und schließlich seine volle Betriebstemperatur erreicht, periodisch überwacht. Weil die Kreisschaltung 70 an die Verzögerungsschaltung 20 angrenzt und in gewissen Bereichen mit ihr lokal verflochten ist, können Veränderungen, die in der Periodendauer der Signale der Schaltung 70 auftreten, als im wesentlichen identisch zu den gleichen Änderungen angesehen werden, die in der Verzögerungsschaltung 20 auftreten. Somit ist es leicht möglich einen Bewertungsfaktor zu bestimmen, um beliebige Veränderungen der Gatterverzögerungszeiten auf die beim Anlaufen (oder bei der ersten Kalibriermessung) gemessenen Gatterverzögerungen zurückzurechnen.
  • Entsprechend der vorliegenden Erfindung werden die Bewertungsfaktoren, die durch die Überwachung der Frequenz des Schleifenoszillators 70 bestimmt werden, dazu verwendet, die über den verschiedenen Stufen der Verzögerungsschaltung 20 während des oben beschriebenen Kalibriervorganges gemessenen Delta-Verzögerungen zu bewerten. Diese Bewertung der Delta-Verzögerungen der Verzögerungsschaltung 20 wird vorzugsweise im Mikroprozessor 34 ausgeführt und erfordert für die Ausführung wesentlich weniger Zeit als eine komplette Neukalibrierung des oben beschriebenen Typs.
  • Unten stehende Tabelle 6 zeigt die Bewertung der gemessenen Delta-Verzögerungen mit einem Bewertungsfaktor A, der so gewählt wurde, daß Veränderungen der Gatterverzögerungen kompensiert werden. Tabelle 6 Gemessene Delta-Verzögerung Bewertete Delta-Verzögerung
  • Bei der Betrachtung von Tabelle 6 sieht man, daß die Anwendung des Bewertungsfaktors einfach und schnell durch eine einfache lineare Multiplikation der gemessenen zusätzlichen Verzögerungen erfolgt.
  • Somit ist eine Verzögerungsschaltung bereitgestellt worden, welche programmierbar ist, um wählbare Zeitverzögerungen im Subnanosekundenbereich zu erzeugen. In der dargestellten Ausführungsform, wird die minimale Verzögerung durch die Durchgangsverzögerung eines digitalen Gatters bestimmt, und die Verzögerung ist in binären Inkrementen veränderbar. Es ist jedoch verständlich, daß die Erfindung nicht darauf beschränkt ist. Die Verzögerungen können alternativ durch andere Verzögerungsmittel bereitgestellt werden, wie beispielsweise durch konventionelle Verzögerungsleitungen und sie müssen nicht in Form einer binären Kette bereitgestellt werden.
  • Entsprechend der vorliegenden Erfindung beruhen die erzeugten Verzögerungen auf den tatsächlichen, ausgemessenen Verzögerungen der Verzögerungspfade durch die Schaltung und nicht auf den theoretisch berechneten Verzögerungen. Die vorliegende Erfindung stellt somit ein System bereit, mit dem sehr feine Verzögerungen in programmierbaren Inkrementen hochgenau erzeugt werden können. Es werden Verfahren und Vorrichtungen zur Kalibrierung der Verzögerungsschaltung und zur Auswahl eines geeigneten Verzögerungspfades basierend auf gemessenen Verzögerungswerten bereitgestellt. Desweiteren wird ein Verfahren und eine Vorrichtung zur Bewertung der gemessenen Verzögerungen in Abhängigkeit von Veränderungen bereitgestellt, welche beispielsweise durch thermische Driften oder Fluktuationen der Versorgungsspannung hervorgerufen werden. Die beanspruchte Erfindung findet im besonderen in Prüfeinrichtungen für Halbleiterchips Anwendung, in denen wählbare, hochgenaue Zeitverzögerungen in großer Zahl benötigt werden.

Claims (4)

1. Verfahren zum Betreiben einer programmierbaren Verzögerungsschaltung, uni einem elektronischem Signal eine ausgewählte Verzögerung zu geben, wobei die Verzögerungsschaltung eine Vielzahl N von in Reihe geschalteten Verzögerungsstufen (22, 24, 26, 28, 30) enthält, jede dieser N Verzögerungsstufen erste (22B bis 30B) und zweite wählbare (22C bis 30C) Signalpfade für das elektronische Signal enthält, die ersten Signalpfade (22B bis 30B) eine minimale Verzögerung besitzen, die zweiten Signalpfade (22C bis 30C) diese minimale Verzögerung plus eine zusätzliche Verzögerung besitzen, welche eine Potenz von 2 mal der minimalen Verzögerung ist
und wobei das Verfahren die folgenden Schritte einschließt:
- Messung der Gesamtverzögerung über den ersten Signalpfaden (22B bis 30B);
- Messung der Gesamtverzögerung über jeder einzelnen aus der Vielzahl der Verzögerungsstufen der zweiten Signalpfade (22C bis 30C), wobei zu jedem Zeitpunkt eine Verzögerungsstufe ausgewählt ist;
- Berechnung der zusätzlichen Verzögerung über jeden einzelnen der zweiten Signalpfade (22C bis 30C) durch Subtraktion der Gesamtverzögerungen, welche in den Meßschritten ermittelt wurden;
- Bestimmung der Kombination der ersten und zweiten Signalpfade, welche eine zusätzliche Gesamtverzögerung bereitstellt, die der ausgewählten Verzögerung am nächsten kommt; und
- Leiten des elektronischen Signals über die ersten und zweiten Signalpfade, die in dem Bestimmungsschritt ausgewählt worden sind.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß es weiterhin den Schritt umfaßt, daß mindestens zwei Verzögerungsstufen in den zweiten Signalpfaden enthalten sind, welche eine zusätzliche Verzögerung der niedrigsten Ordnung des 2&sup0;fachen Verzögerungsinkrementes besitzen.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß die Verzögerungsschaltung auf einem einzelnen Halbleiterchip hergestellt wird und weiterhin den Schritt der Bewertung der berechneten zusätzlichen Verzögerungen umfaßt, um Veränderungen der berechneten zusätzlichen Verzögerungen aufgrund solcher Faktoren wie thermischer Drift zu kompensieren.
4. Programmierbare Verzögerungsschaltung enthaltend eine Vielzahl N von in Reihe geschalteten Verzögerungsstufen (22, 24, 26, 28, 30), wobei jede dieser N Verzögerungsstufen erste (22B bis 30B) und zweite wählbare (22C bis 30C) Signalpfade für ein elektronisches Signal enthält, die ersten Signalpfade (22B bis 30B) eine minimale Verzögerung besitzen, die zweiten Signalpfade (22C bis 30C) diese minimale Verzögerung plus eine zusätzliche Verzögerung besitzen, welche eine Potenz von 2 mal der minimalen Verzögerung ist,
enthaltend Mittel (68) zur Messung der Gesamtverzögerung über den ersten Signalpfaden (22B bis 30B) und
zur Messung der Gesamtverzögerung über jeder einzelnen aus der Vielzahl der Verzögerungsstufen der zweiten Signalpfade (22C bis 30C), wobei zu jedem Zeitpunkt eine Verzögerungsstufe ausgewählt ist;
und desweiteren Mittel (34) enthaltend
zur Berechnung der zusätzlichen Verzögerung über jeden einzelnen der zweiten Signalpfade (22C bis 30C) durch Subtraktion der Gesamtverzögerungen, welche in den Meßschritten ermittelt wurden;
zur Bestimmung der Kombination der ersten und zweiten Signalpfade, welche eine zusätzliche Gesamtverzögerung bereitstellt, die der ausgewählten Verzögerung am nächsten kommt; und
zum Leiten des elektronischen Signals über die ersten und zweiten Signalpfade, die in dem Bestimmungsschritt ausgewählt worden sind.
DE69014701T 1989-04-20 1990-03-13 Verfahren zum Betreiben einer programmierbaren Verzögerungsschaltung und programmierbare Verzögerungsschaltung. Expired - Fee Related DE69014701T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/340,999 US5013944A (en) 1989-04-20 1989-04-20 Programmable delay line utilizing measured actual delays to provide a highly accurate delay

Publications (2)

Publication Number Publication Date
DE69014701D1 DE69014701D1 (de) 1995-01-19
DE69014701T2 true DE69014701T2 (de) 1995-05-24

Family

ID=23335840

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69014701T Expired - Fee Related DE69014701T2 (de) 1989-04-20 1990-03-13 Verfahren zum Betreiben einer programmierbaren Verzögerungsschaltung und programmierbare Verzögerungsschaltung.

Country Status (5)

Country Link
US (1) US5013944A (de)
EP (1) EP0394166B1 (de)
JP (1) JPH0752826B2 (de)
CA (1) CA2007413C (de)
DE (1) DE69014701T2 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5192886A (en) * 1990-03-15 1993-03-09 Hewlett-Packard Company Sub-nanosecond calibrated delay line structure
US5159205A (en) * 1990-10-24 1992-10-27 Burr-Brown Corporation Timing generator circuit including adjustable tapped delay line within phase lock loop to control timing of signals in the tapped delay line
US5465076A (en) * 1991-10-04 1995-11-07 Nippondenso Co., Ltd. Programmable delay line programmable delay circuit and digital controlled oscillator
US5180937A (en) * 1992-02-28 1993-01-19 Lsi Logic Corporation Delay compensator and monitor circuit having timing generator and sequencer
US5231314A (en) * 1992-03-02 1993-07-27 National Semiconductor Corporation Programmable timing circuit for integrated circuit device with test access port
US5389843A (en) * 1992-08-28 1995-02-14 Tektronix, Inc. Simplified structure for programmable delays
US5382850A (en) * 1992-09-23 1995-01-17 Amdahl Corporation Selectable timing delay system
US5376849A (en) * 1992-12-04 1994-12-27 International Business Machines Corporation High resolution programmable pulse generator employing controllable delay
US5428626A (en) * 1993-10-18 1995-06-27 Tektronix, Inc. Timing analyzer for embedded testing
US5430394A (en) * 1994-03-11 1995-07-04 Advanced Micro Devices, Inc. Configuration and method for testing a delay chain within a microprocessor clock generator
JP2889113B2 (ja) * 1994-04-26 1999-05-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 遅延発生装置、デ−タ処理システム及びデ−タ伝送システム
JPH0875823A (ja) * 1994-09-02 1996-03-22 Toshiba Microelectron Corp 動作速度測定回路及びこれを組み込んだ半導体装置
US5900761A (en) * 1995-01-24 1999-05-04 Advantest Corporation Timing generating circuit and method
JPH1032474A (ja) * 1996-07-18 1998-02-03 Mitsubishi Electric Corp 可変遅延回路,及び可変遅延回路の校正方法
US6204694B1 (en) 1999-05-21 2001-03-20 Logicvision, Inc. Programmable clock signal generation circuits and methods for generating accurate, high frequency, clock signals
US6166573A (en) * 1999-07-23 2000-12-26 Acoustic Technologies, Inc. High resolution delay line
EP1245058A1 (de) 1999-11-18 2002-10-02 Paratek Microwave, Inc. Rf/mikrowellenvariable verzögerungsleitung
US7609608B2 (en) * 2001-09-26 2009-10-27 General Atomics Method and apparatus for data transfer using a time division multiple frequency scheme with additional modulation
AU2002337701A1 (en) * 2001-09-26 2003-04-07 General Atomics Tunable oscillator
EP1430677A2 (de) * 2001-09-26 2004-06-23 General Atomics Verfahren und einrichtung zur datenübertragung mittels eines zeitverteilungs-mehrfrequenzschemas
US7321601B2 (en) 2001-09-26 2008-01-22 General Atomics Method and apparatus for data transfer using a time division multiple frequency scheme supplemented with polarity modulation
US6876717B1 (en) * 2004-08-19 2005-04-05 Intel Corporation Multi-stage programmable Johnson counter
US11184007B2 (en) * 2020-03-10 2021-11-23 Western Digital Technologies, Inc. Cycle borrowing counter
US11835580B2 (en) * 2020-12-01 2023-12-05 Mediatek Singapore Pte. Ltd. Circuit and method to measure simulation to silicon timing correlation
CN115389857B (zh) * 2022-10-27 2023-01-31 上海合见工业软件集团有限公司 基于对称电路的信号线缆延时检测系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3781822A (en) * 1972-08-09 1973-12-25 Bell Telephone Labor Inc Data rate-changing and reordering circuits
US3862406A (en) * 1973-11-12 1975-01-21 Interstate Electronics Corp Data reordering system
JPS51144111A (en) * 1975-06-05 1976-12-10 Kokusai Denshin Denwa Co Ltd <Kdd> Echo cancelling method
US4016511A (en) * 1975-12-19 1977-04-05 The United States Of America As Represented By The Secretary Of The Air Force Programmable variable length high speed digital delay line
US4392105A (en) * 1980-12-17 1983-07-05 International Business Machines Corp. Test circuit for delay measurements on a LSI chip
JPS5814622A (ja) * 1981-07-20 1983-01-27 Advantest Corp 遅延回路
US4489272A (en) * 1982-07-06 1984-12-18 International Business Machines Corporation Test circuit for turn-on and turn-off delay measurements
US4494021A (en) * 1982-08-30 1985-01-15 Xerox Corporation Self-calibrated clock and timing signal generator for MOS/VLSI circuitry
JPS59140642A (ja) * 1983-01-31 1984-08-13 Canon Inc トラツキングエラ−信号検出装置
US4458165A (en) * 1983-03-23 1984-07-03 Tektronix, Inc. Programmable delay circuit
JPS59219002A (ja) * 1983-05-26 1984-12-10 Elmec Corp 電子制御可変遅延線の調整方法
JPS60219675A (ja) * 1984-04-13 1985-11-02 Sony Corp 時間軸変換回路
US4737670A (en) * 1984-11-09 1988-04-12 Lsi Logic Corporation Delay control circuit
DE3481472D1 (de) * 1984-12-21 1990-04-05 Ibm Digitale phasenregelschleife.
US4686458A (en) * 1985-05-31 1987-08-11 Hughes Aircraft Company Pulse alignment system
JPS62223900A (ja) * 1986-03-26 1987-10-01 Hitachi Ltd 可変遅延段数シフトレジスタ
JPS635615A (ja) * 1986-06-26 1988-01-11 Matsushita Electric Ind Co Ltd 信号遅延装置
US4745310A (en) * 1986-08-04 1988-05-17 Motorola, Inc. Programmable delay circuit
GB2197553A (en) * 1986-10-07 1988-05-18 Western Digital Corp Phase-locked loop delay line

Also Published As

Publication number Publication date
CA2007413A1 (en) 1990-10-20
JPH0752826B2 (ja) 1995-06-05
EP0394166A2 (de) 1990-10-24
EP0394166B1 (de) 1994-12-07
EP0394166A3 (de) 1991-03-27
JPH02295311A (ja) 1990-12-06
DE69014701D1 (de) 1995-01-19
CA2007413C (en) 1994-09-06
US5013944A (en) 1991-05-07

Similar Documents

Publication Publication Date Title
DE69014701T2 (de) Verfahren zum Betreiben einer programmierbaren Verzögerungsschaltung und programmierbare Verzögerungsschaltung.
DE69621936T2 (de) Billiger cmos tester
DE60204597T2 (de) Kompakter automatischer tester (ate) mit zeitstempel-system
DE10045568B4 (de) Ereignisgestütztes Halbleiterprüfsystem
DE4445311C2 (de) Zeitsignal-Erzeugungsschaltung
DE60020982T2 (de) Vorrichtung zum automatischen ausgleich eines spreizspektrum -taktgenerators und verfahren dazu
DE102008046831B4 (de) Ereignisgesteuerte Zeitintervallmessung
DE69120562T2 (de) Subnanosekunde kalibrierte Verzögerungsleitungsstruktur
DE69019670T2 (de) Verzögerungsmessschaltung.
DE69112232T2 (de) Pulsphasendifferenz-Kodierschaltung.
DE69815686T2 (de) Zeitgeber mit kurzer erholungszeit zwischen den pulsen
DE69114183T2 (de) System zur Reduzierung von Prüfdatenspeichern.
DE102008047163B4 (de) Bestimmen eines Zeitintervalls auf der Grundlage eines ersten Signals, eines zweiten Signals und eines Jitters des ersten Signals
DE69011133T2 (de) Verfahren und gerät zur hochgenauigen erzeugung von gewichteten zufallsmustern.
DE69833595T2 (de) Synchrones Verzögerungsschaltkreissystem
DE69520960T2 (de) Zeitgeber für ein automatisches testsystem mit hohen datenraten
DE112004002222T5 (de) Taktwiedergewinnungsschaltung und Kommunikationsvorrichtung
DE69205101T2 (de) Variable Verzögerungsschaltung.
DE19636916A1 (de) Verzögerungszeitkalibrierungsschaltung und -verfahren
DE69517604T2 (de) Zeitgeber mit mehreren kohärenten synchronisierten takten
DE112005001517T5 (de) Synchronisation zwischen Niedrigfrequenz- und Hochfrequenzdigitalsignalen
DE10035169A1 (de) Verfahren und Vorrichtung zum Testen von Setup-Zeit und Hold-Zeit von Signalen einer Schaltung mit getakteter Datenübertragung
DE112004002615B4 (de) Verfahren zur Kalibrierung eines Zeitsteuertakts
DE10243765A1 (de) Halbleitervorrichtung mit Verzögerungskorrekturfunktion
DE102005024648B4 (de) Elektrische Schaltung zum Messen von Zeiten und Verfahren zum Messen von Zeiten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee