Higher-Level Hardware Synthesis of the KASUMI Algorithm
- 29 Downloads
Programmable Logic Devices (PLDs) continue to grow in size and currently contain several millions of gates. At the same time, research effort is going into higher-level hardware synthesis methodologies for reconfigurable computing that can exploit PLD technology. In this paper, we explore the effectiveness and extend one such formal methodology in the design of massively parallel algorithms. We take a step-wise refinement approach to the development of correct reconfigurable hardware circuits from formal specifications. A functional programming notation is used for specifying algorithms and for reasoning about them. The specifications are realised through the use of a combination of function decomposition strategies, data refinement techniques, and off-the-shelf refinements based upon higher-order functions. The off-the-shelf refinements are inspired by the operators of Communicating Sequential Processes (CSP) and map easily to programs in Handel-C (a hardware description language). The Handel-C descriptions are directly compiled into reconfigurable hardware. The practical realisation of this methodology is evidenced by a case studying the third generation mobile communication security algorithms. The investigated algorithm is the KASUMI block cipher. In this paper, we obtain several hardware implementations with different performance characteristics by applying different refinements to the algorithm. The developed designs are compiled and tested under Celoxica’s RC-1000 reconfigurable computer with its 2 million gates Virtex-E FPGA. Performance analysis and evaluation of these implementations are included.
Keywordsdata encryption formal models gate array methodology parallel algorithms
Unable to display preview. Download preview PDF.
- Xilinx. http://www.xilinx.com.
- Altera. http://www.Altera.com.
- Celoxica. http://www.celoxica.com.
- Edwards D, Harris S, Forge J. High performance hardware from java. Xilinx Whitepaper, http://www.xilinx.com.
- Li Y, Callahan T, Darnell E et al. Hardware-software codesign of embedded reconfigurable architectures. In Proc. the 37th Design Automation Conference, Los Angeles, USA, June 2000, p.30.Google Scholar
- SystemC Network. http://www.systemc.org.
- Abdallah A E. Functional Process Modelling. Research Directions in Parallel Functional Programming, Hammond K, Michealson G (eds.), Springer Verlag, October 1999, pp.339–360.Google Scholar
- Abdallah A E, Hawkins J. Formal behavioural synthesis of Handel-C parallel hardware implementation for functional specifications. In Proc. the 36th Annual Hawaii Int. Conf. System Sciences, IEEE Computer Society Press, January, 2003, pp. 278–288.Google Scholar
- Bird R. Introduction to Functional Programming Using Haskell. Addison Wesley, 1999.Google Scholar
- Hoare C A R. Communicating Sequential Processes. Prentice-Hall, 1985.Google Scholar
- INMOS Ltd. OCCAM 2 Reference Manual. Prentice-Hall International, 1988.Google Scholar
- SAGE. Report on the evaluation of 3GPP standard confidentiality and integrity algorithms. Technical Report, ETSI, October, 2000.Google Scholar
- Kim H, Choi Y, Kim M, Ryu H. Hardware implementation of 3GPP KASUMI crypto algorithm. In Proc. the 2002 Int. Technical Conf. Circuits/Systems, Computers and Communications (ITC-CSCC), Phuket, Thailand, July 2002, 1: 317–320.Google Scholar
- Alcantara J, Vieira A, Galvez-Durand F, Alves V. A methodology for dynamic power consumption estimation using VHDL descriptions. In Proc. Symposium on Integrated Circuits and Systems Design, Phuket, Thailand, September 2002, pp. 149–154.Google Scholar
- Intel. http://www.intel.com.
- SCI-WORX. http://www.sci-worx.com.