最近在進(jìn)行信號(hào)完整性仿真的仿真時(shí),被人問(wèn)到的碼型是什么樣子,一下子就有點(diǎn)懵了。發(fā)現(xiàn)自己的盲區(qū)有多了一塊,碼型是什么東西?所以上網(wǎng)收集整合了一些資料,發(fā)現(xiàn)這些東西都是平常自己用到的,只不過(guò)是沒(méi)有在意。下面簡(jiǎn)單介紹一下PRBS:
一、PRBS偽隨機(jī)二進(jìn)制序列
PRBS:Pseudo Random Binary Signal 也就是我們常說(shuō)的偽隨機(jī)碼,在DDR的仿真中可以經(jīng)常被用到。
PRBS 碼具有“隨機(jī)”特性,是因?yàn)樵?PRBS 碼流中,二進(jìn)制數(shù)“ 0 ” 和“ 1 ” 是隨機(jī)出現(xiàn)的,但是它又和真正意義上的隨機(jī)碼不同,這種“隨機(jī)”特性只是局部的,即在周期內(nèi)部,“0”和“1”是隨機(jī)出現(xiàn)的(碼流生成函數(shù)與初始碼確定后,碼流的順序也是固定的),但各個(gè)周期中的碼流卻是完全相同的,所以我們稱(chēng)其為“”偽隨機(jī)碼。PRBS 碼的周期長(zhǎng)度與其階數(shù)有關(guān),常用的階數(shù)有 3、7 、 9 、 11 、 15 、 20 、 23 、 31 ,也就是我們常說(shuō)的 PRBS7 、 PRBS9 、 PRBS11 、 PRBS15 、 PRBS20 、 PRBS23 、 PRBS31 。對(duì)于 n 階 PRBS 碼,每個(gè)周期的序列長(zhǎng)度為 2^n-1 ,在每個(gè)周期內(nèi),“ 0 ” 和“ 1 ” 是隨機(jī)分布的,并且“ 1” 的個(gè)數(shù)較“ 0 ” 的個(gè)數(shù)多一個(gè),連“ 1 ” 的最大數(shù)目為 n ,連“ 0 ” 的最大數(shù)目為 n-1( 反轉(zhuǎn)后就是 n-1 個(gè)連“ 1 ” 和 n 個(gè)連“ 0 ” ) 。
在對(duì)高速信號(hào)鏈路進(jìn)行誤碼測(cè)試時(shí),基本上都是利用 PRBS 碼流來(lái)模擬真實(shí)的線(xiàn)網(wǎng)碼流環(huán)境,因?yàn)樵诰€(xiàn)網(wǎng)中,所有的數(shù)據(jù)都是隨機(jī)出現(xiàn)的,沒(méi)有任何規(guī)律可言,而 PRBS 碼流在一定程度上具有這種“隨機(jī)數(shù)據(jù)”特性,二進(jìn)制“ 0 ”和“ 1 ”隨機(jī)出現(xiàn),其頻譜特征與白噪聲非常接近(白噪聲或白噪音,是一種功率波長(zhǎng)譜密度為常數(shù)的隨機(jī)信號(hào)或隨機(jī)過(guò)程。
相對(duì)的,其他不具有這一性質(zhì)的噪聲信號(hào)被稱(chēng)為有色噪聲。理想的白噪聲具有無(wú)限帶寬,因而其能量是無(wú)限大,這在現(xiàn)實(shí)世界是不可能存在的。實(shí)際上,我們常常將有限帶寬的平整訊號(hào)視為白噪音,因?yàn)檫@讓我們?cè)跀?shù)學(xué)分析上更加方便)。
PRBS 碼流的階數(shù)越高,其包含的碼型就越豐富,就越接近真實(shí)的線(xiàn)網(wǎng)環(huán)境,測(cè)試的結(jié)果就越準(zhǔn)確。
下面是prbs3的簡(jiǎn)單示意,當(dāng)然其中還涉及到了移位寄存器和運(yùn)算器等循環(huán),本文重要是簡(jiǎn)單介紹PRBS,其中的內(nèi)部原理大家可以自己研究一下:
二、仿真中的應(yīng)用
1.在我接觸到的DDR4中的信號(hào)完整性的仿真中,經(jīng)常是要查看數(shù)據(jù)和地址等相關(guān)的眼圖是否滿(mǎn)足要求,所以會(huì)在SystemSI中進(jìn)行模板搭建,然后添加激勵(lì)設(shè)置,每個(gè)不同的平臺(tái)要求不一樣,有的是要求跑256bit,有的是1000bit,但是這些碼型都是PRBS,如下:
2.下面ADS仿真中用到的PRBS設(shè)置,整個(gè)屬于激勵(lì)源,不僅可以使用于DDR仿真,也可以用于其他數(shù)據(jù)模擬使用: