一种无速率码的编译码方法

文档序号:7711590阅读:124来源:国知局
专利名称:一种无速率码的编译码方法
技术领域
本发明涉及通信技术领域,确切地说涉及到一种信道编码与译码方法。
背景技术
在通信中,信道编码是一种非常有效的提高性能的方法。常见的信 道编码有里德-所罗门码、巻积码、turbo码以及LDPC码。近来一种 被称为无速率码的信道编码被广泛关注,见参考文献Michael Luby, "LT codes", The 43rd Annual IEEE Symposhun on Foundations of Computer Science, 2002. pp. 271- 280。该码在二进制删除信道上具有 非常优异的特性,首先它的性能接近信道容量限;其次该码具有"无 速率"特性,所谓无速率是指发射机会按照接收机的要求传送任意码 率的信号,直到接收机接收正确为止。无速率码的这种特性非常适合 于广播信道等单向或双向但反向传输能力有限的信道。传统的构造无 速率码的方法是基于随机构造,如参考文献Michael Luby, "LT codes", The 43rd Annual IEEE Symposium on Foundations of Computer Science, 2002. pp. 271- 280,和Amin Shokrollahi, "Raptor Codes", IEEE Transactions on Information Theory, vol.52, No.6, Jun. 2006。这些方法 的编译码都是在二元域中进行的。编译码过程大致如下在编码端, 编码器随机地从信息序列中取出特定数目的比特进行奇偶校验编码, 并将编码后的符号经过调制后送出;在接收端,译码器将解调后中经 检测是正确的符号存入存储器,判断符号正确与否一般是通过帧检测 算法,如循环冗余检测(CRC)算法。由于编码端的奇偶校验编码中有 部分编码仅有一个信息比特参与,如果这些奇偶校验编码后的符号被 接收机正确接收,那么在译码的初期就可以利用这些奇偶校验编码恢 复这些信息比特。 一般每一个信息比特都会参与多个奇偶校验编码, 因而当一个信息比特被恢复后,就更新它的状态,即从未知比特变为 已知比特,以便该比特参与的其它奇偶校验编码可以利用该比特的已 知信息。当一个正确的接收符号对应的奇偶校验编码中仅有一个未知 信息比特时就可以通过奇偶校验编码关系恢复出该未知信息比特并更 新该信息比特。这样随着译码过程的不断地进行并且接收机不断地接
4收新的符号,最终接收端可以完全恢复出所有信息比特。采用这些构 造方法有如下几个方面的缺点1.传输效率不够高,没法达到满速率, 所谓满速率是指发送长度为/数据,则接收端只要刚好接收到长度为 f的正确数据就能恢复出原数据;2.接收端必须边接收边译码,再判 断是否接收数据足够恢复出原数据;3.存储量大,发射机与接收机都 需要存储一张很大的关系表以便接收机完全知道发射机的所有奇偶校 验编码中参与的信息比特的位置情况。

发明内容
为克服上述技术的问题,本发明提出了一种新的无速率码的编译码 方法。该方法是基于多元有限域构造。其主要处理过程为
在发送端的编码过程,将信源发出的信号转换成GF(《)域中的符 号,然后对GF(《)域中的给定编码长度的符号进行编码,编码过程中 用到的生成矩阵是基于GF(《)域构造的特殊矩阵,再将编码后以矩阵 形式组成的数据组进行行列转换,再转换成比特符号,最后通过交织、 调制等常规处理后送入信道;
在接收端的译码过程,接收设备将接收信号进行解调、结交织等常 规处理方式处理后,进行帧检测,当收到的到一定数量的正确帧数后, 就将所接收的比特转换成用于GF(《)中运算的符号,然后在GF(《)中运 算的符号的基础上进行译码,对译码后的数据再转换成比特数据,最 后去掉帧信息后送入信宿。
发明效果
由于本发明中是基于多元有限域的,所包括的生成矩阵由GF(《) 的元素组成并具有严格的数学结构。这样带来的好处是可以满速率传 输、而且所需的存储空间小,而且有利于接收端可以利用该结构方便 且高效地恢复出原信息比特,总之利用该发明可以非常高效地提高数 据传输性能。


图1为本发明的发送端编码处理过程构成图2为本发明的接收端译码处理过程构成图。
l是组帧处理模块,2是发端比特转符号模块,3是编码模块,4 是发端行列变换模块,5是发端符号转比特模块,6是成帧模块,7是 发端常规信号处理模块,8是收端常规信号处理模块,9是帧检测模块, 10是收端比特转符号模块,11是收端行列变换模块,12是译码器模 块,13是收端符号转比特模块,14是去组帧模块。
具体实施例方式
现结合具体附图对本发明的实施例进行详细描述。
发射端的编码处理部分如图1所示,包括了组帧处理模块l, 发端比特转符号模块2,编码模块3,发端行列变换模块4 ,发端符 号转比特模块5,成帧模块6,发端常规信号处理模块7。
所述的发射端处理部分的编码过程如下
1) 、由信源发出的原始数据被送入到组帧处理模块1进行组帧,
帧长为Hog〖比特,其中《是经发端比特转符号模块2转换后的符号的
进制数,A是一次编码处理的《进制符号的符号个数(也就是一次编 码长度);
2) 、经组帧后的数据被输入发端比特转符号模块2,即每帧被转 换成由A个GF(《)符号,用b表示这A个GF(《)符号所组成的向量;
3) 、经比特转符号后数据被输入编码模块3,由编码模块3对每 一帧进行编码,编码模块3的处理过程为
(1)、构造如下一个矩阵
1111
1
1( 2)2
1(々,2
其中a是GF(g)的本原域元素,则GF(W的所有域元素为0,1,a, or2 ,…,or9—2;
(2)、取A中的前A行中任意《个列组成生成矩阵G, A<"<《-1, 所述的生成矩阵G可以为如下矩阵
111 -.. 1
1
1("1)2..(""-')2
1("'广1
(3)、将编码前的A个符号所组成的向量b与生成矩阵G在GF(《) 上乘,即c:bG,就得到了编码后的w个符号c;
4)、经编码后的符号c被输送到发端行列变换模块4进行行列变
换;5) 、经行列变换后符号被送入发端符号转比特模块5,将GF(《) 中的符号转成比特;
6) 、由符号转比特后的信号被送至成帧模块6,成帧模块6包括 两个步骤,第一步,为每一个帧增加一个帧号;第二步,为每一个帧 插入帧校验序列,目的是在接收端用来检测该帧的正确性,所述帧校 验序列可以是采用循环冗余校验(CRC)序列;
7) 、经成帧模块6处理后的信息被送入发端常规信号处理模块7, 所述的发端常规信号处理模块7是对信号进行交织、调制等处理并送 至信道;
接收端译码处理部分如图2所示,包括了收端常规信号处理模 块8,帧检测模块9,收端比特转符号模块IO,收端行列变换模块ll, 译码器模块12,收端符号转比特模块13,去组帧模块14;
所述的接收端处理部分的译码过程如下
8) 、从信道送来的信号被送至收端常规信号处理模块进行常规信 号处理8,所述的常规信号处理是对信号进行解调、解交织等处理;
9) 、经常规信号处理后的信号被输送至帧检测模块9,所述帧检 测模块用来检测帧的对错,所述帧检测处理可以是循环冗余校验(CRC) 序列检测方法,当收到的正确帧数达到A时,帧检测模块9将所有正 确帧中的数据及相应帧号分别送至收端比特转符号模块10和译码模 块12,而将错误的帧直接扔掉;
10) 、收端比特转符号模块IO将从帧检测模块9送来的比特转成 用于GF(《)中运算的符号;
11) 、从比特转符号模块送出的帧被输送到收端行列变换模块11 进行行列变换;
12) 、从收端行列变换模块11送出的帧以及从帧检测模块9送出 的帧号被送至译码器模块12进行译码处理,译码器模块12的处理过 程如下
首先根据收到的帧号从生成矩阵G中找出对应的列,这样就刚 好组成一个A:XA方阵O;
再对方阵①求逆得到①一1,
最后从行列变送来的帧与矩阵Or)在GF(《)上乘,gpb' = c'0—',式 中c'表示译码前的一帧数据(或帧向量),6'表示译码后的一帧数据。
13) 、经译码后的数据被送入收端符号转比特模块13,收端符号 转比特模块13将译码后的数据从GF(《)中的符号形式转成比特;
14) 、经收端符号转比特模块13处理后的数据输入去组帧模块14,
7所述的去组帧模块14将送来的数据去掉其中的帧信息后组合成串行 信号,送至信宿。
一个在GF(2"上,且编码长度为32的无速率码的编译码方法的 实施例
发射端的编码处理步骤如下
a) 、由信源发出的总长度为16384的原始数据被送入到组帧处理 模块,进行组帧,共组成64个帧,每个帧长度为256;
b) 、经组帧后的数据被输入比特转符号模块,每8比特转成一个 用于GF(2S)中运算的符号,这样每个帧长度A:就为32个符号;
c) 、经比特转符号后数据被输入编码模块,由编码模块对每一帧 进行编码,所述的编码模块所用到生成矩阵,按照如下方法产生-
-111 -' 1
1 2 ...
1("1)2("2)2 ■. (a'")2
1("1)31("2f ..,("127f
所述编码方法过程如下假设编码前的帧用b表示,长度为32, 生成矩阵为G,编码后的帧用c表示,长度为128,则编码过程就是 向量与矩阵在GF(2勺上乘,即c=bG;
d) 、经编码后的符号被输送到行列变换模块进行行列变换,变换 后,帧长变为64个符号,而帧数变为128;
e) 、经行列变换后符号被送入符号转比特模块,将GF(2S)中的符 号转成比特,这样帧长为512比特;
f) 、由符号转比特后的信号被送至组帧处理模块,组帧处理模块 包括两个步骤,第一步,在每一个帧前面增加一个帧号,由于共有128 个帧,可以用7个比特表示帧号;第二步,在每一个帧后面插入一个 16比特的CRC校验序列,这样总的帧长度就是535;
g) 、经成帧模块处理后的信息被送入常规信号处理模块,所述的 常规信号处理是对信号进行交织、调制等处理并送至信道;
所述的接收端处理步骤如下
h) 、从信道送来的信号被送至常规信号处理模块进行常规信号处 理,所述的常规信号处理是对信号进行解调、解交织等处理;
8i)、经常规信号处理后的信号被输送至帧检测模块通过检测CRC 来检测帧的对错,当收到的正确帧的数目达到32时,帧检测模块将所 有正确帧中的数据及相应帧号分别送至比特转符号模块和译码模块, 而错误的帧直接扔掉;
j)、经帧处理后的数据被输入比特转符号模块,将比特转成用于 GF(2S)中运算的符号,每8比特转成一个符号,每个帧长为64符号;
k)、从比特转符号模块送出的帧被输送到行列变换模块进行行列 变换,变换后,帧长变为32个符号,帧数变为64;
1)、从行列变换模块变换后的帧以及从帧检测模块检出的帧号被 送至译码器模块进行译码处理,译码过程如下
首先,根据这些收到的正确帧的帧号从生成矩阵G中找出对应的 32列,这样就刚好组成一个32X32的方阵O;
其次,对方阵①求逆,由于O是一个GF(2S)上的范德蒙矩阵,①
必有唯一的逆矩阵o-1.,
最后,对每一个帧进行反编码处理假设反编码前的帧用c'表示, 长度为32个符号,反编码矩阵为0—',反编码后的帧用b'表示,长度 也为32个符号,则反编码过程就是向量与矩阵在GF(2S)上乘,即
m)、经译码后的数据被送入符号转比特模块,将GF(2S)中的符号 转成比特,每一个符号转成8比特,每一帧长度256比特,共64帧;
n)、经转比特模块后的数据进行去组帧模块处理,所述的去组帧 模块将送来的数据组合成串行信号,送至信宿。
本发明不限于上述实施例,根据上述实施例的描述,本发明还可 作出一些显而易见的改变,凡依据本发明权利要求书范围所作的同等 的变化及修饰,均应落入本发明保护范围之内。
9
权利要求
1、一种无速率码的编译码方法,分为发射端的编码处理部分和接收端的译码处理部分,其特征在于该方法是基于多元有限域构造的,发射端的编码处理部分包括了组帧处理模块(1),发端比特转符号模块(2),编码模块(3),发端行列变换模块(4),发端符号转比特模块(5),成帧模块(6),所述的发射端编码处理部分的处理过程为1)由信源发出的原始数据被送入到组帧处理模块(1)进行组帧,组帧后的帧长为klog2q比特,其中q是发端比特转符号模块(2)转换后的符号的进制数,k是一次编码处理的q进制符号的符号个数;2)经组帧处理模块(1)组帧后的数据被输入到发端比特转符号模块(2),发端比特转符号模块(2)将每帧转换成k个GF(q)符号;3)经发端比特转符号模块(2)转换后的k个符号被输入到编码模块(3),由编码模块(3)对每一帧进行编码,编码模块(3)的处理过程为A构造一个矩阵其中α是GF(q)的本原域元素,B取Λ中的前k行中任意n个列组成生成矩阵G,k<n<q-1,所述的生成矩阵G可以为如下矩阵C将编码前的k个符号所组成的向量b与生成矩阵G在GF(q)上相乘,即c=bG,就得到了编码后的n个符号所组成的向量c;4)经编码模块(3)编码后的符号被输送到发端行列变换模块(4)进行行列变换;5)经发端行列变换模块(4)进行行列变换后的符号被送入发端符号转比特模块(5),将GF(q)中的符号转成比特;6)由发端符号转比特模块(5)转换后的比特被送至成帧模块(6),成帧模块(6)包括两个步骤,第一步,为每一个帧增加一个帧号;第二步,为每一个帧插入帧校验序列;7)、经成帧模块(6)处理后的信息被送入发端常规信号处理模块(7),所述的常规信号处理是对信号进行交织、调制等处理并送至信道;其特征还在于接收端的译码处理部分包括收端常规信号处理模块(8),帧检测模块(9),收端比特转符号模块(10),收端行列变换模块(11),译码器模块(12),收端符号转比特模块(13),去组帧模块(14);所述的接收端的译码处理部分的处理过程如下8)从信道收到的信号被送至收端常规信号处理模块(8)进行常规信号处理,所述的常规信号处理是对信号进行解调、解交织等处理;9)经常规信号处理模块(8)处理后的信号被输送至帧检测模块(9),所述帧检测模块(9)用来检测帧的正确与错误,当收到的正确帧数达到k个时,帧检测模块(9)将所有正确帧中的数据及相应帧号分别送至收端比特转符号模块(10)模块和译码模块(12),而错误的帧直接扔掉;10)收端比特转符号模块(10)将从帧检测模块(9)送来的比特转成用于GF(q)中运算的符号,并将转换后的符号输送到收端行列变换模块(11);11)收端行列变换模块(11)将收端比特转符号模块(10)输出的帧进行行列变换,并将行列变换后的帧输入送到译码器模块(12);12)译码器模块(12)收到从收端行列变换模块(11)输出的帧以及从帧检测模块(9)输出的帧号后进行译码处理,译码器模块(12)的处理过程如下首先根据收到的帧号从生成矩阵G中找出对应的列,这样就刚好组成一个k×k方阵Φ;再对方阵Φ求逆得到Φ-1,最后从行列变送来的帧与矩阵Φ-1在GF(q)上乘,即b′=c′Φ-1,式中c′表示译码前的一帧数据,b′表示译码后的一帧数据,13)经译码器模块(12)译码后的数据被送入收端符号转比特模块(13),收端符号转比特模块(13)将译码后的数据从GF(q)中的符号形式转成比特符号形式的数据,14)收端符号转比特模块(13)处理后的数据被输入到去组帧模块(14),所述的去组帧模块(14)将送来的数据去掉其中的代表帧信息的部分,然后组合成串行信号。
2、根据权利要求1所述的一种无速率码的编译码方法,其特征在于成帧 模块(6)为每一个帧插入帧校验序列可以是循环冗余校验序列,而帧检测处 理模块(9)中的监测方法可以是循环冗余校验序列检测方法。
全文摘要
本发明公开了一种无速率码的编译码方法,其特征在于该方法是基于多元有限域,包括它的生成矩阵由多元有限域的元素组成并具有严格的数学结构,编译码过程也是基于该有限域的,这样带来的好处是可以满速率传输、所需的存储空间小,而且接收端可以利用该结构方便且高效地恢复出原信息比特。利用该发明可以非常高效地提高数据传输性能。
文档编号H04L1/00GK101645753SQ20091016433
公开日2010年2月10日 申请日期2009年9月3日 优先权日2009年9月3日
发明者李少谦, 林灯生 申请人:电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1