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.

DS90UB954-Q1: CSI0_THS_PREP&CSI0_THS_ZERO parameter

Part Number: DS90UB954-Q1

Hi team,

We now have a project on DS90UB954,the chip at the next level needs to be configured with these parameters to decode correctly.The chip in the next level has a range requirement for these two parameters, so we want to reconfigure it.

Now,we have three questions to ask:

1.What are the units of device DS90UB954 register CSI0_THS_PREP(Indirect Address Page 0x00; Register 0x44) &CSI0_THS_ZERO(Indirect Address Page 0x00; Register 0x45)?

2.If i set the register CSI0_THS_PREP  =0x86/CSI0_THS_ZERO = 0x8c, what is the actual Ths-prep/Ths-zero output?

3.Are there any points to note when setting CSI0_THS_PREP & CSI0_THS_ZERO or need to cooperate with setting other registers?

Best regards,

Alec Li

  • Hello Alec,

    Before I say something incorrect allow me to verify the timing parameters you are requesting.  With that said these registers are usually set automatically, is there a specific reason you are looking to change these values?  Is it to meet the requirements of another device?

    Regards,

    Nick

  • Hi Nick,

    Thanks for your reply. The next decoding chip of DS90UB954 needs to be configured with these parameters, and these parameters have range requirements, so we want to configure these two registers.

    Could you please tell us the answer first? If there is any problem, we can revise it back.

    Best regards,

    Alec Li

  • Hi Alec,

    Allow me to verify the exact functionality of these registers. I will get back to once I know more.

    Regards,

    Nick

  • Hi Alec,

    Sorry for the delay here, my current understanding is that these registers are actually used to set certain analog timers internal to the device and therefore do not map linearly to the CSI timing.  However a good rule of thumb is that the 1 timing unit is typically 1/(CSI-2_clock/8).  

    1) Units depend on CSI-2 clock speed and are roughly equivalent to 1/(CSI-2_Clock_Speed/8)

    2) CSI0_THS_PREP = 0x86: Assuming 400Mbps/lane we can calculate the time would be 134 * (1/(400,000,000/8)) where 134 is 0x86 in decimal.  

    3) These registers are affecting analog timing and are not perfectly calibrated which is why they are usually set to be populated automatically.  However with that being said if they need to be adjusted it might be best to adjust them slowly while measuring THS-Prep and THS-Stop to ensure they are what you need them to be.

    I apologize there wasn't a more definitive answer here but these registers are typically not meant to be used.

    Regards,

    Nick