实验五vga图显示控制

合集下载

VGA显示控制

VGA显示控制

基于FPGA 的VGA显示控制摘要VGA(Video Graphics Array)即视频图形阵列,是IBM公司1987年推出的一种传输标准,具有分辨率高、显示速率快、颜色丰富等优点,在彩色显示器领域得到了广泛应用。

本次课程设计是基于FPGA和主芯片为 EP4CE30F23C8N的ALTER公司的开发板Cyclone IV来实现的。

数字图像信息在VGA接口显示器正确、完整地显示,涉及到时序的构建和数字图像信息的模拟化两方面,提出一种能够广泛应用的VGA显示接口方案,详细阐述了数字图像数据DA转化并输出到VGA接口显示器显示的方法,其中包括接口的硬件设计、视频DA转换器的使用方法、通过FPGA构造VGA时序信号的方法等等。

方案可以应用于各种仪器,数字视频系统、高分辨率的彩色图片图像处理、视频信号再现等。

课设主要用到的芯片是ADV7123,它是一款高速、高精度数模转换芯片。

拥有三路十位D/A转换器,能够将代表颜色的数据锁存到数据寄存器中,然后通过D/A 转换器转换成模拟信号输出,得到我们要的色彩。

VGA显示的硬件设计和原理1.1 FPGA主芯片课程设计所用开发板的主芯片是EP4CE30F23C8N——Cyclone IV,其由Altera公司开发,值得注意的是该开发板所支持的QUARTUS II的版本较高,并且11.0的版本较12.0的版本编译好的程序更好下载。

图-11.2 ADV7123实现VGA的控制显示主要用到的芯片就是ADV7123,ADV7123由完全独立的三个I0位高速D/A转换器组成,RGB(红绿蓝)视频数据分别从R9~R0、G9~G0、B9~B0输入,在时钟CLOCK的上升沿锁存到数据寄存器中,然后经告诉D/A转换器转换成模拟信号。

三个独立的视频D/A转换器都是电流型输出,可以接成差分输出,也可以接成单端输出。

DE2-115上按单端输出,在模拟输出端用75欧姆电阻接地,以满足工业标准。

VGA显示的控制器

VGA显示的控制器

VGA显示的控制器1 VGA显示接口原理计算机显示器的显示有许多接口标准,常见的有 VGA、SVGA等。

VGA接口,也叫D-Sub接口,是15针的梯形插头,分成 3排,每排 5个,传输模拟信号。

VGA接口采用非对称分布的 15针连接方式,其工作原理是:将显存内以数字格式存储的图像(帧)信号在RAMDAC 里经过模拟调制成模拟高频信号,然后再输出到显示设备成像。

VGA 支持在640×480的较高分辨率下同时显示16种色彩或256种灰度,同时在 320 × 240 分辨率下可以同时显示 256种颜色。

VGA显示器的显示是采用逐行扫描的方式解决。

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

2 VGA显示控制器的设计实现系统硬件框图如图所示通常VGA显示器显示的图像数据量较大,而 FPGA 内置 ROM 很难满足这么大的存储量,FPGA需要外接SDRAM来存储这些数据。

VGA显示器的输入的是模拟信号,所以由 VGA显示控制器产生的 RGB信号在进入VGA 接口之前要经过一个 D/A 转换器。

2.VGA时序控制信号VGA显示器的时序控制要严格遵循“VGA工业标准”,即640×480×60Hz模式,否则会导致VGA显示器无法正常工作。

图2-1所示为行扫描时序,图2-2所示为场扫描时序。

(1)行扫描信号时序:图2-1给出了行视频时序示意图。

在行扫描时序中,包括以下几个时序参数:HSYNC Signal是用来控制“列填充”,而一个HSYNC Signal可以分为4个段,也就是a(同步段),b(后沿段),c(激活段),d(前沿段)。

HSYNC Signal的a是拉低的128个列像素,b是拉高的61个列像素,c是拉高的806个列像素,最后的d是拉高的53个列像素。

vga接口显示

vga接口显示

VGA接口显示实验QinZhanAo1.实验内容电脑屏幕背景为白色,在电脑屏幕中间显示一个空心的矩形,矩形颜色为红色。

2.VGA接口原理VGA接口为15针接口,常用5个针,如下图所示:VGA接口示意图如下所示:由上图,常用的5个接口:H-SYNC 行同步信号,用于显示器扫描一行;V-SYNC 场同步信号,用于显示器扫描一列;RED,产生红色模拟信号;GREEN,产生绿色模拟信号;BLUE,产生蓝色模拟信号。

显示器扫描规律:按照给定的参数先扫描显示器第一行,然后扫描第二行,也就是一行一行扫描。

这里显然可以看出,在设计两个有效范围计数器时,场同步信号计数器是以行同步信号计数器为周期的。

显示器扫描参数如下表:本实验选择显示模式为800*600@60,需要注意的是时钟,也就是这里的40MHz是底线,驱动这一模式至少需要40MHz的时钟,板子上市50MHz,可以使用。

下面给出两个同步信号的时序图,并结合扫描参数表来进行说明。

行同步信号时序图如下图:场同步信号时序图如下图:800*600@60 模式:行同步信号上电拉高,在行同步计数为0时拉低Sync(a)个时间,即128个时钟周期,之后拉高,在行同步计数到1055时,行同步计数器清零,场同步计数器加1;场同步信号上电拉高,在场同步计数为0时拉低Sync(o)个时钟周期,场同步计数到627时清零。

参考显示器扫描参数表,需要注意的是,扫描有效范围只是800*600,也就是行的C段和列的Q段,给出RGB色值得范围必须在这里,也就是行计数在[216,1015],列计数在[27,626]。

3.调色RGB为光三原色,三原色全0为黑,全1为白,红色调配为R全1,其他两原色为0。

4.Verilog代码5.VCS仿真结果在标记处我们看到背景和矩形框的颜色配置是正确的。

6.上板测试结果。

数电实验-vga图像显示控制

数电实验-vga图像显示控制

数字电路综合实验报告学校:北京邮电大学学院:信息与通信工程学院专业:通信工程班级:2008211115学号:********班内序号:30姓名:***2011年1月5日VGA图像显示控制器一、摘要和关键词摘要:VGA显示屏显示采用逐行扫描的方式解决,阴极射线枪发出电子束打在涂有荧光粉的荧光屏上,产生GRB基色,合成一个彩色像素。

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

通过控制扫描计数器不同值时对RGB三原色信号的控制,来完成显示设计。

关键词:行列扫描行列同步RGB三原色控制二、设计任务要求实验目的1. 熟练掌握VHDL 语言和QuartusII 软件的使用;2. 理解状态机的工作原理和设计方法;3. 掌握利用EDA 工具进行自顶向下的电子系统设计方法;4. 熟悉VGA 接口协议规范。

实验要求:设计一个VGA 图像显示控制器,达到如下功能:显示模式为640×480×60HZ 模式;用拨码开关控制R、G、B(每个2 位),使显示器可以显示64种纯色;在显示器上显示横向彩条信号(至少6 种颜色);在显示器上显示纵向彩条信号(至少8 种颜色);在显示器上显示自行设定的图形、图像等。

选做:自拟其它功能。

三、实验原理1、显示控制原理常见的彩色显示器一般由阴极射线管(CRT)构成,彩色由GRB(Green Red Blue)基色组成。

显示采用逐行扫描的方式解决,阴极射线枪发出电子束打在涂有荧光粉的荧光屏上,产生GRB基色,合成一个彩色像素。

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

vga图片显示课程设计

vga图片显示课程设计

vga图片显示课程设计一、课程目标知识目标:1. 学生能理解VGA接口的基本原理,掌握VGA图片显示的相关知识;2. 学生能描述VGA信号的组成及其在电脑与显示器之间的传输过程;3. 学生了解VGA图片显示的分辨率、色彩深度等关键参数,并能够解释它们对显示效果的影响。

技能目标:1. 学生能够独立完成VGA线缆的连接,正确设置显示分辨率和刷新率;2. 学生能够使用相关软件或硬件工具,对VGA图片进行简单的编辑和处理;3. 学生能够通过实际操作,解决VGA图片显示过程中遇到的基本问题。

情感态度价值观目标:1. 学生培养对计算机硬件和图像显示技术的好奇心和探索欲望;2. 学生在学习和实践过程中,养成合作、分享、尊重他人成果的良好习惯;3. 学生认识到科技发展对生活、学习的影响,增强对科技进步的敏感性和适应能力。

分析课程性质、学生特点和教学要求,本课程旨在让学生在掌握VGA图片显示基本知识的基础上,提高实际操作和问题解决能力。

课程目标具体、可衡量,便于学生和教师在教学过程中进行有效的指导和评估。

通过本课程的学习,学生将能够更好地理解和应用VGA图片显示技术,为今后的学习和生活打下坚实基础。

二、教学内容1. VGA接口原理:介绍VGA接口的发展背景、信号组成、传输过程等基本知识,对应教材第3章“图像显示接口”相关内容。

2. VGA图片显示参数:详细讲解分辨率、刷新率、色彩深度等关键参数的设置与调整,对应教材第4章“显示器参数设置”相关内容。

3. VGA线缆连接与设置:指导学生如何正确连接VGA线缆,设置显示器分辨率和刷新率,对应教材第5章“显示器连接与设置”相关内容。

4. VGA图片编辑与处理:教授学生使用相关软件或硬件工具对VGA图片进行简单的编辑和处理,对应教材第6章“图像编辑与处理”相关内容。

5. 实践操作与问题解决:安排学生进行实际操作,培养解决VGA图片显示过程中遇到问题的能力,对应教材第7章“实践操作与问题解决”相关内容。

实验五 VGA

实验五 VGA

南昌大学实验报告学生姓名:柳宇航学号:6102113025专业班级:通信工程中兴131班实验类型:□验证□综合□设计□创新实验日期:2015.12.3实验成绩:实验五VGA彩条信号发生器的设计(一)实验要求本实验要完成的任务就是通过FPGA在显示器上显示一些条纹或图案,要求CRT显示器上能够显示横条纹、竖条纹以及棋盘格子图案。

实验中系统时钟选择时钟模块的12MHz,用一个按键模块的S1来控制显示模式,每按下一次,屏幕上的图案改变一次,依次为横条纹、竖条纹以及棋盘格子图案。

实验的输出就直接输出到VGA接口,通过CRT显示器显示出来。

将南昌大学校门的图像存储到ROM中,实现当按键S2按下时,显示器显示南昌大学校门图像。

(二)实验步骤1.建立工作库文件夹,输入计数器的Verilog代码并存盘。

2.选目标器件CycloneII中的EP2C35F672C8并编译。

3.建立仿真波形文件,设置仿真结束时间和输入条件,进行波形仿真。

图1横条纹图2竖条纹图3棋盘格1开关转态为00时,显示横条纹开关转态为10时,显示棋盘格开关转态为01时,显示竖条纹开关转态为11时,显示棋盘格图3棋盘格24.管脚分配clock PIN_C13disp_RGB[0]PIN_AC7disp_RGB[1]PIN_AC6disp_RGB[2]PIN_AD6switch[0]PIN_H8switch[1]PIN_J8hcount_ov PIN_AD10rst PIN_J9vcount_ov PIN_AC95.下载测试。

下载到实验箱上测试,当K1,K2的状态为00时显示横条纹,当K1,K2的状态为01时显示竖条纹,当K1,K2的状态为10和11时显示棋盘格,符合彩条信号发生器的设计要求。

(三)实验小结分析时序得,当行计数达到800时,产生行同步信号,当扫描完一行即为一场,产生场同步信号。

当行计数大于141,场计数大于32时,进入显示区,其他时候为消隐区。

VGA 图像显示控制器设计报告

VGA 图像显示控制器设计报告
D~E:行消隐前肩完成扫描,相当于准备同步
O~P:场消隐期即同步,相当于还原扫描坐标吧
P~Q:场消隐后肩相当于准备开始扫描吧
Q~R:场显示期扫描中,数据有效区域
R~S:场消隐前肩完成扫描,相当于准备同步
以下是行扫描,场扫描HS,VS时序图:
图6
如上图所示:VGA一直在扫描,每一场的扫描包括了若干行扫描,反复循环。且在640*480@60Hz的标准下,每秒需要输出25.175M像素,即每秒输出31469行,也即每秒输出60张图。其工业标准如下图所示:
图7
此部分代码见附录。原理图如下:
图8
3、
数据存储模块调用LPM_ROM模块。具体设置如下:
图9
该模块用于存储图像数据。数据位宽为3,地址线为32768.
原理图如下:
图10
存储与该ROM的图像数据原为BMP格式,为使其可以存储于ROM内部,需要使用软件将信息转换。本实验使用3位数据存储颜色信息,因此仅能显示8中颜色,具体对应关系如下表所示:
显示带宽:带宽指的显示器可以处理的频率范围。如果是60Hz刷新频率的VGA,其带宽达640x480x60=18.4MHz,70Hz的刷新频率1024x768分辨率的SVGA,其带宽达1024x768x70=55.1MHz。
时钟频率:以640x480@59.94Hz(60Hz)为例,每场对应525个行周期(525=10+2+480+33),其中480为显示行。每场有场同步信号,该脉冲宽度为2个行周期的负脉冲,每显示行包括800点时钟,其中640点为有效显示区,每一行有一个行同步信号,该脉冲宽度为96个点时钟。由此可知:行频为525*59.94=31469Hz,需要点时钟频率:525*800*59.94约25MHz

VGA简单图像显示控制模块设计

VGA简单图像显示控制模块设计

VGA简单图像显示控制模块设计一、实验目的随着数字图像处理的应用领域的不断扩大,其实时处理技术成为研究的热点。

EDA (电子设计自动化)技术的迅猛发展为数字图像实时处理技术提供了硬件基础。

其中FPGA 的特点适用于进行一些基于像素级的图像处理。

LCD 和CRT 显示器作为一种通用型显示设备,如今已经广泛应用于工作和生活中。

与嵌入式系统中常用的显示器件相比,它具有显示面积大、色彩丰富、承载信息量大、接口简单等优点,如果将其应用到嵌入式系统中,可以显著提升产品的视觉效果。

为此,尝试将VGA 显示的控制转化到FPGA 来完成实现。

利用可编程器件CPLD/FPGA实现VGA彩色显示控制器在工业现场中有许多实际应用。

以硬件描述语言VHDL对可编程器件进行功能模块设计、仿真综合,可实现VGA显示控制器显示各种图形、图像、文字,并实现了动画效果。

二、实验概要1、VGA输出利用FPGA 设计一个类似点阵LCD 显示的VGA 显示控制器,可实现文字及简单的图表显示。

工作时只需将要显示内容转换成对应字模送入FPGA,即可实现相应内容的显示。

2、LCD1602显示显示VGA图像输出信息。

3、按键控制选择要显示的图片或内容等等。

4、声光提示LED与蜂鸣器,用于警告提示或其他功能标识。

5、 VGA 接口及设计参数VGA接口是与显示器进行通信的唯一接口。

通过CPLD/FPGA器件对RGB信号、行同步信号、场同步信号等信号的控制,并参照有关标准,可以实现对VGA显示器的控制。

由此可见,了解接口标准,控制时序和设定恰当的参数是系统设计的关键。

参照VGA主要参数的工业标准,像素输出频率为25.175MHz;行频(线频率)为31.469KHz;场频(刷新率)为59.94Hz。

参数设计原理以及行同步信号(Ts)与显示信号(Tdis)的关系如图1所示。

6、 VGA 图像控制器的设计方案VGA图像控制器是一个较大的数字系统。

采用模块化设计原则,借鉴自顶而下的程序设计思想,进行功能分离并按层次设计。

VGA显示控制_常熟理工学院

VGA显示控制_常熟理工学院

课程设计报告课程EDA课程设计题目VGA显示控制院系物理与电子工程学院年级2011级专业电子科学与技术班级电科112学号050211202050211207050211208050211210学生姓名陈启、李伟阳、李钟奇、刘贵晶指导教师张惠国设计时间目录第1章绪论 (1)1.1EDA技术的发展 (1)1.2课程设计的任务 (2)第2章课题背景 (2)2.1选题背景 (2)2.2国内外文献综述 (3)2.2.1显示技术发展史 (3)2.2.2各种显示器的显示原理 (3)2.2.3显示标准的发展 (6)2.2.4VGA概述及其接口 (7)第3章VGA显示控制的相关理论 (9)3.1VGA显示控制 (9)3.2RGB颜色模型 (11)第4章VGA显示控制器的VHDL设计 (11)4.1显示控制器的整体设计 (11)4.2彩条信号发生器设计 (12)第5章VGA实验实现的结果 (15)5.1VGA显示输出 (15)5.1.1VGA显示的竖直彩条信号 (15)5.1.2VGA显示的横向彩条信号 (15)参考文献 (16)总结体会 (16)第1章绪论1.1EDA技术的发展我们已经进入数字化和信息化的时代,其特点就是各种数字产品的广泛应用。

现代数字产品在性能提高复杂度增大的同时,更新换代的速度也越来越快,实现这种进步的因素在于芯片制造技术和设计技术的进步。

前者以微细加工技术为代表,目前已进展到深亚微米阶段,可以在几平方厘米的芯片上集成数千万个晶体管。

后者的核心就是EDA技术,EDA是指以计算机为工作平台,融合应用电子技术、计算机技术、智能化技术最新成果而研制成的电子CAD 通用软件包。

在现代数字系统的设计中,EDA技术已成为一种普遍的工具。

对设计者而言,熟练的掌握EDA技术,可以极大的提高工作效率,起到事半功倍的效果。

无论是设计集成电路还是普通设计的电子线路,没有EDA工具的支持是难以完成的。

EDA技术的使用包括电子工程师进行电子系统的开发的全过程,以及进行开发设计涉及的各个方面。

VGA显示实验报告——孙小喃

VGA显示实验报告——孙小喃

学生实验报告实验课名称:VHDL硬件描述语言实验项目名称:VGA显示专业名称:电子科学与技术班级:32050801学号:05学生姓名:孙小喃教师姓名:程鸿亮2010年11月13日组别第三组实验日期2010年11月13日实验室名称______________成绩_____ 一.实验名称VGA显示二.实验目的与要求目的:通过对VGA接口的显示控制设计,理解VGA接口的时序工作原理,掌握通过计数器产生时序控制信号的方法以及用MEGEFUNCTION制作锁相环的方法。

要求:通过VHDL编程,在VGA显示器上实现竖形彩条的显示,显示模式为640×480 60Hz刷新率。

本实验需要使用25MHz的时钟,而开发平台中并没有这个时钟资源,所以需要通过锁相环来实现。

三实验内容1. 打开QuartusII软件,建立一个新的工程:1) 单击菜单File\New Project Wizard…2) 输入工程的路径、工程名以及顶层实体名。

3) 单击Next>按钮,出现以下窗口由于我们建立的是一个空的项目,所以没有包含已有文件,单击Next>继续。

4) 设置我们的器件信息:5) 单击Next>,指定第三方工具:这里我们不指定第三方EDA工具,单击Next>后结束工程建立。

2. 建立VHDL文件:1) 单击File\New菜单项,选择弹出窗口中的VHDL File项,单击OK 按钮以建立打开空的VHDL文件,注意此文件并没有在硬盘中保存。

2) 首先编制实体“color”的代码,要求输入为25MHz的时钟信号,输出为行同步、帧同步以及三色数据线RGB[2..0]信号。

注意这个文件的实体名、文件名为“color”,不是顶层实体。

(参考程序附后)3) 生成符号由于此文件是整个工程的一个模块,我们需要把此文件转换为符号,以便后面可以通过绘图方式连接电路,点击File\Creat\Update\Create Symbol Files for Current File菜单,生成对应的符号。

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

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

一、课程设计内容1、使用Verilog语言和Modelsim仿真器完成可显示横彩条、竖彩条、棋盘格相间的VGA控制器的设计和验证2、设计并验证可显示英语单词”HIT”的VGA控制器3、使用Quartus II和SOPC实验箱验证设计的正确性4、Verilog代码要符合微电子中心编码标准二、FPGA原理CPLD、FPGA是在PAL、GAL等基础上发展起来的一种具有丰富的可编程I/O 引脚、逻辑宏单元、门电路以及RAM空间的可编程逻辑器件,几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均可应用FPGA和CPLD器件。

CPLD 的设计是基于乘积项选择矩阵来实现的,而FPGA基于查找表来设计的。

查找表就是实现将输入信号的各种组合功能以一定的次序写入RAM中,然后在输入信号的作用下,输出特定的函数运算结果。

其结构图如图1所示:图1. FPGA查找表单元一个N输入查找表(LUT,Look Up Table)可以实现N个输入变量的任何逻辑功能,如N输入“与”、N输入“异或”等。

输入多于N个的函数、方程必须分开用几个查找表(LUT)实现(如图2所示)。

图2 FPGA查找表单元内部结构该系统设计中,FPGA芯片用的是ALTERA公司的EP1K30QC208-2,它的系统结构如图3所示。

它由若干个逻辑单元和中央布线池加I/O端口构成图3 EP1K30QC208内部结构三、VGA接口VGA的全称为Video Graphic Array,即显示绘图阵列。

在PC行业发展的初期,VGA以其支持在640X480的较高分辨率下同时显示16种色彩或256种灰度,同时在320X240分辨率下可以同时显示256种颜色的良好特性得到广泛支持。

后来,厂商们纷纷在VGA基础上加以扩充,如将显存提高至1M并使其支持更高分辨率如800X600或1024X768,这些扩充的模式就称之为VESA(Video Electronics Standards Association,视频电子标准协会)的Super VGA模式,简称SVGA,现在的显卡和显示器都支持SVGA模式。

VGA图像显示的设计与应用

VGA图像显示的设计与应用

VGA图像显示的设计与应用一.实验目的学习VGA图像显示控制器的设计。

二.实验原理根据所学硬件描述语言知及本实验要求,编程如下:LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY altera_mf;USE altera_mf.altera_mf_components.all;ENTITY pll ISPORT(inclk0 : IN STD_LOGIC := '0';c0 : OUT STD_LOGIC);END pll;ARCHITECTURE SYN OF pll ISSIGNAL sub_wire0 : STD_LOGIC_VECTOR (5 DOWNTO 0);SIGNAL sub_wire1 : STD_LOGIC ;SIGNAL sub_wire2 : STD_LOGIC ;SIGNAL sub_wire3 : STD_LOGIC_VECTOR (1 DOWNTO 0);SIGNAL sub_wire4_bv : BIT_VECTOR (0 DOWNTO 0);SIGNAL sub_wire4 : STD_LOGIC_VECTOR (0 DOWNTO 0);COMPONENT altpllGENERIC (clk0_duty_cycle : NATURAL;lpm_type : STRING;clk0_multiply_by : NATURAL;inclk0_input_frequency : NATURAL;clk0_divide_by : NATURAL;pll_type : STRING;intended_device_family : STRING;operation_mode : STRING;compensate_clock : STRING;clk0_phase_shift : STRING);PORT (inclk : IN STD_LOGIC_VECTOR (1 DOWNTO 0);clk : OUT STD_LOGIC_VECTOR (5 DOWNTO 0) );END COMPONENT;BEGINsub_wire4_bv(0 DOWNTO 0) <= "0";sub_wire4 <= To_stdlogicvector(sub_wire4_bv);sub_wire1 <= sub_wire0(0);c0 <= sub_wire1;sub_wire2 <= inclk0;sub_wire3 <= sub_wire4(0 DOWNTO 0) & sub_wire2;altpll_component : altpllGENERIC MAP (clk0_duty_cycle => 50,lpm_type => "altpll",clk0_multiply_by => 25,inclk0_input_frequency => 20833,clk0_divide_by => 48,pll_type => "AUTO",intended_device_family => "Cyclone",operation_mode => "NORMAL",compensate_clock => "CLK0",clk0_phase_shift => "0")PORT MAP (inclk => sub_wire3,clk => sub_wire0);END SYN;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY vga ISPORT(clock: IN STD_LOGIC; --系统输入时钟48MHzdisp_dato: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--VGA数据输出.hsync: OUT STD_LOGIC; --VGA行同步信号.vsync: OUT STD_LOGIC --VGA场同步信号.);END;ARCHITECTURE one OF vga ISCOMPONENT pllPORT(inclk0 : IN STD_LOGIC := '0';c0 : OUT STD_LOGIC);END COMPONENT;SIGNAL hcount: STD_LOGIC_VECTOR(9 DOWNTO 0);SIGNAL vcount: STD_LOGIC_VECTOR(9 DOWNTO 0);SIGNAL data: STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL h_dat: STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL v_dat: STD_LOGIC_vECTOR(7 DOWNTO 0);SIGNAL timer: STD_LOGIC_VECTOR(9 DOWNTO 0);SIGNAL flag: STD_LOGIC;SIGNAL hcount_ov:STD_LOGIC;SIGNAL vcount_ov:STD_LOGIC;SIGNAL dat_act: STD_LOGIC;SIGNAL hsync_r: STD_LOGIC;SIGNAL vsync_r: STD_LOGIC;SIGNAL vga_clk: STD_LOGIC;CONSTANT hsync_end: STD_LOGIC_VECTOR(9 DOWNTO 0):="0001011111";--95CONSTANT hdat_begin: STD_LOGIC_VECTOR(9 DOWNTO 0):="0010001111";--143--图形显示横区开始,CONSTANT hdat_end: STD_LOGIC_VECTOR(9 DOWNTO 0):="1100001111";--783--图形显示横区结束CONSTANT hpixel_end: STD_LOGIC_VECTOR(9 DOWNTO 0):="1100011111";--799CONSTANT vsync_end: STD_LOGIC_VECTOR(9 DOWNTO 0):="0000000001";--1CONSTANT vdat_begin: STD_LOGIC_VECTOR(9 DOWNTO 0):="0000100010";--34 --图形显示横区开始,CONSTANT vdat_end: STD_LOGIC_VECTOR(9 DOWNTO 0):="1000000010";--514--图形显示横区结束CONSTANT vline_end: STD_LOGIC_VECTOR(9 DOWNTO 0):="1000001100";--524BEGIN--调用PLL模块U1: pll PORT MAP(inclk0=>clock,c0=>vga_clk);PROCESS(vga_clk)--行扫描.BEGINIF RISING_EDGE(vga_clk) THENIF hcount_ov='1' THENhcount<=B"00_0000_0000";ELSEhcount<=hcount+1;END IF;END IF;END PROCESS;hcount_ov<='1' WHEN hcount=hpixel_end ELSE '0';PROCESS(vga_clk)--场扫描.BEGINIF RISING_EDGE(vga_clk) THENIF hcount_ov='1' THENIF vcount_ov='1' THENvcount<=B"00_0000_0000";ELSEvcount<=vcount+1;END IF;END IF;END IF;END PROCESS;vcount_ov<='1' WHEN vcount=vline_end ELSE '0';------------------------------------------------------<<数据、同步信号输出。

VGA控制显示实验说明文档

VGA控制显示实验说明文档

VGA控制显示实验本实验是在VGA基本控制之上的更进一步的对VGA显示进行控制的。

1.VGA显示原理常见的彩色显示器一般由CRT(阴极射线管)构成,彩色是由R(红),G(绿),B(蓝)3基色组成。

显示采用逐行扫描的方式,阴极射线枪发出的电子束打在涂有荧光粉的荧光屏上,产生RGB三色基,最后合成一个彩色图像。

从屏幕的左上方开始自左向右的扫描,每扫完一行电子束回到下一行的最左端,每行结束后电子枪回扫的过程中进行消隐。

然后从新开始行扫描,消隐,直到扫描到屏幕的右下方,电子书回到屏幕的左上方重新开始新的图像扫描,并且在回到屏幕的左上方过程中进行消隐,在消隐的过程中不发射电子束。

每一行扫描结束时,用HS(行同步)信号进行同步;扫描完所有的行后用VS(场同步)信号进行同步。

2.VGA实验功能说明本实验设计是基于FPGA的VGA接口控制器,通过对FPGA硬件编程实现显示驱动,通过VGA接口在显示器上显示彩条,圆环和动态方块信号。

实现显示驱动需要5个信号:R,G,B,hsyncb,vsyncb,其中R,G,B分别为红,绿,蓝颜色的强度信号,hsyncb和vsyncb 为行同步和场同步信号,均为模拟信号。

由实验板将FPGA输出直接与VGA接口相连,中间没有D/A转换电路,因此这五个信号实际上均为数字信号。

hsyncb和vsyncb可用数字信号等效;R,G,B分别用3位数字信号表示。

用于显示驱动的行,场同步信号利用实验板的50MHz系统时钟产生。

VGA接口控制器由三个模块组成,即产生行场同步信号和消隐信号的VGASig模块,产生内容和位置信息的ColorMap模块,产生动态时序信号的count16以及顶层模块VGACore,模块之间的信号连接如图:本设计的整体思想是:首先由系统时钟二分频后作为VGASig模块的时钟输入信号;VGASig 模块的hsyncb信号和vsyncb信号形成顶层模块的hsyncb(行同步)和vsyncb(场同步)信号;VGASig模块的hcnt和vcnt信号作为ColorMap模块的地址控制输入,ColorMap模块根据该信号的值输出相应的RGB颜色信息rgbx,rgby,rgbz和rgbw。

VGA图像显示控制器设计

VGA图像显示控制器设计

信息与通信工程学院数字电路综合实验报告课题名称:VGA图像显示控制器设计班级:2008211113姓名:学号:序号:日期: 2011年 1月摘要本实验报告为VGA显示控制器设计报告。

实验设计了基于VHDL描述的VGA显示控制器,通过FPGA控制CRT显示器显示色彩和图形。

完成的功能包括64种纯色的显示、横向和纵向彩色条幅的显示以及正方形色块的运动与控制。

实验的重心放在了显示控制器的系统层面的设计,采用了自顶向下的思路进行设计,系统的核心为有限状态机。

报告中给出了完整的设计思路和过程,并将系统分模块进行了详细的设计,给出了VHDL语言描述。

完成了状态机和核心模块以及系统整体的仿真验证。

最终下载到实验板上测试通过。

关键词: FPGA;VHDL; VGA显示控制;状态机第一部分任务要求 (1)1.1课题要求 (1)1.2设计目标 (1)第二部分系统设计 (2)2.1设计思路 (2)2.2系统结构设计 (3)2.2.1系统结构框图 (3)2.2.2系统逻辑功能划分 (3)2.2.3层次模块划分 (4)2.2.4模块设计图 (6)2.2.5控制器设计 (7)2.2.6状态机设计 (8)2.2.7基本模式设计 (9)2.2.8用户模式设计 (10)2.3系统硬件语言描述 (12)2.3.1VHDL描述思路 (12)2.3.2总体电路的描述 (12)2.3.3分块电路的描述 (16)2.4系统仿真验证 (28)第三部分结果与分析 (32)3.1实现功能说明 (32)3.2器件资源分析 (33)3.3VHDL设计优化 (35)3.4故障和问题分析 (37)第四部分总结与结论 (38)4.1实验结论 (38)4.2总结体会 (38)第五部分附录部分 (40)5.1元器件和仪表清单 (40)5.2VHDL源代码 (40)5.3电路图 (56)5.4参考文献 (63)第一部分任务要求1.1课题要求设计一个 VGA 图像显示控制器。

基于vga显示的逻辑分析仪(显示控制部分)_毕设论文

基于vga显示的逻辑分析仪(显示控制部分)_毕设论文

JIU JIANG UNIVERSITY数字逻辑系统课程设计题目基于VGA显示的逻辑分析仪(显示控制部分)英文题目 The Logic Analyzer Based onVGA Display(Display Control)九江学院学士学位论文摘要逻辑分析仪是一种有效的、最具代表性的数字逻辑分析仪器,目前得到了广泛的应用,但其昂贵的价格和复杂的操作方式,限制了其在小型实验室或教育机构的使用。

基于台式一体机的设计思想,本文提出了一种采用廉价FPGA实现数字逻辑信号采集,处理,由通用VGA显示器显示数字信号的逻辑分析仪。

VGA显示输出具有兼容性强,显示内容丰富,不需要依靠计算机的优势。

基于一体机的思路,系统硬件分为五大部分,分别为信号输入单元、FPGA核心处理单元、输入控制单元和状态显示单元及VGA接口单元。

分别实现信号的输入整形、采集处理、工作状态显示和显示数据DA转换。

本文采用电阻分压的方式进行色彩信号的DA 转换,将二进制RGB数据帧,转换为对应的模拟电压信号。

最终实现多路逻辑信号的采集、处理,最终将波形数据显示于VGA 显示器上。

逻辑处理部分,采用EDA自上而下的设计思想,首先,按功能划分模块,分为采样触发控制模块、采样频率控制模块、双口RAM 存储模块、波形显示控制模块、VGA 显示驱动模块、键盘显示控制模块六个模块;然后,用VHDL语言设计对应的模块,本文详细分析了VGA逐行扫描的工作原理,并最终实现数据的显示;最后,在系统级的层次,将各个模块有机结合在一起,形成了一个具有十路输入,六种触发方式,采样频率可调,使用通用VGA显示器显示的逻辑分析仪。

本设计利用FPGA芯片和EDA设计方法,实现了廉价实用的逻辑分析仪,既能够大大降低成本,又可以满足生产实践中不断变化的需要。

关键词: VGA;逻辑分析仪;EDA;FPGA- I -基于VGA显示的逻辑分析仪Display Based on the Logic Analyzer DesignAbstractLogic analyzer is an effective, most representative of digital logic devices have been widely used at present, but its high price and complex mode of operation, limited in a small laboratory or educational institution use.Desktop machine based on one design, the paper proposes a low-cost FPGA using digital logic signal acquisition, processing, generic VGA display by the digital signal of the logic analyzer. VGA display output with the compatibility, display rich content and do not need to rely on the computer's advantage.Thinking on one machine, system hardware is divided into five parts, namely, the signal input unit, FPGA core processing unit, input control unit and the status display unit and the VGA interface unit. Respectively, and the signal is input shaping, acquisition and processing, work status, and display data DA conversion. This resistor divider with the way color signals DA conversion, the binary RGB data frame, converted to corresponding analog voltage signal. Ultimately multiple logic signal acquisition, processing, waveform data will eventually be shown on the VGA monitor.Logic processing, we adopt the EDA design from top to bottom, first, by function, module, trigger control module is divided into sampling, the sampling frequency control module, dual-port RAM memory modules, waveform display control module, VGA display driver module, keyboard Display control module 6 module; Then, the corresponding VHDL language design module, the paper analyzes the working principle of progressive scan VGA and, ultimately, the display of data; Finally, the level at the system level, the combination of the various modules in together to form a 10-input, six trigger, the sampling frequency is adjustable using the Universal VGA display logic analyzer.This design using FPGA chip and EDA design, cheap and practical realization of the logic analyzer, not only can greatly reduce the cost and production practices to meet changing needs.Key Words: VGA; Logic Analyzer; EDA; FPGA- II -九江学院学士学位论文目录摘要 (I)Abstract (II)引言 (1)1 绪论 (2)1.1 VGA的背景 (2)1.2 VGA的发展与应用 (3)1.3 基于VGA显示的逻辑分析仪的优势 (3)1.4 论文的结构 (4)2 基于VGA显示的逻辑分析仪的设计 (5)2.1 总体方案的设计 (5)2.2 硬件设计的方案 (5)2.3 软件设计的方案 (6)2.4 采用的主要技术 (7)2.4.1 FPGA (7)2.4.2 VHDL语言 (8)2.4.3 Quartus II 7.0开发平台 (9)3 系统硬件电路设计 (10)3.1 FPGA最小系统 (10)3.1.1 配置电路 (10)3.1.2 时钟及复位电路 (11)3.1.3 系统电源 (12)3.2 VGA接口电路 (13)3.2.1 VGA接口概述 (13)3.2.2 VGA接口电路设计 (14)3.3 其他外围电路 (15)3.3.1输入控制电路 (15)3.3.2 状态显示电路 (16)4 系统软件设计 (17)4.1 双口RAM存储模块 (17)4.2 VGA驱动模块 (18)4.2.1 VGA时序 (19)1基于VGA显示的逻辑分析仪4.2.2 VGA逐行扫描的工作原理 (19)4.3 波形显示控制模块 (21)4.3.1 波形数据存储格式 (21)4.3.2 波形图像显示 (21)4.4 键盘控制显示模块 (23)4.5 其他模块 (23)5功能调试与测试 (24)5.1 按键输入与显示 (24)5.2 系统测试 (25)6 总结及展望 (26)参考文献 (27)致谢 (28)2九江学院学士学位论文引言20 世纪70 年代初研制出了微处理器,出现4位和8 位总线,传统示波器的双通道输入无法满足8bit的观察。

实验五-VGA

实验五-VGA

南昌大学实验报告学生姓名:赵震学号: 6103414030 专业班级:生物医学工程141班实验类型:□验证□综合√□设计□创新实验日期: 2016.12.16 实验成绩:实验五:VGA 彩条信号发生器的设计(一)实验目的:1.了解普通显示器正确显示的时序。

2.了解 VHDL 产生 VGA 显示时序的方法。

3.进一步加强对 FPGA 的认识。

(二)实验原理:VGA 显示器在显示过程中主要由五个信号来控制,分别是 R、G、B、HS 和VS。

其中 R、G、B 分别用来驱动显示器三个基色的显示,即红、绿和篮,HS是行同步信号,VS 是场同步信号。

在做本实验时,由于没有任何显示器驱动,所以显示器工作在默认状态,分辨率:640×480,刷新率:60Hz。

在此状态下,当VS和 HS都为低电平时,VGA 显示器显示亮的状态,其正向扫描过程约为 26us。

当一行扫描结束后,行同步信号 HS置高电平,持续约 6us 后,变成低电平,在HS为高电平期间,显示器产生消隐信号,这就是显示器回扫的过程。

当扫描完一场后,也就是扫描完 480行以后,场同步信号 VS置高电平,产生场同步,此同步信号可以使扫描线回到显示器的第一行第一列位置。

显示器显示的时序图如下图 2-22 所示:图 2-22 CRT 显示器时序(三)设计要求:本实验要完成的任务就是通过FPGA在显示器上显示一些条纹或图案,要求CRT显示器上能够显示横条纹、竖条纹以及棋盘格子图案。

实验中系统时钟选择时钟模块的12MHz,用一个按键模块的S1来控制显示模式,每按下一次,屏幕上的图案改变一次,依次为横条纹、竖条纹以及棋盘格子图案。

实验的输出就直接输出到 VGA 接口,通过CRT 显示器显示出来。

实验箱中用到的数字时钟模块、按键开关与 FPGA 的接口电路,以及数字时钟源、按键开关与 FPGA 的管脚连接在以前的实验中都做了详细说明,这里不在赘述。

VGA接口在实验系统的视频输入输出模块。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五 VGA图像显示控制
一实验目的
1.进一步掌握VGA显示控制的设计原理。

2.了解图像的存储和读取方法。

3.进一步掌握4×4键盘或PS/2键盘接口电路设计方法。

4.掌握状态机设计复杂控制电路的基本方法。

二硬件需求
1.EDA/SOPC实验箱一台。

三实验原理
VGA图像显示控制利用实验三中学习的《VGA显示控制模块》显示存储于ROM中的图像数据。

要显示的图像是四块64*64像素大小的彩色图片,通过键盘控制可以选择不同的图片显示。

图像可以在屏幕上移动(水平和垂直方向每帧分别移动“H_Step”点和“V_Step”点),通过键盘改变“H_Step”和“V_Step”的值即可改变其移动速度和方向。

图像碰到屏幕边沿会反弹回去。

如图5.1所示
H_Step
V_Step
图5.1 VGA图像显示控制示意图
实验中要用到4×4键盘、VGA显示控制、ROM等模块,在《实验三常用模块电路的设计》中已经讲述,可以直接使用已做好的模块(可能需要修改部分代码)。

键盘也可以使用PS/2接口键盘,这样可以输入更多的字符。

四实验内容
1、图5.2是整个设计的顶层电路。

图5.2 VGA图像显示控制顶层电路图
2、实验三中学习的几个模块
①“Read_Keyboard”模块与实验三中的4×4键盘模块一致;
②四个ROM模块使用宏功能模块实现,并设置其内存初始化文件分别为“FBB.mif”、“dog.mif”、“cat.mif”、“flower.mif”,如图5.3所示。

当然也可以用其他图片(大小为64*64)使用“BmpToMif”软件生成对应的“mif”文件,如图5.4所示。

图5.3 内存初始化文件设置
图5.4 获取内存初始化文件(mif文件)
③“VGA”模块与实验三中基本一致,只需要在端口中屏蔽“key”端口,并加入“imag_rgb
: in std_logic_vector(2 downto 0);”用于从外部输入图像数据。

代码中倒数第三个进程改为图5.5所示,此时最后两个进程也可以删除了。

图5.5 修改代码从外部输入图像数据
④“div_24000”模块用于将24M时钟分频输出1KHz用于键盘扫描。

3、新增加模块说明:
①“imagController”模块,代码如图5.6所示(部分代码用文字描述,请用VHDL语言补充完整)。

端口VS、hcnt、vcnt是“VGA”模块的输出,用于确定扫描点位置;H_Step、V_Step、Pause端口由“Keyboard_Manage”模块输出,用于设置图像块移动的速度和方向;ROM_DATA是来自于ROM模块中的图像数据。

图5.6 “imagController”模块主要代码
②“Keyboard_Manage”模块,用于接收键盘输入,根据键盘输入设置图像显示及移动参数。

其主要代码如图5.7所示。

图5.7 “Keyboard_Manage”模块主要代码
③“SEL_ROM”模块,用于选通四个图像ROM,即根据SEL[1..0]的值,从Q1~Q4中选择一个输出到ROM_DA TA端口。

五实验步骤
1.首先打开Quartus II软件,新建一个工程,并新建一个VHDL File。

2.按照自己的想法,编写VHDL程序。

3.对自己编写的VHDL程序进行编译并仿真。

4.仿真无误后,根据附录一的引脚对照表,对实验中用到时钟、4×4键盘、按键以及VGA模块对应的FPGA引脚进行管脚绑定,然后再重新编译一次。

5.用下载电缆通过JTAG接口将对应的sof文件下载到FPGA中。

6.测试电路的工作是否满足实验要求。

六、实验报告要求
1.详细论述源码中实现各功能模块的设计要点。

2.由于ROM模块采用时许逻辑电路设计,其数据输出与地址值在实践上有什么关系?会导致图像显示位置有何影响?如何在设计中消除这一影响,使图像显示位置更加精确?
3. 6×6键盘有几种按键状态(不包括组合键),应该定义多少编码来表示?如果包含所有组合键,则用于表示按键状态的编码至少应定义为几位?
4. 如果用“#”键作为功能键(类似PC键盘上的[Ctrl]键),如何输入“#+C”(类似于“Ctrl+C”)这种组合功能键?(只说思路,不用给出具体实现)
5. 实验的心得体会。

相关文档
最新文档