EDA Cloud Full-custom Flow Outline 1. EDA Cloud 製程資料庫...……………………2 2. Laker OA Layout…………………………....4 3. Custom Compiler Schematic Editor, SAE and Laker OA SDL ………………………..... 8 4. Hspice ………………………………………18 5. Virtuoso OA Layout ………………………20 6. Virtuoso ADE……………………………….24 7. Calibre DRC………………………………...36 8. Calibre LVS………………………………….39 9. Calibre PEX…………………………………43 第 1頁 EDA Cloud Full-custom Flow 使用說明 1 EDA Cloud 製程資料庫: 1.1 登入至 TSRI EDA Cloud 後,開啟 terminal 後鍵入 help,即會顯示出 EDA Cloud 所支援的相關資料位置與相關指令 help 即會出現以下的四個項目 help PDK (鍵入該指令後,即會出現 Full Custom 製程相關資料) help CBDK(鍵入該指令後,即會出現 CBDK 製程相關資料) help gui_cmd (鍵入該指令後,即會出現 GUI 介面軟體呼叫指令,請注意 EDA Cloud 上之 GUI 介面軟體均不可背景執行,故請勿加”&”背景執 行符號) help batch_cmd(鍵入該指令後,即會出現 bacth mode 軟體相關 指令) 詳細內容請參考 EDA Cloud 使用者手冊文件內容 3. EDA Cloud 系統 使用說明 1.2 在 terminal 下鍵入 help PDK 後,即會出現相關 PDK files 的資料夾位 置與 PDK 檔案列表文件 help PDK 以 TN90GUTM 製程為例: TN90GUTM PDK files: /cad/PDK/TN90GUTM Protected PDK list: /cad/PDK/TN90GUTM/PDK_TN90GUTM.list 開啟/cad/PDK/TN90GUTM/PDK_TN90GUTM.list 即可看到相關 PDK 資料,下列出部份資料 nedit /cad/PDK/TN90GUTM/PDK_TN90GUTM.list& ==Laker========================================================== Technology file: /PDK/TN90GUTM/Laker/laker_90nm_MM_3XTM_1P9M_6X1Z1U_22b.tf == Spectre models================================================ modelcard: /cad/PDK/TN90GUTM/Spectre/crn90g_3d3_lk_v1d2_usage.scs corner: /cad/PDK/TN90GUTM/Spectre/crn90g_3d3_lk_v1d2.scs.header (列出 TN90GUTM 所提供的相關 Spectre corner 參數) 第 2頁 models: /cad/PDK/TN90GUTM/TN90GUTM_device_model (列出 TN90GUTM 所提供的相關 Spectre device model name) == Hspice models================================================= modelcard: /cad/PDK/TN90GUTM/Hspice/crn90g_3d3_lk_v1d2_usage.l corner: /cad/PDK/TN90GUTM/Hspice/crn90g_3d3_lk_v1d2.l.header (列出 TN90GUTM 所提供的相關 Hspice corner 參數) models: /cad/PDK/TN90GUTM/TN90GUTM_device_model (列出 TN90GUTM 所提供的相關 Hspice device model name) 1.3 將 PDK files 拷貝至帳號根目錄下: cp -r /cad/PDK/TN90GUTM ~ (~ 符號為根目錄之意) ls ~ (list 之意,查看是否將 TN90GUTM 資料夾拷貝至自己帳 號的根目錄下) 1.4 TSRI EDA Cloud 提供 nedit 文字編輯器,欲編輯文字檔案即可在 termianl 下打入 nedit 檔案名稱& (example: nedit inv.sp&)。 第 3頁 2 Laker OA Layout 2.1 請先將 PDK file 拷貝至根目錄下(相關路徑可酌參步驟 1-2),這章節以 TN40G 製程為例: cp -r /cad/PDK/TN40G ~ (步驟 1-6) 2.2 進到~/ TN40G/ Laker 下,先查詢確認是否已將 font.map 與 laker.dsp 檔拷貝至目錄下: cd ~/ TN40G/ Laker ls -al (查看 Laker 下相關檔案) laker.dsp (圖層顏色設定檔) font.map (字型設定) 2.3 在~/ TN40G/ Laker 下開啟 Laker OA 軟體 Rlaker_oa (開啟 Laker_L4 Home Page 視窗,在 EDA Cloud 請勿鍵 入’&’ 背景執行符號) nedit /cad/PDK/ TN40G /PDK_TN40G.list & 或是 cat /cad/PDK/ TN40G /PDK_TN40G.list 可找到 TN40G 製程 Laker 設定檔 technology file 所在之位置: Laker OA 可讀取 db(舊)與 oa(新)兩種格式的 technology file。不過, 所新建立的 library 元件庫就是 OA 格式,舊的 Laker 無法開啟。 第 4頁 新建 library 元件庫: Library New… Library Name 設為 TN40LAYOUT Technology Setting 選擇 ASCII file,但是不可以用 browse! 將 technology file 的路徑與檔名用滑鼠左鍵選取(成反白) 滑鼠游標移至欄位中,”按”滑鼠中鍵或滾輪(不是滾),路徑與檔名即可 複製貼上! 在 EDA Cloud 上不能由 Browse 找到。按”OK”後,即建立 library TN40LAYOUT。 欲知詳細訊息,點選 Home Page 左下角的 Message ICON,即可看到。 再點一次 ICON,Message 視窗即收合。 第 5頁 2.4 建立新 Cell,File Open…,點選剛建好的 library “TN40LAYOUT”, Cell 欄位填入 inv4,按”OK”後,出現 Question 對話盒。按”Yes”即可。 2.5 之後便可依正常程序畫 layout。例如畫 path。 2.6 DB technology file 所建 lib 由 Create Transistor 來實現 MOS layout。 如果是 OA technology file 有 iPDK,則改由 Create Instance 來 Create。 第 6頁 2.6 點選右下角的 Home Page 的 ICON 叫出 Home Page, File Export Stream,轉出 GDS 檔後,再根據本文件後所敘述之 7. Calibre DRC、 8. Calibre LVS、9. Calibre PEX 描述進行 Calibre 相關驗證。 2.7 在 Layout 視窗 Verification iCalibre Start RVE,將步驟 2.6 進行 Calibre 驗證後之結果匯入查看。 第 7頁 3 Custom Compiler Schematic Editor, SAE and Laker OA SDL 3.1 接續 2. Laker OA Layout 的設定,到前一章節 40 製程的 OA 工作目錄 cd cp ~/ TN40G/ Laker ../Virtuoso_OA/display.drf . (oa 圖層顏色設定檔) 在這個 OA 目錄進行準備工作。用文書編輯器 nedit/Rgedit/vi 編輯 lib.defs 內容,新增 INCLUDE 這行(如果沒有的話)。而第二行是前一 章節所建的目錄。舉例如下: INCLUDE $SYNOPSYS_CUSTOM_INSTALL/samples/lib.defs DEFINE TN40LAYOUT /project/dr00x/pw99/pw123x/TN40G/Laker/TN40LAYOUT 3.2 在~/ TN40G/ Laker 下開啟 Custom Compiler 軟體 Rcustom_compiler (在 EDA Cloud 請勿鍵入’&’背景執行符號) 3.3 由 Home 視窗,Tools Library Manager 在 Library Manager 視窗,File New Library… Library Name 設為 TN40proj Technology File 在 Custom Compiler Schematic Editor 先不設定, 選 None。然後按”OK”,建立新 library TN40proj。即使如此, Custom Compiler 所建立的 library 只能是 OA 的格式。 3.4 在 Library Manager 視窗, 在 libraries 欄位選 TN40proj(反白),File New Cell…,輸入 Cell Name: inv5,按”OK”。 接著在 Cells 欄位選擇 inv5(反白),File New CellView…, View Name 選 schematic,Editor 自動帶出 Schematic Editor, 按”OK”。即出現 inv5 schematic 視窗。 3.5 建立 inv5 的 Schematic。 MOS 選取 A. 沒有 iPDK-- Create Instance (i),選取”analogLib” Library 中的 pmos4 或 nmos4 cell。 B. 有 iPDK -- Create Instance (i),選取 iPDK Library 中的 cell(例如 pmos2v, pch, nmos2v, nch)。 填入 Model Name、填入 Width, Length 與 Multiplier 等參數。 注意: Synopsys 與 Cadence 的 iPDK 不能互通。 第 8頁 Add Pin 先加上 pin name,加 pin 前要先設定方向 Type,pin A 是 input,pin Y 是 output pin,VDDD VSSD 是 inputOutput。 完成 INV4 的 schematic 如圖所示。 第 9頁 3.6 建立 inv5 的 symbol view。在 Schematic Editor 的 menu, Design New Cellview From Cellview… 可調整 pin 腳位置。按”OK”後就會有以下的 Symbol Editor Window 出現。請自行調整 symbol 形狀。 3.7 Library Manager 執行 FileNewCell…,在建立 inv5 的 Library 下 建立一個模擬電路用的 Schematic Cell View,Cell Name 取名為 inv5_sim。在該 Schematic 視窗下,將建好的 inv5 cell 以 Add Instance 匯入(以其 Symbol View 代表該 cell),並匯入 analogLib 內的相關訊號 源、接地,與相關 cap, res 模擬用外接元件。 第 10頁 3.8 按下 Check and Save ICON,確認電路無任何 error 與 warning 後, 即可透過 Tools SAE 呼叫 Simulation & Analysis Environment, SAE 視窗,準備進行電路模擬。 3.9 開啟 SAE 視窗後,首先需設定 Simulator 與模擬結果所放置的資料庫 位置,在 ADE 視窗下按下 Setup Simulator… 即會跳出設定視窗, 在 Simulator 欄位確認是 HSPICE 軟體,Project Directory 欄位為 ~/simulation。 第 11頁 3.10 接下來在 Setup Model Libraries… 即跳出 Model Library Setup 視 窗,選擇欲模擬的 Section 設定(ex: top_tt),按 OK。 用 cat 或 nedit 開啟/cad/PDK/TN40G/PDK_TN40G.list 即可看到 相關 PDK 資料,以下列出部份相關資料 3.11 按”OK”設定完 Model Libraries,接下來是要設定 Analyses,在 SAE 視窗 Setup Analyses…,在跳出的 Edit/Create Analyses 視窗下, 選擇欲執行的電路模擬類別與相關設定後,按下 Apply 後即會在 SAE 視窗下的 Analyses 欄位顯示所欲模擬的種類。 第 12頁 3.12 在 SAE 視窗,由 Outputs Save Options (或 Outputs Add from Design 點選 schematic 上欲存之節點電流電壓資訊,按 ESC 鍵結束) 設定欲儲存的相關電壓、電流相關資訊。 第 13頁 3.13 完成相關模擬設定後,嘗試執行 SimulationNetlist and Run,則會出 現紅字 FAILED 訊息。click 紅字 FAILED,出現 Text Viewer 視窗點 選 run.log,錯誤訊息如下圖所示: 3.14 在 SAE 視窗,由 SimulationNetlist Display,跳出 input.spi 的 Text Viewer 視窗。請注意紀錄該檔所在目錄位置。不能執行的真正原 因是因為 HSPICE model 檔應 foundry 要求,放置於 EDA Cloud 後 台 Sever,前台無權限開啟。所以要改由 Qhspice 執行。請忽略該錯誤。 3.15 上一步驟所產生出來的檔案,放在 ~/simulation/TN40proj,inv5_sim,schematic/history_1/simulation/def ault/HSPICE/nomial/netlist 目錄裏。 開一個新 terminal 並進到此一目錄,在此目錄內呼叫 Qhspice 模擬。 Qhspice -i input.spi -o hspice 如果電路龐大可使用 Multi-Thread 功能,可加上參數 hpp (optional) Qhspice -i input.spi -o hspice -mt 第 14頁 8 -hpp Qhspice 建立一個目錄,名稱為 HSPICE_result,執行 showq 可看 job 是否已在執行。Qhspice 結束後,會把結果放在 HSPICE _result 目錄。 3.16 檔案不大時,或可把 HSPICE_rsult 下所有檔案複製回來 cp HSPICE_result/* . 用 Rcx 打 開 hspice_wdf.tr0 或 hspice_wdf.sw0( 跑 DC 結 果 ) 或 hspice_wdf.ac0(跑 AC 結果)等波形檔 Rcx 注意 : 在 EDA Cloud 上 foudry 要求 model 不可外洩,所以 Synopsys SAE 與 Cadence ADE 都因此中離,改手動使用 Qhspice 與 Qspectre。也就不易或難以 Annotation。 而在 SL 所用的製程,或在各校實驗室使用的 CIC18 虛擬製程,就能完全在 SAE 或 ADE 環境繼續模擬分析。 3.17 儲存設定後,離開 SAE 與 Custom Compiler Schmatic Editor。在啟動 Rcustom_compiler 的目錄 ~/ TN40G/ Laker 此一工作目錄下,編寫或 確認 model.map,基本內容舉例如下: 第 15頁 3.18 在工作目錄(~/ TN40G/ Laker)下,啟動 Laker OA Rlaker_oa 3.19 在 Laker OA 的 Home Page,File Expand Schematic…,將同學用 Custom Compiler Schematic Editor 所編的 schematic view,Expand 成 Laker OA 所需的 logic view 3.20 再次將 Laker technology file 的路徑與檔名用滑鼠左鍵選取(成反白) 滑鼠游標移至 ASCII File 欄位中,”按”滑鼠中鍵或滾輪(不是滾),路徑 與檔名即可複製貼上。在 EDA Cloud 上不能由 Browse 找到。按”OK” 後,即建立 library TN40_tst1,cell inv5 的 logic view。 3.21 在 Laker OA 的 Home Page,File Open…,選擇 library TN40_tst1, cell inv5 的 logic view,按”OK”後,出現 Question 對話盒,按”YES”。 第 16頁 3.22 在 Laker OA 使用 Laker SDL 功能實現 INV5 的 layout。所謂 SDL, 就是每塊 Layout 都帶有節點的資訊,構成 Schematic Driven Layout。 3.20 在 Laker OA Home PageFileExportStream…,轉出 GDS 檔後, 再根據本文件後所敘述之 7.Calibre DRC、8.Calibre LVS、9.Calibre PEX 描述進行 Calibre 相關驗證。 3.21 在 Layout 視窗 Verification iCalibre Start RVE…,將步驟 3.20 進行 Calibre 驗證後之結果匯入查看。 第 17頁 4 Hspice batch mode simulation 使用者如果不要使用 ADE 或 SAE 環境,要執行 Hspice batch mode 模 擬,也可依照以下步驟執行。 4.1 使用 Custom Compiler,FileExportNetlist…,或是 Virtuoso OA, File Export Netlist…,來進行 HSPICE/CDL out。 4.2 以 TN90GUTM 製程為例,在 terminal 下輸入 nedit /cad/PDK/TN90GUTM/PDK_TN90GUTM.list& == Hspice models================================================= modelcard: /cad/PDK/TN90GUTM/Hspice/crn90g_3d3_lk_v1d2_usage.l corner: /cad/PDK/TN90GUTM/Hspice/crn90g_3d3_lk_v1d2.l.header (列出 TN90GUTM 所提供的相關 Hspice corner 參數) models: /cad/PDK/TN90GUTM/ TN90GUTM_device_model (列出 TN90GUTM 所提供的相關 Hspice device model name) 4.3 在/cad/PDK/TN90GUTM/PDK_TN90GUTM.list 文件中列出 Hspice models 的檔名為 crn90g_3d3_lk_v1d2.l。 4.4 先編輯完電路模擬檔(ex: inv.sp 檔),其中在 simulation model 的部份, 鍵入.LIB crn90g_3d3_lk_v1d2_usage.l tt_lib,model file 只需填 入 model name 即可,不需要填入任何的路徑。 4.5 為縮減所產生的模擬檔,請在 Hspice 檔案內鍵入 .option post=2 probe print 設定以儲存必要輸出之模樣結果。 並利用.probe 與.print 指令,選取必要輸出的模擬結果,以減少模擬輸 出結果檔案大小。 4.6 在 terminal 下鍵入 help 模擬指令為 Qhspice。 batch_cmd,即可看到 Hspice batch mode 4.7 執行 Qhspice 模擬,請不要加-lis 指令(相關 list 檔會自動放置於在模 擬後系統產生的 HSPICE_result 資料夾內) ,而 multi-thread 功能部 份系統設定每個使用者最多只能使用 8 個 thread 的運算能力(ex:-mt 8) Qhspice inv.sp -mt 4 4.8 Qhspice 模擬後,系統會自動產生 HSPICE_result 資料夾,所有的模擬 第 18頁 資訊均會放置於該目錄內,EDA Cloud 提供兩套波形觀看軟體提供使 用者觀看波形,以下為開啟指令。 Rcx (Custom Explorer) Rcscope (Cosmos Scope) help gui_cmd (該指令可顯示 EDA Cloud 上所提供的 GUI 介面 軟體的開啟指令) 4.9 在 EDA Cloud 上使用 Custom Explorer 軟體觀看波形時,請不要使用 Wave Marching 功能,此功能會佔用大量的 IO 頻寬,請使用 Update Waveform Files (請按 Ctrl+A) 功能更新波形檔。 第 19頁 5 Virtuoso OA Layout 5.1 請先將 PDK file 拷貝至根目錄下(相關路徑可酌參步驟 1-2),這章節以 TN40G 製程為例: cp -r /cad/PDK/TN40G ~ (步驟 1-6) 5.2 進到~/ TN40G/ Virtuoso_OA 下,先查詢確認是否已將 cds.lib、 display.drf 與 .cdsinit 檔拷貝至目錄下: 5.3 cd ~/ TN40G/ Virtuoso_OA ls -al (查看 Virtuoso_OA 下相關檔案) cds.lib (virtuoso library 元件庫路徑相關設定) display.drf (圖層顏色設定檔) .cdsinit (Calibre 軟體設定檔) 在~/ TN40G/ Virtuoso_OA 下開啟 Virtuoso 軟體 Rvirtuoso (開啟 CIW 視窗,請勿鍵入&背景執行符號)。 nedit /cad/PDK/ TN40G /PDK_TN40G.list & 或是 more /cad/PDK/ TN40G /PDK_TN40G.list 可找到 TN40G 製程 Virtuoso OA 設定檔 technology file 所在之位置: 新建 library 元件庫: File NewLibrary… 第 20頁 Library Name 設為 TN40Project, Technology File 選擇 Compile an ASCII technology file, 按”OK” 出現 ASCII Technology File 欄位,但是不可以 Browse! 將 technology file 的路徑與檔名用滑鼠左鍵選取(成反白) 滑鼠游標移至欄位中,”按”滑鼠中鍵或滾輪(不是滾),路徑與檔名 即複製貼上! 在 EDA Cloud 不能由 Browse 找到。 從 CIW 叫出 library Manager: ToolsLibrary Manager…,可看 到 TN40Project library 已建立。 第 21頁 5.4 在 Library Manager 執行 FileNewCell View…,建立 INV4 的 layout。 5.5 之後便可依正常程序畫 layout。或由 Create Instance 來 Create layout: 第 22頁 5.6 5.7 在 CIW 視窗FileExportStream,轉出 GDS 檔後,再根據本文件 後所敘述之 7.Calibre DRC、8.Calibre LVS、9.Calibre PEX 描述進行 Calibre 相關驗證 在 Layout 視窗 Calibre Setup RVE…,將步驟 5.6 進行 Calibre 驗證後之結果匯入查看。 第 23頁 6 Virtuoso ADE 6.1 先於根目錄下建立資料夾作為放置 PDK 資料之資料夾位置,並將 PDK 相關資料拷貝至此,並在 Virtuoso 資料夾下開啟 virtuoso mkdir PDK (這是舉例!) cd PDK help PDK 這章節以 TN40G 製程為例。找出 TN40G 的 PDK files 路徑: TN40G: PDK files: /cad/PDK/TN40G 將 PDK files 資料庫拷貝至 PDK 資料庫下 cp -r /cad/PDK/TN40G/ . 6.2 移動到你的工作目錄,例如 cd Rvirtuoso 開啟 CIW 視窗。 6.3 在 CIW 視窗File NewLibrary… Library Name 設為 TN40Project Technology File 選擇 Attach to an existing technology library ./TN40G/Virtuoso_OA 因為 cds.lib 是由步驟 6.1 copy 而來,Library Manager 內可見到 tsmc 的 PDK library tsmcN45。這是我們要 attach 的 OA Library。 第 24頁 在 CIW 可 以 看 到 ’TN40Project’ successfully attached to technology library ‘tsmcN45’的成功訊息。 從 CIW 叫出 library Manager: ToolsLibrary Manager…,可看 到 TN40Project library 已建立。 6.4 在 Library Manager 執行 FileNewCell View…,建立 INV4 的 schematic 6.5 依據以下參考步驟,建立 INV4 的 Schematic。 第 25頁 PMOS4 請選 Create Instance (i),Library 選 tsmcN45 中的 pch cell,View 選取 symbol 後,並填入參數。 NMOS4 請選 Create Instance (i),Library 選 tsmcN45 中的 nch cell,View 選取 symbol 後,並填入參數。 Create Pin 加 pin 前要先設定 Direction,pin VDDD VSSD 是 inputOutput,pin A 是 input,pin Y 是 output。完成 INV4 的 schematic 如圖所示。 第 26頁 6.6 建立 INV4 symbol view。在 Schematic Editor 的 menu, Create Cellview From Cellview… 按”OK”後,可調整 pin 腳位置設定。再按”OK”後,就會有以下的 Symbol Editor Window 出現,請自行調整 symbol 形狀。 6.7 Library Manager 執行 FileNewCell View…,在建立 INV4 的 Library 下建立一個模擬電路用的 Schematic Cell View,Cell Name 取 名為 INV4_SIM。在該 Schematic 視窗下,將建好的 INV4 Cell 以 Create Instance 匯入(以其 Symbol View 代表該 cell),並匯入 analogLib 內的 相關訊號源、接地與相關外接元件。 第 27頁 6.8 按下視窗左端的 Check & Save ICON,確認電路無任何 error 與 warning 後,即可透過 Launch ADE L 呼叫 Virtuoso Analog Design Environment, ADE 視窗,準備進行電路模擬。 第 28頁 6.9 開啟 ADE 視窗後,首先需設定 Simulator 與模擬結果所放置的資料庫 位置,在 ADE 視窗下按下 SetupSimulator/Directory/Host… 即會 跳出設定視窗,在 Simulator 欄位確認是 spectre 軟體,Project Directory 欄位為 ~/simulation。 6.10 接下來在 Setup Model Libraries… 即跳出 Model Library Setup 視 窗,選擇欲模擬的 Section 設定(ex: top_tt),按 OK。 如果 Models 預設路徑不對,要點選上圖最下面反白”<Click here to add model file>”來新增,可在 terminal 用 cat 或 nedit 開啟 第 29頁 /cad/PDK/TN40G/PDK_TN40G.list 即可看到相關路徑資料,下面 列出部份資料 6.11 設定完 Simulator 與 Model Libraries 後,接下來是要設定 Analyses, 在 ADE 視窗 AnalysesChoose,在跳出的 Choosing Analyses 視窗 下,選擇欲執行的電路模擬類別與相關設定後,按下 Apply 後即會在 ADE 視窗下的 Analyses 欄位顯示所欲模擬的種類。 第 30頁 6.12 在 ADE 視窗,由 Outputs Save All (或 To Be Saved Select On Design 點選 schematic 上欲存之節點電流電壓資訊再按 ESC 鍵結 束)設定欲儲存的相關電壓、電流相關資訊。 6.13 完成相關模擬設定後,嘗試執行 SimulationNetlist and Run,則會跳 出 spectre.out 視窗,出現 crn45gs_2d5_lk_v2d0_shrink0d9_embedded_usage.scs 檔無法開啟的 錯誤(如下圖所示),這是因為.scs 檔應 foundry 要求,放置於 EDA Cloud 後台 Sever,前台無權限開啟的原因,請忽略該錯誤。 注意 : 在 EDA Cloud 上 foudry 要求 model 不可外洩,所以 Cadence ADE 與 Synopsys SAE 都因此中離,改手動用 Qspectre 與 Qhspice。也就不易或難以 Back Annotation。 而在 SL 所用的製程,或在各校實驗室使用的 CIC18 虛擬製程,就能完全在 ADE 或 SAE 環境繼續模擬分析。 6.14 知道原因後,改由 SimulationNetlist Create,跳出 input.scs 視窗。 請注意紀錄該檔所在目錄位置。 第 31頁 6.15 上一步驟所產生出來的檔案,放在 ~/simulation/INV4_SIM/spectre/schematic/netlist 目錄裏。 開一個新 terminal 並進到此一目錄,在此目錄內呼叫 Qspectre 模擬。 cd ~/simulation/SIMULATION/spectre/schematic/netlist Qspectre –format sst2 +escchars input.scs 如果電路龐大可加上參數使用 Accelerated Parallel Simulator (APS) modes (+aps),與 Multi-Thread 功能,可使用+mt =8),舉例 : Qspectre –format sst2 +escchars input.scs +aps +mt=8 Qspectre 建立一個目錄,名稱為 SPECTRE_result,執行 showq 可看 job 是否已 在 執 行 。 Qspectre 執行結束後 ,會把結 果檔案 複製 在 SPECTRE_result 目錄。 6.16 把 SPECTRE_rsult 下 input.raw 下所有檔案複製到../psf cp SPECTRE_result/input.raw/* 第 32頁 ../psf 6.17 回到 ADE 視窗,執行 ResultsSelect...,選擇 schematic 後按 OK,模 擬結果便貼回 schematic。 6.18 接下來觀看模擬結果。由 ResultsDirect PlotTransient Signal,就 會啟動 Virtuoso Visualization & Analysis XL File Open Results… 選擇 psf 目錄按 Open 在 Signal 子視窗 click 點開 tran 依次 Click 變數 IN 與 OUT,即看到波形 點右上角游標所指 ICON 來 split 波形,即如下圖所示 第 33頁 6.19 在 INV4 Schematic 視窗 Launch Layout XL,產生 INV4 之 Virtuoso Layout 視窗。 以下設定好,按 OK。 Cadence 即移動 Schematic 的視窗,呼叫出 Virtuoso Layout Suit XL 的視窗,把螢幕畫面左右對分。 第 34頁 6.20 在 INV4 Virtuoso Layout 視窗左下角,按 Generate All From Source 的 ICON,即產生 INV4 的 Layout。 6.21 由此產生的 OA Layout,每塊 Layout 都帶有節點的資訊。 6.22 在 CIW 視窗FileExportStream,轉出 GDS 檔後,再根據本文件 後所敘述之 5.Calibre DRC、6.Calibre LVS、7.Calibre LPE 描述進行 Calibre 相關驗證 6.23 在 Layout 視窗 Calibre Setup RVE…,將步驟 7 進行之 Calibre 驗證結果匯入查看。 第 35頁 7 Calibre DRC 7.1 請複製 ”/cad/PDK/TN90GUTM/Calibre/TN90GUTM_DRC.rule” 到 執 行 Qcalibre DRC 的目錄,並修改 TN90GUTM_DRC.rule 內容。 LAYOUT PATH "GDS 檔案名稱" LAYOUT PRIMARY "TOP CELL 名稱" // Do not modify next line INCLUDE TN90GUTM_DRC_RULE 7.2 欲設定 DRC Area 區域,可在 TN90GUTM_DRC.rule 加入以下指令 LAYOUT WINDOW CLIP YES LAYOUT WINDOW 區域左下角 X, Y 座標 右上角 X, Y 座標 EX: 7.3 LAYOUT WINDOW CLIP YES LAYOUT WINDOW -21.72 -20.915 27.52 39.685 開始執行 Qcalibre DRC 程式 Qcalibre -drc -hier -turbo_all TN90GUTM_DRC.rule Qcalibre 建立一個目錄,名稱為 CALIBRE_result,執行 showq 可看 job 是否已在執行。執行結束後,會把結果檔案複製在 Calibre_result 目 錄。 Qcalibre -drc -hier -turbo_all (執行 Hierarchical DRC 驗證。) Qcalibre -drc TN90GUTM_DRC.rule (執行 Flat DRC 驗證。執行 Flat DRC 不需加-flat 指令,且由於 flat DRC 不支援 multi-cpu,故不能加-turbo_all 指令) Qcalibre -help (可查看 Qcalibre 相關指令) 第 36頁 TN90GUTM_DRC.rule 7.4 Qcalibre DRC 驗證完成後,產生了 DRC_RES.db 檔,請透過以下步驟 將 DRC 結果導入 Laker 或 Virtuoso 軟體。 Layout 視 窗 (Virtuoso)CalibreStart RVE Open Calibre Database 選 擇 Database Type 為 DRC/REC 按 將 CALIBRE_result 內的 DRC_RES.db 檔選入。 7.5 CALIBRE_result 內的 DRC.rep 檔即為產生出的 drc.summary 檔,若 Qcalibre 執行失敗,請查看 calibre_DRC.log 檔。 7.6 可於 EDA Cloud Terminal 下鍵入 Qcalibre 令相關範例。 7.7 Auto_Dummy Script: 請 先 將 TN90GUTM_DummyMetal.rule 與 TN90GUTM_DummyODPO.rule 拷貝至執行 Qcalibre DRC 的目錄, 並修改 LAYOUT PATH 與 LAYOUT PRIMARY 欄位 第 37頁 -help 查看 Qcalibre 指 Ex: TN90GUTM_DummyODPO.rule LAYOUT PATH "GDS 檔案名稱" LAYOUT PRIMARY "TOP CELL 名稱" // Do not modify next line INCLUDE TN90GUTM_DummyODPO_rule Ex: TN90GUTM_DummyMetal.rule LAYOUT PATH "GDS 檔案名稱" LAYOUT PRIMARY "TOP CELL 名稱" // Do not modify next line INCLUDE TN90GUTM_DummyMetal_rule 修改完畢後執行 Qcalibre -drc Dummy.rule Ex: Qcalibre -drc TN90GUTM_DummyMetal.rule 則會在系統產生的 CALIBRE_result 資料夾內,產生相關的 dummy.gds 檔,將這些檔案拷貝至開啟 Laker 的資料夾下後,Stream in 至 Laker 內,用呼叫 Instance 的方式將 dummy cell import 至 layout 內,請將 dummy cell 的左下角座標設為(0, 0)即可。 第 38頁 8 Calibre LVS 8.1 請複製 ”/cad/PDK/TN90GUTM/Calibre/TN90GUTM_LVS.rule” 到 執 行 Qcalibre DRC 的目錄,並修改 TN90GUTM_LVS.rule 內容。 LAYOUT PRIMARY " TOP CELL 名稱" LAYOUT PATH " GDS 檔案名稱" LAYOUT SYSTEM GDSII LAYOUT CASE YES SOURCE PRIMARY " TOP CELL 名稱" SOURCE PATH "spice 檔案名稱" SOURCE SYSTEM SPICE SOURCE CASE YES TEXT DEPTH PRIMARY PORT DEPTH PRIMARY LVS IGNORE PORTS NO //PEX NETLIST "out_netlist" HSPICE 1 SOURCENAMES //PEX NETLIST "out_netlist" CALIBREVIEW 1 SOURCENAMES LOCATION //PEX NETLIST "out_netlist" SPECTRE 1 SOURCENAMES //PEX NETLIST "out_netlist" DSPF 1 SOURCENAMES //PEX NETLIST CREATE SMASHED DEVICE NAMES YES //VIRTUAL CONNECT COLON NO // Do not modify next 2line DRC ICSTATION YES INCLUDE TN90GUTM_LVS_RULE 第 39頁 8.2 若欲設定 LVS 相關設定,可依需要在 TN90GUTM_LVS.rule 等加入以 下指令: 指定 LVS Power nets 與 Ground nets: Ex: LVS POWER NAME “VDDD” “VDDA” Ex: LVS GROUND NAME “VSSD” “VSSA” 設定 ISOLATE SHORTS 與 RECOGNIZE GATES Ex: LVS ISOLATE SHORTS YES LVS RECOGNIZE GATES ALL 設定 Layout Virtual Connect: Ex: VIRTUAL CONNECT NAME ? (設定 Layout Connect all nets by name) Ex: VIRTUAL CONNECT NAME “VDDD” (設定 Layout Connect nets named: VDDD) 設定 Dummy Pattern LVS 設定 Ex: LVS FILTER UNUSED OPTION AB RC SOURCE Ex : LVS FILTER UNUSED OPTION AB RC LAYOUT (忽略 Layout 與 Netlist 上 AB, RC Dummy Pattern 之 Device) 相關 Dummy Pattern(如上述之 AB, RC 等 Dummy Pattern 設定) 之設定可開啟 Calibre LVS GUI 介面 SetupLVS Options Gates查看 第 40頁 8.3 開始執行 Qcalibre LVS 程式 Qcalibre -lvs TN90GUTM_LVS.rule Qcalibre 建立一個目錄,名稱為 CALIBRE_result,執行 showq 可看 job 是否已在執行。執行結束後,會把結果檔案複製在 Calibre_result 目 錄。 Qcalibre -lvs -hier TN90GUTM_LVS.rule (執行 Hierarchical LVS 驗證。) Qcalibre -lvs TN90GUTM_LVS.rule (執行 Flat LVS 驗證。Flat LVS 不需加-flat 指令,且由於 LVS 不支 援 multi-cpu,故不論是 Hierarchical LVS 或 Flat LVS 不能加turbo_all 指令) Qcalibre -help (可查看 Qcalibre 相關指令) 第 41頁 欲輸出 Calibre LVS 所 Extract 出的 Layout Netlist,請在執行 Qcalibre 動作時,鍵入: Qcalibre -lvs -hier -spice extract_spice -64 TN90GUTM_LVS.rule 其中 extract_spice 為欲輸出的的 Extract Layout Netlist 檔名 EX: Qcalibre -lvs -hier -spice layout.sp -64 TN90GUTM_LVS.rule 8.4. Qcalibre LVS 驗證完成後,產生了 svdb 資料夾,請透過以下步驟將 LVS 結果導入 Laker 或 Virtuoso 軟體。 Layout 視 窗 (Virtuoso)CalibreStart RVE Open Calibre Database 選擇 Database Type 為 LVS按 內的 svdb 檔選入。 將 CALIBRE_result 8.5. CALIBRE_result 內 的 lvs.rep 檔 即 為 產 生 出 的 lvs.report 檔, 若 Qcalibre 執行失敗,請查看 calibre_LVS.log 檔。 8.6. 可於 EDA Cloud Terminal 下鍵入 Qcalibre 相關範例。 第 42頁 -help 查看 Qcalibre 指令 9 Calibre PEX 9.1 請複製 ”/cad/PDK/TN90GUTM/Calibre/TN90GUTM_LPE.rule” 到 執 行 Qcalibre LPE 的目錄,並修改 TN90GUTM_LPE.rule 內容。 LAYOUT PRIMARY " TOP CELL 名稱" LAYOUT PATH " GDS 檔案名稱" LAYOUT SYSTEM GDSII LAYOUT CASE YES SOURCE PRIMARY " TOP CELL 名稱" SOURCE PATH "spice 檔案名稱" SOURCE SYSTEM SPICE SOURCE CASE YES TEXT DEPTH PRIMARY PORT DEPTH PRIMARY //PEX NETLIST "out_netlist" HSPICE 1 SOURCENAMES //PEX NETLIST "out_netlist" CALIBREVIEW 1 SOURCENAMES LOCATION //PEX NETLIST "out_netlist" SPECTRE 1 SOURCENAMES //PEX NETLIST "out_netlist" DSPF 1 SOURCENAMES //PEX NETLIST CREATE SMASHED DEVICE NAMES YES //VIRTUAL CONNECT COLON NO // Do not modify next 2line DRC ICSTATION YES INCLUDE TN90GUTM_LPE_RULE 第 43頁 9.2 若欲設定 LVS 相關設定,可依需要在 TN90GUTM_LPE.rule 等加入以 下指令: 指定 LVS Power nets 與 Ground nets: Ex: LVS POWER NAME “VDDD” “VDDA” Ex: LVS GROUND NAME “VSSD” “VSSA” 設定 Layout Virtual Connect: Ex: VIRTUAL CONNECT NAME ? (設定 Layout Connect all nets by name) Ex: VIRTUAL CONNECT NAME “VDDD” (設定 Layout Connect nets named: VDDD) 9.3 欲輸出 Calibre LVS 所 Extract 出的 Layout Netlist,請根據欲輸出之 Netlist 格式,移除欲輸出格式指令前的”//”註解符號,並在 out_netlist 欄位填入欲輸出的檔名。 Ex: PEX NETLIST "INV_PEX.sp" HSPICE 1 SOURCENAMES //PEX NETLIST "out_netlist" CALIBREVIEW 1 SOURCENAMES LOCATION //PEX NETLIST "out_netlist" SPECTRE 1 SOURCENAMES //PEX NETLIST "out_netlist" DSPF 1 SOURCENAMES //PEX NETLIST CREATE SMASHED DEVICE NAMES YES 啟動輸出檔案格式為 Hspice,輸出檔名為 INV_PEX.sp。 9.4 若欲設定進階 PEX 相關設定,可依需要在 TN90GUTM_LPE.rule 等加 入以下指令: 啟動 Enable TICER reduction below 1000Hz 設定 Ex: PEX REDUCE TICER 1000 啟動 Enable CC reduction Absolute: 0.1fF, Scale: 1 Ex: PEX REDUCE CC ABSOLUTE 0.1 SCALE 1 啟動 Enable MinCap reduction COMBINE 0.1 REMOVE 0 Ex: PEX REDUCE MINCAP COMBINE 0.1 PEX REDUCE MINCAP REMOVE 0 啟動 Enable MinRes reduction COMBINE 0.1 SHORT 0 Ex: PEX REDUCE MINRES COMBINE 0.1 PEX REDUCE MINRES SHORT 0 第 44頁 相關進階 PEX 設定可開啟 Calibre PEX GUI 介面 SetupPEX Options NetlistReduction and CC 欄位查看 9.5 開始執行 Qcalibre LPE 程式 Qcalibre -lpe TN90GUTM_LPE.rule Qcalibre 建立一個目錄,名稱為 CALIBRE_result,執行 showq 可看 job 是否已在執行。執行結束後,會把結果檔案複製在 Calibre_result 目 錄。 註:關於 Qcalibre,原本 calibre drc 及 lvs 的參數都可代入指令中,唯 獨 xrc 的功能改以 lpe 呈現,原因是 xrc 需做 3 步驟,不方便。 Qcalibre –lpe 後可加 –r、-c、-rc、-rcc 的參數,且會直接做完原本 xrc 的 3 個步驟。 Qcalibre 9.6 –lpe [-r|-c|-rc|-rcc] LPE_RULE_FILE 可於 EDA Cloud Terminal 下鍵入 Qcalibre 相關範例。 第 45頁 -help 查看 Qcalibre 指令 9.7 Reload Calibre View 至 Ricfb 之流程: 9.7.1 將 9.3 步驟下所設定輸出的檔案格式選為 CALIBREVIEW,然後 執行 Qcalibre lpe 動作輸出 CALIBREVIEW Netlist。 Ex: //PEX NETLIST "INV_PEX.sp" HSPICE 1 SOURCENAMES PEX NETLIST "out_netlist" CALIBREVIEW 1 SOURCENAMES LOCATION //PEX NETLIST "out_netlist" SPECTRE 1 SOURCENAMES //PEX NETLIST "out_netlist" DSPF 1 SOURCENAMES //PEX NETLIST CREATE SMASHED DEVICE NAMES YES 9.7.2 Layout 視窗(Virtuoso)CalibrSetupCalibre View 第 46頁 9.7.3 在 Calibre View Setup 視窗上作以下的設定: 在 CalibreView Netlist File 欄位按 Browse 鍵選擇到 9.7.1 步驟所 輸出的 Qcalibre –lpe 輸出的 CALIBREVIEW Netlist。 Cellmap File 選擇到 Calibre 資料夾下的 calview.cellmap 檔 Calibre View Type 選擇為 schematic 按下 OK! 第 47頁