Interconnect Intro FPGA
Interconnect Intro FPGA
Interconnect Intro FPGA
Interconnect
CSET 4650
Field Programmable Logic Devices
Dan Solarek
Programmable Interconnect
In addition to programmable logic cells, FPGAs must have
programmable interconnect
Structure and complexity of the interconnect is determined by
the programming technology and architecture of the logic cell
Interconnect is typically aluminum-based metal layers
Resistance of approximately 50 m/square
Line capacitance of approximately 0.2 pF/cm
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
CLB
over simplified
wiring channel
switch
wire
LE
7
Routing Considerations
Global routing:
Which combination of channels?
Local routing:
Which wire in each channel?
Routing metrics:
Net length
Delay
Interconnect Strategies
Some wires will not be utilized
Congestion will not be same throughout chip
Types of wires:
Short wires: local LE connections
Global wires: long-distance, buffered communication
Special wires: clocks, etc.
10
Paths in Interconnect
LE
LE
LE
Wiring channel
LE
LE
LE
LE
LE
Wiring channel
LE
LE
LE
LE
LE
LE
11
Interconnect architecture
Connections from wiring channels to LEs.
Connections between wires in the wiring channels.
wiring channel
LE
LE
switches
12
Interconnect Richness
Within a channel:
How many wires
Length of segments
Connections from LE to interconnect channel
Between channels:
Number of connections between channels
Channel structure
13
Segmented Wiring
Length 1
Length 2
14
Offset Segments
15
channel
Switchbox
channel
channel
channel
16
Actel FPGAs
rows of interconnect
Anti-fuse Technology:
Program Once
I/OB
u
ffe
rs
,P
ro
g
ra
m
m
in
ga
n
dT
e
s
tL
o
g
ic
Rows of programmable
logic building blocks
Wiring Tracks
18
19
Actel Interconnect
Logic Module
Horizontal
Track
Anti-fuse
Vertical
Track
Interconnection Fabric
20
Input
Logic Module
Output
Logic Module
Input
22
MODULES
TRACKS
SEA OF MODULES
TWO DIMENSIONAL
23
24
25
Routing Resources
ACT 1 interconnection architecture
22 horizontal tracks per channel for signal routing with
3 dedicated for VDD, GND, GCLK
8 vertical tracks per LM are available for inputs
(4 from the LM above the channel, 4 from the LM below)
input stub
4 vertical tracks per LM for outputs output stub
a vertical track extends across the two channels above the module
and the two channels below
Elmores Constant
Approximation of waveform at node i:
Vi t e
Di
; Di Rki Ck
k 1
where Rki is the resistance of the path to V0 shared by node k and node i
27
Elmores Constant
DI is the Elmore time constant
28
Actel routing model. (a) A four-antifuse connection. L0 is an output stub, L1 and L3 are horizontal
tracks, L2 is a long vertical track (LVT), and L4 is an output stub. (b) An RC-tree model. Each antifuse is
modeled by a resistance and each interconnect segment is modeled by a capacitance.
29
D4
If all antifuse resistances are approximately equal and much larger than
the resistance of the wire segment, then: R1 = R2 = R3 = R4, and:
= 4RC4 + 3RC3 + 2RC2 + RC1
A connection with two antifuses will generate a 3RC time constant, a
connection with three antifuses will generate a 6RC time constant, and a
connection with 4 antifuses will generate a 10RC time constant
D4
30
31
32
33
34
36
37
38
40
41
Routing Connections
A connection is realized in an FPGA interconnect fabric by
enabling routing switches in the connection and switch boxes.
42
Routing Connections
The parasitic contribution from the switches (realized as pass
transistors) and the metal trace constitute the total resistive and
capacitive components of the interconnect.
43
Routing Connections
Based on the switch and wire parasitic, interconnect routes can be
modeled as RC networks.
For typical parasitic values, Rwire is so negligible when compared to
Ron, and thus can be dropped.
44
Routing Connections
The capacitance of a route segment is given by:
Cseg = 10Cdiff + Cwire
This can be used to model the energy of the route as
Energy (E) 50Cdiff + 4Cwire
The delay of the route can be compute as follows:
Delay (D) 10RonCwire + 125RonCdiff
This modeling of the interconnect can be used to compute the cost
of the architectural modifications.
45
The Xilinx EPLD UIM (Universal Interconnection Module). (a) A simplified block diagram of the UIM.
The UIM bus width, n, varies from 68 (XC7236) to 198 (XC73108). (b) The UIM is actually a large
46
programmable AND array. (c) The parasitic capacitance of the EPROM cell.
A simplified block diagram of the Altera MAX interconnect scheme. (a) The PIA (Programmable
Interconnect Array) is deterministic - delay is independent of the path length. (b) Each LAB (Logic
47
Array Block) contains a programmable AND array. (c) Interconnect timing within a LAB is also fixed.
The Altera MAX 9000 interconnect scheme. (a) A 4 X 5 array of Logic Array Blocks (LABs),
the same size as the EMP9400 chip. (b) A simplified block diagram of the interconnect
architecture showing the connection of the FastTrack buses to a LAB.
48
Altera Flex
Altera Flex devices also use FastTracks connected by switches, but
the wiring is more dense (as are the logic modules)
The Altera FLEX interconnect scheme. (a) The row and column FastTrack
interconnect. (b) A simplified diagram of the interconnect architecture showing
the connections between the FastTrack buses and a LAB.
49
Summary
Antifuse FPGA architectures are dense and regular
SRAM architectures contain nested structures of
interconnect resources
Complex PLD architectures use long interconnect
lines but achieve deterministic routing
50