Unit 2
Unit 2
A memory is just like a human brain. It is used to store data and instructions.
Computer memory is the storage space in the computer, where data is to be
processed and instructions required for processing are stored. The memory is
divided into large number of small parts called cells. Each location or cell has a
unique address, which varies from zero to memory size minus one. For example, if
the computer has 64k words, then this memory unit has 64 * 1024 = 65536 memory
locations. The address of these locations varies from 0 to 65535.
Classification of memories:
RAM:
RAM (Random Access Memory) is the internal memory of the CPU for storing data,
program, and program result. It is a read/write memory which stores data until the
machine is working. As soon as the machine is switched off, data is erased.
Access time in RAM is independent of the address, that is, each storage location
inside the memory is as easy to reach as other locations and takes the same amount
of time. Data in the RAM can be accessed randomly but it is very expensive.
RAM is volatile, i.e. data stored in it is lost when we switch off the computer or if
there is a power failure. Hence, a backup Uninterruptible Power System (UPS) is
often used with computers. RAM is small, both in terms of its physical size and in the
amount of data it can hold.
RAM is of two types −
Static RAM (SRAM)
Dynamic RAM (DRAM)
Static RAM (SRAM)
The word static indicates that the memory retains its contents as long as power is
being supplied. However, data is lost when the power gets down due to volatile
nature. SRAM chips use a matrix of 6-transistors and no capacitors. Transistors do not
require power to prevent leakage, so SRAM need not be refreshed on a regular
basis.
There is extra space in the matrix, hence SRAM uses more chips than DRAM for the
same amount of storage space, making the manufacturing costs higher. SRAM is thus
used as cache memory and has very fast access.
Characteristic of Static RAM
Long life
No need to refresh
Faster
Used as cache memory
Large size
Expensive
High power consumption
Dynamic RAM (DRAM)
DRAM, unlike SRAM, must be continually refreshed in order to maintain the data.
This is done by placing the memory on a refresh circuit that rewrites the data several
hundred times per second. DRAM is used for most system memory as it is cheap and
small. All DRAMs are made up of memory cells, which are composed of one
capacitor and one transistor.
Characteristics of Dynamic RAM
Short data lifetime
Needs to be refreshed continuously
Slower as compared to SRAM
Used as RAM
Smaller in size
Less expensive
Less power consumption
ROM:
ROM stands for Read Only Memory. The memory from which we can only read but
cannot write on it. This type of memory is non-volatile. The information is stored
permanently in such memories during manufacture. A ROM stores such instructions
that are required to start a computer. This operation is referred to as bootstrap.
ROM chips are not only used in the computer but also in other electronic items like
washing machine and microwave oven.
Let us now discuss the various types of ROMs and their characteristics.
Advantages of ROM:
Programmable Logic Devices (PLDs) are the integrated circuits. They contain an
array of AND gates & another array of OR gates. There are three kinds of PLDs based
on the type of arrays, which has programmable feature.
Programmable Read Only Memory
Programmable Array Logic
Programmable Logic Array
PAL is a programmable logic device that has Programmable AND array & fixed OR
array. The advantage of PAL is that we can generate only the required product terms
of Boolean function instead of generating all the min terms by using programmable
AND gates. The block diagram of PAL is shown in the following figure.
Here, the inputs of AND gates are programmable. That means each AND gate has
both normal and complemented inputs of variables. So, based on the requirement,
we can program any of those inputs. So, we can generate only the required product
terms by using these AND gates.
Here, the inputs of OR gates are not of programmable type. So, the number of inputs
to each OR gate will be of fixed type. Hence, apply those required product terms to
each OR gate as inputs. Therefore, the outputs of PAL will be in the form of sum of
products form.
Example
Let us implement the following Boolean functions using PAL.
A=XY+XZ′
B=XY′+YZ′
The given two functions are in sum of products form. There are two product terms
present in each Boolean function. So, we require four programmable AND gates &
two fixed OR gates for producing those two functions. The corresponding PAL is
shown in the following figure.
The programmable AND gates have the access of both normal and complemented
inputs of variables. In the above figure, the inputs X, X′, Y, Y′, Z & Z′, are available at
the inputs of each AND gate. So, program only the required literals in order to
generate one product term by each AND gate. The symbol ‘X’ is used for
programmable connections.
Here, the inputs of OR gates are of fixed type. So, the necessary product terms are
connected to inputs of each OR gate. So that the OR gates produce the respective
Boolean functions. The symbol ‘.’ is used for fixed connections.
PLA is a programmable logic device that has both Programmable AND array &
Programmable OR array. Hence, it is the most flexible PLD. The block diagram of
PLA is shown in the following figure.
Here, the inputs of AND gates are programmable. That means each AND gate has
both normal and complemented inputs of variables. So, based on the requirement,
we can program any of those inputs. So, we can generate only the required product
terms by using these AND gates.
Here, the inputs of OR gates are also programmable. So, we can program any
number of required product terms, since all the outputs of AND gates are applied as
inputs to each OR gate. Therefore, the outputs of PAL will be in the form of sum of
products form.
Example
Let us implement the following Boolean functions using PLA.
A=XY+XZ′
B=XY′+YZ+XZ′
The given two functions are in sum of products form. The number of product terms
present in the given Boolean functions A & B are two and three respectively. One
product term, Z′XZ′X is common in each function.
So, we require four programmable AND gates & two programmable OR gates for
producing those two functions. The corresponding PLA is shown in the following
figure.
The programmable AND gates have the access of both normal and complemented
inputs of variables. In the above figure, the inputs X, X′, Y, Y′, Z & Z′, are available at
the inputs of each AND gate. So, program only the required literals in order to
generate one product term by each AND gate.
All these product terms are available at the inputs of each programmable OR gate.
But, only program the required product terms in order to produce the respective
Boolean functions by each OR gate. The symbol ‘X’ is used for programmable
connections.
The full form of FPGA is “Field Programmable Gate Array”. It contains ten thousand
to more than a million logic gates with programmable interconnection.
Programmable interconnections are available for users or designers to perform
given functions easily. A typical model FPGA chip is shown in the given figure.
There are I/O blocks, which are designed and numbered according to function. For
each module of logic level composition, there are CLB’s (Configurable Logic
Blocks).
CLB performs the logic operation given to the module. The inter connection between
CLB and I/O blocks are made with the help of horizontal routing channels, vertical
routing channels and PSM (Programmable Multiplexers).
The number of CLB it contains only decides the complexity of FPGA. The
functionality of CLB’s and PSM are designed by VHDL or any other hardware
descriptive language. After programming, CLB and PSM are placed on chip and
connected with each other with routing channels.
Advantages
It requires very small time; starting from design process to functional chip.
No physical manufacturing steps are involved in it.
The only disadvantage is, it is costly than other styles