CX3 Can my firmware work at high speed(2.0)?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
roji_4156651
Level 2
Level 2
First like given

My firmware works at super speed perfectly. Now I want to change to high speed for some reason. But I found that host software cannot receive any data.The CX3 firmware always reports DMA_RESET_EVENT. And I found that  CyU3PDmaMultiChannelCommitBufer reports error 0x41(CY_U3P_ERROR_INVALID_SEQUENCE).

The following figure is my sensor configuration in CX3 configuration tool. Can any guy tell me why it report such error? Can the following sensor configuration work at high speed?

format.jpg

0 Likes
1 Solution

Hello Robin,

As you are having sensor output of RAW12 but the GPIF ibus width is 16 bits. The remaining 4 bits will be padded( either 0 or 1). If in your case the padding of 4 bits is done, the frame size wll increase by 4 bits /pixel. so frame size will be h_active *v_active*fps*2(bytes/pixel or 16 bits/pixel).

Yes, if the input bandwidth is more than what USB 2.0 can consume commit buffer, error 0x41(CY_U3P_ERROR_INVALID_SEQUENCE will occur.

so the video bandwidth (input from sensor) should be around 25 - 30 MBps

Regards,

Rashi

Regards,
Rashi

View solution in original post

0 Likes
4 Replies
roji_4156651
Level 2
Level 2
First like given

After change to USB2.0,the firmware frequently reports 0x41(CY_U3P_ERROR_INVALID_SEQUENCE). So increasing the DMA buffer or adding the code concerned in the KBA does not work.

0 Likes

Hello Robin,

Please refer to this KBA  for reason of this error Invalid Sequence Error in Multi-Channel Commit Buffer - KBA218830

Practically USB 2.0  can support bandwidth of 25-30 MBps, the input video bandwidth from sensor in your case is 640*960*30*2(bytes/pixel) = ~ 36 MBps So you can either reduce the frames per second or video resolution foe seamless streaming in USB 2.0

Regards,

Rashi

Regards,
Rashi
0 Likes

For my sensor,the pixel clock is 45MHz and the sensor MIPI pixel output is always RAW12. These parameters are fixed. That means the sensor MIPI output bandwidth is always 45M*12=540Mbps=67MBps no matter what the resolution is. Does CX3 have such constraint that the MIPI bandwidth must be less than USB bandwidth? If CX3 does not have such constraint, I think I can reduce the resolution and try USB2.0. Could you confirm this?

0 Likes

Hello Robin,

As you are having sensor output of RAW12 but the GPIF ibus width is 16 bits. The remaining 4 bits will be padded( either 0 or 1). If in your case the padding of 4 bits is done, the frame size wll increase by 4 bits /pixel. so frame size will be h_active *v_active*fps*2(bytes/pixel or 16 bits/pixel).

Yes, if the input bandwidth is more than what USB 2.0 can consume commit buffer, error 0x41(CY_U3P_ERROR_INVALID_SEQUENCE will occur.

so the video bandwidth (input from sensor) should be around 25 - 30 MBps

Regards,

Rashi

Regards,
Rashi
0 Likes