CN1306698A - 移动通信系统中用于串行链接卷积码编码器中的交错装置和方法 - Google Patents
移动通信系统中用于串行链接卷积码编码器中的交错装置和方法 Download PDFInfo
- Publication number
- CN1306698A CN1306698A CN00800928A CN00800928A CN1306698A CN 1306698 A CN1306698 A CN 1306698A CN 00800928 A CN00800928 A CN 00800928A CN 00800928 A CN00800928 A CN 00800928A CN 1306698 A CN1306698 A CN 1306698A
- Authority
- CN
- China
- Prior art keywords
- row
- address
- interleaver
- encoder
- code
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2771—Internal interleaver for turbo codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2703—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2703—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
- H03M13/271—Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2742—Irregular interleaver wherein the permutation pattern is not obtained by a computation rule, e.g. interleaver based on random generators
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/276—Interleaving address generation
- H03M13/2764—Circuits therefore
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
公开了一种用于串行链接卷积码(SCCC)编码器的交错器。该交错器具有带m行组和n列组的存储器,和该存储器在各个组中存储串行输入码元。该交错器随机选择m个行组之一,然后随机选择在所选行中的位置之一,最后输出存储在所选行中的所选位置上的码元,以便产生交错码元。该SCCC编码器包括用于编码来自交错器的交错码元的分编码器。该分编码器具有被编码的码的有效自由距离。当串行输入码元的数量是k时,选择存储器中的m行组和n列组,使得m×n≥k,并且m大于有效自由距离。
Description
发明背景
1.发明领域
本发明一般涉及移动通信系统中的编码/解码装置,更具体地,涉及用于利用串行链接卷积码(SCCC)的编码器的交错装置和方法。
2.相关技术的描述
一般来说,W-CDMA(宽带码分多址)或CDMA-2000通信系统要求从10-4到10-6范围的低位差错率(BER)的数据发送,并且要求在卫星系统数据传输中信噪比相对低的情况下具有高数据可靠性。为了满足这些要求,多数移动通信系统利用用于前向纠错的并行链接卷积码(PCCC)或涡式(turbo)码编码和解码将通过有线或无线链路传输的数字信息,。与现有的卷积码比较,利用PCCC已经改善了性能,并且尤其当SNR低时具有卓越的性能。因此,PCCC已经被采用为IMT-2000系统中数据通信的FEC技术,并且是一个活跃的研究课题。
在接收机中PCCC的性能是按照SISO(软进-软出)叠代解码确定的,并且利用PCCC的编码器(下文称为PCCC编码器)具有取决于两个并行连接的分编码器和连接在它们之间的涡式交错器的特性。分编码器共同使用一个递归系统码(RSC)。与现有的卷积码比较,PCCC具有较长的自由距离dfree。
另一方面,通过直接连接两个或多个纠错码获得的纠错码已经典型地被用于要求非常低BER的系统中。例如,临时的UMTS(通用移动电信系统)标准规范了串行链接卷积码的(SCCC)应当使用在BER低于10-7的场合。
图1表示利用SCCC的编码装置(下文称为SCCC编码器)的结构。具体地,图1表示各分编码器具有4个状态的4状态SCCC编码器。
参照图1,SCCC编码器包括两个分编码器10和40、和串联在它们之间的交错器30。SCCC编码器的性能取决于分编码器10和40的性能和内部交错器30的特性。如果分编码器被设置为PCCC编码器,SCCC编码器的自由距离dfree将取决于内部交错器30的特性。结果,内部交错器30的特性将确定整个SCCC编码器的性能。即,如果分编码器10和40已确定,则交错器30变为确定整个系统性能的唯一因素。
在图1中,外部编码器10编码输入信息数据U0和多路复用器50按照将两个输入比特流变换为一个串行比特流的方式变换外部编码器10的输出。而后,收缩器20接收多路复用器50的输出,产生2/3速率的外部码C0。产生的外部码C0通过SCCC交错器30作为Ui提供给内部编码器40。1/2速率的内部编码器40编码Ui产生Ci,多路复用器60按照将两个输入比特流变换为一个串行比特流的方式变换Ci,并且将其输出发送到信道上。
习惯上,仅块交错器或PN(伪噪声)交错器被用作SCCC编码器的交错器,假设SCCC编码器的性能很小依赖于交错器的性能。即,假设如果对于后级编码器而言,前级码的距离和随机性可以保证,则性能也将可以保证。但是,为了优化由两个级联编码器组成的SCCC编码器的性能,随机特性和距离特性两者都应当予以适当考虑。然而,这样一些性能习惯上被忽视了。换言之,忽视了如下事实,如果在发送随机码码元的同时保持编码码元的距离,则连续产生的差错在外部解码器可以被全部纠正。
因此,为了优化SCCC编码器的性能,需要设计满足距离特性和随机特性的SCCC编码器。
发明概要
因此,本发明的一个目的是提供一种优化SCCC编码器性能的SCCC交错装置和方法。
本发明的另一个目的是提供一种满足分编码器中距离特性和随机特性两者的SCCC交错器装置和方法。
本发明的再一个目的是提供一种在满足分编码器中距离特性和随机特性两者的同时保证低复杂性的SCCC交错装置和方法。
为了实现上述和其它的目的,提供一种用于串行链接卷积码(SCCC)编码器的交错器。该SCCC编码器包括具有带m行组和n列组的存储器的交错器,用于在各组中存储串行输入码元,随机地选择m行组和随机地选择存储在所述每个选中行组中码元之一,以便产生被交错的码元;和用于编码来自交错器的被交错的码元的编码器,该编码器具有被编码的码的有效自由距离。当串行输入码元的数目是k时,具有m行组和n列组的存储器包括(m×n≥k)个组,并且m大于有效自由距离。
附图简述
从下面结合附图的详细描述中,本发明的上述和其它的目的、特点和优点将会更加清楚,其中:
图1是说明可应用于本发明的SCCC编码器的示意图;
图2是说明按照本发明一个实施例的SCCC交错器的示意图;
图3是解释SCCC交错器可以通过2-D SCCC交错器实现的示意图;
图4是说明按照本发明一个实施例的2-D SCCC交错器的操作的流程图;
图5A和5B是说明按照将本发明实施例的各种SCCC交错器的性能与常规SCCC交错器的性能相比较的示意图;
图6是说明按照本发明一个实施例的SCCC解码器的示意图;
图7是说明按照本发明一个实施例的O-扩展随机地址发生器的示意图;
图8是说明按照本发明一个实施例的SCCC交错器的示意图;
图9A和9B是说明按照本发明各种实施例的SCCC交错器的示意图;
图10是说明图1的分编码器的格子结构的示意图。
优选实施例的详细描述
下面将参照各附图描述本发明的优选实施例。在下面的描述中,公知的功能或结构不予以详细地描述,因为这些不必要的细节可能会混淆本发明。
图2表示按照本发明实施例的SCCC交错器的结构。这个交错器被用于SCCC编码器的内部交错器。即,上述SCCC交错器实现了连接在分编码器10和40之间的、如图1所示的交错器30。
参照图2,参数创建单元100建立2维矩阵的行和列和根据规定交错器尺寸的其它SCCC交错器参数。例如,当使用PN移位寄存器(PNSR)时,参数创建单元100建立初始籽数(initial seed)和生成多项式。或者,当使用线性递归方程时,参数创建单元100建立一个初始值和一个素数。详细的创建参数表示在将在下面描述的6个实施例中。地址发生器110产生一种交错规则或在每行上的基本随机地址P(r、k)。行选择器120多路复用相应的行(或组)。地址组合器130利用行选择器120的输出组合地址发生器110的输出,产生实际要交错的数据的地址。地址收缩器140收缩超过预置交错器尺寸的无效地址。控制器150控制上述单元。从地址收缩器140输出的地址用作用于交错从图1的第一分编码器10输出的编码数据流的地址,即用作用于读出存储的编码数据码流的地址。
现在,如果确定了交错器尺寸N,则参数创建单元100确定行、列、行选择规则和产生地址的参数。接下来,行选择器120在每个时钟选择一个行r,并且地址发生器110在所选行中产生随机地址P(r、k)。地址组合器130组合具有P(r、k)的r,产生用于实际交错操作的地址。如果产生的地址是无效地址,地址收缩器删除或者收缩该无效地址。重复这种处理直至产生全部N个地址。
现在将对按照本发明一个实施例的SCCC交错器的构成进行描述。首先将说明该新颖SCCC交错器可以由2-D(2维)SCCC交错器实现。接下来,将解释2-D SCCC交错器可以在至少6个实施例中实现。此后将说明该新颖2-D SCCC交错器与常规块交错器或1-D(1维)交错器比较,改善了BER/FER(位差错率/帧差错率)性能。
2-D SCCC交错器
当给定输入数据尺寸时,按照本发明一个实施例的2-D SCCC交错器进行如图3所示的映射。即,当输入数据的尺寸被设置为N时,图3的Row×Col2-D矩阵从左映射到右和从上映射到下。按照行选择规则在每个时钟周期选择一个行,并且按照规定的交错规则在所选的行中逐一地产生地址。一旦选择每行以后,该行选择规则再次用于选择各个行,和规定的交错规则产生所有地址。此刻,Row×Col≥N,并且行数被设置成大于SCCC编码器的内部编码器的有效自由距离dfree。
参照图3,在每行中,按照对应的交错规则产生各地址,并且按照使用在该实施例中的PNSR或线性递归方程的P(r、k)产生随机地址P(r,k)是类地址映射函数(r行中的第k个)这里,从第r行读出的第k个地址变为P(r,k)。行选择操作是基于行多路复用规则或组多路复用规则的。按照这样一些规则,在行时钟内每行仅被选择一次。按照多路复用规则产生每行的随机地址和选择各个行是为了当Row×Col≥N时防止两个或多个无效地址被连续收缩。
如上所述,按照本发明一个实施例的2-D SCCC交错器映射尺寸N的1-D数据为尺寸Row×Col的2-D矩阵,按照行选择规则每个时钟选择一个行,并在所选的行中按照规定的交错规则逐一地产生地址。
现将对按照本发明实施例的2-D SCCC交错器所执行的操作作出一般描述。
在第一步骤,创建对应于交错器尺寸N的参数,包括行、列、交错规则P(r,k)和P(r,k)类型的参数。这个处理是由图2的参数创建单元100执行的。
在第二步骤,按每个时钟选择一个行并在所选的行中利用P(r,k)产生各个地址。这个处理可以分为行多路复用、地址产生和地址组合。行多路复用操作是由图2的行选择器120执行的,地址产生操作是由地址发生器110执行的和地址组合操作是由地址组合器130执行的。
在第三步骤,检查所产生的地址是否是有效地址。如果是无效地址,该地址不予输出。否则,输出该地址作为读出地址。这个处理被称为“地址收缩”,并且是由图2的地址收缩器140执行的。在读出地址被输出以后,在下一个时钟执行第二和第三步骤。作为参考,“地址收缩”可以被分类为在产生地址以后执行收缩的显式地址收缩,和先检测和删除无效地址的隐式地址收缩。至于这两种方法之间的差别,前一方法利用一个时钟,和后一方法不利用时钟删除无效地址。从概念上,显式地址收缩相同于隐式地址收缩,但在实现上它们是不同的。
第一、第二和第三步骤都由图2的控制器150按照如图4所示的程序进行控制。
图4是说明由按照本发明的2-D SCCC交错器进行操作的流程图。
在图4中,步骤410对应于第一步骤,步骤420、430和440对应于第二步骤;和步骤450和460对应于第三步骤。在步骤470中,确定N个地址是否全都输出。如果N个地址不全都输出,在步骤480,将k加1产生另外的地址。
参照图4,在步骤410,参数创建单元100建立对应于规定交错器尺寸N,即行数和列数以及交错规则P(r,k)的各个参数。可以按照交错规则P(r,k)的类型,不同地创建各个参数。在步骤420,行选择器120每个时钟选择一个行。在步骤430,按照交错规则P(r,k)地址发生器110在所选的行中产生随机地址。在步骤440,地址组合器130利用行选择器120的输出组合地址发生器110的输出以产生输出地址。这里,地址组合器130可以将行选择器120的输出作为高比特和将地址发生器110的输出作为低比特组合在一起,产生输出地址。在步骤450,地址收缩器140确定产生的地址是否是有效地址。如果产生的地址子是有效地址,即如果产生的输出地址小于交错器尺寸N,在步骤460,地址收缩器140按原样输出产生的输出地址。此后,在步骤470,通过比较交错器尺寸N与值k,确定N个地址是否都已输出。如果N个地址不都已输出,在步骤480,将值k加1产生另外的地址。此后,程序返回到步骤420。步骤470和480是由控制器140执行的。
否则,如果产生的输出地址是无效地址,即如果产生的输出地址不小于交错器尺寸N,地址收缩器140不输出产生的输出地址。即,当产生的地址不是有效地址时,跳过步骤460到480并程序返回到步骤420。
2-D SCCC交错器特性
按照本发明优选实施例的交错器是通过2-D SCCC交错器实现的。现在将作出2-D SCCC交错器如何对包含由于噪声产生的差错分量的数据执行纠错的描述。即,将对按照本发明优选实施例的2-D SCCC交错器可以更有效地执行纠错的事实作出描述。其中,为了方便起见,将参照具有4行和8列的4×8交错器进行描述。因此,假设不要求对无效地址进行收缩。另外,假设正确发送的码元是零(0)矢量,因此,‘0’指示正常发送的码元,和‘1’指示产生了码元差错。
图6表示按照本发明实施例的SCCC解码器的结构。该解码器包括SISO内部解码器610、SISO外部解码器640、SCCC交错器630和SCCC去交错器620。这里,解码按内部解码和外部解码的次序反复地进行。
参照图6,当第二参数为I时,在SISO内部解码器610的输入和输出口上的λ(Ci,I)和,λ(Ci,O)指示无约束LLR(对数似然比,Log LikelihoodRatio),和当第二参数为0时,指示码约束LLR。另外,第一参数U指示编码器的信息码元和第一参数C指示一个码元。再者,上标‘o’指示外部编码器和上标‘i’指示内部编码器。
SISO内部解码器610解码从软解调器(未示出)接收的软输入和在SISO外部解码器640的解码处理中获得的非本征信息λ(Ui,I),产生用于解码后面SISO外部解码器640的新LLR,并提供产生的新LLR给去交错器620。这里,λ(Ui,I)被初始设置为零(0)和由去交错器620输出的λ(Co,I)被SISO外部解码器640解码,输出作为改进LLR的λ(Uo,0)和λ(Co,0)。λ(Uo,0)用作判决信息数据的输出值DECISION,和将λ(Co,0)提供给SCCC交错器630,用于连续迭代解码和按原始顺序重排。
下面表1表示图6的SCCC内部解码器610的解码结果,其中‘1’的位置指示纠错失败位置。一种优选的迭代规则应当这样确定,即通过交错表1所示的连续产生的差错,使输入的数据分散在dfree范围内,使得后面的外部解码器640可以容易地纠正产生的差错。这涉及到来自内部解码后传输的突发差错。
[表1]
写→ | ||||||||||
读↓ | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 |
在表1中,从左到右是在交错存储器(现在表示的,但包括在图6的交错器630中)中写入数据的方向,和从上到下是读出存储在交错存储器中的数据的方向。参照表1,注意到,数据流已经连续产生了差错‘11111’、‘111’和‘11’。为了纠正包含在数据中的这些差错,按照本发明实施例的2-D SCCC交错器按如下面表2所示应用交错规则到每行。
参照表2,{0、5、7、6、8、4、2、1、3、9}的交错规则应用到第1行,{1、9、3、6、5、2、7、4、0、8}的交错规则应用到第2行,{7、6、0、5、2、9、4、1、8、3}的交错规则应用到第3行,{4、8、1、5、7、0、6、3、9、2}的交错规则应用到第4行。表2每列中的数字或行内的位置指示要从该行读出的数据的次序。例如,在第1行中的第1读出数据是在第1列中的数据位置‘0’,和在该行中的第2读出数据是第8列中的数据位置‘1’。一个数据位置是在一个时钟周期从一行读出的,和一个数据位置是在下一个时钟周期从下一行读出的。因为每个时钟周期每行只被选择一次,所以每4个时钟在实际给定的行中按顺序读出数据。
[表2]
0 | 5 | 7 | 6 | 8 | 4 | 2 | 1 | 3 | 9 |
1 | 9 | 3 | 6 | 5 | 2 | 7 | 4 | 0 | 8 |
7 | 6 | 0 | 5 | 2 | 9 | 4 | 1 | 8 | 3 |
4 | 8 | 1 | 5 | 7 | 0 | 6 | 3 | 9 | 2 |
另外,按照本发明实施例的2-D SCCC交错器应用行(或组)多路复用(或选择)规则。假设行选择规则是比特反向行多路复用规则={0、2、1、3}。这里,“比特反向行多路复用规则”涉及反向每行的二进制比特值并按产生的比特反向值的次序选择各行。即,4行的二进制值具有{00、01、10、11}={0、1、2、3}的顺序,和在反向二进制值后产生的次序是{00、01、10、11}={0、2、1、3}。结果,各行按{0、2、1、3}的次序进行选择。
通过按照上述比特反向多路复用规则选择行并对选择的行应用唯一的交错规则,差错样式可以被改变为如下面表3所示。
[表3]
0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 |
0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 1 |
0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
在应用上述交错规则的表3中,通过按行多路复用规则(即,{0、2、1、3})选择行和按用于该行的交错规则选择每行中的位置,获得第1行的前4个比特0、1、0、0(第一列到第四列)。
(例如,对于第1行-0行的{0、5、7、6、8、4、2、1、3、9},如表2所示)。应当记得在表1中“0”和“1”值分别代表无差错数据和有差错数据。
按照表3的例子,在图3中的第1行、第1位置或列入口(“0”)将来自表1的第1行(按照行多路复用规则,行0)和第1位置(按照表2的“0”位置-交错规则)。表3中的第1行、第2位置或列入口是来自表1的第3行(按照行多路复用规则,行2)和第3位置(按照表2的第3行中“0”定位)。表3中的第1行、第3位置或列入口是来自表1的第2行(按照行多路复用规则,行1)和第9位置(按照表2的第2行中“0”的定位)。表3的第一行、第4位置或列入口是来自表1的第4行(按照行多路复用规则,行3)和第6位置(按照表2的第4行中“0”的定位)。结果,表3的前4个值是:0、1、0、0。
得到这些前4个值以后,行多路复用规则{0、2、1、3}重新开始。但是,在这种迭代中,数据的位置是由表2中的“1”的定位确定的。在表3中的下一个入口(第1行、第5列或位置)(“1”)是来自表1的第一行(按照行多路复用规则,行0)和第8位置(按照表2的第1行中“1”的定位)。表3的第1行、第6位置或者列入口是来自表1的第3行(按照行多路复用规则,行2)和第8位置(按照表2的第3行中“1”的定位)。表3的第1行、第7位置或列入口是来自表1的第2行(按照行多路复用规则,行1)和第1位置(按照表2的第2行中“1”的定位)。表3的第1行、第8位置或列入口是来自表1的第4行(按照行多路复用规则,行3)和第3位置(按照表2的第4行中“1”的定位)。结果,表3的第1行的第5到第8列的4个比特:1、0、0、0。
得到这4个值以后,再次重复行多路复用规则{0、2、1、3},但是现在数据的位置是由表2中的“2”定位确定的。表3的第9个入口(第1行、第9列或位置)(“1”)是来自表1的第1行(按照行多路复用规则,行0)和第7位置(按照表2的第1行中“2”的定位)。表3的第1行、第10位置或列入口是来自表1的第3行(按照行多路复用规则,行2)和第5位置(按照表2的第3行中“2”的定位)。表3的第2行、第1位置或列入口是来自表1的第2行(按照行多路复用规则,行1)和第6位置(按照表2的第2行中“2”的定位)。表3的第2行、第2位置或列入口是来自表1的第4行(按照行多路复用规则,行3)和第10位置(按照表2的第4行中“2”的定位)。结果,表3中的第1行的第9到第10列和第2行的第1和第2列的4个比特是1、0、0、0。
按同样方法,通过表2中“3”的定位确定的数据的位置得到下面4个值。表3的第2行、第3位置入口(”1”)是来自表1的第2行(行0)和第9位置(按照表2的第1行中“3”的定位)。表3的第2行、第4位置入口是来自表1的第3行(行2)和第10位置(按照表2的第3行中“3”的定位)。表3的第2行、第5位置入口是来自表1的第2行(行1)和第3位置(按照表2的第2行中“3”的定位)。表3的第2行、第6位置入口是来自表1的第4行(行3)和第8位置(按照表2的第4行中“3”的定位)。结果,表3的第2行的第3到第6列的4个比特是1、0、0、0。
因此,重复这种样式。下面的值是通过表2的4行中“4”的定位确定的。表3中的第2行、第7位置入口(“1”)是来自表1的第1行(行0)和第6位置。表3中的第2行、第8位置入口是来自表1的第3行(行2)和第7位置。表3中的第2行、第9位置入口是来自表1的第2行(行1)和第8位置。表3中的第2行、第10位置入口是来自表1的第4行(行3)和第1位置。结果,表3的第2行第7到第10列的4个比特是1、0、0、0。下面的值是通过表2的4行中“5”的定位确定的。表3中的第3行、第1位置入口是来自表1的第1行(行0)和第2位置。表3中的第3行、第2位置入口是来自表1的第3行(行2)和第4位置。表3中的第3行、第3位置入口是来自表1的第2行(行1)和第5位置。表3中的第3行、第4位置入口是来自表1的第4行(行3)和第4位置。结果,表3的第3行第1到第4列的4个比特是0、0、0、1。
下面的值是通过表2的4行中“6”的定位确定的。表3中的第3行、第5位置入口(“0”)是来自表1的第1行(行0)和第4位置。表3中的第3行、第6位置入口是来自表1的第3行(行2)和第2位置。表3中的第3行、第7位置入口是来自表1的第2行(行1)和第4位置。表3中的第3行、第8位置入口是来自表1的第4行(行3)和第7位置。结果,表3的第3行第5到第8列的4个比特是0、1、0、0。下面的值是通过表2的4行中“7”的定位确定的。表3中的第3行、第9位置入口(“0”)是来自表1的第1行(行0)和第3位置。表3中的第3行、第10位置入口是来自表1的第3行(行2)和第1位置。表3中的第4行、第1位置入口是来自表1的第2行(行1)和第7位置。表3中的第4行、第2位置入口是来自表1的第4行(行1)和第5位置。结果,表3的第3行第9到第10列和第4行的第1和第2列的4个比特是0、1、0、1。
下面的值是通过表2的4行中“8”的定位确定的。表3中的第4行、第3位置入口(“0”)是来自表1的第1行(行0)和第5位置。表3中的第4行、第4位置入口是来自表1的第3行(行2)和第9位置。表3中的第4行、第5位置入口是来自表1的第2行(行1)和第10位置。表3中的第4行、第6位置入口是来自表1的第4行(行3)和第2位置。结果,表3的第4行第3到第6列的4个比特是0、0、0、0。下面的值是通过表2的4行中“9”的定位确定的。表3中的第4行、第7位置入口(“1”)是来自表1的第1行(行0)和第10位置。表3中的第4行、第8位置入口是来自表1的第1行(行2)和第6位置。表3中的第4行、第9位置入口是来自表1的第2行(行1)和第2位置。表3中的第4行、第10位置入口是来自表1的第4行(行3)和第9位置。结果,表3的第4行第7到第10列的4个比特是1、0、0、0。
当如表3所示的差错样式与如表1所示的交错前的差错样式比较时,连续产生的差错将被按照本发明一个实施例的2-D SCCC交错器很好地分散开。这是为了通过保持4的行数,而让交错后相邻比特之间的距离大于4。分散开的差错将使外部解码器纠错的概率增加。
总而言之,按照本发明实施例的交错器利用2-D SCCC交错器获得距离特性,并且在每行中产生随机地址,以在每行中保持随机特性。
行多路复用
如上所述,按照本发明实施例的2-D SCCC交错器根据行多路复用规则或组多路复用规则选择行,以保持交错后相邻比特之间的距离。即,2-D SCCC交错器利用该规则执行行多路复用,以便保持恒定的距离,而不是顺序地选择行。这种行多路复用规则可以应用到行数可以按2的幂表达的情况,以及行数不能按2的幂表达的情况。
1.行数是2的幂的情况
当行数是28(这是2的幂)时,所有行的二进制值被比特反向和然后各个行按比特反向值的次序进行选择,如下表4所示。即,当第0到第7行的二进制值{000、001、010、011、100、101、110、111}被比特反向时,结果是{000、100、010、110、001、101、011、111}={0、4、2、6、1、5、3、7}。因此,如表4所示各个行按{0、4、2、6、1、5、3、7}的次序进行选择。
[表4]
行指数 | 二进制 | 比特反向二进制 | 选择的行指数 |
0 | 000 | 000 | 0 |
1 | 001 | 100 | 4 |
2 | 010 | 010 | 2 |
3 | 011 | 110 | 6 |
4 | 100 | 001 | 1 |
5 | 101 | 101 | 5 |
6 | 110 | 011 | 3 |
7 | 111 | 111 | 7 |
2.行数不是2的幂的情况
在这种情况下可以使用两种方法。第一种方法是,当行数不是按2的幂表示时,利用查表法。例如,当行数是7时,可以制成查用表,以便各个行应该按{0、4、1、5、2、6、3}的次序选择。
第二种方法是,当行数不是按2的幂表示时,利用比特反向多路复用。在这种方法中,比特反向多路复用是利用既是2的幂又大于或等于行数的数中的最小值的数进行的,当产生此列表时,删除不存在的行。例如,当行数是7时,既是2的幂又大于或等于行数的数中的最小值的数是8。然后,仿佛行数是8那样,执行比特反向,产生{0、4、2、6、1、5、3、7}的行选择次序。现在从中删除不存在的行7,留下{0、4、2、6、1、5、3、}的行选择次序,并且使用这个次序。
选择行数
在设计2-D SCCC交错器过程中选择的行数可以很大程度上影响交错器的整体性能。一般来说,对于交错器尺寸N而言,随着行数接近于sqrt(N)(N的平方根),距离特性趋向于提高,但每行中的随机特性趋向于降低。例如,当将行数设置为相当大值时,利用用于随机地址产生的PN移位寄存器将引起本原多项式的阶次降低。作为另外可选的例子,如果将行数设置为1以便以牺牲距离特性为代价获得随机特性,则等效于产生1-D随机地址的性能。即,因为对行的选择要在距离特性与随机特性之间进行折衷,因此,应当这样选择行数,即使各种特性得到适当平衡,以便提高SCCC交错器的整体性能。
另外,当在接收机中内部解码器不能纠正差错时,SCCC的性能取决于外部(或内部)解码器如何可以有效地纠正剩余的差错。如上所述,如果存在连续产生差错的差错样式,则在适当的距离范围上分散差错样式将会增加外部解码器纠错的概率。因此,如果在交错/去交错以后两个相邻差错比特的距离超过分解码器的自由距离dfree,连续的差错比特基本上可以纠正。
因此,如图1所示,在4-状态SCCC编码器中,因为终结分编码器的dfree大约是5,如果选择为2的幂的8(=23)或16(=24)作为行数,则可以保持距离特性与随机特性之间的最佳平衡。但是,如果行数增加为32,则距离特性将提高,而随机特性将降低。
图10表示图1的分编码器10和40的格子结构。在这种格子结构中,每个括号外部的数表示信息比特,和每个括号内部的数表示一个码字。因为分编码器是一种系统性编码器,信息比特始终与第一码相同。为了确定最佳行数,现在将参照图1和图10对编码器的特征加以说明。
在图1中,因为外部编码器10共同使用RSC,具有最小外部码权重的输入是输入序列…000|101|0000…,该序列从零状态SATE_0开始并返回到零状态。这个输入的外部码是具有权重5的码…000|11011|0000…,并且这个码变为到下级中的内部编码器10的输入序列。即,利用权重2的输入被输入的情况下,内部编码器10的实际dfree不是5,而是当输入样式是在…000|11011|1000…返回到零状态的情况下,…000|1101101|1000…被输入到内部编码器10时确定的值。这里,最后的‘01’是一个保证…000|11011|000…返回到零状态产生的差错。这个差错是由传输信道中的噪声产生的。对应于这样的输入的码是…000|11|10|01|10|11|01|10|000…,并且这个码的权重是9。因此,在内部编码器中各个码之间的有效dfree(或有效最小距离)变为9。这意味着在交错器中行数应该大于9。即,应当注意,当Row>9并使用比特反向行多路复用规则时,最佳行数是16,该数大于9并是2的幂。
下面表5表示当SCCC交错器尺寸具有512和8192之间的值和PN移位寄存器用于产生随机地址时可以确定的参数。
[表5]
N | 行 | 列 | ||||
513-1024 | 8 | 16 | 32 | 128 | 64 | 32 |
1025-2048 | 8 | 16 | 32 | 256 | 128 | 64 |
2049-4096 | 8 | 16 | 32 | 512 | 256 | 128 |
4097-8192 | 8 | 16 | 32 | 1204 | 512 | 256 |
随机地址产生和零-地址扩展
利用PN移位寄存器(PNSR)的方法或利用线性递归方程的方法可以典型地用于在每行中产生随机地址的方法,即,确定随机交错规则P(r,k)的方法。
当利用PNSR时,对于给定的列值、选择对应于该列值的本原多项式,并且对PNSR设置初始籽数值。此时产生的地址利用了PNSR的状态。另外,当利用线性递归方程时,对于给定的列值,设置初始值,然后利用迭代公式产生地址。下面将详细地描述这两个实施例。在这两个实施例中,因为P(r,k)不共同产生‘0’地址,所以对给定随机序列扩展‘0’地址,以利用0-扩展随机序列。即,按预定时间,例如,在每行的第一时钟周期,有必要选择第0地址。这样,可以访问每行中的每一个地址。
图7表示按照本发明一个实施例的0-扩展随机地址发生器。
参照图7,零(0)地址选择器(或多路复用器)720按照选择信号的(0/1)值选择一个‘0’地址和随机地址发生器710的输出。因此,从多路复用器720输出的随机地址包括‘0’地址。在图7中,对每一行‘0’地址应当只选择一次。
1.利用PNSR的随机地址产生
可以利用一个或两个PNSR,或可以利用该PNSR达行数那么多次。即,对每行可以利用一个或两个PNSR产生随机地址。或者,对每行可以利用配置成行数那么多的PNSR产生随机地址。
实施例1:一个PNSR用于交错所有行
在实施例1中,利用一个PNSR产生所有地址。利用该PNSR的一个状态获得一个地址。在这种情况下,在PNSR的一个时段完成以后,虽然地址产生样式变得相同,但是,因为要选择的行已经改变,所以绝对地址改变了。
例如,当交错器尺寸为N=1024时,可以按如下方式确定各个行、各个列、PNSR的尺寸MPNSR、和行多路复用规则。
Rows(行)=16[0、1、2、…、15]
Columns(列)=64
MPNSR=6(本原多项式的阶次)
Row multiplexing rule(行多路复用规则)={0、8、4、12、2、10、6、14、1、9、5、13、3、11、7、15}
实施例2:利用两个不同的PNSR
在实施例2中,第一PNSR,PNSRe用于偶数行(0、2、4、6、8、10、12、14、…)和第二PNSR,PNSRo用于奇数行(1、3、5、7、9、11、13、15、…)。这是利用具有不同特性的两个PN序列改善随机特性。
例如,当交错器尺寸是N=1024时,可以按如下方式确定各个行、各个列、PNSR的尺寸MPNSRe和MPNSRo以及行多路复用规则。
Rows(行)=16[0、1、2、…、15]
Columns(列)=64
MPNSRe=6(偶数本原多项式的阶次)
MPNSRo=6(奇数本原多项式的阶次)
Row multiplexing rule(行多路复用规则)={0、8、4、12、2、10、6、14、1、9、5、13、3、11、7、15}
实施例3:不同的PNSR用于每行
实施例3对应于规格化的实施例2,并且在这个实施例中,不同的PNSR用于每行,以便改善随机特性。因为每行具有独立的PNSR,与实施例1比较,实施例3利用了((行数)-1)那么多的PNSR。因此,与实施例1比较,实施例3的复杂性增加了。
2.利用线性递归方程的随机地址产生
实施例4
在这个实施例中,与实施例1一样,仅利用一个线性递归方程。可以利用诸如c(j)=[c(j-1)*p]%Row的线性递归方程。此处,Row和p都是素数。这里,c(j)表示在每行中在每个时钟上产生的地址,c(0)的值是在参数初始化处理过程中建立的。
实施例5
在这个实施例中,与实施例2一样,利用两个不同的线性递归方程。即,根据偶数行和奇数行,可以有选择地利用下面两个方程之一。例如,ce(j)=[c(j-1)*p]%Row可以用在偶数行上,和co(j)=[c(j-1)*q]%Row可以用在奇数行上。此处,Row、p和q都是素数。与实施例4一样,ce(0)和ce(0)的值是在参数初始化处理过程中建立的。
实施例6
在这个实施例中,与实施例3一样,每行利用不同的线性递归方程。
图8表示本发明上面讨论的实施例的规格化方案。
参照图8,该方案包括R随机地址发生器800-803、行多路复用地址发生器810、控制块830、用于按照控制块830的输出信号选择随机地址发生器之一的选择器820和用于组合从所选随机地址发生器输出的地址与行多路复用地址以产生该数据的实际地址的地址组合块840。
在操作中,,行多路复用地址发生器810在每个时钟周期产生一个行地址‘r’,和控制块830控制选择器820,利用关于每个行地址r的行选择控制函数f(r)选择R随机地址发生器801-803之一。地址组合块840组合通过选择器820选择的随机地址与行地址值‘r’,输出该数据的地址。此刻,地址组合块840组合作为高比特的m-比特行地址与作为低比特的n比特随机地址,产生(m+n)-比特输出地址。
在实施例1和4中,f(r)=常数,意味着仅利用一个随机地址发生器。可应用到这些实施例中的交错器如图9A所示。
参照图9A,行多路复用地址发生器912在每个时钟产生m-比特行地址‘r’。随机地址发生器910按照对每行同等设置的一种规则,产生n-比特随机地址。地址组合块840组合作为高比特的由行多路复用地址发生器912产生的m-比特行地址‘r’与作为低比特的由随机地址发生器910产生的n-比特随机地址,以便产生(m+n)-比特输出地址。
在实施例2和5中,f(r)=r%2和可应用到这些实施例中的交错器如图9B所示。这里,‘f(r)=r%2’表示模2运算,即,计算r除以2以后所得的余数。
参照图9B,行多路复用地址发生器924在每个时钟周期产生m-比特行地址。偶数行随机地址发生器920按照对每个偶数行同等设置的规则产生n-比特随机地址。奇数行随机地址发生器922按照对每个奇数行同等设置规则产生的n-比特随机地址。控制块928响应由行多路复用地址发生器924产生的行地址值进行行f(r)=r%2运算,并按照该运算的结果控制多路复用器(或选择器)926。在控制块928的控制下,多路复用器926有选择地输出由偶数行随机地址发生器920和奇数行随机地址发生器922产生的随机地址。即,多路复用器926输出由偶数行随机地址发生器920为偶数行产生的随机地址,和输出由奇数行随机地址发生器922为奇数行产生的随机地址。地址组合块840将由行多路复用地址发生器924产生的m-比特行地址作为高比特与由多路复用器926选择的n-比特随机地址作为低比特,产生(m+n)比特输出地址。
在实施例3和6中,f(r)=r,和可应用到这些实施例中的交错器如图9C所示。
参照图9C,行多路复用地址发生器940在每个时钟周期产生m-比特行地址。多个随机地址发生器930-933的每个都按照对每行唯一设置的规则产生n-比特随机地址。例如,随机地址发生器930按照对第0行设置的规则产生n-比特随机地址,随机地址发生器931按照对第1行设置的规则产生n-比特随机地址,随机地址发生器932按照对第2行设置的规则产生n-比特随机地址,和随机地址发生器933按照对第(R-1)行设置的规则产生n-比特随机地址。当按顺序选择R行时,多路复用器950选择对应于所选行的随机地址发生器,以便应该将由相应随机地址发生器产生的n-比特随机地址提供给地址组合块840。地址组合块840将由行多路复用地址发生器940产生的m-比特行地址作为高比特与由多路复用器950选择的n-比特随机地址作为低比特相组合,以产生(m+n)比特输出地址。
因此,通过适当确定行选择控制函数f(r),可以实现各种类型的交错器。
在上述实施例中,虽然地址产生方法对每行是不同的,但基本概念是相同的。即,通过2-D SCCC交错器的行多路复用提高距离特性,和在每行中随机产生地址以保持随机特性。下面表7A到7B通过例子的方式表示按照上述实施例产生的各个地址。在描述地址产生时,将假设行多路复用是按{0、2、1、3}的次序执行的。
实施例1和实施例4
假设Row×Col=4×8和P(r,k)地址={3、7、6、1、4、2、5}。首先,第一行中的数据按表7A所示读出。表7A和7B表示如果对每行实行比特反向的情况。因此,如各表的第一行所示,以0→2→1→3的顺序处理原始行。即,在每行中访问‘0’地址。接下来,如表7B所示访问各个地址。在表7B中,每个括号的外部数字表示每行中的相应地址,每个括号的内部数字表示访问次序。因此,下面表7A和7B可以被认为是时间指数。
[表7A]
0 | 0(0) | |||||||
2 | 0(1) | |||||||
1 | 0(2) | |||||||
3 | 0(3) |
[表7B]
0(0) | 1(28) | 2(16) | 3(4) | 4(8) | 5(24) | 6(20) | 7(12) |
0(1) | 1(21) | 2(9) | 3(25) | 4(29) | 5(17) | 6(13) | 7(5) |
0(2) | 1(14) | 2(30) | 3(18) | 4(22) | 5(10) | 6(6) | 7(26) |
0(3) | 1(7) | 2(23) | 3(11) | 4(15) | 5(31) | 6(27) | 7(19) |
如上所述,在实施例1和实施例4中,对每行应用了相同的随机地址产生规则。参照图7B,地址产生规则{3、7、6、1、4、2、5}按顺序应用到每行上。对于0→1→2→3的地址访问次序,在每行中第1地址‘0’被选择。即,对于第一地址在第1行中的‘0’被选择,对于第2地址在第2行中的‘0’被选择,对于第3地址在第3行中的‘0’被选择,和对于第4地址在第4行中的‘0’被选择。
对于4到31的地址访问次序,应用了上述地址产生规则{3、7、6、1、4、2、5}。因此,对于第4地址第1行中的‘3’被选择,对于第5地址第2行中的‘7’被选择,对于第6地址第3行中的‘6’被选择,对于第7地址第4行中的1’被选择。加之,对于第8地址第1行中的‘4’被选择,对于第9地址第2行中的‘2’被选择,和对于第10地址第3行中的‘5’被选择。同样,通过顺序选择各个行和顺序地应用地址产生规则{3、7、6、1、4、2、5}到所选的各行上,确定其余的第11到第31地址。
实施例2和实施例5
假设Row×Col=4×8,Pe(r,k)地址={3、7、6、1、4、2、5}和Po(r,k)地址={6、7、3、1、5、2、4}。首先按照表8A所示读出第1行中的数据。即,在每行中访问‘0’地址。在表8A和8B中,第1和第2行表示偶数行,和第3和第4行表示奇数行。在上两行中,按照Pe(r,k)访问各个地址,和在下两行中按照Po(r,k)访问各个地址。接下来,如表8B所示访问各个地址。在表8A和8B中,每个括号外部的数字表示每行中的相关地址,和括号内部的数字表示地址访问次序。因此,下面表8A和8B可以被认为是时间指数。
[表8A]
0(0) | |||||||
0(1) | |||||||
0(2) | |||||||
0(3) |
[表8B]
0(0) | 1(24) | 2(28) | 3(4) | 4(12) | 5(16) | 6(8) | 7(20) |
0(1) | 1(9) | 2(13) | 3(17) | 4(25) | 5(29) | 6(21) | 7(5) |
0(2) | 1(26) | 2(30) | 3(10) | 4(18) | 5(14) | 6(6) | 7(22) |
0(3) | 1(11) | 2(15) | 3(23) | 4(31) | 5(27) | 6(19) | 7(7) |
如上所述,在实施例2和实施例5中,偶数行随机地址产生规则应用到各偶数行和奇数行随机地址产生规则应用到各奇数行。参照表8B,因为按照比特反向行选择规则选择各个行,所以偶数行随机地址产生规则{3、7、6、1、4、2、5}应用到第1行(行‘0’)和第2行(行‘1’),以及奇数行随机地址产生规则{6、7、3、1、5、2、4}应用到第3行(行‘2’)和第4行(行‘3’)。对于0→1→2→3的地址访问次序,在每行中选择第1地址‘0’。即,对第1地址选择第1行中的‘0’,和对第2地址选择第2行中的‘0’,对第3地址选择第3行中的‘0’,对第4地址选择第4行中的‘0’。
对于4到31的地址访问次序,地址产生规则{3、7、6、1、4、2、5}应用到偶数行和地址产生规则{6、7、3、1、5、2、4}应用到奇数行。因此,对于第4地址第1行中的‘3’被选择,对于第5地址第2行中的‘7’被选择,对于第6地址第3行中的‘6’被选择,对于第7地址第4行中的‘7’被选择。再有,对于第8地址第1行中的‘6’被选择,对于第9地址第2行中的‘1’被选择,对于第10地址第3行中的‘3’被选择,对于第11地址第4行中的‘1’被选择。同样,通过顺序地选择行和应用地址产生规则{3、7、6、1、4、2、5}或{6、7、3、1、5、2、4}到所选的行上,确定其余的第12到第31个地址。
实施例3和实施例6
假设Row×Col=4×8,P(0,k)地址={3、7、6、1、4、2、5}、P(1,k)地址={6、7、3、1、5、2、4}、P(2,k)地址={1、7、3、6、4、5、2}、P(3,k)地址={7、3、6、1、2、5、4}。首先,按照表9A所示读出第1行中的数据。即,在每行访问‘0’地址。接下来,按照如表9B所示访问各个地址。P(r,k)分别存在于每行中。在表9A和9B中,每个括号的外部数字表示在每行中的相关地址,和在括号内部的数字表示地址访问次序。因此,下面表9A和9B可以被认为是时间指数。
[表9A]
0(0) | |||||||
0(1) | |||||||
0(2) | |||||||
0(3) |
[表9B]
0(0) | 1(16) | 2(24) | 3(4) | 4(20) | 5(28) | 6(12) | 7(8) |
0(1) | 1(17) | 2(25) | 3(13) | 4(29) | 5(21) | 6(5) | 7(9) |
0(2) | 1(6) | 2(30) | 3(14) | 4(22) | 5(26) | 6(18) | 7(10) |
0(3) | 1(19) | 2(23) | 3(11) | 4(31) | 5(27) | 6(15) | 7(7) |
如上所述,在实施例3和实施例6中,一种唯一的随机地址产生规则应用到每行。参照表9B,对于0→1→2→3的地址访问次序,在每行中第1地址‘0’被选择。即,对于第1地址第1行中的‘0’被选择,对于第2地址第2行中的‘0’被选择,对于第3地址第3行中的‘0’被选择,和对于第4地址第4行中的‘0’被选择。
对于4到31的地址访问次序,唯一地址产生规则应用到相应各个行。随机地址产生规则{3、7、6、1、4、2、5}应用到第1行,随机地址产生规则{6、7、3、1、5、2、4}应用到第2行,随机地址产生规则{1、7、3、6、4、5、2}应用到第3行,随机地址产生规则{7、3、6、1、2、5、4}应用到第4行。因此,对于第4地址选择第1行中的‘3’,对于第5地址选择2行中的‘6’,对于第6地址选择第3行中的‘3’,对于第7地址选择第4行中的‘7’。加之,对于第8地址选择第1行中的‘7’,对于第9地址选择第2行中的‘7’,对于第10地址选择第3行中的‘7’,对于第11地址选择第4行中的‘3’。同样,通过顺序地选择行和应用唯一地址选择规则到所选的行上,确定其余的第12到第31地址。
对2-D SCCC交错器的性能比较
新颖SCCC交错器与常规的SCCC交错器之间的性能比较表示在图5A和5B中。设置如下模拟参数以便对5种类型的SCCC交错器进行性能比较。
-编码器:4-状态SCCC交错器
-信息尺寸:640
-码速率:R=1/3(外部码速率=2/3,内部码速率=1/2)
-交错器尺寸:(640+2)*3/2=963,其中‘2’是零终结外部编码器的尾比特数,和‘3/2’是外部码速率的倒数
-信道:AWGN(加性高斯白噪声)
-解码器:对数MAP(最大后验)SISO(软入-软出)解码算法
-交错器
■常规的:块交错器
■常规的:1-D PN交错器
■实施例1:具有1 PNSR的2-D PN交错器
■实施例2:具有2 PNSR的2-D PN交错器
■实施例3:具有16 PNSR的2-D PN交错器
图5A和5B表示按照SNR(信噪比)的BER/FER(位差错率/帧差错率)性能。更具体地说,图5A和5B表示常规块交错器和1-D PN交错器与按照本发明各个实施例的新颖2-D SCCC交错器之间的性能比较。从图5A和5B中可以注意到,按照本发明实施例的新颖2-D SCCC交错器与常规块交错器和1-D PN交错器比较BER/FER性能得到很大改善。
参照图5A,从BER的观点来看,实施例1到3显示了类似的性能。尤其是,对于要求的10-5的BER性能而言,这三个实施例几乎具有相同的性能。与1-D PN交错器和常规块交错器比较,这三个实施例都表示出好得多的BER性能。参照图5B,甚至从FER的观点来看,这三个实施例表现出几乎相同的性能,并且在1.5dB上,1-D PN交错器和常规块交错器的性能分别变差了约10和100倍。
如上所述,当SCCC用于纠错码时,本发明的实施例可以设计成具有最佳性能和低复杂性的SCCC内部交错器。另外,与现有1-D PN交错器和块交错器比较,该新颖交错器的BER/FER性能得到很大改善。
虽然参照某些优选实施例已经对本发明进行了图示和描述,但是本领域普通技术人员应该理解,在不脱离后附权利要求书所限定的本发明的精神和范围的情况下,可以从形式和细节上作出各种修改。
Claims (36)
1.一种用于编码输入信息以输出码元的串行编码的两个编码码元的第一编码器,所述串行编码码元具有有效自由距离;
一个具有带m行组和n列组的存储器的交错器,所述存储器用于在各组中存储所述串行编码码元,所述交错器用于随机选择m行组之一,并用于随机选择存储在所述m行组的所选那一个中的码元之一,以便产生交错码元;和
用于编码来自交错器的交错码元的第二编码器;
其中串行输入码元的数量为k,在该存储器中的m行组和n列组被选择为m×n≥k,并且m大于有效自由距离。
2.一种在串行链接卷积码(SCCC)编码器中的交错器,所述SCCC交错器含有用于编码输入信息以输出编码码元流的第一编码器、用于交错所述编码的输出码流的所述交错器,和用于编码交错码元流的第二编码器,所述交错器包括:
用于选择各个行的行选择器,行数是按照该交错器的尺寸进行设置的;
用于产生列的随机地址的地址发生器,列数是按照交错器的尺寸进行设置的;
地址组合器,用于组合行选择器的输出与地址发生器的输出,产生合成的编码数据流作为交错地址。
3.按照权利要求2所述的交错器,其中地址发生器是用于产生PN序列的PN(伪噪声)移位寄存器,所述PN序列用于随机化每行的各个列。
4.按照权利要求2所述的交错器,其中地址发生器包括:
第一PN(伪噪声)移位寄存器,用于产生随机化奇数行中的各个列的PN序列;和
第二PN(伪噪声)移位寄存器,用于产生随机化偶数行中的各个列的PN序列。
5.按照权利要求2所述的交错器,其中地址发生器包括:
多个PN(伪噪声)移位寄存器,用于产生具有不同特性的唯一PN序列,以随机化每行中的各个列。
6.按照权利要求3所述的交错器,其中列数等于2n,这里n是一个整数。
7.按照权利要求6所述的交错器,其中扩展一个地址以将列数设置为2n,这里n是一个整数。
8.按照权利要求2所述的交错器,其中地址发生器利用一个线性递归方程随机化每行的各个列。
9.按照权利要求2所述的交错器,其中地址发生器利用第一线性递归方程随机化奇数行中的各个列,和利用第二线性递归方程随机化偶数行中的各个列。
10.按照权利要求2所述的交错器,其中地址发生器利用。
11.按照权利要求8所述的交错器,其中列数被设置为2n,这里n是一个整数。
12.按照权利要求11所述的交错器,其中扩展一个地址以将列数设置为2n,这里n是一个整数。
13.按照权利要求2所述的交错器,其中行数被设置为2n,这里n是一个整数。
14.按照权利要求13所述的交错器,其中行数为8、16或32。
15.按照权利要求2所述的交错器,其中行数被设置为一个整数,所述整数大于有效自由距离,其中第一编码器的编码码元流的两个编码码元具有有效自由距离。
16.按照权利要求2所述的交错器,其中行数被设置为对应于2n的一个数,其中n是一个整数,所述数2n是从大于有效自由距离的整数中选择的,其中第一编码器的编码码元流的两个编码码元具有有效距离。
17.按照权利要求2所述的交错器,其中代表各行的比特值被比特反向,并且按照比特反向值的次序选择各个行。
18.一种用于串行链接卷积码(SCCC)编码器中的交错器的交错方法,所述SCCC编码器包括:用于编码输入信息以输出编码码元流的第一编码器,用于交错码元流的所述交错器,和用于编码交错码元流的第二编码器,该交错方法包括以下步骤:
选择一个行,行数是按照该交错器的尺寸设置的;
对一个列产生随机地址,列数是按照交错器的尺寸设置的;
组合所选的行与产生的随机地址,以产生合成的编码数据作为交错地址。
19.按照权利要求18所述的交错方法,其中每行中的各列地址是通过一个PN序列随机化的。
20.按照权利要求18所述的交错方法,其中奇数行的各列地址是利用第一PN序列随机化的和偶数行的各列地址是利用第二PN序列随机化的。
21.按照权利要求18所述的交错方法,其中每行的各列地址是利用用于每行的唯一PN序列随机化的。
22.按照权利要求19所述的交错方法,其中列数被设置为2n,这里n是一个整数。
23.按照权利要求22所述的交错方法,其中扩展一个地址以将列数设置为2n,这里n是一个整数。
24.按照权利要求18所述的交错方法,其中每行的各列地址是利用一个线性递归方程进行随机化的。
25.按照权利要求24所述的交错方法,其中列数被设置为2n,这里n是一个整数。
26.按照权利要求25所述的交错方法,其中扩展一个地址以将列数设置为2n,这里n是一个整数。
27.按照权利要求18所述的交错方法,其中利用两个不同的线性递归方程:一个随机化奇数行的各列地址,和另一个随机化偶数行的各列地址。
28.按照权利要求18所述的交错方法,其中多个线性递归方程用于随机化每行的列。
29.按照权利要求18所述的交错方法,其中行数被设置为2n,其中n为一个整数。
30.按照权利要求29所述的交错方法,其中行数为8、16或32。
31.按照权利要求18所述的交错方法,其中行数被设置为一个整数,所述整数大于有效自由距离,其中第一编码器的编码码元流的两个编码码元具有有效自由距离。
32.按照权利要求18所述的交错方法,其中行数被设置为对应于2n的数,其中n是一个整数,所述数2n是从大于有效自由距离的整数中选择的,其中第一编码器的编码码元流的两个编码码元具有有效自由距离。
33.按照权利要求18所述的交错方法,其中代表各行的比特值被比特反向并且各个行是按照比特反向值的次序选择的。
34.一种串行链接卷积码(SCCC)编码器,包括:
第一编码器,用于编码预定尺寸的输入信息,并用于输出第一码元流,所述第一码元流的两个编码码元具有有效自由距离;
交错器,用于将第一码元流作为尺寸N的输入信息写入特定的行和列中,并且用于从所述特定行和列读出,以输出交错码元流,所述读出包括按照行选择规则在每个时钟周期选择一个行,按照给定交错规则在所选行中产生列地址,并且重复所述选择和产生,从而产生所有地址;和
第二编码器,用于编码交错码元流。
35.按照权利要求34所述的SCCC编码器,其中行数大于有效自由距离。
36.按照权利要求35所述的SCCC编码器,其中行数为2n,其中n是一个整数。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-1999-0019095A KR100526512B1 (ko) | 1999-05-20 | 1999-05-20 | 이동 통신시스템의 직렬 쇄상 컨볼루션 부호화를 위한 인터리빙장치 및 방법 |
KR1999/19095 | 1999-05-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1306698A true CN1306698A (zh) | 2001-08-01 |
CN1136660C CN1136660C (zh) | 2004-01-28 |
Family
ID=19587943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB008009287A Expired - Fee Related CN1136660C (zh) | 1999-05-20 | 2000-05-20 | 串行链接卷积码编码器及其中的交错器和交错方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6323788B1 (zh) |
EP (1) | EP1097517A4 (zh) |
JP (1) | JP3359913B1 (zh) |
KR (1) | KR100526512B1 (zh) |
CN (1) | CN1136660C (zh) |
AU (1) | AU758085B2 (zh) |
BR (1) | BR0006138A (zh) |
CA (1) | CA2337161C (zh) |
WO (1) | WO2000072448A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003096597A1 (fr) * | 2002-05-10 | 2003-11-20 | Linkair Communications, Inc. | Procede et dispositif d'entrelacement interne dans un code de convolution concatene en serie |
CN100367676C (zh) * | 2004-05-27 | 2008-02-06 | 中国科学院计算技术研究所 | 一种卷积码的编码方法 |
Families Citing this family (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6570927B1 (en) * | 1998-09-24 | 2003-05-27 | Lockheed Martin Corporation | Method for tail-biting and decoding recursive systematic codes |
US6871303B2 (en) * | 1998-12-04 | 2005-03-22 | Qualcomm Incorporated | Random-access multi-directional CDMA2000 turbo code interleaver |
US6829305B2 (en) * | 1999-12-08 | 2004-12-07 | Lg Electronics Inc. | Concatenated convolutional encoder and decoder of mobile communication system |
US7302621B2 (en) * | 2000-01-03 | 2007-11-27 | Icoding Technology, Inc. | High spread highly randomized generatable interleavers |
US6789218B1 (en) * | 2000-01-03 | 2004-09-07 | Icoding Technology, Inc. | High spread highly randomized generatable interleavers |
US7549107B1 (en) | 2000-05-18 | 2009-06-16 | Broadcom Corporation | Interleaved reed solomon coding for home networking |
US7184101B2 (en) * | 2001-07-31 | 2007-02-27 | Micronas Usa, Inc. | Address generation for video processing |
US6701482B2 (en) * | 2001-09-20 | 2004-03-02 | Qualcomm Incorporated | Method and apparatus for coding bits of data in parallel |
US6954885B2 (en) * | 2001-12-14 | 2005-10-11 | Qualcomm Incorporated | Method and apparatus for coding bits of data in parallel |
US7091889B2 (en) * | 2002-09-09 | 2006-08-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Speed and memory optimized interleaving |
US7216282B2 (en) * | 2003-02-19 | 2007-05-08 | Harris Corporation | Mobile ad-hoc network (MANET) including forward error correction (FEC), interleaving, and multi-route communication features and related methods |
US6759974B1 (en) * | 2003-05-20 | 2004-07-06 | Northrop Grumman Corporation | Encoder and decoder for data transfer in superconductor circuits |
US7437650B2 (en) * | 2005-04-12 | 2008-10-14 | Agere Systems Inc. | Pre-emptive interleaver address generator for turbo decoders |
JP2008160169A (ja) * | 2006-11-29 | 2008-07-10 | Mitsubishi Electric Corp | 通信装置、ターボ符号器および通信方法 |
US7870458B2 (en) * | 2007-03-14 | 2011-01-11 | Harris Corporation | Parallel arrangement of serial concatenated convolutional code decoders with optimized organization of data for efficient use of memory resources |
US7904784B2 (en) * | 2007-03-14 | 2011-03-08 | Harris Corporation | Serial concatenated convolutional code decoder |
US8024636B2 (en) * | 2007-05-04 | 2011-09-20 | Harris Corporation | Serially concatenated convolutional code decoder with a constrained permutation table |
US8205132B2 (en) | 2007-05-07 | 2012-06-19 | Lingna Holdings Pte., Llc | Cooperative concatenated coding for wireless systems |
US7991082B2 (en) * | 2007-10-31 | 2011-08-02 | Harris Corporation | Maximum a posteriori probability decoder |
KR101355633B1 (ko) * | 2007-11-06 | 2014-01-29 | 삼성전자주식회사 | 인코더 및 인코딩 방법 |
KR101648448B1 (ko) * | 2008-04-29 | 2016-08-16 | 엘지전자 주식회사 | 송/수신 시스템 및 데이터 처리 방법 |
US7667628B2 (en) * | 2008-06-23 | 2010-02-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Interleaver for scrambling and information word |
US8429510B2 (en) * | 2010-10-26 | 2013-04-23 | Lsi Corporation | Simplified parallel address-generation for interleaver |
IN2012DE00954A (zh) * | 2012-03-29 | 2015-09-11 | Samsung India Electronics Pvt Ltd | |
KR102205614B1 (ko) * | 2014-09-19 | 2021-01-21 | 삼성전자주식회사 | 반복 복호를 사용하는 비트 인터리빙 부호화 변조 방식을 지원하는 통신 시스템에서 신호 송/수신 장치 및 방법 |
KR101558172B1 (ko) * | 2014-10-14 | 2015-10-08 | 숭실대학교산학협력단 | 오류 분산을 위한 인터리빙 방법 및 장치, 이를 수행하기 위한 기록매체 |
WO2018187902A1 (en) | 2017-04-10 | 2018-10-18 | Qualcomm Incorporated | An efficient interleaver design for polar codes |
TWI754900B (zh) * | 2020-01-17 | 2022-02-11 | 旺宏電子股份有限公司 | 亂數產生器、亂數產生電路及亂數產生方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5042033A (en) * | 1989-06-05 | 1991-08-20 | Canadian Marconi Corporation | RAM-implemented convolutional interleaver |
JPH06216882A (ja) * | 1993-01-19 | 1994-08-05 | Matsushita Electric Ind Co Ltd | 誤り訂正送信装置及び受信装置 |
EP2302806B1 (en) * | 1995-02-01 | 2013-06-05 | Sony Corporation | Multi-channel transmission with interleaving through in-place addressing of RAM memory |
FR2737363B1 (fr) * | 1995-07-27 | 1997-09-05 | France Telecom | Entrelacement/desentrelacement d'elements de donnees |
ATE292336T1 (de) * | 1997-01-31 | 2005-04-15 | Cit Alcatel | Verfahren und geräte zur schachtelung/entschachtelung von digitalen daten und kommunikationssystem |
KR100219842B1 (ko) * | 1997-03-12 | 1999-09-01 | 서평원 | 이동 전화시스템 |
-
1999
- 1999-05-20 KR KR10-1999-0019095A patent/KR100526512B1/ko not_active IP Right Cessation
-
2000
- 2000-05-20 WO PCT/KR2000/000509 patent/WO2000072448A1/en active IP Right Grant
- 2000-05-20 JP JP2000620738A patent/JP3359913B1/ja not_active Expired - Fee Related
- 2000-05-20 CN CNB008009287A patent/CN1136660C/zh not_active Expired - Fee Related
- 2000-05-20 BR BR0006138-7A patent/BR0006138A/pt not_active IP Right Cessation
- 2000-05-20 CA CA002337161A patent/CA2337161C/en not_active Expired - Fee Related
- 2000-05-20 AU AU46218/00A patent/AU758085B2/en not_active Ceased
- 2000-05-20 EP EP00927913A patent/EP1097517A4/en not_active Withdrawn
- 2000-05-22 US US09/576,374 patent/US6323788B1/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003096597A1 (fr) * | 2002-05-10 | 2003-11-20 | Linkair Communications, Inc. | Procede et dispositif d'entrelacement interne dans un code de convolution concatene en serie |
CN100367676C (zh) * | 2004-05-27 | 2008-02-06 | 中国科学院计算技术研究所 | 一种卷积码的编码方法 |
Also Published As
Publication number | Publication date |
---|---|
JP3359913B1 (ja) | 2002-12-24 |
CA2337161A1 (en) | 2000-11-30 |
BR0006138A (pt) | 2001-04-03 |
EP1097517A4 (en) | 2002-06-12 |
EP1097517A1 (en) | 2001-05-09 |
KR20000074862A (ko) | 2000-12-15 |
US6323788B1 (en) | 2001-11-27 |
AU4621800A (en) | 2000-12-12 |
AU758085B2 (en) | 2003-03-13 |
WO2000072448A1 (en) | 2000-11-30 |
CA2337161C (en) | 2006-02-07 |
KR100526512B1 (ko) | 2005-11-08 |
JP2003500971A (ja) | 2003-01-07 |
CN1136660C (zh) | 2004-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1136660C (zh) | 串行链接卷积码编码器及其中的交错器和交错方法 | |
CN1150680C (zh) | 自适应信道编码方法和装置 | |
CN1286276C (zh) | 随机存取多向cdma2000 turbo编码交织器 | |
CN1264280C (zh) | 在通信系统中生成和解码代码的设备和方法 | |
CN1202625C (zh) | 利用线性同余序列的turbo码交织器 | |
CN1171391C (zh) | 交错方法、交错装置、涡轮编码方法以及涡轮编码装置 | |
CN100338897C (zh) | 在通信系统中生成代码的设备 | |
CN1136663C (zh) | 用于通信系统的交织/解交织设备和方法 | |
CN1494770A (zh) | 适于turbo解码器的交错器 | |
CN1324811C (zh) | 通信系统中的交织器和交织方法 | |
CN1246987C (zh) | 在资源约束条件下编码数据块尺寸最佳化的方法 | |
CN1320771C (zh) | 用于级联码解码的高速模块、装置和方法 | |
CN1770675A (zh) | 通信系统中发送和接收数据的设备和方法 | |
CN1397107A (zh) | 解码装置及解码方法 | |
CN1836394A (zh) | 在移动通信系统中编码/解码块低密度奇偶校验码的装置和方法 | |
CN1993892A (zh) | 用于编码和解码块低密度奇偶校验码的装置和方法 | |
CN1639986A (zh) | 交织顺序发生器、交织器、Turbo码编码器和Turbo码译码器 | |
CN1297616A (zh) | Turbo交错器/解交错器中使用的地址发生器和地址发生方法 | |
CN1457553A (zh) | 在通信系统中生成代码的设备和方法 | |
CN1411195A (zh) | 交错器模式修改 | |
CN1227818C (zh) | 通信装置以及通信方法 | |
CN1183687C (zh) | Turbo码编码器及编码方法 | |
CN1349357A (zh) | 在移动通信系统中执行特博解码的方法 | |
CN1582555A (zh) | 片段式解交织 | |
CN1152474C (zh) | 地面数字电视广播系统中的Turbo码纠错编码器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20040128 |