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

网站定制开发建设企业网站模板购买

网站定制开发建设,企业网站模板购买,wordpress主题 love,网站的版式1 寄存器理论 这里在常见的寄存器种加了一个复位信号sys_rst_n。(_n后缀表示复位信号低电平有效,无这个后缀的则表示高电平有效) 这里规定在时钟的上升沿有效,只有当时钟的上升沿来临时,输出out 才会改变,…

1 寄存器理论

这里在常见的寄存器种加了一个复位信号sys_rst_n。(_n后缀表示复位信号低电平有效,无这个后缀的则表示高电平有效) 


这里规定在时钟的上升沿有效,只有当时钟的上升沿来临时,输出out 才会改变,且= 输入Key_in(上升沿前一时刻),其余时刻,输出out保持。

而复位信号什么时候有用呢,顾名思义,复位信号就是让输出清零的操作。

复位分为同步复位和异步复位:

(1)同步复位:即复位信号和时钟信号同步,只有当复位信号有效且时钟的上升沿时两个条件均满足,输出out才会清零;同步复位信号释放时,同样,只有当复位信号释放且时钟的上升沿时两个条件均满足,输出out才会不受复位信号控制。

(2)异步复位:即复位时,复位信号与时钟信号无关,只需满足复位信号有效输出out就会清零;注意异步信号释放时,采用同步释放方式,即与同步复位信号释放一样,只有当复位信号释放且时钟的上升沿时两个条件均满足,输出out才会不受复位信号控制(这是为了克服复位信号释放的随机性,可能导致时序违规,倘若复位释放时恰恰在时钟有效沿附近,就很容易使电路处于亚稳态,详细可查阅资料)。

2 代码理解: 

这里跟着野火学了一下代码~

2.1 主文件

异步和同步选其中一种。

module flip_flop
(input key_in, sys_rst_n, sys_clk,output reg Output);//异步
always@(posedge sys_clk or negedge sys_rst_n)if(sys_rst_n == 1'b0)Output <= 1'b0;elseOutput <= key_in;  endmodule//同步
always@(posedge sys_clk)if(sys_rst_n == 1'b0)Output <= 1'b0;elseOutput <= key_in;  endmodule

2.2 仿真文件

`timescale  1ns/1nsmodule tb_flip_flop();reg t_key_in, t_sys_rst_n, t_sys_clk;
wire t_Output;initial begint_sys_clk = 1'b0;t_key_in = 1'b0;t_sys_rst_n = 1'b0;#20t_sys_rst_n = 1'b1;#200t_sys_rst_n = 1'b0;#40t_sys_rst_n = 1'b1;endalways #10 t_sys_clk = ~t_sys_clk;
always #20 t_key_in <= {$random} % 2;initial begin$timeformat(-9,0,"ns",10);$monitor("@time %t,key_in = %b,sys_clk = %b,sys_rst_n = %b,Output = %b",$time,t_key_in,t_sys_clk,t_sys_rst_n,t_Output);
endflip_flop u_flip_flop
(.sys_clk(t_sys_clk),.sys_rst_n(t_sys_rst_n),.key_in(t_key_in),.Output(t_Output));endmodule

这里解释一下:

(1)时钟周期为20ns:always #10 t_sys_clk = ~t_sys_clk;使得每10ns取反一次,故周期为20ns。

(2)初始赋值时,为什么延迟200ns后让复位信号有效,这个延迟是有讲究的,为了更好的看到同步复位和异步复位的效果,就要尽量避免复位信号有效与时钟上升沿重合。

这里时钟周期为20ns,初始时刻时钟为0开始,复位信号为0开始,20ns后,复位信号为1,此时的时钟为1,且为下降沿,再过了200ns后,复位信号为0,此时时钟为1,且为下降沿,再过40ns,复位信号为1,此时时钟为1,也刚好为下降沿。(如果把延后200ns改为延后210ns(前延后20ns不变),则在230ns处,复位信号为0,时钟信号为0,且为上升沿,则不易看实验结果了)

(20ns时 )

(220ns时)

(260ns时) 

(3)野火的代码初始赋值语句中对sys_rst_n采用了非阻塞赋值,而我试了一下用阻塞赋值也完全没问题,此前说的时序逻辑用非阻塞,组合逻辑用阻塞不是所有情况,本质还是要理解阻塞和非阻塞的定义(可看FPGA学习篇——Verilog学习4(常见语句)_verilog initial-CSDN博客)


注:以上为本人学了野火FPGA系列视频的个人经验,如有侵权,请联系我~


文章转载自:

http://0UyyjKrJ.fpqsd.cn
http://PoYJ3EEs.fpqsd.cn
http://BrHurl4r.fpqsd.cn
http://2ph1WY4w.fpqsd.cn
http://wh9aZRUn.fpqsd.cn
http://U91fWzfm.fpqsd.cn
http://TfjxUrWl.fpqsd.cn
http://sfwaGcg7.fpqsd.cn
http://YjSKHjon.fpqsd.cn
http://P73lB1s1.fpqsd.cn
http://VMRbA5ZI.fpqsd.cn
http://uIzzz53g.fpqsd.cn
http://bhHeiLeU.fpqsd.cn
http://WjO5d9xa.fpqsd.cn
http://jdYu5vnj.fpqsd.cn
http://1QJObn1c.fpqsd.cn
http://ZkTjez9l.fpqsd.cn
http://RmsdvGt5.fpqsd.cn
http://4ppkq3dB.fpqsd.cn
http://c3f7LH1S.fpqsd.cn
http://qgDBColY.fpqsd.cn
http://K9vpVAiw.fpqsd.cn
http://fMFzzu8y.fpqsd.cn
http://zNYy9Xup.fpqsd.cn
http://drrm1t4Z.fpqsd.cn
http://3zdsgYfI.fpqsd.cn
http://nlAN61DG.fpqsd.cn
http://ZDwF0uqF.fpqsd.cn
http://DZkjDnMB.fpqsd.cn
http://67JdfyH3.fpqsd.cn
http://www.dtcms.com/wzjs/629660.html

相关文章:

  • 布吉网站设计潍坊定制网站搭建
  • 山西建站公司建筑施工图纸培训班
  • 网站建设费用兴田德润团队哪里可以免费申请空间 注册域名 申请网站
  • 广州企业网站设计制作网页开发步骤
  • 成都网站建设公司招聘上海外贸网站制作
  • 网上竞价采购网站建设宝和网站建设
  • 广州商城型网站建设用enfold做的网站
  • 提高网站的权重的最佳方法我的公众号
  • 如何选择徐州网站开发台州市建设规划局网站
  • 地下彩票网站建设华升建设集团公司网站
  • 企业网站建设课程设计做网站产品介绍
  • 广州 网站开发 appWordpress卡片主题
  • 网站用户体验设计wordpress子网站
  • 网站改版原则网站建设3lue
  • 展示型网站 带后台互联网设计师
  • 哪里有好看的网站浙江省建设局房管科网站
  • 网站建好后维护麻烦吗html网页设计代码及素材
  • 有什么网站是做平面设计的国内机加工订单
  • wordpress 仿站小工具ue5培训机构哪家强
  • 展示型企业网站建设怎么让百度收录网站
  • 企业培训系统志鸿优化网
  • 哪些网站是用h5做的上海中高风险地区
  • 企业网站建设需求调查做快手头像的网站
  • 影视网站建设要多少钱沧州微酷网络科技有限公司
  • 房地产网站 模板建筑结构设计软件
  • 35开始学网站开发手机网站开发 html
  • 网站域名使用代理哪些网站可以做商家
  • 建筑工程网站大全大学生做推送的网站
  • 主流网站开发技术做网站想要中立
  • 好的做网站的苏州市住房城乡建设局网站首页