nbhkdz.com冰点文库

基于FPGA的VGA图像显示系统的设计与实现_图文

时间:2013-05-06

2012 年 第7 期

仪表技术与传感器
Instrument Technique and Sensor

2012 No. 7

基于 FPGA 的 VGA 图像显示系统的设计与实现

周卓然,徐道连,吕凤飞,付少华
( 重庆大学光电技术及系统教育部重点实验室,重庆市 400030)

摘要: 文中依据 VGA 接口的设计原理,提出一种基于 DE2 - 70 的 VGA 图像显示控制系统,与传统的 VGA 控制系统

相比,由于 FPGA 体积小,可重构,因此很适合小型便携式系统设备的设计,给出了 QuartusⅡ9. 1 的仿真结果。在硬件平

台上实现了 VGA 的汉字显示和彩条信号的显示。实验结果表明: 由 FPGA 作为处理器来控制 VGA 图像的和汉字的显

示,能够达到预期的效果,克服传统 VGA 控制系统的弊端。

关键词: VGA; 汉字; FPGA; QuartusⅡ9. 1

中图分类号: TP261

文献标识码: A

文章编号: 1002 - 1841( 2012) 07 - 0090 - 03

Design and Implementation of VGA Image Display System Based on FPGA

ZHOU Zhuo-ran,XU Dao-lian,LU Feng-fei,FU Shao-hua ( Key Laboratory of Optoelectronic Technology and Systems of The Education Ministry of China,
Chongqing University,Chongqing 400030,China)

Abstract: According to the principle of VGA interface design,a VAG image display control system based on DE2 - 70 was proposed. To compare with the traditional VGA control system,the small size of the FPGA,reconfigurable,so it is suitable for small portable system equipment design. The Quartus Ⅱ 9. 1 simulation results was presented. It achieved a Chinese character display and the VGA display of color bar signal on the hardware platform. The experimental results show that the FPGA as a processor to control the VGA image and character display,it can achieve the desired results,the control system can overcome the drawbacks of the traditional VGA. Key words: VGA; character; FPGA; quartusⅡ9. 1

0 引言 VGA 汉字 显 示 系 统 的 应 用 范 围 越 来 越 广 泛,但 传 统 的
VGA 字符显示方案主要是通过 VGA 专用芯片来控制 VGA 接 口来显示字符信息的,但 FPGA 在大规模嵌入式系统设计中优 势明显,如管脚资源丰富,运行速度快,可以实现大规模的系统 设计,并且使用芯片更少,可以降低成本,有利于小型化。同时 由于现代 EDA 软件的大量应用,能够方便设计人员缩短设计 周期,更方便地实现仿真[1]。文中研制了了一种基于 FPGA 的 VGA 图像显示控制系统,在 VGA 显示器上可以显示多种图像 和图像,可以代替传统的 VGA 专用芯片的功能,具有很好的应 用前景。 1 VGA 显示原理 1. 1 VGA 显示接口
计算机显示器有许多的接口标准,VGA 是一种计算机视频 传输标准,目前绝大部分的计算机与外设之间都带有 VGA 显 示接口。VGA 显示接口结构简单,性能较稳定,兼容性很强,时 序易于实现,在图像处理领域具有广泛的应用前景[2]。 1. 2 VGA 接口定义和时序控制
VGA 接口上面共有 15 条线,分为 3 组,分别用来处理输入 模拟信号和行同步线( HS) 和场同步线( VS) ,其中行同步线和 场同步线联合起来控制 VGA 的显示时序[3]。
如图 1 所示,该 VGA 接口当频率为 100 MHz 时,可以支持 的分辨率最高可达1 600 × 1 200像素。
收稿日期: 2011 - 08 - 08 收修改稿日期: 2012 - 05 - 10

其中,VGA 显示及时序信号的控制需要遵循 VGA 的工业 标准( 对显示器,分辨率需要为 640 × 480,扫描频率为 60 Hz) , 需要注意的是,在调试过程中,如果显示器不满足此标准,则显 示效果会与仿真波形出现偏差。通过 VGA_R,VGA_G,VGA_B 输出相应的控制信号到前端显示处理设备中,在 LPM_ROM 中 存储的每一 位 数 据 对 应 相 应 的 显 示 屏 上 的 像 素 点 的 亮 和 灭。 在显示器上显示汉字或者图像也就是按照汉字或图像的点阵 图向显示器上输出 1 或 0 的高低电平,从而显示出所需要的汉 字或图像[4]。
图 1 VGA 与 FPGA 接口图
图 2 为 VGA 行扫描、列扫描的时序图,其中,最终输出的 行、场同步信号必须遵循 VGA 时序标准从而产生相应的脉冲 信号驱动 VGA 接口。
图中,HSYNC 为行同步信号; VSYNC 为场同步信号; Pixel Freq 为时钟信号; DATA 为数据信号; DATA 只在图中的 Visible area 区域中才有效。

第7 期

周卓然等: 基于 FPGA 的 VGA 图像显示系统的设计与实现

91

图 2 VGA 行扫描、列扫描时序图
2 FPGA 控制 VGA 显示控制器设计 2. 1 系统硬件框图
系统的硬件实现框图如图 3 所示。所设计的系统主要有 时序信号模块、图像存储模块、用户选择模块等构成。FPGA 作 为主控制器控制 整 个 系 统 的 运 行,根 据 自 顶 向 下 的 设 计 原 则, 可以将该系统划分为以下模块: 顶层模块、VGA 控制模块、存储 功能模块、分频模块以及 RAM 读取控制模块。
图 3 系统硬件框图
系统的工作原理: 首先系统加电后,FPGA 上读出配置信 息,配置结束后,FPGA 所要显示的汉字的字模信息初始化,存 入系统的 ROM 中,时序由系统时钟产生,之后程序根据系统的 时序信息来控制 VGA 接口,输出相应的行同步、场同步、以及 RGB 颜色信息到显示器上。 2. 2 顶层模块
顶层模块主要是负责各个模块之间数据信号和控制信号 之间的连接关系,并且能接收 RAM 读取模块传来的汉字字模 的信息数据流,根据 RGB 的定义[5],规定 VGA 色彩信号中: 000 ( 黑色) ,001( 蓝色) ,010 ( 绿色) ,011 ( 青色) 、100 ( 红色) 、101 ( 红色) 、101( 紫色) 、110 ( 黄色) 、111 ( 白色) ,需要注意的是该 项目中采用的 VGA 芯片的控制 RGB 三基色每个像素信息的位 数是十位。 2. 3 时钟及 VGA 同步信号模块
该子模块主要作用是分配系统时钟到各个模块,同时能够 产生需要的 VGA 同步信号,设计的要求是使 VGA 能够产生行 同步信号和场同步信号驱动 VGA 接口。 2. 4 LPM_ROM 存储模块
将需要显示的汉字信号发送到 VGA 接口,有 2 种方法: 一 是对像素进行计数后,将计数数值( 像素信息) 直接赋值给 RGB ( 颜色信号) ; 二是使用 FPGA 内部的存储资源来存储显示内容 的像素信息,之后,经过程序将显示信号发送到 VGA 接口,实 现汉字、图形、图像的显示。文中采用第二种方法,这样可以消

除第一种方法不便于控制,且一旦出错,不易修改的缺陷。 2. 5 汉字显示模式及 MATLAB 处理像素信息
系统所使用的开发工具是 QuartusⅡ9. 1,其内部集成了 IP core 的生成软件。使用 IP 核设计能够避免重复设计,又可以提 高工作效率。这些 IP 核是根据 Altera 的 FPGA 器件的特点和 结构设计的,直接运用 Altera FPGA 底层硬件语言来描述。
根据项目的要求,选择了单端口的 ROM 来存储汉字的图 像信息,项目大概需要显示 50 ~ 80 个汉字,文中以显示 4 个汉 字为例,将所用的 4 个汉字定制成 1 个 LPM - ROM,且 4 个汉 字位 于 一 行,根 据 DE2—70 开 发 板 内 部 VGA 的 控 制 芯 片 ADV7123 的特性,所以 RGB 颜色信号的分量每位需要 10 位数 据,所以每个 LPM—ROM 的数据宽度是 64 位。显示的汉字是 16 × 16 点阵,所以 LPM—ROM 的数据深度是 16 位。
在定制 LPM—ROM 时,要显示汉字,必须首先载入用字模 生成软件生成的像素信息,系统中,应用了 Matlab 将 16 × 16 点 阵汉字的字模像素信息生成初始化文件 MIF。也就是首先由 字模软件生成相应汉字的字模,再将字模信息导入 MIF 文件。 MATLAB 程序主要是利用
fid = fopen( 'D: \ hanzi. mif','wt') ; fprintf( fid,’% d: % s; % s’,a( : ,ii) ,char( 13,10) ’) 语句来 将字模像素信息存储到到 MIF 文件中。其中 hanzi. mif 文件就 是需要导入的初始化文件,下面给出实现的几个汉字的 MIF 文 件信息:
WIDTH = 64; 数据宽度 DEPTH = 16; 数据深度 ADDRESS_RADIX = HEX; DATA_RADIX = HEX; CONTENT BEGIN 0: 0010010001002208 ; 1: 00F8008001001108 ; 2: 3F003FFE01001110 ; 3: 0020010020000100 ; 4: FFFE208001007FFE ; 5: 01002080FFFE4002; 6: 1FF0208001008004; 7: 11102FFC01001FE0; 8: 1FF0208002800040; 9: 1110214002800180; a: 1FF021400440FFFE; b: 0100222004400100 ; c: 3FF8422008200100; d: 0100441010100100; e: FFFE880820080500; f: 00001006C0060200; END;
经过试验验证,汉字显示的效果很好。 3 实验结果 3. 1 实验开发工具
( 1) 仿真软件: QuartusⅡ9. 1; ( 2) 开发语言: 硬件描述语言 Verilog; ( 3) 实验开发板: Altera DE2 - 70。

92

Instrument Technique and Sensor

3. 2 VGA 同步信号的仿真 FPGA 提供的外部时钟是 50 MHz,而 VGA 显示需要的时
钟 25. 175 MHz,所以在设计上首先对外部时钟进行二分频,得 到 25 MHz 的时钟频率,这个频率与 25. 175 MHz 很接近,以该 时钟为标准,每行为 800 个时钟周期,每场为 525 行( 即是 800 × 525 个时钟周期) [6],行同步、场同步信号得到的仿真结果如 图 4 所示。其中 HS 为行同步信号,R、G、B 为三基色信号,VS 为场同步信号。

Jul. 2012

图 4 时序仿真图
利用 QuartusⅡ9. 1 内部的仿真软件对系统进行仿真,得到 的仿真结果如图 4 所示。
通过仿真图 可 以 观 察 出 blank、vga _ clk、vga _ sync 是 控 制 VGA 芯片 ADV7123 的控制信号,行同步信号( hsync) 、场同步 信号( vsync) 有效值都为‘1’,并且行与场都处于有效区域 valid 内( 由水平有效区域的宽度和垂直有效区域的宽度逻辑与得 到) 时,输出的有效区域 valid 的有效值为‘1’,此时可以把汉字 的信息输出,从仿真时序图可以观察出,当满足输出的条件时, 可以从定制的 ROM 中调用存储的汉字信息在时序图中用 romdata 表示存储的汉字信息。该项目采用的是蓝底白字的显示, 蓝底 RGB = 001,白字 RGB = 111 表示,由仿真图 vga_b 可知其 值全部为 1023,表示的十位为‘1111111111’。而 vga_r 和 vga_g 只有在汉字信息输出时,输出才是十位的‘1’,十进制表示就是 1023,否则输出的是十位的‘0’,从而实现蓝底白字的显示。 3. 3 汉字和彩条显示效果
利用 FPGA 内部的 LPM - ROM 来存储汉字的字模像素信 息,通 过 程 序 读 取 信 息 后,将 其 传 送 至 VGA 接 口,项 目 定 制 LPM - ROM 来存储汉字点阵信息,可以显示多个汉字。项目显 示了“重”、“庆”、“大”,“学”4 个字,得到的效果如图 5、图 6、图 7 所示,实验结果达到了预想的要求。如果想显示更多的汉字, 可以定制更多的 LPM - ROM,该项目中的汉字更改方便,同时 也可以调整汉字显示的位置。

4 结束语 用 FPGA 来控制 VGA 接口,改变传统的 VGA 图像显示方
法 的 缺 点,如 需 要 控 制 器 不 断 的 对 所 传 输 的 数 据 信 号 进 行 控 制,造成了资源浪费。而采用 FPGA 设计的 VGA 显示控制器, 不但可以使汉字的显示可以脱离微机的控制,同时减小了系统 的体积,可移植型好,系统升级也非常方便,对于各种便携式的 设备、小型嵌入式系统的设计和实现具有重要的工程意义。 参考文献:
[1] 王亮,李正,宁婷婷,等. VGA 汉字显示的 FPGA 设计与实现. 计算 机工程与设计 2009,30( 2) : 275 - 281.
[2] 谢磊. VGA 图像控制器的设计与实现. 新乡学院学报,自然科学 版,2009,26( 6) : 51 - 53.
[3] 王绍雷,赵进创. 基于 FPGA 的图像边缘检测系统的设计. 电子技 术应用,2007( 6) : 40 - 42.
[4] 袁堂青,张玉璘. 基于 FPGA 的 VGA 汉字显示系统设计与实现. 济 南大学学报,自然科学版,2011,25( 1) : 37 - 39.
[5] 陈继焱,何东升. 基于 FPGA 的高分辨率雷达图像采集系统. 仪表 技术与传感器,2007( 9) : 41 - 43.
[6] 李国刚,余俊,凌朝懂. 基于 FPGA 和 VGA 的图形控制器的实现方 法. 信息技术,2006( 7) : 25 - 27.
作者简介: 周卓然( 1988—) ,硕士研究生,主要研究方向为测控技术、嵌 入式系统等。E-mail: 529506708@ qq. com


基于FPGA的VGA图像显示系统的设计与实现_图文.pdf

基于FPGA的VGA图像显示系统的设计与实现 - 2012年第7期 仪表技术与传

基于FPGA的VGA图像显示系统的设计与实现_周卓然.pdf

基于FPGA的VGA图像显示系统的设计与实现_周卓然 - 2012 年第7 期

基于FPGA的VGA图像显示系统的设计与实现.pdf

基于FPGA的VGA图像显示系统的设计与实现 - 文中依据VGA接口的设计原理,

基于FPGA的VGA图像显示系统的设计.pdf

基于FPGA的VGA图像显示系统的设计 - 2015 年 8 月 15 日第 3

VGA显示的FPGA设计与实现_图文.pdf

隔行扫描的方式实现图像显示, 由VGA控制模块产生的水平同步信号和垂直同步 信号...设计FPGA内部 电路原理结构如图3所示.系统采用50 M有源晶振, 经过分频得到25...

基于FPGA的VGA接口显示的设计与实现...doc

基于FPGA的VGA接口显示的设计与实现.. - 编号 基于 FPGA 的 VGA 接口显示的设计与实现 Design and implementation of VGA interface ...

基于FPGA的VGA图像动态显示控制器的设计与实现.pdf

基于FPGA的VGA图像动态显示控制器的设计与实现 - lParts&a

FPGA平台的VGA图像显示的设计与实现.pdf

FPGA平台的VGA图像显示的设计与实现 - 平板显示 责任编辑:万 FPGA平台的VGA图像显示的设计与实现 Implementation of VGA Image Display Ba...

杜林奇:基于FPGA的VGA显示接口的设计与实现.doc

杜林奇:基于FPGA的VGA显示接口的设计与实现 - VGA (视频图形阵列)作为一种标准的显示接口得到广泛的应用。本文介绍了VGA的显示原理,使用FPGA来控制VGA显示的思路与...

基于FPGA的VGA图像显示系统的设计与实现.pdf

基于FPGA的VGA图像显示系统的设计与实现 - 2 2年 01 仪表技术与传感

基于FPGA的VGA图像动态显示控制器的设计与实现_廖永清.pdf

基于FPGA的VGA图像动态显示控制器的设计与实现_廖永清 - Parts &a

基于FPGA的VGA图像控制器的设计与实现.pdf

基于FPGA的VGA图像控制 器在嵌入式系统的图像处理中有着广泛的应用前 景。 常见的彩色显示器一般由CRT(阴极射线管) 在基于FPGA的大规模嵌入式系统设计中,为 ...

基于FPGA的VGA图像显示控制器设计.doc

基于FPGA的VGA图像显示控制器设计 - 可编程逻辑器件综合实验报告 基于 FPGA 的 VGA 图像显示控制器设计 第 1页 可编程逻辑器件综合实验报告 一....

基于FPGA的VGA图像显示系统的设计.pdf

16 95 基于 FPGA 的 VGA 图像显示系统的设计杜宗展 1,王振河 2

基于FPGA的VGA图像控制器的设计与实现.pdf

基于FPGA的VGA图像控制器的设计与实现 - 第 26 卷 第 6 期 新乡学

基于FPGA的VGA图像显示控制器设计毕业论文.doc

基于FPGA的VGA图像显示控制器设计毕业论文 - 可编程逻辑器件综合实验报告 基于 FPGA 的 VGA 图像显示控制器设计 第 1页 可编程逻辑器件综合实验报告 一.实验...

课程设计-基于fpga的vga图形显示大学论文.doc

电子信息工程 学生姓名 同组姓名 指导教师 时间 学号 1 基于 FPGA 的 VGA 图形显示 摘要: 本次的题目是基于 FPGA 的 VGA 图形显示,实现 VGA 图像显示与控制...

基于FPGA的VGA显示模块设计_图文.pdf

使用EDA软件工具平台VHDL进行 设计,利用可编程器件FPGA/CPLD实现的VGA显示 控制...电子束扫描一幅屏幕图像上的各个点的过程称为 屏幕扫描。现在显示器都是通过...

基于fpga的vga和hdmi视频拼接系统设计__本科毕业设计论....doc

基于fpga的vga和hdmi视频拼接系统设计__本科毕业设计论文 - 基于 FPGA 的 VGA 和 HDMI 视频拼接系统设计 摘要 随着图像显示技术的快速发展,图像用户界面和人机交互...

基于FPGA的VGA控制模块设计_图文.pdf

四川理工学院电子与信息工程系,四川自贡643000) 摘要: 论述了基于FPGA(FieldProgrammableGateArray)的实时图像处理系统VGAto (VideoGraphicsArray)显示控制模块的设计...