4.3 源同步接口仿真過程 源同步技術(shù)是指數(shù)據(jù)和時鐘/鎖存并行傳輸。由于源同步接口信號工作在“相對”的時鐘系統(tǒng)下,這樣對全局系統(tǒng)時鐘的skew要求就可降低,在時序方程中就不需要flight time(飛行時間)這一變量,傳輸速率主要由數(shù)據(jù)和時鐘/鎖存信號間的skew決定,這樣可以系統(tǒng)達(dá)到更高的傳輸速率。 源同步技術(shù)特點: l 時鐘/鎖存信號與數(shù)據(jù)一起傳送。 l 源同步技術(shù)中,接收端的建立和保持時間、skew決定了接口速度的極限,而走線長、Tco、器件本身的快慢不是影響接口速度的因素。影響速度的最主要因素是數(shù)據(jù)與時鐘/鎖存信號之間的skew,因此對數(shù)據(jù)和時鐘/鎖存信號間skew的約束是仿真中最主要做的工作。 l 迄今為止,每個源同步總線設(shè)計使用不同的方法,這就要求仿真環(huán)境必須能靈活適應(yīng)每種要求,Cadence的Sigxp工具提供自定義測量(Custom Measurement)這一功能。需要注意的是測量數(shù)據(jù)信號相對與時鐘/鎖存信號的skew,而不是相對于主時鐘;另外常常需要測量到die pad,把封裝的影響因素考慮進(jìn)去。 l 源同步接口一般速率高,這樣碼間干擾(ISI)就比較嚴(yán)重,所以經(jīng)常會用到偽隨機(jī)碼序列來模擬各種碼型的組合。在Sigxp中,可以通過設(shè)置Stimuli為Custom來實現(xiàn),但是加到若干位后就不可以加了,如果想要加入較長的碼序列,可以通過編輯拓?fù)湮募?.top文件)中Stimuli項PeriodicPatten下的序列來實現(xiàn)。一種簡單的方法是,使用偽隨機(jī)碼產(chǎn)生程序生成任意長度的偽隨機(jī)碼序列,然后拷貝到*.top文件的相應(yīng)位置。另外在 Sigxp中還可以通過眼圖分析仿真波形,通過對眼圖高度和寬度的分析,可以得到反射、衰減、抖動等對信號的影響。在 Sigwave中可以將仿真出的偽隨機(jī)碼序列的串行波形疊加成眼圖。在 Sigwave中GraphÆEye Diagram Performances中設(shè)置正確的信號周期,設(shè)置合適的 Offset值,以方便觀察,然后選擇GraphÆEye Diagram Mode,就可以得到相應(yīng)信號的眼圖。4.3.1 源同步時序公式 圖 4-6 為源同步時序示意圖,根據(jù)圖 4-6 可得出相應(yīng)的時序公式: 建立時間: Tvb_min+Tft_clk_min-Tft_data_max-Tsetup-Tsetup_margin>0保持時間: Tva_min-Tft_clk_max+Tft_data_min-Thold-Thold_margin>0其中: Tvb:vb為valid before的縮寫,表示驅(qū)動端數(shù)據(jù)在時鐘有效前多少時間值有效;可以理解為驅(qū)動端的建立時間; Tva:va為valid after的縮寫,表示驅(qū)動端數(shù)據(jù)在時鐘有效后保持有效的時間值;可以理解為發(fā)送端的保持時間; Tft_clk:時鐘信號的飛行時間; Tft_data:數(shù)據(jù)信號的飛行時間; Tsetup:接收端的建立時間; Tsetup_margin:接收端建立時間的冗余量; Thold:接收端的保持時間; Thold_margin:接收端保持時間的冗余量;4.3.2 源同步時序仿真過程 第一步:了解時序要求。 從數(shù)據(jù)手冊中查到相應(yīng)的時序參數(shù),得到信號的時序要求。因為時鐘和數(shù)據(jù)信號是由同一芯片產(chǎn)生,因而兩者所處的環(huán)境(如電壓、溫度等)相同,可以認(rèn)為兩者的 flight time值的最大、最小值同時發(fā)生??傻玫饺缦陆Y(jié)論:時鐘、數(shù)據(jù)信號線的飛行時間必須嚴(yán)格相等(即 Tft_data_min=Tft_clk_max) 。因此在本例的仿真中,我們先對時鐘、數(shù)據(jù)信號分別仿真,得到大致的拓?fù)浼s束,然后將時鐘數(shù)據(jù)放在一個拓?fù)鋬?nèi)進(jìn)行仿真,測量接收端時鐘數(shù)據(jù)的偏差,再用該偏差對時序進(jìn)行微調(diào)驗證。第二步: 時鐘拓?fù)浣⒉⒎抡?這一步主要是對時鐘的信號完整性進(jìn)行仿真,得到接收端的時鐘波形并檢查測量。拓?fù)浣Y(jié)構(gòu)如圖 4-7,波形如圖 4-8。第三步:數(shù)據(jù)拓?fù)浣⒉⒎抡?這一步主要是對數(shù)據(jù)的信號完整性進(jìn)行仿真,得到接收端的時鐘波形并檢查測量。拓?fù)浣Y(jié)構(gòu)如圖 4-9,波形如圖 4-10。第四步:時鐘、數(shù)據(jù)同時仿真 這一步中是將數(shù)據(jù)和時鐘信號建立在同一個拓?fù)渖希玫絻烧咴诮邮斩说牟ㄐ?,進(jìn)行比對,驗證時鐘與數(shù)據(jù)信號在接收端是否滿足時序要求。具體步驟如下。 a)建立拓?fù)浣Y(jié)構(gòu) 將時鐘、數(shù)據(jù)拓?fù)浣⒃谕粋€拓?fù)渖?,實現(xiàn)方式是在數(shù)據(jù)和時鐘信號間并一個無窮大電阻。拓?fù)浣Y(jié)構(gòu)如圖 4-11。圖 4-11 時鐘、數(shù)據(jù)仿真拓?fù)鋌)設(shè)置相應(yīng)的仿真參數(shù) 這一步驟中設(shè)置時鐘周期、測量周期、偏移量、數(shù)據(jù)信號波形等參數(shù),如圖 4-12。圖 4-12仿真參數(shù)設(shè)置c)仿真得出波形并驗證 仿真得到的波形如圖 4-13。由圖可知數(shù)據(jù)僅比時鐘超前 84.08pS,可忽略,也可在拓?fù)渲醒a償,如果時鐘與數(shù)據(jù)之間時間相差較大,就要通過調(diào)整拓樸結(jié)構(gòu)進(jìn)行改善。圖 4-13 時鐘數(shù)據(jù)同時仿真波形