Google adsense

2015年5月10日 星期日

用WaveView Analyzer來疊眼圖(Eye Diagram)


有個不認識的學弟看了這篇後,在FB問我如何疊eye diagram。其實這是以前awave無法直接疊眼圖時用的技巧,現在的waveform viewer都可以直接疊眼圖了,像Synopsys的WaveView Analyzer即可直接疊eye diagram。

打開WaveView,並打開已經模擬好的transient result(ex; *.tr0)。這裡範例是模擬一個CMOS反相器(inverter)並觀察其輸出的眼圖,其輸入為2GHz的clock。

接著點選畫面上眼圖的小圖示。這時空白waveform上會有"Eye diagram"的字樣。

然後點選你要的看的節點,就會自動疊眼圖了。範例裡的節點是反相器輸出"eye"。這時所顯示出來的眼圖是週期不對的。因為是自動疊眼圖,假如你看的節點訊號其週期不穩定,疊出來的眼圖週期也就可能會不正確。

 在眼圖上按右鍵後出現選單,點選"Configure Eye"。

出現的選單可看到Eye Wdith(UI)的設定,現在是"Auto-Width",其偵測到的width (period)為4.999ns而頻率是2.0001GHz,和我們給2GHz輸入訊號有點差別。

這時我們必須手動設定。這裡我是設定頻率(User Frequency),把頻率設成2GHz。

然後按下"apply"後,就會用2GHz來疊Eye了。由於是給clock input且是在很ideal的環境下跑模擬(no power/ground noise、no SSO、no coupling effect等),所以自動抓到的eye width和真正的eye width並不會差太多(2.0001GHz to 2GHz);但如果是給PRBS這種隨機輸入,再加上其他non-ideal的效應,這時自動抓到的eye width就會差非常多,疊出來的eye diagram就會非常不正確。

這裡只是教你把眼圖給show出來,其實還有很多設定可以調整得到您需要觀察的眼圖。其他的設定,可以自行玩玩看吧。

8 則留言:

  1. Thank you for showing how to draw the eye diagram.

    回覆刪除
  2. 请问可以测量眼高眼宽和其他相关项嘛?

    回覆刪除
  3. 請問怎麼添加六角形的Eye maskask

    回覆刪除
  4. 您好,感謝您的分享,我想詢問像這種疊圖的方式所呈現的Jitter種類因該屬於何種?TIE jitter?Period jitter?

    回覆刪除
  5. 應該是period jitter, 但你給它reference edge, 就是TIE。

    回覆刪除
  6. 有辦法跑bathtub plot 、EBR嗎?

    回覆刪除