By: Adrian (a.delete@this.acm.org), January 3, 2021 1:14 pm
Room: Moderated Discussions
Tim McCaffrey (timcaffrey.delete@this.aol.com) on January 3, 2021 9:28 am wrote:
>
> Parity existed on every motherboard until EDO DRAM got introduced.
> I think there were a couple of factors:
> 1) EDO DRAM, IIRC, was produced in a x8 package only, there was no x1 (or x9) package.
> (This made adding a parity bit difficult).
> 2) ECC is a pretty big step up (when EDO was introduced) in the memory controller,
> easier to just not include it.
> 3) At the time EDO was introduced, memory was very expensive (I paid $300 for 8 Meg
> at that point in time, of course memory prices crashed right after that :( ).
> 4) Once motherboard & memory controller (north bridge) vendors got away without supporting
> parity for a couple of years, everybody was cutting that corner to stay competitive.
>
> ECC was first available in servers because customers demanded it.
> I'm not sure, to this day, how much the various OSes actually support reporting
> ECC corrections or how proactive they are isolating questionable memory.
> I know the mainframes I worked on were able to hot swap out bad memory, which was
> a big selling point (and required lots of OS support). Of course, these days
> you can just migrate the VM to another host, but you still need to be able to
> flag when bad things are happening.
I have actually used 16 Mbytes of EDO memory with parity on my Pentium motherboard. Unfortunately, the motherboard used the evil Intel Triton chipset, which did not check the parity.
I had bought the memory before the motherboard. The new Intel policy of omitting error detection support was a surprise for me.
The EDO modules with parity (4 Mbyte per module, with 5 packages on a single side) used one smaller x4 memory package for each 4 larger x8 packages.
Many of the other EDO modules that I have seen, without parity, had in fact the same PCB layout as my modules with parity, except that the central small x4 package was not soldered on the modules.
>
> Parity existed on every motherboard until EDO DRAM got introduced.
> I think there were a couple of factors:
> 1) EDO DRAM, IIRC, was produced in a x8 package only, there was no x1 (or x9) package.
> (This made adding a parity bit difficult).
> 2) ECC is a pretty big step up (when EDO was introduced) in the memory controller,
> easier to just not include it.
> 3) At the time EDO was introduced, memory was very expensive (I paid $300 for 8 Meg
> at that point in time, of course memory prices crashed right after that :( ).
> 4) Once motherboard & memory controller (north bridge) vendors got away without supporting
> parity for a couple of years, everybody was cutting that corner to stay competitive.
>
> ECC was first available in servers because customers demanded it.
> I'm not sure, to this day, how much the various OSes actually support reporting
> ECC corrections or how proactive they are isolating questionable memory.
> I know the mainframes I worked on were able to hot swap out bad memory, which was
> a big selling point (and required lots of OS support). Of course, these days
> you can just migrate the VM to another host, but you still need to be able to
> flag when bad things are happening.
I have actually used 16 Mbytes of EDO memory with parity on my Pentium motherboard. Unfortunately, the motherboard used the evil Intel Triton chipset, which did not check the parity.
I had bought the memory before the motherboard. The new Intel policy of omitting error detection support was a surprise for me.
The EDO modules with parity (4 Mbyte per module, with 5 packages on a single side) used one smaller x4 memory package for each 4 larger x8 packages.
Many of the other EDO modules that I have seen, without parity, had in fact the same PCB layout as my modules with parity, except that the central small x4 package was not soldered on the modules.