Exploring Software Partitions for Fast Security Processing on a Multiprocessor Mobile SoC

The functionality of mobile devices, such as cell phones and personal digital assistants (PDAs), has evolved to include various applications where security is a critical concern (secure web transactions, mobile commerce, download and playback of protected audio/video content, connection to corporate...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE transactions on very large scale integration (VLSI) systems 2007-06, Vol.15 (6), p.699-710
Hauptverfasser: Arora, D., Raghunathan, A., Ravi, S., Sankaradass, M., Jha, N.K., Chakradhar, S.T.
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 710
container_issue 6
container_start_page 699
container_title IEEE transactions on very large scale integration (VLSI) systems
container_volume 15
creator Arora, D.
Raghunathan, A.
Ravi, S.
Sankaradass, M.
Jha, N.K.
Chakradhar, S.T.
description The functionality of mobile devices, such as cell phones and personal digital assistants (PDAs), has evolved to include various applications where security is a critical concern (secure web transactions, mobile commerce, download and playback of protected audio/video content, connection to corporate private networks, etc.). Security mechanisms (e.g., secure communication protocols) involve cryptographic algorithms, and are often quite computationally intensive, challenging the constrained processing and battery resources of mobile devices. Extensive design effort and aggressive hardware and software optimizations are required to address this challenge. Previous work has addressed the design of hardware architectures (custom accelerators, domain-specific processors, etc.) to accelerate security processing, and many emerging systems-on-chip (SoCs) feature some form of hardware support for security. In this paper, we address the complementary problem of mapping a complex security software library to an SoC platform with security hardware enhancements. We present a systematic methodology for exploring the software architecture for security processing for a commercial heterogeneous multiprocessor 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: 1) the use of real performance measurements from a prototyping board, which contains the target platform, to drive the exploration; 2) a new data structure access profiling framework that allows us to accurately model the communication overheads involved in off loading a given set of functions to the security processor; and 3) 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.5 times speed-up for individual cryptographic operations (encryption, hashing) and 2.2-6.2 times speed-up for applications such as a digital rights
doi_str_mv 10.1109/TVLSI.2007.898740
format Article
fullrecord <record><control><sourceid>proquest_RIE</sourceid><recordid>TN_cdi_proquest_miscellaneous_1671325640</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>4231875</ieee_id><sourcerecordid>2544981561</sourcerecordid><originalsourceid>FETCH-LOGICAL-c452t-267e99d46bc5b5705db08b6f450c73ba46ec612cc4146f3348f951b4f3ea3b863</originalsourceid><addsrcrecordid>eNp9kVtrGzEQhZeSQHPpDyh9WQIpeVlHl9HtMRi7DTgk4LTQJ6FVpCCzXjnSLmn-feVsSKEPnZcZNN85jDhV9RmjGcZIXd7_XK2vZwQhMZNKCkAfqiPMmGhUqYMyI04bSTD6WB3nvEEIAyh0VP1a_N51MYX-sV5HPzyb5Oo7k4YwhNjn2sdUL00e6rWzYwrDS32XonU57wWxr019M3ZD2E2PBb6Jbehc8ZqfVofedNl9eusn1Y_l4n7-vVndfrueX60aC4wMDeHCKfUAvLWsZQKxhxbJlntgyAraGuDOckysBQzcUwrSK4Zb8NQZ2kpOT6qvk2854ml0edDbkK3rOtO7OGZNQWBJQBTw4r8g5gJTwjiggp79g27imPryDa0wIQyQhALhCbIp5pyc17sUtia9aIz0PhT9Goreh6KnUIrm_M3YZGs6n0xvQ_4rlJJyRffeXyYuOOfe10AoloLRP2IJlNY</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>912254084</pqid></control><display><type>article</type><title>Exploring Software Partitions for Fast Security Processing on a Multiprocessor Mobile SoC</title><source>IEEE Electronic Library (IEL)</source><creator>Arora, D. ; Raghunathan, A. ; Ravi, S. ; Sankaradass, M. ; Jha, N.K. ; Chakradhar, S.T.</creator><creatorcontrib>Arora, D. ; Raghunathan, A. ; Ravi, S. ; Sankaradass, M. ; Jha, N.K. ; Chakradhar, S.T.</creatorcontrib><description>The functionality of mobile devices, such as cell phones and personal digital assistants (PDAs), has evolved to include various applications where security is a critical concern (secure web transactions, mobile commerce, download and playback of protected audio/video content, connection to corporate private networks, etc.). Security mechanisms (e.g., secure communication protocols) involve cryptographic algorithms, and are often quite computationally intensive, challenging the constrained processing and battery resources of mobile devices. Extensive design effort and aggressive hardware and software optimizations are required to address this challenge. Previous work has addressed the design of hardware architectures (custom accelerators, domain-specific processors, etc.) to accelerate security processing, and many emerging systems-on-chip (SoCs) feature some form of hardware support for security. In this paper, we address the complementary problem of mapping a complex security software library to an SoC platform with security hardware enhancements. We present a systematic methodology for exploring the software architecture for security processing for a commercial heterogeneous multiprocessor 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: 1) the use of real performance measurements from a prototyping board, which contains the target platform, to drive the exploration; 2) a new data structure access profiling framework that allows us to accurately model the communication overheads involved in off loading a given set of functions to the security processor; and 3) 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.5 times speed-up for individual cryptographic operations (encryption, hashing) and 2.2-6.2 times speed-up 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.</description><identifier>ISSN: 1063-8210</identifier><identifier>EISSN: 1557-9999</identifier><identifier>DOI: 10.1109/TVLSI.2007.898740</identifier><identifier>CODEN: IEVSE9</identifier><language>eng</language><publisher>Piscataway, NJ: IEEE</publisher><subject>Application software ; Applied sciences ; Cellular phones ; Computer programs ; Cryptography ; Data security ; Data structures ; Design engineering ; Design optimization ; Design. Technologies. Operation analysis. Testing ; Electronic fund transfer ; Electronics ; Embedded processors ; Exact sciences and technology ; Hardware ; Integrated circuits ; Integrated circuits by function (including memories and processors) ; Libraries ; Methodology ; Mobile commerce ; Personal digital assistants ; Private networks ; Processors ; Security ; security and protection ; Semiconductor electronics. Microelectronics. Optoelectronics. Solid state devices ; Software ; Software architecture ; Software libraries ; software partitioning ; Space exploration</subject><ispartof>IEEE transactions on very large scale integration (VLSI) systems, 2007-06, Vol.15 (6), p.699-710</ispartof><rights>2007 INIST-CNRS</rights><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2007</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c452t-267e99d46bc5b5705db08b6f450c73ba46ec612cc4146f3348f951b4f3ea3b863</citedby><cites>FETCH-LOGICAL-c452t-267e99d46bc5b5705db08b6f450c73ba46ec612cc4146f3348f951b4f3ea3b863</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/4231875$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>314,780,784,796,27924,27925,54758</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/4231875$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc><backlink>$$Uhttp://pascal-francis.inist.fr/vibad/index.php?action=getRecordDetail&amp;idt=18836934$$DView record in Pascal Francis$$Hfree_for_read</backlink></links><search><creatorcontrib>Arora, D.</creatorcontrib><creatorcontrib>Raghunathan, A.</creatorcontrib><creatorcontrib>Ravi, S.</creatorcontrib><creatorcontrib>Sankaradass, M.</creatorcontrib><creatorcontrib>Jha, N.K.</creatorcontrib><creatorcontrib>Chakradhar, S.T.</creatorcontrib><title>Exploring Software Partitions for Fast Security Processing on a Multiprocessor Mobile SoC</title><title>IEEE transactions on very large scale integration (VLSI) systems</title><addtitle>TVLSI</addtitle><description>The functionality of mobile devices, such as cell phones and personal digital assistants (PDAs), has evolved to include various applications where security is a critical concern (secure web transactions, mobile commerce, download and playback of protected audio/video content, connection to corporate private networks, etc.). Security mechanisms (e.g., secure communication protocols) involve cryptographic algorithms, and are often quite computationally intensive, challenging the constrained processing and battery resources of mobile devices. Extensive design effort and aggressive hardware and software optimizations are required to address this challenge. Previous work has addressed the design of hardware architectures (custom accelerators, domain-specific processors, etc.) to accelerate security processing, and many emerging systems-on-chip (SoCs) feature some form of hardware support for security. In this paper, we address the complementary problem of mapping a complex security software library to an SoC platform with security hardware enhancements. We present a systematic methodology for exploring the software architecture for security processing for a commercial heterogeneous multiprocessor 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: 1) the use of real performance measurements from a prototyping board, which contains the target platform, to drive the exploration; 2) a new data structure access profiling framework that allows us to accurately model the communication overheads involved in off loading a given set of functions to the security processor; and 3) 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.5 times speed-up for individual cryptographic operations (encryption, hashing) and 2.2-6.2 times speed-up 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.</description><subject>Application software</subject><subject>Applied sciences</subject><subject>Cellular phones</subject><subject>Computer programs</subject><subject>Cryptography</subject><subject>Data security</subject><subject>Data structures</subject><subject>Design engineering</subject><subject>Design optimization</subject><subject>Design. Technologies. Operation analysis. Testing</subject><subject>Electronic fund transfer</subject><subject>Electronics</subject><subject>Embedded processors</subject><subject>Exact sciences and technology</subject><subject>Hardware</subject><subject>Integrated circuits</subject><subject>Integrated circuits by function (including memories and processors)</subject><subject>Libraries</subject><subject>Methodology</subject><subject>Mobile commerce</subject><subject>Personal digital assistants</subject><subject>Private networks</subject><subject>Processors</subject><subject>Security</subject><subject>security and protection</subject><subject>Semiconductor electronics. Microelectronics. Optoelectronics. Solid state devices</subject><subject>Software</subject><subject>Software architecture</subject><subject>Software libraries</subject><subject>software partitioning</subject><subject>Space exploration</subject><issn>1063-8210</issn><issn>1557-9999</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2007</creationdate><recordtype>article</recordtype><sourceid>RIE</sourceid><recordid>eNp9kVtrGzEQhZeSQHPpDyh9WQIpeVlHl9HtMRi7DTgk4LTQJ6FVpCCzXjnSLmn-feVsSKEPnZcZNN85jDhV9RmjGcZIXd7_XK2vZwQhMZNKCkAfqiPMmGhUqYMyI04bSTD6WB3nvEEIAyh0VP1a_N51MYX-sV5HPzyb5Oo7k4YwhNjn2sdUL00e6rWzYwrDS32XonU57wWxr019M3ZD2E2PBb6Jbehc8ZqfVofedNl9eusn1Y_l4n7-vVndfrueX60aC4wMDeHCKfUAvLWsZQKxhxbJlntgyAraGuDOckysBQzcUwrSK4Zb8NQZ2kpOT6qvk2854ml0edDbkK3rOtO7OGZNQWBJQBTw4r8g5gJTwjiggp79g27imPryDa0wIQyQhALhCbIp5pyc17sUtia9aIz0PhT9Goreh6KnUIrm_M3YZGs6n0xvQ_4rlJJyRffeXyYuOOfe10AoloLRP2IJlNY</recordid><startdate>20070601</startdate><enddate>20070601</enddate><creator>Arora, D.</creator><creator>Raghunathan, A.</creator><creator>Ravi, S.</creator><creator>Sankaradass, M.</creator><creator>Jha, N.K.</creator><creator>Chakradhar, S.T.</creator><general>IEEE</general><general>Institute of Electrical and Electronics Engineers</general><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>97E</scope><scope>RIA</scope><scope>RIE</scope><scope>IQODW</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>7SP</scope><scope>8FD</scope><scope>L7M</scope><scope>F28</scope><scope>FR3</scope></search><sort><creationdate>20070601</creationdate><title>Exploring Software Partitions for Fast Security Processing on a Multiprocessor Mobile SoC</title><author>Arora, D. ; Raghunathan, A. ; Ravi, S. ; Sankaradass, M. ; Jha, N.K. ; Chakradhar, S.T.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c452t-267e99d46bc5b5705db08b6f450c73ba46ec612cc4146f3348f951b4f3ea3b863</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2007</creationdate><topic>Application software</topic><topic>Applied sciences</topic><topic>Cellular phones</topic><topic>Computer programs</topic><topic>Cryptography</topic><topic>Data security</topic><topic>Data structures</topic><topic>Design engineering</topic><topic>Design optimization</topic><topic>Design. Technologies. Operation analysis. Testing</topic><topic>Electronic fund transfer</topic><topic>Electronics</topic><topic>Embedded processors</topic><topic>Exact sciences and technology</topic><topic>Hardware</topic><topic>Integrated circuits</topic><topic>Integrated circuits by function (including memories and processors)</topic><topic>Libraries</topic><topic>Methodology</topic><topic>Mobile commerce</topic><topic>Personal digital assistants</topic><topic>Private networks</topic><topic>Processors</topic><topic>Security</topic><topic>security and protection</topic><topic>Semiconductor electronics. Microelectronics. Optoelectronics. Solid state devices</topic><topic>Software</topic><topic>Software architecture</topic><topic>Software libraries</topic><topic>software partitioning</topic><topic>Space exploration</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Arora, D.</creatorcontrib><creatorcontrib>Raghunathan, A.</creatorcontrib><creatorcontrib>Ravi, S.</creatorcontrib><creatorcontrib>Sankaradass, M.</creatorcontrib><creatorcontrib>Jha, N.K.</creatorcontrib><creatorcontrib>Chakradhar, S.T.</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>Pascal-Francis</collection><collection>CrossRef</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Technology Research Database</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>ANTE: Abstracts in New Technology &amp; Engineering</collection><collection>Engineering Research Database</collection><jtitle>IEEE transactions on very large scale integration (VLSI) systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Arora, D.</au><au>Raghunathan, A.</au><au>Ravi, S.</au><au>Sankaradass, M.</au><au>Jha, N.K.</au><au>Chakradhar, S.T.</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Exploring Software Partitions for Fast Security Processing on a Multiprocessor Mobile SoC</atitle><jtitle>IEEE transactions on very large scale integration (VLSI) systems</jtitle><stitle>TVLSI</stitle><date>2007-06-01</date><risdate>2007</risdate><volume>15</volume><issue>6</issue><spage>699</spage><epage>710</epage><pages>699-710</pages><issn>1063-8210</issn><eissn>1557-9999</eissn><coden>IEVSE9</coden><abstract>The functionality of mobile devices, such as cell phones and personal digital assistants (PDAs), has evolved to include various applications where security is a critical concern (secure web transactions, mobile commerce, download and playback of protected audio/video content, connection to corporate private networks, etc.). Security mechanisms (e.g., secure communication protocols) involve cryptographic algorithms, and are often quite computationally intensive, challenging the constrained processing and battery resources of mobile devices. Extensive design effort and aggressive hardware and software optimizations are required to address this challenge. Previous work has addressed the design of hardware architectures (custom accelerators, domain-specific processors, etc.) to accelerate security processing, and many emerging systems-on-chip (SoCs) feature some form of hardware support for security. In this paper, we address the complementary problem of mapping a complex security software library to an SoC platform with security hardware enhancements. We present a systematic methodology for exploring the software architecture for security processing for a commercial heterogeneous multiprocessor 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: 1) the use of real performance measurements from a prototyping board, which contains the target platform, to drive the exploration; 2) a new data structure access profiling framework that allows us to accurately model the communication overheads involved in off loading a given set of functions to the security processor; and 3) 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.5 times speed-up for individual cryptographic operations (encryption, hashing) and 2.2-6.2 times speed-up 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.</abstract><cop>Piscataway, NJ</cop><pub>IEEE</pub><doi>10.1109/TVLSI.2007.898740</doi><tpages>12</tpages></addata></record>
fulltext fulltext_linktorsrc
identifier ISSN: 1063-8210
ispartof IEEE transactions on very large scale integration (VLSI) systems, 2007-06, Vol.15 (6), p.699-710
issn 1063-8210
1557-9999
language eng
recordid cdi_proquest_miscellaneous_1671325640
source IEEE Electronic Library (IEL)
subjects Application software
Applied sciences
Cellular phones
Computer programs
Cryptography
Data security
Data structures
Design engineering
Design optimization
Design. Technologies. Operation analysis. Testing
Electronic fund transfer
Electronics
Embedded processors
Exact sciences and technology
Hardware
Integrated circuits
Integrated circuits by function (including memories and processors)
Libraries
Methodology
Mobile commerce
Personal digital assistants
Private networks
Processors
Security
security and protection
Semiconductor electronics. Microelectronics. Optoelectronics. Solid state devices
Software
Software architecture
Software libraries
software partitioning
Space exploration
title Exploring Software Partitions for Fast Security Processing on a Multiprocessor Mobile SoC
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-20T09%3A50%3A37IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_RIE&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Exploring%20Software%20Partitions%20for%20Fast%20Security%20Processing%20on%20a%20Multiprocessor%20Mobile%20SoC&rft.jtitle=IEEE%20transactions%20on%20very%20large%20scale%20integration%20(VLSI)%20systems&rft.au=Arora,%20D.&rft.date=2007-06-01&rft.volume=15&rft.issue=6&rft.spage=699&rft.epage=710&rft.pages=699-710&rft.issn=1063-8210&rft.eissn=1557-9999&rft.coden=IEVSE9&rft_id=info:doi/10.1109/TVLSI.2007.898740&rft_dat=%3Cproquest_RIE%3E2544981561%3C/proquest_RIE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=912254084&rft_id=info:pmid/&rft_ieee_id=4231875&rfr_iscdi=true