CN101944915B - 译码方法和译码装置 - Google Patents
译码方法和译码装置 Download PDFInfo
- Publication number
- CN101944915B CN101944915B CN 200910158512 CN200910158512A CN101944915B CN 101944915 B CN101944915 B CN 101944915B CN 200910158512 CN200910158512 CN 200910158512 CN 200910158512 A CN200910158512 A CN 200910158512A CN 101944915 B CN101944915 B CN 101944915B
- Authority
- CN
- China
- Prior art keywords
- decoding
- sub
- data
- block
- clock cycle
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3972—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sliding window techniques or parallel windows
Abstract
本发明实施例公开了一种译码方法和译码装置。译码方法基于至少一个子译码器,每个所述子译码器对N个译码子数据块进行串行译码处理。译码装置包括至少一个子译码器,每个所述子译码器对N个译码子数据块进行串行译码处理;所述子译码器包括输入模块、译码模块和输出模块。本发明实施例中的每个子译码器可对N个译码子数据块进行串行译码处理,在译码过程中每个时钟周期可以同时对多个不同的译码子数据块中的数据进行译码处理,相比于现有技术中每个时钟周期仅可以对一个数据进行译码处理并且多个时钟周期才能完成一个数据的译码,本发明实施例在不增加逻辑资源消耗的前提下提高了Turbo码的译码吞吐率。
Description
技术领域
本发明实施例涉及通信领域,特别涉及一种译码方法和译码装置。
背景技术
香农(Shannon)于1948年发表的题为《通信的数学理论》的论文奠定了现代通信理论的基础,其提出的编码定理指出:如果采用足够长的随机编码,信息就能在信道容量C上以最小的冗余进行无差错传输。香农的编码定理提出了二个实际的问题:第一、能达到信道容量C的随机编码理论上是存在的,但编码定理并未明确指出该随机编码如何构造;第二、对于随机编码,增加其长度可以提高传输性能,但译码端对于随机编码进行译码的复杂度与随机编码的长度呈正比,即随机编码的长度越长,对其进行译码的复杂度越高,因此,寻找一种合适的译码方法也很困难。为解决随机编码定理提出的问题,在93年的ICC(International Information Conference)大会上,C.Berrou、A.Glavieux和P.Thitimajshima提出了Turbo码的概念,Turbo码实现了随机编码的思想,同时也提出了合适的译码方法。
但是,发明人在实现本发明的过程中发现现有技术存在如下问题:在实现Turbo码译码过程中存在译码时延,传统的减小译码时延的方法是在译码器的逻辑电路中插入寄存器,也就是增加流水线,通过此方法可提高译码的时钟频率,从而达到减小译码时延的目的,同时也提高了译码吞吐率。但Turbo码译码器的逻辑电路中存在反馈回路,在译码时需要利用上一个时钟周期生成的数据进行下一时钟周期的数据的译码,换言之,每个时钟周期仅可以对一个数据进行译码处理并且多个时钟周期只能完成一个数据的译码过程,其中时钟周期数取决于流水线的级数,因此仅采用传统的在逻辑电路中增加流水线的方法很难提高Turbo码的译码吞吐率。
发明内容
本发明实施例的目的是提供一种译码方法和译码装置,从而提高Turbo码的译码吞吐率。
本发明实施例提供了一种译码方法,基于至少一个子译码器,每个子译码器对N个译码子数据块进行串行译码处理;所述对N个译码子数据块进行串行译码处理包括:
从第一个时钟周期开始的N个时钟周期内,对接收的第一个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的第一个译码子数据块中的第i个数据;
从第二个时钟周期开始的N个时钟周期内,对接收的第二个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的第二个译码子数据块中的第i个数据;
依次对接收的N个译码子数据块中的其余N-2个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的其余N-2个译码子数据块中的第i个数据,所述其余N-2个译码子数据块各自的起始时钟周期依次为第三个时钟周期至第N个时钟周期,且所述其余N-2个译码子数据块中的第I个数据的处理时长均为N个时钟周期;
其中,i为正整数,N为大于1的正整数。
本发明实施例还提供了一种译码装置,包括至少一个子译码器,每个所述子译码器对N个译码子数据块进行串行译码处理;所述子译码器包括输入模块、译码模块和输出模块;
所述输入模块,用于接收并向所述译码模块输入每个译码子数据块中的第i个数据;
所述译码模块,用于从第一个时钟周期开始的N个时钟周期内,对第一个译码子数据块中的第i个数据进行译码处理,生成译码后的第一个译码子数据块中的第i个数据;从第二个时钟周期开始的N个时钟周期内,对第二个译码子数据块中的第i个数据进行译码处理,生成译码后的第二个译码子数据块中的第i个数据;依次对N个译码子数据块中的其余N-2个译码子数据块中的第i个数据进行译码处理,生成译码后的其余N-2个译码子数据块中的第i个数据,所述其余N-2个译码子数据块各自的起始时钟周期依次为第三个时钟周期至第N个时钟周期,且所述其余N-2个译码子数据块中的第i个数据的处理时长均为N个时钟周期;
所述输出模块,用于输出译码后的每个译码子数据块的第i个数据;
其中,i为正整数,N为大于1的正整数。
本发明实施例中的每个子译码器可对N个译码子数据块进行串行译码处理,在译码过程中每个时钟周期可以同时对多个译码子数据块中的数据进行译码处理,相比于现有技术中每个时钟周期仅可以对一个数据进行译码处理并且多个时钟周期才能完成一个数据的译码,本发明实施例在不增加逻辑资源消耗的前提下提高了Turbo码的译码吞吐率。
附图说明
图1为本发明实施例中一个子译码器对N个译码子数据块进行串行译码处理的示意图;
图2为本发明实施例子译码器对二个译码子数据块进行串行译码处理的流程图;
图3为本发明实施例子译码器对二个译码子数据块进行串行译码处理的示意图;
图4为本发明实施例译码装置的结构示意图。
具体实施方式
下面通过附图和实施例,对本发明实施例的技术方案做进一步的详细描述。
Turbo码巧妙的将卷积码和随机交织器结合起来,实现了随机编码的思想;同时Turbo码提出了一种合适的译码方法,即采用软输出迭代译码的方法来逼近最大似然译码。例如使用约束长度为5的子码、长度为65535的交织器、码率为1/2的Turbo码,经过18次迭代译码之后,在加性白高斯噪声(Additive White Gaussian Noise,简称AWGN)信道上的误比特率(BER,bite error rite)≤10-5,仅比1/2码率的Shannon限Eb/N0=0dB多0.7dB,得到了接近Shannon限的性能。Turbo码译码的过程可采用Turbo码的译码器来实现。并且在译码器的逻辑电路中通常需要插入寄存器以提高译码的时钟频率,也就是说在逻辑电路中增加流水线以提高译码的时钟频率。但译码器的逻辑电路中存在反馈回路,Turbo码的译码过程需要利用上一时钟周期生成并通过反馈回路返回的译码后的数据才能完成,也就是说多个时钟周期只能完成一个数据的译码。因此,仅采用在逻辑电路中增加寄存器的方法无法提高Turbo码的译码吞吐率。
为解决现有技术中无法提高Turbo码的译码吞吐率的问题,本发明提出了一个译码方法实施例,本实施例的译码方法基于至少一个子译码器,每个子译码器对N个译码子数据块进行串行译码处理;其中对N个译码子数据块进行串行译码处理包括:
从第一个时钟周期开始的N个时钟周期内,对接收的第一个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的第一个译码子数据块中的第i个数据;从第二个时钟周期开始的N个时钟周期内,对接收的第二个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的第二个译码子数据块中的第i个数据;依次对接收的N个译码子数据块中的其余N-2个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的其余N-2个译码子数据块中的第i个数据,其余N-2个译码子数据块各自的起始时钟周期依次为第三个时钟周期至第N个时钟周期,且其余N-2个译码子数据块中的第i个数据的处理时长均为N个时钟周期;其中,i为正整数,N为大于1的正整数。
本实施例中的子译码器可以为一个或者多个,例如将子译码器的个数设为M,M为正整数。则待译码数据被分为M*N个译码子数据块,每N个译码子数据块对应于一个子译码器,每个子译码器对对应的N个译码子数据块进行串行译码处理,并且所有子译码器可以同时开始进行串行译码处理,即在同一时间段内,每个子译码器可以对各自对应的N个译码子数据块进行串行译码处理。其中,当M=1时,即当子译码器为一个时,待译码数据被分为N个译码子数据块。
其中,将待译码数据分为M*N个译码子数据块的过程具体可以为:按时序将待译码数据的第一个数据至第N个数据依次作为第一个子译码器对应的第一个译码子数据块至第N个译码子数据块的第一个数据;将待译码数据的第N+1个数据至第2N个数据依次作为第二个子译码器对应的第一个译码子数据块至第N个译码子数据块的第一个数据;依此类推,将待译码数据的第(M-1)*N+1个数据至第M*N个数据依次作为第M个子译码器对应的第一个译码子数据块至第N个译码子数据块的第一个数据;将待译码数据的第M*N+1个数据至第(M+1)*N个数据作为第一个子译码器对应的第一个译码子数据块至第N个译码子数据块的第二个数据。同理,待译码数据的其它数据也按上述方法继续进行分配,此处不再赘述。
具体地,待译码数据分为M*N个译码子数据块具体可以通过分块缓存的方法实现。为实现本实施例中的译码方法可以设置M*N个缓存器,每个子译码器对应N个缓存器,待译码数据按时序依次存储在每个子译码器的N个缓存器中,每个缓存器中存储一个译码子数据块,从而实现将待译码数据分为M*N个译码子数据块。每个子译码器对译码子数据块进行译码处理时,可以通过缓存器接收N个译码子数据块中的每个译码子数据块中的第i个数据,具体地,子译码器只需按时序从缓存器中读取译码子数据块中的数据即可。
本发明实施例中每个译码子数据块中的一个数据可以为一个或多个比特的数据。例如,基于译码处理过程中的RADIX-2、RADIX-4或者RADIX-8算法,一个数据分别可以为2比特、4比特或者8比特。
本实施例中,每个子译码器对N个译码子数据块进行串行译码处理,因此可以将每个子译码器的逻辑电路设置为N级流水,这样一个子译码器需要N个时钟周期完成对一个数据的译码,从而保证N个时钟周期中的每个时钟周期可以开始对一个不同的译码子数据块的数据进行译码处理,并且在N个时钟周期内完成对一个数据的译码,也就是说,完成一个数据的译码处理的时钟周期数与译码子数据块的个数可以是相同的。
本实施例中每个子译码器对N个译码子数据块进行串行译码处理的过程具体可参见图1,图1为本发明实施例中一个子译码器对N个译码子数据块进行串行译码处理的示意图。在图1中,第一个译码子数据块为译码子数据块1,第二个译码子数据块为译码子数据块2,依此类推,第N个译码子数据块为译码子数据块N;图1中开始的一个时钟周期(即第一个时钟周期)设为t1;译码子数据块中的数据用Data来表示,第i个数据为Data i。则本实施例中,从第一个时钟周期t1开始的N个时钟周期内,对第一个译码子数据块中的第i个数据进行译码处理,生成译码后的第一个译码子数据块中的第i个数据具体为:从t1至tN的N个时钟周期内,对译码子数据块1的Datai进行译码处理,生成译码后的译码子数据块1的Data i;换言之,从t1开始对译码子数据块1的Data i进行译码处理,直到tN完成对译码子数据块1的Data i的译码,生成译码后的译码子数据块1的Data i。从第二个时钟周期t2开始的N个时钟周期内,对第二个译码子数据块中的第i个数据进行译码处理,生成译码后的第二个译码子数据块中的第i个数据具体为:从t2至t(N+1)的N个时钟周期内,对译码子数据块2的Data i进行译码处理,生成译码后的译码子数据块2的Data i;换言之,从t2开始对译码子数据块2的Data i进行译码处理,直到t(N+1)完成对译码子数据块2的Data i的译码,生成译码后的译码子数据块2的Data i。依此类推,子译码器依次完成对其余的译码子数据块3至译码子数据块N的译码处理,例如,从tN至t(2N-1)的N个时钟周期内,对译码子数据块N的Data i进行译码处理,生成译码后的译码子数据块N的Data i,换言之,从tN开始对译码子数据块N的Data i进行译码处理,直到t(2N-1)完成对译码子数据块N的Datai的译码处理,生成译码后的译码子数据块N的Data i。
在上述一个子译码器对N个译码子数据块进行串行译码处理的过程中,针对各译码子数据块的第i个数据,t1开始对译码子数据块1的第i个数据进行译码处理;t2开始对译码子数据块2的第i个数据进行译码处理,并且t2还继续对译码子数据块1的第i个数据进行译码处理;依此类推,tN开始对译码子数据块N的第i个数据进行译码处理,并继续对译码子数据块2至译码子数据块N-1的第i个数据进行译码处理,同时在tN完成对译码子数据块1的第i个数据的译码处理。
本实施例中,每个译码子数据块包括多个数据,即i为正整数。i取1时,每个子译码器对N个译码子数据块中的第一个数据进行串行译码处理,此种情况为每个子译码器刚开始对N个译码子数据块进行串行译码处理的情况,对于存在反馈回路的逻辑电路,此种情况下反馈回路尚无译码后的数据返回,因此每个子译码器可以直接对N个译码子数据块中每个译码子数据块的第一个数据进行译码处理。i取大于1的正整数时,对第一个译码子数据块中的第i-1个数据进行译码处理,生成译码后的第一个译码子数据块中的第i-1个数据,则对于存在反馈回路的逻辑电路,对第一个译码子数据块中的第i个数据进行译码处理的过程具体为:根据译码后的第一个译码子数据块中的第i-1个数据对第一个译码子数据块中的第i个数据进行译码处理。则对第二个译码子数据块中的第i个数据进行译码处理的过程具体为:根据译码后的第二个译码子数据块中的第i-1个数据对第二个译码子数据块中的第i个数据进行译码处理。同理,对N个译码子数据块中的其它任一译码子数据块中的第i个数据进行译码处理的过程均需要根据译码后的该译码子数据块中的第i-1个数据进行译码处理。以图1中的译码子数据块N中的Datai为例,子译码器在t(N-1)生成译码后的译码子数据块N的第i-1个数据,则子译码器从tN开始根据译码后的译码子数据块N的第i-1个数据对译码子数据块N中的Data i进行译码处理,至t(2N-1)完成译码处理过程生成译码后的译码子数据块N中的Data i。
本实施例的译码过程中每个子译码器可以对N个译码子数据块进行串行译码处理,N个时钟周期可以完成对一个数据的译码,并且每个时钟周期可以同时对多个不同的译码子数据块中的数据进行译码处理,这样对正常的时钟周期而言,就相当于每个时钟周期可以完成一个数据的译码;尽管其中存在若干个特殊的时钟周期,例如对N个译码子数据块中每个译码子数据块的第一个数据进行译码处理的前N-1个时钟周期内以及最后一个数据进行译码处理的最后N-1个时钟周期内,但平均处理一个数据的时钟周期数小于N(但大于一个时钟周期),相比于现有技术中处理一个数据需要N个时钟周期,上述若干个特殊的时钟周期内在不增加逻辑资源消耗的前提下还是提高了Turbo码的译码吞吐率。在实际译码过程中,通常每个译码子数据块中的数据个数i取值都较大,而N的取值都较小,例如,N可以取2至4,这样虽然在对第一个数据进行译码处理的前N-1个周期和对最后一个数据进行译码处理的最后N-1个周期内,每个时钟周期内处理的数据量小于其它周期内每个时钟周期可以处理一个数据的数据量,但相比于现有技术,本发明实施例还是提高了Turbo码的译码吞吐率。
综上所述,本实施例中的每个子译码器可对N个译码子数据块进行串行译码处理,在译码过程中每个时钟周期可以同时对多个不同的译码子数据块中的数据进行译码处理,相比于现有技术中每个时钟周期仅可以对一个数据进行译码处理并且多个时钟周期才能完成一个数据的译码,本实施例在不增加逻辑资源消耗的前提下提高了Turbo码的译码吞吐率。
下面通过另一个具体的实施例详细说明本发明译码方法的技术方案。本实施例中假定基于4个子译码器,待译码数据分为8个译码子数据块,每个子译码器对2个译码子数据块进行串行译码处理,图2为本发明实施例子译码器对二个译码子数据块进行串行译码处理的流程图,图3为本发明实施例子译码器对二个译码子数据块进行串行译码处理的示意图,如图2和图3所示,每个子译码器的译码过程包括:
步骤201、在第一个时钟周期t1,接收译码子数据块1中的第一个数据Data1;
步骤202、从第一个时钟周期t1开始对接收的译码子数据块1中的Data1进行译码处理;
步骤203、在第二个时钟周期t2,接收译码子数据块2中的第一个数据Data1;
步骤204、从第二个时钟周期t2开始对译码子数据块2中的Data1进行译码处理,并继续对译码子数据块1中的Data1进行译码处理生成译码后的译码子数据块1中的Data1;
步骤205、在第三个时钟周期t3,接收译码子数据块1中的第二个数据Data2;
步骤206、从第三个时钟周期t 3开始对译码子数据块1中的Data2进行译码处理,并继续对译码子数据块2中的Data1进行译码处理生成译码后的译码子数据块2中的Data1;
步骤207、在第四个时钟周期t4,接收译码子数据块2中的第二个数据Data2;
步骤208、从第四个时钟周期t4开始对译码子数据块2中的Data2进行译码处理,并继续对译码子数据块1中的Data2进行译码处理生成译码后的译码子数据块1中的Data2;
步骤209、在后续的时钟周期,重复上述译码方法完成对译码子数据块1和译码子数据块2的其它数据的译码处理。
本实施例中,对于一个数据需要二个时钟周期完成译码处理过程,并且每个时钟周期可以同时对二个译码子数据块中的数据进行译码处理。以图3中的t3为例,子译码器在t3对译码子数据块1的data2和译码子数据块2的data1进行译码处理。因对一个数据进行译码处理需要二个时钟周期,所以在t3子译码器完成了对译码子数据块1的Data2的1/2的译码过程和对译码子数据块2的Data1的1/2的译码过程,这相当于译码器在t3完成了对一个数据的译码处理,也就是说,这相当于一个时钟周期可以完成一个数据的译码过程,相比于现有技术中多个时钟周期才能完成一个数据的译码,本实施例在不增加逻辑资源消耗的前提下提高了Turbo码的译码吞吐率。
图4为本发明实施例译码装置的结构示意图,如图4所示,译码装置包括至少一个子译码器,每个子译码器对N个译码子数据块进行串行译码处理;每个子译码器包括输入模块11、与输入模块11连接的译码模块12、与译码模块12连接的输出模块13。其中N为大于1的正整数。本实施例中的译码装置为包括M(M为大于1的整数)个子译码器的情况,在实际应用中该译码装置还可以仅包括一个子译码器。
输入模块11接收并向译码模块12输入每个译码子数据块中的第i个数据,具体地,输入顺序为:在第一个时钟周期输入模块11接收并向译码模块12输入第一个译码子数据块的第i个数据,在第二个时钟周期,输入模块11接收并向译码模块12输入第二个译码子数据块的第i个数据,依此类推,输入模块11在后续的每个时钟周期依次接收并向译码模块12输入其余译码子数据块中的第i个数据,具体不再赘述。其中i为正整数。
译码模块12从第一个时钟周期开始的N个时钟周期内,对第一个译码子数据块中的第i个数据进行译码处理,生成译码后的第一个译码子数据块中的第i个数据;从第二个时钟周期开始的N个时钟周期内,对第二个译码子数据块中的第i个数据进行译码处理,生成译码后的第二个译码子数据块中的第i个数据;依次对N个译码子数据块中的其余N-2个译码子数据块中的第i个数据进行译码处理,生成译码后的其余N-2个译码子数据块中的第i个数据,其余N-2个译码子数据块各自的起始时钟周期依次为第三个时钟周期至第N个时钟周期,且其余N-2个译码子数据块中的第i个数据的处理时长均为N个时钟周期。
输出模块13输出译码模块12生成的译码后的每个译码子数据块的第i个数据。具体地,在译码模块12生成译码后的每个译码子数据块的第i个数据之后,输出模块13依次输出译码后的每个译码子数据块的第i个数据。例如,依次输出译码后的第一个译码子数据块中的第i个数据、译码后的第二个译码子数据块中的第i个数据,依此类推,直至输出译码后的第N个译码子数据块中的第i个数据。
进一步地,由于译码装置的逻辑电路中可能存在反馈回路,子译码器还可以进一步包括分别与译码模块12和输入模块11连接的反馈模块14。译码模块12对每个译码子数据块中的第i-1个数据进行译码处理生成译码后的每个译码子数据块中的第i-1个数据,则反馈模块14接收译码模块12生成的译码后的每个译码子数据块中的第i-1个数据,并将译码后的每个译码子数据块中的第i-1个数据返回给输入模块11。具体地,反馈模块14依次接收译码模块12生成的译码后的第一个译码子数据块中的第i-1个数据、译码后的第二个译码子数据块中的第i-1个数据,依此类推,直至译码后的第N个译码子数据块中的第i-1个数据。输入模块11再向译码模块12输入反馈模块14返回的译码后的每个译码子数据块的第i-1个数据,则译码模块12根据译码后的一个译码子数据块的第i-1个数据对该一个译码子数据块的第i个数据进行译码处理。
其中,i为正整数1时,从第一个时钟周期开始的N个时钟周期内,反馈模块14不向输入模块11返回任何译码后的数据,因此译码模块12直接对输入的译码子数据块中的数据进行译码处理。
本实施例中,所有子译码器可以同时开始进行串行译码处理。
本实施例的译码装置基于至少一个子译码器,每个子译码器可对N个译码子数据块进行串行译码处理,在译码过程中每个时钟周期可以同时对多个不同的译码子数据块中的数据进行译码处理,相比于现有技术中每个时钟周期仅可以对一个数据进行译码处理并且多个时钟周期只能完成一个数据的译码过程,本实施例在不增加逻辑资源消耗的前提下提高了Turbo码的译码吞吐率。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,该的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案而非对其进行限制,尽管参照较佳实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这些修改或者等同替换亦不能使修改后的技术方案脱离本发明技术方案的精神和范围。
Claims (10)
1.一种译码方法,其特征在于,基于至少一个子译码器,每个子译码器对N个译码子数据块进行串行译码处理;所述对N个译码子数据块进行串行译码处理包括:
从第一个时钟周期开始的N个时钟周期内,对接收的第一个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的第一个译码子数据块中的第i个数据;
从第二个时钟周期开始的N个时钟周期内,对接收的第二个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的第二个译码子数据块中的第i个数据;
依次对接收的N个译码子数据块中的其余N-2个译码子数据块中的第i个数据进行译码处理,生成并输出译码后的其余N-2个译码子数据块中的第i个数据,所述其余N-2个译码子数据块各自的起始时钟周期依次为第三个时钟周期至第N个时钟周期,且所述其余N-2个译码子数据块中的第i个数据的处理时长均为N个时钟周期;
其中,i为正整数,N为大于1的正整数。
2.根据权利要求1所述的方法,其特征在于,当i大于1时,所述对接收的第一个译码子数据块中的第i个数据进行译码处理之前还包括:
对接收的第一个译码子数据块中的第i-1个数据进行译码处理,生成并输出译码后的第一个译码子数据块中的第i-1个数据。
3.根据权利要求2所述的方法,其特征在于,所述对接收的第一个译码子数据块中的第i个数据进行译码处理包括:
根据所述译码后的第一个译码子数据块中的第i-1个数据对所述第一个译码子数据块中的第i个数据进行译码处理。
4.根据权利要求1所述的方法,其特征在于,每个子译码器对应N个缓存器,每个缓存器中存储一个译码子数据块;
所述方法还包括:所述子译码器通过所述缓存器接收N个译码子数据块中的每个译码子数据块中的第i个数据。
5.根据权利要求1所述的方法,其特征在于,所有子译码器同时开始进行串行译码处理。
6.根据权利要求1所述的方法,其特征在于,所述译码子数据块中的每个数据为一个比特或者多个比特。
7.一种译码装置,其特征在于,包括至少一个子译码器,每个所述子译码器对N个译码子数据块进行串行译码处理;所述子译码器包括输入模块、译码模块和输出模块;
所述输入模块,用于接收并向所述译码模块输入每个译码子数据块中的第i个数据;
所述译码模块,用于从第一个时钟周期开始的N个时钟周期内,对第一个译码子数据块中的第i个数据进行译码处理,生成译码后的第一个译码子数据块中的第i个数据;从第二个时钟周期开始的N个时钟周期内,对第二个译码子数据块中的第i个数据进行译码处理,生成译码后的第二个译码子数据块中的第i个数据;依次对N个译码子数据块中的其余N-2个译码子数据块中的第i个数据进行译码处理,生成译码后的其余N-2个译码子数据块中的第i个数据,所述其余N-2个译码子数据块各自的起始时钟周期依次为第三个时钟周期至第N个时钟周期,且所述其余N-2个译码子数据块中的第i个数据的处理时长均为N个时钟周期;
所述输出模块,用于输出译码后的每个译码子数据块的第i个数据;
其中,i为正整数,N为大于1的正整数。
8.根据权利要求7所述的装置,其特征在于,所述子译码器还包括:
反馈模块,用于接收所述译码模块生成的译码后的每个译码子数据块中的第i-1个数据,并将所述译码后的每个译码子数据块中的第i-1个数据返回给所述输入模块。
9.根据权利要求8所述的装置,其特征在于,所述输入模块还用于向所述译码模块输入所述反馈模块返回的译码后的每个译码子数据块的第i-1个数据;
所述译码模块还用于根据所述译码后的一个译码子数据块的第i-1个数据对该一个译码子数据块的第i个数据进行译码处理。
10.根据权利要求7所述的装置,其特征在于,所有子译码器同时开始进行串行译码处理。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910158512 CN101944915B (zh) | 2009-07-08 | 2009-07-08 | 译码方法和译码装置 |
PCT/CN2010/075039 WO2011003351A1 (zh) | 2009-07-08 | 2010-07-07 | 译码方法和译码装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910158512 CN101944915B (zh) | 2009-07-08 | 2009-07-08 | 译码方法和译码装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101944915A CN101944915A (zh) | 2011-01-12 |
CN101944915B true CN101944915B (zh) | 2013-01-30 |
Family
ID=43428791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910158512 Active CN101944915B (zh) | 2009-07-08 | 2009-07-08 | 译码方法和译码装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101944915B (zh) |
WO (1) | WO2011003351A1 (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1913368A (zh) * | 2005-08-11 | 2007-02-14 | 中兴通讯股份有限公司 | 一种自适应turbo译码的方法 |
CN101232289A (zh) * | 2007-01-17 | 2008-07-30 | 美国博通公司 | 涡轮解码器及解码涡轮编码信号的方法 |
CN101411071A (zh) * | 2006-01-27 | 2009-04-15 | 高通股份有限公司 | 具有双向滑动窗口体系结构的map译码器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8112698B2 (en) * | 2008-07-15 | 2012-02-07 | Icomm Technologies Inc. | High speed turbo codes decoder for 3G using pipelined SISO Log-MAP decoders architecture |
-
2009
- 2009-07-08 CN CN 200910158512 patent/CN101944915B/zh active Active
-
2010
- 2010-07-07 WO PCT/CN2010/075039 patent/WO2011003351A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1913368A (zh) * | 2005-08-11 | 2007-02-14 | 中兴通讯股份有限公司 | 一种自适应turbo译码的方法 |
CN101411071A (zh) * | 2006-01-27 | 2009-04-15 | 高通股份有限公司 | 具有双向滑动窗口体系结构的map译码器 |
CN101232289A (zh) * | 2007-01-17 | 2008-07-30 | 美国博通公司 | 涡轮解码器及解码涡轮编码信号的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101944915A (zh) | 2011-01-12 |
WO2011003351A1 (zh) | 2011-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105227189B (zh) | 分段crc辅助的极化码编译码方法 | |
CN106571831B (zh) | 一种基于深度学习的ldpc硬判决译码方法及译码器 | |
US8370713B2 (en) | Error correction code decoding device | |
Sun et al. | Configurable and scalable high throughput turbo decoder architecture for multiple 4G wireless standards | |
CN1241329C (zh) | 对卷积编码的代码字进行解码的方法和设备 | |
CN101777924A (zh) | 一种Turbo码译码方法和装置 | |
WO2007127941A2 (en) | Radix-4 viterbi decoding | |
CN100546207C (zh) | 一种基于DVB-RCS标准的双二元Turbo码译码方法 | |
CN100508405C (zh) | 提高Turbo码译码速度的并行译码方法及译码装置 | |
KR20110037953A (ko) | 데이터 복호화 방법, 데이터 인터리브 방법, 데이터 복호화 장치, 인터리버 테이블 생성 장치 및 데이터 인터리브 장치 | |
CN1254121C (zh) | 特博码的解码方法 | |
US7587004B2 (en) | Method for decoding data using windows of data | |
KR19990081470A (ko) | 터보복호기의 반복복호 종료 방법 및 그 복호기 | |
CN101944915B (zh) | 译码方法和译码装置 | |
CN101847447A (zh) | 存储控制器、存储控制方法及数据存取系统 | |
CN111371465B (zh) | Ldpc码字的比特交织方法、系统与介质 | |
CN101075812A (zh) | 一种并行级联结构的系统形式低密度码的构造方法 | |
CN101662294A (zh) | 一种基于map译码器的译码装置及其译码方法 | |
EP2323302A1 (en) | Improved HARQ | |
CN102571107A (zh) | LTE系统中高速并行Turbo码的解码系统及方法 | |
JP2000224054A (ja) | ビタビデコ―ディングの速度を増大させる方法と装置 | |
CN110958025A (zh) | 一种基于叠加的短帧长编码及译码方法 | |
Omeira et al. | A code-matched collision-free S-random interleaver for turbo codes | |
CN103780335A (zh) | 迭代译码的方法和装置 | |
CN113708887B (zh) | 极化码编码及译码方法和装置、信息传输系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |