FPGA定时计数的问题(新手上路)

RTL图
简单的计时器

功能模块:
累加器,比较器,寄存器
其中,寄存器由D触发器构成,不用考虑。
累加器:此模块用组合电路实现,通过加法器,将test输入端和1相加,使得test_n始终比test大1。(test值是由test_n值每1个时钟触发进行赋值)
比较器:也是由组合逻辑构成,不需要时钟。

简言:
设定比较值为15时:
Test输出Q计数值0.1.2~,~15.0.1.2~,~15.0.1.2…………..
Test输出Q在15时刻时,test_n的DATAA为16(不过是不会起作用的),out0为0,比较器为匹配相等的值,out寄存器ENA端为1,out输出端Q为0。
Test输出Q回到0时刻时,test_n的DATAA变为1,out0变为1,比较器变为匹配不相等的值,out寄存器ENA端变为0,out输出端Q变为1。(在上升沿来临瞬间,ENA是1,时钟来临,out输出反转)。

这样,out在test从15到0时刻起作用,从计时开始到起作用,需要16个比较值,所以目标值设置需要比实际值小1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值