A LLVM Based Development Environment for Embedded Systems Software Targeting the RISCO Processor

Giuliano Vilela, E. Corrêa, M. Kreutz
{"title":"A LLVM Based Development Environment for Embedded Systems Software Targeting the RISCO Processor","authors":"Giuliano Vilela, E. Corrêa, M. Kreutz","doi":"10.1109/SBESC.2012.23","DOIUrl":null,"url":null,"abstract":"In this paper we describe the design and implementation of a compilation and code analysis toolchain for embedded systems software targeting the RISCO processor, using the LLVM project. Small systems embedded in a larger device are by far the most common kind of computational system in use today, deployed in various types of equipments. Because of their nature, an embedded system presents interesting size, efficiency and energy consumption restrictions, among others, that impose unique challenges on a project. In that scenario, the RISCO processor, a RISC architecture similar to MIPS, was created as a simple, efficient, processor that could prove to be a practical alternative to the available commercial options in its price range. The toolchain we developed permit the development, simulation and analysis of software in C and C++ for the RISCO platform, with open source tools. Besides compiling and executing high level code, the environment supports emitting control flow graphs for each module, enabling further analysis. As a case study on using CFGs and generated machine code information we developed a worst case execution time analysis tool for RISCO code. We discuss the scope of the tools, the design decisions involved in the development of the compilation and analysis system, and the results obtained through testing.","PeriodicalId":112286,"journal":{"name":"2012 Brazilian Symposium on Computing System Engineering","volume":"249 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-11-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2012 Brazilian Symposium on Computing System Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SBESC.2012.23","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

In this paper we describe the design and implementation of a compilation and code analysis toolchain for embedded systems software targeting the RISCO processor, using the LLVM project. Small systems embedded in a larger device are by far the most common kind of computational system in use today, deployed in various types of equipments. Because of their nature, an embedded system presents interesting size, efficiency and energy consumption restrictions, among others, that impose unique challenges on a project. In that scenario, the RISCO processor, a RISC architecture similar to MIPS, was created as a simple, efficient, processor that could prove to be a practical alternative to the available commercial options in its price range. The toolchain we developed permit the development, simulation and analysis of software in C and C++ for the RISCO platform, with open source tools. Besides compiling and executing high level code, the environment supports emitting control flow graphs for each module, enabling further analysis. As a case study on using CFGs and generated machine code information we developed a worst case execution time analysis tool for RISCO code. We discuss the scope of the tools, the design decisions involved in the development of the compilation and analysis system, and the results obtained through testing.
基于LLVM的RISCO处理器嵌入式系统软件开发环境
在本文中,我们描述了一个针对RISCO处理器的嵌入式系统软件的编译和代码分析工具链的设计和实现,使用LLVM项目。嵌入在大型设备中的小型系统是目前使用的最常见的计算系统,部署在各种类型的设备中。由于其性质,嵌入式系统呈现出有趣的大小、效率和能耗限制,以及其他限制,这给项目带来了独特的挑战。在这种情况下,RISCO处理器,一种类似于MIPS的RISC架构,被创建为一种简单,高效的处理器,可以证明是其价格范围内可用的商业选择的实用替代方案。我们开发的工具链允许使用开源工具在RISCO平台上用C和c++进行软件的开发、仿真和分析。除了编译和执行高级代码外,该环境还支持为每个模块发出控制流图,从而支持进一步的分析。作为使用CFGs和生成的机器码信息的案例研究,我们开发了一个RISCO代码的最坏情况执行时间分析工具。我们讨论了工具的范围,编译和分析系统开发中涉及的设计决策,以及通过测试获得的结果。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信