CN1145267C - 一种高效卷积编码方法 - Google Patents
一种高效卷积编码方法 Download PDFInfo
- Publication number
- CN1145267C CN1145267C CNB011056320A CN01105632A CN1145267C CN 1145267 C CN1145267 C CN 1145267C CN B011056320 A CNB011056320 A CN B011056320A CN 01105632 A CN01105632 A CN 01105632A CN 1145267 C CN1145267 C CN 1145267C
- Authority
- CN
- China
- Prior art keywords
- unit
- bit
- information bit
- status
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明提供一种高效的卷积编码方法,包括下列步骤:a.根据具体应用产生生成多项式;c.将所述待编码的输入信息比特流分成一个或多个信息比特单元;d.根据所述生成多项式,对于每个待编码的所述信息比特单元进行卷积,从而产生对应于该信息比特单元的经编码信息比特流,其中正在进行卷积编码的所述信息比特单元即为当前信息比特单元。
Description
技术领域
本发明涉及通信系统中,特别是,涉及在通信系统中的一种经改进的高效卷积编码方法。
背景技术
卷积编码是当今各种通信系统中广为采用的信道编码技术。它是把k个信息比特编码成n个比特,特别适合于以串行形式传输的信息,延时小。卷积码中编码后的n个码元不但与当前段的k个信息有关,而且与前面(N-1)段的信息有关,编码过程中相互关联的码元为Nn个。卷积码的纠错能力随着N的增加而增大,而差错率随着N的增加而指数下降,N被称为约束长度。
卷积码编码器的一般形式如图1所示,它包括:一个由N段组成的输入移位寄存器,每段有k级,共Nk位寄存器;一组n个异或相加器;一个由n级组成的输出移位寄存器。对应于每段k个比特的输入序列,输出n个比特。由图可知,n个输出比特不但与当前的k个输入比特有关,而且与以前的(N-1)k个输入信息比特有关。整个编码过程可以看成是输入信息序列与移位寄存器和异或连接方式所决定的另一个序列的卷积。通常卷积码记作(n,k,N),它的编码效率(简称码率)为Rc=k/n。通信系统采用码率为1/2和1/3的卷积码。卷积编码操作通常采用生成多项式来表示,如下式(1)所示:
G(D)=A0+A1D+A2D2+…An-1Dn-1 (1)
上式中,A0、A1、…An-1为二进制的0或1。显然,卷积码的运算量取决于表达式(1)中的非零项的数目。
以上所述的码率以及(1)式中各个系数的选择是与具体的应用相关的,即,根据不同具体应用可产生不同的生成多项式。所谓的具体应用包括业务种类;数据速率;编码效率和约束长度。其中业务种类可包含语音业务和数据业务;数据速率可包含全速率和半速率,等等;编码效率可包含1/2码率和1/3码率;而约束长度可视情况而定。比如,GSM信道编码中,对于全速率的语音业务采用约束长度为5的1/2码率卷积编码。其生成多项式如下:
G0=1+D3+D4 (2)
G1=1+D+D3+D4 (3)
又如,GSM系统中,6.0kbit/s的全速率数据业务信道采用的约束长度为5的1/3卷积编码。其生成多项式如(4)、(5)、(6)所示:
G0=1+D+D3+D4 (4)
G1=1+D2+D4 (5)
G2=1+D+D2+D3+D4 (6)
对于给定的生成多项式其运算量是一定的,但是由于实现方法的不同,代码的效率相差还是非常大的。在现有技术中,在实现卷积编码的过程中通常被采用的方法是:将待编码的输入比特流中的每一个比特作为一个数据单元,每一个输出比特都是由当前输入比特单元与它前面相关的若干比特单元进行异或运算得到。图2示出现有技术在对于全速率的语音业务采用约束长度为5的1/2码率卷积编码的过程。由于生成多项式中的每一项代表的是待编码输入序列中的某一比特。即,卷积编码输出的每一比特都是与之对应的一些输入比特异或运算所得的结果。由于处理器的最小可操作单元通常为8、16或32比特,而不能对比特直接进行操作,所以通常做法是在卷积编码前,先把按比特排列的输入序列拆分,拆分后,每比特用一个最小操作单元(为说明方便下面的最小操作单元取为8位)来表示。根据式(2)和(3)将待编码的输入比特流中的每一个比特设置在寄存器的各操作单元中,而该寄存单元的其它位设为零。在现有技术的方法中,生成多项式中的1对应于当前位(如图2中的D(k)),而多项式中的Dm则对应于比当前位提前m时刻的位(如图2中的D(k-3)对应于多项式中的D3,它表示比当前位D(k)提前3个时刻的位)。在图2中,待编码的当前位D(k)为例,根据生成多项式(2)和(3),将位D(k)和D(k-3)以及D(k-4)异或运算,得出对于当前位D(k)的一个卷积编码结果G(2k)(它对应于式(2)中的G0)。然后,将G(2k)与D(k-1)异或运算,得出对于当前位D(k)的另一个卷积编码结果G(2k+1)(它对应于式(3)中的G1)。依此类推,便得出对于输入比特流的编码结果。
可见,传统的方法中,以上述1/2码率的卷积编码为例,每计算两个输出信息比特都需要进行5次异或运算,而且在编码前还要将输入的比特流进行拆分,然后缓存,这势必减缓了编码效率。
发明内容
本发明的目的是提供一种能够提高卷积编码效率的高效卷积编码方法。
本发明提供一种对输入比特流进行高效卷积编码的方法,包括下列步骤:
a.根据具体应用产生生成多项式;
b.将待编码的所述输入信息比特流分成一个或多个信息比特单元;
c.根据所述生成多项式,对于每个待编码的所述信息比特单元进行卷积编码,
从而产生对应于该信息比特单元的经卷积编码后的信息比特流,其中正在进行卷积编码的所述信息比特单元即为当前信息比特单元,
其中所述生成多项式可包含1和/或一个或多个Dm的状态项,其中m是大于等于1并小于等于所述信息比特单元的比特个数的整数,
所述步骤c中的卷积编码是通过步骤e至f完成的:
e.产生与所述生成多项式中各状态项相对应的状态比特单元;
f.按照所述生成多项式,对所述各状态比特单元逐位地进行异或运算,从而产生对应于所述当前信息比特单元的经卷积编码后的信息比特流,
其中在所述步骤e中,
如果所述状态项是1,那么所对应的状态比特单元就是所述当前信息比特单元;
如果所述状态项是Dm,其所对应的状态比特单元中的每一位都比所述当前信息比特单元中的每一位提前m位,其中所述状态比特单元是通过如下步骤获得:
如果所述处理器的处理位宽大于所述信息比特单元或所述状态比特单元的比特数,可直接从处理器一次处理提取的信息中获得与Dm状态项相对应的状态比特单元;
如果所述处理器的处理位宽等于所述信息比特单元或所述状态比特单元的比特数,如果所述处理器的处理位宽等于所述信息比特单元或所述状态比特单元的比特数,则通过下述步骤g至j得出与Dm状态项对应的所述状态比特单元:
g.将所述当前信息比特单元向高位移m位,而低位补零;
h.将所述前一时刻信息比特单元向低位符号移位达L-m位;
i.对经步骤(h)后得出的信息比特单元和二进制数(0)L-m(1)m进行与运算,其中二进制数(0)L-m(1)m包括L-m个0和m个1;
j.将经步骤g后得出的信息比特单元和经步骤i后得出的信息比特单元进行或运算,从而得出与Dm状态项对应的所述状态比特单元,
其中所述前一时刻的信息比特单元中的每一位都比所述当前信息比特单元中的每一位提前L位。
上述方法中,所述具体应用包括:业务种类;数据速率;编码效率和约束长度。
上述方法中,所述信息比特单元和所述状态比特单元所包含的比特数L相等,并根据进行卷积编码的处理器的处理位宽和所述输入比特流的长度确定所述比特数。
附图说明
图1示出卷积编码器的一般形式。
图2示出在现有技术中全速率语音信道卷积编码方法的实现框图。
图3示出根据本发明的全速率语音信道卷积编码方法的实现框图。
具体实施方式
下面,结合附图,通过对本发明的较佳实施例的详细描述,对于熟悉本技术领域的人员而言,本发明的上述和其它特征、目的和优点将显而易见。
下面以全速率语音业务采用约束长度为5的1/2卷积效率的对输入比特码流1011010111001001……进行卷积编码为例,结合图3说明本发明的方法,其中图3示出根据本发明的全速率语音信道卷积编码方法的实现框图。
首先,根据具体应用产生生成多项式,如上式(2)和(3)。
然后,将待编码的输入信息比特流分成一个或多个信息比特单元。其中信息比特单元所包含的比特数(L)是根据进行该卷积编码的处理器的处理位宽、输入比特流的长度等综合因素进行考虑的。如本实施例,根据上述综合因素将信息比特单元所包含的比特数(L)设为8。于是,输入信息比特流就被分成10110101、11001001、……。
接着,根据生成多项式(2)和(3),对于每个待编码的所述信息比特单元进行卷积,从而产生对应于该信息比特单元的经编码信息比特流,其中正在进行编码的信息比特单元即为当前信息比特单元。现在以当前信息比特单元是10110101为例,对其进行编码的具体的步骤如下,其中信息比特单元11001001为前一时刻的信息比特单元:
首先,产生与生成多项式中各状态项相对应的状态比特单元。其中状态比特单元所包含的比特数与信息比特单元所包含的比特数相等,在本实施例中都为8。在生成多项式(2)和(3)中有4个状态项,1、D、D3和D4。在本发明中,状态项1所对应的当前状态比特单元就是当前信息比特单元,即,10110101(图3中的U(k));与D所对应的状态比特单元中的每位都比当前状态比特单元中的每位提前1个时刻,在本实施例中即为01101011(图3中的U(k-1));而与D3和D4所对应的状态比特单元中的每个比特位都比当前状态比特单元中的每一位提前3和4个时刻,在本实施例中分别为10101110(图3中的U(k-3))和01011100(图3中的U(k-4))。然后将与式(2)中的各状态项1、D3和D4所对应的状态比特单元放入图3中的相应操作单元中。
然后,按照生成多项式(2),对状态比特单元U(k)、U(k-3)和U(k-4)逐位地进行异或运算,从而产生对应于当前信息比特单元(10110101)的一个经卷积信息比特流,生成多项式(2)中的G0(对应于图3中的G(2k))。之后根据生成多项式(3),对状态比特单元U(k)、U(k-1)、U(k-3)和U(k-4)逐位地进行异或运算,也就是对G(2k)和U(k-1)进行异或运算,从而得出对应于当前信息比特单元(10110101)的另一个经卷积信息比特流,生成多项式(3)中的G1(对应于图3中的G(2k+1))。
由此可见,由于本发明的方法中,完全利用操作单元,而不是只将当前位放入操作单元中,而操作单元的其它位设零,从而本发明的编码方法的效率是传统方法的L倍,其中L是操作单元的位数(即,信息比特单元的比特数)。而且本发明的方法省略了传统方法中的拆分和缓存步骤,因此进一步提高了编码速度。
当然,获得与生成多项式中Dm状态项相对应的状态比特单元有如下步骤:
如果处理器的处理位宽大于信息比特单元或状态比特单元的比特数(L),可直接从处理器一次处理提取的信息中获得与Dm状态项相对应的状态比特单元。举例而言,如果进行卷积编码的处理器的处理位宽是16,而根据综合因素设定的信息比特单元的比特数L=8,那么可以从处理器一次处理所提取的信息中获得比与Dm状态项相对应的状态比特单元。在上述实施例中,处理器一次处理提取16位信息,1011010111001001,而当前信息比特单元是10110101。那么可直接获得与D、D3、D4对应的各状态比特单元。
但是,如果所述处理器的处理位宽等于信息比特单元或所述状态比特单元的比特数,那么通过对当前信息比特单元以及前一时刻的信息比特单元进行移位以及与或运算得出与Dm状态项对应的所述状态比特单元。以实施例中的待卷积的当前信息比特单元10110101为例,要获得与状态项D相对应的状态比特单元,具体步骤如下:
第一,将当前信息比特单元向高位移m位(本实施例为1位),而低位补零。即,将10110101左移1位,最右位补0,得出01101010;
第二,将所述前一时刻信息比特单元向低位符号移位达L-m位。在本实施例中,前一时刻的信息比特单元是11001001,将它向右符号移位8-1=7位,得出11111111,因为符号移位是根据移位前最高位的符号位来补充移位后的高位。
第三,对经步骤二得出的信息比特单元11111111和(0)L-m(1)m的二进制数进行与运算,其中上述(0)L-m(1)m表示在该二进制数中有L-m个0和m个1,由于在本实施例中L=8而m=1,所以该二进制数是00000001。经过与运算屏蔽掉经步骤二得出的信息比特单元中的高位,于是经与运算后得出信息比特单元00000001。
第四,将经步骤一后得出的信息比特单元和经步骤三后得出的信息比特单元进行或运算,从而得出与Dm状态项对应的所述状态比特单元。在本实施例中,经步骤1后得出的信息比特单元是01101010,而经步骤三后得出的信息比特单元是00000001,经过与运算后得出与状态项D相对应的状态比特单元01101011。
依此类推,即可得出与生成多项式中各状态项对应的状态比特单元。
以上是对本发明的较佳实施例的描述,熟悉本技术领域的人员应理解,对本发明的较佳实施例的各种变化和修正都落在本发明构思和范围内。例如,在本发明的较佳实施例中例举全速率语音业务采用约束长度为5的1/2码率的卷积编码的生成多项式,还可根据不同应用产生其它生成多项式,如对于6.0kbit/s的全速率数据也信道采用的约束长度为5的1/3卷积编码,如式(4)、(5)和(6)。然后根据生成多项式对输入比特流进行卷积编码。有如,在本发明的较佳实施例中,信息比特单元的比特数位8,当然还可16位或32位,视具体应用而定。
Claims (3)
1.一种对输入比特流进行高效卷积编码的方法,其特征在于,包括下列步骤:
a.根据具体应用产生生成多项式;
b.将待编码的所述输入信息比特流分成一个或多个信息比特单元;
c.根据所述生成多项式,对于每个待编码的所述信息比特单元进行卷积编码,从而产生对应于该信息比特单元的经卷积编码后的信息比特流,其中正在进行卷积编码的所述信息比特单元即为当前信息比特单元,
其中所述生成多项式可包含值为1和/或一个或多个Dm的状态项,其中m是大于等于1并小于等于所述信息比特单元的比特个数的整数,
所述步骤c中的卷积编码是通过步骤e至f完成的:
e.产生与所述生成多项式中各状态项相对应的状态比特单元;
f.按照所述生成多项式,对所述各状态比特单元逐位地进行异或运算,从而产生对应于所述当前信息比特单元的经卷积编码后的信息比特流,
其中在所述步骤e中,
如果所述状态项是1,那么所对应的状态比特单元就是所述当前信息比特单元;
如果所述状态项是Dm,其所对应的状态比特单元中的每一位都比所述当前信息比特单元中的每一位提前m位,其中所述状态比特单元是通过如下步骤获得:
如果所述处理器的处理位宽大于所述信息比特单元或所述状态比特单元的比特数,可直接从处理器一次处理提取的信息中获得与Dm状态项相对应的状态比特单元;
如果所述处理器的处理位宽等于所述信息比特单元或所述状态比特单元的比特数,如果所述处理器的处理位宽等于所述信息比特单元或所述状态比特单元的比特数,则通过下述步骤g至j得出与Dm状态项对应的所述状态比特单元:
g.将所述当前信息比特单元向高位移m位,而低位补零;
h.将所述前一时刻信息比特单元向低位符号移位达L-m位;
i.对经步骤(h)后得出的信息比特单元和二进制数(0)L-m(1)m进行与运算,其中二进制数(0)L-m(1)m包括L-m个0和m个1;
j.将经步骤g后得出的信息比特单元和经步骤i后得出的信息比特单元进行或运算,从而得出与Dm状态项对应的所述状态比特单元,
其中所述前一时刻的信息比特单元中的每一位都比所述当前信息比特单元中的每一位提前L位。
2.如权利要求1所述的方法,其特征在于,所述具体应用包括:业务种类;数据速率;编码效率和约束长度。
3.如权利要求1所述的方法,其特征在于,所述信息比特单元和所述状态比特单元所包含的比特数L相等,并根据进行卷积编码的处理器的处理位宽和所述输入比特流的长度确定所述比特数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011056320A CN1145267C (zh) | 2001-03-09 | 2001-03-09 | 一种高效卷积编码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB011056320A CN1145267C (zh) | 2001-03-09 | 2001-03-09 | 一种高效卷积编码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1374759A CN1374759A (zh) | 2002-10-16 |
CN1145267C true CN1145267C (zh) | 2004-04-07 |
Family
ID=4654709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB011056320A Expired - Fee Related CN1145267C (zh) | 2001-03-09 | 2001-03-09 | 一种高效卷积编码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1145267C (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1320794C (zh) * | 2002-11-13 | 2007-06-06 | 上海芯华微电子有限公司 | 收缩卷积编码的单步方法和装置 |
WO2019136750A1 (zh) * | 2018-01-15 | 2019-07-18 | 深圳鲲云信息科技有限公司 | 人工智能计算辅助处理装置、方法、存储介质、及终端 |
CN110474710B (zh) * | 2018-05-11 | 2021-06-01 | Tcl华星光电技术有限公司 | 编码方法、设备及可读存储介质 |
-
2001
- 2001-03-09 CN CNB011056320A patent/CN1145267C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1374759A (zh) | 2002-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1122371C (zh) | 用于通信系统的交织/解交织设备和方法 | |
CN1133277C (zh) | 通信系统中具有串行级联结构的编码器/解码器 | |
CN1186880C (zh) | 具有基于状态机的交织器的编码系统 | |
CN101079641A (zh) | 二维交织设备及方法 | |
CN1121095C (zh) | 用于通信系统的交织设备和方法 | |
US7318189B2 (en) | Parallel convolutional encoder | |
CN1615592A (zh) | 通信系统的交织设备和方法 | |
CN101902228B (zh) | 快速循环冗余校验编码方法及装置 | |
CN1354918A (zh) | 通信系统的交织/解交织装置和方法 | |
CN1198399C (zh) | 用于在数字系统中卷积编码的设备和方法 | |
CN1216418A (zh) | 系统收缩卷积编码方法 | |
CN1321364A (zh) | 应用陪集分割的交错器 | |
CN1393054A (zh) | 用于利用单工码产生(n,3)码和(n,4)码的装置和方法 | |
CN1853350A (zh) | 用于移动通信系统的维特比/涡轮联合译码器 | |
CN1830170A (zh) | 对并行连接数据编码的方法、编码器和通信设备 | |
CN1756090A (zh) | 信道编码装置和方法 | |
CN1302624C (zh) | 基于格子的信道编码所用的解码器 | |
CN1140148C (zh) | 在移动通信系统中执行特博解码的方法 | |
CN1145267C (zh) | 一种高效卷积编码方法 | |
CN1129887A (zh) | 用于对数字数据去交错的系统和方法 | |
CN1183687C (zh) | Turbo码编码器及编码方法 | |
CN1147169C (zh) | 用于Turbo码的解码方法和解码器 | |
CN1254923C (zh) | 解码方法和设备 | |
CN1142629C (zh) | 用于特博码的解码方法及其解码器 | |
CN1182657C (zh) | 用于降低乘积码译码所需存储量和复杂度的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20040407 Termination date: 20170309 |