Cell delineation method and cell delineation circuit
BACKGROUND OF THE INVENTION 
     The present invention relates to a cell delineation method and a cell delineation circuit and, more particularly, to a cell delineation method and a cell delineation circuit for establishing a cell delineation by using a point that a certain information block in a cell satisfies a CRC (Cyclic Redundancy Check) rule. 
     In the case of establishing a cell delineation in a fixed length packet communication, there is a method of establishing the cell delineation by using a point that a certain information block in the cell satisfies the CRC (Cyclic Redundancy Check) rule. 
     According to the CCITT (International Telegraph and Telephone Consulative Committee), there is shown a method of establishing the cell delineation by using a point that an information block of five bytes from the head of an ATM (Asynchronous Transfer Mode) cell satisfies the CRC rule with respect to the cell delineation of the ATM signal. 
     A cell delineation circuit using the CRC is characterized in that a CRC calculator is used as a SYNC pattern detector. The CRC calculator is as shown in FIG. 2 in the case where a generator polynomial is expressed by X 8  +X 2  +X+1. According to the CRC calculator, after all of flip-flop circuits 302-1 to 302-8 were reset to 0  at the beginning of calculations, 40 bits are input and, thereafter, the results of the calculations are generated to outputs of the eight flip-flop circuits 302-1 to 302-8 in the case of the ATM cell. In FIG. 2, reference numerals 301-1 to 301-3 denote exclusive-OR. 
     An example of a construction of the cell delineation circuit in the ATM cell has been described in Toshima and Takino, &#34;Design of Cell Delineation Circuit Using Header Error Control Bits&#34;, IEICEJ Technical Report, SC-89-70, November, 1989. 
     FIGS. 3 and 4 show examples of construction of the cell delineation circuits which have been adapted to the case where a signal speed is high, which examples have been shown in the above-mentioned literature. In FIG. 3, an input signal 101 is converted into parallel signals of eight bits by a serial to parallel converter 1. In order to execute a phase alignment, seven bits among the eight bits are delayed by a delay circuit 2. Thus, resultant parallel signals of fifteen bits are supplied to a shift matrix 201. Parallel output signals of eight bits of the shift matrix 201 are converted into parallel signals of 40 bits by registers 202-1 to 202-4 and are supplied to a CRC calculator 3&#39; for executing calculations, which are feedback loop, in a lump by using logic circuits which are formed to have multiple stages. The results of the CRC calculations are latched and are checked by a zero-detector 4 to see if they satisfy the CRC rule or not. The results of the discriminations are given to a protection circuit 9&#39;. If the CRC rule is continuously satisfied a few times, the cell delineation is established. After the cell delineation has been established, if the CRC rule is subsequently not continuously satisfied a few times, it is determined that a loss of delineation occurred. On the other hand, although all of the patterns were inspected by the phase which is at present being inspected, if the results of the discriminations do not satisfy that CRC rule, a phase alignment is performed by the shift matrix 201 by a signal from a phase alignment controller. By executing the phase alignment, a process is performed by checking whether the CRC coding law is respected for the assumed header field with respect to all of the patterns. A calculation timing generator 5&#39; first starts a CRC coding law checking every eight bits and outputs a control signal for inspection of every cell once an agreement is found. 
     In FIG. 4, the input signal 101 is converted into the parallel signals of eight bits by the serial to parallel converter 1 and further converted into the parallel signals of 48 bits by registers 205-1 to 205-5. The parallel signals of 48 bits are, moreover, converted into eight series, each of which is a wide parallel signal 40 bits. Each of these series are shifted one bit by one bit from each other. In a manner similar to the case of FIG. 3, the 40-bit parallel signals of the eight series are subjected to calculations of CRC and checks are made to see if they satisfy the CRC rule or not, thereby establishing the cell delineation. However, in the case of FIG. 4, since the CRC calculations are executed in a lump for the signals of eight series having different phases, the phase alignment control as in FIG. 3 is unnecessary and checks of CRC can be performed with respect to all of the patterns. In FIG. 4, reference numerals 3&#39;-1 to 3&#39;-8 denote CRC calculators; 203-1 to 203-8 indicate registers; 4-1 to 4-8 zero-detectors; and 9&#39;-1 to 9&#39;-8 protection circuits. 
     In the cell delineation circuit of FIG. 3, in order to set the correct phase so as to establish the cell delineation, it is necessary to count the number of pattern mismatch times and align the word phase in accordance with the result of the count value. In the circuit shown in the diagram, in the case where the phase of parallel output signals were aligned, the number of bits to be processed by the CRC is so large to be 40 bits. Therefore, there are problems such that a phase deviation between such bits and the remaining bits in a register occurs, and the result of the calculation of the CRC cannot be used just after completion of the phase alignment. In addition, a delineation acquisition time also increases due to such a phase alignment. 
     On the other hand, in FIG. 4, the CRC coding law checking result can be obtained bit-by-bit by arranging eight CRC calculators 3&#39;-1 to 3&#39;-8 in parallel. However, there are problems such that as circuits other than the serial to parallel converter, register, shift matrix, and timing generator, it is necessary to use as many circuits as the number of parallel development multiple of the serial to parallel converter. In other words, in the example of FIG. 4, eight CRC calculators, eight zero detectors, etc., are required, thereby greatly increasing the necessary amount of hardware. 
     SUMMARY OF THE INVENTION 
     It is a main object of the invention to provide a cell delineation method and a cell delineation circuit which are suitable in the case where a signal speed is high and which can minimize an increase in hardware amount without needing a phase alignment control. 
     Another object of the invention is to provide a cell delineation circuit having a construction such that the result of the CRC calculation can be output in order to detect/correct a transmission error in a section which is subjected to the CRC calculation. 
     Still another object of the invention is to provide a cell delineation circuit in which, in the case where the CRC rule was simultaneously satisfied by a plurality of series due to an alignment error, a priority function is given to the selection of the series in which the CRC rule was satisfied so as to prevent the occurrence of competition., 
     A further object of the invention is to provide a cell delineation circuit having a protection circuit to reduce the probabilities of an alignment error and an error in loss of delineation. 
     Yet object of the invention is to provide a cell delineation circuit having a construction in which a circuit scale is further reduced for an input signal whose byte alignment has been established. 
     According to a cell delineation circuit of the invention, a plurality of parallel signals which were shifted one bit by one bit relative to each other are formed from parallel signals after completion of the serial to parallel conversion for an input signal, the CRC (Cyclic Redundancy Check) calculations are executed in parallel for the plurality of parallel signals, a series in which a pattern to be subjected to the calculation satisfies the CRC rule is determined from the results of the CRC calculations, and this series is generated, thereby establishing the cell delineation. 
     According to the cell delineation circuit of the invention, by converting the input signal into the parallel signals, a circuit construction suitable for a high speed signal is formed. On the other hand, since the required number of CRC calculators is determined by the number of parallel CRC calculations which is smaller than that in the conventional technique, the amount of hardware necessary for the CRC calculators can be reduced. Further, the number of registers necessary for the parallel development can also be reduced. 
     Moreover, according to the invention, since a CRC Coding law checking is executed with respect to each of a plurality of parallel signals which were shifted one bit by bit relative to each other one, for instance, in the case of the parallel signals of eight series which were shifted one bit by one bit, by executing the CRC calculations for every byte of the number which is mutually prime with the number of bytes of the cell, the check of CRC can be executed with respect to the pattern in which all of the bits of the cell are set to the head. Therefore, the check of CRC is performed with respect to all of the phases and, the phase alignment control is unnecessary. 
     On the other hand, according to the invention, among a plurality of CRC calculators, by outputting the result of the calculation of the CRC calculator of the series in which the cell delineation was established, the transmission error in the section to be subject to the CRC calculation can be detected/corrected. 
     Further, according to the invention, by giving the function of the priority control to the selection signal generator, even in the case where the CRC rule is unexpectedly satisfied and the zero-detection pulses are detected with respect to a plurality of series, no competition occurs. 
     According to the invention, by providing the protection circuit the probabilities such that an alignment error and an error in loss of cell delineation occur can be reduced. 
     According to the invention, further, in the case where the byte alignment is established, by using a circuit construction adapted to such a case, the circuit scale can be further reduced. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a constructional diagram showing a fundamental construction of a cell delineation circuit of the invention; 
     FIG. 2 is a circuit diagram of a CRC calculator in the case where a generator polynomial is expressed by X 8  +X 2  +X+1; 
     FIG. 3 is a constructional diagram of the first well-known example of a cell delineation circuit; 
     FIG. 4 is a constructional diagram of the second well-known example of the cell delineation circuit; 
     FIG. 5 is a constructional diagram in the case of processing the cell delineation similar to the circuit of FIG. 1 with-parallel signals of eight bits width; 
     FIG. 6 is a constructional diagram in the case of processing the cell delineation similar to the circuit of FIG. 5 with parallel signals eight series of eight bits parallel signals; 
     FIG. 7 is a circuit constructional diagram of a serial to parallel converter; 
     FIG. 8 is a circuit constructional diagram of a delay; 
     FIG. 9 is a circuit constructional diagram of a CRC calculator of the 8-bit parallel type; 
     FIG. 10 is a circuit constructional diagram of a zero-detector; 
     FIG. 11 is a circuit constructional diagram of a timing generator; 
     FIG. 12 is a circuit constructional diagram of an SEL signal generator; 
     FIG. 13 is a circuit constructional diagram of a selector; 
     FIG. 14 is a constructional diagram of a cell delineation circuit in which a selector to output a syndrome is provided for the cell delineation circuit of FIG. 6; 
     FIG. 15 is a constructional diagram of a cell delineation circuit in which one protection circuit is provided for the cell delineation circuit of FIG. 6; 
     FIG. 16 is a circuit constructional diagram of a protection circuit; 
     FIG. 17 is a constructional diagram of a cell delineation circuit in which a plurality of protection circuits are provided for the cell delineation circuit in FIG. 6; 
     FIG. 18 is a constructional diagram of a cell delineation circuit in which a selector to output a syndrome is provided for the cell delineation circuit of FIG. 15; 
     FIG. 19 is a constructional diagram of a cell delineation circuit in which a selector to output a syndrome is provided for the cell delineation circuit of FIG. 17; and 
     FIG. 20 is a constructional diagram of a cell delineation circuit in the case of processing a signal whose by alignment is obtained. 
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     An embodiment of the present invention will be described in detail hereinbelow. 
     A format of a signal to be processed will be first described prior to explaining the embodiment. 
     In the ATM transmission, an ATM cell comprises 53 bytes and five bytes from the head are used as a header. A bit train of eight bits to realize an HEC (Header Error Control) function are provided at the fifth byte from the head of the header of the ATM cell. Such a bit train are CRC (Cyclic Redundancy Check) bits which were calculated for the header information section in a range from the head of the header to the fourth byte. The cell delineation is established by using a point that the information blocks of five bytes satisfy the CRC rule. 
     The embodiment will now be described hereinbelow. 
     FIG. 1 is a constructional diagram of an embodiment of the invention. The cell delineation circuit in the embodiment comprises: the serial to parallel converter 1 to form parallel signals of n bits for an input signal; the delay 2 to form the parallel signals of n bits of m series which were shifted one bit by one bit from the above n-bits parallel signals; parallel CRC calculators 3-1 to 3-m, each for executing CRC calculations in an n-bit parallel manner for the n-bits parallel signals of the m series; a timing generator 5 to give calculation timings to the parallel CRC calculators 3-1 to 3-m; zero-detectors 4-1 to 4-m to discriminate whether a pattern to be calculated satisfies the CRC rule or not on the basis of the results of the calculations of the parallel CRC calculators 3-1 to 3-m; an SEL signal generator 6 to output a selection (SEL) signal, to select the series in which the zero-detection was so that performed the cell delineation is established among the n-bits parallel signals of the m series from outputs of the zero-detectors 4-1 to 4-m; and a selector 7 to select and output the series in which the cell delineation is established among the n-bits parallel signals of the m series which were shifted one bit by one bit the SEL signals of the SEL signal generator 6. 
     FIG. 5 is a constructional diagram of a cell delineation circuit which can execute the byte operation of the circuit of FIG. 1. The circuit of FIG. 5 comprises: the serial to parallel converter 1 to form the parallel signals of eight bits for the input signal; the delay 2 to form the 8-bits parallel signals of m series which were shifted one bit by one from the 8-bits parallel signals output from the converter; the parallel CRC calculators 3-1 to 3-m, each of executing the CRC calculations in an 8-bit parallel manner for the 8-bits parallel signals of the m series; the timing generator 5 to give calculation timings to the parallel CRC calculators 3-1 to 3-m; the zero-detectors 4-1 to 4-m to discriminate whether a pattern to be calculated satisfies the CRC rule or not on the basis of the results of the calculations of the parallel CRC calculators 3-1 to 3-m; the SEL signal generator 6 to output a selection (SEL) signal to select the series in which the zero-detection was obtained and the cell delineation is established among the parallel signals of the m series from the outputs of the zero-detectors 4-1 to 4-m; and the selector 7 to select and output the series in which the cell delineation is established among the 8-bits parallel signals of the m series which were shifted one bit by one bit from the SEL signal of the SEL signal generator 6. 
     Further, FIG. 6 is a constructional diagram of a cell delineation circuit in which the zero-detection can be performed by a byte operation in the circuit of FIG. 5. The circuit of FIG. 6 comprises: the serial to parallel converter 1 to form the 8-bits parallel signals for the input signal; the delay 2 to form the 8-bits parallel signals of eight series which were shifted one bit by one bit from the 8-bit parallel signals; the parallel CRC calculators 3-1 to 3-8 each for executing the CRC calculations in an 8-bit parallel manner for the 8-bits parallel signals of the eight series; the timing generator 5 to give calculation timings to the parallel CRC calculators 3-1 to 3-8; the zero-detectors 4-1 to 4-8 to discriminate whether a pattern to be calculated satisfies the CRC rule or not on the basis of the results of the calculations of the parallel CRC calculators 3-1 to 3-8; the SEL signal generator 6 to output a selection (SEL) signal to select the series in which the ero-detection was obtained and the cell delineation is established among the 8-bits parallel signals of the eight series from the outputs of the zero-detectors 4-1 to 4-8; and the selector 7 to select and output the series in which the cell delineation is established among the 8-bits parallel signals of the eight series which were shifted one bit by one from the SEL signal of the SEL signal generator 6. 
     The operation will now be described with reference to FIG. 6. 
     In the operation of the embodiment of FIG. 6, the input signal is first converted into the parallel signals of eight bits so that the input signal can be byte-operated. To convert the input signal into the parallel signals of eight bits, the serial to parallel converter shown in FIG. 7 can be used. The 8-bits parallel signals are delayed by one clock by the delay shown in FIG. 8 and are merged to the upper seven bits which are not delayed, so that the parallel signals of 15 bits are derived. The 8-bits parallel signals of eight series which were shifted one bit by one are formed from eight bits at the head from the 15-bits parallel signals. The 8-bits parallel signals are supplied to the parallel CRC calculators 3-1 to 3-8 of eight bits, respectively. The circuits shown in FIG. 9 can be used as the 8-bit parallel CRC calculators 3-1 to 3-8. FIG. 9 shows a circuit in which the CRC calculator in the case where the generator polynomial shown in FIG. 2 is expressed by X 8  +X 2  +X+ 1 was constructed by parallel CRC calculators of eight bits. The parallel CRC calculators reset all of flip-flops 31-1 to 31-8 to 0 at the beginning of the calculations. In the case of using an ATM cell as an object to be calculated, since five bytes are used for a calculation, five clocks are needed for the calculation. On the other hand, since one clock is necessary to reset the circuits to 0, six clocks (as many as six bytes) are necessary until the next calculation is executed after one calculation was started. The ATM cell comprises 53 bytes. By executing the CRC calculations every bytes of the number which is mutually prime with the number of bytes of the ATM cell, the CRC calculations can be performed with respect to the pattern in which all of the bits of the ATM cell are set to the head. Therefore, by calculating every six bytes, checks of CRC can be executed with respect to all of the phases. The results of the calculations of the 8-bits parallel CRC calculators 3-1 to 3-8 are supplied to the zero-detectors 4-1 to 4-8. The zero-detectors 4-1 to 4-8 discriminate whether the CRC rule is satisfied or not. Circuits shown in FIG. 10 can be used as the zero-detectors 4-1 to 4-8. If the CRC rule is satisfied, 0 is generated as results of the calculations of the CRC calculators 3-1 to 3-8. Therefore, the zero-detectors 4-1 to 4-8 detect the timings when the results of the calculations of the CRC calculators 3-1 to 3-8 are set to 0. Since the CRC calculators 3-1 to 3-8 also output the signals during the calculating operations, the zero-detectors 4-1 to 4-8 detect only the results of the CRC calculations by detection timing pulses. The detection timing pulses are generated from a timing generator shown in FIG. 11. Until the zero-detection is obtained by the zero-detectors 4-1 to 4-8, the timing generator in FIG. 11 generates the detection timing pulses every six clocks (as many as six bytes). When the zero-detection is obtained, the timing generator generates the detection timing pulses every 53 clocks (corresponding to one cell). The detection timing pulses are also used to reset the flip-flops 31-1 to 31-8 of the CRC calculators 3-1 to 3-8 to 0. Outputs of the zero-detectors 4-1 to 4-8 are supplied to the SEL signal generator 6. The SEL signal generator 6 discriminates which one of the eight series satisfies the CRC rule and whether the cell delineation has been established or not on the basis of the input signal. The SEL signal generator 6 can be realized by a circuit shown in FIG. 12. An output of the generator 6 is supplied to the selector 7. The selector 7 selects the series in which the cell delineation was established and outputs such a series. The selector 7 can be realized by a circuit shown in FIG. 13. As described above, by converting the input signal into the parallel signals, a circuit construction suitable for the high speed signal is derived. On the other hand, by processing the CRC calculations by the parallel bit width which is smaller than that in the conventional technique, a hardware amount of the CRC calculators can be reduced and the number of registers necessary for parallel development can be reduced. Further, since the check of CRC is executed with respect to each of a plurality of parallel signals which were shifted one bit by one bit, the check of CRC is performed with respect to all of the phases, and the phase alignment control is unnecessary. 
     The selector 8 selects and outputs the output signals of the plurality of parallel CRC calculators 3-1 to 3-8 by the SEL signal of the SEL signal generator 6. A selector is provided for the cell delineation circuit to select a normal syndrome to detect/correct a transmission error of the section which is subjected to the CRC calculation. FIG. 14 shows a constructional diagram of a cell delineation circuit in which the selector 8 is provided in the circuit of FIG. 6. 
     The SEL signal generator 6 has a priority control function to preferentially select in the case where the CRC rule was unexpectedly satisfied and the zero-detection pulses from the zero-detectors 4-1 to 4-8 were detected with respect to a plurality of series. To provide the priority control function, it is sufficient to use a priority encoder as an encoder 62 of an SEL signal generator shown in FIG. 12. By providing the priority control function, even in the case where the CRC rule was unexpectedly satisfied and the zero-detection pulses were detected with respect to a plurality of series, no competition occurs. 
     The cell delineation circuit further has: a selector 10 to select and output the zero-detect pulses of the zero-detectors 4-1 to 4-8 by the SEL signal from the SEL signal generator 6; and a protection circuit 9 to output an SYNC flag from an output of the selector 10 and reduce an alignment error. FIG. 15 shows a constructional diagram of the cell delineation circuit. FIG. 16 shows the protection circuit. The protection circuit in FIG. 16 generates an SYNC flag when the zero-detection was derived three times consecutively. By providing the protection circuit, a probability of a delineation error can be reduced. 
     Different from the cell delineation circuit of FIG. 16, a circuit of FIG. 17 has protection circuits 9-1 to 9-8 to reduce the probabilities of alignment errors for the zero-detection pulses of the zero-detectors 4-1 to -8, wherein zero-detect pulses of the protection circuits -1 to 9-8 are supplied to the SEL signal generator 6. By using such a construction, the probability of the alignment error can be further reduced as compared with the case of the cell delineation circuit using only one protection circuit 9 shown in FIG. 16. The circuit of FIG. 17 further has the selector 10 to select and output the SYNC flags from the protection circuits 9-1 to 9-8 by the SEL signal from the SEL signal generator 6. 
     FIG. 18 shows a cell delineation circuit having a construction in which the selector 8 to output a syndrome to detect/correct a transmission error of the section which is subjected to the CRC calculation is provided in the cell delineation circuit of FIG. 15. FIG. 19 shows a cell delineation circuit having a construction in which the selector 8 to output a syndrome to detect/correct a transmission error of the section which is subjected to the CRC calculation is provided for the cell delineation circuit of FIG. 17. 
     As another embodiment, FIG. 20 shows a construction of a cell delineation circuit in the case where the byte alignment was established. The circuit of FIG. 20 comprises: registers 12-1 to 12-5 to form 8-bits parallel signals of six series which were shifted one byte by one byte from the 8-bits parallel signals in which the byte alignment was established; the parallel CRC calculators 3-1 to 3-6 to CRC calculate the 8-bits parallel signals of the six series in an 8-bit parallel manner; the timing generator 5 to give the calculation timings to the parallel CRC calculators 3-1 to 3-6; the zero-detectors 4-1 to 4-6 to discriminate whether a pattern to be calculated satisfies the CRC rule or not from the results of the CRC calculations of the parallel CRC calculators 3-1 to 3-6; protection circuits 9-1 to 9-6 to reduce the probabilities of delineation errors for the zero-detection pulses of the zero-detectors 4-1 to 4-6; the SEL signal generator 6 to output a signal to select the series in which the cell delineation was established among the 8-bits parallel signals of the six series from the sync flags from the protection circuits 9-1 to 9-6; a selector 7&#39; to select and output the series in which the cell delineation was established among the 8-bits parallel signals of the six series which were shifted one bit by one bit by the SEL signal of the SEL signal generator 6; and the selector 10 to select and output the SYNC flags from the protection circuits 9-1 to 9-6 by the SEL signal from the SEL signal generator 6 in order to output the SYNC flag. By using the above construction, the circuit scale can be further reduced. 
     As described above, by using the cell delineation circuit of the invention, it is possible to construct a cell delineation circuit which is suitable for a high speed signal and which can minimize an increase in hardware amount without needing the phase alignment control. On the other hand, in the cell delineation circuit in which the cell delineation is established by using a point that a certain information block in a cell satisfies the CRC rule, it is possible to realize the cell delineation circuit which is suitable for a high speed signal and which doesn&#39;t need the phase alignment control. An increase in hardware can be minimized.