位置: IT常识 - 正文

【HDLBits刷题笔记】10 Counters(最好用的刷题笔)

编辑:rootadmin
Count15 module top_module ( input clk, input reset, // Synchronous active-high reset output Count15module top_module ( input clk, input reset, // Synchronous active-high reset output [3:0] q); always@(posedge clk) begin if(reset) q <= 4'd0; else q <= q + 1'b1; endendmoduleCount10

推荐整理分享【HDLBits刷题笔记】10 Counters(最好用的刷题笔),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:刷题笔真的好用吗,刷题笔多少钱,最好用的刷题笔,刷题笔真的好用吗,刷题笔是什么,刷题笔怎么样,刷题笔是什么,刷题笔是什么,内容如对您有帮助,希望把文章链接给更多的朋友!

题目给的答案把q清零和reset放在了一个if里if (reset || q == 9)。

module top_module ( input clk, input reset, // Synchronous active-high reset output [3:0] q); always@(posedge clk) begin if(reset) q <= 4'd0; else q <= (q<9)?(q+1):0; endendmoduleCount1to10module top_module ( input clk, input reset, output [3:0] q); always@(posedge clk) begin if(reset) q <= 4'd1; else q <= (q<10)?(q+1):1; endendmoduleCountslowmodule top_module ( input clk, input slowena, input reset, output [3:0] q); always@(posedge clk) begin if(reset) q <= 4'd0; else if(slowena) q <= (q<9)?(q+1):0; endendmoduleExams/ece241 2014 q7a

这道题感觉怪怪的,一开始我写的c_load = (Q==12)|reset;由于题目说了count4模块中的load优先级比enable高,所以enable为0时仍可以置数。

【HDLBits刷题笔记】10 Counters(最好用的刷题笔)

而题目貌似是希望load和enable不能冲突,enable为0时就不应该置数了,所以此时的load应该为0,所以我又把信号与上了一个enable。

module top_module ( input clk, input reset, input enable, output [3:0] Q, output c_enable, output c_load, output [3:0] c_d); // count4 the_counter (clk, c_enable, c_load, c_d , Q ); assign c_d = 1; assign c_enable = enable; assign c_load = enable&(Q==12)|reset;endmoduleExams/ece241 2014 q7b

把三个BCD计数器级联在一起即可。一开始我写的c_enable[2]=(Q2==9);OneHertz=(Q3==9);而Q2、Q3都会持续多个周期,只有Q1是一个一直变的信号。

module top_module ( input clk, input reset, output OneHertz, output [2:0] c_enable); // wire [3:0]Q1; wire [3:0]Q2; wire [3:0]Q3; bcdcount counter0 (clk, reset, c_enable[0],Q1); bcdcount counter1 (clk, reset, c_enable[1],Q2); bcdcount counter2 (clk, reset, c_enable[2],Q3); assign c_enable[0]=1'b1; assign c_enable[1]=(Q1==9); assign c_enable[2]=(Q2==9)&&(Q1==9); assign OneHertz=(Q3==9)&&(Q2==9)&&(Q1==9);endmoduleCountbcd

感觉写的稍微有点复杂,利用了verilog里写多个if优先下面的语句的特点,实际不会对一个数重复操作。

实际例化多个BCD计数器会简单很多。

module top_module ( input clk, input reset, // Synchronous active-high reset output [3:1] ena, output [15:0] q); always@(posedge clk) begin if(reset) q <= 'd0; else begin q[3:0] <= q[3:0] + 1; if(ena[1])begin q[3:0] <= 0; q[7:4] <= q[7:4]+1; end if(ena[2])begin q[3:0] <= 0; q[7:4] <= 0; q[11:8] <= q[11:8]+1; end if(ena[3])begin q[3:0] <= 0; q[7:4] <= 0; q[11:8] <= 0; q[15:12] <= (q[15:12]<9)?q[15:12] +1:0; end end end assign ena[1] = (q[3:0]==9); assign ena[2] = (q[7:4]==9)&&ena[1]; assign ena[3] = (q[11:8]==9)&&ena[2];endmoduleCount clock

这道题稍微有点复杂,难度也不算特别大,但是需要耐心debug,把情况全部考虑清楚。

我提交了五次才通过,可恶。

module top_module( input clk, input reset, input ena, output reg pm, output reg[7:0] hh, output reg[7:0] mm, output reg[7:0] ss); always@(posedge clk) begin if(reset)begin pm <= 1'b0; hh <= {4'd1,4'd2}; mm <= 0; ss <= 0; end else if(ena)begin ss[3:0] <= ss[3:0] +1'b1; if(ss[3:0] == 9)begin ss[3:0] <= 'd0; ss[7:4] <= (ss[7:4]==5)?0:(ss[7:4]+1); end if(ss[3:0] == 9&&ss[7:4] == 5)begin if(mm[3:0]<9) mm[3:0] <= mm[3:0] + 1; else begin mm[3:0] <= 'd0; mm[7:4] <= (mm[7:4]==5)?0:(mm[7:4]+1); end end if(ss[3:0] == 9&&ss[7:4] == 5&&mm[3:0] == 9&&mm[7:4] == 5)begin if(hh[3:0]<9&&hh[7:4] == 0) hh[3:0] <= hh[3:0] + 1; else if(hh[3:0]<2&&hh[7:4] == 1) hh[3:0] <= hh[3:0] + 1; else begin if(hh[7:4] == 1) hh[3:0] <= 'd1;//注意这里是1 else hh[3:0] <= 'd0; hh[7:4] <= (hh[7:4]==1)?0:1; end end if(ss[3:0] == 9&&ss[7:4] == 5&&mm[3:0] == 9&&mm[7:4] == 5&&hh[3:0]==1&&hh[7:4]==1) pm<=~pm; end endendmodule
本文链接地址:https://www.jiuchutong.com/zhishi/313192.html 转载请保留说明!

上一篇:苹果系统专用网络优化工具,让你的网络速度暴增(一个人失恋了该怎么安慰她)

下一篇:织梦dedecms使用channelartlist标签显示当前文章高亮(织梦如何使用)

  • 5方面打造外链建设提高网站权重(如何建立高质量的外链?)

    5方面打造外链建设提高网站权重(如何建立高质量的外链?)

  • 钉钉成员信息姓名怎么修改(钉钉成员信息姓名怎么改)

    钉钉成员信息姓名怎么修改(钉钉成员信息姓名怎么改)

  • qq网络状态怎么设置(qq网络状态怎么隐藏)

    qq网络状态怎么设置(qq网络状态怎么隐藏)

  • 小米11支持哪些NFC功能(小米11支持哪些快充)

    小米11支持哪些NFC功能(小米11支持哪些快充)

  • 电子商务是否等同于商务电子化(1、电子商务)

    电子商务是否等同于商务电子化(1、电子商务)

  • vga dvi区别(dvi和vga哪个更好)

    vga dvi区别(dvi和vga哪个更好)

  • 手机内屏排线接触不良的表现(手机屏排线接口通用吗)

    手机内屏排线接触不良的表现(手机屏排线接口通用吗)

  • 华为p30pro指纹解锁不灵敏(华为P30pro指纹解锁丢失怎办)

    华为p30pro指纹解锁不灵敏(华为P30pro指纹解锁丢失怎办)

  • qq传视频会被压缩吗(用qq传视频会被压缩吗)

    qq传视频会被压缩吗(用qq传视频会被压缩吗)

  • 重装系统重启后不引导(重装系统重启后又进入pe系统)

    重装系统重启后不引导(重装系统重启后又进入pe系统)

  • 网络卡顿是路由器的原因吗(网络卡顿是路由器的问题还是网络的问题)

    网络卡顿是路由器的原因吗(网络卡顿是路由器的问题还是网络的问题)

  • 华为折叠屏屏幕是哪家公司供应的(华为折叠屏屏幕出现亮线)

    华为折叠屏屏幕是哪家公司供应的(华为折叠屏屏幕出现亮线)

  • 荣耀9x摄像头怎么升降(荣耀9x摄像机)

    荣耀9x摄像头怎么升降(荣耀9x摄像机)

  • oppo手机呼吸灯怎么开启(oppo手机呼吸灯怎么关)

    oppo手机呼吸灯怎么开启(oppo手机呼吸灯怎么关)

  • word2010生成条形码(word怎么做条形图表)

    word2010生成条形码(word怎么做条形图表)

  • 淘宝双十一津贴在哪里领(淘宝双十一津贴可以叠加吗)

    淘宝双十一津贴在哪里领(淘宝双十一津贴可以叠加吗)

  • 手机爱奇艺看不到字幕怎么办(手机爱奇艺看不到弹幕)

    手机爱奇艺看不到字幕怎么办(手机爱奇艺看不到弹幕)

  • 苹果手机私密相册怎么找(苹果手机私密相册怎么加密)

    苹果手机私密相册怎么找(苹果手机私密相册怎么加密)

  • mate20和mate30的区别(华为mate20和华为mate30哪个好)

    mate20和mate30的区别(华为mate20和华为mate30哪个好)

  • wps是干嘛用的(wps是用来干什么用的)

    wps是干嘛用的(wps是用来干什么用的)

  • 如何制作淘宝主图视频(如何制作淘宝主页)

    如何制作淘宝主图视频(如何制作淘宝主页)

  • 华为云空间有什么用(华为云空间有什么用,如何关)

    华为云空间有什么用(华为云空间有什么用,如何关)

  • Element-UI侧边导航栏切换展示不同的右侧主体内容(element ui 左侧导航)

    Element-UI侧边导航栏切换展示不同的右侧主体内容(element ui 左侧导航)

  • IDEA从零到精通(24)之lombok插件的安装与使用(idea实用技巧)

    IDEA从零到精通(24)之lombok插件的安装与使用(idea实用技巧)

  • 一般纳税人的计税方式是什么
  • 无偿划转股份是好是坏
  • 个税手续费返还要交增值税吗
  • 税务登记如何注销
  • 个人所得税申报截止时间
  • 备案办税人员信息填本人的有风险吗
  • 农产品计算抵扣的税务政策
  • 洒水车计提折旧会计分录
  • 账本一般保存几年就可以销毁2004年的规定
  • 高新技术企业职工人数如何确定
  • 合并报表长期股权投资怎么算
  • 计提所得税是在结转12月损益之前还是之后
  • 金税三期的变化
  • 技术服务费普通发票怎么做账务处理
  • 叉车车船税每年都要交吗
  • 月工资和账户工资区别
  • 营改增后固定资产报废处置收入计税
  • 地铁充值发票会透露个人账户信息吗
  • 小规模纳税人开专票和普票的区别
  • 不抵扣发票如何勾选
  • 以前固定资产入账折旧怎么提
  • 开了百分之五的票怎么办
  • 广告公司进项税有哪些
  • 工业企业预付材料款时一般应借记什么账户
  • 小规模纳税人主要缴纳
  • 筹备期废品回收会计分录
  • 银行网银测试
  • PHP:xml_get_current_byte_index()的用法_XML解析器函数
  • 2020香港回归23年
  • 无损数据分区
  • 摊销无形资产会影响无形资产的账面价值吗
  • 支付第三方劳务派遣费用如何做账
  • 代开专用发票的流程资料要求
  • 学python真的好就业吗
  • nginx跨域配置详解
  • 个体工商户注册资本是多少
  • 商业承兑汇票如何查询
  • 多缴所得税怎么算
  • 累计折旧当月增加当月减少
  • mysql线程数配置
  • sql server如何操作
  • 专票作废扣税吗
  • 债权人豁免债务的账务处理会计分录
  • 公司成立开的户叫什么
  • 医院交什么保险
  • 收到承兑汇票在什么科目
  • 防伪税控技术
  • 小微企业能申请高新吗
  • 负商誉的分录
  • 管理费用结转到哪个科目
  • 应收账款计提减值准备会计处理
  • 产权交易所交易流程
  • 展览门票收入按什么征税
  • 什么是发票抬头信息
  • 事业单位会计岗位属于哪一类
  • 如何查询公司经营异常
  • 私营企业固定资产法律制度
  • mysql安装配置教程5.7.26
  • 数据库保护数据方式
  • 微软10月已停止服务中国用户
  • xp系统怎么关闭自动关机
  • windows vista 版本
  • vs显示进程已退出
  • linux me
  • linux emac
  • linux系统基本操作命令
  • windows8.1的图片
  • linux给文件赋全部权限
  • css各种滤镜的应用是什么
  • web标准网页布局的背景
  • js闭包作用问题解决应用
  • 由浅入深易,由深入浅难
  • 深入了解是啥意思
  • Android Listview addHeaderView setadapter的时候莫名NullPointerException 解决
  • jquery设置iframe的src
  • 国家税务总局办税指南
  • 百旺税控盘口令是多少
  • 小规模纳纳税人
  • 地税局开的发票
  • 个人股和公司股
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设