题目来源于:

https://hdlbits.01xz.net/wiki/Count_clock​hdlbits.01xz.net

前言:

新手入门,以下内容主要记录学习过程,便于后期改正。新人对语法、结构理解还欠缺,欢迎指出。

进入正题:

题目描述:

Create a set of counters suitable for use as a 12-hour clock (with am/pm indicator). Your counters are clocked by a fast-running clk, with a pulse on ena whenever your clock should increment (i.e., once per second).

reset resets the clock to 12:00 AM. pm is 0 for AM and 1 for PM. hh,mm, and ss are two BCD(Binary-Coded Decimal) digits each for hours (01-12), minutes (00-59), and seconds (00-59). Reset has higher priority than enable, and can occur even when not enabled.

大概意思:使用计数器设计一个12小时制的时钟。要求使用BCD,即至少使用4位二进制码表示1位十进制数。

(Binary-Coded Decimal‎缩写)​baike.baidu.com

提示:11:59:59 PM 到12:00:00 AM和从12:59:59 PM到01:00:00 PM的变化。

我的思路:

注意是12小时制的时钟,注意上面的提示部分。

秒和分格式固定,个位从0计到9,十位从0计到5。(00-59)计数到59向上进位一次。

因此,先写一个计数模块,秒和分的计数直接例化。(注:计数模块参考了明德扬书里面得写法)。

小时部分需要注意条件的判断,以及AM,PM状态切换,因此这部分计数单独拎出来写。我就按照逻辑直接写了,应该可以优化简洁。欢迎有更好的方法评论留言。

module 

参考:

木帅宇:HDLBits:在线学习 Verilog (二十二 · Problem 105 - 109)​zhuanlan.zhihu.com

四位BCD计数器verilog_verilog--计数器设计12-hour clock相关推荐

  1. 单片机c 语言0-99,单片机“0~99”加法计数器程序的设计51单片机原理及应用.doc...

    单片机"0~99"加法计数器程序的设计51单片机原理及应用 课 程 设 计 课程名称51单片机原理及应用题目名称单片机"0~99"加法计数器程序设计专业班级学生 ...

  2. (212)Verilog HDL:四位移位寄存器和递减计数器

    (212)Verilog HDL:四位移位寄存器和递减计数器 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)Verilog HDL:四位移位寄存器和递减计数器 5)结语 ...

  3. 基于单片机定时器/计数器的时钟设计及计数设计

    基于单片机定时器/计数器的时钟设计以及计数设计 第一部分 前言 第二部分 定时器/计数器的原理 MCS-51定时器/计数器的结构 定时器/计数器相关特殊功能寄存器 定时器/计数器工作方式 第三部分 定 ...

  4. smi时序_SMI计数器的应用设计

    SMI计数器的应用设计 余  莉  朱利洋 (丽水学院工学院   浙江   丽水   323000) 摘  要: 通过对比分析汇总若干常用的中规模集成(SMI)计数器,并通过实例得出灵活设计任意进制计 ...

  5. 使用Verilog语言描述计数器——脉动计数器;脉动计数器具有减法计数功能。采用模块设计和行为级设计方法。

    使用Verilog语言描述计数器--脉动计数器. 内容说明: 本次设计的计数器属于脉动计数器.使用Verilog语言设计,并且设计方法采用模块设计和简单的行为级设计.会有这两种设计的对比测试.最后,会 ...

  6. 网页计数器 JavaBean 的设计与使用

    网页计数器 JavaBean 的设计与使用 [描述]设计一个 JavaBean 记载网页的访问数量,在动态页面中访问该 JavaBean,实现网页的计数.假设要统计两个网页总共访问量. [分析]该问题 ...

  7. BCD码优先编码设计

    作业名称: BCD码优先编码设计 一.作业目的 1.了解了74148优先编码器的工作原理和优先级的设计. 2.掌握集成优先编码功能和应用. 3.熟悉和运用Multisim对常用电路的仿真和设计. 二. ...

  8. redis mysql 原子计数器_redission计数器实现,redisTemplate计数器

    在redission 2.9.0版本之前是有BUG,在实现下面代码时,第一次是成功的,但是在第二次就会失败: RedissonClient client;//client参考别的demo RMapCa ...

  9. android 计数器,android计数器——基础编

    计数器可以用文本文件或数据库来实现.一般来说,我们用文本文件就可以了. 一个简单的网站计数器方法: -------------------------------------------------- ...

  10. HTML5期末大作业:轮滑运动体育类人物介绍主题网站设计(12页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计

    HTML5期末大作业:轮滑运动体育类人物介绍主题网站设计(12页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 web学生网页设计作业源码 常见网页 ...

最新文章

  1. 第8章系统服务(简易音频播放器的实现)
  2. 为网站文字前面添加图标 在线调用 Font Awesome 字体icon小图标 美化网站
  3. 全球与中国硬膜外托盘市场调研分析与“十四五”前景预测展望报告2021-2027年版
  4. c++学习笔记之成员函数
  5. HttpClient的超时用法小记
  6. 随机排列_“按字母顺序排列”其实是种随机顺序
  7. 【渝粤教育】国家开放大学2018年春季 8256-21T药物治疗学 参考试题
  8. unity text不能刷新_Unity使用ComputerShader实时压缩RT!
  9. iOS开发周报-- 第一期
  10. Win环境安装VMware Server 2.0手记
  11. 与众不同 windows phone (36) - 8.0 新的瓷贴: FlipTile, CycleTile, IconicTile
  12. 奖金67万!2020 中国计算机学会大数据与计算智能大赛启动!
  13. python表单验证_python表单验证封装
  14. android 阅读器上下滑动_科研党利器——文石13.3寸墨水屏阅读器BOOX Max3
  15. JSP自定义标签_属性接收复杂类型处理方式
  16. mysql 各种字段取值范围 2009-12-23
  17. 升级python到2.7版本pip不可用
  18. centos java进程号_centos中分析java占用大量CPU资源的原因
  19. [读书]《罗辑思维》第一季、第二季推荐书籍清单
  20. 2022-2027年中国喷涂机器人行业市场调研及未来发展趋势预测报告

热门文章

  1. BI走下神坛?不是市场没落了是需要的故事变了
  2. ES6的import和export
  3. 与波导分道扬镳后传音控股再谋借壳非洲之王欲在A股扬名
  4. == 和 ===区别,分别在什么情况使用?
  5. casual Convolution因果卷积、空洞卷积dilated convolution、Hybrid Dilated Convolution (HDC)
  6. 浅谈职业生涯规划【转】
  7. 复信号的调制与解调(基带)
  8. 第 15 章 生成数据
  9. 番茄炒蛋是妈妈做得好 电商平台还是自建的好
  10. Github上Python超越Java,人工智能程序员大热