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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 8320|回复: 9

[求助] 搭建UVM平台验证I2C slave,driver及monitor的写法请教

[复制链接]
发表于 2016-12-26 18:59:10 | 显示全部楼层 |阅读模式

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

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

x
Hi, all

我最近在学习UVM,想尝试自己搭建一个UVM平台来验证I2C slave。对于,其中driver及monitor的写法有点疑惑。I2C master发出的命令结构为:开始信号 + 器件地址 + W + ACK + 偏置地址 + R + ACK + 开始信号 + data + STOP信号。对于,driver来说,我初步想法是driver里驱动数据(开始信号 + 器件地址 + W + ACK + 偏置地址 + R + ACK + 开始信号),而data + STOP信号由monitor来完成。但感觉这样不是很正确。想请教一下高手,我应该在driver及monitor里各完成什么样的任务?请不吝赐教。
发表于 2016-12-27 10:10:12 | 显示全部楼层
monitor其实直接采样就可以了
发表于 2016-12-27 17:52:50 | 显示全部楼层
回复 1# Herrywl


   I2C 有Read 也有 Write,这些都应该在cmd里面传递给driver,所以driver不仅仅是写操作,读回的数据也应该由driver来处理。
   然后就是uvm_driver里面有默认的req和rsp两个sequence_item,你可以利用rsp把读回的数据发给需要它的模块。

   monitor可以实现一些protocol check以及coverage collection这类的工作。

这是一种实现思路,仅供你参考。
发表于 2016-12-27 20:10:56 | 显示全部楼层
读写数据都在driver中完成。monitor只是做check和coverage收集。
发表于 2017-1-18 09:44:11 | 显示全部楼层
最近也在做I2C SLAVE 验证,也需要搭建UVM平台,楼主做的怎么样了?
 楼主| 发表于 2017-1-22 16:09:38 | 显示全部楼层
回复 3# elasticss 谢谢,最近一直在忙,忘记来回复了。
 楼主| 发表于 2017-1-22 16:15:57 | 显示全部楼层
回复 5# zpf1990 做的差不多了,提供给你一个参考代码的下载地址:https://github.com/dovstamler/uv ... 2c_master_driver.sv
发表于 2017-1-22 21:18:51 | 显示全部楼层
回复 7# Herrywl


   好人呀,赞下
发表于 2017-1-23 14:41:46 | 显示全部楼层
回复 1# Herrywl


   首先回答下你的问题,monitor和driver可以理解为技术工人和监工,driver负责正常的相应以及传输,monitor在端口上将driver和rtl交互信号进行采集看一下是否正确,当然数据比对什么的要放在sb里做。  然后个人感觉最好不要用i2c作为练手的第一个case,会让你有挫败感的,原因只有一个没有那么简单,可以作为进阶使用,毕竟这玩意想侧完善了还是有一定难度的。
发表于 2021-4-24 20:26:44 | 显示全部楼层
very good sharing ~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-26 00:31 , Processed in 0.023159 second(s), 9 queries , Gzip On, Redis On.

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