微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 为什么有时QuartusII会把状态机的某些状态综合没了,而synplify就不会呢?

为什么有时QuartusII会把状态机的某些状态综合没了,而synplify就不会呢?

时间:10-02 整理:3721RD 点击:
在quartus的三种综合方案speed、balance和arer下的状态个数都不一样,几乎都丢失了状态。另外,使用它的fsm viewer,有很多转态机都显示不出来。但是,使用synplify pro不仅状态没有丢失,而且使用FSM explorer查看状态机也没问题。
是不是两种综合工具有区别?

虽然不太懂,但看您的帖子也只能这么解释了 ^_^这个世界上没有完美的编译器 呵呵~~~

不同综合工具,综合结果是不同的!
是哪些状态被综合没了?

一些正常状态!

你quartus是什么版本的啊

检查下代码,被综合掉的状态是不没用上呢,,

同样的问题,我用的是Quartus II 7.2,不管是用verilog,还是原理图输入方式,状态机的一些正常状态总是会被优化掉。我尝试设置修改Analysis & Synthesis Settings中的"Remove Duplicate Registers - off"和"State Machine Processing - one hot",结果还是一样,除非我用SignalTap II把被优化的状态拉出来观察,否则都会被优化掉。

将State Machine Processing的状态设成user coded如何?

不是没有了,综合工具不会错的,它可能会重新组合的状态机逻辑,并且进行自动优化,所以综合出来和RTL不一致,但是功能不会变的

我也遇到过  ,,,,

自己设置一下就行了。

我一般很少用quartus自己的综合工具。你再试试看用precision综合下呢

支持9#的说法,应能是综合器给优化了,不然你看看你设置的该状态下的变量综合后会不会有影响!应该是组合了

看看状态跳转,综合器综合掉代码,部分代码是冗余的

换综合工具

可能是状态机的书写风格不对,在第二段状态机如果条件判断语句不完整的话综合出latch的情况出现会出现这种正常状态被优化掉的情况,可以把你的代码贴出来,个人认为是这个原因!

顶顶顶顶顶顶顶顶

这个应该是你代码问题吧~

我也遇到过  ,,,,

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top