在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2292|回复: 8

[原创] verification env demo

[复制链接]
发表于 2020-8-8 18:32:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
最近和朋友写了一个c++ 与 system verilog 联合仿真的环境,这里放上一个demo, 见附件。
感兴趣的可以联系:cofd0nut@outlook.com
http://blog.eetop.cn/1737759

把验证组件连接部分封装到c++ lib里,简化了组件间的连接关系。

让验证新手也能很快成为数字验证达人。

让一两个人员能够高效完成测试向量的初始化和测试率覆盖。

灵活的功能添加和修改。

System Verilog ENV

简洁,清晰的架构,容易上手。

传统固定测试向量建立。

随机测试向量建立。

创新的验证覆盖率检查架构。

简洁的芯片行为预测模型,方便维护。

NOR/NAND Flash 芯片数字验证。

Single  die

Multi die/Multi volume

Multi CE pin

demo.zip

285.81 KB, 下载次数: 45 , 下载积分: 资产 -2 信元, 下载支出 2 信元

demo

发表于 2020-8-10 10:29:23 | 显示全部楼层
不太懂,能解释下coco的含义吗
 楼主| 发表于 2020-8-11 07:24:34 | 显示全部楼层
我也是一知半解,按照我的的理解是:
这个coco 作用是“把验证组件连接部分封装到c++ lib里,简化组件间的连接关系。”,也就是说让大家不必费神去理解验证环境的各个组件的连接,不懂也没关系。
这样可以把精力集中到各个组件的功能开发上,完善验证特性。
发表于 2020-8-12 08:56:17 | 显示全部楼层
花了点时间看了一下,这个东西只是一个模型,说白了就是使用了一点C语言动态链接库,目前看上去没有什么实用的价值。这个东西想要好用应该还需要支持一些特性:
1、底层必须支持通用验证方法学,比如UVM
2、必须能够无缝兼容第三方的VIP
3、systemverilog语言中的约束随机在C语言中怎么解决的。
4、fw 软件团队的支持,最好能实现底层API 的充分验证
5、C code和sv 的中间层目前还比较简单,后续能够无缝扩展

我个人觉得用C和sv来构建环境和用例是比较合适的,但是前提是必须支持UVM等,然后在UVM 环境的基础上可以无缝的支持c test。这种环境一般需要根据不同公司的实际情况进行定制,不是太适合通用化
如果想用C code来充当CPU的角色,那么cache问题和中断的问题都是绕不过去的,这两个问题都是要花时间和精力去解决的
 楼主| 发表于 2020-8-21 23:05:58 | 显示全部楼层
本帖最后由 cofd0nut 于 2020-8-21 23:17 编辑

多谢指教
这个例子是为了提出一种环境搭建的架构,能够简洁快速开发验证环境。
对于具体项目要做调整的,不是做一个普适的环境。
这个环境里所有组件都是和coco lib 链接,所以不需要考虑和其他组件的关系,简化了架构,逻辑层次更加合理。
 楼主| 发表于 2020-8-21 23:14:47 | 显示全部楼层
 楼主| 发表于 2020-9-30 20:23:49 | 显示全部楼层
发表于 2020-11-12 08:55:52 | 显示全部楼层
Thanks for share
发表于 2021-8-19 15:35:46 | 显示全部楼层
thanks for sharing~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /3 下一条

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-4-23 15:51 , Processed in 0.027640 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表