在这里插入图片描述
DC改变了RTL代码的结构,但是逻辑没有改变。比如很调整组合逻辑的位置,但是最终的功能是一样的。文件的后缀名为.svf,该文件用于后面的形式验证,即formality

dont touch:不会穿过logic,可以用于cells, nets, references, 和 designs。你不希望DC优化的地方,都可以用它。

main.tcl:
1.目录建立
设置报告目录 …/rpt/$pro
设置输出目录…/outputs/$pro
设置工作目录./elab
设置log日志目录…/log

如果不存在,创建上面四个文件夹

2.setup设置
设置svf文件到输出目录下

执行dc_setup.tcl
功能:设置目标库和链接库,并且某些ccs模型单元不使用

执行read_file_rtl.tcl
功能:设置rtl目录,设置设计文件名,使用analyze和elaborate读入verilog设计,使用link使设置生效

3.线负载模型
设置PVT operation条件,ffg0p88v125c指的是ffg的工艺参数,ff是fast N,fast P,ffg指的是去除局部工艺参数影响的spice模型。

设置线负载mode为top
时序分析基本概念之线负载模型的选择方式

设置线负载模型为0线负载

读入sdc文件,目录是

../syn_ISCAS85/syn.sdc

4.设置约束
执行syn.sdc文件。

设置了时钟周期
设置输入转换时间
设置最大转换时间
设置输入延时,输出延时
设置输入最大负载
设置输出最大负载
设置面积最小约束

5.第一次编译
防止输入到输出的直通
设置输出网表没有tri三态
输出文件夹定义输出verilog(netlist)
输出文件夹定义ddc
输出文件夹定义sdc

报告constraints violation,使用>将文件保存到report文件夹
set_svf -off:查看寄存器是否被移动,查看优化细节

6.第二次编译
compile_ultra:比compile更加严格,第二次编译。
输出时序报告
输出最小时序报告
set_svf -off:查看寄存器是否被移动,查看优化细节
check_design:检查设计是否有悬空管脚或者或者短接
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

dc_setup
在这里插入图片描述
在这里插入图片描述

read_file_rtl.tcl
在这里插入图片描述
syn.sdc文件
在这里插入图片描述
generate_spice_cir.pl
…/…/scripts
spice模型,留作更改vth。

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐