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 微米 ,检查会选中这些中介层焊盘。

相关推荐
济61721 小时前
linux(第九期)--交叉编译器-- Ubuntu20.04
linux·运维·服务器
用户03048059126321 小时前
Spring Boot 配置文件加载大揭秘:优先级覆盖与互补合并机制详解
java·后端
青莲84321 小时前
Java内存回收机制(GC)完整详解
java·前端·面试
zxdzxdzzxd21 小时前
Tailscale Linux 登录指南
linux·运维·服务器
CRUD酱1 天前
微服务分模块后怎么跨模块访问资源
java·分布式·微服务·中间件·java-ee
y_想不到名字1 天前
MySQL windows版本免安装
数据库·mysql
萧曵 丶1 天前
MySQL 事务隔离级别及实际业务问题详解
数据库·mysql
gAlAxy...1 天前
5 种 SpringBoot 项目创建方式
java·spring boot·后端
lalala_lulu1 天前
什么是事务,事务有什么特性?
java·开发语言·数据库