DSD Memory
DSD Memory
Introduction
There are two types of memories that are used in digital
systems:
Random-access memory (RAM): perform both the write and
read operations.
Read-only memory (ROM): perform only the read operation.
2
Random-Access Memory (RAM)
A memory unit stores binary information in groups of bits
called words.
1 byte = 8 bits
1 word = 2 bytes (or more)
3
4
Each word in memory is
assigned an identification
number, called an address,
starting from 0 up to 2k-1,
where k is the number of
address lines.
5
Transferring a new word to be stored into memory:
Apply the binary address of the desired word to the address
lines.
Apply the data bits that must be stored in memory to the data
input lines.
Activate the write input.
6
Transferring a stored word out of memory:
Apply the binary address of the desired word to the address lines.
Activate the read input.
Commercial memory sometimes provide the two control
inputs for reading and writing in a somewhat different
configuration.
7
Types of memories
In a random-access memory, the access time is always the same
regardless of the particular location of the word.
In a sequential-access memory, the time it takes to access a word
depends on the position of the word with respect to the reading
head position; therefore, the access time is variable.
8
Static RAM (SRAM)
SRAM consists essentially of internal latches that store the binary
information.
The stored information remains valid as long as power is applied
to the unit.
SRAM is easier to use and has shorter read and write cycles.
Low density, low capacity, high cost, high speed, high power
consumption.
9
Dynamic RAM (DRAM)
DRAM stores the binary information in the form of electric
charges on capacitors.
The capacitors are provided inside the chip by MOS transistors.
The capacitors tends to discharge with time and must be
periodically recharged by refreshing the dynamic memory.
DRAM offers reduced power consumption and larger storage
capacity in a single memory chip.
High density, high capacity, low cost, low speed, low power
consumption.
10
Types of memories
Memory units that lose stored information when power is turned
off are said to be volatile.
Both static and dynamic, are of this category since the binary
cells need external power to maintain the stored information.
Nonvolatile memory, such as magnetic disk, ROM, retains its
stored information after removal of power.
11
Memory decoding
The equivalent logic of a binary cell that stores one bit of
information is shown below.
Read/Write = 0, select = 1, input data to S-R latch
Read/Write = 1, select = 1, output data from S-R latch
12
4x4 RAM
There is a need for decoding circuits to select the memory word
specified by the input address.
During the read operation, the four bits of the selected word go
through OR gates to the output terminals.
During the write operation, the data available in the input lines are
transferred into the four binary cells of the selected word.
A memory with 2 k words of n bits per word requires k address lines
that go into kx2k decoder.
13
4x4 RAM
14
Coincident decoding
A decoder with k inputs and 2k
outputs requires 2k AND gates
with k inputs per gate.
Two decoding in a two-
dimensional selection scheme
can reduce the number of
inputs per gate.
1K-word memory, instead of
using a single 10x1024 decoder,
we use two 5x32 decoders.
15
Address multiplexing
DRAMs typically have four times the density of SRAM.
The cost per bit of DRAM storage is three to four times less than
SRAM. Another factor is lower power requirement.
Address multiplexing will reduce the number of pins in the IC
package.
In a two-dimensional array, the address is applied in two parts at
different times, with the row address first and the column address
second. Since the same set of pins is used for both parts of the
address, so can decrease the size of package significantly.
16
Address multiplexing for 64K DRAM
After a time equivalent to the
settling time of the row
selection, RAS goes back to
the 1 level.
Registers are used to store the
addresses of the row and
column.
CAS must go back to the 1
level before initializing
another memory operation.
17
Read-Only Memory (ROM)
A block diagram of a ROM is shown below. It consists of k address
inputs and n data outputs.
The number of words in a ROM is determined from the fact that k
address input lines are needed to specify 2k words.
18
Construction of ROM
Each output of the decoder represents a memory address.
Each OR gate must be considered as having 32 inputs.
A 2k x n ROM will have an internal k x 2k decoder and n OR gates.
19
Truth table of ROM
A programmable connection between two lines is logically
equivalent to a switch that can be altered to either be close or
open.
Intersection between two lines is sometimes called a cross-point.
20
Programming the ROM
In Table, 0: no connection; 1: connection
Address 3 = 10110010 is permanent storage using fuse link
21
Combinational circuit implementation
The internal operation of a ROM can be interpreted in two ways:
First, a memory unit that contains a fixed pattern of stored words.
Second, implements a combinational circuit.
Previous figure may be considered as a combinational circuit with
eight outputs, each being a function of the five input variables.
22
Example
Design a combinational circuit using a ROM. The circuit accepts a
3-bit number and generates an output binary number equal to the
square of the input number.
Derive truth table first
23
Example
24
Types of ROMs
The required paths in a ROM may be programmed in four
different ways.
1. Mask programming: fabrication process
2. Read-only memory or PROM: blown fuse/fuse intact
3. Erasable PROM or EPROM: placed under a special ultraviolet
light for a given period of time will erase the pattern in
ROM.
4. Electrically-erasable PROM(EEPROM): erased with an
electrical signal instead of ultraviolet light.
25
Combinational PLDs
A combinational PLD is an integrated circuit with
programmable gates divided into an AND array and an OR
array to provide an ANDOR sum of product mplementation.
PROM: fixed AND array constructed as a decoder and
programmable OR array.
PAL: programmable AND array and fixed OR array.
PLA: both the AND and OR arrays can be programmed.
26
Combinational PLDs
27
•
Programmable Logic Array (PLA)
The decoder in PROM example can be replaced by an array
of AND gates that can be programmed to generate any
product term of the input variables.
The product terms are then connected to OR gates to
provide the sum of products for the required Boolean
functions.
The output is inverted when the XOR input is connected to
1 (since x 1 = x’). The output doesn’t change and connect
to 0 (since x 0 = x).
28
•
Programmable Logic Array (PLA)
F1 = AB’+AC+A’BC’
F2 = (AC+BC)’
29
•
PLA Programming Table
First: list the product terms numerically
Second: specifiy the required paths between inputs
and AND gates
Third: specify the paths between the AND and OR gates
For each output variable, we may have a T(ture) or
C(complement) for programming the XOR gate
30
•
Programmable Array Logic (PAL)
The PAL is a programmable logic device with a fixed OR
array and a programmable AND array.
31
Programmable Array Logic (PAL)
When designing with a PAL, the Boolean functions must be
simplified to fit into each section.
Unlike the PLA, a product term cannot be shared among two
or more OR gates. Therefore, each function can be simplified
by itself without regard to common product terms.
The output terminals are sometimes driven by three-state
buffers or inverters.
32
PAL Example
w(A, B, C, D) = ∑(2, 12, 13)
x(A, B, C, D) = ∑(7, 8, 9, 10, 11, 12, 13, 14, 15)
y(A, B, C, D) = ∑(0, 2, 3, 4, 5, 6, 7, 8, 10, 11, 15)
z(A, B, C, D) = ∑(1, 2, 8, 12, 13)
33
PAL Table
z has four product terms, and we can replace by w with two
product terms, this will reduce the number of terms for z
from four to three.
34
PAL Implementation
35
Fuse map for example
36
Reference
, “Digital Circuits,” NPTEL:
37