公司主页网站设计,盘锦化工网站建设,仁怀网站建设不好出手,摄像头做直播网站边沿检测—以脉冲形式给出信号
题目描述#xff1a; 有一个缓慢变化的1bit信号a#xff0c;编写一个程序检测a信号的上升沿给出指示信号rise#xff0c;当a信号出现下降沿时给出指示信号down。 注#xff1a;rise,down应为单脉冲信号#xff0c;在相应边沿出现时的下一个…边沿检测—以脉冲形式给出信号
题目描述 有一个缓慢变化的1bit信号a编写一个程序检测a信号的上升沿给出指示信号rise当a信号出现下降沿时给出指示信号down。 注rise,down应为单脉冲信号在相应边沿出现时的下一个时钟为高之后恢复到0一直到再一次出现相应的边沿。
接口信号图如下
timescale 1ns/1ns
module edge_detect(input clk,input rst_n,input a,output reg rise,output reg down
);reg a_reg;always(posedge clk or negedge rst_n)beginif(!rst_n)a_reg 1b0;elsea_reg a;endwire rise_valid,down_valid;assign rise_valid a ~(a_reg);assign down_valid ~a a_reg;always(posedge clk or negedge rst_n)beginif(!rst_n)rise 1b0;else if(rise_valid 1b1)rise 1b1;else rise 1b0;endalways(posedge clk or negedge rst_n)beginif(!rst_n)down 1b0;else if(down_valid 1b1)down 1b1;elsedown 1b0;endendmodule知识点