CN101147327B - 使用篱栅的蝴蝶结构来映射解码的度量计算的方法和装置 - Google Patents

使用篱栅的蝴蝶结构来映射解码的度量计算的方法和装置 Download PDF

Info

Publication number
CN101147327B
CN101147327B CN2006800094731A CN200680009473A CN101147327B CN 101147327 B CN101147327 B CN 101147327B CN 2006800094731 A CN2006800094731 A CN 2006800094731A CN 200680009473 A CN200680009473 A CN 200680009473A CN 101147327 B CN101147327 B CN 101147327B
Authority
CN
China
Prior art keywords
butterfly
state
sepiment
state measurement
tolerance
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.)
Expired - Fee Related
Application number
CN2006800094731A
Other languages
English (en)
Other versions
CN101147327A (zh
Inventor
C·瓦兰登
Original Assignee
MStar Software R&D Shenzhen Ltd
MStar France SAS
MStar Semiconductor Inc Cayman Islands
MStar Semiconductor Inc Taiwan
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 MStar Software R&D Shenzhen Ltd, MStar France SAS, MStar Semiconductor Inc Cayman Islands, MStar Semiconductor Inc Taiwan filed Critical MStar Software R&D Shenzhen Ltd
Publication of CN101147327A publication Critical patent/CN101147327A/zh
Application granted granted Critical
Publication of CN101147327B publication Critical patent/CN101147327B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
    • H03M13/3927Log-Likelihood Ratio [LLR] computation by combination of forward and backward metrics into LLRs
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3961Arrangements of methods for branch or transition metric calculation

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)
  • Dc Digital Transmission (AREA)
  • Inorganic Insulating Materials (AREA)

Abstract

一种对MAP类解码算法的篱栅中的蝴蝶计算分支度量的方法,该方法包括:向蝴蝶中的转换提供初始化的分支度量,并用一组与根据由蝴蝶索引生成的控制信号的所述转换相对应的数据值和一个或多个描述了其操作与篱栅相关的编码设备的抽头位置的多项式以增加该分支度量,其中所述组包含系统位和奇偶校验位值。

Description

使用篱栅的蝴蝶结构来映射解码的度量计算的方法和装置
技术领域
本发明涉及计算与表示即将被复原信号之篱栅相关联的度量的装置和方法。
背景技术
在数字通信系统中,前向纠错(FEC)编码可被用来提高传输链路的可靠性。涡轮编码方案[C.Berrou,A.Glavieux以及P.Thitimajshima于1993年5月在瑞士日内瓦ICC 1993上发表的“逼近香农带限的纠错编码和解码:涡轮码”(Near Shannon Limit Error-Correcting Coding andDecoding),第1064页至第1070页]属于前向纠错密码的范畴,且其现在也被应用在许多通信系统中。例如,第三代移动通信(3GPP)标准即使用涡轮编码来帮助接收机恢复所传输的信息。
涡轮编码从两个(或多个)组成码(参考图1,其描述了由第三代移动通信(3GPP)标准定义的涡轮编码)的并行(或串行)级联构建。该组成码是对称的递归卷积码。对于3GPP涡轮编码,组成码的码率为1/2且制约长度为4。码的位序列被直接传送到第一个组成码,但是在第二个组成码的输入处被交织。一特定的操作模式被用于尾位,以使得两个组成码在传输完成时都以零状态而结束。该操作模式由虚线在图1中示出。
为了以可接受的复杂度对涡轮编码进行解码,通常选择一种递归的解码算法。图2描述了这样一种递归方法。该组成码分别使用两个软输入、软输出(SISO)解码器10及12解码。使用SISO解码器10对第一个组成码的解码所获得的信息被传送到该SISO解码器12处,而且类似地,从SISO解码器12解码第二个组成码获得的信息被用以帮助由SISO解码器10执行的解码处理。
对于第一次解码迭代,对应于对称位的软决策和对应于第一个校验位的软决策被SISO解码器10使用以对第一个组成码进行解码操作。由于通常没有任何信息可供第一次解码迭代操作处理使用,因此在该点没有任何先验信息被使用。该SISO解码器10输出被传输位的对数似然比(LLR),该LLR表明一个“0”或一个“1”已经被传输的可能性。它们被用以帮助由SISO解码器12执行的解码操作。然而,它们不能被直接使用且不需要被处理以使其处于一种适于输入到SISO解码器12的格式。首先,在14处,需要从LLR减去先验信息,虽然应该牢记没有任何先验信息可提供给第一解码迭代使用。这个由LLR和先验信息的差值而形成的数量被称为外在信息,且对应于在传输位上由SISO解码器10产生的信息。而且,这些外部值在16处需要被交织,以复制将被编码的位序列上应用于发射器的交织。由SISO解码器12执行的解码操作使用了由SISO解码器10产生的外在信息、和与该对称位对应的软决策以及与第二校验位对应的软决策。在SISO解码器12的输出处,生成一个新的针对被传输位序列的LLR序列。该LLR被用来计算由SISO解码器12产生的外在信息。在非交织处理操作后,该外在信息可在后续的解码迭代过程中作为一个先验信息而被SISO解码器10使用。该解码处理反复迭代多次以使得由SISO解码器10和12产生的LLR逐渐地被提升。这些对LLR的细化被馈入到不同的SISO解码阶段以使得整个解码算法收敛到一个接近最大事后机率(MAP)解的被传输位的估计序列。在NTCiterations次解码迭代结束处,所估计的传输位的极性会根据LLR的符号而设定。
对SISO解码器10和12内所使用算法的选择是非常重要的,因为它将影响解码性能以及接收器的复杂度。最大-对数-最大事后机率(Max-Log-MAP)算法[W.Koch和A.Baier的时变码间干扰所扰乱的编码数据的最优和次优检测(Optimum and sub-optimum detection of codeddata distributed by time-varying intersymbol interference),GLOBECOM90,第1679页至第1684页,1990年12月]是一种可能能提供很好的性能与复杂度之间权衡的算法。现在将描述其中SISO解码器10和12使用了Max-Log-MAP算法的情形。
图3示出SISO解码器10基于Max-Log-MAP算法的不同处理阶段。也示出了处理阶段中的不同输入和输出信息样本。
图4示出SISO解码器12的不同处理阶段。可以看出该SISO解码器12的大多数处理阶段与SISO解码器10的处理阶段相同。该SISO解码器10和12之间仅有的差异就是交织/非交织被要求用于第二个校验样本的处理过程。
由图3和图4可以看出在其中显示的处理过程可被分解为两个主要阶段,即“前向处理”和“后向处理”。前向处理阶段的结果在后向处理阶段被检索且被组合以得到LLR。同样还可以看出前向和后向计算阶段都包括一个“蝴蝶更新”阶段。
在图3和图4中,为了使接收器的复杂度保持尽可能地低,所有不同的算术计算都在使用不同数字的定点表示的情况下执行。那些不同数位的字长在图3和图4中描述。例如,每一个先验信息样本都使用后验概率(BaPP)位储存。类似地,每一个系统样本和每一个奇偶校验样本都使用Bsd位储存。
为了计算LLR,在前向处理的“蝴蝶更新”阶段中被计算出来的路径度量与在后向处理中产生的路径度量相结合。因此,在前向处理中产生的路径度量需要被储存在缓冲器中直至其被后向处理阶段所使用。为了使接收器的复杂度保持尽可能地低,最小化该缓冲器的大小是非常重要的。储存在前向处理过程中计算的路径度量所需的存储器位数随以下线性增加(1)要解码的位数,也称为码组长度,(2)表示组成码的篱栅内的状态数,以及(3)准确地表示每个路径度量的位数。篱栅内的状态数根据由发射器施加的代码的结构定义,并且因此不会被改变以减少接收器存储器的需求量。为了减少码组长度对存储器需求量的影响,使用运行在所接收信号上的窗口而不是整个信号序列[使用滑动窗口算法针对3GPP标准进行涡轮解码器的性能分析(Performance analysis ofTurbo decoder for 3GPP standard using the sliding window algorithm),M.Marandian,J.Fridman,Z.Zvonar,M.Salehi,PIMRC 2001]之上的解码技术是有可能的。最后,准确地表示路径度量计算结果所需的位数应该保持尽可能地低。
现在将更详细地描述该SISO解码器10的操作。虽然当然需要考虑奇偶校验样本的交织,但很明显该SISO解码器12在很多地方以相同方法操作。
在发射器这一端,每个信息位xk被编码以产生一个奇偶校验样本zk,它是与xk一起输出的。图1和图5描述了位zk是如何产生的。图5中的篱栅状态对应于图1中所示的编码器内存储单元的状态(在这种情况下,存储单元的最近内容对应于以图5中二进制格式呈现的状态索引的最低有效位(LSB))。在编码操作后,然后传输N组样本 { x k , z k } k ∈ { 1 , . . . , N } = R 1 N (N是码组的长度)。
在接收器一端,首先产生对所传输的编码样本
Figure DEST_PATH_GA20188368200680009473101D00042
的估计。涡轮解码体系结构的目标就是产生不同传输位的LLR。第k个位的似然比可被表示为:
λ k = P ( x k = 1 | R 1 N ) P ( x k = 0 | R 1 N )
所提议的涡轮解码体系结构产生了似然比对数值的比例估计:
λ ~ k = log ( λ k ) L c
参数Lc的值随着传输链路的质量而变化,且可被假设为对于整个传输码组固定不变。
不同传输位的LLR估计通过迭代多次图3和图4中示出的处理阶段而产生。不同阶段中的解码操作通过更新正在被传输位的先验信息Lak I而被改进。该先验信息由下式给出:
La k I = log ( P ( x k = 1 ) P ( x k = 0 ) )
其中I是迭代的次数。
现在将描述执行针对图3和图4所示不同处理阶段的各种计算。
针对篱栅内对应于信息位xk的不同状态的M个前向路径度量, α ‾ k m | m ∈ { 1 , . . . , M } 使用被接收的样本
Figure DEST_PATH_GA20188368200680009473101D00047
来计算,而与信息位xk-1相关联的路径度量则使用下面的公式计算:
Figure DEST_PATH_GA20188368200680009473101D00048
B(j,m)表示从前面分支上对应于输入j的状态m及时回滚的篱栅状态,而cj,B(j,m)表示对应于从B(j,m)导向状态m的转换的校验位。
从上面的公式可以看出整个码组(或者窗口,如果窗口技术正被使用的话)的不同路径度量可通过按k的升序处理接收样本而产生。同样,由图5可以看出,该处理并不需要针对每个状态单独地执行。纵观整个篱栅,两个终止状态(时间k+1处的状态)总是与相同的两个起始状态(时间k处的状态)相关联。因此该处理使用一个双状态-双状态连接来执行。这就是该处理过程被称为前向“蝴蝶更新”的原因。
不同状态的不同度量以及码组(或者是窗口,如果窗口技术正被使用的话)内的所有信息位需要被储存,以使其能够与后向计算相组合以产生不同的LLR。
后向“蝴蝶更新”计算与前向“蝴蝶更新”阶段过程中所执行的计算非常类似。针对篱栅内对应于信息位xk的不同状态的M个后向路径度量, β ‾ k m | m ∈ { 1 , . . . , M } 使用所接收的样本
Figure DEST_PATH_GA20188368200680009473101D00052
计算,而与信息位xk+1相关联的路径度量使用下面的公式来计算:
Figure DEST_PATH_GA20188368200680009473101D00053
F(j,m)表示从分支上对应于输入j的状态m及时向前的篱栅状态,且cj,F(j,m)表示与从状态F(j,m)导向状态m的转换相关联的校验位。
一些在后向路径度量的产生过程中创建的中间值被保持,以使其在前向计算和后向计算被组合在一起以产生LLR时可被使用。那些中间值可使用下面的公式计算:
Figure DEST_PATH_GA20188368200680009473101D00056
Figure DEST_PATH_GA20188368200680009473101D00057
代表对信息位j以篱栅状态m终止的后向度量。
后向“蝴蝶更新”计算可使用那些中间变量并利用下面的公式被简单地表达出来:
β ~ k m = max j ∈ { 0,1 } ( γ ~ k j , m )
对于每个信息位xk,当前的后向“蝴蝶更新”计算的结果与所储存的前向路径度量组合在一起以使得LLR可使用下面的公式计算:
λ ~ k = max m ∈ { 1 , . . . , M } ( α ~ k m + γ ~ k 1 , m ) - max m ∈ { 1 , . . . , M } ( α ~ k m + γ ~ k 0 , m )
在下一次解码迭代过程中要使用的信息位xk的先验信息使用LLR、系统样本和当前先验信息并根据下面的公式计算:
注意最后一次解码迭代过程中,该计算不需要被执行。对传输位的决策可使用LLR直接执行。
发明内容
根据一方面,本发明提供了一种为最大事后机率(MAP)类型解码算法篱栅中的蝴蝶计算分支度量的方法,该方法包括:为蝴蝶中的转换提供初始化的分支度量,并用与根据由该蝴蝶索引所生成控制信号的所述转换相对应的一组数据值和一个或多个多项式以增加分支度量,该多项式描述了一编码设备的抽头位置,而该编码设备的操作与篱栅相关,,其中所述组包括系统位和奇偶校验位值。
本发明同样也包含用于为最大事后机率类型解码算法的篱栅中的蝴蝶计算分支度量的装置,该装置包括:为蝴蝶中的转换提供初始化的分支度量的装置,以及用与根据由蝴蝶索引生成的控制信号的所述转换相对应的一组数据值和一个或多个多项式以增加分支度量的装置,该多项式描述一编码设备的抽头位置,而该编码设备的操作与篱栅相关,其中所述组包括系统位和奇偶校验位值。
本发明同时也涉及更新一篱栅中状态度量的方法和装置。
所提议的发明并不局限于使用最大-对数-最大事后机率(Max-Log-MAP)算法的涡轮解码的应用领域。本发明可基于MAP算法或MAP算法的推导版本用于使用了任一涡轮解码体系结构的接收器。
本发明可用于使用了窗口技术的涡轮解码接收器和没有使用窗口技术的涡轮解码接收器。
本发明可用硬件、处理器上的软件,或者它们的组合实现。
附图说明
仅作为示例,现在将参照附图描述本发明的某些实施例,在附图中:
图1示出源于3GPP标准的涡轮编码机制。
图2示出一种迭代涡轮解码算法的组件。
图3示出对图1的第一组成码进行解码操作的解码阶段。
图4示出对图1的第二组成码进行解码操作的解码阶段。
图5示出传输信息位与由3GPP所指定涡轮编码的编码位之间的关系。
图6描述了根据本发明的一个实施例在涡轮解码器中前向“蝴蝶更新”处理过程中所执行的计算操作。
图7描述了根据本发明的一个实施例在涡轮解码器中前向和反向“蝴蝶更新”处理过程中所执行的计算操作。
图8示出根据本发明的一个实施例执行以在涡轮编码器中产生一LLR值的计算操作。
图9描述了根据本发明的一个实施例在一涡轮解码器中计算源于LLR值的先验信息的计算操作。
图10以一移动电话简单描述实际之范例。
具体实施方式
对构成所提议发明的一部分的不同方法的描述将会针对在3GPP标准中定义的涡轮编码进行。但是,注意到所提议的技术可被应用到任何涡轮码(例如组成码的数量并不限于等于2,同时其制约长度并不限于4)。
现在将描述一个与前向路径度量
Figure DEST_PATH_GA20188368200680009473101D00071
、后向路径度量
Figure DEST_PATH_GA20188368200680009473101D00072
、以及图1的涡轮解码器的SISO解码器10的LLR的计算相关的本发明实施例。很明显,下面的描述可通过微小的调整适于考虑发生在涡轮编码器的组成编码器之间的交织,以便于描述SISO解码器12的操作。
可对图5中示出的篱栅结构进行一些观察,该篱栅结构经回忆是有关图1中组成编码器的两者之一。显示在图5中的四个蝴蝶可从顶部开始编号为0到3。这种蝴蝶的编号方法常常称为蝴蝶索引。例如,第三个蝴蝶的蝴蝶索引为2,其在二进制里为10。如果该二进制数被加上前缀1或0,那么蝴蝶的起始状态就会被产生。另一方面,如果该二进制数被加上后缀1或0,该蝴蝶的终止状态被产生。令b表示蝴蝶索引。在这种情况下,从图5可以看出对于每一个蝴蝶b,起始状态对
Figure DEST_PATH_GA20188368200680009473101D00073
连接到终止状态对{(b×2),(b×2)+1}。这就是该处理过程可被划分成两个状态对的原因。
非常重要的是,注意一个给定蝴蝶中的给定连接和另一个蝴蝶中的相同连接并不相关于同一信息位和奇偶校验位值对的传输。在图5中,由该转换传输的奇偶校验位被显示在定位于传输上的框中。而且,虚线转换的指示表示该转换对应于一个信息位为0的传输,同时实线转换的指示表示该转换对应于一个信息位为1的传输。例如,在前两个蝴蝶(也就是b等于0或1)中,从起始状态b到终止状态b×2的连接和其值为0的信息位相关联。另一方面,对于篱栅中的后两个蝴蝶,相同的状态连接与其值为1的信息位相关联。状态转换与整个篱栅上的相同信息位不相关联的事实是特定于递归码(非递归卷积码具有相同的蝴蝶)并且使得蝴蝶的处理过程的实现复杂化。
由图5还可以看出代码结构提供了有关被编码样本的奇偶位的信息。对于一给定的终止状态,导致了该状态的转换的奇偶校验位总是不同的。类似地,对于一给定的起始状态,从该状态转移的转换的奇偶校验位也总是不同的。
与图5里每个蝴蝶中的上层水平转换相关联的信息位χ由图1的组成编码器的配置所确定。该信息位χ因此将满足公式:
B(χ,2b)=b
其中b是正被讨论的蝴蝶的蝴蝶索引。
然后,将前向度量计算表示为如下公式是有可能的:
Figure S06809473120070927D000081
因此也消除了从前向度量计算处计算函数B的需要。
蝴蝶内部的对称性然后可被使用以对每个蝴蝶中的其它终止状态执行相应的计算,如下:
Figure S06809473120070927D000082
例如,对于
Figure S06809473120070927D000083
蝴蝶的b=0,χ=0且cx,0=0,对于
Figure S06809473120070927D000084
蝴蝶的χ=1且cχ,0,=1。
以类似的方式,
Figure S06809473120070927D000085
Figure S06809473120070927D000086
其中χ此时满足等式:
F(χ,b)=2b
很明显,上面针对
Figure S06809473120070927D000087
的等式独立于函数F。上面针对
Figure S06809473120070927D000088
Figure S06809473120070927D000089
Figure S06809473120070927D0000810
Figure S06809473120070927D0000811
给出的公式结构的共同点可被应用到解码器10的实现过程中,如现在将参考图6至图9要解释的。
图6描述了如何执行前向“蝴蝶更新”计算。在图6中,与图3和图4一样,不同输入和输出位的字长都被表示出来。同样,二进制字和从左到右增加的位权有效性一起被显示出来。例如,蝴蝶索引的位b0比位b1更有效。
图6阐明了前向度量是如何针对单一蝴蝶而更新的;可以理解,图6中所显示的操作对其它蝴蝶的每一个简单重复。当前所处理的蝴蝶索引18被取回。该蝴蝶索引18包含两个位b1和b0,后者是最高有效位。在图5的蝴蝶0的情况下,b0和b1为00。通过将一个1以及可替换地一个0附加到蝴蝶索引的最高有效端在步骤20再生蝴蝶的起始状态。因此,所生成的起始状态为0,b0,b1以及1,b0,b1,其一般在22处示出。以类似的方式,蝴蝶的终止状态通过将一个0以及可替换地一个1附加到蝴蝶索引的最低有效端在操作26中从蝴蝶索引18再生。因此,所生成的终止状态一般在24处被示为24,b0,b1,0和b0,b1,1。从蝴蝶索引18再生的起始状态然后被用来从存储器取回前向路径度量以供修改,而终止状态被用来将经修改的路径度量写回到存储器中正确的位置。与起始状态相关联的路径度量被储存在一个单一的m×Bpm位的存储单元中。通过将所有的路径度量储存在一个字中而不是每个度量使用Bpm位的m个字,所需要的存储器存取数减少。一旦路径度量字30已经被取回,从蝴蝶索引18再生的起始状态24被用于从路径度量字30提取蝴蝶的上起始状态32以及下起始状态34。在其中蝴蝶索引为0的情况下,路径度量32处于状态0,并且路径度量34处于状态4。现在将描述与路径度量32和34算术组合的值的产生。
除了当前正在处理的指定蝴蝶的起始和终止状态,蝴蝶索引18也分别与操作40和42中的回馈多项式36和前向多项式38相组合。该回馈多项式36描述了现在正被执行解码操作的涡轮编码方案的组成编码器中回馈抽头的位置。同样地,该前向多项式描述了组成编码器中前馈抽头的位置。图1的组成编码器具有相同的结构以使得单一的前向多项式38和单一的回馈多项式36描述两个编码器。在这些多项式内,每一个位对应于相邻延迟组件D(也就是,由多项式描述的连接不包含延迟组件D的线端处的连接)之间的抽头位置,其中1表示一活动抽头,而0则表示不活动抽头。因此,显示在图1中的编码器的前向和逆向多项式分别是10和01。
在操作40和42中,蝴蝶索引与回馈和前向多项式36和38的相应之一被组合到逐位异或操作里。由操作40产生的字r0,r1位然后相互异或从而产生位i0。类似地,由操作42产生的字f0,f1的位相互异或从而产生位i1。位i0和i1被用作处理步骤44的控制输入。
处理步骤44将值
Figure S06809473120070927D000101
Figure S06809473120070927D000102
作为数据输入。前面一个值具有Bsd长度的位而后者有Bapp加1长度的位。处理步骤44分配要与路径度量32和34组合在一起的分支度量值。在处理步骤44中,作为初始步骤两个参数BM[0]和BM[1]都被设置为零。然后,BM[i0]被增加值
Figure S06809473120070927D000103
。最后,参数BM[i1]被增加值
Figure S06809473120070927D000104
由处理步骤44产生的参数BM[0]和BM[1]的值现在代表要与取回的前向路径度量32及34组合在一起的分支度量。因为要求储存样本和先验信息总和的位数大于或等于用于奇偶样本
Figure S06809473120070927D000106
的位数(也就是Bapp>Bsd),所以分支度量预留为Bapp加上2位。
由处理步骤44产生的分支度量BM[0]分别与在操作46及48中取回的路径度量32及34相组合。同样,由处理步骤44产生的分支度量BM[1]分别与操作50及52中取回的路径度量32及34相组合。实质上,在操作46至52的每一个中都会发生相同的操作。在那些操作的每一个里,所取回的路径度量被加到分支度量,并且该结果被限制到Bpm位长度,如果另外加法结果使用了Bpm位超过可达到的最大值,那么该Bpm位长度将导致饱和。然后操作54选择由处理步骤46和52产生的最大值,而操作56选择由处理步骤48和50产生的最大值。由操作54选择的值是当前蝴蝶的上部终止状态的路径度量58,而由操作56选择的值是当前蝴蝶的下部终止状态的路径度量60。例如,如果蝴蝶索引是1,那么路径度量58就属于状态2而路径度量60属于篱栅状态3。路径度量58和60会在如所计算的终止状态24所规定的正确时刻-时间索引k+1被写入到一路径度量字62中。当时间索引k的所有的蝴蝶都已经被处理时,路径度量字62就被写回到存储器。就像路径度量字30一样,路径度量字62的长度为Bpm×m位,并包含级联配置中时间索引k+1处篱栅状态的所有前向路径度量。
图7示出了图6中阐明的方案如何被调整以计算反向路径度量以及前向路径度量。在图7中,图6的组件保留相同的参考标号。
在图7中,当正在计算后向路径度量时,从蝴蝶18再生的状态对22及24被简单地分别用来描述当前蝴蝶的终止状态和起始状态。否则,状态对22被视为起始状态,而状态对24被视为当前蝴蝶的终止状态以实现前向度量计算。同样也应注意的是,当显示在图7中的方案被用来计算后向度量时,那么字30就代表了从时间索引k+1开始的后向路径度量,字62代表时间索引k的后向路径度量,度量32及34是当前后向路径度量蝴蝶的上部和下部起始状态度量,而度量58和60是该蝴蝶的上部和下部终止状态度量。将认识到的是操作46及52的输出代表了在前面已经呈现的等式中使用的γ:
β ~ k m = max J ∈ { 0.1 } ( γ ~ k J , m )
因此,操作46,52,50和48的输出已被标记为
Figure S06809473120070927D000112
图8阐明了图7中所示的前向和反向度量计算方案是如何被应用于计算LLR的。作为LLR产生过程中的初始步骤,图7的方案被用来产生当前码组中所有篱栅阶段的前向路径度量将把其存入存储器中。然后,该码组使用显示在图7中的方案重新处理以产生后向路径度量。在产生篱栅的一给定阶段处一给定蝴蝶的终止状态的后向路径度量的过程中,生成
Figure S06809473120070927D000114
这四个值。这些γ的值必须与当前后向度量计算蝴蝶的终止状态的前向度量组合在一起以便于产生LLR。如前所述,LLR由下面这个方程式提供:
λ ~ k = max m ∈ { 1 , . . . , M } ( α ~ k m + γ ~ k 1 , m ) - max m ∈ { 1 , . . . , M } ( α ~ k m + γ ~ k 0 , m )
由于γ值可用来产生进行中的LLR,同时由于篱栅的阶段k+l的后向路径度量仅仅被要求产生篱栅的阶段k的后向路径度量,因此没有必要提供后向路径度量的长期储存。一给定阶段的后向路径度量仅仅需要保留足够长时间以完成后续阶段的后向路径度量的计算。因此,在图7中,路径度量字62在其完成时能被写回路径度量字30被取回的存储单元。
在图8中,图6和图7的组件保留相同的参考标号。在图8中,图7中显示的在一后向度量计算过程中针对篱栅给定阶段的指定蝴蝶产生值
Figure S06809473120070927D000121
的处理过程被表示为64。该处理步骤64向篱栅的每个阶段中所处理的每个蝴蝶输出一组新的从
Figure S06809473120070927D000123
Figure S06809473120070927D000124
的值。
为了针对当前正在处理的后向度量蝴蝶的终止状态的篱栅阶段计算LLR,先前针对该阶段计算出来的前向路径度量字66被取回。在操作68中,两个路径度量70及72从前向路径度量字66处取回。路径度量70及72分别是当前处理步骤64对象的后向路径度量蝴蝶的上部和下部终止状态的前向路径度量。操作68使用由处理步骤64从当前蝴蝶的蝴蝶索引产生的状态对22选择度量70和72(参见图7)。
前向路径度量70被用在操作74和76中,而前向路径度量72则被用在操作78和80中。实质上,操作74至80的每一个都是相同的,并包括前向路径度量70及72之一与值
Figure S06809473120070927D000125
Figure S06809473120070927D000126
之一的加法运算。在操作74至80的每一个中,加法运算结果的字长都被限制为等于用于前向路径度量70及72的字长,也就是Bpm位。如果由操作74至80的任一个产生的结果超过所允许的Bpm位,那么该结果就会饱和为使用Bpm位可供使用的最大结果。
分配给操作74至80的值
Figure S06809473120070927D000127
Figure S06809473120070927D000128
由一开关操作82控制。该开关操作82由信号i0控制,该信号i0是在处理步骤64中从蝴蝶索引18和回馈多项式36的当前值(参考图6或图7)而产生。如果信号i0位的值为0,那么
Figure S06809473120070927D000129
Figure S06809473120070927D0001210
的值会被分别提供给操作74,76,80和78。另一方面,如果信号位i0的值为1,那么
Figure S06809473120070927D0001211
Figure S06809473120070927D0001212
的值会被分别提供给操作74,76,78和80。在由处理步骤64处理给定篱栅阶段的过程中,操作74至80中的每一个将产生4个结果,每一个结果对应于一个蝴蝶。操作84标识由操作74和78产生的M的最大值,而操作86标识由操作76和80产生的M的最大值。最后,在操作88中,由操作84和86标识的两个最大值之间的差异被计算以向当前篱栅阶段提供一个LLR值。
图9显示了LLRs如何能被用来更新将在解码过程中下一次迭代I+1中使用的先验信息。如图9中所显示的,当前篱栅阶段的LLR从系统样本
Figure S06809473120070927D0001213
和当前先验信息的和中减去。该减法操作的结果然后经过非线性定标以产生下一次迭代的先验信息,
Figure S06809473120070927D0001215
前述实施例已经按照相关操作和处理过程被详细描述。然而,可以理解的是,这些操作和处理过程可通过例如专用集成电路(ASIC)的专用硬件或带有适当软件的通用数据处理器实现。图10示出了前面的示例并示出一移动电话90。由移动电话90的天线92接收到的信号经历射频部分94中的下变频转换、放大、以及模数转换。该信号同样也被多路补偿单元96处理,该单元可具有例如均衡器或耙状接收器的形式。前端计算机(FEC)部分98包括一个被安排执行参考图6至图9描述的操作和处理过程的专用集成电路(ASIC),该部分98对信号进行操作以执行涡轮解码操作。FEC部分98的输出然后被置入电话内其它任何地方以方便使用,例如重构音频信号或视频信号以呈现给用户。对于本领域技术人员而言很明显的是:为简洁起见,图10仅仅给出了一个简单的纵览,由于这样的信息对于在示例上下文里设置图6至图9的处理技术的简单目标是没有必要的,所以电话90的操作的许多细节都被略去。

Claims (16)

1.一种对MAP类解码算法篱栅中的蝴蝶计算分支度量的方法,所述方法包括:向所述蝴蝶中的转换提供初始化的分支度量;以及用与根据蝴蝶索引生成的控制信号的所述转换相对应的一组数据值,和一个或多个多项式以增加分支度量,该多项式描述一编码设备的抽头位置,而该编码设备的操作与篱栅相关,其中所述组包含系统位和奇偶校验位值。
2.如权利要求1所述的方法,其特征在于,所述组包含一先验信息值。
3.如权利要求1或2所述的方法,其特征在于,存在描述了所述抽头位置的前向和回馈多项式,而且所述前向和回馈多项式被用于该控制信号的导出过程中。
4.一种对篱栅计算状态度量的方法,所述方法包括;对篱栅中至少一个蝴蝶的每一个,通过篱栅在第一方向中由第一状态度量更新处理操作计算第一状态度量,所述第一状态度量更新处理操作包括使用权利要求1、2或3所述的方法对所述蝴蝶计算分支度量。
5.如权利要求4所述的方法,其特征在于,所述第一状态度量更新处理操作进一步包括,根据相应的蝴蝶索引为至少一个蝴蝶再生起始和终止状态。
6.如权利要求4或第5所述的方法,进一步包括:对篱栅中至少一个蝴蝶的每一个,通过篱栅在与所述第一方向相反的第二方向中由第二状态度量更新处理操作计算第二状态度量,所述第二状态度量更新处理操作包括使用权利要求1、2或3中所述的方法计算所述蝴蝶的分支度量。
7.如权利要求6所述的方法,其特征在于,所述第二状态度量更新处理操作进一步包括,根据相应的蝴蝶索引为至少一个蝴蝶再生起始和终止状态。
8.如权利要求7所述的方法,其特征在于,对至少一个蝴蝶的每一个,所述第二状态度量更新处理操作包括:将所述蝴蝶的分支度量组合到所述蝴蝶起始状态的第二状态度量,以产生所述蝴蝶终止状态的第二状态度量的备选度量以及选择备选度量以变成所述蝴蝶终止状态的第二状态度量,而且该方法进一步包括:对至少一个篱栅阶段的每一个,将所述阶段的备选度量组合到所述阶段的第一状态度量,作为为所述阶段生成一对数似然比的步骤。
9.一种对MAP类解码算法的篱栅中的蝴蝶计算分支度量的装置,所述装置包括:为所述蝴蝶中的转换提供初始化分支度量的装置;以及用与根据由所述蝴蝶索引生成的控制信号的所述转换相对应的一组数据值,和一个或多个多项式以增加分支度量的装置,该多项式描述一编码设备的抽头位置,而该编码设备的操作与篱栅相关,其中所述组包含系统位和奇偶校验位值。
10.如权利要求9所述的装置,其特征在于,所述组包含一个先验信息值。
11.如权利要求9或10所述的装置,其特征在于,存在描述所述抽头位置的前向和回馈多项式,而且所述前向和回馈多项式被用于所述控制信号的导出过程中。
12.一种对篱栅计算状态度量的装置,所述装置包括:通过篱栅在第一方向计算第一状态度量的装置,以及如权利要求10、11或12中的任一项所述为所述第一状态度量计算装置计算分支度量的装置。
13.如权利要求12所述的装置,其特征在于,所述第一状态度量计算装置被安排成,从相应的蝴蝶索引,为至少一个蝴蝶再生起始和终止状态。
14.如权利要求12或13所述的装置,进一步包括:通过篱栅在与第一方向相反的第二方向计算第二状态度量的装置,以及如权利要求9、10或11中的任一项所述为所述第二状态度量计算装置计算分支度量的装置。
15.如权利要求14所述的装置,其特征在于,所述第二状态度量计算装置被安排成从相应的蝴蝶索引为至少一个蝴蝶再生起始和终止状态。
16.如权利要求15所述的装置,其特征在于,所述第二状态度量计算装置被安排成对至少一个蝴蝶的每一个,将所述蝴蝶的分支度量组合到所述蝴蝶的起始状态的第二状态度量以对所述蝴蝶的终止状态的第二状态度量生成备选度量,并选择备选度量以变为所述蝴蝶的终止状态的第二状态度量,并且所述装置进一步包括对至少一个篱栅阶段的每一个,将所述阶段的备选度量组合到所述阶段的第一状态度量,作为生成所述阶段的一对数似然比的步骤。
CN2006800094731A 2005-03-03 2006-02-24 使用篱栅的蝴蝶结构来映射解码的度量计算的方法和装置 Expired - Fee Related CN101147327B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0504483.9 2005-03-03
GBGB0504483.9A GB0504483D0 (en) 2005-03-03 2005-03-03 Trellis calculations
PCT/GB2006/000652 WO2006092564A1 (en) 2005-03-03 2006-02-24 Metric calculations for map decoding using the butterfly structure of the trellis

Publications (2)

Publication Number Publication Date
CN101147327A CN101147327A (zh) 2008-03-19
CN101147327B true CN101147327B (zh) 2010-07-14

Family

ID=34451797

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800094731A Expired - Fee Related CN101147327B (zh) 2005-03-03 2006-02-24 使用篱栅的蝴蝶结构来映射解码的度量计算的方法和装置

Country Status (10)

Country Link
US (1) US8230307B2 (zh)
EP (1) EP1859532B1 (zh)
JP (1) JP5075642B2 (zh)
KR (1) KR101051933B1 (zh)
CN (1) CN101147327B (zh)
AT (1) ATE508534T1 (zh)
DE (1) DE602006021716D1 (zh)
GB (1) GB0504483D0 (zh)
TW (1) TWI346463B (zh)
WO (1) WO2006092564A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0804206D0 (en) * 2008-03-06 2008-04-16 Altera Corp Resource sharing in decoder architectures
US8086940B2 (en) * 2008-04-28 2011-12-27 Newport Media, Inc. Iterative decoding between turbo and RS decoders for improving bit error rate and packet error rate
US8578255B1 (en) 2008-12-19 2013-11-05 Altera Corporation Priming of metrics used by convolutional decoders
EP2302811B1 (en) * 2009-08-18 2013-03-27 Telefonaktiebolaget L M Ericsson (Publ) Soft output viterbi algorithm method and decoder
US8539325B2 (en) * 2009-12-18 2013-09-17 Electronics And Telecommunications Research Institute Parity generating apparatus and map apparatus for turbo decoding
US10333561B2 (en) * 2015-01-26 2019-06-25 Northrop Grumman Systems Corporation Iterative equalization using non-linear models in a soft-input soft-output trellis
GB2563419B (en) * 2017-06-15 2020-04-22 Accelercomm Ltd Polar decoder, communication unit, integrated circuit and method therefor

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1211366A (zh) * 1995-12-27 1999-03-17 艾利森公司 利用变数残存路径的码元解码方法和装置
CN1476176A (zh) * 2002-08-14 2004-02-18 联发科技股份有限公司 维特比解码器的解码电路与方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128765A (en) * 1998-08-20 2000-10-03 General Electric Company Maximum A posterior estimator with fast sigma calculator
EP1024604A3 (en) 1999-01-29 2000-12-13 Texas Instruments Incorporated Flexible viterbi decoder for wireless applications
EP1128560B1 (en) * 2000-02-21 2004-01-28 Motorola, Inc. Apparatus and method for performing SISO decoding
US7242726B2 (en) * 2000-09-12 2007-07-10 Broadcom Corporation Parallel concatenated code with soft-in soft-out interactive turbo decoder
US6865710B2 (en) * 2000-09-18 2005-03-08 Lucent Technologies Inc. Butterfly processor for telecommunications
US7127664B2 (en) 2000-09-18 2006-10-24 Lucent Technologies Inc. Reconfigurable architecture for decoding telecommunications signals
US7020214B2 (en) * 2000-09-18 2006-03-28 Lucent Technologies Inc. Method and apparatus for path metric processing in telecommunications systems
US7234100B1 (en) 2000-09-28 2007-06-19 Intel Corporation Decoder for trellis-based channel encoding
EP1271789B1 (en) * 2001-06-21 2006-04-12 Alcatel Log-MAP decoding
AUPR679301A0 (en) 2001-08-03 2001-08-30 Lucent Technologies Inc. Arrangement for low power turbo decoding
JP3888135B2 (ja) * 2001-11-15 2007-02-28 日本電気株式会社 誤り訂正符号復号装置
US7657822B2 (en) * 2002-05-31 2010-02-02 Broadcom Corporation True bit level decoding of TTCM (turbo trellis code modulation) of variable rates and signal constellations
US6718504B1 (en) 2002-06-05 2004-04-06 Arc International Method and apparatus for implementing a data processor adapted for turbo decoding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1211366A (zh) * 1995-12-27 1999-03-17 艾利森公司 利用变数残存路径的码元解码方法和装置
CN1476176A (zh) * 2002-08-14 2004-02-18 联发科技股份有限公司 维特比解码器的解码电路与方法

Also Published As

Publication number Publication date
JP5075642B2 (ja) 2012-11-21
WO2006092564A8 (en) 2007-10-25
TW200707921A (en) 2007-02-16
EP1859532A1 (en) 2007-11-28
GB0504483D0 (en) 2005-04-13
TWI346463B (en) 2011-08-01
ATE508534T1 (de) 2011-05-15
KR101051933B1 (ko) 2011-07-26
KR20070110407A (ko) 2007-11-16
DE602006021716D1 (de) 2011-06-16
JP2008532402A (ja) 2008-08-14
EP1859532B1 (en) 2011-05-04
CN101147327A (zh) 2008-03-19
US8230307B2 (en) 2012-07-24
US20090132896A1 (en) 2009-05-21
WO2006092564A1 (en) 2006-09-08

Similar Documents

Publication Publication Date Title
EP0682415B1 (en) Punctured convolutional encoder
CN101147327B (zh) 使用篱栅的蝴蝶结构来映射解码的度量计算的方法和装置
JP4629295B2 (ja) ターボ符号化された符号シーケンスの復号方法及び復号装置
US6999531B2 (en) Soft-decision decoding of convolutionally encoded codeword
US20040153942A1 (en) Soft input soft output decoder for turbo codes
CN105634508B (zh) 一种低复杂度近性能限的Turbo译码器的实现方法
WO2007053126A1 (en) Methods and devices for decoding and encoding data
US7234100B1 (en) Decoder for trellis-based channel encoding
CN110730011A (zh) 一种基于部分叠加的递归分组马尔可夫叠加编码方法
JP3728171B2 (ja) 信頼性情報計算方法
KR20050019014A (ko) 디코딩 장치 및 방법
US6513140B2 (en) Method and device for decoding convolutional codes
EP2174422B1 (en) Decoding of recursive convolutional codes by means of a decoder for non-recursive convolutional codes
CN101882934B (zh) 运算电路
Kestel et al. Polar code decoder exploration framework
US6614858B1 (en) Limiting range of extrinsic information for iterative decoding
CN101411071A (zh) 具有双向滑动窗口体系结构的map译码器
CN100505600C (zh) 一种实现缩短Turbo译码器关键路径的方法
CN2884696Y (zh) 用于Turbo码译码器中的归一化装置
CN114095042B (zh) 低码率双正交码译码器及译码的方法
JP3987153B2 (ja) マンハッタンあるいはハミングメトリックスキームに基づくビタビデコーダのための信号のデコード
Greeshma et al. Fpga implementatıon of turbo product codes for error correctıon
US20110202819A1 (en) Configurable Error Correction Encoding and Decoding
CN105790775B (zh) 一种基于概率Turbo译码器的概率计算单元
Divya et al. Design of convolutional encoder and map decoder using dual mode MLMAP decoding algorithm

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20090327

Address after: Cayman Islands, Grand Cayman

Applicant after: Cayman Morningstar Semiconductor

Co-applicant after: MSTAR FRANCE S.A.S.

Co-applicant after: Mstar Semiconductor,Inc.

Co-applicant after: MSTAR SEMICONDUCTOR Inc.

Address before: Cayman Islands Grand Cayman

Applicant before: Cayman Morningstar Semiconductor

Effective date of registration: 20090327

Address after: Cayman Islands Grand Cayman

Applicant after: Cayman Morningstar Semiconductor

Address before: Hertfordshire

Applicant before: TTPCOM Ltd.

ASS Succession or assignment of patent right

Owner name: KAIMAN CHENXING SEMICONDUCTOR CO., LTD.

Free format text: FORMER OWNER: TTPCOM CO., LTD.

Effective date: 20090327

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100714

Termination date: 20190224