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. PTA-栈(括弧匹配)

    #include<bits/stdc++.h> using namespace std; #define STACK_INIT_SIZE 10000 #define STACKINCREM ...

  2. 函数QFileSystemModelPrivate::_q_fileSystemChanged

    由于Qt的体系过于庞大,即使是某个模块,分析起来也十分困难.对于QFileSystemModel,我们在这里对单个重要函数慢慢分析 1 /*! \internal The thread has rec ...

  3. .Net Core+Angular6 学习 第一部分(创建web api)

    . 创建.net core web api 1.1 选择一个empty 模式,里面只有简单的2个class 1.2 配置web api 的路由. 1.2.1 打开Startup.cs,首先引用conf ...

  4. python模块之time_random

    把老师的资料放在最上面: 参考: http://www.cnblogs.com/yuanchenqi/articles/5732581.html 导入模块的方法: #!/usr/bin/env pyt ...

  5. 爬取QQ音乐歌手的歌单

    import requests# 引用requests库res_music = requests.get('https://c.y.qq.com/soso/fcgi-bin/client_search ...

  6. 一个简单可靠的CRC 计算程序

    //注:此函数主要的特点为准,快,体积小,非常适合于8位单片机 int16 crc_1021(int16 old_crc, int8 data) {   int16 crc;   int16 x;   ...

  7. html之跳转锚

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Python 子进程不能input

    from threading import Thread from multiprocessing import Process def f1(): name = input('请输入名字') #EO ...

  9. Windows10 VS2017 C++编译Linux程序

    #include <cstdio> #include <iostream> #include "unistd.h" using namespace std; ...

  10. UGUI学习——Canvas基础组件

    UGUI的分辨率自适应的机制 UGUI中,Canvas(画布)可以看成电脑屏幕,其功能和属性都是一样的.游戏中的分辨率自适应主要包括两部分: 1. 缩放适应:是在不同尺寸的屏幕下,整体缩放比例的计算方 ...