Uploaded by Priyadarsini thiruvengadam

UNIT 5 FINAL DPSD 2021

advertisement
UNIT V
MEMORY AND PROGRAMMABLE LOGIC
RAM – Memory Decoding – Error Detection and Correction - ROM - Programmable Logic Array –
Programmable Array Logic – Sequential Programmable Devices..
 A memory unit is a device to which binary information is transferred for storage and from
which information is retrieved when needed for processing.
 A memory unit is a collection of cells capable of storing a large quantity of binary information.
TWO TYPES OF MEMORIES
Explain in detail about two types of memories.
May 2012
 There are two types of memories that are used in digital systems: random-access memory
(RAM) and read-only memory (ROM)
 The process of storing new information into memory is referred to as a memory “write”
operation.
 The process of transferring the stored information out of memory is referred to as a
memory “read” operation.
 RAM can perform both write and read operations. ROM can perform only the read operation.
 This means that suitable binary information is already stored inside memory and can be
retrieved or read at any time. However, that information cannot be altered by writing.
 ROM is one example of a PLD. Other such units are
o Programmable logic array (PLA)
o Programmable array logic (PAL), and
o Field Programmable Gate Array (FPGA).
 A PLD is an integrated circuit with internal logic gates connected through electronic paths that
behave similarly to fuses.
Fig: Block diagram of a memory unit.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 1
 The n data input lines provide the information to be stored in memory and the n data
output lines supply the information coming out of memory.
 The k address lines specify the particular word chosen among the many available.
 The two control inputs specify the direction of transfer desired: The Write input causes binary
data to be transferred into the memory and the Read input causes binary data to be transferred
out of memory.
 A typical PLD may have hundreds to millions of gates interconnected through hundreds to
thousands of internal paths. Instead of having multiple input lines into the gate, we draw a
single line entering the gate.
 The input lines are drawn perpendicular to this single line and are connected to the gate through
internal fuses as shown in the figure. In a similar fashion, we can draw the array logic for an
AND gate.
Fig: Conventional and array logic diagrams for OR gate
READ-ONLY MEMORY
What is ROM and why is it necessary to use ROM in a computer? Explain various types of ROM in
detail. [NOV-2019]
Explain in detail about read-only memory.
(Apr 2018 , Dec 2011)
 A ROM is essentially a memory device in which permanent binary information is stored.
 It is embedded in the unit and cannot be altered, even when the power is turned off.
 It does not have data inputs because it does not have write operation.
Fig: ROM block diagram
 Number of words is get from number of address inputs, here it is ‘k’, hence 2k words of n bits
each is present in the memory.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 2
Fig: Internal logic of a 32×8 ROM
Example:
 The five inputs are decoded into 32 distinct outputs by means of a 5×32 decoder. Each output of
the decoder represents a memory address.
 The 32 outputs of the decoder are connected to each of the eight OR gates. Each OR gate must be
considered as having 32 inputs.
 Each output of the decoder is connected to one of the inputs of each OR gate. Since each OR gate
has 32 input connections and there are 8 OR gates, the ROM contains 32 x 8 = 256 internal
connections.
 A programmable connection between two lines is logically equivalent to a switch that can be
altered to be either closed (meaning that the two lines are connected) or open (meaning that the
two lines are disconnected).
 The programmable intersection between two lines is sometimes called a cross point.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 3
 For example, programming the ROM according to the truth table given by table. Every 0 listed
in the truth table specifies the absence of a connection and every 1 listed specifies a path that is
obtained by a connection.
Fig: Programming the ROM according to ROM truth table
Types of ROMs
The required paths in a ROM may be programmed in four different ways.
 Mask programming
o Done by the semiconductor company during the last fabrication process of the unit.
o This procedure is costly because the vendor charges the customer a special fee for
custom masking the particular ROM.
 Programmable read-only memory- PROM.
o Economical for small quantity.
o The fuses in the PROM are blown by the application of a high-voltage pulse to the
device through a special pin.
o A blown fuse defines a binary 0 state and an intact fuse gives a binary 1 state.
o The procedure is irreversible and once programmed; the fixed pattern is permanent and
cannot be altered.
 Erasable PROM or EPROM
o This can be restructured to the initial state even though it has been programmed
previously.
o It is erased by placing under a special ultraviolet light for a given length of time.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 4
 Electrically erasable PROM (EEPROM or E2PROM)
o Electrical signals are used to erase the previously programmed connections instead of
ultraviolet light.
o The advantage is that the device can be erased without removing it from its socket.
Combinational PLDs
 The PROM is a combinational programmable logic device (PLD)-an integrated circuit with
programmable gates divided into an AND array and an OR array to provide an AND-OR sum
of- product implementation.
 There are three major types of combinational PLDs, differing in the placement of the
programmable connections in the AND-OR array.
1. PROM- Fixed AND array and a programmable OR array.
2. PAL - Programmable AND array and a fixed OR array.
3. PLA - Programmable AND array and a programmable OR array.
**************************************
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 5
RANDOM ACCESS MEMORY
Discuss briefly about RAM and its types. (or) Explain in detail about random access memory. Apr.
2014, Dec. 2010, Nov 2018, Apr 2019
 A memory unit is a collection of storage cells together with associated circuits needed to transfer
information into and out of a device.
 A memory unit stores binary information in groups of bits called words.
 A memory word is a group of 1 's and 0's and may represent a number, an instruction , one or
more alphanumeric characters or any other binary-coded information.
 Each word in memory is assigned an identification number called an address starting from 0 upto
2k-1. where k is the number of address lines.
 Consider for example, a memory unit with a capacity of 1K words of 16 bits each. Since
1K=1024bytes = 210 and 16 bits constitute two bytes, we can say that the memory can
accommodate 2048 = 2K bytes.
Fig: Contents of a 1024 × 16 memory
Read and write operations:
 The two operations that RAM can perform are the write and read operations.
Steps to read operation as follows:
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 6
 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.
Steps to write operation as follows:
 Apply the binary address of the desired word to the address lines.
 Activate the read input.
 The memory enable or chip select is used to enable the particular memory chip in a multichip
implementation of a large memory.
 When the memory enable is inactive, the memory chip is not selected and no operation is
performed. When the memory enable input is active, the read/write operation to be performed.
Timing Waveforms
 The operation of the memory unit is controlled by an external device such as a central
processing unit (CPU).
 The CPU is usually synchronized by its own clock.
 The access time of memory is the time required to select a word and read it.
 The cycle time of memory is the time required to complete a write operation.
Fig: Memory read cycle timing waveform
 The memory- enable and read/write signals must be in their high level for a read operation.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 7
Fig: Memory write cycle timing waveform
 The memory enable signal switches to the high level and the read/write signal switches to the
low level to indicate a write operation.
Types of RAM
 Integrated circuit RAM units are available in two operating modes: static and dynamic.
S.No Static RAM
Dynamic RAM
1
Static RAM contains less memory cells
Dynamic RAM contains more memory cells
per unit area
as compared to static RAM per unit area.
It has less access time hence faster
Its access time is greater than static RAMs.
2
memories.
3
Static RAM consists of number of flip
Dynamic RAMs store the data as a charge
flops. Each flip flop stores one bit.
on the capacitor. It consists of MOSFET
and the capacitor for each cell.
4.
Refreshing circuitry is not required.
Refreshing circuitry is required to maintain
the charge on the capacitors after every few
milliseconds
5
Cost is more
Cost is less
*****************************************
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 8
TWO MARKS
1. Define a memory cell. [May/June 2007,Nov/Dec 2004.2006]
Memories are made up of registers. Each register consists of storage elements, each of which stores
one bit of data. Such a storage element is called a memory cell.
2. Define a memory location.[May/June 2006]
Memories are made up of registers. Each register in the memory is one storage location is called
memory location. Each memory location is identified by an address.
3. What is a volatile memory? Give example.[Nov/Dec 2007,2013]
The memory which cannot hold data when power is turned off is known as volatile memory. The
static RAM is a volatile memory.
4. What is non-volatile memory?[Nov/Dec 2013]
The memory which can hold data even if power is turned off is known as non volatile memory.
5. Name the types of ROM. [May/June 2011].
There are four types of ROM.
1. Masked ROM(Masked Read only memory)
2. PROM(Programmable ROM)
3. EPROM(Erasable Programmable ROM)
4. EEPROM or E2 PROM (Electrically Erasable PROM)
6. Define address and word.
In a ROM, each bit combination of the input variable is called an address. Each bit combination
that comes out of the output lines is called a word.
7. Explain ROM
A Read Only Memory (ROM) is a device that includes both the decoder and the OR gates within a
single IC package. It consists of ‘n’ input lines and ‘m’ output lines. Each bit combination of the input
variables is called an address .Each bit combination that comes out of the output lines is called a word.
The number of distinct address possible with ‘n’ input variables is 2n.
8. What is mask – programmable ROM?
A type of memory where the stored data are permanently stored into the memory device during
the manufacturing process.
9. Define PROM.
PROM is Programmable Read Only Memory. It consists of a set of fixed AND gates connected to
a decoder and a programmable OR array. It allows user to store data or program. PROMs use the fuses
with material like nichrome and polycrystalline. The user can blow these fuses by passing around 20 to
50mAof current for the period 5 to 20µs.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 9
10. Explain EPROM.
EPROM is Erasable Programmable Read Only Memory. It uses MOS circuitry. They store 1’s and 0’s
as a packet of charge in a buried layer of the IC chip. We can erase the stored data in the EPROMs by exposing the chip to
ultraviolet light via its quartz window for 15 to 20 minutes. It is not possible to erase selective information. The chip can be
reprogrammed.
11. Explain EEPROM. [Nov/Dec 2014]
EEPROM is Electrically Erasable Programmable Read Only Memory It uses MOS circuitry. Data is
stored as charge or no charge on an insulated layer or an insulated floating gate in the device. EEPROM allows selective
erasing at the register level rather than erasing all the information since the information can be changed by using
electrical signals.
12. How is individual location in a EEPROM programmed or erased?[May/June 2006]
Since it is electrically erasable memory, by activating particular row and column it is possible that
individual can be programmed or erased.
13. What is RAM?
RAM is Random Access Memory. Read and write operation can be carried out. It is a volatile memory. It can hold
data as power is ON.
14. Give the advantages of RAM.[Nov/Dec 2013]
Advantages of RAM are:
1. RAM is a memory where we can read as well as write the data.
2. Higher speed.
3. The particular memory location can be accessed using the address of at memory location.
4. Low power dissipation
5. Compatibility
6. Economy
15. What is read and write operation?
The write operation stores data in to a specified address location in to the memory and read operation takes data out of a
specified address from the memory.
16. List the two categories of RAM.
1. Static RAM
2. Dynamic RAM
17. What is static memory?
Nov/Dec 2006,April/May 2007]
Memories that consist of circuits of retaining their state as long as power is applied are known as static memories.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 10
18. Differentiate Static RAM and dynamic RAM. [Nov/Dec 2009] [Nov -2019]
S.No Static RAM
Dynamic RAM
1
Static RAM contains less memory cells
Dynamic RAM contains more memory cells
per unit area
as compared to static RAM per unit area.
It has less access time hence faster
Its access time is greater than static RAMs.
2
memories.
3
Static RAM consists of number of flip
Dynamic RAMs store the data as a charge
flops. Each flip flop stores one bit.
on the capacitor. It consists of MOSFET
and the capacitor for each cell.
4.
Refreshing circuitry is not required.
Refreshing circuitry is required to maintain
the charge on the capacitors after every few
milliseconds
5
Cost is more
Cost is less
19. What are the advantages of static RAM and dynamic RAM? [NOV 2020]
Advantages of SRAM:
 SRAM is faster than DRAM which means it is faster in operation.
 SRAM can be used to create a speed-sensitive cache.
 SRAM only has medium power consumption.
 SRAM has a shorter cycle time since it does not require pausing between accesses.
Advantages of DRAM:
 DRAM is more affordable than SRAM.
 DRAM has a higher storage capacity which enables you to create a larger RAM space system.
 DRAM offers a simple structure.
 DRAM utilizes logic and circuitry which makes the memory module simpler to set up and use.
20. Define dynamic RAM.
Dynamic RAMs use capacitors as storage elements and cannot retain data very long without
capacitors being recharged by a process called refreshing.
21. List the two types of SRAM.
1. Asynchronous SRAMs
2. Synchronous burst RAMs
22. List the basic types of DRAMS.
1. Fast page mode DRAM
2. Extended Data Out DRAM (EDO DRAM)
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 11
3. Burst EDO DRAM
4. Synchronous DRAM.
23. What is the technique adopted by DRAMs?
DRAMs use a technique called address multiplexing to reduce the number of address lines.
*********************************************
MEMORY DECODING
Explain in detail about memory decoding.
Apr. 2014,Apr 2017
 Once the address is given as input to memory, it has to select the corresponding memory word for
performing either a read/write operation. This can be done by decoding circuit.
Internal Construction
 Ram specification = m × n binary storage cells. Where, m words and n bits per word
 The binary storage cell is the basic building block of a memory unit.
Fig: Block diagram of a memory cell
Fig: Logic diagram of a memory cell
 The storage part of the cell is modeled by an SR latch. .Actually, the cell is an electronic
circuit with four to six transistors.
 The select input enables the cell for reading or writing.
 A 1 in the read/write input provides the read operation.
 A 0 in the read/write input provides the write operation.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 12
Fig: Diagram of a 4×4 RAM
 The small blocks labeled BC (binary cell) with its three inputs and one output.
 A memory with four words needs two address lines. The two address inputs go through a 2×4
decoder to select one of the four words.
 The decoder is enabled with the memory-enable input.
 When the memory enable is 0, all outputs of the decoder are 0 and none of the memory words are
selected.
 With the memory select at 1, one of the four words is selected depending on the address input.
 Once a word has been selected, the read/write input determines the operation to be carried out.
 During the read operation
o four bits of the selected word go through OR gates.
 During the write operation
o data available in the input lines are transferred into the four binary cells of the selected
word.
Coincident Decoding
 A decoder with k inputs and 2k outputs requires 2k AND gates with k inputs per gate.
 The total number of gates and the number of inputs per gate can be reduced by employing two
decoders in a two - dimensional selection scheme.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 13
Fig: Two dimensional decoding structure for a 1K-word memory
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 14
 Two k/2 input decoders are used instead of one k-input decoder. One for row selection and the
other is column selection.
 For example, instead of using a single 10 x 1,024 decoder, we use two 5 x 32 decoders. With the
single decoder, we would need 1,024 AND gates with 10 inputs in each. The five most significant
bits of the address go to input X and the five least significant bits go to input Y.
 Each word within the memory array is selected by the coincidence of one X line and one Y
line.
Address Multiplexing
 Because of large capacity, the address decoding of DRAM is arranged in a two dimensional array
and larger memories often have multiple arrays.
 To reduce the number of pins in the IC package, hence address multiplexing is done.
 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, the size of the package is
decreased significantly.
Fig: Address multiplexing for a 64K DRAM
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 15
 The memory consists of a two-dimensional array of cells arranged into 256 rows by 256
columns, for a total of 28 x 28 = 216 = 64K words.
 There is a single data input line; a single data output line, and a read/write control as well as
an eight-bit address input and two address strobes, the later included for- enabling the row and
column address into their respective registers.
 The row address strobe (RAS) enables the eight-bit row register.
 The column address strobe (CAS) enables the eight-bit column register.
 The bar on top of the name of the strobe symbol indicates that the registers are enabled on the
zero level of the signal.
******************************************
256k x 8 RAM using 64k x 8 RAM chips
Explain the logical construction of a 256k x 8 RAM using 64k x 8 RAM chips. (Apr 2019) [Nov 2019]
•
No. of words is the same (8-bits)
•
No. of address lines are not the same (64K  256K)
•
64K  16-bit address (26 x 210)
•
256  18-bit address (28 x 210)
An additional 2-bits is needed for the address bit.

2 additional address bits are applied to a 2 x 4 decoder and represent the MSB of the address
bit.
How many 64K x 8 RAM chip to add?

Additional 2-bits  22 = 4 of 64 x 8 RAM

Use Memory Enable to activate the decoder.
 When bit 17 and 16 = 00, The first 64 x 8 RAM is activated. Address : 0 – 65,535
 When bit 17 and 16 = 01, The 2nd 64 x 8 RAM is activated. Address : 65,536 – 131,071
 When bit 17 and 16 = 10, The 3rd 64 x 8 RAM is activated. Address : 131,071 – 196,607
 When bit 17 and 16 = 11, The 4th 64 x 8 RAM is activated. Address : 196,608 – 262,143
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 16
How many 32k x 8 RAM chips are needed to provide memory capacity of 512k bytes. [Nov -2019]
•
No. of words is the same (8-bits)
•
No. of address lines are not the same (32K  512K)
•
32K  15-bit address (25 x 210)
•
512K  19-bit address (29 x 210)
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 17
An additional 4-bits is needed for the address bit.

4 additional address bits are applied to a 4 x 16 decoder and represent the MSB of the address
bit.
How many 32K x 8 RAM chip to add?

Additional 2-bits  24 = 16 of 32k x 8 RAM are needed to provide memory capacity of 512k
bytes.
*****************************************
TWO MARKS
1. Define address of a memory.
Address of memory:
The location of a unit of data in a memory is called address.
2. Define capacity of a memory.
Capacity of memory:
The capacity of memory is the total number of data units that can be stored.
3. Write about internal construction of Memory cell and memory decoding. (Apr 2017)
The internal construction of a RAM of m words and n bits per word consists of m × n binary
storage cells and associated decoding circuits for selecting individual words. The binary storage cell
is the basic building block of a memory unit.
Fig: Block diagram of a memory cell
Once the address is given as input to memory, it has to select the corresponding memory word for
performing either a read/write operation. This can be done by decoding circuit.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 18
ERROR DETECTION AND CORRECTION
Explain in detail about error detection and correction.
Dec'13,Nov 2017,Apr 2018, Apr 2019
 The most common error detection scheme is the parity bit.
 A parity bit is generated and stored along with the data word in memory.
 The parity of the word is checked after reading it from memory.
 The data word is accepted if the parity of the bits read out is correct. If the parity checked results
in an inversion, an error is detected, but it cannot be corrected.
 An error-correcting code generates multiple parity check bits that are stored with the data word in
memory. Each check bit is parity over a group of bits in the data word.
 When the word is read back from memory, the associated parity bits are also read from memory
and compared with a new set of check bits generated from the data that have been read. If the
check bits are correct, no error has occurred.
 If the check bits do not match the stored parity, they generate a unique pattern called a syndrome,
which can be used to identify e r r o r i n bit.
 A single error occurs when a bit changes in value from 1 to 0 or from 0 to 1 during the write or
read operation. If the specific bit in error is identified, then the error can be corrected by
complementing the erroneous bit.
Hamming Code
 One of the most common error-correcting codes used in RAMs was devised by R. W. Hamming.
In the Hamming code, k. parity bits are added to an n-bit data word, forming a new word of n +
k bits.
 The bit positions are numbered in sequence from 1 to n + k, these positions numbered as a power
of 2 are reserved for the parity bits. The remaining bits are the data bits.
 Consider, for example the 8-bit data word 11000100. We include 4 parity bits with the 8-bit
word and arrange the 12 bits as follows:
 The 4 parity bits P1, P2, P4 and P8 are in positions 1, 2, 4 and 8 respectively. The 8 bits of
the data word are in the remaining positions. Each parity bit is calculated as follows:
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 19
 The 8-bit data word is stored in memory together with the 4 parity bits as a 12-bit composite
word. Substituting the 4 P bits in their proper positions, we obtain the 12-bit composite
word stored in memory.
 When the 12 bits are read from memory, they are checked again for errors. The parity is
checked over the same combination of bits, including the parity bit.
 The 4 check bits are evaluated as follows:
 A 0 check bit designates even parity over the checked bits and a 1 designates odd parity.
 Since the bits were stored with even parity, the result, C = C 8C4C2C1 = 0000, indicates that
no error has occurred.
 However, if C≠0, then the 4 -bit binary number formed by the check bits gives the position of
the erroneous bit. For example, consider the following three cases:
Single-Error Correction, Double-Error Detection
 The Hamming code can detect and correct only a single error. By adding another parity bit to the
coded word, the Hamming code can be used to correct a single error and detect double errors.
*****************************************
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 20
TWO MARKS
1. What are error detecting codes? (Apr 2019)
Error detection codes are used to detect the errors present in the received data (bit stream). These
codes contain some bits, which are included to the original bit stream. These codes detect the error, if
it is occurred during transmission of the original data.
Eg: Parity Code, Hamming Code
2. What are error correcting codes?
Error correction codes are used to correct the errors present in the received data (bit stream) so that,
we will get the original bit stream.
Eg: Hamming Code
3. How many check bits are required for single bit error detection and correction? (Apr 2018)
12 check bits are required for single bit error detection and correction.
PROGRAMMABLE LOGIC DEVICES
Explain in detail about programmable logic devices. Apr. 2013, Dec. 2013, Nov 2017, Apr 2019, [Nov2019]
PROGRAMMABLE LOGIC ARRAY
 Programmable logic arrays (PLAs) is a type of fixed architecture logic devices with
programmable AND gates followed by programmable OR array.
 PLA is used to implement a complex combinational circuit.
 The AND and OR gates inside the PLA are initially fabricated with fuses among them.
 The specific Boolean functions are implemented in sum of products (SOP) form by blowing
appropriate fuses and leaving the desired connections.
 For an example, the Boolean expressions are,
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 21
Fig: PLA with three inputs, four product terms and two outputs
 The fuse map of a PLA can be specified in a tabular form. The first section lists the product
terms numerically.
 The second section specifies the required paths between inputs and AND gates.
 The third section specifies the paths between the AND and OR gates. For each output variable,
we may have a T'(for true) or C (for complement) for programming the XOR gate.
 For each product term, the inputs are marked with 1, 0, or - (dash). If a variable in the product
term appears in the form in which it is true, the corresponding input variable is marked with a 1.
 If it appears complemented, the corresponding input variable is marked with a 0. If the variable is
absent from the product term, it is marked with a dash.
*************************
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 22
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 23
Problems using PROM:
*******************************
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 24
PROGRAMMABLE ARRAY LOGIC (Nov 2018)
 The PAL is a programmable logic device with a fixed OR array and a programmable AND
array. Because only the AND gates are programmable, the PAL is easier to program than but is
not as flexible as the PLA.
 As an example of using a PAL in the design of a combinational circuit,
Problem:
Implement the following Boolean functions, using PAL.
Sol:
Simplify the functions using K Map:
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 25
PAL Programming Table:
BCD to Gray Code using PLA and PAL.
(Apr 2018)
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 26
PAL Implementation:
*******************
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 27
TWO MARKS
1. Define PLD.
Programmable Logic Devices consist of a large array of AND gates and OR gates that can be
programmed to achieve specific logic functions.
2. Give the classification of PLDs.[April/May 2013]
PLDs are classified as:
1. Programmable Read Only Memory(PROM)
2. Programmable Logic Array(PLA)
3. Programmable Array Logic(PAL)
4. Generic Array Logic (GAL)
3. What is programmable logic array(PLA)?[April/May 2008, Nov 2017]
In PLA both AND and OR gates have fuses at the inputs, therefore in PLA both AND and OR gates
are programmable. The outputs from OR gates go through fuses as inputs to output inverters so that final
output can be programmed as either AND-OR or AND-OR-INVERT.
4. Why was PAL developed?
PAL is a PLD that was developed to overcome certain disadvantages of PLA such as longer delays
due to additional fusible links that result from using two programmable arrays and more circuit
complexity.
5. Why the input variables to a PAL are buffered?
The input variables to a PAL are buffered to prevent loading by the large number of AND gate
inputs to which available or its complement can be connected.
6. Define PAL. [NOV 2020]
PAL is Programmable Array Logic. PAL consists of a programmable AND array and a fixed OR array
with output logic
7.
Compare PLA and PAL.[April/May 2013 , Apr 2017, Nov 2018]
S.No. PLA
PAL
1
Both AND and OR arrays are
OR array is fixed and AND array is
programmable
programmable
2
Costliest and complex than PAL
Cheaper and simpler
3
AND array can be programmed to get
AND array can be programmed to get
desired minterms
desired minterms
Any Boolean functions in SOP form can be
Any Boolean functions in SOP form can
implemented using PLA
be implemented using PLA
4
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 28
8. Differentiate ROM and PLD. (Nov 2017)
S.No ROM (Read only Memory)
PLD (Programmable Logic Devices)
1.
It is a device that includes both AND and
It is a device that includes both the decoder
and the OR gates with in a singlel IC package. OR gates within a single IC package.
2.
ROM does not full decoding of the variables
PLD does not provide full decoding of the
and does generate all the minterms.
variable and does not generate all the
minterms.
9. Compare the features of PROM,PAL and PLA.[April/May 2009]
S.No.
PROM
PLA
PAL
1
AND array is fixed and
Both AND and OR arrays
OR array is fixed and AND
2
OR array is programmable are programmable
array is programmable
Cheaper and simple to use
Cheaper and simpler
Costliest and complex than
PAL
3
4
All minterms are decoded
AND array can be
AND array can be
programmed to get desired
programmed to get desired
minterms
minterms
Only Boolean functions in
Any Boolean functions in
Any Boolean functions in
standard SOP form can be
SOP form can be
SOP form can be
implemented using PROM implemented using PLA
implemented using PLA
10. Give the comparison between PROM and PLA.
S.No
PROM
PLA
1
AND array is fixed and OR array is
Both AND and OR arrays are
programmable.
Programmable.
Cheaper and simple to use.
Costliest and complex than
2
PROMS.
11. How many address lines and data lines are there in 4K x 8 ROM? (Apr 2018)
Address Lines (n) : 2n=N, 2 12 = 4096 (or) 4K; n=12 address lines
Data Lines : 8 bits
**********************************************
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 29
SEQUENTIAL PROGRAMMABLE DEVICES
Explain in detail about sequential programmable devices.(Apr 2017, Apr 2018)
Digital systems are designed with flip-flops and gates. Since the combinational PLD consists of only
gates, it is necessary to include external flip-flops when they are used in the design. Sequential
programmable devices include both gates and flip-flops.
1. Sequential (or simple) programmable logic device (SPLD)
2. Complex programmable logic device (CPLD)
3. Field-programmable gate array (FPGA)
Sequential (or simple) programmable logic device (SPLD):
 The sequential PLD is sometimes referred to as a simple PLD to differentiate it from the
complex PLD.
 The SPLD includes flip‐ flops, in addition to the AND–OR array, within the integrated circuit
chip. The result is a sequential circuit as shown in Fig.
 A PAL or PLA is modified by including a number of flip‐ flops connected to form a register.
 The circuit outputs can be taken from the OR gates or from the outputs of the flip-flops.
Complex programmable logic device (CPLD):
 CPLD is a collection of PLDs to be connected to each other through a programmable switch
matrix.
 The input–output (I/O) blocks provide the connections to the IC pins.
 Each I/O pin is driven by a three‐ state buffer and can be programmed to act as input or output.
 The switch matrix receives inputs from the I/O block and directs them to the individual
macrocells.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 30
 Similarly, selected outputs from macrocells are sent to the outputs as needed.
 Each PLD typically contains from 8 to 16 macrocells.
Field-programmable gate array (FPGA):
 A field‐ programmable gate array (FPGA) is a VLSI circuit that can be programmed at the
user’s location.
 A typical FPGA consists of an array
of millions of logic blocks, surrounded by
programmable input and output blocks and connected together via programmable
interconnections.
 There is a wide variety of internal configurations within this group of devices.
 The performance of each type of device depends on the circuit contained in its logic blocks
and the efficiency of its programmed interconnections.
Fig: Large programmable-logic-device scaling approaches: (a) CPLD; (b) FPGA.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 31
 A typical
FPGA logic block
consists
of lookup
tables,
multiplexers, gates, and
flip‐ flops.
 A lookup table is a truth table stored in an SRAM and provides the combinational circuit
functions for the logic block.
 The combinational logic section, along with a number of programmable multiplexers, is
used to configure the input equations for the flipflop and the output of the logic
block.
 The advantage of using RAM instead of ROM to store the truth table is that the table can be
programmed by writing into memory.
 The disadvantage is that the memory is volatile and presents the need for the lookup
table’s content to be reloaded in the event that power is disrupted. The program can be
downloaded either from a host computer or from an onboard PROM.
 The program remains in SRAM until the FPGA is reprogrammed or the power is turned
off. The device must be reprogrammed every time power is turned on.
*****************************************
APPLICATION SPECIFIC –ICs
Explain in detail about application specific –IC (ASIC).
 The acronym ASIC stands for Application Specific Integrated Circuit.
 ICs are made on a thin circular silicon wafer, with each wafer holding hundreds of die.
 The transistors and wiring are made from many layers built on top of one other.
 The types of ASIC are
1. Full custom ASIC
2. Standard cell based ASIC
3. Gate array based ASIC
Full custom ASIC:
 In full custom ASIC, an engineer designs some or all of the logic cells, circuits or layout
specifically for one ASIC.
 This is used only if existing cell libraries are not fast enough or the logic cells are not small
enough or consume too much power.
Standard cell based ASIC:
 A cell based ASIC uses predesigned logic cells (e.g., AND gates, Multiplexers, flip flops etc.,)
known as standard cells.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 32
 The standard-cell areas may be used in combination with larger predesigned cells like
microcontrollers or microprocessors known as mega cells.
 A cell based ASIC having four fixed blocks. The flexible block contains row of standard cells.
Gate array based ASIC:
 In a gate array based ASIC the transistors are predefined on the silicon wafer.
 The predefined pattern of transistors on a gate array is the base array, and the smallest element
that is replicated to make the base array is the base cell.
 Only the top few layers or metal, which define the interconnect between transistors, are defined
by the designer using custom marks.
*****************************************
TWO MARKS
1. What is combinational PLD?[Nov/Dec 2007]
The PROM is a combinational programmable logic device (combinational PLD). The
combinational PLD is an integrated circuit with programmable gates divided in to an AND array and
an OR array to provide an AND-OR sum of product implementation.
2. What are the types of combinational PLDs?
1. They are used to implement combinational circuits
2. Registers PALs can be used to implement sequential circuits.
3. They can be programmed to use as code converters.
4. They are used as a combinational logic in addressing decoding section of a
microprocessor based systems.
3. What is FPGA? [Nov/Dec 2004,April/May 2006,Nov/Dec 2014,Nov 2018]
FPGA stands for Field Programmable Gate Array, which is the next generation in the
programmable PLDs. The word ‘field’ refers to the ability of the gate arrays to be programmed for
a specific function by the end user. The word ‘array’ indicates a series of columns and rows of
gates that can be programmed by the end user.
4. What is a FIFO memory?
The term FIFO refers to the basic operation of this type of memory in which the first data bit
written into the memory is to first to be read out.
5.
How many words can a 16x8 memory can store?
A 16x8 memory can store 16,384 words of eight bits each to be stored
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 33
6. Give the feature of UV EPROM
UV EPROM is electrically programmable by the user, but the store data must be erased by
exposure to ultra violet light over a period of several minutes.
7. What are the terms that determine the size of a PAL?
The size of a PLA is specified by the
a. Number of inputs
b. Number of products terms
c. Number of outputs.
8. Define a bus.
A bus is a set of conductive paths that serve to interconnect two or more functional
components of a system or several diverse systems.
9. Define Cache memory.
Cache memory is a relatively small, high-speed memory that can store the most recently used
instructions or data from larger but slower main memory.
10. What is flash memory? [Nov/Dec 2014]
Flash memories are high-density nonvolatile read/write memories . Flash memory combines the low
cost and high density features of an UV EPROM and the in-circuit electrical erasability feature of
EEPROM without compromising the high-speed access of both. Structurally, the memory cell of a
flash memory is like that of an EPROM.
11. List the configurable elements in the FPGA architecture.
The FPGA architecture consists of three types of configurable elements.
A perimeter of Input / Output Blocks(IOBs)
A core array of configurable Logic Blocks(CLBs)
Resources for interconnection.
12. List the advantages of PLD. (or) List the advantages of using sequential programmable devices.
(Apr 2019)
1. Construction is simple
2. It consists of any number of input variables.
3. Low cost
4. Implementation is easy
13. Why the input variables to a PAL are buffered?
The input variables to a PAL are buffered to prevent loading by the large number of AND gate inputs
to which available or its complement can be connected.
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 34
*****************************************
Problems:
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 35
********************
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 36
Problem:
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 37
**************************
[NOV / DEC 2020]
A 12-bit Hamming code word containing 8 bits of data and 4 parity bits is read from
memory. What was the original 8-bit data word that was written into memory if the 12-bit word
read out is as follows:
a) 000011101010
b) 101110000110
c) 101111110100
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 38
SOLUTION:
a) C1(1,3,5,7,9,11) = 0,0,1,1,1,1 = 0
C2 (2,3,6,7,10,11) = 0,0,1,1,0,1 = 1
C4 (4,5,6,7,12) = 0,1,1,1,0 = 1
C8 (8,9,10,11,12) = 0,1,0,1,0 = 0
C = 0110
(Data-bits are 3 5 6 7 9 10 11 12)
Error in bit 6 => Corrected 8-bit data = 0 1 0 1 1 0 1 0
b) C1(1,3,5,7,9,11) = 1,1,1,0,0,1 = 0
C2(2,3,6,7,10,11) = 0,1,0,0,1,1 = 1
C4(4,5,6,7,12) = 1,1,0,0,0 = 0
C8(8,9,10,11,12) = 0,0,1,1,0 = 0
C = 0010 ( Parity bit)
(Data-bits are 3 5 6 7 9 10 11 12)
Error in bit 2 => Corrected 8-bit data = 1 1 0 0 0 1 1 0
c) C = 0000
No Error
8-bit Data = 1 1 1 1 0 1 0 0
*******************************************
[NOV / DEC 2020]
List the PLA and PAL programming table for the BCD to Excess-3 code convert whose Boolean
function are simplified as
w = A + BC + BD,
x = B′C + B′D + BC′D,
y = CD + C′D,
z = D’.
SOLUTION:
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 39
PLA:
PAL:
Mrs.T.Priyadarsini, Asst.Prof., /ECE VRS College of Engg & Tech, Arasur
Page 40
Download