最近正在做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),然後再點選你要看的波形,這時候眼圖就出現啦。
還是看不懂~ 哇哈哈
回覆刪除不好意思!
回覆刪除我懂你的意思,但是我不懂你的式子...
可以詳細的指導一下
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即可直接疊眼圖。
小弟用的是Hspice 2010.03
回覆刪除avanwaves已經不在內建, 現在已經都改用cscope
cscope也可以直接疊接眼圖嗎!?
版主回覆:(12/14/2010 04:08:17 PM)
我好幾年沒用cosmos scope了,
不過印象中是可以直接畫eye diagram的!!!!