Transaction-Level Modeling Framework for Space Applications
#include <scireg.h>
Public Member Functions | |
scireg_region_if () | |
virtual | ~scireg_region_if () |
virtual scireg_response | scireg_get_region_type (scireg_region_type &t) const |
Get the region_type of this region: More... | |
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 scireg_response | scireg_get_string_attribute (const char *&s, 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_bit_width () const |
Get bit width and byte width of this region. More... | |
virtual sc_dt::uint64 | scireg_get_byte_width () const |
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_child_regions (std::vector< scireg_mapped_region > &mapped_regions, sc_dt::uint64 size=sc_dt::uint64(-1), sc_dt::uint64 offset=0) 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_parent_modules (std::vector< sc_core::sc_module * > &v) const |
Get parent SystemC modules 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... | |
|
inline |
References scireg_ns::scireg_tool_registry::add_region().
Referenced by sc_register_base::scireg_get_child_regions(), and sc_register_bank< unsigned int, unsigned int >::scireg_get_child_regions().
|
inlinevirtual |
References scireg_ns::scireg_tool_registry::remove_region().
|
inlinevirtual |
Add/Delete Callback objects associated with this region.
Reimplemented in sc_register_b< T >, sc_register_b< unsigned long long >, sc_register_b< unsigned int >, sc_register_b< unsigned short >, sc_register_b< DATA_TYPE >, and sc_register_b< unsigned char >.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Get bit attributes of type "t" into "v". "size" represents number of bytes returned, offset can be used to constrain the range.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Get bit width and byte width of this region.
Reimplemented in sc_register_b< T >, sc_register_b< unsigned long long >, sc_register_b< unsigned int >, sc_register_b< unsigned short >, sc_register_b< DATA_TYPE >, sc_register_b< unsigned char >, sr_register_bank< ADDR_TYPE, DATA_TYPE >, sr_register_bank< unsigned int, unsigned int >, sr_register_bank< ADDR_TYPE, DATA_TYPE >, sr_register_bank< unsigned int, unsigned int >, sc_register_field_base, and BaseMemory.
Referenced by scireg_get_byte_width().
|
inlinevirtual |
Reimplemented in sc_register_bank_base.
References scireg_get_bit_width().
|
inlinevirtual |
Get child regions mapped into this region, by returning a mapped region object representing each mapping. The size and offset parameters can be used to constrain the range of the search
Reimplemented in sc_register_bank< ADDR_TYPE, DATA_TYPE >, sc_register_bank< unsigned int, unsigned int >, and sc_register_base.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Query to see if DMI access has been granted to this region. "size" and offset can be used to constrain the range.
Reimplemented in BaseMemory.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Reimplemented in sc_register_field_base, and BaseMemory.
|
inlinevirtual |
If this region is a register field, these functions return low bit and high bit positions:
Reimplemented in sc_register_field_base, and BaseMemory.
|
inlinevirtual |
Get parent SystemC modules associated with this region.
Reimplemented in sc_register_bank_base, and sc_register_base.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Get parent regions of this region.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Get the region_type of this region:
Reimplemented in sc_register_bank_base, sc_register_base, sc_register_field_base, and BaseMemory.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Get string attributes of type "t" associated with this region. The returned string is assigned to "s".
Reimplemented in sc_register_bank_base, sc_register_base, and sc_register_field_base.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Get SC TLM2 Target socket associated with this region.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Get a vector of value_info objects for this region.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
Read a vector of "size" bytes at given offset in this region:
Reimplemented in sc_register_b< T >, sc_register_b< unsigned long long >, sc_register_b< unsigned int >, sc_register_b< unsigned short >, sc_register_b< DATA_TYPE >, sc_register_b< unsigned char >, sr_register_bank< ADDR_TYPE, DATA_TYPE >, sr_register_bank< unsigned int, unsigned int >, sr_register_bank< ADDR_TYPE, DATA_TYPE >, sr_register_bank< unsigned int, unsigned int >, sc_register_field_b< T >, sc_register_field_b< unsigned int >, sc_register_field_b< DATA_TYPE >, and BaseMemory.
References scireg_ns::SCIREG_UNSUPPORTED.
|
inlinevirtual |
|
inlinevirtual |
Write a vector of "size" bytes at given offset in this region:
Reimplemented in sc_register_b< T >, sc_register_b< unsigned long long >, sc_register_b< unsigned int >, sc_register_b< unsigned short >, sc_register_b< DATA_TYPE >, sc_register_b< unsigned char >, sr_register_bank< ADDR_TYPE, DATA_TYPE >, sr_register_bank< unsigned int, unsigned int >, sr_register_bank< ADDR_TYPE, DATA_TYPE >, sr_register_bank< unsigned int, unsigned int >, sc_register_field_b< T >, sc_register_field_b< unsigned int >, sc_register_field_b< DATA_TYPE >, and BaseMemory.
References scireg_ns::SCIREG_UNSUPPORTED.