当前位置: 首页 > news >正文

学做网站最好的网站网站建设需求分析表怎么写

学做网站最好的网站,网站建设需求分析表怎么写,企业营销策划实现的途径,网站推广公司有哪些相关阅读 数字IC前端https://blog.csdn.net/weixin_45791458/category_12173698.html?spm1001.2014.3001.5482 异步复位 异步复位是一种常见的复位方式#xff0c;可以使电路进入一个可知的状态。但是不正确地使用异步复位会导致出现意想不到的错误#xff0c;复位释放便是…相关阅读 数字IC前端https://blog.csdn.net/weixin_45791458/category_12173698.html?spm1001.2014.3001.5482 异步复位 异步复位是一种常见的复位方式可以使电路进入一个可知的状态。但是不正确地使用异步复位会导致出现意想不到的错误复位释放便是其中的一个重要问题这将在后面进行讨论。 异步复位是通过寄存器的异步复位端实现的复位端一般是低电平有效即当复位端为低电平时寄存器输出被强制复位。 代码风格 下面的代码显示了如何在Verilog代码中说明带有复位的寄存器。注意到复位信号的下降沿事件被加入了敏感列表。其实异步复位是根据电平生效的即当复位信号为低时复位。在这里写成下降沿的形式是因为综合工具要求敏感列表中出现的信号如果有一个是边沿事件则其他所有事件也必须是边沿敏感的但这对于仿真工具是可以接受的甚至仿真工具还可以在敏感列表中存在除了复位沿和时钟沿以外的其他信号事件这对于综合工具也是不可接受的。 //综合与仿真工具都支持 module FlipFlop(input clk, rst_n, d, output reg q);always(posedge clk, negedge rst_n)beginif(!rst_n)q 1b0;elseq d;end endmodule//综合工具不支持与仿真工具支持其实复位效果和上面的代码一致不要使用它 module FlipFlop(input clk, rst_n, d, output reg q);always(posedge clk, rst_n)beginif(!rst_n)q 1b0;elseq d;end endmodule//一个奇怪的例子但仿真工具确实支持不要使用它 module FlipFlop(input clk, rst_n, d, output reg q);always(posedge clk, rst_n, d)beginif(!rst_n)q 1b0;elseq d;end endmodule 异步复位的优势 在进入这个话题前我们先来看一下上面的第一段代码综合出的电路如图1所示。可以看到综合工具可以直接从异步复位的Verilog描述中推断出一个带异步复位端的寄存器。 图1 异步复位综合出的寄存器 我们再来看一下同步复位综合出的电路如图2所示。顺便一提上面异步复位的代码可以很轻松地改变为同步复位只要把posedge rst_n从敏感列表中去除即可如下所示。综合结果显示异步复位其实就是将异步复位信号当做寄存器输入的一部分而不是综合出一个有同步复位端的寄存器。对于那些时序上比较紧张的设计在寄存器前的组合逻辑再插入异步复位的逻辑无法承受使用异步复位能保证不会给reg2reg的时序路径带来负面影响。异步复位的另一个优点是无需时钟存在便可复位这使得在时钟尚未启动时复位电路成为了可能。 //同步复位 module FlipFlop(input clk, rst_n, d, output reg q);always(posedge clk)beginif(!rst_n)q 1b0;elseq d;end endmodule 图2  同步复位综合出的寄存器 异步复位的问题 异步复位中也存在一定问题因为复位信号的使能和释放都是异步的。不正确的复位释放即复位沿过于接近时钟沿会导致寄存器输出现亚稳态复位的生效不会导致出现亚稳态因为复位是强制将输出拉低。其实同步复位也有相似的问题因为同步复位信号需要像其他输入信号一样满足建立时间、保持时间的要求否则会在寄存器输出产生亚稳态。 Removal时间和Recovery时间 与建立时间和保持时间类似removal时间和recovery时间被用来描述复位信号的时序要求。如图3所示removal时间指的是复位释放不能过于靠近时钟有效沿的后方而Recovery指的是复位释放不能过于靠近有效沿的前方。这两种条件都可能造成输出的亚稳态因为复位相当于内部信号的改变这种改变过于靠近时钟沿会导致电路逻辑状态不定。 图3 复位信号释放的要求 复位同步器 就像CDC跨时钟域问题一样复位信号的释放同样也可以使用同步器与时钟沿进行同步这就是“异步复位同步释放”。 以上结构的Verilog描述如下所示。 module reset_syn(input clk, rst_in, output reg rst_out);reg rst_r;always(posedge clk, negedge rst_in)beginif(!rst_n){rst_out, rst_r} 2b0;else{rst_out, rst_r} {rst_r, 1b1};end endmodule 在同步了复位释放信号后第一个寄存器的输出依然可能出现亚稳态但这个不确定状态在传播到第二个寄存器输入前已经稳定可能是1也可能是0即下一个时钟边沿在第二个寄存器输出不会出现亚稳态这也意味着同步后复位释放信号会延迟输入的复位释放信号1至2个周期。 甚至为了保险起见还可以使复位再延迟一段时间再释放这样可以在最大程度上确保复位正常释放如下所示。 define count 16hffff module reset_syn(input clk, rst_in, output reg rst_out);reg rst_r, rst_cnt, rst_pre;always(posedge clk, negedge rst_in)beginif(!rst_in){rst_pre, rst_r} 2b0;else{rst_pre, rst_r} {rst_r, 1b1};endalways(posedge clk, negedge rst_pre)beginif(!rst_pre) rst_cnt 0;else if(rst_cnt count)rst_cnt rst_cnt 1;endalways(posedge clk, negedge rst_pre)beginif(!rst_pre) rst_out 0;else if(rst_cnt count)rst_out 1b1;elserst_out 1b0;end endmodule
http://mrfarshtey.net/news/86660/

相关文章:

  • 网站建设中心手机网站关闭窗口代码
  • 公司网站域名的设计新闻发布会通稿范文
  • 网站宣传片的创意如何给网站添加ico
  • 苏晋建设集团网站如何自己写一个网站
  • php如何做局域网的网站建设网站建设国风网络公司
  • 广州云购网站建设wordpress主题无法预览
  • 网站建设清单在sae上搭建wordpress
  • 电商网站设计公司优选亿企邦自己如何做网站源码
  • 网站建设高清图片做司法考试题目的网站
  • 最便宜做网站深圳网页设计网页制作
  • 什么网站可以做平面设计赚钱广告软文怎么写
  • 茶叶企业网站开发源码婚纱网站模板
  • 做网站多少钱一个宿州做企业网站公司
  • 威海网站建设公司哪家好婚恋网站做期货现货贵金属的人
  • 用php做的博客网站网站开发学习视频
  • 百度网站关键词优化网页制作公司报价谈判方案
  • 网络系统管理员获取ip重庆网站关键词优化推广
  • 外贸品牌网站设计北京环球影城寄存柜
  • 手机网站制作多少钱东莞网站优化关键词公司
  • 网站备案网址郑州专门做网站
  • 精美化妆品网站模板晋江网站建设企业
  • 网站建设 中企动力南昌关于织金县网站建设的论文
  • 企业建站多站点管理系统同城手机网站开发
  • 新公司做网站怎么弄黑马程序员学费多少
  • 天津重型网站建设方案公司一屏网站模板下载 迅雷下载 迅雷下载地址
  • 微网站价格表怎么创建网站?
  • 手表网站免费设计足球比赛直播阿根廷
  • 网站哪个公司做的好腾讯云如何购买域名
  • 千博企业网站管理系统2013社交电商
  • 自己名下备案的网站中国纪检监察网官网