Unit VI
Unit VI
1
1
MUX Output a
Input
4-input 0 1 out
LUT Flipflop
b
0
Clock 1
LUT based logic block Two input LUT realizing the function (a’+b)
04-10-2018 VLSI DESIGN ISSUES
FPGA basic functional unit
MUX based logic blocks
The basic building block is Multiplexer to realize the Boolean function. A MUX
can be configured to implement different logic functions by connecting its
select and/or data lines to different signals.
e.g. implement function (wS1 + xS1’).(S3+S4)+(yS2+zS2’).(S3+S4)’
w
MUX1
1
x 0
MUX3
S1 1 Output
0
y
MUX2
1
0
z OR
S2
S3 S4
MUX based logic block
04-10-2018 VLSI DESIGN ISSUES
Field Programmable Gate Array
FPGA are categorized into the following types:
Antifuse FPGA
Flash FPGA
Static Random Access Memory (SRAM) FPGA
Features:
✓None of the mask layers are customized
✓Basic logic cells and interconnect can be programmed at user sites
✓Core is a regular array of CLBs that can implement combinational as well as
sequential logic.
✓A matrix of prograammable interconnect surrounds the basic logic cells
✓Programmable I/O cells surround the core
✓Design turnaround time is a few hours
04-10-2018 VLSI DESIGN ISSUES
Why do we need FPGA?
FPGAs were introduced as an alternative to custom ICs for implementing entire
system on one chip and to provide flexibility of reporogramability to the user.
Introduction of FPGAs resulted in improvement of density relative to discrete
SSI/MSI components (within around 10x of custom ICs). Another advantage of
FPGAs over CustomICs is that with the help of computer aided design (CAD)
tools circuits could be implemented in a short amount of time (no physical
layout process, no mask making, no IC manufacturing)
Netlist (EDIF)
Implementation for a
specific device
M
1
20 6
M
20 6
16
Routing switches would exist for two purposes:
M
1) to connect the pins of the logic blocks to the wire segments
in the channels, and
2) 2) to connect one wire segment to another. Two examples
of how SRAM cells could be used to control the routing
switches in this type of FPGA are illustrated by Figure . M
SRAM
cell 16