Digital-to-analog converter (DAC) and method that produce an approximately piecewise linear analog waveform

Abstract: A DAC (84) converts a sequence of digital codewords (12) into an approximately piecewise linear analog waveform (50, 106) that follows rising and falling edges (76, 78; 94, 96) between plateau levels (82; 98). The DAC (84) processes, in parallel, each bit of the codewords (12) to produce component waveforms (88) that are weighted according to their bits significance and summed together to produce the piecewise linear analog waveform (50, 106). Waveform shaping circuits (100) control the rise and fall times of each component waveform (88) so that the analog waveform's rising and falling edges settle to within a desired error bound (80) of a linear output ramp (56, 58) whose slope is a function of the difference between successive codewords (12) and the rise or fall times. The rise and fall times are preferably approximately the same. Limiting switches (102) control the plateau levels of the component waveforms (88) so that the analog waveform's plateaus settle to within the desired error bound (80) of the ideal values represented by the codewords (12). The linear region of the limiting switches (102) are expanded to maintain the linearity of the rising and falling edges established by the waveform shaping circuits (100).

Description: The present invention generally relates to digital-to-analog converters (DACs), and more specifically to a DAC that generates an approximately piecewise linear analog waveform with reduced spectral distortion and increased signal-to-quantization-noise ratio (SQNR). DACs are used to convert a sequence of digital codewords, where each codeword represents a quantized sample from an underlying analog waveform, into an analog voltage or current signal. In digital circuits each bit of the codeword is represented by a digital signal. In theory, these signals could be binary weighted, as a function of the bit's position, and summed together to produce the analog signal. However, the digital signals are only controlled with sufficient accuracy to switch the digital circuitry, and thus are not precise enough to accurately construct the analog signal. Instead, the digital signals are used to control electrical switches that switch between precision limited low and high signal levels. These signals are binary weighted and summed together to give the analog signal. As the speed of digital circuitry increases, the slew rate (switching speed) and accuracy of the switches become increasingly important factors in minimizing distortion of the analog signal. FIG. 1 is a schematic diagram of a conventional DAC 10 that converts a sequence of n-bit binary codewords 12 into an analog voltage signal V 0 . A clock 14 applies a clock signal 16 to a register 18 so that each codeword is read out in parallel. Register 18 produces n digital signals 20, one for each bit of codeword 12, that are applied to respective digitally controlled electrical switches S N-I , S N-2 , . ., S 0 and held for a complete clock cycle. The codewords' most significant bits (MSBs) are applied to switch S N-1 and their least significant bits (LSBs) are applied to switch S 0 . A reference voltage line -V R and a ground line GND are selectively applied through digitally controlled electrical switches S N-1 , S N-2 ,...,S 0 to respective binary weighted resistors R N-1 , R N-2 ,..., R 0 . The resistors are connected in parallel to the inverting terminal 22 of an inverting operational amplifier (opamp) A1. The opamp's non-inverting terminal 24 is connected to ground, and a resistor R out is connected between inverting terminal 22 and opamp output 26. The negative feedback of opamp Al holds the voltage at inverting terminal 22 at approximately ground potential. When the MSB of codeword 12 is high, switch S N-1 connects the reference voltage line -V R to resistor R N-1 , which causes a current I N-1 to flow through it. Because the resistor values are binary weighted, i.e. R N-1 = R, R N-2 = 2R,... and R 0 = 2 N-1 R, the currents are related as I N-1 = 2I N-2 =... =2 N-1 I 0 so that they reflect the significance of their associated bits. When the MSB is low, switch S N-1 connects the ground line to resistor R N-1 so that the voltage drop across resistor R N-1 is ideally zero, and hence the current I N-1 is zero. The currents I N-1 ,...,I 0 are summed at inverting terminal 22 to produce a current I sum that is proportional to codeword 12. I sum flows through R out and generates voltage V 0 at output 26. Voltage signal V 0 is given by: V 0 = (a N-1 V R R +a N-2 V R 2R +...+a 1 V R 2 N-2 R +a 0 V R 2 N-1 R )R out where a N-1 ,...,a 0 are the binary coefficients for the MSB to the LSB and R is the resistance of R N-1 . Factoring equation 1 gives: V 0 = (a N-1 + 1 2 a N-2 +...+ 1 2 N-2 a 1 + 1 2 N-1 a 0 ) V R R out R which shows that V 0 is proportional to the digital codeword 12. As shown in FIG. 2, the ideal voltage signal V 0 is a zero-order-hold (ZOH) or stair-stepped waveform 28 with infinite slew rate (a discontinuity at the sampling instances) that represents the quantized samples 29 of an underlying analog waveform 30. The DAC's output voltage signal V 0 is filtered to produce a reconstructed analog waveform 32 that is a time-shifted approximation of the underlying waveform 30. For DAC 10 to produce an ideal ZOH waveform 28, the switches S N-1 ,...,S 0 have to switch and settle between the desired plateau levels instantaneously. However, in practice switches can not switch instantly, and will overshoot and ring before settling to the plateau levels. Under conventional theory, the accuracy of DAC 10 depends upon how close the switches' actual transfer functions approximate ideal ZOH waveform 28. As shown in FIG. 3, each switch S N-1 ,..., and S 0 produces an output waveform 34 that follows a rising edge 36 at a finite slew rate, i.e. a non-zero rise time T R1 , overshoots the desired plateau level 38, and rings for a portion of the clock period T before settling to plateau level 38. The rise time T R1 is defined as the time it takes for waveform 34 to rise from 10% to 90% of the difference between the high and low plateau levels. The slew rate is the ten-to-ninety percent change in the amplitude divided by rise time T R1 . Settling time T S1 is the time it takes for waveform 34 to rise from the 10% level and settle to within a known error bound 40, suitably one-half of an LSB, from desired plateau level 38. In practice, each switch is designed to approximate an ideal ZOH waveform 42 by minimizing the settling time T s1 . A well known approach for reducing settling time T S1 is to reduce the switch's rise time T R1 . The switch's ringing is dampened by reducing its parasitic capacitance and inductance. However, manufacturing a switch with these characteristics is difficult and expensive. Furthermore, even though the switch's waveform 34 approximates the ZOH waveform 42 it would be preferable to reduce its spectral distortion even further. Kamoto et al. "An 8-bit 2-ns Monolithic DAC," IEEE Journal of Solid-State Circuits, Vol. 23, No. 1, Feb. 1988, pp. 142-146 disclose a DAC that reduces the settling time T S2 of its output waveform 44 (shown in FIG. 3) by controlling the switches' rise and fall times. For each codeword bit, a differential digital signal is applied through a control driver to a switch that is driven between precision limited low and high values. The control driver increases the digital signal's rise time, which has the effect of increasing the switch's rise time T R2 . This suppresses the ringing and reduces the settling time T S2 . The control driver is adjusted externally to select the optimum rise time that minimizes settling time T S2 . Kamoto shows that when rise time T R2 is too short, ringing is severe and settling time T S2 is increased. However, if rise time T R2 is too long settling time T S2 will also be increased, and hence degrade waveform 44. At the optimum rise time, the countervailing interests of reducing the rise time and suppressing the ringing are balanced and thus provide the minimum settling time. Kamoto discloses optimum rise and fall times of approximately fifteen percent of the settling time. Because Kamoto is trying to approximate ZOH waveform 42 the rise time, and hence slew rate, must remain relatively fast to construct the rising edge of the ZOH waveform. At these relatively large slew rates, high frequency parasitic effects cause the waveform's rising edge 46 to be non-linear. Furthermore, waveform 44 still overshoots the desired plateau value 38 and rings for a period of time. The non-linearity of rising edge 46 and the ringing in waveform 44 cause spectral distortion that would preferably be reduced. Further, a charge-pump switch filter is known from US-A-4,430,641. The filter includes a conventional digital-to-analog converter (DAC) and a charge pump for producing an analog representation of an input waveform defined by an input digital bit stream, the analog representation being relatively free of spurious aberrations usally being present in the output of a conventional DAC. The charge pump and associated integrator are used to produce a first approximation of the input waveform and the DAC and an associated detuned slew-rate filter are used to maintain the first approximation in long-term conformance with a more accurate second approximation. Spurious aberrations in the second approximation are integrated over several steps of the intput bit stream, thereby minimizing their adverse impact on the relatively true first approximation. Finally, US-A-4,862,170 discloses a digital-analog converter which is especially suitable for use in converting a digital audio signal into an analog audio signal including a unique pulse response signal generator for successively generating unit pulse response signals at a predetermined time interval, a digital data generator for generating digital data at the predetermined time interval, a multiplier for multiplying a unit pulse response signal generated at a certain time by a predetermined item of the digital data, and a mixer for producing an analog signal output by combining the unit pulse response signals that have been multiplied by the digital data. It is the object of the invention to provide a DAC and an associated conversion method with reduced spectral distortion and increased SQNR. This is accomplished by a digital-to-analog converter, characterized by: a plurality of waveform shaping circuits that produce drive signals that switch during rise and fall times along rising and falling edges, respectively, between low and high plateaus in response to a sequence of n-bit codewords in which each bit controls a digital signal that is applied to one of the waveform shaping circuits for a known clock period; a plurality of limiting switches having transfer functions that limit the drive signals' low and high plateau values to low and high limiting values, respectively, while approximately maintaining the shape of the rising and falling edges; a weighting circuit that weights the drive signals in accordance with their respective bits' positions in the codewords to produce weighted drive signals; and a summation circuit that sums the weighted drive signals to construct an approximately piecewise linear analog waveform having output plateau values and rising and falling output edges, said waveform shaping circuits setting said rise and fall times so that the rising and falling output edges settle in rise and fall settling times, respectively, to within a first error bound of a linear output ramp whose slope is a function of the difference between successive codewords, and said limiting switches setting the low and high limiting values so that the output plateau values settle in a settling time to within a second error bound of ideal values represented by the codewords. This is further accomplished by a method for constructing an approximately piecewise linear analog waveform from a sequence of digital codewords in which each bit in the codeword controls a digital having a known clock period, comprising: producing a plurality of drive signals (92, 131) that switch during rise and fall times along rising and falling edges, respectively, between low and high plateaus in response to respective digital signals; adjusting the drive signals' low and high plateaus to low and high limiting values, respectively, as a function of a limiting signal while approximately maintaining the shape of the rising and falling edges; weighting the drive signals in accordance with their respective bits positions in the codewords; summing the weighted drive signals to construct the approximately piecewise linear analog waveform having output plateau values and rising and falling output edges; trimming said rise and fall times so that the rising and falling output edges settle in rise and fall settling times, respectively, to within a first error bound of a linear output ramp whose slope is a function of the difference between successive codewords; and trimming said limiting signal so that the output plateau values settle in a settling time to within a second error bound of ideal values represented by the codewords. In general, the present invention provides a DAC and an associated conversion method with reduced spectral distortion and increased SQNR. This is accomplished with a DAC that converts a sequence of digital codewords into an approximately piecewise linear analog waveform. The waveform follows rising and falling edges between plateau levels that approximate the ideal values of the digital codewords. The DAC processes, in parallel, each bit of the codewords to produce component waveforms that are weighted according to their bits' significance and summed together to produce the piecewise linear analog waveform. Waveform shaping circuits control the rise and fall times of each component waveform so that the analog waveform's rising and falling edges settle to within a desired error bound of a linear output ramp whose slope is a function of the difference between successive codewords and the rise or fall times. The rise and fall times are preferably approximately the same. Limiting switches control the plateau levels of the component waveforms so that the analog waveform settles to within the desired error bound of the ideal values represented by the codewords. The linear operating region of the limiting switches is expanded to maintain the linearity of the rising and falling edges established by the waveform shaping circuits. For a better understanding of the invention, and to show how the same may be carried into effect, reference will now be made, by way of example, to the accompanying drawings. FIG. 1, described above, is a schematic diagram of a known DAC; FIG. 2, described above, is a plot of an analog waveform and the ideal stair-stepped output of the DAC shown in FIG. 1; FIG. 3, described above, is a plot of the rising edge and plateau for a ZOH waveform for two known DACs; FIG. 4 is a plot of an approximately piecewise linear analog waveform in accordance with the present invention; FIG. 5 is a plot of the frequency response and spectral envelopes for the ZOH and first order hold (FOH) waveforms; FIG. 6 is a plot of the DAC's analog output voltage signal; FIG. 7 is a block diagram of a DAC in accordance with the present invention; FIG. 8 is a schematic diagram of the waveform shaping circuit shown in FIG. 7; FIG. 9 is a schematic diagram of the limiting switch shown in FIG. 7; FIG. 10 is a plot of the output voltage versus the input voltage for the limiting switch shown in FIG. 9; FIG. 11 is a schematic diagram of a preferred embodiment of the weighting and current summing circuit shown in FIG. 7; and FIG. 12 is a block diagram of a preferred embodiment of the DAC shown in FIG. 7. The applicant has found that the frequency response and SQNR of a DAC can be improved by designing it to produce an analog voltage signal that approximates a piecewise linear analog waveform 50, as shown in FIG. 4, instead of a ZOH waveform 52. Alternatively, the DAC could output an analog current signal. Piecewise linear waveform 50 is composed of linear ramps 56 that connect plateaus 58, which correspond to the values of successive quantized samples 60 from an underlying analog waveform 62. The preferred waveform 50 has equal rise and fall times, designated T slew . Thus, the slope (slew rate) of each linear ramp is the ratio of the difference between successive plateaus 58 and slew time T slew . As shown, T slew is 50% of the clock period T. As T slew goes to zero percent, the piecewise linear waveform converges to ZOH waveform 52. Conversely, as T slew goes to 100%, waveform 50 converges to a first-order-hold (FOH) waveform 64. FIG. 5 plots a DAC's frequency response 66 where the underlying waveform 62 (in FIG. 4) is a sinewave of frequency f 0 . The envelope 68 of a DAC's frequency response 66 varies from to sin(πF r ) πF r for ZOH waveform 52 to ( sin(πF r ) πF r ) 2 for FOH waveform 64, where F r is a ratio of output frequency to clock frequency. Thus, in theory the piecewise linear waveform 50 is suboptimal when compared to ZOH waveform 52 because its frequency response rolls off faster, which means it will transfer less power to the output at any given frequency than the ZOH waveform. Frequency response 66 includes a desired component 70 at the sinewave frequency and spurs 72 that represent the distortion in the analog voltage signal produced by the DAC. Spurs 72 will always exist due to quantization noise incurred when sampling analog waveform 62. However, if the DAC's analog output voltage signal exactly matches the ZOH or piecewise linear waveforms, spurs 72 will be approximately 6 dB per bit less than component 70. Following this theory, prior DACs generate voltage signals that try to approximate ZOH waveform 52 as closely as possible. However, in practice the applicant has found that by sacrificing some power efficiency a DAC can be designed and controlled to produce an analog voltage signal that approximates the piecewise linear waveform 50 better than prior DACs can approximate ZOH waveform 52. This reduces the magnitude of spurs 72 and hence improves the DAC's spectral distortion characteristics and SQNR. As shown in FIG. 6, a DAC embodying the present invention generates an analog output voltage signal 74 that closely follows the approximately piecewise linear waveform 50. Voltage signal 74 has rising and falling edges 76 and 78 that settle to within a desired error bound 80 (suitably one-half an LSB) of linear ramps 56, and plateaus 82 that settle to within the desired error bound of plateaus 58. The rise and fall settling times T rs and T fs are measured from the beginning of each clock cycle and the plateau settling time T ps is measured from the end of slew time T slew . The settling time T s is measured from the beginning of each clock cycle to the point where plateau 82 settles to within the error bound. Whereas prior DACs only settle once to the desired plateau level, voltage signal 74 settles twice during each clock period to piecewise linear waveform 50. This increases the amount of time that voltage signal 74 accurately represents the desired waveform 50, which results in lower distortion and increased SQNR. Thus, distortion is reduced by reducing the sums T ps + T rs and T ps + T fs so that they are less than a desired portion of the clock period, e.g. 50%. The settling times T rs , T fs and T ps are reduced by increasing the slew time T slew . This reduces the slew rate, which reduces the amount of overshoot and suppresses ringing. Also, a lower slew rate reduces the high frequency content of rising and falling edges 76 and 78 so that parasitic effects are reduced and the edges converge to linear ramps 56. At a 100% slew rate the settling times would be minimized, but voltage signal 74 would at most obtain the desired plateau for an instant at the end of each clock period. If voltage signal 74 is skewed, it may never reach the desired value. For this reason, and because the envelope of the frequency response rolls off as T slew is increased, T slew is preferably set to between approximately 25% and 90% of settling time T s to reduce the distortion in voltage signal 74 while maintaining adequate power efficiency. At clock rates in the GHz range such as found in data conversion applications, T s ≈ T. At low clock rates in the KHz range such as in audio applications or in the MHz range such as in video systems, T s <T. It is not known whether reducing T slew to this extent will increase the settling time as measured in the prior DACs. FIG. 7 is a block diagram of a DAC 84 that produces the approximately piecewise linear voltage signal 74 at a differential output 86 in response to a sequence of n-bit digital codewords. Each codeword is represented by n digital signals 88 that are applied differentially to respective signal paths 90. The codewords can be binary, thermometer codes, or a hybrid binary/thermometer code. A thermometer code is formed by mapping an r-bit binary code into an n=2 r -1 bit code where the bits are equally weighted and turn on cumulatively like a thermometer. A thermometer code improves the accuracy of the DAC because the output signals from the signal paths can be summed together without binary weighting. However, a thermometer code requires substantially more circuitry. Thus, a hybrid binary/thermometer code that codes the MSBs with a thermometer code and the LSBs with a binary may be preferred. Signal paths 90 generate approximately piecewise linear voltage signals 92 having rising and falling edges 94 and 96, respectively, that settle to within a desired error bound from a linear ramp, and having plateaus 98 that settle to within the error bound from an ideal value represented by that path's associated bit. Each signal path 90 includes a waveform shaping circuit 100 that controls the symmetry and slew time T slew of rising and falling edges 94 and 96. A limiting switch 102 precision limits plateaus 98 and maintains the linearity of the rising and falling edges by expanding its linear operating range. Voltage signals 92 are applied to a weighting and current summing circuit 104 that converts them into current signals, weights the current signals as a function of the corresponding bit's significance, and sums them together to produce a differential output current 106. If the digital codeword is a binary code, circuit 104 includes a resistive network that binary weights and sums the current signals. The resistive network is preferably implemented with the well known R-2R ladder to improve the accuracy of the DAC. If the codeword is a thermometer code, voltage signals 92 are applied across a single resistor to sum the equally weighted current signals. A hybrid code uses a portion of the R-2R ladder (shown in detail in FIG. 11) to binary weight the binary LSBs and sum all of the current signals. Differential output current 106 flows through a pair of resistors R z to produce approximately piecewise linear voltage signal 74 at differential output 86. DAC 84 is calibrated by externally trimming the waveform shaping circuits 100 and linear switches 102 until the rising and falling edges and plateaus of its analog voltage signal 74 settle to within the desired error bound 80 (shown in FIG. 6), are symmetric and have the correct duty cycle. To improve the accuracy of DAC 84, signal paths 90 are preferably calibrated independently by applying a high digital signal 88 to one signal path and low digital signals to all the other paths, and monitoring voltage signal 74. To ensure that the cumulative error is within one-half of an LSB, the individual waveforms will generally have to conform to a tighter error bound. One approach is to set the root-mean-square of the individual error bounds to equal one-half an LSB. Alternatively, the known differential and integral error measures can be used. To calibrate DAC 84, waveform shaping circuits 100 have trimming circuits that are represented by trimming resistors R T1 , R T2 and R T3 , and linear switches 102 have a trimming circuit that is represented by trimming resistor R T4 . Trimming R T1 balances waveform shaping circuit 100 so that the rise and fall times of voltage signal 92 are symmetric. However, this causes voltage signal edges 94 and 96 to shift in time independently and change the signal's duty cycle. Therefore, the shaping circuits are precompensated to offset the relative time shift of 94 and 96 by trimming R T2 . Trimming R T3 reduces the rise and fall times of voltage signal 92 until the rising and falling edges of the DAC's output voltage signal 74 settle to within the predetermined error bound from the linear ramp. These resistors are trimmed so that each signal path satisfies the error bound and preferably the rise and fall times for each waveform 92 are approximately equal. Trimming resistor R T4 sets the high and low plateau levels to within the predetermined error bound from the ideal plateau levels, which are a function of the corresponding bits significance. FIG. 8 is a schematic diagram of waveform shaping circuit 100. Digital voltage signal 88 is applied to a differential input 118. A level shifting circuit 120 shifts voltage signal 88 and applies it to the bases 122 and 124 of an emitter-coupled pair 125 of npn transistors Q1 and Q2, respectively. Collectors 126 and 128 of transistors Q1 and Q2 are respectively connected to a differential output 130, and through bias resistors R c to a high supply voltage V cc , suitably ground reference potential. When voltage signal 88 is high (low), transistor Q1 turns on (off) and Q2 turns off (on) so that the polarity of the voltage signal 131 at differential output 130 is 180° out of phase with respect to digital voltage signal 88. The high and low plateau values for voltage signal 131 are limited by the size of resistors R c , typically 300 to 1K ohms, and the amount of emitter current I e , typically 400µA to 3mA. The rise and fall times of voltage signal 131 are increased by connecting a capacitor C1, suitably 400pF, across collectors 126 and 128 of transistors Q1 and Q2, respectively. The size of capacitor C1 can be reduced by approximately a factor of one hundred by using a Miller multiplier, which increases the effective capacitance. Capacitor C1 resists switching the voltage across differential output 130, and hence increases the rise and fall times. The capacitance of C1 and emitter current I e are selected so that capacitor C1 charges and discharges between the limiting high and low plateau values in an approximately linear manner. If the capacitance is too large or the emitter current too small, the voltage across the capacitor will increase logarithmically and may never reach the desired plateau levels before the next clock cycle. Level shifting circuit 120 comprises four NPN transistors Q3 through Q6 whose emitters 132 through 138 are connected through biasing resistors R e to a low voltage supply V ee , suitably -5.2 V. Their collectors 140 through 146 are connected to the high supply voltage V cc . Differential input 118 is connected to the bases 148 and 150 of transistors Q3 and Q4, respectively. Bases 148 and 150 are tied through bias resistors R b to the high voltage supply V cc to supply bias current to transistors Q3 and Q4 so that transistors Q3 through Q6 are always turned on. Emitters 132 and 134 of transistors Q3 and Q4 are connected to the bases 152 and 154 of transistors Q5 and Q6, respectively, and emitters 136 and 138 of transistors Q5 and Q6 are connected to bases 122 and 124 of emitter-coupled transistors Q1 and Q2, respectively. This level shifts digital signal 88 down by two npn transistor base-emitter voltage drops so that it is compatible with driving emitter-coupled pair 125. A balancing circuit 156 (shown as trimming resistor R T1 in FIG. 7) offsets voltage signal 131 to precompensate the signal path for the asymmetry of an emitter-coupled pair 188 of transistors Q8 and Q9 in limiting switch 102 (shown in FIG. 9). Transistor Q1's collector current, which remains approximately constant, is supplied through its collector resistor R c and balancing circuit 156. Balancing circuit 156 supplies and sinks current I bal from resistor R c to pull the voltage at collector 126 up and down, respectively, so that transistors Q8 and Q9 effectively switch at the same threshold voltage so that voltage signal 92 is symmetric. Balancing circuit 156 includes trimming resistors R b1 and R b2 that are connected in series between the low and high supply voltages V ee and V cc at node 158. A resistor R 0 is connected between collector 126 and node 154 to provide balancing current I bal to transistor Q1. When the threshold voltage of transistor Q8 is higher than that of transistor Q9, Q8 turns on more slowly and turns off faster than transistor Q9. To balance the transistors, resistor R b2 is trimmed so that the voltage at node 158 is higher than the voltage at collector 126. This causes I bal to supply a portion of transistor Ql's collector current so that the voltage at its collector 126 is increased. This causes transistor Q8 to turn on faster and turn off slower. Conversely, when the threshold voltage of transistor Q8 is lower than that of transistor Q9, resistor R b1 is trimmed so that the voltage at node 158 is lower than the voltage at collector 126. This increases the current flowing through collector resistor R c and pulls the voltage at collector 126 down, which makes Q8 turn on slower and turn off faster. Resistors R b1 and R b2 are trimmed until the rise and fall times observed at the output of each signal path 90 are substantially the same. Transistors Q1 and Q2 preferably switch between the same high and low voltage levels at their respective collectors. For this to occur, the equivalent resistance at collectors 126 and 128 must be the same. Therefore, a resistor R 1 is connected between the high voltage supply V cc and collector 128 of transistor Q2 so that it is in parallel with resistor R c . The resistance of R 1 is selected so that it has the resistance of R 0 in series with the parallel combination of the nominal values for R b1 and R b2 . Balancing circuit 156 balances emitter-coupled pair 188 but also changes the duty cycle of voltage signal 92. To maintain synchronism between signal paths 90, a precompensation circuit 160 (shown as trimming resistor R T2 in FIG. 7) shifts one side of the differentially applied digital voltage signal 88 by increasing or reducing the amount of base current supplied to base 150 of transistor Q4. Precompensation circuit 160 includes trimming resistors R p1 and R p2 that are connected in series between voltage supplies V cc and V ee at node 162. A resistor R 2 is connected between node 162 and base 150 and a resistor R 3 is connected between base 148 of transistor Q3 and high voltage supply V cc . The resistance of R 3 is selected to be the resistance of R 2 in series with the parallel combination of the nominal values for R p1 and R p2 . Resistors R p1 and R p2 are trimmed to move the voltage at node 162 above or below the voltage at base 150 to modify the base current as required to offset the skew caused by balancing circuit 156. The symmetric rise and fall times of voltage signal 92, and hence the rise and fall times of the DAC's analog voltage signal, are set by adjusting the total tail current I e drawn from emitters 164 and 166 of emitter-coupled transistors Q1 and Q2, respectively. When emitter-coupled pair 125 switches in response to digital signal 88, the polarity of tail current I e switches with respect to capacitor C1 so that it charges or discharges capacitor C1. Reducing tail current I e slows the response of capacitor C1 which increases the rise and fall times. To control tail current I e , emitters 164 and 166 are connected to the collector 168 of an npn transistor Q7 whose emitter 170 is connected through trimming resistor R T3 to low voltage supply V ee . A reference voltage V ref1 is applied to the base 172 of transistor Q7 so that it supplies tail current I e . Resistor R T3 is trimmed until the symmetric rise and fall times are increased to the point that the rising and falling edges of the DAC's analog voltage signal settle to within the desired error bound of the linear ramp. Furthermore, the resistors R T2 in each signal path 90 are preferably trimmed so that the rise and fall times associated with each signal path are substantially the same. FIG. 9 is a schematic diagram of limiting switch 102. Voltage signal 131 is applied to limiting switch 102 at a differential input 180. A level shifting circuit 182 shifts voltage signal 131 and applies it to the bases 184 and 186 of the emitter-coupled pair 188 of NPN transistors Q8 and Q9, respectively. Level shifting circuit 182 includes transistors Q10 through Q13 and respective emitter biasing resistors R e that are connected in the same manner as level shifting circuit 120 (shown in FIG. 8). Emitter-coupled pair 188 produces voltage signal 92 differentially across its collectors 189 and 190 at differential output 192. The high and low plateau levels of voltage signal 92 are precision limited by adjusting the total emitter current I e2 supplied by emitter-coupled pair 188. This is done by connecting collector 194 of a transistor Q14 to a common emitter junction 196 between the emitters 198 and 200 of transistors Q8 and Q9, respectively. Transistor Q14's emitter 202 is connected through the trimmable resistor R T4 to the low supply voltage V ee , and its base 204 is connected to a reference voltage V ref2 . Resistor R T4 is trimmed until the plateau values for the DAC's analog voltage signal are within one-half a LSB of the ideal values represented by the digital codewords. To maintain the linearity of the voltage signal's rising and falling edges that was established by the waveform shaping circuit, the range of input voltages over which emitter-coupled pair 188 behaves approximately as a linear amplifier is increased. This can be accomplished in a number of ways, such as by using emitter degeneration resistors or scaled parallel transistors. As shown, emitter degeneration resistors R d , typically less than approximately 100 ohms, are connected between junction 196 and emitters 198 and 200 of transistors Q8 and Q9. As shown in FIG. 10, this extends the linear range of the emitter coupled pair's transfer function 204 by an amount approximately equal to I e2 R d . FIG. 11 is a preferred embodiment of weighting and summing circuit 104 that includes a pair of well known R-2R ladders 206. Voltage signals 92 from signal paths 90 are applied differentially to respective nodes 208. As shown, the codeword is a 12 bit hybrid binary/thermometer code, which is formed from an 8 bit binary code by mapping its five LSBs directly into the five LSBs in the hybrid code. The binary code's 3 MSBs are mapped into 7 equally weighted bits in the hybrid code. The weight of each of these seven bits is equivalent to the sixth bit in the binary code. The equivalent resistance of R-2R ladders 206 at nodes 5 through 11 is R so that the current signals I 5 through I 11 , which correspond to the thermometer coded bits, are equally weighted. Ladders 206 divide current signals I 4 -I 0 so that the proper binary fraction of each current signal is provided to the output. The current signals at each node 208 are summed together to produce differential current signal 106, which is proportional to the digital codewords input to the DAC. FIG. 12 is a block diagram of a preferred embodiment of DAC 84. The circuitry of DAC 84 shown in FIG. 7 is expanded to include a recoder 210 that maps an m bit binary code into a n bit hybrid binary/thermometer code, calibration selection circuits 212 that allow independent calibration of signal paths 90, and latch circuits 214 that resynchronize digital signals 88 before they are applied to waveform shaping circuits 100 and linear switches 102. The m bit binary codeword is split into its m-w MSBs that are mapped into 2 m-w -1 equally weighted bits in the hybrid codeword, and its w LSBs that are mapped into the w binary weighted LSBs in the hybrid codeword. Thus, DAC 84 has n signal paths 90 where n = 2 m-w -1 + w. Digital signals 88 corresponding to the m-w MSBs of the binary codeword are applied to a recoder 210 that maps them into the 2 m-w -1 thermometer coded digital signals 88. The thermometer coded digital signals 88 are input to their respective calibration selection circuits 212 and to the selection circuit 212 that corresponds to the next lower bit. The second input to the MSB's selection circuit is connected to ground. In normal operation, a selection disable command is applied to an external input (TRIM) so that selection circuits 212 pass digital signals 88 through to their respective latches 214. Digital signals 88 that correspond to the w LSBs in the binary codeword are input to a delay circuit 218 that delays the application of those signals to their respective latches 214 by an amount of time approximately equal to the delay caused by recoder 210 and calibration selection circuits 212. Recoder 210, selection circuits 212 and delay circuit 218 skew digital signals 88 relative to each other. To eliminate the skew, digital signals 88 are applied to latches 214 in each signal path 90. A clock 220 applies a clock signal to latches 214, which resynchronizes digital signals 88 and applies them to waveform shaping circuits 100 at the next clock cycle. The clock signal itself may be skewed by the circuitry. Delays 222 are used to improve the synchronization, and are adjusted by externally trimming resistors R T5 . As described above, DAC 84 is preferably calibrated by calibrating each signal path 90 independently. Signal paths 90 that correspond to the binary code are isolated by manipulating the codeword to have only a single high bit. When enabled through the external input (TRIM), calibration selection circuits 212 isolate one of the signal paths 90 that correspond to the thermometer coded bits. Selection circuits 212 include logic circuitry that implements the truth table shown in table 1 below so that only the highest bit that would be turned on in normal operation is turned on during calibration. In table 1, the symbol E indicates an input code AB that is not possible. Alternatively, selections circuits 212 could be removed and voltage signal 74 calibrated by incrementing the digital codewords. While several illustrative embodiments of the invention have been shown and described, numerous variations and alternate embodiment will occur to those skilled in the art. For example, pnp transistors could be used instead of the npn devices shown, and the circuits reconfigured for biasing between a positive V cc and grounded V ee . Such variations and alternate embodiments are contemplated, and can be made without departing from the spirit and scope of the invention as defined in the appended claims. In summary, a DAC 84 converts a sequence of digital codewords 12 into an approximately piecewise linear analog waveform 50, 106 that follows rising and falling edges 76, 78; 94, 96 between plateau levels 82; 98. The DAC 84 processes, in parallel, each bit of the codewords 12 to produce component waveforms 88 that are weighted according to their bits significance and summed together to produce the piecewise linear analog waveform 50, 106. Waveform shaping circuits 100 control the rise and fall times of each component waveform 88 so that the analog waveform's rising and falling edges settle to within a desired error bound 80 of a linear output ramp 56, 58 whose slope is a function of the difference between successive codewords 12 and the rise or fall times. The rise and fall times are preferably approximately the same. Limiting switches 102 control the plateau levels of the component waveforms 88 so that the analog waveform's plateaus settle to within the desired error bound 80 of the ideal values represented by the codewords 12. The linear region of the limiting switches 102 are expanded to maintain the linearity of the rising and falling edges established by the waveform shaping circuits 100.

Claims: A digital-to-analog converter (DAC), characterized by: a plurality of waveform shaping circuits (100) that produce drive signals (92, 131) that switch during rise and fall times along rising and falling edges (76, 78; 94, 96), respectively, between low and high plateaus (82; 98) in response to a sequence of n-bit codewords (12) in which each bit controls a digital signal (88) that is applied to one of the waveform shaping circuits for a known clock period; a plurality of limiting switches (102) having transfer functions that limit the drive signals' (92, 131) low and high plateau values to low and high limiting values, respectively, while approximately maintaining the shape of the rising and falling edges (76, 78; 94, 96); a weighting circuit (104) that weights the drive signals (92, 131) in accordance with their respective bits' positions in the codewords (12) to produce weighted drive signals; and a summation circuit (206) that sums the weighted drive signals to construct an approximately piecewise linear analog waveform (50, 106) having output plateau values (82; 98) and rising and falling output edges (76, 78; 94, 96), said waveform shaping circuits (100) setting said rise and fall times so that the rising and falling output edges (76, 78; 94, 96) settle in rise and fall settling times (T rs ) and (T fs ), respectively, to within a first error bound (80) of a linear output ramp (56, 58) whose slope is a function of the difference between successive codewords, and said limiting switches (102) setting the low and high limiting values so that the output plateau values settle in a settling time (T ps ) to within a second error bound (80) of ideal values represented by the codewords. The DAC of claim 1, characterized in that said waveform shaping circuits (100) control the rise times to reduce the sum of settling times (T ps ) and (T rs ) and control the fall times to reduce the sum of the settling times (T ps ) and (T fs ). The DAC of claim 1 or 2, characterized in that said plateaus (82; 98) settle to within said second error bound (80) in a settling time (T s ) that is measured from successive clock edges of said digital signal and said plateau settling time (T ps ) is measured from the end of said rise and fall times, said waveform shaping circuits (100) setting said rise and fall times to be at least twenty-five percent of said settling time (T s ). The DAC of any of claims 1 - 3, characterized in that said waveform shaping circuits (100) set said rise and fall times to be approximately the same. The DAC of any of claims 1 - 4, characterized in that said first and second error bounds (80) are approximately the same. The DAC of claim 5, characterized in that said codewords (12) have a least significant bit (LSB) that corresponds to a quantization resolution boundary, said first and second error bounds (80) being at most said quantization resolution boundary. The DAC of claim 6, characterized in that said first and second error bounds (80) are approximately one-half said LSB. The DAC of any of claims 1 - 7, characterized in that each of said waveform shaping circuits (100) comprises: a first pair (125) of differentially connected transistors (Q 1 , Q 2 ) having a differential input (118) that responds to the waveform shaping circuit's (100) associated digital signal (88), a common tail current (I e ), and a differential output (130); a capacitor (C1) that is connected across said differential output (130) to produce said drive signal (131); and a current source that supplies the common tail current (I e ) at a level that charges and discharges the capacitor (C1) slowly enough to produce the drive signals' (131) rising and falling output edges (76, 78; 94, 96), respectively, that settle to within said first error bound (80) of said linear output ramp (56, 58). The DAC of claim 8, characterized in that each of said limiting switches (102) comprises: a second pair (188) of differentially connected transistors (Q 8 , Q 9 ) that switch a differential output (190) between the low and high limiting values in response to the switch's drive signal, said second pair (188) of transistors (Q 8 , Q 9 ) exhibiting a linear operating range while switching between the limiting values; a current source (V ref2 , Q 14 ) that sets an amount of common tail current (I e2 ) that flows through said second pair (188) of transistors (Q 8 , Q 9 ) so that the limiting values are within said second error bound (80) of the codewords' (12) ideal values; and a linearization circuit (R d , R d ) that expands the linear operating range so that the shape of the rising and falling edges are approximately maintained. The DAC of claim 9, characterized in that said second pair (188) of transistors (Q 8 , Q 9 ) are bipolar transistors having emitters, bases and collectors, said linearization circuit comprising a pair of emitter degeneration resistors (R d , R d ) that are connected between the respective transistors' emitters (198, 200) and said current source (V ref2 , Q 14 ). The DAC of claim 9 or 10, characterized by: a balancing circuit (156, R T1 ) that balances the second pair (188) of differentially connected transistors (Q 8 , Q 9 ) by offsetting the value of said drive signal so that said rise and fall times are substantially the same. The DAC of claim 11, characterized in that said balancing circuit (156, R T1 ) also shifts the rising and falling edges in time, said DAC further comprising: a compensation circuit (160) that substantially offsets the time shift of the rising and falling edges caused by the balancing circuit (156) by shifting the value of said digital signal. The DAC of any of claims 1 - 12, characterized in that said n-bit codewords (12) have w least significant bits (LSBs) that represent a digital code and q most significant bits (MSBs) that represent a thermometer code where the q MSBs turn on cumulatively, the DAC further comprising: a recoder (210) that receives a sequence of m-bit codewords having w LSBs and m-w MSBs, maps the w LSBs into the w LSBs of the n-bit codewords, and maps the m-w MSBs into the n-bit codewords' q MSBs, where q = 2 m-w - 1. The DAC of claim 13, characterized in that said waveform shaping circuits (100) are externally trimmable to set the rise and fall times and said limiting switches (102) are externally trimmable to set the low and high limiting values, said DAC further comprising: a selection circuit (212) having a pass mode in which the digital signals for the q bits of the thermometer code are applied to the respective waveform shaping circuits (100) and a trim mode in which only the digital signal for the highest bit in the thermometer code that is turned on is applied to its waveform shaping circuit (100), so that each of said waveform shaping circuits (100) and limiting switches (102) can be trimmed independently. The DAC of any of claims 1 - 14, characterized by: a plurality of latches (214) that receive a clocking signal (220) having said known clock period and the respective bit' s digital signal (88), and outputs the digital signal (88) to the waveform shaping circuit (100) at the next clock cycle; and a plurality of delay circuits (222) that synchronize the clock signals (220) applied to each of said latches (214) so that the digital signals (88) applied to the waveform shaping circuits (100) are substantially synchronized. The DAC of claim 1, characterized in that said drive signals (92, 131) switch symmetrically along said rising and falling edges (76, 78; 94, 96) during transition times between said low and high plateaus (82; 98), and said waveform shaping circuits (100) set the transition time so that the sum of settling times (T ps ) and (T rs ) and the sum of the settling times (T ps ) and (T fs ) are set so that they are less than a predetermined portion of the clock period. The DAC of claim 16, characterized in that said plateaus (82; 98) settle to within said second error bound (80) in a settling time (T s ) that is measured from successive clock edges of said digital signal and said plateau settling time (T ps ) is measured from the end of said transition time, said waveform shaping circuits (100) setting said transition period to be at least twentyfive percent of said settling time (T s ). A method for constructing an approximately piecewise linear analog waveform (50, 106) from a sequence of digital codewords (12) in which each bit in the codeword (12) controls a digital signal (88) having a known clock period, comprising: producing a plurality of drive signals (92, 131) that switch during rise and fall times along rising and falling edges (76, 78; 94, 96), respectively, between low and high plateaus (82; 98) in response to respective digital signals (88); adjusting the drive signals' (92; 131) low and high plateaus (82; 98) to low and high limiting values, respectively, as a function of a limiting signal while approximately maintaining the shape of the rising and falling edges (76, 78; 94, 96); weighting the drive signals (92, 131) in accordance with their respective bits positions in the codewords (12); summing the weighted drive signals to construct the approximately piecewise linear analog waveform (50, 106) having output plateau values and rising and falling output edges; trimming said rise and fall times so that the rising and falling output edges settle in rise and fall settling times (T rs ) and (T fs ), respectively, to within a first error bound (80) of a linear output ramp (56, 58) whose slope is a function of the difference between successive codewords (12) ; and trimming said limiting signal so that the output plateau values settle in a settling time (T ps ) to within a second error bound (80) of ideal values represented by the codewords (12). The method of claim 18, characterized in that trimming said rise time reduces the sum of settling times (T ps ) and (T rs ) and trimming the fall time reduces the sum of the settling times (T ps ) and (T fs ). The method of claim 19, characterized in that said plateaus (82; 98) settle to within said second error bound (80) in a settling time (T s ) that is measured from successive clock edges of said digital signal (88) and said plateau settling time (T ps ) is measured from the end of said rise and fall times, wherein said rise and fall times are trimmed so that they are at least twenty-five percent of said settling time (T s ). The method of claim 18, characterized by balancing the drive signals (92, 131) so that the rise and fall times are approximately the same.

Inventors: ESSENWANGER KENNETH A, ESSENWANGER, KENNETH A.
Applicants: RAYTHEON CO, RAYTHEON COMPANY
Application year: 1996
Main classification: H03M1
IPC codes: H03M1, H04L25, H03K4, G06F1