Home SystemVerilog The Easy Way To Start Using OVM-e Sequences

Search

The Easy Way To Start Using OVM-e Sequences PDF Print E-mail
User Rating: / 2
PoorBest 
Thursday, 24 December 2009 15:41

Industry-standard methodologies are great, really. It would be so nice if our entire verification environment (VE) were OVM-e (eRM) compliant, wouldn’t it? But what if there are legacy components in our env that don’t follow any specific methodology and we still want to make them speak OVM-e?

 

What we often want to do is take our legacy driver and monitor (or whatever TCMs that provide this functionality) and make them a nice self-contained Interface eVC with a Sequence mechanism and all that stuff. Now the good news is that usually this is not a big problem. So here are Think Verification’s 5 easy steps to start using sequences in your env:

1. Redefine your transaction - go back to your original transaction definition and make it inherit from any_sequence_item.

2. Get hold of another eVC that’s good for your application and extract its skeleton (delete all protocol-specific code but leave all units, struct method headers, interconnection). Alternatively, use a script such as vBuilder to build a skeleton for you. Think Verification strongly recommends changing all file and struct names to be consistent and add a unique prefix to all objects and types (very useful, also required by eRM rules). A small perl utility can help, try this.

3. Fill your monitor unit with protocol-specific content (e.g. implement the while TRUE loop in the main tcm).

4. Fill your BFM unit with protocol-specific content (e.g. implement the drive_transaction tcm).

5. Prepare a sample test file which extends the MAIN sequence and generates one or more items to test your new eVC.

And one final tip for writing new eVCs - Always have a known-to-be-good eVC nearby as reference!

Voila! Now you have a new eVC and you can send your legacy componets away to the National Museum of Verification History. It’s now time to develop your Sequence Library. Happy Sequencing!

 

 
More articles :

» VMM Hackers Guide - Default Behavior For Your BFM

Here's a short tutorial on how to implement a default behavior for your BFM using VMM. Some protocols require constant activity on their interface even when you don't have any data to transmit. This means you must have a mechanism that drives idle...

» Latest Buzz From The EDA & Verification Community

{loadposition pos101}{loadposition pos102}{loadposition pos103}{loadposition pos104}{loadposition pos105}{loadposition pos106}{loadposition pos107}{loadposition pos108}{loadposition pos109}{loadposition pos110}{loadposition pos111}{loadposition...

» DVT Eclipse - For SystemVerilog/Specman Code Developers

3 years ago that was on our wish list. Now it is a reality - A modern programming environment for verifiers!

» Specman GUI Trick

If you’re using Specman GUI to run simulations you must have encountered this rather annoying feature before - When running several simulations during the same session, specman doesn’t clear the log file by default so what you get in the end is...

» Get On The Buss

Wow, it’s been a while since we last had a good old techie talk about Specman so why not now? Today I’d like to focus on applying reuse to Specman external ports. Very much like little caterpillars, DUTs often have tens or even hundreds of pins...

Add comment


Security code
Refresh

Copyright © 2018 Think Verification - Tips & Insights on ASIC Verification. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.