While sipping on my revive-me-from-the-dead coffee this morning, I had a scan of JL's latest post on the ongoing VMM/OVM spat. This pointed me at an article by Richard Goering in SCDSource which had the following:
<splutter>Oh crap, I’m choking on hot coffee now.
“Confusion in the industry”. What? Are we really going to get confused because we have two methodologies for writing testbenches? I hope not, because anyone who is confused is going to be a real public danger driving home from work tonight.
My experience of the IC industry is that it’s populated by a large number of very intelligent people, and as such, a prerequisite of being involved in ASIC design (or the human race for that matter) is surely the ability to understand and differentiate between two similar things?
I seriously wonder how Synopsys view us all if they think two things will confuse us. Perhaps two things confuse them?
Anyway, the whole “we must only have one methodology” cat fight reminded me of this blog which I was reading a few nights ago:
I am worried that Ruby on Rails will do to the Ruby world what JUnit did to Java: a great tool when it came out but which condemned its community to an ice age where no innovation or competition appeared for years. Whatever the fate of Ruby, I hope its fans will keep an open mind and will constantly challenge the Rails way, for the simple reason that it's always healthy to question what's in place, no matter how good it looks.”
I couldn't agree more. Anyway, I’m going to finish my coffee, and wait for the next installment of “VMM vs. OVM – Handbags at Dawn”.

Heh... my original draft of the blog post you referenced (before edits) had a reference to the book 1984, which I read over vacation last month. (FYI... not a good vacation book!).
JL
Posted by: JL Gray | 13/08/2008 at 02:33 PM
David,
"Confusion" has many synonyms, one of which is "hodgepodge". This is a more accurate term for the concept I attempted to convey. Customers continue to say they want one standard. EDA has a history of creating two. If Synopsys were to announce support for both VMM and OVM, it would only help perpetuate this undesirable history.
Enjoy your coffee,
Karen
Posted by: Karen Bartleson | 15/08/2008 at 12:07 AM
Hi Karen,
thanks for leaving a comment. I'm struggling with the idea that 2 of something can qualify for "hodgepodge". I'd get it if we were talking about four or more competing methodologies, but we aren't; we're talking about two. I can cope with two. In fact, every client I've ever worked with, and every engineer I've ever spoken to, can cope with two.
> EDA has a history of creating two.
And for very good reasons. One of anything leads to obsolecence and decay. Two of something leads to competition and inovation, and natural selection will weed out the poor bits and leave the good bits.
> If Synopsys were to announce support for
> both VMM and OVM, it would only
> help perpetuate this undesirable history.
"Undesirable" is an opinion. I think it's very desirable. Anyway, that's a shame, because I think the lack of competition is killing verification. When I look at the languages and techniques we use for verification, and then what I use for the software design I do, we're pretty much living in the verification dark ages. In software terms, SystemVerilog is a primitive language that should be on its way out. Instead, it's our "next big thing", and we're trying to standardise on a single class library[1] for it. Sheeesh! JL and Grant Martin were right to mention 1984. That's the era of the technology we have.
If Synopsys truly believe (and I'm sure they do) that the VMM is better than the OVM, then why not let them compete? Let your customers choose which really is best.
Cheers
David
[1] Yeah, yeah, they're "methodologies". Right. There are actually good bits of methodology in the VMM and the OVM, but no one seems to be talking about them. Instead, people are talking about which classes run on which simulators. What about all the other stuff? I was rereading the VMM yesterday (remember - the last M is manual) and there's a shed load of good stuff in there about how to write testbenches that has /nothing/ to do with the underlying classes. Why can't we all argue about that?
Posted by: David Robinson | 15/08/2008 at 10:35 AM