王 銘,瞿佳俊,劉昌榮,徐大誠(chéng)
(蘇州大學(xué) 電子信息學(xué)院,江蘇 蘇州 215000)
軟件定義無(wú)線電(software defined radio,SDR)是具有可編程、可重配置能力的新型無(wú)線電結(jié)構(gòu)[1],基于通用射頻前端和信號(hào)處理平臺(tái)(如RTL SDR、HackRF One、USRP),用軟件編程實(shí)現(xiàn)通信系統(tǒng)中的數(shù)據(jù)組包和調(diào)制解調(diào)。通過(guò)在軟件無(wú)線電平臺(tái)中搭建通信收發(fā)機(jī),可靈活改變基帶電路結(jié)構(gòu),降低產(chǎn)品開發(fā)成本并縮短設(shè)計(jì)周期,為基于特定通信協(xié)議的專用集成電路設(shè)計(jì)提供算法基礎(chǔ)。
針對(duì)WBAN無(wú)線體域網(wǎng)基帶處理模塊設(shè)計(jì),文獻(xiàn)[2]提出了IEEE 802.15.6窄帶物理層接收機(jī)的幀同步,定時(shí)同步和載波頻率同步算法,不包含完整軟硬件電路實(shí)現(xiàn)。文獻(xiàn)[3]提出了基于IEEE 802.15.6 NB PHY層標(biāo)準(zhǔn)的硬件電路實(shí)現(xiàn),包含支持π/2-DBPSK、π/4-DQPSK兩種調(diào)制的可重構(gòu)符號(hào)映射、解映射器,平方根升余弦滾降濾波器和前導(dǎo)碼粗定時(shí)、細(xì)定時(shí)同步等模塊。文獻(xiàn)[4]中同樣提出一種基于802.15.6協(xié)議的NB PHY基帶收發(fā)專用集成電路設(shè)計(jì)方案,提出支持DBPSK、DQPSK和D8PSK多種調(diào)制方式的可重構(gòu)符號(hào)映射器。
國(guó)內(nèi)在此方面研究較少,文獻(xiàn)[5]提出針對(duì)窄帶物理層前導(dǎo)碼在接收端的分組檢測(cè)、符號(hào)定時(shí)同步和載波偏移恢復(fù)的相關(guān)算法。文獻(xiàn)[6,7]基于FPGA平臺(tái)實(shí)現(xiàn)WBAN窄帶物理層收發(fā)架構(gòu),配合射頻電路,對(duì)整個(gè)通信系統(tǒng)進(jìn)行板級(jí)測(cè)試驗(yàn)證。文獻(xiàn)[7]對(duì)系統(tǒng)做出點(diǎn)對(duì)點(diǎn)通信驗(yàn)證,未從系統(tǒng)性能、誤包率等角度展開分析。
以上論文均采用硬件實(shí)現(xiàn)體域網(wǎng)通信系統(tǒng)。為了滿足當(dāng)前無(wú)線體域網(wǎng)絡(luò)設(shè)備高傳輸速率需求,結(jié)合IEEE 802.15.6協(xié)議中可重構(gòu)調(diào)制方式規(guī)定,本文擬采用π/2-DBPSK調(diào)制PLCP前導(dǎo)碼和幀頭,π/8-D8PSK調(diào)制PSDU。通過(guò)開源軟件無(wú)線電平臺(tái)GNU Radio與通用硬件外設(shè)USRP完成基于802.15.6協(xié)議標(biāo)準(zhǔn)的軟件無(wú)線電無(wú)線通信收發(fā)機(jī),最后對(duì)系統(tǒng)進(jìn)行性能分析。仿真和實(shí)驗(yàn)結(jié)果均表明本系統(tǒng)能在低誤碼率下實(shí)現(xiàn)可靠通信。
軟件無(wú)線電平臺(tái)為無(wú)線通信系統(tǒng)設(shè)計(jì)與開發(fā)提供一種建立多模式、多頻段、多功能無(wú)線設(shè)備的有效且經(jīng)濟(jì)實(shí)用的解決方案,通過(guò)修改軟件代碼可方便切換網(wǎng)絡(luò)協(xié)議和調(diào)制方式,極大縮短開發(fā)周期和設(shè)計(jì)成本。
Matt Ettus 開發(fā)的USRP(universal software radio peripheral)是一種低成本、靈活的軟件無(wú)線電硬件平臺(tái)。母板USRP N210擁有兩路100 MS/s、14位模數(shù)轉(zhuǎn)換器,兩路400 MS/s、16位數(shù)模轉(zhuǎn)換器,帶可編程抽取率的數(shù)字下變頻,帶可編程插值率的數(shù)字上邊頻,千兆以太網(wǎng)接口,擴(kuò)展用的2 Gbps高速串口,可處理帶寬高達(dá)100 MHz,流信號(hào)可達(dá)50 MHz。作為USRP N210的兼容射頻子板,WBX-40覆蓋頻段50 MHz~2.2 GHz,最大信號(hào)處理帶寬可達(dá)40 MHz,可提供100 mw功率輸出。
GNU Radio是一個(gè)開源的軟件無(wú)線電系統(tǒng)開發(fā)構(gòu)建平臺(tái),允許開發(fā)者運(yùn)用自帶信號(hào)處理模塊搭建系統(tǒng)(也可自行編寫樹外模塊),完成系統(tǒng)開發(fā)設(shè)計(jì)和功能驗(yàn)證。GNU Radio采用Python和C++語(yǔ)言混合編程的方式編寫代碼,SWIG(simplified wrapper and interface generator)作為Python和C++之間的接口轉(zhuǎn)換,將C++編寫的模塊用Python粘合在一起,以便讓上層Python自由調(diào)用由C++編寫的信號(hào)處理模塊。為簡(jiǎn)化開發(fā)難度,GNU Radio使用GRC(GNU radio-companion)圖形化界面編程工具,將選用模塊拖曳到GRC終端,連接并運(yùn)行程序后自動(dòng)生成對(duì)應(yīng)Python腳本文件,實(shí)現(xiàn)整個(gè)信號(hào)處理系統(tǒng)流程。
作為線傳感器網(wǎng)的一個(gè)分支,無(wú)線體域網(wǎng)(wireless body area network,WBAN)主要應(yīng)用于遠(yuǎn)程醫(yī)療診斷和監(jiān)護(hù)[9,10],通過(guò)在人體體表或體內(nèi)植入多個(gè)傳感節(jié)點(diǎn),實(shí)時(shí)監(jiān)控使用者的生理特征及周圍環(huán)境信息,再通過(guò)無(wú)線信道將數(shù)據(jù)發(fā)送給中心節(jié)點(diǎn)Hub,中心節(jié)點(diǎn)作為中央處理單元,負(fù)責(zé)無(wú)線體域網(wǎng)內(nèi)部的通信控制及體域網(wǎng)與外部互聯(lián)網(wǎng)之間的數(shù)據(jù)通信。由于傳感節(jié)點(diǎn)資源有限,功耗管理成為WBAN發(fā)展的主要挑戰(zhàn)之一。
IEEE 802.15工作組于2012年3月發(fā)布了IEEE 802.15.6標(biāo)準(zhǔn)的正式版,該標(biāo)準(zhǔn)詳細(xì)規(guī)定了WBAN物理層(phy-sical layer,PHY)和媒體訪問(wèn)控制(medium access control,MAC)層特性,提供無(wú)線體域網(wǎng)近距離(人體距離)、高速率、低功耗、高可靠無(wú)線通信組網(wǎng)的國(guó)際化標(biāo)準(zhǔn)[8]。WBAN的3種不同物理層包括窄帶(narrowband,NB)、超寬帶(ultra wideband,UWB)以及人體通信(human body communications,HBC)物理層,其中窄帶物理層是WBAN針對(duì)醫(yī)療電子領(lǐng)域優(yōu)化的低功耗物理層協(xié)議,強(qiáng)調(diào)信噪比在11 dB下系統(tǒng)的誤包率需低于10%。窄帶物理層不易受到人體自身的影響,并且小的帶寬減少了多路徑傳輸引起的碼間干擾,更適用于醫(yī)療應(yīng)用領(lǐng)域。
無(wú)線收發(fā)機(jī)整體框架如圖1所示,上半部分為發(fā)射機(jī),下半部分為接收機(jī),兩者通過(guò)天線通信。本文中,發(fā)射機(jī)將需要發(fā)送的數(shù)據(jù)按IEEE 802.15.6協(xié)議規(guī)定的PHY層和MAC層組包方式構(gòu)成完整的協(xié)議數(shù)據(jù)幀,隨后采用π/2-DBPSK和π/8-D8PSK兩種調(diào)制方式將比特?cái)?shù)據(jù)映射到星座圖中,用I,Q兩路信號(hào)表示星座點(diǎn)的橫縱坐標(biāo)。經(jīng)調(diào)制后生成的兩路信號(hào)過(guò)采樣后通過(guò)平方根升余弦濾波器(SRRC),抑制碼間串?dāng)_帶來(lái)的誤碼傳輸,提高頻帶利用率。以上功能在 GNU Radio 中以模塊化的形式完成后,通過(guò)以太網(wǎng)口將數(shù)據(jù)發(fā)送給USRP進(jìn)行下一步操作。

圖1 無(wú)線收發(fā)機(jī)框架
經(jīng)成形濾波后的兩路信號(hào)仍為基帶信號(hào),需通過(guò)上變頻將基帶信號(hào)頻譜搬移到射頻段以便用天線輻射出去。通過(guò)UHD控制USRP母板對(duì)信號(hào)進(jìn)行內(nèi)插、數(shù)字上邊頻和數(shù)模轉(zhuǎn)換。內(nèi)插常用半帶濾波器(HBF)和積分梳狀濾波器(CICF)對(duì)基帶信號(hào)插值,提高采樣頻率,匹配輸入基帶信號(hào)速率和載波數(shù)據(jù)速率。內(nèi)插后的兩路信號(hào)分別與本地?cái)?shù)控振蕩器(NCO)產(chǎn)生的數(shù)字余弦信號(hào)和正弦信號(hào)混頻到中頻,再經(jīng)DAC后轉(zhuǎn)成模擬中頻信號(hào),由射頻子板中的模擬混頻器將信號(hào)頻譜搬移到射頻頻段后經(jīng)天線輻射完成信號(hào)發(fā)送。
接收機(jī)中,抽取及其之前工作與發(fā)射機(jī)呈鏡像關(guān)系,抽取后的信號(hào)經(jīng)以太網(wǎng)口送入GNU Radio中。通常,在接收端會(huì)存在加性噪聲、多徑效應(yīng)、頻率偏移、時(shí)鐘偏移等問(wèn)題影響數(shù)據(jù)解調(diào)效果,其中頻率偏移是指發(fā)射端和接收端由于本地時(shí)鐘不同步導(dǎo)致信號(hào)頻率有偏差。另外,調(diào)制后信號(hào)會(huì)進(jìn)行過(guò)采樣和脈沖成形操作,接收端需在過(guò)采樣點(diǎn)中尋找最適合的原始采樣點(diǎn),盡可能降低碼間干擾影響。針對(duì)以上問(wèn)題,本文采用GNU Radio中的鎖相環(huán)時(shí)鐘同步(polyphase clock sync)、CMA(constant modulus algorithm)均衡器和科斯塔斯環(huán)(costas loop)模塊。鎖相環(huán)時(shí)鐘同步模塊可以實(shí)現(xiàn)時(shí)鐘恢復(fù)和降采樣,內(nèi)部包含的匹配濾波器用于修正碼間干擾影響。系統(tǒng)傳遞函數(shù)是成形濾波器和匹配濾波器的乘積,匹配濾波使用和成形濾波一致的平方根升余弦濾波器,可使匹配濾波器的輸出信號(hào)圖形中,在每個(gè)符號(hào)的最佳采樣點(diǎn)處,其它符號(hào)功率都為零。CMA均衡器是為消除電磁波沿不同路徑傳播導(dǎo)致的多徑干擾,通過(guò)改變特定頻率的信號(hào)增益使接收端信號(hào)變得均衡。科斯塔斯環(huán)可為DBPSK和D8PSK實(shí)現(xiàn)相位和頻率同步。最后對(duì)同步后信號(hào)進(jìn)行幀頭檢測(cè)和解映射,恢復(fù)數(shù)據(jù)。
本文選用402~405 MHz 醫(yī)用植入通信服務(wù)(medical implant communications service,MICS)頻段范圍的窄帶物理層結(jié)構(gòu),主要負(fù)責(zé)無(wú)線收發(fā)機(jī)的激活與失活、空閑信道評(píng)估(clear channel assessment,CCA)、數(shù)據(jù)發(fā)送與接收。傳輸時(shí),將MAC層生成的物理層數(shù)據(jù)服務(wù)單元(PHY service data unit,PSDU)前加上物理層前導(dǎo)碼(physical layer convergence procedure preamble,PLCP Prea-mble)與物理層幀頭(physical layer convergence procedure preamble header,PLCP Header)組成物理層協(xié)議數(shù)據(jù)單元(physical protocol data unit,PPDU),窄帶物理層及媒體訪問(wèn)控制層幀結(jié)構(gòu)如圖2所示。

圖2 NB PHY層和MAC層幀結(jié)構(gòu)
90 bits的PLCP前導(dǎo)碼位于PPDU最前端,協(xié)助接收機(jī)完成定時(shí)同步以及載波偏移恢復(fù),其中前63 bits用于包檢測(cè)、粗定時(shí)同步和載波偏移恢復(fù),后27 bits用于細(xì)定時(shí)同步。為防止鄰頻干擾,前63 bits數(shù)據(jù)在奇偶信道上使用兩種不同的前導(dǎo)序列。
第二部分是PLCP幀頭,其目的是傳遞有關(guān)PHY參數(shù)的必要信息,以便在接收端解碼PSDU,包括信息數(shù)據(jù)率、PSDU幀體長(zhǎng)度(不包括MAC頭和FCS)、突發(fā)模式、擾碼種子、幀頭檢測(cè)序列(HCS)和BCH奇偶校驗(yàn)位等信息。幀頭檢測(cè)序列(HCS)是由PLCP幀頭的前15 bits數(shù)據(jù)通過(guò)循環(huán)冗余校驗(yàn)(cyclic redundancy check,CRC)編碼形成的4 bits序列,CRC-4的生成多項(xiàng)式為g(x)=1+x+x4。 為滿足醫(yī)療檢測(cè)技術(shù)對(duì)數(shù)據(jù)可靠性的要求,設(shè)計(jì)中集成了BCH(63,51,t=2) 的縮短碼BCH(31,19,t=2), PLCP幀頭的前19 bits通過(guò)此編碼后得到12 bits糾錯(cuò)碼,最多能糾正2 bits數(shù)據(jù)位錯(cuò)誤,采用BCH編碼可提高PLCP幀頭數(shù)據(jù)魯棒性,并減少數(shù)據(jù)重發(fā)次數(shù)。
最后一部分PSDU由MAC層生成,MAC層實(shí)現(xiàn)支持連接的基本功能,不進(jìn)行帶有沖突避免的載波偵聽多路訪問(wèn)(CSMA/CA)算法,而是開機(jī)后立即發(fā)送數(shù)據(jù)。PSDU包括7字節(jié)的MAC幀頭、可變長(zhǎng)度的MAC幀體和2字節(jié)的幀檢測(cè)序列FCS,MAC幀頭包含幀控制字、接收端ID、發(fā)送端ID和體域網(wǎng)ID,F(xiàn)CS則由CRC-16編碼生成,接收時(shí)需刪除MAC幀頭并檢查FCS 是否正確。
PLCP幀頭和PSDU的調(diào)制參數(shù)見表1,本文PLCP幀頭采用π/2-DBPSK調(diào)制和BCH(31,19,t=2) 編碼方式;PSDU選用π/8-D8PSK調(diào)制,為簡(jiǎn)化系統(tǒng)設(shè)計(jì),PSDU未進(jìn)行BCH編碼。

表1 PPDU調(diào)制參數(shù)
圖3為完整的NB PHY層收發(fā)機(jī)流程,該流程中包含PHY層調(diào)制參數(shù)的PHY幀頭經(jīng)CRC-4和BCH 編碼后與PLCP前導(dǎo)碼組成完整的PLCP幀,通過(guò)π/2-DBPSK調(diào)制,與π/8-D8PSK調(diào)制后的PSDU幀合并,經(jīng)成形濾波后送往射頻和天線部分;接收端數(shù)據(jù)經(jīng)匹配濾波后經(jīng)碼元同步和載波同步,將PLCP數(shù)據(jù)送往π/2-DBPSK解調(diào),BCH解碼和CRC校驗(yàn),恢復(fù)PHY幀頭信息,PSDU根據(jù)PHY幀頭包含的解調(diào)參數(shù)和幀長(zhǎng)度進(jìn)行解調(diào)、解包。

圖3 NB PHY層收發(fā)機(jī)流程
相移鍵控及其衍生的差分相移鍵控是新一代數(shù)字通信系統(tǒng)常用的調(diào)制方式,而8PSK和D8PSK調(diào)制由于其較高的信息傳輸速率得到廣泛應(yīng)用,這兩種調(diào)制方式用一個(gè)符號(hào)代表3位的比特?cái)?shù)據(jù),理論上信息速率可達(dá)BPSK和DBPSK調(diào)制方式下信息速率的3倍。8PSK的載波相位有8種取值,輸入數(shù)據(jù)每3 bits為一組滿映射到8種不同的載波相位,載波相位的不同取值如下
φ=2πn/8
(1)
其中,n∈{0,1,2,3,4,5,6,7}。 二進(jìn)制序列與載波相位的映射關(guān)系由星座圖確定,采用格雷碼對(duì)圖中星座點(diǎn)依次編碼,格雷碼中相鄰相位之間只有一位數(shù)據(jù)不同,即使相位判斷成相鄰相位時(shí)也只會(huì)產(chǎn)生一位數(shù)據(jù)的誤判,降低了數(shù)據(jù)傳輸?shù)恼`碼率。8PSK調(diào)制將符號(hào)映射的絕對(duì)相位加到載波中傳輸,載波信號(hào)在發(fā)射端和接收端都需要以一個(gè)固定的基準(zhǔn)相位作為參考相位,如果參考相位突然發(fā)生0到π或π到0的相位翻轉(zhuǎn),都會(huì)導(dǎo)致接下來(lái)的一串?dāng)?shù)據(jù)在解調(diào)時(shí)出現(xiàn)0和1之間的翻轉(zhuǎn),這種現(xiàn)象稱為“倒π”或“反向工作”。在通信過(guò)程中由于某種突發(fā)騷動(dòng)導(dǎo)致分頻器狀態(tài)的翻轉(zhuǎn)或鎖相環(huán)路穩(wěn)定狀態(tài)的翻轉(zhuǎn),都會(huì)導(dǎo)致倒π現(xiàn)象的發(fā)生,并且這種現(xiàn)象往往是不易被察覺(jué)的。針對(duì)這一問(wèn)題,實(shí)際應(yīng)用中多采用多進(jìn)制差分相移鍵控,解調(diào)時(shí)只考慮當(dāng)前相位和前一相位的差值,而不依賴載波相位的固定參考值,D8PSK的表達(dá)式可以寫成
s(t)=sin(ωct+φk)
(2)
φk=φk-1+Δφk
(3)
其中,ωc表示載波頻率,Δφk表示相對(duì)相位,φk表示絕對(duì)相位。由碼元符號(hào)映射的相對(duì)相位值加上前一個(gè)碼元的絕對(duì)相位得到當(dāng)前碼元的絕對(duì)相位,添加到調(diào)制載波中發(fā)送。D8PSK的相對(duì)相位星座如圖4所示。

圖4 D8PSK星座
對(duì)D8PSK的表達(dá)式式(2)展開可得
s(t)=cosφk·sinωct+sinφk·cosωct
(4)
令I(lǐng)k=cosφk,Qk=sinφk, 分別稱為s(t)的同相分量和正交分量,D8PSK信號(hào)s(t)由兩路頻率為ωc的正交載波信號(hào)與同相分量、正交分量分別相乘后相加組成。
關(guān)于D8PSK的解調(diào)有相干解調(diào)法,差分解調(diào)法和鑒頻法。其中鑒頻法實(shí)現(xiàn)最簡(jiǎn)單,不過(guò)因其需要檢測(cè)8種電平,對(duì)帶通濾波器要求較高,故不采用。差分解調(diào)又稱相位比較法,屬于非相干解調(diào)的一種,因其不需要提取同步載波,實(shí)現(xiàn)起來(lái)比相干解調(diào)容易。相干解調(diào)法需要在接收端恢復(fù)出與輸入端嚴(yán)格同頻同相的載波信號(hào),正交相干解調(diào)在解調(diào)端恢復(fù)出兩路正交的相干載波信號(hào),即cosωct和sinωct,與s(t)相乘后濾除高頻分量得到解調(diào)信號(hào)。正交相干解調(diào)較差分解調(diào)法具有更低的誤碼率,針對(duì)無(wú)線體域網(wǎng)中高傳輸速率的可靠性要求,本文采用正交相干解調(diào)法進(jìn)行解調(diào)。具體解調(diào)過(guò)程如下
m(t)=s(t)·2sin(ωct)=2sin(ωct+φk)·sin(ωct)= cosφk-cos(2ωct+φk)
(5)
n(t)=s(t)·2cos(ωct)=2sin(ωct+φk)·cos(ωct)= sin(2ωct+φk)+sinφk
(6)
分別濾除m(t)和n(t)的高頻分量可得Ik=cosφk,Qk=sinφk, 此時(shí)得到的是絕對(duì)相位的正余弦值,再通過(guò)式(7)和式(8)
I′k=cos(Δφk)=cos(φk-φk-1)=cosφk·cosφk-1+ sinφk·sinφk-1=IkIk-1+QkQk-1
(7)
Q′k=sin(Δφk)=sin(φk-φk-1)=sinφk·cosφk-1- cosφk·sinφk-1=QkIk-1-IkQk-1
(8)
可得相對(duì)相位的正余弦值,根據(jù)映射關(guān)系將此正余弦值解映射成比特流數(shù)據(jù)即可得到解調(diào)后的數(shù)據(jù)。由于傳輸過(guò)程中存在干擾,此時(shí)在接收端接收到的相位點(diǎn)會(huì)擴(kuò)散在原本星座點(diǎn)的周圍,可通過(guò)比較接收相位點(diǎn)與各星座點(diǎn)之間的距離判斷應(yīng)解映射的符號(hào)數(shù)據(jù)。
π/2-DBPSK調(diào)制過(guò)程中,當(dāng)輸入數(shù)據(jù)為0時(shí)相對(duì)相位Δφ的取值為π/2;當(dāng)輸入數(shù)據(jù)為1時(shí)Δφ的取值為3π/2,再加上前一個(gè)碼元的絕對(duì)相位得到當(dāng)前碼元的絕對(duì)相位,其余調(diào)制解調(diào)過(guò)程同上。解調(diào)時(shí)由式(8)和π/2-DBPSK的星座圖可知:Q′k>0時(shí),解調(diào)數(shù)據(jù)為0;Q′k<0時(shí),解調(diào)數(shù)據(jù)為1。
為驗(yàn)證D8PSK調(diào)制解調(diào)流程,本文在GNU Radio中搭建純軟件平臺(tái),通過(guò)設(shè)置模塊中的參數(shù)模擬實(shí)際信道傳輸中諸如信道衰弱、時(shí)鐘偏移等問(wèn)題。圖中“Random Periodic Message Source”模塊用于生成隨機(jī)的字節(jié)流數(shù)據(jù),字節(jié)流數(shù)據(jù)前添加用于幀同步的前導(dǎo)碼0xA7B8后通過(guò)“Unpack K Bits”模塊轉(zhuǎn)為比特流數(shù)據(jù),隨后經(jīng)串并轉(zhuǎn)換成3路數(shù)據(jù),作為D8PSK調(diào)制的輸入,調(diào)制后的信號(hào)經(jīng)成形濾波后發(fā)送給接收端。“Channel Model”信道模塊中可以設(shè)置噪聲電壓、頻率偏移和時(shí)鐘偏移,還可以仿真?zhèn)鬏斝诺赖亩鄰叫?yīng),模擬真實(shí)信道傳輸過(guò)程中信號(hào)遭受外界因素產(chǎn)生的影響。鎖相環(huán)時(shí)鐘同步模塊可以實(shí)現(xiàn)發(fā)送端和接收端的采樣時(shí)間同步,這里使用32個(gè)濾波器;CMA均衡器用于消除多徑效應(yīng),這里使用11個(gè)抽頭;科斯塔斯環(huán)用于恢復(fù)接收端的相位和頻率偏差,針對(duì)D8PSK調(diào)制階數(shù)設(shè)置成8。此時(shí)經(jīng)符號(hào)定時(shí)同步和載波頻率同步后的數(shù)據(jù)可進(jìn)行D8PSK解調(diào),解調(diào)后的數(shù)據(jù)送往前導(dǎo)碼判決模塊“d8psk_packet_sink”中,若檢測(cè)到數(shù)據(jù)流中正確的前導(dǎo)碼則輸出隨后的數(shù)據(jù)流。Wireshark模塊是開源網(wǎng)絡(luò)實(shí)時(shí)數(shù)據(jù)抓包器,通過(guò)在輸入端和輸出端加入Wireshark模塊捕獲數(shù)據(jù)流信息進(jìn)行比對(duì),分析系統(tǒng)性能。D8PSK調(diào)制解調(diào)整體GRC流如圖5所示,Wireshark在第6幀的抓包結(jié)果如圖6所示,“depsk_in”界面的前5個(gè)字節(jié)為前導(dǎo)碼,后30字節(jié)為源數(shù)據(jù),接收端“depsk_out”捕獲到和發(fā)送端同樣的數(shù)據(jù),證明調(diào)制解調(diào)和同步時(shí)鐘恢復(fù)等模塊正常工作。

圖5 D8PSK調(diào)制解調(diào)流

圖6 輸入輸出端數(shù)據(jù)對(duì)比
完整的基于IEEE 802.15.6協(xié)議的收發(fā)系統(tǒng)驗(yàn)證采用USRP N210母板、WBX-40射頻子板作為硬件平臺(tái),裝有Ubuntu 18.04系統(tǒng)及GNU Radio 3.8.0.0軟件的PC作為軟件平臺(tái),USRP由硬件驅(qū)動(dòng)UHD控制。
軟件無(wú)線電系統(tǒng)的整體實(shí)物如圖7中所示,GRC流如圖8所示,其中“IEEE 802.15.6 PHY”模塊封裝了兩種調(diào)制解調(diào)方式及切換、PHY層的組包和解包、CRC和BCH碼的生成與校驗(yàn)、前導(dǎo)碼的檢測(cè)與判決等具體子模塊。隨機(jī)數(shù)據(jù)源通過(guò)app in口流入MAC模塊進(jìn)行MAC層組包,MAC頭中的幀控制字、發(fā)送端 ID、接收端ID和體域網(wǎng)ID參數(shù)如圖8中所示,MAC 組包好的數(shù)據(jù)進(jìn)入PHY層加上PLCP后進(jìn)行調(diào)制和成形濾波,送往USRP發(fā)送模塊“UHD:USRP Sink”,中心頻率設(shè)置為402 MHz~405 MHz。接收端將數(shù)據(jù)接收送入PHY層解調(diào)后進(jìn)行PLCP頭的CRC-4和BCH校驗(yàn),若檢驗(yàn)正確則將PSDU數(shù)據(jù)發(fā)送給MAC模塊,MAC層對(duì)數(shù)據(jù)進(jìn)行CRC-16檢驗(yàn),若檢驗(yàn)正確則將MAC幀體數(shù)據(jù)流入Wireshark,否則丟棄此幀。通過(guò)在信道中加入噪聲,用Wireshark捕捉輸入、輸出端數(shù)據(jù)分析系統(tǒng)性能。信噪比變化由信道注入的噪聲幅值控制,圖9展示了不同信噪比下系統(tǒng)誤包率,由圖可知信噪比在11 dB 時(shí)誤包率低于1%,系統(tǒng)具有可靠的準(zhǔn)確率。

圖7 收發(fā)系統(tǒng)實(shí)物

圖8 802.15.6收發(fā)系統(tǒng)流

圖9 系統(tǒng)誤包率
針對(duì)WBAN收發(fā)機(jī),目前還沒(méi)有非常成熟高效的基帶處理模塊,本文提出一種基于IEEE 802.15.6窄帶物理層結(jié)構(gòu)的收發(fā)機(jī)系統(tǒng)設(shè)計(jì),采用π/2-DBPSK和π/8-D8PSK兩種調(diào)制方式,并在軟件無(wú)線電平臺(tái)上實(shí)現(xiàn)完整的無(wú)線通信收發(fā)流程,采用CRC和BCH兩種編碼方式確保數(shù)據(jù)的可靠性傳輸。
后續(xù)工作中,將在該設(shè)計(jì)基礎(chǔ)上加入擴(kuò)頻、交織、擾碼等模塊,以進(jìn)一步提升系統(tǒng)魯棒性;深入研究WBAN中通信安全問(wèn)題;在FPGA硬件平臺(tái)中進(jìn)一步驗(yàn)證NB PHY層基帶收發(fā)機(jī)功能,配合射頻電路構(gòu)成完整通信系統(tǒng),進(jìn)一步研究?jī)?yōu)化系統(tǒng)功耗。