1、 电子信息工程专业综合设计(报告) (课 程 设 计) 题目题目 基于基于 FPGAFPGA 的的 VGAVGA 图像显示设计图像显示设计 (图像旋转、放大、单步步进移动和屏保移动) 二级学院 电子信息与自动化学院 专 业 电子信息工程 班 级 学生姓名 学 号 指导教师 时 间 2011.12.26-2012.01.13 基于 FPGA 的 VGA 图像显示设计及应用 摘摘 要要:VGA(视频图形阵列)作为一种标准的显示接口得到广泛的应用。本文依 据 VGA 显示原理,介绍了利用 FPGA 实现对 VGA 图形控制器 VHDL 设计方法。详 细描述了各硬件模块的工作原理及实现途径, 并给出了
2、软件设计思路及部分代码。 关键词关键词:VGA;FPGA;VHDL 0. 0. 引言引言 随着可编程逻辑器件的不断发展及其价格的不断下降,EDA 开发软件的不断 完善, 可编程逻辑设计的应用优势逐渐显示出来, 特别是大规模可编程器件。 而 FPGA 具有功能强大,开发过程投资小、周期短等特点,成为当今硬件设计的首 选方式之一。VGA(视频图形阵列)作为一种标准的显示接口得到广泛地应用。 利用 FPGA 芯片和 EDA 设计方法,可以灵活地根据用户需求,设计出针对性强 的 VGA 显示控制器,不仅降低了生产成本也可以快速地对产品进行升级换代。 本文设计采用 Quartus II 9.0 软件工具
3、,并以 Altera 公司的 Cyclone 系 列 FPGA 的器件EP1C12F324C8为主实现硬件平台的设计。 1 1 方案设计及工作原理方案设计及工作原理 1.1 方案设计 采用模块化设计方法,我们对 VGA 图形控制器按功能进行层次划分。本设 计的 VGA 控制器主要由以下模块组成:VGA 时序控制模块、ROM 内存地址控制模 块、RO 内存模块、按键扫描控制模块。如图 1 所示。 图 1.方案模块框图 1.2 工作原理 VGA时序控制 模块 ROM 内存地址 控制模块 ROM 按键扫描 控制模块 50MHz 5Hz addr data 首坐标 xx、yy VGA 接口 RGB H
4、S、VS D/A CRT 根据 VGA 的显示协议, 可以选择不同的显示分辨率。 本设计选择的是 800*600 的分辨率。根据相应协议,在“VGA 时序控制模块”对行扫描信号 HS 和场扫描 信号 VS 进行相应的时序控制 (具体控制详细信息见 “VGA 驱动原理” 资料文档) 。 “ROM 内存地址控制模块”根据“按键扫描控制模块”获得的图片显示首坐 标 xx、yy 信息和“VGA 时序控制模块”传送过来的 hcnt(列计数器值)、vcnt(行 计数器值)及相关控制信号计算出正确的内存地址,从 rom 中取出所需要的像素 点的三基色数据。 本设计的功能实现包括:图像旋转、放大、单步步进移动和屏保移动功能。 其中图像的旋转运用了矩阵的转置原理, 通过对图像的内存存储地址矩阵进行转 置运算获得图像 90旋转的效果。图像的放大是通过将包括原像素点在内,相 邻的 4 个点填写相同的颜色来实现的。 2 2 模块设