Word-level predicate-abstraction and refinement rechniques for verifying RTL Verilog

As a first step, most model checkers used in the hardware industry convert a high-level register-transfer-level (RTL) design into a netlist. However, algorithms that operate at the netlist level are unable to exploit the structure of the higher abstraction levels and, thus, are less scalable. The RT...

Szczegółowa specyfikacja

Opis bibliograficzny
Główni autorzy: Jain, H, Kroening, D, Sharygina, N, al., E
Format: Journal article
Wydane: Institute of Electrical and Electronics Engineers 2008
_version_ 1826303250030133248
author Jain, H
Kroening, D
Sharygina, N
al., E
author_facet Jain, H
Kroening, D
Sharygina, N
al., E
author_sort Jain, H
collection OXFORD
description As a first step, most model checkers used in the hardware industry convert a high-level register-transfer-level (RTL) design into a netlist. However, algorithms that operate at the netlist level are unable to exploit the structure of the higher abstraction levels and, thus, are less scalable. The RTL of a hardware description language such as Verilog is similar to a software program with special features for hardware design such as bit-vector arithmetic and concurrency. This paper uses predicate abstraction, a software verification technique, for verifying RTL Verilog. There are two challenges when applying predicate abstraction to circuits: 1) the computation of the abstract model in presence of a large number of predicates and 2) the discovery of suitable word-level predicates for abstraction refinement. We address the first problem using a technique called predicate clustering. We address the second problem by computing the weakest preconditions of Verilog statements in order to obtain new word-level predicates during abstraction refinement. We compare the performance of our technique with localization reduction, a netlist-level abstraction technique, and report improvements on a set of benchmarks.
first_indexed 2024-03-07T05:59:48Z
format Journal article
id oxford-uuid:ebc6ba1b-cfb7-46e5-a404-c93e21668076
institution University of Oxford
last_indexed 2024-03-07T05:59:48Z
publishDate 2008
publisher Institute of Electrical and Electronics Engineers
record_format dspace
spelling oxford-uuid:ebc6ba1b-cfb7-46e5-a404-c93e216680762022-03-27T11:12:26ZWord-level predicate-abstraction and refinement rechniques for verifying RTL VerilogJournal articlehttp://purl.org/coar/resource_type/c_dcae04bcuuid:ebc6ba1b-cfb7-46e5-a404-c93e21668076Symplectic Elements at OxfordInstitute of Electrical and Electronics Engineers2008Jain, HKroening, DSharygina, Nal., EAs a first step, most model checkers used in the hardware industry convert a high-level register-transfer-level (RTL) design into a netlist. However, algorithms that operate at the netlist level are unable to exploit the structure of the higher abstraction levels and, thus, are less scalable. The RTL of a hardware description language such as Verilog is similar to a software program with special features for hardware design such as bit-vector arithmetic and concurrency. This paper uses predicate abstraction, a software verification technique, for verifying RTL Verilog. There are two challenges when applying predicate abstraction to circuits: 1) the computation of the abstract model in presence of a large number of predicates and 2) the discovery of suitable word-level predicates for abstraction refinement. We address the first problem using a technique called predicate clustering. We address the second problem by computing the weakest preconditions of Verilog statements in order to obtain new word-level predicates during abstraction refinement. We compare the performance of our technique with localization reduction, a netlist-level abstraction technique, and report improvements on a set of benchmarks.
spellingShingle Jain, H
Kroening, D
Sharygina, N
al., E
Word-level predicate-abstraction and refinement rechniques for verifying RTL Verilog
title Word-level predicate-abstraction and refinement rechniques for verifying RTL Verilog
title_full Word-level predicate-abstraction and refinement rechniques for verifying RTL Verilog
title_fullStr Word-level predicate-abstraction and refinement rechniques for verifying RTL Verilog
title_full_unstemmed Word-level predicate-abstraction and refinement rechniques for verifying RTL Verilog
title_short Word-level predicate-abstraction and refinement rechniques for verifying RTL Verilog
title_sort word level predicate abstraction and refinement rechniques for verifying rtl verilog
work_keys_str_mv AT jainh wordlevelpredicateabstractionandrefinementrechniquesforverifyingrtlverilog
AT kroeningd wordlevelpredicateabstractionandrefinementrechniquesforverifyingrtlverilog
AT sharyginan wordlevelpredicateabstractionandrefinementrechniquesforverifyingrtlverilog
AT ale wordlevelpredicateabstractionandrefinementrechniquesforverifyingrtlverilog