SystemC-Based Hardware/ Software Co-Design of Elliptic Curve Cryptographic System for Network Authentication
Main Article Content
Abstract
This paper presents the hardware-software co-design of an elliptic curve cryptographic (ECC) system-on-chip (SoC) implementation of a mutual authentication protocol for network/data communication systems. Designing such computationally intensive cryptosystems, particularly for resource-constrained embedded applications using the conventional register transfer level (RTL) methodology leads to extended design cycles, inefficient design-space exploration, very long simulation cycles, tedious verification procedure, and sub-optimal final realization. The solution to this problem is to apply hardware-software co-simulation methods abstracted at the Electronic System Level (ESL). In the ESL modelling framework proposed in this paper, the Unified Modelling Language (UML) is used to create the design documents that describe the system static architecture and functional behaviour. SystemC is used in generating the cycle-accurate executable simulation models. A technique for design space exploration at the system level is also proposed to obtain the best hardware-software partitioning of the ECC SoC well before the final prototype is available. Experimental works with the proposed ESL co-design platform show that early system verification can be performed efficiently, and simulation speed of an ESL model is shown to be about 1000 times faster than the simulation of the equivalent RTL model. System execution time is estimated to be within 95% accuracy of its equivalent RTL.