通道仿真
正如上文提到的,DDR5協(xié)議草案中,有低誤碼率的要求。如果使用傳統(tǒng)的瞬態(tài)算法,就需要將5.3e9個(gè)bit逐一卷積計(jì)算,這將花費(fèi)大量的時(shí)間,與仿真盡早,快速評(píng)估設(shè)計(jì)的初衷不符,也往往很難實(shí)現(xiàn)。 為此,在DDR5的仿真中,就必須使用類似于廣泛應(yīng)用于SERDES仿真當(dāng)中的通道仿真技術(shù)。傳統(tǒng)適用于SERDES的通道仿真分成兩種模式,其一是逐bit模式(bit-by-bit),這種方式會(huì)得到單個(gè)bit的階躍響應(yīng),在通過(guò)仿真器根據(jù)輸入的bit序列,將對(duì)應(yīng)的階躍響應(yīng)進(jìn)行疊加。而另一種則是統(tǒng)計(jì)模式(statistical),即整個(gè)系統(tǒng)的響應(yīng),包括抖動(dòng),串?dāng)_,均衡等,都是基于單個(gè)bit的階躍響應(yīng),根據(jù)概率密度分布結(jié)果,經(jīng)過(guò)數(shù)據(jù)后處理獲得。由于DDR信號(hào)多為單端信號(hào),與SERDES的差分信號(hào)不同。因此,應(yīng)用在DDR上的通道仿真技術(shù),還需要有一些改動(dòng)。首先是通道仿真技術(shù)所需要的階躍響應(yīng)。差分信號(hào)的上升沿與下降沿是對(duì)稱的,因此只需要獲得單一的階躍響應(yīng)進(jìn)行通道仿真。而對(duì)于單端信號(hào)而言,上升時(shí)間和下降時(shí)間不再相同,這就意味著需要同時(shí)獲得上升和下降兩個(gè)階躍響應(yīng),同時(shí),仿真器需要在信號(hào)上升和下降時(shí)使用對(duì)應(yīng)階躍響應(yīng)進(jìn)行計(jì)算。
其次是時(shí)鐘問(wèn)題。SERDES信號(hào)往往是通過(guò)時(shí)鐘恢復(fù)電路(CDR),從信號(hào)本身恢復(fù)出時(shí)鐘信號(hào)。而DDR則不同,DQ信號(hào)由DQS信號(hào)觸發(fā)。這就需要仿真器具有時(shí)鐘觸發(fā)的功能。否則,如果依舊使用DQ信號(hào)本身進(jìn)行時(shí)鐘恢復(fù)的話,會(huì)造成時(shí)域的偏移。下圖中,紅色部分為DQ時(shí)鐘恢復(fù)后結(jié)果,藍(lán)色為DQ由DQS觸發(fā)后的結(jié)果??梢钥吹剑瑑蓚€(gè)結(jié)果在時(shí)間上存在一個(gè)偏移量。
最后是關(guān)于DDR的write-leveling功能。Write-leveling允許設(shè)備調(diào)整ClK信號(hào)與DQS信號(hào)之間的時(shí)間差。如果仿真器不能實(shí)現(xiàn)這個(gè)功能,會(huì)帶來(lái)不必要的調(diào)整。
在這里需要注意的是,如果需要使用Rx端DFE的自適應(yīng)模式,必須在bit-by-bit模式下進(jìn)行仿真。而statistical模式下,只支持固定抽頭系數(shù)的仿真。