记忆斗不过时间 随手记~~

[ZZ]Tcl与Design Compiler (三)——DC综合的流程

上一篇 / 下一篇  2018-01-10 20:58:39

From:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 V-H cy A3Wu
http://www.cnblogs.com/IClearner/ 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀"k1Pn/S r9b;e
2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀v['r'yj;B N

1、基本流程概述

(nGI$qDz0

首先给三个图,一个图是高层次设计的流程图

%H[5zjL0

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀"o*}1w}M&h*P1q A"\

2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀3?9jh1v;Q

 

Y\ c;k*FP(z_0

下面是我对这张图的理解:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 hmw;]t

  ① 设计之前,准备好库、HDL代码的思想、约束生成;然后根据设计思想用 RTL 源码详细地、完整地为设计建立模型、定义设计中寄存器结构和数目、定义设计中的组合电路功能、定义设计中寄存器时钟等等的设计规格和实现。

`-b4x6}MFI/H0

  ② 完成 RTL 源码设计之后,应让设计开发与功能仿真并行进行:

-d1mf:s f]0

     ·在设计开发阶段,我们使用 DC 来实现特定的设计目标(设计规则和优化约束),以及执行默认选项的初步综合. 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀#K[/IgMx

    ·如果设计开发结果未能在 10%的偏差范围内满足时序目标,则需要修正 HDL 代码,然后重复设计开发和功能验证的过程.

}lt;]]L[2_ l0

    ·在功能仿真中,通过特定的工具来确定设计是否能按如所需的功能工作.   2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀Vs N(@/Owi

    ·如果设计未能满足功能要求,  我们必须修改设计代码以及重复设计开发和功能仿真.   继续设计开发和功能仿真直至设计功能正确及满足小于 10%偏差的时序目标.

aa[h[0

  ③ 使用 DC 完成设计的综合并满足设计目标.这个过程包括三个步骤,即综合=转化+逻辑优化+映射,首先将 RTL 源代码转化为通用的布尔等式,然后设计的约束对电路进行逻辑综合和优化,使电路能满足设计的目标或者约束,最后使用目标工艺库的逻辑单元映射成门2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀}G-hs;V7U

级网表,在将设计综合成门级网表之后,要验证此时的设计是否满足设计目标.如果不能满足设计目标,此时需要产生及分析报告确定问题及解决问题

1viY Tr&SS[ |Z0

  ④当设计满足功能、时序以及其他的设计目标的时候,需要执行物理层设计最后分析物理层设计的性能,也就是使用DC的拓扑模式,加入floorplan的物理信息后进行综合分析设计的性能。如果结果未能满足设计目标,应返回第三步.如果满足设计目标,则本部分设计周期完成.

nB8eH5p+w0

  一个图是DC在设计流程中的位置2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀~~1~b2{JAM

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀&Q0Pc1i)~Z$DI

  这个图将上面的流程图细化,着重与DC的部分,描述了使用DC进行逻辑综合时要做的事,同时,也是对前面的流程图解说的图形概述。在综合的时候,首先DC的HDL compiler把HDL代码转化成DC自带的GTECH格式,然后DC的library compiler 根据标准设计约束(SDC)文件、IP-DW库、工艺库、图形库、(使用拓扑模式时,还要加入ICC生成的DEF模式,加载物理布局信息)进行时序优化、数据通路优化、功耗优化(DC的power compiler进行)、测试的综合优化(DC的DFT compiler),最后得到优化后的网表。

VK d}6xyR&F$u0

最后一个图是,使用DC进行基本的逻辑综合的流程图与相应的命令2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀ea oE7LUj*h

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀o'}'cInF9z'Q'pZY

2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀'OCMT-y&Z#Gs{g

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀"S OW(l1ssX%MGh5Ko

这个图给出了使用DC进行逻辑综合时的基本步骤,我们根据这个图运行DC,下面是这个图的具体解说:

W5?dZ&Hzf&to0

  ①准备设计文件,DC 的设计输入文件一般为 HDL 文件。2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀w.i|:n~'M

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀&YJ![Nn9d8KT

  ②指定库文件,需要指定的库文件包括:

E0w6h(MTjr0

链接库(link library) 、目标库(target library) 、符号库(symbol library)、综合库(synthetic library)

fs&M hOP p0

  下面是库的解释,具体的解释在后面有说,这里先进行简单地概述一下:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀j"Z$M:bh4V+yW6d

Link library & target library

V @Onq5pI5e.M0

  Link  library 和 target  library 统称为 technology  library(即工艺库,习惯称之为综合库),technology  library  由半导体制造商提供,包含相关 cell 的信息及设计约束标准,其中:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀,Z"T4_)\"M7xo0w

    Target library:    在门级优化及映射的时候提供生成网表的 cell,即DC 用于创建实际电路的库。2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀9n,N6w/^(_a*`/c lY:\

    Link library:      提供设计网表中的 cell,可以跟target_library使用同一个库,但是 DC 不用 link library中的 cell 来综合设计。2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀%g@&XBj-e q

  当 DC 读入设计时,它自动读入由 link library 变量指定的库。当连接设计时,DC 先搜寻其内存中已经有的库,然后在搜寻由 link  library 指定的库。

`%M/HqF,EE0

  注:当读入的文件是门级网表时,需要把 link library 指向生成该门级网表的库文件,否则 DC 因不知道网表中门单元电路的功能而报错。 关于工艺库里面的具体内容,后面会专门进行说明。

Q!|`y h ~&N8i*O[9I0

  Symbol library 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀2L]?E+}!h

  Symbol library 提供 Design Vision GUI 中设计实现的图形符号,如果你使用脚本模式而不使用 GUI,此库可不指定 Symbol library2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀${D'r0T f @i

  Synthetic library2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀E`7T{$\s

   即为 Designware library ,名字上翻译是综合库,但却常称之为IP库,而不是直译。特殊的 Designware library 是需要授权的(比如使用多级流水线的乘法器),默认的标准 Designware 由 DC 软件商提供,无需指定。

DrZ3xJ0

Create_mw_lib :主要使用DC的物理综合的时候,需要生成物理库2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀kW@n8\$fR

  ③读入设计2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀]n!n"O!OG9I

设计的读入过程是将设计文件载入内存,并将其转换为 DC 的中间格式,即GTECH 格式,GTECH 格式由“soft macros”  如  adders, comparators 等组成,这些组件来自 synopsys  的 synthetic lib,每种组件具有多种结构。2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀w*]O(}#N3O

读入设计有两种实现方法实现方法:read  和  analyze & elaborate(实际上2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀,dqL-z ZG

read 是 analyze  与  elaborate 的打包操作  ),下面介绍二者在使用中的区2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀q+F*C9\#J5k3ih7F^

别:

{f{ \&Zy0\k0

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀_ C7ss+v@

2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀p2y^F4LTZ

 

H0r8Yh7rc*O/w0

  从中可以看到,analyze & elaborate  可以自由指定设计库,并生成 GTECH中间文件前生成.syn 文件存储于 work 目录下,便于下次 elaborate 节省时间,我们一般选择  analyze & elaborate 的方法读入设计。

;nis{R Q1\ zck0

  ④定义设计环境: 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀xEmck qZ"m

定义对象包括工艺参数(温度、电压等),I/O 端口属性(负载、驱动、扇出),2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀$Py:c D6R6EJ L

统计 wire-load 模型,设计环境将影响设计综合及优化结果。

VF)?k#~/lwl^1`6p0

  ⑤设置设计约束: 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀/WX ||E.g3O%Z-L?

设计约束包括设计规则约束和优化约束,设计规则约束(design  rule

*o``!rho;F;v.SF0

constraint)由工艺库决定,在设计编译过程中必须满足,用于使电路能按功能要求正常工作。设计优化约束定义了 DC 要达到的时序和面积优化目标,该约束由用户指定,DC 在不违反设计规则约束的前提下,遵循此约束综合设计。

Bp)S+ZKm!? z"A0

  ⑥选择编译策略: 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀(L:?YO3i

对于层次化设计,DC 中有两种编译策略供选择,分别为 top down 和 bottom 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀'T5}wTX

up。在 top down 策略中,顶层设计和子设计在一起编译,所有的环境和约束设置针对顶层设计,虽然此种策略自动考虑到相关的内部设计,但是此种策略不适合与大型设计,因为 top down 编译策略中,所以设计必须同时驻内存,硬件资源耗费大。在 bottom up 策略中,子设计单独约束,当子设计成功编译后,被设置为 dont_touch 属性,防止在之后的编译过程中被修改,所有同层子设计编译完成后,再编译之上的父设计,直至顶层设计编译完成。Bottom  up 策略允许大规模设计,因为该策略不需要所有设计同时驻入内存。 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀%a4V(s`l\W*~s

  ⑦编译: 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀Ee{6EL2uq&r zj

  用 Compile 命令执行综合与优化过程,还可以利用一些选项指导编译和优化过程。2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀3~Y,m&v.zt8Ac8P

  ⑧分析及解决设计中存在的问题 

.i8ooHd0

DC  可以产生一些报告以反应设计的综合和优化结果,如:时序、面积、约束等报告,这些报告有助于分析和解决设计中存在的问题以改善综合结果,我们还可以利用 check_design 命令检验综合的设计的一致性。2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀OS'hZ#T

  ⑨存储设计数据 

Nc5ZXa3{"{0

DC 不会自动存储综合后的设计结果,因而需要在离开 DC 时手动存储设计数据。比如存储网表、延时信息等数据文件。

:qs;j6?;v,B&M0

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀]|+V!HFr6]

2、实战

M%F xXv0

在这里,我们将实战一下,做一下实验,让大家体验一下流程:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀#EJj{,vW0w3q

 

$\k`h7l,[1_#j0

·首先准备好文件:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀:t"ahs yxW\

 

MeL$?;tKL8Nk0 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀w1iQ%A B;BW-@

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 M^8B)F3B(E

这个.synopsys_dc.setup文件(包含了com、dc_setup)、TOP.con文件是需要我们书写的,这里以及写好了,我们来看一下就好了。2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀,WB_;^N

.synopsys_dc.setup的内容:

yk~k*}n,`{0

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀;`l FD6BL,`/v

然后我们移步到common_setup.tcl和dc_setup.tcl的内容:

\ z;A(K{Lrv0

/RoHM ]b,@0 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀,ll?-jAkaYg

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀L#n)R0^X/N'Q/\k

common_setup.tcl文件定义了库的名字和名称,上面是逻辑库,下面物理库:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀{*Y}(i4o?^.Y

5行:定义库的搜索路径,当找不到库时,从这个路径中寻找2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀8Z9W GpK;gh

8行:定义target library使用的库(注意,只是定义一个变量)

u2v+R}_N0

10行:定义图形库变量2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀/B y(ZY5?Ut{Z

15行:定义顶层设计库的变量名称

9A!S3FT;[0

17行:定义milkyway(参考)库(的位置)

0cVOA{!]{$f.X8TD4t:C0

19行:定义工艺库(的位置)2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀'M]2QAy]

21行:定义寄生参数库(的位置)2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀4Iv#?:ch7d

23行:定义工艺库和寄生参数库的映射关系库(的位置)

:I W0c |?0

dc_setup.tcl的内容:

W5o*^h(^L!N0

2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀,w_ `| \ d

`)O S L6I OLL8~8Pm0 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀)C3Z N3g7LP

dc_setup.tcl文件就是指定库了,而不是单单地定义了,ser_app_var是定义DC内部变量,4~7这是指定搜索路径个各种库的路径和名称2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀'R7o7[`j0OtL'o

下面的物理库设置中:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀t/l*B ^+yP-}!T

13行:指定milkyway(参考)库的名称

s|dez0

14行:指定当前设计的库的名称

-H`r)Lo;F)j0

16行:创建milkyway库,格式如图上面,需要工艺库、参考、当前设计库

w,_*aT9l`Y\h0

19行:打开当前的设计库

3CEt h7x/wN0

20行:加载寄生参数(库)2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀2i;W+xl/D*X/X'K

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 Wru znV

·启动DC

-ly)l @hd&K m s0

  这里是流程演示,因此我们使用图形化的方式启动:

Xvnd"b:@)Y%v`9hS)p:Q0

   design_vision -topo

/Z-l5Q]4wsJ*F0

·读入设计前的检查2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀}s.AT5J!`K-T;~B j

  -->检查库是否正确设置:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀O*F3z:x k(q6]n6o

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀Fd b N ~P fG-A

2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 hD.n\g*m)j^J

 

]wT]3D!S0

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀'uv+F?(L3cB(j

  -->检查逻辑库和物理课的一致性:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀6_0K!IR,u V

  Check_library2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀GR/PCE\`)e

  检查可能不会通过,结果不影响综合的话,可以忽略

s.e$cJW$NIx^p0

 

?3sF+Cr0

  -->检查寄生参数文件和工艺库文件的一致性:(物理综合的时候需要检查)

!mecl\W0

  check_tlu_plus_files2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 D| \:j@gN

  通过的话会有三个passed2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀:BLJ]z/fB

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀x'_ |4w$F F3h

·读入设计和查看设计

3j$C!G e#uk2KW s0

  -->读入设计:

s;r.Qv{Vq0

  read_file   -format   verilog   ./rtl/TOP.v2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀FH8g(hQ G2A

  用法如下所示:

-v?qh(SzC*^(H0

 

Fzl8{9c4v? cd$a0 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀]JD#n j,t

 

Z%A.m D[prl3F0

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀"DdB0jE1C,c2I m3c

  -->设置当前设计2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀S"rD;T?V%s"X

  要综合哪个模块,就把哪个模块设置为当前设计;

~:c0~;vET|:p4J0

  查看当前设计:current_design

X!R~GXh}6G$W0

   2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀%}:?5Ar Y1R]&k ]WA

2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀/P3hD\3?!i C'e

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀(Kp'zKE2I n%cc

  设置当前设计:current_design TOP2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀p+C3u'i5jn*A

 

EZ*Vx;iP2?i0

  -->link设计

p,o#J#R@4O0

  Link设计,查看当前要综合的设计是否缺少子模块:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀CqDz8yBn A1J

  link2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀Y*s_,e@

  返回值是1,说明子模块完整2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀a5i#e"by/B]

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀S8J:|Y'm {'A

  -->以ddc的格式保存未映射的设计(注意需要先创建unmapped文件夹):2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀T&HIzF H

  Write  -hierarchy  -f  ddc  -out  unmapped/TOP.ddc

a4]"M3]&] NO0

  我们可以看看write的用法:

*zHVZXN"mf0

   

D*K T1?&g,{0

l'H-dP#v _$RM0 

'KqS%W RRJ0

  -->查看内存中的设计和库:2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 m5z9b7qw$r5e {q

%T/I"z wt ]c7bk0 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀V@1CGG6a

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀c G.{j4dM\"s$_(Q(hX0G

  带*的设计为当前设计,要综合哪个模块就current_design哪个设计2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀1l_$j C_7T3f8| r d&S2w%V`

  然后list_libs是查看库和库的路径,这个命令也可以检查是否读入了对应的库2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀1IJ2D,i d:S k V

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀9hhAH#I G!Y[4l I1D b

·约束设计(也就是上面流程图中的各种set)

t"v%Am!SW,?0

我们通过执行约束文件来约束设计:

"\['m9_,H%wx0

source TOP.con

w ce"sc8|#n3`]|(|0

/],X%^F[n"^[N!\0 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀uG w \@N%?

 

D r D+[j {l0

其他选项我们在后面会叙述,我们这里只说一下5行的reset_design,这个就是剔除之前所有的约束,防止影响下面的约束。

EI%V.[P;s!m$pa0

 2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀?$P;|y~dAf*@

·进行综合2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀*ZjN8](}l O9q

Compiler_ultra(这是在拓扑模式下进行综合的命令)2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀8C~e$g7F.W?m

 

0W:eEK E`'W,~^0

·综合后的检查(检查不通过的需要优化,这里只作为一般流程,没有进行优化)2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 [kQ+B,j;v(A&_#p

report_constraint -all  (查看是否违规)2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀$D'|2W[d*Y)oQp

report_timing (查看时序报告)

1`3|,ddIXsod0

report_are (查看面积情况)2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀 KbQW}^8U

 

'n%c6[5`Q#C0

·保存综合后的设计(注意先创建mapped这个文件夹)

d7bU#l2aBeMn0

write -hierarchy -format ddc -output ./mapped/TOP.ddc2018注册送彩金白菜网_2018注册送白菜网_【最火热】2018年博彩娱乐真人秀1c*gjG_,k

 

'k2V2N~'i2S4a0

总结,大概的流程为:

R'F;lz]0

准备好文件 ——>启动DC ——>读入设计前的检查——>读入设计和查看设计——>约束设计——>综合——>综合后检查(与优化)——>保存优化后的设计

6B)btG/G(jM6w0

TAG: Compiler compiler design Design DESIGN

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar
博聚网