VGA实现显示器条纹显示.doc_第1页
VGA实现显示器条纹显示.doc_第2页
VGA实现显示器条纹显示.doc_第3页
VGA实现显示器条纹显示.doc_第4页
VGA实现显示器条纹显示.doc_第5页
免费预览已结束,剩余4页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

深 圳 大 学 实 验 报 告 课程名称: 基于VHDL编程的FPGA设计 实验名称: VGA控制器设计实现显示器条纹显示 学院: 信息工程学院 专业: 电子信息工程 班级: 组号: 指导教师: 报告人: 学号: 实验时间: 2012 年 10 月 31 日 星期 三 实验地点 南区N413 实验报告提交时间: 2012.11.11 实验要求:题目、VGA控制器设计实现显示器条纹显示要求:通过FPGA板的VGA接口在显示器上显示一幅640*480由八条不同颜色的横向条纹组成的图像。(从上到下颜色分别为:红,蓝,绿,蓝,红,绿,红,蓝)实验原理:VGA彩色显示器,彩色是由R、G、B(红、绿、蓝)三基色组成,CRT用逐行扫描方式实现图像显示,由VGA控制模块产生的水平同步信号(HS)和垂直同步信号(VS)控制阴极射线枪产生的电子束,打在涂有荧光粉的荧光屏上,产生R、G、B三基色,合成一个彩色像素。扫描从屏幕的左上方开始,由左至右,由上到下,逐行进行扫描,每扫完一行,电子束回到屏幕下一行的起始位置,在回扫期间,CRT对电子束进行消隐,每行结束是用行同步信号HS进行行同步;扫描完所有行,再由场同步信号VS进行场同步,并使扫描回到屏幕的左上方,同时进行场消隐,预备下一场的扫描。显示需要R,G,B,Hsync(行同步),Vsync(帧同步)五个信号输出到显示器,本设计按照VGA工业标准输出640*48060Hz。对应的时序如下:图1 VGA接口信号基本时序图表1 25MHz 640*48060Hz模式下VGA的时序实验内容:A.VHDL程序代码library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity Color isport(clk : in std_logic; v,h : buffer std_logic; rgb : buffer std_logic_vector(7 downto 0);end Color;architecture Behavioral of Color issignal rgbs : std_logic_vector(7 downto 0):=00000000;signal hs,vs : std_logic;signal fclk: std_logic:=0;begin process(clk,fclk)variable h_count:integer range 0 to 800 :=0;variable v_count:integer range 0 to 521 :=0;begin -if(clkevent and clk=1) then if(fclk=0) then fclk =1;end if;if(fclk=1) then fclk 16 and h_count112 thenhs =0;else hs 10 and v_count=12 thenvs =0;else vs 160) and (h_count rgbs rgbs rgbs rgbs rgbs rgbs rgbs rgbs rgbs =00000000;end case;else rgbs=00000000;end if;-rgb =rgbs;v =vs;h clk, v = v, h = h, rgb = rgb ); - Clock process definitions clk_process :process beginclk = 0;wait for clk_period/2;clk = 1;wait for clk_period/2; end process; - Stimulus process stim_proc: process begin - hold reset state for 100 ns. wait for 100 ns; wait for clk_period*10; - insert stimulus here wait; end process;END;仿真波形布局布线后的仿真波形:仿真波形实验结果:ASM图实验过程分析:一、代码分析I. 时钟配置分析。像素时钟配置要求为25Mhz。在程序代码中可以通过两种方式实现25Mhz配置的时钟,第一种是通过上学期EDA中所学的二分频思想;第二种则是调用IP Core的内部时钟。II. 水平扫描周期与垂直扫描周期的分析。通过时序分析图,以及参数表,分别读出了水平与垂直周期下的高低电平所占时钟的个数,并且成功在代码段上实现出来。III.8位颜色数据的读取规则。在FPGA板子的VAG接口上,若端口R9,T8,R8,N8,P8,P6,U5,U4分别对应8位数据的低位到高位,那么红色对应的代码是00000111,绿色对应的代码是00111000,蓝色对应的代码是11000000。2、 仿真分析一个水平扫描周期占800个时钟,一个垂直扫描周期占521线,即521*800个时钟。在水平同步信号HS以及垂直同步信号VS均为高电平状态时,将有颜色数据输出。代码实现60线将出现一种颜色,即共有8条水平颜色带均匀出现在屏幕上,风别为红,蓝,绿,蓝,红,绿,红,蓝。 实验心得总结:通过这一次的实验,可以说对于FPGA是首次从理论过度到实践中去。从一开始的完全一头雾水到最后做到较为透彻的理解,这一过程十分不容易。首先是分频器的书写,这是上一学期EDA的内容,但是要用时,总是忘记得一干二净,当然通过这次的实验,可以说再也不会忘记如何书写分频器了。其次,就是关于扫描周期的时钟参数不懂得如何去读出来,如何在代码上对应上去,当然最终也是在问同学,问老师,解决了问题。最后,就是仿真代码不会看。水平与垂直扫描周期的关系,与颜色数据的关系,一直都看不懂,最

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论