Specifications

Table Of Contents
Constraints
You cannot perform memory tests while other tests that allocate and use memory within the region are
performing. However, you can perform Read tests concurrently with other processes. You cannot run
multiple memory tests at the same time as they may collide within the memory spaces.
Memory tests cannot test all the memory, and without cache flushes, memory tests may not get out of the
caches. The SDI must ensure the memory accessed is accessing the physical memory. This slows down the
tests.
Data Flow
The memtool is not part of the data path and does not participate in the data flow.
Configuration File Format
The configuration file for the memtool is a list of memory segments separated by a ==== divider. Each entry
describes the memory in a system that is accessible. This allows you to review memory in RAMs, FPGAs, and
RAM in a memory-mapped PCI BAR. Each parameter is on a separate line and consists of:
Name — The name of the memory region.
Start Address — The address that the memory starts with. If this is system memory, use a '-' to
request the system to get a location from the OS Heap.
Size — The size of the memory. If this is system memory, use a '-' to request the system to get a
location from the OS Heap
Access Mode — How you access the memory; through (b)yte, (h)alfword, or (w)ord.
Increment — The byte address increment for each successive memory location.
Ecc — checks if ECC is available.
Max Chunk — Memory is tested in chunks in which the available memory is divided into. This is the
maximum size of a chunk.
Max Cache — The size of the cache (not currently used). Ensures that caches are fully tested.
Cache Line — The size of a cache line (not currently used).
Iterations — How many times to run the tests on this region.
Tests — lists the tests to perform. Tests are specified in a comma-separated list.
Available tests are:
ALL_TESTS — All the following tests, except for DATA_CACHE, which must be run separately.
ADDRESS_READ — Read test of the address lines.
ADDRESS_WRITE — Write test of the address lines.
ADDRESS_WALKING1 — Walking a 1 through the address lines within the memory space.
ADDRESS_WALKING0 — Walking a 0 through the address lines within the memory space.
DATA_READ — Read test of the data lines.
Dell DiagOS Tools 61