五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

LDPC 低密度奇偶校驗碼的軟判決譯碼(三)-算法和代碼

2022-08-17 20:26 作者:樂吧的數(shù)學(xué)  | 我要投稿

(這是系列文章,見右側(cè)目錄,有列表)

這篇小文,把前兩個文章講的原理和算法,用 Octave/Matlab 代碼寫出來,我用 matlab2020a 調(diào)試的。GNU Octave 7.2.0 上也測試通過。

這個文檔對應(yīng)兩個視頻:

算法描述:? https://www.bilibili.com/video/BV1ae4y1y7cM/

代碼講解:https://www.bilibili.com/video/BV15t4y1j7gp/



后續(xù)的文章和視頻中,用到了兩個簡寫,我整理在這里:

q_%7Bmn%7D(x)%3Dp(c_n%3Dx%7C%5C%7Br_%7Bm'n%7D%3D0%2C%20m'%20%5Cin%20%5C%7B%20N(n)%20%5Csetminus%20%20m%20%5C%7D%20%20%20%5C%7D%2Cr)

r_%7Bmn%7D(x)%3Dp(z_m%3D0%7Cc_n%3Dx%2Cr)

其中 N(n) 表示比特 n 參與的那些校驗方程, \m 表示集合減法,即不考慮校驗方程 m,則N(n)\m 表示:”比特 n 參與的那些校驗方程”?? 中去掉??? “標號為m 校驗方程”?? 后的校驗方程



算法描述

---------------------------------------------------------------------------------------------------------------

輸入: A, 信道的后驗概率 p_n(x)%20%3D%20P(c_n%3Dx%7Cr_n), 以及最大的迭代次數(shù) L

初始化: 對所有 A(m,n)=1 的 (m,n), 令 q_%7Bmn%7D(x)%20%3D%20p_n(x)%20

Horizontal Step:對每個A(m,n)=1 的 (m,n):

??? 計算? %5Cdelta%20q_%7Bml%7D%20%3D%20q_%7Bml%7D(0)-q_%7Bml%7D(1)
?? ?計算

????????????????????????????????%5Cdelta%20r_%7Bmn%7D%20%3D%20%5Cprod_%7B%5C%7Bn'%5Cin%20N_%7Bm%2Cn%7D%5C%7D%7D%20%20%5Cdelta%20q_%7Bmn'%7D

?? ?計算?r_%7Bmn%7D(1)%20%3D%20(1-%5Cdelta%20r_%7Bmn%7D)%2F2? 和??r_%7Bmn%7D(0)%20%3D%20(1%2B%5Cdelta%20r_%7Bmn%7D)%2F2

Vertical Step:對每個A(m,n)=1 的 (m,n):

?? ?計算
????
????????????????????q_%7Bmn%7D(0)%20%3D%20%5Calpha_%7Bmn%7D%20p_n(0)%20%5Cprod_%7B%5C%7Bm'%5Cin%20M_%7Bn%2Cm%7D%20%5C%7D%7Dr_%7Bm'n%7D(0)
?????????????????????? 和

????????????????????q_%7Bmn%7D(1)%20%3D%20%5Calpha_%7Bmn%7D%20p_n(1)%20%5Cprod_%7B%5C%7Bm'%5Cin%20M_%7Bn%2Cm%7D%20%5C%7D%7Dr_%7Bm'n%7D(1)%0A


?? ???? 其中?%5Calpha_%7Bmn%7D? 是使得 q_%7Bmn%7D(0)%2Bq_%7Bmn%7D(1)%3D1 成立的值

???? 計算 準后驗概率(pseudo-posterior):

?? ??? ?q_n(0)%20%3D%20%5Calpha_n%20p_n(0)%20%5Cprod_%7B%5C%7Bm'%5Cin%20M_n%20%5C%7D%7Dr_%7Bm'n%7D(0)
????????????? 和

????????q_n(1)%20%3D%20%5Calpha_n%20p_n(1)%20%5Cprod_%7B%5C%7Bm'%5Cin%20M_n%20%5C%7D%7Dr_%7Bm'n%7D(1)


?? ???? 其中?%5Calpha_n? 是使得?q_n(0)%2Bq_n(1)%3D1 成立的值
?? ???? 做一次臨時判決:若?q_n(1)%20%3E%200.5%5Chat%20c_n%3D1, 否則 %5Chat%20c_n%3D0
?? ???? 如果滿足 A%20%5Cmathbf%20%7B%5Chat%20c%7D%20%3D%200, 則 停止. 否則,如果 迭代次數(shù) < L,循環(huán)至? Horizontal Step,否則,宣布譯碼失敗并停止.

---------------------------------------------------------------------------------------------------------------



下面的 Octave/Matlab 程序,還是使用前面文章中的校驗矩陣:

A%20%3D%20%5Cbegin%7Bbmatrix%7D%0A%20%201%26%201%20%26%201%20%26%200%20%26%200%20%26%201%20%26%201%20%26%200%20%26%200%20%26%201%5C%5C%0A%20%201%26%200%20%26%201%20%26%200%20%26%201%20%26%201%20%26%200%20%26%201%20%26%201%20%26%200%5C%5C%0A%20%200%26%200%20%26%201%20%26%201%20%26%201%20%26%200%20%26%201%20%26%200%20%26%201%20%26%201%5C%5C%0A%20%200%26%201%20%26%200%20%26%201%20%26%201%20%26%201%20%26%200%20%26%201%20%26%200%20%26%201%5C%5C%0A%20%201%26%201%20%26%200%20%26%201%20%26%200%20%26%200%20%26%201%20%26%201%20%26%201%20%26%200%0A%5Cend%7Bbmatrix%7D


發(fā)送的原始信息 %20m%3D%5B1%5Cquad%200%5Cquad1%5Cquad0%5Cquad1%5D%5ET, 經(jīng)過 LDPC 編碼之后(這里先略過如何編碼的):

c%3D%5B0%20%5Cquad%200%5Cquad%200%5Cquad1%5Cquad0%5Cquad1%5Cquad0%5Cquad1%5Cquad0%5Cquad1%5D%5ET


經(jīng)過一定的高斯信道,我們可以得到如下后驗概率:

%20P(%20%5Cmathbf%20c%3D1%7C%5Cmathbf%20r)%20%3D%20%5B0.22%20%5Cquad%200.16%20%5Cquad%200.19%20%5Cquad%200.48%20%5Cquad%200.55%20%5Cquad0.87%20%5Cquad0.18%20%5Cquad0.79%20%5Cquad0.25%20%5Cquad%200.76%5D%5ET


如果用大于 0.5 為 1? 做判決,則硬判決得到的結(jié)果為:

%5Cmathbf%20%7B%5Chat%20c%7D%20%3D%20%5B0%20%5Cquad%200%5Cquad%200%5Cquad%20%5Cunderline0%5Cquad%20%5Cunderline%201%5Cquad%201%5Cquad%200%5Cquad%201%5Cquad%200%5Cquad%201%5D


兩個畫底線的數(shù)字是錯誤的,

A%5Cmathbf%7B%5Chat%20c%7D%20%3D%20%5B0%20%5Cquad%201%20%5Cquad0%5Cquad0%5Cquad1%5D%5ET


則意味著有兩個校驗方程是沒有成立的,出錯了!



下面是 Octave/Matlab 代碼:

版權(quán)聲明:此代碼取自[1] 配套的代碼,稍作修改。



[1] Error Correction Coding--Mathematical Methods and Algorithms , Todd K. Moon, Wiley, 2005

LDPC 低密度奇偶校驗碼的軟判決譯碼(三)-算法和代碼的評論 (共 條)

分享到微博請遵守國家法律
乌拉特中旗| 宜黄县| 镇远县| 富平县| 金平| 通城县| 海门市| 赤壁市| 陇西县| 贵阳市| 福海县| 全南县| 天全县| 河北区| 讷河市| 商南县| 洞头县| 汽车| 苏州市| 台北县| 甘德县| 民权县| 咸宁市| 蒙城县| 洪江市| 海晏县| 仁化县| 新郑市| 古浪县| 嘉善县| 潢川县| 鄯善县| 大足县| 肃北| 白河县| 红桥区| 顺平县| 芒康县| 琼结县| 沐川县| 亳州市|