Calibre 3Dstack--每日一个命令day 6 [process和export layout](3-6)

Calibre 3Dstack --每日一个命令day1【die】(3-1)

Calibre 3Dstack --每日一个命令day2【component】(3-2)

Calibre 3Dstack --每日一个命令day3【stack】(3-3)

Calibre 3Dstack --每日一个命令day4【connect】(3-4)

Calibre 3Dstack --每日一个命令day5【config】(3-5)

Calibre 3Dstack --每日一个命令day6【process&export_layout】(3-6)

Calibre 3Dstack --每日一个命令day7【centers】(3-7)

Calibre 3Dstack --每日一个命令day8【connected】(3-8)

Calibre 3Dstack --每日一个命令day9【copy】(3-9)

Calibre 3Dstack --每日一个命令day10【custom_check】(3-10)

Calibre 3Dstack --每日一个命令day11【dangling_ports】(3-11)

Calibre 3Dstack --每日一个命令day12【density】(3-12)

Calibre 3Dstack --每日一个命令day13【enclosure】(3-13)

Calibre 3Dstack --每日一个命令day14【external】(3-14)

Calibre 3Dstack --每日一个命令day15【extra_ports】(3-15)

Calibre 3Dstack --每日一个命令day16【floating_pads】(3-16)

Calibre 3Dstack --每日一个命令day17【floating_texts】(3-17)

Calibre 3Dstack --每日一个命令day18【floating_trace】(3-18)

Calibre 3Dstack --每日一个命令day19【internal】(3-19)

Calibre 3Dstack --每日一个命令day20【locations】(3-20)

Calibre 3Dstack --每日一个命令day21【missing_ports】(3-21)

Calibre 3Dstack --每日一个命令day22【multi_texts】(3-22)

Calibre 3Dstack --每日一个命令day23【multi_trace】(3-23)

Calibre 3Dstack --每日一个命令day24【no_texts】(3-24)

Calibre 3Dstack --每日一个命令day25【no_trace】(3-25)

Calibre 3Dstack --每日一个命令day26【offgrid_centers】(3-25)

Calibre 3Dstack --每日一个命令day27【overlap】(3-27)

Calibre 3Dstack --每日一个命令day28【select_checks】(3-28)

Calibre 3Dstack --每日一个命令day29【unselect_checks】(3-29)

Calibre 3Dstack --每日一个命令day30【3dstack_block】(3-30)

process

为 3D-IC 中使用的裸片、中介层、封装及其他组件定义工艺库层信息。

用法

tcl

复制代码
process -name process_name
{-layer_info '{' arguments '}' } ...
[-wb_connect layer1_name layer2_name [BY layer3_name] ] ...
参数
  • **-name process_name**必选关键字与名称,指定工艺技术的名称。

  • -layer_info '{' arguments '}' 必选参数集,指定工艺中的一个层。可通过多次应用 -layer_info 参数集来指定多个层。注意 ,每个层的参数必须包含在 {} 大括号内。详情参见第 79 页的 -layer_info

  • -wb_connect layer1_name layer2_name [BY layer3_name] 可选参数集,定义工艺层的连接关系。此参数仅在对组装进行 ** 层级化(白盒)** 连接提取时需要。

说明

工艺数据通常由制造 IC 的代工厂提供。使用此命令的优势在于,无需为 3D-IC 中的每个裸片重新定义层信息,而是可以引用 die 命令中已定义的工艺。

若在 die 命令中同时指定了层信息和工艺,当工艺中定义了相同信息时,层信息会覆盖工艺规范 ;若层信息中未定义某些项,则工艺数据会与层信息合并

示例

tcl

复制代码
process -name N10
-layer_info {-type pad -name pad1 -layer 40 -top} \
-layer_info {-type pad -name pad2 -layer 41 -top} \
-layer_info {-type merge -name merge \
-svrf {MERGE (EXTENT DRAWN pad1 pad2)}}

定义工艺后,可在 die 命令中按如下方式应用:

tcl

复制代码
die -die_name INT \
-layout {-path ./int.gds} \
-process N10 \
-anchor {-name mem -placement 0 0 } \
-anchor {-name log -placement 10 10 } \
-interposer \
-import_text_labels texts
相关主题

die


export_layout

为组装的指定部分生成带注释的 GDS 文件和提取数据

用法

tcl

复制代码
export_layout -file output_file [-output_dir directory] [-stack stack_name]
[-die '{'-die_name die_name
[-layer_info '{'-name layer_name
[-pex_map calibrated_layer_name]
[-rc_model]
[-bottom_rc_interface | -top_rc_interface]
'}']...
[-rename_text {"expression"... | {-file file}]
[-second_ground '{'
-name layer_name
{-vertices {x1 y1 x2 y2} | -extent }
-text "ground_name"
[-pex_map layer_name] '}' ]
'}']
[-cci [-ground_name name] [-power_name name]]
[-enable_rc_deck | -enable_rc_map]
[-flat] [-netlist_format {[SPICE] [XSI] [VERILOG] [MGC] [AIF]}]
[-pex_map_file file]
[-property property_number]
[-rename_text "expression"]
[-text [-use_net_text]]
[-use_lvs_names]
参数
  • -file output_file 必选参数集,指定生成的版图文件的输出路径。工具会在 3dstack.dfmdb/pex/<output_file> 中创建一个 DFM 数据库,其中 <output_file> 是你指定的不带扩展名的版图文件名。例如,若指定以下命令:

    tcl

    复制代码
    export_layout -file my_output.agds ...

    工具会在 DFM 数据库中创建一个名为 my_output 的目录,并将 export_layout 命令的所有输出文件保存到该目录中:

    plaintext

    复制代码
    3dstack.dfmdb/pex/my_output/
    my_output.agds
    ...

    若要将文件输出到目录而非 DFM 数据库,请使用 -output_dir 选项。

  • -output_dir directory 可选参数集,指定用于写入 export_layout 命令所有输出文件的目录。若未指定此选项,工具会将 export_layout 命令的所有输出生成到工作目录中的 3dstack.dfmdb/pex/<output_file>

  • **-stack stack_name**可选参数集,指定将裸片堆叠导出为新的版图文件。

  • -die {arguments} 可选参数,指定导出一个或多个存在交互的裸片。-die 选项内的参数必须包含在大括号 {} 中,说明如下:

    • **-die_name die_name**可选参数,指定要导出的裸片名称。

    • -layer_info {arguments} 可选参数集,指定从裸片中导出到版图的层。-layer_info 的参数必须包含在大括号 {} 中,说明如下:

      1. **-name layer_name**可选参数集,指定要在裸片上导出的层。

      2. -pex_map calibrated_layer_name 可选参数集,将校准层名称映射到组装中的物理层。此参数集仅适用于 -format GDS 。导出带注释的 GDS 文件时,Calibre 3DSTACK 工具会使用此信息写入一个 SVRF 文件,该文件命名为 <gds_name>.map.svrf(其中 <gds_name> 是你为带注释的 GDS 指定的名称)。校准层名称和组装层的配对关系会通过 PEX Map 语句写入生成的 SVRF 文件,示例如下:

        tcl

        复制代码
        -layer_info {-name M1 -pex_map PM1_M1}
      3. **-rc_model**可选参数,指定在提取文件中为硅通孔(TSV)生成额外的 PEX 提取语句,格式如下:

        tcl

        复制代码
        PEX NETLIST 3DIC <placement-layer-name> FILE <PATH> SUBNODE <sub>
        PEX 3DIC COUPLING <placement-layer-name> ANALOG MAXDISTANCE <max_distance>
        PEX 3DIC COUPLING <placement-layer-name> DIGITAL <frequency> MAXDISTANCE <max_distance>

        其中 <PATH><sub><max_distance><frequency> 字段必须在生成文件后手动补全,定义如下:

        • <PATH>:指定网表的路径。

        • <sub>:指定 TSV 子电路中的 "sub" 节点。

        • <max_distance>:指定计算耦合时,超出 TSV 范围的最大距离(单位:微米)。超出最大距离的部分不纳入耦合计算。

        • <frequency>:指定频率(单位:赫兹)。

      4. -bottom_rc_interface 可选参数,指示指定的层代表裸片底部 的接口层。此参数仅可应用于 export_layer -die_info 参数集中的单个层 。若应用此参数,必须为裸片中的其他层之一指定 -top_rc_interface 参数。此选项用于为裸片之间或裸片到中介层的虚拟裸片识别接口层,以生成提取规则。

      5. -top_rc_interface 可选参数,指示指定的层代表裸片顶部 的接口层。此参数仅可应用于 export_layer -die_info 参数集中的单个层 。若应用此参数,必须为裸片中的其他层之一指定 -bottom_rc_interface 参数。此选项用于为裸片之间或裸片到中介层的虚拟裸片识别接口层,以生成提取规则。

    • -rename_text "expression ..." 可选参数集,重命名裸片版图中的文本。表达式为 GNU 正则表达式。支持多个表达式,但整个表达式集必须包含在引号或大括号中,示例如下:

      tcl

      复制代码
      -rename_text "/</\[/ />/\]/"
    • -second_ground '{'arguments '}' 可选参数集,允许在生成的带注释 GDS 中创建额外的接地层、在该层上创建矩形形状并附加文本标签。工具还会将信息写入 .map.svrf 文件。使用此选项必须指定以下参数:

      1. -name layer_name:指定生成第二个接地上形状的层名称。

      2. -vertices x1 y1 x2 y2 :指定接地引脚形状的坐标集。此选项与 -extent 互斥。

      3. -extent :指定将裸片的范围用作第二个接地的形状。此选项与 -vertices 互斥。

      4. -text "ground_name":指定第二个接地的文本标签。

      5. -pex_map layer_name:指定第二个接地的校准层名称。

  • -cci [-ground_name] [-power_name] 可选参数,生成一组可用于第三方提取流程的标准文件。此选项不能与 -text-flat-enable_rc_deck-use_lvs_names-netlist_format 选项同时指定。-cci 参数包含以下选项:

    • -ground_name name:指定用于生成的层网规范(LNS)文件中接地网的接地名称。

    • -power_name name :指定用于生成的 LNS 文件中电源网的电源名称。指定 -cci 参数集时,工具会在工作目录中创建一个层网规范(LNS)文件。该 LNS 文件是一个 SVRF 文件,包含以下部分:

    • 层定义

    • 连接语句

    • 电源和接地名称语句(若使用 -power_name-ground_name 选项指定)工具会生成一个扁平的 SPICE 网表,该网表包含一个顶层子电路,无任何实例,且将排序后的网号作为引脚。若将环境变量 CALIBRE_3DSTACK_ENABLE_HIER_CCI 设置为非空值,以下文件会包含放置实例信息:

    • lnn(版图网表名称文件)

    • ixf(实例交叉引用文件)

    • nxf(网交叉引用文件)

    • lnxf(版图网交叉引用文件)

  • -enable_rc_deck 可选参数,指定为两个指定裸片之间的接口层生成提取规则文件。必须通过 dieprocess 命令的 -layer_info 选项中的 -icrx-mipt 选项,为每个裸片指定提取文件。指定此选项时,工具会执行以下操作:

    1. 检索每个指定裸片中存在交互的层,层的顺序从指定的堆叠中读取。包含交互层的裸片必须有 MIPT 或 ICRX 文件,否则工具会发出错误。

    2. export_layout 输出目录中,为指定裸片之间的交互层生成映射文件和 MIPT 文件。

    3. 使用映射文件和 MIPT 文件为接口层生成最终的 RC 规则文件。

    4. export_layout 输出目录中生成一个名为 xcalibrate.log 的日志文件。可为每个存在交互的裸片对,使用此选项指定 export_layout 命令。此选项不能与 -enable_rc_map 同时指定。

  • -enable_rc_map 可选参数,指定 生成 xcalibrate_map 文件。此参数仅适用于 -enable_rc_deck,且不能与 -layout_only 同时指定。若未指定 MIPT 文件,工具会在映射文件中创建占位符,格式如下:

    plaintext

    复制代码
    <DIE_NAME>_mipt

    此选项不能与 -enable_rc_deck 同时指定。

  • **-flat**可选参数,指定导出扁平的版图。若未指定此选项,输出为层级化。

  • **-netlist_format {[SPICE] [XSI] [VERILOG] [MGC] [AIF]}**可选参数集,指定要输出的网表格式。可指定单个格式,或包含多个格式的空格分隔列表。

  • -pex_map_file file 可选参数集,指定将 LVS 层名称映射到 RC 层名称的映射文件。工具会使用 RC 名称和定义的映射,为 LVS 规则文件生成 PEX MAP 语句。从文件中读取的映射信息优先于 -pex_map 参数集中指定的信息。该文件为两列、空格分隔的文本文件,格式如下:

    tcl

    复制代码
    # column 1 column 2
    RC_LAYER_NAME LVS_LAYER_NAME

    示例:

    tcl

    复制代码
    #RC layer names LVS layer names
    BOT_TOPMETAL_MINUS1 AP
    TOP_TOPMETAL P_die1
    BOT_TOPMETAL P_die2
    BOT_TOPVIA C

    若某行包含的空格分隔字段少于两个,或行以注释字符(#)开头,工具会跳过该行。

  • -property property_number 可选参数,指定在带注释的 GDS 文件中写入连接信息的属性编号。默认属性编号为 1。该编号参数必须是 0 到 65535 之间的整数。此选项仅适用于 -format GDS,且与 -text 互斥。

  • -rename_text {"expression"... | {-file file} 可选参数集,重命名导出版图中的文本。表达式为 GNU 正则表达式。支持多个表达式,但整个表达式集必须包含在引号或大括号中,示例如下:

    tcl

    复制代码
    -rename_text "/</\[/ />/\]/"

    除了内联表达式,也可指定包含表达式列表的文件路径。文件中每行一个表达式,示例如下:

    plaintext

    复制代码
    /A/B/
    /A.*B/R/
    /^VDD.*/VCC/
    /A/B/g
  • -text 可选参数,指定在生成的版图文件中包含文本。若指定此参数,-flat 参数也会自动应用。

  • -use_net_text 可选参数,指定对所有层的引脚名称使用网文本。指定此参数后,包含网名称标签的文本层会被视为引脚文本层,并在生成的提取规则文件的 Port Layer TextAttach 语句中使用。若未指定此选项,工具会使用 -layer_info 选项中定义的文本和引脚层。

  • -use_lvs_names 可选参数,指定在生成的 LVS 规则文件中使用 -layer_info 选项中的原始层名称。若未指定此参数,工具会使用生成的 Calibre 3DSTACK 组装中的层名称。此参数不能与 -cci 同时指定。

说明

export_layout 命令还会生成一个模板 Calibre xACT 规则文件,该文件包含所有可能的 SVRF 语句,以及需要修改的语句的占位符。生成的模板文件会写入指定的带注释 GDS 目录,扩展名为 .template.svrf。包含在尖括号 < > 中的语句是必须补全的占位符,示例如下:

tcl

复制代码
LAYOUT PATH "anno.gds"
PEX NETLIST <SPEF-file-name> SPEF LAYOUTNAMES CLAYER CLOCATION //MAPNAMES
//NOINSTANCEX RLAYER CLAYER
PEX NETLIST CAPACITANCE UNIT fF
PEX NETLIST ESCAPE CHARACTERS OFF
MASK SVDB DIRECTORY "svdb" XACT
LAYOUT SYSTEM GDS //LEFDEF
LAYOUT CASE YES
SOURCE CASE YES
PEX EXTRACT TEMPERATURE 27
LAYOUT USE DATABASE PRECISION YES
LAYOUT INPUT EXCEPTION SEVERITY PRECISION_RULE_FILE 0
LAYOUT PRECISION 2000
PRECISION 2000
PEX EXTRACT EXCLUDE LAYOUTNAMES RECURSIVE "?VSS?" "?VDD?"
UNIT CAPACITANCE fF
//ignore self-capacitance of the layers for which the coupling capacitance
//is desired
PEX IGNORE CAPACITANCE ALL SUBSTRATE assembly_tier1_info1_PM0
assembly_tier1_info1_PM0
PEX IGNORE CAPACITANCE ALL SUBSTRATE assembly_tier2_FCCC_N10_top1_AP
assembly_tier2_FCCC_N10_top1_AP
INCLUDE ./path_to_lvs_deck
INCLUDE <path_to_C_rules>INCLUDE <path_to_R_rules>
INCLUDE <path_to_xact_rules>
示例

将组装堆叠和文件导出到目录(而非 DFM 数据库):

tcl

复制代码
export_layout -file stack.agds -output_dir ./extraction_output \
-stack assembly

导出控制器裸片与中介层之间的版图交互:

tcl

复制代码
export_layout -file cont_to_interposer.gds \
-die {-die_name controller -layer_info {-name cont_c4}} \
-die {-die_name interposer -layer_info {-name interposer_pads}} -text
相关推荐
冴羽1 小时前
CSS 新特性!瀑布流布局的终极解决方案
前端·javascript·css
小张程序人生1 小时前
ShardingJDBC读写分离详解与实战
数据库
木风小助理1 小时前
三大删除命令:MySQL 核心用法解析
数据库·oracle
tc&1 小时前
redis_cmd 内置防注入功能的原理与验证
数据库·redis·bootstrap
sww_10261 小时前
Spring-AI和LangChain4j区别
java·人工智能·spring
满天星辰1 小时前
Vue 响应式原理深度解析
前端·vue.js
泡泡以安1 小时前
【爬虫教程】第7章:现代浏览器渲染引擎原理(Chromium/V8)
java·开发语言·爬虫
麦聪聊数据1 小时前
MySQL 性能调优:从EXPLAIN到JSON索引优化
数据库·sql·mysql·安全·json
月明长歌1 小时前
Java进程与线程的区别以及线程状态总结
java·开发语言
怪可爱的地球人2 小时前
em,rem,px,rpx单位换算,你弄懂了吗?
前端