This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADC12DJ3200: Calibration Data

Part Number: ADC12DJ3200

Hi There,

I have a couple questions about the ADC12DJ3200 calibration when used in single-channel mode:

1) How sample rate dependent are the factory-trimmed calibration value? Ex, if the calibration values are calculated for 3200 MS/s and I run the device at 2667 MHz, should I be expected to change specific calibration values? The timing adjust values come to mind. Are these values updated when a foreground calibration is performed?

2) Do you have any reference code to read/write data from the CAL_DATA register? I performed a foreground cal and then read data from the CAL_DATA register, following the instructions in the datasheet: Set CAL_DATA_EN to 1 but I left ADDR_HOLD = 0 for simplicity and then I read from the CAL_DATA register 673 times, storing the values in an array. As a test, I repeated the Calibration data read process expecting to read the same values that I had previously read but this wasn't the case. I am able to read specific calibration registers, for example register GAIN_TRIM A (0x07A), repeatedly and get the same result after each read. Is there a workaround, such as reading all the calibration registers documented on page 93 of the datasheet (registers 0x60 through 0xFF) and caching those?

3) Does TI expect calibration values to be valid from one power cycle to another? Assuming I am able to get the CAL_DATA functionality to work, if I perform a cal and save the values somewhere, would I expect to be able to reprogram the ADC with the same calibration values and have good performance, assuming the ambient environment is the same?

Thanks!

-Sean

  • Hi Sean

    Regarding your questions.

    1) Most of the factory-trimmed register values are OK at different clock rates. The timing trim value is one that is somewhat dependent on clock frequency. If operating at a significantly lower clock frequency and using single input mode then the Fs/2-Fin spur can be larger than expected and can be improved by re-adjusting the timing trim setting. The values are not updated by any built-in calibrations, but can be optimized using a fairly simple procedure and a known external test signal applied at VINA or VINB as needed. Please see this earlier post which discusses what is required.

    https://e2e.ti.com/support/data-converters/f/73/p/664636/2445075

    2) I don't have any reference code but will verify the proper procedure for read-out.

    3) Yes, calibration values are valid from one power cycle to another. As long as the device is at the same operating conditions (mode related register settings, clock frequency and device temperature) then the settings will be valid.

    Best regards,

    Jim B

  • Jim,

    Thank you for your response. That link for the timing adjustment was very helpful. Looking forward to your response to 2).

    -Sean

  • Jim,

    Don't worry about looking into the issue I had reading back the calibration data. I had been enabling and disabling the CAL_DATA_EN bit before each read/write and it looks like that was causing the problem. Just enabling CAL_DATA_EN once before enabling CAL_EN in my setup has resolved the problem. Go ahead and close this ticket. Thanks for your help.

    -Sean

  • Hi Sean
    I'm glad you've got things working as needed.
    Let us know if there is anything else we can do.
    Best regards,
    Jim B