文章目录
- 一、什么是GCA
- 二、GCA流程
- 1 .启动GCA
- 2 .设置lib
- 3 .读design并链接design
- 4 .读SDC
- 5 .analyze_design
- 6 .报告或图形化界面分析结果
一、什么是GCA
Galaxy Constraint Analyzer,简称GCA,是一个专门检查设计约束的工具,现在已经集成在Prime Time中,使用起来非常方便。另外,它有GUI图形界面,用户可以很清晰地看到当前约束存在的问题以及修改方案。
二、GCA流程
GCA流程如下所示:首先启动GCA,然后设置lib,然后读design并链接design, 接下来读SDC,最后analyze_design,可以将report写出来或者通过图形化界面查看当前约束存在的问题。
1 .启动GCA
代码如下(示例):
pt_shell -constraints -f gca.tcl
2 .设置lib
代码如下(示例):
set search_path $search_path
set link_path $link_path
3 .读design并链接design
代码如下(示例):
read_verilog $design.v.gz
current_design $design
link -verbose
4 .读SDC
代码如下(示例):
source -echo -verbose $design.sdc
5 .analyze_design
代码如下(示例):
analyze_design
6 .报告或图形化界面分析结果
代码如下(示例):
report_constraint_analysis > report_constraint_analysis.log
#打开图形化界面
start_gui
推荐使用GUI图形界面来Debug,如下图所示:每条Error和warning都有对应的详细解释,非常方便,右下角的Detail窗口中还有具体的违反数据分析。
另外,如果有一些Errors或者Warnings确实是我们的意图,那需要把它们waive掉,可以通过图形化界面选中它们然后右键选择“waive selected violation(s)",最后把它们写到一个文件里面,下次可以直接source该waive文件就能直接在图形化界面看到waive掉的Errors或者Warnings,这样已经waive掉的Errors或者Warnings就不需要再看了。
代码如下(示例):
write_waiver -force -output waiver.list
source waiver.list