同步复位和异步复位同步释放

同步和异步时序电路

在了解同步复位和异步复位前,我们要首先了解同步时序电路异步时序电路的概念。

同步时序电路,指的是电路中所有的触发器的时钟使用统一的clk,状态变化发生在同一个时刻。

异步时序电路,指的是电路中没有统一的clk,触发器的状态变化有先有后。

复位的用途

  1. 使电路在仿真时具有可知的初始值
  2. 电路运行异常时,能通过复位回到初始状态

同步复位

同步复位,指的是在同步时序逻辑电路中复位信号受统一的时钟控制。
以最简单的同步复位,上升沿触发的D触发器为例,

1.原理图

在这里插入图片描述

2.Verilog实现

moudle  synchronous_reset(
	input clk,
	input a_in,
	output  reg b_out,
	input rst_n);
	always @(posedge clk) begin
		if(!rst_n)
			b_out <= 0;
		else 
		 	b_out <=  a_in;
endmodule

3.TB代码

module tb();
  reg clk, rst_n;
  reg a;
  wire b;

  initial begin
    clk = 0;
    rst_n = 1;
    a = 1;
    #20 
    rst_n = 0;
    #100 
    rst_n = 1;
    #140 rst_n = 0;
    #70  rst_n = 1;
    #200 $finish();
  end

  synchronous_reset DUT(.clk(clk), .rst_n(rst_n), .a_in(a), .b_out(b));

  always #50 clk  = ~clk;
    
//产生波形
  initial	begin
	$fsdbDumpfile();	    
    $fsdbDumpvars;
  end

  endmodule

4.波形

在这里插入图片描述

5.PS

  • 在50ns,时钟的上升沿采样到rst_n为低时,完成复位;若此时未采样到rst_n = 0时,输出b_out应该为1。
  • 在260ns-330ns(小于一个周期100ns),复位信号rst_n为0,但是此期间未被时钟上升沿采样到。所以复位最好至少维持一个时钟周期的低电平,这样才能确保被采样到。
  • 若复位信号为短脉冲,可使其脉冲宽度扩展到多个周期,保证稳定采样。

异步复位

异步复位,指的是在异步时序逻辑电路中复位信号和触其他信号受不同时钟的控制。
以最简单的异步复位,上升沿触发的D触发器为例,

1.原理图

在这里插入图片描述

2.Verilog实现

moudle asynchronous_reset(
	input clk,
	input a_in,
	output reg  b_out;
	input rst_n);
	always @(posedge clk or negedge rst_n) begin
		if(!rst_n)
			b_out <= 0;
		else 
		 	b_out <=  a_in;
endmodule

2.PS

因为复位信号撤离时间不足,产生亚稳态,如下图

在这里插入图片描述

异步复位同步释放

避免亚稳态的一个常见方法异步复位同步释放,其实就是把复位信号打两拍,复位信号同步到clk时钟域。

1.原理图

在这里插入图片描述

2.Verilog实现

moudle asynchronous_reset(
	input clk,
	input a_in,
	output reg  b_out;
	input rst_n);
	
	reg rst_q1;
	reg rst_q2

	always @(posedge clk or negedge rst_n) begin
		if(!rst_n)
            rst_q1 <= 0
            rst_q2 <= 0;
		else 
		 	rst_q1 <=  1;
        	rst_q2 <= rst_q1;
    end
	
	assign b_out = rst_q2;
        
endmodule

参考

异步复位,同步释放的理解_亓磊的博客-CSDN博客_异步复位同步释放

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值