VMM与OVM

验证方法学主要有vmm和ovm两种。
摘录一些言论,供参考:
     个人感觉Synopsys 的口碑好一些,Cadence 的FAE 比较能忽悠,但有时候不是很能解决问题。偶绝对不是Synopsys 的托了;

synopsys的VMM更成熟;

前端设计还是喜欢synopsys多一点;

VMM的用户可能多一些,特别在国内(个人感受),不过Synopsys的东西,质量上不如Cadence,技术支持上也许更贴近用户一些;

本质都差不多,看你怎么用.但OVM是Cadence和Mentor都support的.这个比较好. 从适用性来说,还是OVM强.从功能上来说,由于OVM兼具e language的一些特性,比如factory/sequence,这个比VMM要好.至于FAE的支持,这个是利益驱动的.如果你们公司是global的,软件也是在国外买的,那国内的EDA公司来support你,对于local的EDA公司,他没有如何利益,当然support就一般了.

自学自用,推荐OVM,因为论坛的支持好,VMM没有正版,基本上没有什么支持。

我已经在我得项目里面从类VMM转为 OVM 了,从验证分层来看.两种方法学本质差不多,在 OVM 里面,我觉得最爽的地方是sequence/sequencer/virtual sequencer,这几个东西是VMM没有的

只是两个死对头synopsys和cadence分别搞的两套系统验证库而已,差别不大


VMM:
1 架构简单,容易学习及掌握
2 验证实现也比较容易,容易使用
3 工具非常稳定,出现问题的概率不大
OVM
1 架构灵活,显得有点复杂(比较建议从VMM入手,对 OVM 的理解会更加快速)
2 验证实现也比较容易,使用者需要掌握一定的 OVM 知识才能做相应小修改,这一点VMM不一样,VMM的使用都只要知道constraint怎么下就好
3 IRUN工具不是很稳定,出现问题的概率较大,我使用过程中发现不少问题,不过最后都直接反应给cadence AE,得到解决(现在已经稳定很多)
4  OVM  以agent为基础的建立方式,方便实现reuse性,这一点VMM做不到(VMM只要DUT小改driver和packet必改), OVM  agent是基于某种protocol建立的,protocol不改,agent就不需要修改,这样就可以达到非常强大的reuse性
5 VMM 没有sequence(正在开发), OVM  的virtual sequence可以造出各agent工作的任意组合,并行,串行,等等,不修改任何原来的code,只需要加一个virtual sequence即可。VMM做不到,VMM想做这个只能改driver和packet
只说了一些技术上的东西,还有VMM是要钱的, OVM 是免费的!




VMM和OVM都是基于SV的硬件验证的方法学,也是当今验证方法的两个趋势。

从本质上来讲,VMM和OVM的方法学是一致的,目的都是实现可重用性(reusable)以提高验证的效率。

VMM是由ARM和Synopsys提出的,OVM则是由Mentor和Candence共同提出的。因此使用Synopsys VCS进行仿真也就选择了VMM的验证方法,支持OVM的仿真工具自然就是Mentor和Candence的工具了。

使用OVM最大的好处就是完全open的,使用OVM将不受Mentor和Candence的任何限制;至于VMM,之前是收费的,现在网上有人说是免费的(
VMM 顶不住压力,也开源了,嘎嘎 ),但是我还没有找到官方的说明,不清楚现在的状况,知情的人麻烦透漏一下。

VMM和OVM都是基于SystemVerilog(SV)的验证方法,而SV相对于传统的HDL语言来说,其最大的好处就是引入了OOP(Object Oriented Programming),OOP的概念基本上是可以跟{封装(Encapsulation)+继承(Inheritance)+多态(Polymorphism)}相等同的,至于封装、继承和多态,如果学过C++的人自然会明白。引入了OOP之后,SV便可以在更高的抽象层次进行仿真和验证。

由于引入了OOP,基于SV的验证方法学也就自然而然的出来了,就像是如今有很多的C++库一样,SV也需要相应的库才能够实现其面向对象的高效性,开发人员只需要在SV的标准库上进行开发就可以了,这样就避免了重复的二次开发,提高了验证的效率和灵活性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值