CA2451640A1 - Interleaver and interleaving method in a communication system - Google Patents
Interleaver and interleaving method in a communication system Download PDFInfo
- Publication number
- CA2451640A1 CA2451640A1 CA002451640A CA2451640A CA2451640A1 CA 2451640 A1 CA2451640 A1 CA 2451640A1 CA 002451640 A CA002451640 A CA 002451640A CA 2451640 A CA2451640 A CA 2451640A CA 2451640 A1 CA2451640 A1 CA 2451640A1
- Authority
- CA
- Canada
- Prior art keywords
- variable
- interleaves
- parameters
- row
- parameter
- 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
Abstract
Disclosed is a method of determining interleaver parameters m and J according to an interleaver size N to sequentially store input data in a memory having a row×column matrix structure and partial-bit reversal order (P-BRO) interleaving the stored data, the parameters N, m, J, and R being expressed as N=2m×J+R (0<=R<2m), the method comprising:
calculating a first variable .alpha. by (log2N-~log2N~) and a second variable .beta. by (2~log2~N~);
comparing the first variable with a selected first threshold;
comparing the second variable with at least one predetermined second threshold;
determining a first parameter J according to the comparison results; and determining a second parameter m by ~log2(~)~.
calculating a first variable .alpha. by (log2N-~log2N~) and a second variable .beta. by (2~log2~N~);
comparing the first variable with a selected first threshold;
comparing the second variable with at least one predetermined second threshold;
determining a first parameter J according to the comparison results; and determining a second parameter m by ~log2(~)~.
Description
WO 03/067766 PCTlKR03l00261 INTERLEAVER AND INTERJ,EAVING METHOD iN A COI~EViUNICATION
SYSTEM
This is a divisional application of Canadian Patent Application No. 2,443,453 filed on February 6, 2003.
BACKGROUND OF THE INVENTION
Field of the Invention:
The present invention relates generally to interleaving in a communication system, and in parricular, to a method of optimizing parameters according to an interleaves size for partial bit reversal ordex (P-BRO) interleaving and an interieaver using the same. It should be understood that the expression "the invention"
and the like encompasses the subject matter of both the parent and the divisional applications.
Description of the Related Art:
While a sub-block channel interleaves designed in accordance with the IS-2000 Release C(IxEV-DV) F/L specification performs P-BRO operation for row permutation similarly to an existing channel interleaves designed in accordance with the IS-2000 Release A/B spec., the sub-block channel interleaves differs from the channel interleaves in that the former generates read addresses in a different manner and requires I S full consideration of the influence of a selected interleaves parameter on Quasi-Complementary Turbo code (QCTC) symbol selection.
Hence, there is a need for analyzing the operating principles of the sub-block channel interleaves and the channel interleaves and creating criteria on which to generate optimal parameters for the channel interleavers. The optimal parameters will offer the best performance in channel interleavers built in accordance with both the IS-Release AB and IS-2000 Release C.
SUMMARY OF THE INVENTION
An object of the present invention is to substantially solve at least the above problems andlor disadvantages and to provide at least the advantages described below.
Accordingly, it is an object of the present invention to provide a method of optimizing parameters for P-BRO interleaving and an interleaves using the optimizing parameters.
It is another object of the present invention to provide a method of optimizing parameters m and J according to an interleaves size for P-BRO interleaving and an interleaves using the same To achieve the above and other objects, there are provided a P-BRO
interleaves and a method for optimizing parameters according to an interleaves size for -Z-the P-BRO interleaves. The P-BRO interleaves sequentially; by columns, arranges an input data stream of size N in a matrix having 2"' rows, (J-1) columns, and R
rows in a Jth column, The P-BRO interleaves interleaves the arranged data, and reads the interleaved data by rows. Here. hl. m_ 3 and R are Qiven as follows:-N m J R
The present invention also provides a method of determining interleaves parameters m and J according to an interleaves size N to sequentially store input data in a memory having a rowxcolumn matrix structure and partial-bit reversal order (P-BRO) interleaving the stored data, the parameters N, m, J, and R being expresseii as N=2mxJ+R (OSR<2m), the method comprising:
calculating a first variable a by (Iog2N-Llog1 N~) and a second variable (3 by comparing the first variable with a selected first threshold;
comparing the second variable with at least one predetermined second threshold;
determining a first parameter J according to the comparison results; and determining a second parameter m by ~logZ(~)~.
,JJ
t WO 03/067766 Pt:TlKR03100261 -Z a The present invention also provides an interleaver in a communication system, comprising:
a memory having a rowxcolumn matrix; ana an~ address generator adapted to partial-bit reversal order (P-BRO) interleave addresses of the memory, calculate a first variable a by (IoglN-Llogz N~) using a given interleaver size N and a second variable ~ by (2~'°g?N~), compare the first variable with a predetermined first threshold, compare the second variable with-at least or~-predetermined second threshold, determine a first parameter J according to the comparison results, calculate a second parameter m by ~log2(~)~, calculate a third parameter R by N=2mxJ+R, sequentially arrange by columns an input data stream of size N in a matrix having 2"' rows 'and J columns, and in R rows in a Jth column (4_<R<2~,-P-BRO interleave the arranged data and generate read addresses for reading the interleaved data by rows.
BRIEF DESCRIPTION OF THE DIRAWINGS
. The above and other object's, features and advantages of the present invention will become more .apparent from the following detailed description of preferred IO embodiriients thereof when taken in conjunction with the accompanying drawings, in .which:
Fig. 1 illustrates P-BRO interleaving when N--38~, nrr--'I and 3=3 according to an embodiment of the present invention; -IS
Fig. 2. illustrates distances between read addresses after P-BRO interleaving when N--384, m=7 and J=3 according to an embodiment of the present invention;
Fig. 3 illustrates P-BRO interleaving when N=408, m=7, J=3 and R=24 20 according to an embodiment of the present invention;
Fig. 4 illustrates the minimum infra-row distance after P-BRO interleaving when N=408, m=7 and J=3 according to an embodiment of the present invention;
25 Fig. 5 is a block diagram of an interieaver to which an embodiment of the WO 03/067766 PCT/KIt03/0026i present invention is applied;
Fig. 6 is a flowchart illustrating a first example of the optimal interleaves parameters determining operation according to an embodiment of the present invention;
and Fig. 7 is a flowchart illustrating another example of the optimal interleaves parameters determining operation according to an embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Several preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the same or similar elements are denoted by the same reference numerals, even though they are depicted in different drawings. In the following description, a detailed description of known functions or co~gurations incorporated herein have been omitted for conciseness.
Hereinbelow, a description will be made of P'-BRO interleaving to which various embodiments of the present invention are applied, as well as the principle of determining parameters for optimal P-BRO interleaving in accordance with embodiments of the present invention.
Fig. 5 is a block diagram of a P-BRO interleaves to which an embodiment of the present invention is applied. Referring to Fig. 5, an address generator 511 receives an interleaves size N, a first parameter m (i.e., Bit Shift), a second parameter J (i.e., Up Limit) and a clock signal Clock, and generates read addresses to read bit symbols from an interleaves memory 512. The parameters m and J are determined in an higher-layer controller (not shown) and provided to the address generator 511, or determined according to the interleaves size N in the address generator 511. The interleaves memory 512 sequentially stores input bit symbols at write addresses corresponding to count values of a counter S 13 in a write mode, and outputs bit symbols from read addresses received from the address generator 511 in a read mode. The counter 513 receives the clock signal Clock, generates a count value, and provides it as a write address Write ADDR to the interleaves memory S 12.
As described above, the P-BRO interleaves writes input data sequentially in the interleaves memory 512 in the write mode and reads data from the interleaves memory 512 according to read addresses generated from the address generator S
11. For _t~_ details of the P-BRO interleaves, reference is made to Korea Patent Application I~o.
1998-54131, filed on December 10, 1998, the entire contents of which are expressly incorporated herein.
In operation, the' address generator 511 generates a read address A; for symbol permutation by A; =2"'(imod J)+BROm(~tlJ~
.....{1) where ice, I, . . ., N-1 and N=2"ScJ.
In Eq. (1), N denotes the size of an interleaves input sequence and m and J
are interleaves parameters called Up_Limit and Bit Shift, respectively.
I 5 Fig. 1 illustrates P-BRO interleaving when N=384, m=7 and J=3. Referring to Fig. 1, an interleaving matrix has 2"'rows starting from index 0 and 3 columns starting from index 0. After step 101, the row index and column index of a symbol in the resulting matrix are expressed as Li/J~ and (i mod J), respectively.
Therefore, after 2'"(i .mod J)+ ~i13,, an ith symbol in an input sequence has a number corresponding to an ~i/J~th row and an (I mod J) column as its read address. J symbols are in each row and the distance between symbols is 2'° in the row.
The row index ~.i/J~ is BRO-operated instep 102. If the distance between symbols in adjacent rows of the same column is row distance d,~"" the BRO
operation of the row indexes results in a row permutation such that two minimum mw distances d~W
are 2"''Z and 2'"-', as illustrated in Fig. 2. Thus, after 2'"(i mad J)+
BRO",~i/J~, the ith -symbol in the input sequence has a number corresponding to a BRO,,~,.i/J~th row and an (i mod J)th column as its read address in the third matrix from the left.
In summary, a read address sequence is generated by row permutations of a 2'"xJ matrix in the P-BRO interleaves. The row-permuted matrix is read first by rows from the top to the bottom, then subsequently reading each row from the left to the right.
For clanty of descnpt~on, the dastance between adjacent addresses m the same row is defined as "intro-row distance d;n~,". If J~l, d;~~,=2'". If J=1, there is no 35. infra-row distance.
WO 03/067766 PCTfKR03/00261 The distance between adjacent addresses in different rows, that is, the distance between the last address in a raw and the first address in the next row is defined as "inter-row distance d;~,~". d;~t~r is one of a plurality of values calculated from a function of the parameters m and J. When m and 1 are determined, the resulting S minimum inter-row distance d;"« is defined as d~~e~ .
Since two minimum rows distances d~w are 2"'-'Z and 2"''-', d,ntn = dmT» ! 2m-~
tntBr row .else, d~n~ =(J-Ij'2 -2 =(2-J-3)'2 . .....{2) The reason for computing d;n~e, by Eq. {2) when 3~1 is apparent in Fig. 2. If J=l, which implies that the interleaving matrix has only one column, d;n;er is d;oW , that 1S, 2"'-2.
As described above, the interleaves parameters m and J are.used as the numbers of rows and columns in a read address sequence matrix and parameters for a function that determines distances between read addresses. Consequently, the characteristics of the P-BRO channel interleaves depend on the interleaves parameters m and J.
Before presenting a description of a method of determining sub-block channel interleaves parameters that ensure the best interleaving performance according to an embodiment of the present invention, the purposes of channel interleavers in the IS-2000 specifications, Releases A!B and C will first be described. Following that, the interleaves parameter determination will then be described separately in two cases:
N=2"'xJ; and N=2'"xJ+R.
The propose of channel interleaving in the IS-2000 specification, Release A/B, is to improve decoding performance, which is degraded when fading adversely influences successive code symbols, through error scattering resulting from symbol permutation. To improve decoding performance, interleaving must be performed such that the distance between adjacent addresses (inter-address distance) is maximized.
Meanwhile, the purpose of sub-block channel interleaving as described in the IS-2000 specification, Release C, is to allow a QCTC symbol selector at the rear end of an interleaver- to select appropriate code symbols according to a coding rate and thus ensure the best performance at the coding rate, as well as to scatter errors through symbol permutation. To achieve this purpose, interleaving must be performed such that inter-address distances are maximized and are uniform.
Accordingly, to satisfy the requirements of the channel interleaves of the IS-2000 specification, Release AIB, and the sub-block channel interleaves of the specification, Release C, an interleaves must be designed so that a read address sequence is uniformly permuted by interleaving. This is possible by determining the interleaves parameters m and j that maximize a minimum inter-address distance and minimize the difference between inter-address distances.
~ As stated before, the inter-address distances are categorized into the infra-row distance d;"a, and the inter-row distance d;",q. The infra-row distance is a function of m and the inter-row distance is a function of m and J. Since there are a plurality of inter-row distances, a minimum inter-row distance din is calculated. A minimum inter-address distance is always 2"~'Z when J is 1, and the smaller of the nunimum inter-row distance d;~ w and the minimum infra-row distance d;~;ra when J is not 1: The difference between inter-address distances is 2""'Z when J is 1, since the infra-row distance d;n~, is 0, and is equal to the difference between the infra-row distance d;4,~,~ and the minimum inter-row distance dm a when J is not I.
This can be expressed as follows:
I~ J ~ J' ~ _ 2~_1 ~ -_ 2~_I.
Else, ~~~r~ -d~~ = 2'~ -~2'f-3)'2m ~~ y2' J~ y2m-~
.....{3) Since N=2mxJ, 2'" is replaced by N/J in Eq. (3), it follows that IfJ=1,2"'-2'4~J-0.25, Else, ~d;""~ -d~~=~2~J-Si~2'"-' = J-2 J I~ J -~
WO 03/067766 ~ PCTlKR03100261 _7_ .....(4) When J=3 in Eq. (4), the difference between inter-address distances is minimized. Thus ~d ~"~.a - a inter ~ =0.166667N.
S Table I below illustrates changes in inter-read address distances as m increases when N=384. When J=3, a maximum difference between inter-address distances is minimized, 64 and a minimum inter-address distance d""" is maximized, L28.
Table I
N m J d die, d~na ~ d",;~~
dining ~
The method of determining optimal interleaver parameters when N=2'"xJ has _ been described above. Now, a method of determining optimal interleaver parameters when N=2"'xJ+R will be described. Here, R is the remainder of dividing N by 2"'. Thus R is a positive integer less than 2'".
Fig. 3 illustrates P-BRO interleaving when N=408, m=7, J=3 and RIO.
Referring to Fig. 3, similarly to the case where R=0, numbers in a row-permuted matrix after step 302 are read as read addresses by rows from the top to the bottom, reading each row from the left to the right, as described in step 303. Since RIO, the number of columns is J+1, and numbers are filled in only R rows of a (J+1)th column with no numbers in the other (2'"-R) rows.
In summary, when RIO, a read address sequence is generated by a row permutation of a 2"'xJ matrix, each row including J or J+1 elements in the P-BR~
interleaver. The row-permuted matrix is read by rows from the top to the bottom, reading each row from the left to the right.
Furthermore, when RIO, the interleaver parameters m and J are determined such that a minimum inter-read address distance is maximized and the difference between inter-read address distances is minimized.
WO 03/067766 PCTlKR03/0026I
_$_ An inter-row distance d;~,~, is a function of m, 2m irrespective of whether R==0 or RIO.
However, while the minimum inter-row distance d;~,~, is a function of m and J
when R=-0, it is a function of m, 3 and R when RIO.
The minimum inter-row distance is determined according to J by Eq. (5) and Eq. (6).
WhenJ=1, ForO<_R<3-2"''z,, d,~=2~-z For3-2m'z <_R<2m, d~ =2'"-' .....(S) When J ~ I, For 0 <_ R~ < 2'"'' , d'"'" _ (J _ 1) ~ 2'" - 2'~-' - (2J - 3) - 2'~-' rarer For 2'"'' SR <3~2'"'z, d ~ -=s(J-1)~2'"-(-2'"-Z)=(4J-3)-2'~'z For 3-2'"'z <_ R < 2'", d~~, =J-2'" -2°'-' =(2J-1).2mm . . . (6) Fig. 4 illustrates how Eq. (6) is derived when m=7 and J=3. Referring to Fig.
I 5 4, when 0<R<2"r'', the inter-row distance between two adjacent rows having a row distance d,~w of 2~'', the last column of the upper row being empty, is a minimum inter-.row distance ( due; ; _ (2J -3) - 2~'-' ). When 2"'''5R<3 ~2"~2, the inter-row distance between two adjacent rows having a row distance d,~W of 2"'2, the last column of the upper row being empty, is a minimum inter-raw distance ( d~,~, _ (4J-3)-2'"-z ).
When 3-2"''z5R<2"', the inter-row distance between two adjacent rows having a row distance d,~", of 2~'2 and elements in the Last columns, is a minimum inter-row distance ( d n« _ (2J -1) - 2'~-' ). For example; if R=0, the minimum inter-row distance is 192, as indicated by reference numeral 401. If R=64 (2"'''), the minimum inter-row distance is 288, as indicated by reference numeral 402. If R~6 (3-2"''Z), the minimum inter-raw distance is 320, as indicated by reference numeral 403. In the same manner, Ed.
(5) can be derived when J=I .
Table Z below illustrates changes in the interleaves parameters J and R, the infra-row distance d;~~" the minimum inter-row distance d ~; , and the minimum inter-read address distance d",;" as m increases, with respect fo six encoder packet (EP) sizes as described in the IS-2040 specification, Release C.
Table 2 min min N m J ~ ~"~ d ~~, d;n~a " d n(d ' d ire ~ ) 4 25 ~8 I6 388 372 16 392 ? ~ ?~ 3~$ 1~ S~ 1~$ ~Q
4 49 8 I6 772 756 , 16 776 5 24 24 32- 752 720 . 32 760 7 6 24 128 576 448 i28 664 $ ~ Z4 2~ ~ .12~
SYSTEM
This is a divisional application of Canadian Patent Application No. 2,443,453 filed on February 6, 2003.
BACKGROUND OF THE INVENTION
Field of the Invention:
The present invention relates generally to interleaving in a communication system, and in parricular, to a method of optimizing parameters according to an interleaves size for partial bit reversal ordex (P-BRO) interleaving and an interieaver using the same. It should be understood that the expression "the invention"
and the like encompasses the subject matter of both the parent and the divisional applications.
Description of the Related Art:
While a sub-block channel interleaves designed in accordance with the IS-2000 Release C(IxEV-DV) F/L specification performs P-BRO operation for row permutation similarly to an existing channel interleaves designed in accordance with the IS-2000 Release A/B spec., the sub-block channel interleaves differs from the channel interleaves in that the former generates read addresses in a different manner and requires I S full consideration of the influence of a selected interleaves parameter on Quasi-Complementary Turbo code (QCTC) symbol selection.
Hence, there is a need for analyzing the operating principles of the sub-block channel interleaves and the channel interleaves and creating criteria on which to generate optimal parameters for the channel interleavers. The optimal parameters will offer the best performance in channel interleavers built in accordance with both the IS-Release AB and IS-2000 Release C.
SUMMARY OF THE INVENTION
An object of the present invention is to substantially solve at least the above problems andlor disadvantages and to provide at least the advantages described below.
Accordingly, it is an object of the present invention to provide a method of optimizing parameters for P-BRO interleaving and an interleaves using the optimizing parameters.
It is another object of the present invention to provide a method of optimizing parameters m and J according to an interleaves size for P-BRO interleaving and an interleaves using the same To achieve the above and other objects, there are provided a P-BRO
interleaves and a method for optimizing parameters according to an interleaves size for -Z-the P-BRO interleaves. The P-BRO interleaves sequentially; by columns, arranges an input data stream of size N in a matrix having 2"' rows, (J-1) columns, and R
rows in a Jth column, The P-BRO interleaves interleaves the arranged data, and reads the interleaved data by rows. Here. hl. m_ 3 and R are Qiven as follows:-N m J R
The present invention also provides a method of determining interleaves parameters m and J according to an interleaves size N to sequentially store input data in a memory having a rowxcolumn matrix structure and partial-bit reversal order (P-BRO) interleaving the stored data, the parameters N, m, J, and R being expresseii as N=2mxJ+R (OSR<2m), the method comprising:
calculating a first variable a by (Iog2N-Llog1 N~) and a second variable (3 by comparing the first variable with a selected first threshold;
comparing the second variable with at least one predetermined second threshold;
determining a first parameter J according to the comparison results; and determining a second parameter m by ~logZ(~)~.
,JJ
t WO 03/067766 Pt:TlKR03100261 -Z a The present invention also provides an interleaver in a communication system, comprising:
a memory having a rowxcolumn matrix; ana an~ address generator adapted to partial-bit reversal order (P-BRO) interleave addresses of the memory, calculate a first variable a by (IoglN-Llogz N~) using a given interleaver size N and a second variable ~ by (2~'°g?N~), compare the first variable with a predetermined first threshold, compare the second variable with-at least or~-predetermined second threshold, determine a first parameter J according to the comparison results, calculate a second parameter m by ~log2(~)~, calculate a third parameter R by N=2mxJ+R, sequentially arrange by columns an input data stream of size N in a matrix having 2"' rows 'and J columns, and in R rows in a Jth column (4_<R<2~,-P-BRO interleave the arranged data and generate read addresses for reading the interleaved data by rows.
BRIEF DESCRIPTION OF THE DIRAWINGS
. The above and other object's, features and advantages of the present invention will become more .apparent from the following detailed description of preferred IO embodiriients thereof when taken in conjunction with the accompanying drawings, in .which:
Fig. 1 illustrates P-BRO interleaving when N--38~, nrr--'I and 3=3 according to an embodiment of the present invention; -IS
Fig. 2. illustrates distances between read addresses after P-BRO interleaving when N--384, m=7 and J=3 according to an embodiment of the present invention;
Fig. 3 illustrates P-BRO interleaving when N=408, m=7, J=3 and R=24 20 according to an embodiment of the present invention;
Fig. 4 illustrates the minimum infra-row distance after P-BRO interleaving when N=408, m=7 and J=3 according to an embodiment of the present invention;
25 Fig. 5 is a block diagram of an interieaver to which an embodiment of the WO 03/067766 PCT/KIt03/0026i present invention is applied;
Fig. 6 is a flowchart illustrating a first example of the optimal interleaves parameters determining operation according to an embodiment of the present invention;
and Fig. 7 is a flowchart illustrating another example of the optimal interleaves parameters determining operation according to an embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Several preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the same or similar elements are denoted by the same reference numerals, even though they are depicted in different drawings. In the following description, a detailed description of known functions or co~gurations incorporated herein have been omitted for conciseness.
Hereinbelow, a description will be made of P'-BRO interleaving to which various embodiments of the present invention are applied, as well as the principle of determining parameters for optimal P-BRO interleaving in accordance with embodiments of the present invention.
Fig. 5 is a block diagram of a P-BRO interleaves to which an embodiment of the present invention is applied. Referring to Fig. 5, an address generator 511 receives an interleaves size N, a first parameter m (i.e., Bit Shift), a second parameter J (i.e., Up Limit) and a clock signal Clock, and generates read addresses to read bit symbols from an interleaves memory 512. The parameters m and J are determined in an higher-layer controller (not shown) and provided to the address generator 511, or determined according to the interleaves size N in the address generator 511. The interleaves memory 512 sequentially stores input bit symbols at write addresses corresponding to count values of a counter S 13 in a write mode, and outputs bit symbols from read addresses received from the address generator 511 in a read mode. The counter 513 receives the clock signal Clock, generates a count value, and provides it as a write address Write ADDR to the interleaves memory S 12.
As described above, the P-BRO interleaves writes input data sequentially in the interleaves memory 512 in the write mode and reads data from the interleaves memory 512 according to read addresses generated from the address generator S
11. For _t~_ details of the P-BRO interleaves, reference is made to Korea Patent Application I~o.
1998-54131, filed on December 10, 1998, the entire contents of which are expressly incorporated herein.
In operation, the' address generator 511 generates a read address A; for symbol permutation by A; =2"'(imod J)+BROm(~tlJ~
.....{1) where ice, I, . . ., N-1 and N=2"ScJ.
In Eq. (1), N denotes the size of an interleaves input sequence and m and J
are interleaves parameters called Up_Limit and Bit Shift, respectively.
I 5 Fig. 1 illustrates P-BRO interleaving when N=384, m=7 and J=3. Referring to Fig. 1, an interleaving matrix has 2"'rows starting from index 0 and 3 columns starting from index 0. After step 101, the row index and column index of a symbol in the resulting matrix are expressed as Li/J~ and (i mod J), respectively.
Therefore, after 2'"(i .mod J)+ ~i13,, an ith symbol in an input sequence has a number corresponding to an ~i/J~th row and an (I mod J) column as its read address. J symbols are in each row and the distance between symbols is 2'° in the row.
The row index ~.i/J~ is BRO-operated instep 102. If the distance between symbols in adjacent rows of the same column is row distance d,~"" the BRO
operation of the row indexes results in a row permutation such that two minimum mw distances d~W
are 2"''Z and 2'"-', as illustrated in Fig. 2. Thus, after 2'"(i mad J)+
BRO",~i/J~, the ith -symbol in the input sequence has a number corresponding to a BRO,,~,.i/J~th row and an (i mod J)th column as its read address in the third matrix from the left.
In summary, a read address sequence is generated by row permutations of a 2'"xJ matrix in the P-BRO interleaves. The row-permuted matrix is read first by rows from the top to the bottom, then subsequently reading each row from the left to the right.
For clanty of descnpt~on, the dastance between adjacent addresses m the same row is defined as "intro-row distance d;n~,". If J~l, d;~~,=2'". If J=1, there is no 35. infra-row distance.
WO 03/067766 PCTfKR03/00261 The distance between adjacent addresses in different rows, that is, the distance between the last address in a raw and the first address in the next row is defined as "inter-row distance d;~,~". d;~t~r is one of a plurality of values calculated from a function of the parameters m and J. When m and 1 are determined, the resulting S minimum inter-row distance d;"« is defined as d~~e~ .
Since two minimum rows distances d~w are 2"'-'Z and 2"''-', d,ntn = dmT» ! 2m-~
tntBr row .else, d~n~ =(J-Ij'2 -2 =(2-J-3)'2 . .....{2) The reason for computing d;n~e, by Eq. {2) when 3~1 is apparent in Fig. 2. If J=l, which implies that the interleaving matrix has only one column, d;n;er is d;oW , that 1S, 2"'-2.
As described above, the interleaves parameters m and J are.used as the numbers of rows and columns in a read address sequence matrix and parameters for a function that determines distances between read addresses. Consequently, the characteristics of the P-BRO channel interleaves depend on the interleaves parameters m and J.
Before presenting a description of a method of determining sub-block channel interleaves parameters that ensure the best interleaving performance according to an embodiment of the present invention, the purposes of channel interleavers in the IS-2000 specifications, Releases A!B and C will first be described. Following that, the interleaves parameter determination will then be described separately in two cases:
N=2"'xJ; and N=2'"xJ+R.
The propose of channel interleaving in the IS-2000 specification, Release A/B, is to improve decoding performance, which is degraded when fading adversely influences successive code symbols, through error scattering resulting from symbol permutation. To improve decoding performance, interleaving must be performed such that the distance between adjacent addresses (inter-address distance) is maximized.
Meanwhile, the purpose of sub-block channel interleaving as described in the IS-2000 specification, Release C, is to allow a QCTC symbol selector at the rear end of an interleaver- to select appropriate code symbols according to a coding rate and thus ensure the best performance at the coding rate, as well as to scatter errors through symbol permutation. To achieve this purpose, interleaving must be performed such that inter-address distances are maximized and are uniform.
Accordingly, to satisfy the requirements of the channel interleaves of the IS-2000 specification, Release AIB, and the sub-block channel interleaves of the specification, Release C, an interleaves must be designed so that a read address sequence is uniformly permuted by interleaving. This is possible by determining the interleaves parameters m and j that maximize a minimum inter-address distance and minimize the difference between inter-address distances.
~ As stated before, the inter-address distances are categorized into the infra-row distance d;"a, and the inter-row distance d;",q. The infra-row distance is a function of m and the inter-row distance is a function of m and J. Since there are a plurality of inter-row distances, a minimum inter-row distance din is calculated. A minimum inter-address distance is always 2"~'Z when J is 1, and the smaller of the nunimum inter-row distance d;~ w and the minimum infra-row distance d;~;ra when J is not 1: The difference between inter-address distances is 2""'Z when J is 1, since the infra-row distance d;n~, is 0, and is equal to the difference between the infra-row distance d;4,~,~ and the minimum inter-row distance dm a when J is not I.
This can be expressed as follows:
I~ J ~ J' ~ _ 2~_1 ~ -_ 2~_I.
Else, ~~~r~ -d~~ = 2'~ -~2'f-3)'2m ~~ y2' J~ y2m-~
.....{3) Since N=2mxJ, 2'" is replaced by N/J in Eq. (3), it follows that IfJ=1,2"'-2'4~J-0.25, Else, ~d;""~ -d~~=~2~J-Si~2'"-' = J-2 J I~ J -~
WO 03/067766 ~ PCTlKR03100261 _7_ .....(4) When J=3 in Eq. (4), the difference between inter-address distances is minimized. Thus ~d ~"~.a - a inter ~ =0.166667N.
S Table I below illustrates changes in inter-read address distances as m increases when N=384. When J=3, a maximum difference between inter-address distances is minimized, 64 and a minimum inter-address distance d""" is maximized, L28.
Table I
N m J d die, d~na ~ d",;~~
dining ~
The method of determining optimal interleaver parameters when N=2'"xJ has _ been described above. Now, a method of determining optimal interleaver parameters when N=2"'xJ+R will be described. Here, R is the remainder of dividing N by 2"'. Thus R is a positive integer less than 2'".
Fig. 3 illustrates P-BRO interleaving when N=408, m=7, J=3 and RIO.
Referring to Fig. 3, similarly to the case where R=0, numbers in a row-permuted matrix after step 302 are read as read addresses by rows from the top to the bottom, reading each row from the left to the right, as described in step 303. Since RIO, the number of columns is J+1, and numbers are filled in only R rows of a (J+1)th column with no numbers in the other (2'"-R) rows.
In summary, when RIO, a read address sequence is generated by a row permutation of a 2"'xJ matrix, each row including J or J+1 elements in the P-BR~
interleaver. The row-permuted matrix is read by rows from the top to the bottom, reading each row from the left to the right.
Furthermore, when RIO, the interleaver parameters m and J are determined such that a minimum inter-read address distance is maximized and the difference between inter-read address distances is minimized.
WO 03/067766 PCTlKR03/0026I
_$_ An inter-row distance d;~,~, is a function of m, 2m irrespective of whether R==0 or RIO.
However, while the minimum inter-row distance d;~,~, is a function of m and J
when R=-0, it is a function of m, 3 and R when RIO.
The minimum inter-row distance is determined according to J by Eq. (5) and Eq. (6).
WhenJ=1, ForO<_R<3-2"''z,, d,~=2~-z For3-2m'z <_R<2m, d~ =2'"-' .....(S) When J ~ I, For 0 <_ R~ < 2'"'' , d'"'" _ (J _ 1) ~ 2'" - 2'~-' - (2J - 3) - 2'~-' rarer For 2'"'' SR <3~2'"'z, d ~ -=s(J-1)~2'"-(-2'"-Z)=(4J-3)-2'~'z For 3-2'"'z <_ R < 2'", d~~, =J-2'" -2°'-' =(2J-1).2mm . . . (6) Fig. 4 illustrates how Eq. (6) is derived when m=7 and J=3. Referring to Fig.
I 5 4, when 0<R<2"r'', the inter-row distance between two adjacent rows having a row distance d,~w of 2~'', the last column of the upper row being empty, is a minimum inter-.row distance ( due; ; _ (2J -3) - 2~'-' ). When 2"'''5R<3 ~2"~2, the inter-row distance between two adjacent rows having a row distance d,~W of 2"'2, the last column of the upper row being empty, is a minimum inter-raw distance ( d~,~, _ (4J-3)-2'"-z ).
When 3-2"''z5R<2"', the inter-row distance between two adjacent rows having a row distance d,~", of 2~'2 and elements in the Last columns, is a minimum inter-row distance ( d n« _ (2J -1) - 2'~-' ). For example; if R=0, the minimum inter-row distance is 192, as indicated by reference numeral 401. If R=64 (2"'''), the minimum inter-row distance is 288, as indicated by reference numeral 402. If R~6 (3-2"''Z), the minimum inter-raw distance is 320, as indicated by reference numeral 403. In the same manner, Ed.
(5) can be derived when J=I .
Table Z below illustrates changes in the interleaves parameters J and R, the infra-row distance d;~~" the minimum inter-row distance d ~; , and the minimum inter-read address distance d",;" as m increases, with respect fo six encoder packet (EP) sizes as described in the IS-2040 specification, Release C.
Table 2 min min N m J ~ ~"~ d ~~, d;n~a " d n(d ' d ire ~ ) 4 25 ~8 I6 388 372 16 392 ? ~ ?~ 3~$ 1~ S~ 1~$ ~Q
4 49 8 I6 772 756 , 16 776 5 24 24 32- 752 720 . 32 760 7 6 24 128 576 448 i28 664 $ ~ Z4 2~ ~ .12~
2 ~ ?~ ~ .Z4$ ?~ ~ II048 10. 1 53b 1024 256 768 ' 256 232 11~ ~ ~Q 1Q~.4 3096 $ 12 24 256 2688 2432 256 2840 ~
~Q ~ ~ 1024 I53b 1.424 2072 .
_11_ 3 792. 1024 2560 1536 1024 2840 1 1816 19~ ~4 loz4 1024 As described above, similarly to the case where R=0, optimal interleaves parameters are selected which maximize a minimum inter-address distance and minimize the difference between inter-address distances.
In Table 2, the minimum inter-read address distance dm'° in the eighth column is the smaller of the infra-row distance d;"~ and the minimum inter-row distance d;~ a Hence, parameters that maximize the minimum inter-read address distance d~""
can be obtained by selecting a row having the maximum value in the eighth column. For EP
~Q ~ ~ 1024 I53b 1.424 2072 .
_11_ 3 792. 1024 2560 1536 1024 2840 1 1816 19~ ~4 loz4 1024 As described above, similarly to the case where R=0, optimal interleaves parameters are selected which maximize a minimum inter-address distance and minimize the difference between inter-address distances.
In Table 2, the minimum inter-read address distance dm'° in the eighth column is the smaller of the infra-row distance d;"~ and the minimum inter-row distance d;~ a Hence, parameters that maximize the minimum inter-read address distance d~""
can be obtained by selecting a row having the maximum value in the eighth column. For EP
10 sizes of 2328 and 3864, three rows and two rows satisfy this condition. In this case, rows that satisfy another condition of minimizing the difference between inter-read address ~d;""p - d;~;e, ~ must be selected. They are shown in bold and underlined in Table 2. The validity of this condition is apparent by comparing the rows having the maximum d"""" in terms of n(d""") in the last column. Here, n(d""") indicates the number of address pairs having a minimum inter-address distance d'"'°.
Rows marked in bold and underlined in Table 2 satisfy the above two conditions for selecting optimal interleaves parameters. As noted, once the second condition is satisfied, the first condition is naturally satisfied. For reference, it is made clear that the infra-row distances d;a~ and the minimum inter-row distances d;n er listed in Table 2 are equal to those computed on P-BRO-interleaved read addresses.
Table 2 covers both cases of dividing N by 2'" as J with no remainder and of dividing N by 2"' or J with a remainder R (i.e., N=2""oJ+R (0_<R~2"~}. Here, interleaves parameters shown in bold and underlined are optimal for each EP size.
When N=2mx(J-1)+R (0<_R<2"~, that is, N is divided by 2"'or J either with no remainder or with a remainder R, optimal interleaves parameters for each interleaves size N are listed in Table 3. The description made in the context of J is also applied when J is replaced by {J-1).
Table 3 N m J R
w0 03106776b PCTlKR03/00261 1 S60 9 . 4 24 3096 ' 10 4 24 The above description has provided a method of selecting interleaves parameters expected to offer the best performance when, for example, a channel interleaves built in accordance with the IS-2000 Release AB specification, and a sub-block channel interleaves built in accordance with the IS-2000 Release C
specification are used.
As described above, the optimal interleaves parameters are those that maximize an inter-address distance and at the same time, minimize the difference between inter-address distances when generating read addresses in a channel interleaves.
Consequently, interleaves parameters for sub-block channel interleaving in circumstances wherein a sub-block channel interieaver is built in accordance with the IS-2000 Release C specification are values in the rows in bold and underlined in Table 2.
While interleaves parameters selection has been described .for the sub-block channel interleaves built in accordance with the IS-2000 Release C specification, it is obvious that the same thing can also be applied to systems of other standards.
Fig. 6 is a flowchart illustrating an optimal interleaves parameters determining operation according to an embodiment of the present invention.
Particularly, .this operation is concerned with the computation of ~d;~"a -d~;~~ . An optimal (m, J) that minimizes ~d;"r,.n - d ~;~. ~ is selected by computing jd;~,,~ - di , changing (m, J).
Referring to Fig. 6, when an interleaves size N, and parameters m and J are given in step 601, a parameter R is calculated by subtracting 2"'xJ from N in step 603. In step 605, it is determined whether J is 1. This is a determination, therefore, of whether an interleaving matrix has a single column or not. If J is 1, the procedure goes to, step 607 ("Yes" path from decision step 605) and if J is not 1, the procedure goes to step 621 ("No" path from decision step 60S) . In step 607, it is determined whether R
is 0(i.e., whether N is an integer multiple of 2"~. 4n the contrary, if R is 0 (("Yes"
path from decision step 607) , an infra-row distance d;"~, is set to 0 in step 609. If R
is not 0 ("No"
path from decision step 60?) , d;"~ is set to 2"' in step 617.
WO 03/067766 PCTlKR03/00261 After d;n,~ is determined, it is determined whether R is less than 3x2"'2 in step 611. If R is less than 3x2n''z ("Yes" path from decision step 61I) a minimum inter-row distance d;~ is set to 2"'~2 in step 613. If R is equal to or greater than 3x2"'~Z ("No" path from decision step 611) d tee, is set to 2"'-' in step 619. After d n;~, is determined, 'd~rt~° -minters is calculated in step 615.
Meanwhile, if J is not 1 in step 605, d;°~ is set to 2m in step 621 and it is determined whether R is less than 2'"-' in step 623. If R is less than 2r"-' ("Yes" path from decision step 623) d;~,e is set to (2J-3)x2"''' in step 625 and then the procedure goes to step 615. If R is equal to or greater than 2"''' ("No" path from decision step 623), it is determined whether R is less than 3x2"~2 in step 627. If R is less than 3x2"''Z ("Yes"
path from decision step 627) , d; ;e, is set to (4J-3}x2'"-2 in step 629. If R
is equal to or greater than 3x2"'-Z ("No" path from decision step 62?) , d' ~, is set to (ZJ-1)x2"'-' in step 631 and then the procedure goes to step 615.
Optimal interleaver parameters m and J are achieved for a given N by computing dnt,4 - d,n e, ~ , changing (m, J}. If J is one of 1, 2 and 3, a logical formula that facilitates selection of J without the repeated computation can be derived.
With a description of a logical equation deriving procedure omitted, the logical equation is I,~' IogIN-Llog1 N~ < log? 3-1= 0.5849625, For 3 . ~.Jog1 N~ < N < I - 2f°8= N~, J = 3, For I . ZLr°g. nr j < N < ~ ~ ~ - 21'°g' N1, J = 2;
For ~ 3 ~ ~ 2f°g- "'15 N < 2 - 2~r~'= N~, ,I =1.
Rise if IogIN -~Iog1 N~ >_ logs 3 -1= 0.5849625, For I ~ 2i'°~'Nl 5 N <~'~~-2ir°g=N~, .I = 2, For~~~.2i~8_NJ <N<~~~-2i'°g=Nl, J=3, For ~~~.2f°g=N~ < N < 2.2Lrag,N)~ J ~ 1.
WO 03%067766 PCTIKR03/00261 _....(7) From an optimal J from Eq. (7), an optimal m is calculated by , m= Ioga~J~
.....(8) The selection of optimal interleaves parameters by the simple logical equations is summarized below and illustrated in Fig. 7.
1. An optimal J is obtained by Eq. (7) for a given N; and 2.-m is calculated by computing Eq: (8) using N and J.
Fig. 7 is a flowchart illustrating an optimal interleaves parameters determining operation according to another embodiment of the present invention.
IS
Referring to Fig. 7, when N is given, a variable oc is calculated by IogIN-~Iog1 N' and a variable ~3 is calculated by 2f°g=~'~ in step 701.
Decision step 703, determines whether oc is less than a first threshold, O.S849625. If oc is less than the first threshold ("Yes" path from decision step 703), another decision is made, whether N
is less than ~ in decision step 705. If N is equal to or greater than (3 ("No"
path from decision step 705) , the procedure goes to step 707. On the contrary, if N is less than (3 ("Yes" path from decision step 705) , J is determined to be 3 in step 713.
Meanwhile, decision step 707 determines whether N is less than (3/2)x(3. If N is less than (3!2)x3 ("Yes" path from decision step 707) , J is determined to be 2 in step 711. Otherwise, J is determined to be 1 in step 709 ("No" path from decision step 707) .
If cc is equal to or greater than the first threshold in step 703 ("No" path from decision step 703) , a decision is made whether N is less than {3!2)x3 in decision step 717. If N is less than (3l2)x(3 ("Yes" path from decision step 717) , J is determined to be 2 in step 721. Otherwise, decision step 7i9 determines whether N is less than {7!4)x~i.
If N is less than {7!4)x(3 {"Yes" path from decision step 719) , J is determined to be 3 in step 723. Otherwise, 3 is determined to be 1 in step 725 ("No" path from decision step 719) .
WU 03!067766 PCTlKR03IU0261 As described above, optimal m and J can be calculated simply by the logical equations using N. The optimal m and J are equal to m and J resulting from repeated computation using different (m, J) values as illustrated in Table 2. This obviates the need for storing optimal m and J values according to N values.
When N=2328, for example, optimal m and J values are calculated in the procedure illustrated in Fig. 7 or by Eq. ($) to Eq. (10); as follows.
a =1°g1 N - log? N~ = log? 2328 - ~logz 2328 = I 1.1848753 - I I =
D.1848753.
~ ~ 2lros= NI = 2(,'og_ z3zal = 2m ~ 2D48.
I O a < p~ ~g49625 and ~3 = 2048 _< IV = 2328 < ( ~ ) ~ ~(3 = 3D72. Thus J =
2.
m= log? ~~=~logz(23~8)~=~l°g11164~=ID, R=N-2m-J=2328-2'°-2=280.
For reference, Eq. (7) is derived as follows.
In each case depicted in Fig. 6; Eq. (S) and Eq. (6), ~ilnt~Q -daa ~ is determined by I S A. When J=I, A-l.IfR=0, ~dara-d~n~~=~D'2'~z~=2~z A-2. If 0<R<3-2"'~'z~ . ~d ar~~ " d~~~ ~ ' ~2'" - 2m z ~ = 3 - 2'~w A-3. If 3 ~2"~-Z~R<2"', ~d~,rra - d ~~ ~ _ ~2m - 2'~~' ~ = 2tn-' 20 B. When JAI, B-l.IfO<R<2"~'', ~d~.~~a-d re.~=~2'~-(2J-3)-2~''~=~2J-5~.2'"'' B-2. If 2'"' ~5R<3-2="'2, ~d;rst~a " d tni~ I = ~2'~ - (4J - 3) - 2 "''z ~ _ ~4J - 7~ ~ 2'"-z B-3.If3~2"'-Z~R<2m, ~d. _d.na~=~lm_(2J-I)-2'".''~=~2J-3~.2~-r 7nlra into Since N=2'".J+R and 4<_R<2m, J-2m~1<(J+1).2'~. When this is divided by J and then subject to a log base 2 operation, m5logz N <Iog1 J+1 -Zm =m+log? I+~ <m+1 J J
vThus, m = Iog2C ~ . Using m = log y ~ , J can be expressed as a function of N
for all the cases of A and B.
A'. When J=1, since m = Llog? N~, R = N - 2m = N - 2~'°g= NJ . Then the cases A-1, A-2 and A-3 can be expressed as functions of N. It therefore follows that:
I0 A'-1: If N=2f~=NJ, jd;°~ra, -d;~Krl =2m z =~~~-zlJ°g; NJ
A'-2: If Zlr°g, NJ<N<~~~-2f°g=NJ, ,~inm°".d»~
~=~~~'2~r°g="'J
A'-3: If ~~~.2f°g=NJSN<2.2U°gZNl, ~d~~ra-d~n~~=~~ -2~r°g'NJ
r°g. N
B'. WhenJ~l,since m= Iog1 N , R=N-J-2"' =N-J-2~ '~''~~.
CJ~
1 S Then the cases B-1, B-2 and B-3 can be expressed as functions of N instead of R.
Therefore, Ilogsf Nl I log= N
B'-I: If J-2~ ~''~~SN< J+- .Z~ ~r~~~
2~
~~ -s j°g- j -~d inaa d inttr ~ '- J - 2 2 _N _N
20 B'-2: If J + 1 ' 2~10~?~ ~ ~~ ~ N < J + '~ - 2~log~~' ~~
4 ' ~r~ 7 ~r°g. ~ ~,~
d Irttr° '. d inter = J '- ' 2 -(log,( N log: '~
B'-3: If J + 3 . 2L ~u~ < N < (J + I~. 2~ ~' ~~ , C 4~
m~ 3 ~~g: ~ ~ ~~
dJarr° - dinner = J - '2 _I7_ B". When J=2, since logy 2 ~ =~Iog1 N-1~--~Iog1 N~-l, B"-1: If 2 El~g 1 N ~ ~ N < 5 . 2 Lrog7 N J ~ ~d~rtrre - d,~~ : ' = I .
Z~r°g, N!
B"-2: If ~~~~2L'°g="! 5 N < ~ ~ ~-2f°$=N!, ~dintr° '-d~~~~= 8 -2~'°g~NJ
B»-3 : If ~ ~ ~ ~ 2i'°g= "! <_ N < ~ ~ ~ ~ 2f °g= N!, ,d i°ra - d in a ~ _ ~ ' 2f °g~ "'!
B"'. When J=3, since logy N _ log, N~ 2, ~ IogIN '~Iog1 N~ < logs 3 -I
3 ~ - logs N -1, otherwise l J
if Iog2N -~togl N~
< loge 3 - I = 0.584~b25 , B,-lT:If ~~~-2~-'g=N~<N<~g~~2~'g'N!, ~di -dinaf =~-2~'g=~'J
rr B ~,~-2 ~ : .If 8 . Zlrg, ~ .
~ rr! ,C ~ 2llog, N < Nl _ ~
'd intro -d in er ~
=
~
~
2i'g=
"!
B,-~~: If (162~'og-N!
~~2L'gINJ
~ N <2f~="!, ldi -dime y=
ntra $
if log2N-~logl N~>_Iogl3-1=0.5849625, B'-1":If 2~~81'~'l ~ 'z~lg''d~, ~N< ~ ~i '2~T8.tN!
l -di ntra nter B,.,-2r~: If ~~~~2~'g="'! ~ ~.2i'~~Nl <N< 8 m e~=
~
2fg, N!
~d -d ~
intro i 8~,~-3"; If ~s - 2~tg=
"'! 5 N < 2 . Zi.rg, N! ~ ~d - d min ~ = 3 , Z~rg=
w1 i l nter q htrQ
If 3 is 4 or more, this case is neglected because ~dintr° - d;e, ~
cannot be less that ~dintrn -d~~e ~ in any of the cases where J=1, 2, and 3.
Eq. (7) is obtained by selecting a case having a minimum ~d;ntn -d;~;~r among the cases of A'-l, A'-2, A'-3, B"-1, B"-2, B"-3, B"'-1', B"'-2', and B"'-3'.
WO 03J067766 PCT/KIt03/0026I
Similarly, Eq. (8) is obtained by selecting a case having a minimum ~d;,~"a -dtme among the cases of A'-I, A'-2, A'-3, B"-l, B"-2, B"-3, B"'-1», B'>'-2'>, and B"'-3°'.
In accordance with the embodiments of the present invention as described above, interIeaver parameters m and 3 are simply optimized according to an interleaver size N, for P-BRO interleaving.
While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details maybe made therein without departing from the spirit and scope of the invention as defined by the appended claims.
Rows marked in bold and underlined in Table 2 satisfy the above two conditions for selecting optimal interleaves parameters. As noted, once the second condition is satisfied, the first condition is naturally satisfied. For reference, it is made clear that the infra-row distances d;a~ and the minimum inter-row distances d;n er listed in Table 2 are equal to those computed on P-BRO-interleaved read addresses.
Table 2 covers both cases of dividing N by 2'" as J with no remainder and of dividing N by 2"' or J with a remainder R (i.e., N=2""oJ+R (0_<R~2"~}. Here, interleaves parameters shown in bold and underlined are optimal for each EP size.
When N=2mx(J-1)+R (0<_R<2"~, that is, N is divided by 2"'or J either with no remainder or with a remainder R, optimal interleaves parameters for each interleaves size N are listed in Table 3. The description made in the context of J is also applied when J is replaced by {J-1).
Table 3 N m J R
w0 03106776b PCTlKR03/00261 1 S60 9 . 4 24 3096 ' 10 4 24 The above description has provided a method of selecting interleaves parameters expected to offer the best performance when, for example, a channel interleaves built in accordance with the IS-2000 Release AB specification, and a sub-block channel interleaves built in accordance with the IS-2000 Release C
specification are used.
As described above, the optimal interleaves parameters are those that maximize an inter-address distance and at the same time, minimize the difference between inter-address distances when generating read addresses in a channel interleaves.
Consequently, interleaves parameters for sub-block channel interleaving in circumstances wherein a sub-block channel interieaver is built in accordance with the IS-2000 Release C specification are values in the rows in bold and underlined in Table 2.
While interleaves parameters selection has been described .for the sub-block channel interleaves built in accordance with the IS-2000 Release C specification, it is obvious that the same thing can also be applied to systems of other standards.
Fig. 6 is a flowchart illustrating an optimal interleaves parameters determining operation according to an embodiment of the present invention.
Particularly, .this operation is concerned with the computation of ~d;~"a -d~;~~ . An optimal (m, J) that minimizes ~d;"r,.n - d ~;~. ~ is selected by computing jd;~,,~ - di , changing (m, J).
Referring to Fig. 6, when an interleaves size N, and parameters m and J are given in step 601, a parameter R is calculated by subtracting 2"'xJ from N in step 603. In step 605, it is determined whether J is 1. This is a determination, therefore, of whether an interleaving matrix has a single column or not. If J is 1, the procedure goes to, step 607 ("Yes" path from decision step 605) and if J is not 1, the procedure goes to step 621 ("No" path from decision step 60S) . In step 607, it is determined whether R
is 0(i.e., whether N is an integer multiple of 2"~. 4n the contrary, if R is 0 (("Yes"
path from decision step 607) , an infra-row distance d;"~, is set to 0 in step 609. If R
is not 0 ("No"
path from decision step 60?) , d;"~ is set to 2"' in step 617.
WO 03/067766 PCTlKR03/00261 After d;n,~ is determined, it is determined whether R is less than 3x2"'2 in step 611. If R is less than 3x2n''z ("Yes" path from decision step 61I) a minimum inter-row distance d;~ is set to 2"'~2 in step 613. If R is equal to or greater than 3x2"'~Z ("No" path from decision step 611) d tee, is set to 2"'-' in step 619. After d n;~, is determined, 'd~rt~° -minters is calculated in step 615.
Meanwhile, if J is not 1 in step 605, d;°~ is set to 2m in step 621 and it is determined whether R is less than 2'"-' in step 623. If R is less than 2r"-' ("Yes" path from decision step 623) d;~,e is set to (2J-3)x2"''' in step 625 and then the procedure goes to step 615. If R is equal to or greater than 2"''' ("No" path from decision step 623), it is determined whether R is less than 3x2"~2 in step 627. If R is less than 3x2"''Z ("Yes"
path from decision step 627) , d; ;e, is set to (4J-3}x2'"-2 in step 629. If R
is equal to or greater than 3x2"'-Z ("No" path from decision step 62?) , d' ~, is set to (ZJ-1)x2"'-' in step 631 and then the procedure goes to step 615.
Optimal interleaver parameters m and J are achieved for a given N by computing dnt,4 - d,n e, ~ , changing (m, J}. If J is one of 1, 2 and 3, a logical formula that facilitates selection of J without the repeated computation can be derived.
With a description of a logical equation deriving procedure omitted, the logical equation is I,~' IogIN-Llog1 N~ < log? 3-1= 0.5849625, For 3 . ~.Jog1 N~ < N < I - 2f°8= N~, J = 3, For I . ZLr°g. nr j < N < ~ ~ ~ - 21'°g' N1, J = 2;
For ~ 3 ~ ~ 2f°g- "'15 N < 2 - 2~r~'= N~, ,I =1.
Rise if IogIN -~Iog1 N~ >_ logs 3 -1= 0.5849625, For I ~ 2i'°~'Nl 5 N <~'~~-2ir°g=N~, .I = 2, For~~~.2i~8_NJ <N<~~~-2i'°g=Nl, J=3, For ~~~.2f°g=N~ < N < 2.2Lrag,N)~ J ~ 1.
WO 03%067766 PCTIKR03/00261 _....(7) From an optimal J from Eq. (7), an optimal m is calculated by , m= Ioga~J~
.....(8) The selection of optimal interleaves parameters by the simple logical equations is summarized below and illustrated in Fig. 7.
1. An optimal J is obtained by Eq. (7) for a given N; and 2.-m is calculated by computing Eq: (8) using N and J.
Fig. 7 is a flowchart illustrating an optimal interleaves parameters determining operation according to another embodiment of the present invention.
IS
Referring to Fig. 7, when N is given, a variable oc is calculated by IogIN-~Iog1 N' and a variable ~3 is calculated by 2f°g=~'~ in step 701.
Decision step 703, determines whether oc is less than a first threshold, O.S849625. If oc is less than the first threshold ("Yes" path from decision step 703), another decision is made, whether N
is less than ~ in decision step 705. If N is equal to or greater than (3 ("No"
path from decision step 705) , the procedure goes to step 707. On the contrary, if N is less than (3 ("Yes" path from decision step 705) , J is determined to be 3 in step 713.
Meanwhile, decision step 707 determines whether N is less than (3/2)x(3. If N is less than (3!2)x3 ("Yes" path from decision step 707) , J is determined to be 2 in step 711. Otherwise, J is determined to be 1 in step 709 ("No" path from decision step 707) .
If cc is equal to or greater than the first threshold in step 703 ("No" path from decision step 703) , a decision is made whether N is less than {3!2)x3 in decision step 717. If N is less than (3l2)x(3 ("Yes" path from decision step 717) , J is determined to be 2 in step 721. Otherwise, decision step 7i9 determines whether N is less than {7!4)x~i.
If N is less than {7!4)x(3 {"Yes" path from decision step 719) , J is determined to be 3 in step 723. Otherwise, 3 is determined to be 1 in step 725 ("No" path from decision step 719) .
WU 03!067766 PCTlKR03IU0261 As described above, optimal m and J can be calculated simply by the logical equations using N. The optimal m and J are equal to m and J resulting from repeated computation using different (m, J) values as illustrated in Table 2. This obviates the need for storing optimal m and J values according to N values.
When N=2328, for example, optimal m and J values are calculated in the procedure illustrated in Fig. 7 or by Eq. ($) to Eq. (10); as follows.
a =1°g1 N - log? N~ = log? 2328 - ~logz 2328 = I 1.1848753 - I I =
D.1848753.
~ ~ 2lros= NI = 2(,'og_ z3zal = 2m ~ 2D48.
I O a < p~ ~g49625 and ~3 = 2048 _< IV = 2328 < ( ~ ) ~ ~(3 = 3D72. Thus J =
2.
m= log? ~~=~logz(23~8)~=~l°g11164~=ID, R=N-2m-J=2328-2'°-2=280.
For reference, Eq. (7) is derived as follows.
In each case depicted in Fig. 6; Eq. (S) and Eq. (6), ~ilnt~Q -daa ~ is determined by I S A. When J=I, A-l.IfR=0, ~dara-d~n~~=~D'2'~z~=2~z A-2. If 0<R<3-2"'~'z~ . ~d ar~~ " d~~~ ~ ' ~2'" - 2m z ~ = 3 - 2'~w A-3. If 3 ~2"~-Z~R<2"', ~d~,rra - d ~~ ~ _ ~2m - 2'~~' ~ = 2tn-' 20 B. When JAI, B-l.IfO<R<2"~'', ~d~.~~a-d re.~=~2'~-(2J-3)-2~''~=~2J-5~.2'"'' B-2. If 2'"' ~5R<3-2="'2, ~d;rst~a " d tni~ I = ~2'~ - (4J - 3) - 2 "''z ~ _ ~4J - 7~ ~ 2'"-z B-3.If3~2"'-Z~R<2m, ~d. _d.na~=~lm_(2J-I)-2'".''~=~2J-3~.2~-r 7nlra into Since N=2'".J+R and 4<_R<2m, J-2m~1<(J+1).2'~. When this is divided by J and then subject to a log base 2 operation, m5logz N <Iog1 J+1 -Zm =m+log? I+~ <m+1 J J
vThus, m = Iog2C ~ . Using m = log y ~ , J can be expressed as a function of N
for all the cases of A and B.
A'. When J=1, since m = Llog? N~, R = N - 2m = N - 2~'°g= NJ . Then the cases A-1, A-2 and A-3 can be expressed as functions of N. It therefore follows that:
I0 A'-1: If N=2f~=NJ, jd;°~ra, -d;~Krl =2m z =~~~-zlJ°g; NJ
A'-2: If Zlr°g, NJ<N<~~~-2f°g=NJ, ,~inm°".d»~
~=~~~'2~r°g="'J
A'-3: If ~~~.2f°g=NJSN<2.2U°gZNl, ~d~~ra-d~n~~=~~ -2~r°g'NJ
r°g. N
B'. WhenJ~l,since m= Iog1 N , R=N-J-2"' =N-J-2~ '~''~~.
CJ~
1 S Then the cases B-1, B-2 and B-3 can be expressed as functions of N instead of R.
Therefore, Ilogsf Nl I log= N
B'-I: If J-2~ ~''~~SN< J+- .Z~ ~r~~~
2~
~~ -s j°g- j -~d inaa d inttr ~ '- J - 2 2 _N _N
20 B'-2: If J + 1 ' 2~10~?~ ~ ~~ ~ N < J + '~ - 2~log~~' ~~
4 ' ~r~ 7 ~r°g. ~ ~,~
d Irttr° '. d inter = J '- ' 2 -(log,( N log: '~
B'-3: If J + 3 . 2L ~u~ < N < (J + I~. 2~ ~' ~~ , C 4~
m~ 3 ~~g: ~ ~ ~~
dJarr° - dinner = J - '2 _I7_ B". When J=2, since logy 2 ~ =~Iog1 N-1~--~Iog1 N~-l, B"-1: If 2 El~g 1 N ~ ~ N < 5 . 2 Lrog7 N J ~ ~d~rtrre - d,~~ : ' = I .
Z~r°g, N!
B"-2: If ~~~~2L'°g="! 5 N < ~ ~ ~-2f°$=N!, ~dintr° '-d~~~~= 8 -2~'°g~NJ
B»-3 : If ~ ~ ~ ~ 2i'°g= "! <_ N < ~ ~ ~ ~ 2f °g= N!, ,d i°ra - d in a ~ _ ~ ' 2f °g~ "'!
B"'. When J=3, since logy N _ log, N~ 2, ~ IogIN '~Iog1 N~ < logs 3 -I
3 ~ - logs N -1, otherwise l J
if Iog2N -~togl N~
< loge 3 - I = 0.584~b25 , B,-lT:If ~~~-2~-'g=N~<N<~g~~2~'g'N!, ~di -dinaf =~-2~'g=~'J
rr B ~,~-2 ~ : .If 8 . Zlrg, ~ .
~ rr! ,C ~ 2llog, N < Nl _ ~
'd intro -d in er ~
=
~
~
2i'g=
"!
B,-~~: If (162~'og-N!
~~2L'gINJ
~ N <2f~="!, ldi -dime y=
ntra $
if log2N-~logl N~>_Iogl3-1=0.5849625, B'-1":If 2~~81'~'l ~ 'z~lg''d~, ~N< ~ ~i '2~T8.tN!
l -di ntra nter B,.,-2r~: If ~~~~2~'g="'! ~ ~.2i'~~Nl <N< 8 m e~=
~
2fg, N!
~d -d ~
intro i 8~,~-3"; If ~s - 2~tg=
"'! 5 N < 2 . Zi.rg, N! ~ ~d - d min ~ = 3 , Z~rg=
w1 i l nter q htrQ
If 3 is 4 or more, this case is neglected because ~dintr° - d;e, ~
cannot be less that ~dintrn -d~~e ~ in any of the cases where J=1, 2, and 3.
Eq. (7) is obtained by selecting a case having a minimum ~d;ntn -d;~;~r among the cases of A'-l, A'-2, A'-3, B"-1, B"-2, B"-3, B"'-1', B"'-2', and B"'-3'.
WO 03J067766 PCT/KIt03/0026I
Similarly, Eq. (8) is obtained by selecting a case having a minimum ~d;,~"a -dtme among the cases of A'-I, A'-2, A'-3, B"-l, B"-2, B"-3, B"'-1», B'>'-2'>, and B"'-3°'.
In accordance with the embodiments of the present invention as described above, interIeaver parameters m and 3 are simply optimized according to an interleaver size N, for P-BRO interleaving.
While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details maybe made therein without departing from the spirit and scope of the invention as defined by the appended claims.
Claims (5)
1. A method of determining interleaver parameters m and J according to an interleaver size N to sequentially store input data in a memory having a row×column matrix structure and partial-bit reversal order (P-BRO) interleaving the stored data, the parameters N, m, J, and R being expressed as N=2m×J+R (0<=R<2m), the method comprising:
calculating a first variable a by (log2N-~log2N~) and a second variable .beta.
by (2~log2N~);
comparing the first variable with a selected first threshold;
comparing the second variable with at least one predetermined second threshold;
determining a first parameter J according to the comparison results; and determining a second parameter m by ~log2(~)~.
calculating a first variable a by (log2N-~log2N~) and a second variable .beta.
by (2~log2N~);
comparing the first variable with a selected first threshold;
comparing the second variable with at least one predetermined second threshold;
determining a first parameter J according to the comparison results; and determining a second parameter m by ~log2(~)~.
2. The method of claim 1, wherein the first parameter J is determined according to the following equation:
3. The method of claim 1 or 2, wherein the parameters N, m, J, and R are determined to be N m J R
4. An interleaves in a communication system, comprising:
a memory having a row×column matrix; and an address generator adapted to partial-bit reversal order (P-BRO) interleave addresses of the memory, calculate a first variable .alpha. by (log2N-~log2N~) using a given interleaves size N and a second variable .beta. by (2~log2N~), compare the first variable with a predetermined first threshold, compare the second variable with at least one predetermined second threshold, determine a first parameter J according to the comparison results, calculate a second parameter m by ~log2(~)~, calculate a third parameter R by N=2m×J+R, sequentially arrange by columns an input data stream of size N in a matrix having 2m rows and J columns, and in R rows in a Jth column (0<=R<2m), P-BRO interleave the arranged data and generate read addresses for reading the interleaved data by rows.
a memory having a row×column matrix; and an address generator adapted to partial-bit reversal order (P-BRO) interleave addresses of the memory, calculate a first variable .alpha. by (log2N-~log2N~) using a given interleaves size N and a second variable .beta. by (2~log2N~), compare the first variable with a predetermined first threshold, compare the second variable with at least one predetermined second threshold, determine a first parameter J according to the comparison results, calculate a second parameter m by ~log2(~)~, calculate a third parameter R by N=2m×J+R, sequentially arrange by columns an input data stream of size N in a matrix having 2m rows and J columns, and in R rows in a Jth column (0<=R<2m), P-BRO interleave the arranged data and generate read addresses for reading the interleaved data by rows.
5. The interleaver of claim 4, wherein the parameters N, m, J, and R are determined to be N~~m~~J~~R
408~~7~~4~~24 792~~8~~4~~24 1560~~9~~4~~24 2328~~10~~3~~280 3096~~10~~4~~24 3864~~11~~2~~1816
408~~7~~4~~24 792~~8~~4~~24 1560~~9~~4~~24 2328~~10~~3~~280 3096~~10~~4~~24 3864~~11~~2~~1816
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20020006890 | 2002-02-06 | ||
KR10-2002-0006890 | 2002-02-06 | ||
CA002443453A CA2443453C (en) | 2002-02-06 | 2003-02-06 | Interleaver and interleaving method in a communication system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002443453A Division CA2443453C (en) | 2002-02-06 | 2003-02-06 | Interleaver and interleaving method in a communication system |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2451640A1 true CA2451640A1 (en) | 2003-08-14 |
CA2451640C CA2451640C (en) | 2014-10-28 |
Family
ID=31716509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2451640A Expired - Lifetime CA2451640C (en) | 2002-02-06 | 2003-02-06 | Interleaver and interleaving method in a communication system |
Country Status (1)
Country | Link |
---|---|
CA (1) | CA2451640C (en) |
-
2003
- 2003-02-06 CA CA2451640A patent/CA2451640C/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CA2451640C (en) | 2014-10-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2443453C (en) | Interleaver and interleaving method in a communication system | |
JP3359912B1 (en) | Turbo interleaving apparatus and method | |
US6810499B2 (en) | Product code based forward error correction system | |
EP1030455B1 (en) | Interleaving method, interleaving apparatus, turbo encoding method, and turbo encoder | |
CN101079641B (en) | 2-dimensional interleaving apparatus and method | |
CA2472952C (en) | Interleaving apparatus and method for a communication system | |
US8205123B2 (en) | Interleaver and de-interleaver for iterative code systems | |
CA2519588C (en) | Error-correcting code interleaver | |
US5898698A (en) | Multiple codeword interleaver method and apparatus | |
US20030189956A1 (en) | Data interleaver and method of interleaving data | |
WO2006082923A1 (en) | Parallel interleaver, parallel deinterleaver, and interleave method | |
US7640462B2 (en) | Interleaver and de-interleaver | |
US7770010B2 (en) | Dynamically configurable interleaver scheme using at least one dynamically changeable interleaving parameter | |
US20060109158A1 (en) | Addresses generation for interleavers in turbo encoders and decoders | |
US20100042899A1 (en) | Deinterleaver | |
CA2451640A1 (en) | Interleaver and interleaving method in a communication system | |
KR101320684B1 (en) | Encoding, decoding, and multi-stage decoding circuits and methods for concatenated bch code, error correct circuit of flash memory device using the same, and flash memory device using the same | |
US7502390B2 (en) | Optimized interleaver and/or deinterleaver design | |
AU2003268814B2 (en) | Interleaver and interleaving method in a communication system | |
JP2003188737A (en) | Interleave processing method and interleave processor | |
KR101279204B1 (en) | Apparatus and method for inner interleaving of turbo encoder | |
KR20050064486A (en) | Method for block interleaving in cdma mobile communication system | |
JP2012049683A (en) | Interleave device, encoder of turbo code, decoder of turbo code, communication device, and interleave method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKEX | Expiry |
Effective date: 20230206 |