1. 程式人生 > 實用技巧 >五分鐘教你學會卷積碼

五分鐘教你學會卷積碼

note 2020-12-31 20:59 寫到這裡我已經看不懂了,很可能哪些地方說錯了,請指出。

https://app.yinxiang.com/shard/s59/res/66462838-254e-4230-b07f-1d8635f05379/CamScanner 12-31-2020 19.28(1).pdf
這份教材裡好像有些地方有錯,比如例11-29 我覺得是(3,1,3)卷積碼。我做的筆記的有些地方可能寫錯了。

剛剛學完,這東西最好理解的方式就是把那個編碼器結構圖看明白就弄懂它在說什麼了。
該編碼器有n個輸出,這n個輸出不僅和當前的進入的k個輸入有關,還和過去的m個輸入有關。用到了mk級暫存器。
最常見的就是k=1(k!=1的情況這裡不打算研究,這篇文章討論的k預設是1)

,一次進來一位,(最老的那一位被抵沒了)一次進來k位,最老的那k位被抵沒了。

就像m序列你只要看懂那個編碼器結構圖大概就弄懂了。
https://upload.wikimedia.org/wikipedia/commons/9/99/Lfsr.gif

例題裡面沒有給卷積碼解碼相關的問題。
簡單說一下:
卷積碼解碼有代數譯碼法和概率譯碼法。代數譯碼。
概率譯碼法,即最大似然譯碼法。包括維特比演算法和另一個人名演算法。

我聯想到的是這個:實際上,如果__在二元對稱無記憶通道中____,最大似然譯碼法則 和 最小距離譯碼準則 等價。所以操作時其實在按照最小距離譯碼準則在做。

實際做的就是在\(O(2^{不知道怎麼說,我在下面示意一下})\)

個長度是\(nW\)(編碼器在W個工作週期中每個週期輸出n位卷積碼)碼片中找到一個卷積碼碼片和你接收到的那個長度(nW)碼片漢明距離最小。
與其說是找碼片,不如說是你在找它是怎麼在網格圖上走的。


拿上面這個網格圖舉例子:

初始的暫存器00狀態的話
2,4,8,16,32,64,128,256,512,......
穩態後就成了(所以我真的不知道如何表述,不知道。。。。)
8, 16,32,64,128,256,512,1024,......

這個一般人想到的做法是暴力搜尋,
或者剪枝,
或者是有藝術的剪枝

考試的時候當然是人腦,筆,紙怎麼快怎麼來

附錄

k!=1的更一般的情況下的編碼器結構看這裡

例題








我沒學到真正的維特比譯碼演算法,我只會列舉32條路徑,進行求32次漢明距操作,找到最小的那個,還原出來【它最可能送進】卷積碼編碼器的那個序列。
我知道的越多,我不知道的越多。