UVM: 1_UVM历史等介绍

177 篇文章 139 订阅

1验证语言

1.1. Verilog

1)起源于20世纪80年代中期,1995年成为IEEE standard,即 IEEE Standard 1364 — 1995.

2)后续版本2001年推出。

3)最新标准2005年推出,即 IEEE Standard 1364 — 2005.


1.2Systemverilog

1)起源于2002年。

2)2004年发行。基于Accellera 的 Systemverilog 3.1a,Systemverilog 3.1a 是 Verilog扩展集。(所以3.1a 那个文档早已过时了)

3)2005年成为IEEE standard,即 IEEE Standard 1800 — 2005.

4)最新版是IEEE Standard 1364 — 2012.


1.3小结

1)systemverilog 包含了verilog的=所有feather,我觉得verilog可以不要了。

2)1800 — 2005这个文档我看到200多页,发现了赤裸裸的几个错误。有些是 typo,无伤大雅;但有些真的是描述性错误,如果不明确指出,很多人是比较难看出来的。为什么我这么自信那些是描述性错误呢?因为我有那部分 writer 在网络上的说明。大概意思就是,这个文档写的人比较多,版本管理有些乱,有些他改完了,需要给最终的负责人updata,但是最后汇总用的还是旧的,到时候开帖子再具体说是哪些吧!!


2 验证方法

2.1VMM

2006年,Synopsys推出。


2.2OVM

2008年,Candence 和 Mentor 推出。


2.3UVM

2011年2月,Accellera推出,上面三家都支持。


2.4小结

大家都用UVM,VMM 和 OVM 就彻底byebye啦。


3. 学习资源

3.1 systemverilog文档 或 书

1)IEEE Standard 1364 — 2012.

官方文档,重要性不用多说。好多人认为这个文档太厚,只是作为查阅使用。但是我觉得很系统的扫一遍还是有好处的,也许我也忘记很多或者理解的不深入,但是我有印象它曾经讲过什么,而且看一遍真的有好处,有些事情一直以为理所当然的,其实是有原因的,这种感觉看到过程中,不断冲击我。


2)Systemverilog for verification(第三版)

重点在systemverilog的各种讲语法现象,2012那个文档的example实在少得可怜,如果看不懂可以看看这个里面加深理解。


3)我用的是VCS,它的安装目录doc下有好多例子,有些例子很好,有些例子从篇幅上比较浪费,不过还是很好的参考。


4)网络上其他的例子,经常Google啊!


3.2 UVM文档 或 书


只介绍我真正看过的,顺序基本上是按照入手由易到难。


1)《UVM实战》

张强同志的《UVM实战》,绝对是入门利器啊。这名作者的贡献真是大,让我这种小白有章可循,虽然我没见过他,不过能写出这么好的书,一定很帅。这本说我半年前用了一个月看完,所有代码都跑过,终于知道自已 “会了什么” 和  “有什么不会”。现在再看第二遍,因为看第一遍的时候知道 “有什么不会”,这半年有了些深入的理解,现在可利用的资料又很多,所以要看第二遍。写了这些贴也是提醒下自己,加深印象。嗯,我的blog正在复活!!


2)《The_UVM_Primer》

作者是Salemi Ray,好像是Mentor的人。这本书很薄,与其说是书,倒不如说是一本十几个实验的指导书,也是step by step方式。这是我当初找到的第一本还不错的书。但是从头看到尾,我觉得有一个最大的缺点就是,作者大部分时候都只说 “要这么做”,但是很少讲 “ 为什么这么做”,对比的一些深入讨论也没有(也许是这本书薄的原因吧)。但是还是很不错的,这本说有一点是《UVM实战》没有覆盖到的,就是coverage的部分。当然,这部分也简单,网上的例子一抓一大把。这本书我是用的电子版,copyright的问题我肯定不会share啦。不要说我小气!!!因为勤奋的人知道这个书名和作者,也一定有办法弄到手(taobao);而懒惰的人,即使白给他,他也不会看,只不过是想当资料的收藏家,寻找心理安慰罢了。


3)a practical guide to adopting the universal verfication methodology,

这本说我只是扫过一些章节,如果上两本看完,你会觉得这个只是补充和巩固。


4)Systemverilog Assertions and Functional Coverage

前半部分将assertion,后半部分讲coverage。我对assertion一直没什么感觉,但是后面的coverage的思考帮助真的很大,什么样的cover是真正有意义的。看这本书的前提是systemverilog的基础一定要非常扎实,而其要有比较多的实践经验。这两者缺一不可,要不然怎么和作者产生共鸣呢?


5)uvm-cookbook-complete-verification

Mentor 的文档,600页,这应该算是很官方的文档了。介绍了一个完整的UVM的各个部分,最后给了一个step by step 的例子。不要觉得这是 Mentor 出的,就只符合Mentor的产品,当看到其他家结构时,比如VIP的环境,这些结构时惊人的相似!如果看完上面的文档,再看这个,就会觉得里面大篇幅的废话,因为你会了嘛!

Mentor的网站上还有很多其他的文档,你们自己去看吧:https://verificationacademy.com


6)UVM_Class_Reference_Manual_1.2 (最新的是1.2)

根正苗红的官方文档,最最最最牛逼的文档,也是最最最最傻X的文档。牛逼在于介绍了所有的 phase 和 所有components,object的关系,function等等等。傻X在于就像是lib库的感觉,实在tedious。不过还是应该前6章或7章(也就100页左右)。前5章会帮助你建立完整的框架结构,看6,7章并不是因为这2章有什么特殊,而是熟悉这个文档的写作方式,方便以后快速检索,查阅。如果有了上面的实践经验,再看这些文档,感触更深,更有帮助,会有一种忍不住在跑一遍所有的case,点击到lib文件挨个看一遍,对照一下,看看人家到底是怎么实现的,而不是只会傻傻的用。


7)uvm_users_guide

和上一个文档配套的,主要讲一些可操作性的内容。最有价值的应该是最后ubus的例子讲解,因为 uvm-1.2 源文件自带的这个例子是没有任何讲解的,原来在这里呀!


8)各大公司出的类似 “白皮书” 的文档和别人写的小论文,主要讲一些UVM中经常使用的一些语言,比如Google一下config_db之类的就有好多。


3.3 UVM相关网站

这部分真的不重要,大家不要沉迷于这些网站,只所以有这些是因为Google的时候最后总是到这几个网站。是通过问题-->现象,而不是现象-->问题、专门去找这些网站的。

1)http://www.testbench.in    很全面的网站,systemverilog,UVM,相关的知识都有涉及。

2)www.doulos.com 和上面的差不多,不过看起来更专业。最牛X的是 http://www.edaplayground.com/  也是他家的,大家一定要点进去看看,

3)UVM的官网(accellare),Mentor的官网。

4)http://stackoverflow.com/ 


4.总结

上面的资料不是最重要的 ,重要的使我们要善于思考,勤于实践,认真总结。用电影《心花路放》的话说就是“走点儿心”。革命先烈陈云也说过“不唯上、不唯书、只唯实,交换、比较反复”,如果我们不以这样的标准严格要求自己,又怎么能标榜自己是社会主义国家的和谐公民呢?怎么在这“新常态”的新时代实现中国梦呢?大道理就那么几条,又有几人能做到呢。每个行业都有出类拔萃的顶尖人才,凭什么不能是我们呢?嗯,一定使我们!



  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值