CH Tech Quad M-module Carrier i4000 User Manual

Page 20

Advertising
background image

i4000 - Quad M-module carrier for VMEbus
User Manual

Version: 1.2

AcQuisition Technology bv
P.O. Box 627, 5340 AP

Page 20 of 25

Oss, The Netherlands

5.1.2. A

DDRESS

M

APPING

As mentioned before the address space occupied by the i4000 board is 0x800 bytes (A0-A10). These 0x800
bytes are divided into 4 identical spaces. Every 0x200 bytes block is assigned to a module slot. The first
0x100 bytes address space are assigned to the module itself and the second 0x100 bytes are used for the
access part of the interrupt controller.

Using this method of address decoding provides an identical address map of each module on the i4000
board. This makes writing the software easier since just the base address of the module, not the base
address of the i4000 has to be known. Every module has its own Interrupt-Vector and Interrupt-Control
register. The 0x100 bytes from each module used to access the interrupt controller are not completely
decoded. Both registers of the interrupt controller are mirrored several times within the 0x100 bytes address
space. Decoding of the M-module’s 0x100 bytes of address space is done on the used M-module.

Address map of the i4000

The base address of a module can be calculated using the following formula:

ModuleBaseAddress = i4000BaseAddress + ModuleNumber * 0x200

EXAMPLE:

The installed base address of the i4000 is 0x800000. A module is fitted into slot 2. The module base address
is then 0x800000 + 2 * 0x200 = 0x800400. When using a 32 bit master, which accesses the standard address
space at address 0xff??????, the module will be accessed at address 0xff800400. The corresponding
interrupt control register address is then 0xff800501.

0x000..0x0ff
0x101
0x103

Module
Control register (CR0)
Vector register (VR0

Module 0

0x200..0x2ff
0x301
0x303

Module
Control register (CR1)
Vector register (VR1)

Module 1

0x400..0x4ff
0x501
0x503

Module
Control register (CR2)
Vector register (VR2)

Module 2

0x600..0x6ff
0x701
0x703

Module
Control register (CR3)
Vector register (VR3)

Module 3

Advertising