EYE Probe Summary 取得連結 Facebook X Pinterest 以電子郵件傳送 其他應用程式 - 5月 14, 2020 有個好用的小工具"EYE Probe Summary", 跟大家分享。 該工具可以把EYE Probe的模擬結果產生容易整理的報告。 一般通道模擬後,我們可以透過datadisplay顯示結果。 但很多情況需要把資料output出來做後處理,若僅是在結果上按export to csv,資料其實是散亂的。 ADS裡有一個EYE Probe Summary的元件,只要Schematic上有EYE_Probe,另外加上EYE Probe Summary,模擬完後就會在 /data 目錄下加入一個EyeProbeSummary.csv,會把模擬結果做更好的呈獻(特別是批次模擬(Batch Simulation))。 取得連結 Facebook X Pinterest 以電子郵件傳送 其他應用程式 留言
Channel Simulation: Bit-by-bit vs Statistical - 3月 03, 2021 通道模擬第一個會遇到的問題是:該跑bit-by-bit 還是 statistical? 先說結論,對於初學者,或是常常搞不清楚這兩者差別的工程師,我會建議用ADS ChannelSim初始設定,也就是bit-by-bit,因為基本上立於不敗。 接著我們談這兩者的差別,要從AMI模型開始說起。 每一個AMI模型都會有兩個保留參數,Init_Return_Impulse() 和 GetWave_Exists(),兩個參數可以為ture或false,因此會有四種可能,見下表。 但不能兩個都是false,所以剩三種可能,我們簡單討論一下分別代表的模型特性。 Type1: 典型的TX模型,LTI (Linear and Time-invariant線性非時變),可以透過impulse response來描述模型。 Type2: 典型的RX模型,NLTV(Non-linear and Time-variant非線性時變),包含了CDR和適應性的等化器,無法透過Impulse response來描述模型,需要透過GetWave()來處理並輸出波型。 Type3: 適用於LTI和NLTV兩種情況,但這需要特別小心,最好跟模型供應商確認正確的使用方法。 剛剛開頭有說過了,用bit-by-bit基本上立於不敗,那什麼情況可以用statistical呢? 1. TX和RX都是Type1 2. 沒有了... 你可能會傻眼,那豈不是不太可能可以跑statistical了嗎?是的,因為現在高速晶片基本上不可能是LTI,RX肯定會有CDR和adaptive-EQ,若跑Statistical就無法考慮這些NLTV的效應,因此必須跑bit-by-bit。 但接著會遇到下一個難題,應該跑多少個bit?ADS help上有說明,ChannelSim的極限是2e9 bits,但我的經驗是基本上無法達到,主要原因,第一是要跑太久,二來電腦也沒有這麼多空間存這麼多資料。多數SI工程師會跑1e6 bits,然後使用外插,這邊可以參考另一篇文章 " Extrapolate in bit-by-bit mode "。 最後給一個觀念,SI模擬看的是趨勢,並找出較好的solution,效率非常重要。因此一開始可以透過bit-by-bit模式,跑個1e6 bits,先看晶片是不是可以在某些情況將眼... 閱讀完整內容
Import Layout File in ADS - 3月 18, 2021 市面上layout格式不少,但基本上可以簡單分為Allegro(.brd)和非Allegro,非Allegro的格式以ODB++為主流,主流layout軟體都支援輸出ODB++格式,以下介紹.brd和ODB++兩種layout導入ADS的方式。 Allegro (.brd) 會需要用到Allegro extracta這個功能,此功能目前是不需要license,所以要確認電腦有安裝Allegro PCB Editor(Viewer不行,因為沒有extracta),但不需要有license。 因為Allegro在不同版本有不同的系統參數設定方式,以下分三個版本範圍介紹設定的方式。 16.x 不需要任何設定,照以下設定就可以導入ADS 17.0-17.2 需要在環境變數裡把Allegro執行位址加到PATH環境變數裡,我的17.2安裝位址是C:\Cadence\SPB_17.2\tools\bin 17.4 - 目前導入會有問題,建議安裝17.2以前的版本。 ODB++ (.tgz) 導入Layout後 ADS會依照Layout對stackup的設定,產生Substrate檔,建議確認是否正確。(比較常見的情況是layout工程師並沒有按照真實的情況設定疊構,這時候匯入ADS疊構資訊會是layout軟體的預設值,以下提供兩個建議,可以選擇適合的方式。 1. 請layout工程師正確填入疊構資訊。 2. 編輯ADS Substrate檔。 導入失敗 除了仔細看錯誤訊息之外,請先確認沒有違反以下幾點: 1. layout名稱有特殊字元,盡量只有英文字母/數字/下底線_就好。 2. layout存放路徑不能有空格也不能有特殊字元,例如/Program Files中間有空格就不好,要放在自己創建的目錄下,例如D:\ADS\WRK\ 之類的。 3. Layout存放路徑不能太長,這點同時也適用workspace的位置,盡量簡單,可以參考以下路徑,D:\ADS\project1。 閱讀完整內容
Probes in Memory Designer - 12月 28, 2022 DDR的分析,在很多面向都有別於SerDes,其中有一點就是Forward Clocking。這篇文章會深入說明ADS Memory Designer可以提供的眼圖分析以及對應的適用場景。 由於DDR的Clock跟訊號是分開的,一般說的EYE都是在說Stobed EYE,也就是以DQS/Clock來trigger DQ/CA而得到的眼圖。之前文章提到( 聊聊DDR AMI ),DDR5開始引入DFE,若有使用RX AMI,會需要遵守 BIRD209 的規範。 ADS Memory Designer支援Transient和DDRsim兩種引擎,DDRsim又分bit-by-bit和Statistical兩種模式。請以下圖搭配說明。 EYE: 過RX AMI前的眼圖,用系統的理想clock產生的眼圖。 EYE(RxOutput): 過RX AMI後的眼圖。只有DDRsim有。參考下圖。 Strobed EYE: 過RX AMI前,且參考指定clock產生的眼圖(需要在Memory Probe->Select Reference Signal設定) 。需要有waveform,所以DDRsim Statistical模式不支援。參考下圖。 以上三種眼圖分別在Data Display的命名也不一樣,在比較表中有標示。 以下總結適用的應用場景 DDR4以前:用Strobed EYE,以符合實際的晶片行為。 DDR5以後:用EYE(RxOutput),套用BIRD209針對clock的規範。 補充說明: 1. BIRD209 是DDR AMI很重要的一個規範,由於之前對於AMI都是依照Differential訊號做定義,所以並沒有single-end訊號怎麼透過外部clock來產生眼圖的機制。在BIRD209提出之前,ADS Memory Designer用GetWave2來支援這個功能(以區別傳統的GetWave)。BIRD209就是針對這個流程做標準規範,ADS2023 update1開始支援 BIRD209。下圖是BIRD209的運作流程圖,得到DQ和DQS訊號後,DQS會先經過AMI得到均衡後的Waveform,而這個訊號會提供給DQ AMI模型來計算EYE(RxOutput)。 2. Memory Designer 預設是看到package端的訊號,若要... 閱讀完整內容
留言
張貼留言