Mentor HyperLynx 教學 > SI BoardSim

更 新 日 期:

  1. Translate PADS to ASCII BoardSim Board file ".HYP"

  2. Setting Stack

  3. Mapping Reference Designators to Component Types

  4. Editing Power-Supply Nets

  5. Selecting Nets

  6. Assigning IO models

  7. Setting Value of RLC Components

  8. Setup and run Interactive Simulation
    - By HyperLynx
    - By ANsoft SIwave and Designer/Nexxim

  9. Viewing Simulation Result

  10. Export to LineSim Free Form

  1. Translate PADS to ASCII BoardSim Board file ".HYP" 

1.1 先在PADS內把鋪銅補上:Tools \ Pour Manager ...

1.2 從PADS轉BoardSim Board file有兩個方法:

    方法一:Tools \ Analysis \ Signal/Power Integrity  (會產生.hyp與.pjh兩個檔,且以原檔名加_BoardSim命名)

     方法二:File \ Export \ Save As HYP Files \ Save (只會產生.hyp,且以原檔名命名)

-- Mode選[Power Integrity]

-- Plane Area and Copper Pours選[Export pour and plane area outlines]

其餘使用默認設定按[OK],程式即會開始執行PADS layout轉HyperLynx ASCII BoardSim file的動作。

HyperLynx v8.0以後的Mode才有[Power Integrity]這一選項,此選項共通適用於SI、PI的模擬需求

1.3 堆疊屬性設定

[方法一]會自動帶出如下的視窗,告訴我們設成"Plane"屬性的layer才能當reference layer,並且程式會分析PCB每一層layer金屬所佔比例,建議金屬涵蓋率高的layer設成reference,如下所示。因四層layer的金屬涵蓋率都很高,軟體建議我們把top、bottom layer也設成"Plane"屬性,但如果全部layer都是"Plane" type沒有"Signal" type也不行,所以以下的建議值會是紅字。

做點小調整,把top、bottom layer設成"Signal" type

確認資訊後按[Close],即會自動產生.pjh file,儲存元件、堆疊...相關設定。

平時可以透過Setup \ Stackup \ Check開啟此設定對話框。

1.4 開啟舊檔

開啟.hpy file,會出現如下對話框,確認要引入哪些board information,就默認設定按[OK]既可。

如果工作目錄下還沒有.pjh,則會自動帶出step 1.3的對話框,然後產生.pjh。

  1. Setting Stack 

2.1 堆疊一般設定

Setup \ Stackup \ Edit或是

第一頁[Basic]是整個堆疊與材質資訊的總覽,也可以直接修改設定。

"Loss Tangent"在第二頁[Dielectric]設定。

第三頁[Metal]則可以試算不同的堆疊與線寬所構成的走線特性阻抗。

如果右下角有顯示stackup error,可透過set 1.3檢查,務必做到"No errors in stackup"。

2.2 Solder Mask設定

Setup \ Options \ General... \ Default Stackup Tab

  1. Mapping Reference Designators to Component Types 

開啟檔案時,BoardSim會檢視reference designator的字首對應到component type。要編輯或新增元件的對應關係,可以從

Setup \ Options \ Reference Designator Mappings 設定

修改完成後,先按[OK]存檔,再重新打開檔案(re-open board) File \ Open Board ,才會套用新的mapping

  1. Editing Power-Supply Nets 

BoardSim在開啟檔案時就自動依以下三個方法自動識別出一些power-supply nets

- By Net Name:VCC、VDD、VSS、GND...

- 計算net所接的電容數目,超過某個設定值(3),即認定該net為power-supply nets

- 計算net的metal segment,超過某個設定值(>20,000),即認定該net為power-supply nets

可以從Setup \ Options \ General \ BoardSim tab修改threshold value of the number of capacitors (默認值是3)

  可以從Setup \ Options \ General \ Advanced tab修改segment threshold (不建議修改)

 

如果還有些power-supply net沒被自動抓出,那可以從Setup \ Power Supplies 設定

在上方[Select supply nets]內勾選的net,才會在中間[Edit supply voltages]框內出現,才可設定電壓值;<>表示默認電壓。

正確地定義power-supply net是一件很重要的事,因為BoardSim會視這些為DC voltage。而這項設定只有做PI simulation才有用,對SI沒作用。

用線寬來排序或是利用[Filter],可以很快找到未被正確識別為power-supply的net。

為何最下面的[Assign supply nets to plane layers]內沒東西?

  1. Selecting Nets 

Select \ Net by Name for SI Analysis... 

當選定一個net,與它關聯的associated nets也會一併選定打亮顯示,其他訊號則刷淡色。上圖所示為兩個net透過一顆Rs電阻串接,所以只要其中一個net選定,兩者都會打亮顯示。Associated nets的定義是:與所選定的net有透過被動元件連接,或是彼此定義成differential pair,或是彼此之間的耦合效應超過所定義的crosstalk threshold

這種做法只能選定一條net,不能複選net,如果想要選擇多條net並考慮它們之間的coupling effect,需要採用其他方法

多善用[Filter]+[Apply]的搜尋功能

也可以直接用滑鼠右鍵點另一個net trace,選擇[Select Net "xxx"]設定即可

  1. Assigning IO models 

6.1 套用內置的IO driver與terminator

Models \ Assign Models/Values by net...

6.1.1 先設定串聯電阻(串聯終端)值

6.1.2 在傳輸線輸入端放一個3.3V, tr=300ps的IO

6.1.3 設定此IO為output

6.1.4 設定此傳輸線的末端為pull-high 50歐姆終端。(也可設成pull-low to 0V)

6.2 套用IC的IBIS model

6.2.1 HyperLynx 配置 model 的預設路徑是 " C:\MentorGraphics\9.0PADS\SDD_HOME\hyperlynx\Libs ",這裡面有 HyperLynx所提供的所有模型。若要用其它的模型(S參數、IBIS ...),要放到這個目錄才可以被抓得到。HyperLynx 8.0 提供User 可以修改\新增這個Lib路徑的設定

Models \ Edit Model Library Path...

6.2.2 選用Micron DDRII-800 IBIS model為例,選DQ5 1066MHz不帶ODT的model,一端設output,一端設input。

HyperLynxNexxim使用IBIS有不同的概念,前者以元件Signal Name來對應model,後者以model name來對應

  1. Setting Value of RLC Components 

step 6.1.1可以單獨按設定。(Select Component Models or Edit Values)

  1. Setup and run Interactive Simulation 

Simulate SI \ Run Interactive Simulation (SI Oscilloscope)或是按

Stimulus內核選[Oscillator],設定輸入訊號的頻率,然後按[Start Simulation]即可得到時域的電壓模擬結果。

程式會保存兩次的模擬結果,[Latest Waveform] and [Previous Waveform],可以按[Erase]清除 [Previous Waveform]。

在[Show]功能框內的[Probes]\[Pin],每個pin是output、input或終端,都有對應的電路符號表示其狀態

8.1 如果改成150歐姆的戴維寧終端,相當於75歐姆ODT,則得到以下結果

8.2 如果IO改成Micron DDRII-800 1066MHz without ODT (sec.6.2),得到以下結果

做這個模擬步驟,請確認step 6.1.4的[Quick Terminator]設回none,否則模擬的結果會受影響

如果要考慮via效應,請按,或是從Setup \ Via Simulation Method

8.3 如果要跑眼圖,要先確認所購買的軟體license有[Advanced Scope],並且enable the function,然後如下所示操作,按[Configure]設定後,按[Start Simulate]

[Configure]內有個[Eye Mask Tab]可以設定眼圖的mask準位,把[Eye Mask]核選打勾即可看到

如果以眼圖的方式呈現模擬結果,那HyperLynx示波器面板的下方還有一個[Derate DDR2]的按鍵,可以判定目前可以跑到多少DDRII的速度等級

8.4 如果8.2的D5例子,改成Ansoft SIwave 4.0+ Designer/Nexxim v4.1,得到以下結果

當傳輸線的地平面完整,也不考慮太複雜的線與線之間的耦合效應時,HyperLynx與Ansoft的模擬結果非常接近

  1. Viewing Simulation Result 

綠色線是輸出端訊號(3.3V),紅色線是接收端訊號,因為有50歐姆3.3V pull-up終端,所以下拉不到0V。

黃色線是Cursor:滑鼠左鍵選定波形的兩點,會顯示橫向差[Delta T],縱向差[Delta V];點第三次則清除Cursor。

以下的四個旋鈕可以調整波形位置與尺規大小

 

按[Track Waveform],滑鼠游標會變成小方塊,此時選定要觀察的訊號波形,Cursor就會在該訊號軌跡上移動,再按一次[Track Waveform]則取消追蹤功能。另外畫面最下方還有一排跟示波器[Measurements]功能一模一樣的按鍵方塊,各位自己玩看看就知道

模擬結果可以按示波器旋鈕右邊的[Save/Load]儲存 。但只有[Standard]的模擬結果可以儲存,[Eye Diagram]的模擬結果無法儲存。

  1. Export to LineSim Free Form 

選好net,設定model及連結好相關的元件之後,可以選擇匯成 LineSim,整個 topology就很容易看。

Export \ Net To \ Free-Form Schematic

換層走線,top-to-bottom and bottom-to-top應該會經過兩個via,此處只顯示靠近output port的via,靠近input port的via沒顯示;因為該via直接貼著input port沒有線段長,所以LineSim轉檔時直接忽略了。這算是一個bug吧