If XIO_Address is set, the XIO accesses the I/O view. This view is primarily
designed to allow access to the Hub interrupt registers.
If XIO_Address is cleared, the XIO accesses the memory view.
In normal operation, DMA operations use the memory view.
The XIO memory view is similar to the memory address map available to a processor, in that XIO's 40-bit memory space is divided into equal regions per node. The Hub ignores A[46:40] in the memory view, effectively creating an alias space with these bits.
The M Mode address map for the XIO memory view is shown in Figure 4-1.
M Mode memory view address mappings are shown in Figure 4-2. XIO_Address is always set to a 0, indicating a memory view.
The XIO's IO view of the Origin2000 system is slightly different from the XIO memory view. The 9-bit NASID is merged with XIO_Address[46:38].  This means the 4-GB Hub region occurs somewhere within a 256 GB space.
The Hub region is indexed by the sum of NodeID plus XIO_Address[46:38], and offset is XIO_Address[31:0], as is shown in Figure 4-3.
A series of Hub regions within their encompassing 256 GB spaces are shown in Figure 4-5.
As shown in Figure 4-4, the Hub ignores XIO_Address[37:32]. XIO_Address is always set to a 1, indicating an IO view, as shown in this figure.
The remainder of the XIO address is similar to the memory view model, which means the view within a node is similar to the processor's view of memory, as shown in Figure 4-5.
 Software has the responsibility for zeroing bit, the upper bit of the NASID index.