精華區beta Electronics 關於我們 聯絡資訊
今天研究了一整個早上終於研究出來如何解決Cadence + Calibre 在跑Pre-Sim, LVS中export出來的SPICE MOSFET Model 不一致的情形。 研究動機: 我發現Calibre LVS有export from schematic view這個選項, 可是以TSMC原廠提供的製程檔並無法正常使用該功能, 所以我就想把MOSFET Model不一致的問題徹底解決。 狀況一: 我們在使用TSMC 0.35製程資料的時候, 會發現我們Schematic CDL Out的netlist中的MOSFET Model是PM與NM, 但TSMC提供的HSPICE Model file - mm0355v.l的MOSFET Model是PCH與NCH。 如果不把netlist裡的PM, NM改成PCH, NCH, 那麼在跑HSPICE作Pre-Sim就會找不到MOSFET Model。 要解決這個問題首先要知道我們從Schematic CDL Out netlist的時候,Cadence的auCdl程式會去讀取每個cell的屬性(稱作CDF), 之所以auCdl會輸出PM, NM MOSFET Model就是因為我們所使用的 analogLib library的pmos, pmos4, nmos, noms4 cells的CDF紀錄著 auCdl要輸出什麼樣的MOSFET Model。 如果我們想CDL Out時能輸出PCH, NCH,我們可以這樣做: 打開icfb > Tools > CDF > Edit ... > Browse > analogLib > pmos4 > close > 捲動視窗找到Simulation Information > Edit > Choose Simulator為auCdl > modelName PM改為PCH > OK > OK 關閉CDF設定。 然後把我們對CDF作的修改存到一個檔案,可以使用以下指令: cdfDumpAll("analogLib" ".simrc" ?level 'user ?edit t) 注意:請在icfb視窗中有一個文字輸入列(底下會有"mouse L: ..."字樣)輸入以上指令。 然後看一看你的家目錄底下有沒有產生.simrc這個檔案,在shell下輸入這個指令: ls .simrc 之後每次執行CDL Out就會自動載入.simrc的設定。 最後再CDL Out一次Schematic看看netlist的MOSFET Model有沒有變為PCH, NCH。 這樣以後就不用每次都要用文字編輯器修改netlist的MOSFET Model。:) 狀況二: 我們用.35製程在跑LVS時,若沒有把netlist的PM, NM改成P, N, 那麼Calibre LVS就會出錯。 這是因為LVS的時候,Calibre xRC會對layout export的gds資料作 extract的動作,然後輸出SPICE檔,但是MOSFET Model卻是P, N, 這時候我們就要修改TSMC提供的LVS command file。 其實Calibre xRC在extract layout的MOSFET時給的Model 是紀錄在TSMC提供的LVS command file, 所以我們用sed編輯器修改LVS command file, 請在bash輸入以下指令(不清楚csh能不能用,通常是可以): sed 's/MP(P)/MP(PCH)/' cali035pMM5V_2P4M.lvs -i sed 's/MN(N)/MN(NCH)/' cali035pMM5V_2P4M.lvs -i 也就是我們把P, N分別改成PCH, NCH。 (PEX照理也是要輸出PCH, NCH的Model, 不過TSMC .35的PEX command file - TSMC352P4MCalibre.pex 裡面本來就是PCH, NCH,所以這個部份不用改。) 這時候你可以打開你的layout,然後執行Calibre LVS, 然後在Inputs的部份Layout與Netlist都選擇Export from ..., 這時候你就會發現LVS的時候不用再手動去CDL Out, Calibre LVS會自動幫你export schematic成具有PCH, NCH model的netlist, layout也是自動化export。:) 至於為什麼我選擇把所有的MOSFET Model都改成PCH, NCH,而不改成其他的名稱 是因為我覺得要改TSMC HSPICE Model - mm0355v.l太難了, 所以乾脆就全部改成PCH, NCH。 參考資料: Cadence IC5033說明書。 Calibre 2006說明書。 -- Albert Einstein : If there is any religion that could cope with modern scientific needs it would be Buddhism. 《金剛經》一切有為法 如夢幻泡影 如露亦如電 應作如是觀 http://web.cc.ncu.edu.tw/~93501025/jg.doc -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.200.121
zxvc:不過還是提醒大家一下,製程資料最好不要亂改。 05/12 13:23
zxvc:如果不相信我改的部份,就最好不要使用。 05/12 13:23
zxvc:出了問題我不負責。雖然我覺得我自己並沒有亂改。 05/12 13:24
zxvc:如果亂改製程資料,可能在跑模擬時會造成與實際下線會有很大 05/12 13:25
zxvc:誤差。 05/12 13:27
kk123:幫你更正一下,Pre-sim是指未抽 RC 值,單純只吃spice model 05/12 14:11
kk123:所得之模擬結果;Post-sim 則含有寄生的 RC效應 05/12 14:12
zxvc:嗯,樓上,我知道Pre-Sim的Pre指的是在layout之前做的模擬。 05/12 14:25
zxvc:不知道我哪句話講錯了... 05/12 14:27
kk123:哈,我是覺得你第一句中的 Cadence + Calibre 在跑 Pre-sim 05/12 17:07
kk123:怪怪的....還是這是兩句話啊? XD 05/12 17:08
goukiman:沒講錯 只是有人亂入 05/12 17:10
Juneje:推推... 05/12 17:30
zxvc:那句話的確有點含糊,會讓人誤解為Calibre會用在跑Pre-sim。 05/12 19:10
zxvc:我那句話的原本的意思是在跑那些模擬過程會用到Cadence或 05/12 19:14
zxvc:Calibre,我沒有想強調那些模擬會用到哪些工具。 05/12 19:18
zxvc: ^^特定的工具。 05/12 19:21
ilovecatch:我覺得 善用 全部取代 就好了 不過也算另一種學習吧.. 05/12 19:24
zxvc:用文字編輯器全部取代也是可以。只不過如果常常使用這些EDA 05/12 20:34
zxvc:工具,我上面提供的方法只要痛一次就好了。 05/12 20:36
moonls:大推這篇文章 !! 05/12 21:14
moonls:版主一定要M ~ 這篇寫的太讚了 05/12 21:14
ArgoNautyoyo:a....0? 05/13 00:38