完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx

上传人:b****5 文档编号:11785035 上传时间:2023-04-01 格式:DOCX 页数:16 大小:387.79KB
下载 相关 举报
完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx_第1页
第1页 / 共16页
完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx_第2页
第2页 / 共16页
完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx_第3页
第3页 / 共16页
完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx_第4页
第4页 / 共16页
完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx

《完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx》由会员分享,可在线阅读,更多相关《完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx(16页珍藏版)》请在冰豆网上搜索。

完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文.docx

完美升级版VGA彩条信号显示控制器的设计EDA技术毕业论文

(此文档为word格式,下载后您可任意编辑修改!

河南城建学院

EDA技术课程设计

 

课题:

VGA彩条信号显示控制器的设计

 

系别:

电气与信息工程学院

 

河南城建学院

2013年6月28日

成绩评定·

一、指导教师评语(根据学生设计报告质量、答辩情况及其平时表现综合评定)。

成绩:

(折合等级)

指导教师签字年月日

摘要

本设计是用FPGA来实现VGA图像控制器,控制显示器显示彩条信号,用VHDL语言,在QuartusII上实现软件仿真。

本文首先介绍了VGA显示的基本原理,然后提出了一种VGA图像控制器的设计方案,并用VHDL硬件描述语言和原理图输入的方法完成了该方案的设计,通过显示横彩条、竖彩条、棋盘格,验证了VGA_SYNC同步信号功能模块时序的正确性,软件实验环境为QuartusII6.0开发软件。

本系统尝试用FPGA实现VGA图像显示控制器,这一过程通过编程实现,之后通过软件的测试和仿真,当软件验证无误后完成硬件的下载验证,最终在显示器上实现输出,基本原理就是利用FPGA的可编程原理和VGA的时序控制原理,这在产品开发设计中有许多实际应用。

例如显示器,电视等的维修,可以期望采用FPGA设计的VGA接口可以将要显示的数据直接送到显示器,就可以可靠的找到故障的大致原因等。

从而省掉每次都要接信号源的麻烦,同时也节约了成本。

节省了计算机的处理过程,加快了数据的处理速度,节约了硬件成本。

同时亦可将其作为信号源,应用于电视机或计算机等彩色显示器的电路开发,方便彩色显示器驱动控制电路的调试。

关键字:

EDA,VHDL,VGA,QuartusII

目录

1概述1

1.1课程设计要求1

1.2课程设计目的1

1.3实验环境1

2系统总体方案2

2.1系统的工作原理和组成框图2

2.2VGA显示原理2

3VHDL设计与仿真6

3.1波形仿真6

3.2硬件描述语言生成电路7

4EDA硬件调试与实现8

4.1硬件调试8

4.2硬件实现8

5课程设计体会13

参考文献14

附1:

源程序代码15

附2:

系统原理图17

1概述

本设计采用EDA技术,通过CPLD芯片实现了实现VGA彩条信号的显示的设计,本文采用VHDL硬件描述语言描述VGA彩条信号的显示电路,完成对电路的功能仿真。

通过按键来实现横彩条、竖彩条、棋盘式方格图案的选择,并能进一步设计出文字、图像的显示。

与传统的设计方式相比,本设计由于采用了CPLD芯片来实现,它将大量的电路功能集成到一个芯片中,并且可以由用户自行设计逻辑功能,提高了系统的集成度和可靠性。

1.1课程设计要求

1、熟悉掌握常用仿真开发软件,比如:

QuartusII或XilinxISE的使用方法。

2、能熟练运用上述开发软件设计并仿真电路并下载到FPGA中进行调试;

3、学会用EDA技术实现数字电子器件组成复杂系统的方法;学习电子系统电路的安装调试技术。

4、掌握VGA时序工作要求及特点

5、利用FPGA实现VGA彩条信号发生器,可以产生彩色横条,彩色竖条信号,彩色棋盘格信号,由一个按键按照顺序选择不同模式的信号输出.

1.2课程设计目的

1、熟悉VGA显示器的实现原理

2、加深对VHDL语言的设计编程和设计语言规则的应用

3、熟悉集成电路设计的流程,学习使用EDA集成电路设计软件QuartusII进行模拟综合,然后在FPGA上实现。

1.3实验环境

开发过程中采用集成工具QuartuaII实现设计,选用GW48系列SOPCEDA实验箱,以及一个显示器。

2系统总体方案

2.1系统的工作原理和组成框图

FPGA是整个系统的核心,通过对其编程可输出RGB三基色信号和HS、VS行场扫描同步信号。

当FPGA接受单片机输出的控制信号后,内部的数据选择器模块根据控制信号选通相应的图像生成模块,输出图像信号,与行场扫描时序信号一起通过15针D型接口电路送入VGA显示器,在VGA显示器上便可以看到对应的彩色图像。

FPGA所需的工作时钟由外部高精度有源晶振提供;单片机控制器分析键盘扫描结果,控制液晶显示模块显示相应的功能,由LCD显示输出图像和按键控制模式,并送出相应控制信号给FPGA,系统原理框图如图1

图1原理框图

2.2VGA显示原理

工业标准的VGA显示模式为:

640×468×16色×60Hz。

常见的彩色显示器,一般由CRT(阴极射线管)构成,彩色是由R、G、B(红、绿、蓝)三基色组成,CRT用逐行扫描或隔行扫描的方式实现图像显示,由VGA控制模块产生的水平同步信号和垂直同步信号控制阴极射线枪产生的电子束,打在涂有荧光粉的荧光屏上,产生R、G、B三基色,合成一个彩色像素。

扫描从屏幕的左上方开始,由左至右,由上到下,逐行进行扫描,每扫完一行,电子束回到屏幕下一行的起始位置,在回扫期间,CRT对电子束进行消隐,每行结束是用行同步信号HS进行行同步;扫描完所有行,再由场同步信号VS进行场同步,并使扫描回到屏幕的左上方,同时进行场消隐,预备下一场的扫描。

行同步信号HS和场同步信号VS是两个重要的信号。

显示过程中,HS和VS的极性可正可负,显示器内可自动转换为正极性逻辑。

VGA行同步信号HS和场同步信号VS的时序图如图2和图3所示,T1为行同步消隐(约为6μs);T2为行显示时间(约为26μs);T3为场同步消隐(两个行周期);T4为场显示时间(480个行周期)。

显示器每扫描完一行,再扫描一下行时会花一定时间来准备,因此要满足时序要求,见图2

图2VGA行扫描时序图

同样每扫描完一帧,再扫描下一帧行时也会花一定时间来准备,因此也要满足其时序要求,见图3

图3VGA场扫描时序图

对于VGA显示器的时序驱动要严格遵循“VGA工业标准”,即640×480×60HZ模式,否则无法显示正确地图像。

VGA工业标准要求的频率:

时钟频率:

25.175MHz(像素输出的频率)行频:

31469Hz场频:

59.94Hz(每秒图像刷新频率)

行扫描时序要求如表1

行同步头

行像素

行周期

对应位置

Tf

Ta

Tb

Tc

Td

Te

Tg

时间(像素)

8

96

40

8

640

8

800

表1行扫描时序图

场扫描时序要求如表2

场同步头

场图像

场周期

对应位置

Tf

Ta

Tb

Tc

Td

Te

Tg

时间(行)

2

2

25

8

480

8

525

表2场扫描时序图

从以上图可以看出,显示一行数据需要处理两件事情。

第一:

产生行同步HS。

不难看出,HS是一个脉冲信号,此信号的周期为:

Te=Ta+Tb+Tc+Td,低电平时间为Ta。

其中Ta、Tb、Tc、Td均为时间信号,这些信号根据需要显示的分辨率不同而不同。

第二:

产生显示的数据(DATA)信号,此信号为模拟信号,当在显示有效数据(Activevideo)内,DATA信号为0~0.714Vpp的模拟电压(R、G、B),根据分辨率的不同,DATA的采样率、点数也皆不相同。

帧数据时序与行时序类似,也就是显示一屏数据的时序。

只是这里的基本单位为每行数据,而行数据里面的最基本单位为每个点不同的分辨率,时序上的时间是不一样的。

在水平时序中,包括以下几个时序参数:

水平同步脉冲宽度;水平同步脉冲结束到水平门的开始之间的宽度;一个视频行可视区域的宽度;一个完整的视频行的宽度,从水平同步脉冲的开始到下一个水平同步脉冲的开始。

分辨率

刷新速率

像素频率

同步脉冲

后沿

有效时间

前沿

帧长

640480

60

25

96

45

646

13

800

640480

72

31

40

125

646

21

832

800600

56

36

72

125

806

21

1024

800600

60

40

128

85

806

37

1056

800600

72

50

120

611

806

53

1040

表3常见分辨率行时序

分辨率

刷新速率

行宽

同步脉冲

后沿

有效时间

前沿

帧长

640480

60

31

2

30

484

9

525

640480

72

26

3

26

484

7

520

800600

56

28

1

20

604

-1

625

800600

60

26

4

21

604

-1

628

800600

72

20

6

21

604

35

666

表4常见分辨率帧时序

图像信号显示的颜色种类与表示R、G、B三基色的二进制数位数有关,表5列出了8种颜色的编码方式

颜色

绿

R

1

1

1

1

0

0

0

0

G

1

1

0

0

1

1

0

0

B

0

1

0

1

0

1

0

表5颜色编码

3VHDL设计与仿真

3.1波形仿真

通过QuartusII软件,我们进行了仿真,其仿真波形如下图:

图4编译成功图

图5波形仿真图

3.2硬件描述语言生成电路

在QuartusII软件中利用硬件描述语言描述电路后,用RTLViewers生成的对应的电路图如下:

图6RTLViewers电路图

在QuartusII软件中利用硬件描述语言描述电路后,用technologymapviewer

生成的对应的电路图如下

图7电路图technologymapviewer电路图

4EDA硬件调试与实现

4.1硬件调试

⑴打开QuartusⅡ9.0软件,建立进程,进程的名字和程序的名字相同;

⑵打开新建选择VHDLFile,然后把程序输入进去;

⑶保存文件点击软件页面上方的编译按键进行编译;

⑷编译成功后,进行软件仿真,点击File选择VectorWaveformFile,然后点击鼠标右键选insetnodeorbus键,把脚码输入进去,再进行脚码设定;

⑸然后保存,点击Assigment中的settings选择时序仿真,进行程序的时序仿真;

⑹时序仿真成功后,点击上方AssigmentEditor键进行脚码锁定;

脚码锁定中选用模式5。

图8引脚锁定图

4.2硬件实现

硬件实现选用实验箱模式5方式下完成,在实验过程中clk的引脚选择clock0即外接频率源PIN_L1,频率选择为10MHZ。

复位信号clr引脚用按键1进行控制锁定为PIN_G20,其余数码管的使能端引脚分配见上图。

选择编译按钮,重新编译,编程下载。

在quartusⅡ软件中,选择toolsprogrammer,选择HardwareSettings,然后添加USB_Blaster。

点击”addfile”按钮添加需要配置的caideng.sof文件,点击start按钮下载代码到芯片,即可观察到硬件实验结果。

图9GW48系列SOPCEDA开发板仿真图

图10显示器横彩条显示

图11显示器竖彩条显示

图12显示器方格显示

图13显示器横彩条显示

图14显示器竖彩条显示

图15显示器横彩条显示

5课程设计体会

1、在程序的编写过程中,我们应该首先分析各个端口的优先级顺序,这一点就可以利用if语句首先进行判断。

这一点是用VHDL语言进行设计数字逻辑电路的共同点,是我们学习过程中必须掌握的内容。

2、而在编写vhdl源文件的过程中,我加深了对信号和变量的延时区别的理解和对process“内部串行外部并行”的理解。

3、实验中我进一步熟悉了数字系统VHDL设计和仿真的流程,加深了对QuartusII软件使用的理解。

4、在实验中,打开QuartusII软件,建立一个新的工程时在写顶层实体名时,实体名、文件名必须和建立工程时所设定的顶层实体名相同,这样才不会出错,这一点是我们使用QuartusII软件时经常犯的错误之一。

5、实验中,需要对每一个端口指定器件的引脚,在引脚指定过程中需要参照开发系统所给的IO端口映射表,通过开发平台上每个IO器件附近的IO编号,在映射表中找到相应的引脚名,填入相应的对话框。

这一应该特别小心,也是实验最后成败的最为关键的一步。

6、通过这次实验,通过VGA显示实验,我加深了对EDA技术的理解,初步掌握了QuartusII软件图形编辑的使用。

我接触了使用VHDL编程的一些基本技术和方法,初步掌握QuartusII软件的使用方法以及硬件编程下载的基本技能,对以后EDA的继续学习奠定了基础。

参考文献

[1]阎石.数字电子技术基础[M].高等教育出版社,2007

[2]潘松,黄继业.EDA技术实用教程[M].北京:

科学出版社,2002.

[3]康华光.电子技术基础(模拟部分)第四版[M].北京:

高等教育出版社,2001

[4]乔庐峰,王志功.VHDL数字电路设计教程[M].电子工业出版社,2005

附1源程序代码

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYCOLORIS

PORT(CLK,MD:

INSTD_LOGIC;

HS,VS,R,G,B:

OUTSTD_LOGIC);

ENDCOLOR;

ARCHITECTUREbehavOFCOLORIS

SIGNALHS1,VS1,FCLK,CCLK:

STD_LOGIC;

SIGNALMMD:

STD_LOGIC_VECTOR(1DOWNTO0);

SIGNALFS:

STD_LOGIC_VECTOR(3DOWNTO0);

SIGNALCC:

STD_LOGIC_VECTOR(4DOWNTO0);

SIGNALLL:

STD_LOGIC_VECTOR(8DOWNTO0);

SIGNALGRBX:

STD_LOGIC_VECTOR(3DOWNTO1);

SIGNALGRBY:

STD_LOGIC_VECTOR(3DOWNTO1);

SIGNALGRBP:

STD_LOGIC_VECTOR(3DOWNTO1);

SIGNALGRB:

STD_LOGIC_VECTOR(3DOWNTO1);

BEGIN

GRB

(2)<=(GRBP

(2)XORMD)ANDHS1ANDVS1;

GRB(3)<=(GRBP(3)XORMD)ANDHS1ANDVS1;

GRB

(1)<=(GRBP

(1)XORMD)ANDHS1ANDVS1;

PROCESS(MD)BEGIN

IFMD'EVENTANDMD='0'THEN

IFMMD="10"THENMMD<="00";

ELSEMMD<=MMD+1;ENDIF;ENDIF;

ENDPROCESS;

PROCESS(MMD)BEGIN

IFMMD="00"THENGRBP<=GRBX;

ELSIFMMD="01"THENGRBP<=GRBY;

ELSIFMMD="10"THENGRBP<=GRBXXORGRBY;

ELSEGRBP<="000";ENDIF;

ENDPROCESS;

PROCESS(CLK)BEGIN

IFCLK'EVENTANDCLK='1'THEN

IFFS=10THENFS<="0000";

ELSEFS<=(FS+1);ENDIF;ENDIF;

ENDPROCESS;

FCLK<=FS(3);CCLK<=CC(4);

PROCESS(CCLK)BEGIN

IFCCLK'EVENTANDCCLK='0'THEN

ELSELL<=LL+1;ENDIF;ENDIF;

ENDPROCESS;

PROCESS(FCLK)

BEGIN

IFFCLK'EVENTANDFCLK='1'THEN

IFCC=26THENCC<="00000";

ELSECC<=CC+1;ENDIF;ENDIF;

ENDPROCESS;

PROCESS(CC,LL)BEGIN

IFLL>479THENVS1<='0';--场同步

ELSEVS1<='1';ENDIF;

IFCC>20THENHS1<='0';--行同步

ELSEHS1<='1';ENDIF;

ENDPROCESS;

PROCESS(CC,LL)BEGIN

IFCC<2THENGRBX<="111";--像素点

ELSIFCC<6THENGRBX<="110";

ELSIFCC<9THENGRBX<="101";

ELSIFCC<13THENGRBX<="100";

ELSIFCC<16THENGRBX<="011";

ELSIFCC<19THENGRBX<="010";

ELSIFCC<21THENGRBX<="001";

ELSEGRBX<="000";ENDIF;

IFLL<60THENGRBY<="111";--行间隔

ELSIFLL<130THENGRBY<="110";

ELSIFLL<180THENGRBY<="101";

ELSIFLL<240THENGRBY<="100";

ELSIFLL<300THENGRBY<="011";

ELSIFLL<360THENGRBY<="010";

ELSIFLL<420THENGRBY<="001";

ELSEGRBY<="000";ENDIF;

ENDPROCESS;

HS<=HS1;VS<=VS1;R<=GRB

(2);G<=GRB(3);B<=GRB

(1);

ENDbehav;

附2系统原理图

图16系统原理图

附图1

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1