本文主要是關于卷積編碼的相關應用介紹,并著重闡述了卷積編碼在通信當中的應用案例。
卷積碼
若以(n,k,m)來描述卷積碼,其中k為每次輸入到卷積編碼器的bit數,n為每個k元組碼字對應的卷積碼輸出n元組碼字,m為編碼存儲度,也就是卷積編碼器的k元組的級數,稱m+1= K為編碼約束度m稱為約束長度。卷積碼將k元組輸入碼元編成n元組輸出碼元,但k和n通常很小,特別適合以串行形式進行傳輸,時延小。與分組碼不同,卷積碼編碼生成的n元組元不僅與當前輸入的k元組有關,還與前面m-1個輸入的k元組有關,編碼過程中互相關聯的碼元個數為n*m。卷積碼的糾錯性能隨m的增加而增大,而差錯率隨N的增加而指數下降。在編碼器復雜性相同的情況下,卷積碼的性能優于分組碼。
卷積碼的糾錯能力不僅與約束長度有關,還與采用的譯碼方式有關。總之,由于n,k較小,且利用了各組之間的相關性,在同樣的碼率和設備的復雜性條件下,無論理論上還是實踐上都證明:卷積碼的性能至少不比分組碼差。
卷積編碼在通信中的應用
基本概念
要理解卷積首先要明白脈沖信號和脈沖響應的概念,在線性時不變系統中任意一個信號都可以分解為一組脈沖(impulse)信號的組合。而脈沖信號是一個只是為了分析實際并不存在的信號,其定義是除了某一時間點處有值其他時間點都為0的信號。單位脈沖信號也叫做delta函數即幅度歸一化為1,采樣點0處為1其他點為0的信號。脈沖信號可以理解為單位脈沖信號經過量化和移位的結果。實際上脈沖分解提供了一種每次只分析一個采樣點的方法。當單位脈沖為輸入時系統輸出信號即為脈沖響應。
在線性系統里,卷積用來描述輸入信號,脈沖響應和輸出信號的關系。
下圖中卷積實現低通濾波和高通濾波。
接下來詳述卷積的數學描述,可以分別通過輸入信號和輸出信號的角度看待卷積。
輸入信號角度看待卷積
首先從輸入信號角度,要看每個輸入采樣點對輸出信號的貢獻是什么。如下圖所示一個9個輸入點的信號通過有4個采樣點脈沖響應的系統,其框圖如下。
從每一個輸入信號采樣點的角度來看,其輸出即為單位脈沖響應乘以一個系數并移位的結果,所以下圖顯示了所有9個采樣點經過系統的結果。
因此可以由此得到9個采樣點經過系統之后的輸出。卷積還有一個特性就是兩個輸入可交換,即a*b=b*a。將上例兩個輸入交換即對于一個4個輸入信號通過9個采樣點脈沖響應系統的分析如下:
對于從輸入信號角度看待卷積,其程序如下所示:
其核心在于第240行,舉例來說,對于輸入信號第40個采樣點,內部循環每個點通過脈沖響應所做的三件事,首先,脈沖響應被乘以一個輸入采樣值來進行量化。其次,量化脈沖向右移位40個采樣點。最后,輸出值累加每個輸入采樣點產生的結果。
輸出信號角度看待卷積
輸入信號角度看待卷積輸入的每個采樣點影響了輸出信號的多個采樣。在第二種觀點,我們反過來單獨看輸出信號的每個采樣點由哪些輸入信號采樣點產生。假設想要找出給定一些輸入信號和脈沖響應的卷積輸出,最直觀的方法就是計算輸出信號每個采樣點的輸出。這就需要知道如何計算輸出信號每個采樣點的結果。假設對于y(6)找出哪些輸入影響著y(6)的結果。通過看上面所有9個輸入采樣點經過系統的結果圖,可以看出x(3),x(4),x(5),x(6)通過脈沖響應的輸出分量影響y(6)。
y(6)=x(3)h(3)+x(4)h(2)+x(5)h(1)+x(6)h(0)
下圖將輸出端算法闡述為卷積器,流程圖顯示了如何進行卷積。
卷積器可以看作黑盒子可以左右進行移動,4個輸入信號采樣點進入輸入端,這些值乘以脈沖響應代表的值并且結果相加。例如y(6)就由x(3),x(4),x(5),x(6)計算出來的。為了計算y(7),卷積器向右移動一位,另外4個輸入x(4)-x(7)進入卷積器。這個過程對于所有需要計算輸出信號的點重復進行。
上圖中卷積器中脈沖響應左右移位,進行移位只是簡單的數學計算方便。脈沖響應描述了每個輸入信號點如何影響輸出信號。輸出信號每個點的結果由輸入信號乘以一個翻轉的脈沖響應來影響。
下圖顯示了邊界處理情況。
計算y(0)時需要x(-3),x(-2),x(-1)和x(0),但x(-3),x(-2),x(-1)并不存在。這種情況通過邊界加0來處理。
這種輸出信號基于不完整信息的情況在DSP術語中是脈沖響應不完全沉浸在輸入信號中。如果脈沖響應長度為M個點,那么輸出信號中的第一個到第M-1個采樣點是基于不完全輸入信息的。這類似于電子電路,需要一定的時間來穩定電源應用。不同的是,這種瞬態在電子學中很容易被忽略,但在DSP中卻非常顯著。
下圖顯示了這種效應帶來的麻煩,輸入信號是正弦波加上一個DC分量,期望移除信號的DC部分。
如圖所示,前后30個信號出現問題,在DSP中這種“end effect”問題很普遍。因此一般規則是在處理信號時最開始和結束的一些采樣點被丟掉不用。
接下來是卷積的數學公式:
公式中允許輸出信號樣點逐個計算。為了計算某個輸出采樣,指數j從0到M-1進行遍歷,每個脈沖響應采樣點h[j]與適當的輸入采樣信號x[x-j]相乘之后相加。
同樣的執行卷積的程序如下所示:
與輸入端程序遍歷輸入采樣點不同的是輸出端程序遍歷輸出信號采樣點。值得注意的是對于只有80個輸入采樣點的信號輸出信號定義有幾種方法。例如擴展輸入采樣點在邊界加0或者是只處理從30到80的信號。
權重輸入之和
通過以上兩種分析都可以得到卷積的結果。回頭看上邊的卷積機器,將脈沖響應考慮為一組權重系數,在這種觀點下每個輸出信號采樣點等于權重輸入之和。每個輸出采樣點由哪些輸入信號采樣影響取決于權重系數的選取。
結語
關于卷積編碼的相關介紹就到這了,如有不足之處歡迎指正。
相關閱讀推薦:什么是卷積碼
相關閱讀推薦:卷積編碼是什么
-
編碼
+關注
關注
6文章
957瀏覽量
54954 -
卷積編碼
+關注
關注
0文章
13瀏覽量
2673
發布評論請先 登錄
相關推薦
有沒有Labview編的gold碼生成VI以及RS編碼和卷積編碼的VI啊?
如何實現CDMA2000系統前向鏈路卷積編碼器?
基于FPGA的多速率卷積編碼器的設計
![基于FPGA的多速率<b class='flag-5'>卷積</b><b class='flag-5'>編碼</b>器的設計](https://file1.elecfans.com//web2/M00/A6/EC/wKgZomUMQUiANJ4vAABBHXS6BfE574.png)
基于卷積LDPC碼編碼鑿孔算法
![基于<b class='flag-5'>卷積</b>LDPC碼<b class='flag-5'>編碼</b>鑿孔算法](https://file.elecfans.com/web1/M00/44/F5/pIYBAFpdnmmAHJhYAACEjvZH06M097.jpg)
卷積編碼與分組編碼的區別及應用案例
淺談卷積編碼在DSL中的應用 詳解卷積編碼編碼技術
![<b class='flag-5'>淺談</b><b class='flag-5'>卷積</b><b class='flag-5'>編碼</b><b class='flag-5'>在</b>DSL中的應用 <b class='flag-5'>詳解</b><b class='flag-5'>卷積</b><b class='flag-5'>編碼</b><b class='flag-5'>編碼</b>技術](https://file.elecfans.com/web1/M00/5D/40/o4YBAFt7adiAdxp4AAAtgVUp4IM136.jpg)
卷積編碼之維特比譯碼介紹 淺析卷積碼之應用
采用卷積編碼的原因和優勢 淺析卷積碼之特點
![采用<b class='flag-5'>卷積</b><b class='flag-5'>編碼</b>的原因和優勢 淺析<b class='flag-5'>卷積</b>碼之特點](https://file.elecfans.com/web1/M00/5D/B1/o4YBAFt7fpuATmG5AACEdI69y3w292.jpg)
評論