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: Two Different sensors simultaneously streams using virtual channel configuration

Part Number: DS90UB954-Q1
Other Parts Discussed in Thread: DS90UB933-Q1, DS90UB953-Q1, DS90UB913A-Q1

Hi,

Currently, I am using Ti954 deserializer for streaming two different sensors by using virtual channel concept.

Here I configured as follows,

ADD_I2C_REG_ARRAY(init_seq, init_seq_size, 0x4C, 0x01, _reg_delay_);  --> Rx_Port0
ADD_I2C_REG_ARRAY(init_seq, init_seq_size, 0x72, 0x00, _reg_delay_);
ADD_I2C_REG_ARRAY(init_seq, init_seq_size, 0x4C, 0x12, _reg_delay_); --> Rx_Port1
ADD_I2C_REG_ARRAY(init_seq, init_seq_size, 0x72, 0x01, _reg_delay_);

But I am getting error frames while execution. Here anything is required other than 0x72 register for streaming parallel.. Can please anyone help on this issue.

Note: Individually I can able streaming from each of sensor. 

Thanks & Regards,

Dinesh Kedar

  • Hello Dinesh,

    If you want to assign RX0 to VC0 and RX1 to VC1, then you should adjust the configuration to:

    ADD_I2C_REG_ARRAY(init_seq, init_seq_size, 0x4C, 0x01, _reg_delay_);  --> Rx_Port0
    ADD_I2C_REG_ARRAY(init_seq, init_seq_size, 0x72, 0x2B, _reg_delay_);
    ADD_I2C_REG_ARRAY(init_seq, init_seq_size, 0x4C, 0x12, _reg_delay_); --> Rx_Port1
    ADD_I2C_REG_ARRAY(init_seq, init_seq_size, 0x72, 0x6B, _reg_delay_);

    Or alternatively you can leave these registers untouched. You need to make sure not to override the RAW10_DT. Also what resolution/frame rate are these sensors using and what CSI-2 output speed and lane count is being used on the 954?

    Best Regards,

    Casey 

  • Hi Casey,

    Thanks for your immediate response.

    As per above register description, Can you please brief me, how it becomes 0x2B(Rx_Port0) and 0x6B(Rx_Port1).

    Details as below,

    Sensor 1 (Resolution) : 1600 x 1300 with 60fps

    Sensor 2  (Resolution) :  1824 x 940 with 60fps

    lane_cnt = 4

    Thanks & Regards,

    Dinesh Kedar

  • Dinesh,

    Apologies for my typo. I was thinking of register 0x70 instead of 0x72. Are your sensors DS90UB953-Q1 serializer links or DS90UB933-Q1/DS90UB913A-Q1 links? If they are 953 then 0x72 is the correct register and the settings you had are ok. If you are using DVP sensors you need to configure a different register as per my previous message. 

    For the CSI-2 output from the 954, what lane speed do you have configured? Is it 800Mbps/lane? Or higher? Also what data type are your sensors? 

    Best Regards,

    Casey 

  • Hi Casey,

    Yes, we are using DS90UB953-Q1 sterilizers only. so my configuration is correct right?  

    Sensor Datatype and lane speed as follows:

    lane speed 800Mbps/lane

    Sensor1 Datatype: CSI_DT_RAW10 (0x2B)

    Sensor2 Datatype:  CSI_DT_YUV422_8(0x1E)

    Is anything I missed other than these configurations?

    Thanks & Regards,

    Dinesh Kedar

  • Dinesh,

    Is the 800Mbps/lane the input speed going to 953s from each sensor or the output transmitter speed from the 954? I am trying to make sure that your configuration will have enough bandwidth to aggregate the two sensors based on the speed of what is coming in from each sensor and the speed you have configured for the output. The basis is here: https://training.ti.com/csi-2-aggregation-breakdown?context=1134310-1139225-1148220 

    I suspect that for this configuration you will need to use 1600Mbps/lane output speed from the 954 so ensure that there is enough aggregation bandwidth. 

    Best Regards,

    Casey 

  • Hi Casey,

       Thank you so much for your help.

        It is working for me, now i can able to streaming..

    Thanks,

    Dinesh Kedar