基于FPGA的SoftSerdes設計與實現(xiàn)
1.4輸出彈性緩沖器
輸出彈性緩沖器的作用是把1 bit 622 Mb/s的數(shù)據(jù)串化為5 bit/124.4 MHz或8 bit/77 MHz的數(shù)據(jù)并輸出,每個通道有5 bit或8 bit寬的緩沖器。因為622 Mb/s的輸人數(shù)據(jù)流會偏離輸入?yún)⒖紩r鐘的相位達12UI左右,所以實質(zhì)上它們是異步的。正因為這個原因,在311 MHz時鐘的每一個周期,其采樣數(shù)據(jù)不一定是正常的2 bits,而可能在時鐘比數(shù)據(jù)慢時是3 bits,時鐘比數(shù)據(jù)快時為1 bit。狀態(tài)機產(chǎn)生的POS信號被放置在CLK311的時鐘域,以讓它控制3個8∶1的選擇器來產(chǎn)生R8,F(xiàn)8和M8信號,其中R8是當前有效的上升沿抽樣值,F(xiàn)8是當前有效的下降沿抽樣值,M8是要求3 bits位寬時的R8延時值。具體的跳變情況可通過狀態(tài)機的輸出信號右跳(SKIP RIGHT)和左跳(SKIP LEFT)來顯示。而不管是SKIP RIGHT情況下的3bits抽樣數(shù)據(jù),還是正常情況下的2 bits抽樣數(shù)據(jù),甚至是SKIP LEFT情況下的1 bits抽樣數(shù)據(jù),它們都被放入5 bits或8 bits的移位寄存器。彈性緩沖器有5 bit或8 bit的位寬區(qū)域,在復位時,讀和寫信號指向緩沖器的中間,緩沖器的初始狀態(tài)是半滿的,可以容納盡可能大的相位偏移量。彈性緩沖器的工作原理如圖5所示。本文引用地址:http://m.butianyuan.cn/article/191810.htm
2 仿真
SoftSerdes的仿真環(huán)境如圖6所示。發(fā)送方利用fifo造一些數(shù)據(jù)包,這些數(shù)據(jù)先經(jīng)過低速并行數(shù)據(jù)接口,然后用8b/10b編碼器對該并行數(shù)據(jù)進行編碼。接著由SoftSerdes模塊對該數(shù)據(jù)進行并串轉(zhuǎn)換;而高速串行數(shù)據(jù)則通過光纜被接收方接收,再通過SoftSerdes模塊對串行數(shù)據(jù)進行串并轉(zhuǎn)換.然后用8b/10b解碼器對該并行數(shù)據(jù)進行解碼,最后得到低速的并行數(shù)據(jù),這樣,通過對該數(shù)據(jù)進行誤碼檢測便可檢測SoftSerdes在實現(xiàn)串/并轉(zhuǎn)換過程中的誤碼率。
在圖7所示的仿真波形中,發(fā)送方可將64Mbps的低速并行數(shù)據(jù)通過SoftSerdes并串轉(zhuǎn)換為640 Mbps的高速串行數(shù)據(jù),而接收方則可將640Mbps的高速串行數(shù)據(jù)經(jīng)SoftSerdes串并轉(zhuǎn)換為64Mbps的低速并行數(shù)據(jù)。從仿真結果可以看出,SoftSerdes技術沒有使用傳統(tǒng)的CDR技術,而是通過320 MHz的本地時鐘來采樣數(shù)據(jù),從而實現(xiàn)數(shù)據(jù)的串并轉(zhuǎn)換。
3 結束語
由于SoftSerdes的整個設計都采用數(shù)字電路,所以具有比較高的噪聲容限和比較低的功率損耗,也易于用FPGA對其進行實現(xiàn),同時也可相對容易地完成產(chǎn)品升級。所以,該方法在通信、控制等需要用大規(guī)模FPGA進行設計的產(chǎn)品中有著廣泛的應用前景。
評論