Jump to content

Abstraction definition : modeling bidirectional TLM ports


Recommended Posts

Hi Experts

I am modeling an abstraction definition for some protocol whcih has bidirectional TLM ports.

Form the standard, I found I can use initiative as "both" for bidirectional ports but I have either onMaster and onSlave. There is nothing line inout(both in and out)

Is it a limitation in the standard or there is a way to model such bidirectional TLM ports.





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

Hello RahuIJn.


In IP-XACT there are wire ports and transactional ports. The element direction with values in, out, inout, and phantom is used for wire ports. The element initiative with values provides, requires, both, and phantom is used for transactional ports. A transactional port has initiative provides if the transactional port provides (implements) a service (method) that can be called by another port. A transactional port has initiative requires if the transactional ports requires (calls) a service (method) that is implemented by another port. Initiative both means that the transactional port implements and calls methods.


If your bidirectional port is a standard TLM2 socket then you do not need to model this as a bidirectional port. We have the following style for that (for a target socket):


            <spirit:busType spirit:version="2011-1.0" spirit:name="TLM2GP" spirit:library="ieee1666" spirit:vendor="accellera.org"/>
            <spirit:abstractionType spirit:version="2011-1.0" spirit:name="TLM2GP_tlm" spirit:library="ieee1666" spirit:vendor="accellera.org"/>
                <spirit:memoryMapRef spirit:memoryMapRef="RegisterMap"/>


                                <spirit:typeName spirit:implicit="true">tlm_fw_transport_if</spirit:typeName>


An initiator socket is similar with initiative requires.


Best regards,


Link to post
Share on other sites


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

  • Create New...