fpga设计实战:复位电路仿真设计

可编程逻辑

1363人已加入

描述

最近看advanced fpga 以及fpga设计实战演练中有讲到复位电路的设计,才知道复位电路有这么多的门道,而不是简单的外界信号输入系统复位。

流程:

1.异步复位:

优点:⑴大多数DFF都有异步复位端口,因此采用异步复位可以节约资源。

⑵设计相对简单。

⑶异步复位信号识别方便,而且可以很方便地使用fpga的全局复位端口。

缺点:⑴在复位信号释放时容易出现问题,亚稳态。

⑵复位信号容易受到毛刺的影响。这是由于时钟抖动或按键触发时的硬件原因造成的。

代码:一个4bit的计数器。

1 always @(posedge clk or negedge sys_rst_n) begin
2     if (~sys_rst_n) begin
3         count <= 0;
4     end //if
5     else begin
6         count <= count + 1'b1;    
7     end //else
8 end //always

仿真解析(下图):

复位信号低电平时候,系统立刻进入复位态;

异步复位

2.同步复位:

优点:⑴降低亚稳态出现的概率。

⑵使所设计的系统成为100%的同步时序电路,有利于时序分析,综合出来的Fmax一般较高。

⑶只有在时钟有效沿才有效,可以滤除高于时钟频率的毛刺。

缺点:⑴复位信号的有效时长必须大于时钟周期,才能真正被系统识别并完成复位任务。

⑵大多数的Dff只有异步复位端口,会浪费较多的逻辑资源。

代码:

1 always @(posedge clk) begin
2     if (~sys_rst_n) begin
3         count <= 0;
4     end //if
5     else begin
6         count <= count + 1'b1;    
7     end //else
8 end //always

仿真解析(下图):

时钟上升沿如果复位信号为低电平,复位开始,时钟上升沿若复位信号为高电平,复位结束。

异步复位

3.异步复位同步释放:(推荐使用)

优点:结合了同步复位与异步复位的优点。

缺点:容易受到噪声与宰脉冲的干扰。如果可能,最好对输入到fpga的异步复位信号先进行滤波与去抖动。

代码:

 1 module  rstn_as (
 2     //input;
 3     input    wire    clk,
 4     input    wire    sys_rst_n,
 5     //output;
 6     output   reg     rst_n
 7 );
 8 reg rst_n_reg;
 9 always @(posedge clk or negedge sys_rst_n) begin
10     if (~sys_rst_n) begin
11         rst_n <= 1'b0;
12         rst_n_reg <= 1'b0;
13     end //if
14     else begin
15         rst_n_reg <= 1'b1;
16         rst_n <= rst_n_reg;    
17     end //else
18 end //always
19 
20 endmodule

wire rst_n;

rstn_as  u1(
    .clk                (clk),
    .sys_rst_n          (sys_rst_n),
    .rst_n              (rst_n)
); 
always @(posedge clk or negedge rst_n) begin
    if (~rst_n) begin
        count <= 0;
    end //if
    else begin
        count <= count + 1'b1;    
    end //else
end //always

仿真解析(下图):

当复位信号低电平时,系统立即复位;当时钟上升沿检测到复位信号失效后,在下一个时钟上升沿拉高rst_n。新的rst_n是已经同步化了的复位信号。

异步复位

以上。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分