阅读 132

UVM入门与进阶5

UVM入门与进阶5

1. TLM通信

概述

  • 在芯片开发流程中,有两个地方对项目的助推起到关键作用:

    •   系统原型

    •   芯片验证

  • 系统原型一般是通过硬件功能描述文档来模拟硬件行为,而行为要求不同于RTL模型。系统原型可以提供一个准确到硬件比特级别、按照地址段访问、不依赖于时钟周期的模型,该模型通常机遇systemC语言,而系统原型中各个模块通过TLM可以实现宽松时间范围内的数据包传输

  • 芯片验证是在RTL模型初步建立后,通过验证语言和方法学例如SV/UVM来构建验证平台。该平台的特点是验证环境整体基于面向对象开发,组件之间的通信基于TLM(transaction level model),而在driver与硬件接口之间需要将TLM抽象事务降解到基于时钟的信号级别

  • 系统原型阶段和芯片验证阶段均使用了TLM通信方式。前者是为了更快地实现硬件原型之间的数据通信,后者是为了更快地实现验证组件之间的数据通信

  • 仿真速度是TLM对项目进度的最大贡献,同时TLM传输中的事务又可以保障足够大的信息量和准确性

  • TLM并不是某一种语言的产物,而是作为一种提高数据传输抽象级的标准存在的

  • 高抽象级的数据通信,可以用来表示宽松时间跨度内的硬件通信数据,而通过将低颗粒硬件周期内的数据(也就是小的琐碎的数据)打包为一个大数据,非常有利于整体环境的仿真速度

  • TLM的运用越来越广泛,包括emulator同硬件仿真器的协同仿真框架中,也建议使用这种方式来降低混合环境之间的通信频率,以便提高整体的运算效率

 

 TLM是一种基于事务的通信方式,通常在高抽象级语言例如systemC或者SV/UVM中作为模块之间的通讯方式

TLM成功地将模块内的计算和模块之间的通信从时间跨度方面剥离开了

在抽象语言建模体系中,各个模块通过一系列并行的进程实现,并通过通信和计算来模拟出正确的行为

如果要提高系统模型的仿真性能,需要考虑两个方面

一个是建模自身的运算优化,另外一个是模型之间的通信优化

前者需要依靠开发者的经验还有性能分析工具来逐步优化模型

后者则可以通过将通信频率降低、内容体积增大的方式,来减少由不同进程之间同步带来的资源损耗

TLM正是从通信优化角度提出的一种抽象通信方式

 

2. 单向通信

 

 

3. 双向通信

 

 

4. 多向通信

 

 

5. 通信管道

uvm_analysis_port

分类: uvm

来源https://www.cnblogs.com/xuanlee/p/14444412.html

文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐