用于编码数字源数据的方法及设备,以及对应的解码方法及设备

申请号 CN00813049.3 申请日 2000-07-19 公开(公告)号 CN1375130B 公开(公告)日 2010-05-12
申请人 法国电信; 布列塔尼国家电信学院电信研究所; 发明人 克劳德·贝罗; 阿兰·格拉维克斯;
摘要 本 发明 涉及一种源数字数据的编码方法和设备,它并行地使用至少两个基本编码步骤(11,12),其中每个基本编码步骤含有源数据(15)的全部集合,并且还包括一个用于更改在所述基本编码步骤(11,23)之间的所述源数据的包含顺序的置换步骤(13)。本发明的特征在于所述源数据(15)被编制为源码字,其中每个源码字含有n个(n不小于2)二进制源码元,并且所述置换步骤(13)包括一个至少部分源码字的内容的可逆更改步骤(132),输送更改的码字;置换所述更改的或源码字顺序步骤(131)。
权利要求

1.一种用于编码数字源数据的方法,该方法平行执行至少两个基本编码步骤(11,12),其中的每个步骤都考虑所有所述源数据(15),并且包括一个更改在所述基本编码步骤(11,12)之间所考虑的所述源数据顺序的置换步骤,
其特征是所述源数据(15)被编制为源码字,每个源码字包括n个二进制源码元,n大于或等于2,并且在所述置换步骤(13)中包括:
-可逆地更改至少一个所述源码字的内容,输送更改的码字的步骤(132);
-置换所述源码字或更改的码字的顺序的步骤(131)。
2.根据权利要求1所述的编码方法,其特征是所述置换码字的顺序的步骤(131)执行适用于一N个连续码字的均匀置换。
3.根据权利要求2所述的编码方法,其特征是所述均匀置换使用一个包含从0至N-1顺序输入的N个码字的存储器(1311),并且按照从j=P.i mod N,i从0至N-1不等,P和N互为质数的顺序重读。
4.根据权利要求3所述的编码方法,其特征是P接近于。
5.根据权利要求1至4中任一权利要求所述的编码方法,其特征是所述内容更改(132)适用于针对至少一个但不是全部所述源码字的内容进行修改
6.根据权利要求5所述的编码方法,其特征是所述内容更改(132)适用于每隔一个码字。
7.根据权利要求1至4中任一权利要求所述的编码方法,其特征是所述内容更改(132)包括在考虑的码字内的二进制码元的顺序的置换。
8.根据权利要求1至4中任一权利要求所述的编码方法,其特征是所述内容更改(132)包括用至少两个所述二进制源码元的组合取代所考虑的码字的至少一个二进制源码元。
9.根据权利要求1至4中任一权利要求所述的编码方法,其特征是所述码字是二进制码元的对。
10.根据权利要求9所述的编码方法,其特征是所述内容更改步骤(132)与源对{a,b}的下列更改的对中的至少一个有关:
-(a,b)
-(b,a)
-(a+b,b)
-(b,a+b)
-(a,a+b)
-(a+b,a)
11.根据权利要求1至4中任一权利要求所述的编码方法,其特征是所述基本编码步骤(13,12)中的一个执行系统可逆卷积码,自然地产生n/(n+m),将n+m个二进制输出与n个二进制输入联系起来,其中n≥2且m≥1。
12.根据权利要求1至4中任一权利要求所述的编码方法,其特征是它将n+m1+m2个二进制输出与n个二进制输入的一个码字联系起来,包括:
-n个二进制输入;
-由第一基本编码步骤输送的m1个二进制输出;
-由第二基本编码步骤输送的m2个二进制输出。
13.根据权利要求1至4中任一权利要求所述的编码方法,其特征是它执行一个印记步骤(14)。
14.一种用于编码数字源数据的设备,包括其中的每个都考虑所有的所述源数据(15)的至少两个基本编码器(11,12),以及一个用于更改各个所述基本编码器所用的所述源数据的重要顺序的置换装置(13),其特征是所述源数据(15)被编制为源码字,每个源码字包括n个二进制源码元,n大于或等于2,并且所述置换装置(13)包括:
-用于可逆地更改至少一个所述源码字的内容,输送更改的码字的装置(132);
-用于置换所述源码字或更改的码字的顺序的装置(131)。
15.一种用于解码按照权利要求1至4中任一权利要求所述的编码方法编码的数字数据的方法,其特征是它包括一个包含下述步骤的置换步骤:
-更改至少一个接收的码字的内容的步骤,所述更改与编码期间所执行的更改相反;
-置换接收的码字的顺序的步骤,以便将它们放回到初始序列中。
16.一种用于解码按照权利要求1至4中任一权利要求所述的编码方法编码的数字数据的设备,其特征是它包括一个包含下述装置的置换装置:
-用于更改至少一个接收的码字的内容的装置,所述更改与编码期间所执行的更改相反;
-用于置换接收的码字的顺序的装置,以便将它们放回到初始序列中。
17.一种用于发送数字数据的设备,包括根据权利要求14所述的编码设备。
18.用于对数字数据进行编码/解码的系统,其特征是它包括至少一个根据权利要求14所述的编码设备和至少一个根据权利要求16所述的解码设备。

说明书全文

技术领域

发明属于对数字数据编码和对所传送的编码数据解码的技术领域,所述数字数据属于将被传送或广播的一个或多个源数据序列,特别是在有电路瞬态的情况下,对所传送的编码数据解码的技术领域。

更准确的说,本发明涉及公知的,特别是称为“涡轮码”(turbocodes)(注册商标)的编码方案的一种改进,以及因此而特别执行的置换。

背景技术

在名为“Procédéde codage correcteur,d’erreurs à au moins deuxconvolutifs systématiques paralléles,procédéde décodage itératif,module de décodage et décodeur correspondants”的法国专利FR-9105280中,以及由C.Berrou和A.Glavieux所著的文章“接近最佳的纠错编码和解码:涡轮码(turbo codes)”(IEEE Trasactions onCommunications,第44卷,第10期,第1261-1271页,1996年10月)中介绍了这种编码的一般原理。
根据该技术,基于使用至少两个基木编码器,实现了“平行连接”编码。当解码时,就使得可以有来自两个不同编码器的两个冗余符号。在这两个基本编码器之间,提供了一个置换装置,因此,这些基木编码器中的每一个都被提供有同样的数字源数据,但是其顺序不同。
对于编码(乘积码),在名为“Turbo décodage des codes produits”的法国专利FR-9313858中,以及由O.Aitsab和R.Pyndiah所著的文章“Performance of Reed Solomon block turbo code”(IEEEGlobecom’96 Conference,1/3卷,121-125页,伦敦,1996年11月)中描述了这项技术的一种改进。
在相当大的程度上,平行连接卷积的“涡轮码”(turbo codes)的性能依赖于所执行的置换功能。实际上,似乎该功能的非优化选择会导致“涡轮码”(turbo codes)的降级,尤其是,在误码率曲线上出现的倾斜度变化低于10-5和10-6。
这一现象更加强调说明了,如果所考虑的“涡轮码”(turbo codes)的效率越高,则被编码的信息块越短。
在引证的各种文件中都已经提出了允许建立具有良好性能的“涡轮码”(turbo codes)的置换功能。
在法国专利FR-9105280中,所述基本卷积码是二进制的,因此置换直接发生在二进制码元上。更普遍地说,用于在平行连接的“涡轮码”(turbo code)上执行置换功能以实现二进制卷积码的多种方案已被建议作为第三代移动电话(UMTS)的一部分。
法国专利FR-9313858以及由C.Berrou和M.Jezequel所著的文章“用于“涡轮码”编码的非二进制卷积码”(Electronics Letters,第35卷,第1期,39-40页,1999年1月)中也提出使用非二进制卷积码用于建立“涡轮码”(turbo codes).在该情形下,置换功能适用于二进制字(位组,例如对,或更为普遍地n-对).
一般而言,置换功能当然必须允许提供来自所述信息源的码元的良好分散,并输送给各种平行解码器,以便造成强随机效果。因此,合成解码器的距离属性必须优化,特别是其最小距离须达到最大值。

发明内容

因此,本发明的一个具体目的是提供一种从非二进制卷积码建立的、并目与公知的“涡轮码”(turbo codes)具有更好的置换特性的平行连接编码方案(“turbo codes”)。
更准确的说,本发明的一个目的是提供一种优化合成编码器(“turbo Code”)的距离属性,即特别是最大化合成解码器的最小距离的平行连接编码方案。
本发明的另一个目的是提供这样一种编码方案,它使得在供给各种基本编码器的数据上产生强随机效果,当然并不改变分散效果。
本发明的再一个目的是提供这样一种编码方案,它使得易于以低成本,例如一集成电路来实际地实施这个方案。
木发明的又一个目的是提供这样一种编码方案,它使得易于实施大量的应用类型。
这些以及其它目的在下文的描述中将更为清晰,它们是由根据本发明的依赖于数字源数据的编码方案来实现的,该方案平行执行至少两个基本编码步骤,其中的每个步骤都考虑全部的所述源数据,并目包括一个置换步骤,用于更改在所述基本编码步骤之间的所述源数据的要考虑的顺序,其中所述源数据被编制为源码字,每个源码字包括n个二进制源码元,n大于或等于2。根据本发明,所述置换步骤包括:
-可逆地更改至少某些所述源码字的内容,输送更改的码字的步骤;
-对所述源或更改的码字的顺序的置换步骤。
换言之,本发明计划在置换步骤中分两级实施,(这里继续使用形象的术语“置换”,但是更合理的是使用术语“排列”或“处理”,因为,从下文中将更加清楚,有必要更改某些二进制码元的值)。实际上,一方面,对码字(或n的倍数)的顺序,以及在另一方面,对后者的内容(字内更改)也起作用。
必须指出,字置换也可以在这种对字进行处理之前或之后执行。
根据一个优选的实施例,所述置换码字顺序的步骤执行适用于一个N个连续码字块的均匀置换。
这项技术很容易实施,并且能达到几乎是最佳的效率。可以使用一个包含从0至N-1顺序输入的N个码字的存储器并按照从j=P.imod N,i从0至N-1不等,P和N互为质数的顺序重读,方便地实施该项技术。
通常,在此情形下,P接近于
根据本发明的一个优选方案,所述内容更改仅适用于某些所述码字。例如,所述内容更改适用每隔一个码字。
最好,所述内容更改包括置换所考虑的码字内的二进制码元的顺序。
根据另一个优选方案,所述内容更改包括用至少两个所述二进制源码元的组合取代考虑中的码字的至少一个二进制源码元。
具体的说,所述码字可以是成对的。尽管如此,它们当然可以更普遍地是n的倍数,而n的值大于或等于2。
在成对的情形下,所述组合使源对{a,b}与下列已更改对中的至少一个有关:
-(a,b)
-(b,a)
-(a+b,b)
-(b,a+b)
-(a,a+b)
-(a+b,a)
根据本发明的一个实施例,至少一个所述基本编码步骤执行一系统的递归卷积码,自然地产生n/(n+m),把n+m个二进制输出与n个二进制输入联系起来,其中n≥2,m≥1。
最好,上述方案把n+m1+m2个二进制输出与n个二进制输入的一个码字联系起来,包括:
-n个二进制输入;
-由第一基本编码步骤输送的m1个二进制输出;
-由第二基本编码步骤输送的m2个二进制输出。
可以提供一个印记(stamping)步骤。
当然,本发明也涉及到相应的解码设备。这样的设备提供了一个置换装置,该装置包括:
-用于可逆地更改至少某些所述源码字的内容,输送更改的码字的装置;
-用于置换所述源或更改的码字的顺序的装置。
本发明还涉及用于发出或传输按照上述方案编码的数据的设备。
根据另一个方面,本发明涉及相应的解码方案及设备。对应于编码,解码方案包括以下步骤:
更改至少某些接收的码字的内容,所述更改与进行编码时执行的更改相反:
置换接收的码字的顺序,以便将它们放回到初始序列中。
并且,上述解码设备包括:
用于更改至少某些接收的码字的内容的装置,所述更改与编码期间所执行的更改相反;
-用于置换接收的码字的顺序的装置,以便将它们放回到初始序列中。
附图说明
图1是根据本发明,说明用于对数字源数据进行编码的总体方法的框图

具体实施方式

通过阅读下面对本发明优选实施例的描述,本发明的其它特征和优点将更为清楚,给出的优选实施例仅作为一个示例而不是为了限制本发明,并且:
-唯一的一幅附图说明了本发明的编码器的一般概念。
因此,本发明提供了一种新的用于一基本代码平行连接编码器的置换功能.,它与非二进制系统递归卷积基本码一起,自然地产生n/(n+m),(n≥2及m≥1),从而使性能接近于理论限度,而不管所考虑的“涡轮码”(turbo code)的效率,以及要被编码的信息块的长度如何。
需要提醒的是,在本发明的范围内,考虑中的基本码必定是非二进制的,也就是说,它们具有n≥2个二进制输入以及n+m(m≥1)个二进制输出。
图1表示本发明的一个采样编码设备。从中可直接得出相应的编码方案。
在该例中,考虑由两个基本代码C1和C2的平行连接(图中的标号为11和12)所建立的代码,C1与C2是相同的、卷积的、递归的、系统的、非二进制的,产生被一置换功能13分隔的2/3(n=2个二进制输入:码字是成对的)。
此外,假设被编码的数据块由p个二进制数据组成,其中p为偶数或者,同样,N=p/2个二进制对。
如果合成编码器没有作印记,那么它的编码功效等于1/2。当然,印记14可以按照常规实现。
如先前所提到的,根据本发明,置换功能13以一双重操作为基础
-131置换码字的顺序(此例中为成对的,但更普遍地可以是n的任何倍数);
-132处理至少某些数据块。
来自信息源15的N对供给基本编码器C1,然后,经过置换13后供给编码器C2。
置换功能必须能提供来自信息源15的所述对(更普遍地是n的倍数)的良好分散,并产生强随机效果。实际上是通过优化组合编码器的距离属性,以及特别是取合成编码器之间最小距离的最大值来实现本发明的一个目的。
考虑到分散标准,在置换13之后,在信息源15的输出上的相邻对(更普遍地是n的倍数)必须尽可能地分隔开。该目的可以,几乎是最理想的,通过在对层(pair level)(更普遍地是n的倍数的层)上使用均匀置换131来实现。
该均匀置换131可以通过均匀地将N个二进制对(更普遍地是n的倍数)写入到存储器1311的N个位置上(所述的位置为0至N-1)并通过连续地读取(1312)在地址j上的这些N个对,其中j遵循下述规则:
J=pi mod N    i=0,1……(N-1)       (1)
来执行。
为了通过所述存储器1311的N个位置处一次并且仅此一次,P与N必须互为质数(即,它们必须除1之外没有其它的公约数)。此外,为了在信息源15的输出上提供相邻对(更普遍地是n的倍数)之间的最佳间隔,参数P最好接近于
为了说明这一点,例如考虑编码一个N=9个二进制对的块。P被设置为4(4接近于)。所得的结果如下列表格所示:
  i   0   1   2   3   4   5   6   7   8   j   0   4   8   3   7   2   6   1   5
这样,由编码器C2编码的所述N个对分别在地址0,4,8,3,7,2,6,1,5上被读取。
为了产生这一随机效果,同时不改变分散效果,(至少)某些对(更普遍地是某些n的倍数)的二进制数据经由一处理操作132,或是一适当的修改
一种简单而十分有效的处理操作132在于在将一个对中的二进制数据送交给基本编码器C2之前,周期性地例如按照下述规则置换这些数据:
使{ak,bk}为存储在存储器内k位置处,k=0,1,---(N-1)的二进制对。对于变量i的奇数值,按照规则(1)在地址j读取的所述对的二进制数据在被送交给编码器C2之前被置换。
再回到先前的例子,被编码器C2编码的所述N=9个对按照下述顺序提供:
{a0,b0},{b4,a4},{a8,b8},{b3,a3},{a7,b7},{b2,a2},{a6,b6},{b1,a1},{a5,b5}
经历排序的对用粗体字印刷。
当然,除了对所述对的二进制数据进行置换之外的其它操作也是可行的,例如:
{ak,bk}-{ak+bk,bk}或{ak,bk}-{bk,ak+bk}mod2或
{ak,bk}-{ak,ak+bk}或{ak,bk}-{ak+bk,ak}mod2
当然,在每个对的二进制数据上执行的操作可能相反。实际上,例如,已知{ak+bk,bk},可以通过计算{ak+bk}与{bk}两部分的和来得到ak。
有可能,多个操作可以累积地和/或交替地使用。
在图1所示的例子中,数据块处理132是在对这些相同块的置换131之后执行。显然,这些操作的顺序可以颠倒。可以首先执行码字(n的倍数)的处理操作,然后再执行置换。
因此该置换方法允许从系统可逆卷积码的并行连接建立“涡轮码”(turbo codes),自然地产生n/(n+m);n≥2;m≥1。
这些“涡轮码”(turbo codes)的距离,并且特别是,最小距离属性优于那些公知的卷积“涡轮码”(turbo codes)的距离,特别是最小距离属性。这一结果更加清楚表明了“涡轮码”(turbo codes)的编码效率越高,要被编码的二进制数据的块就越短。
因此该置换操作特别设计用于建立卷积块“涡轮码”(turbocodes),用于传输其中数据被建立在较短的(例如,ATM)内的编码。
解码执行与编码期间所执行的操作相反的操作,即:
-更改接收的码字的内容(相反更改),以便恢复原始码字(除了传输通道的干扰之外);
-置换接收的码字的顺序,以便将它们放回到初始序列中。
完成解码的一般概念与已提到的FR- 9105280专利中所描述的有利地相似。由基本解码器交换的基本信息(称作外部信息)当然不再是二进制值而是码字或n的倍数。
因此外部信息由2n个值携带,对应于2n情形也可以是n的倍数.对于多个对,如上所述,基本解码器每次交换4个数据.
QQ群二维码
意见反馈