CN114337689A - 双二进制Turbo码的编译码方法及装置 - Google Patents

双二进制Turbo码的编译码方法及装置 Download PDF

Info

Publication number
CN114337689A
CN114337689A CN202111388982.2A CN202111388982A CN114337689A CN 114337689 A CN114337689 A CN 114337689A CN 202111388982 A CN202111388982 A CN 202111388982A CN 114337689 A CN114337689 A CN 114337689A
Authority
CN
China
Prior art keywords
interleaving
channel
data
register
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111388982.2A
Other languages
English (en)
Inventor
赵靖远
王伟
郑项全
任文成
张晓哲
孟颢
郭梦琪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CETC 54 Research Institute
Original Assignee
CETC 54 Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CETC 54 Research Institute filed Critical CETC 54 Research Institute
Priority to CN202111388982.2A priority Critical patent/CN114337689A/zh
Publication of CN114337689A publication Critical patent/CN114337689A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

本发明提供一种双二进制Turbo码的编译码方法及装置。双二进制Turbo码的编码方法包括:通过将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器,经第一编码器编码后得到的多个不同的第一校验位数据依次存入不同的第二信道交织寄存器;将2N比特数据进行交织处理后输入第二编码器,经第二编码器编码后得到的多个不同的第二校验位数据依次存入第二信道交织寄存器;从第一信道交织寄存器和第二信道交织寄存器中读出编码后的数据。本发明采用双二进制Turbo码编码方法,由于一次进入编码器两个比特,得到更多的校验位,因此同一码率下双二进制Turbo码有更好的性能,删余对它的影响更小,从而可以提高***性能。

Description

双二进制Turbo码的编译码方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种双二进制Turbo码的编译码方法及装置。
背景技术
信道编码是通信***的一个重要组成部分,是提高通信***可靠性的重要手段,其性能的好坏直接影响到通信的质量。信道编码是在发送端的待传信息中附加一些校验信息,当传输过程中受到干扰导致接收端出现错误码元时,可根据校验关系发现并纠正错误码元。
低密度奇偶校验(Low Density Parity Check Code,LDPC)码是一种性能优越的线性分组码,广泛应用于散射信道,但其编码复杂度较高,所需存储量大,要支持灵活的信息,比特长度与编码码率对LDPC校验矩阵的构造、译码器的设计都是严峻的挑战。Turbo码是级联码的一种,全称并行级联卷积码(Parallel Concatenated Convolutional Code,PCCC),其基本原理是通过交织器把两个分量编码器进行并行级联,两个分量编码器分别输出相应的校验位比特;而译码时,译码器在两个分量译码器之间进行迭代译码,分量译码器之间传递去掉正反馈的外信息,这样整个译码过程类似涡轮(Turbo)工作。Turbo码具有很好的灵活性,理论上可以支持任意长度的信息比特进行编码,通过删余打孔操作可以得到任意码率的码字,但是在高码率时受过度打孔影响,性能会产生恶化。
发明内容
本发明实施例提供了一种双二进制Turbo码的编译码方法及装置,以解决现有技术中Turbo码由于删余导致其性能恶化的问题。
第一方面,本发明实施例提供了一种双二进制Turbo码的编码方法,包括:
将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器,经所述第一编码器编码后得到多个不同的第一校验位数据,将所述多个第一校验位数据依次存入不同的第二信道交织寄存器中,N为正整数;
将所述2N比特数据进行交织处理后输入第二编码器,经所述第二编码器编码后得到多个不同的第二校验位数据,将所述多个第二校验位数据依次存入所述第二信道交织寄存器中;
根据码率获得数据删余表,根据所述信道交织寄存器地址得到信道交织表;
根据所述数据删余表和所述信道交织表选择性的从所述第一信道交织寄存器和所述第二信道交织寄存器中读出编码后的数据
在一种可能的实现方式中,所述将所述2N比特数据进行交织处理后输入第二编码器,包括:
计算交织地址;
根据所述交织地址,将所述2N比特数据进行交织处理,得到交织后数据;
将所述交织后数据输入第二编码器。
在一种可能的实现方式中,所述计算交织地址,包括:
根据π(i)=(f1*i+f2*i2)modK计算交织地址;
其中,π(i)表示交织后相同数据在码块中的地址,K表示码块的长度,i表示交织前数据在码块中的地址,f1和f2表示根据K确定的系数。
在一种可能的实现方式中,所述将所述多个第一校验位数据依次存入不同的第二信道交织寄存器中,包括:
根据码率确定待读入第二信道交织寄存器的校验位;
根据确定的校验位将所述多个第一校验位数据依次写入不同的第二信道交织寄存器中。
在一种可能的实现方式中,第一信道交织寄存器和第二信道交织寄存器的长度根据最长码字确定。
第二方面,本发明实施例提供了一种双二进制Turbo码的译码方法,包括:
将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位;
对所述信息位和所述校验位进行循环迭代并行译码,并对译码器之间传输的信息进行交织或解交织,当迭代次数到达预设最大迭代次数时,根据最终迭代的似然值,判断所述似然值对应的符号,根据所述似然值得符号位输出与似然值对应的译码码元。
在一种可能的实现方式中,所述将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位,包括:
将待译码数据通过调制解调器解调后得到软值;
根据编码过程中的删余表确定反删余表,根据编码过程中的信道交织表确定反信道交织表;
根据所述信道交织表和所述反删余表对上述软值进行信道解交织,得到信息位和校验位。
在一种可能的实现方式中,在得到信息位和校验位之后,还包括:
将所述信息位的高位和低位分别存储在不同的第一信道解交织寄存器中;
将所述校验位分别存储在不同的第二信道解交织寄存器中;
所述第一信道解交织寄存器和所述信道解交织寄存器的存储位数与进行并行译码的译码器的数量相同。
第三方面,本发明实施例提供了一种双二进制Turbo码的编码装置,包括:
顺序寄存器,用于将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器;
第一编码器,用于对所述2N比特数据编码,得到多个不同的第一校验位数据,将所述多个第一校验位数据依次存入不同的第二信道交织寄存器中,N为正整数;
交织寄存器,用于将所述2N比特数据进行交织处理后输入第二编码器;
第二编码器,用于对交织处理后的2N比特数据编码,得到多个不同的第二校验位数据,将所述多个第二校验位数据依次存入所述第二信道交织寄存器中;
读写控制器,用于根据码率获得数据删余表,根据所述信道交织寄存器地址得到信道交织表;
输出器,用于根据所述数据删余表和所述信道交织表选择性的从所述第一信道交织寄存器和所述第二信道交织寄存器中读出编码后的数据。
第四方面,本发明实施例提供了一种双二进制Turbo码的译码装置,包括:
信道解交织器,用于将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位;
多个译码器,用于对所述信息位和所述校验位进行循环迭代并行译码;
多个交织/解交织器,用于对译码器之间传输的信息进行交织或解交织;
判决输出器,用于当迭代次数到达预设最大迭代次数时,根据最终迭代的似然值,判断所述似然值对应的符号,根据所述似然值得符号位输出与似然值对应的译码码元。
本发明实施例提供一种双二进制Turbo码的编译码方法及装置,通过采用双二进制Turbo码编码方法对2N比特数据进行编码,由于一次进入编码器两个比特,这样可以得到更多的校验位,因此同一码率下双二进制Turbo码有更好的性能,删余对它的影响更小,从而可以提高***性能。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的双二进制Turbo码的编码方法的实现流程图;
图2是本发明实施例提供的双二进制Turbo码的编码方法的示意图;
图3是本发明实施例提供的双二进制Turbo码的译码方法的实现流程图;
图4是本发明实施例提供的双二进制Turbo码的译码方法的示意图;
图5是本发明实施例提供的双二进制Turbo码的编码装置的结构示意图;
图6是本发明实施例提供的双二进制Turbo码的译码装置的结构示意图;
图7是本发明实施例提供的终端的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图通过具体实施例来进行说明。
图1为本发明实施例提供的一种双二进制Turbo码的编码方法的实现流程图,详述如下:
步骤101,将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器,经第一编码器编码后得到多个不同的第一校验位数据,将多个第一校验位数据依次存入不同的第二信道交织寄存器中,N为正整数。
参见图2所示的双二进制Turbo码的编码示意图,图2中Wraddr是ram的写地址,ram是寄存器,在本实施例中根据寄存器的功能对寄存器进行命名,例如ram1为顺序寄存器,ram2为交织寄存器。
raddr是ram的读地址。data_in表示输入的2N比特数据。
参见图2,根据raddr和Wraddr分别将2N比特数据读入并写入顺序寄存器中,顺序寄存器输出2N比特数据时按写入顺序输出,即顺序输出,分别输入给第一信道交织寄存器和第一编码器。这里第一信道交织寄存器表示为ram_ab。需要说明的是,第一信道交织寄存器中存储的数据即为2N比特数据,此数据直接用于后续的删余交织处理。
第一编码器对输入的2N比特数据进行编码,得到多个不同的第一校验位数据,例如得到三个不同的校验位数据,分别存储在不同的第二信道交织寄存器。这里第二信道交织寄存器用于存储校验位数据,例如第二信道交织寄存器可以包括ram_y、ram_w以及ram_v。
可选的,在将多个第一校验位数据依次存入不同的第二信道交织寄存器中时,可以根据码率确定待读入第二信道交织寄存器的校验位;根据确定的校验位将多个第一校验位数据依次写入不同的第二信道交织寄存器中。
需要说明的是,我们将第一编码器编码后的校验位数据存入第二信道交织寄存器中时,需要根据码率确定待存储的校验位数据。码率就是数据传输时单位时间传送的数据位数,当码率高时,待传输的校验位多,则需要的第二信道交织寄存器的数量多,当码率低时,待传输的校验位少,则需要的第二信道交织寄存器的数量少。因此我们在设置第二信道交织寄存器的数量时需要根据最高码率确定。
步骤102,将2N比特数据进行交织处理后输入第二编码器,经第二编码器编码后得到多个不同的第二校验位数据,将多个第二校验位数据依次存入第二信道交织寄存器中。
参见图2,在将2N比特数据写入交织寄存器之前,首先计算交织地址。然后按照交织地址将2N比特数据写入交织寄存器中,这样在交织寄存器中存储的就是交织后的2N比特数据。可以理解的,交织寄存器输出到第二编码器的数据也是交织后的2N比特数据。
可选的,将2N比特数据进行交织处理后输入第二编码器时,可以计算交织地址;根据交织地址,将2N比特数据进行交织处理,得到交织后数据;将交织后数据输入第二编码器。
可选的,在计算交织地址时,可以采用交织器,例如采用二次置换多项式(Quadratic Polynomial Permutation,QPP)无冲突交织器。根据π(i)=(f1*i+f2*i2)modK计算交织地址;其中,π(i)表示交织后相同数据在码块中的地址,K表示码块的长度,i表示交织前数据在码块中的地址,f1和f2表示根据K确定的系数,f1和f2一般可以通过计算机搜索得到。
例如,顺序寄存器的读地址为(0,1,2,……K-1),那交织寄存器的读地址为[π(0),π(1),π(2),……π(K-1)]。
可选的,将多个第二校验位数据依次存入第二信道交织寄存器中时采用的方法与将多个第一校验位数据依次存入第二信道交织寄存器中采用的方法相同,即根据码率确定待读入第二信道交织寄存器的校验位,然后再依次写入不同的第二信道交织寄存器中。例如,依次写入ram_y、ram_w以及ram_v中。
需要说明的是,第一编码器和第二编码器所需参数提前保存在rom中,以便在进行编码时可以根据信道状态选择不同的参数进行编码,该编码器结构可以适配任意码长和码率。第一信道交织寄存器和第二信道交织寄存器的长度根据最长码字确定,以便可以有足够的存储空间。当前信道状态是指当前信道的条件,如果信道条件不好则使用低速率短码,如果信道条件优秀则使用高速率长码,每一种码字都对应一组参数。编码所需的参数可以包括交织参数f1和f2,信道交织参数、信息长度、码率、编码后长度、分段长度等参数。
步骤103,根据码率获得数据删余表,根据信道交织寄存器地址得到信道交织表。
在第一信道交织寄存器和第二信道交织寄存器中分别存储信息位和校验位之后,即可进行步骤103的执行,步骤103可以通过读写控制器执行。读写控制器可以控制数据从各个寄存器中读出,读出的依据则是数据删余表和信道交织表。
双二进制Turbo码即一次进入编码器两个比特,所以双二进制Turbo码基础码率比Turbo码高,为了达到同一码率,双二进制Turbo码可以比传统单二进制Turbo码有更多的校验位,因此同一码率下双二进制Turbo码有更好的性能,删余对它的影响更小。结合Turbo码的灵活性,双二进制Turbo码在散射通信的实际应用中,可以根据信道状态选择不同的码长码率进行信道编码以适应当前信道,在尽可能高的传输速率下达到最佳性能。
步骤104,根据数据删余表和信道交织表选择性的从第一信道交织寄存器和第二信道交织寄存器中读出编码后的数据。
数据删余表中保存的是删余矩阵,矩阵中的1表示输出选通,0表示删除该比特,矩阵前的y和w表示第二信道交织寄存器,例如删余矩阵为
Figure BDA0003368026580000081
表示码率为1/3,ram_y、ram_w中的校验位都不需要删除。
根据数据删余表将所有第二信道交织寄存器中的校验位进行处理后,再采用信道交织表读出编码后的数据,得到最终的编码数据。
上述双二进制Turbo码的编码方法,通过将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器,经第一编码器编码后得到多个不同的第一校验位数据,将多个第一校验位数据依次存入不同的第二信道交织寄存器中;将2N比特数据进行交织处理后输入第二编码器,经第二编码器编码后得到多个不同的第二校验位数据,将多个第二校验位数据依次存入第二信道交织寄存器中;根据码率获得数据删余表,根据信道交织寄存器地址得到信道交织表;根据数据删余表和信道交织表选择性的从第一信道交织寄存器和第二信道交织寄存器中读出编码后的数据。本发明采用双二进制Turbo码编码方法,由于一次进入编码器两个比特,这样可以得到更多的校验位,因此同一码率下双二进制Turbo码有更好的性能,删余对它的影响更小,从而可以提高***性能。
图3为本发明实施例提供的一种双二进制Turbo码的译码方法的实现流程图,详述如下:
步骤301,将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位。
译码是编码的反过程,在本步骤中,将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位,可以包括:
将待译码数据通过调制解调器解调后得到软值;根据编码过程中的删余表确定反删余表,根据编码过程中的信道交织表确定反信道交织表;根据信道交织表和反删余表对上述软值进行信道解交织,得到信息位和校验位。
这里反删余表,即将删余表中删除的校验位补上得到的表。反信道交织表即将信道交织表中的交织顺序还原得到的表。经过信道交织表和反删余表对上述软值进行信道解交织后,即可得到编码过程中的信息位和校验位。
可选的,将信息位的高位和低位分别存储在不同的第一信道解交织寄存器中;将校验位分别存储在不同的第二信道解交织寄存器中;第一信道解交织寄存器和信道解交织寄存器的存储位数与进行并行译码的译码器的数量相同。
参见图4所示,第一信道解交织寄存器可以包括Ram_a和Ram_b,其中,Ram_a可以存储信息位的高位数据,Ram_b可以存储信息位的低位数据。第二信道解交织寄存器可以包括Ram_y、Ram_w以及Ram_v。
步骤302,对信息位和校验位进行循环迭代并行译码,并对译码器之间传输的信息进行交织或解交织,当迭代次数到达预设最大迭代次数时,根据最终迭代的似然值,判断似然值对应的符号,根据似然值得符号位输出与似然值对应的译码码元。
可选的,译码并行度为16,此并行度是经过对硬件逻辑资源的估计以及工程上对译码时延的要求确定的。根据当前状态对外信息以及信息位和校验位进行交织或者解交织,并在16个并行译码器之间进行度量值交换,当迭代次数达到要求时对软信息进行判决并输出。每一次迭代计算中都包括两个状态,状态为1时是顺序读取Ram中的数据,状态为2时是交织读取Ram中数据的状态,当前状态即上述的即刻状态。
在译码过程中,通过译码参数对信息位和校验位迭代计算delta值、alpha值和beta值,并根据delta值、alpha值和beta值计算似然值。其中,似然值是通过delta值、alpha值和beta值计算得出,并作为下一次迭代过程中计算delta值、alpha值和beta值的输入。第一次计算的delta值、alpha值和beta值是通过上述译码参数得出,再根据上述delta值、alpha值和beta值得到似然值,同时本次得到的似然值又作为下一次计算delta值、alpha值和beta值的输入的一部分,得到下一次的delta值、alpha值和beta值,再根据delta值、alpha值和beta值得到似然值,作为一次迭代计算过程。由于当迭代的次数到一定次数后,译码性能不再会有有效地提升,因此当迭代次数到达预设最大迭代次数时,获得似然值。
最后依次迭代得到的似然值可以作为译码后数据的评判标准,得到似然值对应的符号是00/01/10/11中的哪一个,确定符号后,根据似然值得符号位输出与似然值对应的译码码元。
上述双二进制Turbo码的译码方法,通过将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位;对信息位和校验位进行循环迭代并行译码,当迭代次数到达预设最大迭代次数时,对译码后的软信息进行输出。由于编码中删余对***性能的影响较小,因此译码正确率更高。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
以下为本发明的装置实施例,对于其中未详尽描述的细节,可以参考上述对应的方法实施例。
图5示出了本发明实施例提供的双二进制Turbo码的编码装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
如图5所示,双二进制Turbo码的编码装置包括:顺序寄存器501、第一编码器502、交织寄存器503、第二编码器504、读写控制器505和输出器506。
顺序寄存器501,用于将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器;
第一编码器502,用于对2N比特数据编码,得到多个不同的第一校验位数据,将多个第一校验位数据依次存入不同的第二信道交织寄存器中,N为正整数;
交织寄存器503,用于将2N比特数据进行交织处理后输入第二编码器;
第二编码器504,用于对交织处理后的2N比特数据编码,得到多个不同的第二校验位数据,将多个第二校验位数据依次存入第二信道交织寄存器中;
读写控制器505,用于根据码率获得数据删余表,根据信道交织寄存器地址得到信道交织表;
输出器506,用于根据数据删余表和信道交织表选择性的从第一信道交织寄存器和第二信道交织寄存器中读出编码后的数据。
在一实施例中,交织寄存器503将2N比特数据进行交织处理后输入第二编码器时,可以用于:
计算交织地址;
根据交织地址,将2N比特数据进行交织处理,得到交织后数据;
将交织后数据输入第二编码器。
在一实施例中,交织寄存器503计算交织地址时,可以用于:
根据π(i)=(f1*i+f2*i2)modK计算交织地址;
其中,π(i)表示交织后相同数据在码块中的地址,K表示码块的长度,i表示交织前数据在码块中的地址,f1和f2表示根据K确定的系数。
在一实施例中,第一编码器502将多个第一校验位数据依次存入不同的第二信道交织寄存器中时,可以用于:
根据码率确定待读入第二信道交织寄存器的校验位;
根据确定的校验位将多个第一校验位数据依次写入不同的第二信道交织寄存器中。
可选的,第一信道交织寄存器和第二信道交织寄存器的长度根据最长码字确定。
上述双二进制Turbo码的编码装置,通过顺序寄存器将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器,经第一编码器编码后得到多个不同的第一校验位数据,将多个第一校验位数据依次存入不同的第二信道交织寄存器中;交织寄存器将2N比特数据进行交织处理后输入第二编码器,经第二编码器编码后得到多个不同的第二校验位数据,将多个第二校验位数据依次存入第二信道交织寄存器中;根据码率获得数据删余表,根据信道交织寄存器地址得到信道交织表;根据数据删余表和信道交织表选择性的从第一信道交织寄存器和第二信道交织寄存器中读出编码后的数据。本发明采用双二进制Turbo码编码方法,由于一次进入编码器两个比特,这样可以得到更多的校验位,因此同一码率下双二进制Turbo码有更好的性能,删余对它的影响更小,从而可以提高***性能。
图6示出了本发明实施例提供的双二进制Turbo码的译码装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:
如图6所示,双二进制Turbo码的译码装置包括:信道解交织器601和多个译码器602;
信道解交织器601,用于将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位;
多个译码器602,用于对信息位和校验位进行循环迭代并行译码;
多个交织/解交织器603,用于对译码器之间传输的信息进行交织或解交织;
判决输出器604,用于当迭代次数到达预设最大迭代次数时,根据最终迭代的似然值,判断似然值对应的符号,根据似然值得符号位输出与似然值对应的译码码元。
在一实施例中,信道解交织器601将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位时,可以用于:
将待译码数据通过调制解调器解调后得到软值;
根据编码过程中的删余表确定反删余表,根据编码过程中的信道交织表确定反信道交织表;
根据信道交织表和反删余表对上述软值进行信道解交织,得到信息位和校验位。
在一实施例中,在得到信息位和校验位之后,信道解交织器601还用于:
将信息位的高位和低位分别存储在不同的第一信道解交织寄存器中;
将校验位分别存储在不同的第二信道解交织寄存器中;
第一信道解交织寄存器和信道解交织寄存器的存储位数与进行并行译码的译码器的数量相同。
上述双二进制Turbo码的译码装置,通过信道解交织器将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位;多个译码器对信息位和校验位进行循环迭代并行译码,当迭代次数到达预设最大迭代次数时,对译码后的软信息进行输出。由于编码中删余对***性能的影响较小,因此译码正确率更高。
图7是本发明实施例提供的终端的示意图。如图7所示,该实施例的终端7包括:处理器70、存储器71以及存储在所述存储器71中并可在所述处理器70上运行的计算机程序72。所述处理器70执行所述计算机程序72时实现上述各个双二进制Turbo码的编码方法方法实施例中的步骤,例如图1所示的步骤101至步骤103。或者,所述处理器70执行所述计算机程序72时实现上述各装置实施例中各模块/单元的功能,例如图5所示模块/单元501至506的功能。或者所述处理器70执行所述计算机程序72时实现上述各个双二进制Turbo码的编码方法方法实施例中的步骤,例如图3所示的步骤301至步骤302。或者,所述处理器70执行所述计算机程序72时实现上述各装置实施例中各模块/单元的功能,例如图6所示模块/单元601至604的功能。
示例性的,所述计算机程序72可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器71中,并由所述处理器70执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序72在所述终端7中的执行过程。例如,所述计算机程序72可以被分割成图5所示模块/单元501至506,或者图6所示模块/单元601至604。
所述终端7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端7可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是终端7的示例,并不构成对终端7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端还可以包括输入输出设备、网络接入设备、总线等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71可以是所述终端7的内部存储单元,例如终端7的硬盘或内存。所述存储器71也可以是所述终端7的外部存储设备,例如所述终端7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述终端7的内部存储单元也包括外部存储设备。所述存储器71用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个双二进制Turbo码的编码方法或者双二进制Turbo码的译码实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种双二进制Turbo码的编码方法,其特征在于,包括:
将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器,经所述第一编码器编码后得到多个不同的第一校验位数据,将所述多个第一校验位数据依次存入不同的第二信道交织寄存器中,N为正整数;
将所述2N比特数据进行交织处理后输入第二编码器,经所述第二编码器编码后得到多个不同的第二校验位数据,将所述多个第二校验位数据依次存入所述第二信道交织寄存器中;
根据码率获得数据删余表,根据所述信道交织寄存器地址得到信道交织表;
根据所述数据删余表和所述信道交织表选择性的从所述第一信道交织寄存器和所述第二信道交织寄存器中读出编码后的数据。
2.根据权利要求1所述的双二进制Turbo码的编码方法,其特征在于,所述将所述2N比特数据进行交织处理后输入第二编码器,包括:
计算交织地址;
根据所述交织地址,将所述2N比特数据进行交织处理,得到交织后数据;
将所述交织后数据输入第二编码器。
3.根据权利要求2所述的双二进制Turbo码的编码方法,其特征在于,所述计算交织地址,包括:
根据π(i)=(f1*i+f2*i2)mod K计算交织地址;
其中,π(i)表示交织后相同数据在码块中的地址,K表示码块的长度,i表示交织前数据在码块中的地址,f1和f2表示根据K确定的系数。
4.根据权利要求1所述的双二进制Turbo码的编码方法,其特征在于,所述将所述多个第一校验位数据依次存入不同的第二信道交织寄存器中,包括:
根据码率确定待读入第二信道交织寄存器的校验位;
根据确定的校验位将所述多个第一校验位数据依次写入不同的第二信道交织寄存器中。
5.根据权利要求1-4中任一项所述的双二进制Turbo码的编码方法,其特征在于,第一信道交织寄存器和第二信道交织寄存器的长度根据最长码字确定。
6.一种双二进制Turbo码的译码方法,其特征在于,包括:
将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位;
对所述信息位和所述校验位进行循环迭代并行译码,并对译码器之间传输的信息进行交织或解交织,当迭代次数到达预设最大迭代次数时,根据最终迭代的似然值,判断所述似然值对应的符号,根据所述似然值得符号位输出与似然值对应的译码码元。
7.根据权利要求6所述的双二进制Turbo码的译码方法,其特征在于,所述将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位,包括:
将待译码数据通过调制解调器解调后得到软值;
根据编码过程中的删余表确定反删余表,根据编码过程中的信道交织表确定反信道交织表;
根据所述信道交织表和所述反删余表对上述软值进行信道解交织,得到信息位和校验位。
8.根据权利要求6或7所述的双二进制Turbo码的译码方法,其特征在于,在得到信息位和校验位之后,还包括:
将所述信息位的高位和低位分别存储在不同的第一信道解交织寄存器中;
将所述校验位分别存储在不同的第二信道解交织寄存器中;
所述第一信道解交织寄存器和所述信道解交织寄存器的存储位数与进行并行译码的译码器的数量相同。
9.一种双二进制Turbo码的编码装置,其特征在于,包括:
顺序寄存器,用于将2N比特数据顺序依次输入第一信道交织寄存器和第一编码器;
第一编码器,用于对所述2N比特数据编码,得到多个不同的第一校验位数据,将所述多个第一校验位数据依次存入不同的第二信道交织寄存器中,N为正整数;
交织寄存器,用于将所述2N比特数据进行交织处理后输入第二编码器;
第二编码器,用于对交织处理后的2N比特数据编码,得到多个不同的第二校验位数据,将所述多个第二校验位数据依次存入所述第二信道交织寄存器中;
读写控制器,用于根据码率获得数据删余表,根据所述信道交织寄存器地址得到信道交织表;
输出器,用于根据所述数据删余表和所述信道交织表选择性的从所述第一信道交织寄存器和所述第二信道交织寄存器中读出编码后的数据。
10.一种双二进制Turbo码的译码装置,其特征在于,包括:
信道解交织器,用于将待译码数据通过调制解调器解调后得到的软值进行信道解交织,得到信息位和校验位;
多个译码器,用于对所述信息位和所述校验位进行循环迭代并行译码;
多个交织/解交织器,用于对译码器之间传输的信息进行交织或解交织;
判决输出器,用于当迭代次数到达预设最大迭代次数时,根据最终迭代的似然值,判断所述似然值对应的符号,根据所述似然值得符号位输出与似然值对应的译码码元。
CN202111388982.2A 2021-11-22 2021-11-22 双二进制Turbo码的编译码方法及装置 Pending CN114337689A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111388982.2A CN114337689A (zh) 2021-11-22 2021-11-22 双二进制Turbo码的编译码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111388982.2A CN114337689A (zh) 2021-11-22 2021-11-22 双二进制Turbo码的编译码方法及装置

Publications (1)

Publication Number Publication Date
CN114337689A true CN114337689A (zh) 2022-04-12

Family

ID=81047114

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111388982.2A Pending CN114337689A (zh) 2021-11-22 2021-11-22 双二进制Turbo码的编译码方法及装置

Country Status (1)

Country Link
CN (1) CN114337689A (zh)

Similar Documents

Publication Publication Date Title
US6603412B2 (en) Interleaved coder and method
US8443265B2 (en) Method and apparatus for map decoding and turbo decoder using the same
JP4478668B2 (ja) 並列のターボ復号機中でのインターリーブの方法およびシステム。
US8370713B2 (en) Error correction code decoding device
US8719658B2 (en) Accessing memory during parallel turbo decoding
JP2008219892A (ja) データを符号化および復号化する方法および装置
US20020007474A1 (en) Turbo-code decoding unit and turbo-code encoding/decoding unit
US7640462B2 (en) Interleaver and de-interleaver
WO2002013449A2 (en) Apparatus and method for providing turbo code interleaving in a communications system
EP2238690A2 (en) Efficient address generation for pruned interleavers and de-interleavers
CN113258940B (zh) turbo译码方法、装置、译码设备及存储介质
JP2003198386A (ja) インターリーブ装置及びインターリーブ方法、符号化装置及び符号化方法、並びに復号装置及び復号方法
US7873897B2 (en) Devices and methods for bit-level coding and decoding of turbo codes
KR101110201B1 (ko) 통신시스템에서 병렬구조 라틴방진 인터리빙 방법 및 장치
KR100628201B1 (ko) 터보 디코딩 방법
KR20030036845A (ko) 트렐리스에 기초한 채널 부호화를 위한 복호기
CN108270452B (zh) 一种Turbo译码器及译码方法
US7725798B2 (en) Method for recovering information from channel-coded data streams
CN114337689A (zh) 双二进制Turbo码的编译码方法及装置
KR100297739B1 (ko) 다중테일을갖는터보코드및그의부호화/복호화방법및그를이용한부호기/복호기
CN108880569B (zh) 一种基于反馈分组马尔科夫叠加编码的速率兼容编码方法
US6889353B2 (en) Method and arrangement for decoding convolutionally encoded code word
CN110034846B (zh) 一种编码方法及装置
CN105577196A (zh) 基于宽带OFDM电力线通信***的Turbo码数据交织方法和交织器
US8429510B2 (en) Simplified parallel address-generation for interleaver

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Zhao Jingyuan

Inventor after: Wang Wei

Inventor after: Ren Wencheng

Inventor after: Zhang Xiaozhe

Inventor after: Meng Hao

Inventor after: Guo Mengqi

Inventor before: Zhao Jingyuan

Inventor before: Wang Wei

Inventor before: Zheng Xiangquan

Inventor before: Ren Wencheng

Inventor before: Zhang Xiaozhe

Inventor before: Meng Hao

Inventor before: Guo Mengqi

CB03 Change of inventor or designer information