AES on FPGA from the Fastest to the Smallest
Two new FPGA designs for the Advanced Encryption Standard (AES) are presented. The first is believed to be the fastest, achieving 25 Gbps throughput using a Xilinx Spartan-III (XC3S2000) device. The second is believed to be the smallest and fits into a Xilinx Spartan-II (XC2S15) device, only requiring two block memories and 124 slices to achieve a throughput of 2.2 Mbps. These designs show the extremes of what is possible and have radically different applications from high performance e-commerce IPsec servers to low power mobile and home applications. The high speed design presented here includes support for continued throughput during key changes for both encryption and decryption which previous pipelined designs have omitted.
KeywordsAdvanced Encryption Standard (AES) Field Programmable Gate Array (FPGA) finite field design exploration high throughput pipelined low area Application Specific Instruction Processor (ASIP)
- 1.National Institute of Standards and Technology (NIST), Information Technology Laboratory (ITL), Advanced Encryption Standard (AES), Federal Information Processing Standards (FIPS) Publication 197 (November 2001)Google Scholar
- 3.Hodjat, A., Verbauwhede, I.: A 21.54 Gbits/s Fully Pipelined AES Processor on FPGA. In: 12th Annual IEEE Sypmosium on Field-Programmable Custom Computing Machines (FCCM 2004), pp. 308–309 (April 2004)Google Scholar
- 5.Rouvroy, G., Standaert, F.X., Quisquater, J.J., Legat, J.D.: Compact and efficient encryption/decryption module for FPGA implementation of the AES Rijndael very well suited for small embedded applications. In: Procedings of the international conference on Information Technology: Coding and Computing 2004 (ITCC 2004), vol. 2, pp. 583–587 (April 2004)Google Scholar
- 9.Jarvinen, K.U., Tommiska, M.T., Skytta, J.O.: A fully pipelined memoryless 17.8 Gbps AES-128 encryptor. In: Proc. Int. Symp. Field-Programmable Gate Arrays (FPGA 2003), Monterey, CA, pp. 207–215 (February 2003)Google Scholar
- 14.Chapman, K.: PicoBlaze 8-bit Microcontroller. Xilinx (2002), http://www.xilinx.com/products/design_resources/proc_central/grouping/picoblaze.htm