Calibre eqDRC(方程化 DRC)核心技术解析与实战指南(14-1)

目录

[一、eqDRC 核心价值与适用场景](#一、eqDRC 核心价值与适用场景)

典型适用场景

[二、传统 DRC 的局限性:以宽金属间距为例](#二、传统 DRC 的局限性:以宽金属间距为例)

[传统 DRC 的解决方案(低效且不准确)](#传统 DRC 的解决方案(低效且不准确))

[传统 DRC 的致命缺陷](#传统 DRC 的致命缺陷)

[三、eqDRC 实战:宽金属间距规则编写完整流程](#三、eqDRC 实战:宽金属间距规则编写完整流程)

[步骤 1:明确物理模型与方程推导](#步骤 1:明确物理模型与方程推导)

​编辑

[步骤 2:编写 eqDRC 规则(SVRF 语法)](#步骤 2:编写 eqDRC 规则(SVRF 语法))

关键语法解析

[步骤 3:运行 eqDRC 与结果查看](#步骤 3:运行 eqDRC 与结果查看)

四、关键注意事项

五、summary


本文基于 Calibre v2017.1 官方手册,聚焦 eqDRC(Equation-based DRC) 这一高级特性,从核心价值、传统 DRC 局限性、实战案例(宽金属间距)、规则编写流程四个维度,拆解其技术原理与落地方法,助力先进工艺(<32nm)复杂设计规则的高效验证。

一、eqDRC 核心价值与适用场景

从历史实践来看,物理验证一直依赖独立的一维规则检查,来识别版图中那些在制造环节最容易失效的图形特征。但随着工艺节点不断缩小,制造偏差逐渐增大,验证规则的编写必须能够应对各类新型的复杂设计图形。

基于方程的 DRC(简称 eqDRC) 是 Calibre 扩展的 SVRF 语法集,通过连续数学方程替代传统 DRC 的 "区间桶(Buckets)" 规则,解决复杂几何交互验证难题,核心价值体现在:

核心优势 具体说明
精准控制良率 避免传统 DRC 的 "过约束"(浪费芯片面积)或 "欠约束"(遗漏制造风险),通过连续函数精准匹配工艺变化
简化规则编写 用 1 个方程替代数十个单维度区间规则,大幅减少规则文件复杂度,降低维护成本
高效调试 直接输出版图修正建议(如 "增加间距 2.98um""减小总宽度 0.38um"),无需设计师手动计算
支持复杂场景 验证传统 DRC 无法实现的多变量交互规则(如宽金属间距、间距 - 宽度关联、DFM 约束等)
兼容先进工艺 适配 32nm 以下节点的限制性设计规则(RDR),如间距 - 栅格匹配、图案密度约束等

典型适用场景

  • 宽金属 CMP 侵蚀风险验证(本文重点案例);
  • 先进工艺 DFM(可制造性设计)规则(如图案密度、线宽 - 间距协同约束);
  • 多变量关联规则(如 "线宽 × 间距≤阈值""总宽度与间距的对数关系约束");
  • 限制性设计规则(RDR)验证(如固定间距栅格、特定图案匹配)。

二、传统 DRC 的局限性:以宽金属间距为例

宽金属间距问题的核心是:宽金属条带与氧化物区域的比例失衡导致 CMP 工艺侵蚀(铜比氧化物软,氧化物区域过小会失去抛光阻力,导致金属凹陷,引发电阻异常或开路)。

为说明 eqDRC 的优势,我们以宽金属线间距规则 为例展开分析。宽金属线间距是一项典型的设计挑战 ------ 当两条较宽的金属条之间仅隔着狭窄的二氧化硅区域时,极易引发性能与良率问题。由于铜的硬度低于氧化物,在化学机械抛光(CMP)工艺中,铜更容易被去除,进而导致金属线出现腐蚀现象

图1

若两条铜金属条的宽度,相对于它们之间的氧化物区域宽度过大,金属腐蚀的风险会显著增加。这是因为狭窄的氧化物区域无法为抛光垫提供足够的阻力,两条铜金属条会在抛光过程中表现得如同一个整体的大面积铜层。腐蚀加剧不仅会导致金属线的电阻和电容发生不良变化,甚至可能引发电路开路。因此,设计人员必须针对不同的金属线宽度,确保金属条之间的最小间距,以此避免腐蚀问题。

传统 DRC 的解决方案(低效且不准确)

解决金属腐蚀问题的常规方法,是制定一系列一维设计规则,为单条金属条及两条金属条的不同宽度区间,分别设定对应的最小间距要求。

传统 DRC 通过 "宽度区间 + 对应最小间距" 的离散规则实现,例如:

svrf

复制代码
// 传统DRC:7个区间规则,覆盖宽金属间距约束
Rule1: 0.09 minimum M1 Space if both bands >= 0.09 wide
Rule2: 0.25 minimum M1 Space if one band >= 0.36 wide
Rule3: 0.30 minimum M1 Space if both bands >= 0.36 wide
Rule4: 0.40 minimum M1 Space if one band >= 1.44 wide
Rule5: 0.50 minimum M1 Space if both bands >= 1.44 wide
Rule6: 0.55 minimum M1 Space if one band >= 4.50 wide
Rule7: 0.60 minimum M1 Space if both bands >= 4.50 wide

以下几个案例可以证明,这种传统方法的有效性存在局限,无法从根本上帮助设计人员规避腐蚀风险。

案例1:

两条金属线的宽度均为 1.44 单位,间距为 0.49 单位。按照规则 5 的要求,该设计判定为违规。

图2

案例2:

两条金属条的宽度分别为 1.44 单位和 1.43 单位,间距为 0.40 单位。此时适用的规则从规则 5 变为规则 4,该设计判定为合规。

图3

与但从腐蚀风险的角度分析,案例1 中的违规案例,实际的可靠性反而优于图2 中的合规案例。因为在图2的合规案例中,金属条之间的氧化物区域面积更小,抛光过程中发生的腐蚀会更严重。

案例3:

在图 4 的案例中,一条金属线的宽度为 1.44 单位,另一条金属线的宽度被大幅缩减至 0.09 单位。由于存在一条宽度为 1.44 单位的金属线,该设计违反规则 4,设计人员必须增大金属条之间的间距。但同样从腐蚀风险的角度来看,图 4-5 的设计方案要远优于图 4-4。

图4

传统 DRC 的致命缺陷

  1. 判断失真:离散区间导致 "合理设计判错、风险设计判对",例如:

案例 1:两金属宽 1.44um,间距 0.49um → 违反 RULE5(判错),但实际氧化物区域较大,侵蚀风险低;

案例 2:两金属宽 1.44um/1.43um,间距 0.4um → 符合 RULE4(判对),但氧化物区域更小,侵蚀风险更高;

  1. 规则冗余:需编写大量区间规则覆盖所有宽度组合,维护成本高;
  2. 无修正指导:仅提示违规,不告知设计师需调整的具体数值(如 "需增加多少间距")。

三、eqDRC 实战:宽金属间距规则编写完整流程

eqDRC 的核心逻辑是:将离散规则拟合为连续数学方程,通过方程判断合规性,并推导修正值。以下是完整落地步骤。具体实现步骤如下:首先,根据传统 DRC 规则定义的离散数值,拟合出一条最优曲线(如图 5所示)。在本案例中,传统 DRC 测量区间对应的分段线性图近似呈对数分布,因此使用支持对数曲线拟合的工具会更有帮助。

图5 Traditional DRC Versus eqDRC

需要注意的是,在传统 DRC 的曲线图中,每个最小间距值对应的分段区间都向右无限延伸。这是因为传统规则仅对单条或两条金属条的宽度设定了下限(即宽度需大于等于某一最小值),而未设置上限。因此,在任意一个间距要求下,金属条的总宽度都可以无限增加,且不会违反任何传统 DRC 规则。

图5 清晰地反映出,传统 DRC 规则要么会对设计造成过约束(牺牲芯片面积),要么会导致约束不足(牺牲芯片良率)。那些位于 eqDRC 曲线上方的区间,代表对图形的过约束 ------ 这些区间错误地排除了本应合法的几何尺寸;而位于 eqDRC 曲线下方的区间,则代表对图形的约束不足 ------ 这些区间错误地允许了本应禁止的几何尺寸。

步骤 1:明确物理模型与方程推导

首先需基于工艺数据,拟合宽金属间距**(space)** 与总宽度**(width1 + width2)**的连续函数。手册案例中,通过对数曲线拟合得到核心方程:

可以通过将等式两边同时除以间距 来创建一项 DRC 风格的检查,再将 1 设为 DRC 的判定阈值------ 若计算结果小于或等于 1,则该条件判定通过;若计算结果大于 1,则该条件判定失败。

对于判定失败的条件,显示满足该条件所需的间距或线宽修改量是很有帮助的。具体操作如下:首先,通过对每个变量求解来推导额外的等式;由于这些孤立变量代表了满足条件所需的目标值,因此可以将其表示为「原始值 + 偏差值(delta (value))」,其中偏差值(delta (value))即为原始值需要调整的量,调整后即可满足该 DRC 条件。

这些信息会被保存至可制造性设计结果数据库(DFM RDB)可制造性设计数据库(DFM database),并在版图查看器中对每个几何图形进行可视化展示。

以下步骤说明如何在规则文件中实现这一功能:

  1. 创建一个衍生误差层,该层的边缘簇用于标记金属条带之间的间距。此层将作为步骤 3 中 ** 可制造性设计属性(DFM Property)** 操作的主输入层。

    复制代码
    mtlspc = EXT MET1 <= 0.60 OPPOSITE
  2. 创建一个衍生误差层,该层的边缘簇用于标记每条金属条带的线宽。

    复制代码
    mtlwid = INT MET1 <= 5.00 OPPOSITE
  3. 创建一个附加有三个属性(error_valuechange_space_bychange_sum_width_by)的衍生误差层eqdrc_err。该eqdrc_err层是可制造性设计属性操作主输入层的子集,仅包含满足属性约束条件的几何图形。每个属性均由可制造性设计表达式定义,其中使用 ** 有效宽度测量函数(EW measurement function)** 对衍生误差层的间距进行测量。

    复制代码
    eqdrc_err = DFM PROPERTY mtlspc mtlwid OVERLAP ABUT ALSO MULTI
    [error_value = 0.09/(EW(mtlspc)*LOG(2)) * log(EW(mtlwid)/0.09)] > 1
    [change_space_by = (0.09/LOG(2))*(EW(mtlwid)/0.09)-EW(mtlspc)]
    [change_sum_width_by = 0.09*EXP((EW(mtlspc)*LOG(2))/0.09)
    -EW(mtlwid)]
  4. 将带有属性信息的eqdrc_err层输出至一个名为eqDRC.rdb的可制造性设计结果数据库文件中。

    复制代码
    eqDRC_rule {
    DFM RDB eqdrc_err eqDRC.rdb
    COMMENT "Wide metal spacing Rule: Use the property values to
    determine the error magnitude and adjustments needed to
    fix the violation"
    }
  • 变量定义:space= 两金属间距,total_width= 两金属宽度之和;
  • 合规判据:error_value ≤ 1 → 合规;error_value > 1 → 违规;
  • 修正值推导:通过解方程得到两个修正方向:
    • 调整间距:change_space_by = (0.09 / log(2)) × log(total_width / 0.09) - space(正数表示需增加间距);
    • 调整总宽度:change_sum_width_by = 0.09 × exp((space × log(2)) / 0.09) - total_width(负数表示需减小总宽度)。

图6 Wide Metal Spacing Output in Calibre DESIGNrev

图6 展示了在 Calibre DESIGNrev 中,一对违规金属条的检查结果。图中显示的属性数值表明,要使该设计合规,有两种调整方案:一是将金属条间距增大约 2.98 单位,二是将金属条总宽度减小约 0.38 单位。

通过在设计规则手册中引入方程,晶圆代工厂能够将实际的工艺偏差指标,表达为多维设计变量的函数,从而以传统方法无法实现的方式,对潜在的设计问题进行优先级排序和标记。此外,这些方程可以完全替代传统的阈值表格,不仅能实现更精准的检查,还能让规则的定义和调试变得更加简单。当出现新的工艺或设计需求时,只需新增或修改对应的方程,即可持续保障芯片的良率和性能目标。

图7 DRC Process Design Rule Manual

图8 eqDRC Process Design Rule Manual

若无法对工艺设计规则手册进行修改,仍可将传统的区间式规则与 eqDRC 结合使用,这样既能简化规则代码的复杂度,又能在版图查看器中直接显示设计的修正数值。

步骤 2:编写 eqDRC 规则(SVRF 语法)

eqDRC 规则的核心是 DFM PROPERTY 操作,用于关联几何测量与方程计算,输出带修正属性的错误层。完整规则如下:

svrf

复制代码
// 宽金属间距eqDRC规则(可直接复用,需根据工艺调整参数)
UNITS DIEAREA 0 0 10000 10000 ; 数据库单位与芯片面积(需适配实际设计)
LAYOUT SYSTEM GDSII
LAYOUT PATH "./top.gds"
LAYOUT PRIMARY "TOP_CELL"

// 步骤1:生成间距测量层(mtlspc)- 捕获两金属间的间距边缘簇
// EXT MET1 <= 0.60:测量MET1层≤0.6um的间距;OPPOSITE:输出间距区域(而非边缘)
mtlspc = EXT MET1 <= 0.60 OPPOSITE

// 步骤2:生成宽度测量层(mtlwid)- 捕获单个金属的宽度边缘簇
// INT MET1 <= 5.00:测量MET1层≤5um的宽度;OPPOSITE:输出宽度区域
mtlwid = INT MET1 <= 5.00 OPPOSITE

// 步骤3:通过DFM PROPERTY计算eqDRC错误层与修正属性
// 核心参数解析:
// - mtlspc/mtlwid:输入层(间距测量层+宽度测量层)
// - OVERLAP ABUT ALSO:关联两输入层的重叠/相邻区域(确保测量对象对应)
// - MULTI:支持多个几何对象的关联计算
// - [error_value = ...]:方程计算违规程度
// - [change_space_by = ...]:输出间距修正值
// - [change_sum_width_by = ...]:输出总宽度修正值
eqdrc_err = DFM PROPERTY mtlspc mtlwid OVERLAP ABUT ALSO MULTI
  [error_value = 0.09/(EW(mtlspc)*LOG(2)) * LOG(EW(mtlwid)/0.09)] > 1  // 违规判据
  [change_space_by = (0.09/LOG(2))*LOG(EW(mtlwid)/0.09) - EW(mtlspc)]  // 间距修正值
  [change_sum_width_by = 0.09*EXP((EW(mtlspc)*LOG(2))/0.09) - EW(mtlwid)]  // 总宽度修正值

// 步骤4:输出错误层与属性到DFM RDB文件(用于Calibre RVE/DESIGNrev查看)
WIDE_METAL_SPACING_EQDRC {
  DFM RDB eqdrc_err "./eqDRC.rdb"  // 输出RDB文件(含属性数据)
  COMMENT "Wide Metal Spacing eqDRC Rule: Check CMP erosion risk"
  COMMENT "Violation Fix: Increase space by [change_space_by] or decrease total width by [abs(change_sum_width_by)]"
}

关键语法解析

  1. 测量函数 EW () :用于测量 DFM PROPERTY 输入层的 "有效宽度"(Equivalent Width),对应方程中的 spaceEW(mtlspc))和 total_widthEW(mtlwid))。
  2. 数学函数支持 :eqDRC 支持对数(LOG())、指数(EXP())、绝对值(ABS())等基础数学运算,可根据工艺模型扩展。
  3. 属性输出[属性名=表达式] 定义的属性会随错误层存储到 RDB 文件,在 Calibre RVE/DESIGNrev 中可直接查看每个违规区域的修正建议。

步骤 3:运行 eqDRC 与结果查看

  1. 命令行运行

    bash

    运行

    复制代码
    calibre -drc -hier eqdrc_rules.svrf  # 层级化运行eqDRC
  2. 结果查看 :用 Calibre DESIGNrev 或 RVE 打开 eqDRC.rdb 文件,违规区域会显示三个关键属性:

    • error_value:违规严重程度(>1 表示违规,数值越大风险越高);
    • change_space_by:需调整的间距(如 2.98um 表示需增加 2.98um);
    • change_sum_width_by:需调整的总宽度(如 - 0.38um 表示需减小 0.38um)。

四、关键注意事项

  1. 方程拟合精度:eqDRC 的核心是方程与工艺数据的匹配度,需基于实测数据(如 CMP 侵蚀实验结果)进行曲线拟合,避免主观设定参数;
  2. 性能优化 :复杂方程(如多变量非线性函数)可能增加运行时间,建议:
    • LAYOUT REGION 限定检查区域(如仅核心电路区);
    • 合理设置测量层的阈值(如 EXT MET1 <= 0.60 而非 EXT MET1 ANY),减少计算量;
  3. 兼容性
    • DFM RDB 文件需用 Calibre RVE/DESIGNrev 2017.1 及以上版本打开;
    • 若需输出 GDSII/OASIS 格式结果,需搭配 DRC CHECK MAP 并设置 DRC MAXIMUM RESULTS ALL

五、summary

eqDRC 是 Calibre nmDRC 针对先进工艺的核心增强特性,通过 "连续方程 + 几何测量 + 修正建议" 的闭环,解决了传统 DRC 的精准度与效率瓶颈。其核心价值不仅在于简化规则编写,更在于将 "被动违规检测" 升级为 "主动设计指导",帮助设计师快速优化版图以满足制造约束。

对于 32nm 以下节点的复杂设计,eqDRC 已成为 DFM 验证的必备工具,建议优先在宽金属、图案密度、多变量协同约束等场景中落地,逐步替代传统离散规则,提升验证效率与良率保障能力。

相关推荐
傻啦嘿哟2 小时前
Python自动整理音乐文件:按艺术家和专辑分类歌曲
数据库·python·分类
酸菜牛肉汤面2 小时前
16、事物的四大特性(ACID)介绍一下?
数据库·oracle
FourAu2 小时前
更改mysql在电脑中的存储位置
数据库·mysql
AI题库2 小时前
PostgreSQL 18 从新手到大师:实战指南 - 2.4 备份与恢复策略
数据库·postgresql·oracle·数据库备份
晴天¥2 小时前
Oracle中的概要文件
运维·数据库·oracle
一 乐3 小时前
健康管理|基于springboot + vue健康管理系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·学习
学编程就要猛3 小时前
MySQL:CRUD
数据库·sql·mysql
IT技术分享社区3 小时前
MySQL实战:自动计算字段如何让查询效率翻倍?
数据库·mysql
Live&&learn3 小时前
Redis语法入门
数据库·redis