Compaq ES40CSLP Installation, User & Service Manual page 162

Rackmount system
Table of Contents

Advertisement

Troubleshooting and Diagnostics
Memtest Test 2
Memtest Test 2 uses a marching 1's/0's algorithm to test a specified section of memory. The
same range can be tested as in the graycode, test 1. The default data pattern used by this test is
0x55555555 and its inverse 0xAAAAAAAA. The data pattern can be altered with the -d
qualifier. The pattern entered and its compliment are then used instead.
Three passes are also made of the memory under test.
The first pass writes the data pattern entered (or default) beginning at the starting address
and marching through for the entire length specified.
The second pass begins again at the starting address, reads the previously written data
pattern and writes back its inverse, a longword at a time for the entire specified length.
The third pass begins at the end of the testing region, again reads back the previously
written inverse pattern, and writes back 0's, a longword at a time, decrementing up through
memory until the starting address is reached.
Memtest Test 3
The random test, Memtest Test 3, performs writes with random data to random addresses using
random data size, lengths, and alignments. The run time of the random test may be noticeably
longer than that of the other tests because it requires two calls to the console firmware's random
number generator every time data is written.
The random test accesses every memory location within the boundaries specified by the -sa and
-l qualifiers (as long as the length is less than 8 megabytes — until a 64 bit compiler exists.
With lengths greater than 8 megabytes, a modulo function is required on the seed and therefore
some addresses may get repeated and some not tested at all). It first obtains an address index
into the Linear Congruential Generator structure dependent on the length specified. It obtains
the data index as a function of the entered random data seed and the maximum 32 bit data
pattern. Using the address index and an initial address seed of 0, the random number generator
is called to obtain a random address. It is then called again, using the data index and initial user
entered data seed, (-rs qualifier), or default of 0, to get the longword of data to use in testing.
The lower bit of the random data returned is also used to determine whether to perform
longword or quadword transactions. (Using the lower bit saves another call to the random
function to help speed up the test). The data is then stored to the random address, and memory
barrier is performed to flush it out to the B-cache and then a read is done to read it back in. A
compare is then done on the data written and the data read. In the case of quadword writes and
reads, the longword of random data is shifted left by 32 and or'd with the original's compliment
to form the quadword.
Memtest Test 4
Memtest test 4 is a DVT test at this time. Test 4 requires that an actual memory module be
present in the system. You must first set up a block of data to use in the test. The address of this
block of data is read as an input to the test using the -ba qualifier. (default is block of data
containing 4 longwords of 0xF's, then 4 longwords of 0's, then 4 longwords of 0xF's and lastly
4 longwords of 0's.)
First, the test performs a write of the block of data to the specified starting address. It then adds
a B-cache offset to the starting address and performs another write of arbitrary data. This
causes the original data to be 'victimized' to memory. A read is then performed of the original
starting address and verifies that it is correct. The starting address is then incremented by a
block and the write/write/read procedure repeated for the specified length of memory.
6–36 Compaq ES40CSLP Rackmount System Installation/User/Service Guide

Advertisement

Table of Contents
loading

Table of Contents