may argue, what is the need of OVM/UVM? why OVM/UVM Exists?
Traditionally, test benches were written using VHDL or Verilog. The concept was simple, drive inputs to DUT,
Observe Outputs, check if Outputs are as expected. However, this model could not keep pace with the
growing complexity of systems and growing complexity of SoC integration.
1. The key question is: How and when would an engineer may declare that verification is complete?
2. The other problem is Re-use? How do we re-use testbenches?
3. And last and certainly not the least BUGS? Is your Verification Env good enough to catch bugs?
OVM/UVM is a systematic and standardized way to
write Test Bench or Test Environments for IPs, Subsystems etc.
The VLSI Industry has 2 principal languages to write advanced test benches and test environments.
One is Specman ‘e’ and the other is SystemVerilog.
Though Specman ‘e’ was the first language invented specifically for verification,
SystemVerilog arrived late, and it did take concepts from Specman ‘e’.
To be able to understand OVM/UVM concepts, its important to understand the following
1. Concept of Constrained Random verification
2. Concept of Interfaces
3. Concept of Transaction level Modelling (TLM)