Abstract
How would you create a complex class for a bus transaction that also performs error injection and has variable delays? The first approach is to put everything in a large, flat class. This approach is simple to build and easy to understand (all the code is right there in one class), but can be slow to develop and debug. Additionally, such a large class is a maintenance burden, as anyone who wants to make a new transaction behavior has to edit the same file. Just as you would never create a complex RTL design using just one Verilog module, you should break classes down into smaller, reusable blocks.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer Science+Business Media, LLC
About this chapter
Cite this chapter
Spear, C. (2008). Advanced OOP and Testbench Guidelines. In: System Verilog for Verification. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-76530-3_8
Download citation
DOI: https://doi.org/10.1007/978-0-387-76530-3_8
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4419-4561-7
Online ISBN: 978-0-387-76530-3
eBook Packages: EngineeringEngineering (R0)