热度 16| |||
PR的开始从initial design开始,initial 顾名思义就是初始化,开始的意思,这个阶段需要准备至少下面几个数据:
1.电源地的名字,例如你design 里面有两个电源VDD1 VDD2 ,一个地VSS. (这个在initial stage 也不一定要全的,但是最好有一个电源,一个地;后面我们有办法修改电源地的名字)
2.你设计的名字,也就是你写代码的top的名字,例如A53_top
3.lef 文件.
lef 文件可以基本分成两类:tech lef 和 cell lef.
tech lef就是定义包含一些工艺信息,例如DRC rule, net 的default 宽度,间距,最大最小面积,密度等.
cell lef 里面主要定义了一些cell 的信息,例如 一个 LVT 的 驱动能力为2的触发器,这cell lef 一般会定义 它属于 CORE (Innovus 里面std cell 属性的cell都属于CORE); 这个cell的site 名字,也就是这种cell 在place 的时候,需要放在什么名字的site 上面;cell 的大小,通过 长 x 宽定义; 还有 这个cell的pin, pin在第几层上,相对于 cell 原点的坐标;还有cell 的OBS 也就是cell 的 blockage.
4.综合后的网标文件 – netlist
我们写好的RTL 通过DC 或者DCG 综合后的网标文件
5.时序约束文件 -- sdc 文件
里面定义了densign 的时序约束,例如clock, clock uncertainty , max_tansition, 等
6.时序库文件 – lib 文件
PR工具在优化时序的时候,所有的cell delay, cell cap 等都是通过lib 文件查找计算得到的,后面我们跑PT用的db 文件也可以通过lib 转化而来。
7.qrc tech file
PR工具计算net delay 的时候,就需要这个文件,这个文件里面定义了一些每层layer的时序信息,用来计算net delay.
8.don’t use list
有一些cell 驱动能力太小,或者特性不好,我们需要在design禁用它们
9.don’t touch list
网表netlist里面有一些cell 功能上分析是没用的,所以PR工具会优化掉,但是其中有一些cell书designer 专门加入的dummy cell, 有特殊用途,需要保留下来,所以我们通过don’t touch 掉,让PR工具不能优化删除掉这些cells.