QoR 结果质量
概念解析
定义与起源
术语定义:QoR(Quality of Results,结果质量)是衡量EDA工具输出质量的综合性指标——不只是"快不快",而是"多好":时序slack分布、面积利用率、布线拥塞度、功耗分布、可制造性得分。QoR不是单一数值——它是一个多维度的质量向量。
QoR这个术语最早由Synopsys在2000年代推广——因为EDA工具的竞争焦点从"谁跑得更快"变成了"谁的结果更好"。在现代IC设计中,QoR直接翻译为PPA(功耗、性能、面积)——QoR越好,PPA越优。
核心要义
第一,QoR=PPA的量化表达。 时序QoR:WNS(最差负slack)、TNS(总负slack)、setup/hold violation数量。面积QoR:面积利用率(placement density)、布线溢出。功耗QoR:总功耗、峰值功耗、IR Drop热点数量。好的QoR意味着在PPA三角上站得稳。
第二,QoR的时间维度:runtime vs quality trade-off。 每个EDA工具都有一个"effort level"参数——低effort跑得快但QoR差,高effort跑得慢但QoR好。工程师的工作是在schedule允许的时间内拿到最好的QoR。
第三,QoR的signoff门槛:不是"尽可能好",是"满足需求"。 你的芯片目标频率2.0GHz——只要所有corner下WNS≥0ps——QoR就达标了。追求"WNS>+100ps"除了浪费面积和功耗没有其他好处。QoR的目标是"刚好达标"——不是"最优越好"。
实践应用
* WNS/TNS是QoR的第一仪表:WNS告诉你最差的那条路径——TNS告诉你violation的总严重程度。 * Congestion Map是QoR的可视化:红色区域=密度太高=布线绕远=时序恶化——调整floorplan分散拥堵。 * effort level不是越高越好:ultra effort可能比high多跑10倍时间但QoR只改善2%——找到effort的diminishing return点。
实战案例
- 某5nm芯片的QoR攻坚战:初始placement QoR——WNS -50ps、TNS -200ns。调整floorplan→WNS -30ps。开ultra effort→WNS -10ps。最后加CCD→WNS +5ps——QoR达标。关键:每一轮优化只改善一部分——累积效果才让QoR从fail到pass。 - Congestion毁了一个好floorplan:某芯片的placement density 85%看起来不错——但局部有3个congestion热点(密度>95%)。布线后这3个区域的WNS从-5ps恶化到-80ps。在热点区域降密度到80%→WNS回到-5ps。 - Effort Level的diminishing return:跑high effort→10小时→WNS -25ps。跑ultra→50小时→WNS -20ps。跑extreme→200小时→WNS -18ps。ultra到extreme几乎没收益——选ultra足矣。
原话引用
> "QoR is not a number — it's a conversation between the designer and the tool."—— Synopsys Fusion Compiler首席架构师, 2020 > "好的QoR不是工具跑出来的——是工程师和工具一起调出来的。"—— SNUG San Jose 2019 > "WNS=0ps不是目标——是底线。真正的好QoR是WNS≥0ps且面积和功耗也刚好达标。"—— 物理设计总监, 内部评审
常见误区
误区一:QoR=时序slack。 时序是QoR最重要的维度但不是唯一的。即使时序达标——如果面积超了10%、功耗超了15%——QoR也是失败的。
误区二:WNS达标=TNS可以不管。 WNS是0ps但TNS是-500ns——意味着500条路径的时序violation加起来有500ns。一条关键路径被修好后,剩下的violation可能在新一轮优化中变成新的WNS。
误区三:QoR是signoff阶段才看的。 QoR应该在每个设计阶段都检查——综合后的QoR、placement后的QoR、CTS后的QoR、布线后的QoR——每个阶段的QoR偏差提示这个阶段的配置是否有问题。
思想演变
- 2000s:QoR=时序:只看时序slack。EDA工具竞争焦点是"谁跑得快"。 - 2010s:QoR=PPA:面积和功耗加入QoR维度。多目标优化成为必须。 - 2015–2022:QoR加入可制造性:DFM、CMP、lithography effect——不只是"设计好",还要"造得出来"。 - 2022–present:AI驱动QoR预测:ML在placement阶段就预测最终QoR——提前预警问题区域。
相关论文
- 在45nm使用IC Compiler中Zroute技术改善布线QoR、DFM和运行时间 - DC-T与ICC之间相关性的系统分析 - 面向百万门级设计的多压缩器实现方案 - 层次化设计流程中的布局规划与版图优化:案例研究 - DC Graphical:承诺与现实 - 使用IC Compiler进行复杂SoC的层次化设计实现 - 与设计同步的DFT:层次化扫描压缩 - 利用IC Compiler中Zroute技术在45nm改善布线QoR、DFM和运行时间 - 复杂SoC使用IC Compiler的层次化设计实现 - DC Explorer:早期设计探索的快速综合 - 推动可验证QoR:使能形式等效验证 - 使用ICC II探索时钟宿的相对布局组 - 大幅提升版图效率的定制设计自动化实施方案——可视化辅助版图自动化 - 并发时钟与数据优化(CCD)技术亮点与瑞萨成功经验分享/SNUG_TPC_CCD_Gobok_2018_Synopsys_Inc_paper.md) - 仅H-Tree(无Mesh)常规MSCTS结合CCD用于ARM Cortex-A73多时钟设计的ICC II实现与QoR改进/SNUG_TPC_Htree_MSCTS_CCD_CortexA73_ICC2.md) - 收工!使用层次化ATPG提高生产力 - 2.1GHz ARM Cortex-A55功耗约束存储SoC的实现流程 - 28nm Cortex-A7核心的时钟树实现策略