Skip to content

SingularityKChen/SystemC-Training

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SystemC Training

This project is used for me to learn SystemC TLM.

Adder

This is a simpe project from National Chiao-Tung University.

This is a simple SystemC tutorial by Synopsys.

In this project, it:

  • Shows the usage of ports, channels;
  • Block and non block require/response;

This is the first TLM tutorial by Doulos.

In this project, it:

  • Shows the generic payload, sockets, and blocking transport interface.
  • Shows the responsibilities of initiator and target with respect to the generic payload.
  • Has only dummy implementations of the direct memory and debug transaction interfaces.
  • Does not show the non-blocking transport interface.

This is the second TLM tutorial by Doulos.

In this project, it:

  • Shows the direct memory interfaces and the DMI hint.
  • Shows the debug transaction interface
  • Shows the proper use of response status

This is the third TLM tutorial by Doulos.

In this project, it:

  • Shows a router modeled as an interconnect component between the initiator and the target
  • The router decodes the address to select a target, and masks the address in the transaction
  • Shows the router passing transport, DMI and debug transactions along forward and backward paths and doing address translation in both directions

The hierarchy is shown bellow:

the module hierarchy

This is the fifth TLM example by Doulos.

In this project, it:

  • Shows two loosely-timed initiators both with temporal decoupling and quantum keeper
  • Shows a bus with multiple initiators and multiple targets (four memories)
  • Routes transactions to target and back using address decoding built into the bus
  • Uses tagged interfaces and sockets to implement multiple fw/bw interfaces in a single module
  • Propagates DMI calls on both forward and backward paths, with 'invalidate' being broadcast to every initiator
  • Shows transaction pooling using a memory manager

About

SystemC training aimed at TLM.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published