sdf/base/algo/repetition_vector.cc File Reference

#include "repetition_vector.h"
Include dependency graph for sdf/base/algo/repetition_vector.cc:

Functions

static void calcFractionsConnectedActors (CFractions &fractions, SDFactor *a)
static RepetitionVector calcRepetitionVector (CFractions &fractions)
RepetitionVector computeRepetitionVector (SDFgraph *g)
bool isSDFgraphConsistent (SDFgraph *g)

Function Documentation

static void calcFractionsConnectedActors ( CFractions fractions,
SDFactor a 
) [static]

calcFractionsConnectedActors () The function calculates and firing ration (as fractions) of all actors connected to actor 'a' based on its firing rate. In case of an inconsistent graph, all fractions are set to 0.

References c, SDFport::getActor(), SDFport::getChannel(), SDFchannel::getDstPort(), SDFcomponent::getId(), SDFport::getRate(), SDFchannel::getSrcPort(), SDFactor::portsBegin(), and SDFactor::portsEnd().

Referenced by computeRepetitionVector().

Here is the call graph for this function:

static RepetitionVector calcRepetitionVector ( CFractions fractions  )  [static]

calcRepetitionVector () Convert the fractions to the smallest integers.

References CFraction::denominator(), g, gcd(), and lcm().

Referenced by computeRepetitionVector().

Here is the call graph for this function:

RepetitionVector computeRepetitionVector ( SDFgraph g  ) 

computeRepetitionVector () The function computes the repetition vector of an SDFG.

References a, SDFgraph::actorsBegin(), SDFgraph::actorsEnd(), calcFractionsConnectedActors(), calcRepetitionVector(), SDFcomponent::getId(), and SDFgraph::nrActors().

Here is the call graph for this function:

bool isSDFgraphConsistent ( SDFgraph g  ) 

isSDFgraphConsistent () The function checks the consistency of the SDFG and returns true when the graph is consistent, else it returns false.

References FSMSADF::computeRepetitionVector().

Referenced by analyzeSDFG().

Here is the call graph for this function: