專利名稱:一種基于fpga實現(xiàn)gmsk信號發(fā)生器的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域的數(shù)字信號處理系統(tǒng),尤其涉及一種基于FPGA實現(xiàn)GMSK信號發(fā)生器的方法。
背景技術(shù):
數(shù)字濾波器通常都是應(yīng)用于修正或改變時域或頻域中信號的屬性。最為普通的數(shù)字濾波器就是線性時間不變量(LTI)濾波器。LTI數(shù)字濾波器根據(jù)單位脈沖響應(yīng)h (η)的時間特性可分為無限長單位脈沖響應(yīng)(IIR)數(shù)字濾波器和有限長單位脈沖響應(yīng)(FIR)濾波器兩種。 FIR (Finite Impulse Response)濾波器是數(shù)字信號處理系統(tǒng)中最基本的兀件,它可以實現(xiàn)任意幅頻特性的同時能夠保證嚴(yán)格的線性相位特性,同時其單位沖激響應(yīng)是有限的,是沒有輸入到輸出的反饋的穩(wěn)定系統(tǒng)。因此在通信、圖像處理、模式識別等領(lǐng)域都有著廣泛的應(yīng)用。GMSK信號發(fā)生器的高斯濾波最小移頻鍵控(GMSK)是一種特殊的CPFSK調(diào)制,它利用高斯濾波器對基帶信號進(jìn)行預(yù)處理,使得信號的功率譜在主瓣以外衰減較快,主瓣寬度窄對鄰道干擾較小,因此應(yīng)用比較廣泛。實現(xiàn)GMSK信號發(fā)生器調(diào)制的關(guān)鍵是高斯濾波器的設(shè)計。濾波器在信號處理、信號檢測等通信領(lǐng)域有非常重要的應(yīng)用,在實時系統(tǒng)中,對濾波器的性能和處理速度有非常嚴(yán)格的要求,特別是快速實時系統(tǒng)中,處理速度至關(guān)重要。為了使輸出頻譜密集,高斯濾波器必須具備以下特性窄帶和尖銳的截止特性,以抑制信號發(fā)生器輸入信號中的高頻分量,Ω脈沖響應(yīng)過沖量小,以防止瞬時頻偏過大,保持濾波器輸出脈沖響應(yīng)曲線下的面積對應(yīng)于P/2的相移,使調(diào)制指數(shù)為1/2,而實現(xiàn)以上性能一般是通過采用硬件直接數(shù)字實現(xiàn)GMSK調(diào)制。GMSK信號發(fā)生器一般采用模擬濾波器和壓控振蕩器來實現(xiàn),但是模擬電路的實現(xiàn)方式靈活性低,參數(shù)配置需要通過改變片外硬件參數(shù)來實現(xiàn)。由于全數(shù)字化通信系統(tǒng)的發(fā)展,以模擬或模數(shù)混合的GMSK信號發(fā)生器已不能適應(yīng)通信系統(tǒng)現(xiàn)代化需求,因而,需要探索一種GMSK信號發(fā)生器實現(xiàn)全數(shù)字化的新方法。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,特別研發(fā)一種基于FPGA實現(xiàn)GMSK信號發(fā)生器的方法。該方法可以根據(jù)需要靈活調(diào)整高斯濾波器的階數(shù)和參數(shù),滿足不同系統(tǒng)條件下的帶寬需求和性能要求,而且實現(xiàn)的速度快,效率高。本發(fā)明為實現(xiàn)上述目的采取的技術(shù)方案是一種基于FPGA實現(xiàn)GMSK信號發(fā)生器的方法,其特征在于將NRZ編碼模塊、高斯濾波模塊、相位累加模塊、正交調(diào)制模塊和D/A轉(zhuǎn)換模塊集成在FPGA芯片上,其方法步驟如下
(一).NRZ編碼模塊編碼對輸入的數(shù)字信號進(jìn)行編碼,當(dāng)數(shù)字信號為O時,對應(yīng)選通信號-1作為NRZ編碼模塊信號輸出;當(dāng)輸入信號為I時,選通信號+1作為NRZ編碼模塊信號輸出;
(二).選擇濾波方式進(jìn)行濾波高斯濾波模塊包括兩種高斯濾波的方式,一種為FIR數(shù)字濾波的方式,另一種為基于波形存儲的濾波方式,根據(jù)不同的濾波要求,通過控制信號選通開關(guān)SEL選取濾波的方式,開啟對應(yīng)的濾波模塊;當(dāng)控制信號選通開關(guān)SELl為I時,通路選擇FIR數(shù)字濾波的方式,同時控制信號選通開關(guān)SEL2也置為1,將FIR數(shù)字濾波的輸出數(shù)據(jù)作為最后輸出的頻率信號;當(dāng)控制信號選通開關(guān)SELl為O時,則通路選擇基于波形存儲的濾波方式,同時控制信號選通開關(guān)SEL2也置為O,并將波形存儲濾波的輸出數(shù)據(jù)作為最后輸出的頻率信號,實現(xiàn)對應(yīng)通路的高斯濾波;
(三).相位累加模塊將高斯濾波后的信號進(jìn)行累加,累加后的輸出信號即為該時刻所表示的相位值;
(四).正交調(diào)制模塊將經(jīng)過累加后的相位值分兩路進(jìn)行ROM查表,分別得到對應(yīng)該相位的一路的余弦值和另一路的正弦值;
(五)·正交調(diào)制模塊將其中一路的余弦值與COSWt信號相乘,將另一路的正弦值與sinwt/[目號相乘,兩路/[目號的乘積相減之差即為廣生的GMSK調(diào)制/[目號;
(六).最后D/A轉(zhuǎn)換模塊將GMSK調(diào)制數(shù)字信號變換為用于示波器觀測的GMSK模擬調(diào)制信號輸出。本發(fā)明的有益效果是采用本方法實現(xiàn)的GMSK信號發(fā)生器調(diào)制的信號可根據(jù)系統(tǒng)的濾波要求,通過靈活的控制濾波方式的切換,選擇不同濾波方式的濾波器,以實現(xiàn)不同系統(tǒng)帶寬需求的GMSK信號產(chǎn)生,而且本方法具有實現(xiàn)速度快,占用資源少的特點,從而滿足數(shù)字信號處理系統(tǒng)對GMSK信號發(fā)生器實現(xiàn)全數(shù)字化的需求。
圖1為本發(fā)明實現(xiàn)的GMSK信號發(fā)生器的系統(tǒng)框 圖2為本發(fā)明實現(xiàn)高斯濾波模塊的數(shù)字邏輯電路原理框 圖3為本發(fā)明實現(xiàn)FIR數(shù)字濾波方式的濾波模塊原理框 圖4為本發(fā)明實現(xiàn)基于波形存儲濾波方式的濾波模塊原理框圖。
具體實施例方式以下結(jié)合附圖對本發(fā)明作進(jìn)一步說明參照圖1和圖2,本方法是將NRZ編碼模塊、高斯濾波模塊、相位累加模塊、正交調(diào)制模塊和D/A轉(zhuǎn)換模塊集成在FPGA芯片上,其方法步驟如下
(一).NRZ編碼模塊編碼對輸入的數(shù)字信號進(jìn)行編碼,當(dāng)數(shù)字信號為O時,對應(yīng)選通信號-1作為NRZ編碼模塊信號輸出;當(dāng)輸入信號為I時,選通信號+1作為NRZ編碼模塊信號輸出;
(二)·選擇濾波方式高斯濾波模塊包括兩種高斯濾波的方式,一種為FIR數(shù)字濾波的方式,另一種為基于波形存儲的濾波方式,根據(jù)不同的濾波要求,通過控制信號選通開關(guān)SEL選取濾波的方式,開啟對應(yīng)的濾波模塊;當(dāng)控制信號選通開關(guān)SELl為I時,通路選擇FIR數(shù)字濾波的方式,同時控制信號選通開關(guān)SEL2也置為1,將FIR數(shù)字濾波的輸出數(shù)據(jù)作為最后輸出的頻率信號;當(dāng)控制信號選通開關(guān)SELl為O時,則通路選擇基于波形存儲的濾波方式,同時控制信號選通開關(guān)SEL2也置為0,并將波形存儲濾波的輸出數(shù)據(jù)作為最后輸出的頻率信號,實現(xiàn)對應(yīng)通路的高斯濾波;
(三).相位累加模塊將高斯濾波后的信號進(jìn)行累加,累加后的輸出信號即為該時刻所表示的相位值;
(四).正交調(diào)制模塊將經(jīng)過相位累加后的相位值分兩路進(jìn)行ROM查表,分別得到對應(yīng)該相位的一路的余弦值和另一路的正弦值;
(五)·正交調(diào)制模塊將其中一路的余弦值與coswt信號相乘,將另一路的正弦值與sinwt/[目號相乘,兩路/[目號的乘積相減之差即為廣生的GMSK調(diào)制/[目號;
(六).最后D/A轉(zhuǎn)換模塊將GMSK調(diào)制數(shù)字信號變換為用于示波器觀測的GMSK模擬調(diào)制信號輸出。參照圖3,本方法實現(xiàn)的FIR數(shù)字濾波方式的濾波模塊包括N級移位寄存器D,每級移位寄存器D的輸入信號與每級的濾波器系數(shù)coef相乘后進(jìn)行求和,其求和計算結(jié)果即為FIR數(shù)字濾波方式的濾波模塊的輸出信號。參照圖4,本方法實現(xiàn)的基于波形存儲方式的濾波模塊包括五個移位寄存器D,移位寄存器D的每一級的輸出作為下一級的輸入信號,五個移位寄存器中的五個數(shù)據(jù)分別存儲在緩沖器中,緩沖器通過串并轉(zhuǎn)換的方式將存儲的數(shù)據(jù)并行傳輸給計數(shù)器,計數(shù)器根據(jù)過采樣率來決定累加次數(shù),ROM中預(yù)先存儲好對應(yīng)五個輸入數(shù)據(jù)的高斯濾波的時域波形,最后將計數(shù)器累加次數(shù)作為ROM的輸入地址,根據(jù)所存儲數(shù)據(jù)進(jìn)行ROM查表,以此讀取相應(yīng)的濾波后輸出的頻率信號。本發(fā)明各模塊具體功能如下
NRZ (不歸零)編碼模塊NZR編碼模塊是FPGA內(nèi)部接收外部數(shù)據(jù)的第一個模塊,外部輸入的數(shù)字信號通過FPGA的IO 口傳輸給NRZ編碼模塊,其實現(xiàn)原理就是一個數(shù)據(jù)選通器,輸入給NRZ編碼模塊的數(shù)字信號為“O”時,對應(yīng)選擇信號“-1”作為本模塊信號輸出;當(dāng)輸入信號為“I”時,選通信號“+I”作為本模塊信號輸出,輸入信號為Ibit,輸出信號為2bit。高斯濾波模塊本模塊由兩部分組成,如圖2所示,一部分是FIR高斯濾波器,負(fù)責(zé)典型的高斯濾波作用,另一部分是存儲了多種參數(shù)的高斯濾波的時域波形,根據(jù)系統(tǒng)的配置進(jìn)行相應(yīng)的調(diào)度,靈活選取不同系數(shù)的,產(chǎn)生不同效果高斯濾波。根據(jù)不同的高斯濾波的要求,通過控制信號選通開關(guān)SEL進(jìn)行切換來選取濾波的方式,然后開啟對應(yīng)的濾波模塊,如圖2所示。如圖3所示,為實現(xiàn)FIR高斯濾波器部分,從圖中可以看出數(shù)據(jù)經(jīng)過N級移位寄存器D延遲分別與濾波器系數(shù)coef進(jìn)行相乘后進(jìn)行求和,其計算結(jié)果就是高斯濾波器的輸出,這是FIR濾波器。如圖4所示,為通過波形存儲的方式來實現(xiàn)高斯濾波部分,此濾波器一般用于GMSK的調(diào)制,ROM存儲脈沖波形的高斯時域響應(yīng),數(shù)據(jù)輸入通過Nbit移位寄存器,然后通過串并轉(zhuǎn)換把數(shù)據(jù)作為地址并行傳輸給計數(shù)器,計數(shù)器以時鐘(CLK)為單位根據(jù)采樣率來決定累加次數(shù),最后將計數(shù)器的結(jié)果作為ROM的輸入地址來讀取相應(yīng)的濾波結(jié)果。相位累加模塊本模塊將高斯濾波后的信號進(jìn)行累加,將輸入的信號幅度作為相位關(guān)鍵字變?yōu)橄辔凰矔r值輸送給后級模塊,進(jìn)行相應(yīng)的調(diào)制。正交調(diào)制模塊本發(fā)明中GMSK采用的是正交調(diào)制的方式,如圖1所示,將經(jīng)過相位累加后的輸出信號(即該時刻所表示的相位值)進(jìn)行ROM查表,分別得到對應(yīng)相位的I路的余弦值和Q路的正弦值,然后進(jìn)行正交調(diào)制,一路乘以coswt,另一路對應(yīng)乘以sinwt信號,兩路做減法即產(chǎn)生GMSK調(diào)制數(shù)字信號。D/A轉(zhuǎn)換模塊本模塊實現(xiàn)的是將數(shù)字信號轉(zhuǎn)換為模擬信號的過程,將調(diào)制的GMSK調(diào)制數(shù)字信號變換為可以用示波器觀測的GMSK模擬調(diào)制信號。
權(quán)利要求
1.一種基于FPGA實現(xiàn)GMSK信號發(fā)生器的方法,其特征在于將NRZ編碼模塊、高斯濾波模塊、相位累加模塊、正交調(diào)制模塊和D/A轉(zhuǎn)換模塊集成在FPGA芯片上,其方法步驟如下 (一).NRZ編碼模塊編碼對輸入的數(shù)字信號進(jìn)行編碼,當(dāng)數(shù)字信號為O時,對應(yīng)選通信號-I作為NRZ編碼模塊信號輸出;當(dāng)輸入信號為I時,選通信號+1作為NRZ編碼模塊信號輸出; (二).選擇濾波方式進(jìn)行濾波高斯濾波模塊包括兩種高斯濾波的方式,一種為FIR數(shù)字濾波的方式,另一種為基于波形存儲的濾波方式,根據(jù)不同的濾波要求,通過控制信號選通開關(guān)SEL選取濾波的方式,開啟對應(yīng)的濾波模塊;當(dāng)控制信號選通開關(guān)SELl為I時,通路選擇FIR數(shù)字濾波的方式,同時控制信號選通開關(guān)SEL2也置為1,將FIR數(shù)字濾波的輸出數(shù)據(jù)作為最后輸出的頻率信號;當(dāng)控制信號選通開關(guān)SELl為O時,則通路選擇基于波形存儲的濾波方式,同時控制信號選通開關(guān)SEL2也置為O,并將波形存儲濾波的輸出數(shù)據(jù)作為最后輸出的頻率信號,實現(xiàn)對應(yīng)通路的高斯濾波; (三).相位累加模塊將高斯濾波后的信號進(jìn)行累加,累加后的輸出信號即為該時刻所表示的相位值; (四).正交調(diào)制模塊將經(jīng)過累加后的相位值分兩路進(jìn)行ROM查表,分別得到對應(yīng)該相位的一路的余弦值和另一路的正弦值; (五)·正交調(diào)制模塊將其中一路的余弦值與COSWt信號相乘,將另一路的正弦值與sinwt/[目號相乘,兩路/[目號的乘積相減之差即為廣生的GMSK調(diào)制/[目號; (六).最后D/A轉(zhuǎn)換模塊將GMSK調(diào)制數(shù)字信號變換為用于示波器觀測的GMSK模擬調(diào)制信號輸出。
2.根據(jù)權(quán)利要求I所述的一種基于FPGA實現(xiàn)GMSK信號發(fā)生器的方法,其特征在于所述的FIR數(shù)字濾波方式的濾波模塊包括N級移位寄存器D,每級移位寄存器D的輸入信號與每級的濾波器系數(shù)coef相乘后進(jìn)行求和,其求和計算結(jié)果即為FIR數(shù)字濾波方式的濾波模塊的輸出信號。
3.根據(jù)權(quán)利要求I所述的一種基于FPGA實現(xiàn)GMSK信號發(fā)生器的方法,其特征在于所述的基于波形存儲方式的濾波模塊包括五個移位寄存器D,移位寄存器D的每一級的輸出作為下一級的輸入信號,五個移位寄存器中的五個數(shù)據(jù)分別存儲在緩沖器中,緩沖器通過串并轉(zhuǎn)換的方式將存儲的數(shù)據(jù)并行傳輸給計數(shù)器,計數(shù)器根據(jù)過采樣率來決定累加次數(shù),ROM中預(yù)先存儲好對應(yīng)五個輸入數(shù)據(jù)的高斯濾波的時域波形,最后將計數(shù)器累加次數(shù)作為ROM的輸入地址,根據(jù)所存儲數(shù)據(jù)進(jìn)行ROM查表,以此讀取相應(yīng)的濾波后輸出的頻率信號。
全文摘要
本發(fā)明涉及一種基于FPGA實現(xiàn)GMSK信號發(fā)生器的方法。本方法是將NRZ編碼模塊、高斯濾波模塊、相位累加模塊、正交調(diào)制模塊和D/A轉(zhuǎn)換模塊集成在FPGA芯片上,通過NRZ編碼、選擇濾波方式進(jìn)行濾波、對濾波后的信號累加為相位值、將相位值分兩路進(jìn)行ROM查表,將其中一路的余弦值與coswt信號相乘,將另一路的正弦值與sinwt信號相乘,兩路信號的乘積相減之差即產(chǎn)生GMSK調(diào)制信號。采用本方法實現(xiàn)的GMSK信號發(fā)生器調(diào)制的信號可根據(jù)系統(tǒng)的濾波要求,通過靈活地控制濾波方式的切換來選擇不同濾波方式的濾波器,以實現(xiàn)不同系統(tǒng)帶寬需求的GMSK信號產(chǎn)生,而且本方法具有實現(xiàn)速度快,占用資源少的特點,從而滿足數(shù)字信號處理系統(tǒng)對GMSK信號發(fā)生器實現(xiàn)全數(shù)字化的需求。
文檔編號G05B19/042GK102983839SQ20121051570
公開日2013年3月20日 申請日期2012年12月5日 優(yōu)先權(quán)日2012年12月5日
發(fā)明者曹曉冬, 馬彪, 張鵬泉, 李柬, 范玉進(jìn), 褚孝鵬, 張波, 李羚梅, 夏爽 申請人:天津光電通信技術(shù)有限公司