nbhkdz.com冰点文库

基于FPGA的VGA图像控制器设计+++++++++++

时间:2010-12-07


东 北 电 力 大 学 学 报
第 26 卷第 4 期
2006 年 8 月

 

Journa l O f Northea st D ian li Un iversity Na tura l Sc ience Ed ition

Vol 26, No. 4 . Aug , 2006 .

文章编号 : 1005 - 2992 ( 2006) 04 - 0089 - 04

基于 FP GA 的 VGA 图像控制器设计
吴蓬勃 ,张启民 ,王朝阳 ,牛   斗
1 2 1 1
( 1. 东北电力大学 信息工程学院 ,吉林 吉林 132012; 2. 中国联通吉林市分公司 ,吉林 吉林 132001)

摘     : 首先介绍了 VGA 图像控制器的硬件电路 ,然后分别从时序信号产生 、 要 图片数据的存储和图 像显示三个方面对 VGA 图像控制器的软件部分进行了介绍 ,最后给出了该控制器在 ModelSim 中的仿 真结果并指出了该设计的可行性及优越性 。 关     : 现场可编程门阵列 ; 视频图形阵列 ; 行同步信号 ; 场同步信号 键 词 中图分类号 : TP 331. 1      文献标识码 : A

显示器因为其输出信息量大 ,输出形式多样等特点已经成为现在大多数设计的常用输出设备 。在 FPGA 的设计中可以使用很少的资源 ,就产生 VGA 各种控制信号 。本设计分别从 VGA 图像控制器的硬 件电路设计 、 VGA 图像控制器的软件设计两个方面介绍了 VGA 图像控制器 。本设计已经在实际的视 频项目中的到应用 ,效果良好 。

1  VG 图像控制器的硬件电路设计 A
硬件电路如图 1,使用 FPGA 实现 VGA 控制器 , 将产生的信号经 DA 转换送往显示器的 VGA 口 。 该电路的 VGA 接口的 R、 、 引脚每个引脚有两个信号线输入 , 可知 ,该电路只能显示 6 位色的图片 , GB 即 : 总共可以显示 64 种颜色 。由于显示器要求 VGA 口输入的必须是模拟信号 , 所以在 6 个信号进入 VGA 口之前经过了一个电阻网络 , 这个电阻网络 是用来模拟 DA 转换器的 , 将输入信号的电压分 成几段 。这样做的原因 , 一方面是考虑到实际应 用中 ,很少会用到要显示 24 位真彩色的情况 ; 另 一方面是出于节约成本的目的 , 因为要使用专用 的 DA 转换器 ,必定增加成本 。其中 ,显示器要求 RGB 输入的电压范围是 : 0. 0 V ~0. 7 V , 如果要 使用专用的 DA 转换器 (如 : ADV7123 ) 要考虑这 个问题 。
图 1  VGA 控制器的硬件电路图

2  VG 图像控制器的软件设计 A
2. 1  VGA 图像控制器时序信号产生模块 ( 1 ) 时序信号产生机制
收稿日期 : 2006 - 05 - 12 作者简介 : 吴蓬勃 ( 1980 - ) ,男 ,河北石家庄人 ,东北电力大学信息工程学院研究生 ,主要从事嵌入式系统方面的研究 .

90

东北电力大学学报

    26 卷 第

一幅图片要想在显示器上显示出来 , 它主要需要 5 个信号 , 行同步信号 ( Horizontal_Sync ) 、 场同步信号 ( Ver2 tical_Sync ) 和 RGB 三 种颜 色信 号 。 时序信号包括前两个 ,它们都有图像 显示区和图像消隐区 ,图像消隐区又 分为消隐前肩 ( Front Porch ) 、 同步脉 冲 区 ( H. Sync Pulse、 Vertical sync pulse ) 和消隐后肩 ( Back Porch ) , 如 图 2 和图 3 所示 。行 、 场同步信号在
分辨率 刷新速率
60 72 56 60 72

图 2  行同步信号

图 3  场同步信号 同步脉冲区置为高电平 ,其它时候均 为低电平 。本设计是在显示器分辨率为 800 3 600、 刷新率为 72Hz、 FPGA 开发板系统时钟为 50MHz的 条件下进行的 。经过查表 1、 2 和计算可得出 : 行和场的同步脉冲宽度分别为 120 和 60 个系统时钟 , 表 行和场的消隐前肩 、 消隐后肩分别为 56、 和 39、 个系统时钟 , 行和场的图像显示有效时间分别为 64 21 800、 个系统时钟 。 600 表 1  水平时序 像素频率
25 31 36 40 50

同步脉冲
96 40 72

后沿
45 125 125 85 61

有效时间
646 646 806 806 806

前沿
13 21 21 37 53

帧长
800 832

640 /480 640 /480 800 /600 800 /600 800 /600

1024 1056 1040

128 120

  说明 : 有效时间包括 6 列过扫描边界列 ,有些时序表将这几列加在后沿和前沿中 。 表 2  垂直时序

分辨率

刷新速率
60 72 56 60 72

行宽
31 26 28 26 20

同步脉冲
2 3 1 4 6

后沿
30 26 20 21 21

有效时间
484 484 604 604 604

前沿
9 7

帧长
525 520 625 628 666

640 /480 640 /480 800 /600 800 /600 800 /600

-1 -1

35

  说明 : 有效时间包括 4 行过扫描界行 ,有些时序表中将这几行加在后沿和前沿中 。当有效时间增加时 , 它超过 vsync 信号的上升沿 , 因 此前沿为 - 1。

( 2 ) 时序信号产生模块设计

行和场的时序信号使用两个状态机实现 ,使用两个计数器 h_cnt和 v_cnt对状态机进行控制 ,如图 4 所示 。左边的状态机用来产生行同步信号 ,复位后 ,计数器从 0 开始计数 ,此时处于图像显示有效状态 ; 当计数到 800 时 ,开始进入行消隐前肩状态 ; 当计数到 856 时 , 进入行同步状态 ; 当计数到 976 时 , 进入 到行消隐后肩状态 ; 当计数到 1040 时 ,重新进入图像显示有效状态 ,同时置计数器为 0。图 6 右边的状 态机用来产生场同步信号 ,其状态转换机制同行同步信号类似 。 [ 1 ] 2. 2   图片数据的存储 本设计要显示得是一个 bmp 格式的位图 。Bmp 格 式的图片是以点阵的方式存储的 。当图像是单色时 , 1 字节可以存放 8 个像素点 ; 8 位色图像的每个像素点用
1 个字节存储 ; 16 位色图像的每个像素点用 2 个字节存

图 4  、 行 场时序信号状态机 储 , 24 位色图像的每个像素点用 3 个字节存储 。本设计 的硬件电路决定了图片为 6 位色 ,这里使用一个字节存储一个像素点 (最后的 2 位不用 ) 。

第 4 期       

吴蓬勃等 : 基于 FPGA 的 VGA 图像控制器设计

91

图片可以存储到 FPGA 内部的 B lock M emory,或者是 FPGA 开发板上的 SRAM 里 , 当然 , 使用后者 就可以存储更多的图片 ,但是必须选择高速的 SRAM 以保证像素数据能及时的传输到显示器 , 而前者 则不用去考虑速率问题 ,因为 FPGA 内部的 B lock M emory的速度完全可以满足要求 。本设计采用了前 者 ,将 bmp 格式的 6 位色图片数据写到 FPGA 内部的 B lock M emory里面 ,将 bmp 格式的图片在 PC 机上 [2] 使用专用软件转化为 6 位色的 . Coe格式 (使用内部 B lock M emory必须转化为这种格式 ) 的文件 。然 后将该文件作为 B lock M emory的初始化文件连同程序文件一块编译 、 综合 ,然后下在到 FPGA 里面 。 2. 3   图像显示模块 图像显示模块包括 : 图片显示区的设定 ,图像数据的传送两个部分 。 图片显示区可以利用行场同步信号的计数器 ,在图像有效区间内按照图片的大小划定行和列的起 始坐标和终止坐标 。 图片数据的传送 : 因为显示器屏幕上的一个像素点就对应着 1 个字节的数据 ,所以必须在行同步信 号到达该位置时 ,将 1 个字节的数据全部送出 。本设计使用和行场计数器相同的时钟频率作为图像地 址计数器的时钟 ,当扫描信号到达显示图片的区间时 , 图像地址计数器开始计数 , 同时从 FPGA 内部 B lock M emory里的相应位置读出数据送显示器显示 。

3  仿真结果
图 5 和图 6 分别行同步信号和场同步信号在 ModelSim 中的仿真结果 。其中 , hsync 为行同步信 号 , vsync为场同步信号 , valid 为图象显示有效区信号 。图 7 为整个显示过程的仿真结果 , x_pos_p ic和 y _pos_p ic 分别为图片的横竖坐标 , p ic_range 为图片的显示区间 , addr为送往 FPGA 内部 B lock M emory的 地址 , dout为 B lock M emory的数据输出 。
[3]

图 5  行同步信号仿真结果

图 6  场同步信号仿真结果

图 7  整个显示过程的仿真结果

92

东北电力大学学报

    26 卷 第

4  结束语
采用 FPGA 技术设计的 VGA 图像控制器 ,大大少了电路板的尺寸 , 充分应用了 FPGA 快速并行处 理数据的特性 (这是其他控制器所不可比拟的 )在产生同步信号的同时送出像素数据 , 同时增加了系统的可靠性和设计灵活性 。此外 ,若将图像数据存储到高速的 SRAM 里就可以显示 更大的图片甚至是动态图片 。该 VGA 图像控制器已经使用 Xilinx公司的 Spartan III系列器件 XC3S400 实现 ,并应用于实际的项目中 ,效果良好 。 参      考 文 献
[1]  王伟著 . Verilog HDL 程序设计与应用 [M ]. 北京 : 人民邮电出版社 , 2005. [2]  刘韬 ,楼兴华 . FPGA 数字电子系统设计与开发实例导航 [M ]. 北京 : 人民邮电出版社 , 2005. [ 3 ]  Xilinx B lock Memory Generator www. xilinx com , 2006. 9. 21. . . .

The D esign of VGA Graph ic Con troller Ba se on FPGA
W U Ppeng 2bo, ZHANG Q i2 in , W ANG Zhao 2yang, N IU D ou m
( Information departm ent, Northeast D ianli University, J ilin, 132012 )

Abstract: This article introduces the hardware circuit of VGA graphic controller at first, then, introduces the soft are part of the VGA graphic controller from three parts such as the generating of ti ing signal、 storage w m the of p icture data and the disp lay of graphic. A t last, it gives the sim ulation result on ModelSim and point out the feasibility and advantage. chronized signal Key words: Field p rogrammable gate array; V ideo graphic array; Horizontal synchronized signal; Vertical syn2


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

基于FPGA的VGA图像显示控制器设计_电子/电路_工程科技_专业资料。可编程逻辑器件综合实验报告 基于 FPGA 的 VGA 图像显示控制器设计 第 1页 可编程...

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

第26卷V01.26 第6期NO.6 新乡学院学报(自然科学版)JournalofXinxiangUniversity(NaturalScienceEdition) 2009年12月Dec.2009 基于FPGA的VGA图像控制器设计与实现...

基于FPGA的VGA图像控制器设计_论文.pdf

基于FPGA的VGA图像控制器设计_专业资料。首先介绍了VGA图像控制器的硬件电

基于FPGA的VGA图形显示.doc

根据 VGA 显示原理,利用 VHDL 作为 逻辑描述手段,设计了一种基于现场可编程器件 FPGA 的 VGA 接口控制器。实现 VGA 图像显示控制 器是通过 Altera 公司的 ...

基于FPGA的多分辨率VGA图像控制器设计.doc

龙源期刊网 http://www.qikan.com.cn 基于FPGA的多分辨率VGA图像控制器 设计 作者:陈志生 陈景贤 来源:《现代电子技术》2008 年第 13 期 摘要:首先介绍了多...

基于fpga的vga图像显示控制器设计 _大学论文.doc

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

基于fpga的vga图像显示控制器设计--学位论文.doc

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

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

2009 基于 FPGA 的 VGA 图像控制器设计与实现谢 磊 ( 郑州大学

基于FPGA的VGA显示系统_图文.pdf

刘伟平 基于FPGA的VGA图像动态显示控制器设计与实现[期刊论文]-电视技术 2011(17) 4.杨金 基于 FPGA 的 VGA 游戏设计[期刊论文]-数字技术与应用 2012(4) ...

基于fpga的vga图像显示控制器设计__本科毕业设计论文.doc

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

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

设计基于 FPGA 的 VGA 接口可以直接将数据送至显示器, 同时增添了关于输出图像...也就是说通过 SRAM 控制模块可以把转换好的红 外图像数据存储到 SRAM 芯片, ...

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

文中依据 VGA 接口的设计原理, 提出一种基于 DE2 - 70 的 VGA 图像显示控制系统, 与传统的 VGA 控制系统 相比, 由于 FPGA 体积小, 可重构, 因此很适合小型...

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

基于FPGA的VGA图像动态显示控制器设计与实现_廖永清_电子/电路_工程科技

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

lParts&applicationsI器件虽应用. 文章编号:10028692(2011)17005203 基于FPGA的VGA图像动态显示控制器设计与实现廖永清k2,丁旭昌k2,付建国1,21陈舜儿1....

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

基于FPGA的VGA图像控制器设计与实现_信息与通信_工程科技_专业资料。EDA

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

基于FPGA的VGA图像控制器设计与实现_信息与通信_工程科技_专业资料。依据VGA显示原理,利用VHDL作为设计语言,设计了一种基于现场可编程器件FPGA的VGA多图像控制器,...

基于FPGA的多分辨率VGA图像控制器设计_论文.pdf

基于FPGA的多分辨率VGA图像控制器设计_电子/电路_工程科技_专业资料。首先

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

文中依据 VGA 接口的设计原理, 提出一种基于 DE2 - 70 的 VGA 图像显示控制系统, 与传统的 VGA 控制系统 相比, 由于 FPGA 体积小, 可重构, 因此很适合小型...

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

基于FPGA的VGA图像控制器设计与实现_IT/计算机_专业资料。看 第33

基于Verilog的VGA控制器.pdf

[2]廖永清,丁旭昌.基于FPGA的VGA图像动态显示控制器设计与实现[J].电视技术,2011(17):52-54. [3]夏宇闻.Verilog数字系统设计教程[M].北京航空航天大学出版...