The subject matter of this specification is generally related to digital-to-analog converters.
A digital-to-analog converter (DAC) is a device for converting a digital code to an analog signal. For example, a DAC can convert an 8-bit digital signal into an output voltage or current having an amplitude representing the digital code. Two common examples of DACs are the “R-string” DAC and the “R-2R ladder” DAC. Another example is the parallel resistors architecture (PRA) DAC. Advantages of the PRA-DAC over the “R-string” DAC and the “R-2R ladder” DAC include that the PRA-DAC has a constant output impedance and inherent monotonicity compared to “R-2R ladder” DACs.
When an input (e.g., a digital code) is changed, the output (e.g., an analog signal) of a DAC settles to a value after a delay called a settling time. The settling time depends on the output resistance Rout of the DAC and a capacitive load CL at the output of the DAC. In particular, the settling time depends on a time constant that can be defined by the product of Rout and CL. The settling time can limit a conversion speed of the DAC.
A PRA-DAC is disclosed. The PRA-DAC is operable to increase its conversion speed.
An advantage of the PRA-DAC is that its conversion speed can be increased (i) without affecting resistor matching, thereby maintaining the linearity of the PRA-DAC; and (ii) without increasing power consumption during a period of fine settling.
Like reference symbols in the various drawings indicate like elements.
The PRA-DAC 100 includes a resistive network. The resistive network includes 2N sets of parallel resistive elements 110. In some implementations, a capacitive load CL can be coupled to the resistive network at the output of the PRA-DAC 100. In this example, each of the sets of parallel resistive elements 110 includes a resistive element RA and a resistive element RB. The sets of parallel resistive elements 110 have substantially the same resistance R=RA+RB. One of the sets of parallel resistive elements 110a is connected to ground GND. 2N−1 of the sets of parallel resistive elements 110b are coupled to a first switch network. The first switch network includes switches S1, S2, . . . , S2N−1. S1 to S2N−1 can control the 2N−1 sets of parallel resistive elements 110b to be connected either to a reference voltage Vref or to GND.
S1 to S2N−1 connect the sets of parallel resistive elements 110b based on a control word generated by a decoder 120. For example, S1 to S2N−1 can be configured so that a switch connects a connected resistor to Vref if a control signal representing logic 1 is received, and the switch connects the connected resistor to GND if a control signal representing logic 0 is received. Other reference levels can also be used. In some implementations, a switch can be a transistor that is biased to behave like a switch. Other implementations are possible.
The decoder 120 generates a 2N−1 bits control word based on the received D. In some implementations, each control bit in the control word corresponds to one of the switches of S1 to S2N−1. Based on the corresponding control bit, S1 to S2N−1 can connect the sets of parallel resistive elements 110b to Vref or GND. In some implementations, the control word can be a decoded representation of D. For a given D (e.g., D is an integer between 0 and 2N−1), D of the 2N−1 control bits may be at logic 1 and 2N−D of the control bits may be at logic 0. In some implementations, because the decoder 120 is configured to generate D of the 2N−1 control signals at logic 1, D of the sets of parallel resistive elements 110 are connected to Vref and 2N−D resistors are connected to GND.
Accordingly, the PRA-DAC 100 can generate Vout based on a voltage division between the sets of parallel resistive elements 110 connected to Vref and the sets of parallel resistive elements 110 connected to GND. In some implementations, the equivalent resistance between Vref and Vout is approximately
and the equivalent resistance between Vout and GND is approximately
The PRA-DAC 100 can generate Vout based on D (Vout(D)) according to the following equation:
The PRA-DAC 100 can generate Vout(D) that is substantially monotonic to D. For example, as D is incremented by one (e.g., increment from D to D+1), an additional resistive element is connected to Vref. Thus, Vout(D) is less than Vout(D+1). In some implementations, the monotonic property of the PRA-DAC 100 is substantially independent of the quality of the matching of the sets of parallel resistive elements 110. For example, if the sets of parallel resistive elements 110 are poorly matched, resulting in highly varied resistance across the sets of parallel resistive elements 110, the monotonic property of the PRA-DAC 100 can still be substantially preserved because more resistance is still connected to Vref.
As shown, the PRA-DAC 100 draws a reference current Iref from Vref. In this example, Iref flows first from a node at Vref to a node at Vout through D sets of parallel resistive elements 110, and then from Vout to GND through 2N−D sets of parallel resistive elements 110. Depending on D, Iref(D) can be expressed as:
From the above equations, Iref(D) can be expressed as:
By rearranging the above equation, Iref(D) can be expressed as:
Note that Iref(D) is a second order polynomial depending on D. Iref(D) is at a minimum at D=0. The minimum value of Iref(D) is:
I
min
=Iref(D=0)=0.
At mid-scale (2N-1), Iref(D) increases to a maximum. The maximum value of Iref(D) is:
After mid-scale, Iref(D) symmetrically decreases to:
The output resistance of the PRA-DAC 100 at D (Rout(D)) includes the resistance
in parallel with
Solving for the equivalent resistance, Rout(D) can be expressed as
where Rout is independent of D.
When D changes, Vout(D) settles to a value (e.g., a final value) after a delay called the settling time tSETTLE. For example, Vout(D) can be considered to have settled to its final value, when Vout(D) is less than
away from
Because a conversion speed fS of the PRA-DAC 100 (e.g., a rate at which D changes) depends on tSETTLE, fS cannot be greater than
For example, depending on the rate at which D changes, Vout(D) at
(e.g., a period of D) can be greater than
away from
Thus, a maximum value of fS can be expressed as:
As explained previously, tSETTLE depends on τDAC. τDAC can be expressed as:
For a first order system, Vout(D) settles exponentially and can be expressed as:
Vout(t) at t=τDAC can be expressed as:
Simplifying, Vout(t=τDAC) can be expressed as:
Vout(t=τDAC)≈Vout(t=0)+0.63·[Vout(t=∞)−Vout(t=0)].
For a first order system, the relationship between tSETTLE and τDAC can also depend on N. Again, Vout(D) can be considered to have settled to its final value when Vout(D) is less than
away from
This condition can also be expressed as:
Generally, Vout(t=0)=0 and Vout(t=∞)=Vref. Using Expression [1], Vout(t) can be expressed as:
Using Expression [3] and Expression [2], the condition can be expressed as:
Using the neperian logarithm, the condition can be expressed as:
Therefore, the condition can be expressed as:
As discussed previously, fS depends on tSETTLE, tSETTLE depends on τDAC, and τDAC depends on Rout. Therefore tSETTLE can be reduced by reducing Rout of the PRA-DAC 100. Permanently reducing Rout can result in increased power consumption that can be proportional to the reduction in Rout. Furthermore, reducing resistances of resistive elements in the PRA-DAC, for example, can decrease the quality of resistor matching (e.g., matching actual resistance values among the sets of parallel resistive elements 110, including the actual resistance values of RA and RB). For example, in various embodiments, the actual resistance values of the resistors RA (e.g., RA coupled to S1, RA coupled to S2, and RA coupled to S3, etc.) are preferably matched, or substantially the same value. As another example, the actual resistance values of the resistors RB (e.g., RB coupled to S1′, RB coupled to S2′, and RB coupled to S3′, etc.) are preferably matched, or substantially the same value.
If the resistances of the resistive elements are reduced, the resistor matching can become, for example, more susceptible to parasitic resistances (e.g., parasitic resistances of switches and metal routings between resistors). Because the actual resistances of the sets of parallel resistive elements 110 may not be substantially the same value, voltage division between the sets of parallel resistive elements 110 connected to Vref, for example, can vary, thereby affecting Vout. The linearity of the PRA-DAC 100 can be decreased because the linearity depends on the resistor matching.
Referring to
When the second switch network is open, the sets of parallel resistive elements 110 have a resistance R=RA+RB. Shorting the resistive elements RA causes the sets of parallel resistive elements 110 to have a resistance R=RB. Because
Rout is reduced. Thus, τDAC and tSETTLE are reduced, and fS can be increased.
PHI2 can depend on PHI1. In particular, PHI2 can be high for a first portion of a clock period of PHI1. The first portion can correspond to a period of coarse settling, where R=B. During coarse settling, Vout(t) settles with a corresponding time constant
The first portion of PHI2 can be followed by a second portion of the clock period of PHI1, where PHI2 is low. The second portion corresponds to a period of fine settling, where R=RA+RB. During fine settling, Vout(t) settles with a corresponding time constant
Because Rout is temporarily reduced during the first portion of the clock period of PHI1, τDAC and tSETTLE can be reduced during the first portion of the clock period of PHI1. Furthermore, because R can equal (RA+RB) during a second portion of the clock period of PHI1, the linearity of the PRA-DAC 100 can be maintained during the second portion of the clock period of PHI1. Furthermore, increased power consumption of the PRA-DAC 100 can be limited to the first portion of the clock period of PHI1.
When Rout is temporarily reduced, Vout settles to approximately 63% of a final value at t=τDAC1 (e.g., as illustrated by plot 310) approximately three times faster than when Rout is not temporarily reduced (e.g., as illustrated by plot 320 at t=τDAC2). In addition, when Rout is temporarily reduced, tSETTLE1<tSETTLE2.
In the example, PHI2 has been configured so that a period of coarse settling equals to τDAC1. After the coarse settling, a period of fine settling follows that corresponds to τDAC2. In some implementations, PHI2 can be generated so that PHI2 is high for the entire clock period of PHI1. Other configurations are possible.
Although one implementation of a PRA-DAC (e.g., the PRA-DAC 100 of
A number of implementations of the invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. Accordingly, other implementations are within the scope of the following claims.