Memory Architecture
Memory Architecture
Volatile Memory
Volatile memory is a memory which retains its contents only so long as the system is powered
on. Volatile Memory will lose the data in it when powered down.
– Static RAM
– Dynamic RAM
SRAM is a short for static random access memory and it’s a type of memory that is faster and
more reliable than dynamic RAM.
While DRAM supports access times of about 60 nanoseconds, SRAM can give access times as
low as 10 nanoseconds. But, SRAM is much more expensive to produce than DRAM.
Non-volatile Memory
Contrary to volatile memory, non-volatile memories retain their content even when power is cut.
– ROM
– PROM
– EPROM
– EEPROM
– Flash memory
Non-volatile memory is usually a lot slower, more involved to work with, and much more
expensive than the volatile memory.
For example, while the volatile memory in your PC has access times in the nanosecond range,
some types of non-volatile memory will be unavailable for milliseconds after writing even one
byte to them.
ROMs are commonly programmed by manufacturer and once programmed, can’t be changed.
These are cost-effective when you need thousands of copies of a single program.
PROMs and so-called One Time Programmable ROMs called OTP can be programmed by a
special device called a PROM programmer only one time, so these are not suitable for development
where the content of the memory need to be often changed. But once the development process is
finished, they are well-suited for middle range mass production.
EPROMs. This chip could be programmed with a special programmer and could be erased by applying
ultra-violet light. It takes long time to erase.
EEPROMs are much like EPROMs except that they are electrically erasable without ultraviolet source.
Limitations of EEPROMs are just slow speed and high cost, and they can be reprogrammed over than
10,000 times.
Flash Memory: Flash memory is also a computer storage that can be electrically erased and
reprogrammed, like EEPROM, but Flash devices can erase all the data at once with block mode erasing,
unlike EEPROM with byte-by-byte mode.
Flash memory was invented by a Japanese working for Toshiba in 1984, and commercialized in the early
1990s, the erasure process of the memory reminded him of the flash of a camera, so he named the
memory flash. Flash memory is sometimes called flash ROM or flash EEPROM
Register File: Normally this is a relatively small memory embedded on the CPU and consists of
several registers. It is used as a scratchpad for temporary storage of values that the CPU is
working with.
Data Memory: This is longer term storage, which is much larger than the register file.
Data memory is also used for temporary storage of the dynamic data which is generated by the
application program.
Program Memory: Like the data memory, the program memory is usually a relatively large
memory, and it is used for storage of program code.
EEPROM Memory: This is commonly a lot smaller than program memory, and it is used for
storage of data that has to be kept even though power is off.
Assignment