OVM Vs UVM

Hi All,
What is the mejor difference between OVM and UVM ?

For the most part, OVM == UVM. From OVM, the “O’s” were changed to “U’s” and “tlm*” was changed to “uvm_tlm*”. If you use OVM today, you can migrate to UVM as your projects permit and as your tool chain adapts to small changes.

The same script that changed OVM to the UVM start can be used on your code to make the same modifications.

-Dennis

Hi,

The same question came up on http://www.uvmworld.org last week and there have been a few answers to it. http://www.uvmworld.org/forums/showthread.php?7-Diff-between-OVM-and-UVM

=Adam

The release notes in the uvm 1.0ea kit give pretty good detail. Here are the key points:

  • UVM is based on OVM (with the Os to Us as Dennis said)
  • The deprecated features from OVM were removed in UVM (if you look at the deprecated.txt file in the OVM install you will see the list of things removed).
  • The URM and AVM compatibility layers were removed from UVM.
  • Callbacks were updated with the following additional functionality:
    • a callback iterator class
    • typewide callback support (instead of just instance specific)
    • callback type registration for typechecking (added type checking to the add functions to warn if added to a type that doesn’t support a specific callback).
    • added add/delete callback by name.
    • more callback tracing was added.
  • Objections were updated with the following additional functionality:
    • added a string description for raise/drop (changes the signature of the component callbacks).
    • added ability to add external callbacks to objections.
  • A report catcher callback was added to allow users to control messages via an external callback. The catcher uses the standard callback mechanism on uvm_report_objects so that callbacks can be added type wide or to a specific report object.

That is pretty much it for the 1.0ea release.

john