DocumentCode
3863068
Title
C-to-Verilog translation validation
Author
Alan Leung;Dimitar Bounov;Sorin Lerner
Author_Institution
University of California, San Diego
fYear
2015
Firstpage
42
Lastpage
47
Abstract
To offset the high engineering cost of digital circuit design, hardware engineers are looking increasingly toward high-level languages such as C and C++ to implement their designs. To do this, they employ High-Level Synthesis (HLS) tools that translate their high-level specifications down to a hardware description language such as Verilog. Unfortunately, HLS tools themselves employ sophisticated optimization passes that may have bugs that silently introduce errors in realized hardware. The cost of such errors is high, as hardware is costly or impossible to repair if software patching is not an option. In this work, we present a translation validation approach for verifying the correctness of the HLS translation process. Given an initial C program and the generated Verilog code, our approach establishes their equivalence without relying on any intermediate results or representations produced by the HLS tool. We implemented our approach in a tool called VTV that is able to validate a body of programs compiled by the Xilinx Vivado HLS compiler.
Keywords
"Hardware design languages","Hardware","Semantics","Syntactics","Program processors","Protocols","Ports (Computers)"
Publisher
ieee
Conference_Titel
Formal Methods and Models for Codesign (MEMOCODE), 2015 ACM/IEEE International Conference on
Type
conf
DOI
10.1109/MEMCOD.2015.7340466
Filename
7340466
Link To Document