Path Group: clk Path Type: max
Des/Clust/Port Wire Load Model Library ------------------------------------------------
mux tsmc18_wl10 typical (线载模型及库)
Point Incr Path
-------------------------------------------------------------------------- clock clk (rise edge) 0.00 0.00 clock network delay (ideal) 0.00 0.00 input external delay 0.50 0.50 f data2[4] (in) 0.01 0.51 f mult_14/b[4] (mux_DW_mult_uns_0) 0.00 0.51 f mult_14/U131/Y (INVX1) 0.54 1.05 r mult_14/U161/Y (NOR2X1) 0.14 1.18 f mult_14/U39/S (CMPR42X1) 0.68 1.87 f mult_14/U12/CO (ADDFX2) 0.32 2.19 f mult_14/U11/CO (ADDFX2) 0.23 2.42 f mult_14/U10/CO (ADDFX2) 0.23 2.65 f mult_14/U9/CO (ADDFX2) 0.23 2.88 f mult_14/U8/CO (ADDFX2) 0.23 3.10 f mult_14/U7/CO (ADDFX2) 0.23 3.33 f mult_14/U6/CO (ADDFX2) 0.23 3.56 f mult_14/U5/CO (ADDFX2) 0.23 3.79 f mult_14/U4/CO (ADDFX2) 0.23 4.02 f mult_14/U3/CO (ADDFX2) 0.23 4.25 f mult_14/U2/CO (ADDFX2) 0.22 4.47 f mult_14/product[15] (mux_DW_mult_uns_0) 0.00 4.47 f dataout_reg_15_/RN (DFFTRXL) 0.00 4.47 f data arrival time 4.47
clock clk (rise edge) 10.00 10.00 clock network delay (ideal) 0.30 10.30 clock uncertainty -0.10 10.20 dataout_reg_15_/CK (DFFTRXL) 0.00 10.20 r library setup time -0.19 10.01 data required time 10.01
-------------------------------------------------------------------------- data required time 10.01 data arrival time -4.47
-------------------------------------------------------------------------- slack (MET) 5.55
我们来看以上报告,dc报告的时候会显示出关键路径,即延时最大的路径,时序分析包括两段,前面一段是信号的延迟时间,即data arrival time 为4.47,下面是计算要求时间,也即相对于时钟,设计所能忍受的最大延时,由于到达寄存器clk端延时,即clock network delay,所以设计增加了0.30的余量,同样由于时钟的不确定度(可能提前也可能延后0.1),我们取最坏情况,就是时钟超前0.1,则时间余量减去0.1,最后一个是门的建立时间要求,是0.19,最后得到数据的要求时间。
Slack是要求时间减去到达时间的差值,slack越大越好。越大说明留给布局布线的时序越宽松。从报告中我们看出,时序余量为5.55,说明时序达到了要求,足够满足我们以后布局布线的时序要求。
当然,我们有专门的时序分析工具,primetime,下面会稍微介绍。
2. 形式验证
1) 怎么保证综合前和综合后的网表逻辑功能是一致的呢,对门级网表进行动态仿真,又太
浪费时间,于是,一款强大的验证工具formality,给了我们很好的帮助。 2) 形式验证数据准备:综合前RTL代码,综合后的网表,综合所用到的库。 3) 验证过程如下:
1. 首先我们打开formality,命令为fm_shell(命令行界面),formality(图形界面)。初学
者一般使用图形界面,使用图形界面的时候,工具会自动产生一个log文件,记录命令,我们可以将这个文件内容做一个fms格式,这样在下次验证的时候可以使用命令界面。 2. 打开formality如下
第一步:首先我们加入原RTL代码,reference->read_design file->verilog->mux.v,选择好以后load file
第二步:然后选择库,没加库之前,FM会自动加载与工艺无关的库,所以我们要自己把自己的目标库加上去,reference->read DB libarary->DB,选择typical.db
第三步:设置top名 reference->set top design 我们选择mux为top名 同样的方法对网表进行设置(第二个菜单栏implementation)
然后转到第四栏,点击run matching
最后转到第五栏,verify,如果网表无错,会显示验证通过。
3 静态时序分析
静态时序分析主要针对大型ASIC设计,
4 自动布局布线
1)数据准备
第一:需要综合后的网表以及时序约束文件mux.sv,mux.sdc
第二:需要自动布局布线的物理库(lef文件,这里用到tsmc18_6lm_cic.lef, tsmc18_6lm_antenna_cic.lef)
为了能够了解lef文档的作用,这里对lef做简单的介绍,lef一般分为两种:
一种是技术物理库,主要包含工艺信息,设计规则信息,金属通孔信息等。下例是对金属一层的定义,TYPE指明METAL1是可布线层,WIDTH定义的是METAL1的默认布线宽度,SPACING用于设定METAL1布线间距。DIRECTION HORIZONTAL指明METAL1是用于水平走线,当然这并不意味着它不能垂直走线,在一些布线资源较少的区域,还是可以选择垂直布线的。具体介绍,可以参考相关技术文档。 LAYER METAL1
TYPE ROUTING ; WIDTH 0.230 ; MAXWIDTH 9.9 ; AREA 0.202 ; SPACING 0.230 ;
SPACING 0.6 RANGE 10.0 100000.0 ; PITCH 0.560 ;
DIRECTION HORIZONTAL ;
相关推荐: