Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Random-Access Memory
Logic Devices The time it takes to transfer information to or from
any desired random location is always the same,
A memory unit is a collection of cells capable of
hence, the name random-access memory (RAM).
storing a large quantity of binary information.
There are two types of memories that are used in A memory unit stores binary information in groups
digital systems: of bits called words. A group of eight bits is called
a byte. The capacity of a memory unit is usually
Random-Access Memory (RAM): Accepts stated as the total number of bytes it can store.
new data for storage to be available later for
use. RAM can perform both write and read A block diagram of the memory unit is:
operations. A RAM loses its stored data when
power is turned off, thus it is a volatile memory.
Read-Only Memory (ROM): Cannot have its
contents changed during normal operation. Its
contents are determined either at the time of
manufacture or during a special write mode. A
ROM retains stored data even if power is
switched off, thus it is a non-volatile memory.
The ROM is an example of a programmable logic The n data input lines provide the information to
device. Other such units are the programmable be stored in memory and the n output lines specify
logic array (PLA), the programmable array logic the binary data coming out of the memory. The k
(PAL), and the field-programmable gate array address lines specify the particular word chosen.
(FPGA). Programming of these devices involves The two control inputs specify the direction of data
blowing fuses at specified locations. transfer required.
1 2
Each word in memory is assigned an identification 1.1 Write and Read Operations
number, called an address (0 up to 2k-1). The
selection of a specific word inside the memory is The steps that must be taken for the purpose of
done by applying the k-bit address to the address transferring a new word to be stored into memory
lines. A decoder accepts this address and opens are as follows:
the paths needed to select the word specified.
1. Apply the binary address of the desired word
Memories vary greatly in size and may range from to the address lines.
1024 words, requiring an address of 10 bits. To 232 2. Apply the data bits that must be stored in
word requiring 32 address bits. memory to the data input lines.
The possible content of the first three and the last 3. Activate the write input.
three words in a 1024 x 16 memory (2K bytes) are:
The steps that must be taken for the purpose of
transferring a stored word out of memory are as
follows:
1. Apply the binary address of the desired word
to the address lines.
2. Activate the read input.
Some memory chips have a different configuration
of control inputs; one input selects the unit and the
other decides the operation. The operations that
result from these control inputs are:
3 4
1.2 Timing Waveforms 1.3 Types of RAM
The operation of a memory is usually controlled by Integrated circuit RAM units are available in two
the CPU. The access time of a memory is the time possible operating modes:
required to select a word and read it. The cycle
time of a memory is the time required to complete Static RAM (SRAM): Consists essentially of
a write operation. The access time and cycle time internal latches that store the binary data. The
must be within a time equal to a fixed number of stored information remains valid as long as
CPU clock cycles. The memory timing below is for power is applied to the unit.
a CPU with 50MHz clock and memory with 50ns
Dynamic RAM (DRAM): Stores the binary data
cycle time:
in the form of electric charges on capacitors.
The capacitors are provided inside the chip by
MOS transistors. The stored charge on the
capacitor tends to discharge with time and the
capacitors must be periodically recharged by
refreshing the DRAM. Refreshing is done by
cycling through the words every 2 to 10ms to
restore the decaying charge. DRAM is also a
volatile memory.
5 6
A decoder with k inputs and 2k outputs requires 2k DRAM is the preferred technology for large
AND gates with k inputs per gate. The number of memories. To reduce the number of pins in the IC
gates and the number of inputs per stage can be package, designers utilize address multiplexing;
reduced by employing two decoders in a two- one set of address input pins accommodates the
dimensional selection scheme. In this scheme, address components. The idea is demonstrated in
two k/2-input decoders are used instead of one k- a 64K-word memory:
input decoder. One decoder performs the row
selection and the other the column selection. This
technique is demonstrated below for a 1K-word
memory:
11 12
Consider the following three cases: 3.2 Single-Error Correction, Double-Error
Detection
15 16
4.1 Combinational Circuit Implementation Only outputs B3 – B6 need be generated with a
ROM; the other two are readily obtained. The ROM
The programmed ROM shown previously may be required must be of size 8 X 4.
considered as a combinational circuit with eight
The ROM realization is shown below:
outputs, each being a function of five input
variables. E.g., output A7 can be expressed in sum
of minterms as:
There are three main types or ROMs and they The PROM is a combinational programmable logic
differ in the way they are programmed: device (PLD). A combinational PLD is an IC with
programmable gates divided into an AND array
Mask ROM: Contents programmed at factory and an OR array to provide an AND-OR sum-of-
according to the desired specification, and no product implementation.
changes are possible afterwards. This type is
uneconomical for small quantities because the There are three major types of combinational
vendor charges the customer a special fee for PLDs and they differ in the placement of the
custom masking the particular ROM. programmable connections in the AND-OR array:
19 20
The fuse map of a PLA may be specified in a
5. Programmable Logic Array tabular form. For example, the programming table
that specifies the PLA shown previously is:
Consists programmable AND and OR arrays and
output XOR gates (controllable inverters). The
internal logic of a PLA with three inputs and two
outputs is shown below:
F1( A, B, C ) = ∑ (0, 1, 2, 4)
F2 ( A, B, C ) = ∑ (0, 5, 6, 7)
Solution:
Both the true and complement of the functions are
simplified in the following two K-maps. Note that output F1 is the true output even though a
C is marked over it in the table. This is because F1
is generated with an AND-OR circuit. The XOR
gate complements the function to produce the true
F1 output.
F2 = AB + AC + A′B′C ′
25 26