時脈樹合成(CTS:Clock Tree Synthesis)是在佈局繞線工程中,自動產生將時脈訊號從 1 個來源(PLL 等)以幾乎相同時序送達晶片內數十萬~數百萬個正反器之繞線網路(時脈樹)的作業。時脈是為所有同步電路打拍子的訊號,若送達時序有偏差,電路便無法正確運作,因此在佈局與繞線之間作為獨立工程進行。
CTS 管理的主要指標有以下 2 項。(1)時脈偏移(skew):時脈到達各正反器的時間差異。偏移大會導致建立時間(setup time)或保持時間(hold time)違規。(2)延遲(latency,插入延遲):從來源到末端的延遲絕對值。越長越容易受電壓、溫度變異影響。CTS 工具會多級插入緩衝器或反相器,使導線長度與負載均等化以抑制偏移。
時脈樹在功耗中占很大比例。時脈訊號每個週期必定在 0 與 1 之間往返,導線電容的充放電持續發生,晶片動態功耗的 3~4 成有時會消耗在時脈網路上。因此,插入停止對未使用區塊供應時脈的時脈閘控(clock gating),以及將樹的級數與導線長度最小化,成為 CTS 的重要目標。
結構有幾種類型。通用的是將緩衝器排成樹狀的緩衝器樹,高效能處理器則使用將導線連成格子狀以平均化變異的時脈網格(clock mesh),或左右對稱的 H 樹。此外還有刻意加入偏移、把時間挪給較慢路徑的「有用偏移(useful skew)」手法,CTS 不僅用來減少偏移,也被用作時序最佳化的手段。