Manual PCI-DA12-2/4/6
14
Chapter 4: Address Selection
These cards use two I/O address spaces, one of 64 bytes and one of 256 bytes. The DACs and control
registers occupy the first 16 bytes of the first area. The next 16 addresses are reserved. The digital I/O
circuit uses the next 4 register locations. The other 28 addresses are reserved. The 2nd I/O address
space of 256 bytes is used for software calibration data. These two I/O address spaces are defined in the
Port Address Selection Table in the Programming section of this manual.
PCI architecture is Plug-and-Play. This means that the BIOS or Operating System determines the
resources assigned to PCI cards, rather than the user. As a result, you cannot set or change the card's
base address or IRQ level. You can only determine what the system has assigned.
To determine the base address that has been assigned, run the PCIFind.EXE utility program provided.
This utility will display a list of all of the cards detected on the PCI bus, the addresses assigned to each
function on each of the cards, and the respective IRQs.
Alternately, some operating systems can be queried to determine which resources were assigned. In
these operating systems, you can use either PCIFind or the Device Manager utility from the System
Properties Applet of the control panel. The card is installed in the Data Acquisition class of the Device
Manager list. Selecting the card, clicking Properties, and then selecting the Resources Tab will display a
list of the resources allocated to the card.
PCIFind uses the Vendor ID and Device ID to search for your card, then reads the base addresses and
IRQ.
If you want to determine the base address and IRQ yourself, use the following information.
The Vendor ID for these cards is 494F. (ASCII for "IO")
The Device ID for the 2 is 6C90h.
The Device ID for the 4 is 6C98h.
The Device ID for the 6 is 6CA0h.
The control / DAC / I/O base address is BaseAddresses[2] in the PCI_COMMON_CONFIG structure,
while the calibration base address is BaseAddresses[3].