基于FPGA的高速誤碼儀接收端設(shè)計(jì)方案的探討
引言
當(dāng)今通信領(lǐng)域的發(fā)展日新月異,光纖和衛(wèi)星通信已經(jīng)成為主要的通信手段,通信容量越來(lái)越大,傳輸速率越來(lái)越高,因此,發(fā)展能夠檢測(cè)系統(tǒng)高速誤碼性能的誤碼儀就顯得十分重要。在高速誤碼儀的設(shè)計(jì)中,接收端的設(shè)計(jì)歷來(lái)是難點(diǎn),本文將對(duì)這個(gè)問(wèn)題進(jìn)行探討,提出兩種可行的方案。
本文引用地址:http://m.butianyuan.cn/article/21000.htm1 高速誤碼儀接收端的主要功能和接口
1.1 主要功能
a)接收端能夠在fpga(現(xiàn)場(chǎng)可編程門陣列)芯片內(nèi)部進(jìn)行已知數(shù)據(jù)流(速率為3 00mbit?s-1/600 mbit?s-1)的比較以及錯(cuò)誤統(tǒng)計(jì);
b)能夠?qū)⒔y(tǒng)計(jì)結(jié)果在計(jì)算機(jī)中顯示;
c)能夠在計(jì)算機(jī)的控制下進(jìn)行工作。
1.2 接口
a)高速接口。lvds串行輸入2路,并行輸入8路(與lvds輸入共用2路),usb輸出1路。
b)低速接口。lvttl/lvcmos(3.3 v)輸入共用一路9針串口,cmos/ttl(5 v)輸人共用一路9針串口。
c)時(shí)鐘接口(采用同軸電纜傳輸)。2路lvds輸入,1路ttl輸入。
2 高速誤碼儀接收端的設(shè)計(jì)方案
兩個(gè)方案中fpga以xilinx公司的virtex-ⅱ為例。
2.1 方案1
方案1系統(tǒng)框圖如圖1所示。
2.1.1 分接系統(tǒng)
分接系統(tǒng)1接收300 mbit?s-1/600mbit?s-1串行數(shù)據(jù)和時(shí)鐘,將其分成2路并行數(shù)據(jù)。分接系統(tǒng)2將已同步的2路并行數(shù)據(jù)分成16路并行數(shù)據(jù)。分接系統(tǒng)采用xilinx公司給的參考ipcore。不過(guò),該ipcore是4路串行轉(zhuǎn)8路并行,需要將其轉(zhuǎn)換為1路串行轉(zhuǎn)2路并行和l路串行轉(zhuǎn)8路并行。
2.1.2 同步電路
同步電路如圖2所示。同步頭為31 bit,其中將16 bit最佳碼間隔1 bit插入,同步電路采用滑動(dòng)同步法,即將分接后的2路并行數(shù)據(jù)存入2個(gè)16 bit的移位寄存器中,分別與預(yù)先存入ram中的16 bit同步頭進(jìn)行比較(比較功能由比較器完成,即異或2組數(shù)據(jù),結(jié)果為全0即為相等,其他則為不等)。
如果一致,在定時(shí)信號(hào)的控制下,后方保護(hù)計(jì)數(shù)器加1,當(dāng)計(jì)數(shù)器的值為3時(shí),視為已經(jīng)同步,后方保護(hù)計(jì)數(shù)器清零,前方保護(hù)計(jì)數(shù)器開(kāi)始工作,同步指示燈亮,將數(shù)據(jù)分接為16路并行數(shù)據(jù)送到比較器,當(dāng)比較完1幀后,再與同步頭進(jìn)行比較。如果一致,在定時(shí)信號(hào)的控制下,前方保護(hù)計(jì)數(shù)器不計(jì)數(shù);如果不一致,前方保護(hù)計(jì)數(shù)器加1,如此循環(huán),當(dāng)前方保護(hù)計(jì)數(shù)器為3時(shí),視為失步,同步指示燈滅,停止比較數(shù)據(jù)。
如果不一致,則等待下一個(gè)時(shí)鐘上升沿到來(lái),再進(jìn)行比較。
這樣分配同步頭是為了將并行檢測(cè)同步頭變?yōu)榇袡z測(cè)同步頭,在2個(gè)16 bit的移位寄存器中,同步頭必定在其中一個(gè)移位寄存器的16 bit中。因此,只需同時(shí)檢測(cè)這2個(gè)移位寄存器的16 bit,即可判斷是否是同步頭。當(dāng)在奇數(shù)移位寄存器檢測(cè)到同步頭時(shí),從偶數(shù)移位寄存器的第16 bit和從奇數(shù)移位寄存器的輸入(17 bit,見(jiàn)圖3)輸出;當(dāng)在偶數(shù)移位寄存器檢測(cè)到同步頭時(shí),從奇數(shù)移位寄存器的輸入(17 bit,見(jiàn)圖3)和從偶數(shù)移位寄存器的輸入(17bit)輸出。它們的輸出在dcm的控制下分別分接為8路并行數(shù)據(jù)流,送到比較電路。同步頭的比較是將16 bit同步頭與待測(cè)數(shù)據(jù)按位異或,結(jié)果為全0時(shí)認(rèn)為相等。如圖3所示。
2.1.3 比較電路
比較電路如圖4所示,用來(lái)判斷誤碼數(shù),主要由異或電路、譯碼器、累加器和鎖存器組成。其信號(hào)流程為來(lái)自同步電路的16路并行數(shù)據(jù)在使能信號(hào)的控制下,與本地存儲(chǔ)器sram中的預(yù)存數(shù)據(jù)進(jìn)行16位異或,將結(jié)果送到譯碼器中譯碼,這里的譯碼是計(jì)算16 bit數(shù)據(jù)中1的個(gè)數(shù),然后將結(jié)果轉(zhuǎn)換為4位二進(jìn)制數(shù),譯碼器的輸出即為當(dāng)前的誤碼數(shù)(二進(jìn)制),送到累加器進(jìn)行累加,將結(jié)果送到鎖存器鎖存,在控制信號(hào)的控制下將結(jié)果送到pc中轉(zhuǎn)換為十進(jìn)制并顯示。
2.2 方案2
方案2系統(tǒng)框圖如圖5所示。
同步電路如圖6所示。同步頭采用16 bit最佳碼,串行數(shù)據(jù)接收到后先進(jìn)入16 bit移位寄存器,并行輸出到比較器,與預(yù)制同步頭進(jìn)行比較,前方保護(hù)計(jì)數(shù)器和后方保護(hù)計(jì)數(shù)器的流程同方案1,當(dāng)確認(rèn)同步后,將串行數(shù)據(jù)直接送到分接系統(tǒng)。
分接系統(tǒng)和比較電路同方案1。
2.3 2種方案的比較
從上述可以看出2種方案的特點(diǎn)。方案2原理較為簡(jiǎn)單,在低速誤碼儀設(shè)計(jì)中比較常見(jiàn),但由于本設(shè)計(jì)中要求的數(shù)據(jù)率較高,采用的fpga芯片又沒(méi)有集成串/并轉(zhuǎn)換硬件,因此,直接實(shí)現(xiàn)比較困難。目前,市場(chǎng)上已經(jīng)有集成串/并轉(zhuǎn)換模塊的fpga出售,不過(guò)價(jià)格已經(jīng)超出了預(yù)算。方案1的實(shí)現(xiàn)比較復(fù)雜,主要目的是先降低串行數(shù)據(jù)流的速率,再檢測(cè)同步頭,同時(shí),這也增加了邏輯的復(fù)雜度,所以不宜將路數(shù)分得太多(分2路為宜)。其優(yōu)點(diǎn)是可以最大限度地應(yīng)用目前廉價(jià)的低速fpga芯片來(lái)實(shí)現(xiàn)所需的高速誤碼儀。
3 結(jié)束語(yǔ)
基于fpga芯片的高速誤碼儀設(shè)計(jì)具有很大的靈活性,可以很容易地進(jìn)行改進(jìn);同時(shí),芯片內(nèi)部結(jié)構(gòu)和制作工藝的進(jìn)步會(huì)大大降低軟件設(shè)計(jì)的復(fù)雜度,也增強(qiáng)了系統(tǒng)的功能??紤]到成本的約束,設(shè)計(jì)并沒(méi)有采用更先進(jìn)的fpga芯片,而是在實(shí)現(xiàn)原理上尋求變通,這也是科研中常用的辦法。
評(píng)論