賈明俊 陸安江



摘 ?要:信號特別是數字信號作為與國民生活息息相關的一部分,其處理效率直接影響著人民生活質量和生活水平的提高。而交織技術的使用大大提高了信息處理能力,它是一種思維技術的體現。在客觀條件不變的情況下,提高通信質量。交織技術在當今社會的應用十分廣,本文重點分析了其對數字通信的作用。文章中對于交織原理進行了形象化解釋,對現有主流交織類型也進行了客觀分析。與此同時,使用了MATLAB程序對多種交織過程進行數字模擬,此外還仿真進行交織信道與普通信道傳輸誤碼率對比。
關鍵詞:通信;信道編碼;MATLAB;交織技術
中圖分類號:TN914.53;TN792 ? ? ?文獻標識碼:A 文章編號:2096-4706(2019)05-0053-03
Abstract:The signals,especially digital signals are closely related to national life,and their processing efficiency directly affects the improvement of peoples quality of life. The use of interleaving technology greatly improves the information processing capability,which is a reflection of thinking technology. Improve communication quality without changing objective conditions. Interlacing technology is widely used in todays society,this paper focuses on its role in digital communications. In the article,the interleaving principle is visualized and the existing mainstream interlacing types are also objectively analyzed. At the same time,the MATLAB program is used to digitally simulate a variety of interleaving processes. In addition,the embedding channel is compared with the normal channel transmission error rate.
Keywords:communication;channel coding ;MATLAB;interleaving technology
0 ?引 ?言
由于實際信道的存在無法消除且難以預測各種干擾,為了保證編碼的有用信號可靠地傳輸到接收端,針對信號傳輸的信道特點,需要有針對性地對傳輸的信號進行保護性“包裝”即信道編碼。交織技術的運用不失為一個好的方法。交織便于將超出接收端糾錯能力的碼按照一定規律錯開傳送,接收端經去交織后還原為序列,從而達到在糾錯能力范圍內糾錯。
1 ?交織技術
1.1 ?基本交織技術的理論
一般地,如果消息數據按照原順序按部就班地傳輸,當受到信道的強干擾后,容易造成大面積出錯,大規模錯誤又會因接收端的糾錯能力的限制,而無法正確糾錯。如果把原傳輸的消息數據,按照某種規格打亂后再傳輸,把這種有規則打亂稱為“交織技術”,接收端糾錯前按照相應規則,即解交織技術,還原數據原順序,再糾錯,此時即使在傳輸中產生大面積錯誤,經過復原后出現的出錯數據得到分散,接收端又可以正常糾錯了。[1]
在圖1中,按照數據正常傳輸順序,如果在第3個時間段出現突發性的大面積干擾,如圖1(a)所示的灰色陰影區域,該大面積干擾很有可能因超出接受端的糾錯能力范圍而無法糾錯。若將正常傳輸的數據碼流或碼組經過交織技術后再傳輸,如圖1(b)所示,則此時在同樣的時間段內,出現突發性的大面積干擾,問題解決就不是很難。因為接收端在解碼前,經過解交織器恢復原順序后,在傳輸信道上所產生的大面積干擾碼組,將被分散開來,如圖1(c)所示,其錯碼的表現形式處于接收端的糾錯能力范圍內,因而容易糾錯。
1.2 ?此基本交織原理
交織方法主要包括隨機交織、塊交織、卷積交織等。[2]隨機交織是偽隨機交織。通過偽隨機分類數據,獲得近似隨機輸出,其主要用于安全和擴頻通信領域。塊交織(也稱為矩陣交織)是指通過將要交錯的序列存儲在行列的矩陣中,讀取行(列)中的列(行)來讀取行(列)中的列(行)的原則。數據交錯的優點是簡單易行;缺點是存儲空間大,交叉和去交錯的延遲很長。就經典系統采用TCM編碼和塊交織而言,它比卷積交織更簡單。卷積交織由B通道移位寄存器組成,延遲隨著差值的增加而增加。輸入數據順序地進入B通道的不同輸入端,并且通過延遲從相應的路徑讀出輸出數據。由于延遲不同,相鄰輸入在輸出端離散化。卷積交織的優點是輸入和輸出是同時的,并在相同情況下,所需的存儲空間是塊交織的一半。解交織是以與交錯相反的方式將數據重新排列回原始順序。它通常需要與交錯相同的存儲器,這在結構上是相似的。
在數字的信道編碼中,應用最廣就是卷積交織。卷積交織的特點是利用一個旋轉矩陣盤。這個矩陣轉盤給自己一個固定間隔時間M轉動接收齒B,每個接受齒B就是一個信道通路,每次接收信息碼的一部分,每次接收的信息量相同,根據信息復雜度將信息齒增加或減少、RS(n,k)的關系為:n=M*B。先舉一個簡單的例子:如B=4,M=3,因此這個交織旋轉器有4行,第一齒沒有延時,其余3齒分別延遲3字節、6字節、9字節。其卷積交織/解交織的原理圖及輸入與輸出數據結構圖如圖2所示。
圖2的旋轉過程是:第一路旋轉齒B接通信道接收信息將新信息存儲,等M個延時后第二路旋轉齒B接通接收信息二段,同樣也存儲著所接收的信息碼,這樣有過了M個延時,當然整體此時已經延時2M了。以此類推三路旋轉齒以及四路旋轉齒得到3M和4M。由于這樣的接收方式,先被輸入的信息則先輸出,后接入的信息碼片段則后出,這即是“先進先出后進后出”原則。[3]由于這樣的原則導致信息接收時在發送端信息碼沒有因交織導致亂碼,而同時順利完成傳輸。
在圖2的解交織傳送示意圖中,類似地如果用“#”、“*”、數字表示解交織旋轉齒初始狀態值,&表示結束標志,假設有########0,4,8,12,16#####***1,5,9,13,&,###*****2,6,10,14,&********3,7,11,15,&…那么在輸出數據端,數據讀出順序由讀出信息齒表示,解交織的寫入數據順序對應卷積交織輸出數據則為旋轉方向。不難看出,輸出數據為###*###*###*##**##**#***#***#***0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,&&&,…。可見,原來發送端由于信息齒分散的發送數據,經接收齒的去卷積交織后又恢復到交織前順序。
2 ?交織碼的MATLAB代碼仿真
2.1 ?卷積交織的仿真
我們認為交織編碼不僅是說分組編碼,還包括卷積編碼,這種方式在如今的社會應用廣泛。交織碼通常由(m,n)矩陣表示,分組長度可以表示為A=mn,并且交織矩陣由mn行列矩陣表示。分組和卷積式是常用的兩種方法。交錯矩陣按列寫入并按行讀取。解交織矩陣完全是相反的過程。然而,卷積交織的交織矩陣和解交織矩陣是按行讀取和寫入的。[4]
以下仿真采用(5,6)卷積交織編碼即五行六列。
分組卷積交織前序號:[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ];
卷積交織后序號重排:[ 1 26 21 16 11 6 7 2 27 22 17 12 13 8 3 28 23 18 19 14 9 4 29 24 25 20 15 10 5 30 ];
性能分析:(1)一般長度等于小于m=6的突發性差錯,經過交織、去交織后成為獨立的差錯;(2)通常長度大于m=6的突發性差錯,通過交織、去交織后有可能變成短突發的差錯;(3)特別的,間隔為m=6的獨立差錯,經交織、去交織后會變成長度為n=4的突發差錯。[5]
運行結果如圖3所示。
2.2 ?循環等差交織仿真
也可以執行循環等差交織編碼。對于基本的循環等差交織器編碼,其實質是將序列號從順時針的大到小排列,然后從1到6的相等間隔取30個數字,從而依次取30個數,即序號排列。[6]
分組交織前序號:[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30];
循環等差交織后序號重排:[ 1 24 17 10 3 26 19 12 5 28 21 14 7 30 23 16 9 2 25 18 11 4 27 20 13 6 29 22 15 8];
MATLAB仿真如圖4所示。
2.3 ?交織技術優勢
實際運用交織技術時往往與級聯方式相結合,因為實際通信環境復雜多變,只有各種方法運用得當才能更好的完成通信。參照NASA 1984年給出的標準級聯碼系統,級聯碼它的編碼可分成外編碼、交織編碼和內編碼,這其中外編碼部分采用分組線性碼,內編碼利用卷積碼。系統如圖5所示。[7]
本次仿真使用了(7,4)漢明碼作為外部編碼,并使用(2,1,3)卷積碼進行內部編碼。交織編碼使用(7,4)卷積交織編碼或循環等差交織編碼。除非另有說明,交織編碼使用前者(7,4)卷積交織編碼。編碼性能參數如前所述。
在仿真中,首先比較了級聯碼和內碼的性能,然后比較了上述交織碼的兩種交織方法的性能。同時,對最后的(7,4)漢明碼、(2,1,3)卷積碼和級聯碼進行了綜合比較。以下級聯代碼的性能和只有內部代碼的性能比較,運行結果如圖6所示。
3 ?結 ?論
經過MATLAB仿真,整理未編碼與交織編碼碼流對比分析研究后得到:交織技術糾錯能力大大提高,并且這種糾錯能力是成倍的提高。可以看出交織編碼能提高糾錯的能力,大大降低了誤碼率。由此可見交織技術對于降低通信誤碼率不可或缺。綜合以上說明此研究方案有指導實踐的巨大意義。在研究交織技術的幾個月里,我覺得它可以用一種更加通俗易懂的方式表達:交織就是可以理解為一種交錯、編織的感覺,就像對原始數據的插入,一般的如果處理一段序列的話,就是將它送入信道,但是信道中存在大量干擾,使得數字信號出現差錯,傳統糾錯器糾錯能力有限,不能完全滿足通信需要,一味提高儀器性能既不現實又不經濟。所以交織器的應用非常高效的解決了這個矛盾。它的解決方法就是將數字序列分組或者截斷或者循環,這樣做的目的是分散已經出現的錯誤,本來成堆成片的錯誤相對于糾錯器無能為力,現在將它分散開變成小片錯誤或一個的小問題,錯誤在可接受范圍內,本來不可以糾錯的現在可以進行糾錯,在不改變物理條件的情況下使得通信質量得以極大地提高。
參考文獻:
[1] 魯業頻,王年.數字電視原理與應用 [M].合肥:中國科技技術大學出版社,2013:163.
[2] Aleksandr Chuklin,Anne Schuth,Ke Zhou,et al. A Comparative Analysis of Interleaving Methods for Aggregated Search[J]. ACM Transactions on Information Systems (TOIS),2015,33(2):1-38.
[3] Danzerl D ,Gill S ,Kockar I ,et al. Assessment of the last-in-first out principle of access for managing the connection of distributed wind generators[C]// Iet International Conference on Renewable Power Generation. IET,2017.
[4] 王煒,趙可萍.用FPGA實現交織編碼器的設計 [J].現代電子技術,2005,28(19):94-95+98.
[5] 唐玉玉,付娜.輸入率可變且有差錯服務的M/M/1排隊模型 [J].重慶三峽學院學報,2011,27(3):41-43.
[6] 薛昆.信號控制環形交叉口方式與通行能力關聯性的研究 [J].上海建設科技,2010(4):26-30.
[7] 王端怡,樂光新.一種新的多級碼級聯編碼系統 [J].北京郵電大學學報,1994(1):1-8.
作者簡介:賈明俊(1995-),男,漢族,安徽合肥人,碩士研究生,主要研究方向:FPGA應用;陸安江(1978-),男,漢族,貴州貴陽人,博士,教授,主要研究方向:優化設通信與信息系統。