//如果是8位的话,只选择低8位传输
//因为同步码也是可以自己设置,所以把同步码设置成parameter最好
module embeded_2_separate_sync(
input clk,
input [:] din,
output[:] dout,
output h_black_out,//包括同步码在内的Black
output v_black_out,//包括同步码在内的Black
output h_no_sync_black_out,//不包括同步码在内的Black
output h_sync_black_out,//只在4个同步码周期为高电平
output de_o,
output reg [:] line_cnt//计算行数 );
parameter VAL_SAV = 'h80;
parameter VAL_EAV = 'h9d;
parameter IVAL_SAV = 'hab;
parameter IVAL_EAV = 'hb6; parameter DATA_WIDTH = ;
reg [DATA_WIDTH-:] v_data [:] ; always @( posedge clk )
begin
v_data[] <= din;
end
genvar i ;
generate for( i = ;i <= ;i = i+ )
begin :data_dly
always@( posedge clk )begin
v_data[i+] <= v_data[i];
end
assign dout = v_data[]; end
endgenerate
wire [:] time_ref_code;
reg [:] time_ref_code_r = ;
assign time_ref_code[] = (v_data[][:] == 'hff ) ? 1'b1 : 'b0;
assign time_ref_code[] = (v_data[][:] == 'h00 ) ? 1'b1 : 'b0;
assign time_ref_code[] = (v_data[][:] == 'h00 ) ? 1'b1 : 'b0;
assign time_ref_code[] = (v_data[][:] ==VAL_SAV ) ?'b1 : 1'b0;
assign time_ref_code[] = (v_data[][:] ==VAL_EAV ) ?'b1 : 1'b0;
assign time_ref_code[] = (v_data[][:] ==IVAL_SAV) ?'b1 : 1'b0;
assign time_ref_code[] = (v_data[][:] ==IVAL_EAV) ?'b1 : 1'b0; always @( posedge clk )
begin
time_ref_code_r <= time_ref_code;
end // reg h_sync;
// reg v_sync;
reg h_sync_r = ;
reg v_sync_r = ;
always @( posedge clk )
begin
case(time_ref_code_r )
'h71 :begin h_sync_r = 1'b0; v_sync_r = 'b0; end
'h72 :begin h_sync_r = 1'b1; v_sync_r = 'b0; end
'h74 :begin h_sync_r = 1'b0; v_sync_r = 'b1; end
'h78 :begin h_sync_r = 1'b1; v_sync_r = 'b1; end
default : begin h_sync_r = h_sync_r; v_sync_r = v_sync_r; end
endcase
end reg [:] h_sync_dly = ;
reg [:] v_sync_dly = ;
always @( posedge clk )
begin
h_sync_dly[:] <= {h_sync_dly[:],h_sync_r};
v_sync_dly[:] <= {v_sync_dly[:],v_sync_r};
end reg [:] h_sync_r2 = 'b00;
reg [:] v_sync_r2 = 'b00;
always @( posedge clk )
begin
v_sync_r2[:] <= {v_sync_r2[],v_sync_r};
h_sync_r2[:] <= {h_sync_r2[],h_sync_r};
end
wire pos_h = (h_sync_r2 == 'b01);
wire pos_v = (v_sync_r2 == 'b01);
always @( posedge clk )
begin
if( pos_v )
line_cnt <= ;
else if( pos_h )
line_cnt <= line_cnt + 'b1;
else
line_cnt <= line_cnt;
end wire h_black ;
wire h_no_sync_black;
wire h_sync_black;
reg h_black_r = ;
reg v_black_r = ;
reg h_no_sync_black_r = ;
reg h_sync_black_r = ;
reg h_sync_orign_r = ;
reg de_r = ;
assign h_black = h_sync_r | h_sync_dly[] ;
assign h_no_sync_black = h_sync_r & h_sync_dly[] ;
assign h_sync_black = h_black^h_no_sync_black ;
always @( posedge clk )
begin
h_black_r <= h_black;
de_r <= v_sync_r ? :~h_black;
v_black_r <= v_sync_r;
h_no_sync_black_r <= h_no_sync_black;
h_sync_black_r <= h_sync_black;
h_sync_orign_r <= h_sync_r;
end assign h_black_out = h_black_r;
assign v_black_out = v_black_r;
assign h_no_sync_black_out = h_no_sync_black_r;
assign h_sync_black_out = h_sync_black_r;
assign de_o = de_r;
endmodule

embeded_2_separate_sync的更多相关文章

随机推荐

  1. webpack.prod.conf.js

    // 引入依赖模块 var path = require('path') var utils = require('./utils') var webpack = require('webpack') ...

  2. JS打开新窗口,子窗口操作父窗口

    <!--父窗口弹窗代码开始--> <script type="text/javascript"> function OpenWindow() { windo ...

  3. python 字符串 列表 字典 常用方法

    今天学习内容如下: 1.学习昨天练习题目的解题新方法 #1.使用while循环输入 1 2 3 4 5 6 8 9 10 ''' count = 0 while count < 10: coun ...

  4. c#特性attribute:

    特性是被编译到metadata中,  是提供给反射用的. 特性attribute:1 什么是attribute,和注释有什么区别 2 声明和使用attribute3 使用attribute完成扩展4 ...

  5. linux通过speedtest-cli测试服务器网速

    1.git clone speedtest源码 git clone https://github.com/sivel/speedtest-cli.git 2.运行speedtest.py cd spe ...

  6. oracle 直接复制表内容到新表

    不知道为什么,刚建的oracle数据库删除数据很慢,表里面有120多万数据,非常地慢 于是采用的复制的方法,命令如下: create table students_backup as select * ...

  7. hdu 5459(2015沈阳网赛) Jesus Is Here

    题目;http://acm.hdu.edu.cn/showproblem.php?pid=5459 题意 给出一组字符串,每个字符串都是前两个字符串相加而成,求第n个字符串的c的各个坐标的差的和,结果 ...

  8. javascript 高级程序设计 三

    Sorry,前两张介绍的主题还是JavaScript,而第一章介绍了JavaScript和ECMAScript区别,所以前两章介绍的主题应该改为ECMAScript,但是 标题就不改了因为现在人们习惯 ...

  9. UI设计师经常去的五个网站

    1.站酷 站酷(ZCOOL),中国人气设计师互动平台.深耕设计领域十年,站酷聚集了470万优秀设计师.摄影师.插画师.艺术家.创意人,设计创意群体中具有较高的影响力与号召力.   2.花瓣 花瓣网, ...

  10. 虚函数与bind 实现设计模式的练习

    相同模式使用虚函数与bind function进行实现对比 #include "stdafx.h" #include <iostream> #include <f ...