#include <ExecutionPipelineResourceTable.hh>
◆ ResourceTable
◆ ResourceTableMap
◆ ResourceVector
◆ ExecutionPipelineResourceTable()
Definition at line 50 of file ExecutionPipelineResourceTable.cc.
62 for (
int l = 0; l < ep->
latency(); l++ ) {
84 for (ExecutionPipeline::OperandSet::iterator iter =
85 writes.begin(); iter != writes.end(); iter++) {
87 int latency = hwop.
latency(index);
References TTAMachine::ExecutionPipeline::isPortRead(), TTAMachine::ExecutionPipeline::isPortWritten(), TTAMachine::ExecutionPipeline::isResourceUsed(), TTAMachine::HWOperation::latency(), TTAMachine::ExecutionPipeline::latency(), TTAMachine::PipelineElement::name(), TTAMachine::HWOperation::name(), TTAMachine::FunctionUnit::operation(), TTAMachine::FunctionUnit::operationCount(), TTAMachine::FunctionUnit::operationPort(), TTAMachine::FunctionUnit::operationPortCount(), TTAMachine::HWOperation::pipeline(), TTAMachine::FunctionUnit::pipelineElement(), TTAMachine::FunctionUnit::pipelineElementCount(), setLatency(), setResourceUse(), StringTools::stringToUpper(), and TTAMachine::ExecutionPipeline::writtenOperands().
Referenced by resourceTable().
◆ finalize()
void ExecutionPipelineResourceTable::finalize |
( |
| ) |
|
|
static |
◆ hasOperation()
bool ExecutionPipelineResourceTable::hasOperation |
( |
const std::string & |
opName | ) |
const |
|
inline |
◆ maximalLatency()
unsigned int ExecutionPipelineResourceTable::maximalLatency |
( |
| ) |
const |
|
inline |
◆ name()
const std::string& ExecutionPipelineResourceTable::name |
( |
| ) |
const |
|
inline |
◆ numberOfResources()
unsigned int ExecutionPipelineResourceTable::numberOfResources |
( |
| ) |
const |
|
inline |
◆ operationIndex()
int ExecutionPipelineResourceTable::operationIndex |
( |
const std::string & |
opName | ) |
const |
|
inline |
◆ operationLatency()
const std::map<int,int>& ExecutionPipelineResourceTable::operationLatency |
( |
unsigned int |
operationIndex | ) |
const |
|
inline |
◆ operationPipeline()
bool ExecutionPipelineResourceTable::operationPipeline |
( |
int |
op, |
|
|
int |
cycle, |
|
|
int |
res |
|
) |
| const |
|
inline |
◆ pipelineSize()
unsigned int ExecutionPipelineResourceTable::pipelineSize |
( |
| ) |
const |
|
inline |
◆ resourceTable()
◆ setLatency()
void ExecutionPipelineResourceTable::setLatency |
( |
const std::string & |
opName, |
|
|
const int |
output, |
|
|
const int |
latency |
|
) |
| |
|
private |
◆ setResourceUse()
void ExecutionPipelineResourceTable::setResourceUse |
( |
const std::string & |
opName, |
|
|
const int |
cycle, |
|
|
const int |
resIndex |
|
) |
| |
|
private |
◆ allResourceTables_
◆ maximalLatency_
unsigned int ExecutionPipelineResourceTable::maximalLatency_ |
|
private |
◆ name_
std::string ExecutionPipelineResourceTable::name_ |
|
private |
◆ numberOfResources_
int ExecutionPipelineResourceTable::numberOfResources_ |
|
private |
◆ operationLatencies_
std::vector<std::map<int,int> > ExecutionPipelineResourceTable::operationLatencies_ |
|
private |
◆ operationPipelines_
std::vector<ResourceTable> ExecutionPipelineResourceTable::operationPipelines_ |
|
private |
◆ operationSupported_
std::map<std::string, int> ExecutionPipelineResourceTable::operationSupported_ |
|
private |
The documentation for this class was generated from the following files:
virtual TCEString name() const
std::vector< std::map< int, int > > operationLatencies_
void setResourceUse(const std::string &opName, const int cycle, const int resIndex)
ExecutionPipelineResourceTable(const TTAMachine::FunctionUnit &fu)
OperandSet writtenOperands(int cycle) const
const std::string & name() const
virtual int maxLatency() const
static ResourceTableMap allResourceTables_
Contains these tables for all FU's.
const std::string & name() const
virtual PipelineElement * pipelineElement(int index) const
unsigned int maximalLatency_
Maximal latency of operation in FU.
bool isPortWritten(const FUPort &port, int cycle) const
std::vector< ResourceVector > ResourceTable
Type for resource reservation table, resource vector x latency.
virtual int operationCount() const
int numberOfResources_
Resource and ports vector width, depends on particular FU.
virtual int operationPortCount() const
virtual int pipelineElementCount() const
bool isPortRead(const FUPort &port, int cycle) const
std::vector< ResourceTable > operationPipelines_
Pipelines for operations.
void setLatency(const std::string &opName, const int output, const int latency)
ExecutionPipeline * pipeline() const
virtual HWOperation * operation(const std::string &name) const
std::map< std::string, int > operationSupported_
Operations supported, name - index to operation pipeline vector.
virtual FUPort * operationPort(const std::string &name) const
bool isResourceUsed(const std::string &name, int cycle) const