
This is the VGA output shown on a monitor. ( Click on the image to see the enlarge version )
Description:
This project generates real-time a 3-bit colour VGA screen from a textbuffer.
While using a PC 8x8 character ROM to translate the text buffer data to a image.
A Xilinx Spartan 3E is used for this project.
I used the internal memory block as textbuffer.
In the text buffer are the colours and text data stored.
This buffer is filled with pre-programmed data that was generated in the core generator.
You can fill the buffer via the serial port (9600 baud).
The data you have to send is <8-bit character data><8-bit colour data><8-bit character data><8-bit colour data>...
The buffer fills at the begin of the memory. When a timeout (2 sec) occurs the textbuffer counter resets.
VGA Encoder will generate the Hsync and Vsync signals and also X and Y coordinates.
The Controller converts XY data to a Text Buffer location.
Text Buffer copies his data to the Character ROM.
The Character ROM converts the Character data to a pixel and send the pixel to the VGA encoder.
Block Diagram:

Here a schematic overview how the modules work together.
Status:
- Jitter/Timing Timing is not right.
- Add Mouse PS2 Driver Convert 1 character as a mouse cursor.
Source Code:
You can download the verilog source code here
Kit Connected:
|
|