The invention relates generally to automatic test equipment, and more particularly high accuracy digital counter circuits.
Numerical counter oscillators (NCO), or accumulators, are convenient multi-bit registers that increment a summed value in response to a periodic input signal, such as a digital clock waveform. One application for an NCO is in a technique known as direct-digital-synthesis, often used to generate a variable frequency clock.
Direct-digital-synthesis (DDS) for generating variable frequency clocks are well-known in the art and, as shown in
Each multi-bit count value is mapped to a sine value look-up table or memory 14 for a digital representation of an analog sine wave phase angle. The digital representation is then fed through a digital-to-analog converter (DAC) 16 where the accumulating phase angle results in a complete sinusoidal analog waveform. Further conditioning of the analog signal by a filter 18 and a phase-locked-loop (PLL) 20 often occurs to form the desired clock.
Conventionally, the frequency of the desired end waveform typically relies on the accuracy of the NCO. The degree of accuracy is typically characterized by the equation FNCO=Fref(A/B), where FNCO is the desired frequency and Fref is the digital input clock frequency. The “A” and “B” terms together represent a ratio of Fref to FNCO. The “B” term traditionally represents a binary divisor dependent on the number of output bits N in the NCO.
In other words, the ratio A/B forces a ½N resolution when programming a desired clock frequency FNCO. The resulting problem is that a user desiring to program a variable frequency clock to, for example, one gigahertz, because of the limited number of available values for “B”, might have to accept a frequency of 1.001 gigahertz. In some applications, such as automatic test equipment, this level of inaccuracy is problematic.
What is needed and currently unavailable is an NCO that provides a high level of accuracy that correspondingly allows more flexibility in frequency resolution for variable frequency clock generators and other circuits that utilize NCOs. The NCO described herein satisfies these needs.
The numeric counter oscillator described herein provides a unique way to achieve high accuracy and repeatability for circuits that use direct-digital-synthesis techniques.
To realize the foregoing advantages, the numeric counter oscillator in one form comprises a numeric counter oscillator comprising a quotient accumulator and a remainder accumulator. The quotient accumulator has a programmable input for receiving a QUOTIENT value, a reference clock input and a multi-bit output. The output is adapted for transmitting an output value OUT representing an accumulated quotient sum. The multi-bit output increments by a predetermined amount in response to each reference clock period. The remainder accumulator comprises programmable inputs for receiving respective REMAINDER and DIVISOR values, a a reference clock input and a multi-bit output representing an accumulated digital remainder sum less than a predefined digital integer. The remainder accumulator further comprises a comparator having a first input for receiving a programmed divisor value, and a second input for receiving the remainder accumulator multi-bit output. The comparator is operative to generate an increment carry signal for application to the quotient accumulator when the remainder multi-bit output reaches the predefined integer value.
Other features and advantages of the present invention will be apparent from the following detailed description when read in conjunction with the accompanying drawings.
The invention will be better understood by reference to the following more detailed description and accompanying drawings in which
The numeric counter oscillator (NCO) described herein provides a way to maximize the accuracy of an oscillator output with respect to a desired frequency ratio between two clock frequencies. This enables a flexible choice of resolution in the NCO output for use with a variable frequency clock, or timestamp as more fully described below.
Referring now to
Further referring to
With continued reference to
With continued reference to
The entire carry-generation process repeats every three (3) cycles (the DIVISOR value) to produce an accurate counter output OUT. As a result, the resolution of the clock is programmable to a very fine resolution, for example, to one hertz. Of course, the QUOTIENT, REMAINDER, and DIVISOR input values are entirely programmable by a user in establishing the desired frequency ratio, More generally, multiplexor 60 provides the accumulated value A as an input to register 54 in any clock cycle in which the value of A is less than the DIVISOR value B. However, in any cycle in which the accumulated value A exceeds the value B. multiplexor 60 provides the value of A minus B as an input to register 54. In this way, the value in register 54 increases either REMAINDER value using modular arithmetic with a modulus of B. The value of REM OUT thus may be described to increase modulo B.
With reference now to
In another application, and referring back to
Those skilled in the art will recognize the many benefits and advantages afforded by the present invention. Of significant importance is the dual accumulator aspect of the NCO, which enables the quotient to be regularly corrected during operation. This allows for a high degree of resolution flexibility for applications such as variable frequency waveform generation and timestamping.
While the invention has been particularly shown and described with reference to the preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.
Number | Name | Date | Kind |
---|---|---|---|
20050135524 | Messier | Jun 2005 | A1 |
Number | Date | Country |
---|---|---|
0 312 370 | Apr 1989 | EP |
0 416 869 | Mar 1991 | EP |
0 459 446 | Dec 1991 | EP |
1 215 558 | Jun 2002 | EP |
Number | Date | Country | |
---|---|---|---|
20050146360 A1 | Jul 2005 | US |