OpenASIP  2.0
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
MemoryAccessingFUState Class Reference

#include <MemoryAccessingFUState.hh>

Inheritance diagram for MemoryAccessingFUState:
Inheritance graph
Collaboration diagram for MemoryAccessingFUState:
Collaboration graph

Public Member Functions

 MemoryAccessingFUState (Memory &memory)
 
 MemoryAccessingFUState (const TCEString &name, Memory &memory)
 
virtual ~MemoryAccessingFUState ()
 
- Public Member Functions inherited from FUState
 FUState ()
 
 FUState (const TCEString &name)
 
virtual ~FUState ()
 
void setTriggered ()
 
void setOperation (Operation &operation)
 
void setOperation (Operation &operation, OperationExecutor &executor)
 
bool isIdle ()
 
virtual void endClock ()
 
virtual void advanceClock ()
 
virtual void addInputPortState (PortState &port)
 
virtual void addOutputPortState (PortState &port)
 
virtual void addOperationExecutor (OperationExecutor &opExec, Operation &op)
 
virtual void setOperationSimulator (DetailedOperationSimulator &sim)
 
virtual void replaceOperationExecutor (Operation &op, OperationExecutor *newExecutor)
 
virtual OperationExecutorexecutor (Operation &op)
 
virtual void reset ()
 this is called at (re)initialization of the simulation More...
 
- Public Member Functions inherited from ClockedState
 ClockedState ()
 
virtual ~ClockedState ()
 

Protected Member Functions

virtual OperationContextcontext ()
 

Private Member Functions

 MemoryAccessingFUState (const MemoryAccessingFUState &)
 Copying not allowed. More...
 
MemoryAccessingFUStateoperator= (const MemoryAccessingFUState &)
 Assignment not allowed. More...
 

Private Attributes

Memorymemory_
 Memory wrapper instance. More...
 
OperationContext operationContext_
 The operation context for this FU. More...
 

Additional Inherited Members

- Protected Attributes inherited from FUState
bool idle_
 The idle status of the FU. The derived classes should alway set this to true when possible to avoid unnecessary advanceClock() and endClock() calls. More...
 

Detailed Description

Models function unit that access memory.

Definition at line 44 of file MemoryAccessingFUState.hh.

Constructor & Destructor Documentation

◆ MemoryAccessingFUState() [1/3]

MemoryAccessingFUState::MemoryAccessingFUState ( Memory memory)

Constructor (no explicitly given FU name).

Parameters
memoryMemory instance.
MAUSizeWidth of the minimum addressable unit.
lockGlobal lock signal.
Todo:
Do not hard code the MAU or NW sizes!

Definition at line 47 of file MemoryAccessingFUState.cc.

48  :
50 
52 }

References memory_, operationContext_, and OperationContext::setMemory().

Here is the call graph for this function:

◆ MemoryAccessingFUState() [2/3]

MemoryAccessingFUState::MemoryAccessingFUState ( const TCEString name,
Memory memory 
)

Constructor (with explicitly given FU name).

Parameters
memoryMemory instance.
MAUSizeWidth of the minimum addressable unit.
lockGlobal lock signal.
Todo:
Do not hard code the MAU or NW sizes!

Definition at line 62 of file MemoryAccessingFUState.cc.

64  :
65  FUState(), memory_(memory), operationContext_(name) {
66 
68 }

References memory_, operationContext_, and OperationContext::setMemory().

Here is the call graph for this function:

◆ ~MemoryAccessingFUState()

MemoryAccessingFUState::~MemoryAccessingFUState ( )
virtual

Destructor.

Definition at line 73 of file MemoryAccessingFUState.cc.

73  {
74 }

◆ MemoryAccessingFUState() [3/3]

MemoryAccessingFUState::MemoryAccessingFUState ( const MemoryAccessingFUState )
private

Copying not allowed.

Member Function Documentation

◆ context()

OperationContext & MemoryAccessingFUState::context ( )
protectedvirtual

Returns the operation context.

This is basically a "template method" to allow differently initialized OperationContext-classes in FUState subclasses.

Returns
The operation context for the FU.

Reimplemented from FUState.

Definition at line 85 of file MemoryAccessingFUState.cc.

85  {
86  return operationContext_;
87 }

References operationContext_.

◆ operator=()

MemoryAccessingFUState& MemoryAccessingFUState::operator= ( const MemoryAccessingFUState )
private

Assignment not allowed.

Member Data Documentation

◆ memory_

Memory& MemoryAccessingFUState::memory_
private

Memory wrapper instance.

Definition at line 60 of file MemoryAccessingFUState.hh.

Referenced by MemoryAccessingFUState().

◆ operationContext_

OperationContext MemoryAccessingFUState::operationContext_
private

The operation context for this FU.

Definition at line 63 of file MemoryAccessingFUState.hh.

Referenced by context(), and MemoryAccessingFUState().


The documentation for this class was generated from the following files:
OperationContext::setMemory
void setMemory(Memory *memory)
Definition: OperationContext.cc:238
MemoryAccessingFUState::operationContext_
OperationContext operationContext_
The operation context for this FU.
Definition: MemoryAccessingFUState.hh:63
MemoryAccessingFUState::memory_
Memory & memory_
Memory wrapper instance.
Definition: MemoryAccessingFUState.hh:60
DEFAULT_FU_NAME
#define DEFAULT_FU_NAME
Definition: OperationContext.hh:47
FUState::FUState
FUState()
Definition: FUState.cc:67