---
_id: '27841'
abstract:
- lang: eng
  text: Verification of software and processor hardware usually proceeds separately,
    software analysis relying on the correctness of processors executing machine instructions.
    This assumption is valid as long as the software runs on standard CPUs that have
    been extensively validated and are in wide use. However, for processors exploiting
    custom instruction set extensions to meet performance and energy constraints the
    validation might be less extensive, challenging the correctness assumption. In
    this paper we present a novel formal approach for hardware/software co-verification
    targeting processors with custom instruction set extensions. We detail two different
    approaches for checking whether the hardware fulfills the requirements expected
    by the software analysis. The approaches are designed to explore a trade-off between
    generality of the verification and computational effort. Then, we describe the
    integration of software and hardware analyses for both techniques and describe
    a fully automated tool chain implementing the approaches. Finally, we demonstrate
    and compare the two approaches on example source code with custom instructions,
    using state-of-the-art software analysis and hardware verification techniques.
author:
- first_name: Marie-Christine
  full_name: Jakobs, Marie-Christine
  last_name: Jakobs
- first_name: Felix
  full_name: Pauck, Felix
  id: '22398'
  last_name: Pauck
- first_name: Marco
  full_name: Platzner, Marco
  id: '398'
  last_name: Platzner
- first_name: Heike
  full_name: Wehrheim, Heike
  id: '573'
  last_name: Wehrheim
- first_name: Tobias
  full_name: Wiersema, Tobias
  id: '3118'
  last_name: Wiersema
citation:
  ama: Jakobs M-C, Pauck F, Platzner M, Wehrheim H, Wiersema T. Software/Hardware
    Co-Verification for Custom Instruction Set Processors. <i>IEEE Access</i>. Published
    online 2021. doi:<a href="https://doi.org/10.1109/ACCESS.2021.3131213">10.1109/ACCESS.2021.3131213</a>
  apa: Jakobs, M.-C., Pauck, F., Platzner, M., Wehrheim, H., &#38; Wiersema, T. (2021).
    Software/Hardware Co-Verification for Custom Instruction Set Processors. <i>IEEE
    Access</i>. <a href="https://doi.org/10.1109/ACCESS.2021.3131213">https://doi.org/10.1109/ACCESS.2021.3131213</a>
  bibtex: '@article{Jakobs_Pauck_Platzner_Wehrheim_Wiersema_2021, title={Software/Hardware
    Co-Verification for Custom Instruction Set Processors}, DOI={<a href="https://doi.org/10.1109/ACCESS.2021.3131213">10.1109/ACCESS.2021.3131213</a>},
    journal={IEEE Access}, publisher={IEEE}, author={Jakobs, Marie-Christine and Pauck,
    Felix and Platzner, Marco and Wehrheim, Heike and Wiersema, Tobias}, year={2021}
    }'
  chicago: Jakobs, Marie-Christine, Felix Pauck, Marco Platzner, Heike Wehrheim, and
    Tobias Wiersema. “Software/Hardware Co-Verification for Custom Instruction Set
    Processors.” <i>IEEE Access</i>, 2021. <a href="https://doi.org/10.1109/ACCESS.2021.3131213">https://doi.org/10.1109/ACCESS.2021.3131213</a>.
  ieee: 'M.-C. Jakobs, F. Pauck, M. Platzner, H. Wehrheim, and T. Wiersema, “Software/Hardware
    Co-Verification for Custom Instruction Set Processors,” <i>IEEE Access</i>, 2021,
    doi: <a href="https://doi.org/10.1109/ACCESS.2021.3131213">10.1109/ACCESS.2021.3131213</a>.'
  mla: Jakobs, Marie-Christine, et al. “Software/Hardware Co-Verification for Custom
    Instruction Set Processors.” <i>IEEE Access</i>, IEEE, 2021, doi:<a href="https://doi.org/10.1109/ACCESS.2021.3131213">10.1109/ACCESS.2021.3131213</a>.
  short: M.-C. Jakobs, F. Pauck, M. Platzner, H. Wehrheim, T. Wiersema, IEEE Access
    (2021).
date_created: 2021-11-25T14:12:22Z
date_updated: 2023-01-18T08:34:50Z
department:
- _id: '78'
doi: 10.1109/ACCESS.2021.3131213
funded_apc: '1'
keyword:
- Software Analysis
- Abstract Interpretation
- Custom Instruction
- Hardware Verification
language:
- iso: eng
project:
- _id: '1'
  name: SFB 901
- _id: '3'
  name: SFB 901 - Project Area B
- _id: '12'
  name: SFB 901 - Subproject B4
publication: IEEE Access
publication_status: published
publisher: IEEE
quality_controlled: '1'
status: public
title: Software/Hardware Co-Verification for Custom Instruction Set Processors
type: journal_article
user_id: '22398'
year: '2021'
...
