0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA设计实战-复位电路仿真设计

电子设计 来源:电子设计 作者:电子设计 2020-10-30 12:17 次阅读

最近看 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 是已经同步化了的复位信号。

以上。

审核编辑 黄昊宇

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

    关注

    1602

    文章

    21320

    浏览量

    593199
收藏 人收藏

    评论

    相关推荐

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

    最近看advanced fpga 以及fpga设计实战演练中有讲到复位电路的设计,才知道复位
    发表于 09-01 15:37 1504次阅读
    <b class='flag-5'>fpga</b>设计<b class='flag-5'>实战</b>:<b class='flag-5'>复位</b><b class='flag-5'>电路仿真</b>设计

    电路仿真软件哪个更实用

    大家好,我是电子设计方面的菜鸟,但是由于工作需要必须从头开始学习这方面的知识,领导我研究一下电路仿真,因此我想请教大家我应该用什么软件来进行电路仿真呢?电路设计我们用的***,电路中也
    发表于 06-18 23:03

    FPGA实战演练逻辑篇12:复位电路

    复位电路本文节选自特权同学的图书《FPGA设计实战演练(逻辑篇)》配套例程下载链接:http://pan.baidu.com/s/1pJ5bCtt
    发表于 04-10 13:59

    EWB电路仿真软件下载

    EWB电路仿真软件,EWB电路仿真软件下载
    发表于 06-10 00:02 5222次下载
    EWB<b class='flag-5'>电路仿真</b>软件下载

    PSPICE在高频电路仿真分析中的应用

    摘要:介绍了电路仿真软件PSPICE的电路仿真功能与实现方法。以一个典型高频电路仿真分析实例,表明PSPICE为高频电路分析提供了实用、高效的仿真
    发表于 04-27 09:41 99次下载

    压力传感器设计电路仿真

    压力传感器设计电路仿真,压力传感器设计电路仿真
    发表于 12-25 09:48 132次下载

    万年历电路仿真程序

    倒计时电路仿真,可以实现电路初始值预置,万年历电路仿真
    发表于 07-20 17:32 0次下载

    proteus电路仿真软件如何在印刷电路板中应用

    为增进大家对电路仿真软件的了解,本文将对proteus电路仿真软件予以介绍,主要内容为介绍该电路仿真软件在印刷电路板设计里的应用。
    的头像 发表于 05-30 11:55 7908次阅读

    实现FPGA实战复位电路的设计和仿真

    最近看 advanced fpga 以及 fpga 设计实战演练中有讲到复位电路的设计,才知道复位
    发表于 12-22 12:54 13次下载
    实现<b class='flag-5'>FPGA</b><b class='flag-5'>实战</b><b class='flag-5'>复位</b><b class='flag-5'>电路</b>的设计和<b class='flag-5'>仿真</b>

    MultiSim电路仿真之受控源的使用

    MultiSim电路仿真之受控源的使用
    发表于 01-07 13:11 21次下载
    MultiSim<b class='flag-5'>电路仿真</b>之受控源的使用

    电路仿真工具通常分为几大类

    按照仿真对象划分,电路仿真工具通常分为三大类:晶体管级的模拟电路仿真工具、门级和RTL级的数字电路仿真工具、模数混合电路仿真工具。
    的头像 发表于 08-24 10:09 3241次阅读

    模拟电子:电路仿真的作用

    电路仿真是指使用计算机模拟电路的过程,它可以帮助电路设计者更好地理解电路的行为,并可以检测出电路中的错误。
    发表于 02-17 14:04 4758次阅读

    如何挑选合适的电路仿真软件工具

    微电子及集成电路技术发展日新月异,离不开EDA电子电路仿真软件的支持。每天不知有多少电路设计及验证者,使用着各种电路仿真软件工具。俗话说,工欲善其事必先利其器,如何挑选合适的
    的头像 发表于 06-25 16:37 3153次阅读

    什么是电路仿真 数字电路仿真软件哪个好用

    电路仿真是指借助计算机软件模拟电路的工作原理和性能的过程。通过电路仿真,可以在不实际进行硬件搭建的情况下,预测和分析电路的功能、稳定性、可靠性以及各种参数。
    的头像 发表于 04-21 10:26 600次阅读

    电路仿真是什么意思 电路仿真怎么连线

    电路仿真是一种通过电脑模拟电路行为和性能的技术。 在电路设计过程中,仿真是一个重要的环节,它可以帮助工程师在实际制作之前预测电路的性能和行为
    的头像 发表于 04-21 10:47 690次阅读