基于FPGA的通用位同步器設(shè)計(jì)方案(二)
出處:電子愛好者博客 發(fā)布于:2013-10-12 10:08:51
2.2 模塊詳細(xì)設(shè)計(jì)
2.2.1 內(nèi)插濾波器設(shè)計(jì)
內(nèi)插濾波器是完成算法的,它根據(jù)內(nèi)插參數(shù)實(shí)時(shí)計(jì)算判決點(diǎn)的內(nèi)插值,即:

式中:mk 為內(nèi)插濾波器基點(diǎn)索引,決定輸入序列中哪些采樣點(diǎn)參與運(yùn)算,它由插值時(shí)刻kTi 確定;μk 為誤差間隔,決定了內(nèi)插濾波器的沖激響應(yīng)系數(shù)[1].kTi 和μk 的信息由內(nèi)部控制器反饋回來。
本設(shè)計(jì)的內(nèi)插濾波器采用基于4 點(diǎn)分段拋物線多項(xiàng)式的Farrow結(jié)構(gòu)實(shí)現(xiàn)。將式(1)變換為拉格朗日多項(xiàng)式,即令:

根據(jù)式(2)和(3),內(nèi)插濾波器程序?qū)崿F(xiàn)結(jié)構(gòu)如圖4所示。
從圖4可以看到,該結(jié)構(gòu)由1個(gè)移位器、5個(gè)觸發(fā)器、8個(gè)相加器、2個(gè)乘法器組成,比直接型FIR節(jié)省10個(gè)乘法器、4個(gè)相加器的資源。其中,除以2的運(yùn)算采用數(shù)據(jù)移位實(shí)現(xiàn),避免使用除法器。輸入的8位數(shù)據(jù)x,計(jì)算后得到10位的內(nèi)插值y 輸出。由于內(nèi)部所有寄存器經(jīng)計(jì)算后,均采用位數(shù),有效地減少了Logic Elements資源的占用。

2.2.2 定時(shí)誤差檢測(cè)設(shè)計(jì)
定時(shí)誤差檢測(cè)程序采用獨(dú)立于載波相位偏差的GA-TED算法。該算法每個(gè)符號(hào)周期只需要兩個(gè)插值,每個(gè)碼元周期輸出一個(gè)誤差信號(hào)μτ (n) ,即:

其中,y(n) 表示第n 個(gè)碼元選通時(shí)刻的內(nèi)插值,前后兩個(gè)內(nèi)插值的插值代表誤差方向;y(n - 1 2) 表示第 n 個(gè)和第n - 1 個(gè)碼元的中間時(shí)刻內(nèi)插值,代表誤差大小。
FPGA實(shí)現(xiàn)時(shí),為避免乘法運(yùn)算,采用y(n) 和y(n - 1)的符號(hào)來代替實(shí)際值[8],即采用式(5)計(jì)算誤差信息:

根據(jù)式(5)進(jìn)行程序設(shè)計(jì),誤差的正負(fù)方向判斷采用case 語句,當(dāng)y(n) 和y(n - 1) 的符號(hào)位分別為“0”和“1”時(shí),y(n - 1 2)的符號(hào)位不變;當(dāng)符號(hào)位分別為“1”和“0”時(shí),y(n - 1 2) 的符號(hào)位取反;當(dāng)符號(hào)位為“0”“0”或“1”“1”時(shí),令輸出的μτ (n) = 0.TED程序在1 Ti 的時(shí)鐘控制下進(jìn)行運(yùn)算,終得到29位誤差數(shù)據(jù),并以1 T 的速率即碼元速率輸出至環(huán)路濾波器電路。
2.2.3 環(huán)路濾波器設(shè)計(jì)
本文對(duì)Gardner算法中的環(huán)路濾波器進(jìn)行了改進(jìn),根據(jù)通用位同步器的要求,采用二階數(shù)字濾波器,并且開放濾波器參數(shù)(C1,C2 ) 和使能(c_en)端口,當(dāng)碼元速率變化時(shí),通過外部控制器來改變參數(shù),實(shí)現(xiàn)濾波器的通用性。濾波器結(jié)構(gòu)如圖5所示。

從圖5可以看到,濾波器的輸出為:

式中:Ko Kd 為環(huán)路增益;ζ 為阻尼系數(shù),取ζ =0.707;T 為采樣時(shí)間間隔,即相位調(diào)整間隔;ωn 為無阻尼振蕩頻率。
為減少資源占用,環(huán)路濾波器中的乘法運(yùn)算均采用移位方式實(shí)現(xiàn),處理后的誤差信息送給內(nèi)部控制器。
2.2.4 內(nèi)部控制器設(shè)計(jì)
內(nèi)部控制器根據(jù)定時(shí)誤差信息,調(diào)整插值頻率1 Ti和誤差間隔μk ,并輸出位同步脈沖BS,它包含NCO(Numerically Controlled Oscillator)和誤差間隔計(jì)算兩部分。該程序提供接口(頻率字fw 和使能端fw_en),外部控制器可以通過該接口輸入?yún)?shù)。
本設(shè)計(jì)中NCO 采用與文獻(xiàn)[10]類似的DDS(DirectDigital Synthesis)結(jié)構(gòu),其頻率控制字Fw 可由外部控制器設(shè)置,其結(jié)構(gòu)如圖6所示。
圖6中,M 為頻率控制字位數(shù),N 為相位累加器和相位寄存器的位數(shù)。這里取M = N = 23,采用遞減型的NCO,歸一化后相位累加器的累加值為:

式中:Fw 為頻率控制字;W (mk ) 為環(huán)路濾波器輸出的誤差信號(hào),二者由環(huán)路濾波器提供,決定了NCO的溢出周期。其中,當(dāng):


NCO 溢出信號(hào)即為提取出的位同步信號(hào)的2 倍頻(2BS),經(jīng)2分頻后可以得到位同步脈沖(BS)輸出,2BS同時(shí)作為內(nèi)插濾波器和誤差間隔計(jì)算的使能信號(hào)。
誤差間隔μk 在NCO 溢出后的下一個(gè)Ts 時(shí)刻進(jìn)行計(jì)算,環(huán)路鎖定時(shí):

將其截?cái)酁?位數(shù)據(jù)送給內(nèi)插濾波器。
本設(shè)計(jì)同時(shí)對(duì)代碼進(jìn)行了優(yōu)化,數(shù)據(jù)有效位的截取、內(nèi)插濾波器的結(jié)構(gòu)優(yōu)化、乘法采用移位計(jì)算代替等措施,有效地節(jié)省了硬件資源,優(yōu)化前和優(yōu)化后的資源占用情況對(duì)比見表1.

3 仿真和分析
3.1 Matlab仿真
本文采用Matlab對(duì)算法進(jìn)行理論仿真,輸入采樣值x(m) 為[-1,1]之間的隨機(jī)碼,采樣頻率上限為20 MHz,令碼元速率分別為2 Kb/s,600 Kb/s,10 Mb/s,環(huán)路濾波器、內(nèi)部控制器參數(shù)隨碼元速率變化。取內(nèi)插濾波器的插值輸出y(kTi) 做散射圖分析,驗(yàn)證對(duì)不同速率的基帶信號(hào),內(nèi)插值是否接近判決值,如圖7所示。
從圖7可以看出,在基帶速率和采樣率滿足奈奎斯特定理的條件下,該仿真輸出的內(nèi)插值均集中在理想值-1和1周圍,雖然有一定的模糊,且頻率越高,模糊程度越大,但碼元判決閾值在0值點(diǎn),所以判決值無需嚴(yán)格為±1,該圖表明對(duì)于較寬速率范圍內(nèi)的基帶信號(hào),輸出的插值均能夠較好地用于碼元判決,即算法正確。
3.2 FPGA仿真
在Quartus下對(duì)本設(shè)計(jì)進(jìn)行仿真?;鶐盘?hào)采用M 序列,由FPGA生成,令基帶碼速率分別為2 Kb/s,600 Kb/s,1 Mb/s,同時(shí)分頻器、NCO 及環(huán)路濾波器參數(shù)也做相應(yīng)設(shè)置,仿真結(jié)果如圖8所示。


在圖8中,x為基帶碼元序列,y為內(nèi)插值輸出,clk_t為基帶碼元時(shí)鐘,clk_bs為提取出的位同步信號(hào)。從圖中可以看到,clk_bs經(jīng)過定時(shí)環(huán)路調(diào)整,其上升沿逐漸向clk_t的下降沿(即判決點(diǎn))靠近,且隨著基帶碼元速率的變化,clk_bs也會(huì)隨之變化,但其中心頻率與clk_t相同,相位與判決點(diǎn)相差不超過半個(gè)碼元周期,可以進(jìn)行碼元判決,這表明本設(shè)計(jì)對(duì)2 Kb/s~1 Mb/s內(nèi)的基帶信號(hào),均可實(shí)現(xiàn)位同步。
4 結(jié)語
本文提出了一種基于FPGA的通用位同步器的設(shè)計(jì)方案。該設(shè)計(jì)方案中的同步器在傳統(tǒng)Gardner算法的基礎(chǔ)上進(jìn)行了改進(jìn),其中,內(nèi)插濾波器采用Farrow結(jié)構(gòu),定時(shí)誤差檢測(cè)采用GA-TED算法,環(huán)路濾波器和內(nèi)部控制器參數(shù)可由外部控制器設(shè)置,因而實(shí)現(xiàn)了較寬速率范圍內(nèi)基帶碼元的位同步。仿真結(jié)果表明,該方案占用FPGA資源較少,并且在實(shí)際應(yīng)用中具有可靠有效性。(作者聶偉,林竹)
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- EDA技術(shù)工具鏈與全流程設(shè)計(jì)運(yùn)維指南2026/1/5 10:28:51
- PLC程序現(xiàn)場(chǎng)疑難問題排查與深度優(yōu)化指南2025/12/24 14:36:36
- PLC程序現(xiàn)場(chǎng)調(diào)試與優(yōu)化實(shí)操指南2025/12/24 14:29:57
- 工業(yè)PLC模擬量信號(hào)采集:調(diào)理技術(shù)與抗干擾工程方案2025/12/15 14:39:08
- PLC設(shè)備如何選型2025/9/5 17:15:14
- PCB電源完整性(PI)設(shè)計(jì)核心實(shí)操規(guī)范
- 多層PCB疊層設(shè)計(jì)核心實(shí)操規(guī)范
- 提高M(jìn)OSFET效率的電路優(yōu)化方法
- 電源管理IC在智能家居中的應(yīng)用
- 差分信號(hào)連接器設(shè)計(jì)要點(diǎn)
- PCB焊盤與過孔設(shè)計(jì)核心實(shí)操規(guī)范(含可焊性與可靠性保障)
- 汽車電子常用電子元器件選型指南
- MOSFET驅(qū)動(dòng)與隔離方案設(shè)計(jì)
- 高溫環(huán)境下電源IC選型建議
- 安防監(jiān)控設(shè)備連接器應(yīng)用分析









