Stratix® 10 Hard Processor System Technical Reference Manual
A newer version of this document is available. Customers should click here to go to the newest version.
Visible to Intel only — GUID: ynp1481129300035
Ixiasoft
Visible to Intel only — GUID: ynp1481129300035
Ixiasoft
4.7.3. Specifying Address Ranges for Slave Devices
AxAddress & AM_ADMASK[i] == AM_ADBASE[i]where i represents a register bit.
You can program address ranges as disabled, read-only, or write-only. During address decode, the CCU compares ARPROT or AWPROT signals with the access privilege programmed for an address range. A failed access check results in a decode error response for the transaction.
- Program the following fields in a bridge's *am_adbase* register:
Table 49. *am_adbase* Register Field Settings *am_adbase* Register Bitfield Configuration Description BASE_ADDRESS The base address value must be a factor of the address mask value. The base address register bitfields must not have a 1 where a corresponding mask bit is 0. Note: To prevent access errors, ensure that the *am_adbase* base address lies within the slave's valid address range.DI Set this bit if you are configuring this address range to be disabled. R_Wn Set this bit to make this address range readable; clear this bit to make it writable. I Set this bit if this address range holds instructions. NS Set this bit to make the address range non-secure; clear this bit to make the address range secure. P Set this bit to indicate if this range is only available through a privileged access. - Program the corresponding *am_admask* register.
Bits [2:0] of *am_adbase* and *am_admask* act as a value and mask for checking against the AxPROT of an incoming command. The CCU allows a command access to a range if
AxPROT & *am_admask*[2:0] == *am_adbase*[2:0] & *am_admask*[2:0]
If the above check fails, then the CCU denies the command access to the range and returns a decode error response. For any access, you can selectively disable an address range or designate the access as read-only or write-only access using *am_adbase*[4:3] and *am_admask*[3]. The table below details the encodings.Table 50. Address Range Access Note: An X in this table denotes a "don't care."*am_adbase*[4]-DI *am_admask*[3]-VALID *am_adbase*[3]-R_Wn Access 1 X X Range disabled 0 1 1 Read only 0 1 0 Write only 0 0 X Read/write