under_construction.gif



IBM 5150/5160  -  Faulty RAM refresh on motherboard


Introduction

If you look at the data sheets for the type of dynamic RAM chips used in the IBM 5150 and IBM 5160, you will read that the RAM needs to be refreshed within a period of miliseconds.

Others have said it, and I have verified it myself: The reality appears to be much different.

The authors of the SuperSoft/Landmark diagnostic ROM appear to have recognised that, because for the RAM refresh test: After writing test values to RAM, it waits 10 seconds before reading back the stored values.

It also explains why the 201 RAM test in the power-on self test (POST) of my IBM 5150 motherboards, still passes if I have the RAM refresh circuitry disabled.

You have to think of dynamic RAM refresh only being required for long-term storage, not short-term storage. The time periods associated with short-term and long-term will depend on the particular dynamic RAM chips being used.

Below, I performed some 'disable RAM refresh and see what happens' experiments on my IBM 5150/5160 motherboards. You may see different results, because your motherboards are using different make-model RAM chips to what are fitted to my motherboards.

Some low-level information about RAM refresh on the IBM 5150/5160 motherboard is at here.



Test Methodology

COMPONENTS:   IBM 5150/5160 motherboard, PSU, keyboard, video card + monitor.  No other cards.
   
STEP 1 OF 5:   For the IBM 5150, RAM refresh was disabled by grounding pin 13 ('OUT 1') of the motherboard's 8253 chip.
For the IBM 5160, RAM refresh was disabled by grounding pin 4 of chip U71.  See note 1 below.
   
  WARNING: That action carries some risk of damage to motherboard chips.
   
STEP 2 OF 5:   Observed step 1's impact on the motherboard's power-on-self test (POST).
   
STEP 3 OF 5:   Observed step 1's impact on the motherboard's Cassette BASIC.
   
STEP 4 OF 5:   Observed step 1's impact on the SuperSoft/Landmark diagnostic ROM.
   
STEP 5 OF 5:   Observed step 1's impact on Ruud's diagnostic ROM.



Test Results


IBM 5150 motherboard of type 16KB-64KB

With RAM refresh disabled, via grounding pin 13 of the 5150's motherboard's 8253 chip:

ROM firmware     Result
IBM POST in 10/27/82 ROM:   POST passed without error.
   
Cassette BASIC:   Simply entering  PRINT "APPLE"  resulted in a 'PARITY CHECK 1' error (at the point of pressing the ENTER key).
   
Supersoft diagnostic ROM:   On the first iteration, the 16K CRITICAL MEMORY REGION TEST passed then the MEMORY REFRESH TEST failed.  On all subsequent iterations, the CRITICAL MEMORY REGION TEST failed and the MEMORY REFRESH TEST appeared to be skipped (the failure count of MEMORY REFRESH TEST always showed as 1 [from the first iteration]).
   
Ruud's diagnostic ROM:   64 KB of RAM passed per here on first and all subsequent iterations.



IBM 5150 motherboard of type 64KB-256KB

With RAM refresh disabled, via grounding pin 13 of the 5150's motherboard's 8253 chip:

ROM firmware     Result
IBM POST in 10/27/82 ROM:   POST passed without error.
   
Cassette BASIC:   'PARITY CHECK 1' error when trying to store lines of code.  For example, Entering  10 PRINT "APPLE"  resulted in a 'PARITY CHECK 1' error (at the point of pressing the ENTER key).
   
Supersoft diagnostic ROM:   On all iterations, both the 16K CRITICAL MEMORY REGION TEST and MEMORY REFRESH TEST passed !!!!!!!!
This was a surprise because the MEMORY REFRESH TEST waits 10 seconds.
Could it be that the particular RAM chips within bank 0 of my motherboard can hold their contents (without frefresh) for more than 10 seconds ?

Investigation required.
   
Ruud's diagnostic ROM:   256 KB of RAM passed on first and all subsequent iterations.

(The diagnostic also indicated "End of memory at 0 KB", but that appears to be a bug in the diagnostic - also happens when RAM refreshing is enabled)



IBM 5160 motherboard of type 64KB-256KB

With RAM refresh disabled, via grounding pin 4 of chip U71 on the 5160 motherboard:

ROM firmware     Result
IBM POST  
in 11/08/82 ROM set:  
POST passed without error.
   
Cassette BASIC  
in 11/08/82 ROM set:  
'PARITY CHECK 1 00000 (S)' error when trying to store lines of code.  For example, Entering  10 PRINT "APPLE"  resulted in a 'PARITY CHECK 1 00000 (S)' error (at the point of pressing the ENTER key).
   
Supersoft diagnostic ROM:   On all iterations, both the 16K CRITICAL MEMORY REGION TEST and MEMORY REFRESH TEST passed !!!!!!!!
This was a surprise because the MEMORY REFRESH TEST waits 10 seconds.
Could it be that the particular RAM chips within bank 0 of my motherboard can hold their contents (without frefresh) for more than 10 seconds ?

Investigation required.
   
Ruud's diagnostic ROM:   256 KB of RAM passed on first and all subsequent iterations.

(The diagnostic also indicated "End of memory at 0 KB", but that appears to be a bug in the diagnostic - also happens when RAM refreshing is enabled)



IBM 5160 motherboard of type 256-640KB

With RAM refresh disabled, via grounding pin 4 of chip U71 on the 5160 motherboard:

ROM firmware     Result
IBM POST  
in 05/09/86 ROM set:  
POST passed without error.
   
Cassette BASIC  
in 05/09/86 ROM set:  
Initially, I could not find fault, then I happened upon the symptom:
Don't press any key for about 30 seconds, then it will be discovered that the keyboard no longer responds.
   
Supersoft diagnostic ROM:   On all iterations, both the 16K CRITICAL MEMORY REGION TEST and MEMORY REFRESH TEST passed !!!!!!!!
This was a surprise because the MEMORY REFRESH TEST waits 10 seconds.
Could it be that the particular RAM chips within bank 0 of my motherboard can hold their contents (without frefresh) for more than 10 seconds ?

Investigation required.
   
Ruud's diagnostic ROM:   640 KB of RAM passed on first and all subsequent iterations.





Note 1    For the IBM 5160 motherboard, if the IBM BIOS ROM's are fitted, grounding pin 13 of the motherboard's 8253 chip results in the POST displaying a 101 error.
That is because of a particular test that the POST of an IBM 5160 does.
(The POST of an IBM 5150 does not have that test.)
The particular test that I am referring to is the 'DMA TC0' test shown at here.

Therefore, an alternate method is used for the IBM 5160 - grounding pin 4 of chip U71 - see here.