使用通用极化码时通过异构内核进行速率匹配的系统和方法与流程

文档序号:16810436发布日期:2019-02-10 13:34阅读:202来源:国知局
本申请要求2016年6月17日提交的申请号为62/351,581、名称为“使用通用极化码时通过异构内核进行速率匹配的系统和方法”的美国临时专利申请和2017年5月29日提交的申请号为15/607,593、名称为“使用通用极化码时通过异构内核进行速率匹配的系统和方法”的美国常规专利申请的优先权,两件申请通过引用并入本文中。本申请涉及差错控制编码和编码速率匹配,更具体地,涉及当使用通用极化码时的编码速率匹配。
背景技术
::在通信系统中,信息通过信道从发送器发送到接收器。例如,在无线通信系统中,移动设备中的发送器可以通过无线信道将信息发送给基站中的接收器。信道可能将错误引入通过信道发送的信息中。差错控制编码可用于检测和/或纠正错误。例如,要从发送器发送到接收器的k比特信息可以首先由发送器中的编码器进行编码,以获得比特长度为nb的码字,其中,nb>k。然后可以通过信道发送该码字。接收的码字然后由接收器中的解码器进行解码,以获得关于发送哪些k比特的决定。通过发送的比特长度nb>k的码字而增加的冗余增加了在接收器处正确解码k比特的概率,即使信道中的噪声将一些错误引入码字中也是如此。存在不同类型的错误检测和纠错码。一种类型的纠错码,称为arikan极化码,在ieee信息论学报第55卷第7期(2009年7月)e.arikan的论文“信道极化:构造对称二进制输入无记忆信道的容量实现代码的方法”(“channelpolarization:amethodforconstructingcapacity-achievingcodesforsymmetricbinary-inputmemorylesschannels”;e.arikan,ieeetransactionsoninformationtheory,vol.55,no.7(july2009))中进行了公开。arikan极化码是二进制极化码,这意味着arikan极化码仅对二进制符号字母表执行差错控制编码。使用arkian极化码编码的k个比特表示k个信息符号。k个信息符号中的每个信息符号只能取两个值中的一个。此外,arikan极化码中每个码字的比特长度nb必须是2的幂,即nb=2n,其中,n是自然数。但是,发送器在操作期间使用的编码速率可能不匹配码字限于比特长度nb=2n时产生的编码速率。技术实现要素:公开了可以对q元字母表的符号进行编码的通用极化码,其中,q≥2。还公开了用于在使用通用极化码时执行速率匹配的系统和方法。如下所述,二进制和非二进制内核都可用于产生各种大小的码长。在一个实施例中,一种生成码字的方法包括:在极化码编码器处接收多个比特,以及使用多个极化码编码器内核对所述多个比特进行编码。所述多个极化码编码器内核包括:第一内核,其接收由比特表示的输入q元符号集合,并且根据第一内核生成器矩阵修改所述输入q元符号集合以产生由比特表示的输出q-元符号集合。所述多个极化码编码器内核还包括:第二内核,其接收由比特表示的输入l元符号集合,其中,l不等于q,并且根据第二内核生成器矩阵修改所述输入l元符号集合以产生由比特表示的输出l元符号集合。作为一个示例,q可以等于2并且l可以大于2。所述第一内核可以是二进制内核,所述第二内核可以是基于里德-所罗门(reed-solomon,rs)的内核。在一个实施例中,提供了一种生成码字的方法。所述方法包括在极化码编码器处接收多个比特并对所述多个比特进行编码。在一些实施例中,可以使用多个极化码编码器内核对所述多个比特进行编码。在一些实施例中,所述多个极化码编码器内核可以包括:第一内核,其接收由比特表示的输入q元符号集合,并且根据第一内核生成器矩阵修改所述输入q元符号集合以产生由比特表示的输出q元符号集合。在一些实施例中,所述多个极化码编码器内核可以包括:第二内核,其接收由比特表示的输入l元符号集合,其中,l不等于q,并且根据第二内核生成器矩阵修改所述输入l元符号集合以产生由比特表示的输出l元符号集合。在任何一个前述实施例中,q可以等于2。所述第一内核可以是二进制内核。在任何一个前述实施例中,l可以大于2。在任何一个前述实施例中,所述第二内核可以是基于里德-所罗门(rs)的内核。然而,也可能存在l大于2的其他实施例,但是所述第二内核不是基于rs的内核。在任何一个前述实施例中,l可以等于4。所述第二内核可以是rs(4)内核。在其他实施例中,l可以等于8。所述第二内核可以是rs(8)内核。在任何一个前述实施例中,所述码字的比特长度可以为nb,并且所述方法还可以包括基于编码速率r和发送比特长度m中的至少一个来执行对所述多个比特的所述编码。在一些实施例中,nb可以等于m。在一些实施例中,nb可以大于m,并且所述方法还可以包括对所述码字进行打孔以产生所述发送比特长度m。在一些实施例中,所述打孔可以包括缩短所述码字。在任何一个前述实施例中,所述码字可以从所述极化码编码器输出并且是具有第一比特长度nb1的第一码字,并且所述方法还可以包括:在生成所述第一码字之后:通过使用不同的多个极化码编码器内核对另外的多个比特进行编码,生成从所述极化码编码器输出的第二码字,所述第二码字具有不同于所述第一比特长度nb1的第二比特长度nb2。在任何一个前述实施例中,所述多个极化码编码器内核可以包括二进制内核的两个编码层和rs(4)内核的两个编码层。在任何一个前述实施例中,所述码字的比特长度nb可以等于128比特,但是其他比特长度也是可能的。在另一个实施例中,提供了一种包括极化码编码器的发送器。在一些实施例中,所述极化码编码器可以具有多个用于对所述极化码编码器处接收的多个比特进行编码并生成码字的极化码编码器内核。在一些实施例中,所述多个极化码编码器内核可以包括:第一内核,用于接收由比特表示的输入q元符号集合,并根据第一内核生成器矩阵修改所述输入q元符号集合以产生由比特表示的输出q元符号集合。在一些实施例中,所述多个极化码编码器内核可以包括:第二内核,用于接收由比特表示的输入l元符号集合,其中,l不等于q,根据第二内核生成器矩阵修改所述输入l元符号集合以产生由比特表示的输出l元符号集合。在任何一个前述实施例中,q可以等于2。所述第一内核可以是二进制内核。在任何一个前述实施例中,l可以大于2。在任何一个前述实施例中,所述第二内核可以是基于里德-所罗门(rs)的内核。然而,也可能存在l大于2的其他实施例,但是所述第二内核不是基于rs的内核。在任何一个前述实施例中,l可以等于4。所述第二内核可以是rs(4)内核。在其他实施例中,l可以等于8。所述第二内核可以是rs(8)内核。在任何一个前述实施例中,所述码字的比特长度可以为nb,并且所述极化码编码器可以被配置为基于编码速率r和发送比特长度m中的至少一个来编码所述多个比特。在一些实施例中,nb可以等于m。在一些实施例中,nb可以大于m,并且所述发送器还可以包括用于对所述码字进行打孔以产生所述发送比特长度m的打孔器。在一些实施例中,所述打孔器可以被配置为通过缩短所述码字来对所述码字进行打孔。在任一前述实施例中,所述码字可以是从极化码编码器输出的具有第一比特长度nb1的第一码字,所述极化码编码器还可以被配置为在生成所述第一码字之后:通过使用不同的多个极化码编码器内核对另外多个比特进行编码,生成第二码字作为所述极化码编码器的输出,所述第二码字具有不同于所述第一比特长度nb1的第二比特长度nb2。在任何一个前述实施例中,所述多个极化码编码器内核可以包括二进制内核的两个编码层和rs(4)内核的两个编码层。在任何一个前述实施例中,所述码字的比特长度nb可以等于128比特,但是其他比特长度也是可能的。附图说明将仅通过示例的方式参考附图描述实施例,其中:图1是根据一个实施例的通信系统的框图;图2显示了如何从种子矩阵g2产生kronecker积矩阵;图3是示出根据一个实施例的如何使用二进制极化码生成码字的流程图;图4是arikan内核的示意图;图5和图6分别是用于实现图3的步骤208中的示例的结构的示意图;图7示出了示例通用内核;图8示出了基于里德-所罗门(rs)的内核;图9和图10分别是用于n=2,即16个符号的rs(4)极化码编码器结构的示意图;图11示出了根据另一实施例的通信系统的框图;图12和图13分别示出了当考虑打孔时使用2层rs(4)内核生成的32比特码字的解码器的一个示例;图14示出了crc辅助极化码解码的帧错误率(frameerrorrate,fer)曲线;图15是根据一个实施例的由发送器执行的方法的流程图;图16示出了存储在发送器中的存储器中的查找表(lookuptable,lut);图17示出了示出根据一个实施例的分段长度匹配概念的三个码字;图18是根据另一实施例的由发送器执行的方法的流程图;图19至图22示出了不同的fer曲线;图23示出了当极化码编码器实现二进制内核和rs(4)内核时表示nb的可能值的表格。图24和图25是使用两个二进制内核编码层和两个rs(4)内核编码层生成长度为128比特的码字的一个示例编码结构的示意图;图26示出了当极化码编码器实现二进制内核和rs(8)内核时表示nb的可能值的表格。图27是示出根据一个实施例的生成码字的方法的流程图;图28示出了示例通信系统;图29和图30示出了可以实现本文所述功能和/或实施例的示例设备。具体实施方式出于说明性目的,现在将在下面结合附图更详细地解释具体示例实施例。图1是根据一个实施例的通信系统122的框图。通信系统122包括通过信道128进行通信的发送器124和接收器126。发送器124包括极化码编码器130,接收器126包括极化码解码器132。极化码编码器130以及发送器124的其他数据/信号处理功能,例如,稍后描述的打孔器可以由处理器实现,该处理器执行指令以使处理器执行极化码编码器130和发送器124的部分或全部操作。或者,极化码编码器130以及发送器124的其他数据/信号处理功能可以在硬件或电路(例如,在一个或多个芯片组、微处理器、专用集成电路(application-specificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)、专用电路或其组合中)中实现并被配置为实现极化码编码器130和发送器124的操作。尽管未示出,但是发送器124可以包括调制器、放大器、天线和/或发送链的其他模块或组件,或者可选地,可以被配置为与单独的(射频rf)发射模块通过接口连接,使得可以如本文所述生成并直接发送或通过单独的传输单元或模块发送码字。发送器124还可以包括非暂时性计算机可读介质(未示出),其包括用于实现和/或控制极化码编码器130和发送器124的操作,和/或以其他方式控制本文所述功能和/或实施例的执行的执行指令(例如,由处理器或如上所述的一些其他电路执行)。一些实施例可以通过仅使用硬件来实现。在一些实施例中,由处理器执行的指令可以以软件产品的形式体现。该软件产品可以存储在非易失性或非暂时性存储介质或存储器中,例如,可以是光盘只读存储器(compactdiscread-onlymemory,cd-rom)、通用串行总线(universalserialbus,usb)闪存盘或者可移动硬盘。类似地,极化码解码器132以及接收器126的其他数据/信号处理功能可以由处理器实现,该处理器执行指令以使处理器执行极化码解码器132和接收器126的部分或全部操作。或者,极化码解码器132以及接收器126的其他数据/信号处理功能可以在硬件或电路(例如,在一个或多个芯片组、微处理器、asic、fpga、专用电路或其组合)中实现,并且被配置为实现极化码解码器132和接收器126的部分或全部操作。虽然未示出,但是接收器126可以包括天线、解调器、放大器和/或接收链的其他模块或组件,或者可选地可以被配置为与单独的(射频rf)接收模块通过接口连接,以基于由接收器126直接或者间接从单独的接收单元或模块接收的极化码的码字来处理和/或解码字。接收器126还可以包括非暂时性计算机可读介质(未示出),其包括用于实现和/或控制极化码解码器132和接收器126的操作,和/或以其他方式控制本文所述功能和/或实施例的执行的执行指令(例如,由处理器或如上所述的一些其他电路执行)。一些实施例可以通过仅使用硬件来实现。在一些实施例中,由处理器执行的指令可以以软件产品的形式体现。该软件产品可以存储在非易失性或非暂时性存储介质或存储器中,其可以是例如cd-rom、usb闪存盘或可移动硬盘。在操作中,极化码编码器130对m比特组进行编码以获得码字长度等于nb比特的对应码字x,其中,nb>m。虽然极化码编码器130接收比特,但是在极化码编码器130中,所述比特可以表示q元字母表的符号。词语“符号”的使用并不意味着指代调制星座中的符号,而是指q元字母表的元素。例如,4元字母表可以具有四个使用符号“0”、“1”、“2”和“3”表示的符号,并且分别由比特00、01、10和11表示。由极化码编码器130输出的码字x通过信道128发送并在接收器126的极化码解码器132处接收。极化码解码器132执行解码以确定发送哪个m比特组。如果由极化码解码器132解码的m比特与最初发送的m比特匹配,则认为解码成功。如果信道128有噪声并且在码字x中引入太多错误,则极化码解码可能无法纠正所有错误。可以使用从种子矩阵gs产生的kronecker积矩阵g来生成极化码。对于二进制极化码,每个信息符号是一个比特,并且可以使用种子矩阵gs=g2,其中,图2显示了如何从种子矩阵g2产生kronecker积矩阵。图2所示是2倍kronecker积矩阵142和3倍kronecker积矩阵144。可以迭代kronecker积方法以产生n倍kronecker积矩阵对于具有长度n=2n的码字的二进制极化码,kronecker积矩阵g是极化码的生成器矩阵,并且等于图3是示出根据一个实施例的如何使用二进制极化码生成码字的流程图。对于比特长度为nb=8的码字的二进制极化码,即具有生成器矩阵的二进制极化码,在点状气泡中示出了一个具体示例。在步骤202中,获得要发送给接收器126的k个信息比特。在该示例中,k=4个比特,标记为blb2b3b4。可选地,在步骤204中,将辅助或错误检测码(error-detectingcode,edc)比特(如循环冗余校验(cyclicredundancycheck,crc)比特)添加到k比特(产生m个信息比特)以帮助解码。可以理解,在一个码字中可以使用多于一个edc。还应该理解,可以替代地或另外地使用其他类型的edc,如校验和码、弗莱彻(fletcher)码、哈希码或其他奇偶校验码。一些edc也可以用作纠错码(ecc),并且可以用于列表解码的路径选择,例如,以提高极化码性能。例如,crc比特是基于k个信息比特生成的,并且通常置于输入向量中更可靠的位置。然而,取决于它们的预期目的(例如,用于错误检测或纠错或两者),crc比特也可以或替代地分布或以其他方式置于输入向量中的其他位置。在该示例中,从k个信息比特开始,计算crc并将其附加到k个信息比特以产生包括k个信息比特和crc比特的m个信息比特。在图3的示例中,在步骤204中没有添加edc比特,因此k=m。m比特被输入到极化码编码器130。在步骤206中,极化码编码器130通过将m比特中的每个比特映射到输入向量u中的nb个位置中的相应位置,然后通过将“冻结”比特置于输入向量u的剩余位置来形成nb比特长的输入向量冻结比特的值和位置对于极化码编码器130和极化码解码器132都是已知的。根据极化码构造背后的信道极化理论,输入向量u的一些位置将具有比输入向量u的其他位置更高的正确解码的可靠性。在极化码构造中,尝试将m比特置于输入向量u的更可靠位置,并将冻结比特置于输入向量u的更不可靠的位置。在图3的示例中,nb=8,并且位置u4、u6、u7和u8是输入向量u的更可靠的位置。因此,m比特被置于位置u4、u6、u7和u8中。冻结比特均具有零值,但是更一般地,冻结比特可以被设置为极化码编码器130和极化码解码器132都已知的另一个值。在步骤208中,输入向量u然后乘以生成器矩阵g以获得码字在图3中的示例中,极化码编码器130可以使用内核来实现输入向量u与生成器g的乘法,例如,实现图3的步骤208。图4是用于实现输入[uv]与种子矩阵的乘法的内核148的示意图。内核的种子矩阵有时被称为内核生成器矩阵。内核148是二进制内核,特别是arikan二进制内核。其他类型的二进制内核也是可能的。arikan二进制内核148接收两个输入u和v,并输出u+v和v,它们表示乘法[uv]的输出。圆圈加号表示模2加法。图5是用于实现图3的步骤208中的示例的示例结构的示意图,即矩阵乘法图5中的每个内核148与图4中所示的相同,因此使用相同的附图标记148表示。每个内核也由图5中的字母“a”表示,因为它是arikan二进制内核。使用三个编码层,标记为l1、l2和l3,每个编码层具有四个二进制内核。编码层也可以称为编码阶段。可以在有或没有比特反转的情况下执行极化码编码。图5的示例结构没有比特反转。用于实现步骤208的另一示例结构在图6中示出。图6中的示例实现比特反转。通常,极化码编码器的输出可以表示为其中,没有比特反转,是n×n生成器矩阵,n=2n,n≥1。例如,对于n=1,g2=f。对于比特反转,其中,bn是n×n比特反转置换矩阵。通用极化码上述基于种子矩阵的二进制极化码限于二进制符号字母表。可以构造通用极化码,其编码q元字母表的符号,其中q≥2。使用生成器矩阵g对输入向量u进行编码以产生码字x。输入向量u具有m个信息符号,每个信息符号使用log2q信息比特表示。输入向量u的剩余位置被冻结,即对极化码编码器130和极化码解码器132均已知。输入向量u与生成器矩阵g的乘法可以使用内核层来实现,其中,每个内核执行伽罗瓦域gf(q)中的有限域运算,为了实现与生成器矩阵g的种子矩阵gs的乘法。图7中示出了示例通用内核121。内核121实现运算x=ugs,其中,u=[u1u2...uq-1uq]并且x=[x1x2...xq-1xq]。u和x都是符号向量,每个符号由log2q比特表示。二进制内核是q=2的通用内核121的特例。例如,可以定义通用极化码,其编码4元符号,即q=4。每个输入符号是四个可能值中的一个,其分别使用符号0、1、∝和∝2表示。在实现中使用两个比特来表示每个可能的符号值:00、01、10和11。以下是可以使用的种子矩阵gs的一个示例:其中,定义了以下有限域运算:1+∝=∝2,1+∝2=∝,1+0=1,∝+0=∝,∝2+0=∝2,∝+∝2=1,1+1=0,∝+∝=0,∝2+∝2=0,0+0=0,∝∝2=1,∝1=∝,∝∝=∝2,0×∝=0,0×∝2=0,0×1=0,0×0=0,∝2×1=∝2,∝2∝2=∝和1×1=1。相应的内核将被称为基于里德-所罗门(rs)的内核,并在图8中使用附图标记150示出。符号“rs(4)”用于表示内核150是用于编码4元符号的基于rs的内核。更一般地,“rs(q)”内核是用于编码q元符号的基于rs的内核。基于rs的内核可具有性能优势,其中一些将在下面进一步详细描述。非二进制rs内核只是一个示例。可以使用其他非二进制内核,例如,埃尔米特(hermitian)内核。4元符号的码字长度被限制为nb=2×4n比特,其中n是自然数。图9是n=2,即16个符号的rs(4)极化码编码器结构的示意图。码字长度是nb=2×16=32比特,因为每个4元符号由2比特表示。使用两个编码层l1和l2,每个编码层具有四个rs(4)内核。每个rs(4)内核接受四个4元符号,即8比特作为输入,并产生四个4元符号的输出,即8比特。类似于具有二进制内核的极化码编码器结构,rs(4)极化码编码器结构可以具有符号索引置换或不具有符号索引置换。图9示出了具有符号索引置换的结构。图10示出了没有符号索引置换的结构。对于具有符号索引置换的结构(图9),生成器矩阵是置换矩阵乘以没有符号索引置换的编码结构的生成器矩阵。本文中公开的实施例可以在有或没有符号索引置换的情况下实现。对于8元字母表,内核将实现矩阵乘法x=ugs,其中,u是8个符号的输入向量,gs是8×8种子矩阵。将执行伽罗瓦域gf(8)中的有限域运算。因此,内核的输入将是八个8元符号,即24比特,因为三个比特用于表示每个输入符号。内核的输出将是八个8元符号,即又是24比特。通常,极化码编码器130可以被构造为通过实现x=ug来生成长度为nb比特的码字x,其中,x和u都表示q元符号的相应向量。每个向量x和u具有符号长度ns=qn,其对应于比特长度nb=log2q×qn。n个编码层中的每一个都具有qn-1个内核,并且每个内核具有q个输入和q个输出。以下是使用非二进制通用极化码(如基于rs的码)的可能益处。利用相同的码字长度,可以实现解码器中给定列表大小的较低帧错误率(fer),或者可以实现解码器中针对给定fer的较小列表大小。使用较小的列表大小可以降低实现复杂度并增加解码吞吐量,例如,通过减少用于复制、移动和排序的与列表相关的内存。速率/长度匹配编码速率r被定义为r=kb/nb,其中,kb是信息比特的数量,并且nb是所生成的对应于kb信息比特的码字的比特长度。当发送器124要将kb比特发送给接收器126时,发送器124可能需要使用特定的编码速率r/码长,其可以随时间变化,例如,基于诸如带宽的可用的网络资源。极化码限制nb的值。例如,当仅使用二进制内核执行极化码编码时,以比特为单位的码字长度nb被限制为2的幂:nb=2n比特。下表总结了码字长度nb,以及相应的编码层数n,对于不同的n值,最多n=12:n123456789101112nb248163264128256512102420484096作为另一示例,当仅使用rs(4)内核执行极化码编码时,码字长度nb被限制为nb=2×4n比特。下表总结了码字长度nb,以及相应的编码层数n,对于不同的n值,最多n=7:n1234567nb8321285122048819232768作为另一示例,当仅使用rs(8)内核执行极化码编码时,码字长度nb被限制为nb=3×8n比特。下表总结了码字长度nb,以及相应的编码层数n,对于不同的n值,最多n=6:n123456nb2419215361228898304786432如果发送器124要以编码速率r进行发送,并且发送器124具有kb个比特要发送,则极化码编码器130使用的码字长度(以比特为单位)理想地应为nb=kb/r。然而,由于使用极化码而对nb的限制可能不允许nb的值恰好等于nb=kb/r。例如,当仅使用二进制内核执行极化码编码时,nb限制为2的幂。如果发送器124具有kb=700比特要发送并且发送器124必须使用的编码速率r是r=1/3,则理想地比特。但是,使用二进制内核不能生成正好nb=2100比特的码字长度。因此,发送器124通过填充(延长)或打孔(缩短)码字来执行速率匹配,以具有恰好m=2100比特。因此,通过长度匹配来执行速率匹配,即,修改码字的长度以便满足编码速率。图11示出了根据另一实施例的图1的通信系统122。发送器124还包括打孔器152。极化码编码器130具体包括输入向量形成器147、信息序列生成器149和一个或多个内核层151。发送器124还可以包括非暂时性计算机可读介质(未示出),其包括用于实现和/或控制极化码编码器130和/或打孔器152和/或发送器124的操作,和/或以其他方式控制本文所述功能和/或实施例的执行的执行指令(例如,由处理器或如上所述的一些其他电路执行)。一些实施例可以通过仅使用硬件来实现。在一些实施例中,由处理器执行的指令可以以软件产品的形式体现。软件产品可以存储在非易失性或非暂时性存储介质或存储器中,其可以是,例如cd-rom、usb闪存盘或可移动硬盘。接收器126中的极化码解码器132具体包括比特对数似然比(log-likelihoodratio,llr)计算器154、比特llr到符号llr转换器156以及解码器158。接收器126还可以包括非暂时性计算机可读介质(未示出),其包括用于实现和/或控制极化码解码器132和接收器126的操作,和/或以其他方式控制本文所述功能和/或实施例的执行的执行指令(例如,由处理器或如上所述的一些其他电路执行)。一些实施例可以通过仅使用硬件来实现。在一些实施例中,由处理器执行的指令可以以软件产品的形式体现。软件产品可以存储在非易失性或非暂时性存储介质或存储器中,其可以是,例如cd-rom、usb闪存盘或可移动硬盘。图11将或可以包括未示出的其他组件,如发送器124中的调制器和接收器126中的解调器。可以使用调制和相应的解调来实现计算llr。发送器124中的附加组件还可以包括放大器、天线和/或发送链的其他模块或组件,或者可选地,发送器124可以被配置为与单独的(rf)发射模块通过接口连接,使得可以如本文所述生成并直接或通过单独的传输单元或模块发送码字。接收器126中的附加组件可以包括天线、放大器和/或接收链的其他模块或组件,或者可选地,可以被配置为与单独的(rf)接收模块通过接口连接,以基于由接收器126直接或间接地从单独的接收单元或模块接收的极化码的码字处理和/或解码字。在操作中,在极化码编码器130处接收kb比特。输入向量形成器147将kb比特映射到输入向量u的某些位置。输入向量u的剩余位置被设置为冻结位置。信息序列155指示输入向量u的哪些位置将接收每个kb比特以及输入向量u的哪些位置将接收冻结值。信息序列155由信息序列生成器149(在线生成或从存储器读取)基于以下因素生成,诸如发送器124发送kb比特所使用的编码速率r以及信道128的噪声或基于编码速率和编码长度的预定义工作snr等。信息序列生成器149生成信息序列155,使得尝试将kb比特置于输入向量u的更可靠位置,并将冻结值置于输入向量u的较不可靠位置。众所周知,诸如信息序列155的有序序列表示子信道的相对“可靠性”,其中,子信道是指在极化处理之后的合成信道。换句话说,一些子信道具有高容量,而一些子信道具有低容量。换句话说,一些子信道具有高信噪比(signal-to-noiseratio,snr),而其他子信道具有低snr。这些度量是可用于量化或分类子信道“可靠性”的特征示例。也可以使用指示子信道可靠性的其他度量。子信道选择基于子信道的可靠性,并且通常选择最高可靠性子信道作为用于承载信息比特的信息子信道。对于通用极化码,信息序列155可以是符号位置序列或比特位置序列。对于使用q元内核的nb比特的码字,符号位置序列的全长是nb/log2(q);而比特位置序列的全长是nb。以rs(4)极化码为例。对于符号位置序列,根据符号选择信息比特的放置位置,即,表示要编码的一个符号的相邻2比特应均为信息比特或冻结比特;而对于比特位置序列,表示一个符号的相邻两个比特可以容纳零个、一个或两个信息比特。在一些实施例中,至少在精灵辅助(genie-aided)序列生成方法下,使用符号位置序列的纠错性能可比使用比特位置序列更好。这归因于使用符号位置序列可以在使用基于符号的内核时更好地利用极化增益。就符号位置序列等同于比特位置序列的意义上来说,其中,约束在于相邻两个比特位置2*i和2*i+l(0≤i<nb/2)应该均为信息比特位置或冻结比特位置,符号位置序列实际上是比特位置序列的特殊情况。因此,为了通用性,以下文本中的信息序列全部指代比特位置序列。可以针对码长nmax计算子信道的单个嵌套的、snr无关的有序序列155,其中,较短码长n的有序序列从较长nmax序列中选择。可以替代地根据不同母码长度ni计算多个有序序列,并且可以基于优选码长为特定码选择其中一个母码长度序列。另一种可能的选择涉及,例如,根据snr值计算多个有序序列,并且基于测量的snr选择有序序列。信息序列生成器149可以以多种不同方式执行有序序列计算。例如,计算可以在线执行,产生可以基于例如观察到的信道条件动态调整或重新计算的有序序列。可选地,计算可以离线(例如,提前)执行以产生预先计算的(和静态的)有序序列,这些有序序列可以存储和检索或在后续编码运算期间从存储器读取。在又一替代方案中,计算可以部分在线并且部分离线地执行。从输入向量形成器147输出的输入向量u由一个或多个内核层151编码,每个内核层具有至少一个内核,以产生长度为nb比特的相应码字x。在采用内核层运算之前,输入向量u应该被转换成q元符号向量(表示为us),并且nb比特的码字x应该从q元符号输出向量(表示为xs)转换。一个或多个内核层151实现运算xs=usg。尽管xs和us是符号,但它们在硬件中仍由比特表示。极化码编码器130实现这样的极化码,其中,nb超过基于编码速率r实际可以发送的比特数m=kb/r。因此,为了产生m比特,打孔器152根据打孔模式153对长度为nb比特的码字x进行打孔(puncturing)以移除比特。然后通过信道128发送该m比特。本文中使用的“打孔”指的是从码字中移除比特。当执行打孔时,码字的长度减小。“缩短(shortening)”一词有时用于指代每个从码字中移除的比特具有解码器已知的值的特定情况,例如,如果从码字中移除的比特是冻结比特的线性组合,则可能是这种情况。本文中使用的“打孔”包括“缩短”以及其他实现方式,在这些实现方式中,一个、一些或所有从码字中移除的比特均具有解码器未知的值。任一指示从码字中移除哪个(哪些)比特的模式被称为打孔模式。打孔模式包括缩短模式,其将码字的位置子集缩短到减小的长度。打孔模式还包括打孔比特但不是缩短模式的其他类型的模式。接收的携带m比特的信号在极化码解码器132处理。比特llr计算器154首先计算m比特中的每个比特的比特llr。然后通过将每个打孔比特的比特llr设置为零来执行去打孔(depuncturing),如160所示。然后,比特llr到符号llr转换器156将比特llr转换为对应的符号llr,用于由nb比特表示的符号。如果极化码编码器130仅使用二进制内核,则每个比特表示符号,因此每个比特llr是符号llr,并且不需要比特llr到符号llr的转换。然后,解码器158处理符号llr值,以生成关于发送哪些kb比特的决定。由解码器158实现的示例解码算法是基于符号的连续消除(successivecancellation,sc)或连续消除列表(successivecancellationlist,scl)解码。图12示出了具有符号索引置换的使用2层rs(4)内核生成的32比特码字的解码器158的一个示例,其中,码字的前7比特已被打孔。通过将7个打孔比特中的每个打孔比特的比特llr值设置为零来执行去打孔,如160所示。图13示出了解码器158的另一示例,其中,相同的打孔模式(即,打孔码字的前7比特)也应用于使用rs(4)内核层但没有符号索引置换的解码器。回到图11,打孔模式153用于对码字x的比特进行打孔,使得码字x的nb比特减少为m<nb比特。打孔模式153指示应该打孔哪些比特,即具体应该移除码字x的哪些比特。当使用通用极化码编码q元字母表的符号时,其中,q>2,则打孔必须考虑到比特组表示不同符号这一事实。关于使用哪个打孔模式153和信息序列155的决定是相互依赖的。一种方法是在给定固定信息序列155的情况下获得最佳打孔模式153。例如,首先确定信息序列155,然后考虑到信息序列155中指示的冻结位置(即“冻结集”),生成最佳打孔模式153。作为示例,信息序列155可以指示将kb比特置于输入向量u中的最后kb比特位置中,因为信息序列生成器149已经确定输入向量u中的最后kb比特位置在信道噪声和编码速率r给定的情况下,是最可靠的位置。然后,可以基于该特定信息序列155计算打孔模式153,以便尝试在码字x中对最佳对应于冻结值的比特进行打孔。另一种方法是首先选择打孔模式153,然后,基于打孔模式153,生成最佳信息序列155。例如,对于给定的打孔模式153,可以优化冻结集,即信息序列155中的冻结位置。可以使用密度演化方法通过使用模拟的高斯近似(gaussianapproximation)或gene辅助方法(gene-aidedmethod)来确定最佳冻结集。当基于所选择的打孔模式确定最佳冻结集时,则信息序列生成器149被修改为不仅基于例如信道噪声(或工作snr)和编码速率r生成信息序列155,而且还基于所选择的打孔模式153生成信息序列155。例如,可以选择打孔模式153以简单地打孔码字x的前p=nb-m比特。然后,由信息序列生成器149生成最佳信息序列155,以便将输入向量u中的冻结位置确定为最佳地对应于码字x中的打孔比特的位置。或者,可以执行联合优化方法,其中,信息序列155和打孔模式153一起生成,以便联合优化信息序列155和打孔模式153。搜索空间的穷举搜索或智能减少可以在进行联合优化时执行。图14示出了crc辅助scl极化解码的fer曲线,其中,nb=2048比特,kb=600比特,并且r=1/3。因此,m=1800比特,所以248比特被打孔。基于打孔模式优化信息序列的冻结位置。对于列表大小为l=1的sc解码,相对于arikan内核,使用rs(4)内核的性能增益在fer=0.1时为0.45db,在fer=0.01时为0.5db。对于列表大小为l=8的scl解码,在fer=0.1时性能增益为0.15db,在fer=0.01时性能增益为0.17db。图15是由发送器124执行的方法的实施例的流程图,其中,首先选择打孔模式153,然后生成信息序列155。在步骤222中,发送器124确定将通过信道128发送的比特长度m。例如,比特长度m可以被计算为m=kb/r。在步骤224中,发送器124通过构造对码字x的前p=nb-m比特进行打孔的打孔模式来生成或确定打孔模式153。在步骤224中,对前p=nb-m比特进行打孔仅是一个示例。另一p=nb-m比特集可以根据另一个打孔模式进行打孔(例如,缩短)。步骤224中的打孔模式可以包括缩短模式,该缩短模式确定将哪个码字比特子集缩短为减小的长度。在一些实施例中,除了m之外还可以考虑其他参数来生成或确定打孔模式,例如,信息块长度k和/或编码速率r。例如,为了更好的纠错性能,对于低和中编码速率r可以采用打孔前nb-m,而对于高编码速率r,可以采用基于块的缩短或比特反转(bitreversal,biv)缩短。在其他实施例中,可以通过从多个可用的打孔模式中选择打孔模式(例如,基于一个或多个上述参数)来确定打孔模式153。在步骤226中,发送器142然后将确定的打孔模式发送给信息序列生成器149或以其他方式使得确定的打孔模式可用于信息序列生成器149。或者,信息序列生成器149可以独立地获得所确定的打孔模式153。在步骤228中,信息序列生成器149部分地基于打孔模式153生成信息序列155。在一些实施例中,步骤228涉及使用每个码字x的打孔模式153以及以下附加参数中的一些或全部来计算该码字x的信息序列155:(i)输入向量u的长度,其等于nb比特;(ii)信息比特数kb;(iii)信道128的信噪比(snr)(或工作snr);以及(iv)要发送的比特长度m。例如,可以执行用于密度演化的高斯近似以在输入向量u中找到最佳冻结位置,从而生成信息序列155。然而,在步骤228中执行计算可能导致计算复杂度增加且延迟增加。具体地,当使用通用极化码编码q元字母表的符号时,其中,q>2,则在发送器124的运算期间以在线方式执行步骤228可能是不实际的。替代选项是离线预先计算并在发送器124中存储所有可能的m值的所有信息序列。然而,这可能需要存储器的大部分来存储所有预先计算的信息序列。发送器124的存储器约束(如存储器空间和/或存储器访问时间)可能不允许存储所有预先计算的信息序列。因此,在一个实施例中,如图16所示,查找表(lut)302存储在发送器124中的存储器304中。lut302可以对应于特定的打孔模式。lut302指示针对m的各种范围使用哪个信息序列。对于每个范围,针对该范围内的m的代表值离线计算单个信息序列,然后该信息序列用于该范围内的任何m值。例如,对于范围ma≤m<mb,选择代表性块长度mrep,其中,ma≤mrep<mb。对于mrep离线计算信息序列并将其存储在lut302中。然后,在运算期间,每当m的值在范围ma≤m<mb内时,使用存储在lut302中的对应于范围ma≤m<mb的信息序列。具体地,对于在范围ma≤m<mb内的任一值m,选择k个最可靠的比特位置以容纳由该范围的相应信息序列(即,针对mrep生成的信息序列)指示的k个信息比特。当m大于mrep时,与mrep相比,选择可以跳过由于额外的打孔而被迫成为冻结位置的一个或一些比特位置。由于将m划分为多个范围并且每个范围仅存储一个信息序列,而不是针对每个可能的m值存储信息序列,因此lut可以显著缩短。图17示出了三个码字312、314和316。码字312得以发送的编码速率r使得m略小于mb。码字314得以发送的编码速率r使得m等于mrep。码字316得以发送的编码速率r使得m等于ma。对于每个码字,要打孔的比特数(p=nb-m)是不同的,但是使用对应于mrep的相同信息序列。在图17中的示例中,示出了值mu和ml,其中,mu=mb-mrep并且ml=mrep-ma。mu是mrep和mb之间的范围的一部分,并且ml是ma和mrep之间的范围的一部分。mu大于ml。虽然mu不必大于ml,但是在实现中mu可能比ml大得多。使用小于mrep的m值相比于mrep需要更多的打孔,这导致更高的编码速率和更少的可用于错误检测和/或校正的信息,从而可能导致解码失败并进一步降低性能。因此,可能希望ma更接近mrep,即ml小于mu,如图17所示。然而,相比于mrep,使用大于mrep的m值不会导致额外的打孔,因此可以以很少的损失保持大部分的重要编码信息。因此,可能不需要保持mb接近mrep,即mu可能大于ml,如图17所示。图18是根据一个实施例的由发送器124执行的方法的流程图。在步骤242,发送器124确定将通过信道128发送的比特长度m。例如,比特长度m可以被计算为m=kb/r。在步骤244,发送器124通过构造对码字x的前p=nb-m比特进行打孔的打孔模式来生成或确定打孔模式153。在步骤246中,发送器142然后将值m发送给信息序列生成器149或以其他方式使得值m可用于信息序列生成器149。或者,信息序列生成器149可以独立地计算m值。在步骤248中,信息序列生成器149通过从lut302读取对应于包含m值的范围的信息序列155生成信息序列155。因为用于代表性mrep的信息序列也用于包含在指定范围中的m的相邻值,所以可以将图18中所示的方法称为分段离线速率/长度匹配方案。在步骤244中,对前p=nb-m比特进行打孔仅是一个示例。另一p=nb-m比特集可以根据另一个打孔模式进行打孔(例如,缩短)。步骤244中的打孔模式可以包括缩短模式,该缩短模式确定将哪个码字比特子集进行缩短。在一些实施例中,除了m之外,还可以考虑其他参数来生成或确定打孔模式,例如,信息块长度k和/或编码速率r。例如,为了更好的纠错性能,对于低和中编码速率r可以采用打孔前nb-m,而对于高编码速率r,可以采基于块的缩短或比特反转(biv)缩短。在其他实施例中,可以通过从多个可用打孔模式中选择打孔模式(例如,基于一个或多个上述参数)来确定打孔模式。在一些实施例中,确定打孔模式包括确定打孔集合,包括要打孔的子信道的数量和索引。而且,关于图16-图18描述的分段方法适用于对码字中的连续比特进行打孔的打孔模式和对码字中的连续比特不进行打孔的打孔模式。在步骤248中,如果考虑不同的打孔模式,则可以使用不同的lut,例如,每个打孔模式对应于相应的lut。不同的lut可以包含不同数量的m范围和相关的代表性序列。例如,在图16中,如果考虑基于块的缩短或biv缩短而不是打孔前几比特,则m的范围的数量可以随着可能不同的范围边界而改变(例如,m’1≤m<m′2,m′2≤m<m′3等)。此外,对于相同的m值,lut可以包含不同的代表性序列(例如,对于满足m1≤m<m2并且m′1≤m<m′2的m,可以在一个lut中使用序列#1并且可以在另一个lut中使用与序列#1不同的序列#1’)。此外,尽管在一些实施例中,每个存储序列的长度是nb,但是在其他实施例中,序列中的一个、一些或全部的长度可以不是母码块长度,即2的幂。相反,对于相应范围的m,可以存储长度小于nb但不小于m2的序列,其中,m2是m的相应范围的上边界。在一些实施例中,不同范围的m的不同信息序列(例如,图16中的序列#1,序列#2,......等)可以均对应于相同的母码长度nb。在其他实施例中,不同范围的m的不同信息序列可以对应于不同的母码长度(例如,图16中的每个信息序列/m的范围可以对应于相应的不同母码长度)。图18中的流程图表示序列的选择或序列的生成取决于特定的打孔模式以及所发送的码块长度m。与图18的方法相关的可能益处如下。通过适当地划分编码比特长度空间并选择代表性的块长度mrep,每个范围一个,极化码编码/解码的性能可以与为每个m值计算不同信息序列的极化码编码器的性能相当。离线生成也是可能的,这可以降低实现复杂性,因为lut302在运算期间被访问,而不是在运算期间计算信息序列。因为针对每个块长度值范围而不是针对每个可能的块长度值m存储信息序列,所以可以减少存储器要求。图18所示的方法适用于仅使用二进制极化码的编码器,例如arikan极化码,以及使用非二进制通用极化码的编码器,例如基于rs的极化码。上述实施例描述了基于值m所落入的范围内来生成或选择信息序列155,例如,通过lut。或者,该范围可以基于编码速率r。也就是说,编码速率r的不同范围值可均具有代表性编码速率rrep。只要编码速率落在由rrep表示的范围内,就可以使用对应于rrep的信息序列。而且,在替代实施例中,可以预先固定母码块长度的信息序列,据此生成或确定针对码块长度m或编码速率r的范围的公共打孔集。图19至22示出了不同的fer曲线。nb=2048比特且kb=600比特。代表性编码速率rrep=1/3,因此比特。使用列表大小l执行scl解码。在对应于图19和图20的模拟中使用rs(4)极化码,并且在对应于图21和图22的模拟中使用二进制极化码。绘制了针对不同列表大小l和m值的fer。如图19所示,当相比于比mrep大100比特的m值而使用比mrep小100比特的m值时,fer相对于mrep=1800比特变化更多。通过异构内核进行速率匹配打孔(例如,缩短)可能降低系统性能,因此期望使用码字长度nb接近m=kb/r的的极化码。nb越接近m,则需要被打孔(例如,缩短)的比特数越小。在一些实施例中,可以在极化码编码中使用异构内核,以便为码字长度值nb提供更多选项。图23示出了表172,其示出了当极化码编码器130实现二进制内核和rs(4)内核时nb的可能值,其中,存在n1个二进制内核编码层和n2个rs(4)内核编码层。码字长度是比特。给定kb和r,极化码编码器130使用n1个二进制内核编码层和n2个rs(4)内核编码层的组合来获得表172中的nb,其等于m=kb/r或大于但是尽可能接近m=kb/r。作为示例,如果kb=60比特并且r=0.5,则m=120比特。表172中的最接近条目是nb=128比特,例如,如174所示,通过具有n1=2个二进制内核编码层和n2=2个rs(4)内核编码层。然后,极化码编码器130将实现具有n1=2个二进制内核编码层和n2=2个rs(4)内核编码层的编码结构,以产生长度为nb=128的码字,然后打孔器152将移除8比特以获得m=120比特。图24和图25是用于使用n1=2个二进制内核编码层和n2=2个rs(4)内核编码层生成长度为nb=128比特的码字的一个示例编码结构178的示意图。接收具有128比特的输入向量u。输入向量u包括kb比特和(128-kb)冻结比特,其中,kb比特在最可靠的位置。128比特被分成4组,每组32比特,并且每组32比特进入相应的模块180,如图25所示。每个模块180包括2层二进制内核,每层具有四个二进制内核。每个二进制内核由图25中的字母“a”表示。模块180还包括具有三个rs(4)内核的第一层rs(4)内核。模块180的输出是16个4元符号,每个符号由两个比特表示。回到图24,第二层rs(4)内核接收每个模块180的输出。在第二层中有十六个rs(4)内核,在图24中标记为“1”到“16”。rs(4)内核16在图24中更详细地示出。rs(4)内核16接收四个符号输入。为清楚起见,而是采用绘制线示出每个模块180的输出与第二rs(4)层中的十六个rs(4)内核中的每个rs(4)内核的输入之间的每个连接,数字1a、1b、……、16c、16d已被使用。从模块180输出的与“1a”相关联的两个比特意味着这两个比特连接到第二rs(4)层中的rs(4)内核1的第一输入(输入“a”)。从模块180输出的与“1b”相关联的两个比特意味着这两个比特连接到第二rs(4)层中的rs(4)内核1的第二输入(输入“b”),依此类推。第二rs(4)层的输出是长度为nb=128的码字x。图24和图25所示的具体结构只是一个示例。例如,替代结构可以使用两层rs(4)内核,每层中具有16个rs(4)内核,接着是两层二进制内核,每层中具有64个二进制内核。图26示出了表186,其示出了当极化码编码器130实现二进制内核和rs(8)内核时nb的可能值,其中,存在n1个二进制内核编码层和n2个rs(8)内核编码层。给定kb和r,极化码编码器130使用n1个二进制内核编码层和n2个rs(8)内核编码层的组合来获得表186中的nb,其等于m=kb/r或大于但是尽可能接近m=kb/r。在一些实施例中,不同组合的内核均可以产生相同的码字长度,并且关于使用哪个内核组合的决定可以取决于期望的性能与复杂度的权衡。例如,参考图23,可以使用两个二进制内核编码层和两个rs(4)编码层(即n1=2和n2=2)来生成长度为nb=128比特的码字。或者,可以使用四个二进制内核编码层和一个rs(4)编码层(即n1=4且n2=1)生成长度为nb=128比特的码字。使用更多的非二进制内核来生成码字可能更复杂,但与使用更少的非二进制内核相比,可能具有更好的纠错性能。因此,例如,使用两个二进制内核编码层和两个rs(4)编码层(n1=2和n2=2)生成码字可能更复杂,但与使用四个二进制内核编码层和一个rs(4)编码层(n1=4和n2=1)生成码字相比,可能具有更好的纠错性能。因此,可以使用内核的组合来构造通用极化码,其中一些内核接收二进制输入,而其他内核接收非二进制符号输入。在运算中,查找表(lut)可以存储在发送器124和接收器126的存储器中。lut包括m的不同值,或m的不同范围,以及将使用哪个极化码编码器/解码器结构的指示。例如,如果发送器124和接收器126确定m是120比特,则lut可以指示极化码编码器130将使用图24和图25中所示的编码结构,并且极化码解码器132然后将实现相应的解码结构。以这种方式,当m在通信系统122的运算期间发生改变时,发送器124和接收器126可以参考lut以知道使用哪个极化码编码/解码结构。或者,代替使用lut,发送器124和接收器126可各自执行在线运算以基于编码速率和/或长度确定使用哪些内核。例如,可以执行算法,该算法接收编码速率和/或长度作为输入,并且生成指示要使用多少层的每种类型内核的输出。该算法可以接收是否优先考虑误差性能或较低复杂度的指示作为输入,并且该算法可以生成旨在满足指示的优先级的内核组合作为输出。例如,如果优先考虑更好的误差性能,并且nb=128,则该算法可以指示使用两个二进制内核编码层和两个rs(4)编码层,而不是四个二进制内核编码层和一个rs(4)编码层。在上面的实施例中,不同的层可以应用不同类型的内核,例如,二进制和基于rs的内核。可以基于总层数和解码复杂度使用不同内核的组合以产生经极化的给定长度的代码。如果实现内核的组合使得nb=m,则可以减少或者甚至消除打孔(例如,缩短)。通过减少或消除打孔(例如,缩短),可以减少性能退化。仍然可以使用sc和scl解码。此外,使用非二进制极化码内核可能具有比二进制内核更好的性能,这可以使得解码器中的较小列表大小实现给定性能目标。图27是示出根据一个实施例的生成码字的方法的流程图。该方法可以由发送器124执行。在步骤402中,在极化码编码器处接收多个比特。在步骤404中,使用多个极化码编码器内核对所述多个比特进行编码。所述多个极化码编码器内核包括:第一内核,其接收由比特表示的输入q元符号集合,并且根据第一内核生成器矩阵修改所述输入q元符号集合以产生由比特表示的输出q元符号集合。所述多个极化码编码器内核还包括:第二内核,其接收由比特表示的输入l元符号集合,其中,l不等于q,并且根据第二内核生成器矩阵修改所述输入l元符号集合以生成由比特表示的输出l元符号集合。在一些实施例中,q=2并且第一内核是二进制内核。在一些实施例中,l>2。在一些实施例中,第二内核是基于里德-所罗门(rs)的内核或埃尔米特内核。在一些实施例中,l=4并且第二内核是rs(4)内核。在一些实施例中,l=8并且第二内核是rs(8)内核。在一些实施例中,码字具有比特长度nb,并且图27的方法还包括基于编码速率r和发送比特长度m中的至少一个来执行多个比特的编码。在一些实施例中,nb=m。在其他实施例中,nb>m,并且该方法还包括对码字进行打孔(例如,缩短)以产生发送比特长度m。在其他实施例中,nb<m,并且该方法还包括填充码字以产生发送比特长度m。在一些实施例中,图27中生成的码字是具有第一比特长度nb1的第一码字。另外的方法可以包括:在生成第一码字之后:通过使用不同的多个极化码编码器内核对另外多个比特进行编码,生成具有第二比特长度nb2的第二码字,所述第二比特长度nb2不同于第一比特长度nb1。在一些实施例中,多个极化码编码器内核包括ariken内核的两个编码层和rs(4)内核的两个编码层。码字的比特长度nb可以等于128比特。图28示出了可以实现本发明实施例的示例通信系统1300。通常,系统1300使多个无线或有线元件能够传送数据和其他内容。系统1300的目的可以是经由广播、窄播、用户设备向用户设备提供内容(语音、数据、视频、文本)等。系统1300可以通过共享诸如带宽等资源来有效地操作。在该示例中,通信系统1300包括电子设备(electronicdevice,ed)1310a-1310c、无线接入网络(radioaccessnetwork,ran)1320a-1320b、核心网络1330、公共交换电话网络(publicswitchedtelephonenetwork,pstn)1340、因特网1350和其他网络1360。虽然图28中示出了某些数量的这些组件或元件,系统1300中可以包括任何合理数量的这些组件或元件。ed1310a-1310c和基站1370a-1370b是通信设备的示例,其可以被配置为实现本文描述的一些或全部功能和/或实施例。例如,ed1310a-1310c和基站1370a-1370b中的任何一个可以被配置为实现上述编码或解码功能(或两者)。在另一示例中,ed1310a-1310c和基站1370a-1370b中的任何一个可以包括上述发送器124、接收器126或两者。ed1310a-1310c被配置为在系统1300中操作、通信或两者。例如,ed1310a-1310c被配置为经由无线或有线通信信道进行发送、接收或两者。每个ed1310a-1310c表示用于无线操作的任何合适的终端用户设备,并且可以包括这样的设备(或可以称为)作为用户设备/设备(ue)、无线发射/接收单元(wirelesstransmit/receiveunit,wtru)、移动台、固定或移动用户单元、蜂窝电话、站(station,sta)、机器类型通信设备(machinetypecommunicationdevice,mtc)、个人数字助理(personaldigitalassistant,pda)、智能电话、笔记本电脑、计算机、触摸板、无线传感器或消费电子设备。如图28所示,ran1320a-1320b分别包括基站1370a-1370b。每个基站1370a-1370b被配置为与一个或多个ed1310a-1310c通过接口无线连接,以能够接入任何其他基站1370a-1370b、核心网络1330、pstn1340、因特网1350和/或其它网络1360。例如,基站1370a-1370b可以包括(或者是)几个众所周知的设备中的一个或多个,如基站收发信台(basetransceiverstation,bts)、node-b(nodeb)、演进型nodeb(enodeb)、家庭enodeb、gnodeb(有时称为“千兆比特”nodeb)、传输点(transmissionpoint,tp)、站点控制器、接入点(accesspoint,ap)或无线路由器。任何ed1310a-1310c可以替代地或联合地配置为与任何其他基站1370a-1370b、互联网1350、核心网络1330、pstn1340、其他网络1360或其任一组合通过接口连接、接入或通信。可选地,系统可以包括ran,如ran1320b,其中,相应的基站1370b经由因特网1350接入核心网络1330,如图所示。在图28中所示的实施例中,基站1370a形成ran1320a的一部分,ran1320a可以包括其他基站、基站控制器(basestationcontroller,bsc)、无线网络控制器(radionetworkcontroller,rnc)、中继节点、元件和/或设备。任何基站1370a、1370b可以是单个元件,如图所示,或者是多个元件,分布在相应的ran中,或者是其他方式。而且,基站1370b形成ran1320b的一部分,ran1320b可以包括其他基站、元件和/或设备。每个基站1370a-1370b可以被配置为在特定地理区域或区域(有时称为“小区”)内操作以发送和/或接收无线信号。小区可以进一步划分为小区扇区,例如,基站1370a-1370b可以使用多个收发器来向多个扇区提供服务。在一些实施例中,基站1370a-1370b可以建立无线接入技术支持的微微小区(picocell)或毫微微小区(femtocell)。在一些实施例中,可以采用多输入多输出(multiple-inputmultiple-output,mimo)技术,每个小区具有多个收发器。所示的ran1320a-1320b的数量仅是示例性的。在设计系统1300时可以考虑任何数量的ran。基站1370a-1370b使用无线通信链路(例如,rf、μwave、ir等)通过一个或多个空中接口1390与一个或多个ed1310a-1310c通信。空中接口1390可以使用任何合适的无线接入技术。例如,系统1300可以在空中接口1390中实现一种或多种信道接入方法,如码分多址(codedivisionmultipleaccess,cdma)、时分多址(timedivisionmultipleaccess,tdma)、频分多址(frequencydivisionmultipleaccess,fdma)、正交fdma(orthogonalfdma,ofdma)或单载波fdma(single-carrierfdma,sc-fdma)。基站1370a-1370b可以实现通用移动电信系统(universalmobiletelecommunicationsystem,umts)地面无线电接入(terrestrialradioaccess,utra)以使用宽带cdma(widebandcdma,wcdma)建立空中接口1390。在这样做时,基站1370a-1370b可以实现诸如hspa、hspa+之类的协议,可选地包括hsdpa、hsupa或两者。或者,基站1370a-1370b可以使用lte、lte-a和/或lte-b与演进的utms地面无线电接入(evolvedutmsterrestrialradioaccess,e-utra)建立空中接口1390。预期系统1300可以使用多信道接入功能,包括如上所述的这种方案。其他用于实现空中接口的无线电技术包括ieee802.11、802.15、802.16、cdma2000、cdma20001x、cdma2000ev-do、is-2000、is-95、is-856、gsm、edge和geran。当然,可以使用其他多址方案和无线协议。ran1320a-1320b与核心网络1330通信,以向ed1310a-1310c提供各种服务,例如语音、数据和其他服务。可以理解的是,ran1320a-1320b和/或核心网络1330可以与一个或多个其他ran(未示出)直接或间接通信,其可以或可以不由核心网络1330直接服务,并且可以或可以不采用与ran1320a、ran1320b或两者相同的无线接入技术。核心网络1330还可以用作(i)ran1320a-1320b或ed1310a-1310c或两者,以及(ii)其他网络(诸如pstn1340、因特网1350和其他网络1360)之间的网关接入。另外,ed1310a-1310c中的一些或全部可以包括使用不同无线技术和/或协议通过不同无线链路与不同无线网络通信的功能。ed1310a-1310c可以通过有线通信信道而不是无线通信(或除此之外)与服务提供商或交换机(未示出)以及因特网1350进行通信。pstn1340可以包括用于提供普通旧电话服务(plainoldtelephoneservice,pots)的电路交换电话网络。因特网1350可以包括计算机网络和子网(内联网)或两者,以及包括诸如ip、tcp、udp等协议。ed1310a-1310c可以是能够根据多种无线接入技术操作的多模设备,并且包含支持这种技术所必需的多个收发器。图29和图30示出了可以实现上述功能和/或实施例的示例设备。具体地,图29示出了示例ed1310,图30示出了示例基站1370。这些组件可以用在系统1300或任何其他合适的系统中。如图29所示,ed1310包括至少一个处理单元1400。处理单元1400实现ed1310的各种处理操作。例如,处理单元1400可以执行信号编码、数据处理、功率控制、输入/输出处理,或者能够使ed1310在系统1300中操作的任何其他功能。处理单元1400还可以被配置为实现上述功能和/或实施例中的一些或全部。每个处理单元1400包括被配置为执行一个或多个操作的任何合适的处理或计算设备。每个处理单元1400可以包括,例如,微处理器、微控制器、数字信号处理器、现场可编程门阵列或专用集成电路。ed1310还包括至少一个收发器1402。收发器1402被配置为调制数据或其他内容以供至少一个天线或网络接口控制器(networkinterfacecontroller,nic)1404进行传输。收发器1402还被配置为解调由至少一个天线1404接收的数据或其它内容。每个收发器1402包括用于生成无线或有线传输信号和/或处理无线或有线接收的信号的任何合适的结构。每个天线1404包括用于发送和/或接收无线或有线信号的任何合适的结构。可以在ed1310中使用一个或多个收发器1402,并且可以在ed1310中使用一个或多个天线1404。虽然示出为单个功能单元,但是收发器1402也可以使用至少一个发送器和至少一个单独的接收器来实现。在一些实施例中,收发器1402可以实现先前描述的发送器124和/或接收器126。ed1310还包括一个或多个输入/输出设备1406或接口(诸如到因特网1350的有线接口)。输入/输出设备1406促进与用户或网络中的其他设备(网络通信)的交互。每个输入/输出设备1406包括用于向用户提供信息或从用户接收/提供信息的任何合适的结构,例如扬声器、麦克风、小键盘、键盘、显示器或触摸屏,包括网络接口通信。此外,ed1310包括至少一个存储器1408。存储器1408存储由ed1310使用、生成或收集的指令和数据。例如,存储器1408可以存储软件指令或模块,其被配置为实现上述某些或所有功能和/或实施例并由处理单元1400执行。每个存储器1408包括任何合适的易失性和/或非易失性存储和检索设备。可以使用任何合适类型的存储器,如随机存取存储器(randomaccessmemory,ram)、只读存储器(readonlymemory,rom)、硬盘、光盘、用户识别模块(subscriberidentitymodule,sim)卡、记忆棒、安全数字(securedigital,sd)存储卡,等等。如图30所示,基站1370包括至少一个处理单元1450、至少一个发送器1452(可以与前述发送器124相同或不同)、至少一个接收器1454(可以与前述接收器126相同或不同)、一个或多个天线1456、至少一个存储器1458,以及一个或多个输入/输出设备或接口1466。可以使用未示出的收发器代替发送器1452和接收器1454。调度器1453可以耦合到处理单元1450。调度器1453可以包括在基站1370内或与基站1370分开操作。处理单元1450实现基站1370的各种处理操作,如信号编码、数据处理、功率控制、输入/输出处理或任何其他功能。处理单元1450还可以被配置为实现以上更详细描述的一些或全部功能和/或实施例。每个处理单元1450包括被配置为执行一个或多个操作的任何合适的处理或计算设备。每个处理单元1450可以包括,例如,微处理器、微控制器、数字信号处理器、现场可编程门阵列或专用集成电路。每个发送器1452包括用于生成向一个或多个ed或其他设备无线或有线传输信号的任何合适的结构。每个接收器1454包括用于处理从一个或多个ed或其他设备无线地或有线地接收的信号的任何合适的结构。尽管示出为单独的组件,但是至少一个发送器1452和至少一个接收器1454可以组合成收发器。每个天线1456包括用于发送和/或接收无线或有线信号的任何合适的结构。虽然这里示出的公共天线1456耦合到发送器1452和接收器1454,但是一个或多个天线1456可以耦合到发送器1452,并且一个或多个单独的天线1456可以耦合到接收器1454。每个存储器1458包括任何合适的易失性和/或非易失性存储和检索设备,如上面结合ed1310所描述的那些设备。存储器1458存储由基站1370使用、生成或收集的指令和数据。例如,存储器1458可以存储软件指令或模块,其被配置为实现上述功能和/或实施例中的一些或全部,并且由处理单元1450执行。每个输入/输出设备1466促进与用户或网络中的其他设备(网络通信)的交互。每个输入/输出设备1466包括用于向用户提供信息或从用户接收/提供信息的任何合适的结构,包括网络接口通信。尽管已经参考本发明的具体特征和实施例描述了本发明,但是在不脱离本发明的情况下可以对其进行各种修改和组合。因此,说明书和附图应简单地视为由所附权利要求限定的本发明的一些实施例的说明,并且预期涵盖落入本发明范围内的任何和所有修改、变化、组合或等同物。因此,尽管已经详细描述了本发明及其优点,但是在不脱离由所附权利要求限定的本发明的情况下,可以进行各种改变、替换和修改。此外,本申请的范围并不限于说明书中描述的过程、机器、制造、物质组成、装置、方法和步骤的特定实施例。本领域普通技术人员从本发明的公开内容将容易理解,当前存在或稍后开发的执行与本文描述的相应实施例基本相同的功能或达到基本相同的效果的过程、机器、制造、物质组成、装置、方法或步骤可以根据本发明进行使用。因此,所附权利要求旨在在其范围内包括这样的过程、机器、制造、物质组成、装置、方法或步骤。此外,本文示例的执行指令的任何模块、组件或设备可以包括或以其他方式接入非暂时性计算机/处理器可读存储介质或用于存储信息的介质,如计算机/处理器可读指令、数据结构、程序模块和/或其他数据。非暂时性计算机/处理器可读存储介质的示例的非详尽列表包括磁盒、磁带、磁盘存储器或其他磁存储设备、光盘,诸如光盘只读存储器(compactdiscread-onlymemory,cd-rom)、数字视频光盘或数字多功能光盘(digitalversatiledisc,dvd)、蓝光光盘tm或其他光学存储器,以任何方法或技术实现的易失性和非易失性可移动和不可移动介质,随机存取存储器(random-accessmemory,ram)、只读存储器(rom)、电可擦除可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、闪存或其他存储器技术。任何这种非暂时性计算机/处理器存储介质可以是设备的一部分或者可接入或可连接到设备。本文描述的任何应用或模块可以使用计算机/处理器可读/可执行指令来实现,该指令可以由这种非暂时性计算机/处理器可读存储介质存储或以其他方式保持。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1