Verilog and SystemVerilog Gotchas [electronic resource] : 101 Common Coding Errors and How to Avoid Them /
Sutherland, Stuart.author.
Mills, Don.author.
In programming, "Gotcha" is a well known term. A gotcha is a language feature, which, if misused, causes unexpected - and, in hardware design, potentially disastrous - behavior. The purpose of this book is to enable engineers to write better Verilog/SystemVerilog design and verification code, and to deliver digital designs to market more quickly. This book shows over 100 common coding mistakes that can be made with the Verilog and SystemVerilog languages. Each example explains in detail the symptoms of the error, the languages rules that cover the error, and the correct coding style to avoid the error. The book helps digital design and verification engineers to recognize these common coding mistakes, and know how to avoid them. Many of these errors are very subtle, and can potentially cost hours or days of lost engineering time trying to find and debug the errors. This book is unique because while there are many books that teach the language, and a few that try to teach coding style, no other book addresses how to recognize and avoid coding errors with these languages.
Description based upon print version of record.
Includes bibliographical references and index.
Introduction, What Is A Gotcha? -- Declaration and Literal Number Gotchas -- RTL Modeling Gotchas -- Operator Gotchas -- General Programming Gotchas -- Object Oriented and Multi-Threaded Programming Gotchas -- Randomization, Coverage and Assertion Gotchas -- Tool Compatibility Gotchas.
In programming, "Gotcha" is a well known term. A gotcha is a language feature, which, if misused, causes unexpected - and, in hardware design, potentially disastrous - behavior. The purpose of this book is to enable engineers to write better Verilog/SystemVerilog design and verification code, and to deliver digital designs to market more quickly. This book shows over 100 common coding mistakes that can be made with the Verilog and SystemVerilog languages. Each example explains in detail the symptoms of the error, the languages rules that cover the error, and the correct coding style to avoid the error. The book helps digital design and verification engineers to recognize these common coding mistakes, and know how to avoid them. Many of these errors are very subtle, and can potentially cost hours or days of lost engineering time trying to find and debug the errors. This book is unique because while there are many books that teach the language, and a few that try to teach coding style, no other book addresses how to recognize and avoid coding errors with these languages.
Electronic circuits.
Computer-aided engineering.
Computer hardware.
Electrical engineering.
Circuits and Systems.
Computer-Aided Engineering (CAD, CAE) and Design.
Computer Hardware.
Electrical Engineering.