Verilog HDL VGA Driver for Xilinx Nexys 4 适用于Nexys4的VGA驱动
/*
* Function: VGA Timing Generator
* Author: Liutianchen
* Date: 2016-12-5
* Version: 6.0
* Environment: Verilog HDL with Vivado 2016.3
*/ `timescale 1ns / 1ps /*
PARAMETER:
0: Sync
1: Sync + Back porch
2: Sync + Back porch + Display Area
3: Sync + Back porch + Display Area + Front Porch
*/ module vga_time_gen(
input clk,
input rst,
input ena,
output VGA_HS,
output VGA_VS,
output reg Ready,
output [:] HCounter,
output [:] VCounter); reg [:] cntH=,cntV=; reg [:] Hpara [:];
reg [:] Vpara [:]; initial begin
///Parameter Announcement /// 1280 x 1024@60hz 108MHz
Hpara[]=;
Hpara[]=+;
Hpara[]=++;
Hpara[]=+++; Vpara[]=;
Vpara[]=+;
Vpara[]=++;
Vpara[]=+++; ////800x600@60hz 40MHz
// Hpara[0]=128;
// Hpara[1]=128+88;
// Hpara[2]=128+88+800;
// Hpara[3]=128+88+800+40;
//
// Vpara[0]=4;
// Vpara[1]=4+23;
// Vpara[2]=4+23+600;
// Vpara[3]=4+23+600+1; ////1024x768@85hz 94.6MHz
// Hpara[0]=96;
// Hpara[1]=96+208;
// Hpara[2]=96+208+1024;
// Hpara[3]=96+208+1024+48;
//
// Vpara[0]=3;
// Vpara[1]=3+36;
// Vpara[2]=3+36+768;
// Vpara[3]=3+36+768+1;
end ///////////////Horizontal Scanning/////////////////// always@(posedge clk or posedge rst) begin
if(rst)
cntH<=;
else if(cntH==Hpara[])
cntH<=;
else
cntH<=cntH+;
end ///////////////Vertical Scanning///////////////////// always@(posedge clk or posedge rst) begin
if(rst)
cntV<=;
else if(cntV==Vpara[])
cntV<=;
else if(cntH==Hpara[])
cntV<=cntV+;
end ///////////////Displaying Area Ready?/////////////// always@(posedge clk or posedge rst) begin
if(rst)
Ready<=;
else if(cntH>Hpara[] && cntH<Hpara[] &&
cntV>Vpara[] && cntV<Vpara[])
Ready<=;
else
Ready<=;
end ///////////////////Output Sync Signal/////////////// assign VGA_HS=cntH<=Hpara[]?(ena?:):;
assign VGA_VS=cntV<=Vpara[]?(ena?:):; ///////////////////Ouput Position//////////////////// assign HCounter=cntH-Hpara[];
assign VCounter=cntV-Vpara[]; endmodule
VGA端口时序发生器,适用于Xilinx公司Nexys4开发板。
Nexys4开发板支持4096色RGB显示输出。
请使用时钟IP核发生VGA显示需要的时钟频率。频率对应的时序参数表可从Tiny VGA网站查阅。
转载请注明出处。
原文地址:http://www.cnblogs.com/liutianchen/p/6292721.html
如果你还没选课那请选张志峰别问为什么。。。
Verilog HDL VGA Driver for Xilinx Nexys 4 适用于Nexys4的VGA驱动的更多相关文章
- 基于Verilog HDL 的数字时钟设计
基于Verilog HDL的数字时钟设计 一.实验内容: 利用FPGA实现数字时钟设计,附带秒表功能及时间设置功能.时间设置由开关S1和S2控制,分别是增和减.开关S3是模式选择:0是正常时钟 ...
- 浅谈Verilog HDL代码编写风格
消失了好久,没有写文章,也没有做笔记,因为最近再赶一个比赛,时间很紧,昨天周六终于结束了,所以趁着周末这会儿有时间,写点东西,记录下来.首先我学习FPGA才一年多,我知道自己没有资格谈论一些比较深层次 ...
- 如何高效的编写Verilog HDL——进阶版
博主之前写过一篇文章来谈论如何高效的编写Verlog HDL——菜鸟版,在其中主要强调了使用Notepad++来编写Verilog HDL语言的便捷性,为什么说是菜鸟版呢,因为对于新手来说,在还没有熟 ...
- Sublime Text 2 和 Verilog HDL
Sublime Text 2 和 Verilog HDL Date Fri 04 July 2014 Tags Sublime Text / Vivado Sublime Text 代码编辑器之于程 ...
- 基于Verilog HDL整数乘法器设计与仿真验证
基于Verilog HDL整数乘法器设计与仿真验证 1.预备知识 整数分为短整数,中整数,长整数,本文只涉及到短整数.短整数:占用一个字节空间,8位,其中最高位为符号位(最高位为1表示为负数,最高位为 ...
- 关于初次使用Verilog HDL语言需要懂的基本语法
关于初次使用Verilog HDL语言需要懂的基本语法 1.常量 数字表达式全面的描述方式为:<位宽><进制><数字> 8’b10101100,表示位宽为8的二进制 ...
- FPGA Verilog HDL 系列实例--------步进电机驱动控制
[连载] FPGA Verilog HDL 系列实例 Verilog HDL 之 步进电机驱动控制 步进电机的用途还是非常广泛的,目前打印机,绘图仪,机器人等等设备都以步进电机为动力核心.那么,下面我 ...
- Verilog HDL基础语法讲解之模块代码基本结构
Verilog HDL基础语法讲解之模块代码基本结构 本章主要讲解Verilog基础语法的内容,文章以一个最简单的例子"二选一多路器"来引入一个最简单的Verilog设计文件的 ...
- Verilog HDL模块的结构
一个设计是由一个个模块(module)构成的.一个模块的设计如下: 1.模块内容是嵌在module 和endmodule两个语句之间.每个模块实现特定的功能,模块可进行层次的嵌套,因此可以将大型的数字 ...
随机推荐
- linux tcp调优
Linux TCP Performance Tuning News Linux Performance Tuning Recommended Books Recommended Links Linux ...
- bigdata
1.打开cygwin,启动hadoop,运行jps命令查看节点启动情况 2.切换到hadoop根目录,运行指令 echo "hello boy hei baby hello word hel ...
- SlidingMenu Demo
参考:http://www.krislq.com/2013/03/android_case_slidingmenu_fragment/ 我下载了它的例子,然后自己重写了一下,运行时总报错,原来是sup ...
- python学习——练习题(9)
""" 题目:暂停一秒输出. 程序分析:使用 time 模块的 sleep() 函数. http://www.runoob.com/python/python-date- ...
- 我的Linux之路——windows10用WMware安装CentOS6.9 虚拟机详细步骤
出自:http://blog.51cto.com/13438667/2059926 一.安装环境 windows10操作系统物理机VMware Workstation 软件(可以在网上下载)CentO ...
- 塔防游戏 Day3
1. 添加按钮动画 选择 Button->Transition 为 Animation ,然后自定义四种状态动画即可. 2. 控制升级面板的显示和隐藏 // 升级处理 // 若点击同一炮塔,并且 ...
- Qt(自适应窗口)
关于窗口布局: 默认控件的大小为最小尺寸: 如果此时右键设置布局时,窗口大小会自动缩放对应大小,不利于调整. 建议窗口控件设置好最小尺寸,便于窗口布局时,控件不会变形,例如: 改变minimumsiz ...
- PHP - 用户异常断开连接,脚本强制继续执行,异常退出回调
试想如下情况.如果你的用户正在执行一个需要非常长的执行时间的操作.他点了执行了之后,浏览器就开始蛋疼地转.如果执行5分钟,你猜他会干啥,显然会觉得什么狗屎垃圾站,这么久都不响应,然后就给关了.当然这个 ...
- ubuntu linux常用指令(1)
序号 命令 说明 1 sudo su 从普通用户切换到root用户 2 su user 从root用户切换到普通用户 3 ls 列出当前目录的文件和目录,但是不包括隐藏文件和目录 4 ls -a 列出 ...
- bootstrap-select.js 下拉框多选后动态赋值
话不多说先上demo 其实demo是从官网下载的 只稍作改动 由于没有搞清楚怎么上传源代码 就把官网的链接贴出来吧 https://github.com/silviomoreto/bootstrap- ...