这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 上一修订版 两侧同时换到之后的修订记录 | ||
vga驱动器的设计 [2019/12/04 17:14] zgf |
vga驱动器的设计 [2020/01/14 17:03] zgf |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ***银杏科技有限公司/Gingko Technology Co.,Ltd.** | + | | **银杏科技有限公司旗下技术文档发布平台** |||| |
- | ***技术支持论坛:http://www.eeschool.org** | + | |技术支持电话|**0379-69926675-801**||| |
- | ***旗舰店:http://icore.taobao.com** | + | |技术支持邮件|Gingko@vip.163.com||| |
- | ***技术支持邮件:GINGKO@vip.163.com** | + | |技术论坛|http://www.eeschool.org||| |
- | ***电话:0379-69926675** | + | ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ |
- | ***更新日期:12/4/2019** | + | | V1.0 | 2019-12-25 | gingko | 初次建立 | |
- | ***版本号:v1.0** | + | |
===== VGA驱动器设计 ===== | ===== VGA驱动器设计 ===== | ||
行 13: | 行 12: | ||
-掌握VGA接口驱动设计的方法和思路。 | -掌握VGA接口驱动设计的方法和思路。 | ||
=== 二、实验设备及平台 === | === 二、实验设备及平台 === | ||
- | -iCore3 双核心板( FPGA型号为EP4CE10F17)。\\ | + | -iCore3 双核心板( FPGA型号为EP4CE10F17)。[[https://item.taobao.com/item.htm?id=524229438677|点击购买]] |
- | -转接板和40P的FPC连接线。\\ | + | -转接板和40P的FPC连接线。 |
- | -iCore3(VGA)显示模块。\\ | + | -iCore3(VGA)显示模块。[[https://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-251734908.16.1a34750bPZ3UBu&id=537147487079|点击购买]] |
- | -Blaster(或相同功能的)仿真器和USB线缆。\\ | + | -Blaster(或相同功能的)仿真器和USB线缆。[[https://item.taobao.com/item.htm?id=554869837940|点击购买]] |
- | -Micro USB线缆。\\ | + | -Micro USB线缆。 |
- | -QuartusII开发软件(本实验中使用的是13.1版本)。\\ | + | -QuartusII开发软件(本实验中使用的是13.1版本)。 |
- | -带有VGA接口的主机和VGA接口分辨率1024 * 768@60Hz的液晶显示器。\\ | + | -带有VGA接口的主机和VGA接口分辨率1024 * 768@60Hz的液晶显示器。 |
- | {{ :icore3:图29-1_硬件连接实物图.jpg?700 |图29-1 硬件连接实物图,核心板在上,转接板在下}}\\ | + | |
+ | {{ :icore3:图29-1_硬件连接实物图.jpg?direct |图29-1 硬件连接实物图}} | ||
**注意事项1:** 注意FPC转接板和核心板之间引脚要对齐(如图29-1中**①**处所示,转接板和核心板边缘要对齐)。\\ | **注意事项1:** 注意FPC转接板和核心板之间引脚要对齐(如图29-1中**①**处所示,转接板和核心板边缘要对齐)。\\ | ||
**注意事项2:** FPC软排线与FPC接口连接时,请确认软排线接口处蓝色绝缘皮朝上(如图29-1中**②③**所示)。\\ | **注意事项2:** FPC软排线与FPC接口连接时,请确认软排线接口处蓝色绝缘皮朝上(如图29-1中**②③**所示)。\\ | ||
- | **注意事项3:** 下载程序前请确认FPC转接板和软排新与核心板的引脚连接无误,且iCore3核心板引脚与PIN.tcl文件中绑定引脚相互对应。\\ | + | **注意事项3:** 下载程序前请确认FPC转接板和软排新与核心板的引脚连接无误,且iCore3核心板引脚与PIN.tcl文件中绑定引脚相互对应。\\ |
=== 三、实验原理 === | === 三、实验原理 === | ||
== 1. VGA时序 == | == 1. VGA时序 == | ||
行 29: | 行 30: | ||
VESA_VGA时序标准中关于1024 * 768@60Hz分辨率显示器接口时序定义如下所示: | VESA_VGA时序标准中关于1024 * 768@60Hz分辨率显示器接口时序定义如下所示: | ||
- | {{ :icore3:图29-2 vga接口时序定义图.jpg?700 |图29-2 vga接口时序图}} | + | {{ :icore3:图29-2_vga接口时序定义图.jpg?direct |图29-2 vga接口时序图}} |
*根据VESA_VGA时序标准中框①提示,1024 * 768@60Hz的显示器,如上图框②中规定,行扫描周期需要扫描1344个像素点的时间。因此,可以对像素点的个数进行计数,每扫描1344个像素点我们就可以认为完成了一次行扫描。如上图红框③中提示,行同步信号Hsync(代码中定义的名字为Sync_H)可以在行扫描第136个像素点时给出,然后在行扫描的第296个像素点至第1320个像素点之间使像素输出有效,从而在屏幕上一行显示出1024个有效像素点。 | *根据VESA_VGA时序标准中框①提示,1024 * 768@60Hz的显示器,如上图框②中规定,行扫描周期需要扫描1344个像素点的时间。因此,可以对像素点的个数进行计数,每扫描1344个像素点我们就可以认为完成了一次行扫描。如上图红框③中提示,行同步信号Hsync(代码中定义的名字为Sync_H)可以在行扫描第136个像素点时给出,然后在行扫描的第296个像素点至第1320个像素点之间使像素输出有效,从而在屏幕上一行显示出1024个有效像素点。 | ||
*为什么是在第296个像素点使像素输出有效呢,从图中框⑥提示可以知道,从行扫描周期开始至行显示有效这段时间,结合框③可以计算:\\ | *为什么是在第296个像素点使像素输出有效呢,从图中框⑥提示可以知道,从行扫描周期开始至行显示有效这段时间,结合框③可以计算:\\ | ||
- | **sync+Back Porch+Top/left Border = (136+160+0)Pixes** | + | **sync+Back Porch+Top/left Border = (136+160+0)Pixes** |
既扫描296个像素的时间。 | 既扫描296个像素的时间。 | ||
*同理,从框⑤中可以确定,一次帧扫描需要进行806个行扫描,因此,通过对行扫描计数,确定帧的刷新周期,并且在扫描第35行至第803行时,在行扫描的有效期输出对应像素点的RGB数据,就可以在屏幕上实现色彩显示。 | *同理,从框⑤中可以确定,一次帧扫描需要进行806个行扫描,因此,通过对行扫描计数,确定帧的刷新周期,并且在扫描第35行至第803行时,在行扫描的有效期输出对应像素点的RGB数据,就可以在屏幕上实现色彩显示。 | ||
行 54: | 行 55: | ||
工程编译完成后,可以在Tools->netlist viewers->RTL Viewer 中查看RTL视图如下: | 工程编译完成后,可以在Tools->netlist viewers->RTL Viewer 中查看RTL视图如下: | ||
- | {{ :icore3:图29-3 系统的rtl级视图,及各模块之间的信号关联.png?1000 |图29-3 系统的rtl级视图,及各模块之间的信号关联.}} | + | {{ :icore3:图29-3_系统的rtl级视图_及各模块之间的信号关联.png?direct |图29-3 系统的rtl级视图,及各模块之间的信号关联}} |
*下面主要介绍一下VGA_Ctrl模块的其中一种实现方式 | *下面主要介绍一下VGA_Ctrl模块的其中一种实现方式 | ||
行 75: | 行 76: | ||
*通过对VGA显示原理的分析和学习,掌握VGA接口的时序控制方法,实现icore3核心板FPGA驱动液晶显示器显示彩条效果。实验的主要目的是掌握对手册时序图的分析和理解,并能够根据时序图编写对应的Verilog文件,从而实现设计到项目的转化。 | *通过对VGA显示原理的分析和学习,掌握VGA接口的时序控制方法,实现icore3核心板FPGA驱动液晶显示器显示彩条效果。实验的主要目的是掌握对手册时序图的分析和理解,并能够根据时序图编写对应的Verilog文件,从而实现设计到项目的转化。 | ||
- | {{ :icore3:图29-4_效果展示.jpg?500 |实验效果展示}} | + | {{ :icore3:图29-4_效果展示.jpg?direct&400 |图29-4_效果展示}} |
*此实验需要深刻了解VGA接口时序定义,理解行同步信号和场同步信号的概念,理解消隐信号的概念以及VGA接口显示屏的刷新原理。 | *此实验需要深刻了解VGA接口时序定义,理解行同步信号和场同步信号的概念,理解消隐信号的概念以及VGA接口显示屏的刷新原理。 |