Translating Java for resource constrained embedded systems
This paper discusses a strategy for translating the Java programming language to a form that is suitable for execution on resource limited embedded systems such as softcore processors in FPGAs, Network-on-Chip nodes and microcontrollers. The translation strategy prioritises the minimisation of runti...
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Tagungsbericht |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 8 |
---|---|
container_issue | |
container_start_page | 1 |
container_title | |
container_volume | |
creator | Plumbridge, G. Audsley, N. |
description | This paper discusses a strategy for translating the Java programming language to a form that is suitable for execution on resource limited embedded systems such as softcore processors in FPGAs, Network-on-Chip nodes and microcontrollers. The translation strategy prioritises the minimisation of runtime memory usage, generated code size, and suitability for a wide range of small architectures over other desirable goals such as execution speed and strict adherence to the Java standard. The translation procedure, or Concrete Hardware Implementation of a software application first converts the application's compiled Java class files to a self-contained intermediate representation conducive to optimisation and refactoring. The intermediate format is then serialised into a programming language compilable to the target architecture. This paper presents techniques for analysing whole Java applications, translating Java methods and building a stand-alone translated application with the same functional behaviour as the original Java. An example C-code generator is described and evaluated against similar previous approaches. An existing benchmark application, JavaBenchEmbedded, is demonstrated to require less than 30KiB of program code and 16KiB of runtime heap memory when executing on a Xilinx MicroBlaze Processor. |
doi_str_mv | 10.1109/ReCoSoC.2012.6322868 |
format | Conference Proceeding |
fullrecord | <record><control><sourceid>ieee_6IE</sourceid><recordid>TN_cdi_ieee_primary_6322868</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>6322868</ieee_id><sourcerecordid>6322868</sourcerecordid><originalsourceid>FETCH-LOGICAL-i175t-d9100fd7d19fbd44c003d350b5d63bf1fd47367429f9e48b936249f61eef2a13</originalsourceid><addsrcrecordid>eNpVj8tKxDAYhSMiKGOfQBd5gdb8SZqLOyleGRgYux-S5o9Upo0kVZi3d8DZeDbnO5sPDiG3wBoAZu-22KX31DWcAW-U4Nwoc0Yqqw1IpQVvNcjzf5vpS1KV8smOMVwYqa7IfZ_dXPZuGecP-uZ-HI0p04wlfecB6ZDmsmQ3zhgoTh5DOEI5lAWnck0uotsXrE69Iv3TY9-91OvN82v3sK5H0O1SBwuMxaAD2OiDlANjIoiW-TYo4SPEILVQWnIbLUrjrVBc2qgAMXIHYkVu_rQjIu6-8ji5fNidDotfvgZKOQ</addsrcrecordid><sourcetype>Publisher</sourcetype><iscdi>true</iscdi><recordtype>conference_proceeding</recordtype></control><display><type>conference_proceeding</type><title>Translating Java for resource constrained embedded systems</title><source>IEEE Electronic Library (IEL) Conference Proceedings</source><creator>Plumbridge, G. ; Audsley, N.</creator><creatorcontrib>Plumbridge, G. ; Audsley, N.</creatorcontrib><description>This paper discusses a strategy for translating the Java programming language to a form that is suitable for execution on resource limited embedded systems such as softcore processors in FPGAs, Network-on-Chip nodes and microcontrollers. The translation strategy prioritises the minimisation of runtime memory usage, generated code size, and suitability for a wide range of small architectures over other desirable goals such as execution speed and strict adherence to the Java standard. The translation procedure, or Concrete Hardware Implementation of a software application first converts the application's compiled Java class files to a self-contained intermediate representation conducive to optimisation and refactoring. The intermediate format is then serialised into a programming language compilable to the target architecture. This paper presents techniques for analysing whole Java applications, translating Java methods and building a stand-alone translated application with the same functional behaviour as the original Java. An example C-code generator is described and evaluated against similar previous approaches. An existing benchmark application, JavaBenchEmbedded, is demonstrated to require less than 30KiB of program code and 16KiB of runtime heap memory when executing on a Xilinx MicroBlaze Processor.</description><identifier>ISBN: 9781467325707</identifier><identifier>ISBN: 1467325708</identifier><identifier>EISBN: 9781467325714</identifier><identifier>EISBN: 1467325724</identifier><identifier>EISBN: 9781467325721</identifier><identifier>EISBN: 1467325716</identifier><identifier>DOI: 10.1109/ReCoSoC.2012.6322868</identifier><language>eng</language><publisher>IEEE</publisher><subject>Buildings ; Embedded systems ; Java ; Libraries ; Program processors ; Runtime</subject><ispartof>7th International Workshop on Reconfigurable and Communication-Centric Systems-on-Chip (ReCoSoC), 2012, p.1-8</ispartof><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/6322868$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>309,310,780,784,789,790,2058,27925,54920</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/6322868$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Plumbridge, G.</creatorcontrib><creatorcontrib>Audsley, N.</creatorcontrib><title>Translating Java for resource constrained embedded systems</title><title>7th International Workshop on Reconfigurable and Communication-Centric Systems-on-Chip (ReCoSoC)</title><addtitle>ReCoSoC</addtitle><description>This paper discusses a strategy for translating the Java programming language to a form that is suitable for execution on resource limited embedded systems such as softcore processors in FPGAs, Network-on-Chip nodes and microcontrollers. The translation strategy prioritises the minimisation of runtime memory usage, generated code size, and suitability for a wide range of small architectures over other desirable goals such as execution speed and strict adherence to the Java standard. The translation procedure, or Concrete Hardware Implementation of a software application first converts the application's compiled Java class files to a self-contained intermediate representation conducive to optimisation and refactoring. The intermediate format is then serialised into a programming language compilable to the target architecture. This paper presents techniques for analysing whole Java applications, translating Java methods and building a stand-alone translated application with the same functional behaviour as the original Java. An example C-code generator is described and evaluated against similar previous approaches. An existing benchmark application, JavaBenchEmbedded, is demonstrated to require less than 30KiB of program code and 16KiB of runtime heap memory when executing on a Xilinx MicroBlaze Processor.</description><subject>Buildings</subject><subject>Embedded systems</subject><subject>Java</subject><subject>Libraries</subject><subject>Program processors</subject><subject>Runtime</subject><isbn>9781467325707</isbn><isbn>1467325708</isbn><isbn>9781467325714</isbn><isbn>1467325724</isbn><isbn>9781467325721</isbn><isbn>1467325716</isbn><fulltext>true</fulltext><rsrctype>conference_proceeding</rsrctype><creationdate>2012</creationdate><recordtype>conference_proceeding</recordtype><sourceid>6IE</sourceid><sourceid>RIE</sourceid><recordid>eNpVj8tKxDAYhSMiKGOfQBd5gdb8SZqLOyleGRgYux-S5o9Upo0kVZi3d8DZeDbnO5sPDiG3wBoAZu-22KX31DWcAW-U4Nwoc0Yqqw1IpQVvNcjzf5vpS1KV8smOMVwYqa7IfZ_dXPZuGecP-uZ-HI0p04wlfecB6ZDmsmQ3zhgoTh5DOEI5lAWnck0uotsXrE69Iv3TY9-91OvN82v3sK5H0O1SBwuMxaAD2OiDlANjIoiW-TYo4SPEILVQWnIbLUrjrVBc2qgAMXIHYkVu_rQjIu6-8ji5fNidDotfvgZKOQ</recordid><startdate>201207</startdate><enddate>201207</enddate><creator>Plumbridge, G.</creator><creator>Audsley, N.</creator><general>IEEE</general><scope>6IE</scope><scope>6IL</scope><scope>CBEJK</scope><scope>RIE</scope><scope>RIL</scope></search><sort><creationdate>201207</creationdate><title>Translating Java for resource constrained embedded systems</title><author>Plumbridge, G. ; Audsley, N.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-i175t-d9100fd7d19fbd44c003d350b5d63bf1fd47367429f9e48b936249f61eef2a13</frbrgroupid><rsrctype>conference_proceedings</rsrctype><prefilter>conference_proceedings</prefilter><language>eng</language><creationdate>2012</creationdate><topic>Buildings</topic><topic>Embedded systems</topic><topic>Java</topic><topic>Libraries</topic><topic>Program processors</topic><topic>Runtime</topic><toplevel>online_resources</toplevel><creatorcontrib>Plumbridge, G.</creatorcontrib><creatorcontrib>Audsley, N.</creatorcontrib><collection>IEEE Electronic Library (IEL) Conference Proceedings</collection><collection>IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume</collection><collection>IEEE Xplore All Conference Proceedings</collection><collection>IEEE Electronic Library (IEL)</collection><collection>IEEE Proceedings Order Plans (POP All) 1998-Present</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Plumbridge, G.</au><au>Audsley, N.</au><format>book</format><genre>proceeding</genre><ristype>CONF</ristype><atitle>Translating Java for resource constrained embedded systems</atitle><btitle>7th International Workshop on Reconfigurable and Communication-Centric Systems-on-Chip (ReCoSoC)</btitle><stitle>ReCoSoC</stitle><date>2012-07</date><risdate>2012</risdate><spage>1</spage><epage>8</epage><pages>1-8</pages><isbn>9781467325707</isbn><isbn>1467325708</isbn><eisbn>9781467325714</eisbn><eisbn>1467325724</eisbn><eisbn>9781467325721</eisbn><eisbn>1467325716</eisbn><abstract>This paper discusses a strategy for translating the Java programming language to a form that is suitable for execution on resource limited embedded systems such as softcore processors in FPGAs, Network-on-Chip nodes and microcontrollers. The translation strategy prioritises the minimisation of runtime memory usage, generated code size, and suitability for a wide range of small architectures over other desirable goals such as execution speed and strict adherence to the Java standard. The translation procedure, or Concrete Hardware Implementation of a software application first converts the application's compiled Java class files to a self-contained intermediate representation conducive to optimisation and refactoring. The intermediate format is then serialised into a programming language compilable to the target architecture. This paper presents techniques for analysing whole Java applications, translating Java methods and building a stand-alone translated application with the same functional behaviour as the original Java. An example C-code generator is described and evaluated against similar previous approaches. An existing benchmark application, JavaBenchEmbedded, is demonstrated to require less than 30KiB of program code and 16KiB of runtime heap memory when executing on a Xilinx MicroBlaze Processor.</abstract><pub>IEEE</pub><doi>10.1109/ReCoSoC.2012.6322868</doi><tpages>8</tpages></addata></record> |
fulltext | fulltext_linktorsrc |
identifier | ISBN: 9781467325707 |
ispartof | 7th International Workshop on Reconfigurable and Communication-Centric Systems-on-Chip (ReCoSoC), 2012, p.1-8 |
issn | |
language | eng |
recordid | cdi_ieee_primary_6322868 |
source | IEEE Electronic Library (IEL) Conference Proceedings |
subjects | Buildings Embedded systems Java Libraries Program processors Runtime |
title | Translating Java for resource constrained embedded systems |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-06T22%3A48%3A20IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-ieee_6IE&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=proceeding&rft.atitle=Translating%20Java%20for%20resource%20constrained%20embedded%20systems&rft.btitle=7th%20International%20Workshop%20on%20Reconfigurable%20and%20Communication-Centric%20Systems-on-Chip%20(ReCoSoC)&rft.au=Plumbridge,%20G.&rft.date=2012-07&rft.spage=1&rft.epage=8&rft.pages=1-8&rft.isbn=9781467325707&rft.isbn_list=1467325708&rft_id=info:doi/10.1109/ReCoSoC.2012.6322868&rft_dat=%3Cieee_6IE%3E6322868%3C/ieee_6IE%3E%3Curl%3E%3C/url%3E&rft.eisbn=9781467325714&rft.eisbn_list=1467325724&rft.eisbn_list=9781467325721&rft.eisbn_list=1467325716&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rft_ieee_id=6322868&rfr_iscdi=true |