Dinglei_hello · 2021年10月09日

UVM 的通信方式概述

首先我们需要知道通信的双方都是要有通信接口的,另外需要商议好的通信方式, UVM 也是这样做的,其定义了三种通信接口和三种通信方式,不同的通信接口对应不同的通信方式。

UVM 定义了组件之间的三种通信类型,分别为 PUTGETTRANSPORT。PUT 是组件 A 将一个 transaction 交给组件 B, GET 是组件 A 向组件 B 请求一个transaction, TRANSPORT 是组件 A 将一个 transaction 交给组件 B,然后向组件 B 请求一个 transaction。

对应于该三类通信机制,又有两种不同的类型,阻塞和非阻塞。阻塞 PUT 表示在没有将该 transaction 交给 B 之前,将一直停在这里,非阻塞 PUT 表示将 transaction 交给 B 之前就返回了,不再等待 B 接收完成。

除过上面的三个端口之外,UVM 还定义了两种常用的端口:analysis portanalysis export。他们不同于其他端口的地方在于 analysis 端口支持一对多的通信,即一个 analysis 可以连接多个 IMP。另外 analysis 端口只有一个 write 操作,该操作实现广播的意思。此外 analysis 没有阻塞非阻塞的概念,其本身就是广播操作,不存在阻塞和非阻塞。

作者:验证哥布林
原文链接:https://mp.weixin.qq.com/s/_hJ-X4TtmQdM_TQKU6-qvg
微信公众号:
芯片验证工程师.jpg

推荐阅读

更多IC设计技术干货请关注IC设计技术专栏
推荐阅读
关注数
19642
内容数
1303
主要交流IC以及SoC设计流程相关的技术和知识
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息