We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 34806

Design Assistant for PCI Express - Software that Displays PCI Express Devices In System


This Answer Record describes three different software applications available to help diagnose problems with the PCI Express device in the system.
NOTE:This Answer Record is part of the Xilinx Solution Center for PCI Express (Xilinx Answer 34536).The Xilinx Solution Center for PCI Express is available to address all questions related to PCIe.Whether you are starting a new design with PCIe or troubleshooting a problem, use the Solution Center for PCIe to guide you to the right information.


LSPCI (Linux)
LSPCI is available on Linux platforms and allows users to view the PCI Express device configuration space. LSPCI is usually found in the /sbin directory. LSPCI displays a list of devices on the PCI buses in the system. See the LSPCI manual for all command options.

Some useful commands for debugging include:

lspci -x -d [< vendor >]:[< device >]

This displays the first 64 bytes of configuration space in hexadecimal form for the device with vendor and device ID specified (omit the -d option to display information for all devices). The default Vendor/Device ID for Xilinx cores is 10EE:6012. Below is a sample of a read of the configuration space of a Xilinx device:

lspci -x -d 10EE:6012

81:00.0 Memory controller: Xilinx Corporation: Unknown device 6012
00: ee 10 12 60 07 00 10 00 00 00 80 05 10 00 00 00
10: 00 00 80 fa 00 00 00 00 00 00 00 00 00 00 00 00
20: 00 00 00 00 00 00 00 00 00 00 00 00 ee 10 6f 50
30: 00 00 00 00 40 00 00 00 00 00 00 00 05 01 00 00

Included in this section of the configuration space are the Device ID, Vendor ID, Class Code, Status and Command registers, and Base Address Registers.

lspci -xxxx -d [< vendor >]:[< device >]

This displays the extended configuration space of the device. It might be useful to read the extended configuration space on the root and look for the Advanced Error Reporting (AER) registers. These registers provide more information on why the device has flagged an error (for example, it might show that a correctable error was issued because of a replay timer time-out).

lspci -k

Shows kernel drivers handling each device

PCItree (Windows)

PCItree can be downloaded at www.pcitree.de and allows the user to view the PCI Express device configuration space and perform 1 DWORD memory writes and reads to the aperture. The configuration space is displayed by default in the lower right corner when the device is selected, as shown in here. PCItree will not show you the PCI Express extended configuration space.


HWDIRECT can be purchased at www.eprotek.com and allows the user to view the PCI Express device configuration space as well as the extended configuration space (including the AER registers on the root).

Revision History
8/13/2010 - Initial Release

Linked Answer Records

Associated Answer Records

AR# 34806
Date 12/15/2012
Status Active
Type General Article
  • Endpoint Block Plus Wrapper for PCI Express
  • Spartan-6 FPGA Integrated Endpoint Block for PCI Express ( PCIe )
  • Virtex-6 FPGA Integrated Block for PCI Express ( PCIe )