UVM:事务级建模(Transaction Level Modeling, TLM)1.0 通信标准

本文深入探讨了UVM中的事务级建模(TLM)1.0通信标准,包括基本概念如initiator和target,端口的阻塞性、数据流和控制流,以及不同类型的端口通信。TLM1.0在IC验证中的优势在于其非阻塞特性、一对多广播通信和组件间通信的封闭性。此外,文章还介绍了如何避免数据流方法名冲突以及如何使用uvm_tlm_analysis_fifo实现组件的主动数据获取。


对于芯片设计而言,整个芯片设计过程涉及流片、硬件测试等需要高成本、高耗时的过程,不像软件开发那样能够更轻松的迭代更新、修改和测试,所以IC开发不确定性很高。

而对于上述问题,系统原型和IC验证两个部分就非常关键了。

系统原型能够模拟硬件行为,常用SystemC来实现。IC验证则是通过SystemVerilog(SV)和UVM验证方法学构建软件测试平台,以验证设计出的RTL代码。

所以如果SV搭建的验证平台需要借用SystemC的系统原型,就需要一套通信标准实现跨语言组件通信。因此事务级建模(Transaction Level Modeling, TLM)1.0 通信标准得到了广泛使用。TLM最大的特点在于不依赖时间跨度,无需时钟驱动能够实现无缝组件通信。

除此之外,如果仅讨论SV和UVM搭建的验证平台,相比于SV中mailbox实现线程通信,TLM1.0也很有优势:

● TLM1.0可借助Analysis端口实现一对多广播式通信,还支持initiator非阻塞式空发

● 同时SV使用mailbox通信还存在着跨层次直接通信的问题,而TLM1.0可借用export端口实现层层定位连接,不会存在跨层次连接的问题。

● TLM1.0的封闭性更强,当两个component建立起通信之后,该通信不允许其他component参与。

● initiator执行数据流方法和target执行数据流方法互不依赖(initiator只需调用put、get就可,target只需实现put、get方法就行),而SV必须依赖媒介mailbox

本篇讲TLM1.0

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Starry丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值