涡轮码的并行译码以及数据处理方法和装置的制作方法

文档序号:7514271阅读:252来源:国知局
专利名称:涡轮码的并行译码以及数据处理方法和装置的制作方法
技术领域
本发明涉及无线通信系统信道译码,尤其涉及涡轮码的并行译码的方法 和装置。
背景技术
近年来,正在发展一种在包含移动通信系统、信息记录系统、数字广播 系统等的通信领域和信息处理领域中所使用的高性能、高可靠性的编码方式,
所谓涡轮码(Turbo)方式。随着数据速率日益增加的需要,涡轮码面临着严 峻的挑战。传统的涡轮码在其子译码器(component decoder)中釆用串行的 方式进行软入软出(soft in soft out) (SISO)处理。这种处理需要大量的时钟 周期,从而制约了硬件译码速度。
为了清楚起见,下面简要说明涡轮码的传统的串行译码机制(以下称为 "SD"方法)。
图1示出了传统的串行迭代涡轮译码器的图(详见C. Berrou, A. Glavieux, 和P. Thitimajshima, "Near Shannon limit error-correcting coding and decoding: Turbo-codes(I)," Proc.1993 IEEE Int. Conf. Commun. (ICC,93), Geneva, Switzerland, 1993年5月,1064-1070页)。该译码器包括两个子译码器(1、 2 )、 交织器、以及去交织器,以迭代方式来进行译码。在每次迭代中,子译码器 l将其计算的外信息(extrinsic information) (Le!)在经过交织器交织后发送 给子译码器2,作为先验信息(priori information) (La2)。然后,子译码器2 将其外信息(Le2)在经过去交织器去交织后反馈给子译码器1,用作先验信 息(LaJ。图1中的x和x,分别是接收的信息比特和其交织后的版本。yt和 y2是接收到的4交-睑位,它们分别由两个子递归系统巻积(Recursive Systematic Convolutional) (RSC)编码器(未示出)产生。
子译码器的功能是计算每个信息比特的对数似然比(Logarithm of Likelihood Ratio) (LLR)。这种计算通常使用最大后验概率(Maximum A
6Posteriori Probability) (MAP)算法(详见,L.R.Bahl, J.Cocke, F.Jelinek和 J.Raviv, "Optimal decoding of linear codes for minimizing symbol error rate", IEEE Trans.Inform.Theory,VoLIT-20,284-287页,1974年3月),其中第i(其中, i=l,2,…N-l)个信息比特的LLR为
丄丄《=log^- 公式(1 )
图2示出了整个处理过程。显然,为了计算^0)(即,前向处理中计算 的前向路径度量(forward path metric)),应该首先计算a卜;只有在算 出所有过去的a,.(力之后,才能计算"n("。 A(力(即,后向处理中计算的后 向路径度量(backward path metric))情形类似。因此,本领域:f支术人员公 知,在传统的SISO算法中,网格(trellis)中一个分支的处理依赖于过去的 分支的所有过去的计算结果,必须等待所有分支处理完成之后,才能获得子 译码器的整个输出。因此,不能在N个时钟周期内完成在一次迭代中的一个 子译码器的处理(可能需要一些额外的时钟周期来执行一些其他的操作),因 此一个单元SISO译码器的处理需要至少N个时钟周期,其中N是网格图的 长度(涡轮码的帧长度或交织器长度)。如果时钟频率是fe,则MAP的处理 时延大于7^=;。假设最大迭代次数为Imax,则译码涡轮码的一个码字的延
迟大于7; =2r / =^/狀,使得信息吞吐量小于^ = !=丄。例如,
"* dec map max 尸 max "* , " 》~ 2y ,
/ c 血c max
当fTl00MHz且In^-8时,吞吐量不可能大于6.25Mbps。需要注意的是,采 用提前迭代中止技术(early-stop iteration strategy)虽然能4吏成功译码一个码
字的迭代的实际迭代次数少于Imax,但硬件仍必须按照Lax来设计。
为了减少译码延迟并增加其吞吐量,现有技术中提出了涡轮码的并行译 码方法。
普遍的做法是通过将整个码字划分为Q个子块并使用Q个并行工作的 MAP处理器来对这Q个子块并行译码,从而将所需的时钟周期减少到N/Q, 译码速度相应提高到Q倍。但存在的问题是,子块处理中边界处的初始条件 缺失原本不分子块时,计算边界处的值需要已知前面的计算结果。
如果随机或任意设置各个子块译码时的初始条件,则会导致严重的性能恶化。因此,直接并行译码面临如何初始化每个子块的边界处的前向变量和 后向变量的问题。
为了在子块的边界处得到较好的初始条件,现有技术中提出了两种涡轮
码并行译码方法。 一种涡轮码并#^码方法是在Jah-Ming Hsu和Chin-Liang
Wang的 "a parallel decoding scheme for turbo codes", Proc.ISCAS'98, Vol.4,
1998年6月,445-448页中提出的方法(以下,简称为"OL"方法)。
图3示出了根据传统的OL的用于计算cti(s)的重叠的子块的图。对于从k
到k+M-1的长度为M的特定子块,可以从k-L开始计算,为了在一次迭代中 在一个子译码器中获得所有前向变量",(",处理Q个子块且重叠L的整个过
程需要! +丄时钟周期,而不是^个时钟周期,译码速度相应下降到 ^
倍。L和Q越大,译码速度越低。例如,假设码字块长度为2298,将其划分
为(^50个子块,且重叠的长度1=30,则需要^^ + 30 76个时钟周期来产
50
生所有的前向变量,而不是^^《46个周期,因此MAP译码速度仅可以被提
高到30倍,没有达到预期的()=50倍。
另 一种涡4仑石马并4亍译石马方法是在Seokhyn Yoon和Yeheskel Nar-Ness的"A parallel MAP algorithm for low latency turbo decoding" , IEEE communications letters,VOL.6,NO.7,2002年7月中提出的方法(以下,简称为"SBI"方法)。 该方法将上一次迭代中边界处的计算值进行存储,并稍后在下一次迭代译码 处理中使用该计算结果作为该子块边界的初始条件的近似。
相比于重叠方法,该方法不需要冗余的计算。因此,译码速度可以线性 增加到子块的数量Q倍。但它需要总量大小为2 x Q x 2 的额外的存储器来 存储在前一次迭代中的最终结果a^(",其中v是用于量化这些变量的比特
数,2""是网格中的状态数量。
综上,OL的缺点在于,重叠导致了一些额外的计算时延,这将降低译码 速度,尤其在Q较大且N较小的情况下。而SBI的缺点在于,需要额外的存 储器容量来存储该中间的边界信息。当Q值较大时,此部分存储所占的比例 不可忽-现。

发明内容
8鉴于上述技术问题,本发明提出了一种新的涡轮码的数据处理以及并行 译码装置。在没有大幅度增加存储器容量的前提下,解决了现有技术中译码 速度与译码正确性不能兼得的缺陷。
根据本发明的一个方面,提供一种涡轮码的并行译码数据处理方法,所
述方法包括码字划分步骤,用于将整个码字划分为Q个子块以使所述Q个子 块中的相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其 中所述译码处理包括P次迭代i奪码处理,Q是正整数,且Q>1, P是正整数, 且P〉1;以及边界移动步骤,用于在第p+n次迭代译码处理之前,以移动量A 来移动在第p次迭代译码处理中形成的所述多个边界中的至少一个的位置, 其中p是正整数,il<p<P, n是正整数,且l《n《P-p,所述移动量A是固 定的步长。
本发明的另一个方面为一种涡轮码的并行译码数据处理方法,所述方法 包括码字划分步骤,用于将整个码字划分为Q个子块以使所述Q个子块中的 相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中所述 译码处理包括P次迭代译码处理,Q是正整数,且Q>1, P是正整数,且P>1; 以及存储步骤,用于在对第q个子块的第p次迭代译码处理中,存储所述第 p次迭代译码处理的前向处理或后向处理的计算结果中具有最大概率的状态
(s*)的索引,其中在对第q个子块的第p+l次迭代译码处理的前向处理或 后向处理中,当初始条件(s)为具有最大概率的状态时,初始条件(s)的可靠度 为1, l<q<Q,且q是整数,p是正整数,且l《p〈P。
本发明的另一个方面为一种涡轮码的并行译码数据处理方法,所述方法 包括码字划分步骤,用于将整个码字划分为Q个子块以使所述Q个子块中的 相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中所述 译码处理包括P次迭代译码处理,Q是正整数,且Q>1 , P是正整数,且P>1; 以及存储步骤,用于在对第q个子块的第p次迭代-泽码处理中,存储所述第 p次迭代译码处理的前向处理或后向处理的计算结果中具有最大概率的状态
(s*)的索引,其中在对所述第q个子块的第p+l次迭代i奪码处理的前向处 理或后向处理中,当初始条件(s)为具有最大概率的状态时,初始条件(s)的可 靠度为l,当初始条件(s)不是具有最大概率的状态(s、即s^s+时,其初始条 件与具有第二大概率状态(s,)的可靠度以及具有最大概率状态(s*)的可靠
度的比值有关。本发明的另 一个方面为 一种涡轮码的并行译码数据处理设备,所述设备
包括码字划分装置,用于将整个码字划分为Q个子块以使所述Q个子块中的 相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中所述 译码处理包括P次迭代译码处理,Q是正整数,且Q>1, P是正整数,且P>1; 以及边界移动装置,用于在第p+n次迭代译码处理之前,以移动量A来移动 在第p次迭代译码处理中形成的所述多个边界中的至少一个的位置,其中p 是正整数,且l《p〈P, n是正整数,且l《n《P-p,所述移动量A是固定的步 长。
本发明还提供了 一种涡轮码的并行译码设备,所述设备包括并行译码数 据处理设备,接收输入数据,该并行译码数据处理设备更包括码字划分装 置,用于将整个码字划分为Q个子块以使所述Q个子块中的相邻子块形成多 个边界,从而对所述Q个子块并行进行译码处理,其中所述译码处理包括P 次迭代译码处理,Q是正整数,且Q〉1, P是正整数,且PM;以及边界 移动装置,用于在第p+n次迭代译码处理之前,以移动量A来移动在第p次 迭代译码处理中形成的所述多个边界中的至少一个的位置,其中p是正整数, 且l《p〈P, n是正整数,且Kn《P-p,所述移动量A是固定的步长;涡轮译 码装置,连接到该并行译码数据处理装置,接收译码子块数据,该涡轮译码 装置可以包括多个解交织器以及多个子译码器,对并行译码数据处理设备产 生的译码子块数据进行涡轮译码;以及存储装置,连接到该并行译码数据处 理设备以及该涡轮译码装置,用于存储输入数据以及译码结果。
在不重叠子块且没有额外的存储器的情况下,本发明也能够实现较好的 译码效果。另外,在重叠子块的情况下,本发明能够实现更短的重叠长度, 并且在使用存储器来存储初始条件的情况下,本发明能够使用更少的存储器 容量。


通过以下结合附图对实施例的描述,本发明的上述方面、优点和效果将 变得更清晰且容易理解,在附图中
图l是示出传统的迭代涡4仑i斧码器的图2是示出MAP算法的运算的流程图3是根据传统的OL的用于计算oii(s)的重叠的子块的图;图4A、 4B是描述根据本发明的第一实施例的涡轮并行译码设备的示意 图和涡轮并行i爭码方法的流程图5A、 5B是描述根据本发明的第二实施例的涡轮并行译码设备的示意 图和涡轮并行译码方法的流程图6A、 6B是描述根据本发明的第三实施例的涡轮并行译码设备的示意 图和涡轮并行译码方法的流程图7是描述根据本发明的第三实施例的涡轮并行译码设备中的子块的示 意图8是描述根据本发明的第三实施例的计算cti(s)和卩i(s)的边界位置的示 意图9是描述根据本发明的第三实施例的两次相邻的迭代处理的子块的边 界位置的示意图;以及
图10-17的每个是本发明与现有技术的仿真结果的图。
具体实施例方式
下面描述本发明的各个实施例。
图4A、 4B是描述根据本发明的第一实施例的涡轮并行译码设备的示意 图和涡轮并行译码方法的流程图。
如图4A,本发明的第一实施例的涡轮并行译码设备包括码字划分装置 41、涡轮译码装置42、和边界移动装置43。码字划分装置41将码字划分为 彼此不重叠的Q个子块,这Q个子块之间形成边界(Q是正整数,Q>1)。涡 轮译码装置42中包括Q个子译码器(未示出),从而对这Q个子块并行进行 译码处理。在涡轮译码装置42中对这Q个子块进行最大Imax次迭代译码处理, 假设进行了 P次迭代处理(P是正整数,且P〉1)。其中,假设在涡轮并行译 码设备进行了第p次迭代处理时(p是正整数,且1 < p〈P ),码字被划分之后 的子块边界如图4A所示。在进行第p+n次迭代处理之前(n是正整数,且l 《n<P-p),边界移动装置43移动在第p次迭代处理中划分的多个子块边界 中的至少一个,优选地移动在第p次迭代处理中划分的所有子块边界(例如, 在第p+n次迭代处理中划分的子块边界如图4A中所示)。然后,涡轮并行译 码设备继续进行剩余的迭代处理。图4B详细描述了根据本发明的第一实施例 的涡轮并行译码方法的流程。以下将这种移动边界的机制称为MB (moving
iiboundary)机制。
在传统的涡轮码并行译码设备中,性能的恶化通常来自于在子块的译码 开始点处的不准确的初始条件。如果子块边界的初始条件是随机或任意设置 的,则由于在每次迭代译码处理时码字被划分的子块边界的位置不变,因此 该不准确的软输出总是发生在相同的边界位置上。而通过上述本发明的第一 实施例,在进行了一次或多次迭代译码处理之后,该边界移动装置43相对于 之前的一次迭代处理中划分的子块边界来移动一个或多个子块边界,使得该 子块的译码开始点处的该不准确的初始条件导致的不准确的软输出结果被分 布在不同的位置上,4吏这种不准确因素不会积累,^v而可以改进最终的译码 性能。
当然,在本发明的第一实施例的教导下,本领域技术人员可以想象,如 果设置从第1次迭代处理开始,每次迭代处理之前都移动子块边界的位置(例 如11=1),和/或在移动时移动所有子块边界的位置,将得到更好的译码性能。 本领域技术人员也可以考虑将每次移动一个或多个边界位置的移动量A设定 为固定的步长,以便更简单地进行硬件或软件配置。
图5A、 5B是描述根据本发明的第二实施例的涡轮并行译码设备的示意 图和涡轮并行译码方法的流程图。
如图5A,本发明的第二实施例的涡轮并行译码设备包括包括了重叠装 置501的码字划分装置51、涡轮译码装置52、和边界移动装置53。码字划 分装置51通过其中的重叠装置501将码字划分为彼此重叠的Q个子块(Q是 正整数,Q>1 ),其中,保持子块的有效数据部分长度M不变,中间的子块(例 如,第q个子块,2<q《Q-l)与前一个子块(例如,第q-l个子)和后一个 子块(例如,第q+l个子块)相互重叠的长度为L (L>0)。涡轮译码装置52 中包括Q个子译码器(未示出),从而对这Q个子块并行进行译码处理。在 涡轮译码装置52中对这Q个子块进行最大Im^次迭代译码处理,假设进行了 P次迭代处理(P是正整数,且PM)。其中,假设在涡轮并行译码设备进行 了第p次迭代处理时(p是正整数,且1 < p<P ),码字被划分之后的子块边界 如图5A所示。在进行第p+n次迭代处理之前(n是正整数,且l《n《P-p), 边界移动装置53移动在第p次迭代处理中划分的多个子块边界中的至少一 个,优选地移动在第p次迭代处理中划分的所有子块边界(例如,在第p+n 次迭代处理中划分的子块边界如图5A中所示)。然后,涡轮并行译码设备继续进行剩余的迭代处理。图5B详细描述了根据本发明的第二实施例的涡轮并 行译码方法的流程。
图8示出了传统的OL或SBI中在一次迭代处理中计算前向变量a,. O)和 后向变量A ("的子块边界位置。图9示出了根据本发明的第二实施例的例子、
在两次迭代处理之间的子块边界变化。
假设,图8中的《和《+1是第q个子块在第p次迭代期间的边界位置,即
前向计算的起始点和后向计算的起始点,起始点为与前子块重叠的起点。具 体地,假设计算第q个子块的前向变量^(力的起始点为《,其中,第l个子
块的前向变量a,O)的起始点为1,且第Q个子块的前向变量^Cs)的起始点 为《。同理,计算第q个子块的后向变量A("的起始点为Z^,其中,第1
个子块的后向变量"'(力的起始点为《,且第Q个子块的后向变量A (s)的起
始点为N。在第1次迭代译码之前,对于处理a,第一个子块短,之后为等
长子块。对于P,则相反。且处理a和处理p是独立的,因此其边界可以不
同。然而这些起始点在传统的OL或SBI机制中是不变的。
参照图9。根据本发明的实施例,子块之间相互重叠的长度为L,子块有
效数据部分长度为M,且假设在第2次迭代过程中用A的移动量移动了在第
1次迭代过程中的每个子块的边界。因此,在第1次迭代过程中, 《=(q-l)M+(q-2)L+l,且《+,q(M+L), 2《q《Q-l,且在第2次迭代过程中,
《=(q-l)M+(q-2)L+l_A ,且《,q(M+L) -△ , 2《q《Q-l 。在替换的实施例
中,在第l次迭代过程中,《=(q-l)M-L+l, 2《q《Q-l,且在第2次迭代过
程中,《=(q-l)M-L+l—△, 2《q《Q-l。当然,图9中的示意仅是示例,在
本发明中,可以在相邻的迭代过程中移动子块边界,也可以隔一个或多个迭 代过程来移动子块边界;在移动时,可以仅移动一个或少量子块边界,也可 以移动所有子块边界;在移动时,可以移动不固定的步长,即A不固定,也 可以移动固定的步长,即A固定。如果在第1次迭代处理之后每次迭代处理 都用固定的移动量A来移动所有子块的边界,则《^q-l)M+(q-2)L+l-△
(p-l),且6二 =q(M+L) — △ (p-l) , 2<q《Q-l。在替换实施例中,则 《=(q-l)M-L+l-A(p-1), 2<q《Q-l。注意,上述起始点^又为示例,在实际
中,由于码字的长度、L和M的取值的不同,起始点的表达式也不同。本领 域技术人员根据本说明书的教导,可以对起始点的表达式进行各种修改和变 换,只要在不同的迭代译码处理中适当移动边界的位置,都可以实现本发明
13的目的。
在传统的涡轮码并行译码设备中,性能的恶化通常来自于在子块的译码
开始点处的不准确的初始条件。在传统的使用OL方法的并行译码机制中, 在子块的重叠部分的起始位置处的初始条件是随机或任意设置的。即使在译 码子块的有效数据部分之前,通过重叠长度L的计算结果得到了该子块的有 效数据部分的边界的近似初始条件,但由于在每次迭代译码处理时码字被划 分的子块边界的位置不变,因此不准确的软输出仍然发生在相同的边界位置 上,为了消除每次迭代中偏差的累积效果所造成的性能恶化,传统的OL必 须使用比较长的重叠长度L。而通过上述本发明的第二实施例,利用先计算 子块的重叠部分的变量的方法来得到子块的有效数据部分起始点处的近似初 始条件,在进行了一次或多次迭代译码处理之后,该边界移动装置53相对于 之前的一次迭代处理中划分的子块边界来移动一个或多个子块边界,使得该 子块的译码开始点处近似的初始条件导致的不准确的软输出结果被分布在不 同的位置上,且这种不准确的影响不会积累,因此,可以进一步改进最终的 译码性能。
当然,在本发明的第二实施例的教导下,本领域技术人员可以想象,如 果设置从第1次迭代处理开始,每次迭代处理之前都移动子块边界的位置(例 如11=1),和/或在移动时移动所有子块边界的位置,将得到更好的译码性能。 本领域技术人员也可以考虑将每次移动一个或多个边界位置的移动量A设定 为固定的步长,以便更简单地进行硬件或软件配置。
图6A、 6B是描述根据本发明的第三实施例的涡轮并行译码设备的示意 图和涡轮并行译码方法的流程图。
如图6A,本发明的第三实施例的涡轮并行译码设备包括包括了重叠装 置601的码字划分装置61、涡轮译码装置62、边界移动装置63、和存储装 置64。码字划分装置61通过其中的重叠装置601将码字划分为彼此重叠的Q 个子块(Q是正整数,Q>1),其中,保持子块的有效数据部分长度M不变, 中间的子块(例如,第q个子块,2<q《Q_l)与前一个子块(例如,第q-l 个子)和后一个子块(例如,第q+l个子块)相互重叠的长度为L (L>0)。 涡轮译码装置62中包括Q个子译码器(未示出),从而对这Q个子块并行进 行i奪码处理。在涡轮译码装置62中对这Q个子块进行最大Imax次迭代译码处 理,假设进行了 P次迭代处理(P是正整数,且P〉1)。其中,假设在涡轮并行译码设备进行了第p次迭代处理时(p是正整数,且1《p<P ),码字被划分
之后的子块边界如图6A所示。在进行第p+n次迭代处理之前(n是正整数, 且1《n《P-p),边界移动装置63移动在第p次迭代处理中划分的多个子块 边界中的至少一个,优选地移动在第p次迭代处理中划分的所有子块边界(例 如,在第p+n次迭代处理中划分的子块边界如图6A中所示)。然后,涡轮并 行译码设备继续进行剩余的迭代处理。
另外,在每次迭代处理过程中,都可以采用一种对上述SBI方法改进的 存储索引(store index)的机制(以下称为SI机制)来以更少的比特存储边 界信息。这种SI机制可以被施加于任何涡轮并行译码方法,例如传统的直接 并行译码方法、OL并行译码方法、根据本发明的第一实施例或第二实施例的 并行译码方法等,来进一步减少存储边界信息所需的存储器的容量。
通过图7来详细描述了根据本发明的第三实施例的、在利用了 OL机制 的情况下的这种OL+SI机制(当然也可以单独利用SI机制,而不利用OL机 制)。图7仅示出了计算一个子块的前向变量a"的示例情况,但本发明不局 限于此,而还可以适用于计算后向变量^w。在图7中,该子块的有效数据部 分从k到k+M-l;从k-L到k-l的部分与前一子块重叠。
在第p+l次迭代期间,该计算从位置k-L开始,且使用如下作为初始条

1og(aS"(s)^0
其中^-argmax(log(a20)"是在前一迭代处理的计算结果(例如,第p次
迭代处理)中最可能的状态,即具有最大概率的状态。^,(力表示对第q个 子块的第p+l次迭代译码处理中要在前向处理或后向处理中使用的初始条件 (s)的概率。也就是说,当初始条件(s)为具有最大概率的状态时,初始条件 (s)的可靠度(或概率)为1。如此,根据本发明的第三实施例的存储装置64 可以仅存储该最可能的状态8*的索引,仅需要m比特的容量,而不是SBI中 的2"V比特,其中m是存储一种状态所需的比特数,v是用于量化该变量的 比特数。
或者,在第p+l次迭代期间,该计算从位置k-L开始,且使用如下作为 初始条件J
其中= argmax(log(a2(力))和argmax{log("S(s))}分别是在前一迭代
处理的计算结果(例如,第p次迭代处理)中最可能的状态和第二最可能的 状态,即具有最大概率的状态和具有第二大概率的状态。也就是说,当初始 条件(s)为具有最大概率的状态时,初始条件(s)的可靠度(或概率)为1。当 初始条件(s)不是具有最大概率的状态(s、即S,Z时,其初始条件与具有第
二大概率状态(S,)的可靠度(概率)以及具有最大概率状态(S* )的可靠度
(概率)的比值有关。如此,根据本发明的第三实施例的存储装置64可以仅
存储该最可能的状态8*的索引和指示8*有多可能的可靠度(或可能度)的
1og"2(s') —1oga^( )(或log(0')/0承)〉、或"2("/ 2(^)),仅 需要m+v比特的容量,而不是SBI中的2mv比特,其中m是存储一种状态所 需的比特数,v是用于量化该变量的比特数。这种方式用上述初始条件来替 代现有技术中在位置k-L处随机或任意设置的初始条件,用少量的存储空间 来实现更近似的初始条件。
图6B详细描述了根据本发明的第三实施例的涡轮并行译码方法的流程。
通过上述本发明的第三实施例,用存储装置64中所存储的从前一次迭代 处理获得的初始条件来从子块的重叠部分的起始点(例如k-L )起计算子块的 重叠部分的变量,从而能够得到子块的有效数据部分起始点(例如k)处的 更近似的初始条件,在进行了一次或多次迭代译码处理之后,该边界移动装 置63相对于之前的一次迭代处理中划分的子块边界来移动一个或多个子块 边界,使得该子块的译码开始点处近似的初始条件导致的不准确的软输出结 果被分布在不同的位置上,且不好的影响不会堆积,因此,还可以进一步改 进最终的译码性能。
当然,在本发明的第三实施例的教导下,本领域技术人员可以想象,如 果设置从第1次迭代处理开始,每次迭代处理之前都移动子块边界的位置(例 如11=1),和/或在移动时移动所有子块边界的位置,将得到更好的译码性能。 本领域技术人员也可以考虑将每次移动一个或多个边界位置的移动量A设定 为固定的步长,以便更简单地进行硬件和/或软件配置。
另外,需要注意的是,上述SI机制可以单独应用于传统的并行译码设备
16和方法中,从而利用少量的存储装置容量来得到近似的初始条件。在这种情 况下,只要划分了子块后得知了子块的边界起始点k (例如,不重叠的情况
下的有效数据部分的起始点k、重叠情况下的重叠部分的起始点k-L等),用 k替代上述^^式的k-L,则得到了近似的初始条件。
图10-17是本发明与现有技术的仿真结果的图。该仿真采用在cdma2000 中定义的满轮码,且译码器采用max-log-map ( Max Logarithmic Maximum A Posteriori)算法。交织器长度是N-2014,码率是1/3和3/4。最大迭代次数 为1皿=8。子块的数量是(^=21。移动步长是A二7。
图10是码率为1/3的情况下的(根据本发明的第三实施例的)OL+SI+MB 的机制的仿真帧错误率(Frame Error Rate) (FER)。对于FER二0.01,很小的 重叠长度L二4就接近串行译码(SD)的性能(损失在0.02dB内,图示中横 坐标的单位长度为O.ldB,其他图示相同),其效果几乎等同于传统的方法OL 且很长的重叠长度L42,或SBI所能达到的效果。
图11是码率=3/4的仿真结果。可以看出,很小的重叠长度I^8,就能使 FER性能和SD相比大约只差O.ldB。注意,SI和MB可以单独使用。
图12示出码率=1/3的OL+MB (没有SI)机制在L=8的情况下,和SD 相比,FER=0.01处的性能损失约为0.05dB,而仅传统的OL且L=8的情况下 (即,具有与OL+MB的相同的译码速度和相同的计算复杂度)具有很差的 性能。
图13示出了当L=16时OL+MB的性能,FER=0.01处的性能与SD相差 约为0,2dB。而传统OL在相同的重叠长度下,性能损失超过0.8dB。
图14是1/3码率的仅SI和SI+MB的性能。图15是3/4码率的性能。在 这两种机制(仅SI和SI+MB)中,子块不重叠(L=0)。对于1/3码率,仅 SI和SI+MB的性能与SD相比损失都在O.ldB以内。对于3/4码率,性能损 失分别是0.3dB和0.2dB。在低码率的情况下,SI的性能几乎与SI+MB相同, 也就是说,MB带来的进一步性能改善非常小,这是因为此时SI的性能已经 很好了,可改善的空间很小。因此,对于低码率的情形, 一种可能的设计是 仅使用SI,而不采用重叠(OL)和移动边界(MB)技术。但是对于高码率, MB或少量重叠则纟艮重要。
图16和17表明在很小的重叠(L较小)的情况下,OL+SI已经达到了 较好的性能。具体而言,对于1/3码率,OL+SI且L=4的性能与传统的OL
17且I^32的性能一样好,但前者的速度提高了 20%。
比特错误率(Bit Error Rate) BER的仿真性能(未示出)结果与FER性
能类似。
本发明提出了两种新的机制,存储最可能的状态的索引的SI机制和移动 子块的边界的MB机制。在SI和MB的帮助下,可以大大地减少重叠长度, 因此可以提高译码速度。本领域技术人员可以与现有技术中的OL机制结合, 自由地设计上述机制的组合来满足不同的折衷需求。可能的设计有MB、 OL+MB、 SI+MB、 OL+SI+MB、 SI或OL+SI等,它们具有不同的性能、译 码速度和存储器需求。
本领域技术人员应该理解,在所附权利要求或其等同物的范围内,可以 基于设计需要和其他因素进行各种修改、组合、子组合和变更。
权利要求
1. 一种涡轮码的并行译码数据处理方法,所述方法包括码字划分步骤,用于将整个码字划分为Q个子块以使所述Q个子块中的相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中所述译码处理包括P次迭代译码处理,Q是正整数,且Q>1,P是正整数,且P>1;以及边界移动步骤,用于在第p+n次迭代译码处理之前,以移动量Δ来移动在第p次迭代译码处理中形成的所述多个边界中的至少一个的位置,其中p是正整数,且1≤p<P,n是正整数,且1≤n≤P-p,所述移动量Δ是固定的步长。
2. 根据权利要求1所述的并行译码数据处理方法,所述码字划分步骤还 包括重叠步骤,用于使所述Q个子块中的相邻子块相互重叠,以便所述第q 个子块的有效数据长度M不变,且分别与第q-l个子块和第q+l个子块相互 重叠的长度为L, LX),其中,2<q<Q-l,且q是正整数。
3. 根据权利要求2所述的并行译码数据处理方法,其中在第p次迭代译码处理中第q个子块在前向处理中的起始点与M和q的 乘积以及L与q的乘积有关,而在第p次迭代译码处理中第q个子块在后向 处理中的起始点与M与L之和与q的乘积有关,其中,当在第p+n次迭代译 码处理中移动了所述多个边界的每个,则在第p+n次迭代译码处理中第q个 子块在前向处理中的起始点移动该移动量A,在第p+n次迭代译码处理中第 q个子块在后向处理中的起始点移动该移动量A 。
4. 根据权利要求3所述的并行译码数据处理方法,其中1《q、Q,且q, 是整数,所述方法还包括存储步骤,用于在对第q,个子块的第p,次迭代译码处理中,存储所述第p,次 迭代译码处理的前向处理或后向处理的计算结果中具有最大概率的状态(s* ) 的索引,其中在对第q,个子块的第p,+l次迭代译码处理的前向处理或后向处 理中,当初始条件(s)为具有最大概率的状态时,初始条件(s)的可靠度为1, 其中,p,是正整数,且l《p,〈P。
5. 根据权利要求4所述的并行译码数据处理方法,其中存储步骤还包括当初始条件(s)不是具有最大概率的状态(s"时,即S^Z时,其初始条件与具 有第二大概率状态(S,)的可靠度以及具有最大概率状态(S*)的可靠度的比值有关。
6. —种涡轮码的并行译码数据处理方法,所述方法包括 码字划分步骤,用于将整个码字划分为Q个子块以使所述Q个子块中的相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中所述 译码处理包括P次迭代译码处理,Q是正整数,且Q>1, P是正整数,且P>1; 以及存储步骤,用于在对第q个子块的第p次迭代译码处理中,存储所述第 p次迭代译码处理的前向处理或后向处理的计算结果中具有最大概率的状态 (s*)的索引,并在对第q个子块的第p+l次迭代译码处理的前向处理或后 向处理中,当初始条件(s)为具有最大概率的状态时,初始条件(s)的可靠度为 1,Kq《Q,且q是整数,p是正整数,且Kp〈P。
7. —种涡轮码的并行译码数据处理方法,所述方法包括 码字划分步骤,用于将整个码字划分为Q个子块以使所述Q个子块中的相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中所述 译码处理包括P次迭代译码处理,Q是正整数,且Q>1, P是正整数,且P>1; 以及存储步骤,用于在对第q个子块的第p次迭代译码处理中,存储所述第 p次迭代译码处理的前向处理或后向处理的计算结果中具有最大概率的状态 (s* )的索引,并在对所述第q个子块的第p+l次迭代译码处理的前向处理 或后向处理中,当初始条件(s)为具有最大概率的状态时,初始条件(s)的可靠 度为1,当初始条件(s)不是具有最大概率的状态(s、即s弇s^时,其初始条件 与具有第二大概率状态(s,)的可靠度以及具有最大概率状态(s*)的可靠度 的比值有关。
8. 根据权利要求6或7所述的并行译码数据处理方法,其中所述码字划 分步骤还包括重叠步骤,用于使所述Q个子块中的相邻子块相互重叠,以便所述第q 个子块的有效数据长度M不变,且分别与第q-l个子块和第q+l个子块相互 重叠的长度为L, L》0,其中,2<q《Q-l,且q是正整数。
9. 一种涡轮码的并行译码数据处理设备,所述设备包括码字划分装置,用于将整个码字划分为Q个子块以使所述Q个子块中的 相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中所述 译码处理包括P次迭代译码处理,Q是正整数,且QM, P是正整数,且PM; 以及边界移动装置,用于在第p+n次迭代译码处理之前,以移动量A来移动 在第p次迭代译码处理中形成的所述多个边界中的至少一个的位置,其中p 是正整数,且l《p〈P, n是正整数,且l《n《P-p,所述移动量A是固定的步 长。
10. 根据权利要求9所述的并行译码数据处理设备,所述码字划分装置 还包括重叠装置,用于使所述Q个子块中的相邻子块相互重叠,以便所述第q 个子块的有效数据长度M不变,且分别与第q-l个子块和第q+l个子块相互 重叠的长度为L, L》0,其中,2《q<Q-l,且q是正整数。
11. 根据权利要求IO所述的并行译码数据处理设备,其中在第p次迭代译码处理中第q个子块在前向处理中的起始点与M和q的 乘积以及L与q的乘积有关,而在第p次迭代译码处理中第q个子块在后向 处理中的起始点与M与L之和与q的乘积有关,其中,当在第p+n次迭代译 码处理中移动了所述多个边界的每个,则在第p+n次迭代译码处理中第q个 子块在前向处理中的起始点移动该移动量A,在第p+n次迭代译码处理中第 q个子块在后向处理中的起始点移动该移动量A。
12. 根据权利要求11所述的并行译码数据处理设备,其中l《q,《Q,且 q,是整数,所述设备还包括存储装置,用于在对第q,个子块的第p,次迭代译码处理中,存储所述第 p,次迭代-泽码处理的前向处理或后向处理的计算结果中具有最大概率的状态 (s*)的索引,并在对第q,个子块的第p,+l次迭代译码处理的前向处理或后 向处理中,当初始条件(s)为具有最大概率的状态时,初始条件(s)的可靠度为 1,其中,p,是正整数,且Kp,〈P。
13.根据权利要求12所述的并行译码数据处理设备,其中存储装置还包 括当初始条件(s)不是具有最大概率的状态(s、时,即s^纩时,其初始条件 与具有第二大概率状态(s,)的可靠度以及具有最大概率状态(s*)的可靠度 的比值有关。
14. 一种涡轮码的并行译码设备,所述设备包括并行译码数据处理设备,用于接收输入数据,该并行译码数据处理设备 更包括码字划分装置,用于将整个码字划分为Q个子块以使所述Q个子块 中的相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中 所述译码处理包括P次迭代译码处理,Q是正整数,且Q〉1, P是正整数, 且P〉1;以及边界移动装置,用于在第p+n次迭代译码处理之前,以移动量A来移 动在第p次迭代译码处理中形成的所述多个边界中的至少一个的位置,其中 p是正整数,且l《p〈P, n是正整数,且Kn《P-p,所述移动量A是固定的步长;涡轮译码装置,连接到该并行译码数据处理装置,用于接收译码子块数 据,该涡轮译码装置包括多个解交织器以及多个子译码器,对并行译码数据处理设备产生的译码子块数据进行涡轮译码;以及存储装置,连接到该并行译码数据处理设备以及该涡轮译码装置,用于 存储输入数据以及译码结果。
全文摘要
提供一种涡轮码的并行译码数据处理方法和设备以及并行译码设备,所述方法包括码字划分步骤,用于将整个码字划分为Q个子块以使所述Q个子块中的相邻子块形成多个边界,从而对所述Q个子块并行进行译码处理,其中所述译码处理包括P次迭代译码处理,Q是正整数,且Q>1,P是正整数,且P>1;以及边界移动步骤,用于在第p+n次迭代译码处理之前,以移动量Δ来移动在第p次迭代译码处理中形成的所述多个边界中的至少一个的位置,其中p是正整数,且1≤p<P,n是正整数,且1≤n≤P-p,所述移动量Δ是固定的步长。
文档编号H03M13/29GK101442321SQ200810190658
公开日2009年5月27日 申请日期2008年12月26日 优先权日2007年12月27日
发明者杨鸿文, 杨鸿魁, 乐 王 申请人:美商威睿电通公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1