Specifications
XAPP938 (v1.0) March 28, 2007 www.xilinx.com 1
©2007 Xilinx, Inc. All rights reserved. All Xilinx trademarks, registered trademarks, patents, and further disclaimers are as listed at http://www.xilinx.com/legal.htm. PowerPC is a
trademark of IBM Inc. All other trademarks and registered trademarks are the property of their respective owners. All specifications are subject to change without notice.
NOTICE OF DISCLAIMER: Xilinx is providing this design, code, or information "as is." By providing the design, code, or information as one possible implementation of this feature,
application, or standard, Xilinx makes no representation that this implementation is free from any claims of infringement. You are responsible for obtaining any rights you may require
for your implementation. Xilinx expressly disclaims any warranty whatsoever with respect to the adequacy of the implementation, including but not limited to any warranties or
representations that this implementation is free from claims of infringement and any implied warranties of merchantability or fitness for a particular purpose.
Summary The Xilinx LogiCORE™ solution for dynamic bus mode reconfiguration of PCI® and PCI-X
designs requires a different bitstream for each mode when targeting Virtex™-4 or Virtex-5
devices. To be fully compliant, the FPGA must recognize the bus type and select the
appropriate bitstream for the core to operate in the correct mode. This application note
discusses how to dynamically reload the FPGA after power-up, using a CPLD when the initial
bitstream is not compatible with the bus mode. The reference design is fully verified and tested
using the Virtex-4 Development Kit for PCI and PCI-X designs (ML455). FPGA and CPLD
design files for this board are included in the reference design file.
Overview Xilinx offers four cores for PCI and PCI-X designs. The appropriate core choice is based on the
target device and design requirements. Each core has a primary version number (shown in
Table 1 ) followed by a revision or build number.
More information about the current versions of these cores is available in the LogiCORE data
sheets for PCI and PCI-X section of the PCI/PCI-X
lounge.
The LogiCORE products support the dynamic reconfiguration option required for PCI-X
compliance. The dynamic reconfiguration technique can be used with any PCI-X design for any
of the supported devices shown in Ta ble 1 . However, this application note focuses on Virtex-4
and Virtex-5 designs. The Virtex-4 core (v5) and Virtex-5 core (v6) have slight variations in the
user application ports. This application note describes interfacing to each of these cores to
accomplish full PCI-X compliance. The Virtex-5 core (v4) also supports the dynamic
reconfiguration option. Designers using Virtex-5 devices have the option of using the standard
core (v4) to achieve 66 MHz PCI operation and the version 6 core for PCI-X operation. Both
version 5 and version 6 of the PCI-X solution only support 33 MHz PCI operation.
Application Note: Virtex-4 and Virtex-5 Solutions
XAPP938 (v1.0) March 28, 2007
Dynamic Bus Mode Reconfiguration of
PCI-X and PCI Designs
Authors: John Ayer and Jameel Hussein
R
Table 1: Available LogiCORE Products for PCI-X and PCI Solutions
Core
Primary
Version
Device(s) Supported
Bus Mode
Reconfiguration
Support
PCI
v3
Virtex-4, Virtex-II Pro, Virtex-E, Virtex,
Spartan-3E, Spartan-3, Spartan-IIE, Spartan-II
No
PCI v4 Virtex-5 Yes
PCI-X v5 Virtex-4, Virtex-II Pro, Virtex-E Yes
PCI-X v6 Virtex-5 Yes










