Equivalence Checking a Floating-point Unit against a High-level C Model (Extended Version)

نویسندگان

  • Rajdeep Mukherjee
  • Saurabh Joshi
  • Andreas Griesmayer
  • Daniel Kroening
  • Thomas F. Melham
چکیده

Semiconductor companies have increasingly adopted a methodology that starts with a system-level design specification in C/C++/SystemC. This model is extensively simulated to ensure correct functionality and performance. Later, a Register Transfer Level (RTL) implementation is created in Verilog, either manually by a designer or automatically by a high-level synthesis tool. It is essential to check that the C and Verilog programs are consistent. In this paper, we present a two-step approach, embodied in two equivalence checking tools, VERIFOX and HW-CBMC, to validate designs at the software and RTL levels, respectively. VERIFOX is used for equivalence checking of an untimed software model in C against a high-level reference model in C. HW-CBMC verifies the equivalence of a Verilog RTL implementation against an untimed software model in C. To evaluate our tools, we applied them to a commercial floating-point arithmetic unit (FPU) from ARM and an open-source dual-path floating-point adder.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Equivalence Checking of a Floating-Point Unit Against a High-Level C Model

Semiconductor companies have increasingly adopted a methodology that starts with a system-level design specification in C/C++/SystemC. This model is extensively simulated to ensure correct functionality and performance. Later, a Register Transfer Level (RTL) implementation is created in Verilog, either manually by a designer or automatically by a high-level synthesis tool. It is essential to ch...

متن کامل

Verification of All Circuits in a Floating-Point Unit Using Word-Level Model Checking

1 I n t r o d u c t i o n The floating-point division flaw [SB94, Coe95] in Intel Corp.'s Pentium underscores howhard the task of verifying a floating-point arithmetic unit is, and how high the cost of a floating-point arithmetic bug can be. About one trillion test vectors were used and none uncovered the bug. The recall and replacement of the chips in the field cost Intel $470 million. Since t...

متن کامل

Veri cation of All Circuits in a Floating - Point UnitUsing Word - Level Model

This paper presents the formal veriication of all sub-circuits in a oating-point arithmetic unit (FPU) from an Intel microprocessor using a word-level model checker. This work represents the rst large-scale application of word-level model checking techniques. The FPU can perform addition, subtraction, multiplication, square root, division, remainder, and rounding operations; verifying such a br...

متن کامل

Veri cation of All Circuits in a Floating - PointUnit Using Word - Level Model CheckingYirng -

This paper presents the formal veriication of all sub-circuits in a oating-point arithmetic unit (FPU) from an Intel microprocessor using a word-level model checker. This work represents the rst large-scale application of word-level model checking techniques. The FPU can perform addition, subtraction , multiplication, square root, division, remainder, and rounding operations; verifying such a b...

متن کامل

Equivalence checking using Gröbner bases

Motivated by the recent success of the algebraic computation technique in formal verification of large and optimized gate-level multipliers, this paper proposes algebraic equivalence checking for handling circuits that contain both complex arithmetic components as well as control logic. These circuits pose major challenges for existing proof techniques. The basic idea of Algebraic Combinational...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • CoRR

دوره abs/1609.00169  شماره 

صفحات  -

تاریخ انتشار 2016