You copied the Doc URL to your clipboard.

Mapping for AMBA buses

This section describes the control signal mappings, the response mappings, and the response bit mappings for AMBA buses.

The control signal mappings for AXI, ACE, and AHB buses. The APB bus does not use these control signals.


Table 1. Signal mappings for amba_pv_control
amba_pv_control ACE, ACE-Lite AXI4 AXI3 AHB
bool is_privileged() const; void set_privileged(bool = true); AxPROT[0] AxPROT[0] AxPROT[0] HPROT[1]
bool is_instruction() const; void set_instruction(bool = true); AxPROT[2] AxPROT[2] AxPROT[2] HPROT[0]
bool is_non_secure() const; void set_non_secure(bool = true); AxPROT[1] AxPROT[1] AxPROT[1] -
bool is_locked() const; void set_locked(bool = true); - - AxLOCK = 2 HLOCK
bool is_exclusive() const; void set_exclusive(bool = true); AxLOCK AxLOCK AxLOCK = 1 -
void set_bufferable(bool = true); bool is_bufferable() const; AxCACHE[0] AxCACHE[0] AxCACHE[0] HPROT[2]
void set_cacheable(bool = true); bool is_cacheable() const; - - AxCACHE[1] HPROT[3]
void set_modifiable(bool = true); bool is_modifiable() const; AxCACHE[1] AxCACHE[1] - -
void set_read_allocate(bool = true); bool is_read_allocate() const; AxCACHE[2] AxCACHE[2] AxCACHE[2] -
void set_write_allocate(bool = true); bool is_write_allocate() const; AxCACHE[3] AxCACHE[3] AxCACHE[3] -
void set_read_other_allocate(bool = true); bool is_read_other_allocate() const; AxCACHE[3] AxCACHE[3] - -
void set_write_other_allocate(bool = true); bool is_write_other_allocate() const; AxCACHE[2] AxCACHE[2] - -
void set_qos(unsigned int); unsigned int get_qos() const; AxQOS[3:0] AxQOS[3:0] - -
void set_region(unsigned int); unsigned int get_region() const; AxREGION[3:0] AxREGION[3:0] - -
void set_domain(amba_pv_domain_t); amba_pv_domain_t get_domain() const; AxDOMAIN[1:0] - - -
void set_snoop(amba_pv_snoop_t); amba_pv_snoop_t get_snoop() const; AxSNOOP[3:0] - - -
void set_bar(amba_pv_bar_t); amba_pv_bar_t get_bar() const; AxBAR[1:0] - - -

The response mappings for AXI, ACE, AHB, and APB buses.


Table 2. Response mappings for amba_pv_resp_t
amba_pv_resp_t AXI xRESP AHB HRESP APB PSLVERR
AMBA_PV_OKAY OKAY OKAY LOW
AMBA_PV_EXOKAY EXOKAY - -
AMBA_PV_SLVERR SLVERR ERROR HIGH
AMBA_PV_DECERR DECERR ERROR HIGH

Note

PSLVERR signal support is not a requirement for APB peripherals. If a peripheral does not support this signal then the corresponding appropriate response is AMBA_PV_OKAY.

The additional response bit mappings for the ACE bus.


Table 3. Mappings for additional ACE bus response bits
amba_pv_extension and amba_pv_response ACE ACE-Lite
bool is_pass_dirty() const; void set_pass_dirty(bool = true); RRESP[2], CRRESP[2] RRESP[2]
bool is_shared() const; void set_shared(bool = true); RRESP[3], CRRESP[2] RRESP[3]
bool is_snoop_data_transfer() const; void set_snoop_data_transfer(bool = true); CRRESP[0] -
bool is_snoop_error() const; void set_snoop_error(bool = true); CRRESP[1] -
bool is_snoop_was_unique() const; void set_snoop_was_unique(bool = true); CRRESP[4] -