QoR 结果质量
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=时序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偏差提示这个阶段的配置是否有问题。