verilog 异步复位、同步释放

 可靠的异步复位、同步释放的双缓冲电路,

由两个同一时钟沿触发的层叠寄存器组成,该时钟必须和目标寄存器是一个时钟域。

既解决了同步复位的资源消耗问题,又解决了异步复位的亚稳态问题,其根本是异步信号同步化

module huxled(
clk     ,
rst_n   ,
rst_nr2
);

input clk;      //系统时钟信号
input rst_n;    //输入复位信号,低有效
output rst_nr2; //异步复位、同步释放输出

reg rst_nr1;
reg rst_nr2;

//两级层叠复位产生,低电平复位
always @ (posedge clk or negedge rst_n)
begin
    if(!rst_n)
        rst_nr1 <= 1'b0;
    else
        rst_nr1 <= 1'b1;
end

always @ (posedge clk or negedge rst_n)
begin
    if(!rst_n)
        rst_nr2 <= 1'b0;
    else
        rst_nr2 <= rst_nr1;
end

endmodule

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值