Digital Circuit Design - Prince of Songkla University
Download
Report
Transcript Digital Circuit Design - Prince of Songkla University
Digital Circuit Design on FPGA
Nattha Jindapetch
November 2008
1
Agenda
Design trends
IC technology revolution
Design styles
System integration
Programmable logic
FPGA design flow & Tools
LABs
2
IC Technology Revolution
3
Invention of the Transistor
1947: first point contact transistor at
Bell Labs
4
The First Integrated Circuit
1966: ECL 3-Input gate at Motorola
5
MOS Integrated Circuits
1970’s processes usually had only nMOS
transistors
Inexpensive, but consume power while idle
Intel 1101
Intel 4004 4-bit Proc
256-bit SRAM
1000 Trs, 1 MHz operation
6
High Performance Processors
2001: Intel Pentium Microprocessor
42 M transistors,
1.5 GHz operation
CMOS, Low power
7
Moore’s Law
Transistor counts have doubled every 2 years
Integration Levels
SSI: 10 gates
MSI: 1000 gates
LSI: 10,000 gates
VLSI: > 10k gates
8
Corollaries
Many other factors grow exponentially
Ex: clock frequency, processor performance
9
Evolution of a Revolution
www.intel.com
10
Design Styles
11
Design Styles
Full-custom ASIC
Cell-based ASIC
Gate array
Programmable logic
Field programmable gate array (FPGA)
Programmable logic device (PLD)
Complex PLD (CPLD)
12
Full-Custom ASIC
layout-based
the designer draws
each polygon “by
hand”
More compact design
but longer design
time
only for analogue and
high(est) volumes
13
Cell-Based ASIC
used predefined
building blocks (“cells”)
designer creates a
schematic that
interconnects these
cells
layout = placement &
interconnection of cells
for “functionality” or
“time-to market” driven
design
14
Gate Array
Each chip is
prefabricated with
an array of identical
gates or cells.
The chip is
“customized” by
fabricating routing
layers on top.
Time to market, cost
15
Field programmable gate array
Chips are prefabricated
with logic blocks and
interconnects.
Logic and interconnects
can be programmed
(erased and
reprogrammed) by users.
No fabrication is needed.
Cost efficient for
medium complexity (< 1M
gates) designs
16
PLD and CPLD
Programmable Logic Device
(PLD, PLA, PAL, ...)
AND-OR combinatorial logic, plus FF
designer writes Boolean equations
Small complexity only
Complex PLD (CPLD)
several PLD blocks
programmable interconnection matrix
17
Trends in Design styles
More complex system
Digital and Analog IC (Mixed Signal)
Hardware and Software Co-design
SoC, SoPC
Resulting in …
Higher abstract design level
Advanced design tools to automate complex
designs
Short design time to compete market share
18
Why HW/SW Co-design?
Hardware (ASIC, FPGA)
Software (Processor)
Fast
But very expensive
Flexible
But slow
Hardware + Software = Good solution?
Requirements?
19
Example of Digital Camera
20
System Integration
21
System Integration
22
Benefits
Less components
Less inter-chip interconnects
Reliability
Power consumption
Board design, fabrication and assembly costs
Smaller system volume (in cm2) and weight
Component costs
Board size and cost
Assembly and testing costs
Higher integration rate
Smaller case costs
Smaller transport costs
In high volumes (in pcs), also lower circuit costs
23
SoP
System-on-Package (SoP) or System-inPackage (SiP) are advanced multi-chip
packaging technology complementing SoC.
24
SoC
System-on-Chip –one term, many definitions
“IBM definition”: a single-chip system containing
analog, digital and MEMS (micro-electromechanical system) parts
“Lucent definition”: a single-chip system containing
analog and digital parts
“Synopsys definition”: a single-chip digital system
SoC, System-on-Chip is a relatively complex
standalone system on a single semiconductor chip
containing at least one processor, maybe some analog
or even electro-mechanical parts, where the design
needs to address on-chip communication
25
SoPC
System-on-a-Programmable Chip (SOPC) term
coined by Synopsys
SoPC is a FPGA technology based user
programmable solution
P&R and programming done by the user
No delay on prototype production
No delay on mass production start
No NRE (production start) costs
Production tests done by the IC vendor
Design resource and time savings in the design flow
Quick and cheap modifications
26
SoC vs SoPC
SoC manufacturing is costly
Foundries more and more expensive
Mask costs for fine-grain lithography are increasing
Silicon vendors concentrate on big customers with big
quantities
Very few multi-project prototype services available
Malfunction will cost a lot of money and time
Full-wafer prototype round may cost even 500,000 ... 1M €
FPGA-type solutions are also evolving
On-chip processor cores
Multi-million gate capacity
Some vendors also provide coarse-grain reconfigurability
FPGA-based SoC-type platforms thus have a growing niche
27
Programmable Logic
28
Programmable Logic
Programmable digital integrated circuit
Standard off-the-shelf parts
Desired functionality is implemented by configuring onchip logic blocks and interconnections
Advantages (compared to an ASIC):
Low development costs
Short development cycle
Device can (usually) be reprogrammed
Types of programmable logic:
Complex PLDs (CPLD)
Field programmable Gate Arrays (FPGA)
29
CPLD
Architecture and Examples
30
PLD - Sum of Products
Programmable AND array followed by fixed fan-in OR gates
A
B
C
Programmable switch or fuse
f1 A B C A B C
f2 A B A B C
AND plane
31
PLD - Macrocell
Can implement combinational or sequential logic
Select
A
B
Enable
C
f1
Flip-flop
MUX
D
Q
Clock
AND plane
32
CPLD Structure
Integration of several PLD blocks with a
programmable interconnect on a single chip
PLD
Block
•
•
•
•
•
•
I/O Block
PLD
Block
I/O Block
I/O Block
•
•
•
Interconnection Matrix
I/O Block
•
•
•
PLD
Block
PLD
Block
33
CPLD Example – Altera MAX7000
EPM7000 Series Block Diagram
34
CPLD Example –Altera MAX7000
EPM7000 Series Device Macrocell
35
FPGA Architecture
36
FPGA - Generic Structure
Logic
block
FPGA building blocks:
I/O
I/O
I/O
Programmable logic blocks
Implement combinatorial and
sequential logic
Programmable interconnect
Wires to connect inputs and
outputs to logic blocks
Programmable I/O blocks
Special logic blocks at the
periphery of device for
external connections
Interconnection switches
I/O
37
Other FPGA Building Blocks
Clock distribution
Embedded memory blocks
Special purpose blocks:
DSP blocks:
Hardware multipliers, adders and registers
Embedded
microprocessors/microcontrollers
High-speed serial transceivers
38
FPGA – Basic Logic Element
LUT to implement combinatorial logic
Register for sequential circuits
Additional logic (not shown):
Carry logic for arithmetic functions
Expansion logic for functions requiring more than 4
Select
inputs
Out
A
B
C
D
LUT
D
Clock
Q
39
Look-Up Tables (LUT)
Look-up table with N-inputs can be used to implement
any combinatorial function of N inputs
LUT is programmed with the truth-table
A
B
C
D
Z
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
1
1
1
0
1
1
1
0
1
1
1
0
0
0
Truth-table
A
B
C
D
LUT
Z
LUT implementation
A
B
Z
C
D
Gate implementation
40
LUT Implementation
X1
X2
Example: 3-input
LUT
Configuration memory
cells
Based on
multiplexers (pass
transistors)
LUT entries stored
in configuration
memory cells
X3
0/1
0/1
0/1
0/1
0/1
F
0/1
0/1
0/1
41
Programmable Interconnect
Interconnect hierarchy (not shown)
Fast local interconnect
Horizontal and vertical lines of various lengths
LE
LE
Switch
Matrix
LE
LE
Switch
Matrix
LE
LE
42
Switch Matrix Operation
Before Programming
6 pass transistors per
switch matrix interconnect
point
Pass transistors act as
programmable switches
Pass transistor gates are
driven by configuration
memory cells
After Programming
43
Special Features
Clock management
PLL,DLL
Eliminate clock skew between external clock input
and on-chip clock
Low-skew global clock distribution network
Support for various interface standards
High-speed serial I/Os
Embedded processor cores
DSP blocks
44
Configuration Storage Elements
Static Random Access Memory (SRAM)
Flash Erasable Programmable ROM (Flash)
each switch is a pass transistor controlled by the state of an
SRAM bit
FPGA needs to be configured at power-on
each switch is a floating-gate transistor that can be turned off
by injecting charge onto its gate. FPGA itself holds the program
reprogrammable, even in-circuit
Fusible Links (“Antifuse”)
Forms a forms a low resistance path when electrically
programmed
one-time programmable in special programming machine
radiation tolerant
45
FPGA Vendors & Device Families
Xilinx
Virtex-II/Virtex-4: Featurepacked high-performance
SRAM-based FPGA
Spartan 3: low-cost feature
reduced version
CoolRunner: CPLDs
Altera
Stratix/Stratix-II
Low-cost feature reduced
version for cost-critical
applications
MAX3000/7000 CPLDs
MAX-II: Flash-based FPGA
Actel
Anti-fuse based
FPGAs
Radiation tolerant
Flash-based FPGAs
Lattice
High-performance SRAM-based
FPGAs
Cyclone/Cyclone-II
Flash-based FPGAs
CPLDs (EEPROM)
QuickLogic
ViaLink-based
FPGAs
46
State of the Art in FPGAs
Xilinx’s top of the line FPGA
65nm process technology
Serial connectivity
550MHz RAM blocks
6-input LUTs
Ethernet MACs
Rocket I/O serial 6.5 GBps
PCI Express endpoint
Enhanced DSP blocks (25x18-bit MAC)
1760 pin BGA with 1200 I/O
EasyPath
47
FPGA Design Flow
Xilinx Design Flow
48
LABs
Lab1: Introduction
Quick start
Synthesis results
RTL schematic
Technology schematic
Device utilization summary
Timing summary
Simulation
Behavioral
Post-Place and Route (PAR) Simulation
49
References
Theerayod Wiangtong, “Design Trends on Digital
System Design”, Lecture note, Electronic
Department, Mahanakorn University of Technology,
2004
Fank Mayer, “High-Level IC Design”, Fraunhofer
IIS, Erlangen, Germany, 2004
Stefan Haas, “FPGAs”, CERN Technical Training
2005
Xilinx University Program,
http://www.xilinx.com/support/educationhome.htm
50