從PCIe探索彈性緩沖器真義
下面以兩個(gè)耳熟能詳?shù)慕涌跒槔?,來說明彈性緩沖器一般位于控制器中的確切位置。
本文引用地址:http://butianyuan.cn/article/9144.htm彈性緩沖器在不同接口中的位置
首先以USB2.0 Hub為例。眾所周知,Hub裝置的職責(zé)就是承上啟下,單進(jìn)多出,以擴(kuò)展連接設(shè)備的數(shù)量。USB接口最多可連接127個(gè)設(shè)備。而USB2.0的Hub又有別于上一代USB1.1規(guī)格,它將收進(jìn)來的封包去頭去尾,只讀取數(shù)據(jù)本身,然后以局部新的干凈時(shí)鐘信號(hào)將它輸出。因此,480Mbps可連續(xù)接5階Hub裝置依然保持480Mbps數(shù)據(jù)傳送暢通。
所以,USB2.0 Hub內(nèi)部的重發(fā)器(Repeater)區(qū)塊通常內(nèi)含彈性緩沖器,可用來補(bǔ)償Rcv_Clk及Xmt_Clk兩個(gè)時(shí)鐘信號(hào)差。
再以PCI Express為例。PCI Express采用內(nèi)置時(shí)鐘的8b/10b編碼方式,因此在接收端勢(shì)必要構(gòu)建一個(gè)時(shí)鐘數(shù)據(jù)回復(fù)CDR(Clock Data Recovery)回路,其中的彈性緩沖器也用來補(bǔ)償傳送時(shí)鐘f1與接收端時(shí)鐘f2的差異。
邏輯上,因?yàn)镕IFO兩端的時(shí)鐘存在差異,最后很有可能發(fā)生溢位(Overflow)或下溢(Underflow)現(xiàn)象。為了避免這種情況,EB彈性緩沖器通常會(huì)在特定的時(shí)間插入或移除特殊的符號(hào)(Symbol)。如此一來,用來補(bǔ)償兩端時(shí)鐘的差異就不用考慮額外的問題了。這也是EB彈性緩沖器名稱的由來。
彈性緩沖器的出現(xiàn)甚至可以回溯到60年代。1963年,Maurice Karnaugh獲得這個(gè)技術(shù)的專利,只不過當(dāng)時(shí)的應(yīng)用是在PCM電話網(wǎng)絡(luò)上。當(dāng)高速傳輸轉(zhuǎn)向串行方式時(shí),EB彈性緩沖器的價(jià)值再度顯現(xiàn)。
PCIe中的時(shí)鐘差
PCI Express采用的8b/10b編碼,輸出端與接收端時(shí)序的同步關(guān)系可看成是一種“源同步”,也是一種“時(shí)鐘傳遞”的數(shù)據(jù)傳輸協(xié)議方法。這與過去的PCI或PCI-X采用的共通時(shí)鐘方式是截然不同的。
為了方便記憶起見,最為簡(jiǎn)單的方法就是將“源同步”看成時(shí)鐘與數(shù)據(jù)的合成,都來自于輸出端的驅(qū)動(dòng)器就可以了。
PCI Express的傳輸速率是 2.5Gbps(波特率),容許的誤差范圍是
評(píng)論