微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > 搭建UVM平台验证I2C slave,driver及monitor的写法请教

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

时间:10-02 整理:3721RD 点击:
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里各完成什么样的任务?请不吝赐教。

monitor其实直接采样就可以了

I2C 有Read 也有 Write,这些都应该在cmd里面传递给driver,所以driver不仅仅是写操作,读回的数据也应该由driver来处理。
然后就是uvm_driver里面有默认的req和rsp两个sequence_item,你可以利用rsp把读回的数据发给需要它的模块。
monitor可以实现一些protocol check以及coverage collection这类的工作。
这是一种实现思路,仅供你参考。

读写数据都在driver中完成。monitor只是做check和coverage收集。

最近也在做I2C SLAVE 验证,也需要搭建UVM平台,小编做的怎么样了?

好人呀,赞下

首先回答下你的问题,monitor和driver可以理解为技术工人和监工,driver负责正常的相应以及传输,monitor在端口上将driver和rtl交互信号进行采集看一下是否正确,当然数据比对什么的要放在sb里做。然后个人感觉最好不要用i2c作为练手的第一个case,会让你有挫败感的,原因只有一个没有那么简单,可以作为进阶使用,毕竟这玩意想侧完善了还是有一定难度的。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top