Upload
meghashyam-sarma
View
221
Download
0
Embed Size (px)
Citation preview
8/2/2019 p Logic Devices
1/29
Why programmable logic?
Programmable logic technologies
Read-Only Memory (ROM)
Programmable Logic Array (PLA)
Programmable Array Logic (PAL)
Examples of using programmable logic
8/2/2019 p Logic Devices
2/29
Facts:
It is most economical to produce an IC in large volumes
Many designs required only small volumes of ICs
Need an IC that can be: Produced in large volumes
Handle many designs required in small volumes
A programmable logic part can be:
Made in large volumes Programmed to implement large numbers of different
low-volume designs
8/2/2019 p Logic Devices
3/29
Many programmable logic devices are field- programmable, i. e.,
can be programmed outside of the manufacturing environment
Most programmable logic devices are erasable and
reprogrammable.
Allows updating a device or correction of errors
Allows reuse the device for a different design - the ultimate in re-usability!
Ideal for course laboratories
Programmable logic devices can be used to prototype design that
will be implemented for sale in regular ICs.
Complete Intel Pentium designs were actually prototype with specialized
systems based on large numbers of VLSI programmable devices!
8/2/2019 p Logic Devices
4/29
Read Only Memory(ROM) - a fixed array of ANDgates and a programmable array of OR gates
Programmable Array Logic (PAL) - aprogrammable array of AND gates feeding a fixedarray of OR gates.
Programmable Logic Array(PLA) - aprogrammable array of AND gates feeding aprogrammable array of OR gates.
Complex Programmable Logic Device (CPLD)/Field- Programmable Gate Array(FPGA) -complex enough to be called architectures
8/2/2019 p Logic Devices
5/29
ROM, PAL and PLA Configurations
(a) Programmable read-only memory (PROM)
InputsFixed
AND array(decoder)
ProgrammableOR array
OutputsProgrammableConnections
(b) Programmable array logic (PAL) device
Inputs ProgrammableAND array
FixedOR array
OutputsProgrammable
Connections
(c) Programmable logic array (PLA) device
Inputs ProgrammableOR array
OutputsProgrammable
Connections
Programmable
ConnectionsProgrammable
AND array
8/2/2019 p Logic Devices
6/29
Chapter 3 - Part 2 6
Example: A 8 X 4 ROM (N = 3 input lines, M= 4 output lines) The fixed "AND" array is a
decoder with 3 inputs and 8
outputs implementing minterms.
The programmable "ORarray uses a single line to
represent all inputs to an
OR gate. An X in the
array corresponds to attaching the
minterm to the OR
Read Example: For input (A2, A1, A0)
= 001, output is (F3,F2,F1,F0 ) = 0011.
Read Only Memory Example
D7D6
D5D4D3D2D1D0
A2
A1
A0
A
B
C
F0F1F2F3
X XX
X
X
X
X
X
X
X
8/2/2019 p Logic Devices
7/29
Chapter 3 - Part 2 7
What are functions F3, F
2, F
1and F
0in terms of (A
2, A
1, A
0)?
F3 = D7 + D5 + D2 = A2A0 + A2A1A0
F2 = D7 + D0 = A2A1A0 + A2A1A0
F1 = D4 + D1 = A2 A1A0 + A2A1A0 F0 = D7 + D5 + D1 = A2A0 + A1A0
Read Only Memory Example
D7D6
D5D4D3D2D1D0
A2
A1
A0
A
B
C
F0F1F2F3
X XX
X
X
X
X
X
X
X
8/2/2019 p Logic Devices
8/29
Programmable Array Logic (PAL)
Programmable AND array
Fixed OR array
Each output line permanently connected to a
specific set of product terms
Number of switching functions that can be
implemented with PAL are more limited than
PROM and PLA
8/2/2019 p Logic Devices
9/29
Chapter 3 - Part 2 9
Programmable Array Logic (PAL)
The PAL is the opposite of the ROM, having a programmableset of ANDs combined with fixed ORs.
Disadvantage ROM guaranteed to implement any M functions of N
inputs. PAL may have too few inputs to the OR gates.
Advantages For given internal complexity, a PAL can have larger N and M
Some PALs have outputs that can be complemented, adding POSfunctions
No multilevel circuit implementations in ROM (without externalconnections from output to input). PAL hasoutputs from OR terms as internal inputs to all ANDterms, making implementation of multi-level circuits easier.
8/2/2019 p Logic Devices
10/29
Chapter 3 - Part 2 10
Programmable Array Logic Example
4-input, 4-output PALwith fixed, 3-input OR
terms
What are the equations
for F1 through F3?F1 = +
F2 = B + AC + A
F3 = AD + BD + F1
= AD + BD + +
0 91 2 3 4 5 6 7 8
AND gates inputs
0 9
Productterm
1
2
3
4
5
6
7
8
9
10
11
12
F1
F2
F3
F4
I3=C
I2=B
I1=A
1 2 3 4 5 6 7 8
I = D4
X X
X X
XX X
X X
X
X
X
XX
X
X X
X
X X
B CA
A C B
B CA
8/2/2019 p Logic Devices
11/29
PAL Implications
Number of product terms per output >
number of product terms in each sum-of-
product expression
No sharing of product terms between outputs
8/2/2019 p Logic Devices
12/29
Chapter 3 - Part 2 12
Programmable Logic Array (PLA)
Compared to a ROM and a PAL, a PLA is the most flexiblehaving a programmable set of ANDs combined with aprogrammable set of ORs.
Advantages A PLA can have large N and M permitting implementation of
equations that are impractical for a ROM (because of the number
of inputs, N, required) A PLA has all of its product terms connectable to all outputs,
overcoming the problem of the limited inputs to the PAL ORs
Some PLAs have outputs that can be complemented, adding POSfunctions
Disadvantage Often, the product term count limits the application of a PLA.
Two-level multiple-output optimization reduces the number ofproduct terms in an implementation, helping to fit it into a PLA.
8/2/2019 p Logic Devices
13/29
Programmable Logic Array
13
kAND
gatesm OR gates
k X m links m outputs
n inputs n x k links
n x k links
n x k x m PLA has 2n x k + k x m links
Sum of products
Programmable AND array + programmable OR array
8/2/2019 p Logic Devices
14/29
Chapter 3 - Part 2 14
Programmable Logic Array Example
3-input, 2-output PLAwith 4 product terms
F1
= AB +BC + AC
F2= (AB + AB) = AB + AB
Fuse intact
Fuse blown
1
F1
F2
X
A
B
C
C C B B A A 0
1
2
3
4X
XX
X X
X
X
X
X
X
X
X
X
X A B
A C
B C
A B
X
8/2/2019 p Logic Devices
15/29
55:032 - Introduction to Digital Design Page 15
PAL Logic Implementation
Programmed PAL:
4 product terms per each OR gate
Minimized Functions:
W = A + B D + B CX = B CY = B + CZ = A B C D + B C D + A D + B C D
A B C D
A B C D
ABD
BC
0
0
0
0
B
C
0
0
BC
BCD
AD
BCD
W X Y Z
8/2/2019 p Logic Devices
16/29
Programmable Logic Array
Finite number of AND gates => simplify
function to minimum number of product
terms
Number of literals in a product term is not
important since we have all the input variables
Sharing of product terms between outputs =>
multiple-output minimization
8/2/2019 p Logic Devices
17/29
55:032 - Introduction to Digital Design Page 17
PALs and PLAsWhat is difference between Programmable Array Logic (PAL) and
Programmable Logic Array (PLA)?
PAL concept implemented by Monolithic MemoriesAND array is programmable, OR array is fixed at fabrication
A given column of the OR arrayhas access to only a subset of
the possible product terms
PLA concept Both AND and OR arrays are programmable
8/2/2019 p Logic Devices
18/29
55:032 - Introduction to Digital Design Page 18
PALs and PLAs
Of the two organizations the PLA is the mostflexible
One PLA can implement a huge range of logic
functions BUT many pins; large package, higher cost
PALs are more restricted / you trade numberof OR terms vs number of outputs
Many device variations needed
Each device is cheaper than a PLA
8/2/2019 p Logic Devices
19/29
PLD (Programmable Logic Device)
All layers already exist
Designers can purchase an IC
Connections on the IC are either created or destroyed
to implement desired functionality Field-Programmable Gate Array (FPGA) very popular
Benefits
Low NRE costs, almost instant IC availability
Drawbacks Bigger, expensive (perhaps $30 per unit), power
hungry, slower
8/2/2019 p Logic Devices
20/29
PLD Definition
Programmable Logic Device (PLD):
An integrated circuit chip that can be configured
by end use to implement different digital
hardware Also known as Field Programmable Logic Device
(FPLD)
8/2/2019 p Logic Devices
21/29
PLD Advantages
Short design time
Less expensive at low
volume
Volume
Nonrecurring engineering cost
PLD
ASIC
8/2/2019 p Logic Devices
22/29
22
CPLD Logic Block
Simple PLD
Inputs
Product-term array
Product term allocation function
Macro-cells (registers)
Logic blocks executes sum-of-product expressions and stores
the results in micro-cell registers
Programmable interconnects route signals to and from logic
blocks
8/2/2019 p Logic Devices
23/29
23
Major CPLD Resources
Number of macro-cells per logic block
Number of inputs from programmable
interconnect to logic block
Number of product terms in logic block
8/2/2019 p Logic Devices
24/29
24
Structure of FPGA (Xilinx)
Logic Block
I/O Block
Interconnect
8/2/2019 p Logic Devices
25/29
8/2/2019 p Logic Devices
26/29
8/2/2019 p Logic Devices
27/29
8/2/2019 p Logic Devices
28/29
8/2/2019 p Logic Devices
29/29