在解码设备中用于确定最大似然状态的设备和方法

文档序号:7587200阅读:144来源:国知局
专利名称:在解码设备中用于确定最大似然状态的设备和方法
技术领域
本发明一般涉及例如卫星、ISDN、数字蜂窝、W-CDMA和IMT-2000通信系统等通信系统,并且特别涉及一种在解码设备中用于选择(确定)最大似然状态(ML)的设备和方法。
特别是,本发明应于在IMT-2000系统的空中接口中的补充信道(或者数据信道),以及应用于用在由ETSI(欧洲电信标准学会)提出的UMTS(通用移动通信系统)的数据信道的turbo编码器。此外本发明对数字通信系统的稳定性增加有贡献,特别是对现有和未来的数字移动通信系统的性能提高有贡献。
常规地,回溯(trace-back)方法用于确定ML状态。这种方法计算用于确定在维特比解码期间接收的一个符号矢量R=(r1、r2、…、rn)与编码器格构上的一个码矢量C=(c1、c2、…、cn)之间的欧几里得距离的一个矢量,然后在期望的时间、在相应的分支上输出一个ML状态,同时,在当前时间开始,在格构路径上回溯该状态,其中码向量沿该路径行进。例如,为了在当前时间k确定ML状态,需要在比当前时间提前时间(k+W)的时刻之前执行ACS操作(加-比较-选择)和维特比解码器的路径选择,并且自时间(k+W)的W回溯ML路径。这里,W是预定的尺寸,并且具有W>5m的值,此处的m是一个卷积编码器的存储尺寸(或者能力)。这里,W是滑动窗口,并且在约束长度K=9的情况下存储尺寸m为8。
对于高速维特比解码器,回溯方法具有一些优点。使用该回溯方法导致较长时间延迟。例如,当解码深度或者滑动窗口深度为W时,为了选择一个ML状态需要通过W执行反向搜索。因此,当全部的帧尺寸为FL时,为整个ML状态搜索而要求的处理延迟增加了W×(FL-W)。要注意的是,同当维特比解码器仅执行一次回溯操作(例如,当维特比解码器在帧模式中操作时(W=FL))时发生的处理时间延迟L相比,该处理延迟显著增加。更具体地讲,延迟增大(W(FL-W)-FL),例如,对于FL=2000和W=60,在帧模式中用于ML状态搜索的处理延迟为2000,它同FL是一样的。然而,在滑动窗口模式中,用于ML状态搜索的处理延迟为W(FL-W)=60(2000-60)=116400,该延迟是在帧模式中的处理延迟的58.2倍。即,要注意到处理延迟增加了大约W倍。因此,现有技术为ML状态搜索要求许多内部操作处理延迟。
对于turbo解码器,有多个已提出的解码器,如MAP(最大后验概率)解码器和SOVA(软输出维特比算法)解码器。为了提高性能,该SOVA解码器要求用于搜索ML状态的的算法。低速turbo解码器可以由前述的回溯方法实现。然而,由于该解码器实际的复杂性非常高,回溯方法的ML状态搜索可以仅在相对低的数据速率下执行。
总之,现有技术具有下列缺点。
首先,回溯方法在确定ML状态时具有大量延迟。例如,当解码深度(或者滑动窗口深度)为W时,为了在每个回溯处理选择ML状态,必须用W执行一个后向搜索。因此,当整个帧尺寸为FL时,该为整个ML状态搜索的处理延迟显著地增加W(FL-W)。
其次,当SOVA解码器用于实现turbo解码器时,必须要求用于ML状态搜索的算法,以便提高性能。然而,由于它的处理延迟问题,该回溯方法不可取。
因此,需要有一种具有减小的处理延迟的新ML状态确定方法。从而,本发明提出了一种新的ML状态确定方法,其中,考虑到了上述条件和硬件实施复杂性。
本发明的另一个目的在于提供一种用于在SOVA解码器中确定ML状态值的设备和方法。
为了实现上述目的,提供了一种用于选择ML(最大似然)状态的设备,包括多个以行和列的矩阵排列的单元;以及多个选择线,其中,每个选择线连接到相应行的所有单元,这些选择线接收相关的路径选择信号,在一列中的每个单元紧挨着该列之前的单元,以便该单元依照解码装置的格构结构接收多个状态值,在第一列的每个单元接收依照编码器的格构结构确定的多个状态值,所述的每个第一列的单元响应于选择信号,选择接收到的状态值中的一个并存储这些选择的状态值,并且在最后一列中的单元输出对应于ML状态的状态值。
目前,对于turbo解码器,已经提出了多种解码器,例如MAP解码器和SOVA解码器。为了提高解码器性能,该SOVA解码器要求用于ML状态搜索的算法。在下文中,将参照使用以行和列的矩阵排列的多个单元搜索ML状态的寄存器交换单元块来描述本发明。这里,这些单元是用于存储格构上的状态值的存储器。
本实施例包括路径选择块和寄存器交换单元块。该路径选择块根据从该信道接收的符号计算每一个可能的状态中的分支量度(metric)BM,并且向寄存器交换单元块提供路径选择信号的单元,即,输入到每个寄存器交换单元的两个信号中的一个。该寄存器交换单元块依照路径选择信号由行间(inter-row)交换更新存储在单元中的状态值。当该交换处理执行预定时间时,存储在相同列的状态值将具有相同的值。这里,该相同的状态值与在格构解码器中获得的ML状态值相同。
此处所用的术语“寄存器交换单元块”同术语“ML状态选择器”可以互换使用。


图1显示了依照本发明实施例的寄存器交换单元块。参照图1,该寄存器交换单元块包括多个以行和列的矩阵排列的单元。行的数量与格构的状态数量(S=4)相同,并且列的数量与给定窗口的尺寸相同。每个单元是用于存储格构的状态值的存储器。每行格构的组合将称作路径存储器。因此,当状态数量为S=4、并且相应于每个状态的路径存储器的尺寸为W时,该寄存器交换单元块的总尺寸变成了W×S(=4)。
如果假设在时间t输入到状态0的两条路径中的较低路径被确定为ML路径(在该格构中,最高状态是0,而且下面的状态顺序为1、2和3),这意味着在时间t+1的状态单元将由前面的ML路径确定的数据的内容传送到时间t、在该寄存器交换单元中的状态“0”单元。也就是,意味着在该寄存器交换单元块中,存储在第二行的路径存储器中的数据位将全部被传送到第一行中的除最左边的单元外的路径存储器中。该第一行中最左边的单元选择依照格构结构确定的较低端口信号b。因此,如所述,在第二行中的数据位被全部传送到了第一行。最后的选择的内容是存储在第一行中最左边的单元里。例如,由于在右边显示的格构中选择了较低路径,在时间k存储在第一行的最左边单元中的信息是“b”。在窗口尺寸足够大的情况下,在第一行的最后一个单元中存储的值与在最后一列的另一行中存储的值相同。该值是在t-W+2的ML状态索引。
图2示出了依照本发明实施例的寄存器交换单元块,其中,这些存在于第一列与最后一列之间的单元连接到刚好在该列之前的列中的两个单元,以便,它们能够依照给定的格构结构接收两个状态值。在图2中,右边示出了状态数量S=4的格构,而左边示出了连接的寄存器交换单元块,以便每个单元通过以上格构接收多个数据位。换言之,在任何情况下,当给定了一个格构时,寄存器交换单元块可以实现。
参照图2,当在给定时间k从输入到状态“0”的路径中选择较高路径时,寄存器交换单元块将在第一行单元中的数据位向右移动一个单元,并且在第一行的最左边的单元中存储“a”。否则,当从输入到状态“0”的路径中选择较低路径时,寄存器交换单元块将在第二行的单元中的数据位传送到第一行,并且在第一行的最左边的单元中存储“b”。
与此同时,当从输入到状态“1”的路径中较高路径时,寄存器交换单元块将第三行单元中的数据位传送到第二行,并且在第二行的最左边的单元中存储“a”。否则,当选择较低路径时,寄存器交换单元块将第四行单元中的数据位传送到第一行,并且在第二行的最左边的单元中存储“b”。
此外,当从输入到状态“2”的路径中较高路径时,寄存器交换单元块将第一行单元中的数据位传送到第三行,并且在第三行的最左边的单元中存储“c”。否则,当从输入到状态“2”的路径中选择较低路径时,寄存器交换单元块将第二行单元中的数据位传送到第三行,并且在第三行的最左边的单元中存储“d”。
此外,当从输入到状态“3”的路径中较高路径时,寄存器交换单元块将第三行单元中的数据位传送到第四行,并且在第四行的最左边的单元中存储“c”。否则,当从输入状态“3”的路径中选择较低路径时,寄存器交换单元块将在第四行单元中的数据位向右移动一个单元,并且在第四行的最左边的单元中存储“d”。以上的路径选择是通路径选择块中通过分支和路径量度的计算来执行的。此外,接收两个数据位的每个单元包括用于选择两个输入数据位中的一个的2×1多路复用器。路径选择块提供控制信号(或者路径选择信号(0或1))给多路复用器。
现在,将要对在寄存器交换单元块中执行的ML状态确定方法进行描述。
在每个状态中,存储在单元中的数据响应于自路径选择块提供的路径选择信号更新。这里,存储在单元中的数据与格式无关。换言之,虽然对表达为{a、b、c、d}的数据执行映射,但它同ML路径无关,并且只有同ML路径相应的输出值被不同地映射。因此,如果格构的各状态索引0、1、2和3与{a、b、c、d}分别匹配,则自寄存器交换单元块输出的值将变为关于ML路径的状态索引值。这里,当符号与表达为{a、b、c、d}的数据匹配时,寄存器交换单元块变为维特比解码器。然而,本发明的该实施例映射表达为{a、b、c、d}的数据为格构索引值,并且依照路径选择信号更新存储在各自的单元中的内容,从而确定ML状态。
图3示出了依照本发明实施例的寄存器交换单元块的详细结构。该寄存器交换单元块包括以行和列的矩阵排列的多个单元、和其每条都连接到相应行中的单元的多条路径选择线。路径选择线俩交接到路径选择块,并且将自路径选择块输出的路径选择信号提供给各个单元。
参照图3,路径选择块在时间k为每个状态根据接收的矢量计算分支量度,如维特比解码器那样。此外,路径选择块由分支量度确定路径量度,并且通过ACS操作确定每种状态中的路径。然后,该路径选择块通过确定的路径将路径选择信号输出给寄存器交换单元块。例如,对于状态数S=4,路径选择块如所述地并行输出4位。然后,寄存器交换单元块依照路径选择信号更新单元内容。例如,当路径选择信号为“0000”时,存储在第一行各自单元中的状态索引值依照第一选择信号PS0=“0”向右移动一个单元;存储在第三行各自单元中的状态索引值依照第二选择信号PS1=“0”传送到第二行的下一个单元;存储在第一行各自的单元中的状态索引值依照第三选择信号PS2=“0”传送到第三行的下一个单元;并且,存储在第三行各自的单元中的状态索引值依照第四选择信号PS3=“0”传送到第四行的下一个单元。
图4示出了状态数为S=4的编码器的格构图。在图4中要指出的是,ML状态索引值信息是{0、2、3、1、2、1、0、2…}。下面的表1示出了存储在具有依照图4的格构结构的连接的、寄存器交换单元块中各自单元中的ML状态索引信息。
在表1中,例如,对于在时间@T7存储在各自单元中ML状态索引信息,要指出的是,初始值“0202”存储在第k列,并且作为前面的状态索引信息的状态索引值“1111”存储在第(k-1)列。即,在从(k-6)到(k-1)时间存储的状态信息分别是“0000”、“2222”、“3333”、“1111”、“2222”和“1111”,它们与在图4的格构中的ML状态序列{0、2、3、1、2、1}相同。因此,当针对某种程度执行ML状态选择操作时,有可能在每一次单元更新时获得ML状态索引信息。即,同现有的回溯方法相比较,改方法能够在某种程度上执行ML状态选择操作后立即连续地获得ML状态索引信息,因此,减少了处理延迟。此外,当在一定程度上执行ML状态索引信息选择操作时,存储在相同的列中的状态值变为相同,以至于能够在任何单元输出ML状态索引信息。如果存储在相同列的索引值不同,则输出具有主号码的状态信息。
图5示出了K=4的、和用于IMT-2000空中接口的反馈产生多项式d(D)1+d^2+d^3(符号“^”表示一个乘积)turbo编码器的格构图。参照图5,由于K=4,所以总共存在8种状态,并且由于R=1/3,所以每个分支输出三个符号C0、C1和C2。在状态0(S0;000)中,对于输入信息0,发生到状态1(S0;000)的转变;并且对于输入信息1,发生到状态4(S4;100)的转变。在状态1(S1;001)中,对于输入信息0,发生到状态4(S4;100)的转变;并且对于输入信息1,发生到状态0(S0;000)的转变。在状态2(S2;010)中,对于输入信息0,发生到状态5(S5;101)的转变;并且对于输入信息1,发生到状态1(S1;001)的转变。在状态3(S3;011),对于输入信息0,发生到状态1(S1;001)的转变;并且对于输入信息1,发生到状态5(S5;101)的转变。在状态4(S4;100)中,对于输入信息0,发生到状态2(S2;010)的转变;并且对于输入信息1,发生到状态6(S6;110)的转变。在状态5(S5;101)中,对于输入信息0,发生到状态6(S6;110)的转变;并且对于输入信息1,发生到状态3(S3;011)的转变。在状态6(S6;110)中,对于输入信息0,发生到状态7(S7;111)的转变;并且对于输入信息1,发生到状态3(S3;011)的转变。在状态7(S7;111)中,对于输入信息0,发生到状态3(S3;011)的转变;并且对于输入信息1,发生到状态7(S7;111)的转变。
图6示出了依照图5的格构结构的寄存器交换单元块的结构。在图6中,输入到各自单元的{1、2、3、4、5、6、7}表示在格构中的状态0、1、2、3、4、5、6和7,并且PS0-PS7表示由路径选择块提供的、用于选择行的路径选择信号。窗口尺寸W(或者Ds)是通过试验确定的。该输入到第一列中各自的单元的状态信息是以前由格构确定的。此外,存在于第一列和最后一列之间的单元每个都连接到在紧挨它前一列的两个单元中,以至于它们可以依照格构结构接收两个状态。例如,在第一行中除第一单元之外每个单元都连接到在同一行中紧挨着它的前面的单元,以及在紧挨着它的前面一列的第二行中的第二个单元。并不是在所有情况下每个单元都如图6所示接收到两个状态值。即,每个单元都有可能依照编码器的特征接收两个或者两个以上的状态值。当接收到两个状态值时,每个单元具有如所述的2×1多路复用器结,并且依照路径选择信号选择两个接收的状态中的一个,以便将该选择的状态值提供给相应的单元。
如上所述,同现有的回溯ML状态选择方法相比较,依照本发明使用寄存器交换方法的ML状态选择方法没有处理延迟,使得它适用于高速的应用。因此,本发明可以有效地应用到用于用在IMT-2000空中接口的高速turbo解码器的ML状态选择。
虽然在此参照特定的实施例显示和描述了本发明,本领域的技术人员需要理解的是,在不脱离由所附的权利要求所限定的本发明的精神和范围的情况下,可以进行各种形式和细节上的变化。
权利要求
1.一种用于在解码设备中选择ML(最大似然)状态的设备,包括多个以行和列的矩阵排列的单元;以及多条选择线,其中每条选择线连接到在相应行的所有单元,这些选择线接收相关的路径选择信号,一列中的每个单元连接到在紧挨着它前面的列中的单元以便该单元依照该解码设备的格构结构接收多个状态值,在第一列中的每个单元接收多个依照编码器的格构结构确定的状态值,所述的每个第一列单元响应于选择信号选择接收的状态值中的一个,以便存储该选择的状态值,以及在最后一列中的单元输出与该ML状态相应的状态值。
2.如权利要求1中的所述的设备,其中,所述的每个单元包括m×1多路复用器。
3.如权利要求1中的所述的设备,其中,存储在相同列的单元的状态值在经历预定时间后变得相同。
4.如权利要求1中的所述的设备,其中,当从在最后一列的单元中输出的状态值不同时,具有主号码的状态值被确定为ML状态值。
5.如权利要求1中的所述的设备,其中,路径选择信号是这样的信号,用于计算在编码器的格构的每个状态下的分支量度值,并且用于使用该计算的分支量度值和紧挨其前面的路径量度值来选择路径。
6.一种用于在解码设备中选择ML状态的设备,包括路径选择块,用于计算用于由编码器确定的格构的每个状态中的分支量度值,并且输出用于使用该计算的分支量度值和紧挨其前面的路径量度值来选择路径的路径选择信号;以及寄存器交换单元块,包括多个以行和列的矩阵排列的单元,和多个选择线,其中,每条选择线连接到相应行的所有单元,选择行接收相关的路径选择信号,一列的每个单元连接到紧挨它的前面的列的单元,以便能够依照该解码设备的格构结构接收多个状态值,第一列中的每个单元接收多个依照编码器的格构结构确定的状态值,所述的每个第一列单元响应于选择信号从接收的状态值中选择一个,以便存储该选择的状态值,以及在最后一列中的单元输出同ML状态相应的状态值。
7.如权利要求6中所述的设备,其中,所述的每个单元包括m×1多路复用器。
8.如权利要求6中所述的设备,其中,存储在相同列的单元中的状态值在经历预定时间之后变成相同的。
9.如权利要求6中所述的设备,其中,当从最后一列的单元中输出的状态值不同时,具有主号码的状态值被确定为ML状态值。
10.一种用于在ML状态搜索设备中选择ML状态的方法,该ML状态搜索设备包括多个以行和列的矩阵排列的单元;以及多条选择线,其中每条选择线连接到在相应行的所有单元,这些选择线接收相关的路径选择信号,一列中的每个单元连接到在紧挨着它前面的列中的单元,以便该单元依照该解码设备的格构结构接收多个状态值,并且在第一列中的每个单元接收多个依照编码器的格构结构确定状态值,该方法包括下列步骤计算用于由编码器确定的每个格构中的每个分支的分支量度值,并且提供用于通过使用该计算的分支量度值和紧挨它前面的路径量度值来选择路径的路径选择信号;以及在多个单元中的一个中响应于选择信号从接收的状态值中选择一个,存储选择的状态值,并且输出在最后一列的单元中的ML状态值。
11.如权利要求10中所述的方法,其中,所述的每个单元包括m×1多路复用器。
12.如权利要求10中所述的方法,其中,存储在相同列的单元中的状态值在经历预定的时间之后变得相同。
13.如权利要求10中所述的方法,其中,其中,当从最后一列的单元中输出的状态值不同时,具有主号码的状态值被确定为ML状态值。
全文摘要
一种用于在解码设备中选择ML(最大似然)状态的设备,包括多个以行和列的矩阵排列的单元和多条选择线。在该设备中,每条选择线连接到在相应行的所有单元,这些选择线接收相关的路径选择信号,一列中的每个单元连接到在紧挨着它前面的列中的单元,以便该单元依照该解码设备的格构结构接收多个状态值,在第一列中的每个单元接收多个依照编码器的格构结构确定的状态值,所述的每个第一列单元响应于选择信号选择接收的状态值中的一个,以便存储该选择的状态值,以及在最后一列中的单元输出与该ML状态相应的状态值。
文档编号H04B7/24GK1376342SQ99815201
公开日2002年10月23日 申请日期1999年12月30日 优先权日1998年12月31日
发明者金潣龟 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1