一种降低存储资源的极化码编码方法与装置

未命名 07-22 阅读:133 评论:0


1.本发明涉及一种降低存储资源的极化码编码方法与装置。


背景技术:

2.自香农提出信道编码定理以来,各种可以逼近香农极限的码被提出,低密度奇偶校验(ldpc)码和并行级联卷积(turbo)码可以在码长趋于无穷时无限接近香农信道容量,但始终不能证明其可以达到香农极限。极化码(参考文献:e.arikan,"channel polarization:a method for constructing capacity-achieving codes for symmetric binary-input memoryless channels,"in ieee transactions on information theory,vol.55,no.7,pp.3051-3073,july 2009,doi:10.1109/tit.2009.2021379.)是近年来提出的一种新的编码方式,它是唯一一种在理论上被证明可以达到香农极限的纠错码。极化码被认为是编码领域的一大突破,在信源编码、信道编码、密钥协议以及网络安全等多个领域有着广泛的应用前景。极化码于2016年被确定为5g增强移动宽带场景的控制信道编码方案。针对极化码的构造、编码和译码,国内外学者进行了大量研究(参考文献:e.arikan,"channel polarization:a method for constructing capacity-achieving codes for symmetric binary-input memoryless channels,"in ieee transactions on information theory,vol.55,no.7,pp.3051-3073,july 2009,doi:10.1109/tit.2009.2021379、r.mori and t.tanaka,"performance of polar codes with the construction using density evolution,"in ieee communications letters,vol.13,no.7,pp.519-521,july 2009,doi:10.1109/lcomm.2009.090428、d.wu,y.li and y.sun,"construction and block error rate analysis of polar codes over awgn channel based on gaussian approximation,"in ieee communications letters,vol.18,no.7,pp.1099-1102,july 2014,doi:10.1109/lcomm.2014.2325811)。
3.文献“e.arikan,"channel polarization:a method for constructing capacity-achieving codes for symmetric binary-input memoryless channels,"in ieee transactions on information theory,vol.55,no.7,pp.3051-3073,july 2009,doi:10.1109/tit.2009.2021379”提出基于快速傅里叶变换结构的全并行极化码编码器,但随着码长的增加,其硬件复杂度o(n﹒log n)会大幅增加。文献“m.s.oommen and s.ravishankar,"fpga implementation of an advanced encoding and decoding architecture of polar codes,"2015international conference on vlsi systems,architecture,technology and applications(vlsi-sata),bengaluru,india,2015,pp.1-6,doi:10.1109/vlsi-sata.2015.7050456”为降低寄存器等资源的使用,将n比特减为n-r

比特进行编码,其中,r

为固定比特0的数目。该结构在一定程度上降低了资源使用率,但仍有很大的优化空间。文献“h.yoo and i.-c.park,"partially parallel encoder architecture for long polar codes,"in ieee transactions on circuits and systems ii:express briefs,vol.62,no.3,pp.306-310,march 2015,doi:10.1109/
tcsii.2014.2369131”提出一种半并行的编码方式,能够提升吞吐率并降低硬件复杂度,但增加了内存的使用,且其占用的寄存器资源会随着码长的增加而增加。
4.当极化码所使用的母码长度为n=2n,存在n列编码过程,记为0,1,...,n-1列;计算并行度置为p(p为2的幂次),采用串行结构的编码方式,在每一列的编码计算中,由p个编码比特组成一个编码单元,极化码编码结构图中每一列从上到下为第0至第编码单元。
5.在编码过程中,采用“乒乓存储”读取和存储机制,在向一块存储读取数据的同时向另一块存储写入数据。一般情况下,母码长度为n的极化码需要两块n比特的内存进行存储。计算单元并行度为p时,每个存储器结构为个字,每个字位宽为p比特。
6.第0列输入值按顺序存储于第0块内存(后续用mem0表示)中,当第0列的第0、1两个编码单元完成编码时,产生第1列的第0、两个编码单元的输入数据。当第0列的第2、3两个编码单元完成编码时,产生第1列的第1、两个编码单元的输入数据。相应地,对电路的操作为读mem0地址0,编码,读mem0地址1,编码,两次编码的输出经交织后即产生第1列的第0、两个编码单元的输入数据。这两组输入数据要保存在内存中,为第1列的输入数据准备另一块内存,称为第1块内存(后续用mem1表示)。对电路的操作为写mem1地址0,写mem1地址与之类似,读mem0地址2,读mem0地址3,写mem1地址1,写mem1地址依次类推直至该列计算完第个编码单元,完成第0列的全部编码。此时,第1列编码的所有输入数据均按顺序存储于mem1中,mem0中的数据不再被使用,mem0用来存储第1列编码后的输出,即第2列的编码输入。按照编码架构图从第0列到第n-1列依次完成每列编码,当计算完第n-1列的第个编码单元,编码结束。
7.此处用到两块内存,称之为乒乓存储。在进行某一列编码时,总是从某一块内存中读取该列的输入数据,编码完成后再把结果写入到另一块内存中。向一块内存读取数据时,内存地址总是按照的自然顺序产生。然而向另一块内存写数据时,地址却未必是按自然顺序产生的,存在地址交织的情况。


技术实现要素:

8.发明目的:针对极化码编码器的架构,在编码过程中,通常采用称作“乒乓存储”的存储机制,这种方案需要两片存储,分别存储编码异或运算的输入以及异或运算后的输出;本方案使用地址二级映射的方式,只需要一片存储即可完成极化码编码过程,节省一半的存储资源。
9.本发明具体提供了一种降低存储资源的极化码编码方法,包括:只使用一块内存,采用地址二级映射进行极化码编码,所述采用地址二级映射进行极化码编码是指:在进行一列编码时,从内存中一地址读取该列的输入数据,编码完成后再写回到内存的原地址中,读地址和写地址相同。
10.所述采用地址二级映射进行极化码编码还包括:设定极化码码长任意,所使用的母码码长度为n=2n、计算并行度为p,有n列编码过程,记为0,1,...,n-1列。
11.所述采用地址二级映射进行极化码编码还包括:从第0块内存mem0中读出第0、1地址里的数据,经第0列的第0、1两个编码单元计算,产生第1列的第0、两个编码单元的输入,把第1列的第0、两个编码单元的输入存放到第0、1地址中。极化码基本编码单元处理两比特数据,编码单元并行处理p比特数据,即编码单元大小为极化码基本编码单元的倍。
12.所述采用地址二级映射进行极化码编码还包括:第2、3地址中的数据读出计算完成后再存回原地址,则第2、3地址中分别存储的是第1列的第1、两个编码单元的输入,以此类推依次计算,最终地址中分别存储的是第1列的第地址中分别存储的是第1列的第编码单元的输入。
13.所述采用地址二级映射进行极化码编码还包括:进行第1列编码时,首先获取第1列的第0、1两个编码单元的输入,第1列的第0、1两个编码单元的输入分别位于第0块内存mem0中的第0、2地址中,异或运算完成后得到第2列第0、两个编码单元的输入,存回第0、2地址中;
14.接着获取第1列的第2、3两个编码单元的输入,第1列的第2、3两个编码单元的输入分别位于第0块内存mem0中的第4、6地址,计算完毕得到第2列第1、两个编码单元的输入,存回第4、6地址中,以此类推,直至第1列计算完第个编码单元;
15.从第0列到第n-1列依次完成每列编码,当计算完第n-1列的第个编码单元后,编码结束。
16.本发明还提供了一种降低存储资源的极化码编码装置,所述装置采用地址二级映射进行极化码编码,降低极化码编码器存储单元一半的存储资源。
17.所述装置包括存储单元、计算单元、控制单元;
18.所述存储单元的数量为一块(此处用mem0表示该存储单元),所述存储单元的宽度为极化码编码装置的计算并行度p比特,深度为所述存储单元用于存储极化码编码装置计算过程中每一列的计算结果值,并且在下一次计算完毕后存储新的计算结果;
19.所述计算单元能够并行处理p比特数据,计算单元包括个极化码基本编码单元;所述极化码基本编码单元用于实现异或运算,两比特输入数据通过一个异或门后得到两比特输出数据中的第一个比特,两比特输入数据中的第二个比特直接输出作为两比特输出数据中的第二个比特;编码中,每列要进行次计算单元的复用,n列编码过程共次计算单元的复用;将每次复用计算单元的部分称作编码单元,即整个编码过程有个编码单元。
20.所述控制单元用于生成整个极化码编码装置各种使能信号,包括和存储单元有关的读使能、写使能、读地址和写地址信号,以及计算单元有关的列数控制信号和每列编码单元控制信号;
21.用i表示列数控制信号,编码过程中计数器从0到n-1计数,计数结果传给i,用i表示编码过程中当前的编码列数,使用母码长度n=2n的极化码编码满足0≤i≤n-1;
22.用j表示每列编码单元控制信号,在极化码每一列编码进程中,在并行度为p的条件下计数器从0到计数,计数结果传给j,表示第i列编码进程中当前第j个编码单元正在进行编码,
23.所述计算单元用于计算从存储单元读取的数据,所述数据的并行度为p,即表示被输入p比特的数据,计算单元计算完成后把结果写入存储单元,即输出p比特的数据。
24.所述计算单元还包括交织模块、寄存器和选择器;
25.所述个极化码基本编码单元计算得到的数据先存进寄存器,下个周期通过极化码基本编码单元计算得到的数据和寄存器中的数据一起传入交织模块进行处理,得到的数据通过选择器进行选择后,输出最终结果;
26.所述装置在进行极化码编码时,具体包括:首先依据需求确定极化码编码各项参数,所述极化码编码各项参数包括母码长度n、信息位k和计算单元数据并行度p,k《n,p《n,由极化码构造方式确定极化子信道的可靠度顺序;然后将n-k个冻结比特映射到n-k个可靠度最差的极化子信道;将k个信息比特映射到k个可靠度最好的极化子信道;再将n比特数据存储在存储单元中;开始编码,有n列编码进程,先从第0列开始,每列的编码都要从上到下对个编码单元遍历,每列的第个编码单元完成编码后再进行下一列的编码,直至第n-1列的最后一个编码单元编码结束,则完成编码;每一组编码单元的编码都要从存储单元中读取相应的数据,计算单元计算完成后把结果存储在存储单元中相对应的位置,其中的各种控制信号(例如读使能、写使能、读地址、写地址等信号)由控制单元给出。
27.本发明中将现有技术中使用乒乓存储、按自然顺序向一块内存读数据、按特殊交织方式向另一块内存写数据的方式称为地址一级映射。
28.现有技术中的乒乓存储与地址一级映射是一种简单常规的方案,但是它需要双份内存的特点将使得电路的功耗与资源大大增加。本发明考虑另一种地址二级映射的交织和存储方式,可以减少一半的内存资源。
29.有益效果:
30.本发明用地址二级映射方案取代原本地址一级映射方案,该方案是可使硬件电路上用一片存储取代原本的两片存储、节省一半的存储资源的方案;本发明提供了地址二级映射方案下的硬件电路实现;本发明在地址二级映射方案基础上构造了极化码编码装置,与传统编码装置相比,可有效降低硬件资源消耗,此处专指存储单元所需面积减少一半;任意码长的极化码,只要其母码长度n、计算单元并行度p均为2的幂次,都可采用本发明中的地址二级映射方案来实现极化码编码装置。
附图说明
31.下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和其他方面的优点将会变得更加清楚。
32.图1是n=16,p=2的极化码编码结构示意图。
33.图2是n=16,p=2的地址二级映射情况示意图。
34.图3是采用地址二级映射方案的极化码编码器设计流程图。
35.图4是极化码编码器装置图。
36.图5是计算单元架构图。
具体实施方式
37.本发明具体提供了一种降低存储资源的极化码编码方法,包括:只使用一块内存,采用地址二级映射进行极化码编码,所述采用地址二级映射进行极化码编码是指:在进行一列编码时,从内存中一地址读取该列的输入数据,编码完成后再写回到内存的原地址中,读地址和写地址相同。
38.所述采用地址二级映射进行极化码编码还包括:设定极化码码长任意,所使用的母码码长度为n=2n、计算并行度为p,有n列编码过程,记为0,1,...,n-1列。
39.所述采用地址二级映射进行极化码编码还包括:从第0块内存mem0中读出第0、1地址里的数据,经第0列的第0、1两个编码单元计算,产生第1列的第0、两个编码单元的输入,把第1列的第0、两个编码单元的输入存放到第0、1地址中。极化码基本编码单元处理两比特数据,编码单元并行处理p比特数据,即编码单元大小为极化码基本编码单元的倍。
40.所述采用地址二级映射进行极化码编码还包括:第2、3地址中的数据读出计算完成后再存回原地址,则第2、3地址中分别存储的是第1列的第1、两个编码单元的输入,以此类推依次计算,最终地址中分别存储的是第1列的第地址中分别存储的是第1列的第编码单元的输入。
41.所述采用地址二级映射进行极化码编码还包括:进行第1列编码时,首先获取第1列的第0、1两个编码单元的输入,第1列的第0、1两个编码单元的输入分别位于第0块内存mem0中的第0、2地址中,异或运算完成后得到第2列第0、两个编码单元的输入,存回第0、2地址中;
42.接着获取第1列的第2、3两个编码单元的输入,第1列的第2、3两个编码单元的输入分别位于第0块内存mem0中的第4、6地址,计算完毕得到第2列第1、两个编码单元的输入,存回第4、6地址中,以此类推,直至第1列计算完第个编码单元;
43.从第0列到第n-1列依次完成每列编码,当计算完第n-1列的第个编码单元后,编码结束。
44.本发明还提供了一种降低存储资源的极化码编码装置,所述装置采用地址二级映
射进行极化码编码,降低极化码编码器存储单元一半的存储资源。
45.所述装置包括存储单元、计算单元(如图5所示)、控制单元;
46.所述存储单元的数量为一块(此处用mem0表示该存储单元),所述存储单元的宽度为极化码编码装置的计算并行度p比特,深度为所述存储单元用于存储极化码编码装置计算过程中每一列的计算结果值,并且在下一次计算完毕后存储新的计算结果;
47.所述计算单元能够并行处理p比特数据,计算单元包括个极化码基本编码单元;所述极化码基本编码单元用于实现异或运算,两比特输入数据通过一个异或门后得到两比特输出数据中的第一个比特,两比特输入数据中的第二个比特直接输出作为两比特输出数据中的第二个比特;编码中,每列要进行次计算单元的复用,n列编码过程共次计算单元的复用;将每次复用计算单元的部分称作编码单元,即整个编码过程有个编码单元。
48.所述控制单元用于生成整个极化码编码装置各种使能信号,包括和存储单元有关的读使能、写使能、读地址和写地址信号,以及计算单元有关的列数控制信号和每列编码单元控制信号;
49.用i表示列数控制信号,编码过程中计数器从0到n-1计数,计数结果传给i,用i表示编码过程中当前的编码列数,使用母码长度n=2n的极化码编码满足0≤i≤n-1;
50.用j表示每列编码单元控制信号,在极化码每一列编码进程中,在并行度为p的条件下计数器从0到计数,计数结果传给j,表示第i列编码进程中当前第j个编码单元正在进行编码,
51.所述计算单元用于计算从存储单元读取的数据,所述数据的并行度为p,即表示被输入p比特的数据,计算单元计算完成后把结果写入存储单元,即输出p比特的数据。
52.所述计算单元还包括交织模块、寄存器和选择器;
53.所述个极化码基本编码单元计算得到的数据先存进寄存器,下个周期通过极化码基本编码单元计算得到的数据和寄存器中的数据一起传入交织模块进行处理,得到的数据通过选择器进行选择后,输出最终结果;
54.所述装置在进行极化码编码时,具体包括:首先依据需求确定极化码编码各项参数,所述极化码编码各项参数包括母码长度n、信息位k和计算单元数据并行度p,k《n,p《n,由极化码构造方式确定极化子信道的可靠度顺序;然后将n-k个冻结比特映射到n-k个可靠度最差的极化子信道;将k个信息比特映射到k个可靠度最好的极化子信道;再将n比特数据存储在存储单元中;开始编码,有n列编码进程,先从第0列开始,每列的编码都要从上到下对个编码单元遍历,每列的第个编码单元完成编码后再进行下一列的编码,直至第n-1列的最后一个编码单元编码结束,则完成编码;每一组编码单元的编码都要从存储单元中读取相应的数据,计算单元计算完成后把结果存储在存储单元中相对应的位置,其中的各种控制信号(例如读使能、写使能、读地址、写地址等信号)由控制单元给出。
55.实施例
56.设定极化码长度任意,所使用的母码长度为n=2n、计算并行度为p,有n列编码过程,记为0,1,...,n-1列。从第0块内存mem0中读出0、1地址里的数据,经第0列的第0、1两个编码单元计算,产生第1列的第0、两个编码单元的输入,按现有技术方案,它们本应存储于第1块内存mem1的0、两个地址中。但如果直接存回第0块内存mem0的0、地址中,会把地址中尚未处理的数据覆盖掉。由于此时0、1地址中的数据已经被处理过,不再需要,可以把第1列的第0、两个编码单元的输入存放到0、1地址中。同理,2、3地址中的数据读出计算完成后需再存回原地址,则2、3地址中分别存储的是第1列的第1、两个编码单元的输入,以此类推依次计算编码单元,地址中分别存储的是第1列的第两个编码单元的输入。进行第1列编码时,首先要获取第1列的第0、1两个编码单元的输入,它们位于内存中的0、2地址中,异或运算完成后得到了第2列第0、两个编码单元的输入,存回0、2地址中。接着获取第1列的第2、3两个编码单元的输入,它们位于内存中的4、6地址,计算完毕得到第2列第1、两个编码单元的输入,存回4、6地址中,以此类推,直至该列计算完第个编码单元。从第0列到第n-1列依次完成每列编码,当计算完第n-1列的第个编码单元后,编码结束。
57.本发明只用到一块内存,在进行某一列编码时,从内存中某一地址读取该列的输入数据,编码完成后再写回到内存的原地址中,读地址和写地址相同,该方法称为地址二级映射。
58.依照上述说明,只使用一片存储就可完成极化码编码。
59.以n=16,p=2的情况为例,编码结构如图1所示,具体映射情况如图2所示。第1列计算完毕后,内存地址0、1、2、3、4、5、6、7中分别存储的是第2列的第0、4、1、5、2、6、3、7个编码单元的输入数据。
60.表1显示了整个编码过程中地址二级映射条件下对每一块内存的读写情况。地址二级映射的特点是每次写的两个地址与两个周期前读的两个地址一致,即从哪里读出来就写回哪里。
61.表1
[0062][0063]
其中,地址二级映射在硬件电路中的产生如下所述。
[0064]
计数器col_cnt从0到n-1对列数计数,每列均有各自的地址映射方案;原地址计数器addr_original在每一列都从0到计数;addr_map表示经过地址二级映射后的地址,即每组计算结果要存入的地址索引。当n=16,p=2时存储地址为0~7,每个地址在硬件电路中均由3比特数表示,从高位到低位分别为addr_original[2],addr_original[1],addr_original[0]。表2可看出地址二级映射的规律。当编码进程为第0列时,原地址和二级映射后的地址相同,地址二级映射后的结果为addr_map[2]=addr_original[2],addr_map[1]=addr_original[1],addr_map[0]=addr_original[0];编码进程为第1列时,原地址循环左移一次后得到映射后的地址,地址二级映射后的结果为addr_map[2]=addr_original[1],addr_map[1]=addr_original[0],addr_map[0]=addr_original[2];编码进程为第2列时,原地址循环左移两次后、最低两位比特反序得到映射后的地址,地址二级映射后的结果为addr_map[2]=addr_original[0],addr_map[1]=addr_original[1],addr_map[0]=addr_original[2];编码进程为第3列时,原地址循环左移三次后、最低三位比特反序得到映射后的地址,地址二级映射后的结果为addr_map[2]=addr_original[0],addr_map[1]=addr_original[1],addr_map[0]=addr_original[2]。
[0065]
表2
[0066][0067]
更为一般的规律为,当n、p均为2的幂次时,存在n列编码过程,记为0,1,...,n-1;编码器存储单元有个地址,记为其地址在硬件电路中由位比特数表示,记地址最低位为第0位,地址最高位为第a-1位。当编码进程为第i(0≤i≤a)列时,原地址循环左移i次后、从第0位至第i-1位比特反序得到地址二级映射后的结果;编码进程为第j(a《j≤n-1)列时,地址二级映射后的结果与编码进程为第a列时地址二级映射后的addr_map相同。
[0068]
本发明要实现的极化码编码架构中的存储方案采用前述的地址二级映射。整个编码器装置设计流程图如图3所示。所述装置在进行极化码编码时,首先依据需求确定极化码编码各项参数,所述极化码编码各项参数包括母码长度n、信息位k和计算单元数据并行度p,k《n,p《n,由极化码构造方式确定极化子信道的可靠度顺序;然后将n-k个冻结比特映射到n-k个可靠度最差的极化子信道;将k个信息比特映射到k个可靠度最好的极化子信道;再将n比特数据存储在存储单元中;开始编码,有n列编码进程,先从第0列开始,每列的编码都要从上到下对个编码单元遍历,每列的第个编码单元完成编码后再进行下一列的编码,直至第n-1列的最后一个编码单元编码结束,则完成编码;每一组编码单元的编码都要从存储单元中读取相应的数据,计算单元计算完成后把结果存储在存储单元中相对应的位置,其中的各种控制信号例如读使能、写使能、读地址、写地址等信号由控制单元给出。依据上述流程,极化码编码器主要架构如图4所示,包括存储单元、计算单元、控制单元三个模块。
[0069]
各模块介绍如下。
[0070]
所述存储单元只需一块存储(此处用mem0表示该存储单元),所述存储单元的宽度为极化码编码装置的计算并行度p比特,深度为所述存储单元用于存储极化码编码装置计算过程中每一列的计算结果值,并且在下一次计算完毕后存储新的计算结果;
[0071]
所述控制单元用于生成整个极化码编码装置各种使能信号,包括和存储单元有关的读使能、写使能、读地址、写地址等信号,和计算单元有关的列数控制信号、每列编码单元控制信号等;用i表示列数控制信号,编码过程中计数器从0到n-1计数,计数结果传给i,用i表示编码过程中此时此刻为第几列编码,母码长度n=2n的极化码编码满足0≤i≤n-1;用j表示每列编码单元控制信号,在极化码每一列编码进程中在并行度为p的条件下计数器从0到计数,计数结果传给j,用j表示该列编码进程中此时此刻为第几个编码单元正在进行编码,
[0072]
所述计算单元用于,计算从存储单元读取的数据,数据并行度为p,即被输入p比特的数据,计算单元计算完成后把结果写入存储单元,即输出p比特的数据。计算单元包括个极化码基本编码单元、交织模块、寄存器、选择器等部分,极化码基本编码单元由异或门元件和连接线组成。
[0073]
任意码长的极化码,只要其使用的母码长度n、计算单元并行度p均为2的幂次,都可采用本发明中的地址二级映射方案来实现极化码编码装置。
[0074]
本发明提供了一种降低存储资源的极化码编码方法与装置,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

技术特征:
1.一种降低存储资源的极化码编码方法,其特征在于,包括:只使用一块内存,采用地址二级映射进行极化码编码,所述采用地址二级映射进行极化码编码是指:在进行一列编码时,从内存中一地址读取该列的输入数据,编码完成后再写回到内存的原地址中,读地址和写地址相同。2.根据权利要求1所述的方法,其特征在于,所述采用地址二级映射进行极化码编码还包括:设定极化码码长为任意,所使用的母码长度n=2
n
、计算并行度为p,有n列编码过程,记为0,1,...,n-1列。3.根据权利要求2所述的方法,其特征在于,所述采用地址二级映射进行极化码编码还包括:从第0块内存mem0中读出第0、1地址里的数据,经第0列的第0、1两个编码单元计算,产生第1列的第0、两个编码单元的输入,把第1列的第0、两个编码单元的输入存放到第0、1地址中;极化码基本编码单元处理两比特数据,编码单元并行处理p比特数据,即编码单元大小为极化码基本编码单元的倍。4.根据权利要求3所述的方法,其特征在于,所述采用地址二级映射进行极化码编码还包括:第2、3地址中的数据读出计算完成后再存回原地址,则第2、3地址中分别存储的是第1列的第1、两个编码单元的输入,以此类推依次计算,最终两个编码单元的输入,以此类推依次计算,最终地址中分别存储的是第1列的第编码单元的输入。5.根据权利要求4所述的方法,其特征在于,所述采用地址二级映射进行极化码编码还包括:进行第1列编码时,首先获取第1列的第0、1两个编码单元的输入,第1列的第0、1两个编码单元的输入分别位于第0块内存mem0中的第0、2地址中,异或运算完成后得到第2列第0、两个编码单元的输入,存回第0、2地址中;接着获取第1列的第2、3两个编码单元的输入,第1列的第2、3两个编码单元的输入分别位于第0块内存mem0中的第4、6地址,计算完毕得到第2列第1、两个编码单元的输入,存回第4、6地址中,以此类推,直至第1列计算完第个编码单元;从第0列到第n-1列依次完成每列编码,当计算完第n-1列的第个编码单元后,编码结束。6.一种降低存储资源的极化码编码装置,其特征在于,所述装置采用地址二级映射进行极化码编码。7.根据权利要求6所述的一种降低存储资源的极化码编码装置,其特征在于,所述装置包括存储单元、计算单元、控制单元;所述存储单元的数量为一块,记为mem0,所述存储单元的宽度为极化码编码装置的计算并行度p比特,深度为所述存储单元用于存储极化码编码装置计算过程中每一列的计算结果值,并且在下一次计算完毕后存储新的计算结果;所述计算单元能够并行处理p比特数据,计算单元包括个极化码基本编码单元;所述
极化码基本编码单元用于实现异或运算,两比特输入数据通过一个异或门后得到两比特输出数据中的第一个比特,两比特输入数据中的第二个比特直接输出作为两比特输出数据中的第二个比特;编码中,每列要进行次计算单元的复用,n列编码过程共次计算单元的复用;将每次复用计算单元的部分称作编码单元,即整个编码过程有个编码单元。8.根据权利要求7所述的一种降低存储资源的极化码编码装置,其特征在于,所述控制单元用于生成整个极化码编码装置各种使能信号,包括和存储单元有关的读使能、写使能、读地址和写地址信号,以及计算单元有关的列数控制信号和每列编码单元控制信号;用i表示列数控制信号,编码过程中计数器从0到n-1计数,计数结果传给i,用i表示编码过程中当前的编码列数,使用母码长度n=2
n
的极化码编码满足0≤i≤n-1;用j表示每列编码单元控制信号,在极化码每一列编码进程中,在并行度为p的条件下计数器从0到计数,计数结果传给j,表示第i列编码进程中当前第j个编码单元正在进行编码,9.根据权利要求8所述的一种降低存储资源的极化码编码装置,其特征在于,所述计算单元用于计算从存储单元读取的数据,所述数据的并行度为p,即表示被输入p比特的数据,计算单元计算完成后把结果写入存储单元,即输出p比特的数据。10.根据权利要求9所述的一种降低存储资源的极化码编码装置,其特征在于,所述计算单元还包括交织模块、寄存器和选择器;所述个极化码基本编码单元计算得到的数据先存进寄存器,下个周期通过极化码基本编码单元计算得到的数据和寄存器中的数据一起传入交织模块进行处理,得到的数据通过选择器进行选择后,输出最终结果;所述装置在进行极化码编码时,具体包括:首先依据需求确定极化码编码各项参数,所述极化码编码各项参数包括母码长度n、信息位k和计算单元数据并行度p,k<n,p<n,由极化码构造方式确定极化子信道的可靠度顺序;然后将n-k个冻结比特映射到n-k个可靠度最差的极化子信道;将k个信息比特映射到k个可靠度最好的极化子信道;再将n比特数据存储在存储单元中;开始编码,有n列编码进程,先从第0列开始,每列的编码都要从上到下对个编码单元遍历,每列的第个编码单元完成编码后再进行下一列的编码,直至第n-1列的最后一个编码单元编码结束,则完成编码;每一组编码单元的编码都要从存储单元中读取相应的数据,计算单元计算完成后把结果存储在存储单元中相对应的位置,其中的各种控制信号由控制单元给出。

技术总结
本发明提供了一种降低存储资源的极化码编码方法与装置,所述方法包括:只使用一块内存,采用地址二级映射进行极化码编码,所述采用地址二级映射进行极化码编码是指:在进行一列编码时,从内存中一地址读取该列的输入数据,编码完成后再写回到内存的原地址中,读地址和写地址相同。本发明在地址二级映射方案基础上构造了极化码编码装置,与传统编码装置相比,可有效降低硬件资源消耗,此处专指存储单元所需面积减少一半;任意码长的极化码,只要其母码长度N、计算单元并行度P均为2的幂次,都可采用本发明中的地址二级映射方案来实现极化码编码装置。化码编码装置。化码编码装置。


技术研发人员:王中风 胡曼 周杨灿
受保护的技术使用者:南京大学
技术研发日:2023.04.23
技术公布日:2023/7/20
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐