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

互联网网站开发的未来方向网站的导航栏设计文本

互联网网站开发的未来方向,网站的导航栏设计文本,教育网站模板下载,淘宝网站建设杭州05. 1. 位操作 计数器实验升级#xff0c;设计8个LED灯以每个0.5s的速率循环闪烁#xff08;跑马灯#xff09; 1.1 方法1#xff1a;使用移位操作符来控制led灯的循环亮灭 设计代码 Verilog中#xff0c;判断操作的时候不加位宽限定是可以的#xff0c;比如i…05. 1. 位操作 计数器实验升级设计8个LED灯以每个0.5s的速率循环闪烁跑马灯 1.1 方法1使用移位操作符来控制led灯的循环亮灭 设计代码 Verilog中判断操作的时候不加位宽限定是可以的比如ifcounter 24999999或者ifcounter 25’d24999999都可以但是在赋值的时候要加比如counter counter 1’d1赋0可以不加 [7:0] ledled有八个所以用8b0000_0001来代表八个led使用移位操作符来控制led灯的循环亮灭。 module led_run(clk,rstn,led );input clk;input rstn;output reg[7:0] led;reg[25:0] counter;always(posedge clk or negedge rstn)if(!rstn)counter 0;else if(counter 24999999)//else if(counter 24999)counter 0;elsecounter counter 1d1;always(posedge clk or negedge rstn)if(!rstn)led 8b0000_0001;else if(counter 24999999)begin//else if(counter 24999)beginif(led 8b1000_0000)led 8b0000_0001;elseled led 1;endelseled led;endmodule 仿真代码 timescale 1ns/1nsmodule led_run_tb();reg clk;reg rstn;wire[7:0] led;led_run led_run(.clk(clk),.rstn(rstn),.led(led));initial clk 1;always #10 clk !clk;initial beginrstn 0;#201;rstn 1;#4000000;$stop;endendmodule 仿真波形 1.2 方法2利用位拼接{led[6:0], led[7]}实现循环移位 设计代码 该方法应用场景不多了解即可。 module led_run_1(clk,rstn,led );input clk;input rstn;output reg[7:0] led;reg[25:0] counter;always(posedge clk or negedge rstn)if(!rstn)counter 0;else if(counter 24999999)//else if(counter 24999)counter 0;elsecounter counter 1d1;always(posedge clk or negedge rstn)if(!rstn)led 8b0000_0001;else if(counter 24999999)begin//else if(counter 24999)led {led[6:0], led[7]};elseled led;endmodule1.3 方法3调用其他模块 设计代码 思路用计数器产生8种状态然后再把这8种状态拿去用三八译码器译码就刚好能够去对应点亮8个led灯。 调用了底层模块3_8译码器后3位输入[2:0]八位输出8b0000_0001,顶层led_run_2的输出led的数据类型需要由reg变为wire形或者不写wire模块的调用与tb里的调用方式一样做好对应端口的连接即可。 module led_run_2(clk,rstn,led );input clk;input rstn;output wire[7:0] led; //注意1reg[25:0] counter;always(posedge clk or negedge rstn)if(!rstn)counter 0;else if(counter 24999999)//else if(counter 24999)counter 0;elsecounter counter 1d1;reg[2:0] counter2;always(posedge clk or negedge rstn)if(!rstn)counter2 0;else if(counter 24999999)//else if(counter 24999)counter2 counter2 1d1;decoder_3_8 decoder_3_8( //注意2.a(counter2[2]),.b(counter2[1]),.c(counter2[0]),.out(led) );endmodule调用方法 05. 2. 参数化设计 设计代码 将24999999用参数代替好处1是增加代码复用性与可读性。好处2是我们可以在板级验证的时候使用24999999在写tb做调试的时候将参数改为2499节约仿真时间 module led_run(clk,rstn,led );parameter MCNT 25d24999999; //注意1input clk;input rstn;output reg[7:0] led;reg[25:0] counter;always(posedge clk or negedge rstn)if(!rstn)counter 0;else if(counter MCNT)//else if(counter 24999)counter 0;elsecounter counter 1d1;always(posedge clk or negedge rstn)if(!rstn)led 8b0000_0001;else if(counter MCNT)begin//else if(counter 24999)beginif(led 8b1000_0000)led 8b0000_0001;elseled led 1;endelseled led;endmodule仿真代码 写法一修改例化后的模块参数defparam led_run_inst.MCNT 2499;写法二例化前修改moduleled_run里的参数 timescale 1ns/1nsmodule led_run_tb();reg clk;reg rstn;wire[7:0] led;led_run led_run_inst(.clk(clk),.rstn(rstn),.led(led));defparam led_run_inst.MCNT 2499; //写法一initial clk 1;always #10 clk !clk;initial beginrstn 0;#201;rstn 1;#4000000;$stop;endendmodule timescale 1ns/1nsmodule led_run_tb();reg clk;reg rstn;wire[7:0] led;led_run //写法二#(.MCNT(2499))led_run_inst(.clk(clk),.rstn(rstn),.led(led));initial clk 1;always #10 clk !clk;initial beginrstn 0;#201;rstn 1;#4000000;$stop;endendmodule 仿真波形 06 使用参数化的设计实现模块的重用 让八个led灯分别以不同的频率闪烁 思路使用八个led灯闪烁模块为了简化我们分别以0.1s0.2s0.3s0.4s让四个led闪烁。 1.设计代码 先构建一个led闪烁的设计代码再给与不同的计数参数例化4次即可 module led_run8(clk,rstn,led );parameter MCNT 24999999;input clk;input rstn;output led;reg[25:0] counter;reg led;always(posedge clk or negedge rstn)if(!rstn)counter 0;else if(counter MCNT)counter 0;elsecounter counter 1d1;always(posedge clk or negedge rstn)if(!rstn)led 0;else if(counter MCNT)led !led;endmodule 例化4个模块使用参数化的设计实现模块的重用 module led_run8_test(clk,rstn,led );input clk;input rstn;output wire[3:0] led;led_run8 led_run8_inst0(.clk(clk),.rstn(rstn),.led(led[0]));defparam led_run8_inst0.MCNT 25d2499999;led_run8 led_run8_inst1(.clk(clk),.rstn(rstn),.led(led[1]));defparam led_run8_inst1.MCNT 25d4999999;led_run8 led_run8_inst2(.clk(clk),.rstn(rstn),.led(led[2]));defparam led_run8_inst2.MCNT 25d7499999;led_run8 led_run8_inst3(.clk(clk),.rstn(rstn),.led(led[3]));defparam led_run8_inst3.MCNT 25d9999999;endmodule 2.仿真代码 timescale 1ns/1nsmodule led_run8_test_tb();reg clk;reg rstn;wire[3:0] led;led_run8_test led_run8_test_inst(.clk(clk),.rstn(rstn),.led(led));initial clk 1;always #10 clk !clk;initial beginrstn 0;#201;rstn 1;#400000000;$stop;endendmodule 3.仿真波形 4.布置引脚通过代码来布置引脚 到此布置引脚就布置好了后续生成bit流文件打开硬件管理器之后就可以板级验证了。
http://www.hkea.cn/news/14472014/

相关文章:

  • 网站建设套模板视频阿里巴巴做网站费用计入
  • 沈阳世纪兴网站建设合同下载网站
  • 福州市交通建设集团网站现在室内设计师好做吗
  • 机械行业网站 方案免费企业网站开源系统
  • 网站建设制塘下网站建设
  • 如何找专业的网站建设公司榆中县城乡建设局网站
  • 上海网站推广哪家好企业微信开发者工具
  • 您有新信息 建设招标网官方网站百度广告价格
  • 热门网站建设加盟平台现在装网线多少钱一年
  • 天津网站制作工具极路由做网站
  • 网站建设的外文参考文献设计师公司排名
  • 网站推广文案怎么写基于网站开发小程序
  • 移动电子商务网站建设国产免费erp软件
  • icp备案网站接入信息 ip地址段湘阴网站建设
  • 网站建设方法有那几种如何给一个公司做网站
  • 深圳网站建设黄浦网络-骗子网站建设全
  • 长沙做网站建设公司哪家好wordpress微信公众
  • 织梦做的网站方案案例网站
  • 江苏商城网站建设服务为知笔记导入wordpress
  • 学做效果图网站网站设计全包
  • 湖北网站推广公司渠道深圳网站设计很棒 乐云践新
  • 毕业设计做课程网站好自贡市网站建设
  • 有哪些可以做h5的网站seo还可以做哪些推广
  • 外链服务厦门seo服务
  • 链接转换短网址网站建设和seo
  • 白山市网站建设内蒙建设工程信息网站
  • 网站关闭申请书黄山网站建设哪家好
  • 什么网站做ppt赚钱网站哪些数据
  • 做一个网站怎么做做网站代理怎么样
  • 做网站中心购物网站开发uml图