The namespace for CT MoC. More...
Classes | |
| class | add |
| Process constructor for a continuous-time process which adds its inputs. More... | |
| class | comb |
| Process constructor for a combinational process with one input and one output. More... | |
| class | comb2 |
| Process constructor for a combinational process with two inputs and one output. More... | |
| class | combX |
| Process constructor for a combinational process with an array of inputs and one output. More... | |
| class | constant |
| Process constructor for a constant source process. More... | |
| class | cosine |
| Helper function to construct a coasine source. More... | |
| class | CT2CT |
| The CT2CT signal used to inter-connect CT processes. More... | |
| class | CT_in |
| The CT_in port is used for input ports of CT processes. More... | |
| class | CT_out |
| The CT_out port is used for output ports of CT processes. More... | |
| class | delay |
| Process constructor for a delay element. More... | |
| class | fanout |
| Process constructor for a fan-out process with one input and one output. More... | |
| class | fmi2cswrap |
| Process constructor for a co-simulation FMU wrapper with one input and one output. More... | |
| class | mul |
| Process constructor for a continuous-time process which multiplies its inputs. More... | |
| class | scale |
| Process constructor for a continuous-time process which scales the input. More... | |
| class | shift |
| Process constructor for a shift element. More... | |
| class | sine |
| Helper function to construct a coasine source. More... | |
| class | sink |
| Process constructor for a sink process. More... | |
| class | source |
| Process constructor for a source process. More... | |
| class | square |
| Helper function to construct a square source. More... | |
| class | sub |
| Process constructor for a continuous-time process which subtracts its inputs. More... | |
| class | traceSig |
| Process constructor for a trace process. More... | |
Typedefs | |
| using | signal = CT2CT |
| The CT::signal is an alias for CT::CT2CT. | |
| using | in_port = CT_in |
| The CT::in_port is an alias for CT::CT_in. | |
| using | out_port = CT_out |
| The CT::out_port is an alias for CT::CT_out. | |
| typedef ForSyDe::process | ct_process |
| Abstract semantics of a process in the CT MoC. | |
Functions | |
| template<class OIf , class I1If > | |
| comb * | make_comb (std::string pName, typename comb::functype _func, OIf &outS, I1If &inp1S) |
| Helper function to construct a comb process. More... | |
| template<class OIf , class I1If , class I2If > | |
| comb2 * | make_comb2 (std::string pName, typename comb2::functype _func, OIf &outS, I1If &inp1S, I2If &inp2S) |
| Helper function to construct a comb2 process. More... | |
| template<class OIf , class IIf , std::size_t N> | |
| combX< N > * | make_combX (std::string pName, typename combX< N >::functype _func, OIf &outS, std::array< IIf, N > &inpS) |
| Helper function to construct a combX process. More... | |
| template<class IIf , class OIf > | |
| delay * | make_delay (std::string pName, sc_time delay_time, OIf &outS, IIf &inpS) |
| Helper function to construct a delay process. More... | |
| template<class IIf , class OIf > | |
| shift * | make_shift (std::string pName, sc_time delay_time, OIf &outS, IIf &inpS) |
| Helper function to construct a shift process. More... | |
| template<class OIf > | |
| constant * | make_constant (std::string pName, CTTYPE init_val, sc_time end_time, OIf &outS) |
| Helper function to construct a constant source process. More... | |
| template<class OIf > | |
| source * | make_source (std::string pName, typename source::functype _func, const sc_time &end_time, OIf &outS) |
| Helper function to construct a source process. More... | |
| template<class IIf > | |
| sink * | make_sink (std::string pName, typename sink::functype _func, sc_time sampling_period, IIf &inS) |
| Helper function to construct a sink process. More... | |
| template<class IIf > | |
| traceSig * | make_traceSig (std::string pName, sc_time sampling_period, IIf &inpS) |
| Helper function to construct a traceSig process. More... | |
| template<class IIf , class OIf > | |
| fanout * | make_fanout (std::string pName, OIf &outS, IIf &inpS) |
| Helper function to construct a fanout process. More... | |
| template<class OIf > | |
| sine * | make_sine (std::string pName, const sc_time &endT, const sc_time &period, const CTTYPE &l, OIf &outS) |
| Helper function to construct a sine source process. More... | |
| template<class OIf > | |
| cosine * | make_cosine (std::string pName, const sc_time &endT, const sc_time &period, const CTTYPE &l, OIf &outS) |
| Helper function to construct a cosine source process. More... | |
| template<class OIf > | |
| square * | make_square (std::string pName, const sc_time &endT, const sc_time &period, const CTTYPE &highS, const CTTYPE &lowS, const double &dutyCycle, OIf &outS) |
| Helper function to construct a square source process. More... | |
| template<class OIf , class IIf > | |
| scale * | make_scale (std::string pName, const CTTYPE &scaling_factor, OIf &outS, IIf &inpS) |
| Helper function to construct a scale process. More... | |
| template<class OIf , class IIf1 , class IIf2 > | |
| add * | make_add (std::string pName, OIf &outS, IIf1 &inp1S, IIf2 &inp2S) |
| Helper function to construct an add process. More... | |
| template<class OIf , class IIf1 , class IIf2 > | |
| sub * | make_sub (std::string pName, OIf &outS, IIf1 &inp1S, IIf2 &inp2S) |
| Helper function to construct a sub process. More... | |
| template<class OIf , class IIf1 , class IIf2 > | |
| mul * | make_mul (std::string pName, OIf &outS, IIf1 &inp1S, IIf2 &inp2S) |
| Helper function to construct a mul process. More... | |
| SC_MODULE (gaussian) | |
| Process constructor for a Gaussian randome wave generator. More... | |
| template<class OIf > | |
| gaussian * | make_gaussian (std::string pName, const double &gaussVar, const double &gaussMean, const sc_time sample_period, OIf &outS) |
| Helper function to construct a gaussian process. More... | |
| SC_MODULE (filter) | |
| Process constructor for implementing a linear filter. More... | |
| template<class OIf , class I1If > | |
| filter * | make_filter (std::string pName, const std::vector< CTTYPE > numerators, const std::vector< CTTYPE > denominators, const sc_time sample_period, OIf &outS, I1If &inp1S) |
| Helper function to construct a linear process. More... | |
| SC_MODULE (filterf) | |
| Process constructor for implementing a linear filter with fixed step. More... | |
| template<class OIf , class I1If > | |
| filterf * | make_filterf (std::string pName, const std::vector< CTTYPE > numerators, const std::vector< CTTYPE > denominators, const sc_time sample_period, OIf &outS, I1If &inp1S) |
| Helper function to construct a linear process with fixed step size. More... | |
| template<class OIf , class I1If > | |
| filter * | make_integrator (std::string pName, const sc_time sample_period, OIf &outS, I1If &inp1S) |
| Helper function to construct an integrator. More... | |
| template<class OIf , class I1If > | |
| filterf * | make_integratorf (std::string pName, const sc_time sample_period, OIf &outS, I1If &inp1S) |
| Helper function to construct an integrator with fixed step size. More... | |
| SC_MODULE (pif) | |
| Process constructor for implementing a PI controller with fixed step. More... | |
| template<class OIf , class I1If > | |
| pif * | make_pif (std::string pName, const CTTYPE &kp, const CTTYPE &ki, const sc_time sample_period, OIf &outS, I1If &inp1S) |
| Helper function to construct a PI controller with fixed step size. More... | |
| template<class OIf , class I1If > | |
| fmi2cswrap * | make_fmi2cswrap (const std::string &pName, const std::string &fmu_file, const unsigned &input_index, const unsigned &output_index, const sc_time &sample_period, OIf &outS, I1If &inp1S) |
| Helper function to construct a pipewrap process. More... | |
Detailed Description
The namespace for CT MoC.
This namespace includes constructs used for building models in the continuous-time MoC.
Function Documentation
|
inline |
Helper function to construct an add process.
This function is used to construct an adder and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a comb process.
This function is used to construct a process (SystemC module) and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a comb2 process.
This function is used to construct a process (SystemC module) and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a combX process.
This function is used to construct a process (SystemC module) and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a constant source process.
This function is used to construct a constant (SystemC module) and connect its output signal. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the output FIFOs.
|
inline |
Helper function to construct a cosine source process.
This function is used to construct a cosine source and connect its output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
endT The end time of the generated signal period The signal period (1/f) ampl The signal amplitude
|
inline |
Helper function to construct a delay process.
This function is used to construct a process (SystemC module) and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a fanout process.
This function is used to construct a fanout process (SystemC module) and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a linear process.
This function is used to construct a CT filter and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
numerators Numerator constants denominators Denominator constants sample_period sampling period
|
inline |
Helper function to construct a linear process with fixed step size.
This function is used to construct a CT filter and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
numerators Numerator constants denominators Denominator constants sample_period sampling period
|
inline |
Helper function to construct a pipewrap process.
This function is used to construct a pipe wrapper process (SystemC module) and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a gaussian process.
This function is used to construct a gaussian signal generator and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
gaussVar The variance gaussMean The mean value sample_period sampling period
|
inline |
Helper function to construct an integrator.
This function is used to construct a CT integrator and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
sample_period sampling period
|
inline |
Helper function to construct an integrator with fixed step size.
This function is used to construct a CT integrator with fixed step size and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
sample_period sampling period
|
inline |
Helper function to construct a mul process.
This function is used to construct a multiplier and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a PI controller with fixed step size.
This function is used to construct a PI controller with fixed step size and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a scale process.
This function is used to construct a scale source and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
scaling_factor The scaling factor
|
inline |
Helper function to construct a shift process.
This function is used to construct a process (SystemC module) and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a sine source process.
This function is used to construct a sine source and connect its output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
endT The end time of the generated signal period The signal period (1/f) ampl The signal amplitude
|
inline |
Helper function to construct a sink process.
This function is used to construct a sink (SystemC module) and connect its input signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input FIFOs.
|
inline |
Helper function to construct a source process.
This function is used to construct a source (SystemC module) and connect its output signal. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the output FIFOs.
|
inline |
Helper function to construct a square source process.
This function is used to construct a square source and connect its output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
- Parameters
-
endT The end time of the generated signal period The signal period (1/f) highS The signal high swing lowS The signal low swing dutyCycle The duty cycle (0 to 1)
|
inline |
Helper function to construct a sub process.
This function is used to construct a subtractor and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input and output FIFOs.
|
inline |
Helper function to construct a traceSig process.
This function is used to construct a traceSig (SystemC module) and connect its input and output signals. It provides a more functional style definition of a ForSyDe process. It also removes bilerplate code by using type-inference feature of C++ and automatic binding to the input FIFOs.
| ForSyDe::CT::SC_MODULE | ( | gaussian | ) |
Process constructor for a Gaussian randome wave generator.
This class is used to create a continuous-time signal source which produces a Random signal based on the Gaussian distribution
< port for the output channel
The constructor requires the module name and the generator parameters
< Process name
< The variance
< The mean value
< sampling period
| ForSyDe::CT::SC_MODULE | ( | filter | ) |
Process constructor for implementing a linear filter.
This class is used to build a process which implements a linear in the CT MoC filter based on the numerator and denominator constants. It internally uses a DDE filter together with CT2DDE and DDE2CT MoC interfaces.
< port for the input channel
< port for the output channel;
The constructor requires the module name and the filter parameters
< Process name
< Numerator constants
< Denominator constants
< sampling period
< Minimum time step
< Tolerated error
| ForSyDe::CT::SC_MODULE | ( | filterf | ) |
Process constructor for implementing a linear filter with fixed step.
This class is used to build a process which implements a linear in the CT MoC filter with fixed step based on the numerator and denominator constants. It internally uses a DDE filter together with CT2DDEf and DDE2CT MoC interfaces.
< port for the input channel
< port for the output channel;
The constructor requires the module name and the filter parameters
< Process name
< Numerator constants
< Denominator constants
< sampling period
| ForSyDe::CT::SC_MODULE | ( | pif | ) |
Process constructor for implementing a PI controller with fixed step.
This class is used to build a PI controller with fixed step size based on the proportional and integral gain parameters. It internally uses a scale, an integrator and an adder.
< port for the input channel
< port for the output channel;
The constructor requires the module name and the gains
< Process name
< Numerator constants
< Denominator constants
< sampling period
Generated by Doxygen 1.8.11
