[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RAM types



PureBytes Links

Trading Reference Links

Hello Kent,

thanks to Kent and Daniel Martinez for their recent and past
explanations of technical computer stuff.  as a non-techie it is very
helpful, esp as they are traders as well.


Best regards,
 Jim Johnson                           mailto:jejohn@xxxxxxxxxxx

-- 
Monday, October 14, 2002, 8:13:59 PM, you wrote:

KR> Okay, a few people have busted me privately for not being explicit on
KR> behaviors of different types of RAM so here's revision/clarification
KR> of my previous remarks.

KR> DRAM can be categorized in a few different ways.

KR> I/O architecture: Fast Paged Mode (FPM), Extended Data Out (EDO),
KR> Synchronous DRAM (SDRAM), Rambus DRAM (RDRAM), and the latest and
KR> greatest Double Data Rate (DDR).  This list is in order of date of
KR> first appearance in the PC market and is roughly in order of speed,
KR> though there can be exceptions.  These are all different architectures
KR> for getting bit values into and out of a DRAM block.  DRAM is currently
KR> the biggest bottleneck in getting more processing power from a given
KR> CPU and it has been almost since the PC first appeared in 1981.  This
KR> is why a 2Ghz processor doesn't really give you twice the performance
KR> of a 1Ghz processor.

KR> Error Correcting Code: ECC/non-ECC.  ECC memory has ECC circuits built
KR> into it so that if a memory cell goes bad, the SIMM/DIMM will still
KR> report the correct value for the bad bit.  It has extra bits built
KR> into the SIMM/DIMM for a given number of bits to store the ECC data.
KR> ECC was invented a long, long ago by IBM and is also used on hard
KR> drives.  All non-ECC RAM has parity checking.  For every 8 bits, there
KR> is a 9th parity bit.  Every time one of the 8 bits is read, they are
KR> all added up and the sum is compared to the parity bit.  If there is a
KR> difference, the BIOS sticks a HALT instruction into the instruction
KR> stream and your mouse cursor stops moving.

KR> Physical packaging: Single Inline Memory Module (SIMM), Dual Inline
KR> Memory Module (DIMM).  These are just physical packaging formats.

KR> Internal buffering: I'm not quite sure on this one but here's my
KR> understanding of it.  There are 2 formats: Registered and Unbuffered.
KR> One has internal buffer registers and one doesn't.  I don't know why
KR> they didn't call it Registered and Unregistered or Buffered and
KR> Unbuffered, but there it is.

KR> In nearly all cases, an application running on a PC has no idea what
KR> kind of RAM it is running on.  There are some proprietary BIOS
KR> implementations that allow an application to query and find out some
KR> of the details of the RAM, but it is very rare and there is no reason
KR> why a general purpose application would need to find out what kind of
KR> RAM it is running on.  I have never (in 15 years) written an
KR> application that queried or needed to know what type of RAM it was
KR> running on.

KR> Applications run the same on all RAM except for performance; some RAM
KR> is faster.  Aside from performance, the only notable different is with
KR> ECC.  ECC allows some fault tolerance in the machine.  If a cell goes
KR> bad (this is rare, in 15 years I have seen maybe a half dozen
KR> instances of bad RAM), the ECC circuitry allows the machine to keep
KR> running.  Non-ECC memory does not.  If a machine is ECC, behavior on
KR> detection of a bad cell is system-dependent as far as I know.  Some
KR> systems may notify the BIOS of the fault and this will relay the
KR> message to a system monitor application so someone can do something
KR> about it.  Some ECC systems will only notify you on reboot.  Some
KR> systems will just keep running until enough cells are corrupted so
KR> that the ECC can no longer compensate.  Non-ECC systems usually lock
KR> up as soon as they detect a parity error.

KR> Bottom line: it is wrong to think that an application is more stable
KR> on DDR than it is on SDRAM.  The application doesn't know and there
KR> is no stability difference between the two.  Properly functioning RAM
KR> will function with all applications.  Faulty RAM will fail with all
KR> applications.

KR> Kent