STM-N signal error correction coding system and method

Abstract: To perform transmission error correction simply by generating an extremely small number of error correction code bits even when the value of N in STM-N becomes large. The sending signal input terminal 21 receives 4 AU-4 signals, and the serial/parallel conversion circuit 22 converts the signals to 8 parallel signals. The number of check bits required for encoding 8 parallel bits is 14. The error correction encoder 231, provided for the first bit, divides a received data stream by a polynomial and sends the resulting remainder to the check bit output terminal 1 as the check bit. The error correction encoders 232 - 238 each calculate the check bits of data streams using the polynomial and send the results to check bit output terminals 2 - 8. The {n, k} shortened Hamming code is executed for each bit by inserting these check bits into undefined bytes in the MSOH.

Description: BACKGROUND OF THE INVENTION 1. Field of the invention The present invention relates to an STM-N (Synchronous Transport Module Level N) signal error correction encoding/decoding method and STM-N signal error correction encoding/decoding circuits in use for the STM (Synchronous Transfer mode). The method and circuits may be used, for example, in error correction encoding/decoding in an SDH (Synchronous Digital Hierarchy) fiber optical transmission system. 2. Description of the related art Recently, the SDH fiber optical transmission system has been remarkably researched. The following are some of the documents dealing with this technology: Document 1: Yoshiaki YAMABAYASHI, Masahito TOMIZAWA, Tomoyoshi KATAOKA, Yukiko KOBAYASHI, and Kazuko HAGIMOTO. OAA" 94, ThA6 : NTT "A Bit-Interleaved Hamming Code for Linearly Repeated Terrestrial Fiber Optic Transmission Systems" Document 2: Masaki Tomizawa, Yoshiaki Yamabayashi, Norio Kobayashi, and Kazuo Hagimoto. 1995. "Study on the Error Correction Code of an SDH Fiber Optical Transmission System," Electronic Information Communication National Convention B-1074. The above documents propose the forward error correction code (FEC) compatible with the SDH. This forward error correction circuit, installed on a terminal equipment, has the check bits stored in the undefined byte area in the multiplex-section overhead (MSOH) shown in Fig. 2. In Fig. 2, "×" indicates a byte for an international standard code reserved for future use, "Δ" indicates a media-dependent byte, and * indicates a byte not scrambled. The STM-N (1 ≦N≦16) signal is in one of the following two forms: one form is that various concatenation paths VC(virtual container)-4-Xc are mapped with the use of ATM (Asynchronous Transfer Mode) cells and the other form is that N AU-4 signals, each of which is a VC-4 to which the AU (Administrative Unit) pointer is added, are byte-multiplexed. When error correction encoding is performed on AU-4-Xc of the STM-N signal, various concatenation paths are mapped, on an SDH terminal unit, into X AU-4 signals each of which is AU-4-Xc generated by adding the AU pointer to VC-4-Xc. Therefore, the error correction circuit performs encoding on AU-4, and X encoding circuits and X decoding circuits are used. When N AU-4 signals, each of which has the AU pointer in VC-4, are byte-multiplexed, N STM-1 signals each containing AU-4, check bytes, and the SOH are byte-multiplexed. This method may be used for any STM-N system since the FEC encoding circuit encodes one AU-4 at a time. The following two types of code are provided for the FEC code of an SDH-compatible FEC encoding circuit. (1) Parallel type shortened Hamming code : One-bit correction is performed on the eight parallel bits of AU-4 at a time (18864 bits / 8 = 2358 bits). Twelve bytes are required for the check bits. When the encoding target is AU-4-Xc (2≦X≦16) or X (2≦X≦16) AU-4 signals, X encoding circuits and X decoding circuits are used. (2) Serial type shortened Hamming code : One-bit correction is performed on one AU-4 at a time (18864 bits = 241 columns x 9 rows / 1 column + {9 columns x 1 row x 8 bits). Two bytes are required for the check bits. When the encoding target is AU-4-Xc (2≦X≦16) or X (2≦X≦16) AU-4 signals, X encoding circuits and X decoding circuits are used. However, the conventional error correction/decoding method described above uses AU-4 as the encoding target for both the serial type and parallel type shortened Hamming codes. Therefore, when the shortened Hamming code is used for AU-4-Xc (2 ≦ X ≦ 16) or X (2 ≦ X ≦ 16) AU-4 signals in the STM-N (2 ≦ X ≦ 16) signal as the error correction code, X encoding circuits and X decoding circuits are required. And, the serial type shortened Hamming code requires 2 x X bytes of check bits, and the parallel type shortened Hamming code requires 12 x X bytes of check bits, showing that the required check bits are X times as many as the check bits of the AU-4 signal. This causes the following two problems concerning larger value of N in STM-N: a relatively large number of check bits that must be created in the section overhead degrades (1) the transmission efficiency and (2) check bit generation and decoding takes time. To solve these problems, the STM-N signal error correction encoding/decoding method and STM-N signal error correction encoding/decoding circuits have been requested which can correct transmission errors simply by generating an extremely small number of check bits (error correction code) even when the value of N in STM-N becomes larger. SUMMARY OF THE INVENTION It is an object of the present invention to provide an error correction coding system and method for correcting transmission error using only a small number of check bits, in spite of larger value N of STM-N. According to the invention, there is provided a synchronous transport module level N (STM-N) signal error correction coding system, N being a positive integer, comprising administrative unit generating means for generating a plurality of administrative units, each of the administrative units including a virtual container for accommodating transmission data and a pointer having information on multiplexing of the data, error correction code generating means for generating one error correction code for the whole of the plurality of administrative units, and STM-N signal generating means for generating an STM-N signal having an overhead section and a payload section by setting the error correction code in the overhead section and setting the plurality of administrative units in the payload section. According to the present invention, there is also provided a synchronous transport module level N (STM-N) signal error correction coding method, N being a positive integer, comprising a first step of generating a plurality of administrative units, each of the administrative units including a virtual container for accommodating transmission data and a pointer having information on multiplexing of the data, a second step of generating one error correction code for the whole of the plurality of administrative units, and a third step of generating an STM-N signal having an overhead section and a payload section by setting the error correction code in the overhead section and setting the plurality of administrative units in the payload section. The error correction code system and method according to the present invention performs one error correction on the whole of a plurality of administrative units, thus avoiding sharp increase in transmission information with the value N of the STM-N increasing. The present invention will be understood more fully from the detailed description and the accompanying drawings below of the preferred embodiments of the invention. In the drawings: Fig. 1 is a block diagram showing the error correction encoding/decoding circuits of the first embodiment according to the present invention, in which Fig. 1 (a) illustrates the error correction encoding circuit using the parallel type shortened Hamming code, and Fig. 1 (b) illustrates the error correction decoding circuit using the parallel type shortened Hamming code; Fig. 2 is a diagram showing the STM-N frame, in which Fig. 2 (a) illustrates the encoding range in the STM-N frame, and Fig. 2 (b) illustrates byte attributes in the STM-N frame; Fig. 3 is a detailed block diagram showing the error correction encoding system using the parallel type shortened Hamming code of the first embodiment, where Fig. 3 (a) illustrates the error correction encoding circuit, and Fig. 3 (b) illustrates the error correction encoder therein; Fig. 4 is a block diagram showing the error correction decoding system using the parallel type shortened Hamming code of the first embodiment, where Fig. 4 (a) illustrates the error correction decoding circuit, and Fig. 4 (b) illustrates the error correction decoder therein; Fig. 5 is a diagram showing the number of check bits of the first embodiment; Fig. 6 is a block diagram showing the error correction encoding/decoding circuits of the second embodiment, where Fig. 6(a) illustrates the error correction encoder using the serial type shortened Hamming code, and Fig. 6 (b) illustrates the error correction decoder using the serial type shortened Hamming code; Fig. 7 is a detailed block diagram showing the error correction encoder using the serial type shortened Hamming code of the second embodiment; Fig. 8 is a detailed block diagram showing the error correction decoder using the serial type shortened Hamming code of the second embodiment; and Fig. 9 is a diagram showing the number of check bits of the second embodiment. DESCRIPTION OF THE PREFERRED EMBODIMENTS Referring to the attached drawings, there is shown an embodiment according to the present embodiment. <First Embodiment> The first embodiment performs the error correction function on AU-4-Xc or X x AU-4 of the STM-N signal with the use of the parallel type shortened Hamming code. To do so, it provides encoding and decoding circuits to encode or decode 8 parallel bits, one unit of AU-4-Xc or X × AU-4 at a time instead of one unit of AU-4 at a time. Fig. 1 (a) is a functional configuration diagram showing the error correction encoding circuit 20 using the parallel type shortened Hamming code according to the first embodiment of the present invention, and Fig. 1 (b) is a functional configuration diagram showing the error correction decoding circuit 25 using the parallel type shortened Hamming code according to the first embodiment of the present invention. As shown in Fig. 1(a), the error correction encoding circuit 20 using the parallel type shortened Hamming code includes the serial/parallel conversion circuit 22 and the error correction encoders 231 - 238. Upon receiving AU-4-Xc (2 ≦ X ≦ 16) or X AU-4 (2 ≦ X ≦ 16) signal of the STM-N signal at the sending signal input terminal 21 (for example, with N=4 and X=4), the serial/parallel conversion circuit 22 of the error correction encoding circuit 20 using the parallel type shortened Hamming code converts the signal to an 8-bit parallel signal and sends the 8-bit parallel signal to the error correction encoders 231 - 238. All of the error correction encoders 231 - 238 are of the same configuration. For example, the error correction encoder 231 performs {n, k} shortened Hamming encoding to execute one-bit error correction and sends the resulting check bit to the check bit output terminal 1. In Fig. 1(b), the error correction decoding circuit 25 using the parallel type shortened Hamming code incised the serial/parallel conversion circuit 27 and the error correction decoder 281 - 288. The serial/parallel conversion circuit 27 converts the STM-N signal received at the receiving signal input terminal 26 to an 8-bit parallel signal and sends the resulting signal to the error correction decoders 281 - 288. All of the error correction decoders 281 - 288 are of the same configuration. For example, the error correction decoder 281 detects an error bit position of the 8-bit parallel signal, corrects the data at the error bit position, and sends the data to the syndrome output terminal 1. Fig. 3 is a diagram showing the functional configuration of the error correction encoder 231. As shown in Fig. 3, the error correction encoder 231 includes the check bit generation circuit 231a and the check bit insertion circuit 231b. The check bit generation circuit 231a includes the D flip-fop circuits DF21 - DF34 and exclusive OR circuits Ex11 - Ex14 to form a cyclic code generation circuit. The check bit generation circuit 231a generates the {n, k} shortened Hamming codes C1 - C14 for one-bit error correction from the STM-N signal received at the sending signal input terminal and sends the resulting codes to the check bit insertion circuit 231b. The check bit insertion circuit 231b then inserts the check bits C1 - C14 into the vacant bit positions (Fig. 2) in the section overhead of the STM-N signal and sends the resulting data to the output terminal (with check bits). The parallel/serial conversion circuit 239 converts the data (with check bits), sent from the error correction encoders 231 - 238, to serial data and sends it to the output terminal. Fig. 4 is a diagram showing the functional configuration of the error correction decoder 281. In Fig. 4, the error correction decoder 281 includes the delay circuit 281a, syndrome bit generation circuit 281b, error bit position detection circuit 281c, and error correction circuit 281d. The syndrome bit generation circuit 281b includes the D flip-flop circuits DF1 - DF12 and exclusive OR circuits Exi - Ex10. The delay circuit 281a delays the STM-N signal received at the receiving data input terminal for the period of time equivalent to one frame of information bits, and sends the resulting signal to the error correction circuit 281d. The syndrome bit generation circuit 281b calculates the syndrome of the STM-N signal received at the receiving data input terminal and sends the syndrome bits S1 to S14 to the error bit position detection circuit 281c. The error bit position detection circuit 281c then detects an error bit position based on the syndrome bits S1 - S14, generates the error control signal, and sends it to the error correction circuit 281d. The error correction circuit 281d corrects the error signal of the STM-N signal, delayed by the delay circuit 281a, using the above-mentioned error control signal, then sends the corrected data to the data output terminal. For example, if the correction control signal is 1 indicating that there is an error and if the signal from the delay circuit 281a is 1, the circuit performs exclusive OR on them to output corrected data as 0; if the correction control signal is 1 and if the signal from the delay circuit 281a is 0, the circuit outputs 0. On the other hand, if the correction control signal is 0 indicating that there is no error and if the signal from the delay circuit 281a is 1, the circuit outputs 1; if the signal from the delay circuit 281a is 0, the circuit outputs 0. The parallel/serial conversion circuit 289 converts the corrected data sent from the error correction decoders 281 - 288 to serial data for output. The following explains the operation of the circuits shown in Fig. 1: error correction encoding circuit 20 and error correction decoding circuit 25 which use the parallel type shortened Hamming code. In the following discussion, N=4 and X=4 are assumed for AU-4-Xc (2 ≦ X ≦ 16) or X AU-4 (2 ≦ X ≦ 16) signals. Both the AU-4-4c and four AU-4 signals each have 75456 bits (= {261 x 4 x 9 x 8} + {9 x 4 x 8}) in one frame. This signal is sent to the sending signal input terminal 21 and is converted to 8-parallel-bit signals by the serial/parallel conversion circuit 22. There are 9432 (= {261 x 4 x 9 x 8} + {9 x 8} / 8) 8-parallel-bit signals in one frame, and these are used for error correction. In general, the {n, k} shortened Hamming code used for one-bit error correction must satisfy the following formula (1): 2(n- k) ≧ n + 1 where, n is the length (block size) of the code word containing bit data for which error correction encoding is performed and the check bits used for error correction encoding, and k is the length of bit data that is encoded. n - k is the number of check bits used for error correction encoding. From formula (1), the number of check bits used for 8-parallel-bit error correction encoding is 14. For the first bit, the error correction encoder 231 divides the polynomial representing a received data stream by the following formula (2). X14 + X10 + X6 + X + 1 to calculate the remainder as the value of the check bit, and sends it sent to the check bit output terminal 1. For the second to eighth bits, the error correction encoders 232 - 238 calculate the values of the check bits similarly from the polynomial of the data stream and send the results to the check bit output terminals 2 - 8. The {n, k} = {9446, 9432} shortened Hamming code is executed for each bit by inserting these check bits into the undefined bytes of the MSOH. n - k = 14, which is the number of check bits. Therefore, the AU-4-4c and 4 AU-4 signals may be encoded by 14 bytes of check bits. The following explains the error correction decoding operation. Fourteen bytes of check bits and AU-4-4c or 4 AU-4 signals are sent to the error correction decoding circuit 25 and then converted to 8 parallel signals by the error correction encoding circuit 20 and the serial/parallel conversion circuit 27. For each of 8-parallel-bits, the error correction decoders 281 - 288 calculate the syndrome using 14 check bits and received data, and sends the calculation results to the syndrome output terminals 1 - 8 for error correction of each bit. As described above, when the parallel type shortened Hamming code is used for AU-4-Xc (2 ≦ X ≦ 16) or X AU-4 (2 ≦ X ≦ 16) of the STM-N signal, the first embodiment according to the present invention reduces the number of check bits by using the shortened type Hamming code for each bit of 8-parallel-bits, one unit of AU-4-Xc or AU-4 x X at a time. Fig. 5 compares the number of check bits required by the embodiment according to the present invention with that required by the conventional method. For example, for AU-4-4c or 4 AU-4 signals, 48 bytes of check bits are required by the conventional method while 14 bytes are required by the first embodiment. Even when the value of N in STM-N becomes larger, this embodiment can perform transmission error correction with an extremely small number of check bits (error correction code). Therefore, this embodiment is ideal for an SDH fiber optical transmission system which ensures high-speed data transmission. <Second embodiment> The second embodiment performs the error correction function on AU-4-Xc or X x AU-4 of the STM-N signal with the use of the serial type shortened Hamming code. To do so, it provides encoders and decoders to encode or decode one unit of AU-4-Xc or X x AU-4 at a time, instead of encoding and decoding circuits which encode and decode one unit of AU-4 at a time as in the conventional method. Fig. 6 (a) is a diagram showing the error correction encoder 30 using the serial type shortened Hamming code, and Fig. 6 (b) is a diagram showing the error correction decoder 33 using the serial type shortened Hamming code. The error correction encoder 30 performs {n, k} shortened Hamming encoding on AU-4-Xc (2 ≦ X ≦ 16) of the STM-N signal, in which check bits are not inserted, to do one-bit error correction, and sends the generated check bits to the check bit output terminal. Note that N=4 and X=4 are assumed in this embodiment. The error correction decoder 33 detects an error bit position in the STM-N signal in which check bits are inserted, corrects the signal at the bit position, and outputs the corrected result to the syndrome output terminal. Fig. 7 is a detailed functional configuration diagram of the error correction encoder 30 using the serial type shortened Hamming code. As shown in Fig 7, the error correction encoder 30 using the serial type shortened Hamming code includes the check bit generation circuit 30a and the check bit insertion circuit 30b. The check bit generation circuit 30a includes the D flip-flop circuits DF41 - DF57 and exclusive OR circuits Ex21 - Ex22 to form a cyclic code generation circuit. The check bit generation circuit 30a generates the {n, k} shortened Hamming codes C1 - C17 for one-bit error correction from the STM-N signal received at the sending signal input terminal, and sends the resulting codes to the check bit insertion circuit 30b. The check bit insertion circuit 30b then inserts the check bits C1 - C17 into the vacant bit positions (Fig. 2) in the section overhead of the STM-N signal and sends the resulting data to the output terminal (with check bits). Fig. 8 is a diagram showing the functional configuration of the error correction decoder 33 using the serial type shortened Hamming code. In Fig. 8, the error correction decoder 33 includes the delay circuit 33a, syndrome bit generation circuit 33b, error bit position detection circuit 33c, and error correction circuit 33d. The syndrome bit generation circuit 33b includes the D flip-flop circuits DF61 - DF77 and exclusive OR circuits Ex31 - Ex39. The delay circuit 33a delays the STM-N signal received at the receiving data input terminal for the period of time equivalent to one frame of information bits, and sends the resulting signal to the error correction circuit 33d. The syndrome bit generation circuit 33b calculates the syndrome of the STM-N signal received at the receiving data input terminal and sends the syndrome bits S1 to S17 to the error bit position detection circuit 33c. The error bit position detection circuit 33c then detects an error bit position based on the syndrome bits S1 - S17, generates the error control signal, and sends it to the error correction circuit 33d. The error correction circuit 33d corrects the error signal of the STM-N signal, delayed by the delay circuit 33a, using the above-mentioned error control signal, then sends the corrected data to the data output terminal. For example, if the correction control signal is 1 indicating that there is an error and if the signal from the delay circuit 33a is 1, the circuit performs exclusive OR on them to output corrected data as 0; if the correction control signal is 1 and if the signal from the delay circuit 33a is 0, the circuit outputs 0. On the other hand, if the correction control signal is 0 indicating that there is no error and if the signal from the delay circuit 33a is 1, the circuit outputs 1; if the signal from the delay circuit 33a is 0, the circuit outputs 0. The following explains the operation of the error correction encoding/decoding operation using the serial type shortened Hamming code according to the second embodiment. In the following discussion, N=4 and X=4 are assumed for AU-4-Xc (2 ≦ X ≦ 16) of the STM-N signal. Both the AU-4-4c and four AU-4 signals each have 75456 bits (= {261 x 4 x 9 x 8} + {9 x 4 x 8}) in one frame. This signal is sent to the sending signal input terminal 31 for encoding. In general, 17 bits are required for the {n, k} shortened Hamming code as calculated by the above formula (1). The error correction encoder 30 divides the polynomial representing a received data stream by the following formula (3). X17 + X3 + 1 to calculate the remainder as value of the check bit, and sends it to the check bit output terminal 32. The {75473, 75456} shortened Hamming code is executed by inserting these check bits into the undefined bytes of the MSOH. However, since data in the STM-N signal is represented in 8-bit bytes, the number of check bits inserted into the MSOH in the SOH for error correction encoding is equivalent to 3 bytes. As a result, AU-4-Xc or four AU-4 signals can be encoded by 3-byte check bits. The following explains the error correction decoding operation. Three bytes of check bits and AU-4-4c or 4 AU-4 signals are sent to the receiving signal input terminal 34. The error correction decoder calculates the syndrome using 3 bytes of check bits and received data, and sends the calculation results to the syndrome output terminal 35 for error correction decoding. The above embodiments use the {n, k} Hamming code for one-bit error correction only. Two-bit or higher-bit error correction is also possible. For example, a code for random errors, burst errors, or byte errors should be used. In addition, the block code or the convolutional code should be used. The block code includes not only the Hamming code, but the extended Hamming code, BCH code, Fire code, Kou code, and Reed-Solomon code. The convolutional code includes Viterbi decode, sequential decode, self-orthogonal code, Iwadare code, and Hagelbarger code. Further, generated check bits may be inserted into any positions in the section overhead except the pointer area. Preferably, they should be inserted into the unused areas shown in Fig. 2. As described above, it is an object of the present invention to provide an error correction encoding and decoding method for encoding or decoding the STM-N signal containing a plurality of multiplexed administrative units, a plurality of administrative units at a time. This method facilitates transmission error correction by simply generating an extremely small number of error correction codes even when the value of N in STM-N becomes large.

Claims: A synchronous transport module level N hereinafter referred to as STM-N signal error correction coding system, N being a positive integer greater than one, comprising: administrative unit generating means for generating a plurality of administrative units, each of the administrative units including a virtual container for accommodating transmission data and a pointer having information on multiplexing of the data; error correction code generating means for generating one error correction code for the whole of the plurality of administrative units; and STM-N signal generating means for generating an STM-N signal having an overhead section and a payload section by inserting the error correction code in the overhead section and inserting the plurality of administrative units in the payload section. A signal error correction coding system according to claim 1 further comprising error correction code decoding means for decoding the error correction code for the whole of the plurality of administrative units within the STM-N signal. A signal error correction coding system according to claim 1 or 2, wherein the one error correction code is a one bit error correction code. A synchronous transport module level N hereinafter referred to as STM-N signal error correction coding method, N being a positive integer greater than one, comprising a first step of generating a plurality of administrative units, each of the administrative units including a virtual container for accommodating transmission data and a pointer having information on multiplexing of the data; a second step of generating one error correction code for the whole of the plurality of administrative units; and a third step of generating an STM-N signal having an overhead section and a payload section by inserting the error correction code in the overhead section and inserting the plurality of administrative units in the payload section. A signal error correction coding method according to claim 4, wherein the one error correction code is a one bit error correction code, and the method further comprising: a fourth step of detecting the one bit error correction code for the whole of the plurality of administrative units from the received STM-N signal; a fifth step of detecting an error bit position using the received error correction code and received administrative units within the received STM-N signal; and a sixth step of correcting an error bit of the received STM-N signal using the error bit position information.

Inventors: MUKOJIMA TOSHIAKI, MUKOJIMA, TOSHIAKI
Applicants: OKI ELECTRIC IND CO LTD, OKI ELECTRIC INDUSTRY CO., LTD.
Application year: 1997
Main classification: H04L1
IPC codes: H04Q11, H04L1, H04J3