為什么串行接口比并行接口快?
2,所有高速串口都采用差分總線傳輸,外界噪聲同時(shí)加載到并行傳輸?shù)膬蓷l差分線上,相減之后可以抵消,對(duì)外部噪聲的抵抗能力強(qiáng)。
3,沒(méi)有時(shí)鐘skew問(wèn)題,因?yàn)樗揪蜎](méi)有同步時(shí)鐘,不存在時(shí)鐘和數(shù)據(jù)流的對(duì)齊問(wèn)題。只需要保證差分信號(hào)線是對(duì)齊的就行,這是很容易的,因?yàn)椴罘中盘?hào)線的值總是相反,相關(guān)性強(qiáng),易控制。一根線跳的時(shí)候,另一根線經(jīng)過(guò)一個(gè)非門的延時(shí)馬上會(huì)跳,這個(gè)非門的延時(shí)是很容易補(bǔ)償?shù)摹2⑿锌偩€最大的問(wèn)題就是多根線傳輸?shù)臅r(shí)候,無(wú)法保證所有的沿變都對(duì)齊,很有可能傳著傳著某些信號(hào)跟不上,落后了一個(gè)T,數(shù)據(jù)就傳錯(cuò)了。想控制也難,因?yàn)楦鱾€(gè)信號(hào)沒(méi)有相關(guān)性,互相的沿變本身就是獨(dú)立的,因?yàn)椴季€不同,很有可能一個(gè)跳的早點(diǎn),另一個(gè)跳的晚點(diǎn),再加上各個(gè)傳輸線電阻不同,噪聲不同,傳一會(huì)兒就分辨不出來(lái)哪個(gè)值對(duì)應(yīng)哪個(gè)周期。
4,線少,干擾少。并行傳輸,一般32根或者64根,一根線跳變,會(huì)給旁邊的線帶來(lái)噪聲,頻率越高,這種噪聲越大,很容易導(dǎo)致別的線值被篡改或者無(wú)法辨認(rèn),所以頻率不可能很高。串行傳輸一般就4根數(shù)據(jù)線,分成Rx兩根差分線和Tx兩根差分線,差分線總是往相反方向跳,可以抵消各自的跳變?cè)肼暎热鏡x的正極性發(fā)生跳變時(shí)會(huì)產(chǎn)生噪聲,這種噪聲可以被Rx的負(fù)極性以相反的跳變直接抵消掉(因?yàn)樗麄兪遣罘中盘?hào)對(duì)),總的噪聲為0,根絕了內(nèi)部噪聲。綜上,串口傳輸?shù)母鞣N優(yōu)勢(shì)使得其內(nèi)外噪聲皆免疫,又沒(méi)有信號(hào)對(duì)齊之憂,可以以極高的速率傳輸。比如SATA可以以6Gb的速率傳輸數(shù)據(jù)流,PCIE可以以8Gb的速率傳輸數(shù)據(jù)流。這種速率,并行傳輸是根本做不到的,更不要說(shuō)串行傳輸還能節(jié)省大量引腳。
為了提高單根線的傳輸速率,必須要講到我們模擬電路工程師的三大法寶,差分信號(hào)(differential signaling),時(shí)鐘-數(shù)據(jù)恢復(fù)(Clock-Data Recovery,簡(jiǎn)稱CDR),和信道均一化(Channel Equalization,Eq)
差分信號(hào)的好處不外乎抗干擾能力強(qiáng),引入的噪聲也比較小,雖然必須要兩根線,但速度從幾百M(fèi)提高到幾G,還是很值得的。
CDR的好處消滅了skew,減少了時(shí)鐘的功耗和噪聲(但多出了CDR電路本身的功耗和噪聲),同時(shí)避免了電磁干擾。想想在PCB或者電線上傳一個(gè)15G的時(shí)鐘,太帶感了,幸虧我們不用做這種事。
信道均一化相當(dāng)值得一提,這才是SerDes高速發(fā)展的決定性因素,所以我決定花點(diǎn)文字講一下。
一般來(lái)說(shuō),真實(shí)世界中的信道都是低通特性的,到處都是小電容,所謂絕緣體中的分子在高頻情況下吸收電場(chǎng)能量,再加上金屬線中的趨膚效應(yīng),所以我們想要的高頻信號(hào)走不了多遠(yuǎn)就不像樣子了,比如下面某信道的頻率特性(綠線)。
如圖所示,在對(duì)應(yīng)28Gbps的頻點(diǎn)上,信號(hào)能量被衰減了30db,電壓幅度只剩3%了;在對(duì)應(yīng)56Gbps的頻點(diǎn)上更慘,65db意味著信號(hào)電壓擺幅剩下不到千分之一。在這種信道中,發(fā)送端一個(gè)完美漂亮的數(shù)據(jù)眼圖:
到了接收端會(huì)變成這樣的一堆垃圾:
什么都辨認(rèn)不出來(lái)對(duì)吧。但是,經(jīng)過(guò)我們聰明的工程師們一番努力,均一化開(kāi)關(guān)打開(kāi),信號(hào)就變成了這樣:
既然有了三大法寶,他們只能用在串口上嗎?
答案很顯然,不是,串口可以用的,我們并口一樣可以用。那為什么并口不用呢?
差分信號(hào)這條不用說(shuō)了,并口的電線本來(lái)已經(jīng)夠多了,數(shù)目還要再翻一倍?系統(tǒng)工程師會(huì)殺人的。
CDR意義也不大,反正你并口速度也不高,一堆數(shù)據(jù)線中順便傳下時(shí)鐘,比做接收端做CDR再采樣每一位數(shù)據(jù)省事多了。
信道均一化屬于屠龍之技,不用差分信號(hào)的話也就傳幾百M(fèi),本來(lái)就沒(méi)啥衰減,用這個(gè)干啥?還是考慮下各種噪聲串?dāng)_的問(wèn)題吧。
于是答案就呼之欲出了。串口為啥比并口快?是因?yàn)榇诘奶匦院蛻?yīng)用場(chǎng)景,決定了它更加適合采用一些可以提高單根信道速率的設(shè)計(jì)方法,這些方法用在并口上并不合適。
從現(xiàn)有的應(yīng)用看來(lái),需要持續(xù)穩(wěn)定高帶寬的應(yīng)用,往往使用高速串行接口,一根帶寬不夠再加一根,各種視頻網(wǎng)絡(luò)應(yīng)用,基本如此。而一些歷史遺留速度不高的應(yīng)用,還有一些需要突發(fā)性高帶寬的應(yīng)用,并口仍然存活,比如很特殊的DDR。雖然XDR/GDDR/HMC/HCM這些新標(biāo)準(zhǔn)都在試圖引入SerDes, 但DRAM行業(yè)的特殊性還是讓并口繼續(xù)存活著。
評(píng)論