TLM2.0在2009年成为OSCI标准,主要用于构造总线系统的SystemC模型。尽管如此,当TLM2.0被引入到SV,它在构造testbench这件事情上也有所建树,为连接testbench与SystemC模型提供了便利。
本文在介绍TLM2.0时将主要覆盖其三大特征:interface,socket和generic payload。
01
Interface
TLM2.0跟TLM-1类似,有port、export和imp这些接口概念。在传输类型上,可以分为阻塞和非阻塞。其中非阻塞传输通过包含两个不同方向的传输路径来实现双向传输(bi-directional),这两个传输路径分别是前向传输路径(forward transport path)和反向传输路径(backward transport path)。这么一结合,就有了以下TLM2.0接口的九种基本类型。
接下来是传输函数。相比于TLM-1中传输函数put和get,TLM2.0使用的传输函数从SystemC原原本本地迁移了过来,主要由下面三种传输函数。这些传输函数的原型定义在uvm_tlm_if类中,该类也是上面九种接口类的父类的父类的父类。
结合起来看,TLM2.0接口的基本类型中,会提供对应的传输函数供调用(比如:支持阻塞传输的三个接口类中,都会调用宏去实现传输函数b_transport),以及connect函数供建立连接关系(connect函数的主要目的是实现接口句柄的传递)。好在这一部分作为TLM2.0的底层实现,用户应用中可以不去关心。
02
Socket
TLM2.0最主要的贡献是提出了socket的概念。Socket在UVM TLM2.0中,实现上是对port、export和imp的又一层封装,以提供更加统一和简洁的连接。下面首先扩展一下知识面,说说socket。
Socket,直译过来叫“插座”,后来由于功能相似被引入到软件领域,并被翻译成了“套接字”,首先广泛用于计算机网络领域。Socket在计算机网络模型中,作为应用层和传输层之间的一个抽象层,这就意味着,socket为下游的传输层(TCP/IP)做了接口封装,并为上游应用层(用户进程)提供网络通信服务(service)。
从整个通信链路角度看,socket就像是某种规格的插座,服务端和客户端通过规格(域、套接字类型、协议)匹配的“线缆”插上两端(通过IP地址和端口名),即可实现端到端的通信,通信的过程不再需要去关心中间的通信协议和实现细节。
当Socket的概念被引入到TLM建模,它依然保留着它原本的特点:端到端,协议统一,双向通信。当然,TLM Sockets也有自己的特点,比如可用于流量控制的延时参数等等。 TLM2.0这套机制本身可以说是围绕socket接口展开的。Socket涉及到的类有8个,都是一对一对的,使用的时候非常方便和干净。
根据阻塞性和在通信链路中的位置,socket类型可以按照下表分类。
其中IS-A表示面向对象的继承关系,可以理解为“它本质是xxxx接口”;HAS-A表示对象之间的关联关系,可以理解为“它还有一个xxxx接口”,举个例子:用于非阻塞传输的initiator的socket(uvm_tlm_nb_initiator_socket),它本质是一个支持前向传输的port接口,同时它还有一个支持后向传输的imp接口。
03
Generic Payload
统一的通信事务(payload)可能是TLM2.0理想的用法,从UVM源码中可以看到在接口和socket涉及到transaction类型的地方,都用了默认类型uvm_tlm_generic_payload. Generic payload的基类是uvm_sequence_item,本质上跟之前接触到的transaction没有什么两样,它可以被看做是TLM2.0为我们定义好的可以直接用于总线系统建模的事务模板。
因为是面向总线系统建模而创建的transaction,所以generic payload包含的域基本也都跟总线相关,比如地址(m_address)、数据(data[])、读/写(m_command)、突发长度(m_stream_width)、字节掩码(m_byte_enable[])、响应类型(m_response_status)等。如果还有更多的字段,比如memory属性、安全属性、ID号等其他sideband信号,可以通过扩展m_extensions数据结构来进行添加。
审核编辑:刘清
-
UVM
+关注
关注
0文章
182浏览量
19167 -
TLM
+关注
关注
1文章
32浏览量
24749 -
TCPIP协议
+关注
关注
0文章
35浏览量
11930
原文标题:UVM中基于SOCKET通信的TLM2.0
文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论