FPGA|CPLD|ASIC论坛
直播中

李列恩

9年用户 85经验值
擅长:RF/无线
私信 关注
[问答]

quartus ii 时序仿真出现了问题

两个输入管脚分别输入了一个时钟信号,而且两个信号是反相的。输出之后来应该是输出端s位高电平,co为低电平才对的,但是输出出现了一些峰刺还是什么的。用功能仿真就没有这个问题。请大家帮我分析一下。谢谢

  • 简单的半加器

回帖(7)

lfjd05

2016-9-15 11:20:08

最佳答案

你的RTL级别仿真有毛刺吗,如果只有时序仿真有,说明你这是由于组合逻辑引起的毛刺。就是说你a,b两条时序,实际电路中达到上升下降沿不是同时的,所以输出的s、co两条线就会跳变出毛刺。最好的解决方法是再加一路时钟CLK,当CLK出现上升或下降沿的时候,进行一次a、b的组合逻辑判断
举报

李列恩

2016-9-18 11:00:33
有大神评论一下吗??
举报

小白报道

2016-9-18 13:12:58
冒险竞争!!!!
举报

李列恩

2016-9-18 15:03:46
引用: 小白报道 发表于 2016-9-18 13:12
冒险竞争!!!!

听说过,能分析一下上面的时序吗?
举报

小白报道

2016-9-18 15:15:04
引用: 想学点什么 发表于 2016-9-18 15:03
听说过,能分析一下上面的时序吗?

就是说a,b的跳变沿并不在同一个时刻,导致出现a=1,b=1或者a=0,b=0的情况
举报

hqbenson

2016-9-18 17:29:39
quartusII的时序仿真是综合布局布线后的仿真。仿真里面含有各种门延时和布线延时,会如实地反应出逻辑电平的冒险竞争现象。
功能仿真则不会有此毛刺,这是因为功能仿真没有考虑各种延时,而只是单纯地对代码的逻辑行为进行仿真。
举报

郑青松

2016-9-18 18:20:57
贴出代码看看,c0应该是组合逻辑实现的吧?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分