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

上传人:大米 文档编号:512689549 上传时间:2022-08-04 格式:DOCX 页数:7 大小:265.08KB
返回 下载 相关 举报
基于FPGA的VGA显示控制器设计_第1页
第1页 / 共7页
基于FPGA的VGA显示控制器设计_第2页
第2页 / 共7页
基于FPGA的VGA显示控制器设计_第3页
第3页 / 共7页
基于FPGA的VGA显示控制器设计_第4页
第4页 / 共7页
基于FPGA的VGA显示控制器设计_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《基于FPGA的VGA显示控制器设计》由会员分享,可在线阅读,更多相关《基于FPGA的VGA显示控制器设计(7页珍藏版)》请在金锄头文库上搜索。

1、课程设计开课学期:第六学期课程名称:FPGAI程设计学院:专业:班级:学号:姓名:任课教师:2015年7月20日基于FPGA勺VGA示控制器设计、设计方案1. 设计的主要内容此设计要求实现某一分辨率下(如640*48060HZ的VGA1示驱动,能简单显示彩条和图像等。能够熟悉VGAg口协议、工作时序及VGA:作原理,并计算出合适的时序,对原始时钟进行分频处理以获取符合时序要求的各率,此外须要显示的图像等可存储于外部存储器,运行时,从外部存储器读取显示数据。将图像控制模块分为这样几部分;二分频电路、地址发生器、VGA寸序控制模块、图像数据存储器读出模块.如图1-1所示:图1-1VGA显示控制系统

2、框图2. 设计原理显示控制器是一个较大的数字系统,采用模块化设计原则、借鉴自顶向下的程序设计思想,进行功能分离并按层次设计。利用VHDL硬件描述语言对每个功能模块进行描述,并逐一对每个功能模块进行编译仿真,使顶层VGA1示控制器的模块实体仿真综合得以顺利通过。其中二分频把50MH改在频率分成25Mhz并提供给其它模块作为时钟;VGA寸序控制模块用于产生640X480显示范围,并控制显示范围和消隐范围以及产生水平同步时序信号HS和垂直同步时序信号VS的值;存储器读出模块提供给SRAMfe址并按地址读出八位数据(灰度值Y),然后得到R、GB的值(若Y中间值,则R=G=B=1;否则R=G=B=0,并

3、把R、GB的值通过VG破口传送给VRT显示器9。地址发生器接收所要显示的数据读取控制彳S号,产生与图像数据ROM1块对应得地址,根据VGA!示的像素分布,确定读取对应数据的地址,由于所显示的图形每行需256个像素,而ROW每个地址存储的数据时64位,故每4个地址取出的数据用于一行的显示。VGA1示控制模块:主要分为时序信号和数据颜色的控制,imgrom模块即图像数据ROM1块,在这一模块中需要解决的是图像数据BM取图文件的来源及转换成HEX文件,利用Image21cd对本次设计图片处理得到BMPC件,最终在QuartusII得到HE双件,在已设置LPM_ROM进行加载图像数据。注意其数据线宽为

4、3,恰好可以放置RGBE信号数据,因此此设计图像仅能显示8种颜色。此外注意各模块对图像显示的区域控制。、系统实现此系统设计分主要由,二分频模块,地址译码器模块,VGAa示控制模块及图像数据RO味实现对图像的显示。计数器模块设计简单,用计数器计数来控制,以实现某一个区域显示相应的颜色。具体以VGAK示模块和图像数据RO加例进行详细分析与操作。1. VGA显示控制模块VGA1示控制模块主要通过VGA寸序产生640*480显示范围,并控制和消隐范围以及产生水平同步时序信号hs和垂直同步时序信号vs的值。一个独立的计数器产生垂直时序信号。垂直同步计数器在每个HS脉冲信号来临时自动加1,译码值产生VS信

5、号。计数器产生当前显示行。这两个计数器从地址到显示缓冲器连续计数。首先启动QUARTUSI软件,新建vga640480显示扫描模块工程文件,如下图2-1所示:图2-1创建工程vga640480单击完成按钮,创建好了设计工程,选择【FILE!【NEW菜单,出现如图2-2所示的新建设计文件类型窗口。图2-2选择编程VHDLt本文件在上图2-2中选择【VHDLFile,单击【OK建立一个新的文本设计文件,命名为。随即进行程序代码的输入。图2-3保存设计文件在图2-3中的【File菜单中点选【Saveas存盘并保证该文件添加到了工程中,文件名为默认的即可。至此,vga640480显示扫描模块文件建立完

6、成。2. rom载入当VGA1示器要显示一帧图像,需要较多的数据量,FPGA5片内置的ROMf储器很难符合如此大的数据存储要求,所以必须借助于外部的存储器存入图像数据。读取控制模块的数据读取方式决定于采用何种存储器。然而外部存储器有多种选择,如ROM,双口RAM甚至SDRAMS例如ROMT用直接产生地址信号的方式对芯片进行访问,而SDRAIW是利用DMA空制方式配合CPU!行读写操作 小erilog/VGAJTPIP variation file type。接下来将详细介绍如何将已有的3rom_、-rom_g和rOm_b文件载入开发板的rom中首先,以“rom”作为关键词在IP目录中进行搜索,

7、选择并双击“ROM1-PORT:在对话框中选择.v ”文件选依ROME制函热耻线和数据线。在图2-6所示的对话框中选小砒哨位宽和ROM数据线分别为8和65536,选择的地址锁存控制信号Singleclock。VHDLQ Veribg图2-4载入romIPvariationfilename!:tt3.选择已。 州Pl 闻=W Mngir Apt 1 off件,载入rom。-THEOS在系统如侬iM电口设颜把 50MHz寸钟频率分成25MHZfl暇其给炖钿吸640X480,像素时钟25Mh4刷新频率60Hz 1学评巾遁祥额后才能使用:品50M 分g作为时钟。,发板提供的城卜以仿真,故以仿真,故将输

8、入时中clk50m设显示模块m为简单,在耳簿50kHz,分频得到clk25m实际为25kHz。它的模块设项目中创建新的文件,编写二分频模块代码,保存编计相比VGA4.顶曜|殳计在以上模块设计完成后,整体编译并无错误后,建原理图文件,调用VGA1示模块、图像数据rom、二分频模块,用软件自带的RTLViewer自动生成他们连线组成系统的原理图,如图2-8所示:按照开发板手册进行管唧卷6,docuB中旭 6_ 1 ” j口所_小皿_4.1I *极叫数据线和地址线宽度rom_b:ju3 fflGA_0LWK GA B 7.y GA_CLCCK 辰回.冏快 R7.O20图2-9 FPGA开发板管脚分配

9、P1ug-nMruigerpagje3nf55 .仿真波形os *w*_v_srr图2-10仿真波形图6 .设计结果通过上述的步骤之后,将系统顶层文件烧写进开发板,将CR显示器连接到开发板的VGAS口上。给系统上电,在显示器就可以看见本次设计所选用的图片,如图1-11所示:三、结束语用FPGAH空制VGA充分利用了FPGAT重构这一优势,克服了以前通用处理器体积较大体系结构不易修改、体系结构不易修改等弊端。通过rom来存储图片的信息,实现了基于FPGA勺图形显示,方便图片信息的输入,更新显示的内容以及修改。可以使图片的显示脱离计算机的控制,而且使控制器的体积减小很多,对各种便携式设备和小型嵌入

10、式系统的实现具有工程价值现实意义和现实意义。使用可编程逻辑器件可以很方便地实现数字系统设计,为此基于FPG端件的VGA控制器可以实现显示器的实时显示。系统设计方案、硬件描述语言设计以及开发工具的性能决定了该系统性能高低。随着VGAS口的普遍使用,这种结合FPGA勺系统级设计方法已经展现优势。从整个设计流程来看,系统的可靠性高,灵活性强,设计周期大大缩减,成本降低,且系统的可扩展性强。不久的将来,VG破口的图像与视频监控系统应用定会很有广阔的市场。经过此次课程设计,我不仅更加学会知识之间的融会贯通,而且丰富了大脑,同时在查找资料的过程中也了解了许多课外知识,开拓了视野,认识了未来电子的发展方向,

11、专业基础知识方面和动手能力方面有了质的飞跃。做课程设计的同时也是对自己能力的一种提高。通过此课程设计,我明白了自己原来所掌握的知识太理论化了,面对单独的课题产生着很茫然的感觉,自己要学习的东西还很多。也让我明白学习是一个长期的过程,需要不断的积累,在以后的工作和生活中都需坚持学习,努力提高自己的知识和综合素质。总之,不管掌握的了的还是不懂得,困难确实比较多,凡是难开头,不知道从哪入手。也得到一个结论:知识也只能通过应用和实践方能实现它应具有的价值!有些东西自认为会了,然而当到用时才发现其实真的是两回事,为此知识真正能用时才是真的学会了。感谢三位指导老师们所给予过的帮助。在设计过程中,我通过查阅

12、大量有关资料,自学和与同学之间经验的交流,并向老师请教等方式。使自己学到了不少知识,也经历了不少艰辛,因而得以有巨大的收获。在整个设计,使我懂得了许多东西,不仅培养了我独立工作的能力,而且更加树立了对自己工作能力的信心,定会对今后的学习工作生活有非常重要的影响。在动手的能力大大提高之余,充分体会在创造过程中探索的艰难和成功时的喜悦。也许这个设计做的并不是很好,但在设计过程中所学到的东西才是这次课程设计的最大收获和财富,为之受益终身。完成之后更深体会到课程设计是对前面所学知识的一种总结与检验。显示控制模块代码moduleVGA_Ctrl(lkin(clkin),.clkout(clk);Red(

13、iRed),.iGreen(iGreen),.iBlue(iBlue),.oCurrent_X(),.oCurrent_Y(),.oAddress(address),.oRequest(),VGA_R(oVGA_R),.oVGA_G(oVGA_G),.oVGA_B(oVGA_B),.oVGA_HS(oVGA_HS),.oVGA_VS(oVGA_VS),.oVGA_SYNC(oVGA_SYNC),.oVGA_BLANK(oVGA_BLANK),.oVGA_CLOCK(oVGA_CLOCK),CLK(clk),.iRST_N(rst_n);ddress(address),.clock(clk),.q(iRed);rom_gu2(.address(address),.clock(clk),.q(iGreen);rom_bu3(.address(address),.clock(clk),.q(iBlue);endmodule

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 市场营销

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号