The bibliographic entry was discovered and compiled by a machine, and published without a person checking it against the publication. The publication itself is the authors' own work — this badge says nothing about it.

Finding and Understanding Bugs in FPGA Synthesis Tools

The work

AuthorsYann Herklotz; John Wickerson
Editors
Typeinproceedings
Year2020
Citekeyherklotz2020finding

Where it appeared

Published inProceedings of the 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA 2020)

Empty on purpose

copy

Related

Distinct fromloow2025simulation
Distinct fromxu2025structural
Distinct fromzhang2025novel

From bibtex.

Abstract

All software ultimately relies on hardware functioning correctly. Hardware correctness is becoming increasingly important due to the growing use of custom accelerators using FPGAs to speed up applications on servers. Furthermore, the increasing complexity of hardware also leads to ever more reliance on automation, meaning that the correctness of synthesis tools is vital for the reliability of the hardware. This paper aims to improve the quality of FPGA synthesis tools by introducing a method to test them automatically using randomly generated, correct Verilog, and checking that the synthesised netlist is always equivalent to the original design. The main contributions of this work are twofold: firstly a method for generating random behavioural Verilog free of undefined values, and secondly a Verilog test case reducer used to locate the cause of the bug that was found. These are implemented in a tool called Verismith. This paper also provides a qualitative and quantitative analysis of the bugs found in Yosys, Vivado, XST and Quartus Prime. Every synthesis tool except Quartus Prime was found to introduce discrepancies between the netlist and the design. In addition to that, Vivado and a development version of Yosys were found to crash when given valid input. Using Verismith, eleven bugs were reported to tool vendors, of which six have already been fixed.

How it got here

How it got hereagent via bibtex
Added2026-09-18 10:04 UTC
Not denied bya person 2026-10-29 17:12 UTC

Filed under

run-it-or-count-it

Cite it as

@inproceedings{herklotz2020finding,
  title        = {Finding and Understanding Bugs in FPGA Synthesis Tools},
  author       = {Yann Herklotz and John Wickerson},
  year         = {2020},
  booktitle    = {Proceedings of the 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA 2020)},
  doi          = {10.1145/3373087.3375310},
}

This record lives at https://refs.drheap.org/herklotz2020finding/ and will keep doing so.