Understanding bug fix patterns in verilog

TitleUnderstanding bug fix patterns in verilog
Publication TypeConference Paper
Year of Publication2008
AuthorsSudakrishnan, S, Madhavan, J, Whitehead, Jr., JE, Renau, J
Secondary TitleProceedings of the 2008 international working conference on Mining software repositories
Place PublishedNew York, NY, USA
ISBN Number978-1-60558-024-1
Keywordsbug fixing, error classification, hdl, verilog, VHDL

Today, many electronic systems are developed using a hardware description language, a kind of software that can be converted into integrated circuits or programmable logic devices. Like traditional software projects, hardware projects have bugs, and significant developer time is spent fixing them. A useful first step toward reducing bugs in hardware is developing an understanding of the frequency of different types of errors. Once the most common types are known, it is then possible to focus attention on eliminating them. As most hardware projects use software configuration management repositories, these can be mined for the textual bug fix changes. In this project, we analyze the bug fix history of four hardware projects written in Verilog and manually define 25 bug fix patterns. The frequency of each bug type is then computed for all projects. We find that 29 -- 55% of the bug fix pattern instances in Verilog involve assignment statements, while 18 -- 25% are related to if statements.

Full Text
PDF icon p39-sudakrishnan.pdf131.86 KB