Sie sind auf Seite 1von 32

Programmable Logic Arrays

Need of Programmable Logic Array


• All bit patterns available in ROM are not used, which may be waste of available
inputs.
• PLA is similar to ROM but it does not provide full decoding of variables and does
not generate all minterms (as in ROM).
• In PLA decoder is replaced by a group of AND gates, each of which can be used to
generate a Product term of the input variable..
• Size of PLA is determined by number of I/P’s (n), number of product term (k) and
the number of O/P’s (m) (Number of sum term is equal to number of outputs).
• Number of programmed Links:
2n*k+k*m+m (In ROM it is 2n X m )
e.g) Circuit has three Input AB‘,AC,BC & two output (F1,F2)
n (Input)=3, k (Product term)=3, m (Output)=2
Total Link= 2n*k+k*m+m = 2*3*3+3*2+2=18+6+2=26 Links
PLA Program Table
• PLA is used in situations, Where large number of don’t care
conditions exist in the circuit.
• Programming a PLA means making or breaking connections
among the gates.
• PLA implement the circuit in SOP form not in Sum of
minterms form (as in ROM)
• Consider TT of CC as example.
• Obtain the simplified function in SOP form using K-map.
• Then prepare the PLA program Table (Means program the
PLA)?
3
PLA Program table Example
Now find the Distinct/Minimum product term in this CC and for the
given example these are :
AB‘,AC,BC
Circuit has three distinct product term AB‘,AC,BC & two output (F1,F2),
n (Input)=3, k (Product term)=3, m (Output)=2
Total Link= 2n*k+k*m+m = 2*3*3+3*2+2=18+6+2=26 Links
Second Col form the required path between input & AND gate.
(1-means variable is in its normal form, 0- means variable is in its
complement form, -(dash) means variable is absent in product term)
Third Col specify the path between AND gate and OR gate.
(Write 1- for all those product term those are present in the function,
-(dash) means no connection)
Under each output variable write ‘T’ (True) if output inverter is to be
bypassed and write ‘C’ (Complement) if the function is to be
complemented with the output inverter.
Programmable Logic Array

1. It is Pre – fabricated block having array of NOT/AND/OR


gates.
2. It is used for designing "Personalized" circuits.
3. Programming a PLA means making or breaking connections
among the gates.
4. General purpose logic building blocks.

7
Programming by burning the fuses.

(a) Before programming. (b) After programming.


OR - PLA Notation
AND - PLA Notation
PLA as Black Box

Logic gates
Inputs and Outputs
(logic variables) programmable (logic functions)
Switches
Fuse

Number of variables at input and output doesn’t fall into any relationship
Block Diagram of PLA

Inputs

Dense array of Dense array of


AND gates Product OR gates
AND Plane terms OR Plane

Outputs

12
Programmable Logic Array (PLA) x1 x2 xn
We may need X1, or X1’ and X2, or X2’

Hence we need array of NOT gate. Input


Buffers and
Invertors

x1 x1 xn xn

P1

AND plane OR plane


Pk

f1 fm
Gate Level Diagram of PLA
PLA with 3×2

PLA Specification say 3x2

Significance of 3x2 PLA:

3 : Number of Input variables


2 : Number of output variables

Example :
Full Adder , having three bits as input out of two bits i.e. “SUM” and “CARRY”
14
Gate Level Diagram of PLA
PLA with 3×2 with 4 product terms.

Input :Three x1, x2, x3


Product terms :Four P1, P2,P3,P4
Output :Two f1, f2
Gate Level Diagram of PLA
PLA with 3×2 with 4 product terms.

Give the terms of P1,P2,P3,P4 Find out f1 and f2.


Question 1: Implement the following using suitable PLA.

F0 = A + B' C’, F1 = A C' + A B, F2 = B' C' + A B, F3 = B' C + A

F0 = A + B' C'
F1 = A C' + A B
F2 = B' C' + A B
F3 = B' C + A
Input Side:
1 = asserted in term
0 = negated in term
- = does not participate
PLA Table

Output Side:
Product Inputs Outputs
1 = term connected to output
term A B C F0 F1 F2 F3 0 = no connection to output
AB 1 1 - 0 1 1 0
BC - 0 1 0 0 0 1
AC 1 - 0 0 1 0 0
BC - 0 0 1 0 1 0
A 1 - - 1 0 0 1
17
Question 1: Implement the following using suitable PLA.

F0 = A + B' C‘, F1 = A C' + A B, F2 = B' C' + A B, F3 = B' C + A

A B C

F0 = A + B' C' AB
F1 = A C' + A B
F2 = B' C' + A B
F3 = B' C + A B’C

AC’
PLA table
B’C’
Product Inputs Outputs
term A B C F0 F1 F2 F3 A
AB 1 1 - 0 1 1 0
BC - 0 1 0 0 0 1
AC 1 - 0 0 1 0 0
BC - 0 0 1 0 1 0
A 1 - - 1 0 0 1 F0 F1 F2 F3
18
Question 2: Implement the following using suitable PLA.
f1 = x1x2 + x1x3‘ + x1'x2'x3 f2 = x1x2 + x1'x2'x3 + x1x3
x1 x2 x3

Programmable
connections

OR plane
P1

P2

P3

P4

AND plane

f1 f2
Question 2: Implement the following using suitable PLA.
f1 = x1x2 + x1x3‘ + x1'x2'x3 f2 = x1x2 + x1'x2'x3 + x1x3
x1 x2 x3 x1 x2 x3

Programmable
connections
OR plane
OR plane
P1 P1

P2 P2

P3 P3

P4
P4

AND plane AND plane


f1 f2
f1 f2

x marks the connections left in place after programming


Need of Read – Only Memory (ROM)
• Combinational circuit with small number of outputs can be implemented
with MUX
• Combinational circuit with many outputs can be implemented with
DECODER because it uses less IC’s.
• DECODER’s are mostly used for decoding binary information and MUX’s
are used to form a selected path between multiple sources and Single
destination.
• For large Combinational circuit with multiple inputs and multiple outputs,
Designer may use ROM and PLA.
e.g) Like 32/128 …….. links are available. How to handle them with SSI and MSI?
In this situation designer may use LSI, Where flexibility is given to the designer
regarding opening/broken and closing of links based upon requirement of circuit.
Read – Only Memory (ROM)
• Memory device in which permanent binary information is stored.
• Process of entering information in ROM is known as Programming.
• ROM can be used for designing of CC.
Advantages:
• Faster than MSI/LSI circuits
• Cost is reduced.
• Ease of design since no simplification of logic function is required.
• Design can be modified rapidly.
Disadvantages:
• Increased power requirement
• Increase in size with increase in no of input variables making it impractical.
• Non utilization of complete circuit.
Read – Only Memory (ROM)
• ROM include both decoder and OR gate with in single
IC package.
• ROM is used to implement complex CC in one IC
package and finally eliminate all interconnecting wires.
• ROM came with special internal links that can be fused
or broken.
• Programmable values determined by user.
• Nonvolatile contents retained (No issue of power).
• Uniform (Random) Access delay is uniform for all
addresses.
Read – Only Memory (ROM)
• A combinational circuit with n inputs and m outputs:

Address n 2n x m m Data
inputs ROM outputs
A(n-1, ... , 0) D(m-1, ... , 0)

• Each bit combination of the input variable is called address.


• Each bit combination that come out from the output is called Word.
• Number of bits per word is equal to the number of output lines m.
• Address denotes one minterm of n variable.
• Number of distinct address = 2n with n variables.
• ROM is characterized by number of words 2n and number of bits per word m.
e.g.) Consider 32X8 ROM. Unit consist of 32 words of 8 bit each.
• There are 25 =32 (05) Five Input lines that form binary no from 0 to 31 for the address.
e.g.) If Input ‘00000’ then word no ‘0’ is selected and it appears on the output line.
Read – Only Memory (ROM)
• Total no of bits contained in ROM is calculated (2n X m):
29 X 4 =512*4=2048 bits
(That means 2048 bits ROM may be organized as 512 words of 4
bit each. This means 04 O/P lines and 9 I/P lines)
In ROM AND gate connected as Decoder and number of OR gates
equal to the no of O/P in the unit.
ROM is used to implement complex CC with only one IC package.
Procedure to Implement CC from ROM
1. Identify no of I/P’s and O/P’s. Determine the size of ROM.
2. Obtain TT (Programming (Means opening and closing of Link))
then see whether manipulation/simplification required?
(Means in some cases no need to generate specific output
because it is equal to I/P etc.)
3. 0’s in TT are those links that must be removed to provide
required combinations.
Read-Only Memory (ROM)

• Two views of ROM:


• ROM stores 2n words of m bits each, or
• ROM stores an n-input, m-output truth table

n=2 m=4
Example: A1 A0 D3 D2 D1 D0
0 0 0 1 0 1 Stores 4 4-bit words, or
0 1 1 1 1 1 stores 4 functions of 2
1 0 0 0 0 1 input variables
1 1 1 0 0 0
Procedure to Implement CC from ROM
• Give the logic implementation of Boolean function: F1(A1,A0 )=(1,2,3) & F2
(A1,A0 =(0,2) using ROM with (AOI) and without inverter.
00
I/P n = 2 O/P m = 2= No of OR Gates
Example: A1 A0 F1 F2 A1 01
0 0 0 1 2 to 4
0 1 1 0 Decoder 10
A0
1 0 1 1
1 1 1 0 11

22 X 2 = ROM size : 4*2=8 bits


Means unit consist of 04 words
of 02 bits each
Internal Structure of 44 Diode
ROM +5 V

R3 R2 R1 R0

/w0 0101 1 of n Word Lines


A1
/w1 1111
2 to 4
Decoder /w2
A0 0001
/w3 1000
Bit Lines
D0
Diode 1 D1
D2
No Diode 0
D3
Using ROMs for Combinational Logic
Example: A 3-input, 4-output combinational logic function:

Inputs Outputs
A2 A1 A0 D3 D2 D1 D0
8  4ROM
0 0 0 1 1 1 0
0 0 1 1 1 0 1
0 1 0 1 0 1 1 I0 A0 D0 Y0
0 1 1 0 1 1 1 I1 A1 D1 Y1
1 0 0 0 0 0 1 POL A2 D2 Y2
1 0 1 0 0 1 0 D3 Y3
1 1 0 0 1 0 0
1 1 1 1 0 0 0

Function: 2-to-4 Decoder with Polarity Control


A2 = Polarity (0 = active Low, 1= active High)
A1, A0 = I1, I0 (2-bit input )
D3...D0 = Y3...Y0 (4-bit decoded output)
Types Of ROMs
Mask ROM
Connections made by the semiconductor vendor
Expensive setup cost, Several weeks for delivery. High volume only
Bipolar or MOS technology
PROM
Programmable ROM
Vaporize (blow) fusible links with PROM programmer using high voltage/current
pulses
Bipolar technology
One-time programmable
EPROM
Erasable Programmable ROM
Charge trapped on extra “floating gate” of MOS transistors
Exposure to UV light removes charge. Limited number of erasures (10-100)
EEPROM (E2ROM)
Electrically Erasable ROM
Not RAM (relatively slow charge/discharge)
limited number of charge/discharge cycles (10,000)
Flash Memory
Electronically erasable in blocks
100,000 erase cycles
Simpler and denser than EEPROM
Memory Devices
• Read Only Memory (ROM)
• Structure of diode ROM
• Types of ROMs.
• ROM with 2-Dimensional Decoding.
• Using ROMs for Combinational Logic

• Read/Write Memory
(Random Access Memory, RAM):
• Types of RAM:
• Static RAM (SRAM)
• Dynamic RAM (DRAM)
• SRAM Timing
• DRAM Timing

Das könnte Ihnen auch gefallen