亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于fpga的非遞歸cpm調(diào)制器及解調(diào)器的制造方法

文檔序號:10555540閱讀:562來源:國知局
基于fpga的非遞歸cpm調(diào)制器及解調(diào)器的制造方法
【專利摘要】本發(fā)明公開了一種基于FPGA的非遞歸CPM調(diào)制器及解調(diào)器的實(shí)現(xiàn)方法,主要解決已有技術(shù)時延較大、硬件資源消耗較多、復(fù)雜度較大的問題。其技術(shù)方案是:在基于FPGA的非遞歸CPM調(diào)制器的實(shí)現(xiàn)中,通過非遞歸轉(zhuǎn)換模塊,將遞歸CPM轉(zhuǎn)換為非遞歸CPM,并生成兩路查找表,通過查找表存儲波形采樣值實(shí)現(xiàn)非遞歸CPM的調(diào)制;在基于FPGA的非遞歸CPM解調(diào)器的實(shí)現(xiàn)中,將信道接收的復(fù)基帶信號直接送入復(fù)共軛乘積模塊進(jìn)行運(yùn)算,并基于非相干軟輸入軟輸出算法,通過不同的計(jì)算模塊實(shí)現(xiàn)非遞歸CPM的解調(diào),本發(fā)明的實(shí)現(xiàn)復(fù)雜度低,并減少了解調(diào)時延、節(jié)省了硬件資源,可用于移動通信、衛(wèi)星通信及深空通信。
【專利說明】
基于FPGA的非遞歸CPM調(diào)制器及解調(diào)器
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于電路技術(shù)領(lǐng)域,更進(jìn)一步涉及一種非遞歸連續(xù)相位調(diào)制CPM系統(tǒng)的調(diào) 制器及解調(diào)器,可用于移動通信、衛(wèi)星通信及深空通信。
【背景技術(shù)】
[0002] 在無線通信領(lǐng)域,連續(xù)相位調(diào)制CPM是一類具有高功率效率和高頻譜效率的編碼 調(diào)制技術(shù),其包絡(luò)恒定、載波相位連續(xù)。包絡(luò)恒定使CPM對放大器的非線性不敏感,所以CPM 可以在采用非線性放大器的信道中使用。載波相位連續(xù)使CPM信號避免了相位在相鄰碼元 間的跳變,從而消除了高頻分量。同時,相位連續(xù)的記憶特性使得CPM信號具有相位網(wǎng)格結(jié) 構(gòu),從而可以將連續(xù)相位調(diào)制看作是一種融合了編碼與調(diào)制特性的網(wǎng)格編碼調(diào)制,可以像 卷積碼一樣,CPM信號可以利用這種網(wǎng)格圖來表示可能的傳輸信號,這種網(wǎng)格結(jié)構(gòu)使CPM具 有錯誤糾正的能力,從而獲得一定的編碼增益。
[0003] 傳統(tǒng)的CPM調(diào)制器的設(shè)計(jì)中,一般采用FIR濾波器、相位累加器、正余弦查找表進(jìn)行 實(shí)現(xiàn),由于連續(xù)相位無法確定,所以正余弦查找表中需要存儲大量的數(shù)據(jù)。這就使得傳統(tǒng) CPM調(diào)制器的硬件設(shè)計(jì)實(shí)現(xiàn)較復(fù)雜、硬件資源消耗較多。
[0004] 在對CPM研究中,Rimoldi已經(jīng)證明,CPM的調(diào)制器可以分解為一個連續(xù)相位編碼器 CPE和一個無記憶調(diào)制器MM。進(jìn)行這樣的分解有兩個優(yōu)點(diǎn)。第一,編碼與調(diào)制分開來研究,因 而可以采用對應(yīng)于不同形式CPM信號的不同形式編碼器以及不同形式最優(yōu)解碼算法。第二, CPM的分解使得MM分離出來,可以將MM、波形信道和在一個符號間隔上工作的解調(diào)器的級聯(lián) 看成一個離散無記憶信道。因而離散無記憶信道的許多理論可以應(yīng)用到CPM的研究當(dāng)中。所 以將CPM的調(diào)制器進(jìn)行分解之后,會提升整個調(diào)制解調(diào)系統(tǒng)的性能。直接對CPM的調(diào)制器進(jìn) 行分解得到的是遞歸CPM,又可以通過轉(zhuǎn)換矩陣得到等價的非遞歸CPM,而非遞歸CPM可以降 低錯誤傳播、提高檢測性能。
[0005] 在接收端,對于CPM信號可以采用相干和非相干檢測方法。維特比解調(diào)方法是最佳 的相干檢測,但是該方法要求收發(fā)載波完全同步,并且檢測試驗(yàn)和復(fù)雜度非常高,不容易實(shí) 現(xiàn)。非相干檢測不需要接收機(jī)載波同步,并且可以克服相位模糊問題,但相比于非相干檢 測,性能有損失。目前最常用的非相干檢測有兩種,一種是D.Divsalar和M.K. Simon二人提 出的多符號差分檢測方法,另一種方法是Giulio CoIavoIpe和Gianluigi Ferrrai提出的 非相干BCJR檢測方法。但是這兩種方法的實(shí)現(xiàn)復(fù)雜度都很高。在傳統(tǒng)的CPM解調(diào)器的硬件設(shè) 計(jì)中,常用的非相干解調(diào)算法是Ibit差分解調(diào)、2bit差分解調(diào),設(shè)計(jì)復(fù)雜度較低,但是性能 較差。還有一種非相干軟輸入軟輸出算法,既能接近相干解調(diào)性能,又能降低復(fù)雜度,但是 實(shí)現(xiàn)的時延較大。
[0006] 非遞歸CPM具有比傳統(tǒng)CPM更好的性能,但缺少硬件上的設(shè)計(jì)與實(shí)現(xiàn)。

【發(fā)明內(nèi)容】

[0007] 本發(fā)明的目的在于提出一種基于FPGA的非遞歸CPM調(diào)制器及解調(diào)器,以解決上述 已有技術(shù)時延較大、硬件資源消耗較多、復(fù)雜度較大的問題。
[0008] 為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下:
[0009] -,基于FPGA的非遞歸CPM調(diào)制器,其特征在于,包括:
[0010] 連續(xù)相位編碼模塊1,用于將基帶二進(jìn)制數(shù)據(jù)流轉(zhuǎn)換為M進(jìn)制遞歸數(shù)據(jù)序列{ck}, 其中Ck表示第k時刻的M進(jìn)制數(shù)據(jù)符號;用L+1個Iog2(M)比特位寬的寄存器存儲該遞歸數(shù)據(jù) 序列,則k時刻移位寄存器的內(nèi)容為Ck,…,ck-i,…Ck-L,將其送入非遞歸轉(zhuǎn)換模塊2,其中0彡 i ,L表示調(diào)制記憶長度;
[0011] 非遞歸轉(zhuǎn)換模塊2,用于將連續(xù)相位編碼模塊1中輸出的M進(jìn)制遞歸數(shù)據(jù)序列 Ck,…,CkfK,轉(zhuǎn)換為等價的M進(jìn)制非遞歸數(shù)據(jù)序列4.、.(一^,并將該非遞歸數(shù)據(jù)序 列送入查找表地址產(chǎn)生模塊3中,其中OSi彡L,1彡1彡L+1;
[0012] 查找表地址產(chǎn)生模塊3,用于將非遞歸轉(zhuǎn)換模塊2輸出的序列心…,4,···.?丨+'分別送 入Q路波形輸出模塊8中的Q路查找表及Y路波形輸出模塊9中的Y路查找表,作為各自的查找 表地址,其可尋址范圍為0~M ui-I;
[0013] 正弦C語言仿真模塊4,用于根據(jù)非遞歸CPM的參數(shù)得到非遞歸CPM的NMui個正弦波 形采樣值,即在C語言仿真環(huán)境下先設(shè)置非遞歸CPM的參數(shù),再仿真出非遞歸條正 弦波形,并對每條正弦波形進(jìn)行N次采樣,得到非遞歸CPM的NM ui個正弦波形采樣值,其中非 遞歸CPM的參數(shù)包括調(diào)制指數(shù)h、采樣數(shù)N、調(diào)制脈沖類型以及調(diào)制記憶長度L;
[0014] 余弦C語言仿真模塊5,用于根據(jù)非遞歸CPM的參數(shù)得到非遞歸CPM的NMui個余弦波 形采樣值,即在C語言仿真環(huán)境下先設(shè)置非遞歸CPM的參數(shù),再仿真出非遞歸CPM的M ui條余 弦波形,并對每條余弦波形進(jìn)行N次采樣,得到非遞歸CPM的NMui個余弦波形采樣值;
[0015] Q路查找表生成模塊6,用于根據(jù)正弦C語言仿真模塊4輸出的正弦波形采樣值生成 Q路查找表,即先在FPGA芯片中創(chuàng)建一個ROM查找表,再將正弦波形采樣值進(jìn)行T比特量化并 存儲在該ROM查找表中,即生成Q路查找表;將該Q路查找表送入Q路波形輸出模塊8;
[0016] Y路查找表生成模塊7,用于根據(jù)余弦C語言仿真模塊5輸出的余弦波形采樣值生成 Y路查找表,即先在FPGA芯片中創(chuàng)建一個ROM查找表,再將余弦波形采樣值進(jìn)行T比特量化并 存儲在該ROM查找表中,即生成Y路查找表;將該Y路查找表送入Y路波形輸出模塊9;
[0017] Q路波形輸出模塊8,用于根據(jù)查找表地址讀取Q路查找表中存儲的非遞歸CPM的正 弦波形采樣值,輸出與非遞歸數(shù)據(jù)序列沭^χΓ對應(yīng)的非遞歸CPM的Q路基帶波形;
[0018] Y路波形輸出模塊9,用于根據(jù)查找表地址讀取Y路查找表中存儲的非遞歸CPM的余 弦波形采樣值,輸出與非遞歸數(shù)據(jù)序列4,…,4,…對應(yīng)的非遞歸CPM的Y路基帶波形。
[0019] 二、一種基于FPGA的非遞歸CPM解調(diào)器,其特征在于,包括:
[0020] 本地復(fù)信號模塊10,用于生成非遞歸CPM的Μ?+1種本地復(fù)信號s,并將本地復(fù)信號8 送入復(fù)共輒乘積模塊11;
[0021] 復(fù)共輒乘積模塊11,用于將信道接收到的k時刻的復(fù)基帶信號種本地復(fù)信 號8的復(fù)數(shù)共輒Sh進(jìn)行相乘操作,并將乘積結(jié)果r kSH送入復(fù)共輒存儲模塊12;
[0022]復(fù)共輒存儲模塊12,用于將復(fù)共輒乘積模塊11輸出的乘積結(jié)果進(jìn)行存儲,并將該 乘積結(jié)果送入Gama計(jì)算模塊13;
[0023] Gama計(jì)算模塊13,用于根據(jù)復(fù)共輒存儲模塊12傳輸?shù)某朔e結(jié)果rkSH計(jì)算出Μ?+1個分 支度量值Yk(Sk,Sk+1),并將該分支度量值送入Gama存儲模塊14及Alpha計(jì)算模塊16,其中 γ k (Sk,Sk+1)表示k時刻網(wǎng)格狀態(tài)Sk轉(zhuǎn)移至ijk+l時刻網(wǎng)格狀態(tài)S k+1的分支度量值,每個時刻有 個網(wǎng)格狀態(tài);
[0024] Gama存儲模塊14,用于對Gama計(jì)算模塊13傳輸?shù)姆种Ф攘恐颠M(jìn)行存儲,并將該分 支度量值送入Beta計(jì)算模塊19及求和軟信息模塊21;
[0025] Alpha初始值模塊15,用于存儲k時刻前向度量初始值ak(Sk),并在k+Ι時刻將該前 向度量初始值送入Alpha計(jì)算模塊16,其中,k = 0時,網(wǎng)格狀態(tài)So = [0,0,...,0 ]的前向度量 初始值為常數(shù)m,其他網(wǎng)格狀態(tài)的前向度量初始值為0;
[0026] Alpha計(jì)算模塊16,用于根據(jù)分支度量Yk(Sk,Sk+1)和前向度量初始值ak(Sk),計(jì)算 出k+Ι時刻的個前向度量值a k+1 (Sk+1),并將該前向度量值分別送入Alpha初始值模塊15及 Alpha存儲模塊17;
[0027] Alpha存儲模塊17,用于將Alpha計(jì)算模塊16傳輸?shù)那跋蚨攘恐颠M(jìn)行存儲,并將該 前向度量值送入求和軟信息模塊21;
[0028] Beta初始值模塊18,用于存儲k+Ι時刻后向度量初始值i3k+1(Sk+1),并在k時刻將該 后向度量初始值送入Beta計(jì)算模塊19,其中,k = R時,網(wǎng)格狀態(tài)Sr= [0,0,...,0]的后向度 量初始值為常數(shù)m,其他網(wǎng)格狀態(tài)的后向度量初始值為0,R表示最后一個符號的傳輸時刻; [0029] Beta計(jì)算模塊19,用于根據(jù)分支度量γ k(Sk,Sk+1)和后向度量初始值&+1 (Sk+1),計(jì) 算出k時刻的個后向度量值&(Sk),并將該后向度量值送入Beta初始值模塊18及Beta存儲 模塊20;
[0030] Beta存儲模塊20,用于將Beta計(jì)算模塊19傳輸?shù)暮笙蚨攘恐颠M(jìn)行存儲,并將該后 向度量值送入求和軟信息模塊21;
[0031 ]求和軟信息模塊21,用于根據(jù)分支度量值γ k(Sk,Sk+1)、前向度量值ak(Sk)及后向 度量值&+1(Sk+1),計(jì)算出k時刻符號4的軟輸出信息/%)。
[0032]本發(fā)明具有如下優(yōu)點(diǎn):
[0033] 1.本發(fā)明在基于FPGA的非遞歸CPM的調(diào)制器的實(shí)現(xiàn)中,通過生成Q路查找表、Y路查 找表,避免了復(fù)雜的濾波器設(shè)計(jì)與實(shí)現(xiàn),只需要存儲有限的正弦波形采樣值、余弦波形采樣 值就可以實(shí)現(xiàn)非遞歸CPM的調(diào)制,并且可以產(chǎn)生具有任何特性的基帶脈沖波形,降低了調(diào)制 實(shí)現(xiàn)的復(fù)雜度,節(jié)省了硬件資源。
[0034] 2.本發(fā)明在基于FPGA的非遞歸CPM的解調(diào)器的實(shí)現(xiàn)中,用改進(jìn)的非相干軟輸入軟 輸出算法實(shí)現(xiàn),避免了累積相位的計(jì)算,從而降低了解調(diào)的實(shí)現(xiàn)復(fù)雜度,并且從信道接收的 復(fù)基帶信號可以直接進(jìn)行處理,不需要等待和存儲復(fù)基帶信號,減少了解調(diào)時延,節(jié)省了硬 件資源。
【附圖說明】
[0035] 圖1為本發(fā)明基于FPGA的非遞歸CPM調(diào)制器的系統(tǒng)框圖;
[0036] 圖2為本發(fā)明基于FPGA的非遞歸CPM解調(diào)器的系統(tǒng)框圖;
[0037]圖3是遞歸CPM分解模型圖;
[0038]圖4是非遞歸CPM分解模型圖。
【具體實(shí)施方式】
[0039] 以下參照附圖對本發(fā)明作進(jìn)一步詳細(xì)描述。
[0040] 參照圖1,本發(fā)明基于FPGA的非遞歸CPM調(diào)制器,包括:
[0041]連續(xù)相位編碼模塊1、非遞歸轉(zhuǎn)換模塊2、查找表地址產(chǎn)生模塊3、正弦C語言仿真模 塊4、余弦C語言仿真模塊5、Q路查找表生成模塊6、Y路查找表生成模塊7、Q路波形輸出模塊8 和Y路波形輸出模塊9。其中,連續(xù)相位編碼模塊1、非遞歸轉(zhuǎn)換模塊2和查找表地址產(chǎn)生模塊 3依次連接;查找表地址產(chǎn)生模塊3輸出分為兩路,一路與Q路波形輸出模塊8連接,另一路與 Y路波形輸出模塊9連接;正弦C語言仿真模塊4、Q路查找表生成模塊6和Q路波形輸出模塊8 依次連接;余弦C語言仿真模塊5、Y路查找表生成模塊7和Y路波形輸出模塊9依次連接。 [0042]各模塊的功能及整個調(diào)制器的工作原理如下:
[0043] 連續(xù)相位編碼模塊1,用于將基帶二進(jìn)制數(shù)據(jù)流b轉(zhuǎn)換為M進(jìn)制遞歸數(shù)據(jù)序列{ck}, 其中Ck表示第k時刻的M進(jìn)制數(shù)據(jù)符號;用L+1個Iog2(M)比特位寬的寄存器存儲該遞歸數(shù)據(jù) 序列,則k時刻移位寄存器的內(nèi)容為Ck,…,ck-i,…Ck-L,將其送入非遞歸轉(zhuǎn)換模塊2,其中0彡 i ,L表示調(diào)制記憶長度;
[0044] 非遞歸轉(zhuǎn)換模塊2,將連續(xù)相位編碼模塊1中輸出的M進(jìn)制遞歸數(shù)據(jù)序列Ck,···, CkfK,轉(zhuǎn)換為等價的M進(jìn)制非遞歸數(shù)據(jù)序列,4,…4+1,并將該非遞歸數(shù)據(jù)序列送入 查找表地址產(chǎn)生模塊3中;
[0045] 所述將連續(xù)相位編碼模塊1中輸出的M進(jìn)制遞歸數(shù)據(jù)序列Ck,…,ck-i,…Ck-L,轉(zhuǎn)換 為等價的M進(jìn)制非遞歸數(shù)據(jù)序列其原理描述如下:
[0046] 參照圖3,將遞歸CPM分解為一個遞歸連續(xù)相位編碼器CPE和一個無記憶調(diào)制器ΜΜ, 遞歸連續(xù)相位編碼器CPE將輸入數(shù)據(jù)序列c編碼為輸出序列.…,再送入無 m-0 記憶調(diào)制器MM進(jìn)行調(diào)制,其中輸入數(shù)據(jù)序列與輸出序列之間的關(guān)系為:
[0047]
[0048] 解得遞歸CPM的生成矩陣Gr=[1,D,D2…,DL/1_D],其中0彡j彡L-1;
[0049] 參照圖4,將非遞歸CPM分解為非遞歸連續(xù)相位編碼器CPE和一個無記憶調(diào)制器MM, 非遞歸連續(xù)相位編碼器CPE將輸入數(shù)據(jù)序列c編碼為遞歸數(shù)據(jù)序列ck,…,并將 該遞歸數(shù)據(jù)序列通過轉(zhuǎn)換矩陣Gz轉(zhuǎn)換為非遞歸數(shù)據(jù)序列4…4,··< +Ι,再送入無記憶調(diào)制器 MM進(jìn)行調(diào)制,其中輸入數(shù)據(jù)序列與遞歸數(shù)據(jù)序列之間的關(guān)系為:
[0050] c · Gnr= [ck,…,ck-i,."ck-L]
[0051] 遞歸數(shù)據(jù)序列與非遞歸數(shù)據(jù)序列之間的關(guān)系為:
[0052]
[0053]解得非遞歸CPM的生成矩陣6服=[1,0,02"_,妒],而遞歸數(shù)據(jù)序列與非遞歸數(shù)據(jù)序 列之間的轉(zhuǎn)換矩陣Gz需要用Gr和Gnr求解;
[0054]遞歸數(shù)據(jù)序列與非遞歸數(shù)據(jù)序列之間的轉(zhuǎn)換矩陣Gz求解原理如下:
[0055] 為了使遞歸連續(xù)相位編碼器CPE和非遞歸連續(xù)相位編碼器CPE送入無記憶調(diào)制器 麗進(jìn)行調(diào)制的數(shù)據(jù)序列等價,需要滿足:(I-D)Gr = GnrGz,從而解得L+1行、L+1列的轉(zhuǎn)換矩陣 Gz:
[0056]
[0057] 求解得到轉(zhuǎn)換矩陣Gz之后,即得遞歸數(shù)據(jù)序列與非遞歸數(shù)據(jù)序列的轉(zhuǎn)換關(guān)系:
[0058]
[0059] 將上述轉(zhuǎn)換關(guān)系展開,得到遞歸數(shù)據(jù)序列與非遞歸數(shù)據(jù)序列的對應(yīng)關(guān)系為:
[0060]
[0061] 其中0彡i$L,l彡1<L+1,D是延遲算子,?是加法操作,回是延遲操作,用該對應(yīng) 關(guān)系在FPGA中實(shí)現(xiàn)遞歸數(shù)據(jù)序列轉(zhuǎn)換成非遞歸數(shù)據(jù)序列,即用遞歸數(shù)據(jù)序列得到非遞歸數(shù) 據(jù)序列,送給查找表地址產(chǎn)生模塊3。
[0062] 查找表地址產(chǎn)生模塊3,將非遞歸轉(zhuǎn)換模塊2輸出的序列心…次,…#+1分別送入Q路 波形輸出模塊8中的Q路查找表及Y路波形輸出模塊9中的Y路查找表,作為各自的查找表地 址,該查找表地址可尋址范圍為0~M ui-I;其中,Q路查找表在Q路查找表生成模塊6中生成, Y路查找表在Y路查找表生成模塊7中生成。
[0063]正弦C語言仿真模塊4,根據(jù)非遞歸CPM的參數(shù)得到非遞歸CPM的NMui個正弦波形采 樣值,即在C語言仿真環(huán)境下先設(shè)置非遞歸CPM的參數(shù),再仿真出非遞歸CPM的妒+1條正弦波 形,并對每條正弦波形進(jìn)行N次采樣,得到非遞歸CPM的NM ui個正弦波形采樣值,其中非遞歸 CPM的參數(shù)包括調(diào)制指數(shù)h、采樣數(shù)N、調(diào)制脈沖類型以及調(diào)制記憶長度L。
[0064]余弦C語言仿真模塊5,根據(jù)非遞歸CPM的參數(shù)得到非遞歸CPM的ΝΜ?+1個余弦波形采 樣值,即在C語言仿真環(huán)境下先設(shè)置非遞歸CPM的參數(shù),再仿真出非遞歸CPM的Μ?+1條余弦波 形,并對每條余弦波形進(jìn)行N次采樣,得到非遞歸CPM的NM ui個余弦波形采樣值。
[0065] Q路查找表生成模塊6,根據(jù)正弦C語言仿真模塊4輸出的正弦波形采樣值生成Q路 查找表,并將該Q路查找表送入Q路波形輸出模塊8;生成Q路查找表的方法如下:
[0066]先在FPGA芯片中創(chuàng)建一個ROM查找表,再將正弦波形采樣值進(jìn)行T比特量化,將量 化之后的正弦波形采樣值存儲在該ROM查找表中,即生成Q路查找表。
[0067] Y路查找表生成模塊7,根據(jù)余弦C語言仿真模塊5輸出的余弦波形采樣值生成Y路 查找表,并將該Y路查找表送入Y路波形輸出模塊9;生成Y路查找表的方法如下:
[0068]先在FPGA芯片中創(chuàng)建一個ROM查找表,再將余弦波形采樣值進(jìn)行T比特量化,將量 化之后的余弦波形采樣值并存儲在該ROM查找表中,即生成Y路查找表。
[0069] Q路波形輸出模塊8,根據(jù)查找表地址讀取Q路查找表中存儲的非遞歸CPM的正弦波 形采樣值,讀取出來的非遞歸CPM的正弦波形采樣值,即為非遞歸數(shù)據(jù)序列4,…,4,…4+ 1對 應(yīng)的非遞歸CPM的Q路基帶波形,最后將非遞歸CPM的Q路基帶波形輸出。
[0070] Y路波形輸出模塊9,根據(jù)查找表地址讀取Y路查找表中存儲的非遞歸CPM的余弦波 形采樣值,讀取出來的非遞歸CPM的正弦波形采樣值,即為非遞歸數(shù)據(jù)序列4,…,4,···4+1對 應(yīng)的非遞歸CPM的Y路基帶波形,最后將非遞歸CPM的Y路基帶波形輸出。
[0071 ] 參照圖2,本發(fā)明基于FPGA的非遞歸CPM解調(diào)器,包括:
[0072]本地復(fù)信號模塊10、復(fù)共輒乘積模塊11、復(fù)共輒存儲模塊12、Gama計(jì)算模塊13、 Gama存儲模塊14、Alpha初始值模塊15、Alpha計(jì)算模塊16、Alpha存儲模塊17、Beta初始值模 塊18、Beta計(jì)算模塊19、Beta存儲模塊20、求和軟信息模塊21,其中,本地復(fù)信號模塊10和復(fù) 共輒乘積模塊11依次連接;復(fù)共輒乘積模塊11、復(fù)共輒存儲模塊12、Gama計(jì)算模塊13依次連 接;Gama計(jì)算模塊13的輸入分為兩路,一路與Alpha計(jì)算模塊16連接,另一路與Gama存儲模 塊14連接;Alpha計(jì)算模塊16的輸出分為兩路,一路與Alpha初始值模塊15連接,另一路與 Alpha存儲模塊17連接;Alpha存儲模塊17和求和軟信息模塊21依次連接;Gama存儲模塊14 的輸出分為兩路,一路與Beta計(jì)算模塊19連接,另一路與求和軟信息模塊21連接;Beta計(jì)算 模塊19的輸出分為兩路,一路與Beta初始值模塊18連接,另一路與Beta存儲模塊20連接; Beta存儲模塊20和求和軟信息模塊21依次連接;Alpha初始值模塊15和Alpha計(jì)算模塊16相 互連接;Beta初始值模塊18和Beta計(jì)算模塊19相互連接。
[0073]各模塊的功能及整個解調(diào)器的工作原理如下:
[0074]本地復(fù)信號模塊10,生成非遞歸CPM的妒+1種本地復(fù)信號s,并將本地復(fù)信號s送入 復(fù)共輒乘積模塊11,其中本地復(fù)信號S包括實(shí)部和虛部兩部分,實(shí)部是非遞歸CPM余弦波形 采樣值進(jìn)行H比特量化之后的值,虛部是將非遞歸CPM正弦波形采樣值進(jìn)行H比特量化之后 的值。
[0075] 復(fù)共輒乘積模塊11,將信道接收到的k時刻的復(fù)基帶信號^與妒+1種本地復(fù)信號S 的復(fù)數(shù)共輒sH進(jìn)行相乘操作,并將乘積結(jié)果rksH送入復(fù)共輒存儲模塊12。
[0076] 復(fù)共輒存儲模塊12,將復(fù)共輒乘積模塊11輸出的乘積結(jié)果進(jìn)行存儲,并將該乘積 結(jié)果送入Gama計(jì)算模塊13,其中對乘積結(jié)果的存儲,需要存儲R個時刻,每個時刻包括Μ ?+1個 乘積結(jié)果。
[0077] Gama計(jì)算模塊13,根據(jù)復(fù)共輒存儲模塊12傳輸?shù)某朔e結(jié)果rkSH計(jì)算出Mui個分支度 量值γ k( Sk,Sk+1 ),并將該分支度量值送入Gama存儲模塊14及Alpha計(jì)算模塊16;
[0078]所述分支度量γ k( Sk,Sk+1)的計(jì)算原理描述如下:
[0079] 由于本地復(fù)信號s有Μ?+1種可能的取值,所以每接收一個符號都需要計(jì)算出Μ?+1個 分支度量值,γ k(Sk,Sk+1)表示k時刻網(wǎng)格狀態(tài)Sk轉(zhuǎn)移到k+Ι時刻網(wǎng)格狀態(tài)Sk+j^分支度量值, 網(wǎng)格狀態(tài)每個時刻有個,分支度量γ k(Sk,Sk+1)的計(jì)算公式為:
[0080] γ k(Sk,Sk+i) = I pk(Sk)+rksH | -1 pk(Sk)
[0081] 其中,Pk(Sk)反映了前k個符號與接收到的基帶復(fù)信號之間的相關(guān)性,k = 0時,po (So) =0,其它k時刻,Pk(Sk)的計(jì)算公式為:
[0082] pk(Sk)=a · pk-i(Sk-i)+rk-isH
[0083] α是用來簡化運(yùn)算的遺忘因子,Pk-KSk-O反映了前k_l個符號與接收到的基帶復(fù)信 號之間的相關(guān)性,r k-1SH是k-Ι時刻的乘積結(jié)果。
[0084] Gama存儲模塊14,對Gama計(jì)算模塊13傳輸?shù)姆种Ф攘恐颠M(jìn)行存儲,并將該分支度 量值送入Beta計(jì)算模塊19及求和軟信息模塊21,其中對分支度量值的存儲,需要存儲R個時 亥IJ,每個時刻包括Mui個分支度量值。
[0085] Alpha初始值模塊15,存儲k時刻前向度量初始值ak(Sk),并在k+1時刻將該前向度 量初始值送入Alpha計(jì)算模塊16,其中,k = 0時,網(wǎng)格狀態(tài)So = [0,0,...,0]的前向度量初始 值為常數(shù)m,其他網(wǎng)格狀態(tài)的前向度量初始值為0。
[0086] Alpha計(jì)算模塊16,根據(jù)分支度量γ k(Sk,Sk+1)和前向度量初始值ak(Sk),計(jì)算出k+ 1時刻的M 1個前向度量值ak+1 (Sk+1 ),并將該前向度量值分別送入Alpha初始值模塊15及 Alpha存儲模塊17;
[0087] 所述前向度量值的計(jì)算原理描述如下:
[0088] k時刻網(wǎng)格狀態(tài)有,個,每個狀態(tài)下有M個可能的輸入符號,狀態(tài)轉(zhuǎn)移中到達(dá)的網(wǎng) 格狀態(tài)也有個,將每個狀態(tài)的初始前向度量值和M ui個分支度量值求和,選擇出M個輸入 符號中該求和結(jié)果最大的輸入符號,該輸入符號所對應(yīng)的求和結(jié)果即是k+Ι時刻的前向度 量值,即前向度量的計(jì)算公式為:
[0089]
[0090] Alpha存儲模塊17,將Alpha計(jì)算模塊16傳輸?shù)那跋蚨攘恐颠M(jìn)行存儲,并將該前向 度量值送入求和軟信息模塊21,其中對前向度量值的存儲,需要存儲R個時刻,每個時刻包 括個前向度量值。
[0091] Beta初始值模塊18,存儲k+Ι時刻后向度量初始值&+1(Sk+1),并在k時刻將該后向 度量初始值送入Beta計(jì)算模塊19,其中,k = R時,網(wǎng)格狀態(tài)Sr= [0,0,...,0]的后向度量初 始值為常數(shù)m,其他網(wǎng)格狀態(tài)的后向度量初始值為0,R表示最后一個符號的傳輸時刻。
[0092] Beta計(jì)算模塊19,根據(jù)分支度量γ k(Sk,Sk+1)和后向度量初始值&+1 (Sk+1),計(jì)算出k 時刻的個后向度量值&(Sk),并將該后向度量值送入Beta初始值模塊18及Beta存儲模塊 20;
[0093]所述后向度量值的計(jì)算原理描述如下:
[0094]由后往前計(jì)算后向度量值,即從接收的最后一個符號開始計(jì)算后向度量值,計(jì)算 到接收的第一個符號為止。即后向度量值^(Sk)的計(jì)算公式為:
[0095]

[0096] Beta存儲模塊20,將Beta計(jì)算模塊19傳輸?shù)暮笙蚨攘恐颠M(jìn)行存儲,并將該后向度 量值送入求和軟信息模塊21,其中對后向度量值的存儲,需要存儲R個時刻,每個時刻包括 個后向度量值。
[0097] 求和軟信息模塊21,根據(jù)分支度量值γ k(Sk,Sk+1)、前向度量值ak(Sk)及后向度量 值& +1(Sk+1),計(jì)算出k時刻符號為的軟輸出信息
[0098] 所述軟輸出信息的計(jì)算原理描述如下:
[0099] 首先將k時刻每個網(wǎng)格狀態(tài)下的M個輸入符號所對應(yīng)的分支度量值、前向度量值及 后向度量值求和;再選擇出每個符號的Μ1+ 1個求和結(jié)果中最大的一個值,即為該符號的軟輸 出信息朽4),即軟輸出信息計(jì)算公式為:
[0100]
【主權(quán)項(xiàng)】
1. 一種基于FPGA的非遞歸CPM調(diào)制器,其特征在于,包括: 連續(xù)相位編碼模塊(1 ),用于將基帶二進(jìn)制數(shù)據(jù)流轉(zhuǎn)換為M進(jìn)制遞歸數(shù)據(jù)序列kk},其中 Ck表示第k時刻的M進(jìn)制數(shù)據(jù)符號;用L+1個Iogs(M)比特位寬的寄存器存儲該遞歸數(shù)據(jù)序列, 貝化時刻移位寄存器的內(nèi)容為Ck,…,Ck-I, I-Ck-L,將其送入非遞歸轉(zhuǎn)換模塊(2),其中 L,L表示調(diào)制記憶長度; 非遞歸轉(zhuǎn)換模塊(2),用于將連續(xù)相位編碼模塊(1)中輸出的M進(jìn)制遞歸數(shù)據(jù)序列Ck,…, Ck-I,-Ck-L,轉(zhuǎn)換為等價的M進(jìn)制非遞歸數(shù)據(jù)序列如…苗,…皆1,并將該非遞歸數(shù)據(jù)序列送入 查找表地址產(chǎn)生模塊(3)中,其中0《i《L,l《l《L+l; 查找表地址產(chǎn)生模塊(3),用于將非遞歸轉(zhuǎn)換模塊(2)輸出的序列如…,古….、fi分別送入 Q路波形輸出模塊(8)中的Q路查找表及Y路波形輸出模塊(9)中的Y路查找表,作為各自的查 找表地址,其可尋址范圍為0~; 正弦C語言仿真模塊(4),用于根據(jù)非遞歸CPM的參數(shù)得到非遞歸CPM的NlW個正弦波形 采樣值,即在C語言仿真環(huán)境下先設(shè)置非遞歸CPM的參數(shù),再仿真出非遞歸CPM的mL+1條正弦 波形,并對每條正弦波形進(jìn)行N次采樣,得到非遞歸CPM的NlL"個正弦波形采樣值,其中非遞 歸CPM的參數(shù)包括調(diào)制指數(shù)h、采樣數(shù)N、調(diào)制脈沖類型W及調(diào)制記憶長度レ 余弦C語言仿真模塊(5),用于根據(jù)非遞歸CPM的參數(shù)得到非遞歸CPM的NM^i個余弦波形 采樣值,即在C語言仿真環(huán)境下先設(shè)置非遞歸CPM的參數(shù),再仿真出非遞歸CPM的條余弦 波形,并對每條余弦波形進(jìn)行N次采樣,得到非遞歸CPM的NM^i個余弦波形采樣值. Q路查找表生成模塊(6),用于根據(jù)正弦C語言仿真模塊(4)輸出的正弦波形采樣值生成 Q路查找表,即先在FPGA忍片中創(chuàng)建一個ROM查找表,再將正弦波形采樣值進(jìn)行T比特量化并 存儲在該ROM查找表中,即生成Q路查找表;將該Q路查找表送入Q路波形輸出模塊(8); Y路查找表生成模塊(7),用于根據(jù)余弦C語言仿真模塊(5)輸出的余弦波形采樣值生成 Y路查找表,即先在FPGA忍片中創(chuàng)建一個ROM查找表,再將余弦波形采樣值進(jìn)行T比特量化并 存儲在該ROM查找表中,即生成Y路查找表;將該Y路查找表送入Y路波形輸出模塊(9); Q路波形輸出模塊(8 ),用于根據(jù)查找表地址讀取Q路查找表中存儲的非遞歸CPM的正弦 波形采樣值,輸出與非遞歸數(shù)據(jù)序列心…,4,…對應(yīng)的非遞歸CPM的Q路基帶波形; Y路波形輸出模塊(9 ),用于根據(jù)查找表地址讀取Y路查找表中存儲的非遞歸CPM的余弦 波形采樣值,輸出與非遞歸數(shù)據(jù)序列X!,…,A'.…對應(yīng)的非遞歸CPM的Y路基帶波形。2. 根據(jù)權(quán)利要求1所述的基于FPGA的非遞歸CPM調(diào)制器,其中非遞歸轉(zhuǎn)換模塊(2)將連 續(xù)相位編碼模塊(1)中輸出的M進(jìn)制遞歸數(shù)據(jù)序列Ck,…,Ck-I,-Ck-L,轉(zhuǎn)換為等價的M進(jìn)制非 遞歸數(shù)據(jù)序列.中…,六.…&W,按如下轉(zhuǎn)換關(guān)系公式進(jìn)行:將上述轉(zhuǎn)換關(guān)系展開,得到遞歸數(shù)據(jù)序列與非遞歸數(shù)據(jù)序列的對應(yīng)關(guān)系為:3. -種基于FPGA的非遞歸CPM解調(diào)器,其特征在于,包括: 本地復(fù)信號模塊(10),用于生成非遞歸CPM的種本地復(fù)信號S,并將本地復(fù)信號S送 入復(fù)共輛乘積模塊(11); 復(fù)共輛乘積模塊(11 ),用于將信道接收到的k時刻的復(fù)基帶信號n與種本地復(fù)信號S 的復(fù)數(shù)共輛sH進(jìn)行相乘操作,并將乘積結(jié)果rksH送入復(fù)共輛存儲模塊(12); 復(fù)共輛存儲模塊(12),用于將復(fù)共輛乘積模塊(11)輸出的乘積結(jié)果進(jìn)行存儲,并將該 乘積結(jié)果送入Gama計(jì)算模塊(13); Gama計(jì)算模塊(13),用于根據(jù)復(fù)共輛存儲模塊(12)傳輸?shù)某朔e結(jié)果rksH計(jì)算出個分 支度量值丫 k( Sk,Sw ),并將該分支度量值送入Gama存儲模塊(14)及Al地a計(jì)算模塊(16),其 中丫 k( Sk,Sk+i)表示k時刻網(wǎng)格狀態(tài)Sk轉(zhuǎn)移至化+1時刻網(wǎng)格狀態(tài)SkH的分支度量值,每個時亥U 有#個網(wǎng)格狀態(tài); Gama存儲模塊(14),用于對Gama計(jì)算模塊(13)傳輸?shù)姆种Ф攘恐颠M(jìn)行存儲,并將該分 支度量值送入Be化計(jì)算模塊(19)及求和軟信息模塊(21); Alpha初始值模塊(15),用于存儲k時刻前向度量初始值ak( Sk),并在k+1時刻將該前向 度量初始值送入Al地a計(jì)算模塊(16),其中,k = 0時,網(wǎng)格狀態(tài)So = [0,0,. . .,0]的前向度量 初始值為常數(shù)m,其他網(wǎng)格狀態(tài)的前向度量初始值為0; Alpha計(jì)算模塊(16),用于根據(jù)分支度量丫 k(Sk,Sk+i)和前向度量初始值ak(Sk),計(jì)算出k + 1時刻的1^個前向度量值曰…(Sw),并將該前向度量值分別送入41911曰初始值模塊(15)及 Alpha存儲模塊(17); Alpha存儲模塊(17),用于將Al地a計(jì)算模塊(16)傳輸?shù)那跋蚨攘恐颠M(jìn)行存儲,并將該 前向度量值送入求和軟信息模塊(21); Beta初始值模塊(18),用于存儲k+1時刻后向度量初始值故+1 (Sk+i),并在k時刻將該后 向度量初始值送入Beta計(jì)算模塊(19),其中,k =則寸,網(wǎng)格狀態(tài)Sr=[0,0,. . .,0]的后向度 量初始值為常數(shù)m,其他網(wǎng)格狀態(tài)的后向度量初始值為0,R表示最后一個符號的傳輸時刻; Beta計(jì)算模塊(19 ),用于根據(jù)分支度量丫 k(Sk,Sw)和后向度量初始值故+1 (Sw),計(jì)算 出k時刻的#個后向度量值化(Sk),并將該后向度量值送入Be化初始值模塊(18)及Beta存儲 模塊(20); Beta存儲模塊(20),用于將Beta計(jì)算模塊(19)傳輸?shù)暮笙蚨攘恐颠M(jìn)行存儲,并將該后 向度量值送入求和軟信息模塊(21); 求和軟信息模塊(21),用于根據(jù)分支度量值丫 k( Sk,Sw)、前向度量值ak( Sk)及后向度量 值故+I(Sw),計(jì)算出k時刻符號為的軟輸出信息巧) d4. 根據(jù)權(quán)利要求3所述的基于FPGA的非遞歸CPM解調(diào)器,其中本地復(fù)信號模塊(10)生成 的本地復(fù)信號S包括實(shí)部和虛部兩部分,即先將非遞歸CPM的余弦波形采樣值進(jìn)行化k特量 化,得到本地復(fù)信號S的實(shí)部,再將非遞歸CPM的正弦波形采樣值進(jìn)行化k特量化,得到本地 復(fù)信號S的虛部。5. 根據(jù)權(quán)利要求3所述的基于FPGA的非遞歸CPM解調(diào)器,其中Gama計(jì)算模塊(13)中分支 度量丫 k( Sk,Sw)的計(jì)算公式為: y k (Sk, Sk+i) = I Pk (Sk) +rks^ I -1 Pk (Sk) 其中,Pk(Sk)反映了前k個符號與接收到的基帶復(fù)信號之間的相關(guān)性,k = 0時,PO(So) = 0,其它k時刻,Pk(Sk)的計(jì)算公式為: Fik(Sk)=Q ? pk-i(Sk-i)+rk-isH a是用來簡化運(yùn)算的遺忘因子,Pk-I(Sk-I)反映了前k-1個符號與接收到的基帶復(fù)信號之 間的相關(guān)性,rk-isH是k-1時刻的乘積結(jié)果。6. 根據(jù)權(quán)利要求3所述的基于FPGA的非遞歸CPM解調(diào)器,其中: 復(fù)共輛存儲模塊(12)對乘積結(jié)果的存儲,需要存儲R個時刻,每個時刻包括個乘積 結(jié)果; Gama存儲模塊(14)對分支度量值的存儲,需要存儲R個時刻,每個時刻包括個分支 度量值。7. 根據(jù)權(quán)利要求3所述的基于FPGA的非遞歸CPM解調(diào)器,其中: Alpha存儲模塊(17)對前向度量值的存儲,需要存儲R個時刻,每個時刻包括#個前向度 量值; 86*3存儲模塊(20)對后向度量值的存儲,需要存儲3個時刻,每個時刻包括1^個后向度 量值。8. 根據(jù)權(quán)利要求3所述的基于FPGA的非遞歸CPM解調(diào)器,其中Alpha計(jì)算模塊(16)中前 向度量值祉+1 (Sk+i),其i+貸公立責(zé).9. 根據(jù)【主權(quán)項(xiàng)】
計(jì)算模塊(19)中后向 度量值化(Sk),其計(jì)算10. 根據(jù)權(quán)利要才 和軟信息模塊(21)中 軟輸出信息巧苗)的計(jì)
【文檔編號】H04L27/233GK105915483SQ201610394874
【公開日】2016年8月31日
【申請日】2016年6月6日
【發(fā)明人】白寶明, 孫浩, 黎昞, 沈春慧
【申請人】西安電子科技大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1