WO1998058449A2 - Programmable delay circuit having calibratable delays - Google Patents

Programmable delay circuit having calibratable delays Download PDF

Info

Publication number
WO1998058449A2
WO1998058449A2 PCT/US1998/011282 US9811282W WO9858449A2 WO 1998058449 A2 WO1998058449 A2 WO 1998058449A2 US 9811282 W US9811282 W US 9811282W WO 9858449 A2 WO9858449 A2 WO 9858449A2
Authority
WO
WIPO (PCT)
Prior art keywords
delay
output signal
input
data
receiving
Prior art date
Application number
PCT/US1998/011282
Other languages
French (fr)
Other versions
WO1998058449A3 (en
Inventor
Brian J. Arkin
Original Assignee
Credence Systems Corporation
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 Credence Systems Corporation filed Critical Credence Systems Corporation
Priority to EP98925174A priority Critical patent/EP1021861A4/en
Priority to KR10-1999-7011778A priority patent/KR100511844B1/en
Priority to JP50446199A priority patent/JP2002508120A/en
Publication of WO1998058449A2 publication Critical patent/WO1998058449A2/en
Publication of WO1998058449A3 publication Critical patent/WO1998058449A3/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H11/00Networks using active elements
    • H03H11/02Multiple-port networks
    • H03H11/26Time-delay networks
    • 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
    • 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
    • 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/00019Variable delay
    • H03K2005/00058Variable delay controlled by a digital setting
    • H03K2005/00071Variable delay controlled by a digital setting by adding capacitance as a load

Definitions

  • the present invention relates in general to programmable delay circuits and in particular to a programmable delay circuit for selectively providing any one of a set of delays, wherein each delay is independently calibratable .
  • a typical prior art programmable delay circuit includes a tapped delay line and a multiplexer.
  • the delay line is formed by a set of delay stages connected in series for successively delaying an INPUT signal.
  • Each delay stage may, for example, be a simple logic gate which passes an input signal to its output with a delay that depends on the response characteristics of the logic gate. With the output of each delay stage constituting a separate "tap" of the delay line, the INPUT signal appears at each tap in succession as the signal pulse traverses the delay line.
  • the delay line taps are connected to separate inputs of the multiplexer which produces the delay circuit output.
  • the programmable delay circuit is programmed to provide a desired delay simply by supplying input control data to the multiplexer so that it passes a selected one of its input delay line taps to its output.
  • the delay of the programmable delay circuit is the sum of the delays of all delay line elements through which the input pulse passes enroute to the selected tap, along with the time required for the input pulse to travel though the multiplexer itself .
  • a "linear" programmable delay circuit provides a delay that is a selected multiple of a desired unit delay. If all elements of a delay line had the same unit delay, then the total delay provided by the programmable delay circuit would be a linear function of the number of delay elements the input signal passes through enroute to the selected tap.
  • delay elements may be formed by similar logic gates, "similar" logic gates typically not provide exactly the same delay because, due to integrated circuit process variations, the gates are not exactly similar, even when implemented on the same integrated circuit.
  • CMOS Programmable Delay Vernier by Masaharu Goto et al, published in the United States of America in October 1994 in the Hewlett-Packard Journal, describes a system for correcting non-linear characteristics in a programmable delay circuit of the type employing a multiplexer to select a tap of a tapped delay line.
  • This article describes each element of the tapped delay line as being formed by two inverter stages connected in series with a variable capacitor coupling the output of the first inverter stage to ground.
  • the capacitance provided by the capacitor within each stage is selected by data stored in a separate register for each stage.
  • the delay of each element is a function of the delays of the two inverter stages and the selected amount of capacitance.
  • the Goto et al article teaches that to provide for linear characteristics one can adjust the delay provided by each delay element by adjusting the capacitance for that element so that the delay element provides a desired unit delay.
  • One drawback to this system is that a delay line having many delay elements requires many capacitors and registers.
  • a programmable delay circuit in accordance with the invention produces an OUTPUT signal following an INPUT signal by one of N delays selected by input delay selection data.
  • Each of the N delays is separately calibratable.
  • the delay circuit includes a tapped delay line, a multiplexer, a delay adjustment stage and a programmable encoder.
  • the delay line includes a set of N delay elements connected in series for successively delaying the INPUT signal to produce a set of N output TAP signals that are progressively delayed versions of the INPUT signal.
  • the TAP signals drive separate inputs of the multiplexer which passes a selected one of the TAP signals to the delay adjustment stage.
  • the delay adjustment stage then delays the selected TAP signal to produce the OUTPUT signal.
  • the programmable encoder converts the input DELAY data into control signals which tell the multiplexer which TAP signal to select and which adjust the delay of the delay adjustment stage.
  • the manner in which the encoder encodes the input DELAY data to produce the control signals is adjustable so that each of the N selectable circuit delays can be separately calibrated.
  • FIG. 1 is a block diagram of a programmable delay circuit in accordance with the present invention.
  • FIG. 1 illustrates a programmable delay circuit 10 for adjustably delaying an INPUT signal pulse to produce an OUTPUT_l signal pulse wherein the delay between the INPUT and 0UTPUT_1 signal pulses is controlled by input delay selection data, DELAY.
  • Delay circuit 10 can provide the linear relationship of equation [1] with a high degree of accuracy because it allows a user to accurately and separately adjust each of its N delays.
  • delay circuit 10 includes a tapped delay line 12 having N delay elements 14(1)-14(N) connected in series.
  • Each delay element 14 is suitably a logic gate for producing an output signal pulse in delayed response to an INPUT signal.
  • the INPUT signal drives delay element 14(1) and passes through each delay element 14(1)-14(N) in succession.
  • each delay element 14(1)-14(N) produces a separate TAP signal output TAP (1) -TAP(N) .
  • Each TAP signal drives a separate input of an N-input multiplexer 18 which selects one of the TAP signals to drive its output signal, 0UTPUT_2.
  • a delay adjustment stage 22 delays the OUTPUT_2 signal by an adjustable amount to produce the delay circuit 10 0UTPUT_1 signal.
  • the amount of time by which the delay adjustment stage 22 delays the OUTPUT_2 signal is independently adjustable for each of the N delays delay circuit 10 provides .
  • the delay selection data, DELAY addresses a conventional random access memory (RAM) 24. Normally in a read mode, RAM 24 responds to the DELAY data by reading out first output data COARSE for controlling multiplexer 18 and second output data FINE for controlling the delay of delay adjustment stage 22.
  • RAM 24 encodes each possible value of its input DELAY data to produce appropriate values of COARSE and FINE control data, which it stores at the location addressed by the DELAY data value being encoded.
  • An external controller such as a conventional computer may write COARSE and FINE data into RAM 24 in a conventional manner by supplying a COARSE/FINE data pair to data input terminals (DATA_IN) of RAM 24, setting the DELAY data to a desired RAM address, and then pulsing a READ/WRITE control signal input to RAM 24. This places RAM 24 momentarily in a write mode wherein the COARSE/FINE data is written into the current RAM 24 address.
  • the delay adjustment stage 22 includes a pair of drivers 28 and 30 connected in series.
  • Driver 28 receives the
  • OUTPUT_2 signal from multiplexer 18 and produces an OUTPUT_3 signal at a circuit node 35 in response thereto.
  • Driver 30 receives the OUTPUT_3 signal at node 35 and produces the OUTPUT_l signal in response thereto.
  • a set of M CMOS pass transistor pairs 32(1)-32(M) selectively couple corresponding capacitors 34(1)-34(M) to the node 35 between drivers 28 and 30.
  • An encoder 38 further decodes the FINE data output of RAM 24 to produce a set of control signals 40.
  • Each control signal 40 acts directly or indirectly via a corresponding inverter 36 to selectively turn on or off a corresponding one of pass transistor pairs 32(1)-32(M) to connect or disconnect the corresponding capacitor 34(1)-34(M) to or from node 35.
  • the delay of the 0UTPUT_3 signal pulse as it passes between drivers 28 and 30 is affected by the capacitance connected to node 35 — the higher the capacitance connected to node 35, the longer the delay.
  • the total delay between an INPUT signal pulse arriving at the input of delay element 14(1) and a resulting OUTPUT_l signal pulse departing driver 30 of adjustment stage 22 includes the delay of each delay line element 14 through which it passes to become the selected TAP(n) signal, the inherent delay of multiplexer 18 in passing the selected TAP(n) signal to delay adjustment stage 22 as the OUTPUT_2 signal, and the delay of delay adjustment stage 22 in producing the OUTPUT_l signal in response to the OUTPUT_2 signal .
  • the delay between the INPUT and OUTPUT_2 signals depends on the number n of elements through which the INPUT signal passes to become the selected TAP(n) signal. If the delay elements 14(1)-14(N) each provided a delay equal to
  • delays provided by elements 14(1)-14(N) can vary, they are each designed to remain within a range that does not exceed the desired UNIT_DELAY. This allows the delay adjustment stage 22 to adjust the circuit delay by adding an appropriate compensating delay.
  • the delay correction range that delay calibration stage 22 provides is proportional to the sum of capacitances of capacitors 34.
  • the accuracy of delay adjustment stage 22 provides is related to the resolution (the minimum unit capacitance) by which the total capacitance connected to node 35 can be adjusted.
  • the size and number M of capacitors 34 are matters of design choice. For example, to maximize capacitance range for a given number M of capacitors, each capacitor 34 (m) is suitably provided with a capacitance that is 2 m times the desired unit capacitance.
  • the number M of capacitors 34 to satisfy the total capacitance requirement.
  • the FINE data in RAM 24 is appropriately sized for the number M of independently controlled pass transistors 32. Note that encoder 38 could be eliminated if the FINE data has M bits since in that case each FINE data bit could directly control a separate pass transistor pair 32(1)-32(M).
  • Each storage location in RAM 24 corresponds to a separate one of the N selectable delays, DELAY (1) -DELAY (N) .
  • the COARSE/FINE data pair stored at each address of RAM 24 can be independently adjusted to calibrate delay circuit 10 to provide an appropriate set of selectable delays so that equation [1] is satisfied.
  • Delay circuit 10 may be calibrated for each value of DELAY (n) using an interactive process.
  • COURSE data which causes multiplexer 18 to select TAP(n) thereby giving tapped delay line 12 is largest delay
  • FINE data which causes all pass transistor pairs 32(1)-32(M) to disconnect their capacitors 34 from node 35, thereby giving delay adjustment stage 22 its smallest delay.
  • INPUT-to-0UTPUT_l signal delay is then measured. If the measured delay is larger than the desired delay, a new value of COARSE is written into RAM 24 which will cause multiplexer 18 to select tap TAP(n-l) . The resulting INPUT-to-OUTPUT_l signal delay is again measured. If the measured delay is still too large, the stored value of COARSE is again adjusted to select tap TAP(n-2) . This process is repeated until the delay is less than the desired delay. At that point the value of the FINE data stored at RAM 24 address n is then successively altered to progressively increase the amount of capacitance connected to node 35 until the measured INPUT-to-OUTPUT_l delay is most nearly equal to the desired delay. The process is repeated for each of the N addresses of RAM 24 so that all N values of DELAY (n) are properly calibrated.
  • RAM 24 acts as an encoder to convert the input DELAY data into delay control signals supplied to multiplexer 18 and to delay adjustment stage 22.
  • RAM 24 acts as a programmable encoder in that the manner in which it encodes its input DELAY data can be adjusted by writing data into RAM 24 for each of the N delays.
  • the READ/WRITE, DATA_IN and DELAY signal inputs to RAM 24 are in effect programming signals which independently program the manner in which the encoder implemented by RAM 24 encodes each input DELAY value when RAM 24 operates its read mode. The adjustability of the encoding of the input delay selection data allows each of the N selectable delays to be independently calibrated.
  • a programmable delay circuit 10 for providing a selected one of a set of N signal delays, wherein each delay of the set may be independently calibrated.
  • delay circuit 10 can provide more than N selectable delays.
  • the selectable delays are independently adjustable, then where application needs dictate, the selectable delays can be calibrated to conform to other than the linear relation outlined in equation [1] above.

Abstract

A programmable delay circuit (10) produces an OUTPUT signal following an INPUT signal with a delay selected by input delay selection data. The delay circuit includes a tapped delay line, a multiplexer, a delay adjustment stage and a programmable encoder. The delay line (12) includes a set of N delay elements connected in series for successively delaying the INPUT (12) signal to produce a set of N output TAP signals. The multiplexer passes a selected TAP signal to the delay adjustment stage (22). The delay adjustment stage delays the selected TAP signal to produce the OUTPUT signal. The programmable encoder (38) encodes the input delay selection data to provide signals for controlling the multiplexer and for adjusting the delay of the delay adjustment stage. The manner in which the encoder encodes each separate delay selection data value is adjustable so that each of the N selectable delays can be separately calibrated.

Description

PROGRAMMABLE DELAY CIRCUIT HAVING CALIBRATABLE DELAYS
Background of the Invention Field of the Invention The present invention relates in general to programmable delay circuits and in particular to a programmable delay circuit for selectively providing any one of a set of delays, wherein each delay is independently calibratable .
Description of Related Art A typical prior art programmable delay circuit includes a tapped delay line and a multiplexer. The delay line is formed by a set of delay stages connected in series for successively delaying an INPUT signal. Each delay stage may, for example, be a simple logic gate which passes an input signal to its output with a delay that depends on the response characteristics of the logic gate. With the output of each delay stage constituting a separate "tap" of the delay line, the INPUT signal appears at each tap in succession as the signal pulse traverses the delay line. The delay line taps are connected to separate inputs of the multiplexer which produces the delay circuit output. The programmable delay circuit is programmed to provide a desired delay simply by supplying input control data to the multiplexer so that it passes a selected one of its input delay line taps to its output. The delay of the programmable delay circuit is the sum of the delays of all delay line elements through which the input pulse passes enroute to the selected tap, along with the time required for the input pulse to travel though the multiplexer itself .
A "linear" programmable delay circuit provides a delay that is a selected multiple of a desired unit delay. If all elements of a delay line had the same unit delay, then the total delay provided by the programmable delay circuit would be a linear function of the number of delay elements the input signal passes through enroute to the selected tap. However even though delay elements may be formed by similar logic gates, "similar" logic gates typically not provide exactly the same delay because, due to integrated circuit process variations, the gates are not exactly similar, even when implemented on the same integrated circuit. The article entitled "CMOS Programmable Delay Vernier" by Masaharu Goto et al, published in the United States of America in October 1994 in the Hewlett-Packard Journal, describes a system for correcting non-linear characteristics in a programmable delay circuit of the type employing a multiplexer to select a tap of a tapped delay line. This article describes each element of the tapped delay line as being formed by two inverter stages connected in series with a variable capacitor coupling the output of the first inverter stage to ground. The capacitance provided by the capacitor within each stage is selected by data stored in a separate register for each stage. The delay of each element is a function of the delays of the two inverter stages and the selected amount of capacitance. The Goto et al article teaches that to provide for linear characteristics one can adjust the delay provided by each delay element by adjusting the capacitance for that element so that the delay element provides a desired unit delay. One drawback to this system is that a delay line having many delay elements requires many capacitors and registers.
Summary of the Invention A programmable delay circuit in accordance with the invention produces an OUTPUT signal following an INPUT signal by one of N delays selected by input delay selection data. Each of the N delays is separately calibratable. The delay circuit includes a tapped delay line, a multiplexer, a delay adjustment stage and a programmable encoder. The delay line includes a set of N delay elements connected in series for successively delaying the INPUT signal to produce a set of N output TAP signals that are progressively delayed versions of the INPUT signal. The TAP signals drive separate inputs of the multiplexer which passes a selected one of the TAP signals to the delay adjustment stage. The delay adjustment stage then delays the selected TAP signal to produce the OUTPUT signal. The programmable encoder converts the input DELAY data into control signals which tell the multiplexer which TAP signal to select and which adjust the delay of the delay adjustment stage. The manner in which the encoder encodes the input DELAY data to produce the control signals is adjustable so that each of the N selectable circuit delays can be separately calibrated.
It is accordingly an object of the invention to provide a programmable delay circuit capable of providing any of a plurality of delays in response to input delay selection data wherein each delay is separately calibratable.
The concluding portion of this specification particularly points out and distinctly claims the subject matter of the present invention. However those skilled in the art will best understand both the organization and method of operation of the invention, together with further advantages and objects thereof, by reading the remaining portions of the specification in view of the accompanying drawing (s) wherein like reference characters refer to like elements .
Brief Description of the Drawin (s) FIG. 1 is a block diagram of a programmable delay circuit in accordance with the present invention.
Description of the Preferred Embodiment ( s ) FIG. 1 illustrates a programmable delay circuit 10 for adjustably delaying an INPUT signal pulse to produce an OUTPUT_l signal pulse wherein the delay between the INPUT and 0UTPUT_1 signal pulses is controlled by input delay selection data, DELAY. Circuit 10 provides N selectable delay times and each delay time is independently calibratable. In many applications it is desired that a programmable delay circuit provide N selectable delays that conform to the linear function: DELAY (n) = (n * UNIT_DELAY) + MINIMUM_DELAY [1]
where UNITJDELAY and MINIMUM_DELAY are constants and n is any integer from 1 to N. Delay circuit 10 can provide the linear relationship of equation [1] with a high degree of accuracy because it allows a user to accurately and separately adjust each of its N delays.
As illustrated in FIG. 1, delay circuit 10 includes a tapped delay line 12 having N delay elements 14(1)-14(N) connected in series. Each delay element 14 is suitably a logic gate for producing an output signal pulse in delayed response to an INPUT signal. The INPUT signal drives delay element 14(1) and passes through each delay element 14(1)-14(N) in succession. Thus in response to the INPUT signal, each delay element 14(1)-14(N) produces a separate TAP signal output TAP (1) -TAP(N) . Each TAP signal drives a separate input of an N-input multiplexer 18 which selects one of the TAP signals to drive its output signal, 0UTPUT_2. A delay adjustment stage 22 delays the OUTPUT_2 signal by an adjustable amount to produce the delay circuit 10 0UTPUT_1 signal. The amount of time by which the delay adjustment stage 22 delays the OUTPUT_2 signal is independently adjustable for each of the N delays delay circuit 10 provides . The delay selection data, DELAY, addresses a conventional random access memory (RAM) 24. Normally in a read mode, RAM 24 responds to the DELAY data by reading out first output data COARSE for controlling multiplexer 18 and second output data FINE for controlling the delay of delay adjustment stage 22. Thus RAM 24 encodes each possible value of its input DELAY data to produce appropriate values of COARSE and FINE control data, which it stores at the location addressed by the DELAY data value being encoded. An external controller such as a conventional computer may write COARSE and FINE data into RAM 24 in a conventional manner by supplying a COARSE/FINE data pair to data input terminals (DATA_IN) of RAM 24, setting the DELAY data to a desired RAM address, and then pulsing a READ/WRITE control signal input to RAM 24. This places RAM 24 momentarily in a write mode wherein the COARSE/FINE data is written into the current RAM 24 address.
The delay adjustment stage 22 includes a pair of drivers 28 and 30 connected in series. Driver 28 receives the
OUTPUT_2 signal from multiplexer 18 and produces an OUTPUT_3 signal at a circuit node 35 in response thereto. Driver 30 receives the OUTPUT_3 signal at node 35 and produces the OUTPUT_l signal in response thereto. A set of M CMOS pass transistor pairs 32(1)-32(M) selectively couple corresponding capacitors 34(1)-34(M) to the node 35 between drivers 28 and 30. An encoder 38 further decodes the FINE data output of RAM 24 to produce a set of control signals 40. Each control signal 40 acts directly or indirectly via a corresponding inverter 36 to selectively turn on or off a corresponding one of pass transistor pairs 32(1)-32(M) to connect or disconnect the corresponding capacitor 34(1)-34(M) to or from node 35. The delay of the 0UTPUT_3 signal pulse as it passes between drivers 28 and 30 is affected by the capacitance connected to node 35 — the higher the capacitance connected to node 35, the longer the delay.
The total delay between an INPUT signal pulse arriving at the input of delay element 14(1) and a resulting OUTPUT_l signal pulse departing driver 30 of adjustment stage 22 includes the delay of each delay line element 14 through which it passes to become the selected TAP(n) signal, the inherent delay of multiplexer 18 in passing the selected TAP(n) signal to delay adjustment stage 22 as the OUTPUT_2 signal, and the delay of delay adjustment stage 22 in producing the OUTPUT_l signal in response to the OUTPUT_2 signal .
The delay between the INPUT and OUTPUT_2 signals depends on the number n of elements through which the INPUT signal passes to become the selected TAP(n) signal. If the delay elements 14(1)-14(N) each provided a delay equal to
UNIT_DELAY of equation [1] above, and if the delay of multiplexer 18 did not vary with the selected tap and were equal to the desired MINIMUM_DELAY, then equation [1] above would properly characterize the delay between INPUT and 0UTPUT_2. In such case delay adjustment stage 22 would be unnecessary in order to calibrate the delay circuit 10 so as to provide the desired set of linearly-related delays defined by equation [1] . However in practice it is difficult to produce a tapped delay line 12 in which the delay elements have accurately matched delays . Even when delay elements 14(1)-14(N) are of similar design and are implemented on the same integrated circuit, process variations produce variations in the delays that they provide. Also the inherent delay of multiplexer 18 is difficult to accurately control and can vary depending on which tap it selects.
While delays provided by elements 14(1)-14(N) can vary, they are each designed to remain within a range that does not exceed the desired UNIT_DELAY. This allows the delay adjustment stage 22 to adjust the circuit delay by adding an appropriate compensating delay. The delay correction range that delay calibration stage 22 provides is proportional to the sum of capacitances of capacitors 34. The accuracy of delay adjustment stage 22 provides is related to the resolution (the minimum unit capacitance) by which the total capacitance connected to node 35 can be adjusted. One skilled in the art will appreciate that the size and number M of capacitors 34 are matters of design choice. For example, to maximize capacitance range for a given number M of capacitors, each capacitor 34 (m) is suitably provided with a capacitance that is 2m times the desired unit capacitance. Alternatively, for example, where it is preferable to employ capacitors 34 having the same unit capacitance, we choose the number M of capacitors 34 to satisfy the total capacitance requirement. The FINE data in RAM 24 is appropriately sized for the number M of independently controlled pass transistors 32. Note that encoder 38 could be eliminated if the FINE data has M bits since in that case each FINE data bit could directly control a separate pass transistor pair 32(1)-32(M). Each storage location in RAM 24 corresponds to a separate one of the N selectable delays, DELAY (1) -DELAY (N) . The COARSE/FINE data pair stored at each address of RAM 24 can be independently adjusted to calibrate delay circuit 10 to provide an appropriate set of selectable delays so that equation [1] is satisfied. Delay circuit 10 may be calibrated for each value of DELAY (n) using an interactive process. First, at RAM 24 address n, we write COURSE data which causes multiplexer 18 to select TAP(n) thereby giving tapped delay line 12 is largest delay, and we write FINE data which causes all pass transistor pairs 32(1)-32(M) to disconnect their capacitors 34 from node 35, thereby giving delay adjustment stage 22 its smallest delay. The
INPUT-to-0UTPUT_l signal delay is then measured. If the measured delay is larger than the desired delay, a new value of COARSE is written into RAM 24 which will cause multiplexer 18 to select tap TAP(n-l) . The resulting INPUT-to-OUTPUT_l signal delay is again measured. If the measured delay is still too large, the stored value of COARSE is again adjusted to select tap TAP(n-2) . This process is repeated until the delay is less than the desired delay. At that point the value of the FINE data stored at RAM 24 address n is then successively altered to progressively increase the amount of capacitance connected to node 35 until the measured INPUT-to-OUTPUT_l delay is most nearly equal to the desired delay. The process is repeated for each of the N addresses of RAM 24 so that all N values of DELAY (n) are properly calibrated.
As may be seen from the foregoing discussion, RAM 24 acts as an encoder to convert the input DELAY data into delay control signals supplied to multiplexer 18 and to delay adjustment stage 22. RAM 24 acts as a programmable encoder in that the manner in which it encodes its input DELAY data can be adjusted by writing data into RAM 24 for each of the N delays. In particular, the READ/WRITE, DATA_IN and DELAY signal inputs to RAM 24 are in effect programming signals which independently program the manner in which the encoder implemented by RAM 24 encodes each input DELAY value when RAM 24 operates its read mode. The adjustability of the encoding of the input delay selection data allows each of the N selectable delays to be independently calibrated. Thus has been shown and described a programmable delay circuit 10 for providing a selected one of a set of N signal delays, wherein each delay of the set may be independently calibrated. However it should be noted that when RAM 24 has more than N addressable storage locations, delay circuit 10 can provide more than N selectable delays. Also since the selectable delays are independently adjustable, then where application needs dictate, the selectable delays can be calibrated to conform to other than the linear relation outlined in equation [1] above. Thus while the forgoing specification has described preferred embodiment ( s ) of the present invention, one skilled in the art may make many modifications to the preferred embodiment without departing from the invention in its broader aspects . The appended claims therefore are intended to cover all such modifications as fall within the true scope and spirit of the invention.

Claims

Claim(s) What is claimed is:
1. A programmable delay circuit for producing a FIRST OUTPUT signal in delayed response to an INPUT signal, wherein said FIRST OUTPUT signal lags said INPUT signal with a circuit delay referenced by input delay selection data, the apparatus comprising: encoding means for receiving and encoding said input delay selection data to produce output COARSE data and FINE data, said COURSE data indicating a first delay and said output data indicating a second delay; first delay means for receiving said INPUT signal and for producing in response thereto a succession of TAP signals ; multiplexing means for receiving said TAP signals from said delay line, for receiving said COARSE data from said encoding means and for producing a SECOND OUTPUT signal in response to one of said TAP signals selected in accordance with a value of said COARSE data such that said SECOND OUTPUT signal lags said INPUT signal by said first delay; and second delay means for receiving said FINE data, for receiving said SECOND OUTPUT signal and for producing said FIRST OUTPUT signal in response to said SECOND OUTPUT signal after said second delay of duration controlled by said FINE data.
2. The programmable delay circuit in accordance with claim 1 wherein said encoding means comprises a random access memory (RAM) having a plurality of addressable storage locations therein each storing said COARSE data and FINE data, said RAM being addressed by said delay selection data and reading out addressed COARSE and FINE data values to said multiplexing means and said second delay means, respectively.
3. The programmable delay circuit in accordance with claim 1 wherein said first delay means comprises a plurality of delay elements connected in series, for successively delaying said INPUT signal, each delay element producing one of said TAP signals.
4. The programmable delay circuit in accordance with claim 2 wherein said first delay means comprises a plurality of delay elements, connected in series, for successively delaying said INPUT signal, each delay element producing one of said TAP signals.
5. The programmable delay circuit in accordance with claim 1 wherein said second delay circuit comprises : a circuit node; a first driver for receiving said SECOND OUTPUT signal and producing a THIRD OUTPUT signal at said circuit node in response to said SECOND OUTPUT signal; a second driver, having an input connected to said circuit node for receiving said THIRD output signal, for producing said FIRST OUTPUT signal in response to said THIRD OUTPUT signal; a plurality of capacitors; and means for receiving said FINE data and for connecting selected ones of said capacitors to said circuit node in response to said FINE data.
6. The programmable delay circuit in accordance with claim 2 wherein said second delay circuit comprises: a circuit node; a first driver for receiving said SECOND OUTPUT signal and producing a THIRD OUTPUT signal at said circuit node in response to said SECOND OUTPUT signal; a second driver, having an input connected to said circuit node for receiving said THIRD output signal, for producing said FIRST OUTPUT signal in response to said THIRD OUTPUT signal; a plurality of capacitors; and means for receiving said FINE data and for connecting a selected number of said capacitors to said circuit node in accordance with said FINE data.
7. The programmable delay circuit in accordance with claim 3 wherein said second delay circuit comprises: a circuit node; a first driver for receiving said SECOND OUTPUT signal and producing a THIRD OUTPUT signal at said circuit node in response to said SECOND OUTPUT signal; a second driver, having an input connected to said circuit node for receiving said THIRD output signal, for producing said FIRST OUTPUT signal in response to said THIRD OUTPUT signal; a plurality of capacitors; and means for receiving said FINE data and for connecting a selected number of said capacitors to said circuit node in accordance with said FINE data.
8. The programmable delay circuit in accordance with claim 1 wherein said encoding means includes means for receiving input programming signals for independently adjusting values of the COARSE and FINE data that said encoding means produces in response to each value of said input delay selection data.
9. The programmable delay circuit in accordance with claim 3 wherein said encoding means includes means for receiving input programming signals for independently adjusting values of the COARSE and FINE data that said encoding means produces in response to each value of said input delay selection data.
10. The programmable delay circuit in accordance with claim 5 wherein said encoding means includes means for receiving input programming signals for independently adjusting values of the COARSE and FINE data that said encoding means produces in response to each value of said input delay selection data.
11. The programmable delay circuit in accordance with claim 6 wherein said encoding means includes means for receiving input programming signals for independently adjusting values of the COARSE and FINE data that said encoding means produces in response to each value of said input delay selection data.
12. The programmable delay circuit in accordance with claim 7 wherein said encoding means includes means for receiving input programming signals for independently adjusting values of the COARSE and FINE data that said encoding means produces in response to each value of said input delay selection data.
PCT/US1998/011282 1997-06-18 1998-06-02 Programmable delay circuit having calibratable delays WO1998058449A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP98925174A EP1021861A4 (en) 1997-06-18 1998-06-02 Programmable delay circuit having calibratable delays
KR10-1999-7011778A KR100511844B1 (en) 1997-06-18 1998-06-02 Programmable delay circuit having calibratable delays
JP50446199A JP2002508120A (en) 1997-06-18 1998-06-02 Programmable delay circuit with calibratable delay

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/877,923 1997-06-18
US08/877,923 US5963074A (en) 1997-06-18 1997-06-18 Programmable delay circuit having calibratable delays

Publications (2)

Publication Number Publication Date
WO1998058449A2 true WO1998058449A2 (en) 1998-12-23
WO1998058449A3 WO1998058449A3 (en) 1999-04-01

Family

ID=25371010

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1998/011282 WO1998058449A2 (en) 1997-06-18 1998-06-02 Programmable delay circuit having calibratable delays

Country Status (5)

Country Link
US (1) US5963074A (en)
EP (1) EP1021861A4 (en)
JP (1) JP2002508120A (en)
KR (1) KR100511844B1 (en)
WO (1) WO1998058449A2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19933115A1 (en) * 1999-07-19 2001-01-25 Mannesmann Vdo Ag Method for modulating a basic clock for digital circuits and clock modulator for carrying out the method
DE19933117A1 (en) * 1999-07-19 2001-01-25 Mannesmann Vdo Ag Modulating basic clock for digital circuits involves varying distances between successive switching edges according to given relationship number of equidistant sections per half period
DE10016724A1 (en) * 2000-04-04 2001-10-11 Infineon Technologies Ag Circuit arrangement for reception of at least two digital signals
EP1810397A1 (en) * 2004-09-30 2007-07-25 Motorola, Inc. Method and apparatus for frequency synthesis
JP2007531959A (en) * 2004-03-31 2007-11-08 マイクロン テクノロジー、インコーポレイテッド Signal timing reconstruction in integrated circuits.

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3209943B2 (en) * 1997-06-13 2001-09-17 沖電気工業株式会社 Voltage control delay circuit, direct phase control type voltage controlled oscillator, clock / data recovery circuit, and clock / data recovery device
US6104223A (en) * 1998-01-30 2000-08-15 Credence Systems Corporation Calibratable programmable phase shifter
US7564283B1 (en) 1998-06-22 2009-07-21 Xilinx, Inc. Automatic tap delay calibration for precise digital phase shift
US6289068B1 (en) 1998-06-22 2001-09-11 Xilinx, Inc. Delay lock loop with clock phase shifter
US7109765B1 (en) * 1998-11-03 2006-09-19 Altera Corporation Programmable phase shift circuitry
KR100327135B1 (en) * 1999-08-26 2002-03-13 윤종용 delay circuit and semiconductor memory device using this circuit
US6522982B1 (en) * 1999-09-24 2003-02-18 Cirrus Logic, Inc. Energy-to-pulse converter systems, devices, and methods wherein the output frequency is greater than the calculation frequency and having output phasing
US6304202B1 (en) * 1999-09-24 2001-10-16 Cirrus Logic, Inc. Delay correction system and method for a voltage channel in a sampled data measurement system
US6795931B1 (en) * 1999-09-30 2004-09-21 Micron Technology, Inc. Method and apparatus for an adjustable delay circuit having arranged serially coarse stages received by a fine delay stage
JP2001217694A (en) * 2000-02-04 2001-08-10 Nec Corp Delay-adjusting circuit and clock-generating circuit using same
US6377102B2 (en) * 2000-02-29 2002-04-23 Texas Instruments Incorporated Load equalization in digital delay interpolators
JP3984412B2 (en) * 2000-05-26 2007-10-03 富士通株式会社 Variable delay circuit and semiconductor integrated circuit having variable delay circuit
US6330197B1 (en) 2000-07-31 2001-12-11 Credence Systems Corporation System for linearizing a programmable delay circuit
US7026850B2 (en) * 2001-05-21 2006-04-11 Acuid Corporation Limited Programmable self-calibrating vernier and method
IL159658A0 (en) * 2001-07-03 2004-06-01 Self-powered switch initiation system
KR100418524B1 (en) * 2001-10-06 2004-02-11 삼성전자주식회사 digitally controllable internal clock generating circuit in semiconductor memory device and method therefore
US6618309B2 (en) 2001-10-09 2003-09-09 Analog Devices, Inc. Adjustable memory self-timing circuit
US7024568B2 (en) * 2002-09-06 2006-04-04 National Semiconductor Corporation Method and system for providing self-calibration for adaptively adjusting a power supply voltage in a digital processing system
US20040222832A1 (en) * 2003-05-09 2004-11-11 Chaiyuth Chansungsan Interpolator circuit
JP3859624B2 (en) * 2003-07-31 2006-12-20 エルピーダメモリ株式会社 Delay circuit and delay locked loop device
US7103110B2 (en) * 2003-10-10 2006-09-05 Atmel Corporation Dual phase pulse modulation encoder circuit
US7283011B2 (en) * 2003-10-10 2007-10-16 Atmel Corporation Method for performing dual phase pulse modulation
US6947493B2 (en) * 2003-10-10 2005-09-20 Atmel Corporation Dual phase pulse modulation decoder circuit
US7046052B1 (en) 2004-04-30 2006-05-16 Xilinx, Inc. Phase matched clock divider
US7157951B1 (en) 2004-04-30 2007-01-02 Xilinx, Inc. Digital clock manager capacitive trim unit
US7038519B1 (en) 2004-04-30 2006-05-02 Xilinx, Inc. Digital clock manager having cascade voltage switch logic clock paths
US7336103B1 (en) 2004-06-08 2008-02-26 Transmeta Corporation Stacked inverter delay chain
US7142018B2 (en) 2004-06-08 2006-11-28 Transmeta Corporation Circuits and methods for detecting and assisting wire transitions
US7304503B2 (en) * 2004-06-08 2007-12-04 Transmeta Corporation Repeater circuit with high performance repeater mode and normal repeater mode, wherein high performance repeater mode has fast reset capability
US7635992B1 (en) * 2004-06-08 2009-12-22 Robert Paul Masleid Configurable tapered delay chain with multiple sizes of delay elements
US7656212B1 (en) 2004-06-08 2010-02-02 Robert Paul Masleid Configurable delay chain with switching control for tail delay elements
US7173455B2 (en) 2004-06-08 2007-02-06 Transmeta Corporation Repeater circuit having different operating and reset voltage ranges, and methods thereof
US7498846B1 (en) 2004-06-08 2009-03-03 Transmeta Corporation Power efficient multiplexer
US7405597B1 (en) * 2005-06-30 2008-07-29 Transmeta Corporation Advanced repeater with duty cycle adjustment
US7071747B1 (en) 2004-06-15 2006-07-04 Transmeta Corporation Inverting zipper repeater circuit
US7157952B2 (en) * 2004-08-20 2007-01-02 L-3 Integrated Systems Company Systems and methods for implementing delay line circuitry
US7079577B2 (en) * 2004-09-08 2006-07-18 Atmel Corporation Wide window decoder circuit for dual phase pulse modulation
US7330080B1 (en) 2004-11-04 2008-02-12 Transmeta Corporation Ring based impedance control of an output driver
US7592842B2 (en) * 2004-12-23 2009-09-22 Robert Paul Masleid Configurable delay chain with stacked inverter delay elements
US7190202B1 (en) * 2005-04-05 2007-03-13 Xilink, Inc. Trim unit having less jitter
US20070013425A1 (en) * 2005-06-30 2007-01-18 Burr James B Lower minimum retention voltage storage elements
US7394681B1 (en) 2005-11-14 2008-07-01 Transmeta Corporation Column select multiplexer circuit for a domino random access memory array
US7642866B1 (en) 2005-12-30 2010-01-05 Robert Masleid Circuits, systems and methods relating to a dynamic dual domino ring oscillator
US7414485B1 (en) * 2005-12-30 2008-08-19 Transmeta Corporation Circuits, systems and methods relating to dynamic ring oscillators
US7382170B2 (en) * 2006-04-18 2008-06-03 Agere Systems Inc. Programmable delay circuit having reduced insertion delay
US8608076B2 (en) * 2008-02-12 2013-12-17 Datalogic ADC, Inc. Monolithic mirror structure for use in a multi-perspective optical code reader
US7872494B2 (en) * 2009-06-12 2011-01-18 Freescale Semiconductor, Inc. Memory controller calibration
US7893741B2 (en) * 2009-06-12 2011-02-22 Freescale Semiconductor, Inc. Multiple-stage, signal edge alignment apparatus and methods
JP2012029211A (en) * 2010-07-27 2012-02-09 Fujitsu Ltd Timing adjustment circuit
JP2012100058A (en) * 2010-11-01 2012-05-24 Panasonic Corp Delay circuit, delay control device, memory control device and information terminal apparatus
US9130588B2 (en) * 2013-03-15 2015-09-08 Intel Mobile Communications GmbH Redundant delay digital-to-time converter
US9584105B1 (en) 2016-03-10 2017-02-28 Analog Devices, Inc. Timing generator for generating high resolution pulses having arbitrary widths
US11183995B1 (en) 2017-06-16 2021-11-23 Rambus Inc. High-resolution digitally controlled delay line
US10998911B1 (en) 2019-12-30 2021-05-04 Nxp Usa, Inc. Fractional N PLL with sigma-delta noise cancellation

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237224A (en) * 1990-10-11 1993-08-17 International Business Machines Corporation Variable self-correcting digital delay circuit
US5349612A (en) * 1992-06-19 1994-09-20 Advanced Micro Devices, Inc. Digital serializer and time delay regulator
US5497263A (en) * 1992-09-10 1996-03-05 Hitachi, Ltd. Variable delay circuit and clock signal supply unit using the same

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4164648A (en) * 1978-06-23 1979-08-14 Hewlett-Packard Company Double vernier time interval measurement using triggered phase-locked oscillators
US4714924A (en) * 1985-12-30 1987-12-22 Eta Systems, Inc. Electronic clock tuning system
US4837521A (en) * 1987-07-02 1989-06-06 Schlumberger Systems & Services, Inc. Delay line control system for automatic test equipment
JPH03219719A (en) * 1990-01-24 1991-09-27 Mitsubishi Electric Corp Delay circuit and semiconductor device using the same
US5109394A (en) * 1990-12-24 1992-04-28 Ncr Corporation All digital phase locked loop
US5214680A (en) * 1991-11-01 1993-05-25 Hewlett-Packard Company CMOS pseudo-NMOS programmable capacitance time vernier and method of calibration
US5243227A (en) * 1991-11-01 1993-09-07 Hewlett-Packard Company Fine/coarse wired-or tapped delay line
EP0539830B1 (en) * 1991-11-01 1998-05-27 Hewlett-Packard Company Pseudo-NMOS fine/coarse wired-or tapped delay line
US5355037A (en) * 1992-06-15 1994-10-11 Texas Instruments Incorporated High performance digital phase locked loop
US5552726A (en) * 1993-05-05 1996-09-03 Texas Instruments Incorporated High resolution digital phase locked loop with automatic recovery logic
JP3553639B2 (en) * 1994-05-12 2004-08-11 アジレント・テクノロジーズ・インク Timing adjustment circuit
JP2771464B2 (en) * 1994-09-29 1998-07-02 日本電気アイシーマイコンシステム株式会社 Digital PLL circuit

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237224A (en) * 1990-10-11 1993-08-17 International Business Machines Corporation Variable self-correcting digital delay circuit
US5349612A (en) * 1992-06-19 1994-09-20 Advanced Micro Devices, Inc. Digital serializer and time delay regulator
US5497263A (en) * 1992-09-10 1996-03-05 Hitachi, Ltd. Variable delay circuit and clock signal supply unit using the same

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1021861A2 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19933115A1 (en) * 1999-07-19 2001-01-25 Mannesmann Vdo Ag Method for modulating a basic clock for digital circuits and clock modulator for carrying out the method
DE19933117A1 (en) * 1999-07-19 2001-01-25 Mannesmann Vdo Ag Modulating basic clock for digital circuits involves varying distances between successive switching edges according to given relationship number of equidistant sections per half period
EP1081578A2 (en) * 1999-07-19 2001-03-07 Mannesmann VDO Aktiengesellschaft Method for modulating a clock signal for digital circuits and a modulator for carrying out the method
US6741660B1 (en) 1999-07-19 2004-05-25 Mannesmann Vdo Ag Method for modulation of a basic clock for digital circuits, and a modulator for carrying out the method
US6904112B1 (en) 1999-07-19 2005-06-07 Mannesmann Vdo Ag Method for modulating a basic clock signal for digital circuits and clock modulator for implementing the method
EP1081578A3 (en) * 1999-07-19 2007-11-14 Siemens Aktiengesellschaft Method for modulating a clock signal for digital circuits and a modulator for carrying out the method
DE19933117B4 (en) * 1999-07-19 2011-07-28 Continental Automotive GmbH, 30165 Method for modulating a basic clock for digital circuits and modulator for carrying out the method
DE10016724A1 (en) * 2000-04-04 2001-10-11 Infineon Technologies Ag Circuit arrangement for reception of at least two digital signals
JP2007531959A (en) * 2004-03-31 2007-11-08 マイクロン テクノロジー、インコーポレイテッド Signal timing reconstruction in integrated circuits.
EP1810397A1 (en) * 2004-09-30 2007-07-25 Motorola, Inc. Method and apparatus for frequency synthesis
EP1810397A4 (en) * 2004-09-30 2008-11-19 Motorola Inc Method and apparatus for frequency synthesis

Also Published As

Publication number Publication date
KR20010013763A (en) 2001-02-26
EP1021861A4 (en) 2005-07-27
JP2002508120A (en) 2002-03-12
KR100511844B1 (en) 2005-09-05
US5963074A (en) 1999-10-05
WO1998058449A3 (en) 1999-04-01
EP1021861A2 (en) 2000-07-26

Similar Documents

Publication Publication Date Title
US5963074A (en) Programmable delay circuit having calibratable delays
CN1808902B (en) Output circuit, semiconductor device, and method of adjusting characteristics of output circuit
US5506534A (en) Digitally adjustable picosecond delay circuit
US6151238A (en) Calibrating functions of an integrated circuit and storing calibration parameters thereof in a programmable fuse array
EP0777232B1 (en) Programmable time delay in or relating to semiconductor memories
US5499208A (en) Integrated circuit memory device
US20110074463A1 (en) On-die system and method for controlling termination impedance of memory device data bus terminals
US20080143406A1 (en) Apparatus and method for adjusting slew rate in semiconductor memory device
EP1665532B1 (en) Configuring and selecting a duty cycle for an output driver
US7282968B2 (en) Data output driver and semiconductor memory device having the same
US5905671A (en) Ferroelectric memory with feedback
US20080122450A1 (en) Calibration circuit
KR960013858B1 (en) Data output buffer control circuit
CN110838336A (en) Calibration circuit and semiconductor memory device including the same
US7224179B2 (en) Apparatus for adjusting slew rate in semiconductor memory device and method therefor
US6141258A (en) Programmable impedance output buffer drivers, semiconductor devices and static random access memories provided with a progammable impedance output port
KR100410978B1 (en) Impedance matching circuit of a semiconductor memory device
JP2689768B2 (en) Semiconductor integrated circuit device
US6023181A (en) High speed unitransition input buffer
US20020171472A1 (en) Voltage and time control circuits and methods of operating the same
US5233637A (en) System for generating an analog regulating voltage
US6166576A (en) Method and apparatus for controlling timing of digital components
KR100596441B1 (en) An semiconductor memory device
US20050046441A1 (en) Scalable termination
US6127870A (en) Output delay circuit

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

AK Designated states

Kind code of ref document: A3

Designated state(s): JP KR

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 1998925174

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1019997011778

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 1998925174

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1019997011778

Country of ref document: KR

WWG Wipo information: grant in national office

Ref document number: 1019997011778

Country of ref document: KR

WWW Wipo information: withdrawn in national office

Ref document number: 1998925174

Country of ref document: EP