Specifications
EISA and ISA Bus Support
14.7 EISA Bus Support on DEC 2000
14.7.1.7 System Control Register Access ( 1.E000.0000)
The System Control Register contains Memory configuration information in bits
<7:4>, and a code for the LED’s in bits <3:0>.
14.7.1.8 EISA Memory Space Access (2.0000.0000 - 2.FFFF.FFFF)
On the DEC 2000, this address space is used to access the RAM buffers which
are built into some EISA adapter boards. For instance, the DE422 card contains
a 64KB buffer on board which is accessed via EISA Memory Space. The memory
addresses are assigned to the boards that need them by the EISA Configuration
Utility. These starting addresses are no larger than F8000. From the EISA
adapter point of view, that address appears to be in system memory space. That
is the primary reason that the system board does not recognize EISA addresses
in the range 0.5 - 1 MB as DMA addresses. The following figures are intended
to show the mapping of EISA Memory space, and then give several examples
describing how a particular board uses this mapping.
Note
Devices cannot use this memory region at will. They must be assigned a
particular address range by the ECU to avoid overlap.
An example of how an EISA memory address would be formed illustrates the bit
shifting. Assume that the DE422 board is assigned a 64K buffer in EISA memory
space, starting at address C0000. To access a longword at address C0008 the
CPU would have to map the following PA:
PA = base_addr + offset_shifted_by_7 + length_constant_for_longword
2.0000.0000 + C0008 ^ 7 + 060 = 2.0600.0460
The base address is 2.0000.0000, the offset is shifted by 7 bits, putting the byte
offset into bits <8:7>, and the length constant for longword is put into bits<6:5>
by adding 060. Mapping this PA would yield a VA which would access the
longword on the DE422 on-board RAM starting at offset 8.
Note
This means you can not access E/ISA card buffer space as you did in the
INTEL architecture machines. In fact, unless your card is addressable at
an EISA address between 0x80000 and 0x100000, you risk corruption of
system memory if you attempt to access the E/ISA board buffer. The next
diagram shows this overlap of memory addresses.
Note also that EISA memory space is subject to the same sparse space
addressing as the EISA IO space. There are solutions available for cards
that cannot meet the previously described addressing requirements, but
they involve losing part of the available system physical memory.
Figure 14–2 shows EISA memory address space as seen by an EISA adapter on a
DEC 2000.
14–9