Beruflich Dokumente
Kultur Dokumente
Design Alternatives
Microprocessors
Ideal, if fast enough
Gates, MSI, PALs
Outdated, inefficient inflexible
Dedicated Standard Chip Sets
Cheap, but no product differentiation
ASICs
Only for rock-stable, high-volume designs
Programmable Logic
For flexibility and performance
Standard
ASIC
Logic
Programmable
Logic Dev ices Gate Cell-Based Full Custom
(PLDs) Arrays ICs ICs
SPLDs
(PALs) CPLDs FPGAs
Acronyms
Common Resources
SPLD = Simple Prog. Logic Device Configurable Logic Blocks (CLB)
PAL = Prog. Array of Logic Memory Look-Up Table
CPLD = Complex PLD AND-OR planes
FPGA = Field Prog. Gate Array Simple gates
Input / Output Blocks (IOB)
Bidirectional, latches, inverters,
pullup/pulldowns
Interconnect or Routing
Local, internal feedback, and global
ICS217-Digital Electronics - P.
Waiganjo 1
Programmable Logic Devices
74 series chips has fixed structure and function,
cannot be changed
A chip that contain relatively large amounts of
logic circuitry with a structure that is not fixed,
called programmable logic device (PLD)
Programmable
logic device as a
black box
Logic gates
Inputs and Outputs
(logic variables) programmable (logic functions)
switches
Implement
Sum
Implement
Product
ICS217-Digital Electronics - P.
Waiganjo 2
Gate-level diagram of a PLA
Programmable,
Programmable,
you can select
you can select
the input of
the input of
AND gate
OR gate
OR plane
fixed,
Programmable, f1=P1+P 2
you can select
the input of
AND gate
ICS217-Digital Electronics - P.
Waiganjo 3
CAD tools
It is impossible to design AND/OR
plane by hand
Automatically generate configuration
of AND/OR plane for PLA and PAL
Generate a file (programming file,
fuse map, bit stream file) for
programmable logic device
ICS217-Digital Electronics - P.
Waiganjo 4
Structure of a complex programmable logic device
Can implement
larger circuit
than CPLD
ICS217-Digital Electronics - P.
Waiganjo 5
Programmable Logic Devices
Types of PLDs
Read Only Memory (ROM)
Programmable Logic Arrays (PLA)
Programmable Array Logic (PAL)
Field Programmable Gate Arrays (FPGA)
ICS217-Digital Electronics - P.
Waiganjo 6
Read-Only Memory (ROM)
A decoder generates 2n mi nterms for the n i nput vari ables.
By i nserti ng OR gates to sum the mi nterns of Boolean functi ons, w e can
generate any desi red combi nati onal ci rcui t.
A ROM i s a devi ce that i ncludes both the decoder and the OR gates w i thi n a
si ngle IC chi p.
A storage of fi xed bi nary i nformati on
ROM chi ps come w i th speci al i nternal li nks that can be fused or broken
(programmi ng)
n inputs
consi sts of n i nput li nes and m output li nes
Each i nput bi t combi nati on i s called an address
Each output combi nati on i s called a w ord
The number of bi ts per w ord i s equal to m 2n x m
The number of possi ble di sti nct addresses i s 2 n ROM
An output w ord i s selected by an uni que address
m outputs
ICS217-Digital Electronics - P.
Waiganjo 7
Read-Only Memory (ROM)
Example: 4x4 ROM with AND-OR gates
Truth table
A0 A1 F0 F1 F2 F3
0 0 1 0 1 1
00
A0
01 0 1 0 1 1 0
2x4 1 0 1 1 0 1
A1 decoder 10
11 1 1 1 1 1 0
AND
OR
F0 F1 F2 F3
0
A0
1
A1
5x32 2
A2
decoder
A3
A4
31
F0 F1 F2 F3
ICS217-Digital Electronics - P.
Waiganjo 8
Programmable Logic Array (PLA)
configurable x0x2x3x4x5
connection
x0x1x2x3x4x5
x0x2x4x5
x0x1x2x5
configurable
connection
x0x4x5
x1x2x3x4
x0 x1 x2 x3 x4 x5
z0 z1 z2 z3 = x0 x1 x2 x3 x4 x5 + x0 x1 x2 x5
PLAs have confi gurable AND-plane & OR-plane.
AND-plane -for Input OR-plane -for Output
Used to i mplement 2-level s-o-p expressi ons
ICS217-Digital Electronics - P.
Waiganjo 9
Programmable Logic Array (PLA)
The Programmable Logic Array (PLA) shown here is a more general structure than the
PAL. It is comprised of an AND plane and an OR plane. The size of the AND array is
equal to the number of inputs, while the size of the OR array is equal to the number of
terms times the number of outputs. In a PLA connections are programmable in BOTH
the AND array and the OR array.
Inputs
Outputs
ICS217-Digital Electronics - P.
Waiganjo 10
Programmable Devices
F1 = A B C
F2 = A + B + C
F3 = A B C
F4 = A + B + C
F5 = A xor B xor C
F6 = A xnor B xnor C
x0x2x3x4x5
x0x1x2x3x4x5
x0x2x4x5
configurable x0x1x2x5
connection
x0x4x5
x1x2x3x4
x0 x1 x2 x3 x4 x5
z0 z1 z2 = x0x2x3x4x5 + x0x1x2x3x4x5
PAL i s si mi lar to PLA but fi xed OR-plane.
Si mpler to program and cheaper i mplementati on.
Li mi ted number of terms i n each output.
ICS217-Digital Electronics - P.
Waiganjo 11
Programmable Array Logic (PAL)
ICS217-Digital Electronics - P.
Waiganjo 12
Programmable Array Logic (PAL)
Minimized Functions: C
11 1 1 X X
C
11 0 1 X X
W =A + BD+ BC 10 1 1 X X 10 1 0 X X
X = B C'
Y=B+C B B
K-map for Y K-map for Z
Z = A'B'C'D + B C D + A D' + B' C D'
Programmed PAL
ICS217-Digital Electronics - P.
Waiganjo 13
ICS217-Digital Electronics - P.
Waiganjo 14
Comparison of PROMs, PLAs & PALs
ICS217-Digital Electronics - P.
Waiganjo 15
CPLD (Complex Programmable Logic
Device) consists of multiple PLA
blocks that are interconnected to
realize larger digital systems
ICS217-Digital Electronics - P.
Waiganjo 16
PLD Industry Growth
Design Flow
Design Entry in schematic, ABEL, VHDL,
and/or Verilog. Vendors include Synopsys,
1 Aldec (Xilinx Foundation), Mentor,
Cadence, Viewlogic, and 35 others.
ICS217-Digital Electronics - P.
Waiganjo 17
Downloading the Design
ICS217-Digital Electronics - P.
Waiganjo 18
Can be used in various engineering labs
Digital Design
Intro/Advanced Digital Design
Computer Architecture
Networking and Communications
Control Systems
Projects and Labs can focus on concept,
not wire wrapping
Complete Software Package for Design,
Synthesis, Implementation and download
Immediate results in hardware
ICS217-Digital Electronics - P.
Waiganjo 19
Xilinx Design Tools
v4.2i ISE Software
Complete Software Package Unix & PC Platforms
Linux support using WINE!
Design Entry (Schematic, VHDL,
Verilog)
Synthesis (XST)
Implementation (Translate, Map,
Place & Route)
Simulation (ModelsimXE-II)
iMPACT Programmer (Download
Bistream)
CORE Generator
Parameterizable Cores
StateCAD/State Bencher
State Machine Design
HDL Bencher
Test Bench Generation
Altera Devices
Programmable Logic Families
High & Medium Density FPGAs
Strati x II, Strati x, APEX II,
APEX 20K, & FLEX 10K
Low-Cost FPGAs
Cyclone & ACEX 1K
FPGAs with Clock Data Recovery
Strati x GX & Mercury
CPLDs
MAX 7000 & MAX 3000
Embedded Processor Solutions
Ni os, Excali bur T
Configuration Devices
EPC
ICS217-Digital Electronics - P.
Waiganjo 20
Altera Design Software
Software & Development Tools:
Quartus II
Stratix II, Stratix, Stratix GX, Cyclone,
APEX II, APEX 20K/E/C, Excalibur, &
Mercury Devices
FLEX 10K/A/E, ACEX 1K, FLEX 6000,
MAX 7000S/AE/B, MAX 3000A Devices
MAX+PLUS II
All FLEX, ACEX, & MAX Devices
ICS217-Digital Electronics - P.
Waiganjo 21
FPGAs are Good Enough Better
ICS217-Digital Electronics - P.
Waiganjo 22
FPGAs Are Better Vastly Superior
Avoid the ASIC re-spin cost
design error or market change
Avoid the ASIC inventory risk
over- or under-inventory
obsolescence
Reprogrammability
last-minute design modifications
last-step system customization
field hardware upgrades
reconfiguration per application
reconfiguration per task
ASICs will never offer these features
ICS217-Digital Electronics - P.
Waiganjo 23
The Compelling Conclusion:
Programmable is the Way to Go!
FPGAs provide performance and flexibility
The performance of custom-hardware
The ease of design and inherent flexibility of a
microprocessor solution
FPGAs avoid the risks of ASICs
The design risk
The time-to-market risk
The inventory risk
CPLDs provide a fast, low-cost alternative
Good for simple designs
ICS217-Digital Electronics - P.
Waiganjo 24