none of the other values used in that seemed to have a
problem; but of
course the program didn't include all 2^16 patterns. I suppose I should
whip up a small program to try other values, and see if anything else
does this...
And it does! Quite a few values come back wrong, when ECC is disabled - I'm going
to guess about 25% of the time. (Out of 0-020, 4 were wrong.)
And it is not board-dependent - two different boards give incorrect read data
for the same write values!! And the ones that were OK were OK on both. (And it
doesn't appear, from a bit of spot-testing, to be address-dependent.)
This is _very_ strange. There's nothing in the manual about 'disabling ECC
causes incorrect data to be returned' that I could see.
I wonder if the board is storing wrong values a _lot_, and the ECC is normally
catching them? (Maybe DEC did it this way to test the ECC hardware all the
time, and quickly catch failing ECC? But why doesn't the manual mention that?)
One thing I noticed is that while I was doing the 'which bit goes in which
chip' stuff, on some of the data lines, there was a lot of grup - some of it
fairly long pulses, and some spikes that looked like they might be hazard
outputs. I wonder if they are part of the cause?
I guess the next step is to set up a loop which stores one of the values which
always gives a bad output, and see what the board is actually writing into the
chip...
Very, very strange!
Noel