Logo SoCRocket

Transaction-Level Modeling Framework for Space Applications

Public Member Functions | List of all members
AHBDeviceBase Class Referenceabstract

#include <ahbdevicebase.h>

Inheritance diagram for AHBDeviceBase:
Collaboration diagram for AHBDeviceBase:

Public Member Functions

virtual ~AHBDeviceBase ()
 Empty destructor. More...
 
virtual const uint16_t get_ahb_device_id () const =0 throw ()
 Returns the device id. More...
 
virtual const uint8_t get_ahb_vendor_id () const =0 throw ()
 Returns the vendor id. More...
 
virtual const uint32_tget_ahb_device_info ()=0 throw ()
 
virtual const uint32_t get_ahb_base_addr_ () const =0 throw ()
 
virtual sc_dt::uint64 get_ahb_base_addr ()=0 throw ()
 
virtual const uint32_t get_ahb_size_ () const =0 throw ()
 
virtual sc_dt::uint64 get_ahb_size ()=0 throw ()
 
virtual const AMBADeviceType get_ahb_bar_type (uint32_t bar) const =0 throw ()
 
virtual const uint32_t get_ahb_bar_base (uint32_t bar) const =0 throw ()
 
virtual const uint32_t get_ahb_bar_mask (uint32_t bar) const =0 throw ()
 
virtual const uint32_t get_ahb_bar_addr (uint32_t bar) const =0 throw ()
 
virtual const uint32_t get_ahb_bar_size (uint32_t bar) const =0 throw ()
 
virtual const uint32_t get_ahb_bar_relative_addr (uint32_t bar, uint32_t addr) const =0 throw ()
 
virtual const uint32_t get_ahb_hindex () const =0 throw ()
 Returns the bus id of the module (hindex) More...
 
virtual void print_ahb_device_info (char *name) const =0
 Prints the device info of the device. More...
 
virtual void transport_statistics (tlm::tlm_generic_payload &gp)=0 throw ()
 Collect common transport statistics. More...
 

Constructor & Destructor Documentation

virtual AHBDeviceBase::~AHBDeviceBase ( )
inlinevirtual

Empty destructor.

Member Function Documentation

virtual const uint32_t AHBDeviceBase::get_ahb_bar_addr ( uint32_t  bar) const
throw (
)
pure virtual

Returns the Bus specific base address of the device. Returns the address of one bar in byte offset as seen from the bus.

Parameters
barThe selected bar

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual const uint32_t AHBDeviceBase::get_ahb_bar_base ( uint32_t  bar) const
throw (
)
pure virtual

Returns the Bus specific most significant 12bit of the bar base address Shifted to the lowest bits in the word.

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual const uint32_t AHBDeviceBase::get_ahb_bar_mask ( uint32_t  bar) const
throw (
)
pure virtual

Returns the Bus specific mask of the most significant 12bit of the bar address Shifted to the lowest bits in the word.

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual const uint32_t AHBDeviceBase::get_ahb_bar_relative_addr ( uint32_t  bar,
uint32_t  addr 
) const
throw (
)
pure virtual

Returns the BAR relative address

Parameters
barThe selected bar

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual const uint32_t AHBDeviceBase::get_ahb_bar_size ( uint32_t  bar) const
throw (
)
pure virtual

Returns the size of one bar in bytes as seen from the bus.

Parameters
barThe selected bar

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual const AMBADeviceType AHBDeviceBase::get_ahb_bar_type ( uint32_t  bar) const
throw (
)
pure virtual

Returns the type of the bar.

Parameters
barThe selected bar
See Also
AMBADeviceType

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual sc_dt::uint64 AHBDeviceBase::get_ahb_base_addr ( )
throw (
)
pure virtual
virtual const uint32_t AHBDeviceBase::get_ahb_base_addr_ ( ) const
throw (
)
pure virtual

Returns the Bus specific base address of the device. Legacy for AMBAKit Please use get_bar_address instead. It will work with gaps between slave areas.

See Also
get_bar_addr
Returns
The device base address.

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual const uint16_t AHBDeviceBase::get_ahb_device_id ( ) const
throw (
)
pure virtual
virtual const uint32_t* AHBDeviceBase::get_ahb_device_info ( )
throw (
)
pure virtual

Returns the device register file. A set of 8 registers as specified by the grlib manual. See section: 4.2.3 (Page 50)

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual const uint32_t AHBDeviceBase::get_ahb_hindex ( ) const
throw (
)
pure virtual

Returns the bus id of the module (hindex)

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual sc_dt::uint64 AHBDeviceBase::get_ahb_size ( )
throw (
)
pure virtual
virtual const uint32_t AHBDeviceBase::get_ahb_size_ ( ) const
throw (
)
pure virtual

Returns the size of the hole device as seen from the bus. Legacy for AMBAKit Please use get_bar_size instead. It will work with gaps between the slave areas.

See Also
get_bar_size
Returns
The device size.

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual const uint8_t AHBDeviceBase::get_ahb_vendor_id ( ) const
throw (
)
pure virtual
virtual void AHBDeviceBase::print_ahb_device_info ( char name) const
pure virtual

Prints the device info of the device.

Implemented in AHBDevice< BASE >, AHBDevice< BaseModule< DefaultBase > >, and AHBDevice< APBSlave >.

virtual void AHBDeviceBase::transport_statistics ( tlm::tlm_generic_payload &  gp)
throw (
)
pure virtual

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