時序收斂與靜態時序分析
保持時間違規(hold violation)
保持時間違規代表資料到得太早——快到新值衝過正反器、破壞了同一個正反器對前一個值的擷取,就像快遞員太心急,在你還沒簽收前就把昨天的包裹搶了回去。正反器需要資料在時脈邊緣後的一小段窗口(保持時間)內保持穩定;若某條又短又快的路徑讓下一筆資料太早湧入,擷取到的位元就會錯。關鍵在於:這發生在同一個時脈邊緣上,所以放慢時脈毫無用處——保持違規是結構問題,不是頻率問題。
保持違規在快製程角會更嚴重——高電壓、低溫、快製程——與建立時間恰好相反,這也是為何兩者都必須在多個製程角檢查。修法是刻意加延遲:在過快路徑上插入緩衝器或延遲單元、縮小驅動器、或重新平衡時脈偏斜。它們陰險之處在於:保持違規的晶片即使在實驗室慢速下也會無聲失效,而且不像建立違規,你無法靠單純調降時脈來測試繞過它。
在這條短路徑上插入約 50 ps 的延遲緩衝器,即可恢復為正的保持餘裕。
保持違規的修正通常在佈局與時脈樹合成後,當作一個近乎機械化的後期步驟——但過度修正會膨脹面積與功耗,而擺錯位置的延遲緩衝器又可能重新製造出建立問題,所以這兩種檢查永遠彼此拉扯。
又称
另见