用Verilog设计实现异步双向计数器
用Verilog实现一步双向计数器的程序
第7卷%第10期
软件导刊
2008年10月SoftwareGuide
Vol.7No.10Oct.2008
用Verilog设计实现异步双向计数器
孙
波,吴
亮
(江苏自动化研究所计算机事业部,江苏连云港222006)
摘
要:介绍了一种利用Verilog设计实现异步双向计数的方法,给出了主要的可综合Verilog代码,通过仿真验证,可
以实现双向计数、异步置数、清零等功能,达到了设计要求。关键词:异步计数器;Verilog;FPGA中图分类号:TP311.52
文献标识码:A
文章编号:1672-7800(2008)10-0118-02
表1
54/74192和54/74193引脚说明
功能计数输出逆向计数时钟正向计数时钟
异步置数(低电平有效)
正向计数进位输出(低电平有效)逆向计数借位输出(低电平有效)异步清零置位输入数据地电源
1问题的提出
在一次接口模块的设计任务中,使用了某些接口适配芯片
引脚
QD,QC,QB,QADNUPLDNCONBONCLRD,C,B,AGNDVCC
表2
和FPGA。为了达到对这些接口适配芯片的读写操作进行计数的目的,需要在FPGA里设计一种双向计数器,这种计数器有两个计数时钟,能在正向计数时钟(如写信号)的有效沿计数增加,在逆向计数时钟(如读信号)的有效沿计数减少。另外,该计数器还应具有一般计数器常见的清零、置数和暂停等功能。由于这个计数器的计数增、计数减、置数和清零等操作没有一个统一的全局时钟来触发,这些操作的产生在时间上是随机的,因此只能采用异步工作方式。
2设计分析
在54/74系列器件中,也有类似功能的双向计数器,如54/
UPXX↑C
54/74192和54/74193真值表信号引脚
功能
DNXXH↑
CLRHLLL
LDNXLHH
清零置数计数值增1计数值减1
74192和54/74193。前者是4位二进制BCD码计数器,后者为4位
二进制全码计数器。除了计数输出编码上的区别,两种器件的电性能与管脚封装完全兼容。我们在FPGA里设计实现双向计数器时,可以将54/74192和54/74193作为对比参考。这两种器件的引脚说明如表1所示。
对于模块化的54/74192和54/74193,考虑到这两种器件的通用性以及管脚封装管脚等原因,计数输出位数不宜太多,两种器件都为4位计数输出。若要获得更大的计数范围,则必须采取多片级联的方式来实现。例如若要实现16位计数输出,就要用到4片54/74192或54/74193串行级联,如图1所示。
与模块化的54/74192和54/74193相比,在FPGA里利用
54/74192和54/74193都是双时钟可置数双向计数器,两者
各有两个独立的计数时钟UP和DN。在其他输入信号都为高的情况下,计数输出在UP的上升沿增加,在DN的上升沿减少。54/
74192和54/74193都支持置数(Load),在LDN的下降沿通过输
入引脚D,C,B,A将数据写入。置数过程与两个计数时钟UP和
DN都是异步的。为了方便器件的级联使用,54/74192和54/74193还带有借位信号BON和进位信号CON输出。把BON和CON的输出信号接入到下一级芯片相应的DN和UP引脚,就可
以方便地实现多片级联。54/74192和54/74193的真值表如表2所示。
Verilog设计计数器时,一般没有必要为了扩大计数范围而采用
级联的方法,因而也没有必要设计借位和进位信号。因为FPGA有相当丰富的逻辑资源与可配置管脚,可以很方便地得到很宽的计数输出。从实用性上来看,所设计的异步双向计数器必须具有双向计数、清零、置数的功能。尽管不必设计借位和进位信
作者简介:孙波(1979~),男,安徽铜陵人,硕士,江苏省自动化研究所助理工程师,研究方向为抗恶劣环境计算机;吴亮(1983~),男,江苏海安人,
,
用Verilog实现一步双向计数器的程序
第10期
数信号Load_n,然后才是计数使能信号en和时钟信号Up和Down。用
Verilog设计这个计数器
时,应用if-else语句正确体现真值表里信号的优先级。另外,为了防止溢出造成的计数不准确,在计数值达到最大值
图1
将4片74192级联得到16位计数输出
时,应暂停正向计数,在计数为零时,应暂停逆
向计数。
设计双向计数器的主要Verilog程序代码如下所示:
号,但为了在系统里灵活控制,计数器还应具有复位、暂停和空/满输出指示等功能。
(1)复位信号Reset_n。来自系统的全局复位信号,实现对计数器的复位/清零。尽管Clear和Reset_n的功能相同,都是将计数器清零,但是把这两个信号区别开来,有利于实现对计数器更灵活的控制,即在不复位系统的情况下也能对计数器清零。
(2)计数暂停信号en。当en为1时可正常双向计数,而当en为0时,暂停计数。
(3)计数值为空的信号Empty和计数值为满的信号Full,这两个输出信号,可以用来向系统提请中断。
通过对54/74192和54/74193的分析,结合设计中的实际情况与需要,所设计的计数器的信号端口及功能说明如表3所示。
表3
引脚
计数器信号端口功能说明功能复位清零
异步置数(低电平有效)置数输入计数使能正向计数时钟逆向计数时钟
正向计数满(计数值已达最大值)逆向计数空(计数值为0)表4
计数器真值表
功能
always@(negedgeReset_norposedgeClearornegedgeLoad_norposedgeUporposedgeDown)if((!Reset_n)||Clear)q<=8'h00;elseif(!Load_n)q<=d;elseif(en)beginif(Up)beginif(!Full)q<=q+1'b1;elseq<=q;end
elseif(Down)beginif(!Empty)q<=q-1'b1;elseq<=q;endelseq<=q;endelseq<=q;assignFull=&q;assignEmpty=~(|q);
Reset_nClearLoad_nD[7:0]enUpDownFullEmpty
信号引脚
Reset_nLXHHHH
ClearXHLLLL
Load_nXXLHHH
enXXXLHH
UpXXXX↑H
DownXXXXH↑
清零清零置数暂停计数计数值增1计数值减1
4仿真结果
对设计的计数器采用ModelSim6.1f进行仿真。为了利用
3设计实现
本文所讨论的异步双向计数器的设计,以表3所列的真值
仿真工具ModelSim,必须针对以上的Verilog代码编写测试程序(TestBench)。编写的测试程序,除了要验证计数、暂停、清零和置数的功能是否实现外,还应检验计数器在特殊条件下所采取。,若仍然有正向
表为依据。由于信号都是异步的,设计时要考虑信号作用的优
。,和Clear
用Verilog实现一步双向计数器的程序
第7卷%第10期
软件导刊
2008年10月SoftwareGuide
Vol.7No.10Oct.2008
基于AT89S52单片机数字钟的实现
张
芳
(湖北水利水电职业技术学院,湖北武汉430000)
摘
要:介绍了一种以AT89S52单片机为核心,数码管、蜂鸣器为主要外围元件的数字钟的设计与实现。该仪表系统
具有显示直观、使用方便、性能可靠等优点,介绍了硬件和软件设计,并提供了完整的电路图,具有较好的实用性。关键词:AT89S52单片机;LED动态显示;数字钟中图分类号:TP2
文献标识码:A
文章编号:1672-7800(2008)10-0120-03
1明确系统设计要求
设计并制作出具有如下功能的电脑钟:(1)自动计时,由6 …… 此处隐藏:2854字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [初中教育]婚姻家庭法学教学教案
- [初中教育]浅谈小学语文教学中的创新教育
- [初中教育]中华人民共和国侵权责任法2009
- [初中教育]2016-2022年中国薄膜太阳能电池行业发
- [初中教育]多级轻型井点降水的应用
- [初中教育]外语教学法流派介绍和简评
- [初中教育]实验一、典型环节及其阶跃响应
- [初中教育]内蒙古2012-2013学年度国家奖学金获奖
- [初中教育]移动通信营销渠道管理探讨
- [初中教育]初三化学第一学期第一第二章基础知识点
- [初中教育]一天的食物教学设计
- [初中教育]光导照明系统的基本结构及工作原理
- [初中教育]长春市十一高、东北师范大学附属中学、
- [初中教育]“十三五”规划重点-配重式装卸车项目
- [初中教育]领导方法和领导艺术
- [初中教育]第三章 植物病虫草鼠害诊断与防治基
- [初中教育]2019届九年级语文上册 第二单元 6纪念
- [初中教育]甲级单位编制水豆腐项目可行性报告(立
- [初中教育]Ch8-1补充 09101数据库系统原理及应用-
- [初中教育]2017-2023年中国吊装设备行业市场分析
- 制作毕业纪念册需要哪些材料
- 2015-2016学年高二化学苏教版选修4课件
- 哈佛管理导师-创建商业案例
- 职场交际中的谈吐礼仪知识与职场会议接
- 中国糕点及面包行业发展现状与竞争战略
- 沂河“12·7”洪水茶山拦河坝
- 管道水流量计算公式
- 4-2发电机火灾事故处置方案
- 数字信号处理实验五
- 2009年经济师(中级)金融专业知识全真试
- 历史街区保护规划--04历史文化遗产保护
- 宁夏回族自治区中小学职称评价标准
- 评先评优测评表
- 圆的切线证明及线段长求解在在中考中的
- 【解析版】2015年江苏省南京外国语学校
- 人教版八年级上册科学第一章习题精华
- 责任心与执行力
- SA8000社会责任管理体系标准培训
- IgA肾病的饮食应注意
- 杭州市建设工程文件归档整理方案(试行)




