본 논문은 통신 시스템에서 오류 검출을 위해 널리 사용되고 있는 회로의 병렬 Cyclic Redundancy Check (CRC) 구현을 위한 최적화 알고리즘을 제시한다. 논리 단을 최소로 하면서 가능한 많은 공유 텀을 찾아 매핑 함으로써 속도 및 게이트 수를 줄인다. 본 논문에서는 이더넷의 32비트 CRC를 병렬로 구현하여 성능평가를 하였다. FPGA 및 표준 셀 라이브러리를 이용하여 합성하였으며, 기존의 방식에 비해 속도와 면적 모두 향상되었음을 보여준다.