gem5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes
external_slave.hh File Reference

ExternalSlave is a memory object representing a binding from a gem5 master to a slave port in a system external to gem5. More...

#include "mem/mem_object.hh"
#include "params/ExternalSlave.hh"

Go to the source code of this file.

Classes

class  ExternalSlave
 
class  ExternalSlave::Port
 Derive from this class to create an external port interface. More...
 
class  ExternalSlave::Handler
 

Detailed Description

ExternalSlave is a memory object representing a binding from a gem5 master to a slave port in a system external to gem5.

During initialisation, a `handler' for the port type specified in the port's port_type parameter is found from the registered port handlers provided with registerHandler. Once a handler is found, it is passed the port_data parameter of the port which can be used to identify the external port which is to be bound to. A port handler will usually construct a bridge object in the external system to accomodate the port-to-port mapping but this bridge is not exposed to gem5 other than be the presentation of the SlavePort which can be bound.

The external port must provide a gem5 SlavePort interface (with the exception of getAddrRanges which is provided by the ExternalSlave object).

Definition in file external_slave.hh.


Generated on Fri Jun 9 2017 13:03:58 for gem5 by doxygen 1.8.6