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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3228|回复: 6

[求助] 使用synplify综合遇到的两点疑问

[复制链接]
发表于 2010-4-6 22:50:04 | 显示全部楼层 |阅读模式

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

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

x
请教如下两个问题:
      1. synplify不能综合状态机的“when others”状态:我用的是VHDL,编码风格中要求对case语句的使用要做到取值完全覆盖,即要加一个“when others”的判断(我想Verilog也一样吧,用default?),用case 来判断状态机的状态,然而用synplify综合时出warning:OTHERS clause is not synthesized
          为什么没有综合呢?
     2. synplify不能综合package库文件:  VHDL中可以写一个用户库文件,包含工程中用到的自定义数据类型、函数、元件例化等,这样其他模块只要在开始处加上“use work.*.all;”就可以使用用户库文件里的各种定义,类似于c里的“include”,我用ISE都能够正常综合,然而用synplify综合时却报错:Ignoring use clause - element_pack not found ...
其中element_pack 是我工程中用户库的名字,由于被“Ignoring”了,我在element_pack 中定义的数据类型、函数和例化的元件都无法识别,导致报了一大堆错,我只好将这些定义和例化直接移到相应的设计文件中才通过综合。
        不知道synplify为什么忽略自定义库文件呢?
发表于 2010-4-7 10:41:01 | 显示全部楼层
thanks
发表于 2010-4-7 20:38:35 | 显示全部楼层
回答你第一个问题:是不是你的取值已经完全了,比如case(a),a为一位宽,但是在"1"和"0"的时候都操作了,此时default就不需要了,所以综合不了
发表于 2010-4-8 11:52:45 | 显示全部楼层
我也碰到过这种情况
 楼主| 发表于 2010-4-8 23:15:48 | 显示全部楼层
3# 心海的一滴泪
应该没覆盖完全。我有三个状态,分别给了相应逻辑。如果是onehot码,要三位共八个状态,即使用自然编码,需2位也有4个状态,而我只定义了三个状态,所以没有覆盖完全,需要使用when others 语句,然而竟把这个分支忽略了,搞不懂
发表于 2010-4-9 08:43:50 | 显示全部楼层
关注中 !!!!111
发表于 2010-4-9 11:42:50 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-19 15:22 , Processed in 0.035850 second(s), 9 queries , Gzip On, Redis On.

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