Altera_Forum
Honored Contributor
14 years agoHow to Implement VHDL Drawing Buffer in DE2
I'm having trouble making a drawing buffer in VHDL on the DE2.
I'm currently shooting for 640x480x8x3 bit resolution. In my current implementation I am bit-banging the VGA protocol in a 2-3-3 RGB @ 50 MHZ. So at each clock I perform a half (1/2 + 1/2 in 25 MHZ) of the read operation for each pixel. The pixel is then expanded from the 2-3-3 format into the 8-8-8 RGB output signal. At this rate I can only read (not write) and the colors are ugly. I cannot write because my memory's data signal is must constantly be fetching data to display. I saw some projects (For example zet.aluzina.org/index.php/zet_processor) using the same FPGA as me and they seem to have nice colors. Also they can write to the buffer, I can only read. The only solutions I can think of to the read-write problems are: -> use the VGA padding times to write 10% of the time and read 90% read time -> Group pixels into 2x1 blocks and have 50% writing and 50% reading I can't think of any solutions to the color problem except for making either of the two meathods four times slower. How do the pros solve these problems? Is there any way to avoid these issues? How did computers in 1993 display VGA at similar resolutions?