精华内容
下载资源
问答
  • LDPC编译码

    万次阅读 多人点赞 2018-03-07 19:28:32
    低密度校验(LDPC)是一种前向纠错,LDPC最早在20世纪60年代由Gallager在他的博士论文中提出,但限于当时的技术条件,缺乏可行的译码算法,此后的35年间基本上被人们忽略,其间由Tanner在1981年推广了LDPC...

    LDPC最新文章地址https://blog.csdn.net/sinat_38151275/article/details/98102699

    LDPC码简介

    低密度校验码(LDPC码)是一种前向纠错码,LDPC码最早在20世纪60年代由Gallager在他的博士论文中提出,但限于当时的技术条件,缺乏可行的译码算法,此后的35年间基本上被人们忽略,其间由Tanner在1981年推广了LDPC码并给出了LDPC码的图表示,即后来所称的Tanner图。1993年Berrou等人发现了Turbo码,在此基础上,1995年前后MacKay和Neal等人对LDPC码重新进行了研究,提出了可行的译码算法,从而进一步发现了LDPC码所具有的良好性能,迅速引起强烈反响和极大关注。经过十几年来的研究和发展,研究人员在各方面都取得了突破性的进展,LDPC码的相关技术也日趋成熟,甚至已经开始有了商业化的应用成果,并进入了无线通信等相关领域的标准。

    1.1.1 LDPC码的特点

    LDPC码是一种分组码,其校验矩阵只含有很少量非零元素。正是校验矩阵的这种稀疏性,保证了译码复杂度和最小码距都只随码长呈现线性增加。除了校验矩阵是稀疏矩阵外,码本身与任何其它的分组码并无二致。其实如果现有的分组码可以被稀疏矩阵所表达,那么用于码的迭代译码算法也可以成功的移植到它身上。然而,一般来说,为现有的分组码找到一个稀疏矩阵并不实际。不同的是,码的设计是以构造一个校验矩阵开始的,然后才通过它确定一个生成矩阵进行后续编码。而LDPC的编码就是本文所要讨论的主体内容。

    译码方法是LDPC码与经典的分组码之间的最大区别。经典的分组码一般是用ML类的译码算法进行译码的,所以它们一般码长较小,并通过代数设计以减低译码工作的复杂度。但是LDPC码码长较长,并通过其校验矩阵H的图像表达而进行迭代译码,所以它的设计以校验矩阵的特性为核心考虑之一。

    1.1.2 LDPC码的构造

    构造二进制LDPC码实际上就是要找到一个稀疏矩阵H作为码的校验矩阵,基本方法是将一个全零矩阵的一小部分元素替换成1,使得替换后的矩阵各行和各列具有所要求的数目的非零元素。如果要使构造出的码可用,则必须满足几个条件,分别是无短环,无低码重码字,码间最小距离要尽可能大。

    1.1.3 Tanner图

    LDPC码常常通过图来表示,而Tanner图所表示的其实是LDPC码的校验矩阵。Tanner图包含两类顶点:n个码字比特顶点(称为比特节点),分别与校验矩阵的各列相对应和m个校验方程顶点(称为校验节点),分别与校验矩阵的各行对应。校验矩阵的每行代表一个校验方程,每列代表一个码字比特。所以,如果一个码字比特包含在相应的校验方程中,那么就用一条连线将所涉及的比特节点和校验节点连起来,所以Tanner图中的连线数与校验矩阵中的1的个数相同。以下图是矩阵

    的Tanner图,其中比特节点用圆形节点表示,校验节点用方形节点表示,加黑线显示的是一个6循环:

    Tanner图中的循环是由图中的一群相互连接在一起的顶点所组成的,循环以这群顶点中的一个同时作为起点和终点,且只经过每个顶点一次。循环的长度定义为它所包含的连线的数量,而图形的围长,也可叫做图形的尺寸,定义为图中最小的循环长度。如上图中,图形的尺寸,即围长为6,如加黑线所示。

    1.2 LDPC编码

    方法一:设H=[A | B],对H进行高斯消元可得到H=[I| P],设编码完成的码字为u=[c| s],其中c为监督位,s为信息位。因为H*u' = u*H' = 0,可以得到I*c' + P*s' = 0 即 I*c' = P*s' (在GF(2)上),从而可求 c' = P*s'。如果高斯消元过程中进行了列交换,则只需记录列交换,并以相反次序对编码后的码字同样进行列交换即可。解码时先求出u,再进行列交换得到u1=[c| s],后面部分即是想要的信息。

    方法一示例:

     

    方法二:首先推导出根据校验矩阵直接编码的等式。将尺寸为m*n校验矩阵H写成如下形式:H=[H1 | H2],其中H1矩阵的大小为m*k,H2的大小为m*m,设编码完成的码字为u=[s | p],s为信息位,p为监督位。因为H*u' =u*H' = 0求得p*H2'=s*H1',最后得p=s* H1'* (H2')-

    上述两种方法可以不通过生成矩阵而直接由校验矩阵进行编码的等式,一切只依赖校验矩阵的编码都是通过这两个式子实现的。但方法二要考虑H2是否满秩(可逆)。

    1.3 LDPC码H矩阵的构造

    规则的LDPC码和非规则的LDPC码

    如果校验矩阵中各行非零元素的个数相同,各列中非零元素的个数也相同,这样的LDPC码称为规则码,与规则码对照,如果校验矩阵的各行中非零元素的个数不同或各列中非零元素个数不同,此时的LDPC码称为非规则的LDPC码。

    1.3.1 非规则的LDPC码

    构造方法:码率R=M/N=0.5,构造的H矩阵列重固定,而行重是随机的。下面通过一个大小为6*12,列重为2的H矩阵来说明。因为列重固定为2,所以其列坐标集合为[1,1,2,2,3,3,4,4…….12,12],而行坐标可以随机构造。

    1.       先构造一个6*12,每一列为1到6随机排列的矩阵onesInCol。

    2.       选取onesInCol的前2行(和列重一致),如上图所示。

    3.        将所选取的矩阵按列依次排列如下

     

    4.       构造矩阵tmp

    5.       矩阵tmp重排成c1

    6.       full 把稀疏矩阵转换为满阵显示, sparse 创建稀疏矩阵生成M*N阶稀疏矩阵H在以向量r1和c1为坐标的位置上的对应元素值为向量1的对应值。

    1.3.2 规则的LDPC 码

    对于码率R=0.5的规则的LDPC码其行重与列重有关,行重是列重的2倍。以6*12的H矩阵为例,假设其列重为2,每列1的个数为2,总的1的个数为2*12=24,H矩阵有6行,行重相同则每行1的个数为24/6=4,即行重为4。假设其列重为3,其行重为6。

    构造方法:与构造行重类似,行重列重固定之后,其在矩阵中的位置坐标集合固定,如列重为2,行重为4,列坐标集合为[1,1,2,2,3,3,…..],行坐标集合为[1,1,1,1,2,2,2,2,3,3,3,3,……],下面考虑的就是如何将行列坐标组合起来而不重复。这里采用的是保持行坐标集合不变,列坐标集合打乱重排。以构造大小5*10,列重为2,行重为4的H矩阵为例说明。

    1.       先构造一个5*10,每一列为1到5随机排列的矩阵onesInCol。

    2.       选取onesInCol的前2行(和列重一致)构成1*20的矩阵

    3.       将r按升序排列得到

    4.       记录下排列前的位置索引

    5.       因为列坐标集合为[1,1,2,2,3,3,4,4,……9,9,10,10],将列坐标集合根据上面的位置索引重新排列,得到c

     

    6.       行坐标集合如下,与列坐标一一对应,确定矩阵H中1的位置。

    7.       最后结果

     

    1.3.3 LDPC码的环

    在 LDPC 码的 Tanner 图中,从一个顶点出发,经过不同顶点后回到同一个顶点的一些“边”组成的回路称为“环”。经过的边的个数称为环的长度。所有环中周长最小的环称为 LDPC码的围长(girth) ‎。

    Tanner 图中的环不可避免的会对译码结果造成非常大的干扰。由于迭代概率译码会使信息在节点间交互传递,若存在环,从环的某一个节点出发的信息会沿着环上的节点不断传递并最终重新回到这个节点本身,从而使得节点自身信息不断累加,进而使得译码的最终结果失败的概率变大。显然,环长越小,信息传递回本身所需走的路径就越短,译码失败的概率就变得越高。Tanner 图形成一个环至少需要 4 个节点组成4 条相连的边,即环长最小为4,这类短环对码字的译码结果干扰最大。定义 LDPC码的行列(RC)约束为:两行或两列中不存在元素 1 的位置有 1 个以上相同的情况。显然,满足 RC 约束的 LDPC 码最低就是 6 环,去除了4 环的干扰。由于4环的检测以及避免最为简单并且必要,因此绝大部分构造方法都会满足 RC 约束。而构造大圈长的码字则需要精确的设计。

     

    1.4 LDPC译码

    Gallager 在描述 LDPC 码的时候,分别提出了硬判决译码算法和软判决译码算法两种。经过不断发展,如今的硬判决算法已在 Gallager 算法基础上进展很多,包含许多种加权比特翻转译码算法及其改进形式。硬判决和软判决各有优劣,可以适用于不同的应用场合。

    1.4.1 比特翻转算法(BF)

    硬判决译码算法最早是 Gallager 在提出 LDPC 码软判决算法时的一种补充。硬判决译码的基本假设是当校验方程不成立时,说明此时必定有比特位发生了错误,而所有可能发生错误的比特中不满足校验方程个数最多的比特发生错误的概率最大。在每次迭代时均翻转发生错误概率最大的比特并用更新之后的码字重新进行译码。具体步骤如下:

    1.       设置初始迭代次数 k1及其上限kmax 。对获得的码字y=(y1,y2…yn)按照下式展开二元硬判决得到接收码字的硬判决序列Zn 。

    2.       若k1=kmax ,则译码结束。不然,计算伴随式s=(s0,s1,…sm-1),sm表示第m个校验方程的值。若伴随式的值均为 0,说明码字正确,译码成功。否则说明有比特位错误。继续进行步骤3。

    3.       对每个比特,统计其不符合校验方程的数量fn (1<=n<=N)

    4.       将最大fn所对应的比特进行翻转,然后k=k+1,返回步骤2。

    BF 算法的理论假设是若某个比特不满足校验方程的个数最多,则此比特是最有可能出错的比特,因此,选择这个比特进行翻转。BF 算法舍弃了每个比特位的可靠度信息,单纯的对码字进行硬判决,理论最为简单,实现起来最容易,但是性能也最差。当连续两次迭代翻转函数判断同一个比特位为最易出错的比特时,BF 算法会陷入死循环,大大降低了译码性能。

    图50*100

    图 500*1000

    1.4.2 置信传播算法(BP)

    置信传播(Belief Propagation)译码算法是消息传递(Message Passing)算法在 LDPC译码中的运用。消息传递算法是一个算法类,最初运用于人工智能领域,人们将其运用到 LDPC 码的译码算法中,提出了LDPC 码的置信传播算法。置信传播算法是基于 Tanner 图的迭代译码算法。在迭代过程中,可靠性信息,即“消息”通过 Tanner图上的边在变量节点和校验节点中来回传递,经多次迭代后趋于稳定值,然后据此进行最佳判决。

    置信传播译码算法的基本流程如下:

    在迭代前,译码器接收到信道传送过来的实值序列y=(y1,y2,….yn),所有变量节点bi接收到对应的接收值yi。

    第一次迭代:每个变量节点给所有与之相邻的校验节点传送一个可靠性消息,这个可靠性消息就是信道传送过来的值;每个校验节点接收到变量节点传送过来的可靠性消息之后,进行处理,然后返回一个新的可靠性信息给与之相邻的变量节点,这样就完成了第一次迭代;此时可以进行判决,如果满足校验方程,则不需要再迭代,直接输出判决结果,否则进行第二次迭代。

    第二次迭代:每个变量节点处理第一次迭代完成时校验节点传送过来的可靠性消息,处理完成后新的消息发送给校验节点,同理,校验节点处理完后返回给变量节点,这样就完成了第二次迭代。完成后同样进行判决,如果满足校验方程则结束译码,否则如此反复多次迭代,每次都进行判决,直到达到设定的最大迭代次数,译码失败。在每次迭代过程中,无论是变量节点传送给校验节点的信息或者校验节点传送给变量节点的信息,都不应该包括前次迭代中接收方发送给发送方的信息,这样是为了保证发送的信息与接收节点已得到的信息相互对立。

     

                                                                                             图50*100

    图500*1000

     

     

    结束语

    目前LDPC码研究领域的主要工作集中在译码算法的性能分析、编码方法、码的优化算法等,经过研究人员的努力,LDPC码的研究取得很大进展,但仍有许多问题需要进一步研究:

    (1)LDPC码校验矩阵的构造,尽管在构造最优的LDPC码方面取得了一些进步,但目前还没有一套系统的办法来构造所需要的好码,特别是在码字长度有限、码率一定的条件下,构造性能优异的好码是一个非常具有挑战性的课题。

    (2)LDPC编码系统的联合优化设计,将编码技术与调制技术、均衡技术、时空编码技术、OFDM技术结合进行性能优化是当前及将来的发展方向之一。

    (3)无线衰落信道及MIMO技术下LDPC码的性能分析方法及优化设计准则。目前LDPC码字的优化设计主要在加性高斯白噪声信道下得到的,而无线衰落信道下,特别是时变信道非线性环境下码字的性能分析方法、优化设计准则和信道估计的影响也是非常关键的课题,需要进一步的研究探索。

    此外,基于LDPC码的链路自适应技术,LDPC码在集成通信网物理层、应用层联合优化系统中的应用,LDPC码在无线局域网和深空宇航中的应用,基于LDPC码的图像传输、图像数字水印系统中的应用以及寻找更适合硬件实现的LDPC码编译码方法等都是非常值得研究的课题。

    展开全文
  • BCH信道编译码

    千次阅读 2020-09-22 21:17:48
    数字通信中,通常使用纠错码技术来进行差错控制,这样可以提高数据传输的可靠性。 BCH码就是一种应用广泛的能纠正多重错误的分组码,具有极佳的纠错性能。本文对BCH码的原理进行深入分析,介绍BCH的编解码原理。...

    通信的目的是要把对方不知道的消息即时可靠地(有时还要秘密地)传送给对方。当信道中存在干扰,可能使发送的消息出错。数字通信中,通常使用纠错码技术来进行差错控制,这样可以提高数据传输的可靠性。

    BCH码就是一种应用广泛的能纠正多重错误的分组码,具有极佳的纠错性能。本文对BCH码的原理进行深入分析,介绍BCH的编解码原理。重点介绍了BCH编码解码的计算方法以及BCH编码的性能分析。最后,本文采用MATLAB编写相应的BCH编解码代码进行仿真和误码率分析,并在Simulink中搭建BCH模块进行误码率统计分析。本文所作的研究成果具有一定的科研价值,为BCH的进一步研究或在硬件系统上的实现提供了良好的理论基础。

    1.1 本课题研究背景

    数字信号在传输系统中传输时,不可避免受到各种因素的干扰,使到达接收端的数字信号中混有噪声,从而引发错误判决,为了抗击干扰,必然要利用纠错码的差错控制技术。

    纠错码的分类有以下几种:

    ·按照对信息序列处理方式的不同,分为分组码与卷积码两大类,在分组码中按照码的结构特点,又可分为循环码和非循环码。

    ·根据信息位与校验位之间的关系分为线性码与非线性码。

    ·按照适用的差错类型,分成纠随机差错码和纠突发差错码两种,也有介于中间的纠随机/突发差错码。

    ·按

    展开全文
  • (15,7)循环码的编译码方法

    千次阅读 2021-05-14 21:45:14
    此次课程设计题目是(15,7)循环码的编译码方法,首先介绍了线性分组码的编译码原理;其次在matlab平台下,完成了任意码的编码和译码,并求出该码的最小码距以及其纠错能力;最后分析了该码在高斯信道下的误码性能。...

    (15,7)循环码的编译码方法

    论文+代码+仿真结果下载地址:下载地址

    摘要
    提高信息传输的有效性和可靠性始终是通信技术所追求的目标,而信道编码能够显著的提升信息传输的可靠性。此次课程设计题目是(15,7)循环码的编译码方法,首先介绍了线性分组码的编译码原理;其次在matlab平台下,完成了任意码的编码和译码,并求出该码的最小码距以及其纠错能力;最后分析了该码在高斯信道下的误码性能。
    关键词:循环码;编码;译码

    在这里插入图片描述
    前言
    随着社会经济的迅速发展和科学技术的全面进步,计算机事业的飞速发展,以计算机与通信技术为基础的信息系统正处于蓬勃发展的时期。随着经济文化水平的显著提高,人们对生活质量及工作软件的要求也越来越高。在计算机通信信息码中循环码是线性分组码的一个重要子集,是目前研究得最成熟的一类码。它有许多特殊的代数性质,它使计算机通信以一种以数据通信形式出现,实现了在计算机与计算机之间或计算机与终端设备之间进行有效的与正确地信息传递,它使得现代通信的可靠性与有效性实现了质的飞跃。它是现代计算机技术与通信技术飞速发展的产物,在日常生活通信领域、武器控制系统等领域都被广泛应用。
    数字信号在传输中往往由于各种原因,使得在传送的数据流中产生误码,从而使接收端产生图象跳跃、不连续、出现马赛克等现象。所以通过信道编码这一环节,对数码流进行相应的处理,使系统具有一定的纠错能力和抗干扰能力,可极大地避免码流传送中误码的发生。误码的处理技术有纠错、交织、线性内插等。提高数据传输效率,降低误码率是信道编码的任务。信道编码的本质是增加通信的可靠性。此次课程设计题目是(15,7)循环码的编译码方法,首先学习掌握了线性分组码的编译码原理;其次在matlab平台下,完成了任意码的编码和译码,并可求出该码的最小码距以及其纠错能力;最后分析了该码在高斯信道下的误码性能。

    一 基本原理
    1.1循环码的定义

    循环码是线性分组码的一种,所以它具有线性分组码的一般特性,此外还具有循环性。循环码的编码和解码设备都不太复杂,且检(纠)错能力强。它不但可以检测随机的错误,还可以检错突发的错误。(n,k)循环码可以检测长为n-k或更短的任何突发错误,包括首尾相接突发错误。
    循环码是一种无权码,循环码编排的特点是相邻两个数码之间符合卡诺图中的邻接条件,即相邻两个数码之间只有一位码元不同,码元就是组成数码的单元。符合这个特点的有多种方案,但循环码只能是表中的那种。循环码的优点是没有瞬时错误,因为在数码变换过程中,在速度上会有快有慢,中间经过其它一些数码形式,称它们为瞬时错误。这在某些数字系统中是不允许的,为此希望相邻两个数码之间仅有一位码元不同,即满足邻接条件,这样就不会产生瞬时错误。循环码就是这样一种编码,它可以在卡诺图中依次循环得到。循环码又称格雷码。
    循环码最大的特点就是码字的循环特性,所谓循环特性是指:循环码中任一许用码组经过循环移位后,所得到的码组仍然是许用码组。若( )为一循环码组,则( )、( )……还是许用码组。也就是说,不论是左移还是右移,也不论移多少位,仍然是许用的循环码组。

    编码流程
    在这里插入图片描述
    译码流程
    在这里插入图片描述
    仿真结果:
    在这里插入图片描述
    实验分析
    此次课程设计题目是(15,7)循环码的编译码方法,首先学习掌握了线性分组码的编译码原理;其次在matlab平台下,完成了任意码的编码和译码,并求出该码的最小码距以及其纠错能力;最后分析了该码在高斯信道下的误码性能。但由于所学知识有限,在设计过程中困难有很多,其主要表现在不熟练软件编程。

    **参考文献**
    [1]樊昌信,曹丽娜.通信原理(第六版).北京:国防工业出版社.2007
    [2]徐明远,邵玉斌.MATLAB仿真在通信与电子工程中的应用.西安:西安电子科技大学学出版社.2005
    [3]唐向宏,岳恒立,郑雪峰等. MATLAB及在电子信息类课程中的应用(第二版) .北京:电子工业出版社,2009
    [4] 沈保锁等.《现代通信原理》.天津科学技术出版社.2000	
    [5] 李乐民等.《数字通信传输系统》.人民邮电出版社.2006 
    [6] 惠高潮,王辉.论文《基于单片机(7,4)循环码编码与译码的研究》.南京
    工业大学.2005
    
    
    展开全文
  • LDPC编译码原理介绍

    千次阅读 2020-07-18 16:43:29
    在系统的信息传输速率小于信道容量时,LDPC编译码技术可以在较高传输速率下将有噪信道下的突发错误尽可能无限减小,从而将系统的传输容量可以无限地逼近香农容限。由于 LDPC码校验矩阵的稀疏性使得相应编码及迭代...

    引言

           LDPC编码中文全称叫做低密度奇偶校验码,是众多信道纠错编码中的一种。在系统的信息传输速率小于信道容量时,LDPC编译码技术可以在较高传输速率下将有噪信道下的突发错误尽可能无限减小,从而将系统的传输容量可以无限地逼近香农容限。由于 LDPC码校验矩阵的稀疏性使得相应编码及迭代译码算法复杂度降低,硬件实现较容易,具有很好的应用前景,在业界广受欢迎。本文将从LDPC编译码基本工作流程,校验矩阵的构造方法,硬判决译码方法,置信传播软判决译码方法等四个方面展开介绍。

    1、LDPC编译码基本工作流程

           LDPC码作为线性分组码中的一种,其发送码字是由信息码元和监督码元组成的,在接收端利用监督码元与信息码元之间的规律来进行纠错和译码,如下图所示。

            其中,发送码字是由信息码字与生成矩阵相乘得到的,生成矩阵可由校验矩阵经过变换而得来,因此,整个LDPC编码过程其实就是一个校验矩阵的构造过程,如下图所示。

     2、校验矩阵的构造方法

           (1)Gallager 随机构造法 

              Gallager 随机构造法是使用确定的固定行重和列重(每行或每列所含 1 的个数)的稀疏矩阵进行随机置换和组合来构造 LDPC 码的校验矩阵。假若要使用 Gallager 随机构造法构造 m*n维,且行重和列重分别为 w_{r}^{}w_{c}^{}的校验矩阵 H,此时行重和列重应尽可能小以保证校验矩阵的稀疏性,降低 LDPC 码编码及迭代译码复杂度。将校验矩阵 H 的行数平分成每 m/w_{c}^{}行为一块,列数为(m/w_{c}^{})*w_{r}^{}}。在第一块子矩阵的构造中只有第 i 行(i-1)*w_{r}+1列到i*w_{r}列的连续 w_{r}^{}个元素为 1,其余位置上元素取 0 即完成了校验矩阵的基础子矩阵,之后将基础子矩阵按列随机置换得到其余部分矩阵并组合成最终的校验矩阵 H。

            (2)准循环构造法

             准循环构造法使用一组循环矩阵构造 LDPC 码的校验矩阵,一般选用单位阵为准循环 LDPC(QC-LDPC)码基矩阵。将基矩阵向左循环移位形成循环置换单位子矩阵,然后各子矩阵构成最终的校验矩阵。

             得到校验矩阵后就可根据1中所提及的方法得到生成矩阵,然后生成发送码字。

    3、硬判决译码方法

           LDPC 迭代译码过程即是通过校验码元和信息码元之间的校验规律在变量节点与校验节点之间不停进行消息迭代直至找到满足 C*H^{^{T}}=0 的码字,输出 C 即为解码后的码字。 当在校验节点及变量节点之间传递的是 0,1 的硬解调信息时称作硬判决译码。

           假设我们的校验矩阵构造如下图矩阵H,其Tanner图也如下图所示。

            假设经过编码后发送的码字 C=[ 1 0 0 1 0 1 0 1],经过噪声污染接受码字为 Y=[ 1 1 0 1 0 1 0 1],整个译码过程简述如下:

            (1)变量节点向校验节点传递消息:变量节点收到信息Y后认定C1,C2,C3,C4,C5,C6,C7,C8分别为1 1 0 1 0 1 0 1,然后变量节点根据Tanner图分别将值传给与之相连的校验节点,如 C1传递给 f2和 f4“C1=1”,C2传递给 f1和 f2“C2=1”。

            (2)校验节点向变量节点传递消息:校验节点在上一轮接收到变量节点传递给它的信息,它综合信息根据校验规律对这些信息做出判断来确定C1,C2,C3,C4,C5,C6,C7,C8 的值。如要确定C2的值,就需要根据f1和f2在上一轮接收到的消息来进行判断,由f1=C2+C4+C5+C8=0及接收到的C2=1,C4=1,C5=0,C8=1,对C2做出判断就需要依据C4,C5,C8传递来的信息,然后可以确定C2=0,然后将C2=0传递给f2节点,由f2=C1+C2+C3+C6=0及接收到的C1=1,C3=0,C6=1,可知C2=0,最终根据多数意见可以取C2=0。

            (3)对新码字验证 C*H^{^{T}}=0 是否满足,若满足输出 C,上述新码字经过验证即为纠正后的码字,若不满足则重复上述迭代过程直到满足(或者达到最大迭代次数输出错误)。 

    4、置信传播软判决译码

          当校验节点及变量节点之间传递的是似然概率软解调信息时称作置信传播译码(或者软判决译码),LDPC 码译码一般用置信传播算法,算法复杂度相对较低。 软判决译码流程介绍如下图所示。

          变量定义:

           基本定理: 

           译码过程:

     5、参考文献

          [1] 周佳颖. 基于LDPC技术轨道角动量光通信的仿真研究[D]. 华中科技大学. 2015.

          [2] https://wenku.baidu.com/view/da81feb2b6360b4c2e3f5727a5e9856a57122670.html

         

    展开全文
  • LDPC编译码原理

    万次阅读 多人点赞 2019-08-01 20:45:32
    LDPC简介 LDPC编码 LDPC译码 结语
  • JIT动态编译技术

    万次阅读 2020-08-25 16:11:47
    JIT动态编译技术 一个Java程序执行的过程,就是执行字节指令的过程,一般这些指令会按照顺序一条一条指令解释执行,这种就是解释执行,解释执行的效率是非常低下的,因为需要先将字节翻译成机器,才能执行。 ...
  • H.264先进的视频编译码标准

    千次阅读 2013-09-23 17:39:09
    H.264先进视讯编译码标准 郭其昌/工研院电通所 1. 前言 在2001年12月,ITU-T VCEG与ISO MPEG共同组成联合视讯小组(Joint Video Term,JVT)来研订新的视频压缩格式,此新格式在ITU-T组织中称为H.264,在ISO组织中则...
  • 逆向编译技术

    千次阅读 2007-04-16 14:42:00
    作 者: 月中人时 间: 2007-04-08,17:39链 接: http://bbs.pediy.com/showthread.php?threadid=42346原文标题:Reverse Compilation Techniques作者:Cristina Cifuentes译文标题:逆向编译技术翻译:月中人摘要这...
  • 可能资源被反编译影响还不是很大,而重新打包又由于有签名的保护导致很难被盗版,但代码被反编译就有可能会泄漏核心技术了,因此一款安全性高的程序最起码要做到的一件事就是:对代码进行混淆。 混淆代码并不是让...
  • JVM_10 类加载与字节码技术(编译期处理——语法糖)

    千次阅读 多人点赞 2021-05-13 08:32:46
    所谓的语法糖 ,其实就是指 java 编译器把 *.java 源码编译为 *.class 字节的过程中,自动生成 和转换的一些代码,主要是为了减轻程序员的负担,算是 java 编译器给我们的一个额外福利(给糖吃嘛) 注意,以下代码...
  • Androd安全——反编译技术完全解析

    千次阅读 2016-09-04 09:43:51
    0.前言单纯从技术角度上来讲,掌握反编译功能确实是一项非常有用的技能。另外既然别人可以反编译程序,我们当然有理由应该对程序进行一定的保护,因此代码混淆也是我们必须要掌握的一项技术。那么最近的两篇文章...
  • Java程序员有一个共识,以编译方式执行本地代码比解释方式更快,之所以有这样的共识,除去虚拟机解释执行字节时额外消耗时间的原因外,还有一个很重要的原因就是虚拟机设计团队几乎把对代码的所有优化措施都集中在...
  • 我们把C代码编译成java字节,这样我们的C语言便具备了可跨品台...通过把C语言编译成java字节,我们不但能够继续学习和掌握编译原理相关的算法技术,于此同时,还能深入理解java虚拟机的基本原理,此乃一举两得之妙
  • Java 相关的编译技术

    千次阅读 2005-01-05 10:46:00
    除了 Java 的编译器和虚拟机器之外,还有一些相关的编译技术,本文章试图做一个简单的说明。 JIT 编译器 传统的 Java 虚拟机器很愚蠢,将一道 bytecode 的指令翻译成机器之后,马上执行这些机器,执行完这批机器...
  • C 和 C++ 之类的编译语言。尽管这些语言可以提供更高的性能,但是生成的代码只能在有限的几种系统上执行。在过去的十年中,Java 运行时供应商开发了一些复杂的动态编译器,通常称作即时(Just-in-time,JIT)...
  • PB应用程序编译发布技术研究

    千次阅读 2006-09-05 17:06:00
    摘要:本文主要讨论基于Windows平台的PowerBuilder 8.0应用程序编译发布关键问题和解决方法,包括执行文件的建立、资源文件的创建、安装程序的建立及添加数据源和SQL anywhere 数据库移动处理等问题。关键字:软件...
  • 《OpenMP编译原理及实现技术》摘录

    千次阅读 2013-11-10 19:27:24
    《OpenMP编译原理及实现技术》摘录
  • 【Java核心技术卷】Java的解释执行与编译执行

    千次阅读 多人点赞 2019-02-28 18:23:16
    简化版的过程图示: ...字节:字节是已经经过编译(.class文件),但与特定机器无关,需要解释器转译后才能成为机器的中间代码。 Java字节:是Java虚拟机执行的一种指令格式。 解释器:是一种电脑...
  • Python反编译之字节

    千次阅读 2019-05-19 13:16:36
    ok不知道也没关系,接下来的时间我们所有的话题都将围绕字节,在python有一个模块可以通过反编译Python代码来生成字节这个模块就是今天要说的--dis模块。 dis模块的使用 dis模块包括一些用于处理 Python 字节...
  • 下面详细了解JIT编译;从官方JDK中的HotSpot虚拟机的JIT编译器入手,先介绍解释器与JIT编译器是如何配合工作的,认识JIT编译器C1/C2;...而后再简单介绍JIT编译过程,认识几种编译技术;最后对比Java与C/C++的编译器。
  • 通过字节分析JDK8中Lambda表达式编译及执行机制

    万次阅读 多人点赞 2016-04-23 13:07:01
    关于Lambda字节相关的文章,很早之前就想写了,线上产品的后端技术,能快速迭代,除了得益于整体微服架构之外,语言层面上,也是通过Java8的lambda表达式的运用以及rxJava响应式编程框架,使代码更加简洁易维护,...
  • PB8.0应用程序编译发布技术研究

    千次阅读 2005-02-06 12:50:00
    摘要:本文主要讨论基于Windows平台的PowerBuilder 8.0应用程序编译发布关键问题和解决方法,包括执行文件的建立、资源文件的创建、安装程序的建立及添加数据源和SQL anywhere 数据库移动处理等问题。关键字:软件...
  • 编译程序

    千次阅读 2020-10-23 09:15:55
    在这一章中,我们将看一下如何通过编译源代码来创建程序。源代码的可用性是至关重要的自由,从而使得 Linux 成为可能。 整个 Linux 开发生态圈就是依赖于开发者之间的自由交流。对于许多桌面用户来说,编译是一种...
  • 导读: 本文是关于实时 Java 的 ...作者在各种执行环境中对这两种编译技术进行了比较,对二者如何相互补充进行了展示。 Java 应用程序的性能经常成为开发社区中的讨论热点。因为该语言的设计初衷是使用解释的方式支持
  • 扩展频谱技术一般是指用比信号带宽宽得多的频带宽度来传输信息技术。它主要由原始信息,信源编译码,信道编译码(差错控制),载波调制与解调,扩频调制与解扩频和信道六大部分组成。
  • 信息传输原理与技术实验课 实验...2号模块数字终端&时分多址模块 3号模块信源编译码模块 6号模块信道编译码模块 7号模块时分复用&时分交换模块 8号模块基带传输编译码模块 9号模块数字调制解调模块 13号模块载波同步
  • 运行时把Class文件字节码编译成本地机器 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在《Java三种编译方式:前端编译 JIT编译 AOT编译》中了解到了它们各有什么优点和缺点,以及...
  • 编译基础知识

    千次阅读 2020-06-29 18:55:47
    本文相关反编译技术仅限于技术研究使用,不能用于非法目的,否则后果自负. 1. apktool 逆向APK文件的工具 官方网站 apktool主要用于逆向apk文件,可以将资源解码,并在修改之后可以重新构建它们.它还可以用来重新构建apk...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 176,988
精华内容 70,795
关键字:

信息编译码技术