Logo SoCRocket

Transaction-Level Modeling Framework for Space Applications

Public Member Functions | List of all members
trap::ToolsManager< issueWidth > Class Template Reference

#include <ToolsIf.hpp>

Inheritance diagram for trap::ToolsManager< issueWidth >:
Collaboration diagram for trap::ToolsManager< issueWidth >:

Public Member Functions

 ToolsManager ()
 
void addTool (ToolsIf< issueWidth > &tool)
 
bool newIssue (const issueWidth &curPC, const InstructionBase *curInstr) const throw ()
 
bool emptyPipeline (const issueWidth &curPC) const throw ()
 

Constructor & Destructor Documentation

template<class issueWidth>
trap::ToolsManager< issueWidth >::ToolsManager ( )
inline

Member Function Documentation

template<class issueWidth>
void trap::ToolsManager< issueWidth >::addTool ( ToolsIf< issueWidth > &  tool)
inline

Adds a tool to the list of the tool which are activated when there is a new instruction issue

Referenced by Leon3::g_gdb_callback(), Leon3::Leon3(), and sc_main().

template<class issueWidth>
bool trap::ToolsManager< issueWidth >::emptyPipeline ( const issueWidth &  curPC) const
throw (
)
inline

Returns true if the pipeline has to be empty before being able to call the current tool, false otherwise

template<class issueWidth>
bool trap::ToolsManager< issueWidth >::newIssue ( const issueWidth &  curPC,
const InstructionBase curInstr 
) const
throw (
)
inline

The only method which is called to activate the tool it signals to the tool that a new instruction issue has been started; the tool can then take the appropriate actions. the return value specifies whether the processor should skip the issue of the current instruction


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