現代先進工藝下的后端設計都是在 MCMM 情況下設計的,所謂 MCMM 就是 muti-corner? muti-mode,用于芯片的不同工作模式和工作條件。
后端設計過程中,需要保證芯片在所有工作模式和工作條件下都能正常工作,工作模式一般只有幾種,可以全部驗證一遍;而工作條件則有無數種,不可能一一遍歷,所以我們一般選取極端工作條件,只要在所有極端條件下可以正常工作,那么其他所有工作條件下都不會有問題。
在ICC 中,MCMM 是用 scenario 來描述的,而scenario 是 mode 和 corner 的隨機組合,比如有兩個 mode 四個 corner,那么就需要定義 2x4=8 種 scenario。
此外,先進工藝中還會考慮不同的 RC條件,即 CMAX / CMIN ,這樣一共就需要定義 2x2x2=8 種 scenario。
常見的 scenario 定義如下圖:
?
?那么,在具體定義scenario 時,是如何去描述 mode、corner、rc 呢?
首先,mode 是由 sdc 決定的,一般情況下,designer 會提供至少兩份 sdc:? ?func.sdc? ?scan.sdc
corner 是由 operating condition 來描述的,而 opcn 則來源于 db 庫中的定義,包括溫度和電壓
RC 則是由 TLU+ 文件描述的,常見的 max_tlup / min_tlup,由 foundry 提供
?
?
?