《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > dPMR接收機(jī)定時(shí)估計(jì)算法及FPGA實(shí)現(xiàn)
dPMR接收機(jī)定時(shí)估計(jì)算法及FPGA實(shí)現(xiàn)
2019年電子技術(shù)應(yīng)用第5期
朱子文1,,張 濤1,關(guān)漢興2
1. 武漢科技大學(xué) 冶金自動(dòng)化與檢測(cè)技術(shù)教育部工程研究中心,,湖北 武漢430081,; 2. 長(zhǎng)飛光纖光纜有限公司,湖北 武漢430000
摘要: 符號(hào)定時(shí)同步的準(zhǔn)確度對(duì)數(shù)字通信系統(tǒng)解調(diào)性能有極大影響,,dPMR通信系統(tǒng)要求接收機(jī)的符號(hào)同步具有快速捕獲和良好跟蹤性能的特點(diǎn),。針對(duì)該要求,提出一種定時(shí)估計(jì)算法,。該算法結(jié)合前導(dǎo)碼定時(shí)算法和數(shù)字平方濾波算法的優(yōu)點(diǎn),,首先捕捉突發(fā)信息的前導(dǎo)碼,使用前導(dǎo)碼定時(shí)算法實(shí)現(xiàn)高精度快速定時(shí)估計(jì),,之后以384個(gè)符號(hào)為間隔,,使用數(shù)字平方濾波算法實(shí)現(xiàn)定時(shí)估計(jì)的跟蹤校正。同時(shí)提出一種結(jié)構(gòu)簡(jiǎn)單的FPGA實(shí)現(xiàn)方案,相對(duì)于經(jīng)典的同步波形匹配濾波定時(shí)算法,,不僅提升了接收機(jī)的解調(diào)性能且節(jié)約了硬件資源,。
中圖分類(lèi)號(hào): TN929.5
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.182590
中文引用格式: 朱子文,張濤,,關(guān)漢興. dPMR接收機(jī)定時(shí)估計(jì)算法及FPGA實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,,2019,45(5):27-30.
英文引用格式: Zhu Ziwen,,Zhang Tao,,Guan Hanxing. A timing estimation algorithm for dPMR receiver based on FPGA and its implementation[J]. Application of Electronic Technique,2019,,45(5):27-30.
A timing estimation algorithm for dPMR receiver based on FPGA and its implementation
Zhu Ziwen1,,Zhang Tao1,Guan Hanxing2
1. Engineering Research Center of Metallurgical Automation and Measurement Technology,, Wuhan University of Science and Technology,,Wuhan 430081,China,; 2.Yangtze Optical Fibre and Cable Joint Stock Limited Company,,Wuhan 430000,China
Abstract: The accuracy of symbol timing synchronization has a great impact on the demodulation performance of digital communication systems. The dPMR communication system requires the symbol synchronization of the receiver to have fast acquisition and good tracking performance. A timing estimation algorithm is proposed for this requirement. The algorithm combines the advantages of preamble timing algorithm and digital square filtering algorithm. Firstly, when the preamble of the burst information is captured, the preamble timing algorithm is used to implement high-precision fast timing estimation. Then, a digital square filtering algorithm is used to implement tracking correction for timing estimation at intervals of 384 symbols. At the same time, a simple FPGA implementation scheme is proposed. Compared with the classical matching filter timing algorithm based on synchronous waveform, it not only improves the demodulation performance of the receiver but also saves hardware resources.
Key words : timing estimation,;fast acquisition,;timing tracking;FPGA

0 引言

    dPMR(digital Private Mobile Radio)協(xié)議[1]是歐洲電信標(biāo)準(zhǔn)協(xié)會(huì)(ESTI)最新發(fā)布的數(shù)字集群通信標(biāo)準(zhǔn),,其具有頻譜利用率高,、通信距離遠(yuǎn)、抗干擾能力強(qiáng)等優(yōu)點(diǎn),,廣泛應(yīng)用于公共安全,、交通運(yùn)輸?shù)葘?zhuān)用無(wú)線網(wǎng)絡(luò)。

    dPMR協(xié)議采用連續(xù)相位頻率調(diào)制,,對(duì)dPMR信號(hào)的解調(diào)常用鑒頻解調(diào)法[2],,雖然該法易于硬件實(shí)現(xiàn),但對(duì)定時(shí)誤差極為敏感,,符號(hào)同步的準(zhǔn)確度會(huì)極大地影響接收機(jī)的解調(diào)性能,。因此,準(zhǔn)確實(shí)現(xiàn)符號(hào)同步十分重要,。

    文獻(xiàn)[3]提出一種前導(dǎo)碼定時(shí)算法,,該算法能夠快速進(jìn)行定時(shí)誤差估計(jì)且估計(jì)精度高,但依賴(lài)前導(dǎo)碼序列,,長(zhǎng)時(shí)間的語(yǔ)音/數(shù)據(jù)通信會(huì)使時(shí)鐘誤差不斷積累,,可能會(huì)導(dǎo)致碼元失步,。文獻(xiàn)[4]提出一種數(shù)字平方濾波算法,,該算法不依賴(lài)特殊序列,,具有良好的跟蹤性能,但需要存儲(chǔ)大量的基帶信號(hào)完成統(tǒng)計(jì)估計(jì),,導(dǎo)致用時(shí)久且需要消耗大量的存儲(chǔ)資源,,當(dāng)接收機(jī)接收到特定控制信號(hào)時(shí),不能在協(xié)議規(guī)定的時(shí)間內(nèi)完成解調(diào)并及時(shí)應(yīng)答,。文獻(xiàn)[5]中提出一種經(jīng)典的同步碼匹配濾波算法,,利用dPMR標(biāo)準(zhǔn)幀中同步碼波形具有良好互相關(guān)性的特點(diǎn),使用本地緩存的四種同步碼波形與輸入波形進(jìn)行互相關(guān)操作,,通過(guò)匹配同步碼波形以恢復(fù)最佳采樣點(diǎn),,該算法能夠避免上述算法的問(wèn)題,適用于dPMR協(xié)議,,但是定時(shí)估計(jì)精度不高,,且實(shí)現(xiàn)互相關(guān)操作需要消耗大量的硬件資源。

    本文結(jié)合前導(dǎo)碼定時(shí)算法和數(shù)字平方濾波算法的優(yōu)點(diǎn),,提出一種適用于dPMR協(xié)議的高精度的聯(lián)合定時(shí)估計(jì)算法,,并基于FPGA,提出了低資源消耗的實(shí)現(xiàn)方案,。相對(duì)于經(jīng)典的同步碼匹配濾波算法,,不僅提高了接收機(jī)解調(diào)性能,還降低了資源消耗,。

1 聯(lián)合定時(shí)估計(jì)算法

    設(shè)基帶信號(hào)采樣后的離散信號(hào)為m(i),,N為符號(hào)過(guò)采樣率。前導(dǎo)碼定時(shí)估計(jì)算法是利用dPMR突發(fā)數(shù)據(jù)前有一段特殊的前導(dǎo)碼進(jìn)行定時(shí)估計(jì),。由于前導(dǎo)碼序列以[+3 +3 -3 -3]重復(fù)9次,,則其基帶信號(hào)是一段以4N為周期的周期信號(hào)。則可以利用前導(dǎo)碼進(jìn)行定時(shí)誤差估計(jì):

    wdz4-gs1.gif

    式(1)中,,L為觀測(cè)訓(xùn)練序列的符號(hào)長(zhǎng)度,,為了避免前導(dǎo)碼前后符號(hào)對(duì)上述的周期基帶波形產(chǎn)生影響,一般取前導(dǎo)碼中間的16個(gè)符號(hào)進(jìn)行定時(shí)誤差估計(jì),。

    數(shù)字平方濾波算法是對(duì)基帶信號(hào)進(jìn)行平方處理后的信號(hào)v(i)進(jìn)行處理,,提取其穩(wěn)態(tài)波頻率信息得到定時(shí)誤差估計(jì):

    wdz4-gs2.gif

    數(shù)字平方濾波算法需要對(duì)足夠長(zhǎng)基帶信號(hào)進(jìn)行信號(hào)處理(L一般大于128個(gè)符號(hào)),才能準(zhǔn)確地提取穩(wěn)態(tài)波的頻率信息[6],,但無(wú)需依靠任何特殊序列,,便能進(jìn)行高精度的定時(shí)誤差估計(jì)。

    結(jié)合前導(dǎo)碼定時(shí)估計(jì)算法和數(shù)字平方濾波算法的優(yōu)點(diǎn),,提出一種能夠適用于dPMR協(xié)議的高精度,、快速捕獲且具有良好跟蹤性能的聯(lián)合定時(shí)估計(jì)算法,流程如下:

    (1)當(dāng)RSSI(Received Signal Strength Indication)捕捉到輸入信號(hào)為有效信號(hào)時(shí),對(duì)輸入的復(fù)包絡(luò)信號(hào)進(jìn)行鑒頻和匹配濾波得到基帶信號(hào),;

    (2)使用延時(shí)相關(guān)算法捕捉前導(dǎo)碼基帶波形,;

    (3)使用前導(dǎo)碼定時(shí)估計(jì)算法,對(duì)前導(dǎo)碼基帶信號(hào)進(jìn)行快速高精度定時(shí)誤差估計(jì),;

    (4)如果經(jīng)過(guò)192個(gè)符號(hào)長(zhǎng)度后,,RSSI仍判定輸入信號(hào)有效時(shí),使用數(shù)字濾波平方算法對(duì)后續(xù)的192個(gè)符號(hào)進(jìn)行統(tǒng)計(jì)估計(jì)來(lái)校正定時(shí)誤差估計(jì),;

    (5)重復(fù)第(4)步直至RSSI判決接收信號(hào)無(wú)效,。

2 聯(lián)合定時(shí)估計(jì)算法的硬件實(shí)現(xiàn)及仿真

    本文以Terasic(友晶)公司的DE0開(kāi)發(fā)板構(gòu)建的數(shù)字收發(fā)機(jī)平臺(tái)為依托,對(duì)dPMR接收機(jī)數(shù)字基帶系統(tǒng)進(jìn)行硬件實(shí)現(xiàn),。AD采樣分辨率為16 bit,,采樣頻率為19.2 kHz(過(guò)采樣率N=8)。本文提出的聯(lián)合估計(jì)算法需要分階段使用兩種定時(shí)算法,,若分開(kāi)實(shí)現(xiàn)兩種算法,,會(huì)消耗較多的硬件資源。根據(jù)兩種算法均需要進(jìn)行DFT運(yùn)算的共同點(diǎn),,提出如圖1所示的實(shí)現(xiàn)結(jié)構(gòu),,由前導(dǎo)碼檢測(cè)模塊、定時(shí)估計(jì)狀態(tài)控制器和定時(shí)誤差計(jì)算模塊組成,,并對(duì)各模塊進(jìn)行優(yōu)化設(shè)計(jì),。

wdz4-t1.gif

2.1 前導(dǎo)碼檢測(cè)模塊

    前導(dǎo)碼檢測(cè)模塊用于捕捉前導(dǎo)碼波形,本文利用前導(dǎo)碼模塊的周期性,,使用差分延時(shí)相關(guān)算法[7]實(shí)現(xiàn)對(duì)前導(dǎo)碼的檢測(cè),,該模塊由數(shù)據(jù)緩存、延時(shí)相關(guān)計(jì)算和前導(dǎo)碼判決三個(gè)子模塊組成,,如圖2所示,。

wdz4-t2.gif

    數(shù)據(jù)緩存使用移位寄存器實(shí)現(xiàn)對(duì)檢測(cè)數(shù)據(jù)的滑動(dòng)存儲(chǔ)。寄存器D1~D32實(shí)現(xiàn)32級(jí)延時(shí)(前導(dǎo)碼周期為32個(gè)采樣時(shí)鐘),,用于產(chǎn)生延時(shí)相關(guān)的輸入信號(hào),;寄存器D33~D64用于信號(hào)緩存,防止前導(dǎo)碼波形的大量丟失影響后續(xù)的定時(shí)估計(jì),。

    延時(shí)相關(guān)計(jì)算子模塊用于計(jì)算輸入信號(hào)的延時(shí)相關(guān)系數(shù),,為了減小載波頻偏導(dǎo)致基帶信號(hào)產(chǎn)生了直流偏移的影響,使用輸入信號(hào)的差分結(jié)果d(n)進(jìn)行延時(shí)相關(guān)計(jì)算,。相關(guān)長(zhǎng)度為32點(diǎn)的延時(shí)相關(guān)系數(shù)可表示為:

     wdz4-gs3-4.gif

    基于式(4),,延時(shí)相關(guān)計(jì)算硬件實(shí)現(xiàn)圖如圖3所示,以移位寄存器實(shí)現(xiàn)滑動(dòng)窗口累加計(jì)算,,僅使用一個(gè)乘法器便可以計(jì)算出相關(guān)系數(shù),,節(jié)省了大量資源,。

wdz4-t3.gif

    前導(dǎo)碼判決模塊采用長(zhǎng)度保持算法進(jìn)行判決,即僅在相關(guān)系數(shù)保持連續(xù)8個(gè)符號(hào)長(zhǎng)度以上均大于閾值時(shí)判定檢測(cè)到前導(dǎo)碼,。使用這種長(zhǎng)度保持算法能極大地降低誤判的概率,,提高檢測(cè)算法的可靠性。

2.2 定時(shí)估計(jì)狀態(tài)控制器

    定時(shí)估計(jì)狀態(tài)控制器用于控制定時(shí)估計(jì)算法的選擇和使能,,其實(shí)現(xiàn)結(jié)構(gòu)由一個(gè)狀態(tài)機(jī)構(gòu)成,,狀態(tài)轉(zhuǎn)移圖如圖4所示,,包括休眠態(tài),、前導(dǎo)碼搜索態(tài)、前導(dǎo)碼定時(shí)估計(jì)態(tài),、空閑態(tài)和數(shù)字平方濾波定時(shí)估計(jì)態(tài),。

wdz4-t4.gif

    定時(shí)估計(jì)狀態(tài)控制器僅在處于前導(dǎo)碼定時(shí)估計(jì)態(tài)和數(shù)字平方濾波定時(shí)估計(jì)態(tài)時(shí),產(chǎn)生定時(shí)誤差計(jì)算模塊的使能信號(hào)以及兩種不同的模式選擇信號(hào),,控制定時(shí)誤差計(jì)算模塊進(jìn)行定時(shí)誤差估計(jì),。

2.3 定時(shí)誤差計(jì)算模塊

    定時(shí)誤差計(jì)算模塊是本設(shè)計(jì)的關(guān)鍵模塊,由于兩種算法均是通過(guò)DFT運(yùn)算得到定時(shí)誤差,,因此硬件實(shí)現(xiàn)具有較大共性,,以更少的資源消耗完成定時(shí)誤差提取是本文考慮的重點(diǎn)。根據(jù)式(1)和式(2),,對(duì)硬件實(shí)現(xiàn)進(jìn)行結(jié)構(gòu)劃分如圖5所示,。

wdz4-t5.gif

    由式(1)和式(2)可知,兩種算法處理的數(shù)據(jù)并不相同,。前導(dǎo)碼定時(shí)算法是對(duì)基帶信號(hào)直接進(jìn)行處理,,而數(shù)字平方濾波算法是對(duì)基帶信號(hào)的平方信號(hào)進(jìn)行處理。數(shù)據(jù)準(zhǔn)備子模塊是根據(jù)不同的定時(shí)算法,,選取基帶信號(hào)或者其平方信號(hào)進(jìn)行后續(xù)處理,。

    頻率信息提取子模塊實(shí)現(xiàn)對(duì)輸入的數(shù)據(jù)的DFT運(yùn)算,提取所需頻率點(diǎn)的信息,。值得注意的是,,兩種算法所需計(jì)算的頻率點(diǎn)以及DFT長(zhǎng)度不同。

    DFT展開(kāi)式可表示為:

    wdz4-gs5.gif

    若直接使用式(5)進(jìn)行計(jì)算,,則需要將不同的旋轉(zhuǎn)因子存入FPGA的ROM中,,然后通過(guò)地址尋址等控制邏輯選取不同的旋轉(zhuǎn)因子,以累積乘加的方式完成頻率信息提取,。由于兩種算法的旋轉(zhuǎn)因子較多且不相同,,這會(huì)消耗較多的存儲(chǔ)單元和邏輯資源。本文對(duì)式(5)進(jìn)行變換:

     wdz4-gs6.gif

    基于式(6),,本文以迭代乘加的結(jié)構(gòu)完成頻域信息提取子模塊的設(shè)計(jì),,如圖6所示,。圖中的乘法器為復(fù)數(shù)乘法器,通過(guò)模式選擇信號(hào)選擇旋轉(zhuǎn)因子,。在計(jì)算過(guò)程中無(wú)需更換旋轉(zhuǎn)因子,,便可完成頻率信息計(jì)算,節(jié)約了大量的邏輯和存儲(chǔ)資源,。

wdz4-t6.gif

    當(dāng)頻率信息提取子模塊完成計(jì)算后,,使能角度計(jì)算子模塊完成角度計(jì)算。角度計(jì)算子模塊使用CORDIC算法[8],,僅使用移位和累加就可以完成反正切運(yùn)算,。本文采用循環(huán)結(jié)構(gòu)以節(jié)省資源,僅使用一個(gè)CORDIC運(yùn)算單元,,以迭代的方式完成計(jì)算,,迭代13次后,角度計(jì)算精度達(dá)到0.006 994°,。

    定時(shí)誤差計(jì)算子模塊根據(jù)當(dāng)前算法模式,,選擇根據(jù)式(1)或者式(2)進(jìn)行定時(shí)誤差計(jì)算,將系數(shù)存入ROM中,,使用乘法器和加法器計(jì)算出定時(shí)誤差值,。

2.4 符號(hào)定時(shí)估計(jì)模塊仿真

    使用MATLAB產(chǎn)生經(jīng)過(guò)匹配濾波器的基帶波形作為測(cè)試數(shù)據(jù),測(cè)試數(shù)據(jù)信噪比為20 dB,,其含有理論延遲0.4 Ts(Ts為符號(hào)周期),。Modelsim的功能仿真結(jié)果如圖7所示,可以看到,,狀態(tài)機(jī)的跳轉(zhuǎn)與設(shè)計(jì)的一致,,首先符號(hào)定時(shí)估計(jì)模塊捕獲到前導(dǎo)碼后會(huì)立即進(jìn)行前導(dǎo)碼定時(shí)估計(jì),192個(gè)符號(hào)延時(shí)后會(huì)進(jìn)行數(shù)字平方濾波定時(shí)估計(jì),,完成定時(shí)估計(jì)修正,。所得到的定時(shí)估計(jì)值均在5 530(0.4Ts)附近,估計(jì)方差小于10-4,。仿真結(jié)果表明,,設(shè)計(jì)的符號(hào)定時(shí)估計(jì)模塊功能正確。

wdz4-t7.gif

3 聯(lián)合定時(shí)估計(jì)算法FPGA實(shí)現(xiàn)的性能分析

    搭建如圖8所示的驗(yàn)證平臺(tái),,使用兩塊DE0開(kāi)發(fā)板構(gòu)建驗(yàn)證平臺(tái),,分別作為發(fā)射機(jī)和接收機(jī),PC通過(guò)USB Blaster與發(fā)射機(jī)和接收機(jī)相連接,,在傳輸過(guò)程中使用信號(hào)發(fā)生器產(chǎn)生不同功率的高斯白噪聲與調(diào)制信號(hào)相加后送入接收機(jī)進(jìn)行解調(diào),。在接收機(jī)選用不同的符號(hào)同步算法的情況下,利用SignalTap工具導(dǎo)出解調(diào)符號(hào),,分別計(jì)算不同信噪比下的誤碼率,。

wdz4-t8.gif

    接收機(jī)分別使用經(jīng)典的同步碼匹配濾波算法與本文算法的解調(diào)誤比特率曲線如圖9所示,。由圖可知,相對(duì)于經(jīng)典的同步算法,,本文同步算法對(duì)解調(diào)性能具有提升,,在信噪比為14 dB時(shí),解調(diào)性能提升2個(gè)數(shù)量級(jí),。

wdz4-t9.gif

    表1是分別使用本文同步算法和經(jīng)典算法的接收機(jī)數(shù)字基帶(不包含幀處理)FPGA資源消耗比較,。雖然對(duì)經(jīng)典算法進(jìn)行了優(yōu)化設(shè)計(jì),降低了進(jìn)行相關(guān)計(jì)算的輸入信號(hào)和本地系數(shù)的位寬,,但其仍消耗了較多的邏輯資源,,占用總邏輯資源42%,而使用本文算法僅占用總邏輯資源25%,。通過(guò)上述分析可知,,本文算法相對(duì)于同步濾波算法不僅提高了接收機(jī)的解調(diào)性能而且節(jié)省了資源消耗,。

4 結(jié)論

本文提出一種聯(lián)合定時(shí)估計(jì)算法,,結(jié)合前導(dǎo)碼定時(shí)算法與數(shù)字平方濾波算法的優(yōu)點(diǎn),具有高精度,、快速捕獲和良好跟蹤性能的特點(diǎn),,適用于dPMR協(xié)議。并基于FPGA提出一種結(jié)構(gòu)簡(jiǎn)單的實(shí)現(xiàn)方案,,首先以滑動(dòng)窗口的方式實(shí)現(xiàn)前導(dǎo)碼定位,,然后以定時(shí)估計(jì)狀態(tài)控制器控制定時(shí)估計(jì)算法的選擇和使能,最后以迭代乘加的結(jié)構(gòu)完成定時(shí)誤差提取,。實(shí)驗(yàn)結(jié)果表明,,本文算法相對(duì)于經(jīng)典的同步碼匹配濾波算法,不僅提升了接收機(jī)的解調(diào)性能且節(jié)省了硬件資源,,對(duì)高性能低成本dPMR標(biāo)準(zhǔn)的ASIC芯片研發(fā)有一定指導(dǎo)意義,。

wdz4-b1.gif

參考文獻(xiàn)

[1] ETSI TS 102 658 V2.5.1(2015-07).Digital Private Mobile Radio(dPMR) using FDMA with a channel spacing of 6,25 kHz[S].Sophia Antipolis Cedex:ETSI,2008.

[2] HUANG Y,,F(xiàn)AN K,,HUANG C.A fully digital noncoherent and coherent GMSK receiver architecture with joint symbol timing error and frequency offset estimation[J].IEEE Transactions on Vehicular Technology,2000,,49(3):863-874.

[3] 沈文麗,,張屹,趙民建,,等.基于數(shù)據(jù)輔助的CPFSK信號(hào)的定時(shí)估計(jì)[J].浙江大學(xué)學(xué)報(bào)(工學(xué)版),,2007(12):2026-2030.

[4] OERDER M,MEYR H.Digital filter and square timing recovery[J].IEEE Transactions on Communications,,1988,,36(5):605-612.

[5] 陳曦.基于匹配濾波的dPMR標(biāo)準(zhǔn)碼元同步器設(shè)計(jì)與實(shí)現(xiàn)[J].電聲技術(shù),,2013,37(11):56-58.

[6] 游順.DMR終端符號(hào)同步實(shí)現(xiàn)技術(shù)[D].成都:電子科技大學(xué),,2012.

[7] LI X,,GUO W.Efficient differential coherent accumulation algorithm for weak GPS signal bit synchronization[J].IEEE Communications Letters,2013,,17(5):936-939.

[8] 王申卓,,胡春林,胡廣垠,,等.基于CORDIC改進(jìn)算法的NCO設(shè)計(jì)[J].電子技術(shù)應(yīng)用,,2017,43(3):43-47.



作者信息:

朱子文1,,張  濤1,,關(guān)漢興2

(1. 武漢科技大學(xué) 冶金自動(dòng)化與檢測(cè)技術(shù)教育部工程研究中心,湖北 武漢430081,;

2. 長(zhǎng)飛光纖光纜有限公司,,湖北 武漢430000)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。