Memory ECC Syndromes and Addressing

When PYXIS detects a correctable ECC error, the ECC syndrome for the high quadword is latched on error into the ERROR_SYNDROME1 field in PYXIS_SYN<15:8>; the ECC syndrome for the low quadword is saved in the ERROR_SYNDROME0 field in PYXIS_SYN<7:0>.

When the CPU detects a correctable ECC error, the ECC syndrome for the high quadword is latched on error into FILL_SYN<15:8>. The ECC syndrome for the low quadword is saved in FILL_SYN<7:0>.

See the tables below for decoding single bit errors in the data and check bits. A syndrome of zero implies no error in that quadword. If the syndrome is not in the table, then the error involved more than one bit. Data bit numbers shown are in the low quadword; for errors in the high quadword, add 64 to the data bit number.

List of ECC syndrome codes sorted by syndrome.
List of ECC syndrome codes sorted by data bit.

When PYXIS detects a memory error, the memory address is latched into the MEAR and MESR registers. MEAR<31:4> contains ERROR_ADDR<31:4>; MESR<1:0> contains ERROR_ADDR<33:32>.

The physical DIMM associated with this address can be identified by inspecting the BBARx and BCRx registers (where "x" is the memory bank number zero through two).

Memory DIMM Connectors
BankLow Quadword
Connector
High Quadword
Connector
0J1J2
1J3J4
2J5J6

ECC Syndrome Codes (Sorted by Syndrome Bits)
(CB = Check Bit)
Syn Code/
Data Bit
Syn Code/
Data Bit
Syn Code/
Data Bit
Syn Code/
Data Bit
Syn Code/
Data Bit
01 / CB026 / 1064 / 57A2 / 40E3 / 24
02 / CB129 / 1167 / 58A4 / 41E5 / 25
04 / CB22A / 1268 / 59A7 / 42E6 / 26
08 / CB32C / 136B / 60A8 / 43E9 / 27
0B / 1731 / 146D / 61AB / 44EA / 28
0E / 1634 / 1570 / 62AD / 45EC / 29
10 / CB440 / CB675 / 63B0 / 46F1 / 30
13 / 184A / 3380 / CB7B5 / 47F4 / 31
15 / 194F / 328A / 49CB / 1
16 / 2052 / 348F / 48CE / 0
19 / 2154 / 3592 / 50D3 / 2
1A / 2257 / 3694 / 51D5 / 3
1C / 2358 / 3797 / 52D6 / 4
20 / CB55B / 3898 / 53D9 / 5
23 / 85D / 399B / 54DA / 6
25 / 962 / 569D / 55DC / 7

ECC Syndrome Codes (Sorted by Data Bits)
(CB = Check Bit)
Data Bit/
Syn Code
Data Bit/
Syn Code
Data Bit/
Syn Code
Data Bit/
Syn Code
Check Bit/
Syn Code
0 / CE16 / 0E32 / 4F48 / 8F0 / 01
1 / CB17 / 0B33 / 4A49 / 8A1 / 02
2 / D318 / 1334 / 5250 / 922 / 04
3 / D519 / 1535 / 5451 / 943 / 08
4 / D620 / 1636 / 5752 / 974 / 10
5 / D921 / 1937 / 5853 / 985 / 20
6 / DA22 / 1A38 / 5B54 / 9B6 / 40
7 / DC23 / 1C39 / 5D55 / 9D7 / 80
8 / 2324 / E340 / A256 / 62
9 / 2525 / E541 / A457 / 64
10 / 2626 / E642 / A758 / 67
11 / 2927 / E943 / A859 / 68
12 / 2A28 / EA44 / AB60 / 6B
13 / 2C29 / EC45 / AD61 / 6D
14 / 3130 / F146 / B062 / 70
15 / 3431 / F447 / B563 / 75