10.9典型实例19:VGA接口的规划与完成
10.9.1实例内容及方针
1.实例的主要内容
本节旨在规划完成了FPGA与VGA显现器的接口,协助读者进一步了解VGA接口的时序和规划办法。
2.实例方针
经过本实例,读者应到达以下方针。
·把握VGA接口的规范时序。
·把握运用FPGA规划驱动的基本思想和办法。
·熟练把握状态机的运用。
10.9.2VGA接口实例内容
赤色飓风开发板的VGA接口能够发生8种色彩,能够用来显现字符和简略图形。本实例要求经过VGA接口,在显现器上顺次显现8种色彩的五颜六色条纹,条纹宽度相同。
10.9.3FPGA代码规划完成
依照VGA时序要求发生行/列同步信号,并且在指定的时刻(有用像素期间)即将显现的色彩数据输出到RGB。
不同的显现形式和改写频率下,详细同步信号前、后、同步信号、有用像素数是不同的,要根据像素时钟频率来设置。以800×600,60Hz为例,像素时钟为40MHz,即:
像素时钟=(800+40+128+88)×(600+1+4+23)×60=40MHz
规划中可根据体系时钟频率来挑选适宜的显现形式。
10.9.4ModelSim仿真验证
1.行显现
设定一个列计数器,计数到相应的值时,给出相应的同步信号,并在像素有用期间,输出有用的色彩数据,行计数器经过检测列同步信号来计数,检测到列同步信号,表明新一行的开端,这样就可控制在不同的行显现不同的内容。
仿真成果如图10.45所示。
图10.45行显现仿真成果
其间,hcnt为列计数,列计数到有用像素时,给出enable信号,只要enable信号为高时,才给出有用像素数据,并且在每个同步信号后,行计数器加1。
如图10.46所示为行同步信号发生时仿真成果,当计数到604-1=603行时,给出行同步信号,同步信号低电平继续4个行的时刻,同步信号后继续21行的时刻,之后再从榜首行榜首列开端。
图10.46行同步信号发生后仿真成果
2.列显现
如图10.47是列显仿真成果。列显现和行显现不同在于,同一行的像素,计数到不同的值时,输出不同的色彩数据,每一行都是如此,终究就可得到列显的五颜六色条纹。
图10.47列显仿真成果
10.9.5小结
本节对运用FPGA来驱动VGA接口显现器的办法做了介绍,并经过编译下载在赤色飓风的开发板上完成