什麼是時序平衡(Timing Balance)分析?
Programming Skill
我是初接觸這個領悟,請問在做後端優化時,常聽到「時序平衡」,這跟一般的 Setup/Hold check 有什麼不同?爬了一些文還是不太懂,有人可以解答嗎?
Taylor | 2026-03-04 14:02:50💬 Comments section
好喔 謝謝 有清楚很多
嗨!! Taylor
時序平衡(Timing Balance) 與一般的 Setup/Hold Check 最大的不同,在於它從「單一數值」轉向了「分佈管理」。
如果要講定義上的差異,Setup/Hold Check (驗證觀點): 關注的是 Worst Negative Slack。只要所有的 Path Slack > 0,工具就判定設計合格(Timing Met);
Timing Balance (優化觀點): 關注的是 Slack Distribution (餘裕分佈)。它負責分析全電路數萬條路徑中,Slack 分散的程度。
所以這種不平衡代表資源浪費,指的是那些 Slack 極大的路徑,通常使用了過大的 Driver (Cell Size) 或過低電壓的 Vt (Threshold Voltage)。這些單元雖然跑得快,但會消耗多餘的洩漏功耗 (Leakage) 與晶片面積 (Area)。
總之,Setup/Hold Check 是為了確保功能正確;而 Timing Balance 是為了在功能正確的前提下,將「過剩的時序資源」轉換為「實際的功耗與面積收益」。
如果有興趣可以到下載中心找 libMetric™ (User Guide P.8) 提供自動化的平衡分析,它會掃描 Cell Metric,找出那些「過度設計」的區塊,建議你換成面積更小、功耗更低的單元,在不影響時序的前提下優化晶片總成本。
希望有解答到您的問題~!!
📝 Post a comment
🛒 Visit DTCO Shop
Enjoy latest products, try for FREE!
libMetric™
Copernic™
GRO Compiler
Binning-PG™
GAN-VS™
DM-VS™
Explore More