Download LECTURE XVII MEMORY Memory devices are VSLI (Very Large

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Immunity-aware programming wikipedia , lookup

Microprocessor wikipedia , lookup

Magnetic-core memory wikipedia , lookup

Random-access memory wikipedia , lookup

Transcript
LECTURE XVII
MEMORY
Memory devices are VSLI (Very Large Scale Integrated Circuits) which are designed to
hold data (either temporarily or 'forever') in computer systems. If they lose their data
when power is removed, they are of the Volatile type. If they are able to retain their data
when power is removed, they are known as Nonvolatile. They might contain computer
programs, large quantities of data (e.g. bank or business records) or smaller amounts of
data temporarily placed there by the microprocessor for frequent access as it completes
its tasks.
The two major types of memory are:
1) RAM which stands for Random Access Memory (Volatile type)
2) ROM which stands for Read Only Memory (Nonvolatile type)
RAM, is sometimes referred to as Read/Write memory because the microprocessor is
able to send information to it (known as a Write operation) and retrieve information from
it (known as a Read operation. It is typically organized in Byte sized chunks of data (8
bits) or some multiple thereof, e.g. 16 bits (2 bytes), 32 bits(4 bytes), or 64 bits (8
bytes). These multiples of bytes are known a Words. No specific length is specified for
Words and as such, is generally related to the size of the Data Bus on the particular
microprocessor being used.
As the name implies, any memory location can be accessed at any time by the
microprocessor. This is opposed to LIFO (Last In First Out) and FIFO (First In First Out)
memory schemes which will be introduced in later classes.
There are two types of RAM, Static and Dynamic. Static RAM (SRAM) consists of
latches (1 for each bit) and will retain its contents so long as power is applied to the
memory chip. Dynamic RAM (DRAM) bits consists of a single transistor and a capacitor
which when charged are considered HI and when discharged are seen as a LO. The
problem with these types of memory devices is that capacitors will lose their charge in a
relatively short time and, as a result, must be refreshed every few milliseconds.
Computers which utilize DRAM must contain circuitry which accomplishes this
refreshing task. The advantage of DRAM is that their circuitry is comparatively much
less complex and more bits can be placed on a similalyr sized piece of silicon.
ROM memory (which can also be randomly accessed) can only be read by the
microprocessor, i.e. it cannot store information there. The ROM device must be
programmed by the manufacturer or, in some cases, by special equipment which can
be found in microprocessor development laboratories. Once the ROM memory chip is
programmed it requires no power to retain its contents and so will remain there forever.
One typical use for ROM is found in Personal Computers. They contain a short
program which is executed only upon power-up. Its sole purpose is to read the
operating system into RAM memory so that the computer is then usable. This is known
as a Bootstrap program.
Another use for ROM is in dedicated microcontroller system. For example, your vehicle
likely uses one or more computers to monitor and control certain functions such as
climate control, engine performance, emission monitoring and control, etc. Once these
programs have been written and perfected by the manufacturer, there is no need to
change them by the end user and frankly, not many of them would have the knowledge
to do so. Consequently, the programs are stored in ROM and (theoretically) will never
be lost or changed.
Over the years, variations of ROM have been designed specifically with the purpose of
prototype design in mind.
One of these is the UVPROM or Ultraviolet Programmable Read Only Memory. It is
programmed by the use of a special device connected to a computer which applies a
voltage greater than the usual TTL 5v to the individual bits of the various memory
locations which causes them to be either a LO or HI. This programming will remain until
or unless a strong UV light is shown through a transparent window located on the chip
directly above the silicon memory portion of the chip as shown here.
A UVPROM eraser is shown below. It contained a UV lamp which shown onto the
memory chip.
Shortly after the UVPROM was created, a new type of ROM was invented called the
EEPROM or Electronically Erasable Programmable Memory. This was a vast
improvement for the microprocessor system engineer because they could be erased
electronically almost immediately whereas the UVPROMs had to sit in the 'UV Eraser'
box for at least 20 minutes. Once programmed, they would retain their memory until the
'Erase' function was enabled.
On an historical note, the RAM in your personal computer used to be commonly
referred to as the core memory. This is because the first randomly accessible memory
was actually constructed from magnetic donut shaped devices, one per bit, known as
cores. The magnets had several wires which passed through their centers which
caused the magnets to be polarized in either a positive or negative orientation which
corresponded to a HI or a LO. Shown below is a sample of the original core memory.
This particular example measures a few inches in length and contains 14 bytes of
information, not 14Kbytes, not 14Mbytes...14bytes.
Memory addressing.
Today's memory chips can contain thousands, millions or even more bits. We need
some means by which to access the desired bits and only the desired bits at the
appropriate time. Fig 7.8 in your text shows a simple addressing model. As you might
imagine, actual addressing circuits in modern computers are considerably more
complex than the one shown below, but operate in much the same way.
The memory chip shown here consists of 256 rows of bits by 256 columns of bits. This
particular addressing scheme utilizes an 8-bit address bus. Accessing the desired bit
consists of two separate operations. First, the 8 bit address for the appropriate column
appears on the address bus and is latched into the 8-bit column register by pulsing
(initially HI, then LO for a short time, and then back to HI) the CAS (Column Address
Strobe). This byte of information is fed into a 8 X 256 decoder which activates one and
only one of the 256 columns of bits. Next, the 8-bit row address appears on the
address bus and by pulsing the RAS (Row Address Column) pin, that address is latched
into the 8-bit row register. This data now passes to the 8 X 256 row decoder and one
and only one of the 256 rows is activated. At the intersection of the chosen column and
row, 1 bit has now been chosen to be accessed, either to be read or written to. This
choice is determined by the Read/Write pin which is controlled by the microprocessor.
Now imagine 8 of these 256 X 256 memory chips lined up in a row with them all sharing
the same address bus and RAS, CAS and Read/Write pins. Now instead of accessing
only 1 bit of data at a time, each memory chip would supply 1 of 8 bits, correspondingly
addressed, resulting in a byte of information being supplied to the data bus at the same
time. Naturally, the same addressing scheme could be used for a 16 bit word of data by
lining up 16 of these memory chips or a 32 bit by using 32 memory chips, etc. Of
course, the data busses for these examples would need to be correspondingly wide.