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

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)

本文摘要介绍了3DSTACK规则检查命令的功能和使用方法。主要命令包括centers(检查焊盘对齐)、connected(检查连接关系)、custom_check(自定义检查)等20余种检查类型。重点解析了centers命令的参数配置,包括检查方向、约束值、对齐方式等选项,并提供了两个应用示例:检查焊盘间距是否符合80微米标准,以及检查芯片与中介层焊盘中心偏差是否在0.1微米范围内。这些检查命令用于验证3D堆叠设计中的物理布局规则,确保芯片、中介层等组件的正确互连和间距要求。

Rule Check Commands

规则检查命令会在验证运行期间对设计执行特定检查。规则检查的指定方式如下:

  • 3DSTACK+ 文件中的检查作用于放置层类型 。层类型是在 die -layer_infocomponent -layer_infoprocess -layer_info 命令中定义的自定义字符串。

  • 可在规则检查中指定堆叠名称,以将规则应用于特定堆叠。

  • -direction 参数允许你指定执行检查的垂直方向

  • connected 检查提供了指定白盒检查和黑盒检查的选项,详情参见 connected命令

  • 可通过 custom_check 命令,使用 TVF 语句定义自定义检查

表 3-6 规则检查命令

命令 描述
centers 检查焊盘未对齐问题。
connected 存在源网表时,检查连通图形之间的连接关系 ;无生源网表时,检查连通图形上的文本字符串是否匹配
copy 导出指定层的内容
custom_check 针对 3DSTACK+ 语法,使用 TVF 格式定义自定义检查。
dangling_ports 检查在指定放置实例或层类型上无物理连接的已放置端口
density 检查指定放置实例的密度约束
enclosure 检查第一个放置实例边缘的朝外侧面 与第二个放置实例边缘的朝内侧面 之间的间距是否足够
external 检查第一个放置实例边缘的朝外侧面 与第二个放置实例边缘的朝外侧面 之间的间距是否足够
extra_ports 检查指定芯片、放置实例、裸片或层上,源中缺失的端口(或版图中多余的端口)。
floating_pads 检查指定层类型或堆叠中,未与堆叠内其他裸片或中介层的任何焊盘重叠的焊盘
floating_texts 检查指定芯片、放置实例、裸片或层上,未附着到任何几何图形的文本标签
floating_trace 检查带有附加文本标签,但未连接到焊盘的追踪层
internal 检查第一个放置实例边缘的朝内侧面 与第二个放置实例边缘的朝内侧面 之间的间距是否足够
locations 检查焊盘的位置 ,以及源与版图之间的图形和文本是否匹配
missing_ports 检查源网表中,在指定芯片、放置实例、裸片或层上无对应版图焊盘的端口
multi_texts 检查指定芯片、放置实例、裸片或层上,同一个焊盘上附着的多个文本标签 。若版图中多个文本标签与一个焊盘重叠,工具会生成多文本错误,并选择使用该焊盘上附着的其中一个文本标签进行连接分析。由于所选标签可能与设计意图不符,因此必须检查并解决所有多文本错误,以确保版图正确;若未解决,连接分析结果可能不准确。
multi_trace 检查同一追踪层上的焊盘 所附着的、带有不同文本标签多个追踪层
no_texts 检查指定芯片、放置实例、裸片或层上,焊盘缺失的文本标签
no_trace 检查未附着文本标签的追踪层
offgrid_centers 检查未对齐到指定网格的焊盘中心
overlap 检查两个已放置层之间的重叠是否足够
select_checks 选择在 Calibre 3DSTACK 验证期间要执行的指定检查
unselect_checks 选择在 Calibre 3DSTACK 验证期间不执行的指定检查
3dstack_block 定义一个代码块,可在其中指定标准 Calibre 3DSTACK 规则文件格式命令。此命令允许你将标准 3DSTACK 语法命令直接传递给 Calibre 3DSTACK 运行流程。

centers

检查焊盘未对齐问题。

用法

tcl

复制代码
centers -check_name check_name
{-layer_type1 placed_layer_type1 [-layer_type2 placed_layer_type2]}
[-stack '{' stack_name_list '}'] [-direction {up | down | both}]
"constraint_value"
[-alignment {octagonal_only | orthogonal_only}] [-overlapping] [-square]
[-comment "comment"] [rve_option ...]

参数

  • -check_name check_name 必选参数,指定检查名称,该名称用于写入输出结果。若多次指定 centers 命令,每个 check_name 必须唯一

  • -layer_type1 placed_layer_type1 [-layer_type2 placed_layer_type2] 参数集,指定执行检查的层类型。所有几何检查均作用于由堆叠定义的交互(接口)放置层 ,放置层指裸片放置实例对应的层。例如,若在 layer_type1layer_type2 之间定义检查,则会对所有与 layer_type2 放置层存在交互的 layer_type1 放置层(由堆叠定义)进行两两检查。若检查仅指定一种层类型,则会对该类型的所有放置层执行检查。

  • -stack '{' stack_name_list '}' 可选参数集,指定应用该规则检查的堆叠。若未指定此参数集,检查将应用于所有 堆叠。指定的堆叠名称必须已定义;若指定 -stack 参数,检查仅应用于指定的堆叠。

  • **-direction {up | down | both}**可选参数集,指定检查的方向。若指定此参数,检查仅在指定方向上执行。

    • up:检查仅从堆叠的底部到顶部执行,为默认值。

    • down:检查仅从堆叠的顶部到底部执行。

    • both:检查在两个方向上均执行。

  • -constraint "constraint_value" 必选参数,指定指定层类型焊盘周围测量区域的尺寸约束,该约束必须包含上界constraint_value 必须符合《标准验证规则格式(SVRF)手册》中 "约束" 部分描述的约束表示法。表达式不得 为以下形式:==!=

  • **-alignment {octagonal_only | orthogonal_only}**可选参数,定义用于距离测量的焊盘中心对齐方式,选项定义如下:

    • octagonal_only:仅当焊盘范围的中心点以 45 度的整数倍对齐时,才判定其间距满足约束。

    • orthogonal_only:仅当焊盘范围的中心点在 x 或 y 方向上对齐时,才判定其间距满足约束。

  • **-square**可选参数,指定使用 ** 曼哈顿距离(方形度量)** 而非欧几里得距离进行测量。

  • -overlapping 可选参数,检查两个重叠放置实例 之间的指定约束。若指定此参数,浮空焊盘将被忽略 。使用此选项时,必须通过 placed_layer_type1placed_layer_type2 参数指定两个层

  • -comment "comment" 可选参数集,指定规则检查的注释。可使用 \n 转义序列指定多行注释。

  • rve_option ... 可选参数集,控制 Calibre RVE 如何显示规则检查结果,允许指定多个选项。rve_option 的允许值详见第 201 页的 "Calibre 3DSTACK 检查文本覆盖注释"。

说明

此命令检查焊盘中心是否对齐 ,或中心间距是否符合指定距离 。换言之,centers 检查会标记那些与其他焊盘的间距未在指定范围内 的焊盘。测量基于焊盘范围的中心 进行,其功能类似于 SVRF 中使用 CENTERS 选项的 Not With Neighbor 操作。

若要检查重叠焊盘 的中心对齐情况,请指定 -overlapping 参数。此选项仅检查两个重叠焊盘之间的指定约束;若未指定此选项,centers 命令会同时检查相邻焊盘和重叠焊盘

centers 命令仅适用于直线图形 。若要检查的几何图形包含非直线形状,建议先生成不含非直线形状的层派生,再使用派生层执行检查。

示例

示例 1

本示例报告所有层放置实例上,中心间距不完全等于 80 微米的焊盘。

tcl

复制代码
centers -check_name controller_pads -layer_type1 pad \
-constraint "== 80" -alignment orthogonal_only \
-comment "Pads spaced 80 um in x or y from all pad centers"

-placement1 中的任意焊盘(或扩展语法中所有类型为 pad 的层)与其他焊盘的中心间距不完全为 80 微米,Calibre 3DSTACK 会通过选中违规焊盘进行标记。

示例 2

本示例演示如何检查两个重叠焊盘放置实例 之间的对齐情况。在此场景中,一个芯片堆叠在中介层上,需确保焊盘的错位不超过 0.1 微米。

以下规则检查定义了 cont_placementinter_placement 焊盘之间的最大中心偏差为 0.1 微米,同时指定焊盘放置实例为正交对齐,且检测区域为方形。

tcl

复制代码
centers -check_name centers_controller_interposer \
-layer_type1 pad -stacks {controller interposer} \
-constraint "<= 0.1" -square -alignment orthogonal_only -overlapping \
-comment "Center-to-center spacing for the controller to \
interposer_controller landing pads must be within 0.1 um in the \
x or y direction (ortho)."

在本示例中,若中介层焊盘的中心与控制器焊盘的中心间距超过 0.1 微米 ,检查会选中这些中介层焊盘。

相关推荐
GottdesKrieges14 小时前
OceanBase恢复常见问题
java·数据库·oceanbase
IGAn CTOU14 小时前
Java高级开发进阶教程之系列
java·开发语言
leo825...14 小时前
Claude Code Skills 清单(本地)
java·python·ai编程
NGSI vimp14 小时前
Java进阶——如何查看Java字节码
java·开发语言
卧室小白14 小时前
redis-配置
数据库·redis·缓存
向風而行15 小时前
MySQL详解
数据库·mysql
草履虫君15 小时前
VMware 虚拟机网络性能优化指南:从 11 秒到 4 秒的完整调优实践
服务器·网络·经验分享·性能优化
日取其半万世不竭15 小时前
LVM 逻辑卷管理:不停机扩容磁盘的正确方式
运维·服务器
身如柳絮随风扬15 小时前
多数据源切换实战:从业务场景到3种实现方案全解析
java·分布式·微服务
belldeep16 小时前
本草纲目:如何应用 PostgreSQL 实现【中医药】主题数据库 ?
数据库·postgresql·本草纲目