CPLD Buffer Question

Discussion in 'Embedded Systems and Microcontrollers' started by bretesq, May 2, 2008.

  1. bretesq

    Thread Starter New Member

    Sep 24, 2006
    Hi all,

    I wanted to ask a question if I was taking this in the right direction before I actually start getting to the nitty gritty with it.

    I am trying to take in a VGA signal which has gone through an ADC and spit the signal back to an ARM uP which hands it off via USB. Problem is, the video signal is way too quick (~80Mhz) for the uP to even handle... My idea was to use a CPLD to buffer the video data, the micro can then fetch it from the CPLD as fast as it could reliably do so.

    Does this sound like a worthwhile approach? or does anyone have any other ideas?

    Thanks a lo!
  2. Caveman

    Senior Member

    Apr 15, 2008
    No matter if the CPLD buffers the data or not, in order to not lose data, you have to get it through the micro to the USB at that rate.

    I'm not sure what you are doing will work with USB anyway. Isn't USB 2.0's max rate 480Mbits/sec? If you were able to get that full bandwidth (which you won't), you would only be able to transmit 6-bit data per cycle through the USB.
  3. bretesq

    Thread Starter New Member

    Sep 24, 2006
    Caveman, thanks for the reply..

    I am not trying to get the full data through. I'm going to be truncating the frame rate and resolution down enough to get the data through. Hopefully I can also use compression to make it more manageable.
  4. n9352527

    AAC Fanatic!

    Oct 14, 2005
    These would require more processing power, which the micro could not handle. An FPGA with internally implemented USB core, plus a micro core if required, would be more suitable.
  5. scubasteve_911

    AAC Fanatic!

    Dec 27, 2007
    CPLDs also do not have a lot of RAM resources, so you must use an external RAM and glue logic it with the CPLD.