KR910009094B1 - Galois field arithmetic unit - Google Patents

Galois field arithmetic unit Download PDF

Info

Publication number
KR910009094B1
KR910009094B1 KR1019890700370A KR897000310A KR910009094B1 KR 910009094 B1 KR910009094 B1 KR 910009094B1 KR 1019890700370 A KR1019890700370 A KR 1019890700370A KR 897000310 A KR897000310 A KR 897000310A KR 910009094 B1 KR910009094 B1 KR 910009094B1
Authority
KR
South Korea
Prior art keywords
error
syndrome
polynomial
calculation
calculating
Prior art date
Application number
KR1019890700370A
Other languages
Korean (ko)
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
Priority claimed from JP62162763A external-priority patent/JP2553565B2/en
Priority claimed from JP62176167A external-priority patent/JP2553571B2/en
Application filed by 마쓰시다 덴끼 산교오 가부시기가이샤, 다니이 아끼오 filed Critical 마쓰시다 덴끼 산교오 가부시기가이샤
Priority claimed from PCT/JP1988/000646 external-priority patent/WO1989000363A1/en
Application granted granted Critical
Publication of KR910009094B1 publication Critical patent/KR910009094B1/en

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

내용 없음.No content.

Description

[발명의 명칭][Name of invention]

갈로이계 연산장치Galois Computing Equipment

[도면의 간단한 설명][Brief Description of Drawings]

제1a도는 본 발명에 따른 제1실시예를 도시한 블록도이고,Figure 1a is a block diagram showing a first embodiment according to the present invention,

제1b도는 제1a도의 제1실시예에 활용된 제1연산수단의 동작을 도시한 흐름도이며,FIG. 1B is a flowchart showing the operation of the first computing means utilized in the first embodiment of FIG. 1A,

제1c도는 제1a도의 제1실시예에 채택된 제2연산수단, 제3연산수단, 제4연산수단의 동작을 도시한 흐름도이고,FIG. 1C is a flowchart showing the operation of the second computing means, the third computing means and the fourth computing means adopted in the first embodiment of FIG. 1A,

제1d도와 제1e도는 제1a도의 제1실시예에 채택된 제5연산수단과 제6연산수단에 동작을 도시하는 흐름도들이며,1d and 1e are flow charts showing the operations of the fifth and sixth computing means adopted in the first embodiment of FIG. 1a,

제2a도는 본 발명에 따른 제2실시예를 도시한 블록도이고,Figure 2a is a block diagram showing a second embodiment according to the present invention,

제2b도는 제2a도의 제2실시예에 채택된 제1연산수단 및 제7연산수단의 동작을 도시한 흐름도이며,FIG. 2B is a flowchart showing the operation of the first computing means and the seventh computing means adopted in the second embodiment of FIG. 2A,

제2c도는 제2a도의 제2실시예에 채택된 제2연산수단, 제3연산수단 및 제4연산수단의 동작을 도시하는 흐름도이고,FIG. 2C is a flowchart showing the operation of the second computing means, the third computing means and the fourth computing means adopted in the second embodiment of FIG. 2A,

제2d도는 제2a도의 제2실시예에 채택된 제5연산수단과 제8연산수단의 동작을 도시한 흐름도이며,FIG. 2D is a flowchart showing the operation of the fifth and eighth calculation means adopted in the second embodiment of FIG. 2A,

제3도는 신드롬 발생회로를 도시한 회로도이다.3 is a circuit diagram showing a syndrome generating circuit.

[발명의 상세한 설명]Detailed description of the invention

[기술분야][Technical Field]

본 발명은 광디스크(optical disk)같은 매체를 통하여 데이타를 기록(recording)과 재생하는데 활용되는 것으로, 큰치의 최소거리 또는 헤밍거리(hamming distance)를 갖는 코우드시스템(code system)에 대해서도, 예컨데 외부 포인터(external pointer)를 사용하여 에러위치를 모르는 에러에 대한 통상적 교정과, 에러위치를 알고 있는 에러에 대한 소거 교정을 고속으로 효과적으로 완수할 수 있는 코우드에러 검출 및 교정장치에 관한 것이다.The present invention is used to record and reproduce data through a medium such as an optical disk, and even for a code system having a large minimum distance or a hamming distance, for example, The present invention relates to a common error detection and correction device that can efficiently perform an accurate correction for an error whose location is not known using an external pointer and an erasure correction for an error whose location is known.

[배경기술][Background]

최근, 광디스크를 활용한 데이타 기록 및 재생장치가 왕성하게 발전되고 있다. 자기디스크와 비교했을때, 광디스크 메모리는 더 많은 양의 데이타를 기억할 수 있으나, 이러한 기록 매체에는 높은 생에러율(raw error rate)이 수반된다는 문제점을 지니고 있다.In recent years, data recording and reproducing apparatuses utilizing optical discs have been actively developed. Compared with a magnetic disk, an optical disk memory can store a larger amount of data, but such a recording medium has a problem that a high raw error rate is involved.

따라서, 이러한 광디스크 메모리가 수반하는 문제점을 해소하려는 의도에서, 기록동작시에 데이타로서의 정보코우드에 체크코우드(check code)를 부가하여, 광디스크상에 에러검출 및 교정코우드로서 기록되는 코우드워드(code word)를 형성시킴으로써, 재생동작시에 부가된 체크코우드를 사용하여 정보코우드의 에러를 검출하고, 교정하도록한 방법이 일반적으로 알려져 있다.Therefore, in order to solve the problems associated with such an optical disc memory, a check code is added to the information code as data at the time of a recording operation, and the codeword recorded as an error detection and correction code on the optical disc. It is generally known to form a code word so that an error in the information code is detected and corrected using a check code added during the reproduction operation.

그러한 에러검출 및 교정코우드로서, 현재 해밍거리(또는 최소거리)가 약 17, 즉 d=17로 설정되는 리이드-솔로몬 코우드(Reed solomon code)가 주목을 받고 있다.As such error detection and correction code, Reed solomon code, which has a hamming distance (or minimum distance) set to about 17, that is, d = 17, is drawing attention.

상기 리이드-솔로몬 코우드를 사용하는 경우, 엔코우딩 동작으로서 데이타를 엔코우딩(encoding)함으로써 패리티연산(parity computation)을 실행한후, 데이타를 패리티와 함께 매체에 라이트(write)시키므로, 매체로부터 데이타를 돌출한후, 그 데이타에 대하여 디코우딩(decoding) 동작을 시행할때는 신드롬연산(syndrome computation)와, 에러갯수 산정과, 에러위치 다항식용 계수들의 연산과, 에러위치 연산과, 에러치 연산을 순차적 방식으로 실행한다.In the case of using the lead-solomon code, since parity computation is performed by encoding data as an encoding operation, data is written to the medium together with parity, and thus the data from the medium is used. After decompressing, perform decoding operation on the data, such as syndrome computation, error number calculation, error location polynomial coefficient calculation, error location operation, and error value operation. Run in a sequential manner.

이러한 경우에, 위치를 모르는 에러에 대한 통상적 교정의 경우, 교정가능한 에러의 갯수는 (d-1)/2이고, 위치를 알고 있는 에러에 대한 소거 교정의 경우에 교정가능한 에러의 갯수는 d-1이다. 또, 에러위치 중 L개는 알고 있는데, 위치를 모르는 에러도 존재하는 경우, 모르는 에러위치의 최대 갯수(t)가 t=(d-L-1)2+L인 에러들은 에러위치를 알고 있는 L개의 에러들과 함께 교정될 수 있다.In this case, for a typical correction for a position unknown error, the number of correctable errors is (d-1) / 2, and in the case of an erase correction for a position known error, the number of correctable errors is d- 1 In addition, if L error positions are known and an unknown position exists, errors where the maximum number (t) of unknown error positions (t) is t = (dL-1) 2 + L are known to L error positions. Can be corrected with errors.

한편, 지. 데이빗 폰 2세(G. David Forne Jr.)는 그의 저서(″On Deceding BHC Codes″, IEEE Trans. IT-11, 페이지 549 내지 페이지 557, 1965)에서 변형된 신드롬(Tk)를 얻기 위해 활용되는 i, L의 연산방법을 소개하였으나, 에러치를 얻기 위한 알고리듬이 상당히 복잡하였다. 상기 저서중 페이지 553의 A항에는 알고리듬의 한예가 기술되었는데, 여기서는 변형된 신드롬을 근거로하여, 모르고 있던 에러위치를 얻음으로써, 포인터를 활용하여 얻은 에러위치와 함께 에러위치 다항식의 계수들을 연산한 다음, 모르고 있던 에러위치에 대한 에러치를 얻음으로써, 포인터가 지정하는 에러위치에 대응한 에러치를 얻는다.Meanwhile, Ji. G. David Forne Jr. is used to obtain a modified syndrome (Tk) in his book `` On Deceding BHC Codes '', IEEE Trans.IT-11, pages 549 to 557, 1965. Introduced the calculation method of i and L, but the algorithm to get the error value is quite complicated. An example of an algorithm is described in section A of page 553, which calculates the coefficients of an error location polynomial along with an error location obtained by using a pointer by obtaining an unknown error location based on a modified syndrome. Next, by obtaining an error value for an unknown error position, an error value corresponding to the error position specified by the pointer is obtained.

일반적으로, 소거 알고리듬에는 재귀동작 또는 반복동작이 편이하게 적용되므로, 곱코우드(product cod)를 빈번히 사용하는 경우, 짧은 거리를 갖는 코우드들을 결합시켜서 에러검출은 결합된 코우드들중 하나를 사용하여 달성하고, 소거교정은 결합된 코우드들중 다른 하나를 사용하여 시행하며, 긴 거리를 갖는 코우드에 대해서도 에러위치를 얻은 후에 소거교정을 시행하는 것이 더 용이하다. 상기한 바와 같이, 에러위치를 알고 있는 에러와, 에러위치를 모르는 에러가 존재했을때, 에러치를 얻는 방법은 서적으로 제시된바 있다. 그러나, 코우드의 최소 거리 또는 해밍거리가 커지면 연산량이 크게 증가하므로, 실제로 리얼타임(realtime) 교정이 시행될 수 없다는 사실이 알려져 있다. 또, 연산속도를 증가시키는 하드웨어를 설치한다 하더라도, 회로량이 너무 많이 증가되므로, 실용성이 저하되는 문제점을 야기하게 된다.In general, since recursive or repetitive operations are easily applied to the erasing algorithm, when frequent product cods are used, error detection is performed by combining codes having short distances using one of the combined codes. Erase correction is performed using the other of the combined codes, and it is easier to perform the erase correction after obtaining the error position even for long distances. As described above, a method of obtaining an error value when an error in which an error location is known and an error in which an error location is unknown has been presented in a book. However, it is known that since the minimum distance or hamming distance of the code increases, the amount of calculation greatly increases, so that realtime correction cannot be performed in practice. In addition, even if hardware for increasing the operation speed is provided, the circuit amount is increased too much, which causes a problem that the practicality is lowered.

[발명에 대한 상세한 설명][Detailed Description of the Invention]

그러므로, 본 발명은 고속처리로 연산을 시행하고, 하드웨어량을 최소화함으로써 상기의 문제점을 해소한 갈로이계 연산장치를 제공하는 것을 목적으로 한다.Therefore, an object of the present invention is to provide a galoi-based computing device which solves the above problems by performing the calculation at high speed and minimizing the amount of hardware.

상기 목적을 달성하기 위하여, 본 발명에 따르면, 갈로이계(GF(2r))에 속한 요소(element)들로 구성되고, 해밍거리(d)를 갖는 선형코우드의 에러교정용으로써, S0내지 Sd-2로된 신드롬과 L개의 알고 있는 에러위치(X0내지 XL-1)를 활용하여 변형된 신드롬 Tk(T0…Dd-20L)을 얻은 다음, 상기한 지. 데이빗 폰 2세의 저서중의 절차를 활용하여 모르는 에러위치가 연산되는 지점까지 연산한다.In order to achieve the above object, according to the present invention, S 0 consists of elements belonging to the galoi system GF (2 r ), and for error correction of a linear code having a hamming distance d, S 0. To a modified syndrome T k (T 0 ... D d-20L ) by using the syndrome of S d-2 and L known error positions (X 0 to X L-1 ). Use the procedure in David von II's book to calculate the point of unknown error.

변형된 신드롬을 얻을때 연산된 σi,j로부터 pj=

Figure kpo00001
σi,j×Si를 활용하여 중간결과 pj를 얻고, 통상적 교정시와 같은 교정 신드롬을 활용하여 에러치를 연산함으로써 중간치(YL,L…YL+t-1,L)를 얻으며, 이러한 에러치의 중간치와, 포인터가 지정하는 에러위치(Xi)와, 중간결과(Pj)를 활용하여, Yi,j=
Figure kpo00002
Yi,j+1/(Xi+Xj)를 연산한다.From the calculated σ i, j , p j =
Figure kpo00001
The intermediate result p j is obtained by using σ i, j × S i, and the intermediate value (Y L, L … Y L + t-1, L ) is obtained by calculating an error value by using the same calibration syndrome as in the case of normal calibration. Using the intermediate value of these error values, the error position (X i ) specified by the pointer, and the intermediate result (P j ), Y i, j =
Figure kpo00002
Calculate Y i, j + 1 / (X i + X j ).

또, 후속하여, j-1일때의 Yj-1,j-1을 얻기 위한 식에, 상기 식중Yi,j+1/(Xi+Xj)=Yi,j로 가정함으로써, 얻은 우변의 연산결과와 좌변의 연산결과(Yj,j)를 대입함으로써, 최종적으로 에러치 Y0…YL-1…YL-1+j를 얻는다.Subsequently, obtained by assuming that Y i, j + 1 / (X i + X j ) = Y i, j in the equation for obtaining Y j-1, j-1 when j-1 . By substituting the operation result of the right side and the operation result (Y j, j ) of the left side, the error value Y 0 . Y L-1 ... Obtain Y L-1 + j .

본 발명에 따라서, 상기 절차를 활용하여 리이드-솔로몬 코우드를 엔코우딩 또는 디코우딩 동작시키는 경우 코우드웨드에 대한 신드롬은 연산한후, 일 에러에 대하여 가정한 일정 에러위치와 포인터가 지시하는 알고 있는 에러위치를 갈로이계의 순차적 곱셈, 나눗셈 및 덧셈을 포함하는 반복 연산처리하여, 체크코우드의 엔코우딩 또는 소거를 포함한 에러교정을 실행한다.According to the present invention, when encoding or decoding the Reed-Solomon code by using the above procedure, the syndrome for the codeword is calculated, and then a predetermined error position and pointer indicated by one point for one error are calculated. Iterative arithmetic operations including sequential multiplication, division, and addition of the Galois system are performed on the known error positions, and error corrections including encoding or erasing of check codes are performed.

이러한 절차의 연산횟수는 종래의 방법과 비교했을때 현저히 감소되므로, 이러한 절차는 리얼타임 연산처리를 필요로 하는 경우에 활용될 수 있고, 또한, 상기의 연산처리 실행을 가능케 해주는 회로의 양도 상당히 감출된다Since the number of operations of such a procedure is significantly reduced compared with the conventional method, such a procedure can be utilized when real-time arithmetic processing is required, and the amount of circuit which enables the arithmetic processing can be considerably hidden. do

[본 발명을 실시하기 위한 최상의 방식]Best Mode for Carrying Out the Invention

이제 도면을 참조하여, 본 발명에 따른 일실시예의 갈로이계 연산장치를 설명하기로 한다.Referring now to the drawings, a gallon based computing device according to an embodiment of the present invention will be described.

제1a도는 본 발명의 제1실시예에 대한 블록도이다. 제1b도는 제1a도의 제1실시예에 활용된 제1연산수단의 동작을 도시하는 흐름도이다. 또, 제1c도는 제1a도에 제1실시예에 채택된 제2연산수단, 제3연산수단, 제4연산수단의 동작을 도시하는 흐름도이다. 또한, 제1d도와 제1e도는 제1a도의 제1실시예에 채택된 제5연산수단의 동작을 도시하는 흐름도이다. 제1a도에 있어서, 부호(52)는 신드롬 발생회로를 표시하고, 부호(53)는 코우드워드 메모리회로를 표시한다.1A is a block diagram of a first embodiment of the present invention. FIG. 1B is a flowchart showing the operation of the first computing means utilized in the first embodiment of FIG. 1A. 1C is a flowchart showing the operation of the second computing means, the third computing means and the fourth computing means adopted in the first embodiment in FIG. 1A. 1D and 1E are flowcharts showing the operation of the fifth calculating means adopted in the first embodiment of FIG. 1A. In Fig. 1A, reference numeral 52 denotes a syndrome generating circuit, and reference numeral 53 denotes a codeword memory circuit.

부호(54)는 마이크로프로그램을 활용하여 고속으로 갈로이계의 연산을 실행하는 갈로이계 연산회로를 표시한다. 또, 광디스크 드라이브(optical disk drive)에 내재된 신호검출회로는 포인터가 지정하는 에러위치에 대한 드롭아웃(drop out)을 검출한다. 에러위치는, 디코우딩시의 코우드 기록형식에 따라 동작하는 에러위치 계수기의 값이 벡터대응치(vector representation)로 입력/출력버스로 통하여 코우드워드 메모리회로(54)로 라이트된다.Reference numeral 54 denotes a Galois-based calculation circuit which executes Galois calculations at high speed utilizing a microprogram. In addition, the signal detection circuit inherent in the optical disk drive detects a dropout for the error position specified by the pointer. The error position is written into the codeword memory circuit 54 via the input / output bus in a vector representation with the value of the error position counter operating in accordance with the code recording format during decoding.

제3도는 신드롬 발생회로를 상세히 도시한 회로도이다.3 is a circuit diagram showing the syndrome generating circuit in detail.

제3도의 회로는 총 8비트의 출력신호를 방출하는 논리곱게이트회로(1)와, 입력전환스위치논리회로(2)와, 0-번째 8-비트 기록회로 내지 5-번째 8-비트 기록회로(3 내지 8)와, 15-번째 8-비트 기록회로(18)와, 0-번째 전환스위치논리회로 내지 5번째 전환스위치 논리회로(19 내지 24)와, 15번째 스위치논리회로(34)와, α0내지 α5갈로이계 곱셈회로(35 내지 40)을 포함한다. 또 부호(51)는 갈로이계 덧셈회로(익스클루시브 OR 논리합게이트회로)를 표시한다.The circuit of FIG. 3 includes a logical multiplication circuit (1), an input switching switch logic circuit (2), and a 0-th 8-bit recording circuit to a 5-th 8-bit recording circuit that emit a total 8-bit output signal. (3 to 8), the 15-th 8-bit recording circuit 18, the 0-th switch logic logic to the fifth switch logic logic 19 to 24, the 15th switch logic circuit 34, and α 0 to α 5 galoi-based multiplication circuits 35 to 40. Reference numeral 51 denotes a Galois addition circuit (exclusive OR logic sum gate circuit).

제3도에 있어서, 6번째 내지 14번째 회로부품들은 생략하였다. 다음, 신드롬 발생회로의 동작에 대하여 설명하기로 한다.In FIG. 3, the sixth to fourteenth circuit components are omitted. Next, the operation of the syndrome generating circuit will be described.

본 실시예에서, 연산은 GF(28) 범위내에서 실행된다. 제일 먼저, 디코우드회로로부터 보내진 수신워드는 디코우딩 동작을 위해서 코우드워드 메모리회로(53)로 보내져서 기억된다.In this embodiment, the operation is performed within the range of GF 2 8 . First, the received word sent from the decoder circuit is sent to and stored in the codeword memory circuit 53 for the decoding operation.

다음, 수신워드는 코우드워드 메모리회로(53)로부터 신드롬 발생회로(52)로 보내진다. 이보다 먼저, 논리곱게이트회로(1)과 입력전환스위치논리회로(2)에 의한 초기치 설정작업이 실행되므로, 8-비트 기록회로(3 내지 18)의 내용은 0이 된다.The received word is then sent from the codeword memory circuit 53 to the syndrome generating circuit 52. Prior to this, the initial value setting operation by the logical product gate circuit 1 and the input changeover switch logic circuit 2 is executed, so that the contents of the 8-bit recording circuits 3 to 18 are zero.

다음, 코우드워드 메모리회로(53)에 누적된 디코우드회로로부터의 n개의 기호로 된 수신워드는 데이타단자를 경유하여 논리곱게이트회로(1)에 입력된다.Next, the received word of n symbols from the decode circuit accumulated in the codeword memory circuit 53 is input to the logical multiplication circuit 1 via the data terminal.

논리곱게이트회로(1)는 데이타단자로부터 데이타가 공급될때 동작하게 되어 있다. 논리곱게이트회로(1)의 출력신호들은 갈로이계 덧셈회로(51)(익스클루시브 OR 논리장치)로 보내지고, 동시에 입력전환스위치회로(2)가 전환되어, 논리곱게이트회로(1)로부터의 출력신호들이 갈오이계 곱셈회로(35 내지 50)로부터 궤환된 곱셈결과치에 가산됨으로써, n개의 기호에 대한 입력동작이 완료된다.The AND gate circuit 1 is operated when data is supplied from the data terminal. The output signals of the AND gate circuit 1 are sent to the Galois addition circuit 51 (exclusive OR logic unit), and at the same time, the input changeover switch circuit 2 is switched so that the AND signal from the AND gate circuit 1 Output signals are added to the multiplication result values fed back from the galoi system multiplication circuits 35 to 50, thereby completing the input operation for the n symbols.

다음, 신드롬(S0내지 S15)을 얻기 위해서 전환스위치논리회로(19 내지 34)를 통하여 8-비트 기록회로(3 내지 18)의 내용을 선택한다.Next, the contents of the 8-bit recording circuits 3 to 18 are selected through the switch-switch logic circuits 19 to 34 to obtain syndromes S 0 to S 15 .

본 실시예에서는, 해밍거리(d)가 d=17인 리이드-솔로몬 코우드를 채택했기 때문에, 신드롬의 갯수는 d-2, 즉, 15개의 기호이다. 신드롬(S0내지 S15)들은 갈로이계 연산회로(54)로 공급된다. 갈로이계 연산회로(54)는 제1연산수단 내지 제6연산수단을 포함한다. 제1연산수단에서는, 기지의 에러위치수(X0내지 XL-1)를 포인터로서의 코우드워드 메모리회로(53)으로부터 수신하여, σi,j를 연산한후 이 연산결과를 기억시킨다.σi,j의 값은 연산처리중 변형된 신드롬(Tk)과 에러치(Yj,o)를 얻는데 활용된다.In the present embodiment, since the lead-solomon code whose hamming distance d is d = 17 is adopted, the number of syndromes is d-2, that is, 15 symbols. The syndromes S 0 to S 15 are supplied to the gallo-based computation circuit 54. The galley calculation circuit 54 includes first to sixth calculation means. The first calculating means receives the known error number of positions X 0 to X L-1 from the codeword memory circuit 53 as a pointer, calculates σ i, j and stores the result of the calculation. The value of i, j is used to obtain the modified syndrome T k and the error value Y j, o during the operation.

제1연산수단의 동작은 제1b도의 흐름도로서 상세히 도시되었다.The operation of the first computing means is shown in detail as the flowchart of FIG. 1b.

제2연산수단에서는 제1연산수단으로부터 얻는 σi,j의 값과 신드롬 발생회로(52)로부터 돌출한 신드롬에 근거하여, 변형된 신드롬(Tk)을 연산한다. 이 제2연산수단의 동작은 제1c도의 흐름도중 부분(55)에 상세히 도시되었다.In the second calculating means, the modified syndrome T k is calculated based on the value of σ i, j obtained from the first calculating means and the syndrome protruding from the syndrome generating circuit 52. The operation of this second computing means is shown in detail in part 55 of the flowchart of FIG. 1C.

제3연산수단에서는 제2연산수단에서 결정한 교정 신드롬으로부터 에러위치 다항식 σt(z)과 에러산정 다항식 ηt(z)를 얻는다. 이러한 제3연산수단의 동작은 제1c도의 흐름도(56)에 도시되었다. 또, 제4연산수단은 제3연산수단에 의하여 결정된 에러위치 다항식 σt(z)으로부터 미지의 에러위치수(XL…XL+t-1)를 얻는데 활용되고, 이러한 동작은 제1b도의 흐름도중 부분(57)에 해당한다.In the third calculation means, the error position polynomial σ t (z) and the error calculation polynomial η t (z) are obtained from the calibration syndrome determined by the second calculation means. The operation of this third calculating means is shown in the flowchart 56 of FIG. 1C. Further, the fourth calculating means is used to obtain the unknown error position number X L ... X L + t-1 from the error position polynomial σ t (z) determined by the third calculating means, and this operation is performed in FIG. Corresponds to part 57 of the flowchart.

제5연산수단은 제4연산수단에 의해서 얻은 에러위치들을 에러산정 다항식 ηt(z)에 대입하여, 에러치 중간치(YL,L…YL,L+t-1)를 얻는 부분으로서, 동작은 제1b도의 흐름도중 부분(58)에 해당한다.The fifth calculating means substitutes the error positions obtained by the fourth calculating means into the error calculation polynomial η t (z) to obtain an intermediate value of the error values (Y L, L ... Y L, L + t-1 ). Operation corresponds to portion 58 of the flow chart of FIG. 1B.

제6연산수단은 제5연산수단에 의해서 결정을 에러치 중간치와 제1연산수단에 의해 얻는 σi,j로부터 에러치(Yi,o)의 연산하는데 활용되고, 제6연산수단의 동작은 제1d도와 제1e도에 도시되었다.The sixth calculating means is used to calculate the error value Y i, o from the intermediate value of the error value and σ i, j obtained by the first calculating means by the fifth calculating means, and the operation of the sixth calculating means 1d and 1e are shown.

제1e도의 흐름도중 부분(59)과 제1d도의 흐름도중 부분(59)는 에러치(Yi,o)의 연산처리과정을 각각 1/2씩 도시하고 있다. 부호(60)는 최종 에러교정을 실행하는 흐름도 부분을 표시하고 있는 것이다. 이러한 연산처리중, 에러위치수들은 벡터대응치로부터 파워치로 변환되고, 코우드워드 메모리회로(53)내에 내재한 어드레스는 에러기호를 판독하기 위해서 연산된 에러치에 부가되었다가, 다시 코우드워드 메모리회로(53)의 동일위치에 라이트된다.Parts 59 of the flowchart of FIG. 1E and portions 59 of the flowchart of FIG. 1D show the processing of the error values Y i, o by 1/2, respectively. Reference numeral 60 denotes a flowchart portion for performing a final error correction. During such arithmetic processing, error position numbers are converted from vector corresponding values to power values, and an address inherent in the codeword memory circuit 53 is added to an error value calculated to read an error symbol, and then the codeword memory circuit It is written to the same position of 53.

상기와 같이 구성된 본 갈로이계 연산장치의 제1실시예의 동작을 제1a도 내지 제1e도 및 제3도를 참조하여 상세히 설명하기로 한다. 여기서, 미지의 에러위치에 대한 J=8 내지 6의 에러와, 기지의 에러위치에 대한 j=5 내지 0의 에러로서, 목적하는 에러치 Yj,o에 대한 총 9개의 에러치가 존재한다고 가정하기로 하자.The operation of the first embodiment of the present Galois computing device configured as described above will be described in detail with reference to FIGS. 1A to 1E and 3. Here, it is assumed that there are a total of nine error values for a desired error value Y j, o as errors of J = 8 to 6 for an unknown error position and j = 5 to 0 errors for a known error position. Let's do it.

J에 대하여0

Figure kpo00003
j
Figure kpo00004
L이고, j
Figure kpo00005
i
Figure kpo00006
0이며, 하기식의 우변상 아래에 쓴 기호가 다르지 않으면 이에 대응하는 변수는 0이라는 조건하에서, σi,j=1라고 가정하면, σi,ji,j-1×Xj-1i-1,j-1에서j는 0부터 L까지 가변하고, 각각의 j 및 i값이 상기 조건하에서 가변할때, 순차적으로 연산처리를 실행함으로써, 결과 σi,j를 기억시킨다.About J0
Figure kpo00003
j
Figure kpo00004
L, j
Figure kpo00005
i
Figure kpo00006
Assuming that σ i, j = 1, σ i, j = σ i, j-1 × X j- J in 1 + σ i-1, j-1 varies from 0 to L, and when the respective j and i values vary under the above conditions, the operation is executed sequentially to store the result σ i, j .

이러한 이유는 σi,j의 연산시에 이전의 연산처리에서 얻은 σij-1과 σi-1D,j-1의 값을 채택하는 것이 필요하고, 이러한σi,j가 에러값을 연산할때 필요하기 때문이다.For this reason , when calculating σ i, j , it is necessary to adopt the values of σ ij-1 and σ i-1D, j-1 obtained in the previous calculation process, and these sigma i, j cannot calculate the error value. Because it is necessary.

다음, 위와 같이 하여 얻은 σi,j와 신드롬을 근거로 하여, 0부터 d-2-L까지의 범위의 k값에 대하여 Tk=

Figure kpo00007
σi,j×Sk+1의 변형된 신드롬에 대한 연산을 실시하고, 변형된 신드롬(Tk)를 미지의 에러위치수에 대한 에러의 통상적 에러교정시의 신드롬과 동일하게 취급함으로써, 유클리드디코딩알고리듬(Euclid decoding algorithm)을 통하여 미지의 에러위치수들에 대응되는 t개의 에러들용 에러위치 다항식 σt(z)과 에러치중 중간치의 에러산정 다항식 ηt(z)을 얻는다.Next, T k = for k values in the range of 0 to d-2-L, based on σ i, j and syndrome obtained as above.
Figure kpo00007
By performing the operation on the modified syndrome of sigma i, j × S k + 1 and treating the modified syndrome T k in the same way as the syndrome at the time of normal error correction of the error for the unknown error position number, Euclid Through the decoding decoding algorithm, the error position polynomial σ t (z) for t errors corresponding to the unknown error position numbers and the error estimation polynomial η t (z) of the intermediate values are obtained.

다음, 치엔의 알고리듬(chien′s algorithm)을 통하여 에러위치를 얻은 다음, 에러위치 다항식으로부터의 에러위치수들을 에러위치 다항식 σt(z)과 에러치중 중간치의 에러산정 다항식 ηt(z)에 대입하여 연산함으로써, 에리치 중간치(YL+t-1,L…YL,L)를 얻음으로써, 흐름도(59)로부터 에러치를 결정한다.Next, the error position is obtained through the Chien's algorithm, and then the number of error positions from the error position polynomial is added to the error position polynomial σ t (z) and the error estimation polynomial η t (z). By assigning and calculating, the error value is determined from the flowchart 59 by obtaining the intermediate value Y L + t-1, L ... Y L, L.

상기 연산중, 각각의 값에 대한 연산식은 다음의 것을 활용한다.Of the above calculations, the expression for each value utilizes the following.

Figure kpo00008
Figure kpo00008

여기서,here,

Figure kpo00009
Figure kpo00009

여기서,here,

Figure kpo00010
Figure kpo00010

Figure kpo00011
Figure kpo00011

여기서here

Figure kpo00012
Figure kpo00012

여기서,here,

Figure kpo00013
Figure kpo00013

여기서,here,

Figure kpo00014
Figure kpo00014

Figure kpo00015
Figure kpo00015

여기서,here,

Figure kpo00016
Figure kpo00016

여기서 0-번째 에러치(Y0,0)의 중간치를 얻고, 다른 에러치들, 즉, 1-번째 에러치 내지 8-번째 에러치들은 동시에 다음식과 같이 하여 얻는다.Here, the intermediate value of the 0-th error value (Y 0,0 ) is obtained, and other error values, that is, the 1-th error value to the 8-th error value are obtained simultaneously as in the following equation.

Figure kpo00017
Figure kpo00017

이러한 연산에서는 흔히, Pj=

Figure kpo00018
σi,j×Si라고 가정한다. 상기한 바와 같이, Yj,0를 얻기 위해서, L-1로부터 0까지의 j범위에서 Yj,j의 연산을 실행한다.Often in these operations, P j =
Figure kpo00018
Assume σ i, j × S i . As described above, in order to obtain Y j, 0 , the calculation of Y j, j is performed in the j range from L-1 to 0.

또, 에러치를 얻기 위해서, Yj,j연산을 σi,j의 연산에서와 동일하게 다음식, 즉,Yi,j=

Figure kpo00019
Yi,j+1/(Xi+Xj)+
Figure kpo00020
×σi,j×Si에 따라 실행하는 경우, Yi,j+1의 연산결과, 즉 최대치 L-1에서 0까지의 j범위에서 Yj,j에 대한 이전의 연산처리중 j+1에 대응한 Yi,j=Yi,j+1/(Xi+Yj)를 활용해야 한다.In order to obtain an error value, the Y j, j operation is performed in the same manner as in the operation of sigma i, j , that is, Y i, j =
Figure kpo00019
Y i, j + 1 / (X i + X j ) +
Figure kpo00020
When executing according to × σ i, j × S i , the result of the calculation of Y i, j + 1 , i.e., j + 1 during the previous calculation process for Y j, j in the j range from the maximum value L-1 to 0 Corresponding to Y i, j = Y i, j + 1 / (X i + Y j ).

다음 Yi,j+1/(Xi+Yj)를 연산한 후, 결과를 어떤 경우에도 메모리에 기억시켜서 후속 연산처리시에 갱신치를 다시 라이트할때 그 메모리의 내용을 돌출할 수 있도록 한다.After calculating the next Y i, j + 1 / (X i + Y j ), the result is stored in memory in any case so that the contents of that memory can be protruded when the update value is rewritten during subsequent processing. .

상기의 연산처리는 순차적 연산으로 하는 것이 편리하다. 위와 같이 하여 얻은 Yj,j의 새로운 결과치도 메모리에 라이트시킨다.It is convenient for the above calculation process to be a sequential operation. The new result of Y j, j obtained as above is also written to memory.

상기와 같은 반복적 연산의 결과로 얻는 j=0일때의 에러치, 즉 Yj, ±를 메모리에 기억시킨다.The error value when j = 0 obtained as a result of the above repetitive operation, that is, Y j, ± is stored in the memory.

또, 에러치를 얻기 위한 연산시에는 이미 결정된 σi,j를 다시 돌출하여 연산에 활용한다.In the operation for obtaining an error value, the previously determined sigma i, j are again projected and used for the calculation.

Yj,j의 연산시에는 흔히 재생 ROM(reprocical ROM)을 활용하여 1/(Xi+Yj)의 곱을 얻는 것이 효과적이다. 다음 도면을 참조하여, 본 발명에 따른 제2실시예로서 갈로이계 연산장치에 대하여 설명하기로 한다. 제2a도는 본 발명에 따른 제2실시예의 블록도이다. 제2b도는 제2실시예중 제1연산수단과 제7연산수단의 동작을 도시하는 흐름도이고, 제2c도는 제2실시예중 제2연산수단, 제3연산수단, 제4연산수단의 동작을 도시하는 흐름도로서 원리상 제1c도의 흐름도와 동일하나, 제2c도의 흐름도중 부분(55)에서는 교정 신드롬(T0)에 대한 연산이 이미 완료되어 있기 때문에 실행하지 않는다. 또, 제2d도는 제2실시예중 제5연산수단과 제8연산수단의 동작을 도시하는 흐름도이다.In the calculation of Y j, j , it is often effective to obtain a product of 1 / (X i + Y j ) by utilizing a reproduction ROM. With reference to the following drawings, a galoi system as a second embodiment according to the present invention will be described. Figure 2a is a block diagram of a second embodiment according to the present invention. FIG. 2B is a flowchart showing operations of the first and seventh computing means in the second embodiment, and FIG. 2C is a flowchart showing the operations of the second computing means, the third computing means and the fourth computing means in the second embodiment. As a flowchart, in principle, it is the same as the flowchart of FIG. 1C, but the part 55 of the flowchart of FIG. 2C is not executed because the operation on the calibration syndrome T 0 has already been completed. FIG. 2D is a flowchart showing the operation of the fifth calculating means and the eighth calculating means in the second embodiment.

제2a도에 있어서, 부호(52)는 신드롬 발생회로로서, 제3도에 도시된 것과 동일하고, 부호(53)는 코우드워드 메모리회로를 표시한다. 또, 부호(62)는 마이크로프로그램을 활용하여 고속으로 갈로이계의 연산을 실행하는 갈로이계 연산회로를 표시한다.In Fig. 2A, reference numeral 52 denotes a syndrome generating circuit, which is the same as that shown in Fig. 3, and reference numeral 53 denotes a codeword memory circuit. Reference numeral 62 denotes a Galois-based calculation circuit which executes Galois-based calculations at high speed utilizing a microprogram.

제2b도에 있어서, 제1연산수단과, 제7연산수단은 결합활용되어 제1연산수단에서 σi,j가 연산되고 기록기에서 보유되다가, Si를 곱함으로써, 중간치(Pj)와 교정신드롬(T0)를 연산하여 기억시킨다.In FIG. 2B, the first calculation means and the seventh calculation means are combined to utilize σ i, j in the first calculation means and are held in the recorder, and then multiply by S i to correct for the intermediate value P j . Compute and store the syndrome T 0 .

또, 제2c도에 있어서, 제1c도에 활용된 것과 유사한 방법으로 교정 신드롬(T1,…,Td-L-2)을 얻은 다음, 부호(56)으로 표시된 유클리드디코우딩 방법을 실행하여 미지의 에러위치수에 대한 t개의 에러에 대응한 에러위치 다항식 (σt(Z))과, 에러치의 중간치에 대한 에러산점 다항식(ηt(Z))을 얻는다.Also, in FIG. 2C, a calibration syndrome (T 1 ,..., T dL-2 ) is obtained by a method similar to that utilized in FIG. 1C, and then an Euclidean decoding method indicated by reference numeral 56 is executed to perform an unknown. An error position polynomial (σ t (Z)) corresponding to t errors with respect to the number of error positions of? And an error scatter polynomial (η t (Z)) with respect to the intermediate value of the error values are obtained.

다음, 제2d도중 흐름도의 부분(58)을 실행하여, 치엔의 알고리듬(57)을 통해 결정된 에러위치들을 에러위치 다항식 (σt(Z))과 에러치의 중간치에 대한 에러산정 다항식(ηt(Z))에 대입하여, 에러치에 대한 중간치(YL+t-1,L…YL,L)를 얻고, 흐름도의 부분(61)을 활용하여 에러치를 결정한다.Next, by executing part 58 of the flowchart in FIG. 2D, the error positions determined through the Chien's algorithm 57 are used to determine the error position polynomial (σ t (Z)) and the error estimation polynomial (η t ( Z)), the intermediate values (Y L + t-1, L ... Y L, L ) for the error values are obtained, and the error values are determined using the portion 61 of the flowchart.

제2도의 부분(61)에서는 제1b도의 제7연산수단으로 활용하여 기억된 에러위치수들과 중간치(Pj)로부터 최종적으로 에러치(Yj,o)를 연산한다.In part 61 of FIG. 2, the error value Y j, o is finally calculated from the stored error position numbers and the intermediate value P j by utilizing the seventh calculation means of FIG.

제2a도 내지 제2d도 및 제3도를 참조하여, 상기와 같이 구성된 갈로이계 연산장치의 제2실시예에 활용된 연산방법을 설명하기로 한다. 에러치(Yj,o)에 대해서, 에러위치를 모르는 J=8 내지 6인 경우의 에러들과 에러위치를 알고 있는 J=5 내지 0인 경우의 에러들에 대응한 9개의 에러치가 존재한다고 가정하기로 한다. Yj,o를 얻기 위한, 제1실시예와 동일한 각각의 에러치에 대한 연산식에서, L-1부터 0까지의 j의 범위에 대한 Yj,j의 연산이 실행되지만, 이러한 연산에 앞서, 중간치(P0)로부터 Pj-1치를 얻는 것이 효과적이다.With reference to FIGS. 2A to 2D and FIG. 3, the calculation method utilized in the second embodiment of the galoi-based computing device configured as described above will be described. For the error values Y j, o , there are nine error values corresponding to errors in the case of J = 8 to 6, which do not know the error position, and errors in the case of J = 5 to 0, which knows the error position. Let's assume. In the equation for each error value as in the first embodiment for obtaining Y j, o , the calculation of Y j, j for the range of j from L-1 to 0 is executed, but before this operation, It is effective to obtain the P j-1 value from the intermediate value P 0 .

즉, Pj를 얻을 때는 σi,j의 연산식을 σi,ji,j-1×Xj-1i-,1-1로 설정하여, σi,j과 신드롬(Si)를 얻음과 동시에 다음 연산을 실행한다.That is, when the obtained P j by setting the operational expression of the σ i, j to the σ i, j = σ i, j-1 × X j-1 + σ i-, 1-1, σ i, j , and a syndrome ( S i ) is obtained and the following operation is executed.

즉, Pj=

Figure kpo00021
σi,j×SI That is, P j =
Figure kpo00021
σ i, j × S I

위와 같은 식으로서 얻은 중간치 (Pj)는 메모리중 다른 위치에 기억시킨다. 여기서, L-번째 중간치는 다음과 같이하여 결정된다.The intermediate value (P j ) obtained as above is stored in another location in memory. Here, the L-th intermediate value is determined as follows.

Figure kpo00022
Figure kpo00022

후속하여, 제1실시예의 경우와 동일하게 남은 변형된 신드롬들과 에러치의 중간치(YL+t-1,L…YL,L)를 얻어서 다음식을 연산한다.Subsequently, the following equations are calculated by obtaining the intermediate values Y L + t-1, L ... Y L, L of the modified syndromes and the error values remaining in the same manner as in the first embodiment.

Figure kpo00023
Figure kpo00023

또, 이 경우에, 제1실시예의 방식과 동일하게, 다음과 같은 최대치 L-1부터 0까지의 j범위에 있는 Yj,j에 있어서, Yi,j+1즉 선행 연산처리의 연산결과를 활용한다.In this case, similarly to the method of the first embodiment, Y i, j + 1, i.e., arithmetic result of the preceding arithmetic operation , in Y j, j in the j range from the maximum value L-1 to 0 as follows. To utilize.

Figure kpo00024
Figure kpo00024

상기의 순차적 연산에 의해서, j=0일때의 연산결과가 나오면, 목적한 에러치, 즉 Yj,o를 메모리에 기억시킨다. 에러위치수들을 상기한 것과 다른 수단을 활용하여 알게된 경우, 연산식중에 그러한 에러위치수들은 대입함으로써 소거교정은 효과적으로 실행될 수 있으며, 코우드 거리가 허용될 수 있는 범위내에서 에러교정은 상기한 절차를 통하여 조직적으로 수행될 수 있다. 이러한 절차중의 연산으로서, 1.5×L2+t2를 곱셈하는 연산이 필요하다.By the sequential arithmetic operation, when a calculation result when j = 0 is obtained, the target error value, that is, Y j, o is stored in the memory. If the error position numbers are known by using a means other than the above, erasure correction can be effectively performed by substituting such error position numbers in the calculation, and the error correction can be performed within the range where the code distance can be tolerated. This can be done systematically through. As an operation during this procedure, an operation of multiplying 1.5 × L 2 + t 2 is required.

본 발명에 따른 제1실시예에 있어서, 0요소의 곱은 결과가 0요소인 것으로 가정함으로써, 생략될 수 있고, 1의 곱셈경우도 마찬가지이다. 또, 예컨데 초기치 설정동작 대신에 연산의 중간점에 0요소를 채택하는 것같이 조건판정을 실행하는 값을 대입하는 것도 자연스럽게 생각할 수 있다. 또한, 순차적으로 연산을 실행할때, 예컨데 레지스터와 같은 장치에 보유되어 있는 몇개의 결과치를 활용하여 연산을 실행할 수도 있다. 또한, 이러한 연산은 통상적 마이크로프로세서를 활용하여 실행될 수 있고, 갈로이계의 곱셈은 통상 로그표를 활용하여 실행되므로, 본 발명에 따른 알고리등은 특히 그러한 연산에 있어 효과적이다.In the first embodiment according to the present invention, the product of 0 elements can be omitted by assuming that the result is 0 elements, and the case of multiplication of 1 is the same. It is also natural to substitute a value for performing condition determination, for example, adopting a zero element at the midpoint of the operation instead of the initial value setting operation. In addition, when executing operations sequentially, the operation may be executed by using some result values held in a device such as a register. Further, such an operation can be performed using a conventional microprocessor, and since the multiplication of the galoi system is usually performed using a log table, the algorithm according to the present invention is particularly effective in such an operation.

엔코우딩 동작시의 패리터연산의 경우와 신드롬 연산의 경우, 상당히 고속연산처리가 요구되므로, 그러한 연산처리를 소프트웨어로 실행하는 경우에서도 많은 경우의 연산을 병행실행할 수 있는 하드웨어가 채용된다. 고속처리가 필요한 경우라 하더라도, 마이크로프로그래밍스킴(microprogramming scheme)을 활용하여 하드웨어의 속도에 육박하는 속도로 소프트웨어 방식으로 에러교정을 비롯한 연산처리 동작을 실행하는 것, 즉, 순전한 하드웨어 방식만의 연산처리를 실행하지 않는 것도 가능하다.In the case of the parity operation during the encoding operation and the syndrome operation, a considerably high speed operation process is required. Therefore, even in the case where such an operation process is executed by software, hardware capable of performing many cases of operations in parallel is employed. Even if high-speed processing is required, using a microprogramming scheme to perform arithmetic operations including error correction in software at a speed that is close to the speed of hardware, that is, pure hardware-based operations. It is also possible not to execute the process.

수신한 정보워드가 c′n-1, c′n-2, …, c′d-1까지 정확하고, 발생되었지만, 결국 소거될d-1 패리터워드에 대응한 c′d-1, c′d-3…c′0에서 0요소에러가 발생했다면, 에러위치수들이 패리터위치를 지시한다는 가정하에 0요소를 입력함으로써 실행되는 디코우딩 동작은 정보워드에 대한 엔코우딩 동작을 실행하는 동작과 똑같다. 즉, 소거교정을 마이크로프로그램을 활용하여 고속으로 실행할 수 있다면, 엔코우딩 동작도 동일속도로 실행할 수 있다는 것이다.The received information word is c ′ n-1 , c ′ n-2 ,... , C 'd-1 accurate, but to generate, after a c corresponding to d-1 parity words to be erased' d-1, c '... d-3 If a zero element error occurs at c ′ 0 , the decoding operation performed by inputting the zero element under the assumption that the error position numbers indicate the parity position is the same as that of performing the encoding operation on the information word. In other words, if the erasure correction can be performed at high speed using a microprogram, the encoding operation can be executed at the same speed.

이러한 경우에, 제3도에 신드롬 발생회로에 체크워드를 공급하고자할 때 논리곱게이트회로(1)를 동작상태로 설정한 후, 0요소만 입력시키면 된다. 또, 이때 미지의 에러수(t)는 0 그리고, 기지의 에러수(L)는 d-1로 가정한다. 이러한 방법으로, 신드롬 연산회로만 상응한 하드웨어로 보완할 수 있다면, 엔코우딩회로를 생략할 수 있다.In this case, when the checkword is to be supplied to the syndrome generating circuit in FIG. 3, only the zero element is required after setting the logical multiplication circuit 1 to an operation state. In this case, it is assumed that the unknown error number t is 0 and the known error number L is d-1. In this way, if only the syndrome calculation circuit can be complemented with corresponding hardware, the encoding circuit can be omitted.

[산업적 활용성][Industry utilization]

상기한 바와 같이, 본 발명에 따라서, 코우드에러검출 및 교정장치에 부설된 신드롬 발생회로와 코우드워드 메모리회로를 활용하여 통상적인 교정과 소거교정을 고속으로 실행할 수가 있다. 결과적으로, 고속연산과 고성능을 필요로 하는 광디스크장치와 같은 생에러율이 높은 기록매체를 통한 디코우딩 동작이 실제적으로 실행될 수 있으므로, 유리한 효과를 거둘 수 있게 되었다.As described above, according to the present invention, by utilizing the syndrome generating circuit and the codeword memory circuit attached to the code error detecting and correcting apparatus, it is possible to execute normal calibration and erase calibration at high speed. As a result, since the decoding operation through a recording medium with a high error rate such as an optical disk device requiring high speed operation and high performance can be actually executed, an advantageous effect can be achieved.

Claims (2)

데이타 전송장치에 부설되는 갈로이계 연산장치는 갈로이계(GF(2r))에 속한 요소들을 포함하는 해밍거리(d)를 갖는 에러교정 선형 코우드들로된 코우드워드를 데이타 전송용으로 활용하고, 수신 코우드워드와 에러위치수들을 입력으로서 수신하는데 있어서, S0내지 Sd-2범위의 신드롬을 발생시키는 신드롬 발생회로와:X0부터 XL-1까지 L개의 기지의 에러위치수에 대한 에러위치 다항식 σi,ji,j-1×Xj-1i-1,j-1의 계수들을 0
Figure kpo00025
j
Figure kpo00026
L, j
Figure kpo00027
i
Figure kpo00028
0의 조건하에서 σj,j=1이고, 상기 식중 우변의 아래쓴 기호가 다르지 않으면 그러한 아래쓴 기호에 대응하는 변수들은 0인 것으로 가정함으로써, 얻는 제1연산수단과:상기 제1연산수단으로부터 얻은 σi,j와, 상기 신드롬 발생회로로부터 발생된 신드롬을 활용하여 Tk=
Figure kpo00029
σi,j×Sk+1에 따라서 0부터 d-2-L까지 범위의 k에 대하여 변형된 신드롬을 연산하는 제2연산수단과:신드롬으로서 변형된 신드롬(Tk)을 활용하여, 미지의 에러위치수에 대응한 t개의 에러들에 대한 에러위치 다항식의 계수들과:의도한 에러치의 중간치에 대한 에러산정 다항식의 계수들을 얻는 유클리드디코우딩 알고리듬과 같은 에러교정 알고리듬을 활용하여 연산하는 제3연산수단과:미지의 에러에 대응한 에러위치 다항식으로부터 에러위치수들을 얻기 위하여 치엔의 방법과 같은 근해법 알고리듬을 활용하여 연산하는 제4연산수단과:상기 제4연산수단에 의해서, 얻은 t개의 에러위치치들을 미지의 에러들에 대응한 에러위치 다항식 및 에러산정 다항식에 대입함으로써, YL,L부터 YL+t-1까지 범위에 있는 의도하는 에러치의 중간치를 연산하는 제5연산수단과:의도하는 L+t개의 기지 및 미지의 에러위치수에 대한 모든 에러치(Yj,o)에 대하여, j를 L-1부터 0까지 가변시키면서 i
Figure kpo00030
j의 조건하에서,Yj,j=
Figure kpo00031
Yi,j+1/(Xi+Xj)+
Figure kpo00032
×σi,j×Si에 따라서 Yj,j를 연산한 후, j-1에 대한 Yj-1,j-1를 얻기 위해서, Yi,j+1/(Xi+Xj)=Yi,j의 조건으로 상기식의 우변 연산결과와, 좌변의 연산결과(Yj,j)를 상기식에 대입함으로써, 최종 에러치(Y0,0…YL-1,0…YL-1+t,0)를 얻을 때까지 연산을 실행하는 제6연산수단으로 구성되는 것을 특징으로 하는 갈로이계 연산장치.
The Galoisian operation unit attached to the data transfer unit utilizes a codeword made of error-corrected linear codes with a Hamming distance (d) including elements belonging to the Galois system (GF (2 r )). And a syndrome generating circuit for generating a syndrome in the range of S 0 to S d-2 in receiving the received codewords and error position numbers as input: for L known error number numbers from X 0 to X L-1 . Error Position Polynomial σ i, j = σ i, j-1 × X j-1 + σ i-1, j-1
Figure kpo00025
j
Figure kpo00026
L, j
Figure kpo00027
i
Figure kpo00028
A first calculation means obtained by assuming that σ j, j = 1 under the condition of 0, and that the written symbols on the right side of the equation do not differ from each other, that the variables corresponding to the written symbols are 0; By using σ i, j obtained and the syndrome generated from the syndrome generating circuit, T k =
Figure kpo00029
a second operation means for calculating a modified syndrome for k in the range from 0 to d-2-L in accordance with σ i, j × S k + 1 and: using a modified syndrome T k as a syndrome, Calculate the error-position polynomial coefficients for t errors corresponding to the error-position number of Third computing means and: fourth computing means for calculating utilizing error method algorithms such as Chien's method to obtain error location numbers from an error location polynomial corresponding to an unknown error; a fifth open to t one by inputting the error position teeth in the error location polynomial and an error estimation polynomial corresponding to the error of the image, computing a median value intended errors in the range from Y L, L from Y L + t-1 Means: with respect to the intended L + t of the base and all the error values (Y j, o) on the number of error location of the image that, while the variable j from 0 to L-1 i
Figure kpo00030
Under the condition of j, Y j, j =
Figure kpo00031
Y i, j + 1 / (X i + X j ) +
Figure kpo00032
After calculating Y j, j according to xσ i, j × S i , to obtain Y j-1, j-1 for j-1 , Y i, j + 1 / (X i + X j ) = Y i, j in terms of the right side of the formula and the operation result, by substituting the left side of the operation result (Y j, j) in the above formula, the final error value (Y 0,0 ... Y L-1,0 ... Y And a sixth calculating means for executing the calculation until L-1 + t, 0 ) is obtained.
해밍거리(d)를 갖는 에러교정 선정코우드들로된 코우드워드들을 갈로이계(GF(2r))의 요소로 구성하고, 데이타 전송에 활용되며, 수신 코우드워드와 에러위치수들을 입력으로서 수신하는 데이타 전송장치에 부설되는 갈로이계 연산장치에 있어서, S0내지 Sd-2범위의 신드롬을 발생시키는 신드롬 발생회로와:X0부터 XL-1까지의 L개의 기지의 에러위치수에 대하여 에러위치 다항식 σi,ji,j-1×Xj-1i-1,j-1에서, 0
Figure kpo00033
j
Figure kpo00034
L, j
Figure kpo00035
i
Figure kpo00036
0의 조건하에서 σj,j=1이고, 상기 식중 우변의 아래쓴 기호가 다르지 않으면 그에 대응한 변수는 0이라고 가정함으로써, 상기 다항식의 계수를 얻는 제1연산수단과:0
Figure kpo00037
j
Figure kpo00038
L, j
Figure kpo00039
i
Figure kpo00040
0의 조건하에서 상기 제1연산수단에 의하여 j에 대한 연산처리를 통해 σi,j를 얻을때, 신드롬(Si)과 Pj=
Figure kpo00041
σi,j×Si로부터 얻는 중간결과(Pj)를 기억시키고, j=L과 J
Figure kpo00042
i
Figure kpo00043
0의 조건을 설정했을때 PL을 T0=
Figure kpo00044
σi,L×Si로 대치하여 k=0에 대하여 얻은 교정신드롬(T0)를 기억시키는 제7연산수단과:상기 제1연산수단으로부터 얻은 σi,j와 상기 신드롬 발생회로로부터 발생된 신드롬을 활용하여, Tki,L×Sk+i에 따라서 0 내지 d-2-L 범위의 k에 대한 변형된 신드롬(Tk)를 연산하는 제2연산수단과:신드롬으서 변형된 신드롬(Tk)를 활용하여, 미지의 에러위치수에 대응한 t개의 에러용 에러위치 다항식의 계수들과, 의도한 에러치의 중간치에 대한 에러산정 다항식의 계수들을 얻는 유클리드디코우딩 방법과 같은 에러교정 알고리듬을 활용하여 연산하는 제3연산수단과:미지의 에러에 관련한 에러위치 다항식으로부터의 에러위치수들을 얻기 위하여 치엔의 방법과 같은 근해법 알고리듬을 활용하여 연산하는 제4연산수단과:상기 제4연산수단에 의해 얻은 t개의 에러위치치들을 미지의 에러에 관련된 에러위치 다항식 및 에러산정 다항식에 대입함으로써 YL,L내지 YL+t-1범위의 의도한 에러치의 중간치를 연산하는 제5연산수단과:의도하는 L+t개의 기지 및 미지의 에러위치수들에 대한 모든 에러치(Yj,0)를 얻기 위해서, L-1부터 0까지 j를 가변시키면서, Yj,j=
Figure kpo00045
Yi,j+1/(Xi+Xj)+Pj에 따라서 Yj,j를 연산한 다음, j-1에 대한 Yj-1,j-1를 얻기 위해서 하기 조건 Yi,j+1/(Xi+Xj)=Yi,j으로 상기식의 우변의 연산결과와 좌변의 연산결과(Yj,j)들을 상기식에 대입하여 최종 에러치(Y0,0…,YL-1,0…,YL-1+t,0)가 얻어질 때까지 연산을 실행하는 제8연산수단으로 구성되는 것을 특징으로 하는 갈로이계 연산장치.
Codewords consisting of error correction selection codes with a hamming distance (d) are composed of elements of the Galois system (GF (2 r )), utilized for data transmission, and receive receive codewords and error position numbers as inputs. A gallon calculation apparatus attached to a data transmission device, comprising: a syndrome generating circuit for generating syndromes in the range of S 0 to S d-2 : for L known error numbers from X 0 to X L-1 Error position polynomial σ i, j = σ i, j-1 × X j-1 + σ i-1, j-1 , 0
Figure kpo00033
j
Figure kpo00034
L, j
Figure kpo00035
i
Figure kpo00036
Under the condition of 0, if σ j, j = 1, and if the symbol written on the right side of the equation is not different, the corresponding variable is assumed to be 0, and the first operation means for obtaining the coefficient of the polynomial: 0
Figure kpo00037
j
Figure kpo00038
L, j
Figure kpo00039
i
Figure kpo00040
When σ i, j is obtained through the arithmetic operation on j by the first calculation means under the condition of 0, syndrome (S i ) and P j =
Figure kpo00041
The intermediate result (P j ) obtained from σ i, j × S i is stored, and j = L and J
Figure kpo00042
i
Figure kpo00043
Set P L to T 0 =
Figure kpo00044
a seventh operation means for storing the correction syndrome T 0 obtained for k = 0 by replacing sigma i, L × S i : generated by the sigma generation circuit and σ i, j obtained from the first operation means. Utilizing second syndrome to calculate modified syndrome (T k ) for k in the range 0 to d-2-L in accordance with T k = σ i, L × S k + i ; the syndrome utilizing (t k), Euclidean di Koh coding method for obtaining the coefficients of the error estimation polynomial of the value one to the one t of errors the error position polynomial for corresponding to the number of the error location of the unknown coefficients and, intended error median and A third operation means for calculating using the same error correction algorithm, and a fourth operation means for calculating using error method algorithms such as Chien's method to obtain error position numbers from the error position polynomial related to an unknown error; T values obtained by the fourth calculating means By substituting the position teeth of the error location polynomial and an error estimation polynomial associated with the error of the unknown Y L, fifth arithmetic means for calculating a median value L to Y L + t-1 range intentional errors: intended L + t that Y j, j = while varying j from L-1 to 0 to obtain all error values (Y j, 0 ) for the number of known and unknown error positions
Figure kpo00045
Y i, j + 1 / ( X i + X j) + by computing the Y j, j in accordance with P j, and then to order to obtain the Y j-1, j-1 to j-1 terms Y i, j +1 / (X i + X j ) = Y i, j is substituted for the result of the calculation on the right side and the result of the calculation on the left side (Y j, j ) into the equation, resulting in the final error value (Y 0,0 . And an eighth calculating means for executing the calculation until Y L-1,0 ..., Y L-1 + t, 0 ) is obtained.
KR1019890700370A 1987-06-30 1988-06-28 Galois field arithmetic unit KR910009094B1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP62162763A JP2553565B2 (en) 1987-06-30 1987-06-30 Galois field arithmetic unit
JP87-162763 1987-06-30
JP87-176167 1987-07-15
JP62176167A JP2553571B2 (en) 1987-07-15 1987-07-15 Galois field arithmetic unit
PCT/JP1988/000646 WO1989000363A1 (en) 1987-06-30 1988-06-28 Galois field arithmetic unit

Publications (1)

Publication Number Publication Date
KR910009094B1 true KR910009094B1 (en) 1991-10-28

Family

ID=27305676

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019890700370A KR910009094B1 (en) 1987-06-30 1988-06-28 Galois field arithmetic unit

Country Status (1)

Country Link
KR (1) KR910009094B1 (en)

Similar Documents

Publication Publication Date Title
US5020060A (en) Error code correction device having a galois arithmetic unit
US5680340A (en) Low order first bit serial finite field multiplier
US5068857A (en) Error correction circuit
US4142174A (en) High speed decoding of Reed-Solomon codes
US4099160A (en) Error location apparatus and methods
US6141786A (en) Method and apparatus for performing arithmetic operations on Galois fields and their extensions
KR930003997B1 (en) Method and apparatus for decoding error correction code
US6560747B1 (en) Error counting mechanism
US4763332A (en) Shared circuitry for the encoding and syndrome generation functions of a Reed-Solomon code
EP0316063B1 (en) Error correction using look-up tables
US4504948A (en) Syndrome processing unit for multibyte error correcting systems
EP0096109B1 (en) Error correcting system
US6725416B2 (en) Forward error correction apparatus and methods
US6148430A (en) Encoding apparatus for RAID-6 system and tape drives
US5905740A (en) Apparatus and method for error correction
JPH11507754A (en) Dedicated ALU architecture for 10-bit read-Solomon error correction module
EP0836285B1 (en) Reed-Solomon decoder with general-purpose processing unit and dedicated circuits
JPH0653842A (en) Method and circuit for decoding of rs code data signal
US6175941B1 (en) Error correction apparatus and associated method utilizing parellel processing
US5107506A (en) Error trapping decoding method and apparatus
US5541937A (en) Apparatus for uniformly correcting erasure and error of received word by using a common polynomial
KR910009094B1 (en) Galois field arithmetic unit
JP2553565B2 (en) Galois field arithmetic unit
JP2553571B2 (en) Galois field arithmetic unit
JPH10322226A (en) Reed solomon decoding method