CN1133278C - 一种数字通信系统中的信道卷积编码方法 - Google Patents
一种数字通信系统中的信道卷积编码方法 Download PDFInfo
- Publication number
- CN1133278C CN1133278C CN 00119529 CN00119529A CN1133278C CN 1133278 C CN1133278 C CN 1133278C CN 00119529 CN00119529 CN 00119529 CN 00119529 A CN00119529 A CN 00119529A CN 1133278 C CN1133278 C CN 1133278C
- Authority
- CN
- China
- Prior art keywords
- encoder
- input
- response
- bit
- coding
- 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
- 238000000034 method Methods 0.000 title claims abstract description 28
- 238000004891 communication Methods 0.000 title abstract description 19
- 230000004044 response Effects 0.000 claims abstract description 47
- 238000010295 mobile communication Methods 0.000 abstract description 5
- 238000012545 processing Methods 0.000 abstract description 5
- 238000007792 addition Methods 0.000 description 7
- 238000012937 correction Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000004083 survival effect Effects 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000000205 computational method Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000505 pernicious effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种利用冲激响应原理实现快速信道卷积编码的方法;通过先预存编码器响应状态的长度,再对输入比特进行简单0、1判断,存入对1的冲激响应,忽略0的冲激响应,然后进行循环迭代处理后得到信道的卷积编码。本发明适用于数字通信系统中所有约束长度、所有码率的卷积编码处理;这种信道卷积编码的实现可以减少大量的运算量,以达到减轻DSP资源的负担;在数字通信领域特别是第三代移动通信系统中实现实时快速处理。
Description
技术领域
本发明涉及数字通信领域中的差错控制技术。
背景技术
通信的目的是把对方不知道的消息及时可靠的传送给对方,因此,要求一个通信系统传输消息必须可靠与快速。在数字通信系统中可靠与快速往往是一对矛盾。若要求快速,则必然使得每个数据码元所占的时间缩短,波形变窄,能量减少,从而在受到干扰后产生错误的可能性增加,传送消息的可靠性减低。若要求可靠,则使得传送消息的速率变慢。因此,如何较合理的解决可靠性与速度这一对矛盾,是正确设计一个通信系统的关键问题之一。纠错码正是在解决这一对矛盾中不断发展起来的。
在《纠错码——原理与方法》一书(王新梅,肖国镇著,西安电子科技大学出版社,1991年第一版)中对纠错码作了详尽的阐述。目前数字通信系统中,利用纠错码或检错码进行差错控制的方式大致有以下几类:
重传反馈方式(ARQ)
即发送端发出能够发现错误的码,接收端收到通过信道传来的码后,在译码器根据该码的编码规则,判决收到的码序列中有无错误产生,并通过反馈信道把判决结果用判决信号告诉发送端。发端根据这些判决信号,把接收端认为有错的消息再次传送,直到接收端认为正确为止。
前向纠错方式(FEC)
即发送端发送能够被纠错的码,接收端收到这些码后,通过纠错译码器不仅能自动发现错误,而且能自动纠正接收码字传输中的错误。这种方式的优点是不需要反馈信道,能进行一个用户对多个用户的同播通信,译码实时性好,控制电路比ARQ简单。为了要获得比较低的误码率,往往必须以最坏的信道条件来设计纠错码,故所需的多余度码元比检错码要多得多,从而使编码率很低。但由于这种方式能实现同播通信,特别适用于军用通信,且随着编码理论的发展和编译码设备所需的大规模集成电路成本的不断降低,译码设备有可能做得越来越简单,成本也越来越低,因而在实际的通信中逐渐得到广泛应用。
混合纠错方式(HEC)
这种方式是发送端发送的码不仅能够被检测出错误,而且还有一定的纠错能力。接收端收到码序列后,首先检验错误情况,如果在纠错码的纠错能力以内,则自动进行纠错,如果错误很多,超过了码的纠错能力,但能检测出来,则接收端通过反馈信道,要求发端重新传送有错的消息。这种方式在一定程度上避免了FEC方式要求用复杂的译码设备和ARQ方式信息连贯性差的缺点,并能达到较低的误码率,因此在实际中应用越来越广。
上述各种差错控制系统中所用到的码,都是一种能在译码器自动发现错误的检错码,或者能够纠正删除错误的纠删码,任何一类码按照译码方法不同,均可作为检错码、纠错码或纠删码来使用。通常还采用以下方式对纠错码进行分类:
(1)按照对信息元处理方法的不同,分为分组码与卷积码两大类。
(2)根据检验元与信息之间的关系分为线性码与非线性码。
(3)按照纠正错误的类型分为纠正随机错误码、纠正突发错误码和纠正同步错误码等等。
众所周知,卷积编码的目的是根据一定的规则对信息比特进行运算得出编码比特,此编码比特的数目比原信息比特要多,从而引入了冗余信息。在接收端通过纠错译码器不仅能自动地发现错误,而且能自动地纠正接收码字传输中的错误,达到抗干扰的目的。它尤其适合于实时业务。
卷积码与一般的分组码不同。编码时,一组的n0-k0个校验元不仅与本组的k0个信息元有关,而且还与以前各时刻输入至编码器的信息组有关。这样,在卷积码中,n0和k0通常很小,特别适宜于以串行形式传输信息,延时小。在编码器复杂性相同的情况下,卷积码的性能较好。而且,卷积码可进行Viterbi(VB)译码算法,可以无显著信息失真地进行实时解码。
图1是3rd Generation Partnership Project(3GPP)1999-12版本3G TS25.212 v3.1.1中第14页上给出的传输信道1/3卷积编码器,适用于第三代移动通信系统。其中编码存储为8,编码约束度N是9。在约束长度为9的所有卷积码中,它们具有最大的自由距离,且无恶性误差传播。
如何来实现如图1所示的卷积编码器呢?通常实现该卷积编码器的方案有两种:一种是利用硬件电路的方法来实现。比如在以下美国专利中:
5,951,628 Method and system for performing a convolution operation;
5,926,580 Convolution algorithm for efficient hardware implementation;
5,917,961 Image convolution using pre-calculated lookup tables;
5,912,673 Graphical image convolution using multiple pipelines;
均对卷积提供了相关的方案,这种方法实现起来比较简单,它们的共同点是采用硬件的结构来实现卷积,比较适合于以硬件为主的系统。但如果在系统中其前后的功能模块均是由软件模块实现的,则要将卷积编码器单独提出用硬件来实现,将会造成整个系统复杂度上升且破坏系统的完整性。而在数字通信系统例如第三代移动通信系统中,系统的结构以软件实现为主,如果卷积编码器仍采用硬件方案来实现,反而会增加系统的复杂程度,做不到实时快速。
因此,便出现了第二种实现方法,即软件实现方法。通常的软件实现方法是按照数字信号处理(DSP Digital Signal Processing)中模拟图1的硬件电路来实现,即通过编程来将编码器的各个抽头抽出后再累加。每当来一个比特,便需将8个D寄存器中的数据右移一位后再按图1中的相应位累加;显然对图1中就要做15次加法,这在有限的DSP资源中无疑是一个不小的负担,再加上对数据要进行循环冗余码校验(CRC)、复用交织等操作,使得即使使用当今最快的DSP处理器也非常勉强,甚至不得不使用多个DSP处理,尤其是数据速率比较高时。
发明内容
本发明的目的是提出一种基于冲激响应来进行卷积的信道卷积编码方法,以克服现有技术在第三代移动通信系统对信道编码时耗费处理器大量宝贵资源的缺点。
本发明所述基于冲激响应来进行卷积编码的方法是通过预存编码器响应状态的长度,对输入比特进行简单判断,再累加对应状态从而得到卷积结果的。其特征在于:
首先,设定有效的编码器状态的数据长度;
设定的数据长度大小等于编码约束度N减1后,除以卷积编码率的值;
其次,预存对于输入不同比特响应的编码器响应,输入为1则存储对编码器的响应,输入为0由于响应也为0,则省略;
预存的对输入1的响应为编码器输入为1000...序列时输出端产生连续的编码约束度N个码字;
然后,开始循环迭代编码,每次判断输入的比特是否为1,如是则将对编码器的响应累加入编码器的状态并将编码输出,为0则直接输出编码;
进行循环迭代编码时输出的编码器的状态的左面卷积编码率的倒数个比特位(例如1/3卷积时为3,1/2卷积时为2等等)作为当前输入比特的输出编码值。
由于本发明对编码器的有效的作用时期事先进行了分析,同时对输入比特对编码器产生的作用事先作了准备,以及对码字在编码器响应状态的位置作了预先设定,使得来一个比特后进行一次加法就产生编码值。采用DSP来处理,计算速度可以达到卷积1点只需耗时1个CPU时钟周期,当输入比特是0时,因为0的冲激响应为0,相当于对编码器冲激响应状态寄存器S累加了0,对于随机的数据块来说,0和1基本上是各占50%,故又节省了相当可观数量的加法。无须任何操作即可直接编出码字,同时还可以方便地进行分段卷积,这都是以往技术无法达到的。
附图说明
下面结合附图,并通过实施例来详细描述如何用冲激响应法来实现1/3卷积编码。
图1是3GPP文本3G TS 25.212 v3.1.1(1999-12)中第14页上给出的信道1/3卷积编码器;
图2是对该编码器的单位冲激响应的码图;
图3是输入111000...序列的叠加原理图;
图4是输入111000...序列的叠加结果图;
图5是具体实施例——实现1/3卷积编码的基于冲激响应的编码流程图。
具体实施方式
图1所示的3GPP的3G TS 25.212 v3.1.1规范上给出的速率低于32kbps业务的1/3卷积码的硬件实现电路。由编码原理知识可知该编码器的编码存储为8,编码约束度N为9。较多地运用在数据通讯系统,尤其是第三代移动通信系统。以下将具体说明如何用冲激响应来进行卷积编码实现的方法。
以图2为例,在任意t时刻输入比特M(t)相当于对图1的编码器产生一次冲激,对应的‘1’脉冲响应即为t,t+1,...,t+8时刻对应的c0...c8九个码字;当输入比特为0时,‘0’脉冲响应为t,t+1,...,t+8时刻对应的c0...c8九个码字(只不过此时码元全为0),称t...t+8为该冲激的存活期,t+9时刻后称为该冲激的死亡期。根据编码基本理论和图2可以很容易得出以下结论:
1.任意t时刻的单位脉冲,在生存期内活着,并向后影响到第t+8个
编码器冲激响应,对t+9个及其以后的编码器冲激响应不再有影
响;
2.任意t时刻的脉冲,不影响在t时刻之前的任意时刻的编码器冲激
响应;
3.在任意t时刻的编码器冲激响应是t时刻以前所有存活的单位冲激
响应在t时刻的线性叠加与t时刻的单位冲激响应之和。
4.在任意t时刻的有效编码状态S的第一个分量s0即为t时刻冲激
的编码值。
图3所示输入111000...序列的叠加原理图分别为:
t0时刻的单位冲激响应,该时刻冲激的存活期为t0到t9;
t1时刻的单位冲激响应,该时刻冲激的存活期为t1到t10;
t2时刻的单位冲激响应,该时刻冲激的存活期为t2到t11。
根据图2结合编码原理得到的四个结论,可知对输入比特为111000...序列,其编码器冲激响即为以上的单位冲激响应的线性叠加。
图4为图3中t0、t1、t2时刻的单位冲激响应的线性叠加,编出卷积码依次为c0,(c0+c1),(c0+c1+c2),(c1+c2+c3),(c2+c3+c4),(c3+c4+c5),(c4+c5+c6),(c5+c6+c7),(c6+c7+c8),(c7+c8),c8,0,0,0,...其中对于在t2时刻来的冲激,t2以后开始的(c1+c2+c3),(c2+c3+c4),(c3+c4+c5),(c4+c5+c6),(c5+c6+c7),(c6+c7+c8),(c7+c8),c8这九个码字就构成了编码器冲激响应。
以上分析了如何利用冲激响应的原理,图5为实现1/3卷积编码的实施例,下面给出了具体的处理流程:第一步:设定有效的编码器状态的数据长度,合理选用寄存器。由于编码约束长度N为9,卷积编码率为1/3,所以数据长度应为(9-1)/(1/3)即24,因此选用三个32位寄存器分别存放S、A、C值,并初始化。第二步:令输入序列1000...产生的序列c0,c1,c2,c3,c4,c5,c6,c7,c8,0,0,0...前九个码字共27位比特作为编码器对单位1的冲激响应,预存入32位寄存器A第三步:开始迭代。本步骤可进一步分为:1)取一个输入比特,判断输入比特为0还是为1;如果是1则进入2)进行运算,如果是0则直接转入3);2)提取冲激响应寄存器A,并累加入编码器冲激响应状态寄存器S;3)寄存器S左3位移入寄存器C,这3位比特即为输入比特的编码值C;同时将S左移3位后的结果存回S;4)输出第i个比特的编码值C,回到1)。
可以看出,在执行第三步时,如果在1)时判断输入比特为0,则程序直接进入3),此时少做了一次加法。因为0的冲激响应为0,相当于对编码器冲激响应状态寄存器S累加了0,对于随机的数据块来说,0和1基本上是各占50%,故节省了相当可观数量的加法运算量。
本发明所述方法不但完全适用于3GPP文本规定的1/3,1/2卷积编码方案,也适用于数字通信系统中所有约束长度、所有码率的卷积编码,并且在实现上没有任何区别,方法完全类似。这有利于需要在DSP中进行实时高速卷积计算的数字通信系统。该方法通过预先对编码器冲激响应的分析采用了新的计算方法,仅用一次加法就完成了一个点的卷积运算,运算时间上较以往的技术有了数量级的提高,且代码量也减少到仅仅几条指令,特别是当输入比特为0时,一次加法都不用做便可直接就产生编码结果,从而在计算时间上实现了动态缩减,这在以往的方法中都是无法实现的。在实际的WCDMA(宽带码分多址)信道编码实现上具有技术提升量和经济意义,对信道编码技术起到推进作用。
可以看出,采用本文所提出的新方法来实现卷积编码,完全不同于以往的直接采用硬件或采用软件模拟硬件的方法,完全是一种新的概念基础上的应用,它使得实现数字通信系统的信道卷积编码突破了以往的速度上的瓶颈,在DSP中实现时使得原本占用了主要的计算资源的卷积此时仅占用了微量的系统资源,很好的满足了各类有苛刻的实时性要求的数字通信系统,并使得DSP可以将更多更复杂的工作也包括进来,从而使得当今流行的热门概念“软件无线电”得以技术上的有力支持。
Claims (5)
1一种用来实现快速信道卷积编码的方法,其特征在于:
首先,设定有效的编码器状态的数据长度;
其次,预存对于输入不同比特响应的编码器响应,输入为1则存储对编码器的响应,输入为0由于响应也为0,则省略;
然后,开始循环迭代编码,每次判断输入的比特是否为1,如是则将对编码器的响应累加入编码器的状态并将编码输出,为0则直接输出编码。
2根据权利要求1所述的信道卷积编码方法,其特征在于:设定有效的编码器状态的数据长度,其大小等于编码约束度N减1后除卷积编码率。
3根据权利要求1或2所述的信道卷积编码方法,其特征在于:输入为1时预存的对编码器响应即为编码器输入为1000...序列时输出端产生连续的编码约束度N个码字。
4根据权利要求1或2所述的信道卷积编码方法,其特征在于:在进行循环迭代编码时输出的编码器的状态的左面卷积编码率的倒数个比特位作为当前输入比特的输出编码值。
5根据权利要求1或2所述的信道卷积编码方法,其特征在于:进行循环迭代编码时针对1/3卷积编码的步骤为:
1)取一个输入比特,判断输入比特为0还是为1;如果是1则进入2)进行运算,如果是0则直接转入3);
2)提取冲激响应寄存器A,并累加入编码器冲激响应状态寄存器S;
3)寄存器S左3位移入寄存器C,这3位比特即为输入比特的编码值C;同时将S左移3位后的结果存回S;
4)输出第i个比特的编码值C,回到1)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 00119529 CN1133278C (zh) | 2000-07-26 | 2000-07-26 | 一种数字通信系统中的信道卷积编码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 00119529 CN1133278C (zh) | 2000-07-26 | 2000-07-26 | 一种数字通信系统中的信道卷积编码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1322064A CN1322064A (zh) | 2001-11-14 |
CN1133278C true CN1133278C (zh) | 2003-12-31 |
Family
ID=4587773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 00119529 Expired - Fee Related CN1133278C (zh) | 2000-07-26 | 2000-07-26 | 一种数字通信系统中的信道卷积编码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1133278C (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2373149B (en) * | 2001-03-06 | 2004-07-07 | Ubinetics Ltd | Coding |
JP5340286B2 (ja) * | 2008-07-02 | 2013-11-13 | パナソニック株式会社 | 消失訂正符号化装置及び消失訂正符号化方法 |
-
2000
- 2000-07-26 CN CN 00119529 patent/CN1133278C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1322064A (zh) | 2001-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9369255B2 (en) | Method and apparatus for reducing feedback and enhancing message dissemination efficiency in a multicast network | |
JP3977824B2 (ja) | 一般的なターボコードトレリスの終端方法およびシステム | |
CN101553990B (zh) | Turbo码交织器尺寸的确定 | |
CN1162996C (zh) | 用于移动通信系统的数据速率检测设备和方法 | |
WO2008003094A2 (en) | Efficient representation of symbol-based transformations with application to encoding and decoding of forward error correction codes | |
EP3614701A1 (en) | Polar code transmission method and device | |
KR100532325B1 (ko) | 터보 복호기의 입력 제어 방법 및 장치 | |
US20040114596A1 (en) | Method and apparatus for deinterleaving interleaved data stream in a communication system | |
CN1126285C (zh) | 对带有符号间干扰和非完善定时的互相正交的码字的检测 | |
CN1349699A (zh) | 无线通信中信道条件的估计方法、接收机和译码器 | |
CN1679267A (zh) | 接收移动无线信号时的译码及循环冗余校验的并行处理 | |
US7970021B2 (en) | Derate matching method and apparatus | |
CN1113499C (zh) | 解码信道编码信号的接收机解码器电路及其方法 | |
CN101449467B (zh) | Turbo编码器以及用于其的HARQ处理方法 | |
CN1133278C (zh) | 一种数字通信系统中的信道卷积编码方法 | |
US8627187B2 (en) | Decoding of recursive convolutional codes by means of a decoder for non-recursive convolutional codes | |
KR20060121312A (ko) | 컨볼루션 터보 부호 인터리버 | |
CN111371465B (zh) | Ldpc码字的比特交织方法、系统与介质 | |
CN1574651A (zh) | Turbo解码器及其所使用的动态解码方法 | |
CN1112778C (zh) | 一种数字通信系统中的信道循环冗余码校验的方法 | |
CN1622504A (zh) | 一种数据包恢复方法 | |
CN1126382C (zh) | 一种数字通信系统中的信道交织方法 | |
CN1856939A (zh) | 输入控制装置及输入控制方法 | |
CN1338824A (zh) | 一种特博码解码的方法以及解码器 | |
CN1166073C (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |