TLM中常见操作

以下都以A为“发起者”,B为“接收方”阐述

1.put

A将Transaction发送给B

2.get

A向B索取一个Transaction

3.transport

A向B发送一个Transaction,向B索取一个Transaction

put、get和transport都有阻塞和非阻塞之分。

UVM中的端口

注意是UVM中的端口,实际上在TLM中没有定义IMP

1.port

        通信发起方具有的端口称为port

2.export

        通信的接收方具有端口称为export

3.imp

        与port和export进行通信的被动承担者

IMP定义时的两个参数(T,IMP)

        前者指的传输的数据类型,后者指的是实现这个接口的一个component

详解:A.A_port.put(T)实际上调用的是B.B_export.put(T),而B.B_export.put(T)调用的是B.B_imp.put(T),所以实现接口的操作最终需要B这个component中写入的put实现。

三种端口的优先级顺序:port>export>import,只有优先级高的端口才能主动连接到优先级低的,但是只有IMP才能作为连接关系的终点。

UVM中的通信方式

1.analysis端口

UVM中有两个特殊的端口,analysis_portanalysis_export。

与常见端口的区别

1.一个analysis_port(analysis_export)可以连接多个IMP,类似于广播;

2.analysis_port和analysis_export没有阻塞和非阻塞之分;

3.对于put系列端口,有put、try_put、can_put等操作,对于广播只有write操作。

2.uvm_analysis_imp_decl

        同一个component中有多个analysis_imp时,避免其write函数重名。

使用宏定义声明后缀

3.fifo通信

        fifo的本质是一块缓存加两个imp

FIFO中有两个IMP,但关键字命名为export,是为了掩饰在TLM中不存在的IMP

1.分类

uvm_tlm_analysis_fifo

uvm_tlm_fifo

前者有一个analysis_export和自带write函数,后者没有。

2.put_ap和get_ap

除了12个IMP(tlm_fifo)之外,fifo中还有2个port

当put_export连接到一个put_port时,会自动调用fifo内的put将Transaction传递到fifo缓存并通过put_ap使用write函数发送出去。

TLM通信(1.0)相关推荐

  1. UVM中的TLM通信

    UVM中的TLM通信 1.TLM简介 TLM:Transaction Level Modeling(事务级建模),它是一个独立于语言的一个标准,常用于系统建模,加速软硬件协同开发.在芯片开发中,常配合 ...

  2. TLM通信 — UVM

    文章目录 简介 1.端口的使用 2.单向通信 3.双向通信 4.多向通信 5.通信管道 1. TLM_FIFO 2. Analysis Port 3. Analysis TLM FIFO 4. req ...

  3. UVM学习笔记--TLM通信

    Table of Contents 1.TLM简介 2.UVM TLM基本概念 2.1 TLM 通信常用的的三种传输:Put/Get/Transport 2.2 TLM 通信中的三种端口:Port,E ...

  4. UVM基础-TLM通信机制(一)

    目录 基本概念 TLM通信分类 单向通信 单向通信举例 单向通信代码 双向通信 多向通信 多向通信总结 通信管道 TLM FIFO Analysis Port Analysis TLM FIFO 芯片 ...

  5. UVM重点归纳(二)之TLM通信

    1 概念 initiator:发起通信请求的对象: target:接收通信请求的对象: producer:数据开始产生的对象: consumer:数据最终流向的对象: initiator和target ...

  6. uvm基础(2)TLM通信,看这一篇就够了

    tlm通信概述 tlm通信的步骤:1.分辨出initiator和target,producer和consumer. 2.在target中实现tlm通信方法. 3.在俩个对象中创建tlm端口. 4.在更 ...

  7. UVM——TLM通信(1)

    目录 TLM的定义 通信的端口定义和所在的组件 单向通信 定义 通信流程 多向通信 定义 通信流程 通信管道 定义 通信流程 前言:基于<UVM实战>和路科讲解的TLM通信,总结一下 TL ...

  8. TLM通信(transaction level modle)

    一.概述 在芯片开发流程中,系统原型和芯片验证对项目的助推起到了关键作用. 系统原型一般是通过硬件功能描述文档来模拟硬件行为,而行为要求不同于RTL模型.系统原型可以提供一个准确到硬件比特级别.按照地 ...

  9. UVM通信篇之一:TLM通信概论

    本文转自:http://www.eetop.cn/blog/html/28/1561828-5940098.html 在目前SoC设计的几大挑战当中,最令人关注的莫过于: 爆炸性增长的复杂度(然而被互 ...

  10. UVM入门与进阶学习笔11——TLM通信(3)

    目录 通信管道 TLM FIFO Analysis Port Analysis TLM FIFO Request & Response通信管道 通信管道 TLM通信的实现方式的共同点在于都是端 ...

最新文章

  1. php 字符串 中文,PHP的中文字符串截取
  2. python爬虫能干啥-Python爬虫还能干什么?
  3. 社会保险省内转移需要什么手续或过程?
  4. XNA Billboard(公告板技术)
  5. Waymo 2020 | 2D/3D目标检测、跟踪和域自适应性冠军解决方案解析
  6. python判断某年是否为闰年_python如何判断某年是否是闰年_后端开发
  7. 表达式* ptr ++和++ * ptr是否相同?
  8. Linux设备模型(9)_device resource management ---devm申请空间【转】
  9. 数据分析的五个阶段及价值
  10. Spring.NET实用技巧1——基于Prevalence下的NHibernate二级缓存使用技巧
  11. MySQL数据库备份
  12. 《21天学通C语言(第7版)》一2.6 课后研习
  13. python人脸对比相似度_相似度算法原理及python实现
  14. 深度学习去燥学习编码_有关自己学习编码的最困难的事情以及如何解决它们
  15. iphone手机获取udid最简单的方法
  16. JS常用的输出内容的方式详解(5种输出方式)
  17. 文件传输助手——自同步、使用方法
  18. html5如何设置自动对焦,如何HTML5自动对焦添加到轨道的形式?
  19. Node.js的HTTP
  20. linux不显示联网图标_Ubuntu linux 面板网络图标消失--》寻回图标方法总结

热门文章

  1. Overview PPT 类型 PPT 制作流程
  2. 用keras创建拟合网络解决回归问题Regression
  3. 《28天玩转TensorFlow2》第8天:TensorFlow2构建数据管道—Pandas DataFrame格式
  4. html5遍历数组,Vue中遍历数组的新方法
  5. Navicat ODBC驱动器管理器:未发现数据源名称并且未指定默认驱动程序
  6. 漆包线制作空芯线圈电感方法
  7. Android架构 系统如何保证运行无误
  8. Jenkins-工作区清理插件
  9. 对扫雷的破解(无敌版)工具CE
  10. stm32毕业设计 智能小车 自动泊车系统