一种编码方法、无线设备和芯片与流程

文档序号:16510296发布日期:2019-01-05 09:17阅读:165来源:国知局
一种编码方法、无线设备和芯片与流程

本发明涉及编码领域,并且更具体地,涉及一种编码方法、无线设备和芯片。



背景技术:

通信系统通常采用信道编码提高数据传输的可靠性,保证通信的质量。极化(polar)码是理论上证明可以取得香农容量,且具有简单的编码和译码方法的编码方式。polar码是一种线性块码。其生成矩阵为gn,其编码过程为其中,是一个二进制的行矢量,母码序列的长度n=2n,其中,n为正整数。是f2的克罗内克乘积,定义为

polar码的编码过程中,中的一部分比特用来携带信息,称为信息比特,这些信息比特的序号的集合记作a。另外的一部分比特置为收发端预先约定的固定值,称之为固定比特,其序号的集合用a的补集ac表示。不失一般性,这些固定比特通常被设为0。实际上,只需要收发端预先约定,固定比特序列可以被任意设置。从而,polar码的编码比特序列可通过如下方法得到:这里中的信息比特集合,为长度k的行矢量,即|·|表示集合中元素的数目,即k表示集合a中元素的数目,是矩阵gn中由集合a中的索引对应的那些行得到的子矩阵。是一个k×n的矩阵。在crc辅助的增强sc译码算法下,polar码可以获取优于ldpc和turbo码的fer性能。

现有技术中,为了支持系统要求的所有码长和码率的组合,需要存储大量的母码序列,因此,系统的存储开销极大。



技术实现要素:

本申请提供一种编码方法、无线设备和芯片,能够降低系统的存储开销。

第一方面,本申请提供了一种编码方法,该方法包括:

根据长度为2n’的序列获取用于编码的母码序列,所述长度为2n’的序列中包括2n’个序列号,所述母码序列的长度为2n,所述母码序列中包括2n个序列号,所述2n个序列号为所述2n’个序列号中的部分或全部,所述n’为自然数,所述n为小于或等于n’的自然数;采用所述母码序列对输入的待编码比特进行编码。

第二方面,本申请提供了一种无线设备,该无线设备至少包括存储器、接口和编码器:

所述存储器,用于存储长度为2n’的序列,所述长度为2n’的序列中包括2n’个序列号,所述n’为自然数。所述编码器,用于通过所述接口获取输入的待编码比特,并从所述存储器获取所述长度为2n’的序列;根据所述长度为2n’的序列获取用于编码的母码序列,所述母码序列的长度为2n,所述母码序列中包括2n个序列号,所述2n个序列号为所述2n’个序列号中的部分或全部,所述n为小于或等于n’的自然数;采用所述母码序列对输入的待编码比特进行编码。

第三方面,本申请提供了一种芯片,该芯片包括接口和编码器:

所述编码器,用于通过所述接口获取输入的待编码比特;

所述编码器还用于根据所述长度为2n’的序列获取用于编码的母码序列,所述长度为2n’的序列中包括2n’个序列号,所述母码序列的长度为2n,所述母码序列中包括2n个序列号,所述2n个序列号为所述2n’个序列号中的部分或全部,所述n’为自然数,所述n为小于或等于n’的自然数;采用所述母码序列对所述输入的待编码比特进行编码。

第四方面,本申请还提供了一种计算机存储介质,该存储介质中存储有程序代码,当此程序代码被计算机或者处理器执行时用于实现如下步骤:

根据长度为2n’的序列获取用于编码的母码序列,所述长度为2n’的序列中包括2n’个序列号,所述母码序列的长度为2n,所述母码序列中包括2n个序列号,所述2n个序列号为所述2n’个序列号中的部分或全部,所述n’为自然数,所述n为小于或等于n’的自然数;采用所述母码序列对输入的待编码比特进行编码。

第五方面,本申请还提供了一种计算机程序产品,该计算机程序产品中包括上述程序代码,该计算机程序产品可以存储在上述第四方面的存储介质中,也可以存储在服务器上供用户下载。

在一种可能的实现方式中,n=n’-1,上述几方面中根据长度为2n’的序列获取用于编码的母码序列包括:根据所述长度为2n’的序列中为偶数或奇数的序列号获取所述母码序列。

采用此种方式可以非常快捷的从长度为2n’的序列中获取用于编码的母码序列,算法简单易实现。

在另一种可能的实现方式中,上述几方面中根据长度为2n’的序列获取用于编码的母码序列包括:根据长度为2n’的序列获取用于编码的母码序列使得所述母码序列中任意一个序号s’满足如下条件:

所述s为所述长度为2n’的序列中满足如下条件的序列号:

其中,v为整数,-2n’-n<v≤0,所述mod为取余运算符。

此种实现方式适用于各种长度的母码序列,只要母码序列的长度小于或等于2n’,都可以从长度为2n’的序列中取出需要的母码序列。

在另一种可能的实现方式中,上述几方面中根据长度为2n’的序列获取用于编码的母码序列包括:从所述长度为2n’的序列中的2n’个二进制序列号取出2n个二进制序列号,所述2n个二进制序列号的每个二进制序列号中固定位置的n’-n个比特等于预设值。所述母码序列为根据所述2n个二进制序列号中的每个二进制序列号去掉所述固定位置的n’-n个比特后剩下的比特形成。

此种实现方式也适用于各种长度的母码序列,并且实现起来更为简单,例如,通过逻辑电路就可能实现上述二进制序号的选取。

可选的,上述各方面和实现方式中,母码序列中的2n个序列号在所述母码序列中的排序与在所述长度为2n’的序列中的排序相同。由于长度为2n’的序列中信道是有固定排序的,因此选出来的母码序列中信道也是有固定排序的,这就方便后续编码时将信息比特直接映射到高可靠性的信道上去传输。

可选的,上述各方面和实现方式中,可以有多个不同的长度为2n’的序列,每个序列对应的n’取值不同,当确定需要的母码序列的长度为2n时,可以从这多个序列中选择一个对应的序列,并从根据这个选择的序列获取用于编码的母码序列。无线设备中存储器可以存储这多个不同的长度为2n’的序列以供编码器选择。

上述长度为2n’的序列只有一个时可以称作最大母码序列或者最长序列。上述长度为2n’的序列有多个时,可以称作长序列。在实际应用中,还可以叫其它名字,本申请中不做限定。

通过本申请提供的技术方案,系统可以存储一个或几个长序列,然后根据编码的需要去从其中的一个长序列中获取需要的母码序列,由此能够降低系统的存储开销。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例的无线通信网络的结构示意图。

图2是本发明实施例的编解码流程示意图。

图3是本发明实施例的编码流程示意图。

图4(a)是本发明实施例的母码获取方法示意图。

图4(b)是本发明实施例的另一种母码获取方法示意图。

图5是本发明另一实施例的母码获取方法示意图。

图6是本发明实施例的无线设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例可应用于各种通信系统,例如,全球移动通讯(globalsystemofmobilecommunication,gsm)系统、码分多址(codedivisionmultipleaccess,cdma)系统、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)系统、通用分组无线业务(generalpacketradioservice,gprs)、长期演进(longtermevolution,lte)系统、lte频分双工(frequencydivisionduplex,fdd)系统、lte时分双工(timedivisionduplex,tdd)、通用移动通信系统(universalmobiletelecommunicationsystem,umts)等。在上述的系统中的基站或者终端使用传统turbo码、ldpc码编码处理的信息或者数据都可以使用本实施例中的polar码编码。

图1为本发明实施例无线通信网络的结构示意图。图1只是一种示例,其它能用到本发明实施例的编码方法或装置的无线网络也都在本发明的保护范围内。

如图1所示,无线通信网络100包括网设备110,和终端112。当无线通信网络100包括核心网时,该网络设备110还可以与核心网相连。网设备101还可以与ip网络200进行通信,例如,因特网(internet),私有的ip网,或其它数据网等。网络设备为覆盖范围内的终端提供服务。例如,参见图1所示,网络设备110为其覆盖范围内的一个或多个终端提供无线接入。除此之外,网络设备之间的覆盖范围可以存在重叠的区域,例如网络设备110和120。网络设备之间还可以互相通信,例如,网络设备110可以与网络设备120之间进行通信。

上述网络设备可以是用于与终端设备进行通信的设备。例如,可以是gsm系统或cdma系统中的基站(basetransceiverstation,bts),也可以是wcdma系统中的基站(nodeb,nb),还可以是lte系统中的演进型基站(evolvednodeb,enb或enodeb)或未来5g网络中的网络侧设备等。或者该网络设备还可以是中继站、接入点、车载设备等。在终端对终端(devicetodevice,d2d)通信系统中,该网络设备还可以是担任基站功能的终端。

上述终端可以指用户设备(userequipment,ue)、接入终端、用户单元、移动站、远方站、远程终端、移动设备、用户终端、无线通信设备、用户代理或用户装置。接入终端可以是蜂窝电话、无绳电话、会话启动协议(sessioninitiationprotocol,sip)电话、无线本地环路(wirelesslocalloop,wll)站、个人数字处理(personaldigitalassistant,pda)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,未来5g网络中的终端设备等。

上述网络设备与终端进行通信时,网络设备/终端均需要根据图2所示的流程对待发送的数据/信息进行编码,并且需要对接收到的数据/信息进行解码。为了方便描述,下面将网络设备和终端统称为无线设备。

参见图2所示,无线设备获取待发送的数据/信息(也可以叫作信源)后,依次经过信源编码、信道编码、速率匹配(可选)和调制后在信道上发出,对端收到信号后依次经过解调、解速率匹配(可选)、信道解码和信源解码后获得最终的数据/信息(也可以叫作信宿)。

本发明的实施例主要涉及信道编码,下面将通过具体的例子进行说明。根据背景技术部分的描述可以知道,polar编码过程中,母码序列至关重要,但是不同的码长、码率对应着不同的母码序列,这就需要针对不同的码长、码率存储很多母码序列,导致存储空间的消耗很大。而本发明的实施例中多个母码序列可以共用一个长度为2n’的序列,不同的码长或码率对应的母码序列都可以从这个长度为2n’的序列中获取,这样就大大节省了存储空间。

假设无线设备在编码之前预先存储了一个长度为2n’的序列,或者从其他设备获取了一个长度为2n’的序列,该长度为2n’的序列能够满足多种码长或码率的需求。如图3所示,假设无线设备编码时只需要长度为2n的母码序列,则本发明实施例的编码方法如下:

302,根据长度为2n’的序列获取用于编码的母码序列,该长度为2n’的序列中包括2n’个序列号,该母码序列的长度为2n,该母码序列中包括2n个序列号,该2n个序列号为所述2n’个序列号中的部分或全部,n’为自然数或正整数,所述n为小于或等于n’的自然数或正整数;

可选地,当此方法用于信道编码时,本文中的序列号都是指信道的序列号。上述长度为2n’的序列中的2n’个序列号可以具有特定顺序。

304,采用所述母码序列对输入的待编码比特进行编码。

可选的,在步骤302之前还可以包括:301,获取长度为2n’的序列。如果有多个不同长度的序列可供选择,即长度为2n’的序列为多个不同长度的序列中的一个,则步骤301还可以为:从该多个不同长度的序列中获取所述长度为2n’的序列。

由于无线设备既可以是网络设备也可以是终端。对于终端来说,上述长度为2n’的序列可以是预先存

储在终端的内部存储器中的,也可以是终端接入网络时或接入网络后从接入网设备获取的。对于接入网设备来说,上述长度为2n’的序列可以是预先存储在接入网设备的内部存储器中的,也有可能是接入网设备从其他网络设备获取的。

协议中可以规定只有一个长度为2n’的序列,即最大母码序列,所有的母码序列都可以从这个长度为2n’的最大母码序列中获取。协议中也可以规定有几个不同长度的序列,即不同序列的n’取值不一样,上文中提到的长度为2n’的序列可以是这多个不同长度的序列中的一个,对于某个特定长度的序列,只有部分母码序列可以从这个特定长度的序列中获取,其它母码序列可以从其它长度的序列中获取。

上述提到的长度为2n’的序列可以采用基于密度进化、高斯近似、线性拟合或计算信道的极化权重(pw)等方法来获取信道的可靠度,并对信道的可靠度从高到低或者从低到高进行排列后得到的信道序列号集合。该长度为2n’的序列也可以是采用其它方法,例如,离线搜索的方式,得到的具有一定排序的信道序列号集合。该母码序列可以是q序列,也可以是其它类型的序列。

除了上面提到的方式外,该长度为2n’的序列还可以采用很多其它方式获取,由于本发明的重点不在于此,在此就不详述了。

该长度为2n’的序列可以是预先存储在无线设备中的,也可以是无线设备从另外一个设备获取的。例如,当无线设备是终端时,终端可以在编码前从网络设备获取此长度为2n’的序列;当无线设备是网络设备时,网络设备可以在编码前从其它网络设备(例如,控制设备,核心网设备或另一个网络设备)获取此长度为2n’的序列。

如果实际编码时需要的母码序列的长度刚好是2n’,即n=n’,则上述步骤302就不需要了,在步骤304中可以直接采用所述长度为2n’的序列进行编码。由于上述长度为2n’的序列是考虑了多种码长和/或码率而设计的一个或多个序列,实际编码时使用的母码序列的长度往往可能短于上述长度为2n’的序列的长度,因此,本发明的实施例还设计了几种从上述长度为2n’的序列中获取实际编码时需要使用的母码序列的方法。

假设无线设备需要的母码序列长度为2n,无线设备可以采用如下实施例中的任意一种从长度为2n’的长序列中获取长度为2n母码序列。

实施例一:

n=n’-1时,母码序列可以根据所述长度为2n’的序列中为偶数或奇数的序列号获得。

方式一:母码序列可以是根据所述长度为2n’的序列中为偶数的序列号获得。

假设母码序列中任意一个的序列号为s’,所述长度为2n’的序列中为偶数的任意一个序列号为se,则:

方式二:母码序列还可以是根据所述长度为2n’的序列中为奇数的序列号获得。

假设母码序列中任意一个的序列号为s’,所述长度为2n’的序列中为奇数的任意一个序列号为so,则:

例如,参见图4(a)所示,假设n’=4,无线设备获取的所述长度为2n’的序列为图4(a)中的402,即{0,1,2,4,8,3,5,6,9,10,12,7,11,13,14,15}。

如果n=n’-1=3,则无线设备可以取出所述长度为2n’的序列中的偶数序列号{0,2,4,8,6,10,12,14}(如图4(a)中的404a所示)用于构成母码序列;假设母码序列中任意一个的序列号为s’,所述长度为2n’的序列中为偶数的任意一个序列号为se,则:最终形成的的母码序列如图4(a)中的406a所示,为{0,1,2,4,3,5,6,7}。

参见图4(b)所示,还是以上述的所述长度为2n’的序列为例,可以取出该所述长度为2n’的序列中的奇数序列号{1,3,5,9,7,11,13,15}(如图4(b)中的404b所示)用于构成编码的母码序列;假设母码序列中任意一个的序列号为s’,所述长度为2n’的序列中为奇数的任意一个序列号为s,则:最终形成的的母码序列如图4(b)中的406b所示,为{0,1,2,4,3,5,6,7}。

上面只是以n’=4,n=3为例进行说明,如果要从其它长度的序列中选出一半作为母码序列也可以参照上述方法。

由于上述实施例只适用于n=n’-1的情况,即适用于有限的几种长度的母码序列。为了使大部分或者所有的母码序列都能从所述长度为2n’的序列中获取,则还需要其它的方法,下面将通过其它的实施例进行介绍。

实施例二:

实施例二与实施例一的不同之处在于,实施例二可以适用于各种长度的母码序列。

假设用于编码的母码长度为2n,母码序列中的2n个序列号可以通过如下方式从长度为2n’的序列中获取:

根据长度为2n’的序列获取用于编码的母码序列使得母码序列中任意一个序列号s’满足如下条件:

s为长度为2n’的序列中满足如下条件的序列号:

其中,-2n’-n<v≤0,所述mod为取余运算符。

为方便理解,下面通过具体的例子进行介绍。

例如,假设n’=4,即长度为2n’=16的序列为{0,1,2,4,8,3,5,6,9,10,12,7,11,13,14,15},如果要从中取出n=2的母码序列,则可以采用如下几种方式中的一种:

(1)v=-3时,满足的序列号有s=3,7,11,15,母码序列的序列号即对应的母码序列为{0,1,2,3};

(2)v=-2,满足的序列号有s=2,6,10,14,母码序列的序列号即对应的母码序列为{0,1,2,3};

(3)v=-1,满足的序列号有s=1,5,9,13,母码序列的序列号即对应的母码序列为{0,1,2,3};

(4)v=0,满足的序列号有s=0,4,8,12,母码序列的序列号即对应的母码序列为{0,1,2,3}。

通过上面的描述可以看出,无论v的取值如何,最终形成的母码序列都是一样的。当然,在实际应用时,也可以对上面的公式稍加变形,例如,s为长序列中满足如下条件序列号:

其中,0≤v<2n’-n

应理解,对于上述公式的各种变形都属于本发明的保护范围。

实施例三:

实施例三也适用于各种长度的母码序列。母码序列中的2n个序列号可以通过如下方式从长度为2n’的序列获取:

(1)从长度为2n’的序列中的2n’个列号中取出2n个序列号,所述2n个序列号的每个序列号的二进制形式中的n’-n个固定位置的比特等于预设值。此处的预设值可以是一个预设值也可以是多个预设值。

例如,将所述长度2n’的序列中每一个序列号都用二进制表示为x=(x0,x1,.....xn’-1),假设固位置的n’-n个比特为假设预设值为a1,a2,...,an’-n,at=0或1,1≤t≤n’-n;即需要从所述长度为2n’的序列中挑选出满足如下条件的2n个二进制序列号用于构成母码序列:

当然,在实际应用时,上述预设值可以为一个,例如0或者1,即a1,a2,...,an’-n的值相同。或者,上述预设值也可以为两个,例如,0和1,即a1,a2,...,an’-n中一部分为0,另一部分为1。又或者,上述预设值也可以是多个,即针对上述固定位置的n’-n个比特中的每个比特都设置一个预设值。

(2)所述母码序列为根据所述获取的2n个序列号中的每个序列号的二进制形式去掉所述n’-n个固定位置的比特后剩下的比特所表示的序列形成。

为了让更容易理解,下面将通过一个具体的例子对实施例三进行介绍。

参见图5的502所示,假设n’=4,长度为2n’=16的序列用十进制表示的为{0,1,2,4,8,3,5,6,9,10,12,7,11,13,14,15},如果将所述长度为2n’的序列中的序列号都用二进制表示,则参见图5中的504所示。

假设用于编码的母码序列的长度为2n=4,即n=2,如果要从所述长度为2n’的序列中获取用于编码的母码序列,则可以采用如下方式:

(1)从所述长度为2n’的序列中的2n’个二进制序列号中挑选出固定位置的2(n’-n=2个比特分别等于预设值的4(2n)个二进制序列号。

例如,假设固定位置的2个比特分别为第2比特(即,)和第4个比特(即,),假设预设的值有两个a1=1和a2=0,即挑选条件为即第2个比特的值等于1,第4个比特的值等于0的二进制序列号为满足挑选条件的二进制序列号。

图5的506所示的序列号即为根据上述条件从所述长度为2n’的序列中挑选出的二进制序列号。

(2)母码序列为将所述获取的4个二进制序列号中的每个二进制序列号中去掉所述2个固定位置的比特后形成。

参见图5所示,去掉506中的第2比特(x1)和第4比特(x3)后形成了二进制表示的母码序列508,将508中的序列号都用十进制表示则形成了510所示的用十进制表示的母码序列{0,1,2,3}。

需要说明的是,如果长度为2n’的序列本就是用二进制表示的,那么图5中的502和510就不需要了。

上实施例二和实施例三只是以n’=4,n=2为例进行说明,但是本申请的实施例并不限于此,只要是根据所述长度为2n’个的序列获取长度为2n的母码序列均可以参照上述方法,为节省篇幅,此处未再一一列举。

可选地,上述实施例一至实施例三中描述的母码序列中的2n个序列号在所述母码序列中的排序与在所述长度为2n’的中的排序相同。此处所说的排序相同是指序列号与序列号之间的相对顺序或者先后顺序相同。

上述结合图1至图5,详细说明了根据本发明实施例的用于极化编码的方法。以下结合图6,对上述实施例中提到的无线设备进行说明。

图6示出了本发明实施例的无线设备的示意性框图。如图6所示,无线设备600至少包括包编码器604和存储器608。其中,

存储器608,用于存储长度为2n’的序列;

长度为2n’的序列的获取方式可以参见前面方法实施例中的描述。

编码器604,用于通过接口602获取输入的待编码比特,从存储器608获取上述长度为2n’的序列,并执行步骤302~304或者301~304。

上述编码器604的功能可以通过芯片或者集成电路来实现,如果是通过芯片实现,则上述无线设备600还可以包括一个接口602,编码器604用于通过接口602获取输入的待编码比特,从存储器608获取上述长度为2n’的序列,并执行上述步骤302~304或者301~304。

芯片在执行步骤302~304或者301~304时可以通过逻辑电路来实现,也可以通过处理器来实现,或者部分通过逻辑电路来实现、部分通过处理器来实现。如果是通过处理器实现的,则上述存储器608中可以存储有用于实现步骤302~304或者301~304中的部分或全部的程序代码,当处理器运行这些程序代码时就会执行步骤302~304或者301~304中的部分或全部。上述存储器608可以集成在芯片的内部,也可以设置在芯片的外部。

至于如何从长度为2n’的序列中获取长度为2n的母码序列,可以参见前面的描述,此处不再赘述。

无线设备600还可以包括发送器606用于发送编码器604编码后的比特。

无线设备600还可以包括天线616,发送器606用于将编码器编码后的序列通过天线616发送出去。如果该无线设备是终端,则上述天线616很有可能集成在终端中。如果该无线设备是网络设备,天线616有可能集成在网络设备中,也有可能与网络设备是分离的,例如,通过拉远的方式与网络设备连接。

除此之外,该无线设备还可以包括接收器610,用于从其它的无线设备接收信息或数据,解码器612用于根据存储器608中存储的长度为2n’的序列获取编码器使用的母码序列,并采用母码序列对待解码的比特进行解码,然后通过接口614输出解码后的比特。

在实际应用时,上述编码器604和解码器612也可以集成在一起形成编解码器或编解码装置,发送器606和接收器610可以集成在一起形成收发器。

本发明的实施例还提供了一种芯片,该芯片至少由上述接口602和编码器604构成。

本发明的实施例还提供了一种计算机存储介质,该存储介质中存储用于实现步骤302~304或者301~304的程序代码。

存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本发明的实施例还提供了一种计算机程序产品,该计算机程序产品中包括用于实现步骤302~304或者301~304的程序码。该计算机程序产品可以存储在存储介质或者服务器上供用户下载。

上述实施例中提到的各器件或者各组成单元之间的连接关系可以是直接连接或耦合的,也可以是间接连接或间接耦合的,两个器件或组成单元之间还可能有其它的器件或者组成单元,由于和本发明实施例的方案不是特别相关,所以在图中没有示出。

通过上述实施例,无线设备或者无线通信系统仅需要存储长序列,在进行编码时,从所述长序列中读取进行编码所需长度的母码序列,由此降低了无线设备或系统的存储开销。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1