本發(fā)明涉及電力線載波通信領(lǐng)域,尤其涉及一種Turbo碼交織方法、裝置及交織器。
背景技術(shù):
:電力線載波(PowerLineCarrier,PLC)通信是利用電力線為信息傳輸媒介進(jìn)行語音或數(shù)據(jù)傳輸?shù)耐ㄐ欧绞?。電力線載波通信因其廣泛的布線網(wǎng)絡(luò)優(yōu)勢,成為在電力網(wǎng)絡(luò)使用區(qū)域的最寬廣的通信手段。正交頻分復(fù)用(OrthogonalFrequencyDivisionMultiplexing,OFDM)采用快速傅里葉變換(FastFourierTransformation,F(xiàn)FT)和傅里葉逆變換(InverseFastFourierTransformation,IFFT)實(shí)現(xiàn)調(diào)制和解調(diào),采用插入循環(huán)前綴的方法可以有效降低碼間干擾帶來的不利影響。此外,OFDM系統(tǒng)各個子載波之間存在正交性,允許子信道的頻譜相互重疊,所以可以最大限度的利用頻譜資源。基于這些優(yōu)點(diǎn),OFDM在電力線載波通信中得到越來越廣泛的應(yīng)用。在以O(shè)FDM為核心技術(shù)的PLC通信系統(tǒng)中,當(dāng)數(shù)據(jù)在信道中傳輸時,如果遇到干擾,則容易造成大量、集中的錯碼,錯碼數(shù)量過多可能會超出糾錯能力而無法糾正錯誤。為提高通信系統(tǒng)的通信性能,可以對通信信道進(jìn)行信道編碼?,F(xiàn)有技術(shù)中,Turbo碼以接近香農(nóng)定理極限的優(yōu)異性能,成為OFDM通信系統(tǒng)中廣泛應(yīng)用的信道編碼方式。Turbo碼的最大特點(diǎn)是在編譯碼器中引入了交織器和解交織器,能夠有效地實(shí)現(xiàn)近似隨機(jī)的編譯碼。在數(shù)據(jù)發(fā)送之前,通過Turbo碼交織器對數(shù)據(jù)進(jìn)行交織,將集中的錯碼分散到各個碼組中,從而便于糾錯。然而,當(dāng)在數(shù)據(jù)傳輸過程中,遇到脈沖干擾和頻率深衰落時,采用現(xiàn)有的Turbo碼交織器對發(fā)送數(shù)據(jù)進(jìn)行交織后,接收端接收到的數(shù)據(jù)仍然存在大量錯碼的情況。技術(shù)實(shí)現(xiàn)要素:本發(fā)明實(shí)施例解決的問題是如何降低OFDM電力線載波通信系統(tǒng)中數(shù)據(jù)的誤碼率。為解決上述問題,本發(fā)明實(shí)施例提供一種Turbo碼交織方法,包括:獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度,以及所述當(dāng)前業(yè)務(wù)所對應(yīng)的子載波數(shù);根據(jù)所述數(shù)據(jù)包長度以及所述子載波數(shù),計算對應(yīng)的OFDM符號數(shù);根據(jù)所述子載波數(shù)以及所述OFDM符號數(shù),計算所述當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù);根據(jù)所述子載波數(shù)、所述OFDM符號數(shù)以及所述交織參數(shù),計算對應(yīng)的交織地址??蛇x的,所述根據(jù)所述數(shù)據(jù)包長度以及所述子載波數(shù),計算對應(yīng)的OFDM符號數(shù),包括:采用公式n=N/m得到所述OFDM符號數(shù),其中:n為所述OFDM符號數(shù),N為所述數(shù)據(jù)包長度,m為所述子載波數(shù)??蛇x的,在n為非整數(shù)時,將所述數(shù)據(jù)包的長度擴(kuò)展至N',并采用公式n=N'/m得到所述OFDM符號數(shù)n,其中,N'為大于N且可被m整除的最小整數(shù)??蛇x的,所述根據(jù)所述子載波數(shù)以及所述OFDM符號數(shù),計算所述當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù),包括:采用公式GCD(m_x,m)=1計算交織參數(shù)m_i與m_j:在計算得到的結(jié)果中,大于2的數(shù)值的個數(shù)大于1時,設(shè)定m_i為所述結(jié)果中大于2的數(shù)值中的最小值,m_j為所述結(jié)果中大于2的數(shù)值中的次小值;在計算得到的結(jié)果中,大于2的數(shù)值的個數(shù)等于1時,設(shè)定m_i為所述結(jié)果中大于2的數(shù)值,m_j=1;在計算得到的結(jié)果中,不存在大于2的數(shù)值時,設(shè)定m_i=m_j=1;采用公式GCD(n_x,n)=1計算交織參數(shù)n_i與n_j:在計算得到的結(jié)果中,大于2的數(shù)值的個數(shù)大于1時,設(shè)定n_i為所述結(jié) 果中大于2的數(shù)值中的次小值,n_j為所述結(jié)果中大于2的數(shù)值中的最小值;在計算得到的結(jié)果中,大于2的數(shù)值的個數(shù)等于1時,設(shè)定n_j為所述結(jié)果中大于2的數(shù)值,n_i=1;在計算得到的結(jié)果中,不存在大于2的數(shù)值時,設(shè)定n_i=n_j=1;其中,GCD(x,y)表示為求數(shù)x與數(shù)y的最大公約數(shù)??蛇x的,所述根據(jù)所述子載波數(shù)、所述OFDM符號數(shù)以及所述交織參數(shù),計算對應(yīng)的交織地址,包括:獲取所述數(shù)據(jù)包中當(dāng)前數(shù)據(jù)的初始地址;采用公式J=(j×n_j+i×n_i)modnI=(i×m_i+J×m_j)modm]]>計算所述當(dāng)前數(shù)據(jù)的初始地址對應(yīng)的交織地址;其中,j表示為當(dāng)前數(shù)據(jù)對應(yīng)的OFDM符號的標(biāo)識,i表示為當(dāng)前數(shù)據(jù)對應(yīng)的子載波的標(biāo)識,modn表示為對n求模,modm表示為對m求模。為解決上述問題,本發(fā)明實(shí)施例還提供了一種Turbo碼交織裝置,包括:獲取單元,用于獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度,以及所述當(dāng)前業(yè)務(wù)所對應(yīng)的子載波數(shù);第一計算單元,用于根據(jù)所述數(shù)據(jù)包長度以及所述子載波數(shù),計算對應(yīng)的OFDM符號數(shù);第二計算單元,用于根據(jù)所述子載波數(shù)以及所述OFDM符號數(shù),計算所述當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù);第三計算單元,用于根據(jù)所述子載波數(shù)、所述OFDM符號數(shù)以及所述交織參數(shù),計算對應(yīng)的交織地址。可選的,所述第一計算單元采用公式n=N/m得到所述OFDM符號數(shù),其中:n為所述OFDM符號數(shù),N為所述數(shù)據(jù)包長度,m為所述子載波數(shù)??蛇x的,所述第一計算單元還用于:在n為非整數(shù)時,將所述數(shù)據(jù)包的長度擴(kuò)展至N',并采用公式n=N'/m得到所述OFDM符號數(shù)n,其中,N'為大于N且可被m整除的最小整數(shù)。本發(fā)明實(shí)施例還提供了一種Turbo碼交織器,包括:參數(shù)讀取器、第一運(yùn)算器、寄存器、第二運(yùn)算器以及控制器,其中:所述參數(shù)讀取器,用于獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度,以及所述當(dāng)前業(yè)務(wù)所對應(yīng)的子載波數(shù);所述第一運(yùn)算器,用于根據(jù)所述數(shù)據(jù)包長度以及所述子載波數(shù),計算對應(yīng)的OFDM符號數(shù),并根據(jù)所述子載波數(shù)以及所述OFDM符號數(shù),計算所述當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù);所述寄存器,適于存儲所述第一運(yùn)算器計算得到的所述當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù);所述第二運(yùn)算器,適于根據(jù)所述寄存器中存儲的所述交織參數(shù),以及所述子載波數(shù)與所述OFDM符號數(shù),計算對應(yīng)的交織地址;所述控制器,適于控制所述第二運(yùn)算器在預(yù)設(shè)周期內(nèi)進(jìn)行運(yùn)算。與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例的技術(shù)方案具有以下優(yōu)點(diǎn):通過預(yù)先獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度以及子載波個數(shù),計算出OFDM符號數(shù),根據(jù)OFDM符號數(shù)以及子載波個數(shù)計算當(dāng)前業(yè)務(wù)的交織參數(shù),進(jìn)而計算獲取當(dāng)前業(yè)務(wù)數(shù)據(jù)對應(yīng)的交織地址。由于對數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行了時域和頻域的交織,數(shù)據(jù)在傳輸過程中受到頻率深衰落影響時,可以將同一個子載波位置上的錯誤數(shù)據(jù)分散到多個子載波中;數(shù)據(jù)在傳輸過程中受到脈沖干擾時,可以將一個OFDM符號中的錯誤分散到多個OFDM符號中。即:通過對數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行時域和頻域的交織,可以避免頻率深衰落導(dǎo)致整個子載波位置上的數(shù)據(jù)均出現(xiàn)錯誤的同時,也可以避免脈沖干擾導(dǎo)致一個OFDM符號上的數(shù)據(jù)均出現(xiàn)錯誤,從而可以有效地降低OFDMPLC通信系統(tǒng)中數(shù)據(jù)的誤碼率。附圖說明圖1是本發(fā)明實(shí)施例中的一種Turbo碼交織方法的流程圖;圖2是本發(fā)明實(shí)施例中的同一個OFDM符號中數(shù)據(jù)交織前后位置對比圖;圖3是本發(fā)明實(shí)施例中的同一個子載波對應(yīng)數(shù)據(jù)交織前后位置分布對比 圖;圖4是本發(fā)明實(shí)施例中的一種Turbo碼交織裝置的結(jié)構(gòu)示意圖;圖5是本發(fā)明實(shí)施例中的一種Turbo碼交織器的結(jié)構(gòu)示意圖。具體實(shí)施方式在以O(shè)FDM為核心技術(shù)的PLC通信系統(tǒng)中,當(dāng)數(shù)據(jù)在信道中傳輸時,存在脈沖干擾和頻率深衰落的情況下,采用現(xiàn)有的Turbo碼交織器對發(fā)送數(shù)據(jù)進(jìn)行交織后,接收端接收到的數(shù)據(jù)仍然存在大量錯碼的情況。在本發(fā)明實(shí)施例中,對數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行了時域和頻域的交織。頻域上的交織可以使得數(shù)據(jù)在傳輸過程中受到頻率深衰落影響時,可以將同一個子載波位置上的錯誤數(shù)據(jù)分散到多個子載波中,防止頻率深衰落擾亂該頻率對應(yīng)的所有數(shù)據(jù);時域上的交織可以使得數(shù)據(jù)在傳輸過程中受到脈沖干擾時,可以將一個OFDM符號中的錯誤分散到多個OFDM符號中,避免整個OFDM符號中的數(shù)據(jù)受到干擾。即:通過對數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行時域和頻域的交織,可以避免頻率深衰落導(dǎo)致整個子載波位置上的數(shù)據(jù)均出現(xiàn)錯誤的同時,也可以避免脈沖干擾導(dǎo)致一個OFDM符號上的數(shù)據(jù)均出現(xiàn)錯誤,從而可以有效地降低OFDMPLC通信系統(tǒng)中數(shù)據(jù)的誤碼率。為使本發(fā)明實(shí)施例的上述目的、特征和優(yōu)點(diǎn)能夠更為明顯易懂,下面結(jié)合附圖對本發(fā)明的具體實(shí)施例做詳細(xì)的說明。本發(fā)明實(shí)施例提供了一種Turbo碼交織方法,參照圖1,以下通過具體步驟進(jìn)行詳細(xì)說明。步驟S101,獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度,以及所述當(dāng)前業(yè)務(wù)所對應(yīng)的子載波數(shù)。在具體實(shí)施中,在發(fā)送端將當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包發(fā)送至接收端之前,可以先獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度。在具體實(shí)施中,可以根據(jù)發(fā)送端與接收端之間當(dāng)前的信道狀態(tài),來選擇對應(yīng)的子載波頻段以及子載波的數(shù)量。在實(shí)際應(yīng)用中,電力線載波通信的信道是一個頻率選擇性信道。電力線載波通信過程中,除了背景噪聲之外,還受到脈沖噪聲、窄帶干擾等因素的 影響。因此,在選擇子載波時,可以優(yōu)先選擇信噪比較大的頻段,盡量規(guī)避干擾較強(qiáng)的頻段。在選定頻段后,根據(jù)使用的采樣頻率以及FFT點(diǎn)數(shù)便可以計算出子載波的個數(shù)。在實(shí)際應(yīng)用中,可以根據(jù)實(shí)際的應(yīng)用場景來選擇對應(yīng)的子載波數(shù),此處不做贅述。步驟S102,根據(jù)所述數(shù)據(jù)包長度以及所述子載波數(shù),計算對應(yīng)的OFDM符號數(shù)。在具體實(shí)施中,在根據(jù)步驟S101獲取到數(shù)據(jù)包長度以及子載波數(shù)之后,即可獲取對應(yīng)的OFDM符號數(shù)。在本發(fā)明一實(shí)施例中,通過以下公式計算OFDM符號數(shù):n=N/m(1);其中,n為OFDM符號數(shù),N為數(shù)據(jù)包長度,m為子載波個數(shù)。在本發(fā)明實(shí)施例中,還存在N無法被m整除的情況,即根據(jù)公式(1)計算得到的OFDM符號數(shù)n為非整數(shù)。針對上述情況,在本發(fā)明實(shí)施例中,可以將數(shù)據(jù)包的長度N擴(kuò)展至N',其中,N'為大于N且可以被m整除的最小整數(shù)。例如,可以在數(shù)據(jù)包的數(shù)據(jù)尾部添加N'-N個無效0,此時OFDM符號數(shù)為n=N'/m。又如,也可以在數(shù)據(jù)包的頭部添加N'-N個無效0,此時OFDM符號數(shù)為n=N'/m。可以理解的是,在實(shí)際應(yīng)用中,也可以在數(shù)據(jù)包的中間部分添加N'-N個無效0。在本發(fā)明實(shí)施例中,對長度為N'的數(shù)據(jù)包執(zhí)行步驟S103和步驟S104后,可以獲得N'個數(shù)據(jù)一一對應(yīng)的交織地址。接收端對接收到的數(shù)據(jù)進(jìn)行解碼后,去除對應(yīng)位置增加的N'-N個無效0,即可獲取長度為N的有效數(shù)據(jù)??梢岳斫獾氖牵趯?shí)際應(yīng)用中,還可以存在其他的計算公式來計算OFDM符號數(shù),此處不再一一贅述。步驟S103,根據(jù)所述子載波數(shù)以及所述OFDM符號數(shù),計算所述當(dāng)前業(yè) 務(wù)對應(yīng)的交織參數(shù)。在本發(fā)明一實(shí)施例中,當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù)包括:m_i、m_j、n_i以及n_j。通過如下公式(2)計算交織參數(shù)m_i以及m_j:GCD(m_x,m)=1(2);通過如下公式(3)計算交織參數(shù)n_i以及n_j:GCD(n_x,n)=1(3);其中,n為OFDM符號數(shù),m為子載波數(shù),GCD(x,y)表示為求數(shù)x與數(shù)y的最大公約數(shù)。在本發(fā)明一實(shí)施例中,采用公式(2)計算交織參數(shù)m_i以及m_j時,可以存在如下三種情形:1)計算得到的結(jié)果中,大于2的數(shù)值的個數(shù)大于1針對情形1),設(shè)定m_i為計算得到的結(jié)果中大于2的數(shù)值中的最小值,設(shè)定m_j為計算得到的結(jié)果中大于2的數(shù)值中的次小值。例如,m=10,則根據(jù)公式(2),可以得知計算得到的結(jié)果m_x為1、3、7、9,m_x中大于2的數(shù)值的個數(shù)為3,即大于2的數(shù)值的個數(shù)大于1。針對情形1),設(shè)定m_i為計算得到的m_x中大于2的數(shù)值中的最小值,因此m_i=3;設(shè)定m_j為計算得到的m_x中大于2的數(shù)值中的次小值,因此m_j=7。2)計算得到的結(jié)果中,大于2的數(shù)值的個數(shù)等于1針對情形2),設(shè)定m_i為計算得到的結(jié)果中大于2的數(shù)值,設(shè)定m_j=1。例如,m=6,則采用公式(2)計算得到的m_x為1、5,即計算得到的m_x中大于2的數(shù)值只有一個。在這種情況下,設(shè)定m_i為計算得到的m_x中大于2的數(shù)值,即m_i=5,設(shè)定m_j=1。3)計算得到的結(jié)果中,不存在大于2的數(shù)值針對情形3),設(shè)定m_i=m_j=1。例如,m=3,則采用公式(2)計算得到的m_x為1、2,即m_x中不存 在大于2的數(shù)值。在這種情況下,設(shè)定m_i=m_j=1。相類似的,在本發(fā)明一實(shí)施例中,在采用公式(3)計算n_i與n_j時,同樣可以存在三種情形:4)計算得到的結(jié)果中,大于2的數(shù)值的個數(shù)大于1針對情形4),設(shè)定n_i為計算得到的結(jié)果中大于2的數(shù)值中的次小值,設(shè)定n_j為計算得到的結(jié)果中大于2的數(shù)值中的次小值。例如,n=8,則根據(jù)公式(3),可以得知計算得到的結(jié)果n_x為1、3、5、7,即計算得到的n_x中,大于2的數(shù)值的個數(shù)為3,滿足情形4)。針對情形4),設(shè)定n_i為計算得到的n_x中大于2的數(shù)值中的次小值,因此n_i=5;設(shè)定n_j為計算得到的n_x中大于2的數(shù)值中的最小值,因此n_j=3。5)計算得到的結(jié)果中,大于2的數(shù)值的個數(shù)等于1針對情形5),設(shè)定n_j為計算得到的結(jié)果中大于2的數(shù)值,設(shè)定n_i=1。例如,n=6,則采用公式(3)計算得到的n_x為1、5,即計算得到的n_x中大于2的數(shù)值只有一個。在這種情況下,設(shè)定n_j為計算得到的n_x中大于2的數(shù)值,即n_j=5,設(shè)定n_i=1。6)計算得到的結(jié)果中,不存在大于2的數(shù)值針對情形6),設(shè)定n_i=n_j=1。例如,n=3,則采用公式(3)計算得到的n_x為1、2,不存在大于2的數(shù)值。在這種情況下,設(shè)定n_i=n_j=1??梢岳斫獾氖?,在本發(fā)明其他實(shí)施例中,也可以存在其他的運(yùn)算方法來獲取當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù):m_i、m_j、n_i以及n_j,并不僅限于本發(fā)明上述實(shí)施例提供的方法,此處不再贅述。步驟S104,根據(jù)所述子載波數(shù)、所述OFDM符號數(shù)以及所述交織參數(shù),計算對應(yīng)的交織地址。在具體實(shí)施中,可以通過硬件電路計算對應(yīng)的交織地址,也可以通過軟 件計算對應(yīng)的交織地址,還可以通過軟件與硬件電路結(jié)合的方式計算對應(yīng)的交織地址。在本發(fā)明一實(shí)施例中,可以采用如下公式(4)計算對應(yīng)的交織地址:J=(j×n_j+i×n_i)modnI=(i×m_i+J×m_j)modm---(4);]]>其中,i表示為當(dāng)前數(shù)據(jù)對應(yīng)的子載波的標(biāo)識,j表示為當(dāng)前數(shù)據(jù)對應(yīng)的OFDM符號的標(biāo)識,J表示為j對應(yīng)的交織之后的OFDM符號的標(biāo)識;I表示為i對應(yīng)的交織之后的子載波的標(biāo)識。下面通過舉例對步驟S104進(jìn)行說明。參照圖2,圖2中,子載波的個數(shù)m=10,OFDM符號數(shù)n=8,m_i=3,m_j=7,n_i=5,n_j=3,交織器輸入數(shù)據(jù)在交織前的地址結(jié)構(gòu)可以參照201,被黑色填充的方格表示為:8個OFDM符號中對應(yīng)第2個子載波位置的數(shù)據(jù)。將上述參數(shù)代入到公式(4)中,可以得到公式(5)如下:J=(3×j+5×i)modnI=(3×i+7×J)modm---(5);]]>其中,J表示為j對應(yīng)的交織之后的OFDM符號的標(biāo)識;I表示為i對應(yīng)的交織之后的子載波的標(biāo)識。設(shè)定8個OFDM符號對應(yīng)的比特數(shù)據(jù)的初始地址依次為(0,1)、(1,1)、…、(7,1),即j=n,i=1,其中,0≤n≤7。以當(dāng)前子載波初始地址為(0,1)為例,即j=0,i=1。將j=0,i=1代入公式(5),可以得到J=(3×0+5×1)mod8=5,I=(3×1+7×5)mod10=8,即初始地址為(0,1)的比特數(shù)據(jù)對應(yīng)的交織地址為(5,8),其中初始地址為(j,i)表示為201中第j+1行第i+1列的方框;交織地址為(J,I)表示為202中第J+1行第I+1列的方框。例如,初始地址(0,1)表示為201中第1行第2列的方框。將初始地址為(1,1)、…、(7,1)的OFDM符號的初始地址代入到公式(5)中,可以依次得到:初始地址為(1,1)對應(yīng)的比特數(shù)據(jù)的交織地址為(0,3);初始地址為(2,1)對應(yīng)的比特數(shù)據(jù)的交織地址為(3,4);初始地址為(3,1)對應(yīng)的比特數(shù)據(jù)的交織地址為(6,5);初始地址為(4,1)對應(yīng)的比特數(shù)據(jù)的交織地址為(1,0);初始地址為(5,1)對應(yīng)的比特數(shù)據(jù)的交織地址為(4,1);初始地址為(6,1)對應(yīng)的比特數(shù)據(jù)的交織地址為(7,2);初始地址為(7,1)對應(yīng)的比特數(shù)據(jù)的交織地址為(2,7)。初始地址通過公式(5)轉(zhuǎn)換成交織地址后,交織地址的排列關(guān)系圖參照圖2中的202。從202中可以得知,經(jīng)過交織運(yùn)算后,第2子載波上對應(yīng)的8個OFDM符號的比特數(shù)據(jù)被分散到第1、2、3、4、5、6、8、9子載波上。在經(jīng)過交織運(yùn)算后,即使第2子載波受到頻率深衰落的影響,對應(yīng)該頻率位置的數(shù)據(jù)也只有其中的一個比特數(shù)據(jù)受到影響,接收端仍可以正常進(jìn)行糾錯。而在沒有進(jìn)行交織運(yùn)算時,當(dāng)?shù)?子載波受到頻率深衰落影響時,第2子載波上攜帶的8個比特數(shù)據(jù)均會受到干擾,導(dǎo)致錯碼數(shù)目增加,超出接收端的糾錯能力范圍。又如,參照圖3。圖3中,子載波的個數(shù)m=10,OFDM符號數(shù)n=8,m_i=3,m_j=7,n_i=5,n_j=3,在301中,被黑色填充的方格表示為:第5個OFDM符號所對應(yīng)的10個比特數(shù)據(jù)。10個比特數(shù)據(jù)的初始地址依次為(4,0)、(4,1)、…、(4,9),將上述初始地址依次代入公式(5),可以依次得到對應(yīng)的子載波的交織地址為:初始地址為(4,0)的數(shù)據(jù)對應(yīng)的交織地址為(4,8);初始地址為(4,1)的數(shù)據(jù)對應(yīng)的交織地址為(1,0);初始地址為(4,2)的數(shù)據(jù)對應(yīng)的交織地址為(6,8);初始地址為(4,3)的數(shù)據(jù)對應(yīng)的交織地址為(3,0);初始地址為(4,4)的數(shù)據(jù)對應(yīng)的交織地址為(0,3);初始地址為(4,5)的數(shù)據(jù)對應(yīng)的交織地址為(5,0);初始地址為(4,6)的數(shù)據(jù)對應(yīng)的交織地址為(2,2);初始地址為(4,7)的數(shù)據(jù)對應(yīng)的交織地址為(7,0);初始地址為(4,8)的數(shù)據(jù)對應(yīng)的交織地址為(4,2);初始地址為(4,9)的數(shù)據(jù)對應(yīng)的交織地址為(1,6)。初始地址通過公式(5)轉(zhuǎn)換成交織地址后,交織地址的排列關(guān)系圖參照圖3中的302。從302中可以得知,經(jīng)過交織運(yùn)算轉(zhuǎn)換后,第5個OFDM符號所對應(yīng)的10個比特數(shù)據(jù)被分散到OFDM符號1~8上。在經(jīng)過交織運(yùn)算后,即使第5個OFDM符號受到脈沖噪聲的干擾,也只有其中的兩個比特數(shù)據(jù)受到干擾,接收端仍可以正常進(jìn)行糾錯。而在沒有進(jìn)行交織運(yùn)算時,當(dāng)?shù)?個OFDM符號受到脈沖噪聲干擾時,第5個OFDM符號上的所有比特數(shù)據(jù)均會出現(xiàn)錯誤,導(dǎo)致錯碼數(shù)目增加,超出接收端的糾錯能力范圍。由此可見,通過預(yù)先獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度以及子載波個數(shù),計算出OFDM符號數(shù),根據(jù)OFDM符號數(shù)以及子載波個數(shù)計算當(dāng)前業(yè)務(wù)的交織參數(shù),從而計算獲取當(dāng)前業(yè)務(wù)數(shù)據(jù)對應(yīng)的交織地址。由于對數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行了時域和頻域的交織,數(shù)據(jù)在傳輸過程中受到頻率深衰落影響時,可以將一個子載波位置上的錯誤數(shù)據(jù)分散到多個子載波中;數(shù)據(jù)在傳輸過程中受到脈沖干擾時,可以將一個OFDM符號中的錯誤分散到多個OFDM符號中。即:通過對數(shù)據(jù)包中的數(shù)據(jù)進(jìn)行時域和頻域的交織,可以避免頻率深衰落導(dǎo)致整個子載波上的數(shù)據(jù)均出現(xiàn)錯誤的同時,也可以避免脈沖干擾導(dǎo)致一個OFDM符號上的數(shù)據(jù)均出現(xiàn)錯誤,從而可以有效地降低OFDMPLC通信系統(tǒng)中數(shù)據(jù)的誤碼率。參照圖4,本發(fā)明實(shí)施例還提供了一種Turbo碼交織裝置40,包括:獲取單元401、第一計算單元402、第二計算單元403以及第三計算單元404,其中:獲取單元401,用于獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度,以及傳輸所述當(dāng)前業(yè)務(wù)所對應(yīng)的子載波數(shù);第一計算單元402,用于根據(jù)所述數(shù)據(jù)包長度以及所述子載波數(shù),計算對應(yīng)的OFDM符號數(shù);第二計算單元403,用于根據(jù)所述子載波數(shù)以及所述OFDM符號數(shù),計 算所述當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù);第三計算單元404,用于根據(jù)所述子載波數(shù)、所述OFDM符號數(shù)以及所述交織參數(shù),計算對應(yīng)的交織地址。在具體實(shí)施中,所述第一計算單元402可以采用公式n=N/m得到所述OFDM符號數(shù),其中:n為所述OFDM符號數(shù),N為所述數(shù)據(jù)包長度,m為所述子載波數(shù)。在具體實(shí)施中,所述第一計算單元402還可以用于:在n為非整數(shù)時,將所述數(shù)據(jù)包的長度擴(kuò)展至N',并采用公式n=N'/m得到所述OFDM符號數(shù)n,其中,N'為大于N且可被m整除的最小整數(shù)。參照圖5,本發(fā)明實(shí)施例還提供了一種Turbo碼交織器50,包括:參數(shù)讀取器501、第一運(yùn)算器502、寄存器503、第二運(yùn)算器504以及控制器505,其中:所述參數(shù)讀取器501,用于獲取當(dāng)前業(yè)務(wù)對應(yīng)的數(shù)據(jù)包長度,以及所述當(dāng)前業(yè)務(wù)所對應(yīng)的子載波數(shù);所述第一運(yùn)算器502,用于根據(jù)所述數(shù)據(jù)包長度以及所述子載波數(shù),計算對應(yīng)的OFDM符號數(shù),并根據(jù)所述子載波數(shù)以及所述OFDM符號數(shù),計算所述當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù);所述寄存器503,適于存儲所述第一運(yùn)算器502計算得到的所述當(dāng)前業(yè)務(wù)對應(yīng)的交織參數(shù);所述第二運(yùn)算器504,適于根據(jù)所述寄存器中存儲的所述交織參數(shù),以及所述子載波數(shù)與所述OFDM符號數(shù),計算對應(yīng)的交織地址所述控制器505,適于控制所述第二運(yùn)算器在預(yù)設(shè)周期內(nèi)進(jìn)行運(yùn)算。在具體實(shí)施中,參數(shù)讀取器501、第一運(yùn)算器502以及第二運(yùn)算器504均可以通過具體的硬件電路實(shí)現(xiàn),也可以通過軟件方式實(shí)現(xiàn),即:可以通過軟件從存儲單元如寄存器503中調(diào)用相應(yīng)的數(shù)據(jù)并進(jìn)行運(yùn)算操作。本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的各種方法中的全部或部分步驟是可以通過程序來指示相關(guān)的硬件來完成,該程序可以存儲于一計算機(jī)可 讀存儲介質(zhì)中,存儲介質(zhì)可以包括:ROM、RAM、磁盤或光盤等。雖然本發(fā)明披露如上,但本發(fā)明并非限定于此。任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),均可作各種更動與修改,因此本發(fā)明的保護(hù)范圍應(yīng)當(dāng)以權(quán)利要求所限定的范圍為準(zhǔn)。當(dāng)前第1頁1 2 3