BACKGROUND

[0001]
1. Field of the Invention

[0002]
This invention relates generally to the field of digital to analog conversion. In particular, the invention relates to implementing cyclic return to zero techniques for digital to analog converters.

[0003]
2. Description of Related Art

[0004]
Ideally, a digitaltoanalog converter (DAC) with a continuoustime output (e.g., a zeroorderhold output as opposed to a switchedcapacitor output) converts an input signal, represented as a sequence of digital numbers, into an analog output waveform, represented as a timevarying voltage or current, without introducing any error. However, practical DACs introduce error consisting of random noise, linear distortion, and nonlinear distortion. The term noise is generally used to denote error that is not correlated with the DAC input signal, the term linear distortion is generally used to denote error that is linearly related to the input signal, and the term nonlinear distortion (also called harmonic distortion) is generally used to denote error that is nonlinearly related to the input signal.

[0005]
In high precision DACs with continuoustime outputs, the overall DAC error is often dominated by nonlinear distortion. However, in many applications, such as highfidelity audio systems and transmitters for wireless communications, nonlinear distortion of a given power is more problematic than noise and linear distortion of comparable power. Unfortunately, to avoid introducing nonlinear distortion it is not only necessary for the DAC output to settle to the correct output level by the end of each sample period, but the transient associated with the settling process must not contain nonlinear distortion. In many highperformance DACs with continuoustime outputs, nonlinear transient settling behavior is the dominant source of nonlinear distortion.

[0006]
For example, assume x[n] represents the digital input sequence to a given DAC, and assume y(t) represents the continuoustime analog output waveform generated by the DAC in response to x[n]. Since x[n] is a discretetime sequence, and y(t) is a continuoustime function, a DAC performs interpolation to convert the sequence of discrete numbers into a continuoustime waveform. A common type of interpolation used is zeroorderhold interpolation, which sets y(t)=αx[n]+β during each sample interval, i.e., during nT≦t<(n+1)T for each integer n, where α is a constant scale factor, β is a constant offset, and T is the sample period of the input sequence. In this case, during each sample interval, y(t) is held constant at a level which, neglecting the constant offset, is proportional to the corresponding discrete value of the input sequence. At the end of each sample interval, i.e., at each time (n+1)T, the output waveform abruptly jumps to the level corresponding to the next input sample value, i.e., αx[n+1]+β.

[0007]
Since no physical device can generate a truly discontinuous waveform, zeroorderhold interpolation is an idealization; i.e. practical DACs can only approximate the zeroorderhold behavior. Therefore, a transient error waveform can be defined as the difference between the actual interpolation function implemented by the DAC and ideal zeroorderhold interpolation. In many DACs, it is also possible to define a discrete error sequence that represents errors not associated with the interpolation process such as often arise from component mismatches. Therefore, in general the output of the DAC is given by

y(t)=αx[n]+β+e _{d} [n]+e _{t}(t), nT≦t<(n+1)T, (1)

[0008]
for each value of n, where e_{d}[n] is the discrete error and e_{t}(t) is the transient error. Well known techniques such as dynamic element matching can be used to reduce nonlinear distortion contributed by the discrete error sequence of the DAC if necessary. Therefore, to simplify the presentation the discrete error sequence is ignored or assumed to be zero throughout much of the patent. To further simplify the presentation, the DAC offset, β, is assumed to be zero without loss of generality.

[0009]
[0009]FIG. 1 provides a comparison between representative continuoustime output waveforms from an idealized DAC with ideal zeroorderhold interpolation, and from a typical practical DAC that only approximates zeroorderhold interpolation. More particularly, FIG. 1 shows representative continuoustime DAC output waveforms: the top waveform
102 corresponds to ideal zeroorderhold interpolation, the middle waveform
104 represents the approximate zeroorderhold interpolation typically implemented by practical DACs, and the bottom waveform
106 represents the transient error between the actual and ideal interpolations. The bottom waveform
106 is the transient error associated with the practical DAC; i.e. it is the difference between the top and middle waveforms
102 and
104, respectively. As is illustrated in FIG. 1, and which tends to be true in general, the transient error consists of a train of transient pulses each of which starts at the beginning of a sample period and asymptotically approaches zero. It should be noted that if the discrete error sequence were not zero, the transient pulse originating in the n
^{th }sample period would asymptotically approach e
_{d}[n]. Therefore, the transient error can be written in the form:
$\begin{array}{cc}{e}_{t}\ue8a0\left(t\right)=\sum _{n=\infty}^{\infty}\ue89e{p}_{n}\ue8a0\left(t\mathrm{nT}\right),& \left(2\right)\end{array}$

[0010]
where p_{n}(t) is the transient pulse associated with the n^{th }sample interval. Typically, p_{n}(t) is causal, has a peak at t=0, and has a shape that depends nonlinearly on both the (n−1)^{th }and n^{th }DAC input samples.

[0011]
As discussed previously, it is desirable to avoid having the transient error introduce nonlinear distortion. Therefore, it is undesirable to have a nonlinear relationship between the transient pulses and the DAC input values. In general, it is not possible to eliminate the transient pulses, but it is possible to design a DAC with transient error that consists of uniformly shaped and spaced transient pulses each of which is scaled by the corresponding input sequence sample. To the extent that this is done, nonlinear distortion is eliminated from the transient error. Two prior art methods of achieving this result will now be discussed.

[0012]
Both of the prior art methods involve multiple onebit DACs, i.e., DACs whose inputs are onebit sequences, which are combined to yield a composite multibit DAC. FIG. 2 is a block diagram illustrating an exemplary composite DAC 200 comprising eight onebit DACs 202 _{1}202 _{8 }and summing operation 206 that can be utilized in implementing the two prior art methods. The overall DAC input, x[n], is a sequence of 4bit numbers each of which is restricted to the set {−4, −3, −2, −1, 0, 1, 2, 3, 4}. It is assumed that the four input bits in FIG. 2 have weights −4, 2, 1, and 1, respectively, which can be thought of as a conventional 3bit two's complement number with an extra leastsignificant bit. A digital logic block, such as digital encoder 204, converts each input sample to a unity weighted 8bit number representation in which the value of each bit is taken to be {fraction (1/2)} when the bit is high and −{fraction (1/2)} when the bit is low. The digital encoder 204 selects the 8 bits such that the sum of the resulting bit values is equal to x[n]. For example, if x[n]=2, the digital encoder sets six of the bits labeled x_{i}[n] in FIG. 2 high, and the remaining two bits low. It can be verified that if each onebit DAC performs ideal zeroorderhold interpolation with an output value of Δ/2 when the input bit is high and −Δ/2 when the input bit is low, then the overall DAC is an ideal zeroorderhold DAC with an output that ranges from −4Δ to 4Δ in steps of Δ. Alternatively, if x[n] is restricted to the range {0, 1, . . . , 8}, the digital encoder sets x[n] of its output bits high and the rest of its output bits low, and the two possible output levels of each onebit DAC are 0 and Δ, then the overall DAC has an output that ranges from 0 to 8Δ in steps of Δ.

[0013]
In such composite DACs, e.g. composite DAC 200, the two sources of nonlinear distortion in the transient error are the onebit DACs 202 _{1}202 _{8 }and the analog summing operation 206. Although the summing operation 206 does introduce nonlinear distortion, such distortion can be minimized through the use of onebit DACs with currentmode (i.e., high impedance) outputs such that the outputs can be summed by connecting them all to a low impedance load or a low impedance amplifier input. Therefore, in the following it is assumed that the summing operation does not introduce significant nonlinear distortion.

[0014]
Further, it is assumed that the following two conditions hold for the composite DAC
200: 1) if presented with equivalent input sequences, all of the onebit DACs
202 _{1}
202 _{8 }would introduce identical transient pulses, and 2) the transient pulse introduced by each onebit DAC
202 _{1}
202 _{8 }in a given sample interval does not depend on the onebit DAC's input values during past or future sample intervals. In other words, suppose that the n
^{th }transient pulse introduced by each onebit DAC
202 _{1}
202 _{8 }is p
_{h}(t−nT) if the DAC input bit is high or p
_{l}(t−nT) if the DAC input bit is low, where p
_{h}(t) and p
_{l}(t) are arbitrary but are common to all the onebit DACs. For the composite DAC
200 with an arbitrary number, say N, of onebit DACs, at the n
^{th }sample time x[n] of the onebit DACs have their input bits set high and N−x[n] have their input bits set low. Therefore, it follows from the original transient error equation (2) and the two conditions above that the transient error is given by:
$\begin{array}{cc}{e}_{t}\ue8a0\left(t\right)=\sum _{n=\infty}^{\infty}\ue89eN\ue89e\text{\hspace{1em}}\ue89e{p}_{l}\ue8a0\left(t\mathrm{nT}\right)+x\ue8a0\left[n\right]\ue8a0\left[{p}_{h}\ue8a0\left(t\mathrm{nT}\right){p}_{l}\ue8a0\left(t\mathrm{nT}\right)\right].& \left(3\right)\end{array}$

[0015]
The functions p_{h}(t) and p_{l}(t) do not depend on x[n], so this equation (3) indicates that the transient error is linearly related to x[n]; only linear distortion is introduced. Therefore, the two conditions stated above are sufficient to avoid nonlinear distortion in the transient error.

[0016]
Known circuit layout and dynamic element matching techniques can be used to achieve the first of these conditions to a high degree of accuracy. However, it can be verified that the second condition is violated if onebit DACs that approximate zeroorderhold interpolation are used.

[0017]
The first prior art technique that avoids this problem uses onebit DACs that implement an alternate type of interpolation known as returntozero (RTZ) interpolation. The idea behind RTZ interpolation is to perform zeroorderhold interpolation, or an approximation thereof, for only a portion (typically half) of each sample period, and to zero the output for the remainder of the sample period. In this way, the output of each onebit DAC starts from zero at the beginning of every sample period, thereby eliminating the dependence of the transient pulses on previous onebit DAC input values.

[0018]
[0018]FIG. 3 provides a comparison between idealized and practical output waveforms for a onebit DAC example that illustrates a practical (i.e., physically realizable) approximation to RTZ interpolation. More particularly, FIG. 3 is a signal diagram showing representative continuoustime output waveforms from a onebit digital to analog converter (DAC) with ideal zeroorderhold interpolation (top waveform 300), from a practical onebit DAC utilizing return to zero (RTZ) interpolation (middle waveform 302), and the transient error associated with the practical onebit RTZ DAC (bottom waveform 304). The top plot 300 shows the output of a onebit DAC with ideal zeroorderhold interpolation as a reference, and the middle plot 302 shows the corresponding practical version of RTZ interpolation. As is evident in FIG. 3, the RTZ output 302 approximates zeroorderhold interpolation for the first half of each sample interval and then settles to zero for the remainder of the sample interval. The bottom plot 304 shows the transient error which is the difference between the top and middle plots 300 and 302, respectively. Each transient pulse now consists of two components: the first component peaks at the start of the sample interval and settles to zero, and the second component starts half way through and persists to the end of the sample interval. Nevertheless, as is evident from FIG. 3 and which tends to be true in general, the transient pulse in a given sample interval is not a function of previous or future onebit DAC input samples. Therefore, the second condition above is satisfied by onebit DACs that implement practical RTZ interpolation.

[0019]
In summary, the first prior art technique limits nonlinear distortion in the transient error introduced by composite DACs of the type shown in FIG. 2 through the use of current mode onebit DACs that implement practical RTZ interpolation in conjunction with known circuit layout and dynamic element matching techniques to promote good matching among the onebit DACs. In the following, the first prior art technique is referred to as the basic RTZ technique.

[0020]
Unfortunately, the basic RTZ technique has three drawbacks. The first drawback is that nonlinear distortion is reduced relative to DACs that perform zeroorderhold interpolation at the expense of significantly increased linear distortion. As mentioned above, RTZ interpolation gives rise to a second component in each transient pulse. As illustrated in FIG. 3, this component occupies half of the sample interval and has a peak magnitude equal to that of the onebit DAC output waveform, i.e., Δ/2. Therefore, the power of the resulting transient error in the overall DAC output is comparable to that of the desired signal component. As explained above, the error is linear distortion which is generally preferable to nonlinear distortion. Nevertheless, it is still error and can be problematic in many applications, especially at such a high power level relative to the desired signal component. The second drawback is that only half of each sample period is used by the onebit DACs to generate the signal component of the overall DAC. To avoid introducing nonlinear distortion, each onebit DAC must fully settle to zero in the second half of each sample period. Consequently, the approach requires onebit DAC circuitry with approximately twice the speed of what would be necessary if the whole sample interval could be used for the settling process. The third drawback is that an additional timing signal is required to cause the onebit DACs to begin the returntozero process half way through each sample interval. Most often, this necessitates a clock signal at twice the sample frequency.

[0021]
The second prior art technique avoids the first drawback mentioned above. It is based on the idea of implementing each onebit DAC as a pair of interleaved onebit RTZ subDACs. Hence, it is referred to as the dualRTZ technique. Representative waveforms are shown in FIG. 4 for the same onebit DAC input sequence as in the basic RTZ example shown in FIG. 3.

[0022]
[0022]FIG. 4 is a signal diagram showing representative continuoustime output waveforms from a pair of first and second interleaved RTZ subDACs utilizing a dual RTZ technique (top and middle waveforms, 400 and 402, respectively) and their sum (bottom waveform 404). The top plot 400 represents the output waveform of a first RTZ subDAC, and the middle plot 402 represents the output waveform of a second RTZ subDAC. The bottom plot 404 is the output of the dualRTZ onebit DAC obtained by summing the two outputs from the RTZ subDACs. Each RTZ subDAC in isolation is equivalent to a onebit DAC in the basic RTZ technique described above, so its output contains only linear distortion. Therefore, there only can be linear distortion in the dualRTZ onebit DAC output (e.g., the bottom plot 404), because it is the sum of the two RTZ subDAC outputs. Consequently, the dualRTZ technique offers the same advantage with respect to limiting nonlinear distortion as does the basic RTZ technique. However, the amount of linear distortion introduced by the dualRTZ technique in the overall DAC output is greatly reduced relative to that of the basic RTZ technique, because each RTZ subDAC tends to cancel the large second transient pulse component of the other RTZ subDAC. As a result, the dualRTZ onebit DAC output waveform, e.g., the bottom plot 404, is a much better approximation to ideal zeroorderhold interpolation than the outputs of either of the RTZ subDACs in isolation.

[0023]
Therefore, like the basic RTZ technique, the dualRTZ technique limits nonlinear distortion in the transient error from composite DACs of the type shown in FIG. 2. However, unlike the basic RTZ technique, it does not introduce excessive linear distortion in the transient error, so it avoids the first drawback of the basic RTZ technique described above. Nevertheless, it is subject to the second two basic RTZ technique drawbacks described above: each RTZ subDAC in the dualRTZ technique has the same settling requirements as in the basic RTZ technique and a timing signal is necessary to trigger the on and off portions of each RTZ subDAC.
SUMMARY OF THE INVENTION

[0024]
The invention is briefly summarized by the claims that follow below. This invention relates generally to methods and apparatuses for implementing cyclic return to zero techniques for digital to analog conversion. Embodiments of the invention provide the benefits achieved by the basic RTZ and dualRTZ techniques, discussed previously, with respect to limiting nonlinear distortion in the transient error, but are not subject to the previously discussed drawbacks associated with these techniques. Generally, embodiments of the invention disclose techniques for generating lowdistortion continuoustime output waveforms in digitaltoanalog converters (DACs) wherein the transient errors are not correlated with the DAC input signal, thereby resulting in DACs with significantly reduced nonlinear distortion.

[0025]
In one embodiment, the invention discloses a method for performing cyclic return to zero (CRTZ) digital to analog conversion by generating at least two RTZ signals for performing digital to analog conversion. The method cycles between two RTZ signal generating circuits such that one of the RTZ signal generating circuits is active (i.e., converts a digital input bit into analog form) over at least an entire sample period generating an active signal (i.e., has not returned or is not returning to zero) while the other RTZ signal generating circuit returns to approximately zero or other approximately constant value (i.e., it becomes inactive) for the entire sample period. During the next period, the cycling occurs between the two RTZ signal generating circuits such that the RTZ signal generating circuit that was active during the previous sample period now returns to approximately zero or other approximately constant value and the other RTZ signal generating circuit that returned to approximately zero or other approximately constant value during the previous sample period becomes active. In contrast to the dualRTZ technique, the RTZ waveforms in this method are not simply shifted versions of each other.

[0026]
In other embodiments of the invention, a cyclic return to zero (CRTZ) digital to analog converter (DAC) includes at least two RTZ signal generating circuits, e.g. RTZ subDACs, to perform digital to analog conversion and a cycler, e.g. an RTZ subDAC cycler, to cycle between the two RTZ subDACs. The RTZ subDAC cycler cycles between the two RTZ subDACs such that one of the RTZ subDACs performs digital to analog conversion for an entire sample period while the other RTZ subDAC returns to approximately zero or other approximately constant value for the entire sample period. During the next period, the RTZ subDAC cycler switches between the two RTZ subDACs such that the RTZ subDAC that performed the digital to analog conversion during the previous sample period returns to approximately zero or other approximately constant value and the other RTZ subDAC that returned to zero or other approximately constant value during the previous sample period performs the digital analog conversion. In this fashion, each RTZ subDAC starts from approximately zero or an approximately constant value when converting an input bit to analog form and utilizes an entire sample period (in contrast to the dualRTZ technique in which the RTZ subDACs zero their outputs part way through each sample period).

[0027]
In further embodiments of the invention, at least three RTZ subDACs are utilized in either a random or a multiperiod fashion. For example, a random RTZ subDAC cycler can be used to cycle between three RTZ subDACs in a random fashion. In yet another embodiment, a multiperiod RTZ subDAC cycler can be used to cycle between three RTZ subDACs such that each RTZ subDAC holds its output value for at least two sample periods before returning to approximately zero or other approximately constant value. These and other embodiments will be discussed in further detail later.

[0028]
Other features and advantages of the present invention will be set forth in part in the description which follows and the accompanying drawings, wherein the preferred embodiments of the present invention are described and shown, and in part will become apparent to those skilled in art upon examination of the following detailed description taken in conjunction with the accompanying drawings, or may be learned by the practice of the present invention. The advantages of the present invention may be realized and attained by means of the instrumentalities and combinations particularly pointed out in the appended claims.
BRIEF DESCRIPTION OF THE DRAWINGS

[0029]
The features and advantages of the present invention will become apparent from the following description of the present invention in which:

[0030]
[0030]FIG. 1 is a waveform diagram showing representative continuoustime output waveforms from a digital to analog converter (DAC) with ideal zeroorderhold interpolation (top waveform), from a typical practical DAC (middle waveform), and the transient error associated with the practical DAC (bottom waveform).

[0031]
[0031]FIG. 2 is a block diagram illustrating an exemplary composite DAC comprising eight onebit DACs.

[0032]
[0032]FIG. 3 is a waveform diagram showing representative continuoustime output waveforms from a digital to analog converter (DAC) with ideal zeroorderhold interpolation (top waveform), from a practical DAC utilizing return to zero (RTZ) interpolation (middle waveform), and the transient error associated with the practical RTZ DAC (bottom waveform).

[0033]
[0033]FIG. 4 is a waveform diagram showing representative continuoustime output waveforms from a pair of first and second interleaved RTZ subDACs utilizing a dual RTZ technique (top and middle waveforms, respectively) and their sum (bottom waveform).

[0034]
[0034]FIG. 5 is a block diagram illustrating an exemplary composite DAC in which embodiments of the present invention related to cyclic return to zero (CRTZ) techniques can be practiced.

[0035]
[0035]FIG. 6A is a block diagram illustrating an exemplary architecture for a cyclic return to zero (CRTZ) DAC to implement a basic CRTZ technique according to one embodiment of the invention.

[0036]
[0036]FIG. 6B is a waveform diagram illustrating an exemplary operation of the basic CRTZ technique according to one embodiment of the invention.

[0037]
[0037]FIG. 7 is a schematic circuit diagram illustrating an exemplary RTZ subDAC.

[0038]
[0038]FIG. 8A is a block diagram illustrating an exemplary architecture for a stochastic CRTZ DAC to implement a stochastic CRTZ technique according to one embodiment of the invention.

[0039]
[0039]FIG. 8B is a waveform diagram illustrating an exemplary operation of the stochastic CRTZ technique according to one embodiment of the invention.

[0040]
[0040]FIG. 9 is a block diagram illustrating an exemplary architecture for a multiperiod CRTZ DAC to implement a multiperiod CRTZ technique according to one embodiment of the invention.
DETAILED DESCRIPTION

[0041]
This invention relates generally to methods and apparatuses for implementing cyclic return to zero techniques for digital to analog conversion. Generally, embodiments of the invention disclose techniques for generating lowdistortion continuoustime output waveforms in digitaltoanalog converters (DACs) with significantly reduced nonlinear distortion.

[0042]
In the following description, the various embodiments of the present invention will be described in detail. However, such details are included to facilitate understanding of the invention and to describe exemplary embodiments for implementing the invention. Such details should not be used to limit the invention to the particular embodiments described because other variations and embodiments are possible while staying within the scope of the invention. Furthermore, although numerous details are set forth in order to provide a thorough understanding of the present invention, it will be apparent to one skilled in the art that these specific details are not required in order to practice the present invention. In other instances details such as, wellknown methods, procedures, components, electrical structures and circuits, are not described in detail, or are shown in block diagram form, in order not to obscure the present invention. Furthermore, aspects of the invention will be described in particular embodiments but may be implemented in hardware, software, firmware, middleware, or a combination thereof.

[0043]
[0043]FIG. 5 is a block diagram illustrating an exemplary composite CRTZ DAC 500 in which embodiments of the present invention related to cyclic return to zero (CRTZ) techniques can be practiced. FIG. 5 illustrates an exemplary composite CRTZ DAC 500 comprising eight CRTZ onebit DACs 502 _{1}502 _{8 }and summing operation 506, which can be utilized in implementing the CRTZ techniques. It should be appreciated that this is only an example of an environment in which the embodiments of the invention can be practiced and should not be used to limit the invention. For example, a composite DAC of any number of onebit DACs can be used (e.g., a composite DAC consisting of N onebit DACs). Additionally, it is also possible to practice the invention with composite DACs consisting of multiple onebit DACs with different relative weightings of their output step sizes.

[0044]
In this example, composite CRTZ DAC 500 includes eight onebit CRTZ DACs 502 _{1}502 _{8}, i.e., DACs whose inputs are onebit sequences, which are combined to yield a composite multibit DAC. In the case of an 8bit composite DAC 500, the overall DAC input, x[n], is a sequence of 4bit numbers each of which can represent the decimal number set {−4, −3, −2, −1, 0, 1, 2, 3, 4}. It is assumed that the four input bits in FIG. 5 have weights −4, 2, 1, and 1, respectively, which can be thought of as a conventional 3bit two's complement number with an extra leastsignificant bit. A digital logic block, such as digital encoder 504, converts each input sample to a unity weighted 8bit number representation in which the value of each bit is taken to be {fraction (1/2)} when the bit is high and −{fraction (1/2)} when the bit is low. The digital encoder 504 selects the 8 bits such that the sum of the resulting bit values is equal to x[n]. For example, if x[n]=2, the digital encoder sets six of the bits labeled x_{i}[n] in FIG. 5 high, and the remaining two bits low. It can be verified that if each onebit DAC performs ideal zeroorderhold interpolation with an output value of Δ/2 when the input bit is high and −Δ/2 when the input bit is low, then the overall DAC is an ideal zeroorderhold DAC with an output that ranges from −4Δ to 4Δ in steps of Δ. Alternatively, if x[n] is restricted to the range {0, 1, . . . , 8}, the digital encoder sets x[n] of its output bits high and the rest of its output bits low, and the two possible output levels of each onebit DAC are 0 and Δ, then the overall DAC has an output that ranges from 0 to 8Δ in steps of Δ. Again, it should be appreciated that this is only an example of a composite DAC and that embodiments of the invention can be practiced with many other types of composite DACs.

[0045]
In such composite DACs, e.g. composite CRTZ DAC 500, the two sources of nonlinear distortion in the transient error are the onebit DACs 502 _{1}502 _{8 }and the analog summing operation 506. Although the summing operation 506 does introduce nonlinear distortion, such distortion can be minimized through the use of onebit DACs with currentmode (i.e., high impedance) outputs (to be discussed); such that the outputs can be summed by connecting them all to a low impedance load or a low impedance amplifier input. Therefore, it is assumed that the summing operation does not introduce significant nonlinear distortion. Embodiments of onebit DACs, the CRTZ DAC, stochastic CRTZ DAC, and multiperiod CRTZ DAC, to be discussed, can be implemented with a composite DAC of the type described in FIG. 5.

[0046]
[0046]FIG. 6A is a diagram illustrating an exemplary architecture for a onebit cyclic return to zero (CRTZ) DAC 602 to implement a basic CRTZ technique according to one embodiment of the invention. It should be appreciated that this is only an example of an architecture for a onebit CRTZ DAC to implement the basic CRTZ technique and that many other architectures are possible. In this embodiment, each onebit CRTZ DAC 602 includes at least two RTZ signal generating circuits, e.g. onebit RTZ subDACs 603 and 604, to perform digital to analog conversion and a cycler, e.g. an RTZ subDAC cycler 606, to cycle between the two RTZ subDACs. The RTZ subDAC cycler 606 cycles between the two onebit RTZ subDACs 603 and 604 such that one of the RTZ subDACs performs digital to analog conversion for an entire sample period while the other RTZ sub DAC returns to approximately zero or other approximately constant value for the entire sample period. That is, the other RTZ subDAC is inactivated so that its output can return to approximately zero or other approximately constant value for the sample period or longer. It is to be understood that the value returned to can be nominally zero, approximately zero or can be some other nominally constant value or other approximately constant value to which the RTZ subDACs can return to when inactivated.

[0047]
As shown in FIG. 6A, the RTZ subDAC cycler 606 can include a digital controller such as flipflop circuitry 610 in a toggle configuration to enable or disable one of the RTZ subDACs 603 or 604 via control lines A or B. Other digital circuitry, e.g., D flipflops 612 and 614, is also utilized in the architecture for the onebit CRTZ DAC 602 for providing the onebit data to the RTZ subDACs (i.e. from the Q output of the D flipflop to the d input of the RTZ subDAC). The RTZ subDAC cycler 606 is clocked by f_{clock}. During each sample period (clocked by f_{clock}), the CRTZ subDAC cycler 606 enables one of the RTZ subDACs 603 or 604 via control lines A or B, respectively (e.g. with a logic low input into the enable bar input ({overscore (e)}) of the RTZ subDAC) or disables one of the RTZ subDACs via control lines A or B, respectively (e.g. with a logic high input into the enable bar input ({overscore (e)}) of the RTZ subDAC). If the RTZ subDAC is enabled, the enabled RTZ subDAC converts the input bit received from the respectively connected D flipflop 612 or 614 to analog form using zeroorderhold interpolation (or an approximation thereof) for the entire sample period, while the other RTZ subDAC returns to zero for the entire sample period.

[0048]
During the next period, the RTZ subDAC cycler 606 switches between the two RTZ subDACs 603 and 604 such that the RTZ subDAC that converted the input bit during the previous sample period returns to zero and the other RTZ subDAC that returned to zero during the previous sample period converts the input bit. In this fashion, each RTZ subDAC starts from zero when converting an input bit to analog form and utilizes an entire sample period. The differential analog output (I_{out+}−I_{out−}) of the RTZ subDAC 603 or 604 is an analog current that may, for example, be summed as part of a composite DAC. Moreover, it should be appreciated that the onebit CRTZ DAC 602 can be implemented with any number of RTZ subDACs.

[0049]
[0049]FIG. 6B is a waveform diagram illustrating an exemplary operation of the basic CRTZ technique according to one embodiment of the invention. FIG. 6B illustrates the basic method or operation of the basic CRTZ technique as it relates to the first and second RTZ subDACs previously discussed. However, it should be appreciated that the basic CRTZ technique is, in and of it itself, novel and unique, and can be implemented with various types of architecture.

[0050]
[0050]FIG. 6B shows a set of waveforms all of which are drawn to the same time scale. Waveform 620 represents the clock signal. One period (i.e., T) is one cycle of the clock signal 620. Particularly, the basic CRTZ technique is a method for performing cyclic return to zero (CRTZ) digital to analog conversion of a digital input signal by generating at least two RTZ analog signals shown as waveforms 624 and 626, respectively, that when combined together approximate the ideal analog output signal y_{i}(t) 622. The method cycles between the two RTZ signals 624 and 626 such that one of the RTZ signals is active over an entire sample period to convert a digital input bit into analog form while the other RTZ signal returns to zero for the entire sample period. During the next period, the cycling occurs between the two RTZ signals 624 and 626 such that the RTZ signal that was active during the previous sample period now returns to zero and the other RTZ signal that returned to zero during the previous sample period now becomes active. When the two analog RTZ signals 624 and 626 are summed, the combined waveform 630 results. The combined basic CRTZ output signal 630 is a lowdistortion continuoustime analog output waveform approximating the ideal analog output signal y_{i}(t) 622. Linear distortion in the middle of the periods is eliminated from the waveform 630 by the invention in comparison with the glitches 406 in waveform 404 of FIG. 4. However, the linear distortion at the beginning of a period may remain as represented by the glitch 658 in waveform 630.

[0051]
As an example of the method implemented with the particular architecture 602 of FIG. 6A for a onebit CRTZ DAC, each of the first and second RTZ subDACs 603 and 604 generate an analog output signal, the first and second RTZ analog signals 624 and 626, respectively, shown in FIG. 6B. The RTZ subDAC cycler 606 cycles between the first and second RTZ subDACs 603 and 604 such that one of the RTZ subDACs performs digital to analog conversion for an entire sample period while the other RTZ subDAC returns to zero for the entire sample period to yield the two RTZ analog signals shown as waveforms 624 and 626, respectively. The CNTL A and CNTL B waveforms 632 and 634 denote the RTZ subDAC cycler 606 enabling one of the RTZ subDACs 603 or 604 via control lines A and B, wherein a logic low input enables a respective RTZ subDAC and a logic high input disables a respective RTZ subDAC. If the RTZ subDAC is enabled, the enabled RTZ subDAC converts the input bit to analog form for the entire sample period yielding a corresponding RTZ analog signal, while the other RTZ subDAC returns to zero for the entire sample period. As previously discussed when the two analog RTZ signals 624 and 626 are summed, the combined basic CRTZ output signal 630 is produced that approximates the ideal analog output signal y_{i}(t) 622.

[0052]
[0052]FIG. 7 is a schematic circuit diagram illustrating an exemplary RTZ subDAC 700. It should be appreciated that this is only one example of an RTZ subDAC that can be used with embodiments of the invention and that many other implementation are possible. The RTZ subDAC 700 has four transistors M1, M2, M3, and M4 (e.g. NFET transistors), an inverter 706 and a current source 702 coupled together as shown in FIG. 7. Not shown in FIG. 7 is bias circuitry to apply a proper bias voltage to the gate of transistor M1. The RTZ subDAC 700 serves as a return to zero (RTZ) current signal generator. Transistors M2 and M3 operate as a current steering pair to steer tail current from current source 702 to output nodes (I_{out+} and I_{out−}) depending on the input data from the d input 704. Transistor M2 is gated by the d input 704. Transistor M3 is gated by the inverse of the d input 704 provided by inverter 706. On the other hand, during the time period when the output current is meant to be shut off (i.e., the zero portion of the RTZ signal), transistor M4 is turned on by receiving a logic high input which increases the voltage at the source of M1 effectively turning it off. As a result, current of the current source is no longer supplied to either of the output nodes (I_{out+} or I_{out−}) through transistors M2 or M3. Transistor M4 is gated by enable bar ({overscore (e)}) 708 (e.g. from the RTZ cycler). In this way, the current source 702 is always active avoiding problems that could result if it were switched on and off.

[0053]
[0053]FIG. 8A is a diagram illustrating an exemplary architecture for a stochastic CRTZ DAC 802 to implement a stochastic CRTZ technique according to one embodiment of the invention. It should be appreciated that this is only an example of an architecture for a stochastic CRTZ DAC to implement the stochastic CRTZ technique and that many other architectures are possible. In this embodiment, each onebit stochastic CRTZ DAC 802 has at least three onebit RTZ subDACs 803, 804, and 806 that are utilized in a random or pseudorandom fashion (throughout this document, the terms “random” and “pseudorandom” will be used interchangeably). For example, a random RTZ subDAC cycler 810 can be used to cycle between the three RTZ subDACs 803, 804, and 806 in a random fashion. Particularly, the random RTZ subDAC cycler 810 during each sample period selects between the three RTZ subDACs 803, 804, or 806 such that the RTZ subDAC that was used for digital to analog conversion in the previous sample period returns to zero and one of the other two RTZ subDACs is selected randomly to perform digital to analog conversion while the other RTZ subDAC remains at zero. The stochastic RTZ subDAC cycler 810 is clocked by f_{clock}.

[0054]
As shown in FIG. 8A, in one embodiment, the stochastic RTZ subDAC cycler 810 can include a pseudorandom bit generator 812, a threebit register 814, and three inverters 816, 818, and 820. The pseudorandom bit generator 812 randomly chooses among the following three bit codes: (1,1,0), (1,0,1), and (0,1,1) and never chooses the same code twice in a row. The threebit register 814 randomly enables one of three RTZ subDACs 803, 804, or 806, while disabling the other two RTZ subDACs, based upon the three bit code via control lines A, B, or C. Other digital circuitry, the inverters 816, 818, and 820 and D flipflops 822, 824, and 826, is also utilized in the architecture for the onebit stochastic CRTZ DAC 802 to provide onebit of input digital data to the RTZ subDACs (i.e. from the Q output of the respective D flipflop to the d input of the respective RTZ subDAC).

[0055]
As will be discussed, the D flipflops 822, 824, and 826 are clocked by trigger bits (each trigger bit being the inverse of the corresponding bit of the D input to the register 814 (inverted by inverters 816, 818, and 820)), wherein each trigger bit is applied to the respective D flipflop by trigger line A, B, or C, respectively, to clock the D flipflop such that it selectively provides the onebit data to an RTZ subDAC which is enabled. It should be noted that the output from a respective positiveedge triggered D flipflop can change when a trigger bit switches from a logic low state to a logic high state thereby clocking the respective D flipflop.

[0056]
During each sample period (clocked by f_{clock}), the stochastic RTZ subDAC cycler 810 enables one of the onebit RTZ subDACs 803, 804, or 806 via control lines A, B, or C, respectively (e.g. with a logic low input into the enable bar input ({overscore (e)}) of the RTZ subDAC) and disables the other two RTZ subDACs via control lines A, B, or C, respectively (e.g. with a logic high input into the enable bar input ({overscore (e)}) of the RTZ subDAC). Each of the onebit RTZ subDACs either returns to zero or remains at zero for the entire sample period except for the enabled RTZ subDAC which converts the input bit received from the respectively connected D flipflop 822, 824, or 826, to analog form using zeroorderhold interpolation (or an approximation thereof) during the sample period.

[0057]
Particularly, the randomly selected codes (wherein the same code is never chosen twice in a row) of the stochastic RTZ subDAC cycler 810 ensure that during the n^{th }sample period exactly one of the onebit RTZ subDACs 803, 804, or 806 converts the input bit to analog form while the RTZ subDAC that converted the input bit during the previous sample period returns to zero and the other RTZ subDAC remains at zero during the n^{th }sample period. During the next (n+1)^{th }sample period, the stochastic RTZ subDAC cycler 810 (again based upon a randomly selected code) ensures that the RTZ subDAC that was used to convert the input bit to analog form during the previous sample period returns to zero, and exactly one of the other two RTZ subDACs is selected randomly to convert the input bit to analog form while the other RTZ subDAC remains at zero. In this fashion, each RTZ subDAC starts from zero when converting an input bit to analog form and utilizes an entire sample period. The differential analog output (I_{out+}−I_{out−}) of each RTZ subDAC 803, 804 or 806 is an analog current that may, for example, be summed as part of a composite DAC. Furthermore, the stochastic CRTZ technique advantageously reduces nonlinear distortion in the transient error even in the presence of mismatches among the onebit RTZ subDACs in the onebit stochastic CRTZ DAC 802. Moreover, it should be appreciated that the onebit stochastic CRTZ DAC 802 can be implemented with any number of RTZ subDACs.

[0058]
[0058]FIG. 8B is a waveform diagram illustrating an exemplary operation of the stochastic CRTZ technique according to one embodiment of the invention. FIG. 8B illustrates the basic method or operation of the stochastic CRTZ technique as it relates to the onebit stochastic CRTZ DAC 802 previously discussed, however, it should be appreciated that the stochastic CRTZ technique is, in and of it itself, novel and unique, and can be implemented with various architectures.

[0059]
[0059]FIG. 8B shows a set of waveforms all of which are drawn to the same time scale. Waveform 830 represents the clock signal. One period (i.e., T) is one cycle of the clock signal 830. The stochastic CRTZ technique provides a method for performing stochastic cyclic return to zero (CRTZ) digital to analog conversion of a digital input signal by generating at least three RTZ analog signals shown as waveforms 834, 836, and 838, respectively, in a random fashion and then combining them together to approximate the ideal analog output y_{i}(t) 832. Linear distortion in the middle of the periods is eliminated from the waveform 870 by the invention in comparison with the glitches 406 in waveform 404 of FIG. 4. However, the linear distortion at the beginning of a period may remain as represented by the glitch 888 in waveform 870.

[0060]
As an example of the stochastic CRTZ technique implemented with the particular architecture 802 of FIG. 8A for a stochastic CRTZ DAC, each of the first, second, and third RTZ subDACs 803, 804, and 806 generate an analog output signal, the first, second, and third RTZ analog signals 834, 836, and 838, respectively, shown in FIG. 8B. As previously discussed, during each sample period (clocked by f_{clock}), the stochastic RTZ subDAC cycler 810 enables one of the RTZ subDACs 803, 804, or 806 via control lines A, B, or C, respectively (e.g. with a logic low input into the enable bar input ({overscore (e)}) of the RTZ subDAC) and disables the other two RTZ subDACs via control lines A, B, or C (e.g. with a logic high input into the enable bar input ({overscore (e)}) of the RTZ subDAC). These signals are shown as the CNTL A, CNTL B, and CNTL C waveforms 840, 842, and 844, respectively. Moreover, when the onebit RTZ subDAC is enabled, the enabled RTZ subDAC converts the input bit received from the respectively connected D flipflop 822, 824, or 826, which is triggered by a respective trigger line A, B, or C. As will be discussed, the respective D flipflop is clocked by trigger bits applied along a respective trigger line, when a trigger bit switches from a logic low state to a logic high state.

[0061]
For example, assume that the pseudorandom bit generator 812 of the random RTZ subDAC cycler 810 randomly chooses the following three bit codes: (1,0,1); (0,1,1); (1,1,0); (0,1,1); and (1,0,1). These randomly selected codes (subject to the constraint that no code is selected twice in a row) will now be discussed with reference to FIGS. 8A and 8B to more clearly describe the stochastic CRTZ technique. Starting with the random bits (1,0,1) as the Qoutputs of the three bit register 814 during period (0, T], these bits correspond to a logic low signal being sent along CNTL B (waveform 842) enabling the second RTZ subDAC 804 to convert the input bit received from D flipflop 824 to generate RTZ waveform portion 852. At this point random bits (0,1,1) are at the input to register 814 which correspond to trigger bits (1,0,0) for trigger lines A, B, and C, respectively. Next, during period (T, 2T], with random bits (0,1,1) as the Qoutputs of register 814, these bits correspond to a logic low signal being sent along CNTL A (waveform 840) enabling the first RTZ subDAC 803 to convert the input bit received from D flipflop 822 to generate RTZ waveform portion 854. At this point, random bits (1,1,0) are at the input to register 814 which correspond to trigger bits (0,0,1) for trigger lines A, B, and C, respectively, such that D flipflop 826 is clocked (via trigger bit transition (1,0,0) to (0,0,1)) to provide the onebit data to the third RTZ subDAC 806 which is enabled.

[0062]
Continuing with the same example during period (2T, 3T], with random bits (1,1,0) as the Qoutput of the three bit register 814, these bits correspond to a logic low signal being sent along CNTL C (waveform 844) enabling the third RTZ subDAC 806 to convert the input bit received from D flipflop 826 to generate RTZ waveform portion 856. At this point, random bits (0,1,1) are input to register 814, which correspond to trigger bits (1,0,0) for trigger lines A, B, and C, respectively, such that D flipflop 822 is clocked (via trigger bit transition (0,0,1) to (1,0,0)) to provide the onebit data to the RTZ subDAC 803 which is enabled. Next, during period (3T, 4T], with random bits (0,1,1) as the Qoutput of the three bit register 814, these bits correspond to a logic low signal being sent along CNTL A (waveform 840) enabling first RTZ subDAC 803 to convert the input bit received from D flipflop 822 to generate RTZ waveform portion 858. At this point, random bits (1,0,1) input to register 814 which correspond to trigger bits (0,1,0) for trigger lines A, B, and C, respectively, such that D flipflop 824 is clocked (via trigger bit transition (1,0,0) to (0,1,0)) to provide the onebit data to the RTZ subDAC 804 which is enabled. During period (4T, 5T], with random bits (1,0,1) as the Qoutput of the three bit register 814, these bits correspond to a logic low signal being sent along CNTL B (waveform 842) enabling the second RTZ subDAC 804 to convert the input bit received from D flipflop 824 to generate RTZ waveform portion 860. Next, random bits (0,1,1) are input to register 814 which correspond to trigger bits (1,0,0) for trigger lines A, B, and C, respectively, such that D flipflop 822 is clocked (via trigger bit transition from (0,1,0) to (1,0,0)) to provide the onebit data to the first RTZ subDAC 803 which is enabled next.

[0063]
When the three analog RTZ signals 834, 836, 838 are combined, the waveform 870 results. The combined basic CRTZ output signal 870 is a lowdistortion continuoustime analog output waveform approximating the ideal analog output signal y_{i}(t) 832. Furthermore, the stochastic CRTZ technique advantageously reduces nonlinear distortion in the transient error even in the presence of mismatches among the onebit RTZ subDACs.

[0064]
[0064]FIG. 9 is a diagram illustrating an exemplary architecture for a onebit multiperiod CRTZ DAC 902 to implement a multiperiod CRTZ technique according to one embodiment of the invention. It should be appreciated that this is only an example of an architecture for a onebit multiperiod CRTZ DAC to implement the multiperiod CRTZ technique and that many other architectures are possible. In this embodiment, each onebit multiperiod CRTZ DAC 902 has at least three onebit RTZ subDACs 903, 904, and 906 that are utilized in a multiperiod fashion. However, it should be appreciated that any number of RTZ subDACs could be used. The multiperiod CRTZ technique allows each RTZ subDAC 903, 904, and 906 to hold its output value for two or more sample periods before returning to zero. For example, a multiperiod RTZ subDAC cycler 910 can be used to cycle between at least three RTZ subDACs 903, 904, and 906 such that the RTZ subDAC that was used to perform digital to analog conversion of the input bit from the previous sample period holds its previous value and one of the other two RTZ subDACs performs digital to analog conversion of the input bit from the current sample period while the other one of the two RTZ subDACs returns to zero.

[0065]
As shown in FIG. 9, in one embodiment, the multiperiod RTZ subDAC cycler 910 can include at least three flipflops 912, 914, and 916 connected together in series with the output of the third flipflop 916 connected back to the input of first flipflop 912. Thus, the multiperiod RTZ subDAC cycler 910 can be similar in form to an endaroundcarry shift register or ring counter. Also, it should be appreciated that any number of flipflops can be used. The three flipflops 912, 914, and 916 are clocked by f_{clock}. The output of each of the three flipflops 912, 914, and 916 is connected to the respective enable bar input of one of the RTZ subDACs via control lines A, B, or C. During each sample period, these control lines enable two of the RTZ subDACs (via logic low inputs (0)), and disable one of the RTZ subDACs (via a logic high input (1)). Other digital circuitry, e.g., D flipflops 918, 920, and 922, is also utilized in the architecture for the onebit multiperiod CRTZ DAC 902 for providing the onebit data to the RTZ subDACs (i.e. from the Q output of the D flipflop to the d input of the RTZ subDAC). The multiperiod RTZ subDAC cycler 910 is clocked by f_{clock}.

[0066]
During each sample period (clocked by f_{clock}), the multiperiod RTZ subDAC cycler 910 enables two of the RTZ subDACs 903, 904, or 906 via two of the control lines A, B, or C, respectively (e.g., each with a logic low input (0) into the enable bar input ({overscore (e)}) of the RTZ subDAC) and disables the other RTZ subDAC via one of the control lines A, B, or C, respectively (e.g., with a logic high input (1) into the enable bar input ({overscore (e)}) of the RTZ subDAC). When the two RTZ subDACs are enabled, one of the enabled RTZ subDACs initiates conversion of the input bit received from the respectively connected D flipflop (the respective D flipflop having been clocked previously by its clock input switching from a logic low to a logic high), to analog form using zeroorderhold interpolation (or an approximation thereof), while the other enabled RTZ subDAC continues to convert the input bit received from the respectively connected D flipflop. The disabled RTZ subDAC returns to zero for the entire period.

[0067]
Particularly, the multiperiod RTZ subDAC cycler 910 ensures that during the n^{th }sample period one of the RTZ subDACs 903, 904, or 906 converts the input bit to analog form while the RTZ subDAC that converted the input bit during the previous (n−1)^{th }sample period continues to convert the input bit from the (n−1)^{th }sample period and the third RTZ subDAC returns to zero. The differential analog output (I_{out+}−I_{out−}) which represents the combined output of the RTZ subDACs 903, 904 and 906 is an analog current that may, for example, be summed as part of a composite DAC. Holding the RTZ subDAC output values for more than one period produces a composite DAC output waveform that is equivalent to that from a composite DAC implemented with the basic CRTZ technique, previously described, followed by a particular linear lowpass filter. The frequency rolloff associated with the filtering operation can be beneficial in many applications. Alternatively a digital preemphasis filter may be inserted prior to a composite DAC 500 of the type shown in FIG. 5 except with each 1bit CRTZ DAC replaced by a multiperiod CRTZ DAC so as to compensate for the above mentioned rolloff. Additionally, optional requantization may be performed following the preemphasis filter so as to keep each input sample to the composite DAC within a desired numerical range.

[0068]
As mentioned previously, and indicated by the ellipses shown in FIG. 9, it should be appreciated that the multiperiod CRTZ DAC 902 can be implemented with any number of RTZ subDACs.

[0069]
Combinations of the CRTZ techniques summarized above are readily apparent to those skilled in the art. For example, the multiperiod CRTZ technique can be combined with the stochastic CRTZ technique. Similarly, the basic CRTZ technique can be varied by adding extra onebit RTZ subDACs to each onebit DAC so as to give each subDAC multiple sample periods in which to return to zero thereby reducing the speed at which the settling process must occur. Nevertheless, each of the CRTZ techniques outlined above and their variants are based on the idea of implementing a composite DAC of the type shown in FIG. 5 (without limitation to the number of onebit DACs or their relative weightings) wherein each onebit DAC consists of multiple onebit RTZ subDACs and each input bit to the onebit DAC is converted to analog form by one of the RTZ subDACs such that each subDAC always returns to zero for at least one sample period after converting an input bit.

[0070]
While this invention has been described with reference to illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications of the illustrative embodiments, as well as other embodiments of the invention, which are apparent to persons skilled in the art to which the invention pertains are deemed to lie within the spirit and scope of the invention.