安装:基于centos7 / 虚拟机
1. license太旧,LicGen生成synopsys.dat失败
编辑synopsys.src文件,将每一段第一行的时间改后一点
2. syn.log显示failed to open the tcp port number in the license
原因是lmgrd已经在运行,占用了同一端口。解决方法:要么更换端口(太麻烦),要么输入ps查看lmgrd的ID号,然后kill掉它。
3.license打开之后,syn.log里显示无有效hostid,如
应该是网卡名不一致,虚拟机配置文件里如果ethernet0.generatedAddress = "00:0c:29:c8:3d:11"(举例),centos7里同样MAC地址的网卡名应是eth0。解决方法是打开ifconfig查看哪个网卡MAC一样,修改该网卡名为eth0。修改后可通过lmhostid查看MAC地址是否为00:0c:29:c8:3d:11。
4. 终端中输入dc,no such file or directory
缺少库,直接安装就好了 yum install libncurses.so.5;后面可能还会出现类似错误,那就缺啥装啥就好了。
5. intaller中打开安装软件路径一直显示 is not valid.(即使存在..._linux.tar和..._common.tar)
intaller版本太老,换个新的试试
操作(dc_shell):
list_designs #显示verilog设计文件
remove_design -hierarchy #移除工作区的verilog文件
analyse -format verilog [ list top.v file1.v file2.v ] #读取并编译三个设计文件
elaborate -architecture verilog top #指定top文件并netlist
check_design #综合前检查设计文件的语法错误;若返回0,则要检查设计文件
reset_design #清楚以前所有的约束
create_clock -period 2 [ get_ports CLK ] #创建时钟线端口CLK,输入周期为2ns,占空比默认为0.5
set_input_delya -max 0.8 -clock CLK [ get_ports C ] #设置输入端口C相对于时钟线CLK端口输入延迟最大为0.8ns
remove _input_delay [ get_ports CLK ] #移除CLK端口的输入延迟
set_output_delay -max 0.5 -clock CLK [ all_outputs ] #设置所有输出端口相对于时钟线CLK端口输出延迟0.5ns
remove_from_collection [ all_port ] [ get_ports CLK ] #设置排除掉CLK端口的所有其他端口
compile -map_effort high -area_effort high -boundary_optimization #综合
report_constraint -all_violators #检查有无违规
set_false_path -from [get_clocks CLK1] -to [gets_clocks CLK2] #告诉DC不要在这条路径进行约束
set_clock_groups -logically_exclusive -group CLK1 -group CLK2 #逻辑互斥,作用上同
set_clock_groups -asynchronous -group CLK1 -group CLK2 #异步时钟,无需做优化
check_timing #检查设计中有无port没有约束
report_timing #报告时序问题,设计中的最差路径。寄存器间的时间差要小于路径时间
report_timing -max_path 2 #报告slack最长的分别指向两个寄存器的路径
report_timing -nworst_path 2 #报告slack最长的两个路径
report_timing_requirements -ignored #报告set_false_path等异常约束
非pipline结构的时序优化可使用adaptive retiming;
pipline结构时序优化可采用register retiming
ERROR:
操作:
1. 仿真后器件显示的参数叠加在一起,可在CIW窗口中输入aelPushSignifDigits(x),调整参数有效位数为x。
ERROR:
这是因为ADE仿真模型找不到,解决:在setup里的model library里添加相应的.scs文件或者.lib文件,注意section添加相应的属性。有的时候仍然会存在有些元件找不到的情况,只要添加该元件相应的库即可,例如
1.Net TDO has only one pin (Pin U3-39)
解决:放置网络标号的时候需要在导线上出现红色的X字,才算成功添加,不然的话就是没有连上