新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于聲卡的QPSK信號的實(shí)時(shí)軟解調(diào)(圖)

基于聲卡的QPSK信號的實(shí)時(shí)軟解調(diào)(圖)

——
作者:解放軍信息工程大學(xué) 劉世剛 劉鋒 時(shí)間:2007-02-06 來源: 收藏
摘 要:提出了一種以pc機(jī)聲卡作為采集卡,以pc機(jī)的cpu代替dsp器件的qpsk信號的數(shù)字化實(shí)時(shí)解調(diào)方法。詳細(xì)介紹了適合于pc機(jī)實(shí)時(shí)處理的載波頻率恢復(fù)、符號定時(shí)恢復(fù)、自適應(yīng)信道均衡等qpsk信號實(shí)時(shí)解調(diào)的核心算法。最后,結(jié)合psk31的qpsk信號給出了整個(gè)系統(tǒng)的測試結(jié)果。
關(guān)鍵詞:qpsk;數(shù)字化實(shí)時(shí)解調(diào);聲卡;載波頻率恢復(fù);符號定時(shí)恢復(fù);自適應(yīng)信道均衡

引言
---目前,調(diào)制解調(diào)器產(chǎn)品大都采用專用dsp芯片作為核心處理器件,這是因?yàn)閐sp是專門的數(shù)字信號處理芯片,其處理速度快,實(shí)時(shí)性好。但另一方面,也存在一些弊端,如開發(fā)周期長、價(jià)格昂貴,不能存入和讀取數(shù)據(jù),必須要與pc機(jī)配合使用等。近幾年來,pc機(jī)的各項(xiàng)技術(shù)得到了迅速發(fā)展,cpu的計(jì)算速度、內(nèi)存容量都大幅度提高,其數(shù)字信號處理能力已經(jīng)完全可以滿足對常規(guī)通信信號的實(shí)時(shí)解調(diào)。將調(diào)制解調(diào)器設(shè)計(jì)在聲卡上而不是dsp芯片上,有很多好處:首先,聲卡廉價(jià)易得,充分利用卡上的line in、mic in、line out、spk out等端口,可以實(shí)現(xiàn)多路信號的實(shí)時(shí)解調(diào),一卡多用;其次,優(yōu)化后的解調(diào)軟件占用cpu的時(shí)間很少,可以在接收數(shù)據(jù)的同時(shí)從事其他工作;第三,不受存儲空間的限制,用高級語言編程,設(shè)計(jì)周期短。另外,這種設(shè)計(jì)方案與硬件平臺無關(guān),軟件升級周期短。本文正是基于這種思想,拋開dsp器件,以pc機(jī)為硬件平臺,實(shí)現(xiàn)對qpsk信號的實(shí)時(shí)解調(diào),系統(tǒng)框圖如圖1所示。


---圖1中,接收機(jī)輸出的基帶信號經(jīng)pc機(jī)聲卡采樣后得到離散化的數(shù)字序列。對信號的采樣可調(diào)用windows的api函數(shù)對聲卡進(jìn)行控制,包括采樣頻率、緩存大小、每次讀入的字節(jié)數(shù)等,具體實(shí)現(xiàn)可參看相關(guān)資料,本文不再贅述。圖1中的解調(diào)軟件部分是本文討論的重點(diǎn),它完成對信號的數(shù)字化實(shí)時(shí)解調(diào)功能,其數(shù)字化解調(diào)原理如圖2所示。

 

軟件agc
---軟件agc用于跟蹤信號外包絡(luò)變化實(shí)現(xiàn)對衰落的補(bǔ)償。本文采用圖3所示對數(shù)agc。
---

圖3中的對數(shù)agc用軟件實(shí)現(xiàn)時(shí),a(n)的計(jì)算采用下式。
---log{a(n+1)}=log{a(n)}+α[log{r}-log{|a(n)x(n)|}]
---圖中,x(n)是軟件agc的輸入信號,y(n)是輸出信號;a(n)是agc的增益控制變量;α和r為常量,取值根據(jù)設(shè)計(jì)要求在補(bǔ)償速度和穩(wěn)定性之間取折中,當(dāng)要求補(bǔ)償速度迅速時(shí),取較大的值,反之,取較小的值。

dfpll載波頻率恢復(fù)
---在位同步點(diǎn)附近,存在信號的碼間串?dāng)_問題。dfpll的基本思想就是,對于每個(gè)碼元,利用位同步附近的采樣點(diǎn)計(jì)算碼元的相位,并根據(jù)基帶信號碼元的相位特點(diǎn),計(jì)算出參考載波與信號載波的差值,利用此差值調(diào)整vco的相位,進(jìn)行載波恢復(fù)。
---設(shè)qpsk信號的第n個(gè)碼元在位同步點(diǎn)處的相位信息為:,其中,i=0,1,2,3,θ(n)為第n個(gè)碼元的相位偏移。要得到相位誤差,需要去除相位信息中的信息分量πi/2,通過觀察qpsk星座圖可以發(fā)現(xiàn),相鄰星座點(diǎn)間的相差總在π/2附近,于是用如下方法可以去除信息分量。令,并令,其中,mod表示求余,ξ(n)是單個(gè)碼元的相位誤差。如果采樣頻率為fs,碼元速率為fb,則該碼元每個(gè)采樣點(diǎn)的平均相位誤差為e(n)=ξ(n)/(fs/fb)。平均相位誤差送入環(huán)路濾波器,濾波結(jié)果由系數(shù)k調(diào)整后,送入vco進(jìn)行相位增量調(diào)整,當(dāng)e(n)穩(wěn)定在一個(gè)較小值附近時(shí),dfpll處于鎖定狀態(tài)。環(huán)路濾波器采用一階rc低通濾波器。由于其輸入為相位估計(jì)器,考慮來自相位估計(jì)器的相位差值信號以碼元速率fb變化,其截止頻率應(yīng)在fb附近,用沖激不變法設(shè)計(jì)歸一化系統(tǒng)函數(shù)為:。濾波器的截止頻率和增益k對捕獲時(shí)間和環(huán)路的穩(wěn)定性都有影響,調(diào)整這兩個(gè)參數(shù),使之達(dá)到最佳狀態(tài)。

dttl符號定時(shí)恢復(fù)
---qpsk調(diào)制的dttl符號定時(shí)恢復(fù)算法原理如圖4所示。該算法由farrow插值器、定時(shí)誤差檢測器、數(shù)字環(huán)路濾波器及數(shù)控振蕩器等四部分組成??梢钥闯?,它實(shí)際上是一個(gè)帶鎖相環(huán)的反饋定時(shí)誤差同步器。符號定時(shí)恢復(fù)主要是通過不斷調(diào)整farrow插值器的參數(shù),使得輸出的樣點(diǎn)值抽樣在每個(gè)符號周期的最大值上。該算法工作在2個(gè)樣點(diǎn)/符號。
---圖4中的farrow插值器使用線性插值公式z1(k)=(1-μ(k))y1(k-1)+μ(k)y1(k),其中0≤μ(k)<1。調(diào)整μ(k)的值,即可使樣值采樣在最佳時(shí)刻。誤差檢測器可表示如下。


---vd(k)=z1(k-1)[sgn(z1(k))-sgn(z1(k-2))]+zq(k-1)[sgn(zq(k))-sgn(zq(k-2))]
---環(huán)路濾波器采用二階數(shù)字環(huán)路濾波器,其輸入輸出關(guān)系可表示如下。
---vc(k)=vc(k-1)+kpvd(k)+(ki-kp)vd(k-1)
---關(guān)于比例增益常量kp和積分增益常量ki的選擇,可以參考文獻(xiàn)4。數(shù)控振蕩器的控制字vo按照下式每個(gè)符號調(diào)整一次。
---vo(k)=vo(k-1)+kovc(k)
---式中ko為數(shù)控振蕩器靈敏度增益常量。最后,分?jǐn)?shù)索引μ(k)可按下式更新。
---μ(k)=mod(μ(k-1)+vo(k-1),1)
---式中mod表示取余。

kalman dfe自適應(yīng)均衡器
---kalman dfe自適應(yīng)均衡器的均衡原理如圖5所示。
---

     由圖5可以看出,dfe均衡器包含兩個(gè)橫向?yàn)V波器,一個(gè)橫向?yàn)V波器用于線性的前向?yàn)V波處理,其判決結(jié)果反饋給另一個(gè)橫向?yàn)V波器。如果前面的判決是正確的,則反饋濾波器就能消除由前面碼元所造成的串?dāng)_。反饋濾波器的抽頭系數(shù)由包括前向?yàn)V波器所造成的信道沖激響應(yīng)拖尾所決定。不難理解,只要誤碼率小于1/2,原則上就能保證收斂。
---圖中前向?yàn)V波器為m階,反饋濾波器為n階;tn為訓(xùn)練序列;yk為前向?yàn)V波器的輸入,ai為其抽頭系數(shù);ik為反饋濾波器的輸入,bi為其抽頭系數(shù);zk為dfe的輸出;e(k)為誤差信號。均衡器工作時(shí),總是先由接收到的同步序列或訓(xùn)練序列tn等已知序列進(jìn)行訓(xùn)練。在訓(xùn)練期間,dfe均衡器將內(nèi)部產(chǎn)生的理想信號作為反饋輸入信號,由lms或rls算法對信道進(jìn)行估計(jì),同時(shí)調(diào)整前向與反饋濾波器的抽頭系數(shù),收斂到均方誤差最小。當(dāng)殘差足夠小時(shí),均衡器被切換到直接判決模式,即由判決符號重調(diào)制生成的參考信號作為反饋輸入,均衡器將繼續(xù)工作在均方誤差最小狀態(tài)。
---由圖5可知,

---令xt(k)=yk,yk+1,...,yk+m-1,ik-1,ik-2,...,ik-n)
---wt(k)=(a1,a2, ..., am,b1,b2, ...,bn)
---其中,t表示轉(zhuǎn)置,則誤差信號e(k)表示如下。
---e(k)=ik-zk=ik-wt(k-1)x(k)
---kalman算法的精髓在于,已知w(k-1),遞推計(jì)算w(k),其遞推步驟如下。
---初始化:0<ω<1;w(0)=0;p(0)=i,i表示單位矩陣。
---for k=1 to n do :e(k)=i(k)-xt(k)w(k-1)
---k(k)= p(k-1)x*(k)
---ω+xt(k)p(k-1)x*(k)
---p(k)= [p(k-1)-k(k)xt(k)p(k-1)]
---w(k)=w(k-1)+k(k)e(k)
---其中,k(k)為卡爾曼增益向量,p(k)為x(k)的協(xié)方差矩陣。均衡器系數(shù)隨時(shí)間改變的量等于誤差e(k)乘以卡爾曼增益向量k(k)。因?yàn)槭莔+n維的,所以每一個(gè)抽頭系數(shù)實(shí)際上受到k(k)的一個(gè)元素的控制,從而獲得快速收斂。

實(shí)時(shí)測試結(jié)果
---測試系統(tǒng)框圖如圖1所示。這里接收機(jī)輸出的psk31信號的載頻為1000hz,碼元速率為31.25波特,調(diào)制方式為qpsk,聲卡的采樣頻率為8000hz。dttl符號定時(shí)恢復(fù)過程中,定時(shí)誤差及分?jǐn)?shù)索引的收斂情況如圖6、圖7所示。dfpll載頻恢復(fù)過程中,vco輸出參考載頻的收斂情況如圖8所示。圖9則分別顯示了未加均衡與加均衡時(shí),解調(diào)出的qpsk星座的對比。


 

參考文獻(xiàn)
1 張賢達(dá),保錚.通信信號處理.國防工業(yè)出版社
2 john g.proakis著.張力軍,張宗橙,鄭寶玉等譯.數(shù)字通信.電子工業(yè)出版社
3 f.m.gardner,“interpolation in digital modems-part i:fundamentals,” ieee trans.comm., com-41,pp.501-507,mar.1993
4 f.m.gardner,l.eurp,and r.a.harris, “interpolation in digital modems-part ii: implementation and performance,” ieee trans. comm.,com-41, pp. 998-1008 , jun.1993
5 al-dhahir,n.;cioffi,j.m.,"mmse decision-feedback equalizers:finite-length results,"in information theory,ieee transactions on volume:41 4,july 1995,page:961-975



關(guān)鍵詞:

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉