Visible to Intel only — GUID: dsu1455751757727
Ixiasoft
Visible to Intel only — GUID: dsu1455751757727
Ixiasoft
4.3.2.1.2. Defining the Input/Output Avalon-MM Master Address Mapping Windows
When you specify the value for Number of Rx address translation windows in the RapidIO II parameter editor, you determine the number of address translation windows available for translating incoming RapidIO read and write transactions to Avalon-MM requests on the I/O Logical layer Master port.
You must program the Input/Output Master Mapping Window registers to support the address ranges you wish to distinguish. You can disable an address translation window that is available in your configuration, but the maximum number of windows you can program is the number you specify in the RapidIO II parameter editor with the Number of Rx address translation windows value.
- A base register: Input/Output Master Mapping Window n Base
- A mask register: Input/Output Master Mapping Window n Mask
- An offset register: Input/Output Master Mapping Window n Offset
You can change the values of the window defining registers at any time. You should disable a window before changing its window defining registers.
To enable a window, set the window enable (WEN) bit of the window’s Input/Output Master Mapping Window n Mask register to the value of 1. To disable it, set the WEN bit to the value of zero.
For each defined and enabled window, the RapidIO II IP core masks out the RapidIO address's least significant bits with the window mask and compares the resulting address to the window base.
(rio_addr[33:4] & {xamm[1:0], mask[31:4]}) == ({xamb[1:0], base[31:4]} & {xamm[1:0], mask[31:4]})where:
- rio_addr[33:0] is the 34-bit RapidIO address composed of {xamsbs[1:0],address[28:0],3b’000} for RapidIO header fields xamsbs and address.
- mask[31:0] is composed of {Mask register[31:4], 4b’0000}.
- base[31:0] is composed of {Base register[31:4], 4b’0000}.
- xamm[1:0] is the XAMM field of the I/O Master Mapping Window n Mask register.
- xamb[1:0] is the XAMB field of the I/O Master Mapping Window n Base register.
Avalon-MM address[31:4] = (offset[31:4] & mask[31:4]) | (rio_addr[31:4] & ~mask[31:4])where:
- offset[31:0] is the offset register. The least significant four bits of this register are always 4’b0000.
- The definitions of all other terms in the equation appear in the definition of the matching window.
- Sets the Illegal Transaction Decode Error bit in the Error Management Extension registers.
- Sets the ADDRESS_OUT_OF_BOUNDS interrupt bit in the Input/Output Master Interrupt register.
- Asserts the interrupt signal io_m_mnt_irq if this interrupt is enabled by the corresponding bit in the Input/Output Master Interrupt Enable register.
- For a received NREAD or NWRITE_R request packet that does not match any enabled window, returns a RapidIO ERROR response packet.