You are on page 1of 14

Computer Memory

Computer memory is quite like Human memory. Demonstration for how the
brain is like a computer.

 Information Processing
 Parallel Processing

Some scientists use computers to simulate how a brain might work.


Instead of focusing on the chemical aspects of memory, they simulate the neural
connections made in the processing of information.

Computer memory can be any device, such as a silicon chip or a hard disk, used
to store information. In computers of the past, vacuum tubes, cores and drums
have been used. Today, computer chips are used.

Of course, computers' memory capabilities are increasing as technology advances.


Computer chips' capabilities have expanded. Other computer memory devices include
CD-ROMs, floppy disks, tapes, zip drives, DVDs, etc.

Memory
The term "memory" applies to any electronic component capable of
temporarily storing data. There are two main categories of memories.

Internal Memory:
Internal memory that temporarily memorises data while programs are
running. Internal memory uses microconductors, i.e. fast specialised electronic
circuits. Internal memory corresponds to what we call random access memory
(RAM).
Auxiliary Memory:
Auxiliary memoryalso called physical memory or external memorythat
stores information over the long term, including after the computer is turned off.
Auxiliary memory corresponds to magnetic storage devices such as the hard
drive, optical storage devices such as CD-ROMs and DVD-ROMs, as well as
read-only memories.

Technical Characteristics:
The main characteristics are.

 Capacity, representing the global volume of information (in bits) that the
memory can store.
 Access time, corresponding to the time interval between the read/write
request and the availability of the data.
 Cycle time, representing the minimum time interval between two
successive accesses.

 Throughput, which defines the volume of information exchanged per unit


of time, expressed in bits per second.
 Non-volatility, which characterises the ability of a memory to store data
when it is not being supplied with electricity.

Ideal Memory:
The ideal memory has a large capacity with restricted access time and
cycle time, a high throughput and is non-volatile.
However, fast memories are also the most expensive. This is why
memories that use different technologies are used in a computer, interfaced with
each other and organised hierarchically.

The fastest memories are located in small numbers close to the processor.
Auxiliary memories, which are not as fast, are used to store information
permanently.
Memory Devices
Computers and many electronic gadgets usually rely on stored information
which is mainly data which can be used to direct circuit actions. The digital
information is stored in memory devices. Memories can be divided into 2
categories based on what memory cells can be accessed at a given instant. SAM
(Sequentially Access Memory) is accessed by stepping through each memory
location until the desired location is reached. Magnetic tape is an example of
SAM.
The second category of memory devices is called RAM (Random Access
Memory) where the memory can be randomly accessed at any instant, without
having to step through each memory location. It is generally faster to access a
RAM compared to SAM. Most of the electronics gadgets memory is of RAM type.

Random Access Memory:


Random access memory, generally called RAM is the system's main
memory, i.e. it is a space that allows you to temporarily store data when a
program is running.
Unlike data storage on an auxiliary memory such as a hard drive, RAM is
volatile, meaning that it only stores data as long as it supplied with electricity.
Thus, each time the computer is turned off, all the data in the memory are
irremediably erased.

Types of RAM:
The RAM family includes two important memory devices: static RAM
(SRAM) and dynamic RAM (DRAM). The primary difference between them is the
lifetime of the data they store. SRAM retains its contents as long as electrical
power is applied to the chip. If the power is turned off or lost temporarily, its
contents will be lost forever. DRAM, on the other hand, has an extremely short
data lifetime-typically about four milliseconds. This is true even when power is
applied constantly.
In short, SRAM has all the properties of the memory you think of when you
hear the word RAM. Compared to that, DRAM seems kind of useless. By itself, it
is. However, a simple piece of hardware called a DRAM controller can be used to
make DRAM behave more like SRAM. The job of the DRAM controller is to
periodically refresh the data stored in the DRAM. By refreshing the data before it
expires, the contents of memory can be kept alive for as long as they are
needed. So DRAM is as useful as SRAM after all.
NVRAM chip consists of both RAM and ROM. During power on reset, the
contents of the ROM are copied to RAM. Before the power turns off, the system
will copy the entire contents of the RAM into ROM for non volatile storage. The
RAM in an NVRAM is called shadow RAM. NVRAM fills the gap between easily
written memory and non volatile memory.

Read-Only Memory:
Read-only memory, called ROM, is a type of memory that allows you to
keep the information contained on it even when the memory is no longer
receiving electricity. Basically, this type of memory only has read-only access.
However, it is possible to save information in some types of ROM memory.
ROM is non volatile in that its contents are not lost when power to it is
removed. All ROMs can be programmed at least once. Mask ROMs are
programmed by having "1"s and "0"s etched into their semiconductors at the time
of manufacturing. Programmable ROM (PROM) can be written after
manufacturing by electrically burning specific transistors or diodes in the memory
array. EPROM can be erased and reprogrammed by using ultraviolet light.

EEPROM (electronically eraseable PROM) data can be erased


electronically but it takes longer time compared to RAM. Read and write time for
RAM is almost the same but PROM has slower write times. PROM must be
erased before they can be reprogrammed and it often needs a higher
programming voltage than its operating voltage.
ROM is usually used to store data or programs that do not change
frequently and must still be there when power supply cuts off.
Types of ROM:
Memories in the ROM family are distinguished by the methods used to
write new data to them (usually called programming), and the number of times
they can be rewritten. This classification reflects the evolution of ROM devices
from hardwired to programmable to erasable-and-programmable. A common
feature of all these devices is their ability to retain data and programs forever,
even during a power failure.
The very first ROMs were hardwired devices that contained a
preprogrammed set of data or instructions. The contents of the ROM had to be
specified before chip production, so the actual data could be used to arrange the
transistors inside the chip. Hardwired memories are still used, though they are
now called "masked ROMs" to distinguish them from other types of ROM. The
primary advantage of a masked ROM is its low production cost. Unfortunately,
the cost is low only when large quantities of the same ROM are required.
One step up from the masked ROM is the PROM (programmable ROM),
which is purchased in an unprogrammed state. If you were to look at the contents
of an unprogrammed PROM, you would see that the data is made up entirely of
1's. The process of writing your data to the PROM involves a special piece of
equipment called a device programmer. The device programmer writes data to
the device one word at a time by applying an electrical charge to the input pins of
the chip. Once a PROM has been programmed in this way, its contents can
never be changed. If the code or data stored in the PROM must be changed, the
current device must be discarded. As a result, PROMs are also known as one-
time programmable (OTP) devices.
An EPROM (erasable-and-programmable ROM) is programmed in
exactly the same manner as a PROM. However, EPROMs can be erased and
reprogrammed repeatedly. To erase an EPROM, you simply expose the device
to a strong source of ultraviolet light. (A window in the top of the device allows
the light to reach the silicon.) By doing this, you essentially reset the entire chip
to its initial--unprogrammed--state. Though more expensive than PROMs, their
ability to be reprogrammed makes EPROMs an essential part of the software
development and testing process.

Hybrids:
As memory technology has matured in recent years, the line between
RAM and ROM has blurred. Now, several types of memory combine features of
both. These devices do not belong to either group and can be collectively
referred to as hybrid memory devices. Hybrid memories can be read and written
as desired, like RAM, but maintain their contents without electrical power, just
like ROM. Two of the hybrid devices, EEPROM and flash, are descendants of
ROM devices. These are typically used to store code. The third hybrid, NVRAM,
is a modified version of SRAM. NVRAM usually holds persistent data.
EEPROMs are electrically-erasable-and-programmable. Internally, they
are similar to EPROMs, but the erase operation is accomplished electrically,
rather than by exposure to ultraviolet light. Any byte within an EEPROM may be
erased and rewritten. Once written, the new data will remain in the device
forever--or at least until it is electrically erased. The primary tradeoff for this
improved functionality is higher cost, though write cycles are also significantly
longer than writes to a RAM. So you wouldn't want to use an EEPROM for your
main system memory.
Flash memory combines the best features of the memory devices
described thus far. Flash memory devices are high density, low cost, nonvolatile,
fast (to read, but not to write), and electrically reprogrammable. These
advantages are overwhelming and, as a direct result, the use of flash memory
has increased dramatically in embedded systems. From a software viewpoint,
flash and EEPROM technologies are very similar. The major difference is that
flash devices can only be erased one sector at a time, not byte-by-byte. Typical
sector sizes are in the range 256 bytes to 16KB. Despite this disadvantage, flash
is much more popular than EEPROM and is rapidly displacing many of the ROM
devices as well.
The third member of the hybrid memory class is NVRAM (non-volatile
RAM). Nonvolatility is also a characteristic of the ROM and hybrid memories
discussed previously. However, an NVRAM is physically very different from those
devices. An NVRAM is usually just an SRAM with a battery backup. When the
power is turned on, the NVRAM operates just like any other SRAM. When the
power is turned off, the NVRAM draws just enough power from the battery to
retain its data. NVRAM is fairly common in embedded systems. However, it is
expensive--even more expensive than SRAM, because of the battery--so its
applications are typically limited to the storage of a few hundred bytes of system-
critical information that can't be stored in any better way.
Flash Memory:
Flash memory is a compromise between RAM-type memories and ROM
memories. Flash memory possesses the non-volatility of ROM memories while
providing both read and write access However, the access times of flash
memories are longer than the access times of RAM.

Flash memory

A USB flash drive. The chip on the left is the flash memory. The
microcontroller is on the right.
Flash memory is a non-volatile computer memory that can be electrically
erased and reprogrammed. It is a technology that is primarily used in memory
cards and USB flash drives for general storage and transfer of data between
computers and other digital products. It is a specific type of EEPROM
(Electrically Erasable Programmable Read-Only Memory) that is erased and
programmed in large blocks; in early flash the entire chip had to be erased at
once. Flash memory costs far less than byte-programmable EEPROM and
therefore has become the dominant technology wherever a significant amount of
non-volatile, solid state storage is needed. Example applications include PDAs
(personal digital assistants), laptop computers, digital audio players, digital
cameras and mobile phones. It has also gained popularity in the game console
market, where it is often used instead of EEPROMs or battery-powered SRAM
for game save data.
Flash memory is non-volatile, which means that no power is needed to
maintain the information stored in the chip. In addition, flash memory offers fast
read access times (although not as fast as volatile DRAM memory used for main
memory in PCs) and better kinetic shock resistance than hard disks. These
characteristics explain the popularity of flash memory in portable devices.
Another feature of flash memory is that when packaged in a "memory card," it is
enormously durable, being able to withstand intense pressure, extremes of
temperature, and even immersion in water.
Although technically a type of EEPROM, the term "EEPROM" is generally
used to refer specifically to non-flash EEPROM which is erasable in small blocks,
typically bytes. Because erase cycles are slow, the large block sizes used in
flash memory erasing give it a significant speed advantage over old-style
EEPROM when writing large amounts of data.

Memory card:
A memory card or flash memory card is a solid-state electronic flash
memory data storage device capable of storing digital contents. These are mainly
used with digital cameras, handheld and Mobile computers, mobile phones,
music players, video game consoles, and other electronics. They offer high re-
record-ability, power-free storage, small form factor, and rugged environmental
specifications. There are also non-solid-state memory cards that do not use flash
memory, and there are different types of flash memory

There are many different types of memory cards and jobs they are used for.
Some common places include in digital cameras, game consoles, cell phones,
and industrial applications. PC card (PCMCIA) were among first commercial
memory card formats (type I cards) to come out in the 1990s, but are now only
mainly used in industrial applications and for I/O jobs (using types I/II/III), as a
connection standard for devices (such as a modem). Also in 1990s, a number of
memory card formats smaller than PC Card came out, including CompactFlash,
SmartMedia, and Miniature Card. In other areas, tiny embedded memory cards
(SID) were used in cell phones, game consoles started using proprietary memory
card formats, and devices like PDAs and digital music players started using
removable memory cards.
Nowadays, most new PCs have built-in slots for a variety of memory
cards; Memory Stick, CompactFlash, SD, etc. Some digital gadgets support more
than one memory card to ensure compatibility.
Other Memory Devices:
There are several other kinds of memory devices available for use with
both general-purpose and embedded computer systems. They include floppy
disks, hard drives, CD-ROM disks and many others. When using these types of
devices however, an additional embedded controller generally handles the
communication between the main processor and the hardware device. Of course,
this is a kind of embedded programming, but is an area that we will only briefly
discuss, since many embedded controllers already have this kind of support built-
in, or included on the main board of the system.

Memory Interfaces
Interface:
A boundary across which two independent systems meet and act on or
communicate with each other. In computer technology, there are several types of
interfaces.

 User interface - the keyboard, mouse, menus of a computer system.


The user interface allows the user to communicate with the operating system.
Also see GUI.
 Software interface - the languages and codes that the applications use
to communicate with each other and with the hardware.
 Hardware interface - the wires, plugs and sockets that hardware
devices use to communicate with each other.

Memory Interfaces:
Lattice provides a wide range of high-performance interface solutions for
the latest memory technologies. These solutions combine innovative silicon with
Intellectual Property (IP) cores to provide robust solutions for networking
applications.

A memory interface is disclosed for accessing a plurality in memory


regions. The interface includes a register which stores a number of memory
request signals received from a processor or the like. The memory interface
includes circuitry for detecting which memory region each memory request refers
to and also which page within that memory region is required to be accessed.
Using the information contained in the register, the memory interface is able to
determine which page within a memory region will be required to be accessed
after the currently open page is closed. The memory interface can detect this
information a number of memory requests in advance. Thus the memory
interface is able to provide the necessary control instructions to initiate the
opening of the subsequently required page within a memory region so that when
the memory request requiring access to this page is serviced, there is no delay in
opening the page. The memory interface is arranged so that a page within a first
memory region can be opened while a page within a second memory is being
actually accessed.

Features:
 LatticeSC FPGA devices provide full-featured embedded high-speed
memory controllers supporting DDRI/II SDRAM, QDR I/II SRAM, and
RLDRAM I/II memory devices.
 LatticeECP3/ECP2/M/ECP/XP2/XP FPGA devices provide dedicated
resources to align DQ and DQS signals, multiplex/de-multiplex to and from
double data rate, and transfer data from the DQS clock domain to the system
clock domain.
 LatticeECP3 devices provide support for DDR3 Read and Write
leveling to adjust for PCB route delay on read and write data transfers.
 Lattice ORSPI4 FPSC contains an embedded QDR II memory
interface providing 20+ Gbps bandwidth w/simple FIFO interface to FPGA.
 Through the ispLeverCORE program, Lattice offers a variety of IP
cores and Reference Designs for popular memory interfaces.

External Memory Interface:


An External Memory Interface is a bus protocol for communication from
an integrated circuit, such as a microprocessor, to an external memory device
located on a circuit board. The memory is referred to as external because it is not
contained within the internal circuitry of the integrated circuit and thus is
externally located on the circuit board.

Some common External Memory Interfaces include:

• DDR
• DDR2
• GDDR
Common Flash memory Interface:
The Common Flash memory Interface (CFI) is an open standard jointly
developed by AMD, Intel, Sharp and Fujitsu. An overview about the specification
is available at AMD. It is an open standard, which means it is freely
implementable by all flash memory vendors, and has been approved by the non-
volatile memory subcommittee of JEDEC[1]. The idea behind was the
interchangeability of current and future flash memory devices offered by different
vendors. The developer is able to use one driver for different flash products by
reading identifying information out of the flash chip itself as can be read here
Intel.

That information contains:

 Memory size
 Byte and word configuration
 Block configuration
 Voltages and timings

Benefits of this concept are:

 Basically no or little information about flash device has to be stored in


tables within system software
 Possible to use lower cost flash memory devices as they become
available, without rewriting code
 Adapting current software systems shall be done more easily and
quickly than before

Memory interface device and


method for Accessing Memories
A memory interface is disclosed for accessing a plurality in memory
regions. The interface includes a register which stores a number of memory
request signals received from a processor or the like. The memory interface
includes circuitry for detecting which memory region each memory request refers
to and also which page within that memory region is required to be accessed.
Using the information contained in the register, the memory interface is able to
determine which page within a memory region will be required to
Choosing and using microprocessor memory interfaces
Microprocessor-based systems are ideal for executing an essentially
infinite number of tasks. The host microprocessors support a limited set of
instructions that can combine to produce incredibly complex software programs.
In other words, a microprocessor Is a piece of hardware designed to be as
general-purpose as is feasible, to target as many applications as possible.
Moore's Law states that microprocessors will double in complexity roughly
every two years. This remarkably accurate prediction has resulted in the latest
multi core processors that enable the convergence of cutting-edge technologies.
However, a microprocessor does not make up a complete system. In
reality, the supporting components in a system are just as important as the
microprocessor itself when determining overall capabilities and performance.
Just as microprocessors evolve with time into faster and more efficient devices,
supporting components are also evolving to include more complex functions and
higher performance interfaces.

PCIE (Peripheral Component Interconnect Express) is quickly becoming


the peripheral interconnect of choice, because the slower PCI and AGP
(Accelerated Graphics Port) buses place bottlenecks on system performance.
For similar reasons, DDR2 (Double Data Rate 2) is slowly taking hold as a
general-purpose memory to overcome its slower predecessor, DDR. A system's
memory interface can affect performance more than any other system-level
interface, and no interface offers more choices and configurations.

At the system level, PCIe interfaces offer configurable options in the form
of data rates and lane widths (one, two, four, and, in some cases, eight lanes). In
contrast, DDR2 interfaces frequently have widths of 4 to 256 bits and offer a
multitude of capacity, data-rate, and core-timing-performance permutations. Add
the variety of available memory technologies, and system designers end up with
the daunting task of finding an optimal configuration for their systems.

DDR, DDR2, RDRAM (Rambus dynamic-random-access memory),


GDDR1/2/3 (graphics DDR1/2/3), and XDR (extreme-data-rate) DRAM are all
examples of memory technologies that designers frequently use, and each one
has its own set of advantages and drawbacks. To add to this already populous
technology space, some memory companies have decided to produce specialty
memories that offer superior performance for specially targeted markets.
RLDRAM (reduced-latency DRAM) and FCRAM (fast-cycle RAM), for example,
are two technologies specifically optimized for network-processor manufacturers
that require fast internal DRAM cycle times. XDR2 is a new memory technology
from Rambus that incorporates micro-threading and offers high efficiency for
graphics, networking, and consumer-electronics applications.
Depending on system needs, designers must choose a memory
technology and configuration that minimizes the overall system cost and
maximizes performance. Typically, designers optimize a memory system for any
combination of cost versus capacity, peak bandwidth, efficiency, and system-
level restrictions. Although capacity seems straightforward enough, when adding
more devices to get more memory, designers must carefully consider how to add
the memory devices into the system. For example, adding capacity involves a
system-level trade-off, because the added memory devices draw more power.

Enterprise servers and supercomputers are often optimized, at least in


part, to contain high-capacity-memory systems. The large and complex programs
and data sets that servers and supercomputers often access benefit from more
capacity. Users access instructions and data stored in rapid-access areas, such
as DRAM subsystems, more quickly than those stored in low-speed, high-latency
storage areas, such as hard-disk drives. Therefore, in addition to capacity, these
systems are also clearly sensitive to peak bandwidth.

Two ways exist to increase the peak bandwidth of a memory system:


increased bus width and increased data rate. The latter involves increasing the
rate at which data transfers on each data link, and the former involves increasing
the number of data links in the memory system to obtain a higher total aggregate
bandwidth. For example, to obtain a total aggregate bandwidth of 12.8 G
bytes/sec, a designer could opt for a 128-bit-wide DDR2 system running at an
800-MHz data rate or a 16-bit-wide XDR system running at a 6.4-GHz data rate.

Most of today's memory technologies provide the capability of achieving


high total aggregate data rates, but different applications stress the memory
system in different ways. The architectural features of any given memory
technology dictate its efficiency for a particular application and its corresponding
memory-access requirements. The efficiency of a memory subsystem is defined
as the percentage of a system's total aggregate bandwidth that provides useful
data to and from the host microprocessor and is the reason memory vendors
have added specialty memories to their product portfolios.
Refrences:

 http://library.thinkquest.org/C0110291/basic/computer/index.p
hp
 http://en.kioskea.net/contents/pc/memoire.php3
 http://en.wikipedia.org/wiki/Memory_card
 http://www.netrino.com/Embedded-Systems/How-To/Memory-
Types-RAM-ROM-Flash
 http://en.wikipedia.org/wiki/Flash_memory
 http://www.electronics-project-
design.com/MemoryDevices.html
 http://www.latticesemi.com/solutions/technologysolutions/mem
ory.cfm
 http://www.thefreedictionary.com/memory+device
 http://www.allbusiness.com/electronics/computer-equipment-
computer/6241606-1.html
 http://www.freepatentsonline.com/6182192.html
 http://en.wikipedia.org/wiki/Common_Flash_Memory_Interface
 http://en.wikipedia.org/wiki/Common_Flash_Memory_Interface
 http://en.wikipedia.org/wiki/Common_Flash_Memory_Interface

You might also like