ADM-XRC SDK 2.8.1 User Guide (Linux)
© Copyright 2001-2009 Alpha Data
Model | Supported |
ADM-XRC | ![]() |
ADM-XRC-P | ![]() |
ADM-XRC-II-Lite | ![]() |
ADM-XRC-II | ![]() |
ADM-XPL | ![]() |
ADM-XP | ![]() |
ADP-WRC-II | |
ADP-DRC-II | |
ADP-XPI | |
ADM-XRC-4LX | ![]() |
ADM-XRC-4SX | ![]() |
ADM-XRC-4FX | ![]() |
ADPE-XRC-4FX | ![]() |
ADM-XRC-5LX | ![]() |
ADM-XRC-5T1 | ![]() |
ADM-XRC-5T2 | ![]() |
ADM-XRC-5T2-ADV | ![]() |
ADM-XRC-5TZ | ![]() |
ADM-XRC-5T-DA1 | ![]() |
The Memory sample application is a host-driven memory test that verifies the memories on a reconfigurable computing card.
memory [options ...]
Option | Type | Meaning |
-banks | hexadecimal integer | Bitmask of banks to test (default 0xFFFFFFFF) |
-card | base 10 integer | ID of card to open |
-index | base 10 integer | Index of card to open |
-lclk | real number | Local bus clock frequency to use, in MHz (default depends upon type of card) |
-mask | Hexadecimal integer | Specifies optional mask to be applied during memory tests (default all ones) |
-mclk | real number | Memory clock frequency to use, in MHz (default depends upon type of card) |
-perf | Do not measure host memory acess throughput | |
+perf | Measure host memory acess throughput (default) | |
-refclk220 | Do not enable Virtex-5 IDELAYCTRL reference clock workaround (default) | |
+refclk220 | Enable Virtex-5 IDELAYCTRL reference clock workaround | |
-repeat | base 10 integer | Number of times to perform tests (default 1) |
-retry | Do not retry reads if data verification errors occur (default) | |
+retry | Retry reads if data verification errors occur; can be used to gather evidence about whether errors are occurring when reading or when writing | |
-usedma | Do not perform tests using DMA transfers | |
+usedma | Perform tests using DMA transfers (default) | |
-usepio | Do not perform tests using programmed I/O transfers (default) | |
+usepio | Perform tests using programmed I/O transfers | |
-64 | Operate local bus in 32 bit mode (default) | |
+64 | Operate local bus in 64 bit mode |
The Memory sample application tests all banks of on-board memory on a reconfigurable computing card. Unlike the Memtest application that it supersedes, the Memory sample application tests all banks of memory on a card regardless of the type of memory and whether or not a mixture of memory types are present.
When run, the Memory sample application performs a memory test consisting of the following phases:
The +64 option causes the application to operate the local bus in 64-bit mode. This is valid only for models that support a 64-bit local bus. Using the local bus in 64-bit mode increases the available bandwidth for data transfer, generally resulting in higher measured throughput in phase 5 (above).
A subset of the memory banks on a card can be tested by passing a bitmask of banks to test via the -banks option. For example, -banks 0xD would specify that only banks 0, 2 and 3 should be tested.
The local bus clock frequency used for the memory test can be specified on the command-line using the -lclk option. For example, -lclk 45 specifies a local bus clock frequency of 45 MHz. If the -lclk option is not specified on the command-line, the Memory application programs a sensible default frequency (for the model on which the application is run) into the local bus clock generator. For example, the default LCLK frequency when running Memory on an ADM-XRC-II is 66 MHz.
The -mask option enables a specific set of bits within a logical memory word to be tested. The mask defaults to all ones, but can be overridden on the command-line. For example, to test bits 0 to 29 inclusive while ignoring bits 30 and 31 of the data on an ADM-XRC-4SX card, the following would suffice: -mask 3fffffff. The mask is applied to all banks tested on a given run of Memory, so if different masks must be applied to different banks, use the -banks option and test each bank separately.
By default, the Memory application programs the MCLK clock generator to an appropriate frequency for the memory clock domain. This may be changed on the command-line using the -mclk option, although it is advisable that the user understands the relationship between the freqency at the target FPGA's MCLK pin (i.e. what is programmed into the clock generator) and the frequency of the internal clock within the FPGA. For example, with an ADM-XRC-4FX card, passing the option -mclk 210 on the command-line would result in the DDR-II SDRAM devices on the card operating at 210 MHz (DDR 420) and the memory clock domain within the target FPGA operating at 105 MHz. With an ADM-XRC-4LX card, passing the option -mclk 140 on the command-line would result in the ZBT SSRAM devices on the card operating at 140 MHz and the memory clock domain within the target FPGA also operating at 140 MHz.
The Memory sample application normally uses the Memory sample FPGA design (VHDL), but when the +64 option is specified, it uses the Memory64 sample FPGA design (VHDL).