Formal techniques for effective co-verification of hardware/software co-designs

Verification is indispensable for building reliable of hardware/software co-designs. However, the scope of formal methods in this domain is limited. This is attributed to the lack of unified property specification languages, the semantic gap between hardware and software components, and the lack of...

Description complète

Détails bibliographiques
Auteurs principaux: Mukherjee, R, Purandare, M, Polig, R, Kroening, D
Format: Conference item
Publié: Association for Computing Machinery 2017
_version_ 1826256761759203328
author Mukherjee, R
Purandare, M
Polig, R
Kroening, D
author_facet Mukherjee, R
Purandare, M
Polig, R
Kroening, D
author_sort Mukherjee, R
collection OXFORD
description Verification is indispensable for building reliable of hardware/software co-designs. However, the scope of formal methods in this domain is limited. This is attributed to the lack of unified property specification languages, the semantic gap between hardware and software components, and the lack of verifiers that support both C and Verilog/VHDL. To address these limitations, we present an approach that uses a bounded co-verification tool, HW-CBMC, for formally validating hardware/software co-designs written in Verilog and C. Properties are expressed in C enriched with special-purpose primitives that capture temporal correlation between hardware and software events. We present an industrial case-study, proving bounded safety properties as well as discovering critical co-design bugs on a large and complex text analytics FPGA accelerator from IBM.
first_indexed 2024-03-06T18:07:23Z
format Conference item
id oxford-uuid:01e3de52-a922-409a-b526-f3265bec195f
institution University of Oxford
last_indexed 2024-03-06T18:07:23Z
publishDate 2017
publisher Association for Computing Machinery
record_format dspace
spelling oxford-uuid:01e3de52-a922-409a-b526-f3265bec195f2022-03-26T08:37:30ZFormal techniques for effective co-verification of hardware/software co-designsConference itemhttp://purl.org/coar/resource_type/c_5794uuid:01e3de52-a922-409a-b526-f3265bec195fSymplectic Elements at OxfordAssociation for Computing Machinery2017Mukherjee, RPurandare, MPolig, RKroening, DVerification is indispensable for building reliable of hardware/software co-designs. However, the scope of formal methods in this domain is limited. This is attributed to the lack of unified property specification languages, the semantic gap between hardware and software components, and the lack of verifiers that support both C and Verilog/VHDL. To address these limitations, we present an approach that uses a bounded co-verification tool, HW-CBMC, for formally validating hardware/software co-designs written in Verilog and C. Properties are expressed in C enriched with special-purpose primitives that capture temporal correlation between hardware and software events. We present an industrial case-study, proving bounded safety properties as well as discovering critical co-design bugs on a large and complex text analytics FPGA accelerator from IBM.
spellingShingle Mukherjee, R
Purandare, M
Polig, R
Kroening, D
Formal techniques for effective co-verification of hardware/software co-designs
title Formal techniques for effective co-verification of hardware/software co-designs
title_full Formal techniques for effective co-verification of hardware/software co-designs
title_fullStr Formal techniques for effective co-verification of hardware/software co-designs
title_full_unstemmed Formal techniques for effective co-verification of hardware/software co-designs
title_short Formal techniques for effective co-verification of hardware/software co-designs
title_sort formal techniques for effective co verification of hardware software co designs
work_keys_str_mv AT mukherjeer formaltechniquesforeffectivecoverificationofhardwaresoftwarecodesigns
AT purandarem formaltechniquesforeffectivecoverificationofhardwaresoftwarecodesigns
AT poligr formaltechniquesforeffectivecoverificationofhardwaresoftwarecodesigns
AT kroeningd formaltechniquesforeffectivecoverificationofhardwaresoftwarecodesigns