《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 業(yè)界動態(tài) > 基于FPGA的QPSK高速數(shù)字調(diào)制系統(tǒng)的研究與實現(xiàn)

基于FPGA的QPSK高速數(shù)字調(diào)制系統(tǒng)的研究與實現(xiàn)

2008-07-29
作者:溫曉潔 張 輝

??? 摘? 要: 介紹了一種基于FPGA的QPSK高速數(shù)字" title="高速數(shù)字">高速數(shù)字調(diào)制系統(tǒng)的實現(xiàn)方案。先從調(diào)制系統(tǒng)的基本框圖入手,,簡要介紹其實現(xiàn)原理及流程,;然后著重介紹FPGA功能模塊的軟件編程,、優(yōu)化及整個系統(tǒng)的性能,。
??? 關(guān)鍵詞: FPGA? QPSK? 直接序列擴頻" title="擴頻">擴頻? 高速調(diào)制

?

1 系統(tǒng)實現(xiàn)原理及流程
??? 本調(diào)制系統(tǒng)的設(shè)計目的是實現(xiàn)高速數(shù)字圖像傳輸,。系統(tǒng)的硬件部分主要包括FPGA,、A/D轉(zhuǎn)換器,、D/A轉(zhuǎn)換器,、正交調(diào)制器、輸出電路等,。根據(jù)數(shù)字圖像傳輸?shù)奶攸c,,采用擴頻調(diào)制技術(shù)。這是因為擴頻方式的抗干擾,、抗衰落及抗阻塞能力強,,而且擴頻信號的功率譜密度很低,有利于隱蔽,。同時,,為了提高數(shù)據(jù)傳輸?shù)目煽啃院陀行裕档托盘柺д娑?,減少碼間干擾,在調(diào)制系統(tǒng)中還加入編碼,、交織及匹配濾波" title="匹配濾波">匹配濾波,。這些處理都在FPGA中實現(xiàn),使整個調(diào)制系統(tǒng)具有可編程的特點,,易于根據(jù)實際要求進行功能上的擴展和縮減,。系統(tǒng)的原理框圖如圖1所示。

?


??? 電路的具體工作過程為:圖像信號經(jīng)過A/D轉(zhuǎn)換器AD9214完成模/數(shù)轉(zhuǎn)換,,輸出信號送入FPGA,。由FPGA對信號進行編碼、交織,、串/并變換,、擴頻調(diào)制及匹配濾波。FPGA輸出兩路數(shù)字信號,,經(jīng)過雙D/A轉(zhuǎn)換器AD9763實現(xiàn)數(shù)/模轉(zhuǎn)換,,輸出兩路模擬信號。這兩路信號經(jīng)過正交調(diào)制器AD8346正交調(diào)制輸出,,實現(xiàn)QPSK調(diào)制,。因為正交調(diào)制器輸出的信號功率較小,所以將其經(jīng)過模擬放大器放大和帶通濾波,,之后再送到輸出,。
??? 在整個調(diào)制系統(tǒng)中,F(xiàn)PGA模塊的軟件設(shè)計是最為重要的,,也是進行系統(tǒng)優(yōu)化的主要部分,,它的優(yōu)劣會直接影響整個系統(tǒng)的性能。下面對這部分進行詳細的介紹,。
2 軟件部分實現(xiàn)原理
??? FPGA模塊的軟件設(shè)計部分包括以下幾個方面:編碼,、交織,、串并變換、擴頻,、匹配濾波以及復位和時鐘,。
2.1 編碼和交織
??? 數(shù)字通信中經(jīng)常使用信道編碼加交織模塊來提高數(shù)據(jù)傳輸?shù)目煽啃院陀行浴?BR>??? 為了達到一定的增益要求,選擇卷積碼中純編碼增益為3.01的(2,,1,,6)碼(在大信噪比下),并對其進行增信刪余。這樣既可以發(fā)揮(2,1,6)碼純編碼增益大,、能夠解決接收信道符號極性上的模糊性,、實現(xiàn)最佳和準最佳譯碼容易的良好性能,又能提高信道編碼的碼速率,。該碼增信刪余成為2/3碼率的碼,,最佳生成多項式為(171,133)(八進制),,即:
??? G(D)=[1+D2+D5+D6+D3? 1+D+D2+D3+D6],。由生成多項式可得到編碼框圖(如圖2所示)。在刪除比特分布圖中,,“1”表示這位不刪除,,“0”表示這位刪除。

?


??? 交織是將數(shù)據(jù)的序列打亂,,使交織前后數(shù)據(jù)序列的相關(guān)性減弱,,這樣可以大大降低數(shù)據(jù)突發(fā)錯誤產(chǎn)生的影響。而且,,如果交織器設(shè)計良好,,那么傳送時的突發(fā)錯誤將隨機地分布,這樣采用編譯碼技術(shù)就更容易糾正,。交織技術(shù)主要分為塊交織和卷積交織,。因為本系統(tǒng)的數(shù)據(jù)分幀傳輸,所以交織部分選用塊交織,,一幀數(shù)據(jù)為1764個bit,,交織塊為42bit×42bit。
2.2 串/并變換及擴頻模塊
??? 經(jīng)過交織器輸出的數(shù)據(jù)為一路串行數(shù)據(jù),,要實現(xiàn)QPSK正交調(diào)制必須產(chǎn)生兩路并行數(shù)據(jù),,因此需要進行串/并變換。輸入端口每輸入兩比特數(shù)據(jù),,兩個輸出端口同時輸出一比特數(shù)據(jù),。串/并變換的輸出數(shù)據(jù)要進行擴頻調(diào)制,每輸入兩比特的信息時便輸出與之對應(yīng)的一組64位PN序列,。擴頻序列應(yīng)具有良好的偽隨機特性和相關(guān)特性,,擴頻通信系統(tǒng)的許多優(yōu)異特性都與擴頻碼的設(shè)計密切相關(guān),。這里選擇平衡Gold碼序列作為系統(tǒng)的擴頻序列。Gold碼繼承了m序列的許多優(yōu)點,,而可用的條數(shù)又遠遠大于m序列,,是作為擴頻碼的良好碼型。
2.3 濾波模塊
??? 擴頻以后的碼元為方波,,其頻譜是無限寬的,,通過有限帶寬的信道傳輸,方波會在時間上擴展,,造成碼間干擾,,導致接收機在檢測一個碼元時發(fā)生錯誤的概率增大。所以在調(diào)制系統(tǒng)中需要對信號進行濾波,,以減少失真和符號間干擾(ISI),。在這里,選擇具有均方升余弦滾降特性的濾波器,。具有升余弦滾降特性的H(ω)可表示為:

???

??? 發(fā)送濾波器的頻率響應(yīng)為GT(f),,接收端" title="接收端">接收端濾波器的頻率響應(yīng)為GR(f),則GT(f)·GR(f)=H(ω),。對于線性相位的FIR濾波器來說,使用窗函數(shù)法,,則發(fā)送端匹配濾波器的傳輸函數(shù)為:

???

??? 取不同的窗函數(shù),,濾波器的頻譜特性不同。這里選擇哈明窗作為窗函數(shù),,這樣可以避免產(chǎn)生吉布斯現(xiàn)象,。取滾降系數(shù)α=0.4,抽樣步長Ts=Tc/6,,階數(shù)N=48,。圖3為濾波器頻譜特性的仿真結(jié)果。

?

?

2.4 時鐘和復位模塊
??? 整個系統(tǒng)都是在時鐘的控制下進行工作的,。系統(tǒng)外部有一個時鐘源,通過芯片內(nèi)部的CLKPLL模塊對外部時鐘進行倍頻,,然后根據(jù)FPGA各個模塊的需要進行分頻。系統(tǒng)在加電時需要對信號和變量進行初始化,特別是當信號和變量的初始值不為零時,復位模塊就不可缺少,。
3 具體實現(xiàn)及技巧
3.1 編碼模塊的簡化

??? 在編碼過程中,使用(2,1,6)碼進行編碼,,刪去編碼輸出第四位。經(jīng)過仔細的研究發(fā)現(xiàn),,由于數(shù)據(jù)是分幀傳輸?shù)?,所以刪去哪一位并不重要,只要能保證幀頭和相應(yīng)的數(shù)據(jù)位對齊,,在解卷積的時候就能得到正確的結(jié)果,。這樣就使得編碼的程序得到簡化,。例如,編碼后,,刪余前的數(shù)據(jù)為1,2,3,4,5,6,7,8,9,10,11,12,,幀頭與數(shù)據(jù)1對齊。刪除第四位后成為1,2,3,5,6,7,9,10,11,。在接收端,補位后的數(shù)據(jù)為1,2,3,X,5,6,7,X,9,10,11,X,。可正確解調(diào)為1,2,3,4,5,6,7,8, 9,10,11,12,。若刪除第三位,,則成為1,2,4, 5,6,8, 9,10,12。若幀頭與數(shù)據(jù)1之前的那一位(假設(shè)為0)對齊,則補位后的數(shù)據(jù)為0,1,2,X,4,5,6,X,8,9,10,X,12,;亦可正確解調(diào),。所以在編寫程序的時候,可以根據(jù)輸入信號和輸出信號時鐘之間的關(guān)系,,選擇最簡單的刪除位,,然后調(diào)整幀頭的位置,就可以實現(xiàn)接收端所要求的對第4位的刪除,。
3.2 交織模塊的優(yōu)化設(shè)計
??? 交織分為兩個模塊:寫入模塊和讀出模塊,,二者共用一個存儲模塊。存儲模塊的大小為1764bit,,42行×42列,。首先,寫入模塊從第1行開始按行寫入,,在寫完第41行后,,讀出模塊從第1列開始按列逐列讀出,直至讀完所有列,,改換成按行讀出,,寫入模塊在寫完第42行以后,改換成按列寫入,。這樣,,交織模塊的延時約為(1764-42)/576k=2.99ms(576k為時鐘頻率)。無論讀模塊還是寫模塊,,在完成一整塊數(shù)據(jù)的操作以后,,改變讀寫方式(行換列,列換行),,這樣做的目的是為了節(jié)省存儲容量,。因為FPGA內(nèi)部的存儲器容量有限,用相對復雜的地址計算,,來換取占用較小的存儲容量,。
3.3 濾波器的優(yōu)化設(shè)計
??? 濾波器的傳輸函數(shù)選擇好后,,通過Matlab計算濾波器的各個抽頭系數(shù),然后將抽頭系數(shù)量化為16位的二進制定點數(shù),,寫成一個VHDL可調(diào)用的包文件,。
??? 實現(xiàn)對信號的濾波,實際上就是完成每個信號和各個抽頭系數(shù)之間的加乘運算,。由于濾波器的輸入為1或0,,故加乘運算可簡化為抽頭系數(shù)之間的加減運算。具體實現(xiàn)時,,48階的濾波器是由48個相似的小模塊級聯(lián)而成的,,每一個小模塊有四個輸入,一個輸出,。四個輸入分別為時鐘clk,、數(shù)據(jù)data、復位信號rst和前一個小模塊的輸出preout,。復位信號rst初始化后,,在時鐘的控制下讀入data和preout,根據(jù)data的極性決定對preout加上還是減去包文件中與此模塊對應(yīng)的濾波器的系數(shù),,將運算結(jié)果輸出,,作為下一級的preout。級聯(lián)時,,采用倒置的連接方式,,即輸入的數(shù)據(jù)data將同時到達每一個小模塊,這樣就不存在抽頭時延" title="時延">時延,,其時延存在于加法鏈中。這樣可以減少資源的占有數(shù),。濾波模塊的原理圖如圖4所示,。

?


4 系統(tǒng)性能
??? 該系統(tǒng)的主要性能指標為:
??? 信號中頻為70MHz;
??? 信號帶寬≤20MHz,;
??? 處理時延≤20ms(調(diào)制系統(tǒng)和解調(diào)系統(tǒng)的總處理時延),;
??? 編碼增益為4dB。
??? 由圖5可以看出信號帶寬約為18MHz,,已滿足系統(tǒng)要求,。

?


??? 圖6為調(diào)制系統(tǒng)和解調(diào)系統(tǒng)的總處理延時,其中CH1為調(diào)制系統(tǒng),,CH2為解調(diào)系統(tǒng),。從調(diào)制端接收到一個下脈沖,到解調(diào)端將其解調(diào)出來總延時為9.36ms,。調(diào)制系統(tǒng)的時延主要存在于交織模塊,,約為(1764-42)/576k=2.99ms,。解調(diào)系統(tǒng)的時延主要存在于解交織和譯碼,約為(1764-42)/576k+(1176+32)/384k=6.14ms,。2.99+6.14=9.13ms,,再加上其它模塊的延時,與實測的結(jié)果相符合,,也滿足系統(tǒng)要求,。

?


??? (2,1,,6)碼理論上的純編碼增益在大信噪比下為3.01,。實際上,編碼增益的大小還與譯碼的算法有關(guān),。本編譯碼系統(tǒng)的編碼增益為3.01+2(軟判決)-0.5(增信刪余),,為4.51,滿足系統(tǒng)要求,。
??? 該QPSK高速調(diào)制系統(tǒng)包含了編碼,、交織、擴頻調(diào)制等現(xiàn)代調(diào)制系統(tǒng)中常用的技術(shù),,是一個比較完整的調(diào)制系統(tǒng),。同時,使用FPGA加以實現(xiàn),,使得對于該系統(tǒng)的功能擴展和縮減變得容易,。FPGA的容量有限,而且一般燒到片子里的程序最好不要超過總?cè)萘康?0%,,所以,,對于程序的優(yōu)化是非常必要的。例如,,通過優(yōu)化設(shè)計,,可使最耗費資源的濾波器模塊的資源占用量從80%下降到40%(XC2S200的總?cè)萘繛?0萬門),這是相當可觀的,。不僅使整個系統(tǒng)的實現(xiàn)成為可能,,而且為以后功能擴展預留下比較多的資源。該系統(tǒng)已應(yīng)用于圖像傳輸系統(tǒng),,并且工作穩(wěn)定可靠,。
參考文獻
1 張 輝,曹麗娜.現(xiàn)代通信原理與技術(shù).西安:西安電子科技大學出版社,,2002.1
2 Stefan Sjoholm,Lennart Lindh著,,邊計年,薛宏熙譯.用VHDL設(shè)計電子線路.北京:清華大學出版社,2000

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,,以便迅速采取適當措施,,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。