CN1302624C - 基于格子的信道编码所用的解码器 - Google Patents

基于格子的信道编码所用的解码器 Download PDF

Info

Publication number
CN1302624C
CN1302624C CNB018163769A CN01816376A CN1302624C CN 1302624 C CN1302624 C CN 1302624C CN B018163769 A CNB018163769 A CN B018163769A CN 01816376 A CN01816376 A CN 01816376A CN 1302624 C CN1302624 C CN 1302624C
Authority
CN
China
Prior art keywords
butterfly
stage
unit
node
branch
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
CNB018163769A
Other languages
English (en)
Other versions
CN1466818A (zh
Inventor
J·萨多斯基
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1466818A publication Critical patent/CN1466818A/zh
Application granted granted Critical
Publication of CN1302624C publication Critical patent/CN1302624C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • 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/3922Add-Compare-Select [ACS] operation in forward or backward recursions
    • 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
    • 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
    • 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/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • 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/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4107Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing add, compare, select [ACS] operations
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • 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/65Purpose and implementation aspects
    • H03M13/6569Implementation on processors, e.g. DSPs, or software implementations
    • 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/29Coding, 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/2957Turbo codes and decoding

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)
  • Detection And Correction Of Errors (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Advance Control (AREA)

Abstract

一种用于对信道比特流解码的系统和方法有效地执行基于格子的操作。所述系统包括蝶式协处理器和数字信号处理器。对于基于格子的编码器,该系统在数字信号处理器的指示下,通过在蝶式协处理器中执行并行运算来对信道比特流解码。所述操作用于实现MAP算法,维特比算法以及其它软或硬输出编码算法。DSP可执行存储器管理以及代表蝶式协处理器进行算法调度。蝶式协处理器可并行执行蝶式运算以增加吞吐量。该系统保持了适用于许多可能的解码环境中的灵活性。

Description

基于格子的信道编码所用的解码器
背景
本发明涉及对信道编码数据执行的解码操作,更具体地讲,涉及基于格子图工作的解码器。
只要有公共信道连接系统,系统之间的通信就是可能的。无论是通过网络电缆、电话线,还是因特网协议套接口,实体之间交换的数据都要穿过信道媒体。
不幸的是,信道媒体中的“噪声”和“干扰”可能在传输中破坏数据。诸如信道媒体长度、传输的数据量、信道中杂散信号的存在以及其它环境条件等因素可能影响噪声和干扰的总量,从而影响接收数据的质量。
信道中的噪声和干扰现象是可预料的,因此数据在传输之前几乎总是要经过编码。数据编码器一般由诸如触发器和“与非”门等离散逻辑组成。所述数据编码器接收称为信息比特的数据比特流,所述信息比特通过信道媒体传输,根据信息比特本身产生称为校验比特的额外比特。信息比特和校验比特一起构成编码比特流。
这种精心设计的冗余信息称为前向纠错(FEC)或者信道编码。一旦完成构造,编码数据流通过信道来传输。在某些情况下,可在传输之前对编码比特流进行调制。
一旦经由信道传输以及随后在接收机中进行解调,某些“1”比特(或者其经过调制的表示)可能遭到破坏,致使它们被当作“0”比特接收。同样,某些“0”比特可能被当作“1”比特接收。在现代数字无线接收机中,解调器也可能报告逐个比特的“可靠性量度”。明确收到的1和0产生高可靠性量度,而模糊收到的数据产生低可靠性量度。编码比特流的信息比特或校验比特或两者可能在传输中受破坏。
除了解调器,接收实体包括解码器,其目的是利用解调器输出和编码器结构的知识,确定最可能已发送的信息比特。上述比特可靠性量度可以显著增强解码器的性能。正如所预期的,所述解码器可能比所述编码器复杂得多。
香农的著名的信道编码理论启发人们努力开发越来越复杂的编码数字通信系统。香农理论表明,只要信息速率(每秒传输的信息比特)不超过信道容量,就有可能设计具有任意小的解码差错概率的FEC编码系统。
但是,香农理论是一种渐进结果。它实际上很少讲到如何设计实用的编码系统,仅仅是当编码块大小(信息比特数)和编码复杂性趋于无限大时,才可达到完美解码。结果,容易构造非常强大、但是非常复杂的编码。
那么,困难的任务是为这些复杂编码找到高效的解码算法。这样,FEC编码设计的实际任务是找到具有特定结构的强大(所以复杂)的代码族,可用以得到具有可实现复杂度的解码器。当然,随着数字技术不断进步,越来越复杂的解码器成为可能。
一些解码算法基于称为格子图的专用状态图工作,产生解码输出。格子图是一种状态机,它随着时间而显示编码器可能的状态转换。格子图描述在时间的各点上编码器的所有可能状态。许多解码算法把格子图与信道比特流一起使用,以便得出正确的信息比特。
但是,格子型解码所涉及的计算量可能是惊人的。因此,解码器可以用高效执行专门的格子运算、如蝶式运算的专用集成电路(ASIC)来实现。因为各种解码算法的复杂度不同,这种ASIC一般可能是为单个算法设计的。
其它解码器可包括通用数字信号处理器(DSP),它们可包括也可不包括执行格子运算的特殊指令。这些解码器可能是可编程的,以便根据需要实现不同的解码算法。这种解码器可能更灵活,但是可能以比基于ASIC的解码器更慢的速度对信道数据进行解码。
因而,还是需要可与通用数字信号处理器一起使用的可编程处理器,以便执行基于格子图的解码操作。
附图简介
图1是根据本发明一个实施例的系统的框图;
图2是根据本发明一个实施例的递归系统卷积编码器的示意图;
图3是根据本发明一个实施例的图2的编码器的状态转换表;
图4是根据本发明一个实施例的图2的编码器所用的格子;
图5是根据本发明一个实施例的图2的编码器所用的格子图;
图6是根据本发明一个实施例、说明利用图2的编码器的可能路径的图5的格子图;以及
图7是根据本发明一个实施例、信息数据流可能采取的路径的框图;
图8是根据本发明一个实施例、说明格子图的分支和路径量度的示意图;
图9是根据本发明一个实施例、用来说明蝶式运算的格子图;
图10是根据本发明一个实施例的蝶式算子的框图;
图11是根据本发明第二个实施例的蝶式算子的第二框图;
图12是根据本发明一个实施例的用于图1系统中的图10所示蝶式算子的框图;
图13是根据本发明一个实施例的图12的系统所用的软件程序的流程图;
图14a和图14b是根据本发明一个实施例说明蝶式单元的可能操作的示意图;
图15是根据本发明一个实施例的特播编码器的框图;
图16是根据本发明一个实施例的特播解码器的框图。
详细说明
根据这里所述的几个实施例,公开一种系统和方法,用于高效执行在对某些类型信道比特流解码时所用的专门运算。所述专门运算称为蝶式运算。尽管详细描述了维特比和MAP(最大后验概率)解码算法,但是可以用基于格子图工作的其它解码算法实现所述系统和方法。
这里所述的操作和某些基于格子的算法实现有关。这类算法实际用于许多通信和信号处理应用中,其中包括(但不限于)卷积和特播码的编解码、信道均衡以及语音编码。这里描述的FEC解码应用仅为了说明的目的,决不是为了限制本发明的范围。
根据一个实施例,图1中,系统100包括数字信号处理器10和蝶式协处理器28。数字信号处理器或DSP是具有针对数字信号处理调整的体系结构的专用微处理器。DSP一般电路特征是:可执行高速算术运算,与外部设备交换数据以及对存储器进行多路访问。例如,DSP可包括并行的扩展16或32位总线,用于访问存储器的特定数据地址发生器以及乘法累加(MAC)算术单元。
在图1中,DSP 10包括两条总线,存储器存储总线22和存储器加载总线24。存储器存储总线22和存储器加载总线24扩展到数字信号处理器10以外,以便连接存储器30。在第二实施例中,存储器存储和存储器加载总线22和24合并为一条总线。
算术单元20连接到存储器存储总线22和存储器加载总线24。算术单元20可包括一个或多个乘法累加单元、寄存器和其它用于执行算术运算的电路。数据地址发生器26也连接到存储器存储总线22和存储器加载总线24。数据地址发生器26标识存储器30中要加载或存储的特定存储单元。数据地址发生器26代表DSP10的其它电路、诸如算术单元20执行这种运算。
在这个实施例中,系统100还包括蝶式协处理器28。蝶式协处理器28不是DSP 10的一部分,但是通过存储器存储和存储器加载总线22和24连接到DSP 10。与算术单元20类似,蝶式协处理器28利用这些总线可以访问存储器30。正如本文进一步说明的,系统100可用在解码器中对编码信道比特流执行格子图解码。
该特定的DSP 10仅仅是说明性的。提供图1的电路结构是为了说明系统100的几种可能实现之一。DSP一般还包括诸如寄存器、控制块、用于执行直接存储器存取(DMA)的电路以及其它电路等部件,图1中未画出。DSP可实现为具有单个或多个存储器总线,而且可能具备诸如用于外设访问的额外总线。
在一个实施例中,DSP 10代表蝶式协处理器28执行存储器管理,以便进行高速和并行蝶式运算。但是,在详细描述系统100之前,先介绍编解码技术以提供理解本发明的基础。
当通过信道媒体传输信息数据流时,有几种可能的纠错途径。例如,如果差错率太高,可以提高发射机功率以降低差错率。对于某些应用、如蜂窝电话,这种解决方案是不可行的,因为可用的电池电量受到尺寸限制。
另一种解决方案是重复传输,或者在同样的信道媒体上发送同样的信息数据流两次,或者在两个不同信道上发送数据流。然后在接收机中将重复的数据流互相比较。不过,冗余往往增加系统成本,还可能增加处理信息数据流的时间。
第三种可能的方案是接收机采用自动请求重发(ARQ)机制。接收机一旦确定传输中出现差错,就可请求重传该数据流。但是,这不是编码方案,因此对于噪声信道可能不是好的方案。
前向纠错是这样一种技术:在通过信道传输之前,将额外比特加到信息数据流中。一旦数据流被发送,接收机可包括解码器来纠正传输中出现的任何差错。
卷积码、也称二进制卷积码或BCC是从连续输入数据流中产生的。相反,当编码器在对输入数据流进行编码之前将其分成固定长度的码组时,就得到了分组码。卷积码和分组码都是前向纠错码类型的。
同样,许多对分组码和卷积码进行解码的解码器是人们所熟知的。例如,维特比解码算法常用来对卷积码解码。维特比算法是一种“硬”输出算法,也就是说,算法的成功执行会得到实际的信息比特。相比而言,最大后验概率(MAP)算法是一种“软”输出算法,它产生关于信道比特值的似然或“质量”信息。
最近,特播解码器可能对信道编码数据而言有更佳结果。特播解码器包括多个解码器、诸如多个MAP解码器,它们仲裁以得到正确结果。特播解码器的一种实现如下图16所示。
图2中,编码器50是简单的递归系统卷积(RSC)编码器。系统码的校验比特Pk+1附加于信息比特Uk+1作为一个连续的组。图2所示的编码器50产生系统码。编码器50是递归的,因为输出值Pk+1反馈到输入值Uk中以用于后续处理。
在RSC编码器50中,信息比特Uk被馈送到“异或”或者XOR门56中。结果则被输入移位寄存器52。移位寄存器52的先有值或者是“1”,或者是“0”,被输入到第二移位寄存器54中。码字比特Uk+1和Pk+1作为存储在移位寄存器52和54中的当前状态以及输入值Uk的函数而产生。在图2所示的编码器50中,码字比特Uk+1碰巧与输入值Uk一样。不过,校验比特Pk+1由状态(移位寄存器52和54)以及输入值Uk产生。Uk+1和Pk+1一起作为时间k+1的码字比特。
这样,对于卷积码,各编码比特对(Uk+1,Pk+1)取决于多个信息比特之一的输入值Uk以及移位寄存器52和54中的值。移位寄存器52和54存储关于输入值Uk的过去值的信息。这样,相继的比特(Uk+n,Pk+n)不是与过去的比特无关,其中n=1至信息数据流的大小。
图3中,状态转换表60表明各个输入Uk对应的存储于移位寄存器52和54中的值,亦称为编码器50的状态(第0列)。状态转换表60还表明由图2的RSC编码器50根据输入值Uk产生的比特(Uk+1,Pk+1)(第2列)。状态转换表60还表示编码器50在时间k(第1列)和时间k+1(第3列)的状态。这样,状态转换表60提供了对应给定输入值Uk的编码器50的输出值Uk+1、Pk+1的完整表示,还提供了存储于移位寄存器52和54中的状态信息。
由状态转换表60可以生成格子70,如图4所示。格子是表示编码器在两个状态之间的可能转换的状态机。图4的格子70包括阶段k的四个节点72k,标为00、01、10和11。(标记72阶段用来描述特定阶段的所有节点72。)
格子70还包括阶段k+1中的四个节点72k+1,也标为00、01、10和11。状态00、01、10和11对应于编码器50的移位寄存器52和54中的值。节点72k和72k+1分别表示阶段k和阶段k+1的编码器50的状态,分别如图3的状态转换表60的第0列和第3列所示。
分支74将节点72k连到节点72k+1。两条分支74表示Uk有两个可能值,即0或1,分支74可以从四种可能状态00、01、10和11中的任一状态延伸。
输入值Uk以及输出比特Uk+1,Pk+1以形式(Uk,Uk+1Pk+1)表示在格子70的各分支74上。各分支74标识编码器50对应于输入值Uk的、从分支74左边(阶段k中)的状态到分支74右边(阶段k+1中)的状态的转换。
如格子一样,格子图是用来描述编码器行为的状态机。不过,格子图表明随时间推移编码器的所有可能状态转换。在图5中,格子图80包括图2的RSC编码器50的可能状态转换。格子图80是图4的格子70的简单串联。
格子图80中可能的四种状态72为:00、01、10及11(回想状态72对应于编码器50的移位寄存器52和54)。变量k表示格子图80的阶段。每个阶段是一个明确的时间点,其中k=0位于格子图80的开头,在时间0处,k=1在随后的时间点,等等。格子图80可能包括成百上千或者甚至成千上万个阶段,对应于输入编码器50的信息比特Uk的数目。图5中只画出格子图80的前十个阶段。
正如图4的格子70一样,格子图80每个阶段k包括4个节点72。状态00、01、10和11依次列在格子图80左边的一列中。阶段k的4个节点72中的每个节点表示状态00、01、10或11之一。此外,分支74从各个节点72延伸,表示从节点72k到节点72k+1的各个转换。
在第0阶段,两个分支74仅从表示状态00的节点72延伸。在一个实施例中,假设编码器50开始编码时移位寄存器52及54的值为0。因此,第0阶段中余下的状态01、10和11是“不可能的”,没有分支从这些状态延伸。
在下一阶段(k=1),分支74从表示状态00和10的节点72延伸,因为如果输入值分别为0和1,这些是从第0阶段开始的可能转换。分支74从状态10延伸到其它两个可能状态01和11。这样,从k=2起,每个阶段k到阶段k+1是相同的,正如图4的格子70中所示。
格子图80提供编码器50的完整表示:输入值、状态和输出值。通过把各阶段k的分支74连接起来得到如图6所示的路径82,表示编码二进制输出码字86:101110100101000111,对应于二进制输入值84:111100001,这里k=9。不过路径82只表示穿过格子图80的许多可能路径之一。
假设图2的编码器50收到9比特的信息数据流84,其值为111100001,并产生18比特的二进制卷积码字86,其值为:1011101001000111,如图6所示。然后通过信道媒体90将码字86传到接收机94,它如图7所示包括解码器96。解码器96接收信道比特流92,该比特流可能是、也可能不是与卷积码字86相同的比特流。
解码器96从信道比特流92中产生信息数据流98。如果信息数据流98和信息数据流84相同,则解码器96已经成功地对信道比特流92进行解码。
因为信道媒体90中的噪声或其它现象,信道比特流92可能常常不同于通过信道90发送的码字86。然而,卷积码字86不仅包括信息比特(Uk),还包括基于原始信息比特的校验比特(Pk)。尽管某些比特可能不同,但是信道比特流92同样包括信息和校验比特。解码器96利用这个信息以及提供编码器“蓝图”的格子图,提取正确的信息数据流96。
使用格子图解码的根本概念在于:编码序列等效于一条路径,如格子图80中的图6所示的路径82。这样,该路径提供到编码器50的输入序列Uk和来自编码器50的输出序列Uk+1,Pk+1,正如在分支74上所指定的那样。解码器96可从格子图80中找到正确路径82。
因此,当编码器可以用格子图描述时,它的相关解码算法一般基于格子图80来重建输入序列Uk。给定信道比特流92,解码器96确定格子图80的哪条路径是最可能的路径。
为了理解解码器96如何基于格子图80工作,考虑图8的格子图。图中表示出图5的四状态格子图80的标为0-5的6个阶段k。对于硬输出解码算法,解码器96可在每个阶段k确定编码比特是“1”比特还是“0”比特。相反,当解码器96使用软输入/软输出(SISO)算法时,对格子图80的给定路径82的质量进行评估。解码器96则提供概率数据而不是“1”或“0”比特。因此,对于软输出算法,路径82用称为量度的数值定义。给定解码器96收到的信道比特流92,所述量度表示采用格子图80中某条路径的概率。
对于图2的RSC编码器50,Uk的两个可能的输入值0或1对应于从每个节点72延伸的两个可能分支74。这样,在图8中的阶段1,两个分支74从对应‘10’状态的节点72延伸。同样,每个分支74与似然或分支量度106相关。在图8中,分支量度106是一个标记分支104的数值。顶部分支74a的分支量度106为0.2。底部分支74b的分支量度106为0.3。
分支量度106是“软”信息,一般为对数概率,表示当给定解码器96接收的信道比特流92时、到达下一节点72的似然。解码器96计算分支量度106。
对于维特比算法,解码器96的目标是从格子图80得到最佳路径82。对于软输出算法、如MAP算法,解码器96改为在格子的每个阶段k确定信息比特Uk是0或1的似然。这样,解码器96迭代地遍历格子图80,每次一个阶段,根据收到的比特流和格子图80计算似然信息。
本质上,解码器96考虑了格子图80的所有可能路径82。对于所考虑的每条路径82,解码器96把路径82的分支量度加起来,得到路径量度108。然后解码器96选择具有最大路径量度108的路径82。具有最大路径量度的路径82是最大似然路径。所选路径82也称为幸存路径。根据路径82,可以确定信息比特Uk
这样,解码器96“历经”格子图80,一路计算分支量度106和路径量度108。对于某些算法,只遍历格子图80一次。而对于另一些算法,可能要在正反两个方向对格子图80进行遍历。不过,维特比和MAP算法以及其它基于格子图80的算法可能在得到所需结果之前要执行数量惊人的计算。
格子图80的可能路径82的数目例如是2格子长度。因此,如果编码器50对100个信息比特编码,解码器96有2100个可能的路径82要考虑(约1030条路径)。如果每一个分支量度106未存储于存储器中,所述计算就可能更为复杂。
在图9中,图5的格子图80的一部分包括阶段k、k+1和k+2。滑动窗口110包含阶段k和k+1。解码器96可用滑动窗口110沿格子80任意计算分支量度106。
例如,在阶段k,分支74c和74d从对应于状态00的节点72k延伸到节点72k+1(在阶段k+1)。同样,两个分支74e和74f从对应于状态01的节点72k延伸。分支74g和74h从对应于状态10的节点72k,分支74i和74j从对应于状态11的节点72k延伸到节点72k+1(阶段k+1)。分支74c、74e、74g和74i对应于编码器50的“0”输入值,而分支74d、74f、74h和74j对应于“1”输入值。
当滑动窗口110位于图9中的位置时,解码器96计算从分支74c到分支74j的各个分支的分支量度106,共8次计算。除了k=0时,一或多条路径82从先前的阶段延伸到节点72k。路径82之一是幸存路径。因此,可通过采取幸存路径的路径量度108来计算新路径量度108。第一分支量度106可加到路径量度108上,然后第二分支量度106可以加到路径量度108上。可对这两个结果进行比较。具有更大路径量度108的路径82是阶段k最新的幸存路径。这组计算称为蝶式运算。
一旦阶段k的蝶式运算完成,可根据算法向前或向后移动滑动窗口110,以便可执行下一组蝶式运算。
对于图9的滑动窗口110,可进行总共4次蝶式运算,每个节点72k对应一个。各分支74的分支量度106加到路径量度108上(加法运算)。然后把各个得出的路径量度108和其它路径量度108比较,以便确定哪个结果更大(比较运算)。对得到的路径量度108或幸存路径进行选取(选择运算)。因此蝶式运算有时称为加-比-选或ACS运算。最后,把幸存路径存在比如存储器中。
根据一个实施例,图10中,系统200可用于执行如上所述的蝶式运算。系统200包括一个或多个蝶式单元202、分支量度单元204和路径量度存储器206。系统200的电路一起可执行ACS或对数-MAP蝶式运算。
在一个实施例中,如以上图8所述,分支量度单元204执行分支量度106的计算。通过分析信道数据92以及四个可能的输出值Uk+1Pk+1来计算分支量度106,四个可能的输出值Uk+1Pk+1由编码器50产生并计算一个可能的量度106。计算各个节点72k的分支量度106。注意,分支量度单元204没有连接到路径量度存储器206,因为没有在计算分支量度106时考虑来自前一阶段的路径量度108。
在图10的实施例中,各蝶式单元202接收来自分支量度单元204的分支量度106。由于每个阶段k有4个节点72,所以提供了4个蝶式单元202。因此,根据一个实施例,每个蝶式单元202可与其它各个蝶式单元202并行地执行计算,使得可以同时计算对应于各状态00、01、10和11的新路径量度。
而且,各个蝶式单元202从路径量度存储器206接收路径量度108。借助这个信息,各个蝶式单元202可执行格子图80的给定节点72k的加-比-选运算。
各蝶式单元202的输出路径也连接到路径量度存储器206。这样各蝶式单元202可把得到的路径量度发送到路径量度存储器206以便存储,直到执行了阶段k+1的新一组蝶式运算。
在图11中,系统200的第二实施例实现这里所述的MAP算法。解码器96可用系统200在格子图80上沿前向和沿后向执行格子运算。MAP算法是一种双路径算法,其中格子运算在相对于格子图的前向和后向上执行。在前向和后向过程中,都要计算格子节点量度。
在前向运算期间,节点量度可存贮在路径量度存储器206中。然后,在后向运算期间,计算滑动窗口量度,然后与存储在节点量度存储器206中的前向路径量度相结合。或者,后向运算可如所希望的那样在前向运算之前进行。
格子的每个阶段有N个状态。图11的系统200把前向和后向的所有N个状态的量度简化为单比特可靠性量度。这就是MAP算法的最终软输出。
使用如图11所示的蝶式单元202的配置,前向和后向路径量度都可如此计算。顶部的3个蝶式单元202用于“1”分支104,而底部的3个蝶式单元202用于“0”分支104。
根据一个实施例,图11中,路径量度单元(BMU)204计算阶段k的当前分支量度74。蝶式单元202则从路径量度存储器206中检索前向(或后向)路径量度108以及从分支量度单元204中检索分支量度74。然后,每次两个操作,各蝶式单元202组合结果以及减去差值,得到后验概率值。
在图12中,根据一个实施例,图10的系统200实现在系统100(图1)中。正如所预期的,路径量度存储器204是更大的可用存储器30的一部分。其余电路可通过存储器存储总线22和存储器加载总线24访问路径量度存储器206。
因此,在一个实施例中,算术单元20包括可由数据地址发生器26寻址的寄存器210。完成一个操作时,BMU 204把结果存储于寄存器210中。然后蝶式单元202可利用数据地址发生器26访问寄存器210,从而得到BMU 204操作的结果,正如访问存储器30那样。
在一个实施例中,蝶式协处理器28包括4个蝶式单元202。为了完成蝶式计算,蝶式单元202利用数据地址发生器26和存储器加载总线24访问路径量度存储器206和寄存器210。蝶式单元202执行加-比-选运算以计算滑动窗口110中当前阶段的节点72的路径量度108。一旦蝶式运算完成,蝶式单元202通过把结果放在存储器存储总线22上而将结果存在路径量度存储器206中。
在图12的实施例中,DSP 10代表蝶式协处理器28执行存储器管理。但是,该DSP进而通过在其算术单元20中包括分支量度单元204运算,也执行部分的蝶式运算。这允许蝶式协处理器28专注于蝶式单元202执行的各节点运算的并行执行。
对于实现图10的系统200,其它实施例是可能的。例如,在图12中,一旦分支量度单元204已计算了分支量度106,分支量度单元204就把结果存贮在位于算术单元20中的寄存器210中。数据地址发生器26则应蝶式协处理器28的请求访问寄存器210。
或者,分支量度204可位于蝶式协处理器28本身中。此替代配置消除了对寄存器210的需要,因为分支量度单元204可直接连接到蝶式单元202。蝶式协处理器28既执行分支量度单元106的操作又执行加-比-选操作。
而且,在某些实施例中,系统100可以是可编程的。例如,寄存器可定义分支量度单元204和DSP 10之间的连接性。无论是简单实现为存储器管理还是执行部分蝶式运算,DSP10可在逐个阶段的基础上参与格子解码。在一个实施例中,DSP10为蝶式协处理器28提供存储器接口。在一些实施例中,DSP10额外代表蝶式协处理器28执行算法调度。
蝶式协处理器28利用多个蝶式单元执行并行蝶式运算。在一个实施例中,系统100增加了执行信道比特流解码中涉及的甚复杂运算的吞吐量。
在一个实施例中,系统100包括软件程序500,图中示为存储于存储器30中。利用软件程序500,可针对许多解码方案灵活实现系统100。而且,无论何时开发出新的解码技术,都可将新软件程序加载到系统100中。
在图13中,根据一个实施例,软件程序500通过接收解码请求管理解码操作(块502)。在图12的实施例中,路径量度108存储在路径量度存储器206中。因此,软件程序500可用数据地址发生器26对存储器30寻址,以便从路径量度单元206中检索路径量度108(块504)。然后可把路径量度108发送给蝶式协处理器28。
回顾图10,除了接收路径量度108,蝶式单元202还接收分支量度106作为输入值。因此,图13中的软件程序500指示分支量度单元204执行它的分支量度计算(块506)。该结果可存贮在寄存器210中,存贮在存储器30中,或者直接放在存储器存储总线22上发送到蝶式协处理器28。
软件程序500指示系统100把路径量度108和分支量度106发送到蝶式协处理器28(块508)。蝶式协处理器28则可以执行并行的蝶式运算(块510)。这样,系统100执行了单个阶段的格子计算。根据一个实施例,软件500的操作就完成了。
蝶式操作单元202可用多种方式实现。在图10和11中,每个蝶式单元202接收两个输入值,一个来自路径量度存储器206,另一个来自分支量度单元204。蝶式单元202产生单输出值并发送到路径量度存储器206。
图14a中,根据一个实施例,蝶式单元202用算术和指数运算来实现。除了从路径量度存储器206和分支量度单元204接收值之外,蝶式单元202还接收参数c。参数c可以硬连线到蝶式单元202中,或者可以根据所需可编程。可以在蝶式单元202中将下述公式以离散逻辑来实现:
                 z=c log(ex/c+ey/c)
                 =max(x,y)+c log(1+ediff/c)
在图14b中,蝶式单元202执行最大值运算。蝶式单元202包括最大值单元220,它计算输入值x和y的最大值和差值。最大输出值被发送给加法器224。差值被发送给查找表222,其结果又反馈到加法器224中。其它执行加-比-选运算的算法是众所周知的,可以在蝶式单元202中实现。
利用系统100可以实现很大益处,特别是对于复杂的编码方案。例如,特播码是FEC信道编码的最新发展。人们正在考虑把特播码用于宽带以及第三代(3G)码分多址(CDMA)标准中以用于蜂窝电话。
在图15中,特播编码器300是用于3G CDMA蜂窝技术的一种众所周知的实施例。编码器300对大小可在320到5120比特之间的数据块进行操作。两个组成的卷积码或RSC编码器302和304并行对数据块进行编码。在RSC编码器304编码之前,用交织器306对输入数据块310进行比特交织。
通过在将它发送到RSC编码器304之前对数据块310进行交织,特播编码器300实质上比单次编码强大得多。在通过RSC编码器302和304之后,编码块312和314可分别单独或按照需要组合起来通过信道90(图5)发送。
与常规卷积编码相比,特播编码器中所用的组成码较为简单。例如,第三代系统把k9卷积码用于控制信道、语音以及数据链路,速率小于32千比特/秒。k9码有256个状态。而特播组成码例如可具有仅仅8个状态。
在图16中,特播解码器400包括两个软输入/软输出(SISO)解码器406和408。解码器406和408各自分别接收信道比特流402和404.信道比特流402对应于图15的编码块312。信道比特流404对应于图15的编码块314。
正如特播编码器300一样,图16的特播解码器是人们所熟知的。SISO解码器406接收信道比特流402。经过解码之后,输出值通过交织器410,然后由第二SISO解码器408接收。第二SISO解码器408还接收第二信道比特流404。经过解码,SISO解码器408把输出值发送到去交织器412,然后把去交织的数据传递给SISO解码器406。
该过程在将最终输出发送给硬判决块414之前可以迭代若干次,硬判决块将数据量化成硬输出值。特播解码器400部分地工作是因为SISO解码器406和408是软输入和软输出。因此,软信息可以按照所需那样常常在它们之间传递。本质上,采用仲裁方案以得到最终的输出值。
在一个实施例中,SISO解码器406使用MAP算法(最大后验概率)实现。如上所述,MAP是软输入/软输出算法。不是产生“硬”比特判决输出,MAP输出是指示各数据比特值的似然的后验概率(APP)。与之比较,维特比算法是软输入/软输出解码器。
在每状态的复杂度方面,MAP算法复杂度差不多是维特比算法的4倍。而且,MAP算法比维特比算法更加是存储密集型的。不过,与k9卷积码的256个状态相比,在实现特播码时只需要考虑8个状态。
在图16中,特播解码器400重复在SISO解码器406和408中实施的MAP算法。解码器406和408可采用系统100(图12)来实现MAP算法。因为特播解码器400包括两个解码器,每个使用MAP算法,系统100的并行运算可导致比先有技术实现快得多的性能。
这样,根据几个实施例,系统100可用在解码器中以执行与格子图相关的操作。MAP算法、维特比算法以及其它算法执行这样的运算。而且,系统100可实现为软输出或者硬输出算法。DSP和蝶式协处理器协同工作以执行这些运算。
DSP和蝶式协处理器之间的分工可以多种方式实现。在一个实施例中,DSP代表蝶式协处理器执行存储器管理和算法调度。蝶式协处理器实现并行蝶式运算以增加解码期间的吞吐量。而且,系统100保持了灵活性,以便用于多种可能的解码环境中。
尽管已经参照有限的实施例对本发明进行了描述,但是本领域的技术人员应当从中理解很多修改和变化。所附权利要求的意图在于涵盖在本发明真正精神和范围之内的所有这类修改和变化。

Claims (24)

1.一种系统,它包括:
包含可连接到存储器的总线的数字信号处理器;以及
连接到所述数字信号处理器以便执行由所述数字信号处理器安排的操作的蝶式协处理器。
2.如权利要求1所述的系统,其特征在于,所述数字信号处理器还包括:
数据地址发生器,该数据地址发生器连接到所述总线以便代表请求装置对所述存储器寻址。
3.如权利要求2所述的系统,其特征在于,所述数字信号处理器还包括在所述数字信号处理器中执行算术运算的算术单元。
4.如权利要求3所述的系统,其特征在于,所述算术单元还包括执行分支量度计算的分支量度单元。
5.如权利要求4所述的系统,其特征在于,所述算术单元还包括一个或多个寄存器,所述分支量度单元可在其中存储一个或多个结果。
6.如权利要求5所述的系统,其特征在于还包括所述算术单元中的由所述数据地址发生器寻址的一个或多个寄存器。
7.如权利要求1所述的系统,其特征在于,所述蝶式协处理器还包括多个执行蝶式运算的蝶式单元。
8.如权利要求7所述的系统,其特征在于,所述蝶式运算是并行运算。
9.如权利要求8所述的系统,其特征在于,所述蝶式协处理器中的所述多个蝶式单元还连接成在所述数字信号处理器的指示下执行加-比-选运算。
10.如权利要求8所述的系统,其特征在于,所述蝶式协处理器中的所述多个蝶式单元还连接成在所述数字信号处理器的指示下执行对数求和指数运算的逼近。
11.如权利要求8所述的系统,其特征在于,所述数据地址发生器连接成对从路径量度存储器中检索的路径量度寻址。
12.如权利要求11所述的系统,其特征在于,所述数字信号处理器的所述数据地址发生器连接成从所述分支量度单元中检索分支量度。
13.一种方法,包括:
标识格子图中的阶段;
计算所述阶段的每个节点的分支量度;以及
根据所述分支量度同时计算所述阶段的两个或两个以上的路径量度。
14.如权利要求13所述的方法,其特征在于还包括:
在存储器中存储所述路径量度。
15.如权利要求13所述的方法,其特征在于,计算所述阶段的各节点的分支量度还包括:
标识所述阶段中的多个节点;
标识从每个节点延伸的多个分支;以及
计算每个分支的分支量度。
16.如权利要求14所述的方法,其特征在于,根据所述分支量度同时计算所述阶段的两个或两个以上的路径量度还包括:
标识所述阶段的节点;
从所述存储器中检索先前的路径量度,其中所述先前的路径量度通向所述节点;
标识从所述阶段中的所述节点延伸的多个分支;以及
为从所述节点延伸的每个分支分配蝶式单元,其中,所述蝶式单元根据所述先前的路径量度和所述分支量度计算新的路径量度。
17.一种方法,包括:
接收对比特流解码的请求,其中所述比特流由编码器来编码并且所述编码器用格子图来描述;
标识所述格子图的阶段;
计算所述阶段的所有节点的分支量度;
从存储器中检索所述格子图的不同阶段的路径量度;以及
同时计算所述阶段的每个节点的新路径量度。
18.如权利要求17所述的方法,其特征在于还包括:
把所述阶段的每个节点的新路径量度存储在所述存储器中;以及
标识所述格子图的新阶段。
19.一种系统,它包括:
数字信号处理器,其中包括:
可连接到存储器的总线;
数据地址发生器;以及
算术单元;以及
连接到所述数字信号处理器以便执行由所述数字信号处理器安排的操作的蝶式协处理器。
20.如权利要求19所述的系统,其特征在于,所述数字信号处理器还包括软件程序,该程序在执行时使所述系统执行以下操作:
标识格子图的阶段;
标识所述阶段中的多个节点;以及
标识从每个节点延伸的多个分支。
21.如权利要求20所述的系统,其特征在于,所述蝶式协处理器还包括多个蝶式单元。
22.如权利要求21所述的系统,其特征在于,所述蝶式单元的数目等于所述阶段中的节点的数目。
23.如权利要求22所述的系统,其特征在于,所述蝶式协处理器连接成计算所述阶段的路径量度。
24.如权利要求23所述的系统,其特征在于,所述各蝶式单元连接成同时计算所述阶段的每个节点的路径量度。
CNB018163769A 2000-09-28 2001-09-26 基于格子的信道编码所用的解码器 Expired - Fee Related CN1302624C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/670,231 2000-09-28
US09/670,231 US7234100B1 (en) 2000-09-28 2000-09-28 Decoder for trellis-based channel encoding

Publications (2)

Publication Number Publication Date
CN1466818A CN1466818A (zh) 2004-01-07
CN1302624C true CN1302624C (zh) 2007-02-28

Family

ID=24689534

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018163769A Expired - Fee Related CN1302624C (zh) 2000-09-28 2001-09-26 基于格子的信道编码所用的解码器

Country Status (9)

Country Link
US (1) US7234100B1 (zh)
JP (1) JP2004511162A (zh)
KR (1) KR20030036845A (zh)
CN (1) CN1302624C (zh)
AU (1) AU2001294838A1 (zh)
DE (1) DE10196688B3 (zh)
GB (1) GB2381724B (zh)
TW (1) TW548914B (zh)
WO (1) WO2002029977A2 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6961921B2 (en) 2001-09-06 2005-11-01 Interdigital Technology Corporation Pipeline architecture for maximum a posteriori (MAP) decoders
US7177658B2 (en) * 2002-05-06 2007-02-13 Qualcomm, Incorporated Multi-media broadcast and multicast service (MBMS) in a wireless communications system
US7822150B2 (en) * 2003-03-15 2010-10-26 Alcatel-Lucent Usa Inc. Spherical decoder for wireless communications
TWI228654B (en) * 2003-07-11 2005-03-01 Mediatek Inc Non-binary Viterbi data processing system and method
CN100542053C (zh) * 2004-03-03 2009-09-16 中国科学院沈阳自动化研究所 一种带有自适应性以及高速Viterbi解码器的设计方法
US8107542B1 (en) 2004-04-16 2012-01-31 Marvell International Ltd. Soft decoding of coded bit-streams
CN1961517B (zh) * 2004-05-28 2011-08-24 法国电信公司 编码和解码方法及装置、存储编码数据的装置
EP1641129A1 (en) * 2004-09-22 2006-03-29 STMicroelectronics Pvt. Ltd An improved turbo encoder
KR100703271B1 (ko) * 2004-11-23 2007-04-03 삼성전자주식회사 통합노드 프로세싱을 이용한 저밀도 패리티 검사 코드복호 방법 및 장치
GB0504483D0 (en) 2005-03-03 2005-04-13 Ttp Communications Ltd Trellis calculations
EP2442451A1 (en) * 2009-08-18 2012-04-18 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Soft output Viterbi algorithm method and decoder
US8774324B2 (en) * 2011-12-14 2014-07-08 Xilinx, Inc. Systems and methods for changing decoding parameters in a communication system
TWI565246B (zh) * 2015-01-12 2017-01-01 晨星半導體股份有限公司 迴旋編碼的解碼方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1129384A (zh) * 1994-11-28 1996-08-21 大宇电子株式会社 用于解码通过使用格子编码调制被编码的信号的装置
CN1236507A (zh) * 1996-11-06 1999-11-24 夸尔柯姆股份有限公司 对经卷积编码的码字解码的软判定输出解码器

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3851858T2 (de) * 1987-06-05 1995-05-24 Mitsubishi Electric Corp Digitaler Signalprozessor.
US5291499A (en) 1992-03-16 1994-03-01 Cirrus Logic, Inc. Method and apparatus for reduced-complexity viterbi-type sequence detectors
US5408502A (en) * 1992-07-13 1995-04-18 General Instrument Corporation Apparatus and method for communicating digital data using trellis coded QAM with punctured convolutional codes
US5612974A (en) * 1994-11-01 1997-03-18 Motorola Inc. Convolutional encoder for use on an integrated circuit that performs multiple communication tasks
US5784293A (en) * 1994-11-03 1998-07-21 Motorola, Inc. Apparatus and method for determining transmitted modulation symbols
JP3316724B2 (ja) 1995-06-13 2002-08-19 日本電気エンジニアリング株式会社 ビタビ復号器
JPH0946240A (ja) 1995-07-27 1997-02-14 Mitsubishi Electric Corp ビタビ復号機能を有するデータ処理装置
US5796757A (en) * 1995-09-15 1998-08-18 Nokia Mobile Phones Ltd. Methods and apparatus for performing rate determination with a variable rate viterbi decoder
US5742621A (en) * 1995-11-02 1998-04-21 Motorola Inc. Method for implementing an add-compare-select butterfly operation in a data processing system and instruction therefor
US5633897A (en) * 1995-11-16 1997-05-27 Atmel Corporation Digital signal processor optimized for decoding a signal encoded in accordance with a Viterbi algorithm
JP3338374B2 (ja) * 1997-06-30 2002-10-28 松下電器産業株式会社 演算処理方法および装置
US6257756B1 (en) * 1997-07-16 2001-07-10 Motorola, Inc. Apparatus and method for implementing viterbi butterflies
US6009128A (en) * 1997-09-08 1999-12-28 Lucent Technologies, Inc. Metric acceleration on dual MAC processor
US5987490A (en) * 1997-11-14 1999-11-16 Lucent Technologies Inc. Mac processor with efficient Viterbi ACS operation and automatic traceback store
US5912908A (en) * 1997-11-21 1999-06-15 Lucent Technologies Inc. Method of efficient branch metric computation for a Viterbi convolutional decoder
US6029267A (en) * 1997-11-25 2000-02-22 Lucent Technologies Inc. Single-cycle, soft decision, compare-select operation using dual-add processor
US6115436A (en) * 1997-12-31 2000-09-05 Ericsson Inc. Non-binary viterbi decoder using butterfly operations
JP3338371B2 (ja) 1998-05-20 2002-10-28 シャープ株式会社 ビタビ復号器
SG80035A1 (en) * 1999-05-27 2001-04-17 Inst Of Microelectronics Viterbi decoding of punctured convolutional codes without real-time branch metric computation
US7127664B2 (en) * 2000-09-18 2006-10-24 Lucent Technologies Inc. Reconfigurable architecture for decoding telecommunications signals

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1129384A (zh) * 1994-11-28 1996-08-21 大宇电子株式会社 用于解码通过使用格子编码调制被编码的信号的装置
CN1236507A (zh) * 1996-11-06 1999-11-24 夸尔柯姆股份有限公司 对经卷积编码的码字解码的软判定输出解码器

Also Published As

Publication number Publication date
US7234100B1 (en) 2007-06-19
CN1466818A (zh) 2004-01-07
WO2002029977A3 (en) 2002-06-13
WO2002029977A2 (en) 2002-04-11
GB2381724A (en) 2003-05-07
DE10196688B3 (de) 2013-10-17
TW548914B (en) 2003-08-21
DE10196688T1 (de) 2003-08-28
KR20030036845A (ko) 2003-05-09
GB0303959D0 (en) 2003-03-26
GB2381724B (en) 2005-03-30
AU2001294838A1 (en) 2002-04-15
JP2004511162A (ja) 2004-04-08

Similar Documents

Publication Publication Date Title
CN1168221C (zh) Map译码器的分割型去交织器存储器
CN1178399C (zh) 高度并行最大后验概率(map)解码器
CN1302624C (zh) 基于格子的信道编码所用的解码器
CN1761160A (zh) 解码方法和设备
JP2003533088A (ja) 待ち時間を短くしたソフトイン/ソフトアウトモジュール
TWI487293B (zh) 用於複數個碼類型可程式化解碼的方法及裝置
WO2004062111A1 (en) High speed turbo codes decoder for 3g using pipelined siso log-map decoders architecture
CN1190902C (zh) 用于维特比译码器的相加比较选择单元
CN1568577A (zh) 特播解码装置和方法
CN1254121C (zh) 特博码的解码方法
CN1271791C (zh) Turbo译码器及其实现方法
CN1140148C (zh) 在移动通信系统中执行特博解码的方法
CN1147169C (zh) 用于Turbo码的解码方法和解码器
CN1211931C (zh) 用于最大后验概率解码器的存储器体系结构
CN100350751C (zh) Turbo解码装置
CN1155161C (zh) 用于特博码的解码器及其解码方法
CN1129257C (zh) 串行回溯的最大似然解码方法及其使用该方法的解码器
CN1172448C (zh) 解码数据信号的方法
CN1142629C (zh) 用于特博码的解码方法及其解码器
CN1599262A (zh) 宽带无线接入系统中里德索洛门卷积级联码的实现方法
Blazek et al. A DSP-based implementation of a turbo-decoder
Benaissa et al. Reconfigurable hardware architectures for sequential and hybrid decoding
CN1841941A (zh) 最大后验概率译码方法和装置
CN101373977B (zh) 并行最大后验概率译码交织去交织的装置和方法
JP2001285079A (ja) 通信用誤り訂正符号復号装置

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070228

Termination date: 20100926