gem5  v22.1.0.0
Classes | Namespaces
external_slave.hh File Reference

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

#include "mem/port.hh"
#include "params/ExternalSlave.hh"
#include "sim/sim_object.hh"

Go to the source code of this file.

Classes

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

Namespaces

 gem5
 Reference material can be found at the JEDEC website: UFS standard http://www.jedec.org/standards-documents/results/jesd220 UFS HCI specification http://www.jedec.org/standards-documents/results/jesd223.
 

Detailed Description

ExternalSlave is a memory object representing a binding from a gem5 requestor to a response 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 Wed Dec 21 2022 10:22:57 for gem5 by doxygen 1.9.1