nbhkdz.com冰点文库

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

时间:2011-05-11

第 33卷第 10期 2006年 10月









App lied Science and Technology

文章编号 : 1009 - 671X (2006) 10 - 0042 - 04

Vol. 33, №. 10 Oct. 2006

基于 FPGA的 VGA图像控制器的设计与实现
董  兵 ,朱齐丹 ,文  睿
(哈尔滨工程大学 自动化学院 ,黑龙江 哈尔滨 150001)
摘  要 : VGA (视频图形阵列 )是一种标准的显示接口. 伴随着嵌入式系统的迅速发展 ,尤其是高速图像处理的 发展 ,对可以将实时图像处理进行显示有了更多的需求. 这里依据 VGA 接口原理采用了 Verilog HDL 语言对 A ltera的 Cyclone系列 FPGA (现场可编程门阵列 )进行了设计 ,并验证了结果. 通过采用 FPGA 设计 VGA 接口 可以将要显示的数据直接送到显示器 ,节省了计算机的处理过程 ,加快了数据的处理速度 ,节约了硬件成本. 关键词 :现场可编程门阵列 ; Verilog HDL;视频图形阵列 中图分类号 : TP365. 1  文献标识码 : B

The design and implem en ta tion of VGA image con troller ba sed on FPGA
DON G B ing, ZHU Q i2dan,W EN Rui
(College of Automation, Harbin Engineering University, Harbin 150001, China)

Abstract:A s a standard disp lay interface, VGA has been w idely used. A s the fast development of embeded system , especially the development of high speed image p rocessing, there are more and more need in disp laying the result of the p rocess in real time. According to the p rincip le of VGA disp lay, an interface of VGA w ith the Verilog HDL is designed. U sing FPGA to design a VGA interface can send the data directly onto the screen for disp lay, which cuts down the p rocess of PC, thus quickening the speed of data p rocess and saving the expense of the hardware. Keywords: FPGA ( field p rogrammable gate array) ; Verilog HDL; VGA ( video graphics array)

  在许多图像处理系统中 ,需要将经过处理的图 像显示出来 ,如果采用传统的办法将图像数据传回 电脑并通过显示器显示出来 ,那么在传输的过程中 就需要嵌入式系统的 CPU 不断的对所传输的图像 数据信号进行控制 ,这样就造成了就 CPU 资源的浪 费 ,同样系统还需要依赖电脑 ,降低了系统的灵活 性. 如果采用 FPGA 对显示器的 VGA 接口进行设 计 ,数据流只需要在整个系统的内部流动 ,而不需要 依靠计算机 ,实现了系统的最小化 ,大大减少了电路 板的尺寸 ,增强了系统的可靠性和设计的灵活性. VGA 接口同样也是 LCD 液晶显示设备的标准接口 , 通过 VGA 控制 LCD 可以使整个系统变得小巧和便 携 ,使得应用的范围大大扩展. 作者所在的全景视觉

图象处理项目中 ,正是需要把经过处理的图像实时 地直接地显示出来 ,撇开对计算机的需求 ,以满足各 种不同应用环境的需要.
1 VGA 接口原理
计算机显示器的显示有许 多标 准 , 常见的 有 VGA , SVGA 等. VGA 是 V ideo Graphics Adap ter (A r2 ray) 的缩写 ,信号类型为模拟类型 ,显示卡端的接 口为 15 针母插座. 接口如图 1所示.
图 1 VGA 接口

收稿日期 : 2006 - 01 - 17. 作者简介 :董  冰 (1981 - ) ,男 ,硕士研究生 ,主要研究方向 :计算机控制 , E2mail: alpha1027@ hotmail. com.

第 10期               董  兵 ,等 :基于 FPGA 的 VGA 图像控制器的设计与实现

·43·

对于普通的 VGA 显示器 ,其引出线共含 5个信 号 : R、G、B (3基色信号 ) 、HS (行同步信号 ) 、VS (场 同步信号 ). 由 R、G、B3 种基色可以组合出任意所 需要的颜色. 在实验的验证阶段可以仅利用 R、G、 B3种基色的二元化值 (0和 1)的不同组合来验证设 计的正确性. 其不同组合所能成的颜色如表 2所示. VGA 显示器在一行图像显示完成后 ,用行同步信号 进行行同步 ,并进行行消隐 ,行同步信号为低电平有 效. 当扫描完所有行时 ,用场同步信号进行场同步. 并使扫描回到屏幕的左上方 ,同时进行场消隐 ,并预 备进行下一次的扫描. 场同步信号也同样为低电平 有效. 行和场扫描时序图如图 2所示 :
表 1 VGA 接口主要信号

引脚号 1 2 3 6 7 8 13

14

红 绿 蓝 红信 绿信 蓝信 行同 场同 应信号
信号 信号 信号 号地 号地 号地 步信号 步信号

控制信号却是相同的 ,所以针对 CRT设计的控制器 也可以应用到 LCD 显示器中.
图 3 显示器成像原理 表 2 VGA 显示器成色原理 颜色 黑 蓝 绿 青 红 品 黄 白 蓝色 (B) 0 1 0 1 0 1 0 1 绿色 ( G) 0 0 1 1 0 0 1 1 红色 (R) 0 0 0 0 1 1 1 1
2 FPGA 的设计与实现

图 2 VGA 场 (行 )扫描时序图
常见的彩色显示器一般由 CRT (阴极射线管 ) 构 成 , 彩 色 是 由 R、G、B (绿 : Green, 红 : Red, 蓝 : B lue) 3基色组成. 显示是采用逐行扫描的方式解 决 ,阴极射线枪发出电子束打在涂有荧光粉的荧光 屏上 ,产生 RGB3基色 ,合成一个彩色像素 ,显示器 的成像原理如图 3 所示 [ 3 ]. 控制信号即为上面所述 的 VGA 场和行扫描信号. 将与场和行扫描信号所对 应的像素信号输出即可在显示器上的到图像. LCD 显示器虽然显示原理与 CRT不同 ,但是控制方式和

本设计所采用的显示器为三星 788DF,在其技 术说明书中表明其能正常显示的行频在 30 ~ 70 kHz范围内 ,场频在 50 ~ 160 Hz范围内 [ 1 ] ,其场和 行扫描时序图如图 2 所示 ,场扫描时序与行扫描时 序原理相同 ,只是具体的参数不同. 根据以上参数及 表 3,以及考虑到目标板上时钟频率为 50 MHz,选 择了 800 ×600, 60 Hz模式 ,其像素频率为 40 MHz. 采用了这个方案后显示器的实际行频约在 40 kHz, 场频约在 60 Hz. 可见所设计的行频和场频都满足 显示器的技术要求. 对应的控制时序我们采用点和 行计数的方法 , HS和 VS信号的时序按照图 2和表 3设计即可. 当像素数或行数达到相应的状态后即改 变 HS和 VS的值. 系统所需要的 40 MHz像素时钟可 以由 Quartus所自带的 PLL (锁相环 )电路来实现.

表 3 不同的分辨率所对应的像素及行分布

显示模式

像  素 时钟 /MHz

水平方向 (以像素计算 )

有效视

同步

同步前

同步后

频信号

信号

垂直方向 (以行计算 )

有效视

同步

同步前

同步后

频信号

信号

640 ×480, 60 Hz

25. 175

640

16

800 ×600, 60 Hz

40. 000

800

40

1024 ×768, 60 Hz 65. 000

1024

24

96

48

128

88

136

160

480

11

2

31

600

1

4

23

768

3

6

29

·44·

应    用    科    技                  第 33卷

  VGA _ctl模块中包含了时序产生模块 ,数据控 制模块. 其中 reset_n为系统复位信号低电平有效. clock为像素时钟 ,是由系统 50MHz时钟经过 PLL

电路进行 4 /5倍频后得到. data为图像数据 , rd为读

数据信号 , hsy_n 为行同步信号低电平有效 , vsy_n 为帧同步信号低电平有效 , p ixel为输出像素信号.

module VGActl ( reset_n,

c lock ,

da ta,

rd,

h sy_n ,

vsy_n,

p ixel) ;

由表 3可以确定以下参数 :

水平方向时间常数 :

  H _P IXELS     = ’d800,

  H _FRONTPORCH = ’d40,

  H _SYNCTIM E

= ’d128,

  H _BACKPORCH = ’d88,

  H _SYNCSTART = ’d840,

  H _SYNCEND

= ’d968,

  H _PER IOD 竖直方向时间常数

= ’d1056,

  V _L INES   V _FRONTPORCH   V _SYNCTIM E   V _BACKPORCH   V _SYNCEND

= ’d600, = ’d1, = ’d4, = ’d23, = ’d605,

   V _PER IOD

= ’d628;

根据图 3 (行和场扫描时序图 )设计出以下时序 信号发生器 ,其中 hcnt是对行像素进行计数 , vcnt 是行数进行计数 , hsy_ n 为行同步信号 , 低电平有 效 , vsy_n 为帧同步信号 ,低电平有效. 当像素和行 计数器到达上述常数所规定的状态后 hsy_n, vsy_n 即改变成相应的值.

assign hsy_n = hpn;

always @ (posedge clock) begin

if ( ! reset_n)

hcnt < = 0;

else if ( hcnt < H _PER IOD ) hcnt < = hcnt + 1;
e lse hcnt < = 0;
end always @ (posedge clock) begin if ( ! reset_n) hpn < = 1; else if ( hcnt > = H _SYNCSTART && hcnt < H _SYN2 CEND )
hpn < = 0; e lse
hpn < = 1; end always @ (posedge hpn) begin if ( ! reset_n) vcnt < = 0; else if ( vcnt <V _PER IOD ) vcnt < = vcnt + 1; e lse vcnt < = 0; end always @ (posedge hpn) begin if ( ! reset_n)
vsy_n < = 1; else if ( vcnt > = V _SYNCSTART && vcnt < V _SYN2 CEND )
vsy_n < = 0; e lse
vsy_n < = 1; end
以下是数据控制部分 ,在像素计数和行计数同 时在有效范围内时 rd信号有效 ,以保证图像信号的 正确输出. always @ ( negedge clock) begin if ( ! reset_n)
p ixel < = 0; else if ( rd)
p ixel < = data; else if ( hcnt > = H _P IXELS)
p ixel < = 0;

第 10期               董  兵 ,等 :基于 FPGA 的 VGA 图像控制器的设计与实现

·45·

else if ( vcnt > =V _L INES) p ixel < = 0;
end always @ (posedge clock) begin if ( ! reset_n)
rd < = 0; else if ( hcnt < H _P IXELS && vcnt <V _L INES)
rd < = 1; e lse
rd < = 0; end

  以上程序以及其他电路组合后产生的顶层功能 模块如图 4所示. 将图 4 中的信号分配到相应的管 脚并与表 1中相对应的信号通过电路相连后 ,即可 对 VGA 接口的显示器进行控制并显示图像. 这种用 Verilog HDL 产生扫描时序的方法便捷 、易读 ,并且 易于修改. 在代码中只需修改一些时序参数就能产 生任意图像分辨率的时序信号 ,具有很好的可重用 性. 用 Synp lify Pro 7. 6将 Verilog HDL 代码综合后 , 通过 Quartus进行布局和布线. 即可应用到实际项 目中去了.

图 4 实现 VGA 接口控制的功能模块

3 结束语
这种用 Verilog HDL 语言实现行场扫描时序生 成器的方法 ,具有简便 ,易读和可重用性强的特点. 如果想得到更好的像素颜色质量 ,可以在系统中加 入一块飞利浦编码芯片 SAA7128H , 对其用 FPGA 通过 IIC 总线对其进行初始化配置 ,并用上述设计 中的行同步及帧同步信号以及像素时钟对其进行控 制 ,就可以得到更高的像素颜色质量. 采用 FPGA 技 术设计的 VGA 控制器 ,大大减少了电路板的尺寸 , 同时增加了系统可靠性和设计灵活性 ,解决了嵌入 式系统实时图像显示的问题 ,节约了成本 ,扩展了应 用范围.

参考文献 :
[ 1 ]三星公司. 三星显示器技术手册 [M ]. 三星公司出版 , 2001.
[ 2 ]BHASKER J. Verilog HDL硬件描述语言 [M ]. 2版. 徐振 林 ,译. 北京 :机械工业出版社 , 2000.
[ 3 ]陈姚节. 卢建华. 基于 FPGA的 VGA显示接口的研究与设 [ J ]. 交通与计算机 , 2005, 23 (2) : 47 - 49.
[ 4 ]NATHAN I. VGA V ideo [ A ]. M IT 6. 111 Introduction to D igital System s[ C ]. [ s. n ]: M IT, 2004.
[责任编辑 :李玲珠 ]


基于FPGA的VGA显示控制器的设计与实现_图文.doc

基于FPGA的VGA显示控制器的设计与实现 - 我的毕业设计,供电子专业的学弟学

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

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

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

基于FPGA的VGA图像显示系统的设计与实现 - 2012年第7期 仪表技术与传感器 2012Nn7 !竺虫帅ent!兰hnique蚰d Sen唑 基于FPGA的VGA图像显示...

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

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

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

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

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

基于FPGA的VGA图像控制器设计与实现 - EDA技术[1]是现代电子设计技术

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

基于FPGA的VGA图像控制器的设计与实现 - 依据VGA显示原理,利用VHDL作为设计语言,设计了一种基于现场可编程器件FPGA的VGA多图像控制器,并在硬件平台上实现设计目标。...

基于FPGA的VGA显示控制器的实现_图文.pdf

基于FPGA的VGA显示控制器的实现 - 基于FPGA的VGA湿示控制器的实现孙艳,等 基于FPGA的VGA显示控制器的实现 (兰州交通大学电子与信息工程学院 (‘兰州交通大学实验室...

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

(2009)02-0109-03 基于FPGA的VGA图像控制器的设计与实现朱文

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

基于FPGA 的 VGA 图像显示系统的设计与实现 - 基于 FPGA 的 VGA 图像显示系统的设计与实现 周卓然,徐道连,吕凤飞,付少华 ( 重庆大学光电技术及系统教育部重点...

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

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

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

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

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

基于FPGA的VGA图像动态显示控制器的设计与实现 - 依据VGA显示原理,设计了一种基于现场可编程器件FPGA的VGA图像动态显示控制器,并在硬件平台上实现设计目标。算法采用...

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

基于FPGA的VGA图像控制器的设计与实现 - 维普资讯 http://www.

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

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

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

[8] 董兵,朱齐丹,文睿.基于 FPGA 的 VGA 图像控制器的设计与实现[J].应用科技, 2006, 33(10): 42-45. [9] 田耘,徐文波.Xilinx FPGA 开发教程[M].北京...

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

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

(完整版)本科毕业设计___基于FPGA的VGA显示控制器设计.doc

(完整版)本科毕业设计___基于FPGA的VGA显示控制器设计 - 单片机论文,毕业设计,毕业论文,单片机设计,硕士论文,研究生论文,单片机研究论文,单片机设计论文

基于FPGA的VGA图形控制器的实现方法.pdf

VGA图像显示控制器设计 67页 免费 基于FPGA的VGA接口...理和 实现 途径 ,并在 硬件平 台上 实现 了 V...M i文 B P格 式 的位 图文 件 稍显 复杂 ,...

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

基于FPGA 的 VGA 显示控制器的设计时间:2009-02-19 16:01:44 来源:电子开发网 作者: 随着 CCD(电荷耦合器件)和 CMOS(互补金属氧化物半导体)图像传感器制造工艺...