synplify pro下载为什么设置syn

FPGA(45)
转自:.cn/thread/
Synplify 使用过程中最常用的选项及命令的介绍。
一、&状态机相关
FSM Compiler Option
FSM Compiler是一个全局选项。勾选此选项之后Synplify Pro会自动检测代码中的状态机,根据状态数量的不同选择不同的编码方式。状态数量在0~4之间采用顺序编码(Sequential),状态数量在5~40之间采用独热码(One hot),状态数量在40以上采用格雷码(Gray)。对状态机状态进行“可到达分析”,优化掉无法到达的状态和无法执行到的语句。
FSM Explorer Option
它是FSM Compiler的一个子选项,勾选FSM Explorer则FSM Compiler也会被自动选中。勾选FSM Explorer会影响状态机的编码方式,它对每一个检测到的状态机尝试三种不同的编码方式之后选择最优的编码方式。
Syn_state_machine Directive
与FSM Compiler的不同之处在于FSM Compiler是全局选项,而syn_state_machine Directive是局部指令,使用方法如下:
reg&& [7:0]&&& curr_state&&& /* synthesis syn_state_machine=1 */;
如果我们希望某一部分代码按状态机综合但是我们没有勾选FSM Compiler选项或者FSM Compiler没有将它视为状态机,则可以使用上述代码描述将其指定为状态机。同样,也可以将其指定为“非状态机”。
Syn_encoding Attribute
BTW:Attribute和Directive的区别在于Attribute是“综合时作用”,而Directive是“编译时作用”;Attribute和工艺(如ALTERA或XILINX,或同一厂家不同系列)相关,而Directive和工艺无关。
Syn_encoding Attribute的使用方法如下:
reg&& [7:0]&&& curr_state&&& /* synthesis syn_encoding=”safe,gray” */;
Syn_encoding Attribute可选的值有“onehot”,“gray”,“sequential”,“safe”,“original”。强烈建议对每一个状态机使用“safe”,它可以在状态机受到扰动进入非法状态时自动将其复位到一个有效的状态,避免状态机“死机”。
二、&面积和速度优化
Resource Sharing Option
是一个全局选项,勾选此选项则允许编译器共用互相排斥语句中的算术单元,常用于加法器、减法器等,有时对Reg/LUT也会略有减少。
Pipelining Option & Retiming Option
它们都是全局选项。若选中Retiming则Pipelining会自动被选中。Pipelining只改变寄存器的位置,通过移动寄存器的位置优化寄存器之间的组合逻辑级数,达到优化时序的目的。而Retiming不仅改变寄存器的位置还可能改变寄存器的数量。值得注意的是,它在改变寄存器数量时不会改变寄存器的级数,确保设计者预期的逻辑功能不被改变。
Fanout Guide – one of the Device Mapping Options
Fanout Guide是全局选项,默认一般为10000,如果设计中有较多单元fanout太大导致最终实现时序难收敛,可以视情况设置。减小扇出则Synplify Pro会自动使用更多的逻辑资源来进行逻辑复制。
Syn_maxfan Attribute
Syn_maxfan是局部属性。它可以用来改变特定单元的扇出,优先级高于全局Fanout Guide选项。下面是一个使用Syn_maxfan attribut的例子:
reg&& [31:0]&&& data_out&&& /* synthesis syn_maxfan=10 */;
三、&其他常用选项及命令
Translate_off/translate_on Directive
Translate_off/translate_on必须成对出现。Translate_off之后的语句将在综合过程中被跳过,直到translate_on出现。
Translate_off/translate_on常用于在综合时自动屏蔽仿真需要的语句。以下是一个使用translate_off/translate_on的例子:
//synthesis translate_off
`define SIM_ON
//synthesis translate_on
Syn_black_box Directive
Syn_black_box指令用来将特定模块当成黑盒综合。不论该模块内容是否为空,但要求模块接口已经定义好。
Syn_keep/syn_preserve/syn_noprune Directive
Syn_preserve用来保留寄存器,综合工具可能优化掉同样输入或扇出为0的寄存器,使用syn_preserve可以保留它们。
Syn_keep用来保留连线或组合逻辑。
Syn_noprune用来保留一个black box,如果一个black box的输出扇出为0,则该黑盒可能会被优化掉,使用syn_noprune可以保护它不被优化掉。
Syn_useioff Attribute
(Technology related)
Syn_useioff attribute用来将输入输出寄存器置入FPGA的IO寄存器。它可以对输入输出管脚、输出寄存器或工程的顶层设置。
Syn_useioff attribute和工艺相关性较大,使用时需确认所用FPGA器件是否支持该属性。同时,该属性只是“尽力而为”,并不能保证最终结果一定符合设计者意图,强烈建议最终实现后在ISE/Quartus II中检查确认。
Syn_probe Attribute
Syn_probe attribute 可以用来方便测试。对一个内部寄存器使用syn_probe后,它在综合出的网表中成为顶层端口。若不使用该属性,则可能需要逐级修改设计文件(HDL代码)将内部寄存器连接到顶层。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:125120次
积分:1513
积分:1513
排名:第17008名
原创:12篇
转载:89篇
评论:12条
(43)(30)(3)(13)(12)试了一下,好像还是不行啊。x64用不了
UID941496&帖子5&精华0&积分22&资产22 信元&发贴收入30 信元&推广收入0 信元&附件收入0 信元&下载支出188 信元&阅读权限10&在线时间15 小时&注册时间&最后登录&
本帖最后由 hid4net 于
17:56 编辑
& &是这样的,Win7 x64 OS上完整的破解步骤:& & 1. 用crack\x32中的synplify.exe和synbatch.exe替换“安装目录\bin\mbin”中的相同文件;用crack\x64中的synplify.exe和synbatch.exe替换“安装目录\win64\mbin”中的相同文件;
& & 2. 在“安装目录\bin\mbin“或“安装目录\win64\mbin”目录下双击synplify程序,弹出窗口提示license错误信息,错误信息窗口有hostid,记住该ID值。(其实是有线网卡的MAC地址)。
& & 3. 用记事本打开crack目录下的license文件,用上一步生成的host id值,替换掉文件中的xxxxxxx
& & 4. 添加用户环境变量:// License
LM_LICENSE_FILE = C:\Synopsys\licence.dat
// 在x64 OS 中启用Synplify的32位模式
SYN_32BIT_MODE = 1
//可选
SNPSLMD_LICENSE_FILE = C:\Synopsys\license.dat复制代码[/code]
& & 5. 完成。但是要特别注意:网络必须(有线、无线均可)是连接的,不能是断线或受限。
UID520766&帖子342&精华0&积分36610&资产36610 信元&发贴收入45330 信元&推广收入0 信元&附件收入340 信元&下载支出17190 信元&阅读权限80&在线时间1052 小时&注册时间&最后登录&
请问 我把synplify 安装好 用ise调用总出处错误 说synplify\mbin\...\lib\xilinx\unsim.v不能打开?
UID520766&帖子342&精华0&积分36610&资产36610 信元&发贴收入45330 信元&推广收入0 信元&附件收入340 信元&下载支出17190 信元&阅读权限80&在线时间1052 小时&注册时间&最后登录&
updating 一下 请不要使用mbin里面的程序连接到ise 不能综合的 要用bin里面的才能综合 但是不能implementation
UID608934&帖子85&精华0&积分557&资产557 信元&发贴收入425 信元&推广收入0 信元&附件收入0 信元&下载支出1482 信元&阅读权限30&在线时间70 小时&注册时间&最后登录&
xiexiexiexie.louzhu
UID105070&帖子5&精华0&积分40&资产40 信元&发贴收入25 信元&推广收入0 信元&附件收入0 信元&下载支出35 信元&阅读权限10&在线时间2 小时&注册时间&最后登录&
上次没有破解成功,用楼主的办法再试试
UID3155&帖子41&精华0&积分812&资产812 信元&发贴收入180 信元&推广收入0 信元&附件收入0 信元&下载支出926 信元&阅读权限30&在线时间28 小时&注册时间&最后登录&
用楼主的办法果然可以,谢谢了!
UID51451&帖子46&精华0&积分1016&资产1016 信元&发贴收入265 信元&推广收入20 信元&附件收入0 信元&下载支出487 信元&阅读权限30&在线时间148 小时&注册时间&最后登录&
我还是不成功
UID1461750&帖子9&精华0&积分222&资产222 信元&发贴收入55 信元&推广收入0 信元&附件收入0 信元&下载支出8 信元&阅读权限20&在线时间4 小时&注册时间&最后登录&
.。。。。楼主赞啊,赞赞赞!!!!!!!!!
[通过 QQ、MSN 分享给朋友]哪位有过经历的前辈可以给一下提示
UID198245&帖子1223&精华0&积分5402&资产5402 信元&发贴收入6315 信元&推广收入0 信元&附件收入770 信元&下载支出1911 信元&阅读权限50&在线时间250 小时&注册时间&最后登录&
好像是版本兼容性哦。
UID146723&帖子98&精华0&积分650&资产650 信元&发贴收入565 信元&推广收入0 信元&附件收入1453 信元&下载支出1464 信元&阅读权限30&在线时间59 小时&注册时间&最后登录&
bob_haohao
& & 用quar2调用syn没弄过,但是个人感觉没必要,如果你想自动化综合布线,完全可以用脚本把他们连起来,这个容易实现
& &win底下tcl就很好用,当然在linux下面tcl也不错,linux下面shell用起来也很不错
UID915867&帖子160&精华0&积分167&资产167 信元&发贴收入875 信元&推广收入0 信元&附件收入0 信元&下载支出778 信元&阅读权限10&在线时间68 小时&注册时间&最后登录&
现在我也就是GUI用户,对你说的集中语言还不熟悉,可以说完全不会用。
UID988079&帖子44&精华0&积分-15&资产-15 信元&发贴收入220 信元&推广收入0 信元&附件收入0 信元&下载支出343 信元&阅读权限1&在线时间15 小时&注册时间&最后登录&
非常不错的东西
UID384840&帖子68&精华0&积分0&资产0 信元&发贴收入1605 信元&推广收入0 信元&附件收入0 信元&下载支出1697 信元&阅读权限10&在线时间92 小时&注册时间&最后登录&
我也碰到@些},感XSynplify&&c quartus ii 跟本就o法配合使用
UID1013606&帖子28&精华0&积分3&资产3 信元&发贴收入140 信元&推广收入0 信元&附件收入0 信元&下载支出238 信元&阅读权限10&在线时间3 小时&注册时间&最后登录&
我也碰到@些},感XSynplify&&c quartus ii 跟本就o法配合使用
UID100616&帖子75&精华0&积分504&资产504 信元&发贴收入460 信元&推广收入0 信元&附件收入536 信元&下载支出542 信元&阅读权限30&在线时间64 小时&注册时间&最后登录&
下面还有一个复选框,不知有没有选择。运行是自动调用。
而且将synplify的安装路径添加到环境变量的PATH变量下面
UID886187&帖子32&精华0&积分122&资产122 信元&发贴收入175 信元&推广收入0 信元&附件收入0 信元&下载支出405 信元&阅读权限10&在线时间26 小时&注册时间&最后登录&
bob_haohao
[通过 QQ、MSN 分享给朋友]

我要回帖

更多关于 synplify pro 2015 的文章

 

随机推荐