초록
다양한 하드웨어 공유 및 최적화 방법을 적용하여 저면적/고성능 AES(Advanced Encryption Standard) 암호/복호 프로세서를 설계하였다. 라운드 변환블록 내부에 암호연산과 복호연산 회로의 공유 및 재사용과 함께 라운드 변환블록과 키 스케줄러의 S-Box 공유 등을 통해 회로 복잡도가 최소화되도록 하였으며, 이를 통해 S-Box의 면적을 약 25% 감소시켰다. 또한, AES 프로세서에서 가장 큰 면적을 차지하는 S-Box를 합성체 $GF(((2^2)^2)^2)$ 연산을 적용하여 구현함으로써 $GF(2^8)$ 또는 $GF((2^4)^2)$ 기반의 설계에 비해 S-Box의 면적이 더욱 감소되도록 하였다. 64-비트 데이터패스의 라운드 변환블록과 라운드 키 생성기의 동작을 최적화시켜 라운드 연산이 3 클록주기에 처리되도록 하였으며, 128비트 데이터 블록의 암호화가 31 클록주기에 처리되도록 하였다. 설계된 AES 암호/복호 프로세서는 약 15,870 게이트로 구현되었으며, 100 MHz 클록으로 동작하여 412.9 Mbps의 성능이 예상된다.
A compact and high-performance AES(Advanced Encryption Standard) encryption/decryption processor is designed by applying various hardware sharing and optimization techniques. In order to achieve minimized hardware complexity, sharing the S-Boxes for round transformation with the key scheduler, as well as merging and reusing datapaths for encryption and decryption are utilized, thus the area of S-Boxes is reduced by 25%. Also, the S-Boxes which require the largest hardware in AES processor is designed by applying composite field arithmetic on $GF(((2^2)^2)^2)$, thus it further reduces the area of S-Boxes when compared to the design based on $GF(2^8)$ or $GF((2^4)^2)$. By optimizing the operation of the 64-bit round transformation and round key scheduling, the round transformation is processed in 3 clock cycles and an encryption of 128-bit data block is performed in 31 clock cycles. The designed AES processor has about 15,870 gates, and the estimated throughput is 412.9 Mbps at 100 MHz clock frequency.