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