Graphics Co-Processor

Hi guys,
I am wanting to build a simple TV display device, interface with PAL composite.

I realise there is a library (aptly named TVOut) for displaying to TV with a handful of components, I have concerns that this will take away a lot of processing power and increase coding difficulty for other application tasks.

I am wondering if graphics co-processors (or something that does the same job that I don't know about yet) are still available and could be used with the arduino or standalone AVR?

The ideal features I would want is:

  • Ability to provide predefined (ideally programmable) tiles or sprites to be used for english language characters or graphics
  • Able to position these at arbitrary locations on screen
  • Simple interface from the arduino side which then has the coprocessor do all of the more difficult time/sync/actual display (I write to a buffer)

Ideally this is an IC rather than a completed shield that I could later build into a circuit on a custom PCB.
Part friendly sources for Australia a bonus (Element 14 is our version of Farnell).

Thanks for any advice you can give that gets me further towards my goal :slight_smile:

People report that when using the TVout library there is substantial CPU time left over for other tasks. I haven't seen a timing breakdown, though.

You could have one Arduino do the video, and another sending it display commands. Or, consider various commercially available video overlay modules, like those from Decade DecEng

  • You could use a second AVR as your video co-processor.
  • There are a number of FPGA-based projects that implement something like this. these usually show up as a shield. PAL output is getting rare (as is NTSC) One example: Gameduino shield : ID 384 : $53.00 : Adafruit Industries, Unique & fun DIY electronics and kits
  • There are some “video overlay” chips, like the Maxim MAX7456 Those might be bendable to your needs.
  • There are some specialty chips aimed at smart panel displays. I don’t know offhand whether they can be bent to support PAL-like formats. http://www.ftdichip.com/EVE/EVEProducts.htm is an example.
  • Some microcontrollers specifically advertise as having additional video-generation capabilities. There’s the Parallax Propeller and a series of Microchip PICs (probably others.) Also, some of the low-cost ARM chips have been programmed to do software video (like TVOut), but have somewhat better performance, DMA, and more memory than an AVR.

jremington:
People report that when using the TVout library there is substantial CPU time left over for other tasks.

I'll second that. Here I am using a Nano 3 16MHz running TV-out and running Conway's Game Of Life at a pretty good speed, showing there is considerable processing speed still available.

Thanks for the suggestions guys, I think the EVE range looks close to what I'm chasing (possibly more features than I need).

Having thought about this some more I'm not sure why I limited the output requirement to composite PAL. Connection to a modern TV may have been more accurate.

EVE seems mostly aimed at "bare" TFT LCD display panels, rather than standard video formats. It's a bit disturbing that I don't see prominent App notes for interfacing EVE to NTSC, PAL, VGA, or HDMI :frowning:
FTDI's documentation is generally weak (from trying to work with their Vinculum-II chip.) They publish glowing specs, and useful (?) examples, but fall down when it comes to actually explaining basic operation. Sigh.