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瀏覽量
19181 -
TLM
+關注
關注
1文章
32瀏覽量
24759 -
TCPIP協議
+關注
關注
0文章
35瀏覽量
11956
原文標題:UVM中基于SOCKET通信的TLM2.0
文章出處:【微信號:處芯積律,微信公眾號:處芯積律】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論