• Please review our updated Terms and Rules here

Finding bad RAM via POST codes.

geneb

Veteran Member
Joined
Aug 19, 2003
Messages
525
Location
Graham, WA USA
Here's a guide I found here: http://textfiles.com/programming/memchip.txt

I'm including the whole text file on the insanely rare chance that it should vanish.
I've also removed the extra text that was inserted from the original buffer capture.
I would suggest that this be stickey'd. :)
g.
---------------------------------------------------------------------------------

If you encounter the message "parity error" while operating your PC, a
malfunction has occurred somewhere in the PC's memory (RAM). In many
instances, a parity error can be traced to a defective RAM chip or one
that is seated poorly in its socket.

To find the cause of the parity error, turn off the PC, wait about five
seconds, and turn it on again. After flipping the power switch on, the
PC automatically runs a series of diagnostics which tests different
parts of the system. If a memory problem exists, a PARITY CHECK 1 or
PARITY CHECK 2 error message will appear. This article will help you
interpret these error messages, isolate defective memory chips, and
correct the situation.


System Board Memory

Early PCs have system boards which hold only 64K of RAM. These system
boards have four parallel rows (or banks) of nine 16K 4116 RAM chips.
Newer PCs and XTs with 256K system boards have four parallel rows of
nine 64K 4164 RAM chips. In both cases, each row has eight chips for
memory (data bits) and one for parity checking (parity bit).

When facing the PC chassis from the front, the row of chips closest to
the front is designated row 3, with the next row being row 2, then row
1, and row 0 next to the expansion slots. In each row or bank, the
chip on the extreme left, slightly separated from the data bits, is the
parity bit chip.


Expansion Board Memory

The amount of memory contained on expansion boards varies widely from
manufacturer to manufacturer. While the early expansion memory boards
only contained 64K memory, the current standard seems to be memory
boards in one of three configurations: 256K, 384K, or 512K. Most
memory boards still use the 64K 4164 RAM chip, although use of the
newer 256K 41256 RAM chip has become more prevalent as its
availability has increased and unit cost has dropped substantially
(from $60/chip to $7/chip during the past six months). The
introduction of 80286-based computers like the AT has also impacted the
popularity of mega-memory expansion cards because the 80286 can address
up to 16 megabytes of RAM, as compared to the 1 megabyte limitation of
8088-based PCs.

To simplify matters, we will limit our discussion here to those
expansion memory boards that use the 64K RAM chips. In general, these
expansion boards comprise from four (256K) to eight (512K) parallel
rows of nine 64K memory chips. The rows are usually arranged
horizontally, numbered from 1 to 8, and are populated sequentially from
right to left (row 1 is on the extreme right; row 8 on the extreme
left).


Memory Error Messages

Now that you know which row is where and its "numeric" position
indicator, you can begin to isolate which chip may be causing the
parity error.

If your computer has a memory problem, a memory error message will
appear on the monitor during the start-up diagnostic (Power-On Self
Test) or when performing system diagnostics. This memory error message
consists of two parts: a four-digit error code followed by the numbers
201, e.g. 3040 201; and either a PARITY CHECK 1 or PARITY CHECK 2
message.

A PARITY CHECK 1 message indicates that the memory error was detected
on the system board memory; a PARITY CHECK 2 message identifies a
memory error on a memory expansion board.


PARITY CHECK 1 -- System Board Memory Errors

The first number of the memory error code indicates which 64K bank of
memory is involved. On PCs with 256K system boards, this can be rows
0, 1, 2, or 3. On 64K system board PCs, the number 0 represents the
entire 64K bank of 36 16K chips.

For PCs with 64K system boards, the second digit can be 0, 4, 8, or C,
and points to the 16K bank within the 64K which is failing; 0 is row
0, 4 is row 1, 8 is row 2, and C is row 3. In contrast, for PCs with
256K system boards, the second digit of the error message identifies
the 4K page in the memory chip that is failing; this number is not
needed to identify the problem chip and should be ignored.

The third and fourth digits represent which bit position (or RAM chip)
in the 64K row is causing the error condition. This number represents
the hexadecimal address of the chip within the row.

Table 1 provides the address for each of the chips on a 64K or 256K
system board:


Bank 64K 256K Parity Bit Bit Bit Bit Bit Bit Bit Bit
Number System System Bit 0 1 2 3 4 5 6 7

0 00 0x 00 01 02 04 08 10 20 40 80
1 04 1x 00 01 02 04 08 10 20 40 80
2 08 2x 00 01 02 04 08 10 20 40 80
3 0C 3x 00 01 02 04 08 10 20 40 80

M E M O R Y C H I P S

F R O N T O F C O M P U T E R

Table 1. System Board Memory Addresses.

Using the error message example given earlier, 3040 201, we can
quickly identify the faulty chip as the eighth chip (Bit 6) in the
first row from the front (Bank 3) of a 256K system board.


PARITY CHECK 2 -- Expansion Board Memory Errors

The procedures for diagnosing errors in memory contained on expansion
boards is similar to that used for system board memory diagnosis.

The first number of the memory error code indicates which 64K bank of
memory is involved. On PCs with 256K system boards, this can be row 4
or greater; on 64K system board PCs, row 1 or greater.

For both 64K and 256K system board PCs, the second digit is not used
and should be ignored. The third and fourth digits contain the
hexadecimal address (within the row) of the problem memory chip.

Because there are numerous third-party manufacturers of expansion
memory boards and because each manufacturer may use a different
configuration and/or bank numbering scheme, the rules for
identifying errant memory chip addresses for your expansion board might
be different. You should check the documentation provided with your
expansion board as reference for proper diagnosis of expansion board
memory problems.

For demonstration purposes, however, the following example uses a 384K
memory expansion board (AST Six Pak Plus), configured with six banks of
chips, numbered 1 to 6, from right to left.

Table 2 provides the address for each of the chips on the expansion
memory card. Notice that the starting address for the rows of memory
chips is different for the 64K and 256K system boards. This is due to
the fact that the expansion board rows begin addressing where the
system board stops: for the 64K board, starting address is 1x; the
starting address for the 256K system board is 4x (x can be any number).

Bank No. 6 5 4 3 2 1

64K System 6x 5x 4x 3x 2x 1x

256K System 9x 8x 7x 6x 5x 4x
____________________________________________

Parity Bit 00 00 00 00 00 00 M

Bit 7 80 80 80 80 80 80 E

Bit 6 40 40 40 40 40 40 M

Bit 5 20 20 20 20 20 20 O

Bit 4 10 10 10 10 10 10 R

Bit 3 08 08 08 08 08 08 Y

Bit 2 04 04 04 04 04 04 C
H
Bit 1 02 02 02 02 02 02 I
P
Bit 0 01 01 01 01 01 01 S

BOTTOM OF EXPANSION BOARD

Table 2. Expansion Board Memory Addresses.

Using the above table, we can see that a 7120 201 error code identifies
the errant memory chip as the sixth chip from the bottom (Bit 5) in the
fourth bank from the right (Bank 4) in a 256K system board machine.

Correcting Memory Errors

Now that we have identified the problem chip, we should verify it by
replacing it with a spare chip and run the diagnostics again and see
whether the error is corrected. If no spare chip is available,
exchange the suspect chip with another one in an adjacent bank. If we
have correctly identified the problem chip, the diagnostics will
display a different memory code -- that of the location where we put
the suspected chip.

If, however, the error code continues to identify the original
location, a problem may exist with the socket and you should contact
your dealer for assistance.

If the system board or expansion board switches are not set properly or
a chip is missing, the bit position in the error code may be AA, FF,
55, or 01. If you are experiencing problems with more than one memory
chip, the bit position code displayed will be the sum (in Hexadecimal)
of the problem chip locations and consequently, will not match any of
the values in Table 1 or 2. When this happens, the resultant error
code could be any number from FF to 00. Diagnosis of the errant chips
will involve a trial and error process of switching several chips from
the identified row to an adjacent row.


Reseat Chips Before Switching

Before switching chips in the "suspect" row, however, remove all chips
and reseat them in their sockets. Run the diagnostics again. Because
many parity problems are due to poor contacts between chips and
sockets, this trick may eliminate the parity error. RAM chip failures
are rather rare.

The most difficult parity error or memory error to locate is one which
occurs "intermittently". For example, heat generated by expansion
boards, disk drives or other add-ons may cause a memory chip or some
other memory-related component to shift sufficiently to break the
electrical contact. You may never find this particular problem since
the same set of conditions may not be duplicated exactly during
diagnostics.


A Simple, Do-It-Yourself Remedy

What has been discussed here is a simple method to troubleshoot your
PC. If in doubt, professional service technicians have the tools to
diagnose memory problems instantly. But performing these simple checks
yourself can save you money, especially if the cause is a poorly
socketed chip.

================================================================
 
To note. Pay attention to the early sentence, "In many instances, a parity error can be traced to a defective RAM chip or one that is seated poorly in its socket", particularly to the word "many".

Parity errors can be caused by things other than a faulty or poorly seated RAM chip.
 
I have an Intel In Board 386 which gives me a parity error when I had it connected up to a IBM 5150, without this card, there is no parity error, I haven't looked at in sometime, whether I got parity 1 or 2 - don't recall.

But with this guide, might be a good time to give it another look over.

Wish me luck.
 
Last edited:
Back
Top