Efficient asynchronous interrupt handling in a full-system instruction set simulator

Tom Spink, Harry Wagstaff, Bjoern Franke

Research output: Chapter in Book/Report/Conference proceedingConference contribution

2 Citations (Scopus)
11 Downloads (Pure)

Abstract

Instruction set simulators (ISS) have many uses in embedded software and hardware development and are typically based on dynamic binary translation (DBT), where frequently executed regions of guest instructions are compiled into host instructions using a just-in-time (JIT) compiler. Full-system simulation, which necessitates handling of asynchronous interrupts from e.g. timers and I/O devices, complicates matters as control flow is interrupted unpredictably and diverted from the current region of code. In this paper we present a novel scheme for handling of asynchronous interrupts, which integrates seamlessly into a region-based dynamic binary translator. We first show that our scheme is correct, i.e. interrupt handling is not deferred indefinitely, even in the presence of code regions comprising control flow loops. We demonstrate that our new interrupt handling scheme is efficient as we minimise the number of inserted checks. Interrupt handlers are also presented to the JIT compiler and compiled to native code, further enhancing the performance of our system. We have evaluated our scheme in an ARM simulator using a region-based JIT compilation strategy. We demonstrate that our solution reduces the number of dynamic interrupt checks by 73%, reduces interrupt service latency by 26% and improves throughput of an I/O bound workload by 7%, over traditional per-block schemes.
Original languageEnglish
Title of host publication17th ACM SIGPLAN/SIGBED Conference on Languages, Compilers, Tools, and Theory for Embedded Systems
PublisherACM
Pages1-10
Number of pages10
ISBN (Print)9781450343169
DOIs
Publication statusPublished - 13 Jun 2016
Event17th ACM SIGPLAN/SIGBED Conference on Languages, Compilers, Tools, and Theory for Embedded Systems - Santa Barbara, United States
Duration: 13 Jun 201614 Jun 2016
Conference number: 17
https://conf.researchr.org/home/LCTES-2016

Conference

Conference17th ACM SIGPLAN/SIGBED Conference on Languages, Compilers, Tools, and Theory for Embedded Systems
Country/TerritoryUnited States
CitySanta Barbara
Period13/06/1614/06/16
Internet address

Fingerprint

Dive into the research topics of 'Efficient asynchronous interrupt handling in a full-system instruction set simulator'. Together they form a unique fingerprint.

Cite this