
ADM-PCIE-7V3
Getting Started Guide
4.2 Building example host applications
Host applications for the A M-PCIE-7V3 are included in Alpah ata A MXRC3 S K release 1.7.0. The Linux
version can be downloaded from :
ftp://ftp.alpha-data.com/pub/admxrcg3/linux/beta/admxrcg3sdk_apps-linux-1.7.0b2.tar.gz
and the Windows version from :
ftp://ftp.alpha-data.com/pub/admxrcg3/windows/admxrcg3-sdk-win32-1.7.0.exe
If using Linux, after installation, to build the applications, cd to the apps/linux directory, run ./configure followed
by make all. Individual applications can be rebuilt from within their own directories simply by running make.
Note that it is recommended that you build the applications as a non-root user, but in general they should be run
with root privileges.
By default the board is configured with the simple reference design bitstream. As the API cannot dynamically
reconfigure the FPGA, only some of the applications will work in this configuration. Example applications
supported in this configuration are: simple, flash, dump, info, monitor, sysmon and vpd. All these applications
except simple, will work with any bitstream built with the Alpha ata bridge IP. Other examples require the FPGA
to be configured with a specific bitstream before running.
4.3 Testing host examples with reference bitstreams
In this section the use of host example code to control the card will be demonstrated, stepping through the
commands required to start the driver and run many of the applications. In Linux commands should be run as
user root and in Windows the user must have Administrator privileges.
1. Use lspci to check if the FPGA has a valid PCIe endpoint and has appeared on the PCIe bus. This will also
show how many PCIe lanes are running and at what speed. Windows users can download a version of
lspci from eternallybored.org.
[root@jura2 ~]# lspci -vvv -d 4144:adb3
01:00.0 Bridge: Alpha Data Device adb3 (rev 01)
Subsystem: Alpha Data Device 0706
Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <
MAbort- >SERR- <PERR- INTx-
Interrupt: pin A routed to IRQ 11
Region 0: Memory at f7c01000 (32-bit, non-prefetchable) [disabled]
[size=4K]
Region 1: Memory at f7c00000 (32-bit, non-prefetchable) [disabled]
[size=4K]
Region 2: Memory at f7800000 (64-bit, non-prefetchable) [disabled]
[size=4M]
Region 4: Memory at f0000000 (64-bit, prefetchable) [disabled] [size=4M]
...
LnkSta: Speed 8GT/s, Width x8, TrErr- Train- SlotClk- DLActive-
BWMgmt- ABWMgmt-
...
2. Start the driver
[root@jura2 ~]# modprobe adb3
3. Read back information from the board
[root@jura2 linux]# ./info/info
API information
API library version 1.4.15
Page 7Using the Alpha Data host API and Driver
ad-ug- 33_v1_4.pdf