【IC】多角多模式信号完整性优化

article/2025/8/12 4:16:50

随着互连效应增强和时钟频率加快,串扰噪声、毛刺和意外信号延迟的发生概率也随之增加,信号完整性 (SI) 问题也日益凸显。由于 65 纳米和 45 纳米设计中横向导线电容的影响日益增大,与 SI 相关的时序违规显著增多。设计必须运行的操作模式和工艺角的快速增加,加剧了这一问题,并显著增加了设计收敛所需的时间。

为了妥善解决 65nm 及以下工艺 IC 的 SI 收敛问题,我们需要在整个设计流程中考虑 SI。从布局开始就必须将其纳入议程,并贯穿时钟树综合、优化和布线的始终。我们必须具备进行准确分析的能力,并在所有适当阶段应用有效的预防和设计优化技术。

此外,我们需要能够对所有操作模式和工艺角执行并发 SI 分析和优化。这需要一种新的布局布线架构,该架构必须具备执行多角多模式 (MCMM) 时序分析的底层能力。不具备真正 MCMM 功能的解决方案每次只能提供单一模式/角组合进行 SI 分析,这迫使设计团队不得不多次运行该工具的耗时迭代,并且还需要手动干预整个过程。

信号完整性 (SI) 是指设计对相邻网络之间寄生电容引起的串扰效应的免疫程度。交叉耦合会导致信号斜率和延迟发生变化,从而影响时序收敛,还会导致信号毛刺引发逻辑错误。SI 分析使用特定术语来指代其考虑的两种网络:

  • “受害网络”是被分析串扰效应的网络。
  • “攻击者网络”是所有可能导致受害者网络串扰的周围网络。

SI 分析的目标是计算由于来自干扰源网络的信号耦合而在受害网络中可能产生的“电压凸起”。这些凸起取决于寄生元件(导体电阻和导体间电容)的大小以及受害网络和干扰源网络上信号的相对时序。信号对齐将决定信号之间增强或抵消的程度。

在这里插入图片描述
图1.串扰对受扰信号转换的影响。来源:Mentor Graphics

图1显示了干扰源与受害源同时且沿相同方向跳变会缩短受害源信号的到达时间(即减少时间延迟),而干扰源与受害源反向跳变则会增加其到达时间(即增加时间延迟)。确定受害源跳变时间的这些变化称为“延迟增量”分析,是SI分析的一个重要分支。

为了考虑时序的影响,SI 分析使用了“时序窗口”概念。时序窗口是指信号到达某个节点的迟到时间与早到时间之间的差值,它归因于网络中的不同路径。只有当干扰源和受干扰源的时序窗口重叠时,电压波动才会对操作产生影响(图 2)。

先进工艺节点的 SI 挑战

在 65nm 及以下工艺中,有一组因素出现或变得更加重要,这在很大程度上导致了实现 SI 收敛的难度加大:

  • 互连耦合电容增加。
  • 电线电阻和电阻变化也持续增加。
  • 时钟时序变得更快。因此,在先进工艺节点上对 IC 进行有效的 SI 分析面临几个关键挑战:
  • 与前几代产品相比,需要分析更多的模式和角落,这使得达到时序收敛变得更加困难。
  • 几何尺寸越小,SI 效应就越明显,单靠规避启发法无法预防,更不用说优化了。现在需要在布线过程中进行实时分析和反馈。
  • 具有大量门数的设计需要极其快速和高效的 SI 分析和优化,否则周转时间可能会变得过长。

在这里插入图片描述
图2.使用时序窗口确定串扰的影响。来源:Mentor Graphics

工艺角和操作模式数量的激增加剧了深亚微米几何尺寸下的 SI 收敛问题,而每个新节点的出现都会进一步加剧这两个问题。130nm 设计通常针对每种给定的操作模式(例如功能模式或测试模式)考虑四个工艺角。在 65nm 工艺中,每种模式通常有 21 个工艺角(图 3)。额外的操作模式,尤其是用于控制功耗的操作模式,会成倍增加设计变化的复杂性。

每个需要考虑的工艺角的寄生参数各不相同,时序计算也因 IC 工作模式和工艺角而异。这意味着每种模式和工艺角组合都有不同的到达时间集合(即时序窗口)。传统上,时序分析工具一次只能处理一种情况,因为它们只跟踪电路中每个节点的单个时序窗口。

时钟树和信号完整性

用于控制时钟树功耗的许多技术本质上也有利于实现 SI 收敛。时钟树综合需要稳健地实现长度控制规则、时钟门控和负载平衡。在时钟树布线中,应屏蔽时钟线以减少活动时钟线与相邻网络之间的耦合电容。通常,时钟网络使用非默认规则 (NDR) 进行布线,这些规则在技术文件中定义或由用户在时钟布线之前指定。与默认规则相比,时钟布线的 NDR 通常定义双倍宽度的线和双倍宽度的线周围间距。双倍宽度的线可降低线电阻,双倍间距为添加屏蔽提供了空间。屏蔽只是接地的金属,可以抑制来自活动时钟网络的任何信号噪声。

传统的布局布线系统在 SI 收敛时失败

市场上主要的布局布线 (P&R) 工具通常已有 10 到 15 年的历史,其最初的设计目标是解决一系列不同的问题。在当今的几何尺寸下,这些工具已不再足以在紧凑的设计时间表内实现时序、SI 和功耗约束方面的设计收敛。
在这里插入图片描述
图3.需要考虑的工艺角越来越多。来源:Mentor Graphics

大多数 P&R 工具都有一个“时序图”——这是任何实现系统中最基本的数据结构——它旨在一次处理一个模式和一个建立/保持角的分析。所有 P&R 引擎,包括用于时序分析的引擎,都受到此数据结构中存储信息的限制。由于这一基本架构限制很难被替换或改造,传统的 P&R 软件几乎不可能有效地解决 MCMM 设计收敛问题。

由于无法真正并发执行MCMM时序分析,设计人员不得不针对每个工艺角分别进行提取,并针对每种模式/工艺角组合分别启动SI分析运行,从而处理模式和工艺角。然后,必须手动合并结果,并使用自定义脚本和其他临时技术进行分析,才能实现收敛。这会导致需要耗费大量时间进行迭代,以修复布线后发现的SI问题。遗憾的是,这种方法无法确保设计真正针对所有模式和工艺角进行了优化。也就是说,无法实现真正​​的SI设计收敛。

MCMM 时序改进了 SI 收敛

我们需要一种能够全面解决整个设计流程中可变性问题的架构。它必须消除物理实现过程中的不可预测性,帮助设计人员按计划完成设计,同时应对 45nm 及以下工艺的先进设计挑战。高效的 P&R 解决方案能够提供全面的功能,帮助设计人员在任意数量的模式和角点上实现时序、功耗和 SI 的收敛。此类工具所需的功能包括:

  • 同时解决多种模式和角落的时序分析架构;
  • 一种感知变化的布线方法,可在 P&R 期间优化光刻、关键区域分析和其他制造设计指标;
  • 灵活的工具架构和降低功耗技术,可满足各种低功耗设计风格的需求;
  • 一种可扩展的数据模型,可以表示分层或平面设计方法中的 1 亿多个门设计。

在这里插入图片描述
图4. Mentor Graphics Olympus-SoC MCMM P&R系统。来源:Mentor Graphics

设计人员需要一种能够在每个节点维持任意数量时序窗口的 P&R 架构,即使对于最大型的 IC 设计也是如此。MCMM 时序分析正是为此而生,它能够有效地在单次运行中同时计算所有模式和角点的时序窗口。Mentor Graphics 的 Olympus-SoC MCMM P&R 系统(图 4)就提供了此类功能。

对于 SI 分析,这意味着所有模式和拐点的受害方和侵害方时序窗口都会被同时考虑,而不是一次一个。MCMM-SI 分析解决了串扰延迟、毛刺、功耗和电迁移等可靠性问题,同时缩短了设计收敛时间。此外,详细的布线和优化引擎还能同时处理所有变化场景下的 SI 违规问题。

凭借真正的 MCMM 分析功能,设计人员无需再进行耗时的迭代 SI 收敛过程,并确保 SI 修改不会引入新的违规行为。设计人员可以更快地完成流片,并更有信心确保设计满足所有 SI 以及其他收敛要求。

SI 关闭的附加 P&R 策略

MCMM 时序能力是近期架构工具与现有 P&R 解决方案之间最根本的区别,但还有一些其他策略可以在物理实现过程中提供进一步的 SI 效率。这些包括:

  • SI 感知布局,尝试最小化平行线长度;
  • MCMM时钟树综合;
  • 时钟网络的自动屏蔽;
  • 逻辑 SI 优化(大小、缓冲、空白优化);
  • 串扰预防技术,例如 SI 驱动的轨道分配、线路扩展和轨道重新排序;
  • 隐式屏蔽,即将不同模式下的路由网络作为邻居放置在一起;
  • 同时对所有模式/角进行快速、增量的 SI 更新(这使得在整个布线和布线后流程中实
  • 签核质量的 SI 优化成为可能,这是一种称为“SI 驱动布线”的正确构造方法);
  • 非常快速、动态的多角提取,为所有模式和角提供寄生信息,以实现 SI 驱动的布线;
  • 处理多个电压岛的能力;以及
  • SI 的后布线优化,包括基于单元的优化、斜率平衡和余量改进。

结论

SI效应的增强、制造工艺的可变性以及不断增长的门数,都对传统的P&R工具架构提出了挑战。为了确保65nm及以下工艺节点的SI收敛成功,设计人员需要一个高性能的P&R系统,以应对当今先进工艺节点出现的特定难题。关键的技术要求是一个签核质量的MCMM时序引擎,该引擎能够一次性计算任意数量模式和角点场景的延迟偏移和毛刺,并同时消除所有变化场景下的SI违规。

https://www.techdesignforums.com/practice/technique/multi-corner-multi-mode-signal-integrity-optimization/


http://www.hkcw.cn/article/GLpBlxGXfg.shtml

相关文章

2,QT-Creator工具创建新项目教程

目录 1,创建一个新项目 demo_01.pro(项目配置文件) 类似 CMakeList.txt widget.h(头文件)​ main.cpp(程序入口)​ widget.cpp(源文件)​ widget.ui(界面设计文件)​ 1,创建一个新项目 依次选择: 设置路径: 选择编译器: 如果选择CMake, 就会生成cmakel…

【RocketMQ 生产者和消费者】- 生产者发送同步、异步、单向消息源码分析(1)

文章目录 1. 前言2. send 方法发送同步消息3. sendDefaultImpl 发送消息4. sendKernelImpl 发送同步、异步、单向消息5. sendMessage 发送消息6. 同步发送 sendMessageSync6.1 invokeSyncImpl 同步调用 7. 异步发送 sendMessageAsync7.1 invokeAsyncImpl 异步调用 8. 单向发送 …

【harbor】--配置https

使用自建的 CA 证书来自签署和启用 HTTPS 通信。 (1)生成 CA认证 使用 OpenSSL 生成一个 2048位的私钥这是 自建 CA(证书颁发机构) 的私钥,后续会用它来签发证书。 # 1创建CA认证 cd 到harbor [rootlocalhost harbo…

SOC-ESP32S3部分:23-文件系统

飞书文档https://x509p6c8to.feishu.cn/wiki/SXf5w6seIijVVskvic5cNT2wng4 目前,ESP-IDF 框架支持三种文件系统。 SPIFFS(SPI Flash File System) 简介:SPIFFS 是专门为 SPI NOR Flash 设备设计的轻量级文件系统,适…

[Godot] 如何导出安卓 APK 并在手机上调试

在之前的文章中,我们已经详细介绍了如何配置 Godot 的安卓应用开发环境,包括安装 Android SDK、配置 Java 环境、设置 Godot 的 Android 导出模板等。本篇文章将进一步讲解如何将 Godot 项目导出为安卓 APK 文件,并实现在手机上进行调试运行。…

通用人工智能 (AGI): 定义、挑战与未来展望

摘要 通用人工智能 (AGI) 代表人工智能领域的理想追求,其目标是创造具备人类般广泛智能能力的系统。本文深入探讨 AGI 的核心概念,详细梳理通向 AGI 的潜在技术路径,同时分析实现过程中面临的挑战与应对策略,并对 AGI 的未来发展进…

【CF】Day72——Codeforces Round 890 (Div. 2) CDE1 (二分答案 | 交互 + 分治 | ⭐树上背包)

C. To Become Max 题目: 思路: 二分挺好想的,但是check有点不好写 看到最大值,试试二分,如果 x 可以,那么 x - 1 肯定也可以,所以具有单调性,考虑二分 如何check呢?由于…

Java进阶---JVM

JVM概述 JVM作用: 负责将字节码翻译为机器码,管理运行时内存 JVM整体组成部分: 类加载系统(ClasLoader):负责将硬盘上的字节码文件加载到内存中 运行时数据区(RuntimeData Area):负责存储运行时各种数据 执行引擎(Ex…

Linux《文件系统》

在之前的系统IO当中已经了解了“内存”级别的文件操作,了解了文件描述符、重定向、缓冲区等概念,在了解了这些的知识之后还封装出了我们自己的libc库。接下来在本篇当中将会将视角从内存转向磁盘,研究文件在内存当中是如何进行存储的&#xf…

SRD-12VDC-SL-C 继电器‌接线图解

这个继电器可以使用12伏的直流电源控制250伏和125伏的交流电,也可以控制30伏和28伏的直流电,电流都为10安。 此继电器有5个引脚,各个的作用如下: 引脚4和引脚5为触点, 引脚1和引脚3为线圈引脚,接12伏的直…

Linux下目录递归拷贝的单进程实现

1.实验目的 掌握Linux应用程序命令行参数传递方法掌握POSIX API中文件I/O操作方法,包括:打开文件、关闭文件、创建文件、读写文件、确定和改变文件当前位置 2.实验内容 利用POSIX API在Linux系统上编写应用程序,仿写cp命令的部分功能&#…

哈希:闭散列的开放定址法

我还是曾经的那个少年 1.概念 通过其要存储的值与存储的位置建立映射关系。 如:基数排序也是运用了哈希开放定址法的的思想。 弊端:仅适用于数据集中的情况 2.开放定址法 问题:按照上述哈希的方式,向集合插入数据为44&#xff…

数据库基础

MySQL基础 一、什么是数据库 mysql是数据库服务的客户端 mysql是数据库服务的服务器端 本质:基于C(mysql)S(mysqld)模式的一种服务网络,一套给我们提供数据存取的服务的网络程序 数据库:一…

多线程——线程池

课程: 什么是线程池 可以自己实现这个功能,自己写一个线程池 jdk也给提供了线程池 为什么要有线程池 Executor框架 任务:就是代码 执行:谁去执行这个代码,之前是Thread执行的, thread: Executor: …

2006-2021年 中国社会状况综合调查CSS数据(含Excel、Stata格式)

2006-2021年 中国社会状况综合调查CSS数据(含Excel、Stata格式).ziphttps://download.csdn.net/download/2401_84585615/89784651 https://download.csdn.net/download/2401_84585615/89784651 2006至2021年,中国社会状况综合调查&#xff08…

ReLU的变体

在深度学习中,ReLU(Rectified Linear Unit)是最常用的激活函数之一,但其存在一些局限性(如死亡ReLU问题)。为解决这些问题,研究者们提出了多种变体。以下是常见的ReLU变体及其核心特点&#xff…

麦克风和电脑内播放声音实时识别转文字软件FunASR整合包V5下载

我基于FunASR制作的实时语音识别转文字软件当前更新到V5版本。软件可以实时识别麦克风声音和电脑内播放声音转为文字。 FunASR软件介绍 FunASR 是一款基础语音识别工具包和开源 SOTA 预训练模型,支持语音识别、语音活动检测、文本后处理等。 我使用FunASR制作了一…

Ollama 开放 局域网访问 外网访问 mac

目录 问题描述 搜索尝试 最终方案 问题描述 我们在本地安装Ollama模型后通过127.0.0.1:11434访问正常返回 但是无法通过局域网IP访问如: http://192.168.1.158:11434 搜索尝试 搜索发现需要添加环境变量 OLLAMA_HOST 才能开放外网访问 export OLLAMA_HOST0.0.…

让Windows“怀上”macOS,不要太漂亮

记得Windows 11刚发布时,很多人都说它“果味十足”,仿佛是在向macOS靠拢。虽然大家觉得Windows有点“没骨气”,但不得不承认,它的界面确实很美观。 今天给大家介绍两款软件,能让Windows拥有macOS的风格,看起…

Gradle配置指南:深入解析settings.gradle.kts(Kotlin DSL版)

文章目录 Gradle配置指南:深入解析settings.gradle.kts(Kotlin DSL版)settings.gradle.kts 基础配置选项单项目配置多项目配置 高级配置选项插件管理(Plugin Management)基础配置模板案例:Android项目标准配…