用于并行turbo解码的扩展turbo交织器的制作方法

文档序号:7520392阅读:277来源:国知局
专利名称:用于并行turbo解码的扩展turbo交织器的制作方法
技术领域
本发明的示例性而非限制性实施例一般地涉及无线通信系统、方法、设备和计算机程序,并且更具体地,涉及用于对用于前向纠错的信道代码进行解码的技术。
背景技术
本节旨在于提供在权利要求书中记载的本发明的背景或者环境。这里的描述可以包括如下概念,这些概念可以被探求、但是未必是先前已经设想或者探求的概念。因此,除非这里另有明示,在本节中描述的内容并非在本申请中的说明书和权利要求书之前的现有技术、也不因为包含于本节中而承认为现有技术。在无线通信系统在发送数据时的操作期间,有必要对用于前向纠错的各种信道代码进行解码。这些保护发送的信号免受干扰并且也消除信号中的由干扰引起的错误。一种广泛使用的编码方法是卷积编码。在卷积编码中,将由符号构成的待发送信号编码成以原始信号与代码多项式的卷积为基础的码字。卷积代码取决于编码速率和编码多项式。编码速率(k/n)是指产生的编码符号的数目(η)与待编码符号的数目(k)之比。根据卷积代码进一步开发的一种编码方法是也称为turbo代码的并行级联卷积代码PCCC。可以从两个递归系统卷积编码器和交织器生成PCCC。卷积编码器可以相同或者不同。所得代码包括与在编码器输入的符号直接对应的系统部分和作为并行卷积编码器的输出的两个奇偶位分量。典型信道代码(比如在3G系统和WiMAX中使用的信道代码) 是turbo代码、duo-turbo代码和低密度奇偶位校验(LDPC)代码。各种不同无线通信系统将解码器和交织器(有时称为解交织器)运用于对信道代码的解码。相关解码器经常设置于调制解调器(调制器/解调器)内,尽管在一些实施例中,它们可以是与调制解调器本身分离的硬件部件。随着吞吐量增加,需要提供更快解码。

发明内容
通过使用本发明的示例实施例来克服前述和其它问题,并且实现其它优点。在本发明的一个示例实施例中,提供一种方法,该方法包括为接收的码字的系统 (软)位生成第一分组存储器空间地址;为接收的码字的第一组(软)编码位生成第二分组存储器空间地址,其中第一组编码位包括递增顺序;并且为接收的码字的第二组(软)编码位生成第三分组存储器空间地址,其中第二组编码位包括交织顺序。该方法继续通过使用第二分组存储器空间中的地址访问第一组(软)编码位来对接收的码字的(第一)子码字并行进行解码并且轮流通过使用第三分组存储器空间中的地址访问第二组(软)编码位来对接收的码字的另一(第二)子码字并行进行解码。在本发明的另一示例实施例中,提供一种装置。该装置包括存储器,该存储器包括第一分组存储器空间地址,在第一分组存储器空间地址处,存储接收的码字的系统 (软)位;第二分组存储器空间地址,在该第二分组存储器空间地址处按照递增顺序存储接收的码字第一组(软)编码位;以及第三分组存储器空间地址,在该第三分组存储器空间地址处按照交织顺序存储接收的码字的第二组(软)编码位。该装置也包括第一解码器 (例如第一解码器模式),配置成使用从第二分组存储器空间取回的第一组(软)编码位对接收的码字的(第一)子码字并行进行解码;以及第二解码器(例如第二解码器模式),配置成与第一解码器/模式轮流并且在对存储器空间地址的并行访问中(例如在子码字内并行)使用从第三分组存储器空间取回的第二组(软)编码位对接收的码字的另一(第二) 子码字进行解码。在本发明的又一示例实施例中,提供一种存储可执行指令程序的计算机可读存储器,这些可执行指令在由处理器执行时,执行与对码字进行解码有关的动作,这些动作包括为接收的码字的系统位生成第一分组存储器空间地址;为接收的码字的第一组编码位生成第二分组存储器空间地址,其中第一组编码位包括递增顺序;为接收的码字的第二组编码位生成第三分组存储器空间地址,其中第二组编码位包括交织顺序;并且通过使用第二分组存储器空间中的地址访问第一组编码位来对接收的码字的子码字并行进行解码,并且轮流通过使用第三分组存储器空间中的地址访问第二组编码位来对接收的码字的另一子码字并行进行解码。在又一示例实施例中,提供一种包括存储装置(例如计算机可读存储器)和解码装置(例如两个或者更多解码器模式或者两个或者更多解码器)的装置。存储装置用于存储第一分组存储器空间地址,存储接收的码字的系统位;第二分组存储器空间地址,按照递增顺序存储接收的码字的第一组编码位;以及第三分组存储器空间地址,按照交织顺序存储接收的码字的第二组编码位。解码装置用于使用从第二分组存储器空间取回的第一组编码位对接收的码字的子码字并行进行解码并且用于与对第一子码字的解码轮流并且在对存储器空间地址的并行访问中使用从第三分组存储器空间取回的第二组编码位对接收的码字的另一子码字进行解码。


图1示出了适合于在实施本发明的示例实施例时使用的各种电子设备的简化框图。图加示出了发送器中的常规turbo编码器布置。图2b示出了将turbo码字分割成七个内部部分。图2c图示了在将本发明的一个示例实施例应用于turbo交织器之后可以使用的示例并行访问子turbo解码器。图3是来自图1的发送器和接收器的更详细示意图。图如是示出了根据本发明一个示例实施例的两个扩展地址空间的更多细节的示意图。图4b示出了根据本发明一个示例实施例的如下原理,该原理用于扩展turbo交织器,从而扩展交织器可以与图如中的扩展地址空间协作。图如是示出了根据本发明示例实施例的将四元访问用于解码来填充交织器的扩展存储器空间的四种不同情况的表。图4d是示出了根据本发明示例实施例的将8元访问用于解码来填充交织器的扩展存储器空间的八种不同情况的表。
图5是图示了根据本发明示例实施例的方法操作和在计算机可读存储器上实施的计算机程序指令的执行结果的过程流程图。
具体实施例方式根据这里呈现的本发明示例实施例的turbo交织器可以运用于使用无线协议(如例如3G (例如cdma2000、宽带码分多址(WCDMA))、WiMAX (全球微波访问互操作性)、LTE和高速下行/上行分组访问(HSDPA/HSUPA))来操作的网络中。本发明的实施例并不限于特定无线协议,并且可以运用于移动设备/用户设备和/或诸如基站/节点B等网元中。在turbo解码器中,内部并行处理/访问的程度可以是二的幂、也就是η = 2m,其中m=l、2、3等等。turbo交织器的长度可以不是应用的并行处理程度的倍数。然后问题是如何将turbo交织器的长度调节成并行处理程度的倍数。另外,尾部数据值需要特别关注,因为它们不在turbo交织器的范围内。本发明的示例实施例涉及将turbo交织器的长度调节成并行处理程度的倍数。这样的示例实施例用于高速数据连接的turbo解码器、比如具有干扰消除的基于3G系统(例如3GPP TS 25.212)的解码器。该规范规定从40至5114 的5075个turbo交织器。需要用尾部数据值将它们调节成并行处理程度η的倍数。本发明的示例实施例构造长度为η(并行处理/访问程度)的倍数的辅助turbo 交织器,从而两组尾部样本在不同η元组中。然后有可能用扩展turbo交织器求解并行访问争用并且同时恰当对待尾部数据值。另外,可以用相同方式对turbo代码的两个子码字进行解码。先考虑图1,该图示出了发送器10和接收器12,该发送器和接收器作为本发明的实施例可以运用于其中的示例环境。发送器10和接收器12借助无线电信道11来通信。发送器10包括控制器(比如计算机或者数据处理器(DP)) 10A,计算机可读存储器介质(实施为存储计算机指令程序(PROG) 10C的存储器(MEM) 10B)以及用于经由一个或者多个天线 (在图1中示出了一个天线)来与发送器12双向无线通信的适当射频(RF)收发器10D。发送器10还包括作为非限制例子可以是话音编码器的数据源10G。数据源10G的输出提供向信道编码器10E施加的信号,该信道编码器在这一情况下为卷积编码器、优选为turbo编码器。从信道编码器10E输出的编码符号向调制器10-F施加,其以已知方式调制信号。然后向射频RF前端10D施加调制信号,在该RF前端放大并且借助天线向无线电路径11发送该信号。在某些实施例中,调制器10F可以并入于RF前端10D中。在无线电路径11上,信号受到干扰和噪声。接收器12也包括控制器(比如计算机或者数据处理器(DP) 12A)、计算机可读存储器介质(实施为存储计算机指令程序 (PROG) 12C的存储器(MEM) 12B)以及用于经由一个或者多个天线(未示出)来与发送器10 通信的适当RF收发器12D。接收器12从它的天线接收信号并且向射频前端12D和解调器 12F施加该信号(与发送器一样,接收器12中的解调器在一些实施例中可以是RF前端12D 的部分)。向信道解码器12E施加解调信号,根据下文详述的本发明示例实施例在该信道解码器对信号进行解码。从解码器12E向接收器的其它部件(未示出)进一步施加解码信号。在一个实施例中,发送器和接收器之一实施为用户设备UE,而发送器和接收器中的另一个实施为访问节点、如例如基站、WLAN访问点等。在另一实施例中,发送器和接收器均实施为UE。假设PROG IOC和12C中的至少一个包括如下程序指令,这些程序指令在由关联DP 执行时,使设备能够根据如下文将更具体讨论的本发明示例实施例来操作。也就是说,可以至少部分通过可由发送器10的DP IOA和/或接收器12的DP 12A 执行的计算机软件或者通过硬件或者通过软件与硬件(以及固件)的组合来实施本发明的示例实施例。一般而言,发送器10和/或接收器12的各种实施例可以包括但不限于蜂窝电话、 具有无线通信能力的个人数字助理(PDA)、具有无线通信能力的便携式计算机、具有无线通信能力的图像捕获设备如数字相机、具有无线通信能力的游戏设备、具有无线通信能力的音乐存储和回放装置、允许无线因特网访问和浏览的因特网装置以及并入这样的功能的组合的便携式单元或者终端。计算机可读MEM IOB和12B可以是适合于本地技术环境的任何类型并且可以使用任何适当数据存储技术(比如基于半导体的存储器设备、闪存、磁存储器设备和系统、光学存储器设备和系统、固定存储器和可拆卸存储器)来实施。DP IOA和12A可以是适合于本地计算环境的任何类型并且可以包括作为非限制例子的通用计算机、专用计算机、微处理器、数字信号处理器(DSP)和基于多核处理器架构的处理器中的一种或者多种。图加图示了典型turbo编码器的结构的更多细节。编码器包括两个编码器200、 202和T表示的交织器204。这样向编码器输出施加待编码信号(来自发送器数据源10G)。 这一分量称为代码的系统部分S。这样向第一编码器A 200和交织器204施加待编码信号。 向第二编码器B 202施加交织信号。第一编码器200的输出信号Pl和第二编码器202的输出信号P2称为代码的奇偶位分量;Pl为递增顺序的奇偶位而P2为交织顺序的奇偶位。 递增顺序是位进入编码器A 200的地址顺序。交织顺序是位进入编码器B 202的顺序。编码器A和B可以相同或者不同。它们具有现有技术的结构。除了系统分量S 220以及奇偶位分量Pl 222和P2 224之外,两个turbo编码器在分量编码器返回到零状态时输出两组尾部位2沈、2观和230、232。将两个turbo编码器200、202逐个取读成零状态,从而一个 turbo编码器在另一个被取读成零状态时被禁用。例如在3GPP TS 25. 212中说明关于一种用于将编码器取读成零状态的方法的更多细节。假设待编码原始信号&等于N位(k = 0、l、2*"、N-l)并且有每个编码器200、 202添加的三个尾部位。换而言之,每个分量编码器为8态系统递归卷积编码器。发送的码字可以如图2b中所示视为在七个部分或者分量中。系统分量,该分量为未编码系统位 Sk 220并且长度为N位;来自第一编码器200的递增顺序的系统尾部部分226,该部分由 Slail ;N> Slail ;N+1和&山,2表示的三位构成;来自第二编码器202的交织顺序系统尾部部分 232,该部分由&ail;N+3、&ail;N+5表示的三位构成;递增顺序的奇偶位分量,该分量为来自第一编码器200的输出位Plk 222并且长度为N位;来自第一编码器200的递增顺序的奇偶位尾部部分228,该部分的长度为三位并且由PlTail:N、PlTail:N+1和PlTail:N+2表示; 交织顺序的奇偶位分量,该分量为来自第二编码器202的输出位P2k 2 并且长度也为N 位;以及来自第二编码器202的交织顺序的奇偶位尾部部分230,该部分的长度为三位并且由P2Tail:N、P2Tail:N+1和P2Tail:N+2表示。发送器在turbo编码之后具有的全码字然后长度为 (N)+ (3)+ (3)+ (N)+ (3)+ (N)+ (3) = 3N+12,其中不同分量的长度以与如上文说明的顺序相同的顺序并且编码率为N/(3N+12)。在图2b中图示了码字的七个分量。发送器还可以在发送码字之前进一步处理它。根据分量编码器可知turbo码字可以由两个子码字构成。第一子码字为递增顺序的系统位220、奇偶位222、系统尾部位2 和奇偶位尾部位228。第一子码字由第一编码器200生成。第二子码字为交织顺序的系统位(在图2b中未示出)、奇偶位224、系统尾部位232和奇偶位尾部位230。第二子码字由第二编码器202生成。忽略并且因此未发送交织系统位&[k],因为可以通过交织根据递增顺序的系统位重新生成它们。图3在平面图(左)和截面图(右)中图示了实施为UE的示例发送器10和/或接收器12的更多细节。本发明的示例实施例可以实施于这些更多具体功能的部件之一或者某一组合中。在图3,UE具有图形显示接口 20和用户接口 22,该用户接口图示为键区、 但是理解为也涵盖在图形显示接口 20的触屏技术和在麦克风M接收的语音识别技术。功率致动器沈控制设备由用户接通和关断。示例UE 10可以具有表示为面向前方(例如用于视频呼叫)的相机观、但是取而代之或者除此之外还可以面向后方(例如用于捕获图像和视频进行本地储存)。相机观由快门致动器30并且可选地由缩放致动器30控制,该缩放致动器可以代之以在相机观未处于活跃模式时作为用于扬声器34的音量调节来工作。在图3的截面图内可见通常用于蜂窝通信的多个发送/接收天线36。天线36可以是用于与UE中的其它无线电一起使用的多频带。用于天线36的可操作地平面由影线表示为跨域UE机壳所包围的整个空间,尽管在一些实施例中地平面可以限于比如在功率芯片38形成于其上的印刷布线板上设置的更小区域。功率芯片38控制对发送的信道和/或越过同时发送的天线(其中使用空间分集)的功率放大并且放大接收的信号。功率芯片38 向射频(RF)芯片40输出放大的接收信号,该RF芯片解调和下变频该信号用于基带处理。 基带(BB)芯片42检测信号,该信号然后被转换成位流并且最终被解码。针对在装置10中生成并且从该装置发送的信号相反出现相似处理。去往和来自相机观的信号穿过对各种图像帧进行编码和解码的图像/视频处理器44。也可以存在单独音频处理器46,该处理器控制去往和来自扬声器34和麦克风M的信号。如用户接口芯片50控制的那样从帧存储器48刷新图形显示接口 20,该用户接口芯片可以处理去往和来自显示接口 20的信号和/或还处理来自键区22和别处的用户输入。UE 10的某些实施例也可以包括一个或者多个辅助无线电、比如无线局域网无线电WLAN 37和蓝牙 无线电39,该辅助无线电可以并入片上天线或者耦合到片外天线。各种存储器遍布该装置、比如随机存取存储器RAM 43、只读存储器ROM 45以及在一些实施例中为可拆卸存储器(比如各种程序IOC存储于其上的所示记忆卡47)。UE 10内的所有这些部件通常由便携式电源如电池49供电。前述处理器38、40、42、44、46、50如果实施为发送器10或者接收器12 (任一个可以是UE或者网络接入节点/中继节点)中的单独实体可以在与主处理器10A、12A的从属关系下操作,该该主处理器然后可以与它们有主控关系。本发明的实施例与基带处理器42 最相关,尽管注意其它实施例无需设置于此而是可以被设置遍及如图所示各种芯片和存储器或者设置于将上文针对图3描述的一些功能描述的另一处理器内。图3的这些各种处理器中的任何或者所有处理器存取可以与处理器一起在芯片上或者与之分离的各种存储器中的一个或者多个存储器。当发送器10和/或接收器12实施为可以具有塔装天线阵列而不是在图3所示两个天线的网络接入节点时也可以设置与通过比微微网更广的网络的通信有关的相似具体功能部件(例如部件36、38、40、42-45和47)。注意上文描述的各种芯片(例如38、40、42等)可以组合成比描述的数目更少的数目,并且在更紧凑情况下,可以全部物理实施于单个芯片内。通常,接收器12处理接收的信号,从而它能够检测和重建发送器在若干编码步骤 (其中一个编码步骤可以是turbo编码器)之后发送的原始数据位。turbo编码的逆操作是如下turbo解码,接收器可以执行该turbo解码以根据接收的数据推断原始数据位。通常用如下软位代表接收的码字,这些软位是用于每个接收数据位的量化值。因此可以在接收器用软值代表发送器的码字的位。一种用于对turbo编码数据进行解码的常用算法称为 MaxLogApp0 MaxLogApp算法的指导原则是对turbo码字的两个子码字轮流进行解码并且根据子码字和先前外赋值导出将作为向下一轮子解码的输入来传递的新外赋值。在图2c 中用并行数据访问的蝴蝶网络BFN示出了这样的子码字解码器。当应用具有内部并行处理/访问的turbo解码器时必须求解按照两个访问顺序的并行访问争用递增顺序和交织顺序。可以在2007年6月4日提交并且标题为“Multiple Access for Parallel Turbo Decoder”的第11/810,119号共有美国专利申请中看到就这一点而言的相关教导。然而, turbo交织器的长度可以不是应用的并行处理的程度的倍数,即,N兴cn,c是常数并且η = 2m,其中m= 1,2,3并且依次类推。此外,有利的是同时考虑接收到的turbo码字的软尾部位。图如描绘了用于扩展原始递增顺序的地址空间的布置。按照递增顺序的系统尾部位416的地址空间跟随系统位& (这些位未穿过图2中所示发送器10的任一编码器200、 202)的地址444。系统位&的地址数目410为N。如果最后尾部样本的η元组未满,则额外数据值420可以用来填充η元组直至数据值的下一 η元组开始。N1表示第一扩展地址空间412的长度。按照交织顺序的系统尾部位的地址空间418从下一空闲η元组开始跟随按照递增顺序的系统尾部位的地址。也在该情况下,如果需要,通过额外数据值422来填充最后的η元组。第二扩展地址空间400的长度由队来表示。在两个扩展地址空间中可以有未用储存器空间(因为长度N对于不同码字可以不同),在该情况下,在这些扩展地址空间的全长度内有由额外数据值占据填充直至数据值的下一η元组开始的附加存储器空间,其中 η为并行访问程度。原始地址空间410具有N个地址,第一扩展地址空间412具有N1个地址,而第二扩展地址空间400具有队个地址。因而第一和第二地址空间的长度N1和N2为应用的并行处理程度的倍数,也就是说,对于一些常数C1和C2而言N1 = C1Ii并且N2 = c2n。 另夕KNSN1SNy —般而言,可以通过以下过程计算数目&和队。数目N1为最小整数, 从而N1为并行处理/访问程度的倍数并且N1-N大于或者等于子码字的尾部位的最大数目。 数目N2为最小整数,从而N2为并行处理/访问程度的倍数并且N2-N1大于或者等于子码字的尾部位的最大数目。由于递增顺序的子码字以递增顺序的尾部数据值为终结,所以可以使用N1个地址的第一扩展地址空间来执行对递增顺序的子码字的解码。下一步骤是扩展 turbo交织器以与第一和第二扩展地址空间匹配。具体而言,要求扩展turbo交织器能够恰当取读原始交织子码字的数据值和交织尾部值,用于对交织顺序的子码字的解码。图4b图示了扩展长度的交织器的地址空间和填充这些地址空间的值的布置。假设如下用于如下调制解调器的并行访问turbo解码器作为具体而非限制例子,该调制解调器支持3G无线系统(例如3GPPTS 25. 212)。如果常规turbo交织器T的长度表示为N 430 并且还假设有向每个编码子码字(从如图加中的编码器输出的整个码字的每个分量)附加的三个尾部位,则可以将扩展交织器TE的长度表示为N2434。因而扩展(turbo)交织器 TE应用于第二扩展地址空间。N为系统位的整数数目(在图加的链路&上输出的数目)。扩展长度队434的交织器TE的地址的实际数目依赖于运用的并行访问程度、尾部位数并且如下文更具体描述的那样也依赖于长度N。如在图4b所见,原始turbo交织器440 的N个地址放置于扩展长度为总长度队的交织器TE的前N个地址位置430。在原始交织器地址空间的长度为N的部分430之后是长度为N2-N的另一部分436。然后在紧接于原始交织器之后的位置放置按照交织顺序的尾部值442和一些额外值446的地址以将η元组填满。在那些地址之放置按照递增顺序的尾部值444和另一组可能额外值448的地址以将η 元组填满。图4b中的长度N1和N2分别等于图如中的第一和第二扩展地址空间的长度。如上文指出的那样,具有内部并行处理/访问的turbo解码器需要求解按照两个访问顺序的并行访问争用递增顺序和交织顺序。现在已经限定具有如下长度队的两类扩展地址方案,该长度为并行处理程度的倍数。因此可以例如通过调用2007年6月4日提交并且标题为"Multiple Access for Parallel Turbo Decoder,,的第 11/810,119 号美国专利申请的方法,用第二扩展地址空间和扩展turbo交织器建立η元组并行访问turbo解码器。并行访问子turbo解码器可以应用用于对递增顺序的子码字进行解码的第一扩展地址空间412并且应用扩展交织器TE直至第N1个地址432。因而并行访问子turbo解码器将 N2地址之中的N1个地址用于数据访问。这样做的原因在于生成两类尾部位而未使用原始 turbo交织器这样的事实。如果用η元组并行访问恰当解码,则递增顺序的值& 220,226 在顺序上匹配于从发送器10的第一编码器200输出的那些奇偶位值222、2观而交织顺序的值和232在顺序上匹配于从发送器10的第二编码器202输出的那些奇偶位值224、 230。从图4b可见,对于范围为0、1、2、…、N-I的原始(turbo)交织器存储器地址,扩展长度的turbo交织器434等于T (对于i = 0、1、2、…、N_l,TE[i] =T[i])。交织顺序的子码字的系统尾部数据值的地址如在442所见恰好放在N个系统数据值的地址之后。换而言之,假设三个尾部位,对于k = 0、l、2,TE[N+k] =Ni+k。如果需要则插入一些额外数据地址值446以将最后的η元组填满。在图4b中,这些额外数据值将是向标号446所示存储器空间中插入的空值。然后,如在图4b的标号444所示,按照对于k = 0、1、2(也假设三个尾部位)而言,TE[Ni+k] =N+k,从下一空闲η元组开始放入递增顺序的子码字的系统尾部数据值的地址。如果需要,则也插入一些额外数据值以将最后η元组填满,这些数据值在图 4b中将为存储器空间中的在444右侧、但是仍然在扩展长度的交织器434的总长度队内的空值448。分配额外空地址有若干可能性。所有可能性必须满足扩展长度的turbo交织器 TE具有逆交织器这样的要求。作为具体例子,先考虑并行访问程度为η = 2的情况。当并行访问程度为二时基于系统位数N有两种情况待考虑在N为偶数时和在N为奇数时。如果N为偶数时,扩展交织器TE的总长度434Ν2为N2 = Ν+8并且N1 = Ν+4。因此, 交织顺序的软尾部位的三个地址由TE[N+k] = N^k = N+4+k(对于k = 0、1、2)给定;而递增顺序的软尾部位的三个地址为TE[Ni+k] = N+k(对于k = 0、1、2)。在这一情况下需要两
1个空地址以将剩余2元组填满。可以按照TE[N+3] = K+3 = N+7设置遗漏空地址,并且可以按照TE[Ni+3] =N+3给定其它遗漏空地址。其它重置两个空地址的可能性为TE[N+3]= N+3和TEtN^S] = Ni+3 = N+7。当N为奇数时,TE的总长度为N2 = N+7和N1 = N+3。扩展 turbo交织器的后七个值为TE[N+k]=贴3+1^(对于1^ = 0、1、幻;以及TEtN1+k] =N+k(对于k = 0、1、2)和按照TE[N+6] = N+6的空地址。这些给定用于尾部位的递增顺序和交织顺序的地址,从而访问范围为{0,1,…,NJ的扩展长度交织器434的相应组442、446的在图2c中的2元组并行访问子解码器可以按照恰当顺序读取恰当尾部值以便对它们的相应子码字轮流进行解码。在下表1中概括针对n = 2元组访问的交织器扩展部分的值。在表1中用黑体字示出了交织顺序的软尾部位的地址。在表1中用斜体字示出了递增顺序的软尾部位的地址。
权利要求
1.一种方法,包括为接收的码字的系统位生成第一分组存储器空间地址;为所述接收的码字的第一组编码位生成第二分组存储器空间地址,其中所述第一组编码位包括递增顺序;为所述接收的码字的第二组编码位生成第三分组存储器空间地址,其中所述第二组编码位包括交织顺序;以及通过使用所述第二分组存储器空间中的地址访问所述第一组编码位来对所述接收的码字的子码字并行进行解码,并且轮流通过使用所述第三分组存储器空间中的地址访问所述第二组编码位来对所述接收的码字的另一子码字并行进行解码。
2.根据权利要求1所述的方法,其中所述编码位包括软尾部位,并且所述存储器空间地址设置于交织器内,从而所述第三分组中的所述软尾部位的地址落在所述第二分组中的所述软尾部位的地址与所述第一分组中的所述系统位的地址之间。
3.根据权利要求1或2中的任一权利要求所述的方法,其中所述第一分组的地址在交织器内的位置0、1、…、N-I处,所述第三分组的地址在所述交织器内的位置N、N+1、…、 N1-I处,而所述第二分组的地址在所述交织器内的位置K、K+1、…、N2-I处,其中N1为最小整数,从而N1为并行处理/访问程度的倍数;并且N1-N大于或者等于所述子码字的尾部位的最大数目;并且其中N2为最小整数,从而N2为并行处理/访问程度的倍数;并且N2-N1大于或者等于所述子码字的尾部位的最大数目。
4.根据权利要求3所述的方法,其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在所述交织器内的位置N、N+UN+2处,而存储于所述存储器空间的所述第二分组中的软尾部值的地址在所述交织器内的位置NpNi+LNi+2处。
5.根据权利要求1或2中的任一权利要求所述的方法,其中在两重并行访问中对所述子代码字进行解码;有N个系统软位;对于N为偶数的情况而言,N1 = N+4并且所述存储器空间的长度N2等于N+8 ;并且对于N为奇数的情况而言,N1 = N+3并且存储器空间的长度 N2等于N+7 ;并且其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在所述交织器内的位置N、N+1、…、N2-5处,而存储于所述存储器空间的所述第二分组中的所述软尾部值的地址在所述交织器内的位置N2-4、N2-3、…、N2-I处。
6.根据权利要求1或2中的任一权利要求所述的方法,其中在四重并行访问中对所述子码字进行解码;有N个系统位;所述存储器空间的长度N1和长度队选自于以下之一对于 N mod 4 = 2 的情况,N1 = N+6 并且 N2 = N+10 ;对于N mod 4 = 3的情况,N1 = N+5并且N2 = N+9 ;对于N mod 4 = 0的情况,N1 = N+4并且N2 = N+8 ;并且对于N mod 4 = 1的情况,N1 = N+3并且N2 = N+7 ;并且其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在交织器内的位置N、N+1、…、队-5处,而存储于所述存储器空间的所述第二分组中的所述软尾部位的地址在所述交织器内的位置N2-4、N2-3、…、N2-I处。
7.根据权利要求1或2中的任一权利要求所述的方法,其中在八重并行访问中对所述子码字进行解码;有N个系统位;所述存储器空间的长度N1和长度队选自于以下之一对于 N mod 8 = 0 的情况,N1 = N+8 并且 N2 = N+16 ; 对于 N mod 8 = 1 的情况,N1 = N+7 并且 N2 = N+15 ; 对于 N mod 8 = 2 的情况,N1 = N+6 并且 N2 = N+14 ; 对于 N mod 8 = 3 的情况,N1 = N+5 并且 N2 = N+13 ; 对于 N mod 8 = 4 的情况,N1 = N+4 并且 N2 = N+12 ; 对于 N mod 8 = 5 的情况,N1 = N+3 并且 N2 = N+11 ; 对于N mod 8 = 6的情况,N1 = N+10并且N2 = N+18 ;并且对于 N mod 8 = 7 的情况,N1 = N+9 并且 N2 = N+17 ;并且其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在交织器内的位置N、N+1、…、队-9处,而存储于所述存储器空间的所述第二分组中的软尾部位的地址在所述交织器内的位置N2-S、N2-7、…、N2-I处。
8.一种装置,包括存储器,包括第一分组存储器空间地址,在该第一分组存储器空间地址处存储接收的码字的系统位;第二分组存储器空间地址,在该第二分组存储器空间地址处按照递增顺序存储所述接收的码字的第一组编码位;以及第三分组存储器空间地址,在该第三分组存储器空间地址处按照交织顺序存储所述接收的码字的第二组编码位;第一解码器,配置成使用从所述第二分组存储器空间取回的所述第一组编码位对所述接收的码字的子码字并行进行解码;以及第二解码器,配置成与所述第一解码器轮流并且在对所述存储器空间地址的并行访问中,使用从所述第三分组存储器空间取回的所述第二组编码位对所述接收的码字的另一子码字进行解码。
9.根据权利要求8所述的装置,其中编码位包括软尾部位,并且所述存储器空间的地址设置于交织器内,从而所述第三分组中的所述软尾部位的地址落在所述第二分组中的所述软尾部位的地址与所述第一分组中的所述系统位的地址之间。
10.根据权利要求8或9中的任一权利要求所述的装置,其中所述第一分组的地址在交织器内的地址0、1、…、N-I处,所述第三分组的地址在所述交织器内的位置N、N+1、…、 N1-I处,而所述第二分组的地址在所述交织器内的位置K、K+1、…、N2-I处,其中N1为最小整数,从而N1为并行处理/访问程度的倍数;并且N1-N大于或者等于所述子码字的尾部位的最大数目;并且其中N2为最小整数,从而N2为并行处理/访问程度的倍数;并且N2-N1大于或者等于所述子码字的尾部位的最大数目。
11.根据权利要求10所述的装置,其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在所述交织器内的位置N、N+UN+2处,而存储于所述存储器空间的所述第二分组中的软尾部值的地址在所述交织器内的位置&、&+1、&+2处。
12.根据权利要求8或9中的任一权利要求所述的装置,其中所述第一和第二解码器被配置成在两重并行访问中对所述子码字进行解码;有N个系统软位;对于N为偶数的情况而言,N1 = N+4并且所述存储器空间的长度N2等于N+8 ;对于N为奇数的情况而言,N1 = N+3并且存储器空间的长度N2等于N+7 ;并且其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在所述交织器内的位置N、N+1、…、N2-5处,而存储于所述存储器空间的所述第二分组中的所述软尾部值的地址在所述交织器内的位置N2-4、N2-3、…、N2-I处。
13.根据权利要求8或9中的任一权利要求所述的装置,其中所述第一和第二解码器被配置成在四重并行访问中对所述子码字进行解码;有N个系统位;所述存储器空间的长度 N1和长度队选自于以下之一对于 N mod 4 = 2 的情况,N1 = N+6 并且 N2 = N+10 ; 对于N mod 4 = 3的情况,N1 = N+5并且N2 = N+9 ; 对于N mod 4 = 0的情况,N1 = N+4并且N2 = N+8 ;并且对于N mod 4 = 1的情况,N1 = N+3并且N2 = N+7 ;并且其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在交织器内的位置N、N+1、…、队-5处,而存储于所述存储器空间的所述第二分组中的所述软尾部位的地址在所述交织器内的位置N2-4、N2-3、…、N2-I处。
14.根据权利要求8或9中的任一权利要求所述的装置,其中所述第一和第二解码器被配置成在八重并行访问中对所述子码字进行解码;有N个系统位;所述存储器空间的长度 N1和长度队选自于以下之一对于 N mod 8 = 0 的情况,N1 = N+8 并且 N2 = N+16 ; 对于 N mod 8 = 1 的情况,N1 = N+7 并且 N2 = N+15 ; 对于 N mod 8 = 2 的情况,N1 = N+6 并且 N2 = N+14 ; 对于 N mod 8 = 3 的情况,N1 = N+5 并且 N2 = N+13 ; 对于 N mod 8 = 4 的情况,N1 = N+4 并且 N2 = N+12 ; 对于 N mod 8 = 5 的情况,N1 = N+3 并且 N2 = N+11 ; 对于N mod 8 = 6的情况,N1 = N+10并且N2 = N+18 ;并且对于 N mod 8 = 7 的情况,N1 = N+9 并且 N2 = N+17 ;并且其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在交织器内的位置N、N+1、…、队-9处,而存储于所述存储器空间的所述第二分组中的软尾部位的地址在所述交织器内的位置N2-S、N2-7、…、N2-I处。
15.一种存储可执行指令程序的计算机可读存储器,所述可执行指令在由处理器执行时,执行与对码字进行解码有关的动作,所述动作包括为接收的码字的系统位生成第一分组存储器空间地址;为所述接收的码字的第一组编码位生成第二分组存储器空间地址,其中所述第一组编码位包括递增顺序;为所述接收的码字的第二组编码位生成第三分组存储器空间地址,其中所述第二组编码位包括交织顺序;并且通过使用所述第二分组存储器空间中的地址访问所述第一组编码位来对所述接收的码字的子码字并行进行解码,并且轮流通过使用所述第三分组存储器空间中的地址访问所述第二组编码位来对所述接收的码字的另一子码字并行进行解码。
16.根据权利要求15所述的计算机可读存储器,其中所述编码位包括软尾部位,并且所述存储器空间地址设置于交织器内,从而所述第三分组中的所述软尾部位的地址落在所述第二分组中的所述软尾部位的地址与所述第一分组中的所述系统位的地址之间。
17.根据权利要求15或16中的任一权利要求所述的计算机可读存储器,其中所述第一分组的地址在交织器内的位置0、1、…、N-I处,所述第三分组的地址在所述交织器内的位置N、N+1、…、N1-I处,而所述第二分组的地址在所述交织器内的位置Np K+1、…、N2-I 处,其中N1为最小整数,从而N1为并行处理/访问程度的倍数;并且N1-N大于或者等于所述子码字的尾部位的最大数目;并且其中N2为最小整数,从而N2为并行处理/访问程度的倍数;并且N2-N1大于或者等于所述子码字的尾部位的最大数目。
18.根据权利要求17所述的计算机可读存储器,其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在所述交织器内的位置Ν、Ν+1、Ν+2处,而存储于所述存储器空间的所述第二分组中的软尾部值的地址在所述交织器内的位置&、&+1、&+2处。
19.根据权利要求15或者16中的任一权利要求所述的计算机可读存储器,其中在两重并行访问中对所述子码字进行解码;有N个系统软位;对于N为偶数的情况而言,N1 = N+4 并且所述存储器空间的长度N2等于N+8 ;并且对于N为奇数的情况而言,N1 = N+3并且存储器空间的长度队等于N+7;并且其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在所述交织器内的位置N、N+1、…、N2-5处,而存储于所述存储器空间的所述第二分组中的所述软部位值的地址在所述交织器内的位置N2-4、N2-3、…、N2-I处。
20.根据权利要求15或者16中的任一权利要求所述的计算机可读存储器,其中在四重并行访问中对所述子码字进行解码;有N个系统位;所述存储器空间的长度N1和长度队选自于以下之一对于 N mod 4 = 2 的情况,N1 = N+6 并且 N2 = N+10 ;对于N mod 4 = 3的情况,N1 = N+5并且N2 = N+9 ;对于N mod 4 = 0的情况,N1 = N+4并且N2 = N+8 ;并且对于N mod 4 = 1的情况,N1 = N+3并且N2 = N+7 ;并且其中存储于所述存储器空间的所述第三分组中的软尾部位的地址在交织器内的位置N、N+1、…、队-5处,而存储于所述存储器空间的所述第二分组中的所述软尾部位的地址在所述交织器内的位置N2-4、N2-3、…、N2-I处。
全文摘要
为接收的码字的系统位生成第一分组存储器空间地址;为接收的码字的第一组编码位生成第二分组存储器空间地址,其中第一组编码位包括递增顺序;并且为接收的码字的第二组编码位生成第三分组存储器空间地址,其中第二组编码位包括交织顺序。通过使用第二分组存储器空间中的地址访问第一组编码位来对接收的码字的子码字并行进行解码。轮流通过使用第三分组存储器空间中的地址访问第二组编码位来对接收的码字的另一子码字并行进行解码。也详述一种装置和存储计算机程序的存储器。
文档编号H03M13/29GK102405599SQ201080017424
公开日2012年4月4日 申请日期2010年2月18日 优先权日2009年2月19日
发明者E·J·尼米南 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1