FPGA Based System Design
Introduction 2 of 22
Course Objectives
1. To know how to design and develop complex digital
systems onto the reconfigurable devices such as Field
Programmable Gate Arrays (FPGA).
2. To enable the student to have command on
a) Verilog HDL to model a digital circuit.
a) Combinational
b) Sequential
c) FSM
d) FSMD
b) Understanding of Internal Architecture of FPGA.
c) FPGA Design flow to port the Verilog HDL on FPGA
Course Title – FPGA Based System Design
Introduction 3 of 22
Course Material
1. Course Books
a) FPGA Prototyping by Verilog Examples by Pong. P . Cho.
b) FPGA Based System Design by Wayne Wolf
2. Reference Books
a) Verilog HDL: A Guide to Digital Design and Synthesis by
Samir Palnitkar.
b) Advanced Digital Design with the Verilog HDL by Michael D.
Ciletti
Course Title – FPGA Based System Design
Introduction 4 of 22
Quizzes & Assignments
1. Quizzes and Assignments
a) 4 Quizzes (unannounced)
b) 3 Assignments (One Complex Engineering Problem, 2 Regular
assignments)
Course Title – FPGA Based System Design
Introduction
Introduction 6 of 22
Outline
• Why VLSI
• Moore’s Law
• Why FPGA
• FPGA System Design Process
Course Title – FPGA Based System Design
Introduction 7 of 22
Outline
• Why VLSI
• Moore’s Law
• Why FPGA
• FPGA System Design Process
Course Title – FPGA Based System Design
Introduction 8 of 22
Why VLSI
• Integration improves the design:
– lower parasitics = higher speed;
– lower power;
– physically smaller.
• Integration reduces manufacturing cost-
(almost) no manual assembly.
Course Title – FPGA Based System Design
Introduction 9 of 22
VLSI and You
• Microprocessors:
– personal computers;
– microcontrollers.
• DRAM/SRAM/flash.
• Audio/video and other consumer systems.
• Telecommunications.
Course Title – FPGA Based System Design
Introduction 10 of 22
VLSI and You
• Types of ASIC
– Programmable ASIC (Processors)
– One can change the application function by
changing S/W.
– Non programmable ASIC (e.g. Graphic
Accelerator)
– Once manufactured one can not change its
function.
Course Title – FPGA Based System Design
Introduction 11 of 22
Outline
• Why VLSI
• Moore’s Law
• Why FPGA
• FPGA System Design Process
Course Title – FPGA Based System Design
Introduction 12 of 22
Moore’s Law
• Gordon Moore: co-founder of Intel.
• Predicted that number of transistors per
chip would grow exponentially (double
every 18 months).
• Exponential improvement in technology is a
natural trend: steam engines, dynamos,
automobiles.
Course Title – FPGA Based System Design
Introduction 13 of 22
Moore’s Law
Course Title – FPGA Based System Design
Introduction 14 of 22
Moore’s Law
• Current cost: $2-3 billion.
• Typical fab line occupies about 1 city block,
employs a few hundred people.
• New fabrication processes require 6-8
months turnaround.
• Most profitable period is first 18 months-2
years.
Course Title – FPGA Based System Design
Introduction 15 of 22
Outline
• Why VLSI
• Moore’s Law
• Why FPGA ?
• FPGA System Design Process
Course Title – FPGA Based System Design
Introduction 16 of 22
Why FPGA ???
Q.1 Can we make prototype of our hardware before sending it
for fabrication ( like Bread Board Testing before PCB
manufacturing) ???
Q.2 What to do if we need less number of specific ICs???
Q.3 Can we update our product without throwing away our
stuffed PCBs if additional processing power is required ???
Course Title – FPGA Based System Design
Introduction 17 of 22
Why FPGA ???
• FPGAs are programmable logic devices:
– Logic elements + interconnect.
– Provide multi-level logic.
LE LE
Interconnect
LE LE
network
LE LE
Course Title – FPGA Based System Design
Introduction 18 of 22
Why FPGA ???
• FPGAs are manufactured by companies like
Xilinx and Altera.
• They are available in different sizes means
– Different number of Logic elements +
interconnect
• Now we have to see how use of FPGA
answer our Questions.
Course Title – FPGA Based System Design
Introduction 19 of 22
Why FPGA ???
Q.1 Can we make prototype of our hardware before sending it
for fabrication ( like Bread Board Testing before PCB
manufacturing) ???
Ans: Why not, take an FPGA development board. Try your
Verilog or VHDL code by programming FPGA and see if it works.
Q.2 What to do if we need less number of specific ICs???
Ans: Take FPGA IC and implement your design on FPGA.
Populate this FPGA on the circuit board.
Q.3 Can we update our product without throwing away our
stuffed PCBs if additional processing power is required ???
Ans: Use a bigger FPGA in the design than actually required. By
updating its program you can add required hardware.
Course Title – FPGA Based System Design
Introduction 20 of 22
Outline
• Why VLSI
• Moore’s Law
• Why FPGA ?
• FPGA Based System Design Process
Course Title – FPGA Based System Design
Introduction 21 of 22
FPGA Based System Design Process
1
3
Translate
4
Course Title – FPGA Based System Design