Cypress USB 3.0 to RGB888 parallel 24 bit output

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

cross mob
BrKr_4633706
Level 1
Level 1
First like received

I'm want to use the Cypress chipset for converting USB 3.0 to a parallel 24 bit RGB888 format. What chip would be best? Can the FX3 support this application? I only see examples 8/16/32 bit outputs. And the examples I see for CX3 are taking an input of RGB888 to output over USB. Do either of these chips meet my needs?

I'm trying to drive a display using a USB 3.0 input, the display takes 24 parallel lines input for RGB data.

Also I'm a noob, so thanks in advance for your help.

0 Likes
1 Solution

Hello,

Yes, once you have the driver ready for sending the image/video data from host to FX3, you can develop a GPIF interface for communicating with DLPC3435. You can make use of the interface timings that you shared in reply 4 and correspondingly generate signals from FX3. This can be done directly without the need for an FPGA. We do not have a reference project for the same as of now.

Please refer to the documents found in the following location in the SDK installation path and develop the state machine for the same.

C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\doc\GPIFII_Designer

Note: The path mentioned above depends on the installation path of FX3 SDK.

If you have any more doubt, please feel free to ask.

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna

View solution in original post

0 Likes
10 Replies
JayakrishnaT_76
Moderator
Moderator
Moderator
First question asked 1000 replies posted 750 replies posted

Hello,

We do not have a dedicated chip or example project for your application. It can be done by making use of an FX3 and an external FPGA so that the data transfer takes place in the following sequence:

PC -> FX3( USB Port) -> FX3 (P Port) -> FPGA -> Display.

That is, the data that comes from host need to be transferred through P Port of FX3 to an external FPGA. The FPGA need to be configured in such a way that it reads data from P Port and outputs data to the display unit thereby making a proper interface with the display unit. As said before, we dont have an example project as of now for this. You can try implementing this suggestion.

We have an application note AN65974 which describes how to transfer data from USB port to P port when FX3 is configured as a slave device. This can be used as the interface between FPGA and FX3. The link to the application note is given below:

https://www.cypress.com/file/136056/download

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna

Hello,

Can you explain more why the FPGA is needed?

The chip I'm trying to drive can take other formats - the data but could be a 16 data wire RGB565, 16 data wire YCbCr565, 8 data wire RGB888 serial, 8 data wire YCbCr888 serial, or 8 data wire YCbCr 4:2:2 serial.

It also needs a VSYNC, HSYNC, DataEnable, and PCLK in addition to the data bus.

Could I use the FX3 16 bit data bus and add these driver signals without the need for an FPGA?

Thank you for your response.

Hello,

In your previous response, you mentioned about the chip that you are going to drive with FX3. What does that chip do? Is it like the chip accepts each pixel data from FX3 (say 16 bits parallel data), FV,LV,Data Enable and PCLK and provide it to the display unit? Does this chip accept one pixel at a time?

Also, please provide the interface timings for this chip.

Best Regards,

Jayakrishna 

Best Regards,
Jayakrishna
0 Likes

Hello,

Yes this is a DLP display controller chip that accepts one pixel at a time. The part number is DLPC3435. This chip controls the display unit (digital micro-mirror device and LEDs).

pastedImage_0.png

pastedImage_1.png

Hello,

Please let me know how are you sending the data from Host to FX3? Which driver you are using for this project? Also please let me know what is the data you are trying to send to FX3.

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna
0 Likes

Hello,

The host side is still in development. We are using a processor running Petalinux, does Cypress have drivers for Linux or would a custom driver be required?

The Linux host will send the image and video data to the cypress FX3.

Thank you.

0 Likes

Hello,

Cypress provides driver for sending files from PC to FX3. This is not particularly meant for sending images or video. For sending images and videos, you will have to develop your own custom drivers.

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna
0 Likes

Ok, good to know thanks.

So once we have the driver for sending images/video from the host to FX3, will it be possible to develop a GPIF interface for sending the data and the VSYNC, HSYNC, DataEnable, PCLK signals? So we could directly connect the FX3 to the DLPC3435, rather than needing an FPGA in between the FX3 and DLPC3435?

0 Likes

Hello,

Yes, once you have the driver ready for sending the image/video data from host to FX3, you can develop a GPIF interface for communicating with DLPC3435. You can make use of the interface timings that you shared in reply 4 and correspondingly generate signals from FX3. This can be done directly without the need for an FPGA. We do not have a reference project for the same as of now.

Please refer to the documents found in the following location in the SDK installation path and develop the state machine for the same.

C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\doc\GPIFII_Designer

Note: The path mentioned above depends on the installation path of FX3 SDK.

If you have any more doubt, please feel free to ask.

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna
0 Likes

Great, thank you!

0 Likes