• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 900
  • Last Modified:

Memory Errors are puzzling me

Hello Experts, this one has em puzzled.

I built a computer from spare parts I had accrued over a period of time.  It POST'd fine.  I checked CMOS Settings and left them at default as they look OK.  Tried to install from my bootable Windows XP Pro SP3 slipstreamed CD, but it failed with a BSOD:

"STOP: 0x000000024 (0x001902FE, 0xF79029B4, 0xF79026B0, 0xF70B9AF4)" ntfs.sys Address F70B9AF4 base at F7072000

There seem to be a few things that could cause this, so I concentrated on the "ntfs" aspect and suspected hard drive problems.  Ran Seagate Seatools (for Maxtor & Seagate Drives).  Quick and extended tests passed fine.  Just to be sure, I did a full wipe then ran the diagnostic tests again.  Everything was fine, but I got the same STOP error next time round.

OK, so it must be something else, so I individually tested my RAM (ie. one stick at a time) in 1st slot using Microsoft's "Windows Memory Diagnostics" and Memtest86.  Now, here's the odd thing.  Each individual RAM module passes the extended tests with no errors.  Add one of the other good modules in at slot 2 and I get errors.  Not immediately though.  With Memtest86, it is consistently in test No. 5 named "Block Move, 64 Moves".

Of course, it is possible that one or more of the tests after No. 5 would have shown errors, but I never got to that stage. What I have yet to do is run the tests one at a time in reverse order.  You will no doubt know and appreciate how long these tests take to run and therefore excuse the fact that I don't have full results to show.

My question really centres round why each separate memory module should pass the tests, but add one or two more modules and there are errors.  As far as I am aware the memory modules are pretty well matched.  They are certainly within spec for the motherboard, and the only difference is that two are Cas Latency 3 and one is 2.5.  Perhaps if I supply my system specifications one or more experts may be able to suggest the cause(s) of the problem.


Spec: http://image.shuttle.com/ResourceCenter/download_file.jsp?file_id=5838
Manual: http://eu.shuttle.com/download/Archive/Manuals/en/ak39_n/ak39en.zip

Shuttle AK39N Motherboard (VIA Apollo KT400-based) - ATX Form Factor, not an XPC board.

Compatible Processors: Socket A/462 Athlon, Duron, Athlon XP up to Athlon XP (Barton) 3000+ with 200/266/333 MHz FSB at time of writing.  I have an Athlon XP 2400+ currently fitted (333 FSB), and I'm pretty confident it is fine as I have tested it in another PC of similar spec.  It is cooled by a Thermaltake TR2 Socket A Ultra Silent Cooler which is running effectively.  No overheating problems to consider.

Memory Supported:  184-Pin unbuffered DDR SDRAM - 3 slots up to 3GB RAM supported as PC1600 (DDR200),  PC2100 (DDR266), PC2700 (DDR333), PC3200 (DDR400) modules with a clock frequency of 100, 133, or 166MHz.
I think I got the PC to DDR equivalents correct there.  PC3200 is DDR400, right?.
I have 3 x 512MB DDR400 modules to fit.  I am sure they are non-ECC unbuffered.  How do I tell without being in Windows to run Belarc, or whatever?  The RAM is being cooled effectively by case fans.  I measured temperature inside case and it's nice and cool.

Onboard VIA VT8235 is disabled at CMOS in favour of Creative Audigy 2 card.
Connect 3D Radeon 9250 SE 128MB 8x AGP (no integrated graphics to disable).
400 Watt Power Supply that has been tested in another computer of similar spec and works fine.
Maxtor DiamondMax9 40GB 7200 IDE HDD as system drive and Seagate 160GB 7200 IDE as slave.  Both drives pass fitness tests.
BenQ 16x DVD-Rom Drive and LiteOn Dual Layer DVD-RW SOHW-1633S DVD-RW.

You may have noticed (if you have read any of them yet) in the above linked pages the following statements in the specifications:

FSB infinitely adjustable: 100 to 166MHz (in 1MHz-steps).
If an Athlon XP processor with 166/333MHz FSB is used, for KT400-chipset the DDR333-memory is essential, as only synchronous operation is possible on this setting.

3 x 184-pin for PC1600 (DDR200), PC2100 (DDR266) or PC2700 (DDR333) unbuffered DDR SDRAM memory with 100, 133MHz or 166MHz clock frequency up to 3GB capacity. Possibility for adjusting PC3200 (DDR400)
KT400-chipset requires at 166MHz FSB synchronous memory frequency at 166MHz (DDR333), as well.

Processor      FSB      Multiplier
AMD Athlon XP       2400+       133MHz 15x
CPU internal core bus speed runs at 200/266/333MHz.

The above is relevant to BIOS Versions S024 and above.  The board came as BIOS version S024 and I haven't updated it yet.  I see no pressing need to, as it should support the CPU and memory as it is.

My Althlon XP 2400+ CPU has a 333MHz FSB.

OK, I see POST "Memory Clock is DDR400", so the BIOS knows it has PC3200/DDR400 fitted.

In the CMOS Setup Screen > Standard CMOS Features, it recognises and reports the true capacity of memory that is fitted.
Under "Advanced BIOS Features" the "CPU L2 Cache ECC Checking" setting is enabled, if that is relevant.

Under "Advanced Chipset Features", the DRAM Clock/Drive Control setting shows the following options:

DRAM Clock: By SPD, 133MHz, 166MHz, and 200MHz.
Currently showing FSB as 133MHz and DRAM Frquency as 200MHz when set to "By SPD", although I have tried the other DRAM Clock speeds also.  Setting to 133 shows "Memory Clock is DDR333" in POST, and setting it to "By SPD" shows "Memory Clock is DDR400" in POST, so I'm sure i have the correct setting.

DRAM Timing: Auto by SPD, Turbo, Ultra, and Manual. It's currently set to "Auto by SPD", although I have tried the other permutations with the exception of Manual.

The "manual" option allows you to set CAS Latency, Bank Interleave (currently disabled), Prechange to Active(Trp) (currently 3T), Active to Precharge(Tras) (currently 6T), and Active to CMD(Trcd) (currently 3T).  I have no intention of messing with any of these.

Other settings under the "Advanced Chipset Features >  DRAM Clock/Drive Control" page are:
DRAM Burst Length = 4
DRAM Queue Depth = 4 Level
DRAM Command Rate = 1T Command
Write Recovery Time = 3T

Back under "Advanced Chipset Features", the "Memory Hole" is set to Disabled.  To be honest, I've never really understood that setting, so I don't mess with it.  I just included it in case it's relevant.

The last relevant page in the CMOS Setup Screen is "Frequency Control" containing the following current settings:
CPU Clock = 133 (that equates to a multiplier of 15x 133MHz = 1,995MHz, correct?).
Auto Detect DIMM/PCI Clk = Enabled
Spread Spectrum = Disabled.

Here are the apparently relevant values under the "PC Health Status" page of the CMOS Setup Screen (with the occasional very minor fluctuation not exceeding 0.01volts + and -):

CPU Voltage = 1.66v
DDR Voltage = 2.64v (is that correct?)
AGP Voltage = 1.52v
Chipset Voltage =  2.49v
3.3V VIN = 3.29v
5V VIN = 5.05v
+12V VIN = 12.60v
System Temperature = 29 deg C
CPU Temp = 39 deg C

So, going back to the FSB settings and the manufacturer's notes about DDR400 usage.

Do you think that any of those settings would have any effect on the errors being detected by Memtest86 and the Microsoft memory tester if I have them wrong?

Thanks in advance
  • 10
  • 5
  • 3
  • +2
1 Solution
If you have two memory modules and one is CAS 2.5 and the other is CAS 3, trying to run the CAS 3 at 2.5 timings could cause instability (ie, you are overclocking it).  When using two memory modules and letting the timings be set automatically by the SPD chip, what can happen is the the one that runs faster at CAS 2.5 may be used by the motherboard to run both, which results in disaster.  Try setting the timings manually at CAS 3.0 and see if they play nice then.
Also with 2 DIMM you may be using the Paired RAM in 64 bit mode, and if they are not identical, you could get errors

I hope this helps !
Just stopped in to say HI.    : )
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

hey Bill, just to tell you i had the same problem some time ago; 2x256 Mb sticks do work, 3x don't work.
i just assumed it is a problem with the memory controller, or it could be caused by the load on the ram bus.
BillDLAuthor Commented:
Thank you guys.

I see how the CAS Latency thing works now.  I had always just assumed that if you have modules of different CAS values in together, all the memory modules would only use the slowest value.  You know, like having an ATA33 capable Drive and an ATA66 Drive on the same IDE channel, where both will only run at the ATA33 speed.  I can't recall if, among the various permutations I tried, I had both the CAS 2.5 modules in slots 1 and 2 at the same time for a memory test.  I am hoping to resolve the issue before installing Windows, rather than installing it with one stick fitted and then add the others and see what (if any errors) arise.  I will certainly try what you have suggested.  It's a very valid comment.

Hi SysExpert.
Thanks for dropping in.  I'm not sure that I follow what you mean.  This is a 32-bit version of Windows XP and there are 3 memory slots.  Are you saying that I may have a motherboard that, if two memory modules are fitted in eg. slots 1 and 2, that they need to be perfectly matched?  I know that there are boards like that, but I've only ever seen that type of spec on boards with 4 slots, where each pair of slots has to be populated as a pair or not at all.

Hey Coral.
What, no suggestions?  Surely you must have encountered this issue with your "dumpster specals"? ;-)
You know, as I opened the question from the email link, I just had the strangest feeling you would have been skulking around this topic area and may have contributed.  If you can think of any possibilities, please don't hesitate to make them, but maybe wait until I have tested Callandor's hunch.

BillDLAuthor Commented:
"among the various permutations I tried, I had both the CAS 2.5 modules in slots 1 and 2 at the same time for a memory test"
should refer to "both the CAS 3 modules".
>> What, no suggestions?  

Yeah, the memory controller, or slot is wanky (nobus got it in, though), but I wanted to see what the next round of test results were, first.
You still getting the same error with the positions shuffled around?
BillDLAuthor Commented:
Hi nobus, you were posting while I was typing.

I hope it isn't a problem with the memory controller.  This is a PC that I should have had up and running a couple of years ago, and I really need it working as soon as I can to record some music on it.  512MB of memory just won't cut it for what I need it to do.  If you have any other ideas about my scenario, I would be pleased to hear them.

Going back to my original posting where I gave the settings from my CMOS Setup Screen, and considering them in context with Callandor's suggestion of changing to CAS 3, I'm not sure about the other settings:

DRAM Timing: Auto by SPD, Turbo, Ultra, and Manual. It's currently set to "Auto by SPD", although I have tried the other permutations with the exception of Manual.

The "manual" option allows you to set CAS Latency, Bank Interleave (currently disabled), Prechange to Active(Trp) (currently 3T), Active to Precharge(Tras) (currently 6T), and Active to CMD(Trcd) (currently 3T).  I have no intention of messing with any of these.

If I change it to "manual" to release the CAS Latency setting for change, it also releases these settings:

Bank Interleave = disabled
Prechange to Active(Trp) = 3T
Active to Precharge(Tras) = 6T
Active to CMD(Trcd) = 3T

I have no idea what those settings mean, and so don't know whether I need to change any.  "Interleave" being disabled sounds like it may be a contributory factor. The others sound like "latency" related ones, with the "T" value meaning milliseconds.
BillDLAuthor Commented:
Hah, you'er up too :-)  It's OK for nobus, it's morning for him, but isn't it after 4am for you?  I'm not familiar with the technical expression used to describe the memory controller.  I thought that's what guys did in the middle of the night ;-)

I need to try out the suggestions, and I'm not really sure I will do so this morning.  I'm just in off the nightshift and fairly p'd off.  The Moronic IT Department cleverly deployed Kaspersky across the board without making sure Norton was completely removed, and I've just had to catch up with several days of data input in my reports because I couldn't access the Workstation.  Imbeciles!!  Why didn't they just give me a setup CD?

I'll get back with results later - probably tomorrow.
>> without making sure Norton was completely removed


It's after 3am here. I'm fixing to call it a night. I've been seeing how much I can clean out and change around a XP system (before I goof the OS) somebody gave me. It amazing how many people don't nuke their hard drives before getting rid of them.   : D
And wishing I had a better SocketA mobo for 'music ripper' I need to get together.
You don't want it set to auto, because it then has to choose which SPD setting to use.  Use manual and force it to the slower of the two modules (CAS 3T, everything else should match what the two modules specify), or see what happens with two similar modules.  Even similar modules may turn out to have problems if the manufacturing wasn't stringent.
BillDLAuthor Commented:
Well, here's a strange finding.  I was always of the understanding that RAM slots had to be populated in order, ie. Mandatory to have first slot occupied (obviously), but then if you add another memory module it has to be in the 2nd slot.

I was speaking with (and boring the socks off) a friend who is now a fairly adept computer user, but this type of technical stuff goes right over her head.  She knew that I had been tearing out my hair in frustration and asked me if I maybe had a bad memory stick.  I explained (probably with an expert's gasp of exasperation) that I had tested each stick in the first slot one at a time and they all passed the tests.  She asked if I had then tested the remaining ones one at a time in EACH of the other two slots.  I said, "No, I can only really test slot 2,  I can't just skip a slot and have 1 and 3 occupied, it doesn't work that way", to which she asked "Well, have you tried?".

He, he.  Well, I have now and it works, thanks to an unwittingly clever suggestion.  Strange how we can always have a belief that is wrong and a non-expert blows the myth!

I manually set the CAS Latency to 3 in the CMOS Setup before running any tests as suggested by Callandor.

I think I may have established that I have a problem with the 2nd memory slot, because two matched modules in slots 1 and 3 passed all the tests, but sticking a 3rd one in slot 2 resulted in errors.  I will leave the same sticks in 1 and 3 and test the remaining sticks one at a time in slot 2 to see what happens.

It could simply be that the other memory modules I have are a different CAS Latency and Callandor's observations are the cause of the problem because I still don't have one or more settings in the CMOS right.  At least I have 1GB of memory and should be able to get Windows installed and running OK for my needs with that, but I'm still curious to find out the cause.

I'll update later.  
BillDLAuthor Commented:
Oh yes, there was one other possible issue here.  I know it may seem like a different question, but it may be related.  I've worked with enough Pentium 4 boards to know the requirement of the 4-pin 12v Molex connector:

My Shuttle AK39N board has a socket for a standard 4-pin Molex Male connector as you would find on the rear of IDE Hard Drives and CD Drives.  This is in addition to the standard 20-pin 12v ATX connector socket.  You will see it in the large image here:
at the right-hand edge adjacent to the 3 blue RAM slots.

I had never seen one mounted on a board like that before, so I tested it to make sure it was a receiving connector rather than a power output to act as an auxilliary supply in the absence of enough connectors on the wiring loom from the PSU.  It didn't output any power, so I connected the spare molex connector from the PSU to it.

Have you seen a connector on the board like that before?

I was correct in assuming that it's an input rather than an output, wasn't I?
Yes, some mobos let you get creative with the ram slots. That's why I like socketA so much.   ; )
Since 1 and 3 are working, slot 2 either has a bad pin in the socket or a bad trace on the mobo.

I don't recall seeing a molex aux power plug before, though I have seen mention of them.
I won't swear to it, but I think it was an early implementation of what later became the square aux plug.
I have seen an early implementation of an additional power connector using a molex.  I have not seen another one like that since.
i saw them too, and even used it.  don't recall what board.
but of course be sure to have enough juice to that plug...
BillDLAuthor Commented:
Thanks guys.  Still doing some juggling and testing.  I'm glad you've seen the onboard molex connectors too.  I was beginning to wonder if I had some weirdo board and had frazzled components by wrongly connecting power to it.  I've tested with power connected to it and without, just in case there was some issue with it, but memory test results are the same with or without.
BillDLAuthor Commented:
I'll post a final result here tomorrow.  Just got a reminder about me having an "open question", but I'm rushing as usual.
BillDLAuthor Commented:
Final result below, but I'm still not sure of the cause.

Had 4 sticks of 512MB RAM to test with, and in light of discovering that any slot could be populated in isolation, I started off again from scratch.

Sticks 1 & 2 = matched Infineon CL3
Stick 3 = RC Memory CL2.5
Stick 4 = Elixir CL?

1. Stick 1 in slots 1, 2, & 3 separately - passed all tests
2. Stick 2 in slots 1, 2, & 3 separately - passed all tests
3. Stick 3 in slots 1, 2, & 3 separately - passed all tests
4. Stick 4 in slots 1, 2, & 3 separately - passed all tests

5. Stick 1 in slot 1, Stick 2 in slot 2 - Passed

6. Stick 1 in slot 1, Stick 2 in Slot 2, and Stick 3 in slot 3 - Failed on "LRAND" test 3 of Windows Memory Diagnostics

7. Stick 1 in slot 1, Stick 2 in Slot 2, and Stick 4 in slot 3 - Failed on "LRAND" test 3 of Windows Memory Diagnostics.  Note: with Stick 4 in place, POST didn't show "Pool Data Updated" as with other changes.

8. Same configuration as step 5 - Started off at test 3 and it passed

9. Same configuration as step 8 above - All tests done and passed.

I decided to install WinXP using sticks 1 and 2 in slots 1 and 2 (1GB RAM).  It installed fine this time.  Shut down and inserted stick 3 in slot 3 then rebooted.  Left system idling and it blue-screened after about a minute.  Did the same after swapping stick 3 for stick 4 in slot 3.

I tried all permutations in CMOS Setup concerning the manual setting of Cas latency, but blue screens persisted after varied time delays following reboot.

So, it's clear that something is clashing somewhere.  I don't know the CAS Latency of Stick No. 4, but it may be fair to assume that it is not the same as sticks 1 and 2.  I kept forgetting to look at the POST screen when I had it on its own in all 3 of the slots.

I think that Callandor's comments 24413306 and 24422388 contain the most likely explanations, and I am going to accept the 2nd one, however I am grateful to all others who contributed.


BillDLAuthor Commented:
I suppose there are some issues that we never truly get to the bottom of, but your explanations certainly are the most likely cause, ie. a clash between slightly different RAM modules.
Thanks for the update.  
Strange it doesn't like running 3 sticks, though.

Featured Post

Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

  • 10
  • 5
  • 3
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now