Abstract:
본 발명은 XOR 논리를 이용한 n(n은 2 이상의 자연수) 비트 순환 중복 검사(CRC) 데이터 생성 방법으로서, (a) 1이상 n 이하의 값을 가지는 변수 i, j에 대하여, 종래 CRC 생성을 위한 선형 피드백 쉬프트 레지스터(LFSR)의 i번째 레지스터 Fi 값을 Xj(Xj는 입력 데이터의 j번째 비트인 Dj와 상기 CRC 데이터의 j번째 비트의 초기값 Cj의 XOR 논리 연산값임)의 XOR 연산값으로 표시하여, n×n 행렬 를 g ij 는 상기 Fi가 Xj의 XOR 연산을 통하여 생성되는 경우 '1'이고 그렇지 않은 경우는 '0'으로 정의되도록 생성하는 단계와, (b) 행렬 G에 대해서 '1'의 개수가 가장 많은 열을 검색하여 이 열을 A열로 설정하는 단계와, (c) A열과 행렬 G의 나머지 다른 모든 열을 비교하여 그 중 A열과 공통으로 '1'을 포함하고 있는 같은 행의 개수가 가장 많은 열을 검색하여 이 열을 B열로 설정하는 단계와, (d) A열과 B열에서 같은 행에 공통으로 포함되어 있는 '1'을 A열 및 B 열 모두에서 '0'으로 변경하여 행렬 G를 다시 저장하는 단계와, (e) B열의 '1'의 개수가 0인지 검사하여 0이면 종료하고 0이 아니면 그렇지 않은 경우 B열의 '1'의 개수가 0이 될 때까지 단계 (b) 내지 단계 (d)를 반복하는 단계를 포함하는 XOR 논리를 이용한 n 비트 순환 중복 검사 데이터 생성 방법에 관한 것이다. 본 발명에 따르면, 입력 데이터와 CRC 내부 신호를 두 개 단위로 그룹화하여 각 플립플롭의 결과를 위한 XOR 게이트의 개수를 최소화하며 논리레벨을 줄여줌으로써 고속 데이터 시스템의 CRC 계산시 적은 면적으로 고속의 계산이 가능하도록 하고, 이로써 고속의 데이터 통신 시스템에서 수신 데이터 오류 검출 방법에 유용하게 사용될 수 있다. CRC, 병렬, XOR 논리, 유사코드, 논리 레벨, 도달 시간, 셀 면적