InterconnectGraph Class Reference

#include <interconnect_graph.h>

Collaboration diagram for InterconnectGraph:

List of all members.

Public Member Functions

 InterconnectGraph (uint slotTableSize, TTime slotTablePeriod, uint packetHeaderSize, uint flitSize, TTime reconfigurationTimeNI)
 InterconnectGraph (const CNodePtr archNode, TTime slotTablePeriod)
 ~InterconnectGraph ()
NodesIter nodesBegin ()
NodesIter nodesEnd ()
uint nrNodes () const
NodecreateNode (const CString &name)
NodegetNode (const CId id)
NodegetNode (const CString &name)
Nodes getNodes () const
LinksIter linksBegin ()
LinksIter linksEnd ()
uint nrLinks () const
LinkcreateLink (const CString &name, Node *src, Node *dst)
LinkgetLink (const CId id)
LinkgetLink (const CString &name)
uint getSlotTableSize () const
TTime getSlotTablePeriod () const
uint getPacketHeaderSize () const
uint getFlitSize () const
TTime getReconfigurationTimeNI () const
void setUsage (const CNodePtr usageNode)
CNodecreateInterconnectGraphNode ()

Private Attributes

Nodes nodes
Links links
uint slotTableSize
TTime slotTablePeriod
uint packetHeaderSize
uint flitSize
TTime reconfigurationTimeNI

Detailed Description

InterconnectGraph Interconnect graph.


Constructor & Destructor Documentation

InterconnectGraph::InterconnectGraph ( uint  slotTableSize,
TTime  slotTablePeriod,
uint  packetHeaderSize,
uint  flitSize,
TTime  reconfigurationTimeNI 
)

InterconnectGraph () Constructor.

InterconnectGraph::InterconnectGraph ( const CNodePtr  archNode,
TTime  slotTablePeriod 
)
InterconnectGraph::~InterconnectGraph (  ) 

~InterconnectGraph () Destructor.

References linksBegin(), linksEnd(), nodesBegin(), and nodesEnd().

Here is the call graph for this function:


Member Function Documentation

CNode * InterconnectGraph::createInterconnectGraphNode (  ) 

createInterconnectGraphNode () The function returns a description of the interconnect graph in XML format.

References CAddAttribute(), CAddNode(), CNewNode(), Link::getDstNode(), getFlitSize(), Link::getName(), Node::getName(), getPacketHeaderSize(), getReconfigurationTimeNI(), getSlotTableSize(), Link::getSrcNode(), Node::getType(), linksBegin(), linksEnd(), nodesBegin(), and nodesEnd().

Referenced by NoCMapping::createNetworkNode().

Here is the call graph for this function:

Link * InterconnectGraph::createLink ( const CString name,
Node src,
Node dst 
)

createLink () Create a new link and add it to the graph.

References Node::addIncomingLink(), Node::addOutgoingLink(), getLink(), getSlotTablePeriod(), getSlotTableSize(), links, and nrLinks().

Referenced by InterconnectGraph().

Here is the call graph for this function:

Node * InterconnectGraph::createNode ( const CString name  ) 

createNode () Create a new node and add it to the graph.

References getNode(), nodes, and nrNodes().

Referenced by InterconnectGraph().

Here is the call graph for this function:

Link * InterconnectGraph::getLink ( const CId  id  ) 

getLink () The function returns a pointer to the linl with the supplied id, or NULL if no such link exists.

References linksBegin(), and linksEnd().

Referenced by NoCScheduler::assignSchedulingEntities(), NoCScheduleProblem::constrainOtherSchedulingProblem(), SDFconvertToHTML::convertInterconnectUsage(), createLink(), NoCScheduleProblem::markPreferedSlots(), and setUsage().

Here is the call graph for this function:

Link * InterconnectGraph::getLink ( const CString name  ) 

getLink () The function returns a pointer to the linl with the supplied name, or NULL if no such link exists.

References linksBegin(), and linksEnd().

Here is the call graph for this function:

Node * InterconnectGraph::getNode ( const CString name  ) 

getNode () The function returns a pointer to the node with the supplied name, or NULL if no such node exists.

References nodesBegin(), and nodesEnd().

Here is the call graph for this function:

Nodes InterconnectGraph::getNodes (  )  const [inline]
TTime InterconnectGraph::getReconfigurationTimeNI (  )  const [inline]
NodesIter InterconnectGraph::nodesBegin (  )  [inline]
NodesIter InterconnectGraph::nodesEnd (  )  [inline]
uint InterconnectGraph::nrNodes (  )  const [inline]

References nodes.

Referenced by createNode().

void InterconnectGraph::setUsage ( const CNodePtr  usageNode  ) 

setUsageInterconnectGraph () Reserve resource in the interconnect graph.

References CGetAttribute(), CGetChildNode(), CNextNode(), getLink(), getSlotTableSize(), Link::setUsedSlots(), stringtok(), and TTIME_MAX.

Referenced by NoCScheduleProblem::NoCScheduleProblem().

Here is the call graph for this function:


Member Data Documentation


The documentation for this class was generated from the following files: