Abstract
Most hardware/software codesigns of Elliptic Curve Cryptography only have one central control unit, typically a 32 bit or 8 bit processor core. With the ability of integrating several soft processor cores into one FPGA fabric, we can have a hierarchy of controllers in one SoC design. Compared to the previous codesigns trying to optimize the communication overhead between the central control unit and coprocessor over bus by using different bus protocols (e.g. OPB, PLB and FSL) or advanced techniques (e.g. DMA), our approach prevents overhead in bus transactions by introducing a local 8 bit microcontroller, PicoBlaze, in the coprocessor. As a result, the performance of the ECC coprocessor can be almost independent of the selection of bus protocols. To further accelerate the Uni-PicoBlaze based ECC SoC design, a Dual-PicoBlaze based architecture is proposed, which can achieve the maximum instruction rate of 1 instruction/cycle to the ECC datapath. Using design space exploration of a large number of system configurations of different architectures discussed in this paper, our proposed Dual-PicoBlaze based design also shows best trade-off between area and speed.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Gura, N., et al.: An End-to-End Systems Approach to Elliptic Curve Cryptography. In: Kaliski Jr., B.S., Koç, Ç.K., Paar, C. (eds.) CHES 2002. LNCS, vol. 2523, pp. 349–365. Springer, Heidelberg (2003)
Koschuch, M., et al.: Hardware/Software Co-design of Elliptic Curve Cryptography on an 8051 Microcontroller. In: Goubin, L., Matsui, M. (eds.) CHES 2006. LNCS, vol. 4249, pp. 430–444. Springer, Heidelberg (2006)
Gura, N., et al.: Comparing elliptic curve cryptography and RSA on 8-bit CPUs. In: Joye, M., Quisquater, J.-J. (eds.) CHES 2004. LNCS, vol. 3156, pp. 119–132. Springer, Heidelberg (2004)
Aigner, H., Bock, H., Hütter, M., Wolkerstorfer, J.: A low-cost ECC coprocessor for smartcards. In: Joye, M., Quisquater, J.-J. (eds.) CHES 2004. LNCS, vol. 3156, pp. 107–118. Springer, Heidelberg (2004)
Batina, L., et al.: Hardware/software co-design for hyperelliptic curve cryptography (HECC) on the 8051 μP. In: Rao, J.R., Sunar, B. (eds.) CHES 2005. LNCS, vol. 3659, pp. 106–118. Springer, Heidelberg (2005)
Hodjat, A., Hwang, D., Batina, L., Verbauwhede, I.: A hyperelliptic curve crypto coprocessor for an 8051 microcontroller. In: SIPS 2005, pp. 93–98. IEEE, Los Alamitos (2005)
Sakiyama, K., Batina, L., Preneel, B., Verbauwhede, I.: Superscalar Coprocessor for High-Speed Curve-Based Cryptography. In: Goubin, L., Matsui, M. (eds.) CHES 2006. LNCS, vol. 4249, pp. 415–429. Springer, Heidelberg (2006)
Cheung, R.C.C., Luk, W., Cheung, P.Y.K.: Reconfigurable Elliptic Curve Cryptosystems on a Chip. In: DATE 2005, vol. 1, pp. 24–29. IEEE, Los Alamitos (2005)
Klimm, A., Sander, O., Becker, J., Subileau, S.: A Hardware/Software Codesign of a Co-processor for Real-Time Hyperelliptic Curve Cryptography on a Spartan3 FPGA. In: Brinkschulte, U., Ungerer, T., Hochberger, C., Spallek, R.G. (eds.) ARCS 2008. LNCS, vol. 4934, pp. 188–201. Springer, Heidelberg (2008)
Hemple, G., Hochberger, C.: A resource optimized Processor Core for FPGA based SoCs. In: DSD 2007, pp. 51–58. IEEE, Los Alamitos (2007)
AVR Core at opencores.org (2008), http://www.opencores.com/projects/avr_core/
Gaisler Research: LEON2 Processor User’s Manual (2005)
Hankerson, D., Menezes, A.J., Vanston, S.A.: Guide to Elliptic Curve Cryptography. Springer, Heidelberg (2004)
López, J., Dahab, R.: Fast multiplication on elliptic curves over GF(2m). In: Koç, Ç.K., Paar, C. (eds.) CHES 1999. LNCS, vol. 1717, pp. 316–327. Springer, Heidelberg (1999)
Großschädl, J.: A low-power bit-serial multiplier for finite fields GF(2m). In: ISCAS 2001, vol. IV, pp. 37–40. IEEE, Los Alamitos (2001)
Kumar, S., Wollinger, T., Paar, C.: Optimum Digit Serial GF(2m) Multipliers for Curve-Based Cryptography. IEEE Transactions on Computers 55(10), 1306–1311 (2006)
Rodríguez-Henríquez, F., Saqib, N.A., Díaz-Pérez, A., Koç, Ç.K.: Cryptographic Algorithms on Reconfigurable Hardware. Springer, Heidelberg (2006)
Schaumont, P., Ching, D., Verbauwhede, I.: An Interactive Codesign Environment for Domain-specific Coprocessors. ACM Transactions on Design Automation of Electronic Systems 11(1), 70–87 (2006)
Schaumont, P., Verbauwhede, I.: A Component-based Design Environment for Electronic System-level Design. IEEE Design and Test of Computers Magazine, special issue on Electronic System-Level Design 23(5), 338–347 (2006)
Guo, X., Chen, Z., Schaumont, P.: Energy and Performance Evaluation of an FPGA-Based SoC Platform with AES and PRESENT Coprocessors. In: Bereković, M., Dimopoulos, N., Wong, S. (eds.) SAMOS 2008. LNCS, vol. 5114, pp. 106–115. Springer, Heidelberg (2008)
Becker, J.: Configurable systems-on-chip (CSoC). In: SBCCI 2002, pp. 379–384. IEEE, Los Alamitos (2002)
Koblitz, A. H., Koblitz, N., Menezes, A.: Elliptic Curve Cryptography: The Serpentine Course of a Paradigm Shift (2008), http://eprint.iacr.org/2008/390
Coron, J.-S.: Resistance against Differential Power Analysis for Elliptic Curve Cryptosystems. In: Koç, Ç.K., Paar, C. (eds.) CHES 1999. LNCS, vol. 1717, pp. 292–302. Springer, Heidelberg (1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Guo, X., Schaumont, P. (2009). Optimizing the Control Hierarchy of an ECC Coprocessor Design on an FPGA Based SoC Platform. In: Becker, J., Woods, R., Athanas, P., Morgan, F. (eds) Reconfigurable Computing: Architectures, Tools and Applications. ARC 2009. Lecture Notes in Computer Science, vol 5453. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-00641-8_18
Download citation
DOI: https://doi.org/10.1007/978-3-642-00641-8_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-00640-1
Online ISBN: 978-3-642-00641-8
eBook Packages: Computer ScienceComputer Science (R0)