后端设计的“双雄会”:细说ICC2与Innovus的布局路由算法

引言:物理设计的核心战场

在数字芯片的物理实现流程中,布局布线(Place and Route,P&R)环节直接决定了芯片的最终性能、功耗与面积(PPA)。对于16nm及以下的先进工艺节点,自动布局布线工具的选择更成为影响流片成败的关键因素。当前市场上,Synopsys的IC Compiler II(ICC2)与Cadence的Innovus构成了物理实现工具的两极格局。这两大工具在设计理念、算法架构和优化策略上各有千秋,共同构成了后端工程师必须深入理解的“双雄会”。

后端设计的“双雄会”:细说ICC2与Innovus的布局路由算法

市场格局:双雄并立,各有所长

从市场应用来看,ICC2和Innovus在先进工艺节点上呈现出此消彼长的态势。有晶圆厂人士在行业调查中透露,在28nm以下的工艺项目中,约60%的设计团队在不同程度上使用Innovus方案,而另外60%则使用ICC/ICC2方案——这表明多数设计团队同时持有两种工具的授权,以应对不同项目的需求。

在16nm/14nm及10nm节点的竞争中,Innovus被认为在先进工艺适应性的某些方面取得了优势。有工程师反馈,在10nm节点,多图案化(Multi-Patterning)带来的“着色”问题成为关键挑战——ICC2的布局阶段未充分考虑着色约束,导致后续布线阶段DRC违例激增,修复过程陷入“修复一个问题、引发两个新问题”的循环;而Innovus实现了从布局阶段就具备着色感知能力,将工艺约束前置处理。

算法架构的底层差异

ICC2:重构架构,面向大规模设计

ICC2是Synopsys对上一代ICC工具的架构级重构,最大的变化在于放弃了传统的Milkyway数据库,转而采用全新的NDM(Nano Design Model)数据库。这一变更使ICC2能够处理数亿门级的超大规模设计,同时引入了全新的优化引擎。根据官方数据,ICC2的运行速度相较ICC提升了约3倍,但在实际项目中,部分用户反馈其QoR(Quality of Results)仍有追赶空间。

Innovus:继承与革新,强调协同优化

Innovus传承自Cadence的EDI(Encounter Digital Implementation)系统,但集成了从Magma公司收购的技术基因,形成了以“CCopt”时钟树引擎为核心的创新架构。Innovus的突出特点在于强调工具链的协同——与Genus综合工具、Tempus时序签核工具共享统一的定时器和提取引擎,实现从综合到物理实现的数据模型一致性。

布局阶段的优化策略

物理布局:从数据路径优化说起

布局阶段的核心任务是为标准单元确定最佳物理位置。在这一阶段,两大工具都围绕数据路径(data path)优化展开工作,但策略有所不同。

传统的时序优化基于路径分组(path group)进行,每个时钟域被归为一个独立的分组,工具基于每个分组的WNS进行优化。ICC2延续了这种基于时钟域的路径分组方式,这一方式来自其综合工具DC的长期实践,优点是用户熟悉、约束直观。

Innovus则引入了名为“Basic Path Group”(BPG)的创新分组策略。传统方式下,存在多个时钟交叠到达的寄存器会被归入多个路径分组,当优化发生冲突时,工具难以兼顾所有分组的WNS。BPG策略的核心理念是“化繁为简”——为每一个终点寄存器(endpoint)赋予唯一的最高优先级路径分组,使优化引擎在任意时刻都专注于最差的一个分组进行修复,避免了分组间的仲裁和迭代开销。

这种差异在实际项目中体现为:在复杂的多时钟域设计里,Innovus的BPG策略能够更有效地避免“修复一个group、损害另一个group”的问题,特别是在跨时钟域路径和复杂扇入路径较多的场景下,优化结果更为稳定。而ICC2则依赖用户对路径分组优先级的精细调控(通过group_path -weight等命令)来达到类似效果。

有用时钟偏差(Useful Skew)的应用

有用时钟偏差技术是物理设计中时序收敛的重要手段。两大工具都在布局、时钟树综合和布线阶段广泛运用这一技术,但实现方式存在差异。

ICC2在整个流程中持续运用有用时钟偏差,但在多分组冲突场景下,调节时钟偏差需要评估多个分组对同一寄存器的margin,计算开销较大。

Innovus得益于BPG策略——每个寄存器只归属一个主分组,工具在调节有用时钟偏差时只需评估单一分组的margin,计算量大为降低,收敛效率更高。

布线阶段的算法博弈

着色感知与工艺适应性

在16nm/14nm及以下节点,多图案化光刻技术(Multi-Patterning)要求设计在布局布线阶段就必须考虑金属层的“着色”分配——同一层的相邻金属线不能分配相同颜色,否则将导致光刻阶段的DRC违例。

Innovus较早实现了“着色感知布局和着色感知布线”(color-aware placement and color-aware routing),将着色约束纳入从布局起始阶段的全流程优化中,这使其在10nm节点的适应性获得了设计团队的认可。

ICC2在10nm节点初期的着色处理策略是通过在布线阶段设置DRC规则来检查并修复着色问题,而非在布局阶段主动规避。有工程师反馈,这种“后修复”策略在处理高密度设计时会导致显著的迭代收敛问题——“Calibre可以修复(28nm/16nm)的着色问题,但到了10nm,必须有着色感知的P&R工具”。后续ICC2版本已增强了对Multi-Patterning的支持,但在设计团队中,Innovus在先进工艺的布局着色能力上仍保持着口碑优势。

拥塞驱动的布线策略

两大工具的布线引擎都采用了拥塞驱动的策略。Innovus的增量布线引擎允许在已有布线结果上做局部优化,降低全盘重布的开销;ICC2的DRT(深度学习布线技术)则引入了基于深度学习的拥塞预测模型来优化布线资源分配。

在运行时方面,有用户认为Innovus的吞吐量提升显著,特别是其并行处理能力提供了数倍于EDI的TAT(周转时间)改善;ICC2的架构重构也带来了速度提升,但用户反馈其QoR需要随着版本迭代逐步追赶。

设计收敛与签核的衔接

Innovus与Cadence的Tempus时序签核工具和Quantus寄生参数提取工具共享统一数据模型,这种“全流程一致”的架构有助于减少综合、PR到签核阶段之间的相关性问题。用户反馈Innovus到Tempus/Quantus的关联性“足够好”,且Tempus针对“最后一英里”时序收敛的ECO能力较强。

ICC2则配合Synopsys的PrimeTime进行签核时序分析。ICC/ICC2用户几乎都使用PrimeTime,而Innovus用户则主要配合Tempus,部分用户同时使用PrimeTime作为交叉验证。

选型建议:没有最好,只有最合适

在选择ICC2与Innovus时,设计团队通常考虑以下维度:

工艺节点与项目类型:10nm及以下先进节点项目,若对Multi-Patterning适应性要求较高,Innovus的着色感知流程可能更具优势;成熟工艺节点(28nm及以上)两大工具均有成熟表现。

现有工具生态:若团队已深度绑定Synopsys的前端工具(DC/VCS)和签核工具(PrimeTime),ICC2的集成度天然更高;若采用Cadence的全流程方案(Genus-Innovus-Tempus),Innovus的协同优势更明显。

设计复杂度与规模:超大规模SoC项目中,ICC2的NDM数据库在处理数亿门级设计上有架构优势;而Innovus的BPG优化策略在复杂多时钟域设计中可能获得更好的时序收敛效率。

团队经验与习惯:有用户指出,ICC/ICC2的流程对工程师的经验要求较高,“ICC/ICC2的块需要大量处理工作”;而Innovus在“开箱即用”的PPA表现上获得了部分用户认可。ICC2与Innovus的竞争,本质上是两种设计哲学的交锋——ICC2代表了架构重构、面向超大规模设计的思路,Innovus则体现了协同优化、算法创新的路线。对于后端工程师而言,理解两者的算法差异和适用场景,比单纯追求“哪个更好”更有价值。在先进工艺持续推进的背景下,工具之间的良性竞争正不断推动物理设计方法论的整体进步。

滚动至顶部