skip to main content
10.1145/3589610.3596282acmconferencesArticle/Chapter ViewAbstractPublication PagescpsweekConference Proceedingsconference-collections
research-article
Public Access

Facilitating the Bootstrapping of a New ISA

Published: 13 June 2023 Publication History

Abstract

Implementation of a new instruction set architecture (ISA) is a non-trivial task that involves significant modifications to the system software, such as the compiler, the assembler, and the linker. This task also includes modifying and verifying functional and cycle accurate simulators to facilitate performance evaluation of programs under the new ISA. Isolating errors in these software components becomes extremely challenging and demands automated and semi-automated mechanisms since neither the compilation infrastructure nor the simulation infrastructure can be trusted as both parties have been heavily modified. Bootstrapping a new ISA is very common in embedded systems since there is a greater variety of embedded ISAs due to often not having a need to support backward compatibility of executables. In this paper, we present the tools and the verification mechanisms we have implemented to support the development of a number of related, but distinct ISAs. Our work in developing the system software and simulators for these ISAs demonstrate that a step-by-step semi-automated approach which relies on simple invariants can facilitate effective bootstrapping of the complete system software and the simulator infrastructure.

References

[1]
[n. d.]. LLVM bugpoint tool: design and usage. https://llvm.org/docs/Bugpoint.html
[2]
2019-2023. Statically Controlled Asynchronous Lane Execution (SCALE) Project. In Division of Computing and Communication Foundations (CCF). National Science Foundation Grants CCF-1900788 and CCF-1901005.
[3]
A.Pnueli, M. Siegel, and F. Singerman. 1998. Translation Validation. In Proceedings of TACAS ’98. 151–166 pages.
[4]
M Beardo, Francesco Bruschi, Fabrizio Ferrandi, and Donatella Sciuto. 2000. An approach to functional testing of VLIW architectures. In Proceedings IEEE International High-Level Design Validation and Test Workshop (Cat. No. PR00786). 29–33.
[5]
M. R. Boyd and D. B. Whalley. 1993. Isolation and Analysis of Optimization Errors. In Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation. 26–35.
[6]
J. Caron and P. Darnell. 1990. Bugfind: A Tool for Debugging Optimizing Compilers. SIGPLAN Notices, 25, 1 (1990), Jan., 17–22.
[7]
J. Chen, J. Patra, M. Pradel, Y. Xiong, H. Zhang, D. Hao, and L. Zhang. 2020. A Survey of Compiler Testing. Comput. Surveys, 53, 1 (2020), May, 1–36.
[8]
J. A. Fisher. 1983. Very Long Instruction Word architectures and the ELI-512. In Proc. Int. Symp. on Computer Architecture. ACM, New York, NY, USA. 140–150.
[9]
B. Glamm and D.J. Lilja. 2001. Automatic verification of instruction set simulation using synchronized state comparison. In Proceedings. 34th Annual Simulation Symposium. 72–77. https://doi.org/10.1109/SIMSYM.2001.922117
[10]
Soner Önder and Rajiv Gupta. 1998. Automatic generation of microarchitecture simulators. In IEEE International Conference on Computer Languages. Chicago. 80–89.
[11]
D. B. Whalley. 1994. Automatic Isolation of Compiler Errors. ACM Transactions on Programming Languages and Systems, 16, 5 (1994), September, 1648–1659.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
LCTES 2023: Proceedings of the 24th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems
June 2023
147 pages
ISBN:9798400701740
DOI:10.1145/3589610
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 13 June 2023

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. compiler optimization
  2. instruction set architecture
  3. instruction set simulation

Qualifiers

  • Research-article

Funding Sources

Conference

LCTES '23

Acceptance Rates

Overall Acceptance Rate 116 of 438 submissions, 26%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 111
    Total Downloads
  • Downloads (Last 12 months)53
  • Downloads (Last 6 weeks)11
Reflects downloads up to 30 Jan 2025

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media