cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
ivanfan
Adventurer
Adventurer
657 Views
Registered: ‎06-05-2019

Ony DL0 of D-Phy work in HS_MODE in CSI RX subsystem example design

I'm using the MIPI CSI-2 RX subsystem on the Xilinx ZCU102 board with my own camera sensor. The sensor sends 12bit raw image with 1280x720 resolution at 66 fps in two mipi data line.

The problem I meet was posted in the follow link D-PHY module can output signal but no video_out in mipi csi example design   And now I found the reason might be that I set two active line but only dataline0 works in HS_MODE and dataline1 is fixed in LP_MODE. Would the error setting of line rate make such problem happen?

The data sheet of the sensor I use does not mention the output rate of the sensor. I do not know how much the line rate should be set in the config of D-Phy. Can we calculate it according to the resolution and fps of the sensor?

Any help regarding the issue will be appreciated. The status of registers of D-Phy are shown as follow:

 
微信截图_20191022220308.png

微信截图_20191023183825.png

Tags (2)
0 Kudos
6 Replies
karnanl
Xilinx Employee
Xilinx Employee
636 Views
Registered: ‎03-30-2016

Hello @ivanfan 

> Can we calculate it according to the resolution and fps of the sensor?

No, we cannot. This is not possible.

>The data sheet of the sensor I use does not mention the output rate of the sensor. I do not know how much the line rate should be set in the config of D-PHY

Hmm, I would suggest to contact the distributor of the sensor for help. ( Perhaps user guide/datasheet may also help )

BTW, Do you have an oscilloscope on your lab ? Could you please take the waveform of data_lane0 and data_lane1 ?
I am suspecting that your data_lane1 is actually sending LP-11.

Thanks & regards
Leo


------------------------------------------------------------------------------------------------

Don’t forget to reply, kudo, and accept as solution.

If starting with Versal take a look at our Versal Design Process Hub and our
Versal Blogs

------------------------------------------------------------------------------------------------
0 Kudos
ivanfan
Adventurer
Adventurer
570 Views
Registered: ‎06-05-2019

The waveforms of data_lane0 and data_lane1 in oscilloscope

DataLine0P

微信图片_20191031212508.jpg

DataLine1P

微信图片_20191031212505.jpg

karnanl
Xilinx Employee
Xilinx Employee
549 Views
Registered: ‎03-30-2016

Hello @ivanfan 

Thank you for sharing the waveform capture.

My understanding is either :
a. HS signal swing level on data_lane_1 is too small. ( damaged sensor ?! )
b. Your sensor is only sending one lane. ( If this is the case, I would expect that data_lane_1 will be in LP-11. Not toggling HS<->LP )

IVAN_no_data_from_sensor.png


(1) Would it possible to use another sensor ? ( Do you have another sensor with the same model )
(2) Are you sure sensor is sending MIPI CSI-2 with 2lane configuration ? ( Could you please check with sensor maker/distributor ? )

Regards
Leo


------------------------------------------------------------------------------------------------

Don’t forget to reply, kudo, and accept as solution.

If starting with Versal take a look at our Versal Design Process Hub and our
Versal Blogs

------------------------------------------------------------------------------------------------
ivanfan
Adventurer
Adventurer
533 Views
Registered: ‎06-05-2019

My camera sensor is connected to the fmc interface via the DuPont line as shown below.

微信图片_20191101114318.jpg

What surprised me is that after the camera register configuration is completed, I pull out the line of clk and reconnect it, the DL1 can receive packet and work in HS_MODE. And I can get the image output from HDMI.

微信截图_20191101114120.png微信图片_20191101114222.jpg

Why does the DL1 work only after I reconnect the clk line? Is this related to the initialization process of DPHY? If I don't want to reconnect the clk line every time I launch the program, what should I do?

0 Kudos
karnanl
Xilinx Employee
Xilinx Employee
347 Views
Registered: ‎03-30-2016

Hello @ivanfan 

> Why does the DL1 work only after I reconnect the clk line? Is this related to the initialization process of DPHY? If I don't want to reconnect the clk line every time I launch the program, what should I do?

This behavior is not expected. DL1 should work without connect/reconnect clock line.

BTW, Do you connect the GND of both boards ? If not could you please try to connect the GND of your boards ?
Perhaps Joe debug experience can be a useful information for you too.
https://forums.xilinx.com/t5/Video/DPHY-RX-clock-debug/m-p/1066522

Thanks & regards
Leo


------------------------------------------------------------------------------------------------

Don’t forget to reply, kudo, and accept as solution.

If starting with Versal take a look at our Versal Design Process Hub and our
Versal Blogs

------------------------------------------------------------------------------------------------
0 Kudos
bpatil
Xilinx Employee
Xilinx Employee
326 Views
Registered: ‎03-07-2018

Hello @ivanfan 

According to me, using dupont wires for interfacing High speed interface as such as MIPI is not at all good idea. Eventhough wire quality is good; sometimes due to multiple insertion/ejection of dupont connectors and movement of wires can degrade quality of signal. I believe you should find for more rigid way (like small breakout board which can be connected FMC card) to connect MIPI camera to your FPGA board.

Regards,
Bhushan

-------------------------------------------------------------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
-------------------------------------------------------------------------------------------------------------------------------------------------