zl程序教程

您现在的位置是:首页 >  Java

当前栏目

innovus | 数据准备和读入设计

2023-02-18 16:32:43 时间

数据准备

在创建design前,需要准备所需的文件:

  • verilog网表
  • LEF工艺物理库文件
  • SCAN文件(存在DFT时)
  • Floorplan的管脚排列文件
  • 时序分析的MMMC View文件
  • 时序库lib
  • 约束文件sdc
  • RC等文件。

其中,

LEF(Library Exchange Format):物理库信息,分为technology LEF 和macro LEF。

technology LEF:提供工艺信息

  • 设计初始化信息(row,track,manufacture grid,via rule等)
  • DRC rule (spacing,width,antenna天线效应)
  • 寄生参数提取(wire,delay)(用于旧工艺)

technology LEF文件

macro LEF:包括standard cell,IO,hard macro等信息。

DEF(Design Exchange Format):用于cadence innovus工具和 synopsys icc2工具的交替设计。包括ROW,TRACKS,VIAS,PROPERTYDEFINITIONS等。

//命令操作
set init_pwr_net {VDD}    
set init_gnd_net {VSS}    
##set init_cpf_file {design.cpf}   

实操练习

innovus启动

innovus -no_gui:不打开图形界面,默认是会打开图形界面,如果后续需要打开图形界面,

输入下面命令:enc::gui_on

或者 innovus -files xxx.tcl 直接运行tcl脚本。

这里我们采用界面操作,来熟悉innovus的使用;

在终端下输入innovus

innouvs界面中选择File → Import Design

分别导入准备文件:

  • Verilog网表,指定设计Top Cell的模块名
  • LEF工艺、物理库文件

如果有多个LEF文件,第一个必须是Tech LEF文件;

  • Floorplan的管脚排列文件
  • Power/Ground名字、低功耗CPF文件:

在Power栏中指定全局Power和Ground Net,如果是Multi Power Domain的Design或者含有Power Gating的Design,还需要输入CPF(Common Power Format)文件。

  • 时序分析MMMC View定义文件

如图所示:

导入文件

在Analysis Configuration中点击Create Analysis Configuration,在MMMC Browser窗口中可以显示出所添加的MMMC信息。

点击ok,效果如下:

如果我们希望下次直接打开设计,而不是像上面一样一步步添加,可以利用saveDesign,将设计保存成.enc.dat格式;

saveDesign DBS/DTMF_save.enc

下次打开innovus时,直接load DTMF/DBS/DTMF_save.enc.dat/DTMF_CHIP.globals就可以打开design

.globals

//命令操作打开design

source DBS/DTMF_save.enc.dat/DTMF_CHIP.globals
init_design

或者
restoreDesign DBS/DTMF_save.enc.dat DTMF_CHIP

或者
source DBS/DTMF_save.enc

数据库格式:.enc.dat

.enc.dat文件内容:

.enc.dat文件内容

  • .globas 全局参数设置
  • .mode 特殊参数设置
  • viewDefinition.tcl mmmc文件
  • .v.gz 网表
  • lib 设计库文件
  • mmmc 时序库文件
  • .fp.gz,.fp.spr.gz,.place.gz,.route.gz 设计信息

此外还有

OpenAccess:与virtuoso平台共享数据库。

脚本操作

上述操作可以通过脚本来操作:

innovus -files run.tcl

set init_verilog  {design/DTMF_CHIP.v}
set init_top_cell {DTMF_CHIP} 
set init_lef_file {libs/lef/all.lef}
set init_io_file  {libs/iofile/dtmf.io}
set init_pwr_net  {VDD}
set init_gnd_net  {VSS}
#set init_cpf_file {design.cpf}
set init_mmmc_file  {design/viewDefinition.tcl}

init_design
defOut DTMF_CHIP.def
win

其他命令

defOut test.def 输出def defIn test.def 输入def

freeDesign清除设计 getCmdLogFileName 查看所执行命令文件(innovus.cmd)

声明:未经授权,禁止转载