18-12-2012, 02:28 PM
Image Generation, ISE 10.1 on the Digilent Spartan-3E board
Image Generation.pdf (Size: 543.61 KB / Downloads: 45)
Introduction
This lab will be an introduction on how to establish an interconnection between a LCD screen and
FPGA kit through VGA port to display stored images. The board will be a Digilent Spartan-3E starter
kit.
Objective
The objective is to implement a VGA controller in a FPGA to generate images on VGA monitors. As an
application to show this implementation a very simple encryption algorithm is written. The aim is not
to implement complex encryption algorithms or to employ high end animations but to show the user a
method to utilize VGA display ports in order to output desired video on to it.
Application
This document is used by students, who are learning FPGA design and verification.
Encryption Algorithm Overview
The encryption algorithm implemented in such a way that the colors of the original image change
depending on the three bit code entered by the user.
A predefined three bit code is set in the design. Every time the user fails to enter the right three bit code
using the sliding switches provided on the board (SW0, SW1 & SW2) the colors of the encrypted
image will change. The truth table in Table 1 depicts this function.
Signal Timing for a 60Hz, 640X480 VGA Display
CRT-based VGA displays use amplitude-modulated, moving electron beams (or cathode
rays) to display information on a phosphor-coated screen. LCDs use an array of switches
that can impose a voltage across a small amount of liquid crystal, thereby changing light permittivity
through the crystal on a pixel-by-pixel basis. Although the following description is limited to CRT
displays, LCDs have evolved to use the same signal timings as CRT displays. Consequently, the
following discussion pertains to both CRTs and LCDs.
Within a CRT display, current waveforms pass through the coils to produce magnetic fields that deflect
electron beams to transverse the display surface in a raster pattern, horizontally from left to right and
vertically from top to bottom. As shown in Figure 5, information is only displayed when the beam is
moving in the forward direction—left to right and top to bottom—and not during the time the beam
returns back to the left or top edge of the display. Much of the potential display time is therefore lost in
blanking periods when the beam is reset and stabilized to begin a new horizontal or vertical display
pass.