专利名称:通信系统中的信道编码/解码的制作方法
背景技术:
1.发明领域本发明一般地涉及以帧单位制处理数据的通信系统,特别涉及一种信道编码装置及其方法。
2.相关技术描述在处理话音、字符、图象和视频信号的通信系统中,数据通常是以帧单位制进行发送的。一帧被定义为系统的一个基本定时间隔。此外,在对这种帧数据进行通信的系统中,用于纠错的信道编码器也应该以帧单位制进行数据编码。在这种情况下,编码器进行尾部比特置零来指示每帧的结束,从而利用这个信息,解码器可以有效地对帧进行解码。解码器尾部比特表示加在数据帧末端的一个固定比特序列,以将卷积编码器复位到已知的状态。IS-95系统典型地采用了非递归系统卷积编码器,该编码器在每一帧的末端添加与延迟器数目相等的一序列零(0)比特来结束帧。然而,与非递归系统卷积编码器相反,递归系统编码器不能在帧的末端添加零比特来结束帧,因为输入比特是反馈到延迟器的。
图1是一种常规并行快速编码器(Turbo Encoder)的框图,它公开于授予Berrou的美国专利No.5,446,747。图1中的编码器是一种常规的递归系统编码器。该快速编码器应用两个简单的支路编码器(constituent encoder)对N比特的输入帧编码成奇偶校验码元,并可以构造成为并行或串行的结构。另外,图1中的快速编码器采用递归系统卷积码作为支路代码。
图1中的快速编码器包含一个交织器120,位于第一支路编码器110与第二支路编码器130之间。交织器120的大小为输入数据比特的一个帧长度N,它重新排列输入给第二支路编码器130的数据比特的次序,以减小第一和第二编码器输出之间的相关性。
第一支路编码器110对输入的数据比特进行编码,交织器120按给定的规则对输入数据流的比特交织(或随机化),以使由信道造成的突发差错转变为随机差错。第二支路编码器130对交织器120的输出进行编码。
图2显示了图1中递归系统卷积编码器的终止方案。更详细的信息,参见D.Divsalar和F.Pollara的“On the Design of Turbo Codes”(快速码的设计),TDA Progress Report 42-123,Nov.15,1995。这里,假设输入给第一和第二支路编码器110和120的帧数据为20比特的数据。图2中,D1-D4表示延迟器,XOR1-XOR 6为异或门。
参见图2,进行编码的实施步骤如下开关SW1保持在接通(ON)的位置,而开关SW2保持在切断(OFF)的位置。然后,20比特的输入帧数据依次输入延迟器D1-D4,并经异或门XOR1-XOR6进行异或运算,于是,编码的比特在异或门XOR6的输出端输出。当20个数据比特都以这种方式编码后,开关SW1切换到切断而开关SW2切换列接通以结束帧。然后,异或门XOR1-XOR4分别对延迟器输出的数据比特与相应的反馈数据比特进行异或运算,因而输出零比特。这些产生的零比特被再次输进延迟器D1-D4,并存储在里面。被输进延迟器D1-D4的零比特就成为输入给多路复用器的尾部比特。
多路复用器多路复用从支路编码器输出的编码的数据比特和尾部比特。尾部比特的个数取决于包含在支路编码器110和130中延迟器的个数。图2中的终止方案每帧产生4个尾部比特以及还为各尾部比特中的每个产生的附加编码比特,令人不满意地增加了整个最终编码比特的计数,这导致了比特率的降低。亦即,当比特率定义为比特率=(输入数据比特数量)/(输出数据比特数量),具有图2所示结构的支路编码器的比特率就是比特率=(输入数据比特数量)/{(编码数据比特数量)+(尾部比特数量)+(尾部比特的编码比特数量)}。
从而,图2中,由于帧数据由20比特组成,并且延迟器的数量等于4,因此比特率就变成20/28。
因此,显然递归系统卷积编码器的性能取决于置尾部比特的方法,因为理想地给快速码置尾部比特是困难的。
本发明概述因此,本发明的一个目的是提供这样一种装置和方法,用于在通信系统的递归系统编码器中采用其中插入了预定比特的帧结构进行信道编码/解码。
本发明的另一个目的是提供一种递归系统信道编码装置和方法,用于在信道编码前在帧数据中的预定位置插入具有特定值的比特。
本发明的另一个目的是提供一种信道解码装置和方法,用于对从信道编码器发送来的信道编码数据进行解码,其中,在信道编码期间,将具有特定值的比特插入帧数据中的预定位置。
本发明的另一个目的是提供这样一种装置和方法,用于在信道编码码元中的特定码元位置插入具有特定值的比特,并利用具有特定值的比特来进行软判决解码,以提高信道解码的性能。
根据本发明的一个方面,提供了一种用于接收机的信道解码装置,该接收机接收通过在帧数据的预定位置插入至少一个特定比特而编码的码元。该信道解码装置包括接收码元的码元插入器,用于将具有特定值的码元插入预定的特定比特插入位置,并输出接收到的在其他位置的码元;解码器,用于对码元插入器输出的码元进行解码。
更具体地讲,信道解码装置包括接收码元的多路分解器,用于把接收到的码元多路分解为数据码元、第一奇偶校验码元和第二奇偶校验码元;码元插入器,用于将具有特定值的码元插入到数据码元中预定的特定比特插入位置,并输出接收到的在其他位置的码元;第一解码器,用于对从码元插入器输出的数据码元及第一奇偶校验码元进行软判决,以产生第一解码码元;第一交织器,用于对第一解码器的输出进行交织;第二解码器,用于对从第一交织器输出的第一解码码元及第二奇偶校验码元进行软判决,以产生第二解码码元;硬判决部件,用于对第二解码码元进行硬判决;以及去交织器,用于对硬判决部件的输出进行去交织。
根据本发明的另一个方面,提供了一种接收机的信道解码方法,该接收机接收通过在帧数据的预定位置插入至少一个特定比特而编码的码元。该信道解码方法包括以下步骤接收码元,将具有特定值的码元插入特定比特插入位置,并输出接收到的在其他位置的码元;利用具有特定值的插入码元对接收到的码元进行解码。
更具体地讲,该信道解码方法包括以下步骤a)接收码元,把接收到的码元多路分解为数据码元、第一奇偶校验码元和第二奇偶校验码元;b)将具有特定值的码元插入到数据码元中预定的特定比特插入位置,并输出接收到的在其他位置的码元;c)对其中插入了具有特定值码元的数据码元及第一奇偶校验码元进行软判决,以产生第一解码码元;d)交织第一解码码元;e)对交织的第一解码码元与第二奇偶校验码元进行软判决,以产生第二解码码元;f)对该第二解码码元进行去交织;g)将去交织的第二解码码元的相应码元在一插入位置置数为特定值,返回到c),以重复步骤c)至e);h)在步骤c)至e)结束后,对第二解码数据进行硬判决;以及i)对硬判决处理过的第二解码码元去交织。
通过结合附图对本发明进行详细描述,本发明的上述及其他目的、特性和优点将会变得更加清楚,附图中,相同的标号代表相同的部件。附图中图1表示无线通信系统中使用的现有技术的信道编码器的框图;图2为图1中现有技术的支路编码器详细框图;图3为本发明第一实施例的信道编码器的示意图;图4为图3所示比特插入器的详图;图5为图3所示支路编码器的详图;图6为本发明第一实施例的比特处理过程的示意图;图7为本发明第二实施例的信道编码器的示意图;图8为图7中多路复用器的详图;图9为本发明第二实施例的比特处理过程的示意图;图10为本发明第三实施例的信道编码器的示意图;图11为图10所示支路编码器的详图;图12为图10所示多路复用器的详图;图13为本发明第三实施例的比特处理过程的示意图;图14为本发明一个实施例中的信道解码器的示意图;图15为图14中码元置数器(symbol initializer)的详图;以及图16为本发明另一实施例中的信道解码器。
优选实施例的详细描述本发明的优选实施例将在以下参照附图详细描述。在下面的描述中,将不对所熟知的功能和结构进行详细描述,以不使本发明因不必要的细节而变得难懂。这里用的术语“数据比特”是指没有被编码的数据,而“奇偶校验比特”是指经支路编码器编码过的数据。
通常,在通信系统中,发信机用信道编码器对发送数据编码,并发送编码数据;接收机然后对从发信机接收到的数据解调,以将接收数据转换到原始数据。信道编码器以帧单位制对发送数据进行编码,并产生尾部比特,该尾部比特加在每一帧上来指示帧的结束。本发明提出一种在信道编码器中具有结束作用的帧结构。
该具有结束作用的帧结构可以按照以下所述的几个实施例来实现第一实施例一定数量的特定比特被插入到每个信道帧中有较高差错发生概率的位置,要插入的比特的数量由尾部比特的数量来确定。因为递归系统支路编码器没有被构造为产生尾部比特,因此,差错发生概率由实验来确定,并且插入位置应对信道编码器和信道解码器来说都是已知的。要插入的特定比特不论是否被发送,最好应是对通信几乎没有或没有影响的无效比特。它们也可以是编码比特或接收机预定的数据比特。这里,假设它们为零比特。
第二实施例一定数量的特定比特被插入到每个信道帧中有较高差错发生概率的位置,要插入的比特的数量由尾部比特的数量来确定。插入特定比特以使其超出预定帧长度。应用支路编码器对插入了比特的数据比特进行编码。然后,在输出信道编码数据时,超出信道编码数据帧长度的比特在输入数据的比特插入位置上被穿孔。这里,递归系统编码器不产生尾部比特,而信道解码器应预先知道比特插入的位置。
第三实施例一定数量的特定比特被插入到每个信道帧中有较高差错发生概率的位置,要插入的比特的数量由尾部比特的数量来确定。支路编码器产生用于终止的尾部比特和相关联的尾部比特的编码数据,然后,在每一信道帧的特定插入位置对数据比特穿孔,以在为比特插入所选的穿孔位置中插入尾部比特和尾部比特的编码数据。
第一实施例依照本发明第一实施例编码器不产生尾部比特,而是在预定位置插入特定比特,以实现结束功能。在本实施例中,一个24个比特的帧包含16个数据比特和8特定比特,这8个特定比特中的每个均为零,插入在帧中有较高差错发生概率的比特位置上。这里,这些比特插入的位置,是通过在对编码数据进行解码的同时实验上检测差错发生最多的位置来确定的。另外,每一个支路编码器都使用1/3的编码率。
在本实施例中,当采用1/3编码率的快速编码器对24个比特帧数据(16个帧数据比特加8个特定比特)进行编码时,以实验确定解码期间有较高差错发生概率的位置。8个具有相对高差错概率比特位置被确定,特定比特就插入到所确定的位置。这里,当解码器在对插入特定码的编码帧数据进行解码时,已知插入了比特的位置。
当插入的特定比特为零比特(实际上,“0”比特是作为“-1”发送的),在解码前,在插入位置的零比特被改变为高度倾向于“-1”的大的负值(如-5),以增加可靠性。这是为了提高解码的性能,而且插入的特定比特的值可以在无线电环境中发送时有所改变。然而,因为解码器预先知道将要收到的特定比特的位置,因此,在实际解码过程中,解码器插入特定比特的比“-1”高的值。这种情况下,解码器可借助插入的特定值提高解码性能。此解码操作将参照图14加以详细描述。以这种方式,对这些比特进行解码的解码器根据24个中至少有8比特以大的负值来发送而得知这些比特,因而提高了解码性能。在本实施例中,帧的长度越短,解码性能提高的越多。
图3是本发明第一实施例的具有用于插入特定比特的比特插入器的快速编码器。比特插入器310包含通过处理输入数据比特产生特定比特的比特发生器,并通过将比特发生器产生的特定比特插入到预定比特插入位置,以在帧单位中产生数据比特。第一支路编码器320对从比特插入器310输出的数据比特进行编码。交织器330依照预定的规则,交织比特插入器310输出的帧单位中的数据比特,从而重新排列数据比特序列。在示例性实施例中,交织器330采用对角(diagonal)交织器。
第二支路编码器340对从交织器330输出帧单位中的交织数据比特进行编码。可采用递归系统卷积编码器作为第一支路编码器320和第二支路编码器340。多路复用器350在未述及的控制器的控制下,对比特插入器310、第一支路编码器320和第二支路编码器340的输出进行多路复用。这里,比特插入器310输出数据比特Ik。第一支路编码器320输出第一奇偶校验比特P1k,第二支路编码器340输出第二奇偶校验比特P2k。
图4是图3所示快速编码器中比特插入器310的详细框图。参见图4,比特发生器430产生要插入在数据比特中的特定比特。这里,假设这些特定比特为零比特。延迟器412-426可以是能按比特时钟对输入数据比特移位的串行移位寄存器结构,可以由存储部件如触发器组成。
在未述及(未画出)的控制器的控制下,开关432切换,以选择延迟器412-426的输出。在数据比特中插入从比特发生器430输出的特定比特的位置,在未述及的控制器的控制下,开关432被切换到下一个延迟器。也就是说,当被选的特定比特插入在数据比特中时,开关432选择延迟了一个比特的数据比特。开关432可由多路复用器实现。在未述及的控制器的控制下,开关434切换到比特发生器430和开关432的输出,以产生数据比特Ik。在控制器的控制下,开关434选择数据比特中的特定比特插入到预定位置。
参见图4,下面将就插入特定比特的操作进行描述。输入的数据比特被延迟器412-426按照比特时钟延迟。开始,开关432选择输入数据比特(即,柱1),而开关434初始连接到开关432(即,柱B)。然后,输入的数据比特经由开关432和434输出。与此同时,当一个比特插入位置被确定时,在控制器的控制下,开关432连接到延迟器412的输出(即,柱2),而开关434连接到比特发生器430的输出(即,柱A)。其结果是,数据比特的通路被切断,而从比特发生器430输出的零比特插入到相应的比特位置。当在零比特插入后数据比特继续输出的情况下,开关434再次被控制器连接到开关432。亦即,因在插入零比特之后选择了延迟了一比特的数据比特,所以,零比特可以插入在预定位置而不会丢失数据比特。
重复上述过程,零比特就插入到一帧的数据比特中。当在插入零比特之后接收到下一帧的数据比特时,开关432再次被连接到输入比特节点(即,柱1),然后又重复上面的过程。在对数据比特编码以进行通信的情况下,差错概率在输入到各自支路编码器的数据比特流后部统计上相对较高。因此,举例而言,那些从比特发生器430输出的零比特的插入位置,主要位于数据比特流的后部,如表1所示。
表1
表中Ix为数据比特,Ibx为插入的比特。
在数据比特流中插入特定比特的原因是为了提高接收机的解码性能。为此,最好在信道帧中那些有较高差错发生概率的比特位置插入特定比特,插入比特的数量由尾部比特的数量来确定。多数情况下,有较高差错发生概率的比特位置分布在输入到支路编码器的数据比特流的后部,如表1所示。因此,特定比特主要插入在数据比特流的后部。修改的数据流分别输入第一和第二支路编码器320和340。这里,对于第二支路编码器340,特定比特应插入在从交织器330输出的交织数据比特的后部。因此,比特插入器310在加到第二支路编码器340的数据比特中插入特定比特时,应该考虑到这一点。
从比特插入器310输出的表1中的数据比特并行地输入给第一支路编码器320和交织器330。从交织器330输出的帧单位中的交织数据比特由第二支路编码器340进行编码。图5是根据第一实施例的图3所示的第一和第二支路编码器320和340的结构。如图所示,第一和第二支路编码器320和340是递归系统卷积编码器。另外,支路编码器320和340被构造成不产生尾部比特,如图5所示。
第一支路编码器320对从比特插入器310输出的表1中的数据比特进行编码。从第一支路编码器320输出的编码数据比特见表2。
表2
其中,Cx表示一支路编码器320输出的码元,Cbx表示第一支路编码器320输出的插入比特的码元。这里,在第一支路编码器320的编码率为1/3的情况下,每个码元C变成为3个码元。
与此同时,交织器330对从比特插入器310输出的数据比特进行交织,而第二支路编码器340对从交织器330输出的交织数据比特进行编码。第二支路编码器340输出的数据见表3。
表3
其中,Dx表示第二支路编码器340输出的码元,Dbx表示第二支路编码器340输出的插入比特的码元。这里,在第二支路编码器340的编码率为1/3的情况下,每个码元D变成为3个码元。尽管事实上已通过交织重新排列数据比特序列,但为便于解释,序列在表3中保持不变。
然后,在未述及的控制器的控制下,多路复用器350对比特插入器310、第一支路编码器320和第二支路编码器340的输出进行多路复用。表4所示为插入了特定比特的数据比特以及第一和第二支路编码器320和340的输出。多路复用器350可以以如表4所示的帧单位制、或以码元单位制多路复用数据码元序列中的输入码元、第一奇偶校验码元和第二奇偶校验码元。
表4
图6是根据本发明第一实施例的图3所示的快速编码器的定时图。参见图6,在时间间隔T1,比特插入器310在数据帧中的预定比特位置插入零比特,以产生表1中的数据比特Ik(见611)。在时间间隔T2,插入了零比特的数据比特Ik同时输入给多路复用器350、第一支路编码器320和交织器330。然后,在T2时间间隔里,第一支路编码器320对插入了零比特的数据比特Ik进行编码,以产生第一编码数据比特Ck,即第一奇偶校验比特(见612)。在同一T2时间间隔里,交织器330按照预定规则交织插入零比特的数据比特Ik(见613)。
此后,在时间间隔T3,多路复用器350将从比特插入器输出的数据比特Ik延迟一个帧周期,第一支路编码器320给多路复用器350输入第一编码数据比特Ck,并且第二支路编码器340对从交织器330输出的交织数据比特Ik进行编码,以产生第二编码数据比特Dk,即第二奇偶校验比特。当第二支路编码器340产生第二奇偶校验比特Dk完成时,多路复用器350在时间间隔T4多路复用数据比特Ik、第一奇偶校验比特Ck和第二奇偶校验比特Dk。
尽管图6的例子对数据比特Ik、第一奇偶校验比特Ck和第二奇偶校验比特Dk是并行处理的,也可能按照比特产生的顺序,将比特插入器310、第一支路编码器320和第二支路编码器340的输出串行输出。
从前面的描述中可看出,在依照第一实施例的递归系统快速编码器中,各支路编码器不产生用于结束的尾部比特,而是在有确定的较高差错概率的比特位置插入一定数量的特定比特(即,零比特)。
第二实施例依照本发明第二实施例的信道编码器在有较高差错发生概率的比特位置插入特定比特。第二实施例与第一实施例的区别在于,插入比特的数量设置为超出帧的大小(或长度)。在本示例性实施例中,假设每一帧包含16个输入数据比特Ik和12个插入比特。由于输出数据比特Ik、奇偶校验比特Ck和Dk应该等于24个比特而总共产生了28个比特,因此,剩余的奇偶校验比特Ck和Dk就在比特插入位置从数据比特穿孔。
图7是依照本发明第二实施例的信道编码器。比特插入器710包含通过由处理输入数据比特来产生特定比特的比特发生器,并且在预定位置插入由比特发生器产生的特定比特,来产生超出帧大小的数据比特。第一支路编码器720对比特插入器710输出的数据比特进行编码,以产生第一奇偶校验比特Ck。交织器730按照预定规则对从比特插入器710输出的帧单位中的数据比特进行交织,从而改变数据比特的排列(或序列)。在本示例实施例中,对角交织器被用作交织器730。
第二支路编码器740对从交织器730输出的帧单位中的交织数据比特进行编码,以产生第二奇偶校验比特Dk。递归系统卷积编码器可被用作第一和地二支路编码器720和740。多路复用器750在未述及的控制器的控制下,多路复用比特插入器710、第一支路编码器720和第二支路编码器740的输出,以产生预定长度的数据帧。这里,比特插入器710输出数据比特Ik,第一支路编码器720输出第一奇偶校验比特P1k,第二支路编码器740输出第二奇偶校验比特P2k。
在操作中,当接收到16输入数据比特Ik时,比特插入器710的操作方式与第一实施例中比特插入器310是一样的。比特插入器710具有与图4中相似的结构,区别在于由12个延迟器组成。所以,在控制器的控制下,通过控制内部的开关,比特插入器710在帧中12个有较高差错概率的位置插入12个零比特。因此,在本实施例中,比特插入器710输出28个数据比特Ik(即,16个数据比特和12个零比特),它们同时加到多路复用器750、第一支路编码器720和交织器730。此外,从交织器730输出的交织数据比特Ik被加到第二支路编码器740。这里,第一和第二支路编码器720和740有图5的结构,它们不产生用于结束的尾部比特。
第一支路编码器720然后对从比特插入器710输出的插入了12个零比特的28个数据比特Ik进行编码,并输出28个第一奇偶校验比特Ck给多路复用器750。交织器730对从比特插入器输出的28个数据比特Ik进行交织,第二支路编码器740以与第一编码器720相同的方式对交织数据比特进行编码,以产生加到多路复用器750的28个第二奇偶校验比特Dk。多路复用器750对数据比特Ik进行穿孔,以在穿孔的位置插入4个第一奇偶校验比特Ck和4个第二奇偶校验比特Dk,然后,输出其余的24个第一奇偶校验比特Ck和24个第二奇偶校验比特Dk。
参见图8,多路复用器750首先接收从比特插入器710输出的28个数据比特Ik。然后,多路复用器750内的开关812连接至延迟器822,直至接收到比特插入器710的28个数据比特Ik的前24个数据比特。延迟器822延迟这24个先接收到的数据比特Ik。此后,开关812连接到延迟器824,直至接收到比特插入器710的28个数据比特Ik中剩余的4个数据比特。延迟器824延迟剩余的4个数据比特。
以同样方式,多路复用器750接收从第一支路编码器720输出的28个第一奇偶校验比特Ck。然后,多路复用器750内的开关814连接至延迟器826,直至接收到第一支路编码器720的28个第一奇偶校验比特Ck的前24个数据比特,延迟器826延迟这24个接收到的第一奇偶校验比特Ck。此后,开关814连接到延迟器828,直至接收到第一支路编码器720的28个第一奇偶校验比特Ck剩余的4个第一奇偶校验比特。延迟器828延迟这4个第一奇偶校验比特。
此后,多路复用器750接收从第二支路编码器740输出的28个第二奇偶校验比特Dk。然后,多路复用器750内的开关816连接至延迟器830,直至接收到第二支路编码器740的28个第二奇偶校验比特Dk的前24个数据比特,延迟器830延迟这24个接收到的第二奇偶校验比特Dk。此后,开关816连接到延迟器832,直至接收到第二支路编码器740的28个第二奇偶校验比特Dk剩余的4个第二奇偶校验比特。延迟器832延迟这4个第二奇偶校验比特。
如上所述,多路复用器750顺序接收28个数据比特Ik、28个第一奇偶校验比特Ck和28个第二奇偶校验比特Dk,并分别储存各比特的前24个比特和剩下的4比特在相应的延迟器中。开关812-816由未述及的控制器来控制。另外,延迟器822-832均由级联的存储部件组成,并存储输入的比特,直至相应的延迟处理完成。
当延迟处理完成时,开关844被连接到开关842,而开关842被连接到延迟器822。这样,延迟器822的输出就通过开关842和844被输出。当存储在延迟器822的一个数据比特被输出时,开关842被连接到延迟器824,保持与开关844的连接。然后,存储在延迟器824的剩余数据比特其中之一通过开关842和844被输出。也就是说,存储在延迟器822中的数据比特被穿孔,然后存储在延迟器824的数据比特被输出。此后,开关842被连接到延迟器822,继续保持与开关844的连接。通过重复上述过程4遍,存储在延迟器822的数据比特被穿孔,存储在延迟器824的4个剩余数据比特被插入在穿孔位置。
随后,开关842被连接到延迟器822,保持与开关844的连接。然后,延迟器822的输出通过开关842和844被输出。当存储在延迟器822的一个数据比特被输出时,开关842被连接到延迟器828,保持与开关844的连接。然后,存储在延迟器828的4个剩余第一奇偶校验比特其中之一通过开关842和844被输出。此后,开关842再次被连接到延迟器822,继续保持与开关844的连接。通过重复上述过程4遍,存储在延迟器822的数据比特被穿孔,然后,存储在延迟器828的4个剩余第一奇偶校验比特被插入在穿孔位置。
以这种方式,数据比特和4个剩余第一奇偶校验比特被交替输出。接着,开关842被连接到延迟器822,保持与开关844的连接。然后,延迟器822的输出通过开关842和844被输出。当存储在延迟器822的一个数据比特被输出时,开关842被连接到延迟器832,保持与开关844的连接。然后,存储在延迟器828的4个剩余第二奇偶校验比特其中之一通过开关842和844被输出。此后,开关842再次被连接到延迟器822,继续保持与开关844的连接。通过重复上述过程4遍,存储在延迟器822的数据比特被穿孔,存储在延迟器832的4个剩余第二奇偶校验比特被插入在穿孔位置。
以上述的过程,存储在延迟器822的24个数据比特被穿孔,然后,存储在延迟器824的4个剩余数据比特、存储在延迟器828的4个剩余第一奇偶校验比特及存储在延迟器832的4个剩余第二奇偶校验比特被插入在穿孔位置。因此,多路复用器750对从比特插入器710输出的数据比特Ik进行穿孔,在穿孔的插入位置插入8个奇偶校验比特,以此输出24个数据比特。
当上面过程完成时,开关844被连接到延迟器826。然后,存储在延迟器826的24个第一奇偶校验比特Ck被输出。此后,开关844被连接到延迟器830,以输出存储在延迟器830的24个第二奇偶校验比特Dk。
参见图9,在第二实施例的图7所示的编码器中,比特插入器710在16个输入数据比特中插入12个比特,以产生28个数据比特Ik。第一和第二支路编码器720和740分别产生24个第一奇偶校验比特Ck和24个第二奇偶校验比特Dk。多路复用器750在12个插入位置对28个数据比特Ik进行穿孔,然后在其中插入4个剩余数据比特、4个剩余第一奇偶校验比特及4个剩余第二奇偶校验比特。此后,多路复用器750顺序输出数据比特、第一奇偶校验比特Ck和第二奇偶校验比特Ck。
在解码过程中,多路复用器750的输出值被多路分解为数据比特部分、第一奇偶校验比特部分和第二奇偶部分,其中,数据比特部分在比特插入部分被值“-5”穿孔。这种处理过的数据比特由现有的解码器来解码(见ClaudeBerrou,Alain Glavieux和Punya Thitmajshima的“Near Shannon Limit Error-Correction Coding and DecodingTurbo-Codes(1)(近香农极限纠错编码与解码快速码(1)”))。
第三实施例依照本发明第三实施例的编码器在数据比特中具有较高差错发生概率的位置插入具有特定逻辑的比特,其中,支路编码器对插入了特定比特的数据比特进行编码,并产生尾部比特加入到编码数据比特当中。亦即,依照第三实施例的编码器通过比特插入和尾部比特加入来实现结束功能。
图10是依照本发明第三实施例的编码器。参见图10,比特插入器1010接收16个输入比特,并且有与第一实施例的比特插入器310相同的结构。在未述及的控制器的控制下,比特插入器1010在一帧中具有较高差错发生概率的的8个数据比特位置插入8个零比特。因此,在本示例实施例中,比特插入器输出24个数据比特Ik,这些数据比特被同时输入给多路复用器1050、第一支路编码器1020和交织器1030。
此外,从交织器1030输出的交织数据比特Ik被输入给第二支路编码器1040。第一支路编码器1020是递归系统支路编码器,具有能够产生加到编码数据比特的尾部比特的结构,如图11所示。另外,第一支路编码器1020具有不产生用于结束的尾部比特的结构,如第一实施例的图5。
参见图11,将描述第一支路编码器1020的实施。为了编码,开关1111将输入节点连接到异或门1131,开关1113保持在切断状态,并且,开关1115被连接到异或门1135。然后,24个数据比特Ik经开关1111和异或门1131被顺序输入到延迟器1121-1127,异或门1135输出编码的数据比特。当所有数据比特Ik以此方式被延迟器1121-1127和异或门1135进行编码后,开关1111被连接到异或门1133和1131,开关1113接通,并且,开关1115被连接到开关1113。然后,零比特通过对反馈的输出进行异或运算来产生,存储在延迟器1121-1127中,并经开关1115输出。这里,存储在延迟器1121-1127中零值变成尾部比特,并经由开关1115输出。产生的尾部比特的数量对应于支路编码器1020中延迟器的数量。在图11中,支路编码器1020每帧产生4个尾部比特,并还为各个尾部比特产生编码比特。
从而,第一支路编码器1020产生24个第一奇偶校验比特Ck,并且当处理最后一个数据比特(即,第24个数据比特)时,将开关1111连接到异或门1133,将开关1113连接到开关1111,和将开关1115连接到开关1113;重复同样的处理过程4次,以产生4个尾部比特。通过这一过程,28个第一奇偶校验比特Ck和4个尾部比特被输出到多路复用器1050。
另外,交织器1030交织从比特插入器1010输出的24个数据比特Ik,并提供交织的数据比特给第二支路编码器1040。第二支路编码器1040然后以与第一支路编码器1020同样的方式,对交织数据比特进行编码,以产生第二奇偶校验比特Dk,这些第二奇偶校验比特输入给多路复用器1050。
从交织器1030输出的在帧单位中的交织数据比特,被具有与图5所示相同结构的第二支路编码器1040编码。第二支路编码器1040是递归系统卷积编码器,如图5所示。另外,第二支路编码器1040的结构不产生尾部比特。
多路复用器1050然后对数据比特Ik进行穿孔,并在穿孔位置插入4个第一奇偶校验比特Ck,并且有选择地输出剩余的24个第一奇偶校验比特Ck和24个第二奇偶校验比特Dk。
图12是多路复用器1050的示意图。参见图12,多路复用器1050首先接收从比特插入器1010输出的24个数据比特Ik。多路复用器1050中的延迟器1222然后存储接收到的24个数据比特Ik。
此后,多路复用器1050接收从第一支路编码器1020输出的28个第一奇偶校验比特Ck。多路复用器1050中的开关1212然后被连接到延迟器1224,直至第一奇偶校验比特Ck的前24个比特被第一支路编码器1020接收,并且延迟器1224存储接收到的第一奇偶校验比特Ck。随后,开关1212被连接到延迟器1226,直至32个第一奇偶校验比特Ck中剩余的8比特被第一支路编码器1020接收,并且延迟器1226存储第一奇偶校验比特Ck的剩余8比特。
接着,多路复用器1050接收从第二支路编码器1040输出的24个第二奇偶校验比特Dk。多路复用器1050中的延迟器1228然后存储接收的24个第二奇偶校验比特Dk。
这样顺序产生的24个数据比特Ik、28个第一奇偶校验比特Ck和24个第二奇偶校验比特Dk被输入给多路复用器1050。多路复用器1050然后按接收次序将顺序接收到的数据比特Ik、第一奇偶校验比特Ck和第二奇偶校验比特Dk存储在相应的延迟器中,其中,28个第一奇偶校验比特Ck中的前24个比特和剩余4比特被分开存储在相应的延迟器中。延迟器1222~1228均由级联的存储部件组成,存储相应的输入比特,直至上面的延迟过程完成。
上面的延迟过程之后,开关1236被连接到开关1234,开关1234被连接到延迟器1222。这样,延迟器1222的输出就经开关1234和1236输出。当存储在延迟器1222的数据比特被输出时,开关1234被连接到延迟器1226,保持与开关1236的连接。然后,存储在延迟器1226中的剩余第一奇偶校验比特其中之一经由开关1234和1236输出。亦即,存储在延迟器1222的数据比特被穿孔,然后在穿孔位置插入存储在延迟器1226中的第一奇偶校验比特。此后,开关1234被再次连接到延迟器1222,保持与开关1236的连接。以上操作被重复8次,对存储在延迟器1222中的数据比特进行穿孔,并在穿孔位置插入存储在延迟器1226中剩余的8个第一奇偶校验比特。结果是,24个数据比特被穿孔,以在穿孔位置(即,比特插入位置)插入8个第一奇偶校验比特,从而输出24个比特。
此后,开关1236被连接到延迟器1224的输出。然后,存储在延迟器1224的24个第一奇偶校验比特Ck经开关1236被输出。接着,开关1236被切换到延迟器1228,以输出存储在延迟器1228的24个第二奇偶校验比特Dk。
参见图13,在第三实施例的图10所示的编码器中,比特插入器1010在16个输入比特中插入8个比特,以产生24个数据比特Ik。产生尾部比特的递归系统支路编码器被用作支路编码器。在这种情况下,支路编码器产生包括24个编码数据比特、4个尾部比特和4个尾部比特的编码数据的总共32个数据比特。当输出这些编码数据比特时,输入数据比特Ik被穿孔,以在比特穿孔位置插入剩余的8个第一奇偶校验比特。
在解码处理过程中,多路复用器1050的输出值被多路分解为数据比特部分、第一奇偶校验比特部分和第二奇偶校验比特部分,其中,数据比特部分在比特插入部分被值“-5”穿孔。这种处理过的数据比特由现有的解码器来解码(见Claude Berrou,Alain Glavieux和Punya Thitmajshima的“NearShannon Limit Error-Correction Coding and DecodingTurbo-Codes(1)(近香农极限纠错编码与解码快速码(1)”))。
尽管本实施例中假设采用零比特作为插入比特,但仍可能采用编码比特或接收机预定的数据比特。
第四实施例如对第一至第三实施例的描述,比特插入是在发信机与接收机之间的事先约定下进行的。亦即,在预先知道比特插入位置的情况下,发信机在信道编码前,在帧数据中预定的比特插入位置插入特定比特,接收机对接收到的信道编码码元进行解码。所以,接收机在解码过程中利用关于比特插入位置的信息,可以提高其解码的性能。在本实施例中,具有特定值的码元被插入在比特插入位置,以提高信道解码的性能。此外,当在比特插入位置插入码元之后,在每次迭代解码过程中,将位于比特插入位置的码元置数为特定值,以进行信道解码。对从其操作与多路复用器的操作相反的多路分解器输出的码元按以下解码处理来进行解码。在这里,多路分解器多路分解接收到的信道编码码元,以产生数据码元Xk、第一奇偶校验码元Y1k和第二奇偶校验码元Y2k。
图14表示解码器,用于对从依照第一至第三实施例的编码器发送的信道编码码元进行解码。为了简化,图14未示出用于多路分解接收到的信道编码码元的多路分解器。
参见图14,码元插入器1411接收多路分解的数据码元Xk。对于位于非比特插入位置的码元,码元插入器1411原样输出接收到的码元给软判决解码器1422;另外,对于位于比特插入位置的码元,码元插入器1411选择由内部码元发生器产生的具有特定值的码元,并将选择的码元输出给软判决解码器1422。亦即,码元插入器1411在表4所示的插入了特定比特的位置,插入内部产生的具有特定值的码元,并且在原始数据码元位置原样输出接收到的数据码元。这里,由于特定比特的插入位置已预先在发信机和接收机之间确定,接收机预先知道数据码元的特定比特插入位置。码元置数器1415接收从去交织器1433反馈的码元,以进行迭代解码。码元置数器1415将位于比特位置的码元置数成特定值,并原样输出其他码元。开关1442根据开关位置,选择从码元插入器1411或从码元置数器1415输出的码元。更具体地讲,当接收到数据码元Xk时,开关1442选择码元插入器1411的输出,否则选择码元置数器1415的输出。软判决解码器1422接收从开关1422输出的码元和从多路分解器输出的第一奇偶校验码元Y1k,并对接收到的码元进行软判决解码。这里,软判决解码器1422的输出值变成附加信息。
交织器1431对软判决解码器1422的输出进行交织。码元置数器1413从交织器1431接收交织的解码数据,将位于比特位置的码元置数成特定值(如,-5),否则原样输出非比特插入位置的码元。软判决解码器1424对码元置数器1413的输出和第二奇偶校验比特Y2k进行解码。
开关1444将从软判决解码器1424输出的解码数据切换到去交织器1433或硬判决部件1437。去交织器1433对从软判决解码器1424输出的解码数据去交织,并将去交织数据反馈给码元置数器1415。硬判决部件1437对从开关1444输出的解码数据进行硬判决。去交织器1435对硬判决部件1437的输出进行去交织。
软判决解码器1422和1424均可由支路编码器来构成,详细公开于ClaudeBerrou,Alain Glavieux和Punya Thitmajshima的“Near Shannon Limit Error-Correction Coding and DecodingTurbo-Codes(l)(近香农极限纠错编码与解码快速码(1)”)和授予Berrou的美国专利No.5,446,747。
码元插入器1411可以有与图4的比特插入器310相同的结构。
图15表示码元置数器1413和1415,其中,码元发生器1502产生具有特定码元值的码元,用于增加插入比特的可靠性。在此实施例中,假设特定码元值是-5。开关1504在特定比特插入位置切换,以选择码元发生器1502的输出,并在其他码元位置选择输入码元。另外,当接收第一个码元数据时,开关1442将码元插入器1411连接到软判决解码器1422,并在迭代解码过程中,将码元置数器1415连接到软判决解码器1422。另外,在迭代解码过程中,开关1444将软判决解码器1424连接到去交织器1433,并当迭代解码完成时,将软判决解码器1424连接到硬判决解码器1437。
在操作中,当其值为+1或-1的信道编码码元Xk、Y1k和Y2k被输入到信道解码器时,码元插入器1411接收数据码元Xk,在信道解码过程中,在被穿孔的比特插入位置插入特定值(如,-5)。在本实施例中,假设特定值为倾向于-1的-5,并且将具有特定值的码元插入在插入位置。此时,开关1442将码元插入器1411连接到软判决解码器1422。亦即,在数据码元输入期间,开关1442将码元插入器1411的输出端连接到软判决解码器1422,在迭代解码期间,将码元置数器1415的输出端连接到软判决解码器1422。码元插入器1411然后分析接收到的数据码元,以输出在特定的比特插入位置具有特定值(如-5)的内部产生的码元,并输出在没有特定比特插入的其他位置的数据码元Xk。软判决解码器1422对数据码元Xk和第一奇偶校验码元Y1k进行解码,计算码元的数据比特在编码之前是0的概率与数据比特是1的概率之比,并基于计算值输出作为解码码元的数据码元Xk的纠正值。
从软判决解码器1422输出的码元由去交织器1431进行去交织,然后加到码元置数器1413。当由软判决解码器1422解码的位于插入位置的码元具有从-5趋向于-1(如-3.1)的值时,码元置数器1413就恢复其值到-5。
参见图15,当接收码元时,码元置数器1413的开关1504将交织器的输出端连接到软判决解码器1424,以原样输出输入的码元。与此同时,在一穿孔位置,开关1504被切换到码元发生器1502。此时,码元发生器1502产生值-5,经开关1504输出。此后,码元置数器1413的开关1504再次将交织器1413连接到软判决解码器1424,以原样输出输入的码元。在这些位于插入位置的码元被码元置数器1413置数成-5以后,输出的码元与第二奇偶校验比特Y2k一起由软判决解码器1424进行软判决解码。
软判决解码器1424的操作与软判决解码器1422的操作基本相同,除了输入码元序列的不同。此时,开关1444将软判决解码器1424连接到去交织器1433,以输出由软判决解码器1424解码的码元作为去交织器1433的输入。去交织器1433然后对输入的解码数据进行去交织,并反馈去交织数据给码元置数器1415,由其将去交织器1433输出的输出码元中位于插入位置的码元再次置数成-5。码元置数器1415将位于插入位置的码元置数,其具有与码元置数器1413基本相同的操作,除了反馈码元序列不同以外。此时,开关1442将码元置数器1415连接到软判决解码器1422,以将置数的码元输入到软判决解码器1422,以重复上述的操作。
将以上操作重复预定次数后,当解码码元从软判决解码器1424输出时,开关1444将软判决解码器1424连接到硬判决部件1437。解码码元由硬判决部件1437判决为值1和0,并由去交织器1435进行去交织,以作为解码比特输出。
图16表示本发明另一实施例的解码器。可以看出,此解码器具有与图14中的解码器基本相同的结构,除了交织器1431与码元置数器1413的顺序不同以外。
尽管本发明是参照其特定的优选实施例来描述的,但本领域的技术人员应该理解,在不脱离由所附权利要求限定的本发明的精神和范围的情况下,可以对其进行形式和细节的各种修改。
权利要求
1.一种用于接收机的信道解码装置,所述接收机接收通过在一帧数据中的预定位置插入至少一个特定比特而编码的码元,所述信道解码装置包括接收码元的码元插入器,用于在预定的特定比特插入位置插入具有特定值的码元,并输出接收到的其他位置的码元;以及解码器,用于对从所述码元插入器输出的码元进行解码。
2.如权利要求1所述的信道解码装置,其中,所述特定比特插入位置在信道解码时在帧中有较高的差错概率。
3.如权利要求1所述的信道解码装置,其中,所述解码器是软判决解码器。
4.如权利要求3所述的信道解码装置,其中,相应码元的特定值倾向于相应的符号。
5.一种用于接收机的信道解码装置,所述接收机接收通过在一帧数据中的预定位置插入至少一个特定比特而编码的码元,所述信道解码装置包括接收码元的多路分解器,用于将接收到的码元多路分解为数据码元、第一奇偶校验码元和第二奇偶校验码元;码元插入器,用于在数据码元中预定的特定比特插入位置插入具有特定值的码元,并输出接收到的其他位置的码元;第一解码器,用于对从所述码元插入器输出的数据码元和第一奇偶校验码元进行软判决,以产生第一解码码元;第一交织器,用于对所述第一解码器的输出进行交织;第二解码器,用于对从所述第一交织器输出的第一解码码元和第二奇偶校验码元进行软判决,以产生第二解码码元;硬判决部件,用于对第二解码码元进行硬判决;以及第一反交织器,用于对所述硬判决部件的输出进行去交织。
6.如权利要求5所述的信道解码装置,还包括第一码元置数器,用于在迭代解码期间将位于由所述码元插入器插入了具有特定值的码元的位置的相应码元置数成特定值;第一选择器,连接到所述码元插入器和所述第一码元置数器,用于当接收数据码元时选择所述码元插入器的输出,并且在迭代解码期间,选择所述第一码元置数器的输出,以输出选择值到所述第一解码器;第二去交织器,用于在迭代解码期间对第二解码码元进行去交织,以将去交织的数据反馈给所述第一码元置数器;以及第二选择器,连接到所述第二解码器,用于在迭代解码期间输出所述第二解码器的输出到所述第二去交织器,并在输出数据期间输出所述第二解码器的输出到所述硬判决部件。
7.如权利要求6所述的信道解码装置,还包括第二码元置数器,其连接在所述交织器与所述第二解码器之间,用于将插入了交织的第一解码码元中具有特定值的码元的位置上的相应第一解码码元置数成特定值。
8.如权利要求6所述的信道解码装置,还包括第二码元置数器,其连接在所述第一解码器与所述交织器之间,用于将插入了交织的第一解码码元中具有特定值的码元的位置上的相应第一解码码元置数成特定值。
9.如权利要求6所述的信道解码装置,其中,所述特定比特插入位置在信道解码期间在一帧中有较高差错概率。
10.一种用于接收机的信道解码方法,所述接收机用于接收通过在一帧数据中的预定位置插入至少一个特定比特而编码的码元,所述信道解码此方法包括下列步骤接收码元,在预定的特定比特插入位置插入具有特定值的码元,并输出接收到的其他位置的码元;以及应用插入的具有特定值的码元对接收到的码元进行解码。
11.一种用于接收机的信道解码方法,所述接收机用于接收通过在一帧数据中的预定位置插入至少一个特定比特而编码的码元,所述信道解码方法包含下列步骤a)接收码元,并将接收到的码元多路分解为数据码元、第一奇偶校验码元和第二奇偶校验码元;b)在数据码元中预定的特定比特插入位置插入具有特定值的码元,并输出接收到的其他位置的码元;c)对其中插入了具有特定值的码元的数据码元及第一奇偶校验码元进行软判决,以产生第一解码码元;d)对第一解码码元进行交织;e)对交织的第一解码码元与第二奇偶校验码元进行软判决,以产生第二解码码元;f)对第二解码码元进行去交织;g)在一插入位置将去交织的第二解码码元中的相应码元置数成特定值,并符号到步骤c),以重复步骤c)至e);h)当步骤c)至e)完成时,对第二解码数据进行硬判决;以及l)对硬判决处理过的第二解码码元去交织。
12.一种用于接收机的信道解码方法,所述接收机用于接收通过在一帧数据中的预定位置插入至少一个特定比特而编码的码元,所述信道解码方法包括下列步骤a)接收码元,在预定的特定比特插入位置插入具有特定值的码元,并输出接收到的其他位置的码元;b)采用插入的具有特定值码元对接收到的码元进行解码;c)在迭代解码期间反馈解码码元,将在反馈码元的插入码元置数成特定值,并重复步骤b);以及d)当步骤b)完成时,输出解码数据。
全文摘要
一种用于接收机的信道解码装置,该接收机接收通过在一帧数据中的预定位置插入至少一个特定比特而编码的码元。在此信道解码装置中,码元插入器接收码元,在预定的特定比特插入位置插入具有特定值的码元,并输出接收到的其他位置的码元。解码器对从码元插入器输出的码元进行解码。
文档编号H04L1/00GK1274485SQ99801298
公开日2000年11月22日 申请日期1999年8月6日 优先权日1998年8月6日
发明者金宰烈, 朴昌洙, 姜熙原, 孔骏镇, 卢宗善, 梁景喆 申请人:三星电子株式会社