DDR MemBIST
If MBCSR:algo = 0x0 (no algorithm), then MBCSR:dtype determines the failure address
error logging registers. For dtype = 0x0 (fixed), address logging will occur according
the to “Fixed data pattern” entries in Table 11-10. For dtype other than 0x0 (that is,
circular, random, or user data), if MBCSR:mbdata = 1, then the “Other data pattern”
entries show the address logging registers. For these dtypes, if MBCSR:mbdata = 0
(accumulator), no failure address logging is available.
Table 11-10.Failure to Logging Register Correspondence
Failure
number
Address logged in
Data logged in
1
Fixed data pattern: MBDATA4
Other data pattern: MBDATA0
MB_ERR_DATA0[4:0]
2
3
Fixed data pattern: MBDATA5
Other data pattern: MBDATA1
MB_ERR_DATA1[4:0]
MB_ERR_DATA2[4:0]
MB_ERR_DATA3[4:0]
Not logged
Fixed data pattern: MBDATA6
Other data pattern: MBDATA2
4
Fixed data pattern: MBDATA7
Other data pattern: MBDATA3
5
Fixed data pattern: MBDATA9
Other data pattern: MBDATA8
6 +
Not logged
Not logged
11.3.5.5
Multiple Failures
MemBIST may detect many more failures than there are available registers in which to
log them. For some test purposes, the information captured by the failure data bit
location accumulator may be sufficient. However, in other situations, capturing all of
the failure data and failure addresses may be significant. As long as the failures are
repeatable, MemBIST provides a mechanism to extract the failure information about all
failures which MemBIST detects during execution of each MemBIST operation.
Repeatable failures are ones which occur each time that a test is run.
MemBIST uses the MBFADDRPTR register to discard logs for certain errors, allowing
other errors to be logged instead. (However, this register has no effect on setting bits
in the failure data bit location accumulator.) The error logging described in the
previous section actually occurs on the first through fifth errors after the
MBFADDRPTR register equals zero. Since this register defaults to zero, this is the
normal logging behavior. However, if storing of logs for later errors is desired, the
MBFADDRPTR register should simply be set to the number of earlier logs which are to
be discarded.
For example, suppose that MemBIST has been executed, and 5 logs were stored in the
failure address logs. Full information was available for the first four (because both
address and data logs exist). To collect both the failure address and data for the fifth
failure, set MBFADDRPTR to 0x4 and rerun MemBIST. Each of the first 4 logs will be
discarded, and will decrement MBFADDRPTR until it reaches 0. The fifth log will be
stored, as it is the first to occur after MBFADDRPTR reached 0.
This will work no matter what the position of the error is within the burst. Referencing
the above example, if the fourth error is within a burst, and the fifth error is within the
same burst but not in the same 144-bit chunk containing the fourth error, the fourth
error will not be logged and the fifth error will be logged.
130
Intel® 6400/6402 Advanced Memory Buffer Datasheet