縮短BCH 編碼應(yīng)用于無線傳感網(wǎng)絡(luò)的能效分析
1 引 言
無線傳感器網(wǎng)絡(luò)是由大量具有感知能力、計算能力和通信能力的傳感器節(jié)點組成的面向任務(wù)的無線自組織網(wǎng)絡(luò), 它綜合了傳感器技術(shù)、嵌入式計算技術(shù)、現(xiàn)代網(wǎng)絡(luò)和無線通信技術(shù)、分布式信息處理技術(shù)等多項技術(shù) 。在軍事、醫(yī)療、空間探測、環(huán)境監(jiān)測、搶險救災(zāi)、安全生產(chǎn)監(jiān)控等領(lǐng)域都有廣泛應(yīng)用。
差錯控制是無線數(shù)據(jù)傳輸中保證傳輸可靠性的一個重要手段, 但差錯控制的額外能耗與傳感器節(jié)點的能量受限形成矛盾。因此, 無線傳感器網(wǎng)絡(luò)差錯控制的研究重點之一是在數(shù)據(jù)可靠性和低能耗之間取得折衷。
2 相關(guān)工作
差錯控制的基本模式主要有兩種, 前向糾錯( FEC)和自動重發(fā)請求( ARQ )。前向糾錯協(xié)議的額外能耗主要來自譯碼過程和冗余信息的傳輸。而自動重發(fā)請求的能耗主要來自重傳過程。文獻定義能效為衡量差錯控制優(yōu)劣的指標(biāo), 探討了低能耗網(wǎng)絡(luò)的數(shù)據(jù)包長度優(yōu)化問題, 并證明了自動重發(fā)請求不能提高能效。文獻證明了采用BCH 碼比卷積碼能獲得更大的能效提高。文獻證明了采用硬件而不是微處理器譯碼能有效地降低能效。文獻在研究差錯控制方案時考慮了物理層和路由層因素的影響。在此基礎(chǔ)上, 提出利用BCH 碼的縮短形式對信息進行編碼, 并對具有不同糾錯能力的BCH 碼的能效進行了比較, 得出了特定情況下的最優(yōu)編碼方案。
3 縮短BCH 碼
BCH 碼是一類運用廣泛的能糾正多個隨機錯誤的前向糾錯編碼, 其中, 能糾正單個隨機錯誤的碼即為漢明碼, 漢明碼譯碼簡單, 能耗可忽略。
BCH 碼由( n, k, t) 表示, n 為碼長, k 為信息長度, t為糾錯能力。BCH碼的碼長n = 2m- 1, 在實際應(yīng)用中, 需要對任意碼長的信息進行編碼, 從( 2m -1, k )編碼中選出前s位為0的碼組構(gòu)成一種縮短形式的BCH 碼( 2m - 1- s, k- s), 監(jiān)督位數(shù)不變, 因此糾錯能力不變。根據(jù)應(yīng)用中的實際情況, 對整字節(jié)長度的信息位構(gòu)造縮短漢明碼。隨著信息位的長度增加, 其對應(yīng)的BCH 碼也在改變, 其對應(yīng)關(guān)系如表1所示。
表1 不同碼長的縮短BCH 碼對應(yīng)的BCH 碼
4 能效分析
4. 1 能效定義
能效定義是在文獻中提出的, 這個定義綜合了差錯控制協(xié)議對于能量吞吐率和誤包率的影響:
其中ηe 代表能量吞吐率, 為傳輸過程中消耗的有效能量E effe與總能量Etota l之比, 有效能量是指用來傳輸有用信息的能量, P 為誤包率。
4. 2 無線通訊模型
以C rossbow 公司的M ica2無線傳感器節(jié)點為無線通信模型。M ica2 節(jié)點采用A tmeg128L+CC1000為主要芯片。其參數(shù)如表2所示(無線傳輸頻率433MH z)。
表2 M ica2節(jié)點的通信參數(shù)
非相關(guān)FSK調(diào)制下, 誤比特率ρb 計算如下:
其中, γ為接收端信噪比, BN 為噪聲帶寬, Rradio為CC1000芯片的數(shù)據(jù)傳輸率。信號在空氣傳播過程中的衰減A ttenuatiON 按照下式計算:
A ttenuation = 20log ( 4πd /λ) + 10n log (d ) ( 3)其中, d為信號傳輸距離, λ為信號波長, n為路徑損耗系數(shù), 假設(shè)n= 3。信噪比!為輸出功率減去熱噪聲, 衰減及接收端噪聲系數(shù)。
4. 3 數(shù)學(xué)推導(dǎo)
4. 3. 1 未編碼方案的能效
對于未編碼系統(tǒng), 誤包率為:
消耗總能量:
其中Etr, E re分別為發(fā)送耗能和接受耗能, TSTs為CC1000發(fā)動端的啟動時間, Itr, Ire 和Vrad io 分別為CC1000發(fā)射端電流, 接收端電流和工作電壓, 無線傳輸網(wǎng)絡(luò)的能量消耗主要由無線通信過程產(chǎn)生, 為了節(jié)省能量, 在數(shù)據(jù)包發(fā)送間隙會關(guān)掉無線通信設(shè)備來節(jié)省能耗, 但每次重啟時會消耗一部分能量來打開發(fā)送端。
有效能量為:
其中k 為信息碼長, Ttr為傳輸1b it數(shù)據(jù)的時間,Ttr = 1 /Rradio。
由結(jié)果可見, 對于未編碼系統(tǒng), 在原始誤碼率一定的情況下, 其能效僅與包長有關(guān), 并且存在最優(yōu)值使得能效為最大。
4. 3. 2 縮短BCH 編碼的能效
糾錯能力為t的前向糾錯系統(tǒng)誤包率為:
對于糾錯能力為1的BCH 碼, 也就是漢明碼,其譯碼能耗可以忽略, 縮短BCH 碼( n, k, t) ( t> 2)的譯碼能耗為:
其中, Tadd和Tmu ti分別是微處理器在GF ( 2m)域(m = log2n + 1) 做一次加法和乘法運算的時間,M ica2節(jié)點的微處理器為8位的A tmeg128L, 分別在1Tcyc le和2Tcycle的時間內(nèi)完成8位的加法乘法。
總耗能為:
根據(jù)公式( 1), 能效為:
4. 4 仿真結(jié)果
圖1 比較了輸出功率為0dbm 時, 不同信息長度下各編碼方式的誤包率, 隨著信息位數(shù)長的增大,未編碼系統(tǒng)的誤包率急劇增大, 對于125字節(jié)的信息碼長, 誤包率達(dá)到了0. 4, 幾乎無法通信。糾錯能力越強, 誤包率越小, 糾錯能力大于2的BCH 碼效果尤其顯著, 其誤包率接近0。再增加糾錯能力沒有明顯效果。
圖1 不同信息長度下各編碼方式的誤包率
圖2 顯示了隨著信息位的增加, 各種編碼方式的能量吞吐率, 其總趨勢是增加的, 也就是說, 雖然隨著碼長的增加, 譯碼能量也在增加, 但其增加幅度較有效能量的增加較小。
由圖2可知, BCH 縮短編碼的能量吞吐率并不是單調(diào)增加, 在某些點出現(xiàn)了下降, 這些點出現(xiàn)每次監(jiān)督碼位數(shù)( n - k ) 增加, 然后監(jiān)督碼位數(shù)不變, 信息位逐漸增大, 能量吞吐率又開始增加。
根據(jù)圖2對比具有不同糾錯能力的編碼, 糾錯能力越強, 其譯碼能耗越大, 監(jiān)督碼越長, 其能量吞吐率越低??s短漢明碼的能量吞吐率與未編碼時的能量吞吐率極為接近, 這是因為其譯碼能耗可忽略的緣故。
圖2 不同信息長度下各編碼方式的能量吞吐率
圖3中, 糾錯能力越強, 最優(yōu)信息碼長越大, 但其對應(yīng)的最優(yōu)能耗也越低。這是因為糾錯能力延緩了誤包率的增大, 使得在較大范圍的包長內(nèi), 能量吞吐率的增加占有優(yōu)勢。但多余的譯碼能耗會降低能效。
由圖3可以看出, 最大的能效值出現(xiàn)在縮短漢明碼, 接近0. 95, 包長約為400, 對比圖一, 此時對應(yīng)的誤包率大約在0. 02左右, 在可靠性要求不是很高的場合, 能取得很好的效果, 平衡了能量吞吐率與誤包率的要求。
圖3 不同信息長度下各編碼方式的能效
5 結(jié)束語
根據(jù)數(shù)學(xué)推導(dǎo)和仿真結(jié)果可以看出, BCH 碼確實能在能量有限的無線傳感器網(wǎng)絡(luò)中顯著地提高能效, 但一味追求高糾錯能力會取得反效果。在典型的通信環(huán)境和設(shè)備下, 糾錯能力為1 的縮短BCH碼, 也即是縮短漢明碼, 可取得總體最優(yōu)的效果, 并且存在最優(yōu)信息長度使得能效最大。在對可靠性要求很嚴(yán)格的應(yīng)用中, 可考慮使用糾錯能力為2- 3位的縮短BCH 碼。