• 工作总结
  • 工作计划
  • 心得体会
  • 述职报告
  • 事迹材料
  • 申请书
  • 作文大全
  • 读后感
  • 调查报告
  • 励志歌曲
  • 请假条
  • 创先争优
  • 毕业实习
  • 财神节
  • 高中主题
  • 小学一年
  • 名人名言
  • 财务工作
  • 小说/有
  • 承揽合同
  • 寒假计划
  • 外贸信函
  • 励志电影
  • 个人写作
  • 其它相关
  • 生活常识
  • 安全稳定
  • 心情短语
  • 爱情短信
  • 工会工作
  • 小学五年
  • 金融类工
  • 搞笑短信
  • 医务工作
  • 党团工作
  • 党校学习
  • 学习体会
  • 下半年工
  • 买卖合同
  • qq空间
  • 食品广告
  • 办公室工
  • 保险合同
  • 儿童英语
  • 软件下载
  • 广告合同
  • 服装广告
  • 学生会工
  • 文明礼仪
  • 农村工作
  • 人大政协
  • 创意广告
  • 您现在的位置:六七范文网 > 心情短语 > 正文

    【FPGA复位方式的可靠性分析】 可靠性最好的沟通方式

    来源:六七范文网 时间:2019-04-02 04:54:14 点击:

      【摘要】FPGA逻辑设计中常见的复位方式即异步复位和同步复位。大多数情况下简单的通过同步复位或异步复位虽然能够正常的完成复位功能,但并没有得到精确合理的设计,可靠性较差。本文通过对同步复位与异步复位深入的分析,并且比较了各自的优缺点。重点针对异步复位过程中的亚稳态问题采取了一种有效的可靠复位解决方式。
      【关键词】FPGA;复位;可靠性;亚稳态
      1.引言
      复位问题是FPGA逻辑设计中一个关键性问题。合理的选择复位方式对一个系统的稳定性起着至关重要的作用。同步复位容易综合,复位信号对设计来说仅仅是同步输入信号,但会消耗更多的器件资源。异步复位不需要时钟,但容易产生毛刺,导致触发器的误操作,进而会导致亚稳态的出现。异步复位、同步释放的双缓冲电路复位方式有效解决了以上两种复位方式的不足之处。
      2.同步复位
      同步复位是指复位信号仅在时钟信号的有效沿对触发器进行复位。此时复位信号可以看作触发器输入端信号的一部分。下面给出同步复位的一段代码:
      always@(posedge clk)
      if(!rst_n)cout<=1""b0;
      else cout<=cin;
      上述代码综合后的RTL视图如图一所示。
      2.1 同步复位的优点:
      a、有利于进行时序分析及系统的总体同步化。
      b、有利于滤除高频信号的干扰。
      2.2 同步复位的缺点:
      a、复位信号的有效时间要大于时钟周期,否则无法被系统识别,也就无法完成对整个系统的复位。
      b、由于没有用到CLRN端口,所以综合的时候会浪费更多的逻辑资源。
      3.异步复位
      异步复位是指无论时钟沿是否到来,只要复位信号有效就对系统进行复位,复位信号和时钟相互独立。下面给出异步复位信号的一段代码:
      always@(posedge clk or negedge rst_n)
      if(!rst_n)cout<=1""b0;
      else cout<=cin;
      上述代码综合后的RTL视图如图二所示。
      3.1 异步复位的优点:
      a、相对于同步复位,异步复位有效利用了CLRN端口,节省了系统资源。
      b、复位信号的有效时间可以不受时钟周期的限制。
      3.2 异步复位的缺点:
      a、复位信号如果发生在靠近时钟沿很近的时间点,那么触发器就可能没有足够的时间维持输入端信号的值,容易造成亚稳态。
      b、复位信号容易受到毛刺的影响。
      4.异步复位、同步释放
      通过前面两种常用复位方式的综合比较,我们意识到同步复位与异步复位都存在一定的缺陷。异步复位、同步释放的双缓冲电路的复位方式同时弥补了同步复位和异步复位的缺陷,并很好的发挥了他们的优势之处。所谓异步复位、同步释放就是在复位信号到来的时候不受时钟信号的同步,而是在复位信号释放的时候受到时钟信号的同步。下面给出异步复位、同步释放的一段代码:
      always@(posedge clk or negedge rst_n)
      if(!rst_n)rst_nr1<=1""b0;
      else rst_nr1<=1""b1;
      always@(posedge clk or negedge rst_n)
      if(!rst_n)rst_nr2<=1""b0;
      else rst_nr2<=rst_nr1;
      上述代码综合后的RTL视图如图三所示。
      异步复位、同步释放的双缓冲复位方式采用两级触发电路,第二级触发器将第一级触发信号利用时钟打一拍,异步信号同步化,有效的避免亚稳态,同时节约了系统资源,在FPGA逻辑设计中可以很好的提高复位的可靠性。
      5.PLL配置后的复位设计
      在FPGA逻辑设计中,经常会用到多个时钟,如果多个时钟都是由PLL配置产生,那么复位电路如何设计才更稳定呢?根据前面提到的异步复位、同步释放的思想,设计了如图四所示的复位电路。
      该设计首先采用异步复位、同步释放对复位信号rst_n做处理,再将PLL输出后的locked信号与rst_n相与后作为PLL输出之后的复位信号,再将此复位信号做一次异步复位同步释放操作,以为locked信号在PLL有效输出之前一直为低电平,PLL输出稳定之后才会拉高,这样操作提高了PLL后级复位电路的可靠性,同时使整个系统的复位可靠性也有了很大的提高。
      6.结论
      本文主要对FPGA逻辑设计中的同步复位和异步复位进行了详细的对比,分析了各自的优缺点,同步复位、异步释放的双缓冲电路的方式有效的弥补以上两种复位模式的缺点,提高了系统稳定性。
      参考文献
      [1]李忠琪,胡剑浩,王剑.FPGA中复位电路的设计研究[C].中国通信集成电路技术与应用讨论会论文集,2008.
      [2]陈曦,邱志成,张鹏,等.基于Verilog HDL的通信系统设计[M].中国水利水电出版社,2009,4.
      [3]吴厚航.深入浅出玩转FPGA[M].北京航空航天大学出版社,2010,5.
      [4]田志明,杨军,罗岚.异步复位设计中的亚稳态问题及其解决方案[J].电子器件,2002,25(4):435-439.
      [5]夏宇闻.Verilog数字系统设计教程(第2版)[M].北京航空航天大学出版社,2008,6.
      作者简介:卢圣才(1986—),男,山东济南人,硕士研究生,研究方向:测试计量技术及仪器。

    推荐访问:复位 方式 可靠性分析 FPGA