在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2623|回复: 8

[求助] [求助]特权大大快粗来 小弟好多不明白 特意列了出来

[复制链接]
发表于 2015-4-9 23:10:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

x
1.在看你的《深入浅出》,在三段状态机那里略有不懂,特意百度了一下看到你的博文,还是有些不懂:   三段式的第三段的触发信号是nstate还是cstate是不是在moore和mealy机是是不一样的?
   状态切换和相应输出同时或者差一个周期对程序运行有没有影响?
2.我用的ISE,没办法实验室都用的Xilinx,想问下综合编译时间那么长,除了利用本来的增量编译还有没有什么别的办法?
3.写了一些冗余信号用来观察,老是被综合掉,据说keep=true可以防止被综合,用了下发现必须要把冗余信号引到顶层再keep=true才行,是这样么?
新人渣渣还请见谅
发表于 2015-4-10 22:13:43 | 显示全部楼层
我是那个贴吧里回复你的人哈,没想到你真到这儿来问了。。。我才去看了特权的那本书,关于三段式FSM,就是你的第一个问题,虽然他的输出信号cmd用nstate来触发,但我仍然坚持用cstate来触发,因为我们把状态机分开来,实际上是让时序跑得更好,但是运行结果仍然要和一段式FSM保持一致,才能达到我们的功能需求,显然在三段式FSM里,输出信号cmd用cstate来触发,结果才是和一段式FSM一致的,也最好理解。 我平时的项目里,都用的三段式,对于每个状态下的信号输出,全是用cstate来控制的,没有什么问题,不知道特权同学有什么高见。
第二个问题,我只能说,软件编译速度,基本取决于你的计算机水平,这个光靠设置软件,是起不到多大作用的,大的逻辑工程都是用服务器在跑。
第三个个问题,如果你非要让冗余信号保留,你可以再顶层输出端设置一个1bit的test_out,把你所有要观察的信号,都通过逻辑运算赋值给这个test_out信号,最后在约束力不给它分配引脚,就行了,只要有输出,是不会被综合掉的,任何综合器都有效,不需要添加什么专用保留的注释。
 楼主| 发表于 2015-4-11 11:53:42 | 显示全部楼层
回复 2# glace12123


    哈哈因为我发现真的有个特权专版
发表于 2015-4-13 08:14:03 | 显示全部楼层
我只回答第一个问题吧:3段式输出判断原则上是用nstate比较合适,若用cstate就需要多延时一个时钟周期了,如果设计中明白这个问题,对设计确实也没有影响(或者说这个影响,设计者已经预见到,并且就照着这个延时来实现电路),那么没有问题,并且cstate会比nstate可能更利于时序收敛。但是,从设计的稳定可靠或者说最优来说,用nstate已经足够了,没有必要用cstate。
发表于 2015-4-13 13:17:50 | 显示全部楼层
回复 2# glace12123


   代码写的不多,但是还是觉得一段式的状态机好理解和方便!
发表于 2015-4-13 20:43:00 | 显示全部楼层
回复 5# 574920045


   一段式不利于时序收敛,这个是要害。大家可以看看这篇文章:http://www.doc88.com/p-300948763165.html
发表于 2015-4-14 09:02:35 | 显示全部楼层
回复 6# 特权fpga


    文章说的很详细,以后慢慢把写一段式的习惯改成写三段式的代码才好呢!不过我用的是VHDL,二种语言对状态机的描述应该是一样的吧!
发表于 2015-4-14 21:45:09 | 显示全部楼层
原理性的东西都是一样的,实现方式上可能略有差别而已
发表于 2015-4-15 06:58:27 | 显示全部楼层
支持下
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /3 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-20 18:00 , Processed in 0.032506 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表