《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計應(yīng)用 > 基于FPGA的部分響應(yīng)CPM信號解調(diào)器的設(shè)計
基于FPGA的部分響應(yīng)CPM信號解調(diào)器的設(shè)計
維庫
摘要: 在現(xiàn)有的民用,、軍用通信系統(tǒng)的眾多應(yīng)用領(lǐng)域中,,為了實現(xiàn)高速率數(shù)據(jù)傳輸,提高頻譜利用率,,必須采用帶寬效率更高的編碼,、調(diào)制技術(shù),。在眾多的調(diào)制方式中,連續(xù)相位調(diào)制信號(CPM信號)具有恒包絡(luò)特性,,它用于承載信息
關(guān)鍵詞: FPGA CPM信號 解調(diào)器 VHDL
Abstract:
Key words :

在現(xiàn)有的民用,、軍用通信系統(tǒng)的眾多應(yīng)用領(lǐng)域中,為了實現(xiàn)高速率數(shù)據(jù)傳輸,,提高頻譜利用率,,必須采用帶寬效率更高的編碼、調(diào)制技術(shù),。在眾多的調(diào)制方式中,,連續(xù)相位調(diào)制信號(CPM 信號)具有恒包絡(luò)特性,它用于承載信息的相位軌跡連續(xù)變化,因此該類信號擁有較高的帶寬效率,?;?a class="innerlink" href="http://forexkbc.com/tags/CPM信號" title="CPM信號" target="_blank">CPM信號的恒包絡(luò)、帶寬緊湊和能量利用率高等優(yōu)點,,近幾年來,,它受到廣泛的研究與應(yīng)用。

  文中分析了二進制,,部分響應(yīng)L=2 的連續(xù)相位調(diào)制方式,,提出了一種該調(diào)制方式下解調(diào)器FPGA 設(shè)計方法,并運用VHDL 硬件描述語言實現(xiàn),。

  1 CPM 的基本原理

  連續(xù)相位調(diào)制信號可以用式(1)表示:



  式(1)中,, b E 表示信號的碼元能量,T 是碼元間隔,,即表示信號幅度,。c f 是載波頻率,φ (t, I )是帶有傳輸信息的信號相位函數(shù),,其中I 表示發(fā)生的符號序列,。φ (t, I )的表達式如下:



  其中n I 是M (M = 2,4,8,16……) 進制的符號信息,取值為{±1,±3,……,±(M -1)},。文中M 為二進制調(diào)制,, n I 的取值為+1、-1,。h 是調(diào)制指數(shù),,g(t)是成形脈沖函數(shù)。脈沖函數(shù)g(t)采用升余弦脈沖RC:



  式(3)中,, L 又稱為關(guān)聯(lián)長度,。

  根據(jù)式(2)計算CPM 信號的基帶相位,,根據(jù)相位計算基帶信號的I/Q 兩路,,之后使用兩路信號相加就可以得到調(diào)制后的CPM 信號,見圖1,。

CPM 信號調(diào)制

圖1 CPM 信號調(diào)制

  2 CPM 解調(diào)模塊的原理及其實現(xiàn)

  2.1 解調(diào)器實現(xiàn)原理

  對CPM 信號的接收,、解調(diào),常采取的步驟為:解調(diào)-最大似然序列估計-Viterbi 譯碼-判決,。首先將接收到的復包絡(luò)信號分為I,Q兩路,,下變頻為基帶信號,分別與cos(ψ (t, a))和sin(ψ (t, a))相關(guān)后相加,,從而得到節(jié)點的度量值,。對于t時刻每個狀態(tài),可以根據(jù)其輸入值的不同,計算來自前一級節(jié)點的兩條路徑的路徑度量,,并分別加上前一級節(jié)點的節(jié)點度量,,然后從中選擇一個最小的度量值作為節(jié)點度量,并存儲前一級節(jié)點的信息,。

  2.2 解調(diào)器實現(xiàn)框圖

  這里仿真采用二進制2RC 的調(diào)制方式,,根據(jù)Viterbi 譯碼方式可知,調(diào)制信號共有8 個狀態(tài),,將這些狀態(tài)分別編碼為000,,001,010,,011,,100,101,,110,,111。輸入數(shù)據(jù)與狀態(tài)間轉(zhuǎn)移關(guān)系見表1,。筆者在設(shè)計中將其分為四個模塊:分支度量模塊,、加比選模塊、回溯模塊和控制模塊,。其結(jié)構(gòu)設(shè)計如圖2 所示,。

解調(diào)過程

圖2 解調(diào)過程

  (1)分支度量模塊

  此模塊根據(jù)輸入數(shù)據(jù)計算分支度量值,。在FPGA設(shè)計中,,預(yù)先將每種基準狀態(tài)抽樣時刻的值存入STD 寄存器中,在計算分支度量時通過查表得到基準狀態(tài)的值,。將輸入I,Q 兩路數(shù)據(jù)進行串/并轉(zhuǎn)換,,得到一個碼元持續(xù)時間內(nèi)的調(diào)制信號后,與每種基準狀態(tài)的抽樣值相乘并相加,,從而得到I,Q 兩路的路徑度量值,。最后將I,Q 兩路度量值相加,便可以得到各狀態(tài)的分支度量值,。

 

 ?。?)加比選ACS 模塊

  此模塊分為兩部分:①計算路徑度量值;②選擇當前時刻最佳路徑,。當前狀態(tài)的路徑度量值為該狀態(tài)下所有可能的路徑度量值中的最大值,。最佳路徑為最大路徑度量值對應(yīng)的上一狀態(tài)。在設(shè)計中采用確定CPM 調(diào)制的起始狀態(tài)的方法,。

  復位時將起始狀態(tài)的路徑度量值賦值為0,;將其他狀態(tài)的路徑度量值賦值為一個較小的負數(shù)。采用這種方式有效避免解調(diào)時起始狀態(tài)的不確定性。

  CPM 的解調(diào)在一定的譯碼數(shù)量后,,路徑度量值的存儲器便會飽和溢出,。該設(shè)計采用一種簡單方法防止溢出:每次路徑度量值計算完成后,判斷其最大值,,如果最大值超過某一確定的正值,,則所有的路徑度量值減去一個正值。再判斷是否有度量值小于一個確定的負數(shù),,如果有,,則將其值重新賦值為一個較小的負數(shù)。仿真中,,證明了這種方法的可行性,。

表1 輸入數(shù)據(jù)與狀態(tài)間轉(zhuǎn)移關(guān)系

輸入數(shù)據(jù)與狀態(tài)間轉(zhuǎn)移關(guān)系

  (3)回溯模塊

  此模塊包括幸存路徑存儲和判決輸出,。在模塊中比較當前時刻各狀態(tài)的路徑度量值,,求得最大路徑度量值,以及對應(yīng)的當前狀態(tài),。從表1 可知,,狀態(tài)的最低位可以表現(xiàn)上一時刻的輸入值,最低位為0 時,,表示上一時刻的輸入碼字為-1,;最低位為1 時表示上一時刻的輸入碼字為1。

  3 硬件實現(xiàn),、時序仿真和性能

  這里選擇的FPGA 是Xilinx 公司的Virtex5 系列的XC5VSX95T 芯片,,設(shè)計軟件為ISE, Synplify, Modelsim,Matlab,設(shè)計語言采用VHDL 硬件描述語言。

  仿真中選擇二進制,,關(guān)聯(lián)長度L 取2,,升余弦脈沖的調(diào)制方式。仿真中波特率為5 MHz, 采用8 倍采樣,,系統(tǒng)時鐘為120 MHz,。假設(shè)輸入到調(diào)制器的雙極性比特流為{ } n b :1,1,1,-1,1,1,-1,-1,1,1,1,-1,1,1,-1,1……分支度量仿真結(jié)果如圖3 所示。

分支度量仿真結(jié)果
 


圖3 分支度量仿真結(jié)果

  加比選模塊仿真結(jié)果如圖4 所示,。

 加比選模塊仿真結(jié)果

圖4 加比選模塊仿真結(jié)果

  幸存路徑存儲和判決輸出模塊仿真結(jié)果如圖5 所示,。

幸存路徑存儲和判決輸出模塊仿真結(jié)果

圖5 幸存路徑存儲和判決輸出模塊仿真結(jié)果

  譯碼碼字:1,1,1,-1,1,1,-1,-1,1,1,1,-1,1,1,-1,1……當調(diào)制信號不加高斯白噪聲時,,實現(xiàn)了誤碼率為0 的解調(diào),。仿真結(jié)果表明這里所設(shè)計的性能達到設(shè)計的要求。

  4 結(jié)語

  文中主要設(shè)計了該二進制2RC CPM 信號基于FPGA 的解調(diào)器,。該方法針對Viterb 譯碼方法,,提出了一種新的防止路徑度量值溢出方法。該設(shè)計的優(yōu)點是:幸存路徑存儲器中存入的只是路徑信息,不需要存儲路徑度量值,,節(jié)省了存儲空間,;當譯碼輸出時只需要讀出最大路徑度量值的狀態(tài)所對應(yīng)的幸存路徑存儲單元的最低位狀態(tài)值,提高了譯碼速度,。該方法有效地防止路徑度量值溢出,。


 

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