GR740-UM-DS, Nov 2017, Version 1.7
226
www.cobham.com/gaisler
GR740
that the PCI target does not change the byte order even if the endianess conversion is enabled and the
PCI master always converts PCI Configuration Space accesses to little-endian.
Data stored in a register in the PCI Configuration Space as 0x12345678 (bit[31:0]) is transferred to
the AHB bus as 0x78563412 (bit[31:0]). This means that non-8-bit accesses to the PCI Configuration
Space must be converted in software to get the correct byte order.
15.3.5 Memory and I/O accesses
Memory and I/O accesses are always affected by the endianess conversion setting. The core should
define the PCI bus as little-endian in the following scenarios: When the core is the PCI host and little-
endian peripherals issues DMA transfers to host memory. When the core is a peripheral device and
issues DMA transfers to a little-endian PCI host.
15.3.6 Bursts
PCI bus:
The PCI target terminates a burst when no FIFO is available (the AMBA AHB master is not
able to fill or empty the FIFO fast enough) or for reads when the burst reached the length specified by
the “AHB master prefetch burst limit” register. This register defines a boundary which a burst can not
cross i.e. when set to 0x400 beats (address boundary at 4 KiB) the core only prefetches data up to this
boundary and then terminates the burst with a disconnect.
The PCI master stops the burst when the latency timer times out (see the PCI Local Bus Specification
for information on the latency timer) or for reads when the burst reaches the limit defined by “PCI
master prefetch burst limit” register (if AHB master performing the access is unmasked). If the master
is masked in this register, the limit is set to 1 KiB. The PCI master does not prefetch data across this
address boundary.
AHB bus:
As long as a FIFOs are available for writes and data in a FIFO is available for read, the
AHB slave does not limit the burst length. The burst length for the AHB master is limited by the FIFO
depth (8 words). The AHB master only bursts up to the FIFO boundary. Only linear-incremental burst
mode is supported.
DMA:
DMA accesses are not affected by the “AHB master prefetch burst limit“ register or the “PCI
master prefetch burst limit" register.
All FIFOs are filled starting at the same word offset as the bus access (i.e. with a FIFO of depth 8
words and the start address of a burst is 0x4, the first data word is stored in the second FIFO entry and
only 7 words can be stored in this FIFO).
15.3.7 Host operation
The core provides a system host input (pci_hostn) signal that must be asserted (active low) for PCI
system host operations. The status of this signal is available in the Status & Capability register acces-
sible via the APB slave interface. The device is only allowed to generate PCI configuration cycles
when this signal is asserted (device is the system host).
For designs intended to be host or peripherals only, the PCI system host signal can be tied low (host)
or high (peripheral). For multi-purpose designs it should be connected to a pin on the PCI interface.
The PCI Industrial Computer Manufacturers Group (PCIMG) cPCI specification uses pin C2 on con-
nector P2 for this purpose. The pin should have a pull-up resistor since peripheral slots leave it uncon-
nected.
An asserted PCI system host signal makes the PCI target respond to configuration cycles when no
IDSEL signal is asserted (none of AD[31:11] are asserted). This is done for the PCI master to be able
to configure its own PCI target.