Google adsense

2007年5月23日 星期三

如何在HSPICE中產生眼圖(Eye Diagram)

最近正在做PLL/DLL的設計,需要把輸出訊號用眼圖的方式表現來評估抖動(jitter)。
以下就是介紹產生眼圖的方法。


首先把下列紅色文字部分貼到你的netlist裡去,並做些許的修改。

.param period='10n $set eye diagram periodiod
.param t_start='0.1m' $set eye diagram start time
.probe tran eyetime=
+par('.5*(sgn(TIME-t_start)+abs(sgn(TIME-t_start)))*(TIME-t_start-period*int((TIME-t_start)/period))')


參數period和t_start必須依您的設計而修改。
periode是設定您輸出訊號的週期,如您的PLL/DLL輸出是100MHz的訊號,所以週期(period)要設為10n。
t_start是設定從何時開始產生眼圖,因為初期PLL/DLL還未鎖定(unlocked),所以把模擬初期的輸出訊號拿來產生眼圖是不必要的。
例如您的PLL/DLL需0.1ms才能鎖定,就把t_start設為0.1m。

當這兩個參數設定完成,就可以開始跑HSPICE模擬。
模擬結束後,請打開Awaves。
把模擬結果的參數eyetime設定為X軸(x-axis),然後再點選你要看的波形,這時候眼圖就出現啦。

3 則留言:

  1. 不好意思!
    我懂你的意思,但是我不懂你的式子...
    可以詳細的指導一下
    eyetime=par('.5*(sgn(TIME-t_start)+abs(sgn(TIME-t_start)))*(TIME-t_start-period*int((TIME-t_start)/period))')

    小弟感激不盡^^


    版主回覆:(05/31/2007 03:18:59 PM)


    這是以前awave無法直接疊眼圖時用的技巧,現在的waveform viewer都可以直接疊眼圖了,像Synopsys的WaveView Analyzer即可直接疊眼圖。

    回覆刪除
  2. 小弟用的是Hspice 2010.03
    avanwaves已經不在內建, 現在已經都改用cscope
    cscope也可以直接疊接眼圖嗎!?

    版主回覆:(12/14/2010 04:08:17 PM)


    我好幾年沒用cosmos scope了,
    不過印象中是可以直接畫eye diagram的!!!!

    回覆刪除