Download here - CDMS

Transcript
Model 618 & 620 Adapters
The DMA-to-PCI Mapping Registers translate the PCI DMA address into a
physical PCI bus address. These registers must be initialized by a PCI
processor to point to PCI memory. The PCI processor must also communicate
to the VMEbus processor which DMA-to-PCI Mapping Registers were
initialized. The VMEbus processor needs this information to form the starting
remote DMA address value and to determine how long the DMA can be before
it can program a DMA transfer.
For information on how to program the DMA-to-PCI Mapping Registers,
see section 5.6.1.
8.6.2 DMA CSRs
To start a DMA transfer, the following DMA CSRs need to be programmed by
a VMEbus master:
DMA REGISTER
Local DMA Address
Remote DMA
Address
Local DMA
Remainder Count
Remote DMA
Remainder Count
Local DMA Packet
Count
Local DMA
Command
PROGRAMMING
Load with the VMEbus address of the first location
to be transferred
Load bits 11-0 with A11 through A0 of the first PCI
physical address to access. Load bits 23-12 with the
starting DMA-to-PCI Mapping Register to use
Load with the least significant 8 bits of the DMA
length in bytes. This is the same as the DMA length
in bytes modulo 256
Load with the same value as the Local DMA
Remainder Count Register
Load with the DMA transfer size in bytes divided by
256
Load with a bit mask indicating how the DMA is to
be performed (write/read, block/non-block). Must be
loaded twice: first, at the beginning of DMA
programming, with all appropriate bit settings except
the DMA Start bit (bit 7); then, again at the end of
DMA programming with the same bits set as before
plus the DMA Start bit. The second write starts the
DMA. See figure on next page
Using VMEbus Adapter Card Functions 139