Jump to content

How to select fitable communication methods in SC?

Recommended Posts

Since there are many methods we can chose to build communication in SC, like TLM, sc_port, sc_signal, sc_fifo. My question is how to select a fitable communication method in our module. For my opinion, I will chose TLM between modules and sc_port, sc_signal, sc_fifo inside the module. Although TLM can also be used inside module. Please shared your opinion with chosing the suitable communication methods.Thanks! 

Link to comment
Share on other sites

The general SystemC way of doing things is to use ports, whether builtin, TLM-2, or convenience. Prefer TLM-2 over custom solutions when possible. With respect to the selection of channels, it is highly dependent on what you are modeling. There is no one way that is "the right way". You should prefer higher levels of abstraction in general for several reasons:

  1. Easer to understand
  2. Higher performance
  3. Faster to code

What should you avoid? Low-level communications generally (e.g., sc_signal). Signals are fine for limited applications, but too often I see folks writing RTL with SystemC. RTL should be done with SystemVerilog or VHDL, which are designed for this and have many features to enhance performance.


Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...