Title :
Software architecture exploration for high-performance security processing on a multiprocessor mobile SoC
Author :
Arora, Divya ; Raghunathan, Anand ; Ravi, Srivaths ; Sankaradass, Murugan ; Jha, Niraj K. ; Chakradhar, Srimat T.
Author_Institution :
Dept. of Electr. Engineerin, Princeton Univ., NJ
Abstract :
We present a systematic methodology for exploring the security processing software architecture for a commercial heterogeneous multiprocessor system-on-chip (SoC) for mobile devices. The SoC contains multiple host processors executing applications and a dedicated programmable security processing engine. We developed an exploration methodology to map the code and data of security software libraries onto the platform, with the objective of maximizing the overall application-visible performance. The salient features of the methodology include (i) the use of real performance measurements from a prototyping board that contains the target platform to drive the exploration, (ii) a new data structure access profiling framework that allows us to accurately model the communication overheads involved in offloading a given set; of functions to the security processor, and (iii) an exact branch-and-bound based design space exploration algorithm that determines the best mapping of security library functions and data structures to the host and security processors. We used the proposed framework to map a commercial security library to the target mobile application SoC. The resulting optimized software architecture outperformed several manually-designed software architectures, resulting in up to 12.5times speedup for individual cryptographic operations (encryption, hashing) and 2.2times-6.2times speedup for applications such as a digital rights management (DRM) agent and secure sockets layer (SSL) client. We also demonstrate the applicability of our framework to software architecture exploration in other multiprocessor scenarios
Keywords :
cryptography; software architecture; software libraries; system-on-chip; DRM agent; SSL client; commercial system-on-chip; communication overheads; digital rights management agent; encryption; hashing; heterogeneous system-on-chip; high-performance security processing; mobile SoC; mobile devices; multiprocessor system-on-chip; secure sockets layer client; security library functions; security of data; software architecture exploration; software libraries; software partitioning; Application software; Cryptography; Data security; Data structures; Engines; Measurement; Multiprocessing systems; Software architecture; Software libraries; Software prototyping; Performance; Security; Software partitioning; computation offloading;
Conference_Titel :
Design Automation Conference, 2006 43rd ACM/IEEE
Conference_Location :
San Francisco, CA
Print_ISBN :
1-59593-381-6
DOI :
10.1109/DAC.2006.229267