32 bit ram?
23 messages in this thread
Sorry, I've asked this question bfore, but I guess I forgot to retrieve the
answer. What's 32 bit ram as opposed to other ram. What's it dor? Do I
need it? What do you have to get to get it? Thanks again. Dan Cole
Dan,
RAM chips can use data in 8-bit chunks, 16-bit chunks, or 32-bit chunks.
The older computers, like the Commodore 64, the Apple II, etc., were 8-bit
machines and did everything in 8-bit chunks, so 8-bit memory was what they
needed. The A3000 has a 32-bit bus, moves data 32-bits at a time, and
needs 32-bit RAM to maintain the speed, etc. Its data, programs, etc., use
32-bit words and addresses, so the RAM really needs to hold an entire word
per chunk. This is not, by any means, a scientific explanation of what
32-bit RAM is, but I think it will give you a general idea, and if I'm too
far from accurate I'm sure someone will set both of us straight. 🙂
Betty
Dan;
First to muddy the waters… ROM is RAM! This just happens to be one of my
"buttons." ROM = Read Only Memory and RAM = Random Access Memory. RAM is
defined as memory where any memory location can be accessed without regard
to any previous access. Basically that means that you can access location
00001 and then 99999 and then 98989 and then 00002 or whatever other order
you (or your program) would like to use. Contrast this type behavior with
a tape drive where you can't get to the last file without first spooling by
all of the previous ones. ROM chips used in almost all computers today are
definately RAM. The memory that most of the world refers to as RAM should
actually be called Read/Write memory. Now having said all of that:
A single memory location is usually considered to be 4 bits wide, 8 bits
wide, 16 bits wide or 32 bits wide (recognize that Main Frame computers
often use other values, but micros and minis pretty well stick to these). 4
bit data bus computers were never very popular to start with so it is
unlikely that you have seen or used one. The size or capacity of the
memory is usually express in bytes (kilobytes or megabytes, 1024 byte units
or 1,048,576 byte units respectively) regardless of whether the processor
accesses the memory a byte (8 bits) at a time, a word (usually 16 bits —
now anyway) at a time, or a long word (again usually 32 bits) at a time.
The 68030 processor (used in the Amigas 3000 and most accellerated Amigas)
can access memory 32 bits at a time. These same chip can also access
memory by 8 and 16 bit chunks. Since every memory access cycle takes time,
a precessor that is required to access memory that is only 16 bits wide
will take about twice as long as one that accesses 32 bit wide memory. Now
this does not mean that the processor will run twice as fast but just based
upon memory access time you can bet that the programs will run much faster.
The chips themselves come as 1 bit, 4 bit, and 8 bit wide devices
(standard, I
[ MORE ]
[ continuation ]
could be out of date on some of this, there may even be 16 bit chips but I
don't think so). Thus, using 4 bit chips (like used in the Amiga 3000, you
have to have two at the same address to get an 8 bit wide memory location
and 8 at the same address to get a 32 bit location (which is what is
actually done in the Amiga 3000).
An additional speed improvement for the Amiga 3000 was achieved by making
the "Chip" memory dual ported. That is the custom chips access the "Chip"
memory in the same manner as was done on even the Amiga 1000, however the
CPU accesses that memory though a "different port" that is 32 bits wide.
This action more than doubles the Amiga 3000's CPU access to chip memory.
The reason for a great than two times increase in access speed is that the
CPU is only "exposed" to half of the "hold off" created by the custom
chip's ability to steal memory time from the CPU.
An Amiga message processed by Whap!,
bill
Bill,
Then, I guess, 'page mode' and 'static column' shouldn't _really_ be
called RAM, right??
Vic;
Yes or no (how's that for an answer?). It probably depends upon your view.
The definition of RAM that I use is still the original which may have been
modified. Like most definitions, it can become quite muddy when faced with
"modern" technology. If you take the definition to mean that the
application program can access any location without regard to previous
access then even virtual pages would be RAM. Clearly, to the hardware
virtual memory is not RAM. Who's view counts?
An Amiga message processed by Whap!,
bill
Bill (and Vic),
Gee…here's an "official" definition from the ITT 'Reference Data
for Radio Engineers' book:
Read/Write Memory (RAM): A generic term for either a volatile or
nonvolatile memory the contents of which may be altered at will or read out
without alteration. RAMs are randomly addressable and are readily
implemented using various semiconductor technologies.
Read-Only Memory (ROM): A generic term for a nonvolatile memory
whose contents are mask-programmed during the semiconductor processing
procedure and whose contents may not be altered thereafter. ROM's are
randomly addressable and are utilized for the storage of reference data,
micro-instructions, and various codes.
Don
Don;
Not everyone agrees with ITT (most notably, IBM). The original term RAM
meant what the letters stand for and implied nothing concerning the ability
to write to the menory. I rarely find myself agreeing with IBM (makes me
worry) but in this instance, IBM is right. It is very misleading to NOT
use the term RAM for the random access ROM.
An Amiga message processed by Whap!,
bill
Bill,
but RWM is so hard to pronounce while RAM is easy! <grin>
Brian J. Bartlett
Hummm, Ahhhh, Ummm, yes… you'r right, it is easier. 🙂
An Amiga message processed by Whap!,
bill
> …but RWM is so hard to pronounce…
Not if you're Welsh <grin>
. . . . . JimDoc
Bill,
But as a function of the chip…is there any other type of memory
than random access memory? I can't think of any type of memory that can
only be accessed in a specific order.
I'm not saying there isn't such a thing…I just don't recall ever
hearing of it…nor can I think of any use for such a thing.
Don
Don;
I think it gets pretty messy anymore. What would you call bubble memory?
I know, typically it just looks the slow random access memory to the
processor. One slight distinction might be that with "true RAM" the access
time does not vary either (at least not any significant amount).
Of course when the term was invented, there was no ROM on the processor
bus. If it was RAM then it had to be R/W. And yes there was such a thing
as sequential access memory but it was ROM (not counting disks and drums,
though someone was bound to have at least tried the same scheme with
drums).
An Amiga message processed by Whap!,
bill
Bill,
So you are saying that there was sequential access memory? That
you could not access location X without first accessing location Y?
Or are you saying that for the information to be valid…it had to
be accessed sequentially?
Don
Don;
There was a sequential access memory. It was loaded with program
instructions (in sequence) and then was executed repetitively (in
sequence). Understand that this was 50's technology. There was also the
paper tape driven machine and of course that was a sequencial operation
machine.
An Amiga message processed by Whap!,
bill
Bill,
You're talking about program execution…in other words, the order
the memory has to be accessed for the program to run.
That's not what we were talking about when dealing with the meaning
of "RAM" which is 'Can the memory chip (device) be accessed randomly or is
it a requirement of the hardware itself that point X be accessed before
point Y in memory.'
Don
Don,
there is a very specialized type of memory called associative memory. It
works as an instantaneous table search. One use is for operating systems
that feature virtual memory, where the logical address of a piece of data
may be different from the physical address. For example, say you have a Meg
of memory configured as 256 pages of 4K, and say that the total virtual
memory space you could address is 256 Meg. This means that virtual pages
would be numbered 0-65535. You would have a table somewhere in associative
memory (outside the Meg of main RAM) that indicates the virtual page number
of the data found in each of the 256 physical pages. If a program needs
access to a location in, say, page 2001, you would do a table search to see
if page 2001 is in main RAM. If so, you can point the program to the right
physical page; if not, you'd need to swap out one of the pages in main RAM
to disk, and read in page 2001 off the disk. (I know this is a lot to
swallow but it's late and my english isn't that clear even in the daytime)
Here is where the magic of associative memory come into play. In a
normal memory area, you would have to search the table for the value 2001
sequentially, which could take up to 256 operations. (Even on processors
that implement a table search as one opcode, the processor would still need
to perform up to 256 separate comparisons) But with associative memory,
each memory cell would compare its value with the 2001 being fed to the
chip, and raise its flag if a match was found. This is hardware
parallelism: all 256 comparisons are made at the same time. You could then
have the 256 flags being fed into a big OR gate to send a single "found/not
found" result back to the processor. As far as figuring out just which cell
holds the desired value, I'm fuzzy on this; my operating systems and
computer architecture courses are 4 years away.
Blaq! – via Whap!
FIFO: First In, First Out. FILO: First In, Last Out. RAM: Random Access
Memory. Any type of shift register memory, from 8 bitters used in telecom
to the big suckers used as "video ram".
And… (he said with a sneaky grin) any memory attached to a system running
MS-DOS… you can never randomly access all the memory. You have to page
it, no choice at all. But that's a different subject.
Ben
Amateur Radio Callsign is A A 7 A S
Ben,
Well..ok on the FIFO's….while they only have one external
address, they do have multiple internal addresses.
No way on the MS-DOS machines…that weird thing they do with
memory isn't a limitation of the memory chips..it's the limitation of a
brain dead design <grin>.
Don
This is true…. but it seemed relevant. :^) I see someone else got into
CAM… I ignorified them because you can usually get at them randomly, too.
Ben
Amateur Radio Callsign is A A 7 A S
I think you're all thinking too recent. RAM was originally applied to
ferrite core and drum memory because the time to access any given address
was the same. With core, because it was wired in. With drum, because at
any given time any address on the drum was equally likely to be the next
one read. Compare that with tape, where the block you want may be right
under the head, or 100 yards away on the reel. THAT's non-random access.
Maybe this shows my age, but I spent a lot of time with a Univac 1108 with
real tapes and a real "FASTRAND" drum, and with an old IBM (I forget the
number) with 4K of real "core".
Mike
Mike,
Oh…I was thinking of those machines too. I know of nothing in
the hardware itself that required you to access point X before it was
possible to access point Y.
In other words, you could address any place in memory (albeit
slowly) without having to first address some other point in memory. In
other words, you could randomly access addresses in memory.
That was Bill's point (as I understand it) when he described his
meaning of the word "Random" when dealing with Random Access Memory.
Don
Don;
Indeed, that was my point. I just wish I could remember more about what
they actually did… and who made them.
An Amiga message processed by Whap!,
bill