本说明书一个或多个实施例涉及技术领域,尤其涉及一种信源信道联合极化的消息传递方法及装置。
背景技术:
分离定理说明与信源压缩和信道编码分别优化比,信源信道联合编码无法获得性能增益,但这需要在理想情况下,即假设信源和信道平稳,且延迟、码长和复杂度均不受限。实际情况中,通信系统中的延迟、码长和复杂度都是受到限制的,所以分离定理在实际情况下无法成立,说明相比于信源压缩和信道编码分别优化,信源信道联合优化可以获得性能增益。
如何进行信源信道联合优化,以获得性能增益,目前尚未提出有效的解决方案。
技术实现要素:
有鉴于此,本说明书一个或多个实施例的目的在于提出一种信源信道联合极化的消息传递方法及装置,以解决如何进行信源信道联合优化,以获得性能增益的问题。
根据本发明的一个方面,提出了一种信源信道联合极化的消息传递方法,包括:在发送端对信源序列进行信源极化编码;对信源极化编码的输出进行信道编码;在接收端进行信源信道联合译码。
进一步地,在发送端对信源序列进行信源极化编码,包括:对所述信源序列进行信源极化,以得到比特序列;提取所述比特序列中索引属于预设集合的比特,其中,所述预设集合为高熵信源比特的索引构成的集合。
进一步地,对信源极化编码的输出进行信道编码,包括:使用交织器对所述信源极化编码的输出进行比特交织;对所述交织器的输出进行信道编码。
进一步地,对所述交织器的输出进行信道编码,包括:根据系统极化码对所述信源极化编码的输出进行信道编码。
进一步地,在接收端进行信源信道联合译码,包括:根据信道接收值对信源bp译码器进行初始化;根据经过初始化后的所述信道bp译码器进行信道译码;
进一步地,在接收端进行信源信道联合译码,包括:根据所述信道bp译码器输出的外信息和已知的信源先验信息对所述信源bp译码器进行初始化;
利用经过初始化后的所述信源bp译码器进行信源译码。
进一步地,在接收端进行信源信道联合译码,包括:根据信道接收值及信源先验信息对联合因子图进行初始化;经过初始化后的所述联合因子图上进行信源信道联合译码。
根据本发明的另一个方面,提出了一种信源信道联合极化的消息传递装置,包括:第一编码单元,用于在发送端对信源序列进行信源极化编码;第二编码单元,用于对信源极化编码的输出进行信道编码;译码单元,用于在接收端进行信源信道联合译码。
进一步地,所述第一编码单元包括:极化模块,用于对所述信源序列进行信源极化,以得到信源编码矩阵;提取模块,用于提取所述信源编码矩阵中的目标索引,其中,所述目标索引属于预设集合,所述第一预设集合为高熵信源比特的索引构成的集合;确定模块,用于根据所述目标索引以及所述信源编码矩阵确定所述信源极化编码的输出。
根据本发明的另一个方面,提出了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的信源信道联合极化的消息传递方法。
根据本发明的另一个方面,提出了一种可读存储介质,所述可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上所述信源信道联合极化的消息传递方法。
通过本发明实施例,在发送端进行信源信道联合译码,并在接收端进行信源信道联合译码。基于上述处理,在接收端端利用信源中剩余的冗余,获得了更好的译码性能。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中可选的一种极化码信源信道联合编译码系统模型框图;
图2为本发明实施例中可选的一种信源信道联合极化的消息传递方法的流程示意图;
图2a为本发明实施例中可选的一种比特交织的示意图;
图3为本发明实施例中可选的一种级联双bp信源信道联合译码器模型框图;
图4为本发明实施例中可选的一种级联双bp信源信道联合译码算法流程图;
图5为本发明实施例中可选的一种信源信道联合因子图的示例;
图6为本发明实施例中可选的一种联合因子图双bp信源信道译码器的串行调度流程示意图;
图7为本发明实施例中可选的一种联合因子图双bp信源信道译码器的并行调度流程示意图;
图8为本发明所提出中可选的三种极化码信源信道联合译码方法与只使用信道编码传输的性能对比;
图9为本发明实施例中可选的一种信源信道联合极化的消息传递装置的结构框图;
图10为本发明实施例中可选的一种电子设备的结构框图;
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了进行信源信道联合优化,以获得性能增益,本发明实施例提供一种极化码信源信道联合译码方法及装置,在发送端进行信源信道联合极化编码,在接收端进行信源信道联合译码。这样相较于信源信道独立译码,可以明显改善译码性能。
下面首先对本发明实施例提供的一种信源信道联合极化的消息传递方法进行介绍。
本发明实施例提供的信源信道联合极化的消息传递方法,包括极化码信源信道联合编译码方法。信源信道联合极化的消息传递方法可以应用于电子设备,具体的,该电子设备可以为:台式计算机、便携式计算机、智能移动终端、服务器等。在此不作限定,任何可以实现本发明实施例的电子设备,均属于本发明的保护范围。进一步的,本发明实施例提供的极化码信源信道联合编译码方法也可以应用于电子设备上的译码器,比如,移动终端的译码器。在此不作限定。
如图1所示的极化码信源信道联合编译码系统模型框图,本实施例在发送端进行信源信道联合编码,在接收端进行信源信道联合译码。
在本实施例中,提出了一种信源信道联合极化的消息传递方法,如图2所示,该方法具体包括如下步骤:
s201,在发送端对信源序列进行信源极化编码。
可选地,在本实施例中,对信源序列进行信源极化,以得到比特序列;提取比特序列中索引属于预设集合的比特,其中,预设集合为高熵信源比特的索引构成的集合。
具体地,设为
其中,
设集合h为高熵信源比特的索引构成的集合,集合h的大小为|h|,则最终信源极化编码输出的结果为
其中,
s202,对信源极化编码的输出进行信道编码;
具体地,对信源极化编码的输出进行信道编码具体可以包括以下步骤:
s2021,使用交织器对信源极化编码的输出进行交织。
在本实施例中,比特序列e1,e2,e3,...,e|h|被交织成比特序列e′1,e′2,e′3,...,e′|h|。具体地,本实施例中采用的比特交织器由长度为t比特的等腰三角形结构形成,其中t是使t(t+1)/2≥|h|成立的最小整数,即
s2022,对交织器的输出进行信道编码。
具体地,本实施例中采用系统极化码进行信道编码。信道编码的码长为n,信息序列长度为k=|h|,信道编码的码率r=k/n。设信道编码中信息位的索引构成的集合为a,ac表示集合a的补集,即冻结位索引构成的集合为ac。设
其中,
上述公式内的
本实施例中采用bpsk调制(binaryphaseshiftkeying,二进制相移键控),在awgn(additivewhitegaussiannoise,加性高斯白噪声)信道中进行传输。llr(loglikelihoodratio,对数似然比)形式的信道接收值为:
其中,σ2为awgn信道的噪声方差,
s203,在接收端进行信源信道联合译码。
具体地,如图3所示,为本发明实施例提供的一种极化码信源信道联合译码方法流程图,其中译码方法为级联双bp(beliefpropagation,置信度传播)译码方法,由信源bp译码器和信道bp译码器构成。
图4为本发明实施例的级联双bp信源信道联合译码算法流程图,具体包括如下步骤:
s401,利用信道接收值对信源bp译码器进行初始化。
具体地,码长为n的极化码对应一个n+1阶因子图,每阶包含n个节点。第t次迭代中第i行第j阶节点包含的由左向右迭代时的软信息为
其中,
其余节点中的软信息均初始化为0。
s402,信道bp译码器迭代固定次;
具体信道bp译码器迭代信息更新公式如下:
其中:
f(x,y)≈α*sign(x)sign(y)min(|x|,|y|)(10)
迭代过程中的调度方案为依次计算
s403,外信息解交织后送入信源bp译码器;
具体地,然后序列e1需要经过一个与发送端相对应的解交织器,即步骤s202大小为t的等腰三角形结构,按照“列入行出”的原则进行解交织。交织器的输出为序列e′1,作为高熵比特序列vh的先验信息
s404,对信源bp译码器进行初始化;
具体地,信源bp译码器接收到外信息后,开始译码前,需要对信源bp译码器进行初始化。主要利用信道bp译码器输出的外信息和已知的信源先验信息对信源bp译码器进行初始化。
信源长度为m的信源极化编码对应一个m+1阶因子图,每阶包含m个节点。第t次迭代中第i行第j阶节点包含的由左向右迭代时的软信息为
其中
其余节点中的软信息均初始化为0。
s405,信源bp译码器迭代一次;
具体地,信源bp译码器迭代,以及判断是否满足迭代终止停止条件。信源bp译码器迭代信息更新公式如下:
其中:
f(x,y)≈α*sign(x)sign(y)min(|x|,|y|)(14)
迭代过程中的调度方案为依次计算
s406,判断是否满足迭代终止停止条件;
每次迭代完成后均重新计算
若
s407,输出信源序列估计值;
具体地,输出
s408,判断是否达到最大迭代次数;
具体地,若是,则跳转至步骤s409;若否,则跳转至步骤s404。
s409,判断外部迭代是否达到最大迭代次数;
具体地,若是,则结束;若否,则跳转至步骤s410。
s410,输出外信息交织后传递给信道bp译码器;
具体地,先提取外信息
本发明实施例提供的又一种极化码信源信道联合译码方法,为运行在信源信道联合因子图上的双bp译码方法,图5为本发明实施例的信源信道联合因子图的示例,该方法包括如下步骤:
s51,首先利用信道接收值及信源先验信息对联合因子图进行初始化。
由于信源编码的输出即为系统极化码的信息位比特,信源极化编码和信道编码对应的因子图在属于信源极化固定集合h和信息位比特对应的节点处重合构成联合因子图。
码长为n的系统极化码对应一个n+1阶因子图,每阶包含n个节点。第t次迭代中第i行第j阶节点包含的由左向右迭代时的软信息为
其中
其余节点中的软信息均初始化为0。
信源长度为m的信源极化编码对应一个m+1阶因子图,每阶包含m个节点。第t次迭代中第i行第j阶节点包含的由左向右迭代时的软信息为
其余节点中的软信息均初始化为0。
s52,联合因子图上进行信源信道联合译码。
本发明提出两种联合因子图上的迭代调度方式,分别为:
(1)串行调度
图6为本发明实施例的联合因子图双bp信源信道译码器的串行调度流程示意图,该过程具体可以包括以下步骤:
s61,首先信道因子图上串行依次计算
其中:
f(x,y)≈α*sign(x)sign(y)min(|x|,|y|)(22)
当迭代一次完成后,输出
s62,对软信息序列e1进行解交织
具体步骤与上述步骤s403相同,解交织后得到高熵序列vh的先验信息
s63,对
依次计算
其中:
f(x,y)≈α*sign(x)sign(y)min(|x|,|y|)(25)
一次迭代完成后均重新计算
若
否则判断是否到达预设的最大迭代次数,若达到最大迭代次数则停止迭代,否则输出外信息
s64,对e2进行交织
具体的步骤与s202相同,交织后得到系统位xb的先验信息
s65,对
赋值完成后回到步骤1)开始下一次迭代。
(2)并行调度
图7为本发明实施例的联合因子图双bp信源信道译码器的并行调度流程示意图,该过程具体可以包括以下步骤:
s71,信道因子图上串行依次计算
其中:
f(x,y)≈α*sign(x)sign(y)min(|x|,|y|)(31)
同时并行地在信源因子图上依次计算
s72,计算
若
否则输出
s73,对e1进行解交织,对e2进行交织
对e1进行解交织的具体步骤与s403相同,解交织后得到高熵序列vh的先验信息
s74,更新
图8为本发明所提出的三种极化码信源信道联合译码方法与只使用信道编码传输的性能对比。其中信源长度m=512,信源极化固定集合大小|h|=307,信道编码的码长为n=1024。“联合因子图双bp信源信道联合译码类型1”表示其调度流程为串行调度方式,联合因子图双bp信源信道联合译码类型2”表示其调度流程为信源因子图和信道因子图上同时开始迭代的并行调度方式。由图8可看出,本文提出的三种极化码信源信道联合译码方法具有相似的性能,与单纯使用信道极化码传输信源相比,在bler=10-2处可获得3.1db到3.2db的性能增益。此处eb指信源比特能量。
通过上述实施例,为改善译码性能问题,本发明实施例提供了一种极化码信源信道联合编码的消息传递方法。通过在发送端进行信源信道联合译码,并在接收端进行信源信道联合译码。基于上述处理,在接收端端利用信源中剩余的冗余,获得了更好的译码性能。
本说明书实施例中所述支付涉及的技术载体,例如可以包括近场通信(nearfieldcommunication,nfc)、wifi、3g/4g/5g、pos机刷卡技术、二维码扫码技术、条形码扫码技术、蓝牙、红外、短消息(shortmessageservice,sms)、多媒体消息(multimediamessageservice,mms)等。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
根据本申请实施例的另一个方面,提出了一种信源信道联合极化的消息传递装置,如图9所示,该信源信道联合极化的消息传递装置具体可以包括:
1)第一编码单元90,用于在发送端对信源序列进行信源极化编码;
2)第二编码单元92,用于对信源极化编码的输出进行信道编码;
3)译码单元94,用于在接收端进行信源信道联合译码。
本申请实施例中的图像校准装置可以是具体的装置,也可以是终端中的部件、集成电路、或芯片。该装置可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、可穿戴设备、超级移动个人计算机(ultra-mobilepersonalcomputer,umpc)、上网本或者个人数字助理(personaldigitalassistant,pda)等,非移动电子设备可以为服务器、网络附属存储器(networkattachedstorage,nas)、个人计算机(personalcomputer,pc)、电视机(television,tv)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的信源信道联合极化的消息传递装置可以为具有操作系统的装置。该操作系统可以为安卓(android)操作系统,可以为ios操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。
本申请实施例提供的信源信道联合极化的消息传递装置能够实现图1至图8的方法实施例中信源信道联合极化的消息传递方法实现的各个过程,为避免重复,这里不再赘述。
通过本实施例中提出的信源信道联合极化的消息传递装置,通过在发送端进行信源信道联合译码,并在接收端进行信源信道联合译码。基于上述处理,在接收端端利用信源中剩余的冗余,获得了更好的译码性能。
图10示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。