关于verilog的锁存器边沿触发和翻转的疑问

[复制链接]
3691|3
 楼主| XLDZZ 发表于 2011-3-9 11:01 | 显示全部楼层 |阅读模式
小弟很菜 学习的数字电路知识基本多还给老师了
所以问的问题多很菜鸟级别
问题如附件照片
我用verilog写了个加法器 其中scl是时钟 point是加法器输出。每个scl加1
照我的理解 每当scl上升沿到达,point就会加1并翻转输出
但是仿真下来的结果却是下降沿翻转。

在数字电路中 有些锁存器是这样的 上升沿所存数据 下降沿翻转(主从结构的)
难道quartus的reg采用这种结构 这样也太浪费LE了吧

还是我的理解有错误

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
wanli315 发表于 2011-3-9 14:11 | 显示全部楼层
你再仔细看看波形,这个是下降沿触发吗??
sxhhhjicbb 发表于 2011-3-13 21:33 | 显示全部楼层
图中所示是上升沿转的....源于point[3:0] <= point[3:0] + 'b1;不能马上生效,reg有延时生效的特性。
xiaoyuan_ly 发表于 2011-3-17 10:36 | 显示全部楼层
这说明point[3:0] + 'b1没有足够的计算时间(这个计算时间包括了布线上的延时等情况)。相应的做法应该是,在前一个scl周期应计算出point[3:0] + 'b1的值,然后在SCL的上沿打入,这样应该比较的符合物理硬件的执行情况。 你的那种是比较理想的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

64

主题

182

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部