INTERLEAVING CIRCUIT

Abstract: In the interleaving circuit, writing and reading are ex­ ecuted on the two dimensions array memory according to a first address sequence and a second address sequence, and product codes errors occurred on the same column are prop­ agated to the columns which are different with each other thereby to scatter the errors to minimize the decrease of the error correction capability of the product codes.

Description: 1. FIELD OF THE INVENTION The present invention is related generally to an interleaving circuit, and particularly to the interleaving circuit having a close connection with a coding and decoding apparatus for product codes to be used in an information recording and reproducing apparatus such as an optical disk filing system. Further, the present invention is related to the interleaving circuit which can reduce influence of error propagation on error correction capability of the product codes, thereby to minimize decreasing of the error correction capability of the product codes, when a high density recording method producing error propagation is used such as (1,7) Run length Limited Code method (hereafter abbreviated as (1,7)RLLC) or (2,7) Run Length Limited Code method (hereafter abbreviated as (2,7)RLLC). 2. DESCRIPTION OF THE RELATED ART When digital data is transmitted or recorded, errors are produced in the data by various causes. Therefore, error correcting codes are used in order to avoid the errors in a usual information device. Then, mixture of a random error and a burst error, so-called composite error produced in a data communication channel or recording media having poor reliability or characteristics with regard to error, is required to be correct. Then, the burst error is randomized by the interleaving circuit and the randomized error is corrected. The product codes have such advantages that the decoding of the product codes is easy in spite of having superior error correction capability. The product codes can have good harmony with the interleaving circuit for correcting composite errors. Therefore, the product codes are used for correcting errors in the digital data transmission or the digital data recording. FIG.11 is a principle diagram of the product codes. Each first code 33 has code length m and each second code 34 has code length n. An area 35 represents information data, and an area 36 represents check data. As shown in FIG.11, redundancy for error detection and correction is added to each column of the information data 35, thereby to produce the first codes 33, 33, ... having code length m. Next, redundancy for error detection and correction is added to each row of the first codes 33, 33, ..., thereby to produce the second codes 34, 34, ... having code length n. According to the above sequence, the product codes of code length m × n are produced. Besides, the same product codes can be produced, also by reversing the order of producing of the first code 33 and the second code 34, that is, by first adding redundancy to each row of the information data 35, thereby to produce the second codes 34, 34, ... and next adding redundancy to each column of the second codes 34, 34, ... thereby to produce the first codes 33, 33, ... . FIG.12 shows a general constitution of the known information recording and reproducing apparatus. A coding circuit 37 is a circuit for producing the product codes. A decoding circuit 38 is a circuit for decoding the product codes. A circuit 39 is the interleaving circuit for the product codes. A modulator 40 modulates outputs of the interleaving circuit 39, thereby to produce a modulated data, and a demodulator 41 demodulates a reproduced data 45. In such information recording and reproducing apparatus, in recording time a data 42 is applied to the coding circuit 37, and a coded data 7 of the product codes is produced by the coding circuit 37 and is applied to the interleaving circuit 39. The coded data 7 is converted to a record data 9 by the interleaving circuit 39 and applied to the modulator 40. The record data 9 is modulated by the modulator 40 and is issued as a modulated data 44. In reproducing time, a reproduced data 45 is demodulated by the demodulator 41. A demodulated data 10 from the demodulator 41 is de-interleaved by the interleaving circuit 39 and issued as a decoded data 8. The decoded data 8 is applied to the decoding circuit 38. The decoding circuit 38 detects and corrects errors in the decoded data 8 and issues corrected data 43. Hitherto, the interleaving circuit having a maximum distance separation is used in the interleaving circuit of the information recording and reproducing apparatus using product codes. That is, in FIG.11, defining a symbol of i row and j column is represented as S ij , in the recording time, a data is recorded in a memory area of the interleaving circuit in the order of Next, the data is read out in the order of Thus, the interleaving operation is executed. In reproducing time, the data is recorded in the memory of the interleaving circuit in the order of Next, the data is read out in the order of Thus, the de-interleaving operation is executed. US-A-4 394 642 describes an interleaving and de-interleaving operation at which reordering of address bits is achieved by applying a so called dual orthogonal permutation. By performing dual orthogonal permutation the distribution of the bits within columns or rows more closely approaches a quasi-random distribution. The dual orthogonal permutation consists of two different permutations, a first permutation is applied on column positions and a second permutation is applied on the positions of data bits within a column or a row. However, by applying the dual or orthogonal permutation one can not prevent, that during interleaving entire combinations of consecutive column addresses in an arbitrary row are repeated in another row. The decoding circuit for the product codes is described as follows. In the codes having two or more elements such as product codes, the decoding of each element should be related organically to each other. For example, in product codes having two codes, after the first code is decoded, the second code is decoded by using the result of decoding of the first code. Further, if necessary, the first code is decoded again. Thus, such repetition of decoding is required. Therefore, in the decoding of the product codes, decoding of each code is comparably easy. However, an algorithm for organically coupling those decodings is complicated. And a general algorithm has not been given yet. However, with regard to the decoding method of the prodcuct codes having minimum distance 2t comprising a code of minimum distance 2 and a code of minimum distance t, an algorithm for error correction of (t-1) or less symbols and for error detection of t symbols, which are theoretical limitation, is represented in prior art decuments. by Sugimura et al. According to a prior art decoding method, first the decoding of the first code is executed with regard to the decoding of product codes of minimum distance 2t wherein, the product codes comprises a fist code of code length m and minimum distance t and a second code of code length n and minimum distance 2 constituted by parity check sum. Error number flag is made during decoding operation of the first code. That is, with regard to the first code of minimum distance t, or less error correction and or more error detection can be made. Where, [x] indicates a maximum integer not exceeding x. In the decoding operation of the first code, either one of error number flags F i as shown below is raised. In case that any errors exceeding the correction capability of the first codes take place, it is not determined whether error correction is not processed and is raised or a false j error correction is executed and F j is raised. As has been described above, decoding of n first codes is performed. Next, a statistical processing of the above-mentioned n error number flag is executed, and the result is classified into three decoding modes. First, the error number flag F i are counted for each error number. Letting the number of occurrence of error number flags F i is C i , the equation holds below: Procedures of statistical processing and subsequent processing are described below. Here, higher priority order is given for larger subscript i, starting from those C i having the largest subscripts i. And, they are classified into decoding modes as shown below: (i) Decoding mode 1: i.e., a first case that error detection is executed two times or more. (ii) Decoding mode 2: A second case that non-zero highest priority order C i is 1. (iii) Decoding mode 3: A third case other than the above two modes. In these three decoding modes, the error correction operation or the error detection operation using the second codes is performed as follows: (a) Decoding mode 1: Detection of unconditionally un-correctable errors is asserted. (b) Decoding mode 2: A pointer is placed on a column of the first codes wherein error number flags F i for which non-zero highest priority order C i is set to be 1 occurs. Then, taking check sums in the second codes of reproducing system, they are added to the column on which the pointer is placed in the exclusive logical sum . Alternatively, excluding the column on which the pointer is placed, check sums of the second codes are taken, then the pointer-placed column is replaced for the check sums. (c) Decoding mode 3: Check sums in the first codes of reproducing system are taken as follows: (i) In case that check sum are zero: No error. (ii) In case that check sums are not zero: Detection of un-correctable errors is asserted. As has been explained above, according to the algorithm of Sugimura Patent Application, by performing decoding of the product codes, in the product codes of the minimum distance 2t, error correction of (t - 1) symbols or less and error detection of t symbols become possible. The above-mentioned decoding of product codes is described in detail as follows. FIG.13 is a diagram of a constitution of the product codes of minimum distance 12 comprising a first code of code length 15, minimum distance 6 and a second code of code length 106, minimum distance 2 constituted by the check sum. Decoding of the above product codes according to decoding algorithm of the Sugimura Patent Application is described as follows. At first, the first code 46 is decoded. Since the first code has minimum distance 6, two or less error correction and three errors detection can be executed. Therefore, in decoding processing of the first code 46, error number flags F i is raised as below. ° no error : F₀ ° single error correction : F₁ ° two error correction : F₂ ° three error detection : F₃ Here, FIG.14 shows all error types of six symbols or less. In FIG.14, cases (CASE) are classified in accordance with error number e produced in whole product codes and error number produced in the first code 46. Error number flags produced in decoding processing of the first code 46 are indicated under respective cases (although F₀ is not shown). These cases are classified to decoding modes as follows. (a) Decoding mode 1: Case 28 (b) Decoding mode 2: Cases 2, 4, 6, 7, 9, 10, 11(i), 11(ii), 13, 14, 16(i), 16(ii), 17, 18(i), 18(ii), 18(iii), 20, 21, 23(i), 23(ii), 24, 26(i), 26(ii), 27(i), 29(i), 29(ii), 29(iii). (c) Decoding mode 3: Cases 1, 3, 5, 8, 12, 15, 19, 22, 25, 26(iii), 27(ii), 29(iv). In the decoding mode 1, detection of unconditionally un-correctable errors is asserted. In the decoding mode 2, all errors are corrected by decoding second code 47. In the decoding mode 3, detection of un-correctable errors is asserted in cases 26(ii), 27(ii), 29(iv) by check sum inspection, and error correction is executed in the other cases. As mentioned above, 5 error correction and 6 error detection which are theoretical limitation of product codes having minimum distance 12 can be executed, according to Sugimura Patent Application. Correction of burst error of symbol length 213 at maximum is executed by using the usual interleaving method of maximum distance separation since interleaving depth is 106 in the example. However, problems mentioned below occur when the product codes are transmitted or recorded on communication channels or recording media. Recently, high density recording method is frequently used in a digital audio system such as CD (compact disk) or DAT (digital audio tape) or in an information recording and reproducing apparatus such as optical disk filing system. For example, MFM (modified FM), (1,7)RLLC and (2,7)RLLC methods etc. are known. Then, in some high density recording methods such as (1,7)RLLC or (2,7)RLLC, 1 bit error on the transmission channel or the recording media becomes one or more bits error after demodulation. For example, in (2,7)RLLC according to ENCODER and DECODER of U.S.P. 4,115,768, 8 bits data after modulation is decoded. Therefore, 1 bit data error after modulation is demodulated being added with 2 bits or more error. FIG.15 shows a diagram of error propagation status after demodulation with regard to 1 bit error on the recording media or the transmission channel, when the product codes is interleft by the conventional interleaving circuit having maximum distance separation and recorded or transmitted after modulated by the modulation method having error propagation characteristics. In FIG.15, X mark shows symbol error directly produced by the error on recording media or are transmission channel. A ▵ mark shows symbol error produced by the error propagation. As shown in FIG.15, in the product codes using the conventional interleaving circuit, the error is propagated to symbols of next neighboring column. Therefore, when plural errors are produced in the same column and the errors are propagated respectively, the errors are propagated to the next column respectively, and the propagated plural errors result in being arranged on the same column. Accordingly, the error correction capability of the product codes is largely decreased. For example, when the product codes in FIG.13 is decoded according to the Sugimura's algorithm, 5 error correction and 6 error detection which are theoretical limitation of the product codes having minimum distance 12 can be executed. However, when the product codes are interleft by using the conventional interleaving circuit having maximum distance separation and the errors are propagated, the occurrence of three errors makes sometimes the error correction impossible. That is, although the product codes have minimum distance 12, it only has 2 error correction and 3 error detection. FIG.16 shows all error types when three or less symbol errors are produced. FIG.16 shows case where every error is propagated to produce two symbol errors. In FIG.16, the cases are classified in accordance with error number a produced in whole product codes and error number produced in the first code 46 including errors produced by the error propagation. Error number flags produced in the decoding processing of the first code 46 is shown under each case (but F₀ is not indicated). Original errors on the recording media or transmission channel are represented by X mark and the errors produced by the error propagation are represented by ▵ mark. These cases are classified to decoding modes as follows. (a) Decoding mode 1: Case 10, (b) Decoding mode 2: Cases 4, 7, 9, (c) Decoding mode 3: Cases 1, 2, 3, 5, 6, 8. In the decoding mode 1, detection of unconditionally un-correctable error is asserted. In the decoding modes 2 and 3, error correction is executed. Thus, the conventional system has such problem that the error correction capability of the product codes is largely decreased, when the product codes are recorded or transmitted by using the conventional interleaving circuit having maximum distance separation, in case the modulation method has an error propagation property. 4. OBJECT AND SUMMARY of THE INVENTION The object of the present invention is to offer such interleaving circuit which can reduce the influence of error propagation, thereby to minimize a decrease in error correction capability of the product codes. An interleaving circuit in accordance with the present invention as defined in appended claim 1 comprises: a memory area having (m × n) matrix blocks, a first address generator generating such first address sequence: where (R i , C j ) is address of row i, column j of the memory area, a second address generator generating such second address sequence: an interleaving circuit unit for making interleaving by memorizing product codes comprising a first code of code length m and a second code of code length n in the memory area by using the first address generator, by reading the memorized product codes by using the second address generator, thereby issuing record data, a de-interleaving circuit for making de-interleaving by memorizing demodulated data in the memory area by using the second address generator, and by reading the data memorized in the latest step, by using the first address generator, thereby issuing decoded data. According to the interleaving circuit of the present invention, the decrease of the error correction capability of the product codes caused by the error propagation can be minimized by making the plural errors be scattered, that is, propagate to different columns depending on row. BRIEF DESCRIPTION OF THE DRAWING FIG.1 is a diagram showing memory region for describing a first address sequence of an interleaving circuit of an embodiment of the present invention. FIG.2 is a diagram showing memory region for describing a second address sequence of the embodiment of the present invention. FIG.3 is a block diagram of the embodiment of the interleaving circuit of the present invention. FIG.4 is a block diagram of the embodiment of an interleaving controller in FIG.3. FIG.5 is a block diagram of an address generator in FIG.4. FIG.6 is a logical circuit diagram showing a multiplier of the address generator in FIG.5. FIG.7 is a circuit diagram showing a circuit X β in FIG.5. FIG.8 is a timing chart showing an operation of the embodiment of the present invention. FIG.9 is another timing chart showing an operation of the embodiment of the present invention. FIG.10(A), FIG.10(B), FIG.10(C) and FIG.10(D) are diagrams showing error pattern with regard to the embodiment of the present invention. FIG.11 is the diagram showing a principle of the general product codes. FIG.12 is the block diagram showing the general constitution of an information recording media using the interleaving circuit of the present invention. FIG.13 is the diagram showing a principle of product codes in the above-mentioned embodiment and in the conventional interleaving circuit. FIG.14(A), FIG.14(B) and FIG.14(C) are the diagrams showing error pattern with regard to decoding of the product codes. FIG.15 is the memory area diagram showing a state of error propagation under the conventional interleaving circuit. FIG.16(A) and FIG.16(B) are the diagrams showing error pattern with regard to decoding of the product codes when error propagation occurs using the conventional interleaving circuit. DESCRIPTION OF THE PREFERRED EMBODIMENTS FIG.1 is a memory region diagram for showing a first address sequence of an interleaving circuit in an embodiment of the present invention. In FIG.1, α and β are elements of GF(2⁴) and GF(2³) respectively. The GF is Galois field. order L α of α is 15 and order L β of β is 7. The expressions of the elements are represented in Table 1 and Table 2: when α⁴ + α + 1 = 0 and β³ + β + 1 = 0. Power expression Vector expression Power expression Vector expression 0 0 0 0 0 α⁷ 1 0 1 1 1 0 0 0 1 α⁸ 0 1 0 1 α 0 0 1 0 α⁹ 1 0 1 0 α² 0 1 0 0 α¹⁰ 0 1 1 1 α³ 1 0 0 0 α¹¹ 1 1 1 0 α⁴ 0 0 1 1 α¹² 1 1 1 1 α⁵ 0 1 1 0 α¹⁵ 1 1 0 1 α⁶ 1 1 0 0 α¹⁴ 1 0 0 1 Power expression Vetor expression Power expression Vector expression 0 0 0 0 β³ 0 1 1 1 0 0 1 β⁴ 1 1 0 β 0 1 0 β⁵ 1 1 1 β² 1 0 0 β⁶ 1 0 1 The embodiment is an interleaving circuit of product codes comprising a first code of length 15 and a second code of length 106. FIG.1 shows a memory area of (15 × 106) matrix. Address space of 15 × 106 = 1590 is comprised of row addresses 0-14 and column addresses 0-105. The column addresses 0-105 are constituted by a combination of (0, 0) element and non-zero elements 1-105 of GF(2⁴) and GF(2³). Further, the non-zero elements 1-105 are constituted by product of α order L α = 15 and β order L β = 7, since 15 and 7 are in a prime relation each other. Numerals 1--1590 in each block of memory area shows an order of each block in accordance with a first address sequence. The first address sequence is shown as follows by such address that is represented as (row address, column address (α), column address (β)). FIG.2 shows the memory area representing the second address sequence of the interleaving circuit of the embodiment of the present invention. Numerals 1--1590 in each block of the memory area shows an order of each block in accordance with the second address sequence. The second address sequence is shown as follows by such address that is represented as (row address, column address (α), column address (β)). The above-mentioned second address sequence is obtained by multiplying first address of each row of the matrix memory area by multiplier {(α, β), (α, β²), (α,β³), ... , (α⁴, β⁵)}. (Where, multiplying of Golois field under particular definition of 0 × α i = α i , 0 × β i = β i is executed). Hereafter {(α, β), (α, β²), (α,β³),..., (α⁴,β⁵)} is abbreviated as multiplier. A general formura of the above-mentioned first and second address sequence are represented as follows, provided that j-th address is represented by ADR(j) = {row address, column address (α), column address (β)}: (1) First address sequence: ADR(j) = {(j-1)mod 15, 0, 0}; 1 ≦ j ≦ 15 ((j-1)mod 15, ; 16 ≦ j ≦ 1590 (2) Second address sequence: (where, indicates a maximum integer not exceeding j). FIG.3 is a block diagram of an interleaving circuit of the embodiment of the present invention. For an interleaving, an interleaving controller 1 memorizes coded data 7 through an input-output bus line 6 at such address of row address 3, column address (α)4, column address (β)5 of a memory area 2, which are in accordance with the first address sequence. The interleaving controller 1 reproduces record data 9 through the input-output bus 6 from such address of row address 3, column address (α)4, column address (β)5 of the memory area 2 which are in accordance with the second address sequence. For a de-interleaving, demodulated data 10 is memorized through the input-output bus 6 at such address of row address 3, column address (α)4, column address (β)5 of the memory area 2, which are in accordance with the second address sequence. Next decoded data 8 is reproduced through input-output bus 6 from such address of row address 3, column address (α)4, column address (β)5 of the memory area 2 which are in accordance with the first address sequence. The memory area comprises usual RAM. FIG.4 is a block diagram of the interleaving controller 1. Therein, a controller 11 switches the coded data 7, decoded data 8, record data 9, demodulated data 10 and the input-output bus 6, and controls the address generator 12. The address generator 12 generates addresses in accordance with the first and second address sequence. FIG.5 shows the address generator 12. In FIG.5, an SQR circuit 14 executes square operation at GF(2⁴). An X β circuit 15 executes β times operation at GF(2³). A first multiplier circuit MLT₄ 16 is a multipling circuit of GF(2⁴) (where, particular solution of 0 × α i = α i is issued). A second multiplier circuit MLT₃ 17 is a multipling circuit of GF(2³) (where, particuclar solution of 0 × β i = β i ). A circuit 18 is a tetradecimal counter of 4 bits. A circuit 19 is a D-F.F of parallel 4 bits (which issues α = (0,0,1,0) by receiving reset signal 27). A circuit 20 is a D-F.F of parallel 3 bits (which issues β = (0,1,0) by receiving reset signal 26). A circuit 21 is a D-F.F of parallel 4 bits (which issues 0 = (0,0,0,0) by receiving reset signal 28). A circuit 22 is a D-F.F of parallel 3 bits (which issues 0 = (0,0,0) by receiving reset signal 28). A clock generator 23 issues clock signals 29, 30 and 31 of the D-F.F 19, 20, 21 and 22, and the reset signal 26, 27 and 28. FIG.8 shows timing relation among the clock signals 29, 30, 31 and 32, and the reset signals 26, 27 and 28, and row address 3, column address (α)4, column address (β)5, and multiplier 24, 25 when the first address sequence is produced. In the first address sequence, the multiplier (24, 25 in FIG.5) is fixed to α and β. Clock 32 is applied for the row address 3 for coinciding with a data transmitting velocity. Clocks 31 of the D-F.F 21, 22 of the column address in applied at the initializing (0) of the rwo address 3. The clock generator 23 generates the above-mentioned control signal, thereby to obtain the first address sequence. FIG.9 shows timing relation among the clock signals 29, 30, 31 and 32, and reset signals 26, 27, 28, and row address 3, column address (α)4, column address (β)5, and multipliers 24, 25 when the second address sequence is produced. The second address sequence is obtained by making clock signal 31 of the D-F.F 21, 22 of the column address coincide with the data transmitting velocity and by changing the multiplier 24, 25 and the embodiment of the multiplier circuit MLT₃ 17 is shown. In FIG.7, an embodiment of the X β 15 is shown. The multiplier circuit MLT₄ 16 and the circuit SQR 14 are configurated similarly. In the interleaving circuit of the above-mentioned embodiment, when different symbols in the same column make error, propagation of error is made to symbols in different columns with each other. Therefore, the decrease of the error correction capability of product codes induced by the error propagation can be minimized. For example, the product codes in the above-mentioned embodiment only has 2 error correction and 3 error detection capability, if the product codes are decoded in accordance with Sugimura Patent Application by using the conventional interleaving circuit having maximum distance separation and an error propagation occurs. However, by using the interleaving circuit of the present invention, the product codes can have 4 error correction and 5 error detection when product coded are decoded in accordance with Sugimura Patent Application and an error propagation occurs. In FIG.10(A), FIG.10(B), FIG.10(C) and FIG.10(D), all error types when five symbols or less errors are produced, are shown. FIG.10(A), FIG.10(B), FIG.10(C) and FIG.10(D) show the cases when all errors are propagated to produce 5 symbol errors. Cases are classified in accordance with error number "e" occurring in the whole product codes and error number including errors induced by the error propagation in the first code 46. Error number flags produced in the decoding processing of the first code 46 are shown under each case (but F₀ is not indicated). Original errors on the recording media or transmission channel are represented by X mark and errors produced by the error propagation are represented by ▵ mark. These cases are classified to decoding modes as follows: (a) Decoding mode 1; Cases 27, 28, 29, (b) Decoding mode 2: Cases 4, 6, 8, 10, 14, 15, 16, 17(i), 17(ii), 19, 23, 24, 25, 26, 30(i), 30(ii), 31(i), 32(i), 33(i), 33(ii), (c) Decoding mode 3: Cases 1, 2, 3, 5, 7, 9, 11, 12, 13, 18, 20, 21, 22, 31(ii), 32(ii), 33(iii). In the decoding mode 1, detection of unconditionally un-correctable error is asserted. When classified in either of decoding modes 2 and 3, error correction is executed. As mentioned above, in the interleaving circuit in accordance with the present invention, the combination of elements of GF(2³) and GF(2⁴) is used as address of the memory area, thereby to execute operation on Gabois field to produced address. And the interleaving circuit of the present invention can perform the interleaving with little influence of error propagation even by using a simple circuit. Apart from the above-mentioned embodiment wherein Sugimura Patent Application is used for decoding product codes, the present invention is applicable to any method for decoding product codes. The present invention can be constituted by adequately selecting the order of elements of Galois field responding to each code length of the first and the second code of product codes. Further, in the present invention, the following embodiments are executed. (I): An interleaving circuit comprises a memory area having (m x n) matrix blocks, a first address generator generating such first address sequence: hereupon (R i , C j ) is address of row i, column j of the memory area, a second address generator generating such second address sequence: ( where "∀" means "arbitrary") an interleaving circuit unit for interleaving; by memorizing product codes comprising a first code of code length m and a second code of code length n in the memory area by using the first address generator, by reading the memorized product codes by using the second address generator, thereby issuing record data, a de-interleaving circuit for de-interleaving; by memorizing demodulated data in the memory area by using the second address generator, by reading the data memorized in the latest step, by using the first address generator, thereby issuing decoded data , and the first and second address generators generate column address by multiplication of Golois field, the column address of (m × n) matrix memory area is represented by combination of non-zero elements in each Golois field, where each element α₁ , α₂ , ... , α ℓ of different Golois fields are independent variable (wherein n = L₁ × L₂ × ... L ℓ and L₁, L₂ , ..., L ℓ are each other prime, in case that L₁ , L₂ , ..., L ℓ are order of each α₁ , α₂ , ..., α ℓ ). Further, such modified embodiment can be executed. The second address generator generates column address of the second address sequence according to such producing rule of: where (II) An interleaving circuit comprises: a memory area having (m × n) matrix blocks, a first address generator generating such first address sequence: where (R i , C j ) is address of row i, column j of the memory area, a second address generator generating such second address sequence: an interleaving circuit unit for interleaving; by memorizing product codes comprising a first code of code length m and a second code of code length n in the memory area by using the first address generator, by reading the memorized product codes by using the second address generator, thereby issuing record data, a de-interleaving circuit for de-interleaving; by memorizing demodulated data in the memory area by using the second address generator, by reading the data memorized in the latest step, by using the first address generator, thereby issuing decoded data, and the column address of (m × n) matrix memory area is represented by combination of non-zero elements in each Golois field and combination of zero elements, where each element α₁ , α₂ , ..., α ℓ of different Golois fields are independent variable (wherein = L₁ × L₂ × ... × L ℓ +1 , L₁ , L₂ , ..., and L ℓ are relatively prime, provided that L₁ , L₂ , ..., L ℓ are order of each α₁ , α₂ , ..., α ℓ ). Further, the modified embodiment can be executed. The second address generator generates column address of the second address sequence according to such producing rule of As mentioned above, according to the present invention, such interleaving circuit can be obtained by a simple circuit constitution that the decrease of the error correction capability of product codes can be minimized even when a modulation method which may produce error propagation is used. Therefore, the present invention has a great industrial utility.

Claims: An interleaving circuit comprising: a memory area having (m x n) matric blocks; a frist address generator generating a first address sequence: where (R i , C j ) is the address of row i, column j of said memory area, a second address generator generating a second address sequence: where, provided that m₁ and m₂ are arbitrary natrual numbers from 1 to m, and m₁ m₂, and k₁ and k₂ are arbitrary natural numbers from 1 to n: an interleaving circuit unit for interleaving by memorizing product codes comprising a first code of code length m and a second code of code length n in said memory area by using said first address generator, by reading said memorized product codes by using said address generator, thereby issuing record data, a de-interleaving circuit for de-interleaving by memorizing demodulated data in said memory area by using said second address generator, and by reading said data memorized in the latest step, by using said first address generator, thereby issuing decoded data. An interleaving circuit in accordance with claim 1, wherein said first and second address generators generate a column address by multiplication of Galois fields, said column address of the (m x n) matrix memory area is represented by a combination of non-zero elements from each Galois field, wherein each element α₁, α₂, ..., α ℓ of different Galois fields is an independent variable (wherein n = L₁ x L₂ x ..., x L ℓ+1 and L₁, L₂, ..., L ℓ are to each other prime, in case that L₁, L₂, ..., L ℓ are order of each α₁, α₂, ..., α ℓ , respectively). An interleaving circuit in accordance with claim 2, wherein said second address generator generates the column address of said second address sequence according to following producing rule: where h₁(m₁), L₁ are relatively prime (m₁ =1,2,...,m) h₂(m₁), L₂ are relatively prime (m₁ =1,2,...,m) ... h ℓ (m₁), L ℓ are relatively prime (m₁ =1,2,...,m), and (h₁(m₁),h₂(m₁),...,h ℓ (m₁))=(h₁(m₂),h₂(m₂),...,h ℓ (m₂)) where m₁ and m₂ are arbitrary natural numbers from 1 to m and m₁ m₂. An interleaving circuit in accordance with claim 1, wherein said column address of (m x n) matrix memory area is represented by combination of non-zero elements from each Galois field and combination of zero elements, wherein each element α₁, α₂, ...α₁ of different Galois fields is an independent variable (wherein n = L₁ x L₂ x ... x L ℓ+1 , and L₁, L₂, ... L ℓ are to each other prime, in case that L₁, L₂, ... L ℓ are order of each α₁, α₂, ..., α ℓ , respectively). An interleaving circuit in accordance with claim 4, wherein said second address generator generates the column address of said second address sequence according to following producing rule: where h₁(m₁)(m₁ =1,2,...,m) and L₁ are relatively prime, h₂(m₁)(m₁ =1,2,...,m) and L₂ are relatively prime, ... h ℓ (m₁)(m₁ =1,2,...,m) and L ℓ are relatively prime, and h(m₁)(m₁ =1,2,...,m) and L are relatively prime, and (h₁(m₁),h₂(m₁),...,h ℓ (m₁)) (h₁(m₂),h₂(m₂),...,h ℓ (m₂)) where m₁ and m₂ are arbitrary natural numbers from 1 to m and m₁ m₂.

Inventors: SATOH, ISAO, SUGIMURA, TATSUO, TAKAGI, YUJI
Applicants: MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD.
Application year: 1986
Main classification: G11B20
IPC codes: G11B20, H03M13