《2022年VGA彩条信号显示控制器的设计_EDA技术课程设计.docx》由会员分享,可在线阅读,更多相关《2022年VGA彩条信号显示控制器的设计_EDA技术课程设计.docx(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、河 南 城 建 学 院EDA 技 术 课 程 设 计课题: VGA 彩条信号显示掌握器地设计系别: 电气与信息工程学院河南城建学院2021 年 6 月 28 日成果评定 一、指导老师评语(依据同学设计报告质量、答辩情形及其平常表现综合评定).成果:(折合等级)指导老师签字年 月日摘要本设计是用 FPGA 来实现 VGA图像掌握器,掌握显示器显示彩条信号,用VHDL语言, 在 QuartusII 上实现软件仿真 .本文第一介绍了VGA显示地基本原理,然后提出了一种VGA图像掌握器地设计方案,并用VHDL硬件描述语言和原理图输入地方法完成了该方 案地设计,通过显示横彩条、竖彩条、棋盘格,验证了VG
2、A_SYNC同步信号功能模块时序地正确性,软件试验环境为 Quartus II 6.0开发软件 .本系统尝试用FPGA 实现 VGA图像显示掌握器,这一过程通过编程实现,之后通过软件地测试和仿真,当软件验证无误后完成硬件地下载验证,最终在显示器上实现输出,基本原理就是利用FPGA 地可编程原理和 VGA地时序掌握原理,这在产品开发设计中有很多实际应用.例如显示器,电视等地修理,可以期望采纳FPGA 设计地 VGA接口可以将要显示地数据直接送到显示器,就可以牢靠地找到故障地大致缘由等.从而省掉每次都要接信号源地麻烦,同时也节约了成本.节约了运算机地处理过程,加快了数据地处理速度,节约了硬件成本.
3、同时亦可将其作为信号 源,应用于电视机或运算机等彩色显示器地电路开发,便利彩色显示器驱动掌握电路地调试.关键字: EDA , VHDL , VGA , Quartus II目录1 概述11.1 课程设计要求11.2 课程设计目地11.3 试验环境12 系统总体方案12.1 系统地工作原理和组成框图12.2 VGA 显示原理23 VHDL设计与仿真53.1 波形仿真53.2 硬件描述语言生成电路64 EDA 硬件调试与实现74.1 硬件调试74.2 硬件实现85 课程设计体会13参考文献13附 1:源程序代码14附 2:系统原理图161 概述本设计采纳EDA 技术,通过 CPLD 芯片实现了实现
4、VGA 彩条信号地显示地设计,本文采纳 VHDL硬件描述语言描述VGA 彩条信号地显示电路,完成对电路地功能仿真.通过按键来实现横彩条、竖彩条、棋盘式方格图案地挑选,并能进一步设计出文字、图像地显示.与传统地设计方式相比,本设计由于采纳了CPLD 芯片来实现,它将大量地电路功能集成到一个芯片中,并且可以由用户自行设计规律功能,提高了系统地集成度和牢靠性.1.1 课程设计要求1、熟识把握常用仿真开发软件,比如:Quartus II 或 Xilinx ISE地使用方法 .2、能娴熟运用上述开发软件设计并仿真电路并下载到FPGA 中进行调试;3、学会用 EDA 技术实现数字电子器件组成复杂系统地方法
5、;学习电子系统电路地安装调试技术 .4、把握 VGA 时序工作要求及特点5、利用 FPGA 实现 VGA 彩条信号发生器,可以产生彩色横条 , 彩色竖条信号 , 彩色棋盘格信号,由一个按键依据次序挑选不同模式地信号输出.1.2 课程设计目地1、熟识 VGA 显示器地实现原理2、加深对 VHDL 语言地设计编程和设计语言规章地应用3、熟识集成电路设计地流程,学习使用EDA集成电路设计软件QuartusII 进行模拟综合,然后在 FPGA 上实现 .1.3 试验环境开发过程中采纳集成工具QuartuaII 实现设计,选用 GW48 系列 SOPC/EDA 试验箱,以及一个显示器 .2 系统总体方案
6、2.1 系统地工作原理和组成框图FPGA 是整个系统地核心,通过对其编程可输出RGB 三基色信号和 HS、VS 行场 扫描同步信号 .当 FPGA接受单片机输出地掌握信号后,内部地数据挑选器模块依据掌握信号选通相应地图像生成模块,输出图像信号,与行场扫描时序信号一起通过15针 D 型接口电路送入 VGA 显示器,在 VGA 显示器上便可以看到对应地彩色图像.FPGA 所需地工作时钟由外部高精度有源晶振供应;单片机掌握器分析键盘扫描结果,掌握液晶显示模块显示相应地功能,由LCD显示输出图像和按键掌握模式,并送出相应掌握信号给 FPGA ,系统原理框图如图 1电源掌握按键FPGA接口电路VGA显示
7、器时钟电路图 1 原理框图2.2 VGA 显示原理工业标准地 VGA 显示模式为: 64046816 色60Hz.常见地彩色显示器,一般由CRT 阴极射线管 构成,彩色是由R、G、B(红、绿、蓝)三基色组成,CRT 用逐行扫描或隔行扫描地方式实现图像显示,由VGA掌握模块产生地水平同步信号和垂直同步信号掌握阴极射线枪产生地电子束,打在涂有荧光粉地荧光屏上,产生R、 G、B 三基色,合成一个彩色像素 .扫描从屏幕地左上方开头,由左至右,由上到下,逐行进行扫描,每扫完一行,电子束回到屏幕下一行地起始位置,在回扫期间,CRT 对电子束进行消隐,每行终止是用行同步信号HS 进行行同步;扫描完全部行,再
8、由场同步信号VS 进行场同步,并使扫描回到屏幕地左上方,同时进行场消隐,预备下一场地扫描.行同步信号HS 和场同步信号VS 是两个重要地信号 .显示过程中, HS 和 VS 地极性可正可负,显示器内可自动转换为正极性规律 .VGA 行同步信号HS 和场同步信号 VS 地时序图如图 2 和图 3 所示, T1 为行同步消隐(约为 6s); T2 为行显示时间(约为26s); T3 为场同步消隐(两个行周期);T4 为场显示时间(480 个行周期) . 显示器每扫描完一行,再扫描一下行时会花肯定时间来准图 2 VGA 行扫描时序图同样每扫描完一帧,再扫描下一帧行时也会花肯定时间来预备,因此也要满意
9、其时序要求,见图 3图 3 VGA 场扫描时序图对于 VGA显示器地时序驱动要严格遵循“VGA 工业标准 ”,即 64048060HZ 模式,否就无法显示正确地图像.VGA 工业标准要求地频率:时钟频率: 25.175MHz 像素输出地频率 行频: 31469Hz 场频: 59.94Hz(每秒图像刷备,因此要满意时序要求,见图2新频率)行扫描时序要求如表1对应位置Tf行同步头TaTbTc行像素TdTe行周期Tg时间(像素)8964086408800表1 行扫描时序图场扫描时序要求如表2场同步头场图像场周期对应位置TfTaTbTcTdTeTg时间(行)222584808525表 2 场扫描时序图
10、从以上图可以看出,显示一行数据需要处理两件事情.第一:产生行同步HS.不难看出, HS 是一个脉冲信号,此信号地周期为:Te=Ta+Tb+Tc+Td ,低电平常间为Ta.其中Ta、 Tb、Tc、Td 均为时间信号,这些信号依据需要显示地辨论率不同而不同.其次:产生显示地数据( DATA )信号,此信号为模拟信号,当在显示有效数据(Activevideo)内,DA TA 信号为00.714Vpp地模拟电压( R、G、B ),依据辨论率地不同,DATA 地采样率、点数也皆不相同.帧数据时序与行时序类似,也就是显示一屏数据地时序.只是这里地基本单位为每行数据,而行数据里面地最基本单位为每个点不同地辨
11、论率,时序上地时间是不一样地 .辨论率640/480刷新速率60像素频率25同步脉冲96后沿45有效时间646前沿13帧长800640/48072314012564621832800/600563672125806211024800/600604012885806371056800/6007250120611806531040在水平常序中,包括以下几个时序参数:水平同步脉冲宽度;水平同步脉冲终止到水平门地开头之间地宽度;一个视频行可视区域地宽度;一个完整地视频行地宽度,从水平同步脉冲地开头到下一个水平同步脉冲地开头.表 3 常见辨论率行时序辨论率刷新速率行宽同步脉冲后沿有效时间前沿帧长640/
12、48060312304849525640/48072263264847520800/6005628120604-1625800/6006026421604-1628800/600722062160435666表 4 常见辨论率帧时序图像信号显示地颜色种类与表示R、G、B 三基色地二进制数位数有关,表5 列出了种颜色地编码方式8颜色白黄青红品绿蓝黑R11110000G11001100B0101010表5 颜色编码3 VHDL设计与仿真3.1 波形仿真通过 QuartusII 软件,我们进行了仿真,其仿真波形如下图:图 4 编译胜利图图 5 波形仿真图3.2 硬件描述语言生成电路在 Quartus
13、II 软件中利用硬件描述语言描述电路后,用RTL Viewers 生成地对应地电路图如下:Add1LL8.0PRED QLessThan14A3.0FS3.0PRED QA8.0B3.04 h1 -+ADDEREqual3B8.09 h168 -ENAENACLRLELSeS_sTsHTAhNan13LessThan14_OUTCLRA8.01 h0 -A4.0B4.05 h0A -9 h12C - B8.0=LessThan13_OUTFS3.0LELSeS_sTsHTAhNan12EQUALAdd2A4.0SELDATAAOUT04 h0 - DATABA8.09 h0F0 - B8.0L
14、essThan12_OUT5 h01 - +B4.0MUX21LELSeS_sTsHTAhNan11ADDERA8.01 h0 - Equal4A5.0CC4.09 h0B4 - B8.0LessThan11_OUT6 h1A - =B5.0CC4.0LessThan1PREDQLessThan0A4.0A8.09 h1DF -B8.0LESS_THANGRB8EQUALSEL5 h14 -B4.0DATAA5 h00 - DATABENACLRLESS_THANGRBX4.3GRBP8.6GRB6OUT0GRBX2.1GRBX7.5BGRBX10.8LELSeS_sTsHTAhNan8GRB
15、X3.1GRBP0GRBP3.1SELA4.0Equal5_OUTMUX21LL8.0B4.05 h15 -DATAAOUT0GRBX0 2 h3 - DATAB2 h0 -SEL DATAADATABSELSELOUT0GRB5DATAAOUT03 h5 - DATABSEL DATAA3 h6 - DATAB OUT0SELDATAAOUT03 h7 - DATABGRBP5DATAAOUT0SELDATAAOUT0DATABGRB3GAdd3DATABA8.0SELLELSeS_sTsHTAhNan7MUX21GRBP1B8.09 h001 -+DATAA9 h000 - DATABA4
16、.0MUX21MUX21MUX21MUX21OUT0MUX21MUX21GRB2B4.05 h13 -LELSeS_sTsHTAhNan6GRBP4GRB0RADDERGRBP2MMD1.0PRED QMUX21Equal2A4.0VSA1.0MMD_OUT0MD2 h2 - =B4.05 h10 -B1.0ENACLRLESS_THANLessThan5GRBP3LL_OUT0EQUALEqual1A4.0A1.0B4.05 h0D -2 h1 -B1.0 =LELSeS_sTsHTAhNan4EEQqUuAaL l0A4.0A1.05 h09 -B4.0 B1.02 h0 -=EQUALL
17、ELSeS_sTsHTAhNan3A4.05 h06 - B4.0LELSeS_sTsHTAhNan2LessThan9A8.0A4.05 h02 - B4.0B8.09 h03C -GRBY3.1LESS_THANGRBY_OUT0LESS_THANSELDATAAOUT03 h7 - DATABMUX21CLKHSEqual2_OUT MMD_OUT0图 6 RTL Viewers 电路图在 QuartusII 软件中利用硬件描述语言描述电路后,用technology map viewer生成地对应地电路图如下图 7 电路图 technology map viewer 电路图4 EDA 硬
18、件调试与实现4.1 硬件调试打开 Quartus9.0 软件,建立进程,进程地名字和程序地名字相同;打开新建挑选VHDL File, 然后把程序输入进去;储存文件点击软件页面上方地编译按键进行编译;编译胜利后,进行软件仿真,点击File 挑选 Vector Waveform File, 然后点击鼠标右键选inset node or bus 键,把脚码输入进去,再进行脚码设定;然后储存,点击Assigment 中地 settings 挑选时序仿真,进行程序地时序仿真;时序仿真胜利后,点击上方Assigment Editor 键进行脚码锁定; 脚码锁定中选用模式5.图 8 引脚锁定图4.2 硬件实
19、现硬件实现选用试验箱模式 5 方式下完成,在试验过程中 clk 地引脚挑选 clock0 即外接频 率源 PIN_L1 , 频 率选 择为 10MHZ. 复位 信号 clr 引 脚用 按键 1 进行 控 制锁 定为PIN_G20 ,其余数码管地使能端引脚安排见上图 .挑选编译按钮,重新编译,编程下载 .在 quartus 软 件 中 , 选 择 tools/programmer , 选 择 HardwareSettings , 然后 添 加USB_Blaster. 点击” addfile”按钮添加需要配置地caideng.sof 文件,点击 start 按钮下载代码到芯片,即可观看到硬件试验结
20、果.图 9 GW48 系列 SOPC/EDA 开发板仿真图图 10 显示器横彩条显示图 11 显示器竖彩条显示图 12 显示器方格显示图 13 显示器横彩条显示图 14 显示器竖彩条显示图 15 显示器横彩条显示5 课程设计体会1 、在程序地编写过程中,我们应当第一分析各个端口地优先级次序,这一点就可以利用 if 语句第一进行判定 .这一点是用 VHDL 语言进行设计数字规律电路地共同点,是我们学习过程中必需把握地内容.2、而在编写 vhdl 源文件地过程中,我加深了对信号和变量地延时区分地懂得和对 process “内部串行外部并行 ”地懂得 .3、试验中我进一步熟识了数字系统VHDL 设计
21、和仿真地流程,加深了对QuartusII 软件使用地懂得 .4、在试验中,打开 QuartusII 软件,建立一个新地工程时在写顶层实体名时,实体名、文件名必需和建立工程时所设定地顶层实体名相同,这样才不会 出错,这一点是我们使用 QuartusII 软件时常常犯地错误之一 .5、试验中,需要对每一个端口指定器件地引脚,在引脚指定过程中需要参照开发系统所给地 I/O 端口映射表,通过开发平台上每个I/O 器件邻近地I/O 编号,在映射表中找到相应地引脚名,填入相应地对话框.这一应当特殊当心,也是试验最终成败地最为关键地一步.6、通过这次试验,通过 VGA显示试验,我加深了对 EDA技术地懂得,
22、初步把握了 QuartusII 软件图形编辑地使用 .我接触了使用 VHDL 编程地一些基本技术和方法,初步把握 QuartusII 软件地使用方法以及硬件编程下载地基本技能,对以后EDA 地连续学习奠定了基础 .参考文献1 阎石.数字电子技术基础 M . 高等训练出版社, 20072 潘松,黄继业 .EDA 技术有用教程 M . 北京:科学出版社 , 2002.3 康华光 .电子技术基础(模拟部分)第四版 M . 北京:高等训练出版社,20014 乔庐峰,王志功 .VHDL数字电路设计教程 M . 电子工业出版社,2005附 1 源程序代码LIBRARY IEEE;USE IEEE.STD_
23、LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COLOR ISPORTCLK,MD :IN STD_LOGIC;HS,VS,R,G,B :OUT STD_LOGIC ;END COLOR ;ARCHITECTURE behav OF COLORISSIGNAL HS1,VS1,FCLK,CCLK :STD_LOGIC; SIGNAL MMD :STD_LOGIC_VECTOR1 DOWNTO 0;SIGNAL FS :STD_LOGIC_VECTOR3 DOWNTO 0;SIGNAL CC :STD_LOGIC_VECTOR4 DO
24、WNTO 0;SIGNAL LL :STD_LOGIC_VECTOR8 DOWNTO 0;SIGNAL GRBX :STD_LOGIC_VECTOR3 DOWNTO 1 ;SIGNAL GRBY :STD_LOGIC_VECTOR3 DOWNTO 1 ;SIGNAL GRBP :STD_LOGIC_VECTOR3 DOWNTO 1 ;SIGNAL GRB :STD_LOGIC_VECTOR3 DOWNTO 1 ;BEGINGRB2=GRBP2XOR MDAND HS1 AND VS1 ;GRB3=GRBP3XOR MDAND HS1 AND VS1 ;GRB1=GRBP1XOR MDAND H
25、S1 AND VS1 ;PROCESS MD BEGINIF MDEVENT AND MD = 0THENIF MMD = 10 THEN MMD= 00;ELSE MMD =MMD + 1;END IF ; END IF ;END PROCESS ;PROCESS MMD BEGINIF MMD= 00 THEN GRBP =GRBX ;ELSIF MMD =01 THEN GRBP =GRBY;ELSIF MMD = 10 THEN GRBP =GRBX XOR GRBY;ELSE GRBP = 000 ; END IF ;END PROCESS ;PROCESS CLK BEGINIF
26、CLKEVENT AND CLK =1THEN IF FS = 10 THEN FS = 0000;ELSE FS =FS+1 ; END IF ; END IF ;END PROCESS ;FCLK =FS3 ; CCLK =CC4 ;PROCESS CCLK BEGINIF CCLKEVENT AND CCLK = 0THEN IF LL = 481 THEN LL =000000000;ELSE LL = LL + 1;END IF ; END IF ;END PROCESS ;PROCESS FCLK BEGINIF FCLKEVENT AND FCLK = 1 THENIF CC=
27、26 THEN CC = 00000;ELSE CC 479 THEN VS1 = 0; -场同步ELSE VS1 20THEN HS1 = 0 ; -行同步ELSE HS1 = 1 ;END IF ;END PROCESS ;PROCESSCC,LLBEGINIF CC 2 THEN GRBX = 111; - 像素点ELSIF CC 6 THEN GRBX = 110;ELSIF CC 9 THEN GRBX = 101;ELSIF CC 13 THEN GRBX = 100;ELSIF CC 16 THEN GRBX = 011;ELSIF CC 19 THEN GRBX = 010;E
28、LSIF CC 21 THEN GRBX = 001;ELSE GRBX = 000;END IF ;IF LL 60 THEN GRBY = 111; - 行间隔ELSIF LL 130 THEN GRBY = 110; ELSIF LL 180 THEN GRBY = 101; ELSIF LL 240 THEN GRBY = 100;ELSIF LL 300 THEN GRBY = 011;ELSIF LL 360 THEN GRBY = 010;ELSIF LL 420 THEN GRBY = 001;ELSE GRBY =000;END IF ;END PROCESS ;HS=HS1 ; VS=VS1 ; R=GRB2 ;G=GRB3; B=GRB1 ;END behav ;附 2 系统原理图图 16 系统原理图附图 1