新聞中心

EEPW首頁(yè) > 設(shè)計(jì)應(yīng)用 > 寬帶載波電力線通信協(xié)議中信道交織的FPGA實(shí)現(xiàn)

寬帶載波電力線通信協(xié)議中信道交織的FPGA實(shí)現(xiàn)

作者: 時(shí)間:2016-10-10 來(lái)源:網(wǎng)絡(luò) 收藏

摘要 介紹了協(xié)議中用到的。在此協(xié)議的基礎(chǔ)上,提出了基于模塊的設(shè)計(jì)方案。文中對(duì)的物理層實(shí)現(xiàn)方法進(jìn)行了介紹,該方法是通過(guò)ROM讀操作和RAM的讀寫(xiě)操作來(lái)實(shí)現(xiàn)信道交織過(guò)程,較好地滿足了資源和時(shí)延的雙重要求。

本文引用地址:http://butianyuan.cn/article/201610/306124.htm

關(guān)鍵詞 信道交織;;

隨著通信技術(shù)的不斷發(fā)展,出現(xiàn)了各種各樣的通信,一般有線通信和無(wú)線通信之分,有線通信一般是通過(guò)光纜電纜進(jìn)行的通信,而無(wú)線則是通過(guò)電磁波進(jìn)行空中信息傳遞的通信。雖然無(wú)線通信省缺了有形的傳輸媒介,通過(guò)空中接口進(jìn)行通信,但無(wú)線通信在傳輸容量和傳輸質(zhì)量都不如有限通信。電力線網(wǎng)絡(luò)覆蓋范圍廣,是其他網(wǎng)絡(luò)無(wú)法比擬的,而且是有限通信,通過(guò)電力線進(jìn)行通信則成為研究重點(diǎn),但電力線的初衷只是用來(lái)進(jìn)行電力傳輸,還沒(méi)有考慮到用電力線進(jìn)行信息的傳遞,所以原有電力線的鋪設(shè)導(dǎo)致電力線信道特性較差、干擾大、時(shí)變性差,不僅存在多徑時(shí)延問(wèn)題,且存在頻率選擇性衰落的現(xiàn)象。隨著信號(hào)處理技術(shù)和信道調(diào)制技術(shù)的不斷發(fā)展,現(xiàn)在已經(jīng)能克服這種電力線信道差的問(wèn)題。其中的關(guān)鍵技術(shù)就是正交頻分復(fù)用(Orthogonal Frequency Division Multiplexing,OFDM),這是一種復(fù)用技術(shù),同時(shí)是一種用多個(gè)相互正交的子載波來(lái)傳送信息的一種多載波調(diào)制技術(shù)。該技術(shù)可以解決電力線通信信道差的問(wèn)題,大幅提高了平鋪利用率,并可實(shí)現(xiàn)電力線的有效通信。

圖1是基于FFT的OFDM實(shí)現(xiàn)框圖。發(fā)送端:從數(shù)據(jù)鏈路層接收數(shù)據(jù),經(jīng)過(guò)一系列的信號(hào)處理和變換,以O(shè)FDM調(diào)制方式通過(guò)將信號(hào)發(fā)送到電力線。接收端:從電力線檢測(cè)到信號(hào)后,做相應(yīng)的反向處理,最終將電力線上的載波信號(hào)還原為數(shù)據(jù),送到數(shù)據(jù)鏈路層。在電力線通信系統(tǒng)中采取信道交織技術(shù),在時(shí)間的維度上離散信道的突發(fā)差錯(cuò),從而使得有記憶信道可近似轉(zhuǎn)變?yōu)闊o(wú)記憶信道,使得設(shè)計(jì)的糾隨機(jī)差錯(cuò)的糾錯(cuò)碼同樣適用于多徑衰落信道。

1 信道交織的基本理論

信道交織的理論建立在香依理論的基礎(chǔ)上。Claude.E.Shannon提出:對(duì)于任意給定的有噪聲信道至少存在一種復(fù)雜的編碼方法,可使信道的傳輸速率無(wú)限逼近信道容量而同時(shí)保證傳輸差錯(cuò)率達(dá)到任意小。而信道交織就是逼近這一相同理論的一種較好的實(shí)現(xiàn)方式。

信道交織的實(shí)質(zhì)是一種置亂器,僅通過(guò)改變信息的結(jié)構(gòu)來(lái)提高數(shù)據(jù)傳輸?shù)目煽啃?。信道交織是通過(guò)把連續(xù)的比特信息分散開(kāi)以避免突發(fā)差錯(cuò)事件。這樣就能把錯(cuò)誤的范圍盡量控制在糾錯(cuò)電路的能力范圍之內(nèi)。在接收端經(jīng)過(guò)糾錯(cuò)譯碼電路后,將這種置亂順序信息還原就能最大限度的的正確譯碼出發(fā)送的信息。

按照信道交織技術(shù)對(duì)于數(shù)據(jù)次序的改變規(guī)律,信道交織碼可分為周期交織和偽隨機(jī)交織兩類。周期交織又分為分組交織和卷積交織,周期交織指交織規(guī)律有明確的周期性,序列內(nèi)數(shù)據(jù)之間的交織間隔恒定。所謂偽隨機(jī)交織,指交織不采用唯一的單個(gè)交織深度值而采用有變化的交織深度值,但變化仍有一定的規(guī)律。

2 電力線通信協(xié)議的信道交織實(shí)現(xiàn)

協(xié)議中的信道交織過(guò)程包括信息位的交織、校驗(yàn)碼交織、信息碼和校驗(yàn)碼之間的交織,半字節(jié)移位4個(gè)步驟。具體的信道交織的過(guò)程如下:首先設(shè)定K代表信息bit的數(shù)量,N-K代表校驗(yàn)bit的數(shù)量,K個(gè)信息bit會(huì)分成4個(gè)子塊,每個(gè)子塊的大小為K/4 bit,N-K個(gè)校驗(yàn)bit會(huì)分成4個(gè)子塊,每個(gè)子塊的大小為(N-K)/4 bit,然后就是按步驟依次操作。

(1)信息位的交織。將信息bit存入一個(gè)K/4行4列的矩陣,依次把每列存滿。進(jìn)行交織時(shí)每行的4個(gè)bit是同時(shí)讀出的。從這個(gè)矩陣讀出數(shù)據(jù)時(shí),從第0 行開(kāi)始,從第二次開(kāi)始每次讀時(shí)行地址加上參數(shù)StepSize,這樣第一輪讀的行地址順序?yàn)?0,StepSize,2×StepSize,… [K/4]-StepSize),當(dāng)讀了[K/4]/StepSize行之后,就讀到了矩陣的尾部,然后讀下一輪的行地址初始化為1,之后每次讀取時(shí)行地址加上參數(shù)StepSize,當(dāng)讀了[K/4]/StepSize行之后又到了行尾,這樣第二輪讀的行地址順序?yàn)?1,1+StepSize,1+2 ×StepSize,…[K/4]-StepSize+1),然后第三輪的行地址加1為2,依次類推,經(jīng)StepSize輪后全部行均已讀出。

(2)校驗(yàn)碼交織。校驗(yàn)碼的交織與信息位的交織類似,只是每次讀行地址時(shí)均加一個(gè)偏移量。因此,校驗(yàn)bit第一次讀從參數(shù)offset定義的行開(kāi)始,步長(zhǎng)參數(shù)還是StepSize,文中定義T=(N-K)/4,第一輪讀出的行的順序?yàn)?offset,(offset+StepSize)mod T,(offset+2×StepSize)mod T,…(T-StepSize+offset)mod T),然后第二輪第一行的指針加1,再重復(fù)作StepSize-1輪,最后經(jīng)過(guò)StepSize輪,每輪讀出了T/StepSize行數(shù)據(jù),一共讀出T行數(shù)據(jù)。表1列舉了信道交織中3種傳輸塊用到的參數(shù)。

(3)信息碼和校驗(yàn)碼之間的交織。輸出的前4 bit為信息碼,接著4 bit為校驗(yàn)碼,以此類推。

(4)半字節(jié)移位。半字節(jié)移位以4 bit為單位進(jìn)行移位,無(wú)論信息bit還是校驗(yàn)bit,每2個(gè)半Byte調(diào)整一次順序,表2列舉了具體移位模式。并且整體以32 bit為一個(gè)循環(huán)進(jìn)行半字節(jié)移位操作。

3 電力線通信協(xié)議中信道交織設(shè)計(jì)

在寬帶載波電力線通信協(xié)議中信道交織處理的數(shù)據(jù)單元塊有3種:PB16,PB136和PB520。中信道交織主要有兩種實(shí)現(xiàn)方式:一是通過(guò)計(jì)數(shù)器和邏輯控制單元來(lái)實(shí)現(xiàn);另一種是通過(guò)存儲(chǔ)在ROM中的信道交織表來(lái)實(shí)現(xiàn)。通過(guò)計(jì)數(shù)器和邏輯控制單元來(lái)實(shí)現(xiàn),其中會(huì)涉及到大量的除法和取模運(yùn)行,時(shí)間延遲大且不易控制。但采用存儲(chǔ)在ROM中的信道交織表來(lái)實(shí)現(xiàn)的話,只需通過(guò)Matlab計(jì)算出信道交織表的映射關(guān)系,然后將Matlab中的數(shù)據(jù)導(dǎo)出生成HEX 文件作為ROM的初始值。最后按ROM中存儲(chǔ)的地址寫(xiě)到RAM即可實(shí)現(xiàn)信道交織。其中ROM和RAM直接調(diào)用Altera的IP核??紤]到后者只用通過(guò) ROM讀和RAM讀寫(xiě)就實(shí)現(xiàn)了信道交織,且邏輯簡(jiǎn)單、時(shí)延小,所以本設(shè)計(jì)方案采用后者。且每種數(shù)據(jù)單元塊對(duì)應(yīng)一張信息交織表,因此只需信道交織表就能滿足系統(tǒng)的要求。寬帶載波電力線通信協(xié)議中信道交織的FPGA實(shí)現(xiàn)就是采用存儲(chǔ)在ROM中的信道交織表來(lái)實(shí)現(xiàn)的方式。

為了對(duì)數(shù)據(jù)進(jìn)行連續(xù)處理,設(shè)計(jì)采用兩個(gè)RAM同時(shí)工作的方式,實(shí)現(xiàn)框圖如圖2所示。具體做法就是通過(guò)對(duì)兩個(gè)RAM的乒乓操作來(lái)實(shí)現(xiàn)數(shù)據(jù)的緩存和發(fā)送。在第 1個(gè)傳輸周期,在輸入端通過(guò)選擇器1將數(shù)據(jù)寫(xiě)入RAM1。在第2個(gè)傳輸周期,在輸入端切換選擇器1將數(shù)據(jù)寫(xiě)入RAM2,在輸出端同時(shí)將RAM1中的數(shù)據(jù)通過(guò)選擇器2讀出。在第3個(gè)傳輸周期,在輸入端切換選擇器1將數(shù)據(jù)寫(xiě)入RAM1,在輸出端同時(shí)將RAM2中的數(shù)據(jù)通過(guò)選擇器2讀出。如此循環(huán)便可實(shí)現(xiàn)對(duì)數(shù)據(jù)的連續(xù)緩存和讀出。

對(duì)其中一片RAM實(shí)現(xiàn)信道交織具體的實(shí)現(xiàn)過(guò)程就是通過(guò)控制ROM的讀出和控制RAM的讀寫(xiě)來(lái)實(shí)現(xiàn):在ROM中存放交織地址表,將RAM作為存放數(shù)據(jù)的緩存器,先將計(jì)數(shù)器的輸出送至ROM地址總線,選擇器再選擇從ROM讀出的交織地址送至RAM的地址線完成交織;然后按計(jì)數(shù)器的順序地址將RAM中的數(shù)據(jù)讀出,即為交織后的輸出結(jié)果。詳細(xì)的信道交織流程如圖3所示。

4 仿真結(jié)果分析

本文用Verilog HDL語(yǔ)言編程實(shí)現(xiàn)信道交織,并通過(guò)QuanusⅡ和Modelsim軟件進(jìn)行仿真驗(yàn)證。圖4為截取的一段仿真波形,波形顯示的是先按信道交織表的地址將輸入數(shù)據(jù)寫(xiě)入RAM,輸入數(shù)據(jù)是連續(xù)的256個(gè)0,1比特流,最后按計(jì)數(shù)器的順序地址讀出交織后的數(shù)據(jù),交織后的結(jié)果是前64個(gè)數(shù)據(jù)均為0,接著64個(gè)數(shù)據(jù)均為1,然后接著64個(gè)數(shù)據(jù)均為0,最后64個(gè)數(shù)據(jù)為1,與Matlab中的仿真結(jié)果一致,證明了該實(shí)現(xiàn)方案的正確性。

5 結(jié)束語(yǔ)

本文在寬帶載波電力線通信協(xié)議的基礎(chǔ)上,給出了基于FPGA的信道交織模塊的物理層實(shí)現(xiàn)方法。該方法從實(shí)際出發(fā),權(quán)衡資源和時(shí)延的要求,實(shí)用性較強(qiáng)。其中,采用雙RAM可實(shí)現(xiàn)流水線操作,解決了單RAM等待的時(shí)延的問(wèn)題;采用信道交織表的方式,相比單純采用邏輯控制的方式,可操作性和可移植性強(qiáng)。該方案已成功應(yīng)用于某寬帶載波電力線通信模塊中,證明該方案切實(shí)可行。



評(píng)論


相關(guān)推薦

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

關(guān)閉