【導(dǎo)讀】最近高速先生一直在“圍毆時(shí)序”,我們看過(guò)了外同步/共同步/源同步這些需要“繞等長(zhǎng)”的并行信號(hào)。與其說(shuō)是在“圍毆時(shí)序”,不如說(shuō)是在“圍毆等長(zhǎng)”,時(shí)序是“why”,等長(zhǎng)是“how”。雖然“why”不是很好理解,但是作為在閑暇時(shí)間還關(guān)注高速先生的有追求的工程師們,相信大家還是會(huì)將這一部分給啃進(jìn)去。
杭州南京的美人美景真是讓人流連忘返,與大家面對(duì)面的交流也讓小陳收獲頗多。也難怪古來(lái)皇帝都愛(ài)下江南,而廣東卻只是官員被流放的南蠻之地了。
最近高速先生一直在“圍毆時(shí)序”,我們看過(guò)了外同步/共同步/源同步這些需要“繞等長(zhǎng)”的并行信號(hào)。與其說(shuō)是在“圍毆時(shí)序”,不如說(shuō)是在“圍毆等長(zhǎng)”,時(shí)序是“why”,等長(zhǎng)是“how”。雖然“why”不是很好理解,但是作為在閑暇時(shí)間還關(guān)注高速先生的有追求的工程師們,相信大家還是會(huì)將這一部分給啃進(jìn)去。
串行信號(hào)是信號(hào)完整性知識(shí)的集大成者,雖然在設(shè)計(jì)上看起來(lái)是大道至簡(jiǎn)。它的“道”大到內(nèi)部復(fù)雜的硬件實(shí)現(xiàn),損耗串?dāng)_反射的管控,預(yù)加重均衡的設(shè)計(jì)等等;也簡(jiǎn)到只是一條差分線,只需要關(guān)注其信號(hào)質(zhì)量即可。
那SERDES的時(shí)鐘在哪里?我們一直說(shuō)串行信號(hào)的時(shí)鐘被嵌入在數(shù)據(jù)中,在剛接觸這一概念的時(shí)候,小陳就一直在想:“是嵌入在數(shù)據(jù)的哪一位?難道8b10b這些編碼是說(shuō)的8位數(shù)據(jù)2位時(shí)鐘?怎么樣用單純的兩位數(shù)據(jù)來(lái)讓接收端認(rèn)識(shí)到他是時(shí)鐘呢?”。直到后來(lái)才發(fā)現(xiàn),原來(lái)所謂的“時(shí)鐘嵌入在數(shù)據(jù)中”的意思,是時(shí)鐘嵌入在數(shù)據(jù)的跳變沿里。
來(lái),大家跟小陳玩?zhèn)€游戲。
現(xiàn)在我們面前有一組數(shù)據(jù),我們發(fā)現(xiàn)每次上升/下降沿之間的間隔時(shí)間是200ps,800ps,400ps,200ps,1000ps•••大家覺(jué)得這個(gè)數(shù)據(jù)應(yīng)該是多少速率的?
5Gbps,對(duì)吧?
現(xiàn)在我們面前又有另外一組數(shù)據(jù),其時(shí)間間隔為200ps,800ps,400ps,200ps,100ps•••那這個(gè)數(shù)據(jù)的速率是多少呢?
大家肯定會(huì)說(shuō),10Gbps嘛。
沒(méi)錯(cuò)!恭喜你已經(jīng)成為了一名合格的Clock Recovery,這就是一個(gè)簡(jiǎn)單的求最大公約數(shù)的游戲。
CDR全稱(chēng)是Clock and Data Recovery,除了時(shí)鐘恢復(fù)之外,還有數(shù)據(jù)恢復(fù)。第一步首先要將恢復(fù)出來(lái)的時(shí)鐘與數(shù)據(jù)的邊緣進(jìn)行對(duì)齊,然后再將數(shù)據(jù)給讀出來(lái)。在硬件原理上,使用PLL電路以及
觸發(fā)器即可。
知道了“時(shí)鐘由捕獲的上升下降沿間隔求最大公約數(shù)得來(lái)”,也就能想到在這個(gè)游戲中會(huì)碰到的困難了。實(shí)際上我們捕獲的時(shí)間間隔并不一定是真實(shí)時(shí)鐘周期的整數(shù)倍。很可能在接收端捕獲的時(shí)間是198ps,810ps,395ps,202ps,104ps•••聰明的小伙伴們可以知道,這個(gè)應(yīng)該還是一個(gè)10Gbps的信號(hào),恩,通常這種大小的偏差Clock Recovery也能認(rèn)出來(lái)。
但是如果接收端捕獲的時(shí)間間隔是168ps,830ps,360ps,235ps,70ps呢?不止是我們看著頭大,Clock Recovery看著估計(jì)也崩潰了。而且,這不止影響我們恢復(fù)出來(lái)的時(shí)鐘質(zhì)量,同時(shí)還會(huì)影響這個(gè)恢復(fù)出來(lái)的時(shí)鐘與數(shù)據(jù)進(jìn)行邊沿對(duì)位的過(guò)程。
所以在SERDES系統(tǒng)中,我們需要獲取一個(gè)好的時(shí)鐘,確保一個(gè)好的時(shí)序,需要做的是讓這種邊沿的偏差盡量小。也難怪在研究SERDES的時(shí)候,聽(tīng)到人們左一個(gè)jitter,右一個(gè)jitter地說(shuō)了。