In Very-Large-Scale Integration (VLSI) chip design, there is often a need to delay a signal. This is typically accomplished by introducing delay elements, such as logic gates or wires, along a signal path, where a linear delay line having N delay elements achieves a delay of O(N). However, the more delay elements that are required, the more area that is needed, which increases routing congestion and the chances that cross-coupling and noise issues will arise.
In one aspect of the invention, a voltage-controlled delay line is provided, including a clipper configured to produce a clipped input voltage from an input voltage, an oscillator configured to produce a strobe pulse train that is initiated by the clipped input voltage, and a divider module configured to divide the strobe pulse train and produce an output voltage from the divided strobe pulse train.
In another aspect of the invention, a voltage-controlled delay line method is provided, including producing a clipped input voltage from an input voltage, using the clipped input voltage to initiate a strobe pulse train, dividing the strobe pulse train, and producing an output voltage from the divided strobe pulse train.
Aspects of the invention will be understood and appreciated more fully from the following detailed description taken in conjunction with the appended drawings in which:
Aspects of the invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer readable program instructions.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts or carry out combinations of special purpose hardware and computer instructions.
Reference is now made to
The frequency at which oscillator 106 operates should be sufficient such that the division of strobe pulse train 108 provides a sufficient number of delay periods to satisfy a given delay-line requirement. Thus, for example, if the clock speed of the environment is x, the frequency of oscillator 106 is preferably at least 10×.
Reference is now made to
Reference is now made to
Reference is now made to
A controlled ring oscillator (RO) 306 is configured to receive clipped VIN 304 as a trigger, and produce a strobe pulse train 308 that is initiated by clipped VIN 304. In controlled RO 306, clipped VIN 304 is received at both a NOR gate 306A and a set/reset (SR) latch 306B. Clipped VIN 304 is routed from NOR gate 306A to an inverter 306C, and then to a NAND gate 306D. Clipped VIN 304 is routed from SR latch 306B to NAND gate 306D. The output of NAND gate 306D is routed to an inverter 306E and then to an SR latch 306F. The output of SR latch 306F is routed to a line of inverters 306G which produces strobe pulse train 308. A line of inverters 306H receives strobe pulse train 308, as does SR latch 306F. The output of line of inverters 306H is then routed back to NOR gate 306A, thus closing the feedback loop that produces the ring oscillator.
A divider module 310 is configured to receive and divide strobe pulse train 308 via a set of serially-interconnected dividers 310A, 310B, 310C, and 310D, such as where each of dividers 310A, 310B, 310C, and 310D is configured as a divider-by-two, which then produces an output voltage (VOUT) 312, which is a divided version of the strobe pulse train 308.
A clipper 314 is configured to receive VOUT 312 and produce a clipped output voltage (VOUT) 316 from VOUT 312. In clipper 314, VOUT 312 is received at an inverter 314A, whose output voltage is routed to a line of inverters 314B and a NOR gate 314C. The output voltage of the line of inverters 314B is also routed to NOR gate 314C. NOR gate 314C produces clipped VOUT 316. Controlled RO 306 is configured to receive clipped VOUT 316 at the “RESET” input of SR latch 306B, which turns off strobe pulse train 308.
It will be appreciated that aspects of the invention achieve an O(N) delay using an O(log N)-area circuit having log N dividers. Furthermore, as aspects of the invention do not require an external clock, creating its own time base instead, delay precision is independent of a system clock cycle.
The descriptions of the various embodiments of the invention have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.
Number | Name | Date | Kind |
---|---|---|---|
7622979 | Bhatia et al. | Nov 2009 | B2 |
8294502 | Lewis | Oct 2012 | B2 |
20040246058 | Chen | Dec 2004 | A1 |
20050168260 | Tomerlin et al. | Aug 2005 | A1 |