Logo SoCRocket

Transaction-Level Modeling Framework for Space Applications

Public Member Functions | Protected Member Functions | List of all members
sc_register_bank< ADDR_TYPE, DATA_TYPE > Class Template Referenceabstract

#include <sc_register.h>

Inheritance diagram for sc_register_bank< ADDR_TYPE, DATA_TYPE >:
Collaboration diagram for sc_register_bank< ADDR_TYPE, DATA_TYPE >:

Public Member Functions

 sc_register_bank (const unsigned long long size)
 
 sc_register_bank (const char *name, const unsigned long long size)
 
virtual ~sc_register_bank ()
 
virtual bool bus_read (const ADDR_TYPE offset, DATA_TYPE &data) const =0
 
virtual bool bus_write (const ADDR_TYPE offset, const DATA_TYPE data)=0
 
virtual bool bus_read_dbg (const ADDR_TYPE offset, DATA_TYPE &data) const =0
 
virtual bool bus_write_dbg (const ADDR_TYPE offset, const DATA_TYPE data)=0
 
virtual bool is_valid_offset (const ADDR_TYPE offset) const =0
 
virtual bool supports_action_type (const ADDR_TYPE offset, const sc_register_access_type accType)=0
 
- Public Member Functions inherited from sc_register_bank_base
 sc_register_bank_base ()
 
 sc_register_bank_base (unsigned long long size)
 
 sc_register_bank_base (const char *name, const unsigned long long size)
 
virtual ~sc_register_bank_base ()
 
virtual const charkind () const
 
unsigned long long size () const
 
bool add_associate_busport (sc_object *busport)
 
- Public Member Functions inherited from scireg_ns::scireg_region_if
 scireg_region_if ()
 
virtual ~scireg_region_if ()
 
virtual scireg_response scireg_read (vector_byte &v, sc_dt::uint64 size, sc_dt::uint64 offset=0) const
 Read a vector of "size" bytes at given offset in this region: More...
 
virtual scireg_response scireg_write (const vector_byte &v, sc_dt::uint64 size, sc_dt::uint64 offset=0)
 Write a vector of "size" bytes at given offset in this region: More...
 
virtual scireg_response scireg_get_bit_attributes (vector_byte &v, scireg_bit_attributes_type t, sc_dt::uint64 size, sc_dt::uint64 offset=0) const
 Get bit attributes of type "t" into "v". "size" represents number of bytes returned, offset can be used to constrain the range. More...
 
virtual sc_dt::uint64 scireg_get_bit_width () const
 Get bit width and byte width of this region. More...
 
virtual sc_dt::uint64 scireg_get_low_pos () const
 If this region is a register field, these functions return low bit and high bit positions: More...
 
virtual sc_dt::uint64 scireg_get_high_pos () const
 
virtual scireg_response scireg_get_parent_regions (std::vector< scireg_region_if * > &v) const
 Get parent regions of this region. More...
 
virtual scireg_response scireg_add_callback (scireg_callback &cb)
 Add/Delete Callback objects associated with this region. More...
 
virtual scireg_response scireg_remove_callback (scireg_callback &cb)
 
virtual scireg_response scireg_get_target_sockets (std::vector< sc_core::sc_object * > &v) const
 Get SC TLM2 Target socket associated with this region. More...
 
virtual scireg_response scireg_get_value_info (std::vector< scireg_value_info > &v) const
 Get a vector of value_info objects for this region. More...
 
virtual scireg_response scireg_get_dmi_granted (bool &granted, sc_dt::uint64 size, sc_dt::uint64 offset=0) const
 Query to see if DMI access has been granted to this region. "size" and offset can be used to constrain the range. More...
 

Protected Member Functions

virtual sc_register_baseget_register (const ADDR_TYPE offset)=0
 
virtual bool get_offset (sc_register_base *reg, ADDR_TYPE &offset) const =0
 
virtual void print_offset (sc_register_base *reg,::std::ostream &os) const
 
scireg_ns::scireg_response scireg_get_child_regions (std::vector< scireg_ns::scireg_mapped_region > &mapped_regions, sc_dt::uint64 size, sc_dt::uint64 offset) const
 
- Protected Member Functions inherited from sc_register_bank_base
virtual const sc_register_vecget_registers () const =0
 
const std::vector< sc_object * > & get_associate_busports () const
 
virtual scireg_ns::scireg_response scireg_get_string_attribute (const char *&s, scireg_ns::scireg_string_attribute_type t) const
 Get string attributes of type "t" associated with this region. The returned string is assigned to "s". More...
 
virtual sc_dt::uint64 scireg_get_byte_width () const
 
virtual scireg_ns::scireg_response scireg_get_region_type (scireg_ns::scireg_region_type &t) const
 Get the region_type of this region: More...
 
virtual scireg_ns::scireg_response scireg_get_target_sockets (::std::vector< sc_core::sc_object * > &v) const
 
virtual scireg_ns::scireg_response scireg_get_parent_modules (std::vector< sc_core::sc_module * > &v) const
 Get parent SystemC modules associated with this region. More...
 

Additional Inherited Members

- Protected Attributes inherited from sc_register_bank_base
unsigned long long m_size
 
::std::vector
< sc_core::sc_object * > 
m_associate_busports
 

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