📄 the art of error correcting coding soft-decision decoding.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0043)http://the-art-of-ecc.com/6_Soft/index.html -->
<HTML><HEAD><TITLE>The Art of Error Correcting Coding: Soft-decision decoding</TITLE>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="Robert Morelos-Zaragoza" name=Author>
<META
content="Error Control Coding,Error CorrectingCoding,Error Correcting Codes,FEC,Turbo Codes,Iterative Decoding,DigitalCommunications,Wireless,Satellite,Data,Coded Modulation,Golay,Hamming,BCH,Reed Solomon,Viterbi Decoder,Soft Decision Decoding,Sudan Algorithm,Unequal Error Protection,Variable Rate Coding,Adaptive Coding,Convolutional Codes,LDPC,Low-Density Parity-Check Codes,The Art of Error-Correcting Coding,Capacity-achieving codes,Coding is not dead, is more alive than ever"
name=description>
<META content="MSHTML 6.00.2900.3395" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff>
<CENTER><B><FONT size=+1>Soft Decision Decoding of Linear Block
Codes</FONT></B></CENTER>
<P>This page contains links to several programs in C and Matlab for simulating
soft-decision decoding procedures of linear block codes. These are
discussed in Chapter 6 of the <A
href="http://www.amazon.com/gp/product/0470015586/ref=sr_11_1/102-3025380-7157754?ie=UTF8">book</A>.
<BR> </P>
<P><B>Soft-decision decoding of a first-order RM code with the Green
machine:</B> <BR><A
href="http://the-art-of-ecc.com/6_Soft/rm31_awgn.c">rm31_awgn.c</A> </P>
<P>Careful examination of this decoding algorithm reveals that this is exactly
the same as <B><I>trellis decoding</I></B> of this block code! <BR> </P>
<P><B>Soft-decision decoding of a first-order RM code with the type-II Chase
algorithm:</B> <BR><A
href="http://the-art-of-ecc.com/6_Soft/Chase/rm31_chase.c">rm31_chase.c</A>
<BR> </P>
<P><B>Soft-decision decoding of a binary linear code with the ordered statistics
decoding (OSD) algorithm: Binary transmission over an AWGN channel</B> </P>
<P><B>ORDER=0 </B><A
href="http://the-art-of-ecc.com/6_Soft/OrdStats/osd_order0.c">osd_order0.c</A>
<A href="http://the-art-of-ecc.com/6_Soft/OrdStats/order0.c">order0.c</A>
<BR><B>ORDER=1 </B><A
href="http://the-art-of-ecc.com/6_Soft/OrdStats/osd_order1.c">osd_order1.c</A>
<A href="http://the-art-of-ecc.com/6_Soft/OrdStats/order1.c">order1.c</A>
<BR><B>ORDER=2 </B><A
href="http://the-art-of-ecc.com/6_Soft/OrdStats/osd_order2.c">osd_order2.c</A>
<A href="http://the-art-of-ecc.com/6_Soft/OrdStats/order2.c">order2.c</A>
<BR><B>ORDER=3 </B><A
href="http://the-art-of-ecc.com/6_Soft/OrdStats/osd_order3.c">osd_order3.c</A>
<A href="http://the-art-of-ecc.com/6_Soft/OrdStats/order3.c">order3.c</A>
<BR><B>ORDER=4 </B><A
href="http://the-art-of-ecc.com/6_Soft/OrdStats/osd_order4.c">osd_order4.c</A>
<A href="http://the-art-of-ecc.com/6_Soft/OrdStats/order4.c">order4.c</A>
<BR><B>ORDER=5 </B><A
href="http://the-art-of-ecc.com/6_Soft/OrdStats/osd_order5.c">osd_order5.c</A>
<A href="http://the-art-of-ecc.com/6_Soft/OrdStats/order5.c">order5.c</A> </P>
<P>The OSD simulation programs for order N (N=0..5) should be compiled together:
</P>
<P>gcc -O2 osd_orderN.c orderN.c -lm </P>
<P>Whenever the code parameters change, the file "<A
href="http://the-art-of-ecc.com/6_Soft/OrdStats/def.h">def.h"</A> needs to be
modified . See also the <A
href="http://the-art-of-ecc.com/6_Soft/OrdStats/README">README</A> file. </P>
<P><I>NOTE: Marc Fossorier has shown that for binary transmission over an AWGN
channel, reprocessing order equal to D/4 achieves practically optimum MLD
performance for a block code of minimum distance D.</I><I></I> </P>
<P><I>Also, note that it is possible to make a single file with the reprocessing
order as a parameter in the routine...</I> </P>
<P>The generator matrix of the code is needed as input in the simulation. For
binary BCH codes of length up to 128, generator matrices can be found at </P>
<P><A href="http://the-art-of-ecc.com/Matrices_BCH">Matrices_BCH</A></P><BR
style="FONT-WEIGHT: bold"><SPAN style="FONT-WEIGHT: bold">Simulation of Viterbi
decoding of a (5,4,2) SPC code using its syndrome trellis:</SPAN><BR><A
href="http://the-art-of-ecc.com/6_Soft/AWGN_VD_SPC.m">AWGN_VD_SPC.m</A><BR><BR>
<P><B><A href="http://the-art-of-ecc.com/topics.html">BACK TO
CONTENTS</A></B><BR></P>
<HR>
<H6 style="FONT-WEIGHT: normal"><SMALL><FONT color=#000000>This page was last
updated on August 6, 2008, by Robert H. Morelos-Zaragoza.</FONT></SMALL></H6><!-- text below generated by server. PLEASE REMOVE --><!-- Counter/Statistics data collection code -->
<SCRIPT language=JavaScript
src="The Art of Error Correcting Coding Soft-decision decoding.files/whv2_001.js"></SCRIPT>
<SCRIPT language=javascript>geovisit();</SCRIPT>
<NOSCRIPT><IMG height=1 alt=setstats
src="The Art of Error Correcting Coding Soft-decision decoding.files/visit.gif"
width=1 border=0></NOSCRIPT></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -