3007|0

6892

帖子

0

TA的资源

五彩晶圆(高级)

楼主
 

两个28MHz分频到1秒的分频程序对比 [复制链接]

两个程序,一个是直接用REG时序进程单进程写的分频程序把28兆个周期分成14兆个和14兆个,其中一半输出0,另一半输出1,正好1秒。仿真结果很好,无竞争,无毛刺,下载DEII验证正常,用它来驱动16进制计数器现实也正常。
          另外一个程序是把REG单进程分为两个进程,一个是REG进程,另一个是COM进程,设计思路如前,仿真结果是这样,当输入频率为2的幂级数时,无毛刺无竞争,但是输入频率非2的幂级数时,就会在1秒的0和1各0.5秒内产生一个正向和反向毛刺,下载DEII开发板,显示也是正常,1秒1秒的闪烁,但是用它来驱动16进制计数器,发现问题,就是计数不是一个一个的计,会显示0,4,8,C,F,0这样,很有规律。仔细研究波形仿真,发现了这个问题。就是多加的那个COM进程产生毛刺,正好多了那两个毛刺,计数才0完就计4。
VHDL状态机时也会有这个问题,多进程状态机会出现毛刺,要消除,就是因为COM进程存在。把COM进程和REG进程合并,写成混合进程REGCOM就可以消除毛刺了,这就是单进程状态机的优势。

两个程序里大家可以修改输入频率的大小,由于仿真时间过久,建议大家选用256Hz和280Hz进行仿真,就可以看到偶发的那三个波形了。可以看出单进程不论输入256还是280Hz都不会有毛刺,而双进程输入256Hz很好,无毛刺,但是输入280Hz时,就会出现毛刺,这就是我说的提供给16进制计数器做时钟出现计数0,4,8,C,F,0的原因了。
一点建议,仅供大家参考。希望有所帮助。
此帖出自FPGA/CPLD论坛
点赞 关注
个人签名一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表