技术领域
本发明涉及航天器测控数传技术领域,特别涉及一种适用于深空通信的可 变帧长的多速率LDPC编码方法。
背景技术
在深空探测器设计中,由于通信距离远、传输时延大,接收信噪比极低, 需要设计高性能的信道编码方法以提供可靠通信。传统的深空通信系统设计中, 多采用单一的RS+卷积级联码,编码增益为6~7dB。近年来,低密度奇偶校验(Low Density Parity Cheek,LDPC)码以其编码增益高、复杂度适中、可并行编译码等 优势,在深空通信领域得到广泛关注。
CCSDS标准推荐的适用于深空通信遥测\数传信道的LDPC码是一类具有准 循环结构的系统LDPC码,包括三种信息长度(128、512、2048字节,编码前) 和三种码率(1/2、2/3、4/5),编码增益不小于9dB。目前深空探测任务中,遥 测\数传信道一般选用的编码方式为(223,255)RS编码+(1/2)卷积编码,编 码前数据帧长为220字节或892字节,对应的编码后帧长为512字节或2048字节。 由于深空探测器对地面和中继链路信道情况复杂,不同的信道环境对编码方式 和速率提出不同的要求,因此,遥测\数传信道需兼容多种编码方式且可通过指 令进行在轨切换。CCSDS标准推荐的LDPC编码不能与现有的RS+卷积级联编码 方式兼容。
针对以上情况,本发明设计了一种适用于深空通信的可变帧长的多速率 LDPC编码方法,编码前与编码后的数据帧长均与传统的深空探测器匹配,数据 帧长可由用户根据需求发送指令设置。同时采用多速率输出调度机制,解决了 编码后输出数据多速率切换的问题。本发明中长帧编码流程和短帧编码流程共 用LDPC编码模块、加扰模块、插入同步头模块,因此节省了硬件资源,极大降 低了实现的复杂度。
发明内容
本发明的目的是针对深空通信中对编码增益的要求高以及多种帧长并存、 需要支持在轨多速率切换的任务特点,设计一种可变帧长的多速率LDPC编码方 法。
为解决现有技术中的问题,本发明提出了一种适用于深空通信的可变帧长 的多速率LDPC编码方法,本发明包括以下步骤:
步骤一、缓存接收到的数据帧;
步骤二、设置编码码长L的值;
步骤三、设计编码参数为(4088,1784)的LDPC码;
步骤四、根据所述编码码长L的值,对接收到的数据帧启动相应的LDPC编 码流程;
步骤五、缓存编码后的数据帧,然后输出所述编码后的数据帧。
进一步的,所述步骤一中,缓存接收到的数据帧是通过两个缓存模块实现 的,分别为短帧数据帧缓存模块和长帧数据帧缓存模块;所述短帧数据帧缓存 模块用于缓存接收到的短帧数据帧;所述长帧数据帧缓存模块用于缓存接收到 的长帧数据帧;所述缓存采用乒乓操作机制,所述缓存模块可生成存储状态标 志。
进一步的,所述步骤二中,所述编码码长是依据用户根据当前任务需求而 发送的长短帧切换指令设置的,L=‘0’表示短帧;L=‘1’表示长帧。
进一步的,所述编码码长L的值为‘0’时,所述的LDPC编码流程如下:
(1)当短帧数据帧缓存模块内数据非空时,读取1760比特的数据帧H
(2)在数据帧H
(3)在LDPC编码模块中,按步骤三所述的LDPC码对数据帧M
(4)去掉数据帧N
(5)在加扰模块中将P
(6)在插入同步头模块中,在Q
进一步的,所述编码码长L的值为‘1’时,所述的LDPC编码流程如下:
(1)当长帧数据帧缓存模块内数据非空时,读取7136比特的数据帧H
(2)把数据帧H
(3)在LDPC编码模块中,按步骤三所述的LDPC码分别对数据块M
(4)将数据块N
(5)在加扰模块中将P
(6)在插入同步头模块中,在Q
进一步的,不同的LDPC编码流程中,采用的LDPC编码模块、加扰模块、 插入同步头模块设计状态一致,模块可共用。
进一步的,所述步骤五中,缓存编码后的数据帧是通过两个缓存模块实现 的,分别为短帧编码数据帧缓存模块和长帧编码数据帧缓存模块;所述短帧编 码数据帧缓存模块用于缓存编码后的短帧数据帧;所述长帧编码数据帧缓存模 块用于缓存编码后的长帧数据帧。
进一步的,输出所述编码后的数据帧前还包括以下步骤:
(1)根据速率切换指令对本地时钟进行分频,产生等间隔脉冲信号;
(2)对所述脉冲信号进行计数,根据所述脉冲信号的数值产生调度标志;
(3)当所述调度标志有效时,查询所述短帧编码数据帧缓存模块或长帧编 码数据帧缓存模块的状态;
(4)当所述短帧编码数据帧缓存模块或长帧编码数据帧缓存模块非空时, 按比特读取编码后的数据并输出。
进一步的,当L=‘0’时,每4096个脉冲信号产生一个调度标志;当L=‘1’时, 每16384个脉冲信号产生一个调度标志。
对比现有技术,本发明的有益效果在于:
1.本发明设计了一种适用于深空通信的可变帧长的多速率LDPC编码方法, 编码前与编码后的数据帧长均与目前传统的深空探测器匹配,数据帧长可由用 户根据需求发送长短帧切换指令设置。
2.本发明解决了编码后输出数据多速率切换问题。
3.本发明中长帧编码流程和短帧编码流程共用LDPC编码模块、加扰模块、 插入同步头模块,因此节省了硬件资源,极大降低了实现的复杂度。
附图说明
图1为本发明实施例提供的可变帧长的多速率LDPC编码方法实施框图;
图2为本发明实施例提供的短帧编码流程示意图;
图3为本发明实施例提供的长帧编码流程示意图;
图4为本发明实施例提供的短帧格式实例;
图5为本发明实施例提供的长帧格式实例;
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚, 下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描 述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中 的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实 施例,都属于本发明保护的范围。
某深空探测器对地链路使用LDPC编码,要求编码增益不小于9dB,同时, 要求编码方式能适应短帧(220字节,帧格式见附图4)和长帧(892字节,帧格 式见附图5),编码后数据帧分别为512字节和2048字节,通过长短帧切换指令进 行切换。编码后输出至应答机的数据速率32bps~2048kbps可调。具体的处理步 骤如下:
步骤一、缓存接收到的数据帧;
如图1所示,编码模块与合路模块的接口处设计有两个接收缓存。接收缓 存由FPGA内部的BLOCKRAM实现,BLOCKRAM的存储深度为2048,位宽 为8比特。短帧数据保存在BLOCKRAM1,第2n-1(n=1,2,3…)帧220字节存 储于地址0~地址219,第2n帧220字节存储于地址1024~地址1243。长帧数据 保存在BLOCKRAM2,第2n-1帧892字节存储于地址0~地址891,第2n帧892 字节存储于地址1024~地址1915。
1.当BLOCKRAM1内数据不满时,分路模块可继续写入短帧数据,否则继 续等待;
2.当BLOCKRAM2内数据不满时,分路模块可继续写入长帧数据,否则继 续等待。
3.当BLOCKRAM1内数据非空时,LDPC编码模块可启动短帧编码流程, 否则继续等待;
4.当BLOCKRAM2内数据非空时,LDPC编码模块可启动长帧编码流程, 否则继续等待。
步骤二、依据用户根据当前任务需求而发送的长短帧切换指令,设置编码 码长L,L=‘0’表示短帧;L=‘1’表示长帧
步骤三、设计编码参数为(4088,1784)的LDPC码。
1.构造编码参数为(4096,1792)的LDPC码。
校验矩阵H的基矩阵的维数为18×32,扩展矩阵维数为128×128,因此,校 验矩阵H的维数为2304×4096。H可分解为H
式(1)中,H
该LDPC校验矩阵的行列重量分布式为:
行重量分布式:
列重量分布式:
LDPC码的信息位长度为1792比特,校验位长度为2304比特,编码参数为 (4096,1792)。
2.对(4096,1792)码进行8比特删除,删掉信息位的最后8比特,得到编 码参数为(4088,1784)的LDPC码。
步骤四、根据所述编码码长L的值,对接收到的数据帧启动相应的LDPC 编码流程;
1.如图2所示,短帧编码流程如下:
(1)当BLOCKRAM1内数据非空时,读取1760比特的数据帧H
(2)在数据帧H
(3)在LDPC编码模块中,按步骤三所述的LDPC码对M
(4)去掉N
(5)在加扰模块中将P
(6)在插入同步头模块中,在Q
2.如图3所示,长帧编码流程如下:
(1)当BLOCKRAM2内数据非空时,读取7136比特的数据帧H
(2)把H
(3)在LDPC编码模块中,对数据块M
(4)将数据块N
(5)在加扰模块中将P
(6)在插入同步头模块中,在Q
短帧编码流程和长帧编码流程中,采用的LDPC编码模块、加扰模块、插 入同步头模块设计状态一致,模块可共用。
步骤五、缓存编码后的数据帧,然后输出所述编码后的数据帧。
1.输出接口设置输出缓存,存储编码后的数据帧。输出缓存由FPGA内部的BLOCKRAM实现。编码后的短帧数据存储于BLOCKRAM3,编码后的长帧数 据存储于BLOCKRAM4。
2.设置时钟生成模块,根据速率切换指令对本地时钟进行分频,产生等间隔 脉冲信号,同时对脉冲信号进行计数,产生调度标志。
(1)短帧模式下,每4096个脉冲信号产生一个调度标志;
(2)长帧模式下,每16384个脉冲信号产生一个调度标志。
3.当调度标志有效时,查询输出缓存状态,当输出缓存非空时,将编码后的 数据按比特输出至应答机。
(1)短帧模式下,对BLOCKRAM3进行查询和读取;
(2)长帧模式下,对BLOCKRAM4进行查询和读取。
虽然,上文中已经用一般性说明、具体实施方式及试验,对本发明作了详尽的 描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员 而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改 进,均属于本发明要求保护的范围。
机译: v u00ecdeo的编码方法,v u00ecdeo编码器,对v u00ecdeo进行解码的方法,v u00ecdeo解码器可还原位序列的帧。M u00ecdia存储已存储在程序中,通过计算机读取 u00ecvel即可实现一种用于对v u00ecdeo,M u00ecdia存储器进行编码的方法,该方法已存储在计算机读取的程序pass u00ecvel中,以实现对v u00ecdeo进行编码的方法。v u00ecdeo的编码方法,用于消除冗余中的冗余v u00ecdeo的帧,解码v u00ecdeo的方法以恢复输入比特序列的原始图像,以及解码装置以恢复当前帧
机译: 一种基于无线通信系统中的LDPC代码的奇偶校验矩阵的编码方法和使用该编码终端。
机译: 可变编解码器帧长,适用于多流应用