HDL and FPGA Ch02 HVT 2024 TechnologyOptions and FPGA
HDL and FPGA Ch02 HVT 2024 TechnologyOptions and FPGA
Jan 2024
VLSI Design Flow (1/9)
VLSI = Very Large Scale Integration
2
VLSI Design Flow (2/9)
System Specification – Define the size, speed,
capacity, and functions of the system
Architectural Design – Define the architecture of
the system: for example: RISC / CISC, number of
ALUs, cache size. Determining the architecture
helps to estimate the system's processing speed,
chip size, power consumption …
3
VLSI Design Flow (3/9)
Functional Design – Define the main functional
blocks and the connections between blocks. It is
not necessary to define in detail how to implement
these blocks.
4
VLSI Design Flow (4/9)
Logic Design – Logical design, for example:
design of combination logic circuit, sequence
logic, ALU, control unit…. The result of this
design step is the RTL ( Register Transfer Level )
description. RTL is represented by Hardware
Description Language (HDL ), eg, VHDL and
Verilog.
X = (AB+CD)(E+F)
Y= (A(B+C) + Z + D)
5
VLSI Design Flow (5/9)
Circuit Design – Circuit design includes the
design of logic gates, transistors and connections.
The result obtained from this design step is a
netlist.
6
VLSI Design Flow (6/9)
• Net list: • Component list:
net1: top.in1 i1.in top: in1=net1 n1=topin1 n2=topin2
net2: i1.out xxx.B n3=botin1 out=outnet
topin1: top.n1 xxx.xin1 i1: in=net1 out=net2
topin2: top.n2 xxx.xin2 xxx: xin1=topin1 xin2=topin2
botin1: top.n3 xxx.xin3 xin3=botin1 B=net2 out=net3
net3: xxx.out i2.in i2: in=net3 out=outnet
outnet: i2.out top.out
7
VLSI Design Flow (7/9)
Component hierarchy
top
i1 xxx i2
8
VLSI Design Flow (8/9)
Physical Design – Convert from netlist to
geometric representation. This geometric
representation is called a layout.
9
VLSI Design Flow (9/9)
Fabrication – Includes processes such as
photolithography, polishing, diffusion ... to make
chip (IC).
Packaging – Arrange the ICs on a PCB (Printed
Circuit Board) or on a MCM (Multi-Chip Module)
10
VLSI Design Flow
System Specification Netlist
Architectural Physical
Design Design
Architectural Layout
Specification Circuit Design
or Fabrication
Functional
Logic Synthesis
Design
Chips
Timing & relationship
between functional units Packaging
Routing
Layout Compaction
14
Physical Design Steps (3/6)
Floorplanning – Set up a plan for the layout of
modules on the layout properly when the shapes,
sizes, and foot positions of the modules have not
been fixed.
Deadspace
15
Physical Design Steps (4/6)
Placement – Fixed arrangement of modules
(modules can be logic gates, standard cells...)
when knowing the detailed parameters of the
modules so that the signal delay, area and the
number of connections should be minimized
Feedthrough
Standard cell type 1
Standard cell type 2
v
16
Physical Design Steps (5/6)
Routing – Connect between modules, ensuring
delay, distance between lines...
Feedthrough
Type 1 standard cel1
v
Type 2 standard cell
17
Physical Design Steps (6/6)
Compaction – This step minimizes the area
of the layout area to reduce the chip size
Verification – Layout check includes
– Design Rule Checking (DRC),
– reverse circuit extraction (circuit extraction) to
compare with the original netlist,
– performance verification by getting information.
geometrical information for calculating resistance,
capacitance, delay ...
18
VLSI design flow
19
Technologies Options
Technologies used in design
• Full-Custom ASICs (Application specific ICs)
– Logic cells and masking layers are not pre-designed, but designed
by the designer
• Semicustom ASICs
– Pre-designed logic cells (defined in the cell library) and layer
masks designed by designer
– 2 types: Standard-cell based and Gate-array-based ASICs
• Programmable Logic Devices (Thiết bị logic khả trình)
– All logic blocks are pre-designed and there is no need to design
any masking layer
– 2 types:
• PLD (Programmable Logic Device)
• FPGA (Field Programmable Gate Array)
21
Technologies used in design
Full-Custom ASIC
• Full-Custom ASICs (ASIC tùy biến hoàn toàn)
– For each ASIC chip, the designer must design all logic blocks,
circuits, and layouts
– Full-custom ICs are the most expensive ones to design and fabricate
– Time to fabricate 1 IC (not including design time) is 8 weeks
– Use when:
• There are no logic blocks available in the library
• The existing logic blocks are not fast enough
• Existing logic blocks come in large size
• Existing logic blocks consume a great deal of power
• The ASIC chip is designed to be too special, and many
circuits have to be custom designed
22
Technologies used in design
Full-Custom ASIC
23
Technologies used in design
Cell-based ASIC
• Cell-Based ASIC (CBIC) uses pre-designed logic
blocks (AND gates, OR gates, multiplexers, flip-
flops, ...)
– The standard logical block area consists of the normal logical
block rows
– The standard logic block area can be combined with other larger,
well-designed blocks such as microcontrollers, microprocessors,
these blocks are called megacells.
24
Technologies used in design
Cell-based ASIC
• Characteristics:
– Custom blocks can be embedded into the ASIC chip.
The ASIC designer only has to define where the
standard logic blocks are located and the connections
between blocks
– The reference blocks can be placed anywhere on the
silicon slab so all CBIC mask layers can be freely
designed.
– Fabrication time is 8 weeks
25
Technologies used in design
Gate-Array-Based ASICs
• Consists of a 2-dimensional array of identical logic
gates (e.g. NAND gates) pre-defined on the silicon slab.
• The logic gates are connected by layers of connection.
The connection between the ports is done by a mask
created by the designer.
• Fabrication time from a few days to 2 weeks
• The price is cheaper than other ASIC
26
Contents
x y z x y z
F1 F1
28
Programmable logic array (PLA)
• PLA
Programmabl
And
Input
plane
Or Output
plane
29
Programmable logic array (PLA)
• PLA
30
Programmable Array Logic (PAL)
• PAL
Programmable
And
Input
plane
Fixed
Or Output
plane
31
Programmable Array Logic (PAL)
32
Complex Programmable Logic Devices
(CPLD)
• CPLD
33
Complex Programmable Logic Devices
(CPLD)
• Programming Technologies
– PROM: one-time programming
– EPROM, flash, EEPROM: reprogrammable (many times)
Non-volatile
34
Example: PROM
Vcc Vcc Vcc Vcc Fuse
After manufacturing
Address
2-to-4 Decoder
2
MSB
2
LSB
4-1 Mux
35
Data
Example: PROM
Vcc Vcc Vcc Vcc
After programming
Address
2-to-4 Decoder
2
MSB
2
LSB
2-to-4 Mux
36
Data
Field-programmable Gate Array: FPGA
Routing viaLong
switching
lines matrices
• FPGA: XC40xx
I/O I/O I/O I/O
SM SM SM SM
I/O
SM SM SM SM
I/O
SM SM SM SM
I/O
37
Look Up Table (LUT)
38
FPGA structure
• CLB (Configurable Logic Block)
16x1 G
LUT: GQ
FF
Bool-function
of 4
G
variables
16x1
F
LUT: FQ
FF
Bool-function
of 4
variables F
39
FPGA structure
• FPGA: Switching Matrix SM
Pass
TOR
40
FPGA structure
• Programming technologies:
– SRAM-based:
• Volatile
• Reprogrammble
– Antifuse
• Non-volatile
• Programmed only-one
• IP security
41
FPGA producers
• The world's leading FPGA providers
– Xilinx: http://www.xilinx.com/ (AMD)
– Altera: http://www.altera.com/ (Intel)
43
Review: Types of ASICs
44
Reconfigurable Computing:
Advantages
45
Reconfigurable Computing:
Advantages
46
FPGA vs. ASIC
47
Nguồn: http://www.xilinx.com/fpga/asic.htm
FPGA vs. ASIC Cost
ASIC: High volumes needed to recover design cost
Source: http://www.xilinx.com/fpga/asic.htm
49
When should we use FPGA?
• Custom IC, custom IP core (IC tùy biến theo yêu cầu)
– thiết kế IC với những chức năng chuyên biệt cần thiết
50
Applications of FPGA
• Aerospace & Defense
• Automotive
• Consumer
• Digital Video Technologies
• Industrial/Scientific & Medical
• Test & Measurement
• Wired Communications
• Wireless Communications
51
Applications of FPGA
52
Applications of FPGA
53
Applications of FPGA
54
Applications of FPGA
55
Applications of FPGA
56
Applications of FPGA
57
Applications of FPGA
58
Applications of FPGA
59
Applications of FPGA
60