交织顺序发生器、交织器、Turbo码编码器和Turbo码译码器的制作方法

文档序号:7541261阅读:399来源:国知局
专利名称:交织顺序发生器、交织器、Turbo码编码器和Turbo码译码器的制作方法
技术领域
本发明涉及在IMT2000(第三代移动通信系统)的W-CDMA中使用的素数交织器(prime interleaver),尤其涉及削减交织顺序发生器用存储器的交织顺序发生器、交织器、Turbo码编码器和Turbo码译码器。
背景技术
宽带DS-CDMA(W-CDMA)已被标准化为第三代移动通信系统(IMT2000)无线接入方式(RAN)的一种,其中,标准化有被称为素数交织器的Turbo码编码用的内部交织器。其详细描述公开在“3rd GenerationPartnership Project;Technical Specification Group Radio Access NetworkMultiplexing and channel coding(FDD)(1999年发表)3G TS25.212 V3.3.0(2000-06)4.2.3.2.3章Turbo码code internal interleaver 16页~20页”。
该Turbo码编码器由多个分量(component)编码器构成,为了减小各分量编码器间的奇偶校验(parity)序列的相关性而使用交织器,从而成为经交织器连接各分量编码器的结构。该交织器在发挥Turbo码的性能方面,起到了重要的作用。
图15是表示现有Turbo码编码器的构成例。如该图所示,交织器构成为包括多个递归结构卷积分量编码器1502、1503和交织器1501。各递归结构卷积编码器1502、1503由加法器与单位延迟元件构成,并对输入到Turbo码编码器的1位信息序列输出信息位、奇偶校验位1和奇偶校验位2的三个位。为了减小奇偶校验位1和奇偶校验位2的相关性,而在分量编码器1503之前插入了交织器1501。
图16是表示现有的Turbo码译码器的构成例的图。Turbo码译码器构成为具有两个软输入软输出译码器(soft in soft out decoder,下面,简写为SISO)1603、1604、两个交织器1601、1602和进行交织器交织顺序逆处理的两个去交织器1606、1607。分离器1605将奇偶校验序列1、2分配给分别对应的SISO,判决器1608用于将最终得到的软输出数据硬判决为二值。
图17表示以位为单位按照存储于RAM内的交织顺序(存储为交织图案表)重新排列的现有交织器的示例,进行交织的数据序列1701由存储了交织图案表所形成的交织顺序的RAM1702来进行数据序列内的位顺序变换,而得到交织后的数据序列1703。
输出交织顺序的RAM1702的输出和交织图案表的关系如该图的1702所示,为作为以素数p为基的长度p的R个块的图案表,如箭头所示,沿纵向顺序以0,8,4,12,2....的顺序读出,而得到交织后的数据序列1703。
根据IMT2000(W-CDMA)的标准3G TS25.212 V3.3.0(2000-06),为了对应于各种多媒体业务,交织长度为每一位的40位到5114位,故需要准备5075种交织图案。为了具有对应于所有交织长度的图案表,需要很大的存储量,这是不现实的。因此,在3G TS 25.212 V3.3.0(2000-06)4.2.3.2.3章中公开了不需要存储所有种类的图案,而根据交织长度通过预定的运算生成图案的方法。
在上述“3rd Generation Partnership Project;Technical Specification GroupRadio Access NetworkMultiplexing and channel coding(FDD)(1999年发表)3G TS25.212 V3.3.0(2000-06)4.2.3.2.3章Turbo码code internalinterleaver 16页~20页”中所公开的素数交织器中,将数据长度作为以素数p为基的长度p的R个块,并使用基准数为p的有限域中的原始根υ,如下所述地求出进行行内顺序变换用的基准序列S(j)(intra-rowpermutation处理)。
S(j)=[υ·s(j-1)]mod p,j=1,2,...(p-2)且s(0)=1——(1)将其做成表格。接着,求出R个与从有限域的基准数中减去1的数p-1互为质数的数q(i)。最后以行为单位进行行内顺序变换(inter-rowpermutation处理)。根据预定的图案T(i)进行以行为单位的顺序变换。作为这些图案,使用增大自由距的行间交织图案。
例如,在进行第i行的行内顺序变换时,进行下面的处理。
Ui(j)=s([j·ri]mod(p-1)),j=0,1,2,...(p-2),且Ui(p-1)=0——(2)
在这里,Ui(j)表示变换前的位定位,相当于变换前第i行的行内顺序变换后第j输出位置。另外,rT(i)=q(i),T(i)是上述定义的变换前的行位置,为第i行的行位置。
作为一例,说明数据长度K=257的情况。在二维排列的行数R为20时,若求出由素数p表示的列数p,则由于257/20=12.85,其上最接近的素数p为p=13,基准数在13的有限域中的原始根υ是2。
因此,若使用该原始根υ=2,由(1)式求出进行行内顺序变换用的基准序列s(j),在p=13,υ=2的情况下,{s(j)=1,2,4,8,3,6,12,11,9,5,10,7,0}。另外,最后插入0。
接着,求出R(=20)个与从有限域的基准数中减去1的数p-1互为质数的数q(i)。在p=13的上述例子中,{q(i)}={1,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79}。
最后,利用(2)式,根据预定的图案以行为单位进行行内顺序变换(inter-row permutation处理),但在R=20情况下的增大自由距的行间交错图案为Pat1{T(i)}={19,9,14,4,0,2,5,7,12,18,10,8,13,17,3,1,16,6,15,11}。
另外, 由于rT(i)=q(i),故rT(1)=q(1)=1=r19 rT(2)=q(2)=7=r9rT(3)=q(3)=11=r14 ...rT(19)==q(19)=73=r15 rT(20)=q(20)=79=r11,将这些值代入(2)式而求出Ui(j)。
在上述现有技术中,由DSP(数字信号处理器)等软件处理计算该Ui(j),并传送到图17所示的大规模RAM1702等中,进行交织处理。
另一方面,在Turbo码译码器的情况下,进行迭代译码,例如,在以8次迭代结构进行2Mbps的接收数据序列的译码时,访问上述交织顺序需要的是几十MHz的高速动作。对应于此,将基于上述运算所生成的图案一次存储到高速存储器中,则该存储器需要具有接收几十MHz访问的结构。
因此,所需存储器(RAM)的容量需要5114×13位=66482位,其在构成Turbo码译码器的要素内占据相当大的部分。再有,虽然需要将实际处理由上述运算所产生的图案传送到Turbo码译码器内的交织用RAM中,但是还需要将其他数据同时送到该接口中,故在接口上产生了瓶颈。
还有,在具有可变码率功能的情况下,频繁产生交织长度的变更,这时,进一步助长了接口瓶颈,而产生不能跟踪多媒体业务的传送率的问题。
这样,由于需要用于与各种多媒体业务对应的移动通信系统的Turbo码译码器的内部交织器可对应于各种交织长度,所以需要准备各种交织图案,从而需要大的存储量。此外,为了对应于高速数据,需要将交织图案一次存储到高速存储器中,故需要高速存储器为大容量,其导致电路规模增大。另外,在具有可变码率功能的业务中,产生了因参数的传送而导致的接口拥挤。

发明内容
本发明鉴于上述问题而作出,其目的在于,提供一种相对于多媒体业务的各种交织长度及其传送速率,可用少的交织器用RAM容量来实现,且可减小接口的负担,再有,即使在具有可变码率功能的情况下,也可跟踪多媒体业务的传送码率的交织顺序发生器、交织器、Turbo码编码器及Turbo码译码器。
根据本发明的第一形态,是一种交织顺序发生器,其特征在于,包括将数据长度设为以素数p为基的长度的R个块,生成与p-1互为质数的R个不同整数q0,q1,q2,...qR-1的机构;将基准数为p的有限域的根相对原始根υ作为所述q0,q1,q2,...qR-1的幂乘,分别生成并存储υ^q0(modp),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(mod p)的机构,当为第0顺序变换时,顺次在p倍于来自生成或记录进行所述块替换用的预定图案的机构的输出值上加1,当为第j顺序变换时,在j=1~(p-2)中反复使用在有限域上j乘所述υ^q0(mod p),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(modp),而分别生成(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(modp),...(υ^qR-1)^j(mod p)的机构,同样,在p倍的值上顺次加上(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(modp)。
根据本发明的第二形态,其特征在于,在所述的交织顺序发生器中,具有在所述j=1(p-2)的反复进行时,生成及存储所述υ^q0(mod p),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(mod p)的机构;和通过将该存储值顺次输入到有限域的高速乘法器中,从而依次更新所述(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)的值的机构。
根据本发明的第三形态,其特征在于,在上述交织顺序发生器中,在所述j=p-1中将相当于(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)的值全部设为0。
根据本发明的第四形态,是一种交织顺序发生器,其特征在于,包括将数据长度设为以素数p为基的长度为p-1的R个块,生成与p-1互为质数的R个不同的整数q0,q1,q2,...qR-1的机构;将基准数为素数p的有限域的根相对原始根υ作为所述q0,q1,q2,...qR-1的幂乘,分别生成及存储如υ^q0(mod p),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(mod p)的机构,当为第0顺序变换时,顺序在p-1倍于来自进行生成或记录所述块替换用的预定图案的机构的输出值上加1,当为第j顺序变换时,在j=1~(p-2)中反复使用在有限域上j乘所述υ^q0(mod p),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(mod p),而分别生成如(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)的机构,同样,在p-1倍的值上顺次加上(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)。
根据本发明的第五形态,其特征在于,在上述交织顺序发生器中,对于进行了所述顺次相加的值减去1。
根据本发明的第六形态,其特征在于,在上述交织顺序发生器中,具有在j=1~(p-2)的反复操作时,生成及存储所述υ^q0(mod p),υ^q1(modp),υ^q2(mod p),...υ^qR-1(mod p)的机构;和通过将该存储的值顺次输入到有限域的高速乘法器中,从而依次更新所述(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)的值的机构。
根据本发明的第七形态,是一种交织顺序发生器,其特征在于,包括将数据长度设为以素数p为基的长度为p+1的R个块,生成与p-1互为质数的R个不同的整数q0,q1,q2,...qR-1的机构;将基准数为素数p的有限域的根相对原始根υ作为所述q0,q1,q2,...qR-1的幂乘,分别生成及存储如υ^q0(mod p),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(mod p)等的机构,当为第0顺序变换时,顺次在p+1倍于来自生成或记录进行所述块替换用的预定图案的机构的输出值上加1,当为第j顺序变换时,在j=1~(p-2)中反复使用在有限域上j乘所述υ^q0(mod p),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(mod p),分别生成如(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)等的机构,同样,并在p+1倍的值上顺次加上(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)。
根据本发明的第八形态,其特征在于,在上述交织顺序发生器中,具有在j=1~(p-2)的反复进行时,生成及存储所述υ^q0(mod p),υ^q1(modp),υ^q2(mod p),...υ^qR-1(mod p)的机构;和通过将该存储的值顺次输入到有限域的高速乘法器中,而依次更新所述(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)的值的机构。
根据本发明的第九形态,其特征在于,在上述交织顺序发生器中,在所述j=p-1中将相当于所述(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)的值全部设为0。
根据本发明的第十形态,其特征在于,在上述交织顺序发生器中,在所述j=p中将相当于所述(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)的值全部设为p。
根据本发明的第十一形态,其特征在于,在上述交织顺序发生器中,当来自所述交织顺序发生器的输出信号超过交织对象范围的情况下,跳过该信号,使用下一该范围内的信号。
根据本发明的第十二形态,其特征在于,在上述交织顺序发生器中,具有多个所述有限域的高速乘法器,在所述(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)内同时执行多个(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(mod p),...(υ^qR-1)^j(mod p)的值的更新,在来自所述交织顺序发生器的输出超过了交织对象范围的情况下,跳过该信号而使用范围内的下一信号,从而无停顿地产生信号。
根据本发明的第十三形态,其特征在于,在上述交织顺序发生器中,具有两个所述有限域的高速乘法器,对于将所述生成及存储的υ^q0(modp),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(mod p)分割为偶数乘数和奇数乘数的υ^q0(mod p),υ^q2(mod p),υ^q4(mod p),...υ^q2n(mod p)和υ^q1(mod p),υ^q3(mod p),υ^q5(mod p),...υ^q2n-1(mod p)(n为自然数)分配所述两个高速乘法器,通过在所述有限域上乘j,从而并行地同时更新(υ^q0)^j(mod p),(υ^q2)^j(mod p),...(υ^q2n)^j(modp)和(υ^q1)^j(mod p),(υ^q3)^j(mod p),...(υ^q2n-1)^j(mod p)值。
根据本发明的第十四形态,是一种交织器,其特征在于,将所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并通过读出数据,从而进行顺序变换。
根据本发明的第十五形态,是一种交织器,其特征在于,将所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并通过写入数据,从而进行顺序变换。
根据本发明的第十六形态,是一种Turbo码编码器,其特征在于,将所述交织器作为Turbo码编码器的内部交织器。
根据本发明的第十七形态,是一种Turbo码译码器,其特征在于,将上述交织器内的至少一方作为Turbo码译码器的内部交织器,将另一方作为内部去交织器。
根据本发明的第十八形态,是一种Turbo码译码器,其特征在于,通过将上述交织顺序发生器的输出作为存储了数据的双通道存储器的读出用地址信号,来进行数据内容的读出,将用预定值进行过延迟的该地址信号作为写入用地址信号来进行数据内容的写入,从而同时实现了Turbo码译码器的内部交织器和内部去交织器。
根据本发明的第十九形态,是一种交织顺序发生电路,其将数据长度设为以素数p为基的长度为p的R个块,使用基准数p的有限域上的原始根υ,得到行变换前第i行的行内变换后第j输出位置Ui(j),其特征在于,通过生成R个表格,来求出所述Ui(j)。
根据本发明,在对应于各种多媒体业务的移动通信系统中,可对应于以用于Turbo码译码器的使用了素数体的交织器不因各种交织长度而导致电路规模的增大,另外,在交织顺序发生器、交织器、Turbo码编码器和Turbo码译码器中,可以以少的交织用RAM容量来实现,进一步,由于可减小接口的负担,故即使是具有可变码率功能的多媒体业务,也可容易地跟踪传送码率。


图1是表示在本发明的交织顺序发生器内,(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)的生成块的图。
图2是表示本发明的交织顺序发生器内,进行行位置的相加而生成交织顺序的框图。
图3是表示在列数C=p-1的情况下,产生利用减法使变换图案为0~C-1时的交织顺序的框图。
图4是准备两个有限域中的高速乘法器,即使跳过也无停顿地产生(υ^q0)^j(modp)~(υ^qR-1)^j(mod p)的框图。
图5是在即使跳过也能无停顿地产生交织顺序的块内,进行行位置的相加而生成交织顺序的框图。
图6是针对表示交织顺序的信号,跳过超过交织对象范围的信号的框图。
图7是表示有限域中的高速乘法器的图。
图8是表示模运算的构成要素的图。
图9是说明模运算的动作的图。
图10是表示读出的交织处理的图。
图11是表示写入的去交织处理的图。
图12是同时进行从双通道RAM中读出的交织处理和写入的去交织处理的图。
图13是表示使用了本发明的交织顺序发生器的Turbo码编码器的图。
图14是表示使用了本发明的交织顺序发生器的Turbo码译码器的图。
图15是表示现有的Turbo码编码器的构成例的图。
图16是表示现有的Turbo码译码器的构成例的图。
图17是表示根据存储于RAM内的交织顺序,以位为单位进行重新排列的现有的Turbo码译码器的构成例的图。
具体实施例方式
下面,参照

本发明的实施方式。
图13是表示使用了本发明的交织顺序发生器的Turbo码编码器(Turbo码encoder)的实施方式的框图。虽然在后面叙述图13所示的Turbo码编码器的动作,但该Turbo码编码器与图15所示的现有Turbo码编码器的主要差别是交织器1501。
即,现有的交织器如图17所示,需要存储交织顺序的大规模RAM1702。与此相反,图13所示的实施方式的特征在于,通过使用交织顺序发生器1301,从而可以不使用存储了交织顺序的大规模RAM地实现素数交织器。
本发明所采用的交织方法虽然基本上与上述文献所记载的素数交织器相同,但是本发明的特征在于,不像现有技术那样,预先计算Ui(j)并传送到RAM等中,而是实时产生Ui(j)来进行交织处理。因此,可以不需要现有技术中所必需的大规模RAM。下面,说明其方法。
首先,利用(1)式,s(0)=1,s(1)=υmod p,s(2)=υ^2 mod ps(j)=υ^j mod p。而且υ^j≡υj。由于上式中υ是原始根,所以通过在mod p上反复进行乘法处理,从而网罗了在mod p上构成的有限域的所有元素。
若将其结果适用于(2)式,则Ui(j)=s{[j·ri]mod(p-1)}=[υ^{[j·ri]mod(p-1)}],在这里,若置换为[j·ri]mod(p-1)=j·ri-n·(p-1),则Ui(j)=[υ^{j·ri-n·(p-1)}]mod p=(υ^ri)^j·(υ^(p-1)^(-n))mod p={(υ^ri)^jmod p}·{(υ^(p-1))^(-n)mod p}mod p,在这里,根据Fermat_s Theorern,相对所有要素a,a^(p-1)≡1(mod p),其中,由于p为素数成立,所以根据(υ^(p-1))^(-n)mod p=1,上式变为Ui(j)=(υ^ri)^j mod p…………(3)这里,如上所述rT(i)=qi,若以R=20情况下所述行间交错图案Part1{T(0),T(1)...T(R-1)}={19,9,14,4,0,2,5,7,12,18,10,8,13,17,3,1,16,6,15,11}为例进行说明,则来自第0行(i=0)的行位置为T(0)=第19行,并选q0(r19)为其行值。同样,T(1)=第9行来自第1行(i=1),选q1(=r9)为其行值。
这样,将各行的ri设定为不同的值。结果,(3)式的υ^ri在各行中为不同值,各行的行内顺序变换不同,而达到随机化。另外,如上所述,选择由rT(i)=qi所提供的qi,使其与(p-1)互为质数关系。由于υ为原始根,所以以p为模量(modulus),其位数为p-1。
若将以该p为模量所构成的集合的任意元素取作a,则由于p-1为modp中的最大数,所以a^(n·(p-1))=1(mod p)的关系成立。
因此,使(3)式成为(υ^ri)^j=1(mod p)的条件是ri·j=n·(p-1),需要为(p-1)|ri·j。
但是,由于ri与(p-1)互为质数,所以ri中不存在构成(p-1)的因数,结果成为(p-1)|j,即使表示υ^ri的位数是(p-1),(υ^ri)也只能是以p为模量的原始根。
因此,Ui(j)=(υ^ri)^j mod p,其中j=0,1,2...(p-2)只能构成将各行不同的原始根(υ^ri)作为乘数的线性同余法(linear congruential method)的一种的乘法同余法的随机序列产生算法。由于(υ^ri)是以p为模量的素域的原始根,故以幂乘形式表现的(υ^ri)^j网罗了素域的所有元素,从而可维持交织器所需的一一对应的映射关系。
即,其表示通过将(3)式的(υ^ri)作为乘数来逐次相乘,从而不用保持由(1)式s(j)=[υ·s(j-1)]mod p,j=1,2...(p-2)所生成的表,就可得到Ui(j)。
例如,当数据长度k=5114位时,对于二维排列的行数20由素数表示的列数p为5114/20=255.7,其最接近的素数是p=257。若仅由此来比较,则由s(j)=[υ·s(j-1)]mod p,j=1,2...(p-2),且s(0)=1生成的表需要为257个,但是本发明中仅(υ^ri)mod p,i=0,...19二十个就足够了。即,可将存储器减小为十分之一以下。
从上述可以看出,本发明中,若行数相同,则数据长度越长越有效。另一方面,Turbo码具有称为交织器增益(interleaver gain)的特征,若数据长度长,则长度越长越可得到越高的编码增益。即,本发明是适用于Turbo码的方法。另外,在下面的实施例中,为了使说明简单,虽然以短数据长度为例进行了说明,但是数据长度可采用任意长度。
图1是在本发明的交织顺序发生器中,生成上述(3)式的Ui(j)的块,是表示(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部的第一实施方式的框图。在本实施例中表示数据长度k=257的情况,由素数p=13、R=20表示二维排列。
若看说明中所用的(υ^ri)变换后的第0行,则(υ^r19)=(υ^q0)。同样,看变换后的第1行,(υ ^r9)=(υ^q1)。即,对于变换后的i=第0~19行,(υ^rT(i))=(υ^qi)。其表示对于变换后的行号i,其乘数也可以是(υ^qi)。
但是,这里要注意的是其关系是在行内部成立的关系,不能忘记需要加上行变换前的行位置。这时,由于从T(i)行变换到i行,所以若列数p=13,则需要加上p×T(i)。
参照图1,将有限域中的高速乘法器103经选择器104连接到存储乘数υ^q0,υ^q1,υ^q2,...υ^qR-1(mod p)的寄存器101上。该乘法器的输出经选择器105连接着一次保存乘法结果的寄存器102。在经选择器106输出寄存器102的输出的同时,连接到所述乘法器103的另一个输入上。
进行控制,以使选择器104、105、106分别连动地进行选择,分别对应于行号i=0~R-1,选择器104选择υ^q0(mod p)~υ^qR-1(mod p),选择器105与106选择(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)。
另外,通过将选择器置换为地址控制,将上述寄存器置换为RAM,也可实现同样的结构。下面,参照图1说明本发明的交织顺序发生动作。
首先,说明第0顺序变换时的动作。构成为寄存器102的初始值全部被预置为‘1’。在从相当于j=0的第0顺序变换迁移到相当于j=1的第1顺序变换时,选择器106所选的值全部为‘1’。在将该值输入到乘法器103的一个输入的同时,从输出端107输出。即,在相当于j=0的第0顺序变换时,输出端107的值全部为‘1’。
这时,选择器104依次选择υ^q0(mod p)~υ^qR-1(mod p)。因此,乘法器103的输出为υ^q0(mod p)~υ^qR-1(mod p),在寄存器102中,由连动动作的选择器105将υ^q0(mod p)~υ^qR-1(mod p)代替初始值‘1’,进行顺次更新。
接着,在相当于j=1的第一变换时,选择器106所选择的值为υ^q0(mod p)~υ^qR-1(mod p)。在将该值输入到乘法器103的一个输入的同时,从输出端107送出υ^q0(mod p)~υ^qR-1(mod p)。
这时,由于选择器104顺次选择υ^q0(mod p)~υ^qR-1(mod p),故乘法器103的输出变为(υ^q0)^2(mod p)~(υ^qR-1)^2(mod p),通过连动动作的选择器105,在寄存器102中输入(υ^q0)^2(mod p)~(υ^qR-1)^2(mod p),从而代替υ^q0(mod p)~υ^qR-1(mod p),进行顺次更新。
进行同样的动作,在第j变换时,选择器106所选的值为(υ^q0)^j(modp)~(υ^qR-1)^j(mod p)。在将该值输入到乘法器103的一个输入的同时,从输出端107送出(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)。这时,由于选择器104顺次选择υ^q0(mod p)~υ^qR-1(mod p),故乘法器103的输出变为(υ^q0)^(j+1)(mod p)~(υ^qR-1)^(j+1)(mod p),通过连动动作的选择器105,在寄存器102中输入(υ^q0)^(j+1)(mod p)~(υ^qR-1)^(j+1)(mod p),从而代替(υ^q0)^j(mod p)~(υ^qR-1)^j(modp),进行顺次更新。
这样,生成的(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)只能是在(3)式的(υ^ri)^j mod p中向进行了行间变换后的二维排列的列方向读出的值。
因此,如已经说明的,需要加上变换前的行位置。即,若从T(i)行变换到i行,需要加上p×T(i)。
图2是表示本发明的交织顺序发生器的第一实施方式的框图。
该图中,201是上述(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部。另外,205是预先存储了块替换图案T(i)的表格T(i),配合行的更新而输出T(i),(i=0~R-1)。
选择器204虽然在j=0~p-2之间选择(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部201,但是在最后的j=p-1时,进行动作,以便选择输出零的零输出部202。因此,对于最后列,将p×T(i)的i=0~R-1的值作为交织顺序输出,而从输出端209中送出。
设定二维排列的列数的列数设定部206的设定值在本实施例时为p,由乘法器207生成p×T(i)。由加法器208加上该值和由上述选择器204所选的值。
从(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部201的i=0时的值迁移到i=R-1的各迁移定时,与表205输出块替换图案T(i)(i=0到i=R-1)的各迁移定时同步,结果,加法器208的输出为向列方向读出进行了行间变换后的Ui(j)=(υ^ri)^j mod p的二维排列的值。
接着,说明数据长度K=280的情况。将二维排列的行数R设为20。由于280/20=14,所以虽然可选择其上最接近的素数,但是作为列数C=p+1,即使使用素数p=13,也可构成二维排列。因此,考虑适用14×20的二维排列。在C=p+1的情况下使用原始根的情况也不改变。基准数13在有限域中的原始根是2。下面表示使用该原始根υ=2进行行内顺序变换用的式子。
进行行内顺序变换用的式子为Ui(j)=(υ^ri)^j mod p,其中j=0,1,2...(p-2),以与已说明的列数为p时同样的理由来导出上述式子。下面,说明C=p+1情况下的本发明的交织顺序发生器。
与上述的C=p情况相同,由于针对变换后的i=第0~19行,(υ^ri)=(υ^qj),故针对变换后的行号的乘数也可以是(υ^qj)。由于从T(i)行变换为i行,所以作为列数p+1=13+1=14,同样也需要加上(p+1)×T(i)。
在图2的交织顺序发生器中进行该处理。该图中,由图1生成的(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)在C=p+1的情况也与C=p的情况相同,在i=0~p-2中可通过相同的处理实现。选择器204虽然在j=0~p-2期间选择了(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部201,但是在j=p-1时,动作为选择零输出部202。因此,这时将由乘法器207相乘表205的块替换图案T(i)和列数设定部206的设定值C=p+1后的结果通过加法器208输出到输出端209。
在最后的j=p时,选择器204动作,选择p设定部203的设定值p。因此,对于最后一列,将(p+1)×T(i)i=0~R-1的值和p的和作为交织顺序输出而从209中送出。在这里,表205配合行的更新而输出块替换图案T(i)、i=0~R-1。
这时,列数设定部206将二维排列的列数设定值设定为p+1,并由乘法器207生成(p+1)×T(i)后,通过加法器208将该值与由上述选择器204选择的值相加。
从(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部201的i=0时的值(υ^q0)^j(mod p)迁移到i=R-1时的值(υ^qR-1)^j(mod p)的各迁移定时,与输出205的T(i)中从i=0到i=R-1的迁移定时同步,其结果是,加法器208的输出与向列方向读出根据进行了行间变换后的Ui(j)=(υ^ri)^j mod p的二维排列的值的关系与C=p的情况相同。
接着,说明数据长度K=320的情况的例子。将二维排列的行数R设为20。由于320/20=16,所以其上最近的素数是p=17。但是,作为列数C=p-1=16行也可构成二维排列。因此,考虑适用于16×20的二维排列。在p-1的情况下使用的原始根也不变。基准数17在有限域中的原始根是3。
下面表示使用了该原始根υ=3进行行内顺序变换用的式子。与已经说明了的列数为p的情况相同的理由导出式子Ui(j)=(υ^ri)^j mod p,其中j=0,1,2...(p-2)。
下面,参照图1说明将本发明的交织顺序发生器适用于C=p-1的情况。与上述C=p的情况同样,由于相对变换后的i=第0~19行,(υ^rT(i))=(υ^qi),故相对变换后的行号i的乘数也可以是(υ^qi)。由于从T(i)行变换为i行,所以作为列数目p-1=17-1=16,同样也需要加上(p-1)×T(i)。
在图2的交织顺序发生器中进行该处理。该图中,由图1生成的(υ^q0)^j(mod p),...(υ^qR-1)^j(mod p)与C=p的情况相同,在i=0~p-2中C=p-1的情况下也可通过相同的处理实现。但是,虽然在C=p的情况下,动作为在i=p-1时,选择零输出部202,但由于在C=p-1的情况下,i=0~p-2,所以选择器204继续选择(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部201,而不选择零输出部202和p输出部203。另外,由于在C=p-1的情况下不进行零输出部202的选择,故顺序变换图案为1~C。因此,为了使变换图案与0~C-1匹配,也可构成为对所产生的值减1。
图3是表示在C=p-1的情况下的交织顺序发生器的构成例的框图。由于为C=p-1的情况,所以不需要相当于选择器204的动作。
将(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部301直接输入到加法器308。为了进行减法,从输出-1值的常数产生部310将-1输入到该加法器308。另外,用乘法器307相乘来自列数设定部306的二维排列的列数p-1和表305的块替换图案T(i),并将该结果(p-1)×T(i)输入到加法器308中。将这些加法员算结果作为交织顺序输出而从输出端309中送出。
图4是在本发明的交织顺序发生器中,生成上述(3)式的Ui(j)的块,是表示(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部的第二实施方式的框图。
虽然在来自交织顺序发生器的输出信号超过了交织对象范围时,跳过该信号,但是在本实施方式中,为了在产生了这种跳跃的情况下,不停顿地产生信号,故准备两个上述有限域中的高速乘法器。
图4中,虽然二分割存储了图1的乘数υ^q0(mod p),υ^q1(mod p),υ^q2(mod p),...υ^qR-1(mod p)的寄存器101,而成为401和411,但是与图1的情况相比,不改变全部的容量。虽然作为分割方法可以是各种方法,这里说明分割为存储υ^q0(mod p),υ^q2(mod p),υ^q4(mod p),...υ^q2n(mod p)的偶数用寄存器401和存储υ^q1(mod p),υ^q3(mod p),υ^q5(mod p),...υ^q2n-1(mod p)的奇数用寄存器411的例子(n为自然数)。
有限域中的高速乘法器是403和413两个,使得分别通过选择器404和414从存储了乘数的寄存器中得到一方的乘法器输入。将该乘法器输出分别经选择器405和415与暂时保存乘法结果的寄存器402和412相连。
将寄存器402、412的输出分别经选择器406、416输出到输出端407和417的同时,与所述乘法器403和413的另一个输入相连。进行控制,以使选择器404、405和406与选择器414、415和416分别连动进行选择动作,其结果与图1所说明的相同,可以相对偶数和奇数同时得到计算结果。即,可同时得到υ^q0,υ^q2,...υ^q2n(mod p)与υ^q 1,υ^q3,...υ^q2n-1(mod p)。
另外,也可构成为将选择器置换为地址控制,并进一步通过双通道RAM同时执行相当于偶数的访问和相当于奇数的访问,也可构成为由一个RAM同时实现与两个寄存器同样的动作。
图5~图6是表示本发明的交织顺序发生器的第二实施方式的框图。
本实施方式通过具备图4所示的分割为两个的(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)生成部,从而构成为超出交织对象范围的信号的跳过,在图5所示的块中进行相当于图2的列数×块变化图案T(i)的加法处理,在图6所示的块中执行超出交织对象范围的信号的跳过动作。
图5中,虽然将(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)分割为υ^q0,υ^q2,...(mod p)生成部501与υ^q1,υ^q3,...(mod p)生成部511,但是其基本动作与图2的(υ^q0)^j(mod p)~(υ^qR-1)^j(mod p)相同,所以省略其详细说明。
由于列数生成部506和块替换图案T(i)发生部505可以由偶数和奇数共用,所以可由一个构成,由加法器508从偶数输出端509输出对应于偶数的交织顺序,由加法器518从奇数输出端519输出对应于奇数的交织顺序。
图6的块是相对表示这些交织顺序的信号,跳过超出交织对象范围的信号。该图中,从602输入对应于偶数的交织顺序信号,从601中输入对应于奇数的交织顺序信号。在比较器604和605中,将这些信号分别与总位数607相比较,将该总位数或其以上的信号作为交织范围外信号而跳过。
这样,将生成的交织范围内的交织顺序信号通过切换开关608以原始顺序输入到重新排列的FIFO609中。若FIFO的内容满,则从FIFO609中输出缓存满(BUFFER FULL)信号,虽然没有图示,但是该缓存满信号成为相对各块的停止(HALT)信号610,从而暂时停止各块的动作。
若从FIFO609中读出最终的交织顺序输出,并从端子611输出信号,则解除停止(HALT)信号,重新开始各个块的动作。即,利用FIFO609的缓冲功能,交织顺序输出611可以不停顿地产生信号。
图7是表示图1的有限域中的乘法器103或图4的有限域中的乘法器403及413的构成例的框图。本实施例的有限域中的乘法器由乘法701和模运算702构成的两个部分构成。模运算702由图8所示的比较减法电路801构成,来执行图9所示的运算901。
图9的运算901在乘法器701的运算结果为二进制1010010110000011时,表示以p=10010011取模的例子。首先,比较减去高8位,其可以用比较减法电路801的构成实现。用高位MSB判断比较结果,若为p以上的值,则输出减法运算过的值,边移一位边进行同样的处理,也可最终得到模运算的结果。
以上说明了本实施方式的交织顺序发生器,接着,说明使用该交织顺序发生器进行数据的顺序变换的处理。
图10是通过进行RAM中存储的数据顺序变换,从而进行交织处理的方法。将来自交织顺序发生器1001的信号作为RAM1002的地址信号而读出数据,从而进行交织。例如,若将0,8,4,12,2...7,15的序列从交织顺序发生器输入到RAM1002的读出地址(RD Adr)中,则从RAM1002中输出以地址顺序排列存储的数据的第0数据、第8数据、...,从而进行顺序变换。
图11是通过写入进行去交织的方法。与图10的读出的交织同样,将来自交织顺序发生器1101的信号作为RAM1102的地址输入。与图10的不同点是该地址信号为写入用地址,并将去交织后的数据存储在该RAM1102中。
例如,将上述交织后的数据以第0数据、第8数据...的顺序输入到RAM1102中。与图10相同,从交织顺序发生器1101将0,8,4,12,2...7,15的序列输入到RAM1102的写入地址(WR Adr)中。结果,RAM1102中恢复为当初的顺序,对于地址0,1,2...,恢复为第0数据、第1数据、第2数据...的顺序,而执行去交织。
另外,去交织和交织都可通过图案来变换,若将一方称作交织,则另一方为去交织,相反,若将一方称作去交织,则将另一方称作交织。这样,使用同样的交织顺序发生器可实现交织和去交织。
图12使用该关系,以一个交织顺序发生器1201来同时实现交织和去交织,用于后述的Turbo码译码器的外部信息序列和先验信息序列(先验)变换时。
在该图中,在双通道RAM1202中按地址顺序存储有对应于接收符号的先验数据。若为进行过交织的更新期间,则从交织顺序发生器1201,根据交织图案将0,8,4,12,2...7,15的序列输入到RAM1202的读出地址中。由此,从RAM1202中输出第0数据,第8数据...。
该交织后的数据,在由后述的Turbo码译码器处理后,需要返回到原始数据顺序的去交织器。因此,构成为插入延迟器1203,来延迟Turbo码译码处理时间后进行去交织处理。
例如,以第0数据、第8数据、...的顺序将处理后的数据输入到RAM1202中。从交织顺序发生器1201经过了延迟器1203后的写入用地址信号为0,8,4,12,2...7,15,在RAM1202中,相对地址0,1,2...,以第0数据,恢复为第1数据,第2数据...的顺序,从而执行去交织。
图13是表示包括上述说明的交织顺序发生器1301和使用其并进行交织处理用的双通道RAM1303的本发明的Turbo码编码器的实施方式的框图。
本实施方式的Turbo码编码器也与图15所示的现有Turbo码编码器相同,具有两个分量编码器1304和1305,向分量编码器1304输入没有进行交织处理的信息序列,向分量编码器1305输入进行过交织处理的信息序列。
因此,作为双通道RAM1303的一个地址输入RD Adr1,输入增序计数器(up counter)1302的输出,作为另一个地址输入RD Adr 2输入交织顺序发生器1301的输出。并且,将由来自增序计数器1302的地址输入RD Adr1读出的双通道RAM1303的信息序列输入到分量编码器1304中,将由来自交织顺序发生器1301的地址输入RD Adr2读出的双通道RAM1303的交织后的信息序列输入到分量编码器1305中。
图14表示具备上述的交织顺序发生器1402与使用其进行交织处理及去交织处理用的双通道RAM1407以及1406的本发明的Turbo码译码器的将增序计数器1401或交织顺序发生器1402经选择开关1403连接到存储有信息序列的双通道RAM1406的读出用地址上。在Turbo码译码的各迭代处理中存在对应于没有进行交织处理的奇偶校验位1的译码和对应于进行过交织处理的奇偶校验位2的译码。选择开关1403和1404是进行切换用的开关,对于半迭代,根据是奇数次还是偶数次,由切换信号1405进行控制。
在不伴随交织的处理中,选择开关1403选择增序计数器1401。选择开关1404选择奇偶校验位1。
因此,由于将增序计数器1401连接在存储有信息序列的双通道RAM1406的读出地址上,故从双通道RAM1406开始输出未进行交织的信息序列。同时,由于也经开关1403将增序计数器1401连接到双通道RAM1407的读入地址上,所以也从双通道1407输出未进行交织的奇偶校验。
由加法器1408相加这两个信号,并输入到软输入软输出解码器(SISO)1410中。SISO1410由在对数上进行MAP译码的所谓LogMAP或Max-LogMAP构成,加法器1408的加法处理相当于概率运算的乘法。
根据该加法器1408的运算结果和用开关1404选择的奇偶校验位1执行MAP运算,用加法器1412从其结果中减去延迟器1411中的配合定时的加法值,并作为下一次的先验值输入到双通道RAM1407中。在双通道RAM1407的写入用地址中,经延迟器1409、与读出用地址相同的地址配合定时输入,所以在对应于信息序列的符号位置的地址上存储先验数据。
接着,若为伴随半迭代的交织处理,则选择开关1403选择交织顺序发生器1402,选择开关1404选择奇偶校验位2。
因此,由于将交织顺序发生器1402连接在存储有信息序列的双通道RAM1406的读出地址上,所以从双通道RAM1406输出进行过交织的信息序列。同时,由于还经开关1403将交织顺序发生器1402连接在双通道1407的读入地址上,所以还从双通道RAM1407输出进行过交织的奇偶校验。
由加法器1408相加这两个信号并输入到软输入软输出解码器(SISO)1410中。加法器1408的加法处理相当于概率运算的乘法。
根据该加法器1408的运算结果和由开关1404选择的奇偶校验位2来执行MAP运算,用加法器1412从其结果中减去在延迟器1411中的配合定时的加法值,并输入到双通道RAM1407中。在双通道RAM1407的写入用地址中,由于经延迟器1409、与读出用地址相同的地址配合定时输入,所以在原始地址位置上存储先验数据。即,执行了去交织。
Turbo码译码器的特征是通过该迭代处理大大提高了译码性能,最终由判决器1403进行硬判决,从而从输出端1414输出译码数据。
权利要求
1.一种交织顺序发生器,其特征在于,包括将数据长度设为以素数p为基的长度为p的R个块,并生成与p-1互为质数的R个不同的整数q0,q1,q2,…qR-1的机构;将基准数为所述素数p的有限域的根相对原始根υ,作为所述q0,q1,q2,…qR-1的幂乘,分别生成并存储υ^q0(mod p),υ^q1(mod p),υ^q2(mod p),…υ^qR-1(mod p)的机构;将所述υ^q0,υ^q1,υ^q2,…υ^qR-1(mod p)在所述有限域中进行j乘而分别生成(υ^q0)^j(mod p),(υ^q1)^j(mod p),(υ^q2)^j(modp),…(υ^qR-1)^j(mod p)的机构;生成或记录进行所述块替换用的预定块替换图案的机构;和当为第0顺序变换时,顺次在p倍于来自生成或记录所述块替换图案的机构的输出值上加1,当为第j顺序变换时,在j=1~(p-2)中反复进行顺次在p倍于来自生成或记录所述块替换图案的机构的输出值上加上所述生成的(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)操作的机构。
2.根据权利要求1所述的交织顺序发生器,其特征在于,具有在j=1~(p-2)的反复操作期间,通过将所述生成及存储的υ^q0,υ^q1,υ^q2,…υ^qR-1(mod p)顺次输入到有限域的高速乘法器中,从而顺次更新所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的机构。
3.根据权利要求1或2所述的交织顺序发生器,其特征在于,具有在所述j=p-1中将相当于所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值全部设为0的机构。
4.根据权利要求1所述的交织顺序发生器,其特征在于,具有在来自所述交织顺序发生器的输出信号超过交织对象范围的情况下,跳过该信号,而使用下一该范围内的信号的机构。
5.根据权利要求1所述的交织顺序发生器,其特征在于,具有具备多个所述有限域中的高速乘法器,通过由所述多个有限域的高速乘法器来分担(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的更新,从而同时执行多个所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的更新的机构。
6.根据权利要求5所述的交织顺序发生器,其特征在于,具有具备两个所述有限域的高速乘法器,相对将所述生成及存储的υ^q0,υ^q1,υ^q2,…υ^qR-1(mod p)分割为奇数乘数和偶数乘数的υ^q0,υ^q2,υ^q4,…(mod p)和υ^q1,υ^q3,υ^q5,…(mod p)分配所述两个高速乘法器,通过在所述有限域上进行j乘,从而并行地同时更新(υ^q0)^j,(υ^q2)^j,…(mod p)和(υ^q1)^j,(υ^q3)^j,…(mod p)的值的机构。
7.一种交织器,其特征在于,具有将权利要求1所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号从所述存储器中读出数据,从而进行所述数据的顺序变换的机构。
8.一种Turbo码编码器,其特征在于,将权利要求7所述的交织器作为Turbo码编码器的内部交织器。
9.一种交织器,其特征在于,具有将权利要求1所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号将数据写入到所述存储器中,从而进行所述数据的顺序变换的机构。
10.一种Turbo码译码器,其特征在于,包括第一交织器,其具有将权利要求1所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号从所述存储器中读出数据,从而进行所述数据的顺序变换的机构;和第二交织器,其具有将权利要求1所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号将数据写入到所述存储器中,从而进行所述数据的顺序变换的机构,将所述第一及第二交织器的一个作为内部交织器,另一个作为内部去交织器。
11.一种Turbo码译码器,其特征在于,通过将权利要求1所述的交织顺序发生器的输出作为存储了数据的双通道存储器的读出用地址信号,来进行数据内容的读出,将用预定值进行过延迟的该地址信号作为写入用地址信号来进行数据内容的写入,从而同时实现了Turbo码译码器的内部交织器和内部去交织器。
12.一种交织顺序发生器,其特征在于,包括将数据长度设为以素数p为基的长度为p-1的R个块,生成与p-1互为质数的R个不同的整数q0,q1,q2,…qR-1的机构;将基准数为素数p的有限域的根相对原始根υ作为所述q0,q1,q2,…qR-1的幂乘,分别生成及存储υ^q0,υ^q1,υ^q2,…υ^qR-1(modp)的机构;将所述υ^q0,υ ^q1,υ^q2,…υ^qR-1(mod p)在所述有限域上进行j乘,而分别生成(υ^q0)^j,(υ^q1)^j,(υ ^q2)^j,…(υ^qR-1)^j(mod p)的机构;生成或记录进行所述块替换用的预定块替换图案的机构;和当为第0顺序变换时,顺次在p-1倍于来自生成或记录所述块替换图案的机构的输出值上加1,当为第j顺序变换时,在j=1~(p-2)中反复进行顺次在p-1倍于来自生成或记录所述块替换图案的机构的输出值上加上所述生成的(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(modp)的操作的机构。
13.根据权利要求12所述的交织顺序发生器,其特征在于,具有对进行过顺序相加的值减去1的机构。
14.根据权利要求12所述的交织顺序发生器,其特征在于,具有在j=1~(p-2)的反复操作期间内,通过将所述生成及存储的υ^q0,υ^q1,υ^q2,…υ^qR-1(mod p)顺次输入到有限域的高速乘法器中,从而依次更新所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的机构。
15.根据权利要求12所述的交织顺序发生器,其特征在于,具有当来自所述交织顺序发生器的输出信号超过交织对象范围的情况下,跳过该信号,而使用下一在该范围内的信号的机构。
16.根据权利要求12所述的交织顺序发生器,其特征在于,具有具备多个所述有限域的高速乘法器,通过由所述多个有限域的高速乘法器来分担(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的更新,从而同时执行多个所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的更新的机构。
17.根据权利要求16所述的交织顺序发生器,其特征在于,具有具备两个所述有限域的高速乘法器,相对将所述生成及存储的υ^q0,υ^q1,υ^q2,…^υ^qR-1(mod p)分割为奇数乘数和偶数乘数的υ^q0,υ^q2,υ^q4,…(mod p)和υ^q1,υ^q3,υ^q5,…(mod p)分配所述两个高速乘法器,通过在所述有限域上乘j,从而并行地同时更新(υ^q0)^j,(υ^q2)^j,…(mod p)和(υ^q1)^j,(υ^q3)^j,…(mod p)的值的机构。
18.一种交织器,其特征在于,具有将权利要求12所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号从所述存储器中读出数据,从而进行所述数据的顺序变换的机构。
19.一种Turbo码编码器,其特征在于,将权利要求18所述的交织器作为Turbo码编码器的内部交织器。
20.一种交织器,其特征在于,具有将权利要求12所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号将数据写入到所述存储器中,从而进行所述数据的顺序变换的机构。
21.一种Turbo码译码器,其特征在于,包括第一交织器,其具有将权利要求12所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号从所述存储器中读出数据,从而进行所述数据的顺序变换的机构;和第二交织器,其具有将权利要求所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号将数据写入到所述存储器中,从而进行所述数据的顺序变换的机构,将所述第一及第二交织器的一个作为内部交织器,另一个作为内部去交织器。
22.一种Turbo码译码器,其特征在于,通过将权利要求12所述的交织顺序发生器的输出作为存储了数据的双通道存储器的读出用地址信号,来进行数据内容的读出,将以预定值进行过延迟的该地址信号作为写入用地址信号来进行数据内容的写入,从而同时实现了Turbo码译码器的内部交织器和内部去交织器。
23.一种交织顺序发生器,其特征在于,包括将数据长度设为以素数p为基的长度为p+1的R个块,生成与p-1互为质数的R个不同的整数q0,q1,q2,…qR-1的机构;将基准数为所述素数p的有限域的根相对原始根υ作为所述q0,q1,q2,…qR-1的幂乘,分别生成及存储υ^q0,υ^q1,υ^q2,…υ^qR-1(modp)的机构;将所述υ^q0,υ^q1,υ^q2,…υ^qR-1(mod p)在所述有限域上乘j,分别生成(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的机构;生成或记录进行所述块替换用的预定块替换图案的机构;和当为第0顺序变换时,顺次在p+1倍于来自生成或记录所述块替换图案的机构的输出值上加1,当为第j顺序变换时,在j=1~(p-2)中反复进行顺次在p+1倍于来自生成或记录所述块替换图案的机构的输出值上加上所述生成的(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(modp)的操作的机构。
24.根据权利要求23所述的交织顺序发生器,其特征在于,具有在j=1~(p-2)的反复操作时,通过将所述生成及存储的υ^q0,υ^q1,υ^q2,…υ^qR-1(mod p)顺次输入到有限域的高速乘法器中,从而依次更新所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的机构。
25.根据权利要求23所述的交织顺序发生器,其特征在于具有在所述j=p-1中将相当于所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值全部设为0的单元。
26.根据权利要求23所述的交织顺序发生器,其特征在于,具有在所述j=p中将相当于所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值全部设为p的机构。
27.根据权利要求23所述的交织顺序发生器,其特征在于,具有当来自所述交织顺序发生器的输出信号超过交织对象范围的情况下,跳过该信号,而使用下一在该范围内的信号的机构。
28.根据权利要求23所述的交织顺序发生器,其特征在于,具有具备多个所述有限域的高速乘法器,通过由所述多个有限域的高速乘法器来分担(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的更新,从而同时执行多个所述(υ^q0)^j,(υ^q1)^j,(υ^q2)^j,…(υ^qR-1)^j(mod p)的值的更新的机构。
29.根据权利要求28所述的交织顺序发生器,其特征在于,具有具备两个所述有限域的高速乘法器,相对将所述生成及存储的υ^q0,υ^q1,υ^q2,…υ^qR-1(mod p)分割为奇数乘数和偶数乘数的υ^q0,υ^q2,υ^q4,…(mod p)和υ^q1,υ^q3,υ^q5,…(mod p)分配所述两个高速乘法器,通过在所述有限域上乘j,从而并行地同时更新(υ^q0)^j,(υ^q2)^j,…(mod p)和(υ^q1)^j,(υ^q3)^j,…(mod p)的值的机构。
30.一种交织器,其特征在于,具有将权利要求23所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号从所述存储器中读出数据,从而进行所述数据的顺序变换的机构。
31.一种Turbo码编码器,其特征在于,将权利要求30所述的交织器作为Turbo码编码器的内部交织器。
32.一种交织器,其特征在于,具有将权利要求23所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号将数据写入到所述存储器中,从而进行所述数据的顺序变换的机构。
33.一种Turbo码译码器,其特征在于,包括第一交织器,其具有将权利要求23所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号从所述存储器中读出数据,从而进行所述数据的顺序变换的机构;和第二交织器,其具有将权利要求23所述的交织顺序发生电路的输出作为存储了数据的存储器的地址信号,并由该地址信号将数据写入到所述存储器中,从而进行所述数据的顺序变换的机构,将所述第一及第二交织器的一个作为内部交织器,另一个作为内部去交织器。
34.一种Turbo码译码器,其特征在于,通过将权利要求23所述的交织顺序发生器的输出作为存储了数据的双通道存储器的读出用地址信号,来进行数据内容的读出,将以预定值进行了延迟的该地址信号作为写入用地址信号来进行数据内容的写入,从而同时实现了Turbo码译码器的内部交织器和内部去交织器。
35.一种交织顺序发生电路,其中将数据长度设为以素数p为基的长度为p的R个块,使用基准数p的有限域上的原始根υ,得到行变换前第i行的行内变换后第j输出位置Ui(j),其特征在于,通过生成R个表,从而求出所述Ui(j)。
全文摘要
根据本发明,即使在各种多媒体业务中需要准备多种交织图案的情况下,也可以不必对应于因此而需要的很大的存储器容量。在以例如8次迭代等构成进行2MbpS以上的接收数据序列的译码的情况下,不需要一次将所生成的交织图案存储到高速存储器用的高速存储器容量,即使在需要将实际处理的所生成图案传送到Turbo码译码器内的交织用RAM的情况下,也可不必对应于该接口瓶颈等大量的传送数据量。再有,可以提供一种在具有可变码率功能时,虽然频繁产生交织长度的改变,但即使在这种情况下,也可通过不助长接口瓶颈的最小限度的参数传送来实现,且消除了不可跟踪多媒体业务的传送码率的问题之交织顺序发生器、交织器、Turbo码编码器和Turbo码译码器。
文档编号H03M13/45GK1639986SQ02822860
公开日2005年7月13日 申请日期2002年11月19日 优先权日2001年11月19日
发明者丸次夫 申请人:日本电气株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1