HD,3G视频数据中行号的插入方法---Verilog代码实现

行号的生成:

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer: chensimin
//
// Create Date: 2019/01/14 16:57:42
// Design Name:
// Module Name: line_num_pro
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
////////////////////////////////////////////////////////////////////////////////// module line_num_pro ( input wire clk,
input wire rst,
input wire eav,
input wire [:] vid_in, output wire [:] ln ); //----------------------------------------------------------------- assign v = vid_in[]; //----------------------------------------------------------------- reg last_v; always @(posedge clk or posedge rst)
begin
if(rst)
last_v <= 'b0;
else if(eav)
last_v <= v;
end //----------------------------------------------------------------- wire ln_load; assign ln_load = last_v & ~v; //----------------------------------------------------------------- assign ln_tc = ln_counter == ; //----------------------------------------------------------------- reg [:] ln_counter; always @(posedge clk or posedge rst)
begin
if(rst)
ln_counter <= 'd1; else if (eav)
begin
if(ln_load)
ln_counter <= 'd42;
else if(ln_tc)
ln_counter <= 'd1;
else
ln_counter <= ln_counter + 'b1;
end
end assign ln = ln_counter; //----------------------------------------------------------------- // ila_13 U576 (
// .clk(clk), // input wire clk // .probe0(vid_in), // input wire [9:0] probe0
// .probe1(eav), // input wire [0:0] probe1
// .probe2(v), // input wire [0:0] probe2
// .probe3(last_v), // input wire [0:0] probe3
// .probe4(ln_load), // input wire [0:0] probe4
// .probe5(ln_tc), // input wire [0:0] probe5
// .probe6(ln_counter), // input wire [10:0] probe6
// .probe7(ln) // input wire [10:0] probe7
// ); endmodule

行号的插入:

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer: chensimin
//
// Create Date: 2019/01/15 17:06:40
// Design Name:
// Module Name: line_num_insert
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
////////////////////////////////////////////////////////////////////////////////// module line_num_insert( input wire insert_ln,
input wire ln_word0,
input wire ln_word1,
input wire [:] c_in,
input wire [:] y_in,
input wire [:] ln, output reg [:] c_out,
output reg [:] y_out ); //----------------------------------------------------------------------------- always @ (ln or insert_ln or c_in or ln_word0 or ln_word1)
if (insert_ln & ln_word0)
c_out <= {~ln[], ln[:], 'b00};
else if (insert_ln & ln_word1)
c_out <= {'b1000, ln[10:7], 2'b00};
else
c_out <= c_in; //--------------------------------------------------------------------------- always @ (ln or insert_ln or y_in or ln_word0 or ln_word1)
if (insert_ln & ln_word0)
y_out <= {~ln[], ln[:], 'b00};
else if (insert_ln & ln_word1)
y_out <= {'b1000, ln[10:7], 2'b00};
else
y_out <= y_in; //--------------------------------------------------------------------------- endmodule

生成ln_word0, ln_word1的脉冲指示信号:

reg ln_word0;

always @(posedge hdmi_clk or posedge rst)
begin
if(rst)
ln_word0 <= 'b0; else if(eav)
ln_word0 <= 'b1; else
ln_word0 <= 'b0;
end //------------------------------------------------------------------------------------------------------------------------- reg ln_word1; always @(posedge hdmi_clk or posedge rst)
begin
if(rst)
ln_word1 <= 'b0; else if(ln_word0)
ln_word1 <= 'b1; else
ln_word1 <= 'b0;
end

HD,3G视频数据中行号的插入方法---Verilog代码实现的更多相关文章

  1. 大数据量下MySQL插入方法的性能比较

    不管是日常业务数据处理中,还是数据库的导入导出,都可能遇到需要处理大量数据的插入.插入的方式和数据库引擎都会对插入速度造成影响,这篇文章旨在从理论和实践上对各种方法进行分析和比较,方便以后应用中插入方 ...

  2. 批量插入数据, 将DataTable里的数据批量写入数据库的方法

    大量数据导入操作, 也就是直接将DataTable里的内容写入到数据库 通用方法: 拼接Insert语句, 好土鳖 1. MS Sql Server:   使用SqlBulkCopy 2. MySql ...

  3. VIM 中鼠标选择不选中行号

    VIM 中鼠标选择不选中行号 在Vim中,我们一般会使用 :set nu 打开行号开关. 但是打开行号后,有个弊端,那就是在用鼠标进行选择的时候,会将前面的行号也一起进行拷贝了.但是在gVim中进行选 ...

  4. JavaCV 采集摄像头及桌面视频数据

    javacv 封装了javacpp-presets库很多native API,简化了开发,对java程序员来说比较友好. 之前使用JavaCV库都是使用ffmpeg native API开发,这种方式 ...

  5. 【Python爬虫案例】用Python爬取李子柒B站视频数据

    一.视频数据结果 今天是2021.12.7号,前几天用python爬取了李子柒的油管评论并做了数据分析,可移步至: https://www.cnblogs.com/mashukui/p/1622025 ...

  6. iOS 直播-获取音频(视频)数据

    iOS 直播-获取音频(视频)数据 // // ViewController.m // capture-test // // Created by caoxu on 16/6/3. // Copyri ...

  7. 使用D3D渲染YUV视频数据

    源代码下载 在PC机上,对于YUV格式的视频如YV12,YUY2等的显示方法,一般是采用DIRECTDRAW,使用显卡的OVERLAY表面显示.OVERLAY技术主要是为了解决在PC上播放VCD而在显 ...

  8. 基于RTP的H264视频数据打包解包类

    from:http://blog.csdn.net/dengzikun/article/details/5807694 最近考虑使用RTP替换原有的高清视频传输协议,遂上网查找有关H264视频RTP打 ...

  9. 用hdfs存储海量的视频数据的设计思路

    用hdfs存储海量的视频数据 存储海量的视频数据,主要考虑两个因素:如何接收视频数据和如何存储视频数据. 我们要根据数据block在集群上的位置分配计算量,要充分利用带宽的优势. 1.接收视频数据 将 ...

随机推荐

  1. bll

    string str = ConfigurationManager.AppSettings["DBName"].ToString(); public Studal ss() { A ...

  2. 关于synchronized的同步操作

    一般有两种方法 同步方法和同步代码块 假设P1.P2是同一个类的不同对象,这个类中定义了以下几种情况的同步块或同步方法,P1.P2就都可以调用它们. 1. 把synchronized当作函数修饰符时, ...

  3. java面向对象编程--Josephu问题(丢手帕问题)

    Josephu问题为:设编号为1,2,...n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推 ...

  4. c语言——单链表分拆——头插法创建链表,尾插法生成链表

    #if 1 #include<stdio.h> #include<stdlib.h> #include<iostream> using namespace std; ...

  5. grafana 安装配置

    Grafana安装配置 1.下载安装包 wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.1.3.l ...

  6. 一道笔试题来理顺Java中的值传递和引用传递

      题目如下: private static void change(StringBuffer str11, StringBuffer str12) { str12 = str11; str11 = ...

  7. input 和 button元素 作为提交、重置、按钮功用的区别。

    首先,input元素和button元素 都是可以作为普通按钮.提交按钮.重置按钮的. <input type="button" value="button" ...

  8. 总结React写参数的几种方式

    1.在render方法内 class Text extends Component{ render(){ const data=[1,2,3]; return( { data.map((item,in ...

  9. D1——初读《Head First Java》

    今天随便看了点<Head First Java>,发觉这本书的风格真是有趣.打算先把这本书踏踏实实的看了.学习切忌好高骛远.心浮气躁,尤其入门基础阶段更应该踏踏实实地学习知识.下面随便谈谈 ...

  10. 在typeScript+vue项目中使用ref

    因为vue项目是无法直接操作dom的,但是有时候开发需求迫使我们去操作dom. 两个办法,一个是很low的再引入jq,然后通过jq来操作,但是这样就失去了我们使用vue的意义, 可惜的是我曾经这样干过 ...