[comp.sys.amiga] Static vs. static column vs. dynamic vs. ???

svspire@sandia.gov (5268 Spires, Shannon V.) (11/13/90)

In article <15571@brahms.udel.edu> don@brahms.udel.edu (Donald R Lloyd)
writes:

>  I've been looking for information on the various type of RAM for a week
> or so, (more out of curiosity than out of any real need to know), and so
> far have found only what I already knew:
> 
>         DRAM is relatively slow & has to be periodically refreshed
>         static RAM is fast & needs no refresh

True, in general. Though there are plenty of exceptions to this, most
DRAMs have access times in the 100 to 150 ns range, while most Static
RAMs have access times in the 25-50 ns range. All RAMs (DRAM and SRAM)
are  made with MOS transistors (at least all RAM you'll find in any
personal computer. Crays use non-MOS RAMs.)

>                Why is DRAM slower than SRAM?  I can't see how having 
> to refresh it would cause any tremendous slowdown.

You're right. There are many ways to refresh DRAM, and most have no
effect on access time. Refresh only has to happen every few milliseconds
or so, and then only requires a number of operations equal to the
square root of the number of bits in the chip. The big slowdown in
DRAM is because it requires clocked addresses, and you have to do
two of them for every access. You can see this for yourself: count
the number of address pins on a DRAM chip vs. the same size SRAM
chip. SRAMs always have exactly the number of address pins they need
to cover their whole address space (for example, a 32K SRAM has
15 address pins) while DRAM's always have only half as many pins
as they need (a 1M DRAM needs 20 address pins, but it has only 10).
The address is multiplexed: First you clock in the upper half of
the address using the Row Address Strobe (RAS) signal, then you
clock in the lower half of the address using the Column Address
Strobe (CAS) signal. Because two operations are required per access
and the addresses aren't seen until you clock them, DRAMs take
longer to access than SRAM's. (SRAM's aren't clocked. As soon as
they see an address come in, they start working.)

>                 What is static column RAM?  I've been told it's the
> same as static RAM, but that doesn't seem right (otherwise the 3000
> would be a good bit faster and a good bit more expensive).  Is it the 
> equivalent of what Tannenbaum calls pseudo-static?

No, static column RAM is not the same as "pseudo-static". S.C. RAM is
just DRAM with some enhancements. Referring to my previous paragraph,
you'll notice some obvious improvements. What if you need to grab
a block of data which differs only in its Column Address and its
Row Address stays the same each time? Ah, then you shouldn't have
to clock in the same Row Address each time, right? Right. You just
need to clock in the differing Column Addresses each time, so access
is approximately twice as fast. But we're still not to Static
Columns. This scheme is called "Page Mode". Static Column takes
this idea one step further and eliminates the need for clocking
the new Column Addresses in; it just requires you to supply the
new column addresses on the address pins. It effectively allows you
to treat each column as though it were Static RAM, hence the name.

>               What about VRAM?  Somehow specially designed for video
> memory, or just some marketer's way to make the static RAM on a video 
> card sound superior?

Yes, VRAM is specially designed for video applications. By the way, all
VRAM is dynamic, not static. VRAM is basically just DRAM with a shift
register added on the chip, and it's also more expensive than DRAM. The
shift register effectively lets you read out a single row of memory
to your video output circuitry one bit (or 4 bits; VRAMs are usually
arranged as 4-bit words) at a time, while still accessing the rest
of the memory as if it were DRAM. Thus it's dual-ported; the video
circuitry can use it at the same time as the computer does, and you
don't have to "cycle steal" and alternate using the memory between
the CPU and the video circuitry.

>               While I'm at it, why are ROMs inherently so slow?

There is a tremendous speed variation in ROMs. ROMs are available that
are faster than the fastest static RAM, and slower than the slowest
DRAM. The slower ones are just a lot cheaper, so they are the ones
that usually end up in personal computers.

--
Shannon Spires
Sandia National Laboratories, Albuquerque, NM
Internet: SVSPIRE@SANDIA.GOV