版权归原作者所有,如有侵权,请联系我们

[科普中国]-低密度同比特检查累积码

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

低密度同位元检查累积码由低密度奇偶检查码low-density parity-check (LDPC)和一个累加器组成。

简介其运作方式为Bit Node以二位元模组的方式相加到Check Nodes,根据tanner graph。 然后,Check nodes的值以modulo-two被累加。 利用这种方式,通道解码端的解码器可以避免有一个check node没有被连结到任何bit node的状况。 经过累加后,累加的位元会被存在一个缓冲器中,再逐渐传送到解码器。

在低密度奇偶检查码low-density parity-check (LDPC) codes在1990年代被重新发现之后,很多应用和改良出现。1

构成低密度同位元检查累积码编码器有三个阶段。第一个阶段是一个可逆线性转换矩阵,其中有资料来源序列。 第二个阶段是一个一个rate的累加器,可以转换长度为L的序列。第三个阶段是变更或置换这个序列。 这个序列接下来会传送到解码器,总共需要传送的码数量由解码器的回馈决定。

低密度同位元检查累积码可以应用在许多编解码应用的系统当中。2

低密度奇偶检查码低密度奇偶检查码(Low-density parity-check code,LDPC code),是线性分组码(linear block code)的一种,用于更正传输过程中发生错误的编码方式。

在1962年,低密度奇偶检查码(LDPC code)即被Gallager提出,并被证明其错误校正能力非常接近理论最大值,香农极限(Shannon Limit);不过受限于当时技术,低密度奇偶检查码并无法实现。最近几年,低密度奇偶检查码被重新发现,并随着集成电路的技术演进,低密度奇偶检查码的实现逐渐可行,而成为各种先进通信系统的频道编码标准。2

累加器在中央处理器中,累加器(accumulator) 是一种寄存器,用来储存计算产生的中间结果。如果没有像累加器这样的寄存器,那么在每次计算 (加法,乘法,移位等等) 后就必须要把结果写回到内存,也许马上就得读回来。然而存取主存的速度是比从算术逻辑单元到有直接路径的累加器存取更慢。

标准的例子就是把一列的数字加起来。一开始累加器设定为零,每个数字依序地被加到累加器中,当所有的数字都被加入后,结果才写回到主存中。

现今的 CPU 通常有很多寄存器,所有或多数都可以被用来当作累加器。因为这个原因,"累加器" 这名词就显得有些老旧。这个名词已经几乎不在微处理器寄存器中使用,例如,运算寄存器的名称中的符号以 "A" 开头的表示是从 "accumulator" 这个历史因素得来的 (有时候认为并非 "arithmetic")。也可能混淆的是寄存器的名字前置 "A" 也表示 "address",比如说像是Motorola 68000家族。

早期的 4 位、8 位微处理器,典型具有单个累加器。8051微控制器有两个累加器:主累加器与从累加器,其中的从累加器只用于乘法(MUL AB)与除法(DIV AB)。乘法的 16 位结果放入两个 8 位累加器中。除法时,商放入主累加器,余数放入从累加器。8008的直接后继产品——8080与8086,开创了x86指令集体系结构,仍然使用两个累加器:主累加器 EAX 与从累加器 EDX 用于乘法与除法的大数运算。例如,MUL ECX 将把两个 32 位寄存器 ECX 与 EAX 相乘,64 位结果放入 EAX 与 EDX。但是 MUL 与 DIV 之外的其他算术——逻辑指令(ADD、SUB、CMP、AND、OR、XOR、TEST)可以使用 8 个寄存器:EAX、ECX、EDX、EBX、ESP、EBP、ESI、EDI 作为目的操作数(即存储结果的位置)。1

本词条内容贡献者为:

杨晓红 - 副教授 - 西南大学