KR0126591B1 - Electric means for parallel xtp cheok code by cyclic redundoncy cheek - Google Patents

Electric means for parallel xtp cheok code by cyclic redundoncy cheek

Info

Publication number
KR0126591B1
KR0126591B1 KR1019940033896A KR19940033896A KR0126591B1 KR 0126591 B1 KR0126591 B1 KR 0126591B1 KR 1019940033896 A KR1019940033896 A KR 1019940033896A KR 19940033896 A KR19940033896 A KR 19940033896A KR 0126591 B1 KR0126591 B1 KR 0126591B1
Authority
KR
South Korea
Prior art keywords
circuit
input
bit
data
parallel
Prior art date
Application number
KR1019940033896A
Other languages
Korean (ko)
Other versions
KR960027880A (en
Inventor
전영애
Original Assignee
양승택
한국전자통신연구원
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 양승택, 한국전자통신연구원 filed Critical 양승택
Priority to KR1019940033896A priority Critical patent/KR0126591B1/en
Publication of KR960027880A publication Critical patent/KR960027880A/en
Application granted granted Critical
Publication of KR0126591B1 publication Critical patent/KR0126591B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/10Streamlined, light-weight or high-speed protocols, e.g. express transfer protocol [XTP] or byte stream
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • H03M13/091Parallel or block-wise CRC computation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

The input side combinational circuit(3) receives the data from the upper class in an array of 16 bit through the input line(IN0-IN15) and to arrange the 16 bit for data in parallel, it is formed with number of exclusive OR; XOR operation gate. The storage circuit(4) is formed with 16 resistors for storing the computed value and the output side combination circuit(5) is formed with number of XOR gate for the 16 bit parallel processing by receiving the storage circuit(4) output(Y0-Y15). The selector circuit(6) outputs the input data(IN0-IN15) for the first 15 bit clock and it is formed with the 2 input multiplexers which outputs the CHECK value computed for the 1 bit clock.

Description

고속 트랜스포트 프로토콜 체크 코드 생성을 위한 병렬 순환 잉여검사 코드 생성수단Parallel Cyclic Redundancy Check Code Generation for Fast Transport Protocol Check Code Generation

제1도는 XTP패킷 CHECK코드 생성을 위한 직렬 CRC 코드 생성회로의 구성도이다.1 is a configuration diagram of a serial CRC code generation circuit for generating an XTP packet CHECK code.

제2도는 본 발명에 따른 XTP 패킷 CHECK 코드 생성을 위한 병렬 CRC 코드 생성회로의 구성도이다.2 is a block diagram of a parallel CRC code generation circuit for generating an XTP packet CHECK code according to the present invention.

* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings

3 : 입력측 조합 회로, 4 : 저장회로,3: input side combination circuit, 4: storage circuit,

5 : 출력측 조합 회로, 6 : 선택회로.5: output side combination circuit, 6: selection circuit.

본 발명은 고속 트랜스포트 프로토콜(eXpress Transport Protoco1; 이하 XT P라 함) 패킷의 체크(Checksum 이하, CHECK라 함) 코드를 생성하기 위한 병렬 순환 잉여 검사(Cyclic Redundancy Check ; 이하, CRC라 함) 코드 생성 회로에 관한 것이다.The present invention provides a parallel cyclic redundancy check (CRC) code for generating a code of a fast transport protocol (eXpress Transport Protoco1; hereinafter referred to as XT P) packet. It relates to a generation circuit.

일반적으로 XTP 패킷 헤더는 전체 32바이트로 구성되어 있으며 마지막 2바이트는 앞의 30바이트에 대한오류를 검출하고 교정하기 위하여 30바이트에 대한 CRC 코드를 위하여 2바이트를 사용하도록 XTP 포럼에서 규정하고 있으며, CRC 코드의 생성 다항식으로는 북미에서 주로 사용하는 CRC-16=X16+X15+X2+1를 사용한다.In general, the XTP packet header consists of 32 bytes in total, and the last 2 bytes are defined by the XTP forum to use 2 bytes for CRC codes for 30 bytes to detect and correct errors for the previous 30 bytes. Generation of CRC Codes For polynomials, we use CRC-16 = X 16 + X 15 + X 2 +1, which is commonly used in North America.

또한, XTP는 고속의 실시간 데이타 처리를 위한 프로토콜로서 CRC 생성 회로는 원하는 전송속도 이상의 동작속도를 갖는 반도체 소자로 구현되어야 한다.In addition, XTP is a protocol for high-speed real-time data processing, CRC generation circuit should be implemented as a semiconductor device having an operating speed of more than the desired transmission speed.

그러나, 고속의 반도체 소자는 고가이며 동작속도가 상승함에 따라 회로 구성에 많은 문제점이 발생할 수 있다.However, high speed semiconductor devices are expensive and may cause many problems in circuit configuration as the operation speed increases.

따라서 본 발명은 전송 데이타를 16비트 병렬로 처리함으로써 회로의 동작속도를 전송속도의 1/l6로 감소시켜 구성할 수 있어 일반적인 반도체 소자로도 CRC 코드 생성 회로를 구현할 수 있도록 하는 XTP 패킷 CHECK 코드 생성을 위한 병렬 CRC 코드 생성 수단을 제공하는데 그 목적이 있다.Therefore, the present invention can be configured by reducing the operation speed of the circuit to 1 / l6 of the transmission speed by processing the transmission data in 16-bit parallel to generate the XTP packet CHECK code to implement a CRC code generation circuit in general semiconductor devices It is an object of the present invention to provide a means for generating a parallel CRC code.

상기 목적을 달성하기 위하여 본 발명은 상위 계층으로부터 16비트 병렬로 데이타를 수신하기 위한 입력선(IN0-IN15)과, 상위 계층으로부터 16비트 병렬로 데이타를 수신하여 상기 데이타에 대한 16비트 병렬처리를 위하여 다수의 배타적 논리합 연산 게이트(Exclusive OR Gate ; 이하, XOR 게이트라 함)로 구성된 입력측 조합 회로(3)와; 계산된 값을 저장하기 위하여 16개의 레지스터로 구성된 저장 회로(4)와; 저장 회로의 출력(Y0-Y15)을 수신하여 16비트 병렬 처리를 위하여 다수의 XOR 게이트로 구성된 출력측 조합 회로(5)와; 입력 데이타(IN0-IN15)를 첫 15비트 클럭 동안 출력시키고 그 다음 1비트 클럭동안 계산된 CHECK 코드값을 출력시키는 2입력 멀티플렉서로 구성된 선택 회로(6)와; 레지스터 회로(4)가 동작하도록 하는 구동 입력선(4A)과; 클럭 신호를 위한 클럭 입력선(4B)과; 레지스터 회로(4)를 초기에 클리어시키기 위한 클리어 입력선(4C)과; 레지스터에 값을 규정하기 위한 세트 입력선(4D)과; 입력 데이타와 CHECK 코드값의 선택을 제어하는 제어 입력선(6A)과; 입력 데이타와 CHECK 코드값을 출력하는 출력선(OUT0-OUT15)으로 구성됨을 특징으로 한다.In order to achieve the above object, the present invention provides an input line (IN0-IN15) for receiving data in 16-bit parallel from an upper layer and 16-bit parallel processing for the data by receiving data in 16-bit parallel from an upper layer. An input side combination circuit 3 composed of a plurality of exclusive OR gates (hereinafter, referred to as XOR gates); A storage circuit 4 consisting of 16 registers for storing the calculated value; An output side combination circuit (5) comprising a plurality of XOR gates for receiving the outputs (Y0-Y15) of the storage circuit and for 16-bit parallel processing; A selection circuit 6 composed of a two-input multiplexer for outputting input data IN0-IN15 for the first 15-bit clock and for outputting a CHECK code value calculated for the next one-bit clock; A drive input line 4A for causing the register circuit 4 to operate; A clock input line 4B for a clock signal; A clear input line 4C for initially clearing the register circuit 4; A set input line 4D for defining a value in a register; A control input line 6A for controlling selection of input data and CHECK code values; Characterized in that it consists of an output line (OUT0-OUT15) for outputting the input data and the CHECK code value.

이하, 첨부한 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention;

제1도는 직렬 CHECK 코드 생성을 위한 CRC 생성 회로(1)도이다.1 is a diagram of a CRC generation circuit 1 for generating a serial CHECK code.

상기 제1도에 도시된 바와 같이 3개의 XOR 게이트와 16개의 시프트 레지스터로 구성되는 나눗셈 회로를 나타낸다.As shown in FIG. 1, a division circuit composed of three XOR gates and sixteen shift registers is shown.

초기에 모든 레지스터는 클리어 상태에서 시작한다.Initially all registers start in the clear state.

메세지는 최상위 비트부터 한번에 한 비트씩 입력한다.The message is entered one bit at a time from the most significant bit.

레지스터의 최상위 비트에 입력 데이타 비트가 도착할 때까지 피이드백은 일어나지 않는다.Feedback does not occur until the input data bit arrives at the most significant bit of the register.

처음부터 CHECK 코드의 비트수보다 하나 작은 15비트까지는 단순한 이동이다.From the beginning up to 15 bits, one less than the number of bits in the CHECK code, is a simple move.

생성 다항식 CRC-16=X16+X15+X2+1로 나눗셈 회로를 구성하기 위하여 XO R 게이트와 레지스터로 나타내면, 생성 다항식의 최고차 항을 제외한 그 외에 존재하는 항의 차수와 같은 레지스터로 입력되기 전에 뺄셈이 수행된다.Generating polynomial CRC-16 = X 16 + X 15 + X 2 +1 To form a division circuit, input into registers equal to the order of the other terms except the highest order term in the generation polynomial. Subtraction is performed before

상기 과정은 2진 나눗셈과 동일하다.The process is the same as for binary division.

이상과 같은 절차는 데이타의 비트수와 CHECK의 비트수 만큼에 대해서 계속된다.The above procedure is continued for the number of bits of data and the number of bits of CHECK.

마지막 비트에 관하여 수행이 종료되면 레지스터는 전송될 나머지인 CHECK 코드값이 된다.When execution finishes for the last bit, the register becomes the CHECK code value, which is the remainder to be transferred.

다음의 식(1)은 각 비트 클럭 후에 각 레지스터의 값을 나타낸다.The following equation (1) represents the value of each register after each bit clock.

r0(NTb)=r15(N-1)d16-N r 0 (NT b ) = r 15 (N-1) d 16-N

r1(NTb)=r0(N-1)r 1 (NT b ) = r 0 (N-1)

r2(NTb)=r1(N-1)r15(N-1)d16-N(1)r 2 (NT b ) = r 1 (N-1) r 15 (N-1) d 16-N (1)

r1(NTb)=r1-1(N-1), 3≤i≤14r 1 (NT b ) = r 1 −1 (N-1), 3 ≦ i ≦ 14

r15(NTb)=r14(N-1)r15(N-1)d16-N r 15 (NT b ) = r 14 (N-1) r 15 (N-1) d 16-N

상기 식(1)에서,, N(1≤i≤16)는 XOR 연산 기호와 비트 클럭수를 나타낸다.In the above formula (1), , N (1≤i≤16) represents the XOR operation symbol and the number of bit clocks.

Tb는 비트 클럭을 나타내고, 레지스터는 r로 나타내며 각 레지스터를 첨자로 구분한다.T b represents the bit clock, registers are represented by r, and each register is separated by a subscript.

식(1)을 이용하여 16비트 클럭 후에 각 레지스터의 값을 초기값(r0-r15)과 입력 데이타(d0-d15)로 표기하면 다음과 같다.Using equation (1), after 16-bit clock, the value of each register is expressed as initial value (r 0 -r 15 ) and input data (d 0 -d 15 ) as follows.

r0(16Tb)=r0(0)r1(0)r2(0)r3(0)r4(0)r5(0)r6(0)r 0 (16T b ) = r 0 (0) r 1 (0) r 2 (0) r 3 (0) r 4 (0) r 5 (0) r 6 (0)

r7(0)r8(0)r9(0)r10(0)r11(0)r12(0) r 7 (0) r 8 (0) r 9 (0) r 10 (0) r 11 (0) r 12 (0)

r13(0)r15(0)d0 d1 d2 d3 d4 d5 d6 d7 r 13 (0) r 15 (0) d 0 d 1 d 2 d 3 d 4 d 5 d 6 d 7

d8 d9 d10 d11 d12 d13 d15(2) d 8 d 9 d 10 d 11 d 12 d 13 d 15 (2)

r1(16Tb)=r1(0)r2(0)r3(0)r4(0)r5(0)r6(0)r7(0)r 1 (16T b ) = r 1 (0) r 2 (0) r 3 (0) r 4 (0) r 5 (0) r 6 (0) r 7 (0)

r8(0)r9(0)r10(0)r11(0)r12(0)r13(0) r 8 (0) r 9 (0) r 10 (0) r 11 (0) r 12 (0) r 13 (0)

r14(0)d1 d2 d3 d4 d5 d6 d7 d8 d9 r 14 (0) d 1 d 2 d 3 d 4 d 5 d 6 d 7 d 8 d 9

d10 d11 d12 d13 d14(3)d 10 d 11 d 12 d 13 d 14 (3)

r2(16Tb)=r(0)r1(0)r14(0)d0 d1 d14(4)r 2 (16T b ) = r (0) r 1 (0) r 14 (0) d 0 d 1 d 14 (4)

r3(16Tb)=r1(0)r2(0)r15(0)d1 d2 d15(5)r 3 (16T b ) = r 1 (0) r 2 (0) r 15 (0) d 1 d 2 d 15 (5)

r4(16Tb)=r2(0)r3(0)d2 d3(6)r 4 (16T b ) = r 2 (0) r 3 (0) d 2 d 3 (6)

r5(16Tb)=r3(0)r4(0)d3 d4(7)r 5 (16T b ) = r 3 (0) r 4 (0) d 3 d 4 (7)

r6(16Tb)=r4(0)r5(0)d4 d5(8)r 6 (16T b ) = r 4 (0) r 5 (0) d 4 d 5 (8)

r7(16Tb)=r5(0)r6(0)d5 d6(9)r 7 (16T b ) = r 5 (0) r 6 (0) d 5 d 6 (9)

r8(16Tb)=r6(0)r7(0)d6 d7(10)r 8 (16T b ) = r 6 (0) r 7 (0) d 6 d 7 (10)

r9(16Tb)=r7(0)r8(0)d7 d8(11)r 9 (16T b ) = r 7 (0) r 8 (0) d 7 d 8 (11)

r10(16Tb)=r8(0)r9(0)d8 d9(12)r 10 (16T b ) = r 8 (0) r 9 (0) d 8 d 9 (12)

r11(16Tb)=r9(0)r10(0)d9 d10(13)r 11 (16T b ) = r 9 (0) r 10 (0) d 9 d 10 (13)

r12(16Tb)=r10(0)r11(0)d10 d11(14)r 12 (16T b ) = r 10 (0) r 11 (0) d 10 d 11 (14)

r13(16Tb)=r11(0)r12(0)d11 d12(15)r 13 (16T b ) = r 11 (0) r 12 (0) d 11 d 12 (15)

r14(16Tb)=r12(0)r13(0)d12 d13(16)r 14 (16T b ) = r 12 (0) r 13 (0) d 12 d 13 (16)

r15(16Tb)=r1(0)r2(0)r3(0)r4(0)r5(0)r6(0)r7(0) r 15 (16T b ) = r 1 (0) r 2 (0) r 3 (0) r 4 (0) r 5 (0) r 6 (0) r 7 (0)

r8(0)r9(0)r10(0)r11(0)r12(0)r13(0)r14(0)r15(0)r 8 (0) r 9 (0) r 10 (0) r 11 (0) r 12 (0) r 13 (0) r 14 (0) r 15 (0)

d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d 1 d 2 d 3 d 4 d 5 d 6 d 7 d 8 d 9 d 10 d 11

d12 d13 d14 d15(17)d 12 d 13 d 14 d 15 (17)

제2도는 본 발명에 따른 XTP 패킷의 16비트 클럭로 CRC 코드를 생성하는 회로도로서, 16비트 병렬 동안에 직렬로 이루어지는 계산을 한 비트 클럭 동안에 수행한다.2 is a circuit diagram of generating a CRC code with a 16-bit clock of an XTP packet according to the present invention, in which a series of calculations are performed during 16-bit parallelism during one bit clock.

초기에 저장 회로(4)의 모든 레지스터는 클리어 상태에서 시작한다.Initially all the registers of the storage circuit 4 start in the clear state.

데이타는 최상위 비트부터 한번에 16비트씩 16비트 병렬 입력선(IN0-IN15)을 통하여 다수의 XOR 게이트로 구성된 입력측 조합 회로(3)로 입력되고 상기 식(2) 내지 상기 식(17)에서 입력 데이타(d0-d15)에 해당하는 것들로만 XOR 연산을 수행하여 각 식의 XOR 연산 결과를 출력(X0-Xl5)으로 보낸다.Data is inputted to the input side combination circuit (3) consisting of a plurality of XOR gates through a 16-bit parallel input line (IN0-IN15), 16 bits at a time, starting from the most significant bit, and input data in the above formulas (2) to (17). Performs XOR operation only with those corresponding to (d 0 -d 15 ) and sends the result of XOR operation of each expression to output (X0-Xl5).

예를 들면 입력측 조합 회로(3)의 출력 X2는 d0, d1그리고 d14의 XOR 연산(X2=d0 d1 d14)결과가 된다.For example, the output X2 of the input side combination circuit 3 is an XOR operation of d 0 , d 1 and d 14 (X2 = d 0). d 1 d 14 ) results.

또한, 다수의 XOR 게이트로 구성된 출력측 조합 회로(5)는 과거의 각 레지스터 상태가 피이드백 되어 영향을 나타내는 것으로 상기 식(2) 내지 상기 식(17)에서 저장 회로(4)의 출력(Y0-Y15), 즉 레지스터의 값(r0-r15)에 해당하는 것들로만 XOR 연산을 수행하여 각 식의 XOR 연산 결과를 출력(Z0-Z15)으로 내보낸다.In addition, the output side combination circuit 5 composed of a plurality of XOR gates exhibits an effect by feeding back each register state in the past. Y15), that is, XOR operation is performed only on the values of the registers (r 0 -r 15 ), and the result of the XOR operation of each expression is output to the output (Z0-Z15).

예를 들면 출력측 조합 회로(5)의 출력 Z2는 r0(0), r1(0) 그리고 r14(0)의 XOR 연산(Z2=r0(0)r1(0)r14(0) 결과가 된다.For example, the output Z2 of the output side combination circuit 5 is an XOR operation of r 0 (0), r 1 (0) and r 14 (0) (Z2 = r 0 (0) r 1 (0) r 14 (0) results.

입력측 조합 회로(3)의 수행 결과인 각각의 X0 내지 X15와 출력측 조합 회로(5)의 수행 결과인 각각의 Z0 내지 Z15에 관하여 각각 XOR 연산을 수행하여 저장 회로(4)에 저장한다.An XOR operation is performed on each of X0 to X15 that is the result of the input side combination circuit 3 and Z0 to Z15 that is the result of the output side combination circuit 5, respectively, and is stored in the storage circuit 4.

예를 들면 저장 회로(4)의 출력 Y2는 X2와 Z2의 연산 결과로 X2Z2=r0(0)r1(0)r14(0)d0 d1 d14의 결과이다.For example, the output Y2 of the storage circuit 4 is X2Z2 = r 0 (0) as a result of the calculation of X2 and Z2. r 1 (0) r 14 (0) d 0 d 1 is the result of d 14 .

처음 15비트 클럭 동안 모든 비트 클럭마다 16비트씩 데이타가 입력되고, 입력측 조합 회로(3)는 입력된 데이타의 XOR 연산을 수행하고, 출력측 조합 회로(5)는 저장 회로(4)의 각각의 레지스터로부터 피이드백된 그 전의 값들에 대한 XOR 연산을 수행한다.16 bits of data are input for every bit clock during the first 15-bit clock, the input side combination circuit 3 performs an XOR operation on the input data, and the output side combination circuit 5 stores each register of the storage circuit 4. Performs an XOR operation on the previous values fed back from

상기 입력측 조합 회로(3)의 수행 결과인 X0 내지 X15와 상기 출력측 조합 회로(5)의 수행 결과인 Z0 내지 Z15에 관하여 각각 XOR 연산을 수행하여 저장 회로(4)에 저장한다.An XOR operation is performed on the X0 to X15 results of the input side combination circuit 3 and the Z0 to Z15 results of the output side combination circuit 5, respectively, and stored in the storage circuit 4.

상기와 같은 방식으로 XTP 헤더 30바이트에 대한 XTP 헤더 CHECK 코드값을 얻기 위하여 15비트 클럭 동안 16비트 병렬로 수행하면 원하는 XTP 헤더 CHECK 코드를 생성할 수 있다.In the same manner as described above, in order to obtain an XTP header CHECK code value for 30 bytes of the XTP header in 16-bit parallel for 15-bit clock, a desired XTP header CHECK code can be generated.

2입력 멀티플렉서 16개로 구성된 선택 회로(6)는 첫 15비트 클럭 동안 16비트 병렬로 입력되는 데이타를 출력하고 저장 회로(4)에 15비트 클럭 동안 계산되어 저장된 XTP 헤더 CHECK 코드값을 그 다음 1비트 클럭(16번째) 동안에 출력하는 기능을 한다.A selector circuit (6) consisting of 16 two-input multiplexers outputs data that is input in 16-bit parallel during the first 15-bit clock, and stores the XTP header CHECK code value calculated and stored for 15-bit clocks in the storage circuit (4), followed by one bit. It outputs during the clock (16th).

상기와 같이 구성되어 동작하는 본 발명은 종래의 직렬 CRC 생성 회로보다 16비트 병렬의 XTP 헤더 CHECK 코드를 생성하는 CRC 생성 회로를 구성함으로써 고가의 반도체 소자를 사용하는 대신에 일반적인 반도체 소자를 사용하여 회로의 구현이 가능해지고, 높은 동작 주파수에 따라 발생하는 문제점을 해결할 수있으며, XTP 헤더 CHECK 코드 생성기에 적용하면 전송속도에 구애받지 않고 회로를 설계할 수 있으며,레지스터와 XOR 게이트 조합 회로등으로 구성된 CRC 피이드백 알고리즘 때문에 레지스터의 상태가 다소 복잡하게 과거의 레지스터 상태에 의존하지만 시스템에 악영향을 주는 오류 패턴 조합의 영향을 적게 받으며 CRC 알고리즘을 이용하므로 하드웨어로 구현하기가 용이한 효과가 있다.The present invention constructed and operated as described above constitutes a CRC generation circuit that generates an XTP header CHECK code of 16 bits in parallel to a conventional serial CRC generation circuit, thereby using a general semiconductor element instead of an expensive semiconductor element. Can solve the problems caused by high operating frequency, and can be applied to the XTP header CHECK code generator to design the circuit regardless of the transmission speed, CRC composed of register and XOR gate combination circuit Because of the feedback algorithm, the state of the register is more complicated depending on the register state of the past, but it is less affected by the error pattern combination that adversely affects the system. The CRC algorithm makes it easy to implement in hardware.

Claims (3)

고속 트랜스포트 프로토콜 패킷의 CHECK(Checksum) 코드를 생성하는데 있어서, 상위 계층으로부터 16비트 병렬로 데이타를 수신하여 상기 데이타에 대한 16비트 병렬 처리를 위하여 다수의 XOR 게이트로 구성된 입력측 조합 회로(3)와; 연산된 값을 저장하기 위하여 16개의 레지스터를 포함한 저장 회로(4)와; 상기 저장 회로의 출력(Y0-Y15)을 수신하여 16비트 병렬 처리를 위하여 다수의 XOR 게이트로 구성된 출력측 조합 회로(5); 및 입력 데이타(IN0-IN15)를 초기 15비트 클럭 동안 출력시키고, 상기 클럭후의 1비트 클럭동안 연산된 CHECK 코드값을 출력시키는 2입력 멀티플렉서를 포함한 선택 회로(6)로 구성됨을 특징으로 하는 고속 트랜스포트 프로토콜 CHECK 코드 생성을 위한 병렬 순환잉여검사(CRC) 코드 생성 수단.In generating a CHECK (Checksum) code of a high-speed transport protocol packet, an input side combination circuit (3) comprising a plurality of XOR gates for receiving 16-bit parallel data from a higher layer and performing 16-bit parallel processing on the data; ; A storage circuit 4 including 16 registers for storing the calculated values; An output side combination circuit (5) configured to receive the outputs (Y0-Y15) of the storage circuit and consist of a plurality of XOR gates for 16-bit parallel processing; And a selection circuit (6) including a two-input multiplexer for outputting input data (IN0-IN15) for an initial 15-bit clock and outputting a CHECK code value computed for the one-bit clock after the clock. Means for generating parallel cyclic redundancy check (CRC) code for port protocol CHECK code generation. 제1항에 있어서, 상기 입력측 조합 회로(3)는 상기 상위 계층으로부터 16비트 병렬로 데이타를 수신하기 위한 입력선(IN0-IN15)을 포함하고, 상기 선택 회로(6)는 입력 데이타와 CHECK 코드값을 선택을 제어하는 제어 입력선(6A) 및 입력 데이타와 CHECK 코드값을 출력하는 출력선(OUT0-OUT15)을 포함하는 것을 특징으로 하는 고속 트랜스포트 CHECK 코드 생성을 위한 병렬 순환잉여검사(CRC) 코드 생성 수단.2. The input side combination circuit (3) according to claim 1, wherein the input side combination circuit (3) comprises an input line (IN0-IN15) for receiving data in parallel in 16 bits from the upper layer, and the selection circuit (6) comprises input data and a CHECK code. Parallel cyclic redundancy check (CRC) for fast transport CHECK code generation, comprising a control input line 6A for controlling the selection of values and an output line OUT0-OUT15 for outputting input data and CHECK code values ) Code generation means. 제1항에 있어서, 상기 레지스터 회로로 구성된 상기 저장 회로(4)는 상기 저장 회로(4)가 동작하도록 하는 구동 입력선(4A)과; 클럭 신호를 위한 클럭 입력선(4B)과; 상기 저장 회로(4)를 초기에 클리어시키기 위한 클리어 입력선(4C); 및 상기 레지스터에 값을 규정하기 위한 세트 입력선(4D)을 포함하는 것을 특징으로 하는 고속 트랜스포트 프로토콜 CHECK 코드 생성을 위한 병렬 순환잉여검사(CRC) 코드 생성수단.2. The storage circuit (4) according to claim 1, wherein said storage circuit (4) comprising said register circuit comprises: a drive input line (4A) for operating said storage circuit (4); A clock input line 4B for a clock signal; A clear input line (4C) for initially clearing the storage circuit (4); And a set input line (4D) for defining a value in said register. A parallel cyclic redundancy check (CRC) code generation means for generating a fast transport protocol CHECK code.
KR1019940033896A 1994-12-13 1994-12-13 Electric means for parallel xtp cheok code by cyclic redundoncy cheek KR0126591B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019940033896A KR0126591B1 (en) 1994-12-13 1994-12-13 Electric means for parallel xtp cheok code by cyclic redundoncy cheek

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940033896A KR0126591B1 (en) 1994-12-13 1994-12-13 Electric means for parallel xtp cheok code by cyclic redundoncy cheek

Publications (2)

Publication Number Publication Date
KR960027880A KR960027880A (en) 1996-07-22
KR0126591B1 true KR0126591B1 (en) 1998-04-03

Family

ID=19401177

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940033896A KR0126591B1 (en) 1994-12-13 1994-12-13 Electric means for parallel xtp cheok code by cyclic redundoncy cheek

Country Status (1)

Country Link
KR (1) KR0126591B1 (en)

Also Published As

Publication number Publication date
KR960027880A (en) 1996-07-22

Similar Documents

Publication Publication Date Title
Lee High-speed VLSI architecture for parallel Reed-Solomon decoder
US5467297A (en) Finite field inversion
US4649541A (en) Reed-Solomon decoder
US5440570A (en) Real-time binary BCH decoder
Gollmann et al. Clock-controlled shift registers: a review
US6314534B1 (en) Generalized address generation for bit reversed random interleaving
US4584686A (en) Reed-Solomon error correction apparatus
JP4643957B2 (en) Method for calculating the CRC of a message
US6467063B1 (en) Reed Solomon coding apparatus and Reed Solomon coding method
EP0480621B1 (en) Apparatus and method for parallel generation of cyclic redundancy check (CRC) codes
US4797848A (en) Pipelined bit-serial Galois Field multiplier
US7539918B2 (en) System and method for generating cyclic codes for error control in digital communications
Ji et al. Fast parallel CRC algorithm and implementation on a configurable processor
US5822337A (en) Programmable redundancy/syndrome generator
JP2009094605A (en) Code error detector and error detecting code generator
US7178091B1 (en) Reed solomon encoder
EP0262944B1 (en) Error correction apparatus
JP3279624B2 (en) 1-bit error correction circuit based on CRC operation
KR0126591B1 (en) Electric means for parallel xtp cheok code by cyclic redundoncy cheek
KR20040048471A (en) Serial finite-field multiplier
CN114884517A (en) CRC hardware computing system and chip
US6442747B1 (en) Method of synthesizing a cycle redundancy code generator circuit using hardware description language
US20030041300A1 (en) Universal device for processing Reed-Solomon forward error-correction encoded messages
US6138134A (en) Computational method and apparatus for finite field multiplication
US6704901B1 (en) Runtime programmable Reed-Solomon decoder

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20010927

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee