CN1756091A - A turbo code interleaver and its interleaving method - Google Patents
A turbo code interleaver and its interleaving method Download PDFInfo
- Publication number
- CN1756091A CN1756091A CN 200410080398 CN200410080398A CN1756091A CN 1756091 A CN1756091 A CN 1756091A CN 200410080398 CN200410080398 CN 200410080398 CN 200410080398 A CN200410080398 A CN 200410080398A CN 1756091 A CN1756091 A CN 1756091A
- Authority
- CN
- China
- Prior art keywords
- address
- row
- output
- read
- sequence number
- 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
Landscapes
- Error Detection And Correction (AREA)
Abstract
Description
技术领域technical field
本发明涉及移动通信中的交织技术,具体地说,涉及一种Turbo码交织器及其交织的方法。The present invention relates to interleaving technology in mobile communication, in particular to a Turbo code interleaver and its interleaving method.
背景技术Background technique
Turbo码交织器是Turbo编译码器的重要组成部分,Turbo码具有的优异性能,其根本原因在于Turbo码的实现方案中,交织器实现了伪随机性。在发送端,其伪随机性通过编码器以及并行级联方式来实现;在译码端,则利用具有软输入/软输出特性的交织器的反馈迭代译码来实现。可见,交织器是非常重要的,其性能直接影响Turbo码的性能。3GPP(第三代移动通信伙伴计划)协议给出了一种不规则交织的算法,这种交织器算法非常复杂而且随交织块长度的不同其算法也不同。The Turbo code interleaver is an important part of the Turbo codec. The fundamental reason for the excellent performance of the Turbo code is that the interleaver realizes pseudo-randomness in the implementation of the Turbo code. At the sending end, its pseudo-randomness is realized through encoders and parallel cascading; at the decoding end, it is realized by feedback iterative decoding of an interleaver with soft input/soft output characteristics. It can be seen that the interleaver is very important, and its performance directly affects the performance of the Turbo code. The 3GPP (Third Generation Partnership Project) protocol provides an algorithm for irregular interleaving. This interleaver algorithm is very complex and varies with the length of the interleaving block.
按照3GPP规定,Turbo码的交织包括比特输入矩阵,矩阵的行内交换和行间交换,矩阵中的比特输出时将原来不存在的比特删除。以下说明协议中有关Turbo码的交织过程。According to the 3GPP regulations, the interleaving of Turbo codes includes bit input matrix, intra-row exchange and inter-row exchange of the matrix, and when the bits in the matrix are output, the bits that do not exist before are deleted. The following describes the interleaving process of Turbo codes in the protocol.
设Turbo码的交织输入比特记为x1,x2,x3,...,xK,K是输入的比特数机交织长度,并且40≤K≤5114。Turbo码交织的输入比特序列xk按如下步骤写入矩阵。Let the interleaving input bits of the Turbo code be denoted as x 1 , x 2 , x 3 , ..., x K , where K is the number of input bits and the interleaving length, and 40≤K≤5114. The input bit sequence x k interleaved by Turbo code is written into the matrix according to the following steps.
(1)确定矩阵的行数R:(1) Determine the number of rows R of the matrix:
矩阵的行数由上到下记为0,1,2,...,R-1。The number of rows of the matrix is recorded as 0, 1, 2, ..., R-1 from top to bottom.
(2)确定矩阵的列数C:(2) Determine the number of columns C of the matrix:
其中,p为素数。矩阵的列数从左到右记为0,1,2,...,C-1。Among them, p is a prime number. The number of columns of the matrix is denoted as 0, 1, 2, ..., C-1 from left to right.
(3)将比特序列xk一行一行的写入R×C矩阵,比特x1在0行的0列上:(3) Write the bit sequence x k into the R×C matrix row by row, and the bit x 1 is on
比特输入R×C矩阵后,矩阵的行间交换和行内交换按以下算法进行:After the bits are input into the R×C matrix, the inter-row exchange and intra-row exchange of the matrix are performed according to the following algorithm:
(1)从表1选择原根v(1) Select the original root v from Table 1
(2)构造行内交换基本序列s(i)(2) Construct the basic sequence s(i) of intra-row exchange
s(i)=[v×s(i-1)]mod p,i=1,2,…,(p-2),and s(0)=1。s(i)=[v×s(i-1)] mod p, i=1, 2, ..., (p-2), and s(0)=1.
其中i为矩阵列序号。Where i is the matrix column number.
(3)以q0=1为{qj}中的第一个素数,按下式选择连续的最小素数{qj}(j=1,2,...,R-1,为矩阵行序号):(3) With q 0 =1 as the first prime number in {q j }, select the continuous minimum prime number {q j } (j=1, 2, ..., R-1, as the matrix row serial number):
g.c.d{qj,p-1}=1,qj>6,qj>q(j-1),其中g.c.d.是最大公约数。gcd{q j , p-1}=1, q j >6, q j >q (j-1) , where gcd is the greatest common divisor.
(4)变换{qj}得到交换素数{rj}(4) Transform {q j } to get exchange prime {r j }
rT(j)=qj,j=0,1,...,R-1,r T(j) = q j , j = 0, 1, . . . , R-1,
其中T(j)(j=0,1,2,...,R-1)是行间交换模式,由下式确定的四种行间交换模式之一:Pat1,Pat2,Pat3和Pat4Wherein T(j) (j=0, 1, 2, ..., R-1) is the interline exchange mode, one of four interline exchange modes determined by the following formula: Pat1, Pat2, Pat3 and Pat4
Pat1,Pat2,Pat3和Pat4分别如下:Pat1, Pat2, Pat3 and Pat4 are as follows:
Pat1:{19,9,14,4,0,2,5,7,12,18,10,8,13,17,3,1,16,6,15,11}Pat1: {19, 9, 14, 4, 0, 2, 5, 7, 12, 18, 10, 8, 13, 17, 3, 1, 16, 6, 15, 11}
Pat2:{19,9,14,4,0,2,5,7,12,18,16,13,17,15,3,1,6,11,8,10}Pat2: {19, 9, 14, 4, 0, 2, 5, 7, 12, 18, 16, 13, 17, 15, 3, 1, 6, 11, 8, 10}
Pat3:{9,8,7,6,5,4,3,2,1,0}Pat3: {9, 8, 7, 6, 5, 4, 3, 2, 1, 0}
Pat4:{4,3,2,1,0}Pat4: {4, 3, 2, 1, 0}
(5)第j个(j=0,1,2,...,R-1)行内交换如下:(5) The jth (j=0, 1, 2, . . . , R-1) intra-row exchange is as follows:
a.如果C=p,那么a. If C=p, then
Uj(i)=s([i×rj]mod(p-1)),i=0,1,2,...,(p-2),andUj(p-1)=0,U j (i) = s([i×r j ] mod (p-1)), i = 0, 1, 2, ..., (p-2), and U j (p-1) = 0,
其中Uj(i)是第j行经过行内变换后的第i个输出的输入比特的位置。Wherein U j (i) is the position of the input bit of the i-th output of the j-th row after in-row transformation.
b.如果C=p+1,那么b. If C=p+1, then
Uj(i)=s([i×rj]mod(p-1)),i=0,1,2,...,(p-2),Uj(p-1)=0,and Uj(p)=p,U j (i)=s([i×r j ]mod(p-1)), i=0, 1, 2, . . . , (p-2), U j (p-1)=0, and U j (p) = p,
其中Uj(i)是第j行经过行内变换后的第i个输出的输入比特的位置,并where U j (i) is the position of the input bit of the i-th output of the j-th row after in-row transformation, and
且如果K=C×R,那么交换UR-1(p)和UR-1(0)的位置。And if K=C×R, then swap the positions of UR -1 (p) and UR -1 (0).
c.如果C=p-1,那么c. If C=p-1, then
Uj(i)=s([i×rj]mod(p-1))-1,i=0,1,2,...,(p-2),U j (i)=s([i×r j ]mod(p-1))-1, i=0, 1, 2, . . . , (p-2),
Uj(i)是第j行经过行内交换以后的第i个输出的输入比特的位置。U j (i) is the position of the input bit of the i-th output after the j-th row undergoes intra-row swapping.
(6)基于模式T(j)(j=0,1,2,...,R-1)进行行间交换,T(j)是第j个交换行的原始位置。(6) Inter-row exchange is performed based on the pattern T(j) (j=0, 1, 2, . . . , R-1), where T(j) is the original position of the jth exchanged line.
表1:素数p和相关的原根vTable 1: Prime number p and related primitive root v
经过行内和行间交换,矩阵的比特记为y′:After intra-row and inter-row exchange, the bits of the matrix are denoted as y′:
Turbo码交织的输出比特是将经过行内和行间交换的矩阵R×C按列依次输出,起始比特y′1在0列的0行,结束比特y′CR在C-1列的R-1行。输出时,将输入序列中不存在的比特去掉,也就是说,对应于x′k的比特y′k,如果经过行内和行间交换矩阵中有k>K的比特y′k,则在输出时要去掉。交织后的输出记为x′1,x′2,...,x′K,x′1对应于经过整理的y′k,k是最小序号,x′2对应于经过整理的y′k,k是次小序号。交织的输出比特数为K,需要删除的比特数为R×C-K。The output bits of Turbo code interleaving are to output the matrix R×C that has been exchanged between rows and rows in sequence, the start bit y′ 1 is in
上述协议规定的交织算法,在实际的编译码应用中,通常预先根据交织算法生成交织表,通过查表获得用于交织的输入比特和输出比特位置的对应关系,以省去交织过程中复杂的算法。例如,一种方案是,按照协议中规定的所有交织长度,为某些交织长度特别值建立输入比特和输出比特位置的对应关系的位置表,即基本表或交织表,比如分别建立交织长度为40比特、50比特、55比特等的位置表,一般包括220个,进行交织时首先根据交织长度选择对应的位置表,然后根据位置表查找当前输入比特对应的输出比特的位置;另一种方案是,预先估计需要提供的业务类型和交织长度,根据交织长度建立位置表,以减少交织表的存储量,进行交织时直接根据位置表查找当前输入比特对应的输出比特的位置。The interleaving algorithm stipulated in the above protocol, in the actual coding and decoding application, usually generates an interleaving table in advance according to the interleaving algorithm, and obtains the corresponding relationship between the input bit and the output bit position for interleaving by looking up the table, so as to save the complicated interleaving process. algorithm. For example, one solution is to establish a position table corresponding to the position of the input bit and the output bit position for some special values of the interleaving length according to all interleaving lengths specified in the protocol, that is, a basic table or an interleaving table, such as establishing an interleaving length of The position table of 40 bits, 50 bits, 55 bits, etc. generally includes 220. When performing interleaving, first select the corresponding position table according to the interleaving length, and then search for the position of the output bit corresponding to the current input bit according to the position table; another scheme Yes, pre-estimate the service type and interleaving length to be provided, and establish a position table according to the interleaving length to reduce the storage capacity of the interleaving table. When performing interleaving, directly look up the position of the output bit corresponding to the current input bit according to the position table.
无论采用何种方式建立交织表,这种通过查表实现交织的方式在一定程度上可以减少交织算法的运算量,但当交织表的存储量很大,由此所需的查找运算量和查找时间也很大,并且非常不利于硬件的实现。No matter what method is used to establish the interleaving table, this way of realizing interleaving by looking up the table can reduce the amount of calculation of the interleaving algorithm to a certain extent, but when the storage amount of the interleaving table is large, the required search calculation and search The time is also very large, and it is very detrimental to the implementation of the hardware.
发明内容Contents of the invention
有鉴于此,本发明的目的在于提供一种Turbo码交织器,以用硬件电路实现协议中规定的交织算法,避免现有技术中通过查表方式实现交织的缺点;本发明的另一目的在于提供一种Turbo码交织方法,以用于在本发明提供的交织器中实现协议中规定的交织。In view of this, the object of the present invention is to provide a kind of Turbo code interleaver, to realize the interleaving algorithm stipulated in the agreement with the hardware circuit, avoid the shortcoming that realizes interleaving by the look-up table mode in the prior art; Another object of the present invention is A turbo code interleaving method is provided for implementing the interleaving specified in the protocol in the interleaver provided by the present invention.
本发明的交织器通过以下技术方案实现:The interleaver of the present invention is realized through the following technical solutions:
一种Turbo码交织器,其特征在于,所述交织器包括初始化模块,计算模块,以及,包含有控制电路和用于存储有效交织地址的缓存器的缓存模块,来自外部的时钟信号分别送至上述模块,其中,A kind of Turbo code interleaver, it is characterized in that, described interleaver comprises initializing module, computing module, and, comprises the buffering module of control circuit and the buffer memory that is used to store effective interleaving address, the clock signal from outside is sent to respectively The above modules, where,
初始化模块接收到来自外部的初始化启动信号后,根据当前业务的交织长度从外部存储器读取比特输入矩阵的行数、列数、素数和原根,根据读取的上述参数计算当前业务的所有行内交换基本序列并存储,向外部输出初始化结束标志,且向计算模块输出包括交织长度、行数、列数以及素数的参数组和用于读取行内交换模式和交换素数的基地址;After the initialization module receives the initialization start signal from the outside, it reads the row number, column number, prime number and original root of the bit input matrix from the external memory according to the interleaving length of the current business, and calculates all the in-line data of the current business according to the above parameters read. The basic sequence is exchanged and stored, and the initialization end flag is output to the outside, and the parameter group including the interleaving length, the number of rows, the number of columns, and the prime number and the base address for reading the intra-row exchange mode and the exchange prime number are output to the calculation module;
计算模块接收到外部模块根据初始化模块输出的初始化结束标志而产生的启动信号后,根据当前行序号和初始化模块输出的基地址,计算用于读取存储于外部存储器的读取行内交换模式和交换素数的读地址,根据读地址读取行内交换模式和交换素数,并读取来自外部的正逆序标志以及存储于初始化模块中的行内交换基本序列,根据读取的行内交换模式、交换素数以及行内交换基本序列,按列数和素数的关系,选择以下公式计算比特输入矩阵的第j行第i列对应的交织地址:After the calculation module receives the start signal generated by the external module according to the initialization end flag output by the initialization module, it calculates the in-line exchange mode and exchange mode for reading stored in the external memory according to the current row number and the base address output by the initialization module. The read address of the prime number, read the in-line exchange mode and exchange prime number according to the read address, and read the forward and reverse order signs from the outside and the in-line exchange basic sequence stored in the initialization module, according to the read in-line exchange mode, exchange prime number and in-line exchange Exchange the basic sequence, and select the following formula to calculate the interleaving address corresponding to the jth row and ith column of the bit input matrix according to the relationship between the number of columns and the prime number:
如果列数和素数相等,则If the number of columns and primes are equal, then
如果列数等于素数与1之和,则将交织长度与比特输入矩阵的行数和列数之积进行比较,如果不相等,则按式(b)计算,如果相等,则按式(c)计算,If the number of columns is equal to the sum of the prime number and 1, then the interleaving length is compared with the product of the number of rows and the number of columns of the bit input matrix, if not equal, then calculate according to formula (b), if equal, then according to formula (c) calculate,
如果列数等于素数与1之差,则If the number of columns is equal to the difference between a prime number and 1, then
intterleaver_address=T(j)*C+s((i*rT(j))mod(p-1))-1,[i=0,...,p-2;j=0,...,R-1] (d)intterleaver_address=T(j)*C+s((i*r T(j) )mod(p-1))-1, [i=0,...,p-2; j=0,... , R-1] (d)
其中,T(j)为行间交换模式,C为比特输入矩阵的列数,R为比特输入矩阵的行数,p为素数,s((i*rT(j)mod(p-1))为行内交换的基本序列,rT(j)为交换素数;Among them, T(j) is the inter-row exchange mode, C is the number of columns of the bit input matrix, R is the number of rows of the bit input matrix, p is a prime number, s((i*r T(j) mod(p-1) ) is the basic sequence of intra-row exchange, and r T(j) is the exchange prime number;
所述计算模块在计算交织地址后,将有效交织地址标志、计算出的交织地址以及开始存储控制信号输出至缓存模块中的控制电路;After the calculation module calculates the interleaving address, it outputs the effective interleaving address flag, the calculated interleaving address and the start storage control signal to the control circuit in the cache module;
缓存模块中的控制电路根据来自外部的所述启动信号、开始存储控制信号以及有效交织地址标志,向用于存储有效交织地址的缓存器输出写使能信号,并输出写地址和读地址至所述缓存器;缓存器受控制电路的控制,将来自计算模块输出的交织地址中的有效交织地址写入,并按照外部模块的读时序要求输出缓存于所述缓存器的交织地址。The control circuit in the cache module outputs a write enable signal to the buffer memory for storing the effective interleave address according to the start signal from the outside, the start storage control signal and the effective interleave address flag, and outputs the write address and the read address to all the buffer; the buffer is controlled by the control circuit, writes the effective interleaving address from the interleaving address output by the calculation module, and outputs the interleaving address buffered in the buffer according to the read timing requirement of the external module.
本发明的交织方法通过以下技术手段实现:The interweaving method of the present invention is realized by the following technical means:
一种Turbo码交织方法,其特征在于,该方法包括,A Turbo code interleaving method, characterized in that the method comprises,
A)根据交织长度读取比特输入矩阵的行数和列数;根据读取的素数和原根计算行内交换基本序列,并存储;初始化比特输入矩阵的行序号和列序号;A) read the number of rows and the number of columns of the bit input matrix according to the interleaving length; calculate the exchange basic sequence in the row according to the read prime number and the original root, and store; initialize the row number and the column number of the bit input matrix;
B)将列数和素数进行比较,B) Comparing column numbers with prime numbers,
如果列数和素数相等,则读取行间交换模式和交换素数,按式(a)计算比特输入矩阵的第j行第i列对应的交织地址,If the number of columns is equal to the prime number, then read the inter-row exchange mode and the exchange prime number, and calculate the interleaving address corresponding to the jth row i column of the bit input matrix according to formula (a),
如果列数等于素数与1之和,则将交织长度与比特输入矩阵的行数和列数之积进行比较,如果不相等,则读取行间交换模式和交换素数,按式(b)计算比特输入矩阵的第j行第i列对应的交织地址,如果相等,则按式(c)计算所述的交织地址,If the number of columns is equal to the sum of the prime number and 1, then compare the interleaving length with the product of the number of rows and the number of columns of the bit input matrix, if not equal, read the inter-row exchange mode and the exchange prime number, and calculate according to formula (b) The interleaving address corresponding to the i column of the jth row of the bit input matrix, if equal, then calculate the described interleaving address according to formula (c),
如果列数等于素数与1之差,则读取行间交换模式和交换素数,按式(d)计算比特输入矩阵的第j行第i列对应的交织地址,If the column number is equal to the difference between the prime number and 1, then read the inter-row exchange mode and the exchange prime number, and calculate the interleaving address corresponding to the jth row i column of the bit input matrix according to formula (d),
intterleaver_address=T(j)*C+s((i*rT(j))mod(p-1))-1,[i=0,...,p-2;j=0,...,R-1] (d)intterleaver_address=T(j)*C+s((i*r T(j) )mod(p-1))-1, [i=0,...,p-2; j=0,... , R-1] (d)
其中,T(j)为行间交换模式,C为比特输入矩阵的列数,R为比特输入矩阵的行数,p为素数,s((i*rT(j)mod(p-1))为行内交换基本序列,rT(j)为交换素数;Among them, T(j) is the inter-row exchange mode, C is the number of columns of the bit input matrix, R is the number of rows of the bit input matrix, p is a prime number, s((i*r T(j) mod(p-1) ) is the basic sequence of intra-row exchange, and r T(j) is the exchange prime number;
C)比较当前计算出的交织地址与交织长度,如果计算出的交织地址大于交织长度,则禁止输出当前计算的交织地址,否则输出当前计算出的交织地址。C) Comparing the currently calculated interleaving address with the interleaving length, if the calculated interleaving address is greater than the interleaving length, prohibit outputting the currently calculated interleaving address, otherwise output the currently calculated interleaving address.
本发明在对3GPP Turbo交织算法进行研究的基础上找出其中的规律,针对列数与素数、交织长度与列数与行数之积的关系的几类情况,给出交织前后地址的映射关系,极大地节省了存储空间,优化了交织算法。根据上述交织地址的计算规律以及Turbo编译码器的时序要求,从而对交织器的硬件电路进行了设计,提出了其硬件实现方案。相对于现有技术中以查表进行交织的方式而言,本发明提供的交织方法和交织器,由于其参数可以通过设置以适应不同业务的需要,因此具有一定的灵活性,且占用的存储空间少;并且通过正逆序标志对交织器中计算模块的控制,使得交织地址的正序计算和逆序计算可共用同一个硬件结构,更适合于Turbo码编译码算法的硬件实现,尤其是ASIC实现。The present invention finds out the law on the basis of research on the 3GPP Turbo interleaving algorithm, and provides the mapping relationship of addresses before and after interleaving for several types of relations between the column number and the prime number, the interleaving length, and the product of the column number and the row number , which greatly saves storage space and optimizes the interleaving algorithm. According to the calculation rules of the above-mentioned interleaving address and the timing requirements of the Turbo codec, the hardware circuit of the interleaver is designed, and its hardware implementation scheme is proposed. Compared with the method of interleaving by looking up tables in the prior art, the interleaving method and interleaver provided by the present invention have certain flexibility because their parameters can be set to meet the needs of different services, and the occupied memory Less space; and through the control of the calculation module in the interleaver through the forward and reverse order flags, the forward and reverse order calculations of the interleaving address can share the same hardware structure, which is more suitable for the hardware implementation of Turbo code encoding and decoding algorithms, especially ASIC implementation .
附图说明Description of drawings
图1a和图1b为计算正序交织地址的流程图。Figure 1a and Figure 1b are flow charts for calculating positive sequence interleaving addresses.
图2示出了Turbo码交织器的总体框图。Figure 2 shows a general block diagram of a Turbo code interleaver.
图3示出了计算模块硬件原理图。Fig. 3 shows the schematic diagram of the hardware of the computing module.
图4为乘除法运算流水线示意图。FIG. 4 is a schematic diagram of a multiplication and division operation pipeline.
图5示出了缓存模块电路原理图。FIG. 5 shows a schematic diagram of a cache module circuit.
图6为交织器输入输出的时序关系图。FIG. 6 is a timing relationship diagram of the input and output of the interleaver.
图7为写时序和读时序相同时缓存模块电路原理图。FIG. 7 is a circuit schematic diagram of the cache module when the write timing and the read timing are the same.
具体实施方式Detailed ways
本发明通过对3GPP协议规定的交织方法的总结和归纳,得到在不同交织长度下,比特输入矩阵中各比特在交织后所对应的输出比特序列中的位置,即,得到交织前后地址的映射关系。具体方法如下:By summarizing and summarizing the interleaving method stipulated in the 3GPP protocol, the present invention obtains the position in the output bit sequence corresponding to each bit in the bit input matrix after interleaving under different interleaving lengths, that is, obtains the mapping relationship of addresses before and after interleaving . The specific method is as follows:
首先,根据当前比特输入矩阵中矩阵列数选择相应的计算式,计算矩阵中第j行第i列的输入比特对应的输出比特序列中的位置,即交织地址;First, select the corresponding calculation formula according to the number of matrix columns in the current bit input matrix, and calculate the position in the output bit sequence corresponding to the input bit in the jth row and i column in the matrix, that is, the interleaving address;
(1)当C=p时,(1) When C=p,
(2)当C=p+1时(2) When C=
a.若K≠C×Ra. If K≠C×R
b.若K=C×Rb. If K=C×R
(3)当C=p-1时(3) When C=p-1
intterleaver_address=T(j)*C+s((i*rT(j))mod(p-1))-1,[i=0,...,p-2;j=0,...,R-1]intterleaver_address=T(j)*C+s((i*r T(j) )mod(p-1))-1, [i=0,...,p-2; j=0,... , R-1]
然后,比较计算的交织地址与交织长度,如果交织地址大于交织长度,则去掉该交织地址。Then, compare the calculated interleaving address with the interleaving length, and if the interleaving address is greater than the interleaving length, remove the interleaving address.
图1a和图1b为计算正序交织地址的流程图。从流程图可见,计算以i作为外循环(i=0,…,C-1),以j作为内循环(j=0,...,R-1),对第(2)种情况,即C=p+1,当K=C×R时,是一种特殊情况,在3GPP协议中规定要将UR-1(p)和UR-1(0)的位置进行交换,而在本发明中通过计算公式可以得到。如果计算逆序交织地址,只需在初始化时将行序号和列序号分别设为R-1和C-1,流程中行序号和列序号按递减变化。Figure 1a and Figure 1b are flow charts for calculating positive sequence interleaving addresses. As can be seen from the flowchart, the calculation takes i as the outer loop (i=0,...,C-1), and j as the inner loop (j=0,...,R-1), for the (2) case, That is, C=p+1, when K=C×R, it is a special case, it is stipulated in the 3GPP agreement that the positions of UR -1 (p) and UR-1 (0) should be exchanged, and in In the present invention, it can be obtained through a calculation formula. If the reverse order interleaving address is calculated, it is only necessary to set the row number and the column number to R-1 and C-1 respectively during initialization, and the row number and the column number change in descending order during the process.
上述交织地址的计算方法可采用硬件电路实现。参见图2所示,图2示出了Turbo码交织器的总体框图,包括初始化模块、交织地址计算模块、以及用于进行输入输出速率转换的缓存模块,该缓存模块包含有控制电路和用于存储有效交织地址的缓存器。其中,The calculation method of the above-mentioned interleaving address can be realized by using a hardware circuit. Referring to shown in Figure 2, Figure 2 shows the overall block diagram of the Turbo code interleaver, including an initialization module, an interleaving address calculation module, and a cache module for performing input-output rate conversion, the cache module includes a control circuit and is used for A buffer for storing valid interleaving addresses. in,
初始化模块收到初始化启动信号start_ini后,根据外部模块送来的当前交织长度、业务参数表索引地址,从交织器外部的第一ROM存储器中读取包括素数p、原根v、以及比特输入矩阵列数C、行数R的参数组,并送至计算模块;根据协议标准按读取的参数计算当前业务的所有行内交换基本序列s(i),并存入初始化模块中的RAM,其中,当C=p-1时,将计算得到的s(i)的值减1后存入初始化模块中的RAM;当行内交换基本序列计算完毕后,向交织器外部模块输出初始化结束标志flag;将基地址送至计算模块;After the initialization module receives the initialization start signal start_ini, according to the current interleaving length and the index address of the service parameter table sent by the external module, it reads the prime number p, the original root v, and the bit input matrix from the first ROM memory outside the interleaver The parameter group of the number of columns C and the number of rows R is sent to the calculation module; according to the protocol standard, the basic sequence s(i) of all intra-line exchanges of the current business is calculated according to the read parameters, and stored in the RAM in the initialization module, wherein, When C=p-1, store the RAM in the initializing module after the value of s(i) obtained by calculating is subtracted by 1; After the exchange basic sequence calculation in the row is completed, output the initialization end sign flag to the interleaver external module; The base address is sent to the computing module;
当外部模块收到初始化结束标志后,向计算模块和缓存模块中的控制电路发送启动信号start_cp,同时,计算模块读取来自外部的正逆序标志up_down,以确定是按正序还是按逆序计算交织地址;计算模块从交织器外部的第二ROM存储器中读取行间交换模式T(j)和交换素数rT(j),根据初始化模块中RAM存储的行内交换基本序列s(i)、读取的T(j)和rT(j)、以及来自初始化模块的参数组,按C与p的关系选择相应的计算公式计算输出序列的交织地址,并向缓存模块输出该交织地址以及控制信号,其中控制信号包括开始存储控制信号start_save以及有效交织地址标志valid_flag;When the external module receives the initialization end flag, it sends the start signal start_cp to the control circuit in the computing module and the cache module, and at the same time, the computing module reads the positive and negative sequence flag up_down from the outside to determine whether to calculate the interleaving in the positive sequence or in the reverse sequence Address; the calculation module reads the inter-row exchange mode T(j) and the exchange prime number r T(j) from the second ROM memory outside the interleaver, and exchanges the basic sequence s(i) and reads according to the inter-row exchange basic sequence s(i) stored in the RAM in the initialization module Take the T(j) and r T(j) and the parameter group from the initialization module, select the corresponding calculation formula according to the relationship between C and p to calculate the interleaving address of the output sequence, and output the interleaving address and control signal to the cache module , wherein the control signal includes the start storage control signal start_save and the effective interleaving address flag valid_flag;
缓存模块的控制电路在来自外部的所述启动信号、开始存储控制信号以及有效交织地址标志的控制下,向用于存储有效交织地址的缓存器输出写使能信号,将计算出的交织地址中的有效效地址写入缓存器,缓存器在读时序的控制下输出写入的交织地址;并在写时序和外部模块的读时序不相同时,如果写地址等于写地址阈值,则向计算模块输出停止计算信号stop_work有效以停止交织地址的计算,并停止写操作,如果读地址等于读地址阈值,则向计算模块输出停止计算信号stop_work无效,以启动交织地址的计算并启动写操作。The control circuit of the cache module outputs the write enable signal to the buffer for storing the effective interleaving address under the control of the start signal from the outside, the start storage control signal and the effective interleaving address flag, and the calculated interleaving address The effective address of the buffer is written into the buffer, and the buffer outputs the written interleaved address under the control of the read timing; and when the write timing is different from the read timing of the external module, if the write address is equal to the write address threshold, then output to the computing module The stop calculation signal stop_work is valid to stop the calculation of the interleaved address and stop the write operation. If the read address is equal to the read address threshold, the stop calculation signal stop_work is output to the calculation module to be invalid to start the calculation of the interleaved address and start the write operation.
以下以Turbo码编译码器要求交织器每4个时钟周期输出一个交织地址为例,描述上述各模块的电路原理。The circuit principles of the above-mentioned modules are described below by taking the turbo codec as an example requiring the interleaver to output an interleaving address every 4 clock cycles.
参见图3所示,图3示出了计算模块硬件原理图。来自缓存模块的停止计算信号stop_work以及外部的start_cp信号送至具有三个状态的第一状态机的使能端,所述状态机实质为3进制的计数器。当stop_work信号无效且start_cp信号有效时,第一状态机开始计数输出,以向计算模块中行计数器、列计数器、各锁存器、以及输出延迟单元提供时钟信号。地址计算单元根据来自初始化模块的基地址和行计数器输出的行序号j,计算行间交换模式T(j)和交换素数rT(j)对应的存储地址,向第二ROM存储器的读地址端输出该地址,第二存储器根据读地址查找对应的行间交换模式T(j)和交换素数rT(j),分别输出至第一乘法器和第二乘法器,其中第一乘法器计算列数C与行间交换模式T(j)的乘积后输出到第一锁存器,第二乘法器计算交换素数rT(j)与列计数器输出的列序号i的乘积后,输出到第二锁存器。第二锁存器输出至除法器,除法器将第二锁存器的输出与p-1进行模运算,以计算因式(i*rT(j))mod(p-1),除法器输出计算结果至第三锁存器。第三锁存器将该计算结果作为读地址输出至存储了行内交换基本序列s(i)的初始化模块中的RAM,该RAM根据读地址输出该地址对应的行内交换基本序列s(i)至复用器,复用器根据列数C与素数p的关系以及当C=p+1时K与C*R的关系,从复用器的0值、p值、s(i)或1值输入信号中选择满足交织地址计算式的输入信号进行选择性复用,复用后输出至加法器,加法器将来自第一锁存器的计算值与来自选择器的值进行叠加,然后输出至第四锁存器,此时加法器的输出值即为按交织计算公式计算的交织地址。比较器将第四锁存器的输出值和交织长度进行比较,如果第四锁存器的输出值小于等于交织长度,则比较器输出有效交织地址标志valid_flag的有效值至第五锁存器,通过第五锁存器输出,否则,比较器输出有效交织地址标志valid_flag的无效值至第五锁存器。同时,输出延迟单元将来自第四锁存器的交织地址延迟一个时钟周期后输出至缓存模块中的缓存器,即,向缓存模块输出信号cp_output,以使得交织地址的输出与有效交织地址标志valid_flag的输出的时序一致。Referring to FIG. 3 , FIG. 3 shows a hardware schematic diagram of the computing module. The stop calculation signal stop_work from the cache module and the external start_cp signal are sent to the enable terminal of the first state machine with three states, and the state machine is essentially a ternary counter. When the stop_work signal is inactive and the start_cp signal is active, the first state machine starts counting and outputting to provide clock signals to the row counter, column counter, latches, and output delay units in the calculation module. The address calculation unit calculates the storage address corresponding to the inter-row exchange mode T(j) and the exchange prime rT(j) according to the base address from the initialization module and the row number j output by the row counter, and outputs to the read address end of the second ROM memory This address, the second memory looks up the corresponding inter-row exchange mode T(j) and exchange prime number r T(j) according to the read address, and outputs to the first multiplier and the second multiplier respectively, wherein the first multiplier calculates the number of columns The product of C and the inter-row exchange mode T(j) is output to the first latch, and the second multiplier calculates the product of the exchange prime r T(j) and the column number i output by the column counter, and then outputs to the second lock memory. The output of the second latch is sent to the divider, and the divider moduloes the output of the second latch with p-1 to calculate the factor (i*r T(j) )mod(p-1), the divider Output the calculation result to the third latch. The third latch outputs the calculation result as a read address to the RAM in the initialization module that has stored the basic sequence s(i) of the exchange in the row, and the RAM outputs the basic sequence s(i) of the exchange in the row corresponding to the address according to the read address to The multiplexer, the multiplexer is based on the relationship between the column number C and the prime number p and the relationship between K and C*R when C=p+1, from the 0 value, p value, s(i) or 1 value of the multiplexer Among the input signals, the input signals satisfying the interleaving address calculation formula are selected for selective multiplexing, and then output to the adder after multiplexing. The adder superimposes the calculated value from the first latch and the value from the selector, and then outputs to The fourth latch, at this time, the output value of the adder is the interleaving address calculated according to the interleaving calculation formula. The comparator compares the output value of the fourth latch with the interleaving length, and if the output value of the fourth latch is less than or equal to the interleaving length, the comparator outputs the effective value of the effective interleaving address flag valid_flag to the fifth latch, output through the fifth latch, otherwise, the comparator outputs an invalid value of the valid interleaved address flag valid_flag to the fifth latch. At the same time, the output delay unit outputs the interleaved address from the fourth latch to the buffer in the buffer module after one clock cycle delay, that is, outputs the signal cp_output to the buffer module, so that the output of the interleaved address is consistent with the effective interleaved address flag valid_flag The timing of the output is consistent.
在上述计算模块中,各锁存器为了满足交织器的时序要求而引用;行计数器中可以具有分频器,以实现在计算的过程中,以i作为外循环(i=0,...,c-1),以j作为内循环(j=0,...,R-1)计算。来自外部的正逆序标志up_down信号分别输入至行计数器和列计数器的控制端,以控制当进行正序交织地址计算时,行计数器和列计数器采用递增方式计数,当进行逆序交织地址计算时,采用递减方式计数。行计数器和列计数器的输出信号还分别送至控制逻辑,该控制逻辑在计算出交织地址的时序中向缓存模块输出开始存储控制信号start_save。In the above calculation module, each latch is quoted in order to meet the timing requirements of the interleaver; a frequency divider may be provided in the row counter to realize that in the calculation process, i is used as an outer loop (i=0,... , c-1), taking j as the inner loop (j=0, . . . , R-1) for calculation. The positive and negative sequence flag up_down signals from the outside are respectively input to the control terminals of the row counter and the column counter to control the row counter and the column counter to count in increments when performing the forward sequence interleaving address calculation. When performing the reverse sequence interleaving address calculation, use Count down. The output signals of the row counter and the column counter are respectively sent to the control logic, and the control logic outputs the storage start control signal start_save to the cache module at the timing of calculating the interleave address.
最核心部分是乘除器的计算,它将决定交织器的工作速度,在本发明中,使用流水线的方法来完成乘除器的运算,一个乘法器和除法器计算一次(i*rT(j))mod(p-1),由于使用第一状态机的状态2来进行锁存、数据的读取,所以乘法和除法的计算都是各用3个时钟周期,乘除法运算的速度均可以满足要求。乘除法运算流水线见图4,这是一个2级流水。采用流水线的方式可以比无流水线方式的速度提高一倍。除法器可以采用EDA综合工具中的库直接生成,不需要自己写VHDL程序,不仅使用方便,而且面积小,功能齐全。The core part is the calculation of multiplier and divider, which will determine the working speed of interleaver. In the present invention, the method of pipeline is used to complete the calculation of multiplier and divider. A multiplier and divider calculate once (i*r T(j) )mod(p-1), since the state 2 of the first state machine is used for latching and data reading, the calculations of multiplication and division each use 3 clock cycles, and the speed of multiplication and division operations can satisfy Require. The multiplication and division operation pipeline is shown in Figure 4, which is a 2-stage pipeline. The speed of using the pipeline method can be doubled than that of the non-pipeline method. The divider can be directly generated by using the library in the EDA synthesis tool, and there is no need to write a VHDL program by yourself. It is not only easy to use, but also has a small area and complete functions.
参见图5所示,图5示出了缓存模块电路原理图。其中,用于提供写操作地址控制的3进制第三状态机、用于提供读操作地址控制的4进制的第四状态机、写地址计数器、读地址计数器、与门以及停止计算信号产生模块组成了控制电路。来自外部的启动信号start_cp分别输入至第三状态机和第四状态机的计数使能端,时钟信号分别提供给第三状态机、第四状态机、以及用于缓存交织地址的RAM,来自计算模块的开始存储控制信号start_save、来自计算模块的有效交织地址标志valid_flag、以及第三状态机的输出信号输入至与门进行与逻辑运算后输出到缓存交织地址的缓存器的写使能端。第三状态机的输出信号还输出至写地址计数器,第四状态机的输出信号输出至读地址计数器,从而使得写操作每3个时钟执行一次,读操作每4个时钟执行一次。写地址计数器的输出分别输入到缓存交织地址的缓存器的写地址端和停止计算信号产生模块,读地址计数器的输出分别输入到缓存交织地址的缓存器的读地址端和停止计算信号产生模块。停止计算信号产生模块根据输入的写地址判断当前写地址是否等于设定的写地址阈值,如果是,则向计数模块中的第一状态机的计数使能端输出stop_work有效;根据输入的读地址判断当前读地址是否等于设定的读地址阈值,如果是,则向计数模块中的第一状态机的计数使能端输出stop_work无效。来自计数模块中的输出延迟单元的cp_output输出至缓存交织地址的缓存器的数据端。Referring to FIG. 5 , FIG. 5 shows a schematic circuit diagram of a cache module. Among them, the ternary third state machine for providing write operation address control, the quaternary fourth state machine for providing read operation address control, write address counter, read address counter, AND gate and stop calculation signal generation The modules make up the control circuit. The start signal start_cp from the outside is respectively input to the count enable terminal of the third state machine and the fourth state machine, and the clock signal is respectively provided to the third state machine, the fourth state machine, and the RAM for caching the interleaving address, from the calculation The start storage control signal start_save of the module, the valid interleave address flag valid_flag from the calculation module, and the output signal of the third state machine are input to the AND gate for AND logic operation, and then output to the write enable terminal of the buffer that caches the interleave address. The output signal of the third state machine is also output to the write address counter, and the output signal of the fourth state machine is output to the read address counter, so that the write operation is performed once every 3 clocks, and the read operation is performed once every 4 clocks. The output of the write address counter is respectively input to the write address end of the buffer for buffering the interleaving address and the stop calculation signal generation module, and the output of the read address counter is respectively input to the read address end of the buffer for buffering the interleaved address and the stop calculation signal generation module. Stop calculation signal generation module judges whether current write address is equal to the write address threshold value of setting according to the write address of input, if so, then to the counting enable terminal output stop_work of the first state machine in the counting module is effective; According to the read address of input Judging whether the current read address is equal to the set read address threshold, if yes, outputting stop_work to the count enable terminal of the first state machine in the count module is invalid. The cp_output from the output delay unit in the counting module is output to the data end of the buffer for buffering the interleaving address.
从缓存模块的组成可以看出,每三时钟周期向缓存交织地址的缓存器写入一个交织地址,每四个时钟周期从缓存器中读出一个有效交织地址,由于写的速度快,读的速度慢,而存储空间是有限的,并且交织地址的计算是实时的,因此当读写进行到一定程度时,要将计算停下来,待再读出一部分数据后再启动计算,以免交织地址还没有读出来就被覆盖。上述停止计算信号产生模块通过输出stop_work信号来实现读写的控制。It can be seen from the composition of the cache module that an interleaving address is written into the buffer for caching the interleaving address every three clock cycles, and an effective interleaving address is read from the buffer every four clock cycles. Due to the fast writing speed, the read The speed is slow, but the storage space is limited, and the calculation of the interleaving address is real-time. Therefore, when the reading and writing progress to a certain extent, the calculation should be stopped, and the calculation should be started after reading a part of the data to avoid the interleaving address. Overwritten without reading it. The above-mentioned stop calculation signal generation module realizes the control of reading and writing by outputting the stop_work signal.
参见图6所示,图6为交织器输入输出的时序关系图。当start_ini信号有效时,初始化模块开始工作,通过输入的参数组,选择当前业务下相应的参数(包括p,v,R,C),并实时计算行内交换基本序列s(i)的值,存贮到初始模块内的RAM中,在初始化结束以后,输出一个初始化结束标志flag,反馈给外部模块;当外部模块接收到flag信号后,向计算模块和缓存模块发出start_cp,同时交织器计算模块读外部送来的正逆序标志up_down,并锁入寄存器中,当up_down=’1’时表示正序,为’0’时表示逆序,于是开始进行交织地址的计算,在start_cp信号有效后的第23个时钟周期开始,每计算出一个交织地址,则输出一个开始存储控制信号start_save。Referring to FIG. 6 , FIG. 6 is a timing relationship diagram of the input and output of the interleaver. When the start_ini signal is valid, the initialization module starts to work, selects the corresponding parameters (including p, v, R, C) under the current business through the input parameter group, and calculates the value of the basic sequence s(i) exchanged in the row in real time, and saves Stored in the RAM in the initial module, after the initialization is completed, an initialization end flag flag is output and fed back to the external module; when the external module receives the flag signal, it sends start_cp to the calculation module and the cache module, and the interleaver calculation module reads The positive and negative sequence flag up_down sent from the outside is locked into the register. When up_down='1', it indicates the positive sequence, and when it is '0', it indicates the reverse sequence. Then the calculation of the interleaving address is started. After the start_cp signal is valid, the 23rd Starting from the first clock cycle, each time an interleaving address is calculated, a start storage control signal start_save is output.
在计算模块中所计算出的交织地址包括有效交织地址和无效交织地址,每三个时钟周期输出一个交织地址。在缓存模块,每3个时钟周期写入一个有效交织地址,每4个时钟周期读出一个有效交织地址。由于无效地址都在比特输入矩阵的第一行,因此至少每隔20个交织地址才会有1个无效交织地址。The interleaving addresses calculated in the calculation module include effective interleaving addresses and invalid interleaving addresses, and an interleaving address is output every three clock cycles. In the cache module, an effective interleaving address is written every 3 clock cycles, and an effective interleaving address is read every 4 clock cycles. Since the invalid addresses are all in the first row of the bit input matrix, at least every 20 interleaving addresses will have one invalid interleaving address.
如果缓存模块中的控制电路在写时序和外部模块的读时序相同时,这时图2所示交织器中,将没有停止计算信号反馈至计算模块,而缓存模块的电路原理如图7所示。控制电路包括,写地址计数器、读地址计数器、与门以及第二状态机,其中,来自外部的所述启动信号输入至第二状态机的使能端,所述时钟信号输入至第二状态机的输入,第二状态机的输出分别连至写地址计数器和读地址计数器的输入,并还输入至与门的输入;来自计算模块的有效交织地址标志以及开始存储控制信号输入至与门的输入,与门的输出连至缓存器的写使能端;写地址计数器输出写地址至缓存器的写地址端,读地址计数器输出读地址至缓存器的读地址端。If the write timing of the control circuit in the cache module is the same as the read timing of the external module, then in the interleaver shown in Figure 2, there will be no stop calculation signal fed back to the calculation module, and the circuit principle of the cache module is shown in Figure 7 . The control circuit includes a write address counter, a read address counter, an AND gate and a second state machine, wherein the start signal from the outside is input to the enabling terminal of the second state machine, and the clock signal is input to the second state machine The input of the second state machine, the output of the second state machine is connected to the input of the write address counter and the read address counter respectively, and is also input to the input of the AND gate; the effective interleaving address flag from the calculation module and the start storage control signal are input to the input of the AND gate , the output of the AND gate is connected to the write enable end of the buffer; the write address counter outputs the write address to the write address end of the buffer, and the read address counter outputs the read address to the read address end of the buffer.
Claims (12)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNB2004100803980A CN100477538C (en) | 2004-09-29 | 2004-09-29 | A Turbo Code Interleaver |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNB2004100803980A CN100477538C (en) | 2004-09-29 | 2004-09-29 | A Turbo Code Interleaver |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN1756091A true CN1756091A (en) | 2006-04-05 |
| CN100477538C CN100477538C (en) | 2009-04-08 |
Family
ID=36689096
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CNB2004100803980A Expired - Fee Related CN100477538C (en) | 2004-09-29 | 2004-09-29 | A Turbo Code Interleaver |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN100477538C (en) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101154957B (en) * | 2006-09-30 | 2011-02-02 | 华为技术有限公司 | Turbo code interweaver and interweaved address transmission method |
| CN104617961A (en) * | 2014-12-30 | 2015-05-13 | 中山大学花都产业科技研究院 | Low hardware complexity of interleaver |
| CN106301393A (en) * | 2016-07-22 | 2017-01-04 | 西安空间无线电技术研究所 | A kind of interleaving address quick calculation method based on Turbo coding |
| CN108880609A (en) * | 2018-06-25 | 2018-11-23 | 南京理工大学 | PN synchronization method based on burst spread-spectrum signal |
| CN113381770A (en) * | 2021-06-10 | 2021-09-10 | Oppo广东移动通信有限公司 | Interleaving method, interleaver, and storage medium |
-
2004
- 2004-09-29 CN CNB2004100803980A patent/CN100477538C/en not_active Expired - Fee Related
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101154957B (en) * | 2006-09-30 | 2011-02-02 | 华为技术有限公司 | Turbo code interweaver and interweaved address transmission method |
| CN104617961A (en) * | 2014-12-30 | 2015-05-13 | 中山大学花都产业科技研究院 | Low hardware complexity of interleaver |
| CN104617961B (en) * | 2014-12-30 | 2018-05-25 | 中山大学花都产业科技研究院 | A kind of interleaver of low hardware complexity |
| CN106301393A (en) * | 2016-07-22 | 2017-01-04 | 西安空间无线电技术研究所 | A kind of interleaving address quick calculation method based on Turbo coding |
| CN106301393B (en) * | 2016-07-22 | 2019-09-06 | 西安空间无线电技术研究所 | A Fast Calculation Method of Interleaving Address Based on Turbo Coding |
| CN108880609A (en) * | 2018-06-25 | 2018-11-23 | 南京理工大学 | PN synchronization method based on burst spread-spectrum signal |
| CN113381770A (en) * | 2021-06-10 | 2021-09-10 | Oppo广东移动通信有限公司 | Interleaving method, interleaver, and storage medium |
| CN113381770B (en) * | 2021-06-10 | 2022-11-04 | Oppo广东移动通信有限公司 | Interleaving method, interleaver and storage medium |
Also Published As
| Publication number | Publication date |
|---|---|
| CN100477538C (en) | 2009-04-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1271796C (en) | Turbo-interleaving device and method | |
| CN100345390C (en) | Interleaved/deinterleaved equipment and method for communication system | |
| CN1354918A (en) | Interleaving/Deinterleaving Apparatus and Method for Communication System | |
| CN1329777A (en) | Coding system having state machine based interleaver | |
| CN1633750A (en) | Combined interleaver and deinterleaver, and turbo decoder comprising a combined interleaver and deinterleaver | |
| CN1297616A (en) | Address generator and address generating method for use in turbo interleaver/deinterleaver | |
| CN1345485A (en) | Two-dimensional interweaving device and method | |
| CN1714513A (en) | Address generation for the interleaver in the TURBO encoder and decoder | |
| CN101043284A (en) | Interleaver of TURBO coder in WCDMA system | |
| CN102356554A (en) | Turbo code data interweaving process method and interweaving device used for interweaving turbo code data | |
| JP4064894B2 (en) | Method and apparatus for generating interleaved addresses | |
| CN1258710C (en) | Circuit method for high-efficiency module reduction and multiplication | |
| CN1756091A (en) | A turbo code interleaver and its interleaving method | |
| CN101034951A (en) | Implementation method for in-Turbo code interweaver | |
| CN100388629C (en) | A Fast Calculation Method of Cyclic Redundancy Check | |
| CN101068135A (en) | Main scrambler sequence generator | |
| Wang et al. | Very low-complexity hardware interleaver for turbo decoding | |
| CN1635731A (en) | Reconfigurable password coprocessor circuit | |
| CN1592117B (en) | Mobile phone, device, method and program for calculating interleaving parameters | |
| CN109117114B (en) | Low-complexity approximate multiplier based on lookup table | |
| CN1336738A (en) | Inner interleaver alogithm and device for in-situ real-time generation of wideband CDMA Turbo code | |
| CN100525118C (en) | Turbo code interleaving address computing method and device | |
| Asghar et al. | Very low cost configurable hardware interleaver for 3G turbo decoding | |
| CN1773863A (en) | A RS (256, 252) code error correction decoding chip that can be used in large-capacity memory | |
| CN1855733A (en) | Convolution coding method and coder therefor |
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 | ||
| ASS | Succession or assignment of patent right |
Owner name: CHINA POTEVIO COMPANY LIMITED Free format text: FORMER OWNER: CHINA PUTIAN INSTITUTE OF TECHNOLOGY CO., LTD. Effective date: 20090417 |
|
| C41 | Transfer of patent application or patent right or utility model | ||
| C56 | Change in the name or address of the patentee |
Owner name: CHINA PUTIAN INSTITUTE OF TECHNOLOGY CO., LTD. Free format text: FORMER NAME: CHINA PUTIAN INSTITUTE OF TECHNOLOGY |
|
| CP03 | Change of name, title or address |
Address after: No. two North 6 street, Beijing, Haidian District Patentee after: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd. Address before: No. two, 2 street, Beijing information industry base Patentee before: POTEVIO Institute of Information Technology |
|
| TR01 | Transfer of patent right |
Effective date of registration: 20090417 Address after: No. two, 2 street, Zhongguancun science and Technology Park, Beijing, Haidian District Patentee after: CHINA POTEVIO CO.,LTD. Address before: No. two North 6 street, Beijing, Haidian District Patentee before: PETEVIO INSTITUTE OF TECHNOLOGY Co.,Ltd. |
|
| CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090408 |
|
| CF01 | Termination of patent right due to non-payment of annual fee |