Post Go back to editing

AD9117 coarse gain setting

Category: Hardware

Hello,

we are playing the gain control of an AD9117 DAC.

Config: VDD is 3.3V, Vref is 1V, IRSET is enabled and we have IV converter with 49.9 ohm resistors at the DAC outputs. CMPLx grounded, RLxP/N open.

Stated in datasheet rev. E p.38:

Changes the value of the on-chip IRSET resistor; this scales the full-scale current of the DAC in ~0.25 dB steps twos complement (nonlinear), see Figure 99.

000000 (default): IRSET = 2 kΩ.

011111: IRSET = 8 kΩ.

100000: IRSET = 1.6 kΩ.

111111: IRSET = 2 kΩ.

Q1: How is it possible to have same IRSET values (2k) with different register codes (000000, 111111)? They seem one step far, so the resistance must be differ.

Q2: If IRSET equals 2k then the IOUTFS shouldn't be 32*Vref/2k = 16mA (as per page 45)? Figure 99. looks different.

Q3. Where is the tolerance of xRSET? (I didn't find it on the datasheet.)

Thank you.

Parents
  • Hi  ,

    Q1: How is it possible to have same IRSET values (2k) with different register codes (000000, 111111)? They seem one step far, so the resistance must be differ.

    IRSET (Register 0x04 [5:0]) and QRSET (Register 0x07 [5:0]) is designed to operate in two's complement format. This is why register codes 0b000000 and 0b111111 can be approximated to have the same nominal values. 

    Q2: If IRSET equals 2k then the IOUTFS shouldn't be 32*Vref/2k = 16mA (as per page 45)? Figure 99. looks different.

    We will confirm the values in Figure 99 on bench and get back to you.

    Q3. Where is the tolerance of xRSET? (I didn't find it on the datasheet.)

    The xRSET has a tolerance of 10% allowable error based on our ATE test standards. 

    Regards,

    Marco

Reply
  • Hi  ,

    Q1: How is it possible to have same IRSET values (2k) with different register codes (000000, 111111)? They seem one step far, so the resistance must be differ.

    IRSET (Register 0x04 [5:0]) and QRSET (Register 0x07 [5:0]) is designed to operate in two's complement format. This is why register codes 0b000000 and 0b111111 can be approximated to have the same nominal values. 

    Q2: If IRSET equals 2k then the IOUTFS shouldn't be 32*Vref/2k = 16mA (as per page 45)? Figure 99. looks different.

    We will confirm the values in Figure 99 on bench and get back to you.

    Q3. Where is the tolerance of xRSET? (I didn't find it on the datasheet.)

    The xRSET has a tolerance of 10% allowable error based on our ATE test standards. 

    Regards,

    Marco

Children
  • Hello Marco,

    Thank you very much for your response.

    Q1: I'm not sure that I understand your answer well... if 0b000000 and 0b111111 register values are in two's complement then 0b000000 = 0, 0b111111=-1. The MSB is the sign bit and the others represent the magnitude. The nominal values are different. Is there something that I'm overlooking or not noticing?

    Also, the Figure 99 is embarrassing me a bit... the xRSET registers values are in signed format, but the x scale numbers are unsigned. The two's complement values are written as straight decimal?

    Regards,

    Molnar

  • Hello Marco,

    Do you have any news regarding Q2?

    Thank you.

    Regards,

    Molnar

  • Hello ,

    Thank you for patiently waiting. Regarding xRset (Q2), we've confirmed on bench that the correct xRset for 0b000000 and 0b111111 should be 4kΩ, not 2kΩ. The graph in Fig. 99 is correct. The values listed in page 38 Table 14 will be lined up for datasheet revision.

    For Fig. 99, although there is a 1-bit difference between register codes 0b000000 and 0b111111 in two's complement format, their corresponding analog resistance values (xRset) can be approximated to be equal at 4kΩ based on the resolution of the xRset register (IRSET 0x04 [5:0] and QRSET 0x07 [5:0]). The x-scale numbers in the graph are not the equivalent (unsigned) decimal values of the xRset values in two's complement format. Rather, the numbers are in proportion to negative full-scale and positive full-scale values.

    Regards,

    Marco

  • Hello Marco,

    Sorry for the late reaction and thank you very much for your response and explanation.

    Q2: Yes, IRSET should have been stated 4k rather than 2k in Table 14.

    Q1: I don't think it's a good idea to assign the same resistance values to different codes if the purpose of these regs (xRSET) is to adjust the resistance. If we accept what the datasheet writes (the register allows the output current to be changed in approximately 0.25dB steps) then one step in resistance is around 100Ohm. If I presume I calculated well. So, such a rounding can be misleading.
    Anyway, I think, one xRSET step is closer to 0.22dB if the steps are equal in dB and xRSET really changes value from 4mA to 20mA.

    And there is one more thing that embarrasses me. The IF is function of xRSET shown here:

    Curves:

    blue - theoretical stepping with 0.22dB (It closely resembles Figure 99 in the datasheet.)

    red - measured

    orange - 100Ohm/step

    There is a significant difference between the datasheet and the measured results. Currently, I cannot determine the cause of the mismatch, so I will double-check the IV converter, as the IF values were calculated from the measured voltage values.

    Is there any formula that can provide the IF value based on the xRSET code except for the 0.25dB step?

    Best Regards,

    Molnar