Study of a 32-bit Multiplier Suitable for Reconfigurable Cryptography Processor

재구성 가능한 암호화 프로세서에 적합한 32비트 곱셈기의 연구

  • Moon, San-Gook (Mokwon University, Department of Electronic Engineering)
  • 문상국 (목원대학교 전자공학과)
  • Published : 2008.10.31

Abstract

RSA crypto-processors equipped with more than 1024 bits of key space handle the entire key stream in units of blocks. The RSA processor which will be the target design in this paper defines the length of the basic word as 128 bits, and uses an 256-bits register as the accumulator. For efficient execution of 128-bit multiplication, $32b^*32b$ multiplier was designed and adopted and the results are stored in 8 separate 128-bit registers according to the stalks flag. In this paper, a fast 32bit nodular multiplier which is required to execute 128-bit MAC (multiplication and accumulation) operation is proposed. The proposed architecture prototype of the multiplier unit was automatically synthesized, and successfully operated at the frequency in the target RSA processor.

본 논문에서는 기본 워드를 128비트로 하고 곱셈 결과의 누적기로는 256비트의 레지스터를 사용하는 RSA 프로세서에서, 128 비트 곱셈을 효율적으로 수행하기 위하여 실험을 통하여 최적화한 32비트 $^*$ 32비트 곱셈기에 대한 연구를 수행하였다. $1024{\sim}2048$ 비트까지 재구성이 가능한 고비도 타겟 RSA 프로세서에서는 몽고메리 알고리즘을 효율적으로 처리하기 위하여 전체 키 스트림을 정해진 블록 단위로 처리한다. 본 논문에서 연구한 곱셈기는 128비트 곱셈에 필요한 누적곱셈 (MAC; multiply-and-aCcumultaion)을 효율적으로 구현하는 데 필수적인 연산모듈이 될 수 있다. 구현된 곱셈기는 시뮬레이션을 통하여 검증하였고, 자동 합성한 곱셈기 회로는 기준이 되는 RSA 프로세서의 동작 주파수에서 정상적으로 동작하였다.

Keywords