IC_verification基本知识点

上传人:yx****d 文档编号:158191547 上传时间:2022-10-03 格式:DOC 页数:3 大小:92.50KB
收藏 版权申诉 举报 下载
IC_verification基本知识点_第1页
第1页 / 共3页
IC_verification基本知识点_第2页
第2页 / 共3页
IC_verification基本知识点_第3页
第3页 / 共3页
资源描述:

《IC_verification基本知识点》由会员分享,可在线阅读,更多相关《IC_verification基本知识点(3页珍藏版)》请在装配图网上搜索。

1、Vrify 工作简介随着C的门数越来越多.IC的验证也越来越复杂.IC需要的从业人员也越来越多,我简单介绍一下IC验证的情况吧,希望对想找I验证工作的哥们有些帮助。先说基础知识吧.除了erlog代码和eeril代码,IC验证现在越来越多的用到c语言和+了。当然如果会点shel 与pr脚本语言那就更好了。就veilog而言,验证从业人员真的不需要能非常牛逼的使用这个语言,但是必须要能读懂,帮助desigrdbg的时候你最好能定位到错误发生的位置。Systemverg代码是验证的核心,但是大学或者研究生期间使用该代码的院校还是很少的。现在各家大公司用的验证环境几乎清一色的都是使用ssverilo搭

2、建的。其实怎么都感觉stemveiog代码是把+和vilg代码揉到一起了。学起来也不是很难的。语言和+就不用多说了,C语言到什么地方都是有用的。以前验证没有怎么使用太多的C语言,但是现在由于算法越来越复杂,好多东西用C语言实现起来还容易。所以C语言在现在的验证工作中用的越来越多了.而且现在有不少公司都习惯用C语言来写激励了。这样的激励比较好阅读。更加接近与以后的开发编写环境。至于脚本语言,那就没有什么了。都是在完成验证环境搭建以后用的比较多。暂时不会也不要紧,一般常用的就那么一点。这个其实和linx比较类似,基础命令还是要会一点的。说一下现在验证的概况吧。现在的C验证工作都是在一个建立好的平台

3、上做的验证.现在比较常见的验证平台有VM和OV,以前也有AVM不过现在已经合并到V中去了。当然现在市场的主力军还是VM,但是由于OV是开源的,所以OVM发展也是很快的.VMM是yopsys公司主导使用的,想要使用VMM就需要使用syops的VC软件,呵呵这一套软件还是挺贵的啊.VM是由Cadence和menor合作开发的,由于adene以前看好的验证语言是systeC,结果在syterilg这一块稍微有点掉队,于是就和mento合作搞起了以抗衡VMM。Questa是mntor的验证软件,具体没有用过。感觉图形界面做的不错。下面就以我熟悉的VM验证环境来说吧。其实VM也是差不多的,大的框架还是相

4、同的.都还是那些东西。废话少说上图!!!以上就是现在比较常见的IC验证环境的基本框图了,根据具体情况不同会把一些模块合成一个,也有可能拆分成几个来实现。但是运行的过程还是相同的.先拿tescase来说吧,这个东西大家都比较熟悉吧,最初的escae基本上都是用eilog代码来写的,当然现在还是有用的。但是vog代码写的testcase有一些不足之处,首先verilg代码不支持随机处理,不方便用来产生随机激励,其次verilog的层次比较低不适用于较高层次的建模。ytemeilg出现很好的解决了这些问题。而且sytemveril能够与c语言很好的连接,systemeriog有一个DP专门用于连接外

5、部C程序(还支持一些其他的语言)的,很好用。为适用语言编写tstcase提供了基础,所以现在有不少tetcas都是使用C语言来写的。使用语言写出来的testcase结构比较紧凑,比较像做嵌入式开发写底层驱动。发生器(geeratr)用来解释st,其实也就是把tstcse翻译成具体的数据包,或者数据码流。代理这个东西就是把数据分配下去,他与记分板和检测器一起称为功能层.记分板(scorbod)用来临时存放一些数据,用于数据的比较。常与检测器合在一起,共同完成数据的比较,查错。他们要实现的一个与待测设计相同功能的模块,用于自动比较的。其实也就是要设计一个能实现相同功能的模块,一般小的模块这部分设计

6、都是由验证工程师自己完成的,如果是复杂的模块由于验证工程师还要关注其他的模块,这块功能可以由其他地方提供,比如一些现成的C语言代码,验证工程师把这个C代码嵌入的验证环境中就可以了,这个地方的实现方式比较多,也是验证的一个精华的地方吧。主要的ebug也就在这个地方实现的。驱动层(der)顾名思义,就是用来驱动我们的额待测设计(DUT(deie nderst,这个名字还是有必要记住的)).就是把数据包处理成具体的操作激励,也就是那些波形了。检测器(nio)用来采集待测设计(UT)的输出波形,然后传回scorbad用于和标准结果比较,验证DU工作是否正确。断言(assert)是个好东西,但是如果紧紧

7、依靠验证工程师这个东西是没办法用好的,这个东西非常需要设计人员配合。ssr功能很强大,也很容易上手,能深层次的发掘设计错误,定位很准确,也正是由于这些优点,所以验证工程师不能非常容易的使用它,因为验证工程师一般可以不需要了解太多的设计细节就可以对设计模块进行验证,但是sser需要比较清楚的了解内部信号,才能将内部信号连接到相应的assert上。建议C设计工程师学习哦。对debug很有帮助的哦.这个模块在有的验证环境中是不使用。最后说一下覆盖率的问题。覆盖率分为功能覆盖率,代码覆盖率,还有人为添加的一些覆盖点的覆盖率。这个其实就是用来衡量验证工作进行到什么程度了。最容易实现100%的是代码覆盖率

8、,但是如果ilog代码中使用了case的dful那就很难实现100覆盖了。功能覆盖率就是一些函数的功能,还有状态机的状态覆盖率等等。然后还有就是验证工程师添加的覆盖点。一般验证工作完成以后要使用这些东西完成报告的。这么多了可能有点晕了。可能想为什么要搞这么复杂啊。其实这个确实蛮复杂的,环境的搭建好花不少时间。但是这样做最大的优点就是可以自动完成激励的生成,随机激励,而且要说明的是这里的随机一般是约束随机,而不是一般意义上的随机一般的随机没有针对性,就好比要赋值的时候知道这个设计的最大值只有25,但是你一般的随机可能产生更大的值,而约束随机可以轻松地的把随机值约束在255以内.Systmverilog的随机还支持权重分配,可以根据验证的需要控制数据按不同的比例出现。用这样的环境做验证还有一个好处就是可重用,换了UT只需要更换相应的drver和moitor就可以了,如果是标准总线那么连drver都不要换了,如果输出的接口也是标准的话那就连moitor都不用换了,只要换一下生成正确数据的ref单元(一般在在crebod和检测器中实现,或者在screboard之前实现也可以)。在换一下对应的激励,这个时候你甚至有一种感觉自己是在做嵌入式开发的驱动。文中如有不足,请您指教!3 / 3

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!