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.

ADC32RF45EVM: Undocumented low level register writes with ADC32RFXX EVM GUI

Part Number: ADC32RF45EVM
Other Parts Discussed in Thread: ADC32RF45

Hello,

I used the ADC32RFxx EVM GUI to generate register settings for the ADC32RF45 but the logger shows that there are a lot of low level writes that do not correspond to registers in the datasheet. What are these registers and are they necessary?

Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4003[0x4003] -[0x0]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4004[0x4004] -[0x20]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4002[0x4002] -[0xF8]
Write Register: ADC32RFxx_LOWLEVEL[0x603C]-[0xF5]
Write Register: ADC32RFxx_LOWLEVEL[0x603D]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x603E]-[0xF0]
Write Register: ADC32RFxx_LOWLEVEL[0x603F]-[0xC]
Write Register: ADC32RFxx_LOWLEVEL[0x6040]-[0xA]
Write Register: ADC32RFxx_LOWLEVEL[0x6041]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x6053]-[0xF5]
Write Register: ADC32RFxx_LOWLEVEL[0x6054]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x6055]-[0xEE]
Write Register: ADC32RFxx_LOWLEVEL[0x6056]-[0xE]
Write Register: ADC32RFxx_LOWLEVEL[0x6057]-[0xB]
Write Register: ADC32RFxx_LOWLEVEL[0x6058]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x606A]-[0xF4]
Write Register: ADC32RFxx_LOWLEVEL[0x606B]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x606C]-[0xF0]
Write Register: ADC32RFxx_LOWLEVEL[0x606D]-[0xB]
Write Register: ADC32RFxx_LOWLEVEL[0x606E]-[0x9]
Write Register: ADC32RFxx_LOWLEVEL[0x606F]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x6081]-[0xF5]
Write Register: ADC32RFxx_LOWLEVEL[0x6082]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x6083]-[0xEE]
Write Register: ADC32RFxx_LOWLEVEL[0x6084]-[0xD]
Write Register: ADC32RFxx_LOWLEVEL[0x6085]-[0xA]
Write Register: ADC32RFxx_LOWLEVEL[0x6086]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x6098]-[0xFD]
Write Register: ADC32RFxx_LOWLEVEL[0x6099]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x609A]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x609B]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x609C]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x609D]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60AF]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x60B0]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60B1]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x60B2]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x60B3]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x60B4]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60C6]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x60C7]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60C8]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60C9]-[0x2]
Write Register: ADC32RFxx_LOWLEVEL[0x60CA]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60CB]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60DD]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x60DE]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60DF]-[0x2]
Write Register: ADC32RFxx_LOWLEVEL[0x60E0]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60E1]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x60E2]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60F4]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60F5]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60FB]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x60FC]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4003[0x4003] -[0x0]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4004[0x4004] -[0x20]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4002[0x4002] -[0xF9]
Write Register: ADC32RFxx_LOWLEVEL[0x6074]-[0xF4]
Write Register: ADC32RFxx_LOWLEVEL[0x6075]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x6076]-[0xEF]
Write Register: ADC32RFxx_LOWLEVEL[0x6077]-[0xC]
Write Register: ADC32RFxx_LOWLEVEL[0x6078]-[0xA]
Write Register: ADC32RFxx_LOWLEVEL[0x6079]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x608B]-[0xF4]
Write Register: ADC32RFxx_LOWLEVEL[0x608C]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x608D]-[0xEE]
Write Register: ADC32RFxx_LOWLEVEL[0x608E]-[0xD]
Write Register: ADC32RFxx_LOWLEVEL[0x608F]-[0xA]
Write Register: ADC32RFxx_LOWLEVEL[0x6090]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x60A2]-[0xF4]
Write Register: ADC32RFxx_LOWLEVEL[0x60A3]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x60A4]-[0xEF]
Write Register: ADC32RFxx_LOWLEVEL[0x60A5]-[0xC]
Write Register: ADC32RFxx_LOWLEVEL[0x60A6]-[0xA]
Write Register: ADC32RFxx_LOWLEVEL[0x60A7]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x60B9]-[0xF4]
Write Register: ADC32RFxx_LOWLEVEL[0x60BA]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x60BB]-[0xEF]
Write Register: ADC32RFxx_LOWLEVEL[0x60BC]-[0xD]
Write Register: ADC32RFxx_LOWLEVEL[0x60BD]-[0xA]
Write Register: ADC32RFxx_LOWLEVEL[0x60BE]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x60D0]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x60D1]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60D2]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x60D3]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x60D4]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60D5]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60E7]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x60E8]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60E9]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x60EA]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60EB]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60EC]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x60FE]-[0xFE]
Write Register: ADC32RFxx_LOWLEVEL[0x60FF]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4002[0x4002] -[0xFA]
Write Register: ADC32RFxx_LOWLEVEL[0x6000]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x6001]-[0x2]
Write Register: ADC32RFxx_LOWLEVEL[0x6002]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x6003]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x6015]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x6016]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x6017]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x6018]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x6019]-[0xFF]
Write Register: ADC32RFxx_LOWLEVEL[0x601A]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x602C]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x602D]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x6033]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL[0x6034]-[0x1]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4002[0x4002] -[0x0]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4003[0x4003] -[0x0]
Write Register: ADC32RFxx_LOWLEVEL.LOWLEVEL 4004[0x4004] -[0x68]
Write Register: ADC32RFxx_LOWLEVEL[0x6068]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x11]-[0x0]
Write Register: ADC32RFxx_LOWLEVEL[0x12]-[0x4]
Write Register: ADC32RFxx_LOWLEVEL[0x5C]-[0x87]
Write Register: ADC32RFxx_LOWLEVEL[0x12]-[0x0]
  • Hi Robert,

    I've looped in the Engineering support for this device. you should be hearing from them soon.

    best regards,
    -Steve Wilson
  • Hi,

    These low level writes are mandatory. They are meant to optimize device’s performance after powering up the device.

    Since they don’t carry a useful meaning for customer, they are not described in datasheet explicitly.

    These registers also depend on sampling rate and Nyquist region of interest for input frequencies.

    These registers have to be programmed in a particular flow as mentioned in datasheet.

    Registers required for each step of this flow are clubbed in pertinent config files (.cfg files, can be opened with any text editor such as notepad++).

    The config files are zipped and attached to this post – the hyperlink given in datasheet also points to the same zipped file kept on server location.

    SBAA226C.zip

    The GUI also uses same flow and writes all necessary registers based on what option was chosen (part number, Nyquist region for analog input frequencies).

    What is your sampling rate and Nyquist region of interest? What are other configuration details such as DDC option, LMFS of JESD interface, NCO frequency, etc you are interested in?

    Regards,

    Sourabh

  • That's what I thought. We will be operating at multiple different modes. I'll use this as a reference to create the required initializations.

    Thank you,

    Robbie