Jump to content

Recommended Posts

Hello
There is an existing model with tlm1.0 sockets - sc_port and sc_export.

Is it possible to bind these sockets to tlm2.0 initiator and target sockets?

If yes, then what is the conversion procedure involved?

I'm new to SystemC, any help/insight on this is appreciated.

Thanks.
 

Link to post
Share on other sites

Hi.

AFAIK, there is nothing like that.

In TLM1 communication is based on fifos. In TLM2 it is sockets and transport calls. This is a big difference. TLM2 is conceptually different and not just a slight improvement over TLM1.

What you need is a channel that does the conversion from fifo content to payload and transport calls. This is not straightforward and not possible in a generic way.

 

Greetings

Link to post
Share on other sites

Hello
Thank you for that information George.
I understand it is not as straightforward as binding sockets together.
Will it be possible to retrieve the data used in the fifo into a structure, and then mapping fields from that structure to appropriate fields in the tlm 2.0 payload?
Thanks

Link to post
Share on other sites
7 hours ago, sarav said:

Will it be possible to retrieve the data used in the fifo into a structure, and then mapping fields from that structure to appropriate fields in the tlm 2.0 payload?

Yes, I do this kind of conversion of TLM-1.0 to TLM-2.0 and vice versa very often, because for synthesis only TLM-1.0 is supported, and for VP TLM-2.0 is commonly used.

The converter will be application-specific, because TLM-1.0 has no standard payload (Many TLM-1.0 models even define their own interfaces, instead of using standard put/get ).

Link to post
Share on other sites
  • 4 weeks later...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...