Setup Guide

Tests
Address Read—Causes read transactions on the memory bus. Address read can loop for several iterations, checking for any
changes in the data between iterations. You can specify patterns on the address bus for the bits to allow the testing for stuck address
bits.
Address Write—Creates write transactions on the memory bus. Address writes can loop for several iterations, and works similar
to the Address Read test.
Address Walking 1—Walks a 1 though the provided address space in memory for the available address bits. Address Walking 1
writes the address of the cell in the location it is referencing. After it completes writing all the locations, it walks back through and
verifies that the data is correct.
Address Walking 0—Walks a 0 address bit through the memory area available to it. Address walking 0 writes the additive inverse
of the address to the location. After writing all addressed locations, it walks back through and verifies the locations data.
Data Read—Reads transactions similar to the Address Read test, but focuses on the data bits. Patterns are placed on the data bus
to test for stuck data bits.
Data Write—Places data patterns on the bus for testing the bus and looks for stuck data bits.
Data Walking 1—Walks a 1 through the data bits within an address location and verifies that the values are valid before
overwriting.
Data Walking 0—Walks a 0 through the data bits and verifies the value as it is testing.
Data Sliding 1—Slides a 1 through the data testing for stuck bits. By xor of each shift to the data, when complete, the cell
holds all the 1s.
Data Sliding 0—Slides a 0 through the data bits set to 1. By xor of each shift of the data, when complete, the cell holds all the
1s.
Data Pattern—Writes four different patterns to memory locations within the specified region. The patterns are 0xFFFF, 0xFF00,
0xF0F0, 0xAAAA, 0xAA55 and 0x5555. The patterns are written as repeated portions of these patterns in the memory to fill the
memory and as Hamming patterns (such as Hamming [8,4], Hamming[16,11], Hamming[32,26] or Hamming[64,57]) encoding with the
additional most significant byte (MSB) parity bit to cover the parity bits in the Hamming code. This pattern allows for detecting
multiple bit errors.
Data Cache—Performs a rotation of a 16MB array in four clockwise rotations for 16 iterations of the complete rotation. The 16MB
size ensures that memory is not within the cache lines and causes cache ejections through each of the rotations.
CLI options
root@dellemc-diag-os:~# memtool
DellEmc Diag - Memory Tool
version 2.0, x.xx.x.x-x
build, 2019/07/03,
Syntax: memtool <option>
Show the Help-text:=
memtool --h (or)
memtool -h
Display the configuration info of the device:=
memtool --info (or)
memtool -i
List all of the memory regions in the config file:=
memtool --list (or)
memtool -l
Test using the MEM test config file:=
memtool --test --region=<region/'ALL'> [--testlist=<test0>,<test1>...] (or)
memtool -t -G <region/ALL> [-T <test0>,<test1>,...]
Read the specified physical address:=
memtool --read --addr=<address> --count=<bytes> [--width=<8,16,32>] [--be] (or)
memtool -r -a <address> -C <bytes> [-W <#8,16,32>] [-b]
Write at the specified physical address:=
memtool --write --addr=<address> --val=<data0>,<data1>, ... ,<dataN> [--
width=<8,16,32>] (or)
memtool -w -a <address> -V <data0>,<data1>...,<dataN> [-W <8,16,32>]
Execute repeatedly command by count:=
memtool --iteration=max/<count> [option1] [option2]... (or)
memtool -I max/<count> [option1] [option2]...
Usage:=
-h, --h Show the help text
-t, --test Test using the pre-programmed configuration or use supplied config
42
Dell EMC DIAG-OS tools