In this section, we introduce the basic types of
memory components that are commonly used in embedded systems. Now that we
understand the operation of the bus, we are able to understand the pinouts of
these memories and how values are read and written. We also need to understand
the varieties of memory cells that are used to build memories. There are
several varieties of both read-only and read/write memories, each with its own
advantages. After discussing some basic characteristics of memories, we
describe RAMs and then ROMs.
Memory Device Organization
The most basic way to characterize a memory is by
its capacity, such as 256 MB. However, manufacturers usually make several
versions of a memory of a given size, each with a different data width. For
example, a 256-MB memory may be available in two versions:
■ As a 64
M 4-bit array, a single memory access
obtains an 8-bit data item, with a
of 226 different addresses.
■ As a 32
M 8-bit array,a single memory access obtains a 1-bit data item, with a maximum
of 223 different addresses.
height/width ratio of a memory is known as its aspect ratio. The best
aspect ratio depends on the amount of memory required. Internally, the data are
stored in a two-dimensional array of memory cells as shown in Figure 4.15.
Because the array is stored in two dimensions,the n-bit address received by the chip is split into a row and a column
address (with n r c).
As shown in Figure 4.16, transitions on the control
signals are related to a clock [Mic00]. RAS and CAS can therefore become valid
at the same time. The address lines are not shown in full detail here; some
address lines may not be active depend- ing on the mode in use. SDRAMs use a
separate refresh signal to control refreshing. DRAM has to be refreshed roughly
once per millisecond. Rather than refresh the entire memory at once, DRAMs
refresh part of the memory at a time. When a section of memory is being
refreshed, it cannot be accessed until the refresh is complete. The memory
refresh occurs over fairly few seconds so that each section is refreshed every
include registers that control the mode in which the SDRAM operates. SDRAMs
support burst modes that allow several sequential addresses to be accessed by
sending only one address. SDRAMs generally also support an interleaved mode
that exchanges pairs of bytes.
Read-only memories (ROMs) are
preprogrammed with fixed data. They are very useful in embedded systems since a
great deal of the code, and perhaps some data, does not change over time.
Read-only memories are also less sensitive to radiation- induced errors.
There are several varieties of ROM available. The
first-level distinction to be made is between factory-programmed ROM
(sometimes called mask-programmed ROM ) and field-programmable ROM .
Factory-programmed ROMs are ordered from the factory with particular programming.
ROMs can typically be ordered in lots of a few thousand, but clearly factory
programming is useful only when the ROMs are to be installed in some quantity.
ROMs, on the other hand, can be programmed in the lab. Flash memory
is the dominant form of field-programmable ROM and is electrically
erasable. Flash memory uses standard system voltage for erasing and