skip to main content
article

ASIP architecture exploration for efficient IPSec encryption: A case study

Published: 01 May 2007 Publication History

Abstract

Application-Specific Instruction-Set Processors (ASIPs) are becoming increasingly popular in the world of customized, application-driven System-on-Chip (SoC) designs. Efficient ASIP design requires an iterative architecture exploration loop---gradual refinement of the processor architecture starting from an initial template. To accomplish this task, design automation tools are used to detect bottlenecks in embedded applications, to implement application-specific processor instructions, and to automatically generate the required software tools (such as instruction-set simulator, C-compiler, assembler, and profiler), as well as to synthesize the hardware. This paper describes an architecture exploration loop for an ASIP coprocessor that implements common encryption functionality used in symmetric block cipher algorithms for internet protocol security (IPSec). The coprocessor is accessed via shared memory and, as a consequence, our approach is easily adaptable to arbitrary main processor architectures. This paper presents the extended version of our case study that has been already published on the SCOPES conference in 2004. In both papers, a MIPS architecture is used as the main processor and Blowfish as encryption algorithm.

References

[1]
ACE---Associated Computer Experts bv. 2005. The cosy compiler development system http://www.ace.nl.
[2]
ARC International. 2005. Arctangent processor http://www.arc.com.
[3]
Biswas, P., Choudhary, V., Atasu, K., Pozzi, L., Ienne, P., and Dutt, N. 2004. Introduction of local memory elements in instruction set extensions. In Proceedings of the Design Automation Conference. June.
[4]
Branstad, D. K., Gait, J., and Katzke, S. 1976/1977. Report on the workshop on cryptography in support of computer security. Tech. Rep. NBSIR 77-1291, National Bureau of Standards. Sep.
[5]
Burke, J., McDonald, J., and Austin, T. M. 2000. Architectural support for fast symmetric-key cryptography. In Architectural Support for Programming Languages and Operating Systems. 178--189.
[6]
Cheung, O. Y. H., Tsoi, K. H., Leong, P. H. W., and Leong, M. P. 2001. Tradeoffs in parallel and serial implementations of the international data encryption standard (IDEA). In Lecture Notes in Computer Science, vol. 2162.
[7]
Chodowiec, P., Khuon, P., and K.Gaj. 2001. Fast implementations of secret-key block ciphers using mixed inner- and outer-round pipelining. In FPGA.
[8]
Cisco Systems. 1999. Parallel eXpress Forwarding in the Cisco 10000 Edge Service Router. Tech. rep., White Paper. Dec.
[9]
Cognigine Corp. 2001. A monolithic packet processing machine. Presentation at Network Processor Forum.
[10]
CoWare Inc. 2000. http://www.coware.com. CoWare Inc.
[11]
Deering, S. and Hinden, R. 1998. Internet protocol, Version 6 (IPv6) Specification. Tech. Rep. RFC 2460, http://www.rfc-editor.org/rfc/rfc2460.txt. Dec.
[12]
Draves, R., Zill, B., and Mankin, A. 1998. Implementing IPv6 for windows NT. In Windows NT Symposium Seattle.
[13]
EZchips Technologies. 1999. Network processor design for next-generation network equipment. Tech. rep., White Paper. Dec.
[14]
Fauth, A., Praet, J. V., and Freericks, M. 1995. Describing instruction set processors using nML. In Proc. of the European Design and Test Conference (ED & TC).
[15]
Feistel, H. 1974. U.S Patent #3, 798, 360.
[16]
Feistel, H. 1979. Cryptography and computer privacy. Scientific American 228, 5, 15--23.
[17]
Grötker, T., Liao, S., Martin, G., Swan, S. 2002. System Design with SystemC. Kluwer Academic Publ. Novell, MA.
[18]
Halambi, A., Grun, P., Ganesh, V., Khare, A., Dutt, N., and Nicolau, A. 1999. EXPRESSION: A language for architecture exploration through compiler/simulator retargetability. In Proc. of the Conference on Design, Automation & Test in Europe (DATE).
[19]
Hinden, R. and Deering, S. 1998. IP Version 6 Addressing Architecture. Tech. Rep. RFC 2373, http://www.rfc-editor.org/rfc/rfc2373/rfc2373.txt. July.
[20]
Hoffmann, A., Meyr, H., and Leupers, R. 2003. Architecture Exploration for Embedded Processors With Lisa. Kluwer Academic Pub., Novell, MA.
[21]
Hohenauer, M., Scharwaechter, H., Karuri, K., Wahlen, O., Kogel, T., Leupers, R., Ascheid, G., and Meyr, H. 2004. A methodology and tool suite for C compiler generation from ADL models. In Proc. of the Conference on Design, Automation & Test in Europe (DATE).
[22]
IBM Corp. 1999. IBM network processor (IBM32NPR161EPXCAC100). Tech. rep., Product Overview. Nov.
[23]
Intel Corp. 2002. Intel IXP2800 network processor. Tech. rep., Product Brief.
[24]
Kent, S. and Atkinson, R. 1998. Security architecture for the internet protocol. Tech. Rep. RFC 2401, http://www.rfc-editor.org/rfc/rfc2401.txt. Nov.
[25]
Kobayashi, S., Takeuchi, Y., Kitajima, A., and Imai, M. 2001. Compiler generation in PEAS-III: an ASIP development system. In Workshop on Software and Compilers for Embedded Processors (SCOPES).
[26]
Lanner, D., Praet, J. V., Kifli, A., Schoofs, K., Geurts, W., Thoen, F., and Goossens, G. 1995. Chess: Retargetable code generation for embedded DSP processors. In Code Generation for Embedded Processors, P. Marwedel and G. Goosens, Eds. Kluwer Academic Pub., Novell, MA.
[27]
Leong, M., Cheung, O., Tsoi, K., and Leong, P. 2000. A bit-serial implementation of the international data encryption algorithm (IDEA). In IEEE Symposium on Field-Programmable Custom Computing Machhines.
[28]
Lextra Corp. 2001. NVP: A Programmable OC-192c Powerplant. Presentation at Network Processor Forum.
[29]
Mencer, O., Morf, M., and Flynn, M. 1998. Hardware software tridesign of encryption for mobile communication units. In Proc. of the Int. Conf. on Acoustics, Speech and Signal Processing (ICASSP).
[30]
MIPS Inc. 2005. MIPS Technologies http://www.mips.com.
[31]
National Institute for Standards and Technology (NIST) 2001. http://www.csrc.nist.gov/publications/fips/fips197/fips-197.pdf. National Institute for Standards and Technology (NIST).
[32]
Nohl, A., Braun, G., Schliebusch, O., Leupers, R., and Meyr, H. 2002. A universal technique for fast and flexible instruction-set architecture simulation. In Proc. of the Design Automation Conference (DAC).
[33]
Paulin, P., Karim, F., and Bromley, P. 2001. Network processors: A perspective on market requirements, processor architectures and embedded SW tools. In Proc. of the Conference on Design, Automation & Test in Europe (DATE).
[34]
Postel, J. 1981. Internet protocol: DARPA internet program protocol specification. Tech. Rep. RFC 791, http://www.rfc-editor.org/rfc/rfc791.txt. Sep.
[35]
Rajesh, V. and Moona, R. 1999. Processor modeling for hardware software codesign. In Int. Conf. on VLSI Design.
[36]
Schliebusch, O., Steinert, M., Braun, G., Nohl, A., Leupers, R., Ascheid, G., and Meyr, H. 2004. RTL processor synthesis for architecture exploration and implementation. In Proc. of the Conference on Design, Automation & Test in Europe (DATE).
[37]
Schneier, B. 1996. Applied Cryptography. Addison-Wesley, Boston, MA.
[38]
Schneier, B., Kelsey, J., Whiting, D., Wagner, D., and Hall, C. 1998. Twofish: A 128-Bit Block Cipher.
[39]
Shah, N. 2001. Understanding network processors. Tech. Rep. 1.0, University of California, Berkeley. Sep.
[40]
Shah, N. and Keutzer, K. 2002. Network processors: Origin of species. In The 17th International Symposium of Computer and Information Science.
[41]
SiTera Corp. 2000. PRISM IQ2000. Tech. rep., Product Brief. Feb.
[42]
Target Compiler Technologies. 2005. Chess/checkers http://www.retarget.com.
[43]
Tensilica. 2005. Xtensa http://www.tensilica.com.
[44]
Thayer, R., Doraswamy, N., and Glenn, R. 1998. IP security document road map. Tech. Rep. RFC 2411, http://www.rfc-editor.org/rfc/rfc2411.txt. Nov.
[45]
Wieferink, A., Kogel, T., Leupers, R., Ascheid, G., and Meyr, H. 2004. A system level processor/communication co-exploration methodology for multi-processor system-on-chip platforms. In Proc. of the Conference on Design, Automation & Test in Europe (DATE).
[46]
Xelerated Packet Devices Corp. 2001. The worlds first 40 Gbps (OC-768) Network Processor. Presentation at Network Processor Forum.

Cited By

View all
  • (2012)ASIP-based Design and Implementation of RSA for Embedded SystemsProceedings of the 2012 IEEE 14th International Conference on High Performance Computing and Communication & 2012 IEEE 9th International Conference on Embedded Software and Systems10.1109/HPCC.2012.202(1375-1382)Online publication date: 25-Jun-2012
  • (2012)Towards a Dedicated ASIP for AES ImplementationMechanical Engineering and Technology10.1007/978-3-642-27329-2_60(441-444)Online publication date: 2012
  • (2011)The application specific instruction processor for AES2011 3rd International Conference on Electronics Computer Technology10.1109/ICECTECH.2011.5941928(394-396)Online publication date: Apr-2011
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 6, Issue 2
SPECIAL ISSUE SCOPES 2005
May 2007
119 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/1234675
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 01 May 2007
Published in TECS Volume 6, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. ADL
  2. ASIP
  3. IPSec
  4. computer-aided design

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 27 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2012)ASIP-based Design and Implementation of RSA for Embedded SystemsProceedings of the 2012 IEEE 14th International Conference on High Performance Computing and Communication & 2012 IEEE 9th International Conference on Embedded Software and Systems10.1109/HPCC.2012.202(1375-1382)Online publication date: 25-Jun-2012
  • (2012)Towards a Dedicated ASIP for AES ImplementationMechanical Engineering and Technology10.1007/978-3-642-27329-2_60(441-444)Online publication date: 2012
  • (2011)The application specific instruction processor for AES2011 3rd International Conference on Electronics Computer Technology10.1109/ICECTECH.2011.5941928(394-396)Online publication date: Apr-2011
  • (2010)Implementing dynamic implied addressing mode for multi-output instructionsProceedings of the 2010 international conference on Compilers, architectures and synthesis for embedded systems10.1145/1878921.1878937(87-96)Online publication date: 24-Oct-2010
  • (2010)Two versions of architectures for dynamic implied addressing modeJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2010.05.01456:8(368-383)Online publication date: 1-Aug-2010
  • (2007)A code-generator generator for multi-output instructionsProceedings of the 5th IEEE/ACM international conference on Hardware/software codesign and system synthesis10.1145/1289816.1289851(131-136)Online publication date: 30-Sep-2007
  • (2005)Fine-grained application source code profiling for ASIP designProceedings of the 42nd annual Design Automation Conference10.1145/1065579.1065666(329-334)Online publication date: 13-Jun-2005

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media