An ECO Repair Method for Max Transition Violations in Multi-Load Nets
-
摘要: 在数字集成电路物理设计中,跳变时间是表征数字电路信号边沿过渡快慢的重要电气特性参数,最大跳变时间违例会导致门延迟增大、时序裕量下降,并可能带来额外功耗和信号完整性风险。传统修复方法通常依赖工程师对目标违例路径进行手工分析与处理,效率较低,且在多负载网络场景下容易出现修复不准确和冗余插入等问题。该文提出一种面向多负载违例路径的缓冲器插入优化方法,首先根据目标网络的物理路由信息恢复其物理拓扑结构,并利用向量投影法将违例端点映射到物理拓扑图中,再结合Dijkstra最短路径搜索恢复驱动端到目标违例负载端之间的实际物理路径。基于Elmore模型,将路径中点设为初始插入候选点,并构建缓冲器有效插入候选区间;针对多条违例路径共享公共物理段的情况,进一步提出基于候选区间交集的共享缓冲器优化策略,以减少冗余缓冲器插入数量。基于UMC 28 nm下5个设计的测试结果表明,该文方法对最大跳变时间违例的整体修复率达到98.98%,多负载违例路径修复率达到99.39%,且对整体时序扰动小,为复杂数字集成电路设计后期多负载网络最大跳变时间违例的ECO修复提供了具有实用性的思路。Abstract:
Objective Max transition violations in digital integrated circuit physical design may increase gate delay, reduce timing margin, and introduce additional power-consumption and signal-integrity risks. With technology scaling and the increasing complexity of high-performance SoC and CPU designs, long interconnects and heavy effective loads make such violations more prominent in post-routing optimization and ECO stages. Conventional repair methods usually rely on manual analysis or global heuristics, such as total-wire-length-ratio-based buffer insertion, which may lead to low repair efficiency, inaccurate repair targeting, and redundant buffer insertion in multi-load nets. Although these approaches can alleviate some violations in simple cases, they often fail to accurately identify the real violating branches in multi-load nets. As a result, repair targeting becomes insufficient and redundant buffer insertion is likely to occur. To address these limitations, a path-level buffer insertion method is proposed for max transition violation repair in multi-load nets. Methods The proposed method first reconstructs the physical topology of the target net from routing information extracted from the Design Exchange Format (DEF) file. Routing endpoints, turning points, and via connection points are abstracted as physical nodes with coordinate and metal-layer attributes, and a weighted undirected graph is established to preserve branch structures and cross-layer connectivity ( Fig. 3 ). To reduce the influence of small coordinate deviations, a spatial-tolerance-based node merging strategy is introduced during graph construction. Since the violation coordinates reported by timing analysis tools may not lie exactly on valid routed segments, a vector-projection-based coordinate snapping strategy is then adopted to align logical violation coordinates with the actual physical topology (Fig. 4 ). After endpoint binding, the actual physical propagation path from the driver to each violating load is recovered by Dijkstra shortest-path search. Based on the Elmore-model intuition that inserting a buffer near the midpoint of a long interconnect can effectively segment the distributed RC load, the midpoint of each recovered path is selected as the initial candidate insertion point. The exact insertion coordinate is obtained by accumulating segment lengths along the path and interpolating on the segment where half of the total path length is reached. To improve robustness, the initial candidate point is further expanded into an effective candidate interval with a spatial tolerance factor. For multi-load nets, different violating branches may share long common physical segments. Therefore, an interval-intersection-based shared-buffer optimization strategy is introduced to merge overlapping candidate intervals into shared insertion regions, thereby reducing redundant buffer insertion (Fig. 5 -Fig. 7 ).Results and Discussions Experiments are conducted on five designs, including CPU, SAS, RAID, PCIe, and HBA, implemented in the UMC 28 nm process. Synopsys IC Compiler II is used for physical implementation, and PrimeTime is used for timing analysis. A violation-margin threshold of -8 ps is adopted, and only paths below this threshold are included in the repair and evaluation. The complete ECO flow retains the existing repair method for single-load nets and applies the proposed path-level method to multi-load nets. To illustrate the repair mechanism, a representative multi-load violating net is selected for detailed analysis. The net contains one driver and fourteen loads, among which thirteen violating load paths share a long common routed trunk and exhibit max transition violation margins ranging from -75.2 ps to -38.3 ps. If these paths are repaired independently, thirteen nearby buffer insertion demands are generated on the shared trunk. After interval-intersection-based merging, one shared buffer is sufficient to repair all thirteen violating paths jointly ( Fig. 8 ). This case study indicates that path recovery improves repair targeting, while shared-buffer optimization improves resource efficiency. Across the five designs, the complete ECO flow reduces the total number of max transition violations from 10,616 to 108, corresponding to an overall repair rate of 98.98% (Table 1 ). The CPU, SAS, and RAID designs are completely repaired, while only 17 and 91 violations remain in PCIe and HBA, respectively. Among the 8,216 multi-load violating paths, 8,166 are successfully repaired, corresponding to a multi-load violation repair rate of 99.39%. If these successfully repaired paths were handled independently, 8,166 buffer insertions would be required. After shared-buffer optimization, only 1,548 buffers are inserted, giving an overall compression ratio of 81.04%. The setup worst negative slack, total negative slack, and number of violating paths remain generally stable before and after repair, with only minor fluctuations observed in individual designs (Table 2 ). These results show that the repair flow does not cause obvious degradation in setup timing quality. Further analysis indicates that the residual violations in PCIe and HBA mainly occur when candidate buffer locations fall inside standard-cell placement blockages around hard macros or IP cores. Metal routing is allowed through these regions, but buffers cannot be legally placed, revealing a current limitation in the physical-feasibility handling of candidate insertion locations.Conclusions A path-level buffer insertion method is proposed for max transition violation repair in multi-load nets. By combining physical topology reconstruction, violation-coordinate snapping, shortest-path-based path recovery, midpoint-guided candidate generation, and interval-intersection-based shared-buffer optimization, the proposed method improves repair targeting and reduces redundant buffer insertion. Experimental results on five designs show that the complete ECO flow reduces the number of max transition violations from 10,616 to 108, achieving an overall repair rate of 98.98%. Among the 8,216 multi-load violating paths, 8,166 are successfully repaired, corresponding to a repair rate of 99.39%. For these successfully repaired paths, shared-buffer optimization reduces the number of buffer insertion demands from 8,166 to 1,548, corresponding to a compression ratio of 81.04%, without causing obvious degradation in setup timing quality. The remaining violations are mainly associated with standard-cell placement blockages around hard macros or IP cores, indicating that the physical-feasibility handling of candidate insertion locations should be further improved. -
Key words:
- max transition violation /
- ECO repair /
- shared buffer optimization
-
1 基于Dijkstra的最短路径算法
1 Initialize dist[n] ← ∞ for all nodes, dist[d] ← 0 2 Initialize prev[n] ← null, PriorityQueue ← {(0, d)} 3 While PriorityQueue is not empty: 4 (nd, u) ← PopMin(PriorityQueue) 5 If u == $ {l}_{i} $: break 6 For each neighbor v of u with edge weight w: 7 If nd + w < dist[v]: 8 dist[v] ← nd + w, prev[v] ← u 9 Push(PriorityQueue, (dist[v], v)) 10 $ {P}_{i} $ ← Backtrack(prev, d, $ {l}_{i} $) 11 $ {L}_{i} $ ←dist[$ {l}_{i} $] 12 Return ($ {P}_{i},{L}_{i} $) 表 1 不同设计的违例修复与共享缓冲器优化结果
设计 修复前违例数量(条) 修复后违例数量(条) 共享优化后
缓冲器数量(个)多负载网络 总违例数 单负载违例 多负载违例 总违例数 单负载违例 多负载违例 缓冲器压缩率(%) CPU 178 71 107 0 0 0 61 42.99% SAS 180 62 118 0 0 0 21 82.20% RAID 580 48 532 0 0 0 132 75.19% PCIe 2509 512 1997 17 9 8 409 79.44% HBA 7169 1707 5462 91 49 42 925 82.93% 注:逐路径独立修复时,每条成功修复的多负载违例路径对应1个缓冲器插入需求;共享优化后缓冲器数为采用候选区间合并机制后实际插入的缓冲器数量。缓冲器压缩率按照修复掉的多负载违例路径数与共享优化后缓冲器数计算。 表 2 不同设计修复前后的建立时间质量对比
设计 Setup WNS(ns) Setup TNS(ns) Setup NVP(条) 修复前 修复后 修复前 修复后 修复前 修复后 CPU –0.499 –0.504 –245.900 –245.100 1783 1772 PCIe –0.518 –0.428 –51.700 –52.200 590 616 HBA –0.580 –0.580 –324.300 –287.100 2279 2017 SAS 0.000 0.000 0.000 0.000 0 0 RAID –0.119 –0.114 –0.500 –0.400 13 11 -
[1] 田春生, 陈雷, 王源, 等. 基于图神经网络的电子设计自动化技术研究进展[J]. 电子与信息学报, 2023, 45(9): 3069–3082. doi: 10.11999/JEIT230266.TIAN Chunsheng, CHEN Lei, WANG Yuan, et al. A survey for electronic design automation based on graph neural network[J]. Journal of Electronics & Information Technology, 2023, 45(9): 3069–3082. doi: 10.11999/JEIT230266. [2] KAHNG A B. Panel statement: EDA needs at advanced technology nodes[C]. Proceedings of the 2024 International Symposium on Physical Design, Taipei, China, 2024: 63. doi: 10.1145/3626184.3639696. [3] TARAATE V. Design constraints and SDC commands[M]. TARAATE V. ASIC Design and Synthesis: RTL Design Using Verilog. Singapore: Springer, 2021: 139–151. doi: 10.1007/978-981-33-4642-0_10. [4] 刘峰. 集成电路静态时序分析与建模[M]. 北京: 机械工业出版社, 2016.LIU Feng. Static Timing Analysis and Modeling of Integrated Circuits[M]. Beijing: China Machine Press, 2016. (查阅网上资料, 未找到本条文献英文翻译信息, 请确认). [5] 陈春章, 艾霞, 王国雄. 数字集成电路物理设计[M]. 北京: 科学出版社, 2008.CHEN Chunzhang, AI Xia, and WANG Guoxiong. Physical Design of Digital Integrated Circuits[M]. Beijing: Science Press, 2008. (查阅网上资料, 未找到本条文献英文翻译信息, 请确认). [6] CHANG K and KIM T. Pre-route timing prediction and optimization with graph neural network models[J]. Integration, 2024, 99: 102262. doi: 10.1016/j.vlsi.2024.102262. [7] 冯善亮, 杨兵, 陈亮. 基于时间窃取的数字电路时序优化方法[J]. 微电子学与计算机, 2023, 40(8): 114–124. doi: 10.19304/J.ISSN1000-7180.2022.0619.FENG Shanliang, YANG Bing, and CHEN Liang. Timing optimization method for digital circuits based on timing borrow[J]. Microelectronics & Computer, 2023, 40(8): 114–124. doi: 10.19304/J.ISSN1000-7180.2022.0619. [8] WU Hongxi, HUANG Zhipeng, LI Xingquan, et al. AiTO: Simultaneous gate sizing and buffer insertion for timing optimization with GNNs and RL[J]. Integration, 2024, 98: 102211. doi: 10.1016/j.vlsi.2024.102211. [9] PU Yuan, JI Yuhao, YU Siying, et al. GPU acceleration for versatile buffer insertion[C]. Proceedings of the 2025 IEEE/ACM International Conference on Computer Aided Design (ICCAD), Munich, Germany, 2025: 1–9. doi: 10.1109/ICCAD66269.2025.11240837. [10] DU Yufan, GUO Zizheng, WANG Runsheng, et al. Differentiable physical optimization[C]. Proceedings of the 2025 IEEE/ACM International Conference on Computer Aided Design (ICCAD), Munich, Germany, 2025: 1–9. doi: 10.1109/ICCAD66269.2025.11240839. [11] 陈家瑞, 吴昭怡, 游勇杰, 等. 基于概率模型的集成电路寄生参数提取算法[J]. 电子与信息学报, 2025, 47(9): 3198–3207. doi: 10.11999/JEIT250458.CHEN Jiarui, WU Zhaoyi, YOU Yongjie, et al. A probability-based parasitic extraction algorithm for global-routed VLSI designs[J]. Journal of Electronics & Information Technology, 2025, 47(9): 3198–3207. doi: 10.11999/JEIT250458. [12] BHASKER J and CHADHA R. Standard cell library[M]. CHADHA R and BHASKER J. Static Timing Analysis for Nanometer Designs: A Practical Approach. New York, USA: Springer, 2009: 43–100. doi: 10.1007/978-0-387-93820-2_3. [13] HU Shiyan and HU Jiang. A fast general slew constrained minimum cost buffering algorithm[J]. Microelectronics Journal, 2009, 40(10): 1482–1486. doi: 10.1016/j.mejo.2009.08.003. [14] 张祥, 赵启林. 基于缓冲器的ASIC芯片时序优化设计[J]. 集成电路与嵌入式系统, 2024, 24(12): 33–37. doi: 10.20193/j.ices2097-4191.2024.0046.ZHANG Xiang and ZHAO Qilin. Timing optimization design of ASIC chip based on buffer[J]. Integrated Circuits and Embedded Systems, 2024, 24(12): 33–37. doi: 10.20193/j.ices2097-4191.2024.0046. [15] 秋小强, 杨海钢, 周发标, 等. 长互连链延时功耗建模与基于混合粒子群算法的优化[J]. 电子与信息学报, 2011, 33(6): 1481–1486. doi: 10.3724/SP.J.1146.2010.01114.QIU Xiaoqiang, YANG Haigang, ZHOU Fabiao, et al. Analysis of delay-power model of long chain and optimization based on hybrid evolution particle swarm algorithm[J]. Journal of Electronics & Information Technology, 2011, 33(6): 1481–1486. doi: 10.3724/SP.J.1146.2010.01114. [16] SAINI S. Buffer insertion as a solution to interconnect issues[M]. SAINI S. Low Power Interconnect Design. New York, USA: Springer, 2015: 57–74. doi: 10.1007/978-1-4614-1323-3_3. -
下载: