線上影音

Home > ANSYS Designer 教學 > CMA (Chip Model Analyzer)

 

本文以2022R1介紹CMA(Chip Model Analyzer),一個CPM(Chip Power Model)的生成與編輯工具,用於在PI模擬的前期(early stage),能有效的考慮到IC的特性,幫助系統PI模擬(CPS PI simulation)的完善。

  1. 介紹

  2. 開啟CMA

  3. 新建CPM與存檔

    3.1 Pseudo CPM Create

    3.2 Pseudo CPM Extension

    3.3 Import the CPM just created

  4. 開啟CPM與編輯

    4.1 Original CPM Import

    4.2 Create Manual CPM

    4.3 Create Random CPM

    4.4 Create Envelop

  5. 問題與討論

    5.1 步驟3.1中,為何設定的Rdie是隨頻率增加而減少? (重要)

    5.2 步驟3.1中,即使已經設定Rdie與Cdie,但卻無法檢視?

    5.3 步驟3.1中,如何指定(修改)CPM中定義的電流時間長度?

    5.4 如何理解Rdie與Cdie於整個通道的PDN(PI特性)中,所扮演的腳色?

    5.5 Designer circuit能不能像CMA步驟4.2一樣,交錯混合兩種電流波形產生新的CPM電流? (重要)

  1. 介紹

    IC設計公司為了壓縮開發時程,會於IC設計未完成前,就開始系統端(封裝或3D IC)設計的進行。

    這種平行設計的方式,常為了避免對系統端的設計過度要求,或反之為了避免IC設計的晚期才意識到當前的系統端設計無法滿足整個通道的PI效能,而耽誤整顆IC下線(tape-out)的時程,故在IC設計的"前期",需要能提供一個"預估"的IC CPM模型,供系統端搭配做整個通道的PI模擬預估(含IC power/ground network effect)。

    CMA工具就是為了這目的而存在。

  2. 開啟CMA

    2.1 開啟CMA

    可從SIwave的[Tools]標籤分頁下,

    或在AEDT工作選單[Tools] \ [Chip Model Analyzer(CMA)]下找到

    2.2 設定工作路徑

    2.3 設定模擬器

    C:\Program Files\AnsysEM\v221\Win64\nexxim.exe

    2.4 建立新設計案

  3. 啟動CMA需要EBU "Enterprise" license (elec_solver_level3)

  4. 新建CPM與存檔

    3.1 Pseudo CPM Create

    1. 在[Current]標籤頁,可以選擇使用者自行定義或匯入Redhawk Dynamic analysis輸出的電流檔案。
      在此我們選擇[User Set]

    2. 預設有一組DC 0.55A、振幅450mA的1GHz電流成份,假設再加上一組DC 0.55A、振幅450mA的150MHz電流成份。

    3. 按[Add]添加後,最後DC電流合計1.1A,振幅合計900mA。

    4. 按[NEXT]切換到[Parasitic]標籤頁,設定Rdie與Cdie隨頻率變化的特性

    可以選擇輸入由Redhawk產生的.inc或.cdie,或使用者自行指定不同頻點看到的晶片端RC(Rdie與Cdie)。

    目前維持預設值,然後按[Generate]。

    為何上圖預設的Rdie設定,隨頻率增加而減少? refer to 5.1

    上圖的Model Type:Classic、Laplace、Foster決定.inc中RLC network的格式,常見的是選擇[Classic]。

    即使已經設定Rdie與Cdie,為何點選[Parasitic Characters]下的Rdie、Cdie,仍沒有資料? refer to 5.2

    預設時間長度1000ns如何修改? refer to 5.3

3.2 Pseudo CPM Extension

    基於已經定義的current (pseudo_cpm1),對其做envelop的定義

    1. 按右鍵選擇[Model Explorer]

    2. 依次選擇TR/pseudo_cpm1/TF/pseudo_cpm1分別定義上升/上平坦/下降/下平坦區的時間,按新增[Add]。
      四個區間定義正好是一個週期,使用[Ctrl]+[C]配合[Ctrl]+[V]把envelop profile定義複製貼上

      這步驟裡max. current自動取2A,是因為在步驟3.1中1.1A+900mA=2A

      這步驟裡min. current自動取0.2A,是因為在步驟3.1中1.1A-900mA=0.2A

    3. 按[Generate CPM],就會在預設的路徑下生成CPM。

      ...test1\chipmodel\cpm\pseudo_cpm1\manual_cpm1\export_cpm\

    4. 按[Export CPM Model],可以把CPM輸出到其他路徑 (此步驟非必要)

    在生成CPM前,如果上方選擇[Simplified],則CPM(.sp)中會以兩個電流乘積的方式描述envelop,如果選擇[General CPM format],則會以傳統I-T曲線定義描述CPM current profile。

上圖步驟2中按[CPM Properties],可以看到如下的顯示

[Current Signature]下選擇[Full Current],可以看到如下顯示最終的電流波形

3.3 Import the CPM just created

    上圖[CPM Length]顯示的是CPM內定義的current profile時間repeat的部分。

    這CMP的電流果然就如同剛剛在步驟3.1~3.2所定義的

    這整個設計案存檔(.cps)後,下次只要透過如下步驟就可以開啟

  1. 開啟CPM與編輯

    接著來練習一些更厲害的進階招數...

    4.1 Original CPM Import

    建立一個新的test2 CMA設計。

    匯入附件,由RedHawk產生的cmp v2.0\lumped\single_net\demo_lumped_balanced_vcd_laplace.sp範例,內含VDD_15、VSS。

    4.2 Create Manual CPM

    使用步驟3.2內相同的[Manual CPM]編輯手法,但我們這次要用兩個CPM內定義VDD_15的current profiles,分別生成在turn-on週期,與turn-off週期不同的電流波形。

    也就是選擇import_cpm1為turn-on週期的電流波形,ExtraCpm1為turn-off週期的電流波形。

    這是最終產生的電流波形與頻率響應,明顯與步驟3.2是不同的。

    這招很好用,可以混合兩種不同的CPM電流,分別指定在不同的時間週期出現。

    4.3 Create Random CPM

     

    4.4 Create Envelop

     

  2. 問題與討論

    5.1 步驟3.1中,為何設定的Rdie是隨頻率增加而減少?

    Ans:這Rdie與Cdie是串聯跨接於VDD與VSS間的等效電路表示,Rdie相當於是Z11的實部,不是金屬導體的電阻R,故其隨頻率變化的趨勢不能以肌膚效應來理解。

    5.2 步驟3.1中,即使已經設定Rdie與Cdie,但卻無法檢視?

    Ans:CMA是靠步驟2.3內設定的Simulator計算Rdie、Cdie的,如果Simulator path沒有設定就會出現以下錯誤。

    另外要注意的是,Simulator path必須在import/Create CPM前設置好。

    5.3 步驟3.1中,如何指定(修改)CPM中定義的電流時間長度?

    Ans:這電流的時間長度是軟體決定,無法由使用者更改。

    當只有1GHz單一頻率組成時,時間長度是100ns,而本例使用1GHz+150MHz兩頻率組成時,current profile時間長度自動變成1000ns。

    5.4 如何理解Rdie與Cdie於整個通道的PDN(PI特性)中,所扮演的腳色?

    Ans:參閱本站專文

    定義目標阻抗的電源完整性優化設計

    5.5 Designer circuit能不能像CMA步驟4.2一樣,交錯混合兩種電流波形產生新的CPM電流?

    Ans:方法是人想出來的 ,可以。

    既然Designer circuit也做得到,那何必再學CMA呢?

    Designer circuit透過開關切換,把兩組不同CPM電流黏起來的方法,無法保證連接處電流的連續性,但CMA產生的可以,這是很大的好處。