CX3: Any way to transfer 4K image data from DMA buffer to Host App through USB2.0 port without changing image quality?

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

cross mob
Anonymous
Not applicable

Hello,

We're using CX3 to transfer data from image sensor to Host app.

Structure: Image sensor - CX3 - Host App (USB2.0 port)

Image sensor: Raw 10, 4000 x 3000 x30fps -> streaming to CX3

I/F: MIPI

It's ok to drop the frame rate but image data should be received by Host App as it's quality (4000x3000)

USB 2.0 bandwidth is low so we couldn't received the image by Host App (the DMA buffer seem to be overwritten)

[Question] Any way to configure DMA buffer of CX3 to transfer this 4K image data to Host App through USB2.0 port without changing image quality?

Regards,

0 Likes
1 Solution
Anonymous
Not applicable

Hi,

CX3 can give a maximum throughput of 2.4Gbps. Now 4K, RAW 10 can be streamed from CX3 at 20fps. Refer CX3 TRM for more details. But I would advise you to start with transmitting 10/15fps and gradually move to 20fps. You can use the CX3 configuration tool available with FX3 SDK to generate the required code.

Regards,

Savan

View solution in original post

0 Likes
2 Replies
Anonymous
Not applicable

It seems that the MIPI readout is too fast, and the CX3 internal FIFO is not big enough to contain all the de-serialized bytes from MIPI. The frame rate definitely matters but the MIPI readout speed is probably more important. I would recommend looking into 1) reducing the frame rate to one per second, 2) reducing the MIPI transmitter pixel clock rate and ADC conversion rate. These usually can be done easily by manipulating certain register bits on your image sensor. However, this would possibly incur a decrease on image quality, since the pixel storage will accumulate more noise until it is read out.

0 Likes
Anonymous
Not applicable

Hi,

CX3 can give a maximum throughput of 2.4Gbps. Now 4K, RAW 10 can be streamed from CX3 at 20fps. Refer CX3 TRM for more details. But I would advise you to start with transmitting 10/15fps and gradually move to 20fps. You can use the CX3 configuration tool available with FX3 SDK to generate the required code.

Regards,

Savan

0 Likes