Interleave coding technology and its related Matlab? code
什么是交織編碼技術尤溜?
交織編碼是在實際移動通信環(huán)境下改善移動通信信號衰落的一種通信技術疙赠。將造成數(shù)字信號傳輸?shù)耐话l(fā)性差錯边苹,利用交織編碼技術可離散并糾正這種突發(fā)性差錯,改善移動通信的傳輸特性汰瘫。 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ——來自《百度百科》
交織編碼技術的作用晤郑?
信道交織編碼實際上是一類信道改造技術,它將一個突發(fā)信道改造成一個隨機獨立差錯信道神妹。它本身并不具備信道編碼檢、糾錯功能家妆,僅起到信號預處理的作用鸵荠。
塊交織編碼技術的基本原理與框圖
示例說明
1、若輸入數(shù)據(jù)經(jīng)信道編碼后為X1=(x1 x2 x3 x4 x5 x6)伤极;
2蛹找、發(fā)送端交織存儲器為一個行列交織矩陣存儲器,它“按列寫入哨坪、按行讀出”庸疾;
3、進入突發(fā)信道的信號為X2=(x1 x3 x5 x2 x4 x6)当编;
4届慈、假設突發(fā)信道中連續(xù)2位產(chǎn)生錯誤,即X3= (x1 x3 x5 x2 x4 x6);
5忿偷、在接收端金顿,去交織器和交織器正好相反,即“按行寫入鲤桥,按列讀出”揍拆;
6、輸出去交織器的信號X4= (x1 x2 x3 x4 x5 x6)茶凳;
結論:可見嫂拴,由上述分析,經(jīng)過交織矩陣和去交織矩陣變換后慧妄,原來信道中的突發(fā)性連錯顷牌,變成了X4輸出中的獨立隨機差錯。
規(guī)律總結:若塊長度為l=M×N塞淹,即由M列N行的矩陣構成窟蓝。則有:任何一個長度為l≤M的突發(fā)錯誤,經(jīng)交織以后饱普,可以至少被N-1位隔開成為單個隨機獨立差錯运挫。
塊交織技術相關Matlab代碼
1、Matlab函數(shù)及其相關說明
Matintrlv
通過按行填充矩陣套耕,并按列輸出來重新排序符號谁帕。
代碼格式
intrlvd = matintrlv(data,Nrows,Ncols)
代碼描述
intrlvd = matintrlv(data,Nrows,Ncols) 通過逐行填充元素的臨時矩陣,然后逐列將矩陣內(nèi)容發(fā)送到輸出冯袍,重新排列數(shù)據(jù)中的元素匈挖。Nrows和Ncols是臨時矩陣的維度碾牌。 如果數(shù)據(jù)是向量,則它必須具有Nrows * Ncols元素儡循。如果data是具有多行和多列的矩陣舶吗,則數(shù)據(jù)必須具有Nrows * Ncols行,并且該函數(shù)獨立處理列择膝。
matdeintrlv
通過按列填充矩陣誓琼,并按行輸出符號來恢復符號排序。
代碼格式
deintrlvd = matdeintrlv(data,Nrows,Ncols)
代碼描述
deintrlvd = matdeintrlv(data,Nrows,Ncols) 通過逐列填充元素的臨時矩陣肴捉,然后逐行將矩陣內(nèi)容發(fā)送到輸出腹侣,重新排列數(shù)據(jù)中的元素。Nrows和Ncols是臨時矩陣的維度齿穗。如果數(shù)據(jù)是向量傲隶,則它必須具有Nrows * Ncols元素。如果data是具有多行和多列的矩陣缤灵,則數(shù)據(jù)必須具有Nrows * Ncols行伦籍,并且該函數(shù)獨立處理列。要將此函數(shù)用作matintrlv函數(shù)的反函數(shù)腮出,請在兩個函數(shù)中使用相同的Nrows和Ncols輸入帖鸦。在這種情況下,這兩個函數(shù)是反轉的胚嘲,因為應用matintrlv后跟matdeintrlv使數(shù)據(jù)保持不變作儿。
2、示例源代碼
a= [ 1 2 3 4 5 6 7 8 9 10 11 12]; %信號序列
a;?? %打印a的輸出
msg = matintrlv (a,2,6);?%對信號序列進行2行6列的交織
msg1 = matdeintrlv (msg,2,6);???? %對交織后的數(shù)據(jù)按照交織過程解交織
3馋劈、代碼運行截圖及結果分析
可以看到交織是將原來的數(shù)據(jù)變換為2行6列的矩陣攻锰,然后按照列的順序依次把信號重新排列,得到交織后的數(shù)據(jù)妓雾,數(shù)據(jù)通過信道后再進行相應的解交織過程娶吞,解交織是將交織后的數(shù)據(jù)再變換為2行6列,按照行的順序恢復出原來的信號序列械姻。