簽核與驗證

寄生參數提取(parasitic extraction)

當你畫原理圖時,一根導線只是一條不花成本的線——一個完美的連接,不帶來任何延遲。真實的金屬可沒這麼慷慨。最終版圖上的每一根導線都帶有電阻,因為金屬並不是理想導體;也都帶有電容,因為它緊挨著別的導線、又壓在矽基底之上,而任何兩個被絕緣體隔開的導體都會儲存電荷。寄生參數提取就是這樣一道工序:工具在繞好線(routing)的版圖上逐一巡查,看清每一根導線的精確幾何形貌——它有多長、多寬、走在哪一層金屬(metal layer)上、旁邊都有哪些鄰居在並排走線——再把那些隱藏的 R 與 C 值算出來。晶片本身分毫不變;提取只是去測量繞線早已搭好的東西。它的產物是一份寄生參數檔,通常採用與廠商無關的 SPEF 格式(Standard Parasitic Exchange Format),逐網列出每條網線的電阻和電容,好讓時序工具不必再靠猜,而是用上真實的資料。

這之所以重要,是因為正是這些寄生參數讓訊號慢下來。驅動單元必須先穿過導線自身的電阻,把導線的電容充起來,遠端才看得到新的電位;而一根又長又細的導線,其延遲大致隨長度的平方增長——導線長度翻一倍,延遲就可能翻到四倍。在繞線還不存在時,時序工具只能基於估算來工作(一個線負載(wire-load)的猜測,或一次快速的虛擬繞線);提取之後,它們換上了從真實形貌推導出來的資料,這正是為什麼繞線後(post-route)的時序才是你敢信的時序。提取還會捕捉一根導線與其緊鄰鄰居之間的電容,也就是那種讓一根翻轉的導線去干擾另一根的耦合(coupling)——這正是簽核後段做串擾(crosstalk)與訊號完整性(SI)檢查的原材料。

在底層,這裡有一個速度與精度之間的旋鈕。金標準是場求解器(field solver),它幾乎精確地求解三維金屬幾何形貌的電磁學問題,但慢得根本沒法在整片晶片上跑。所以量產工具大多採用基於規則、或者說模式匹配(pattern-matching)的提取:晶圓廠事先用場求解器把成千上萬種常見的「導線加鄰居」配置都表徵一遍,工具在你的版圖裡認出這些模式,直接查表取答案。你只把又慢又精確的場求解器留給那一小撮關鍵或不尋常的網線——在那些地方,資料哪怕只算偏一點點,都可能把你的時序拖垮。

wire delay ~ R*C, and for a uniform line of length L: delay ~ 0.5*R*C*L^2 (doubling L roughly quadruples it)

長導線為什麼吃虧:一根分佈式 RC 導線的延遲隨其長度的平方增長,所以提取得到的每條網線的 R 和 C,會直接餵進 STA 要簽核的路徑延遲裡。

提取的誠實程度,全看它的製程檔(tech file)有多準——那是晶圓廠提供的模型,描述每一層的厚度、間距和介電常數——所以一定要用與你的製程和角點(corner)相匹配的那套檔案來跑;要是餵給晶片錯誤的寄生參數,你的時序簽核就會錯得理直氣壯。

又稱
RC extractionextractionSPEF extraction寄生参数提取RC 提取寄生參數提取