使用关于被发送消息的多个假设的解码方案转让专利

申请号 : CN200880127753.1

文献号 : CN101960763A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : J·H·朴B·T·沈J·W·金S·A·格拉兹科S·纳纳瓦蒂J·W·朴C·W·李T·R·张

申请人 : 高通股份有限公司

摘要 :

提供了用于对无线通信传输的编码数据比特进行解码的方法和装置。可以生成与该编码数据比特的已知比特值相对应的先验比特值的集合。可以从要考虑的可能的解码路径中去除与和所述先验比特值不一致的已解码数据比特相对应的解码路径,并且通过从所述可能的解码路径中的未被去除的剩余解码路径中选择解码路径来对编码数据进行解码。可以评估多个假设,每个假设对应于不同的先验比特值集合,其中基于该评估的输出来选择关于一个假设的已解码数据以供进一步的处理。

权利要求 :

1.一种用于对无线通信传输的编码数据比特进行解码的方法,包括:生成多个假设,每个假设基于关于所述传输或相关传输的先验信息而指定了所述编码数据比特中已知的或被预测的比特值的一集合;

通过对所述编码数据比特执行解码来评估所述多个假设,其中,所述解码包括:排除与由所述假设所指定的比特值不一致的已解码比特的集合;并且选择与所述多个假设中的一个假设相对应的已解码比特作为输出。

2.如权利要求1所述的方法,其中,评估所述多个假设包括:通过使用多个解码器对所述编码数据比特执行解码来并行地评估多个假设,其中,每个解码器皆利用由不同的假设所指定的比特值。

3.如权利要求1所述的方法,其中,评估所述多个假设包括:通过多次使用单个解码器对所述编码数据比特执行解码以便每次皆解码由不同的假设所指定的所述编码比特的比特值,来以顺序的方式评估多个假设。

4.如权利要求1所述的方法,其中,以顺序的方式评估多个假设包括:评估所述多个假设中的一些假设而不是全部假设。

5.如权利要求1所述的方法,进一步包括:

对通过利用由不同的假设所指定的比特值的解码操作所获得的结果进行比较;并且基于所述比较,选择与所述多个假设中的一个假设相对应的已解码比特作为输出。

6.如权利要求5所述的方法,其中,对通过利用由不同的假设所指定的比特值的解码操作所获得的结果进行比较包括:对以下至少一个进行比较:累积距离值以及似然值。

7.如权利要求5所述的方法,其中,对通过利用由不同的假设所指定的比特值的解码操作所获得的结果进行比较包括:校验字段的比较。

8.如权利要求1所述的方法,其中,排除与由所述假设所指定的比特值不一致的已解码比特的集合包括:从可能解码路径的集合中去除与和由所述假设所指定的比特值不一致的已解码数据比特相对应的解码路径。

9.一种用于无线通信的接收机,包括:

接收机前端,其用于接收无线传输并且生成编码比特的集合;

假设引擎,其用于生成多个假设,每个假设基于关于所述传输或相关传输的先验信息而指定了所述编码数据比特中已知的或被预测的比特值的一集合;以及解码器,其被配置为通过执行解码操作来评估所述假设,其中,所述解码操作包括:排除与由所述假设所指定的比特值不一致的已解码比特的集合,并选择与所述多个假设中的一个假设相对应的已解码比特作为输出。

10.如权利要求9所述的接收机,其中,所述解码器被配置为:通过从可能解码路径的集合中去除与和由假设所指定的比特值不一致的已解码数据比特相对应的解码路径,来对所述编码比特进行解码;并且从所述可能解码路径中未被去除的剩余解码路径中选择解码路径。

11.如权利要求9所述的接收机,其中,所述解码器包括多个解码电路,所述多个解码电路允许并行地评估多个假设。

12.如权利要求9所述的接收机,其中,所述解码器被配置为:通过多次对所述编码数据比特执行解码来以顺序的方式评估多个假设,其中,每次皆利用由不同的假设所指定的比特值来执行所述解码。

13.如权利要求9所述的接收机,还包括:

存储器,其用于存储利用由不同的假设所指定的比特值进行解码的结果。

14.如权利要求9所述的接收机,其中,所述解码器通过以下操作来以顺序的方式评估多个假设:对假设进行评估,直到获得满足指定标准的解码结果为止。

15.如权利要求9所述的接收机,还包括:

比较逻辑,用于对通过利用由不同的假设所指定的比特值的解码操作所获得的结果进行比较;以及选择逻辑,用于基于所述比较逻辑生成的输出,选择与所述多个假设中的一个假设相对应的已解码比特作为输出。

16.如权利要求15所述的接收机,其中,所述比较逻辑针对通过利用由不同的假设所指定的比特值的解码操作所获得的结果,对以下至少一个进行比较:累积距离值以及似然值。

17.一种用于无线通信的装置,包括:

用于接收无线传输并生成编码比特的集合的单元;

用于生成多个假设的单元,其中每个假设基于关于所述传输或相关传输的先验信息而指定了所述编码数据比特中已知的或被预测的比特值的一集合;以及用于通过执行解码操作来评估所述假设并选择与所述多个假设中的一个假设相对应的已解码比特作为输出的单元,其中,所述解码操作包括:排除与由所述假设所指定的比特值不一致的已解码比特的集合。

18.如权利要求17所述的装置,其中,所述用于评估所述假设的单元包括:多个用于解码的单元,所述多个用于解码的单元允许对多个假设进行并行评估。

19.如权利要求17所述的装置,其中,所述用于评估所述假设的单元包括:顺序解码单元,其用于以顺序的方式解码多个假设。

20.如权利要求19所述的装置,还包括:

用于存储质量参数的单元,所述质量参数用于指示使用不同的假设所获得的解码结果的质量;以及用于基于所存储的质量参数来选择对应于最高解码质量的结果的单元。

21.如权利要求19所述的装置,还包括:

用于对通过利用由不同的假设所指定的比特值的解码操作所获得的结果进行比较的单元;以及用于基于所述比较,选择与所述多个假设中的一个假设相对应的已解码比特作为输出的单元。

22.如权利要求21所述的计算机程序产品,其中,所述用于对通过利用由不同的假设所指定的比特值的解码操作所获得的结果进行比较的单元包括:用于对以下至少一个进行比较的单元:累积距离值以及似然值。

23.一种用于对无线通信传输的编码数据比特进行解码的计算机程序产品,其包括具有存储在其上的指令集的计算机可读介质,所述指令集由一个或多个处理器执行并且所述指令集包括:用于生成先验比特值的集合的指令,所述先验比特值对应于所述编码数据比特的已知比特值;

用于从可能解码路径的集合中去除与和所述先验比特值的集合不一致的已解码数据比特相对应的解码路径的指令;以及用于通过从所述可能解码路径中的未被去除的剩余解码路径中选择解码路径,来解码所述编码数据比特的指令。

24.如权利要求23所述的计算机程序产品,其中,所述用于评估所述假设的指令包括:多个用于解码的单元,所述多个用于解码的单元允许对多个假设进行并行评估。

25.如权利要求23所述的计算机程序产品,其中,所述用于评估所述假设的指令包括:顺序解码单元,用于以顺序的方式解码多个假设。

26.如权利要求25所述的计算机程序产品,还包括:用于存储质量参数的指令,所述质量参数用于指示使用不同的假设所获得的解码结果的质量;以及用于基于所存储的质量参数来选择对应于最高解码质量的结果的指令。

27.如权利要求23所述的计算机程序产品,还包括:用于对通过利用由不同的假设所指定的比特值的解码操作所获得的结果进行比较的指令;以及用于基于所述比较,选择与所述多个假设中的一个假设相对应的已解码比特作为输出的指令。

28.如权利要求27所述的计算机程序产品,其中,所述用于对通过利用由不同的假设所指定的比特值的解码操作所获得的结果进行比较的指令包括:用于对以下至少一个进行比较的指令:累积距离值以及似然值。

说明书 :

使用关于被发送消息的多个假设的解码方案

技术领域

[0001] 本发明的实施例整体涉及无线通信,并且更具体地,涉及对无线传输进行解码。

背景技术

[0002] 诸如宽带互联网接入和流媒体应用的无线通信服务的快速增长导致对较高数据速率的需求增加。诸如正交频分复用(OFDM)和正交频分多址(OFDMA)之类的复用方案的进步对下一代无线通信系统是很重要的。这是因为此类方案可以提供包括调制效率、频谱效率、灵活性(例如,允许有差异的服务质量)以及比常规单载波调制方案更强的抗多径性在内的许多优势的事实。
[0003] OFDM和OFDMA系统通常利用发射机处的卷积编码器来提供纠错。使用卷积码,将m-比特的数据串变换成n个比特,其中m/n为编码率。在接收机处使用诸如Viterbi解码器之类的解码器来对接收到的编码的n个比特进行解码,以恢复原始的m-比特序列。该方案通常允许对原始的m-比特序列正确地进行解码,即使是该编码的n个比特之中的一个或多个比特未被成功地接收,因此实现了误比特率的降低。
[0004] 然而,随着对无线服务的可靠性和性能需求的日益增长,不断需要持续降低误比特率。

发明内容

[0005] 一个实施例提供了一种用于对无线通信传输的编码数据比特进行解码的方法。该方法整体包括:生成多个假设,每个假设基于关于所述传输或相关传输的先验信息而指定了所述编码数据比特中已知的或被预测的比特值的一集合;通过对所述编码数据比特执行解码来评估所述多个假设,其中,所述解码包括:排除与由所述假设所指定的比特值不一致的已解码比特的集合;并且选择与所述多个假设中的一个假设相对应的已解码比特作为输出。
[0006] 一个实施例提供了一种用于无线通信的接收机。该接收机整体包括:接收机前端,用于接收无线传输并且生成编码比特的集合;假设引擎,其用于生成多个假设,每个假设基于关于所述传输或相关传输的先验信息而指定了所述编码数据比特中已知的或被预测的比特值的一集合;以及解码器,其被配置为通过执行解码操作来评估所述假设,其中,所述解码操作包括:排除与由所述假设所指定的比特值不一致的已解码比特的集合,并选择与所述多个假设中的一个假设相对应的已解码比特作为输出。
[0007] 一个实施例提供了一种用于无线通信的装置。该装置整体包括:用于接收无线传输并且生成编码比特的集合的单元;用于生成多个假设的单元,其中每个假设基于关于所述传输或相关传输的先验信息而指定了所述编码数据比特中已知的或被预测的比特值的一集合;以及用于通过执行解码操作来评估所述假设并且选择与所述多个假设中的一个假设相对应的已解码比特作为输出的单元,其中,所述解码操作包括:排除与由所述假设所指定的比特值不一致的已解码比特的集合。

附图说明

[0008] 为了详细地理解本发明的上述特征,可以通过参考实施例来进行对以上简要描述的本发明的更具体的描述,附图中示出了其中一些实施例。但是要注意到,附图仅示出了本发明的典型实施例,并且因此不能将其认为是限制本发明的范围,因为本发明可以允许其它等效的实施例。
[0009] 图1示出了根据本发明的实施例的示例性系统。
[0010] 图2是根据本发明的实施例的能够进行先验解码的接收机的方框图。
[0011] 图3是根据本发明的实施例的先验解码器的方框图。
[0012] 图4是示出了根据本发明的实施例的先验信息(API)比特的实例的先验解码器的方框图。
[0013] 图5示出了根据本发明的实施例的网格图的状态转换的实例。
[0014] 图6是用于根据本发明的实施例的先验解码的示例性操作的流程图。
[0015] 图7示出了图5的解码器,并且提供了先验信息比特的示例性值。
[0016] 图8示出了根据本发明的实施例,具有完整的解码路径集合以及基于先验信息比特而减少的解码路径集合的网格图的实例。
[0017] 图9示出了根据本发明的实施例,考虑了先验信息的第一集合的解码的示例性结果。
[0018] 图10示出了根据本发明的实施例,考虑了先验信息的第一集合的解码的示例性结果。
[0019] 图11是根据本发明的实施例,具有先验解码器和假设引擎的接收机的方框图。
[0020] 图12是根据本发明的实施例的假设引擎的方框图。
[0021] 图13示出了可用于基于先验信息比特来生成解码假设的示例性消息格式。
[0022] 图14A-14G示出了基于先验信息比特的不同的解码假设。
[0023] 图15示出了根据本发明的实施例,用于不同API假设的解码的示例性结果。
[0024] 图16示出了根据本发明的实施例,用于不同API假设的解码的示例性结果。
[0025] 图17示出了根据本发明的实施例,用于不同API假设的解码的示例性结果。
[0026] 图18示出了能够并行地评估多个解码假设的示例性接收机。
[0027] 图19示出了用于并行地评估多个解码假设的示例性操作。
[0028] 图20示出了能够并行地评估多个解码假设的示例性解码器。
[0029] 图21示出了能够以顺序的方式评估多个解码假设的示例性接收机。
[0030] 图22示出了用于以顺序的方式评估多个解码假设的示例性操作。
[0031] 图23示出了能够以顺序的方式评估多个解码假设的示例性解码器。
[0032] 图24示出了能够以迭代的方式评估多个解码假设的示例性接收机。
[0033] 图25示出了用于以迭代的方式评估多个解码假设的示例性操作。

具体实施方式

[0034] 本发明整体而言提供了使用关于传输的先验信息来对经卷积编码的无线传输进行解码的技术和装置。可以使用该先验信息,通过排除包括与该先验信息不一致的比特的已解码比特流,来有效地降低可能的已解码比特流的数量。通过去除这些导致错误数据的“已知为错误”的路径,在一些情况中可以提高已解码误比特率。
[0035] 如本文所使用的,术语“先验信息”通常是指预先已知的信息,例如,源自关于必然相关结果的已知的或假设的原因的信息。如下文所更加详细地描述的,涉及传输的先验信息的实例包括在特定消息中的已知信息比特。这些已知信息比特的实例包括具有由标准所指定的值的保留比特或者这样的比特:这些比特具有已知值或者具有可基于其在先前传输中的值而预测的值。这些已知的比特位置和比特值(在本文中被称为“API值”)可用于解码过程,以通过排除与和API值不一致的值相对应的路径,来提高解码性能。
[0036] 示例性环境
[0037] 图1示出了一个示例性系统,在该系统中可以利用本发明的实施例来处理从基站110到移动站120的无线信号。基站110可以是安装在诸如蜂窝电话塔之类的固定位置处的无线通信站。移动站120可以是能够与基站110通信的任意合适类型的用户设备(UE),例如,蜂窝手持机或其他类型的移动设备。
[0038] 基站110和移动站120中的每一个皆可使用一个或多个天线112、122并且使用任意合适的无线通信技术来进行通信,这些无线通信系统使用诸如正交频分复用(OFDM)和正交频分多址(OFDMA)之类的调制方案。对于一些实施例,基站与移动站之间的通信可以部分地或者完全地符合各种电气电子工程师协会(IEEE)标准,例如,IEEE 802.16(微波接入全球互操作性-WiMAX)和802.20(移动宽带无线接入-MBWA)标准族。
[0039] 在一些应用中,基站110可以在通常被称为前向链路的链路上向移动站120发送数据,而移动站120在反向链路上向基站110发送数据。如下文所更详细地描述的,不同类型的先验信息可用于前向链路传输和反向链路传输。该先验信息可以包括关于在基站110与移动站120之间的特定消息的定时和内容的信息,此信息可导致获知传输中一个或多个比特的值。
[0040] 可以在基站110、移动站120或二者处所执行的解码中利用本文所述的技术。如下文所更详细地描述的,可以使用关于在基站110与移动站120之间发送的不同类型的消息的先验信息来确定在传输中的特定比特位置的值。
[0041] 图2示出了能够接收被发送的信号的接收机的一个实施例的示例性组件的方框图。天线202可以接收到来自发送方的被发送信号,并将其发送到射频(RF)前端210。RF前端210可以包括用于接收被发送信号并对其进行准备以进行数字信号处理的任意合适电路,所述数字信号处理例如为:自动增益控制(AGC)、快速傅立叶变换(FFT)单元、信道估计器以及载波与干扰和噪声比(CINR)估计器。
[0042] 然后,可以向信号处理单元220发送来自RF前端210的信号,信号处理单元220可以包括用于载波解分配、信号解映射等等的任意合适的电路。信号处理单元220的输出是编码比特的集合。向信道解码器230传递这些编码比特,信道解码器230可以使用关于相应的传输的先验信息来对这些编码比特进行解码。
[0043] 先验解码
[0044] 图3是根据本发明的实施例,能够基于先验信息来执行解码器操作的解码器230的方框图。虽然所示的实例显示了Viterbi解码方案作为一个实例,但是本文所给出的先验解码技术还可应用于其它类型的解码方案,例如,Turbo编码/解码、低密度奇偶校验(LDPC)编码/解码、RS编码/解码、BCH编码/解码以及各种其它方案。
[0045] 在利用系统码的方案的情况中,编码比特可以包括系统比特(编码之前的信息)和奇偶检验比特(由于编码所导致的冗余比特)。API解码方案可以应用于系统比特。换句话说,API比特值可以包括基于所使用的特定系统码的系统比特的已知值。为了将API应用于利用系统码的系统,可以在解码器的前端处,用(已知的/预测的)API比特值来替换接收到的数据的比特。这样,可以通过对系统解码器使用API来提高成功解码的概率。
[0046] 解码器230包括分支度量单元232、相加比较选择(add compare select,ACS)逻辑234以及用于从“软(或硬)的”接收的/编码的比特的集合240产生已解码比特集合246的回溯(traceback)(TB)单元236。分支度量单元通常用于计算分支度量,分支度量表示在接收到的符号(比特集合)与代码表中的符号之间的标准化距离。ACS单元234通常K
编译分支度量数据,以产生关于解码路径((2-1)个路径,假定一个约束长度K)的度量并且选择这些解码路径中的一个解码路径作为最佳解码路径。将这些选择的结果写入回溯单元236的存储器,该回溯单元236从所存储的判决恢复路径。然后可以基于所恢复的路径的转换,来产生已解码比特集合。
[0047] 这些解码器组件中的一个或多个可由API比特250的一个集合来控制,以避免选择对应于与先验信息不一致的比特值的解码路径。换句话说,API比特250可以包括足够的信息来指示正在被解码的比特序列中的特定比特位置的已知的特定值(“0”或“1”)。具有API比特250中所指定的值之外的其它值的任意比特串皆非有效的已解码比特串。因此,解码器可以在路径选择期间不考虑对应于这些无效比特串的解码路径。
[0048] 如图4中所示的,对于一些实施例,可以由API比特250控制ACS单元234,以便排除对应于无效已解码比特串的解码路径。在ACS操作期间,可以使用API比特250来减少对应于与API值不一致的经编码比特值的特定解码路径转换。
[0049] API比特250通常包括足够的信息来基于先验信息识别具有已知的(或可预测的)比特值的已解码比特串中的一个或多个比特,并且该识别另外还基于这些比特值的具体值。用以传递该信息的实际格式可以随着不同的实施例且根据实际的实现方案而变化。
[0050] 例如,对于一些实施例,API比特250可以包括三种类型的信息:比特位置指示252、比特值254、以及可选地API掩码比特256。比特位置252可以提供对(编码序列中)具有已知值的比特位置的指示,而比特值254提供了经编码比特的实际已知值(“0”或“1”)。下文所详细描述的图7提供了具有关于根据该格式的比特位置、比特值和掩码比特的示例性值的图示。
[0051] API比特位置252可以确定与网格结构中的已知的/预测的经编码比特的位置相对应的比特位置。根据一个实施例,API比特位置252可以明确地确定具有已知值的比特位置,而全部其他比特位置被认为是“未知的”。因此,可以使用比特值254值的相应比特值“0”或“1”来识别网格结构中的有效转换并且有效地去除涉及无效转换的解码路径。
[0052] 例如,图5示出了具有3-比特状态的网格结构的状态转换实例。所示实例假定编码率为1/2并且K=4(具有3-比特、K-1的状态寄存器)。实线箭头指示对应于输入比特“0”的状态转换,而虚线箭头指示对应于输入比特“1”的状态转转换。根据API解码,可以不考虑对应于与已知值不一致的输入比特的状态转换,从而从最终选择中有效地排除包括这些转换的任意路径。
[0053] 例如,如果关于该状态的已知API比特值是“0”,则将评估采用实线的状态转换,而无需计算采用虚线的状态转换,因为其是不应考虑选择的无效路径的一部份。如上所述,通过将状态度量的值设置为最坏情况值,可以在下一个转换时有效地排除这些转换。除了通过从选择中排除无效路径来降低误比特率之外,基于API比特值减少转换的数量还可以减少ACS单元中的计算的数量。
[0054] 对于一些实施例,可以通过利用API掩码比特256确定API比特值应被忽略的比特位置,来实现掩码功能。例如,当标准发生了改变从而导致先前已知的比特值变得未知时,该掩码功能会是有用处的并且增加了灵活性。设置掩码比特可以提供一种简单的机制来有效地适应该改变。还可以通过操纵API比特位置252以去除对不再具有已知值的比特位置的确定,来实现掩码功能,从而提供了对于改变比特掩码值中的值并且/或者完全排除对比特掩码值的需要的一种替换方案。
[0055] 图6示出了用于API解码的示例性操作600。这些操作在602处开始,在602处,基于先验信息生成假设。在604处,去除导致与该假设的API比特值不一致的比特值的解码路径。最终,在606处,基于对剩余路径中的一个路径的选择,来执行解码。
[0056] 如本文所使用的,术语“假设”通常是指特定的API比特集合,例如,其用于指示具有已知值的比特位置并且指定这些比特的值。如下文所更详细地描述的,对于一些实施例,可以提供独立的逻辑(在本文中被称为“假设引擎”)来生成一个或多个假设,例如,基于来自MAC处理器的消息信息。
[0057] 图7示出了应用于API解码器的6-比特流的假设的一个实例。所图示的假设经由API比特位置值[1235],来指示API比特值出现在解码中使用的比特位置1、2、3和5处。根据所示方案,对应的API比特值[1 0 1 1]指示在这些位置处的比特的比特值是:比特1=1、比特2=0、比特3=1并且比特5=1。对于一些实施例,可以使用API掩码比特值[0 0 0 0]来指示没有对任何比特应用任何掩码功能。另一方面,为了从API解码中排除一个比特,例如,可以将掩码比特设置为[0 0 0 1],以掩蔽比特位置5,从而得到实际的比特值[1 0 1 X]。
[0058] 当然,还可以通过控制API比特位置值来实现API掩码功能。例如,还可以通过从所述比特位置值中去除5,来有效地掩蔽比特位置5,从而得到比特位置值[123],其具有对应的API比特值[1 0 1]。在该方案中,可以有效地掩蔽API比特值而无需独立的掩码值数据结构。
[0059] 在一个可替换的方案中,可以仅使用API比特值和对应的API掩码值。例如,可以假定将比特序列中的全部位置皆用于API解码,例如,通过默认或明确指示API位置值中的全部比特位置(例如,[1 2 3 4 5 6])。在任意一种情况中,可以使用API掩码值来确定不具有对应的API比特值的比特位置。例如,可以使用API掩码值[0 0 0 1 0 1],其中“1”值指示应该忽略对应于比特位置4和6的API比特值,从而得到对应的API比特值[1 0 1 X1 X]。
[0060] 图8示出了可以如何应用图7中所示的假设的API比特值来减少解码期间所考虑的解码路径的数量。上面的图810通过在假定全部输入比特皆未知的常规解码方案中所考虑的图,显示了全部可能路径。然而,如下面的图820所示的,一个API解码方案在基于已知的API比特值排除了大量路径转换之后,搜索数量极大减少的路径。
[0061] 可以通过从左到右穿过图820来解释这种基于API比特值的路径减少。在上方罗列了用于对应的转换的已知API值。对于第一次转换,比特值是已知的“1”,导致去除了对应于零输入比特的实线路径转换。这导致到状态节点100b、101b、110b和111b的转换。
[0062] 第二次转换对应于已知比特值“0”,导致去除虚线路径转换。这导致到状态节点010b和011b的转换。第三次转换对应于已知比特值“1”,导致去除实线路径转换。这导致到单个状态节点101b的转换。
[0063] 然而,用于第四次转换的比特值是未知的。因此,评估两个可能的转换路径。这导致到状态节点010b和110b的转换。第五次转换对应于已知比特值“1”,导致去除实线路径转换。这导致到状态节点101b和111b的转换。用于第六次转换的比特值也是未知的。因此,评估两个可能的转换路径,导致从状态节点101b到状态节点010b和110b的转换和从状态节点111b到状态节点011b和111b的转换。
[0064] 可以评估关于这些剩余路径的分支度量,以选择最佳路径并生成对应的已解码比特集合。通过排除对应于无效比特序列的解码路径,可以使用API解码提高误分组/比特率,在噪声较大的环境中会得到更大的性能改进。
[0065] 图9是对IEEE 802.16e标准的帧控制头部(FCH)/下行链路帧前缀(DLFP)消息进行仿真解码的误分组率(PER)相对于信噪比(SNR)的示例性图。该类型的消息包括24比特的信息。其中,5个比特是预留比特,按照该标准,这5个预留比特将被设置成0。在该仿真实例中,这5个预留比特被用作为先验信息,其中在该24比特串中的对应位置处具有已知比特值“0”。该仿真还假定如下的调制和编码:QPSK,TBCC(r=1/2),重复因子(repetition factor)为4并且复制因子为2,并且假定在接收端(RX)上采用重复最大比合并(MRC)。
[0066] 如图所示,API解码方案在AWGN环境中显示出相对于常规解码方案而言具有性能提高。例如,当与(不考虑API的)常规解码相比时,API解码方案在AWGN信道中显示出-2了在PER 10 处具有0.6dB的增益。
[0067] 图10是类似于图9的图,但是对应的仿真假定在接收端(RX)采用重复最大比合并(MRC)和复制两者。如图所示,在该实例中,与无API解码方案的情况相比,API解码方-2案在AWGN信道中显示出在PER 10 处具有接近0.75dB的增益。
[0068] 假设引擎
[0069] 如上所述,对于一些实施例,可以提供假设引擎以生成“假设”,其中每个“假设”包括在执行API解码时使用的一个API比特值集合。根据具体的实现,假设引擎可以生成单个假设或多个假设,其中该多个假设的区别可以在于哪些比特具有已知值以及这些比特的已知值是什么。例如,当对于给定的序列仅存在有限数量的有效比特合并时,评估多个假设会是有用处的。
[0070] 图11示出了接收机电路1100,其包括API解码器230和假设引擎1110。如图所示,假设引擎1110可以接收关于来自媒体接入控制(MAC)处理器1120的消息的信息并生成API比特值(假设)以供API解码器230使用。API解码器230开始使用由假设引擎1110所提供的API比特值来对接收到的软(或硬)比特Rs进行解码。API解码器230输出已解码数据比特Rd,已解码数据比特Rd被传递至消息解析器1130。
[0071] 如果消息解析器1130检测到已解码比特是一种消息,则分析该消息并将该消息传递至MAC(媒体接入控制)处理器1120。MAC处理器1120可以作为一种协议分析器,用于分析接收到的数据,例如,以便确定接下来的一个(或多个)可能的消息类型是什么以及定时将会是什么。
[0072] 例如,MAC处理器1120可以识别第一个输入消息(或数据)将会是FCH/DLFP消息,其后是下行链路前导码。在一些情况中,MAC处理器1120可以使用来自先前帧的一些信息,例如,以确定编码率、消息长度或一些其他参数。MAC处理器1120可以向假设引擎1110提供该信息,假设引擎1110将使用该信息来提取特定比特位置的已知比特值(或预测比特值)并生成API信息以转发至API解码器。
[0073] 图12示出了可用于基于MAC处理器1120所提供的先验信息和消息信息来生成解码假设的示例性假设引擎1110。如图所示,假设引擎接收关于消息类型的指示,并且假设引擎包括逻辑1210,其用于获取由该消息类型所指定的一个(或多个)对应的消息,并且格式逻辑1220分析该一个(或多个)消息的格式。
[0074] 对于一些实施例,除了具有固定的/已知的比特值的比特位置(例如,根据标准而被设置为已知值的预留比特)之外,还可以用可预测的信息来生成假设。例如,可以基于来自先前接收到的消息的值来预测比特信息(例如,编码类型很可能不随着从一个消息到下一个消息而改变)。
[0075] 因此,分类逻辑1230可以将给定消息中的比特信息分成至少三个类别:固定信息、可预测信息和可变信息。固定(已知)信息通常是指固定的从而从初始阶段100%已知的信息,或者是在一些条件下(例如,在校验了相关消息的解码结果之后)已知的一些比特值。例如,可以分析与要被解码的数据相关的消息(例如,已知被放置于要被解码的数据之前的消息或数据)的解码结果,并且可以从所分析的数据中提取API信息。
[0076] 可预测信息可以包括在特定条件或假定情况下可被预测的信息,从而其能够为包含一个或多个比特的集合提供不同候选值或比特组合。在不同的假设中可以包括不同的候选值。例如,可预测信息可以包括在特定条件或假定情况下可预测的一些信息或者在校验了相关消息的解码结果之后可预测的信息。
[0077] 可变信息通常包括未知的或过于难以预测的信息,从而其通常不被用作API比特值(例如,用于这些比特位置的API比特位置值可以被设置成“0”)。在对信息比特进行分类之后,假设引擎的假设API和传递逻辑1240可以使用该被分类的信息,来生成一个或多个API比特值集合(每个集合对应于一个假设)。例如,逻辑1240可以构造要被输出至解码器230的API比特位置、比特值和掩码串。
[0078] 本文所给出的API解码方案可以应用于多种不同类型的消息。例如,API解码可以应用于(FCH)下行链路帧前缀(DLFP)消息,如下所述的,常规DL映射消息、压缩DL MAP消息、UL MAP消息、带宽请求(BW-REQ)消息、初始测距请求(IRNG-REQ)消息等等。
[0079] 如图13中所图示的帧控制头部(FCH)下行链路帧前缀(DLFP)消息1300提供了可被分类成固定的、可预测的和可变的信息的各种比特的良好实例。在IEEE 802.16e OFDMA标准中定义了FCH消息的格式和内容。DLFP是FCH信道的内容。DLFP是在每个帧的开头处所发送的数据结构,并且包括关于当前帧的信息并被映射到FCH。因此,对于处理整个帧来说,成功地解码DLFP是非常重要的。一些比特的分类可以随着时间而改变,例如,在从初始获取状态到检测第一消息帧的转换之后。
[0080] 例如,比特映射(bitmap)字段1310包括6个比特,其中每个比特指示对应的消息群是否被段(segment)使用。在初始获取状态中,这些比特是未知的。然而,在对消息段进行初始解码和识别之后,将会识别这些比特中的至少一个比特(例如,假定第一个消息群比特被使用,API比特=“1XXXXX”)。此外,在正常操作状态中,移动站可以预测全部6个比特,假定基站发送与先前帧中的比特映射相同的比特映射。
[0081] 如前所述,只要标准不改变,预留字段1320和1322的比特就将仍然是固定的。反之,重复类型字段1330的2个比特难以预测,并且可以随着一个帧到另一个帧而改变。
[0082] 可以用不同的方式来对3-比特的编码类型字段1340进行分类并将其用于生成多个不同的假设。例如,可以将该3-比特字段视为是可变的,而不用在编码类型上施加任何条件。然而,使用先验信息,可以将这些比特中的一些比特视为是固定的。例如,如果已知WiMAX的当前版本仅支持两种类型的编码,即TBCC(0b000)和CTC(0b010),则可以将第一个和第三个比特视为是已知比特值“0”(API比特=“0b0X0”)。
[0083] 虽然8-比特的长度字段1350可能随着一个帧到另一个帧而变化,但是可以用不同的方式来对其中一些比特进行分类。例如,不在长度字段上加以限制,则全部8个比特都将是可变的。然而,在大多数情况下,DL MAP的长度将会小于2^7,从而可以将MSB预测为“0”(API比特=“0b0XXXXXXX”)。虽然该预测可能会不正确,但是在误比特率方面所实现的改进可以胜过必须使用不同的假设来进行重新解码所造成的任何性能损失。还可以用类似的方式生成更为进取性的假设,例如,假定长度小于2^6(API比特=“0b00XXXXXX”)或者小于2^4(API比特=“0b0000XXXX”)。
[0084] 图14A-14G示出了基于上述的信息和可能的分类以及假定,用于FCH/DLFP消息的多个API解码假设实例。这些假设被称为具有不同的级别(L0-L6),这些级别通常基于被视为具有已知比特值的比特的数量来表示该假设的“进取性”程度。
[0085] 首先参考图14A,L0假设对应于没有API比特值的情况(没有假设),如在每个帧中的第一个消息的情况中。换句话说,由于消息未被解码,所以没有可用于生成API值的消息信息。图14B示出了第一级(L1)假设,其中,在假设中仅使用预留比特值。
[0086] 图14C示出了L2假设,其包括预留比特值加上在该假设中所使用的比特映射比特值(第一帧中所指示的消息群)。图14D示出了L3假设,其与L2假设相比,增加了在先前帧中所使用的剩余比特映射比特值。
[0087] 图14E示出了L4假设,其与L3假设相比,增加了对受支持的编码类型TBCC和CTC而言共同的编码字段比特值。图14F示出了L5假设,其与L4假设相比,基于长度小于2^6的假定而增加了长度字段的头两个比特。图14G示出了L6假设,其与L5假设相比,基于长度小于2^4的假定而又增加了长度字段的另外两个比特。
[0088] API解码器可以使用这些假设中的每一个假设的比特值,以上述方式减少对应于错误数据的解码路径的数量。当然,图14B-14G中所显示的假设仅仅是示例性的。此外,虽然所示的假设的进取性程度逐步加强,即包括更多的已知比特值,但是本领域的熟练技术人员将认识到,可以使用这些实例中所显示的比特值的不同组合来生成其他假设。
[0089] 如上所述,API解码器可以使用根据这些不同假设的API比特值,来去除对应于错误数据的解码路径。由于不同的假设具有不同的API比特值,因此解码性能可以随着一个假设到另一个假设而改变。图15-17显示了用于图示出在不同信道上的不同假设之间的性能变化的示例图。
[0090] 图15显示了用于在加性高斯白噪声(AWGN)信道中的不同的假设L0-L6的API解码的仿真结果。在该仿真中,假定全部假设皆是正确的(换句话说,假定API比特值与实际被编码的比特值相匹配)。
[0091] 如图所示,具有更多API比特的假设产生了更好的性能(误比特率降低)。对于对ITU Ped-A和Ped-B信道使用不同的假设的API解码,图16显示了类似的结果。对于对ITU Veh-A和Veh-B信道使用不同的假设的API解码,图17显示了类似的结果。
[0092] 虽然前述内容是针对本发明的实施例的,但是在不脱离本发明的基本范围的情况下可以想到本发明的其他和进一步的实施例,并且,本发明的范围是由附属权利要求确定的
[0093] 用于处理多个假设的方法
[0094] 如上所述,假设引擎基于固定的先验信息和可预测的先验信息两者,生成比特值的假设。该假设引擎可以通过假定不同的比特值组合,使用可预测信息生成Nc个假设。为了提高性能,可能希望处理多个假设。因此,解码器可以审查多个所传递的假设。因此,所处理的假设的数量可以等于所传递的假设的数量Nc。在存在多个所处理的假设时,可以仅选择最准确的假设。
[0095] 在一些实施例中,接收到的消息可以包括循环冗余检验(CRC)字段或者其它类似类型的校验字段。对于缺少CRC的消息,此选择标准可以基于在解码的最终阶段处所累积的似然(或所累积的距离)。对于具有CRC的消息,此选择标准可以基于CRC校验的结果或所累积的似然中的任一个。
[0096] 存在可用于评估多个假设的若干方法。这些方法可以包括并行评估、顺序评估和迭代评估。为了实现并行评估方法,利用多个解码器,其中每个解码器处理该NC个API假设中的一个或多个。
[0097] 相对照地,顺序解码方法和迭代解码方法可以利用单个解码器,一次处理单个假设。在顺序方法中,解码器在长度为NC的循环(loop)中处理全部假设,而在迭代方法中,解码器处理一系列假设,直到其找到满足预定的选择标准阈值的一个假设为止。
[0098] 在一些实施例中,假设的数量可能会超过处理器的数量。在此类实施例中,可以利用混合方法,在该方法中,各个处理器并行地操作,但是每个处理器以顺序或迭代的方式评估一个以上的假设。
[0099] 图18示出了包括并行API解码器1830和用于生成多个假设的假设引擎1860的接收机电路。
[0100] 如图所示,假设引擎1860可以基于从MAC处理器接收到的消息信息,生成NC个不同的假设,其中每个假设具有不同的API比特值集合,API(1)到API(NC)。该假设引擎可以例如基于用于预测比特值的不同假定,来生成该多个假设。如上所述,可以例如基于所预测的比特值的数量,将这些假设之中的一些假设认为是比其他假设更具有进取性。
[0101] 解码器1830使用不同假设的API比特值对接收到的比特Rs进行解码,实质上,通过应用不同假设,并行地多次对接收到的比特进行解码。在评估了该多个假设之后,解码器1830可以输出已解码数据比特RD,该已解码数据比特RD是使用基于某种类型的选择标准而被认为是最佳的假设所获得的。
[0102] 图19示出了用于并行地评估多个假设的示例性操作1900。可以参考图20来描述操作1900,图20示出了具有并行排列的多个API解码器2000的并行解码器1830的示例性实施例。
[0103] 该操作在1902开始,在1902处,基于先验信息生成多个假设。在1904处,可以将每个假设发送至多个解码器2000之一。如图20中所示的,每个假设可以包括要由该解码器在解码接收到的比特RS时使用的上述信息的类型(例如,比特值、比特位置和/或比特掩码)。
[0104] 在步骤1906和1908处,每个解码器执行API解码,基于对应假设的API比特值去除解码路径,并从剩余的路径中进行选择以生成已解码比特RD的集合。在1910处,例如,在被解码的消息不包括CRC的情况中,每个解码器可以生成可用于选择最佳假设的质量度量(QA)。如果该消息确实包括CRC,则可以生成或可以不生成独立的质量度量。在1912处,对来自每个解码器的解码结果进行比较,并且在1914处,选择使用最佳假设所获得的结果。
[0105] 如图20中所示的,如果正在被解码的消息包含CRC,则可以通过用CRC逻辑2020执行CRC校验来比较解码结果。CRC逻辑2020可以生成输出(SX),该输出识别解码结果具有匹配的CRC的假设。可以使用此输出SX来控制选择逻辑2030以输出对应的已解码结果,选择逻辑2030用作了复用器。
[0106] 作为CRC校验的替换(例如,如果被解码的消息不具有CRC),则可以使用质量度量来选择最佳假设。该质量度量可以是,例如,累积的距离或似然值。ML判决逻辑2010可以评估来自每个解码器的质量度量,生成输出(SY),该输出识别解码结果具有最佳质量度量(例如,最低的累积距离或最高的似然)的假设。可以使用该输出SY来控制选择逻辑2030输出对应的解码结果。
[0107] 图21示出了包括顺序API解码器2130和用于生成多个假设的假设引擎2160的接收机电路。
[0108] 如图所示,假设引擎2160可以生成NC个不同的假设,并且以顺序的方式向解码器2130输出这些假设。例如,如图所示,假设引擎2160可以向解码器2130输出API比特值API(c),其中,c=1到NC。
[0109] 解码器2130使用不同假设的API比特值来对接收到的比特Rs进行解码,实质上,通过应用不同假设串行地多次对接收到的比特进行解码。在评估了多个假设之后,解码器2130可以输出已解码数据比特RD,已解码数据比特RD是使用基于某种类型的选择标准而被认为是最佳的假设所获得的。
[0110] 图22示出了用于以顺序的方式评估多个假设的示例性操作2200。可以参考图23来描述操作2200,图23示出了顺序解码器2130的示例性实施例,顺序解码器2130具有单个API解码器2300,API解码器2300用于基于不同假设的API比特值来多次顺序地对接收到的比特Rs的集合进行解码。
[0111] 该操作在2202开始,在2202处,基于先验信息生成多个假设。在2204处,选择该多个假设中具有比特值API(c)的一个假设,将其发送至解码器2130以供在对接收到的比特进行解码时使用。
[0112] 在步骤2206和2208处,每个解码器执行API解码,基于API比特值去除解码路径,并从剩余路径中进行选择以生成已解码比特RD的集合。在2210处,例如,在已解码消息不包含CRC的情况中,解码器可以生成可用于选择最佳假设的质量度量(QA)。如上所述,如果该消息确实包含CRC,则可以生成或可以不生成独立的质量度量。在2212处,将解码结果和质量分数(如果其被生成)存储在存储器2340中,以供随后的评估。
[0113] 如在2214的判断,如果存在更多的假设,则可重复操作2204-2212。在对每个假设皆执行了这些操作之后,在2216处比较这些假设的结果,并且在2218处选择使用最佳假设所获得的结果。
[0114] 如图23中所示的,如果生成了用于每个假设的解码结果RD(c)和质量度量QA(c),则可以从存储器2340获取该解码结果RD(c)和质量度量QA(c)并对其进行评估以确定最佳假设。如图所示,可以使用与图20中所显示的电路类似的电路,基于CRC(SX)2320和/或质量2310度量(SY),输出对最佳假设的识别,以控制选择逻辑2330输出对应的已解码结果。
[0115] 图24示出了包括迭代API解码器2430和用于生成多个假设的假设引擎2460的接收机电路。
[0116] 如同图21的假设引擎2160,假设引擎2460可以生成NC个不同的假设,并且以顺序的方式向解码器2430输出这些假设。如同图21的解码器2130,解码器2430可以利用单个解码器2470,使用不同假设的API比特值API(c)对接收到的比特Rs进行解码,实质上,通过应用不同的假设,连续多次对接收比特进行解码。
[0117] 然而,不是评估每个可能的假设并且比较输出结果,而是解码器2430可以将每个假设的结果与阈值选择标准进行比较。在一个假设被评估为具有满足该选择标准的结果之后,可以输出对应的已解码数据比特而无需评估任意剩余的假设。
[0118] 图25示出了用于以迭代的方式评估多个假设的示例性操作2500。例如,可以通过图24中所示的组件来执行操作2500。
[0119] 该操作在2502处开始,在2502处,基于先验信息生成多个假设。在2504处,选择该多个假设中具有比特值API(c)的一个假设,将其发送至解码器2430以供在对接收到的比特进行解码时使用。在步骤2506和2508处,解码器执行API解码,基于API比特值去除解码路径并从剩余路径中进行选择以生成已解码比特RD的集合。
[0120] 不是如同图22中所示进行等待直到全部假设皆被评估并比较了结果为止,而是在步骤2510-2512处评估针对所选假设所获得的结果(在循环中)。如图所示,解码器2430可以包括逻辑2480,其用于判断已解码比特集合是否满足该选择标准。例如,逻辑2480可以执行CRC校验并且/或者将质量度量与预定的阈值值进行比较。
[0121] 如果未满足该选择标准(例如,CRC校验不匹配或者质量度量低于该阈值),则可以重复操作2504-2512,以评估不同的假设。然而,如果满足了该选择标准,则在2514处选择使用当前假设所获得的结果。
[0122] 在该迭代方法中对不同的假设进行评估的次序可以改变。例如,对于一些实施例,可以首先评估较为进取性的假设(具有更多已知的/被预测的比特值的假设),然后再评估较为不进取性的假设。对于一些实施例。可以首先评估较为不进取性的假设,然后再评估较为进取性的假设。对于一些实施例,可以使用某种其它类型的标准来确定选择假设进行评估的次序。
[0123] 本领域的熟练技术人员将认识到,可以改变或者在一些情况中合并用于评估多个假设的各种技术。例如,如前所述,在假设的数量大于并行解码器的数量的情况中,可以合并并行技术和顺序技术,以并行地评估多个假设。
[0124] 如本文所使用的,术语“确定”包括广泛的动作。例如,“确定”可以包括运算、计算、处理、衍生、审查、查找(例如,查找表、数据库或其它数据结构)、断言等等,并且反之亦然。并且,“确定”可以包括接收(例如,接收信息)、访问(例如,访问存储器中的数据)等等。并且“确定”可以包括求解、选择、选取、建立等等,并且反之亦然。
[0125] 可以使用多种不同的技术和技艺中的任意一个来表示信息和信号。例如,在整个说明书中提及的数据、指令、命令、信息、信号等等可以用电压、电流、电磁波、磁场或磁性粒子、光场或光学粒子或者其任意组合来表示。
[0126] 可以用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立的门或者晶体管逻辑、分立的硬件组件或用于执行本文所述功能的其任意组合来实现或执行结合本文公开所描述的各种示例性的逻辑块、模块和电路。通用处理器可以是微处理器,但可替换地,该处理器也可以是任何可商用的处理器、控制器、微控制器或者状态机。处理器也可以实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器的组合、一个或多个微处理器与DSP内核的结合,或者任何其它此种结构。
[0127] 结合本文公开所描述的方法或者算法的步骤可直接体现为硬件、由处理器执行的软件模块或其二者的组合。软件模块可以位于本领域已知的任意形式的存储介质中。可以使用的存储介质的一些实例包括:RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动盘、CD-ROM等等。软件模块可以包括单个指令或多个指令,并且可以分布在多个不同的代码段上、在不同的程序之间以及跨多个存储介质。存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。可替换地,存储介质可以与处理器相集成。
[0128] 本文所公开方法包括一个或多个用于实现所述方法的步骤或动作。该方法步骤和/或动作可以彼此互换,而不会脱离权利要求的范围。换句话说,除非制定了具体的步骤和/或动作顺序,否则可以修改具体的步骤和/或动作的顺序和/或使用而不会脱离权利要求的范围。
[0129] 可以用硬件、软件、固件或其任意组合来实现所述功能。如果实现为软件,可以将所述功能存储为计算机可读介质上的一个或多个指令。存储介质可以是计算机可访问的任意介质。该计算机可读介质可以包括,例如但不限于,RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁性存储设备,或者可用于以计算机可访问的指令或数据结构的形式来携带或存储希望的程序代码的任何其它介质。本文所使用的磁盘和光盘包括压缩光盘(CD)、激光盘、光盘、数字多用途盘(DVD)、软盘和 光盘,其中磁盘以磁性方式再生数据,而光盘用激光以光学方式再生数据。
[0130] 还可以在传输介质上传输软件或指令。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线(DSL)或诸如红外线、无线电和微波之类的无线技术来从网站、服务器或其它远程源传输软件,则同轴线缆、光纤线缆、双绞线对、DSL或诸如红外线、无线电和微波之类的无线技术可以包括在传输介质的定义中。
[0131] 此外,要理解,如果有可能,可以由移动设备和/或基站下载和/或以其它方式获得用于执行本文所述的方法和技术的模块和/或其它合适的单元。例如,该设备可以耦合到服务器以有助于传递用于执行本文所述的方法的单元。可替换地,可以经由存储单元(例如,随机存取存储器(RAM)、只读存储器(ROM)、诸如压缩盘(CD)或软盘的物理存储介质等等)来提供本文所述的各种方法,从而使得移动设备和/或基站可以在将该存储单元耦合至或提供至该设备后能够获得各种方法。此外,可以利用用于向设备提供本文所述的方法和技术的任意其它合适的技术。
[0132] 要理解,权利要求不限于以上所示的精确配置和组件。可以在上述方法和装置的排列、操作和细节中进行各种修改、改变和变形而不会脱离权利要求的范围。
[0133] 虽然前述内容针对本发明的实施例,但在不脱离本发明的基本范围的情况下可以想到本发明的其他和进一步的实施例,并且,本发明的范围是由附属权利要求确定的。