Verilog手绘FVH信号

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer: chensimin
//
// Create Date: 2018/09/17 13:20:06
// Design Name:
// Module Name: ntsc_fvh
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
////////////////////////////////////////////////////////////////////////////////// module ntsc_fvh( input wire clk, //27MHz
input wire rst,
input wire enable, output wire hsout,
output wire vsout,
output wire oeout ); parameter THSOUT = ; //2.4us
parameter H_TOTAL = ; //64us
parameter V_TOTAL = ; wire hsout_falling; //------------------------------------------------- reg [:]hsout_cnt = ;
always @(posedge clk or posedge rst)
begin
if(rst)
hsout_cnt <= ; else if(enable)
begin
if(hsout_cnt == H_TOTAL)
hsout_cnt <= ;
else
hsout_cnt <= hsout_cnt + 'b1;
end else
hsout_cnt <= ; end //------------------------------------------------- reg hsout_reg = 'b1 ;
always @(posedge clk or posedge rst)
begin
if(rst)
hsout_reg <= 'b1; else if(enable)
begin
if(hsout_cnt <= THSOUT - || hsout_cnt == H_TOTAL)
hsout_reg <= 'b0;
else if(hsout_cnt >= THSOUT && hsout_cnt <= H_TOTAL - )
hsout_reg <= 'b1;
end else
hsout_reg <= 'b1;
end //------------------------------------------------- reg hsout_reg_delay = 'b1;
always @(posedge clk or posedge rst)
begin
if(rst)
hsout_reg_delay <= 'b1; else if(enable)
hsout_reg_delay <= hsout_reg; else
hsout_reg_delay <= 'b1; end //------------------------------------------------- reg [:] hsout_falling_cnt = ;
always @(posedge clk or posedge rst)
begin
if(rst)
hsout_falling_cnt <= ; else if(enable)
begin if(hsout_falling_cnt == V_TOTAL)
begin
hsout_falling_cnt <= V_TOTAL;
if(hsout_falling)
hsout_falling_cnt <= ;
end else if(hsout_falling)
hsout_falling_cnt <= hsout_falling_cnt + 'b1;
end else
hsout_falling_cnt <= 'b0; end //------------------------------------------------- reg vsout_reg = 'b1;
reg oeout_reg = 'b0;
always @(posedge clk or posedge rst)
begin
if(rst)
begin
vsout_reg <= 'b1;
oeout_reg <= 'b0;
end else if(enable)
begin if(hsout_falling_cnt < || (hsout_falling_cnt == && hsout_cnt < && hsout_cnt >))
begin
vsout_reg <= 'b1;
oeout_reg <= 'b0;
end else if(hsout_falling_cnt == && hsout_cnt == )
begin
vsout_reg <= 'b0;
oeout_reg <= 'b1;
end else if(hsout_falling_cnt == && hsout_cnt == )
vsout_reg <= 'b1; else if(hsout_falling_cnt == && hsout_cnt == )
begin
vsout_reg <= 'b0;
oeout_reg <= 'b0;
end else if(hsout_falling_cnt == && hsout_cnt == )
vsout_reg <= 'b1; else
begin
vsout_reg <= vsout_reg;
oeout_reg <= oeout_reg;
end
end
end //------------------------------------------------- assign hsout_falling = hsout_reg_delay && (!hsout_reg);
assign hsout = hsout_reg;
assign vsout = vsout_reg;
assign oeout = oeout_reg; endmodule /* add_force {/ntsc_fvh/clk} -radix hex {1 0ns} {0 25000ps} -repeat_every 50000ps
add_force {/ntsc_fvh/rst} -radix hex {1 0ns} {0 100ns}
add_force {/ntsc_fvh/enable} -radix hex {1 0ns} */

仿真结果:

Verilog手绘FVH信号的更多相关文章

  1. JointBoost+CRF+GraphCut做手绘草图的分割

    研究生做的稍微有点水平的就这两个项目了:一个是利用SVM做手绘草图的分类,另一个是利用JointBoost+CRF做手绘草图的分割.总结得出的经验是做研究的方法就是将别人大神的代码看懂然后改成适合自己 ...

  2. Android基于mAppWidget实现手绘地图(一)--简介

    http://lemberg.github.io/mappwidget/user_guide.html 最近在看一些导游类应用,发现一些景区的导览图使用的完全是自定义地图,也就是手绘地图.这种小范围使 ...

  3. EDIUS手绘遮罩功能如何用

    学了这么久的EDIUS视频编辑软件,你们学的怎么样了呢?你们知道EIDUS手绘遮罩的用法么,会熟练地使用它么?如果你们还没有学到这一知识点的话也不要着急,因为你们看完下面这篇文章就会明白了.事不宜迟, ...

  4. 免费下载:320+ 手绘风格 Apple iOS7 图标

    Themify 图标是一套用在网页设计和应用程序的图标,包括 320+ 手工制作的像素完美的苹果  iOS7 图标中汲取灵感.这些图标完全免费,您可以用于任何目的,无论是个人或商业. 您可能感兴趣的相 ...

  5. IOS 手绘地图导航

    手绘地图导航 第三方库 NAMapKit, 1)支持在手绘图上标记.缩放 2)支持在单张图片 3)支持瓦片小图片 思路 前提:美工已经切好手绘图,并告知我们当前的缩放级别. 1)确定好手绘图左上角点在 ...

  6. 基于mAppWidget实现手绘地图(十五)–如何控制放大缩小

    一般来说,可以使用以下几种方式来控制地图的放大/缩小 : 使用控件底部的缩放按钮 双击控件 pinch手势 物理按键 :I键标识缩小 :O键表示放大.(只有设备具有物理按键才行)        当然, ...

  7. 基于mAppWidget实现手绘地图--索引&DEMO

    文章翻译完了,梳理一下,附Demo下载 基于mAppWidget实现手绘地图(一)–简介 基于mAppWidget实现手绘地图(二)–概要 基于mAppWidget实现手绘地图(三)–环境搭建 基于m ...

  8. UWP 手绘视频创作工具 “来画Pro” 技术分享系列

    开篇先来说一下我和来画的故事,以及写这篇文章的初衷. 今年年初时,我还在北京,在 Face++,做着人脸识别技术的 Windows 和 Android 端,做着人工智能终将实现世间所有美好的梦.这时的 ...

  9. UWP 手绘视频创作工具技术分享系列

    开篇先来说一下写这篇文章的初衷. 初到来画,通读了来画 UWP App 的代码,发现里面确实有很多比较高深的技术点,同时也是有很多问题的,扩展性,耦合,性能,功能等等.于是我们决定从头重构这个产品,做 ...

随机推荐

  1. Qt 文件的操作

    文件操作是应用程序必不可少的部分.Qt 作为一个通用开发库,提供了跨平台的文件操作能力.从本章开始,我们来了解下 Qt 的文件以及输入输出的功能,也就是 I/O 系统. Qt 通过QIODevice提 ...

  2. io 的一些简单说明及使用

    io 流简述: i->inputStream(输入流) o->outputStream  (输出流) IO流简单来说就是Input和Output流,IO流主要是用来处理设备之间的数据传输, ...

  3. 微信小程序(mpvue)—解决视频播放bug的一种方式

    // 第一页 <div @click="play(video.src, video.width, video.height)"></div> methods ...

  4. golang对不同系统的编译

    Golang 支持在一个平台下生成另一个平台可执行程序的交叉编译功能. Mac下编译 # mac编译linux执行文件 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go ...

  5. Selenium-java测试环境搭建

    1.1背景 Selenium也是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE.Mozilla Firefox.Mozilla ...

  6. [C++]几种排序

    本文为大大维原创,最早于博客园发表,转载请注明出处!!! 1.冒泡: #include<cmath> #include<cstdlib> #include<ctime&g ...

  7. Can DBC 文件翻译,不是很标准,凑合看还可以

    1 引言 DBC文件描述单个CAN网络的通信.这个信息足以监测和分析网络并模拟不是物理可用的节点(剩余的总线模拟). DBC文件也可以用来开发电子控制单元的通信软件,该控制单元应该是CAN网络的一部分 ...

  8. dos5章

    一.用set命令设置自定义变量 显示.设置或删除 cmd.exe 环境变量. SET [variable=[string]]variable 指定环境变量名.string 指定要指派给变量的一系列字符 ...

  9. 将JPA出参Iterable转为List

    Iterable<Entity> geted = entityDao.findAll();  List<Entity> list = Lists.newArrays();  g ...

  10. xpath | 计算两个节点集

    url = li.xpath("./div/div[2]/a/@href | ./div/div[2]/div[2]/a/@href").extract_first()