XC4000 Series Field Programmable Gate Arrays
4-32
September 18, 1996 (Version 1.04)
Programmable Interconnect
All internal connections are composed of metal segments
with programmable switching points and switching matrices
to implement the desired routing. A structured, hierarchical
matrix of routing resources is provided to achieve efficient
automated routing.
The XC4000E and XC4000EX share a basic interconnect
structure. XC4000EX devices, however, have additional
routing not available in the XC4000E. The extra routing
resources allow high utilization in high-capacity devices.
All XC4000EX-specific routing resources are clearly identi-
fied throughout this section. Any resources not identified
as XC4000EX-specific are present in all XC4000-Series
devices.
This section describes the varied routing resources avail-
able in XC4000-Series devices. The implementation soft-
ware automatically assigns the appropriate resources
based on the density and timing requirements of the
design.
Interconnect Overview
There are several types of interconnect.
•
CLB routing is associated with each row and column of
the CLB array.
•
IOB routing forms a ring (called a VersaRing) around
the outside of the CLB array. It connects the I/O with
the internal logic blocks.
•
Global routing consists of dedicated networks primarily
designed to distribute clocks throughout the device with
minimum delay and skew. Global routing can also be
used for other high-fanout signals.
Five interconnect types are distinguished by the relative
length of their segments: single-length lines, double-length
lines, quad and octal lines (XC4000EX only), and longlines.
In the XC4000EX, direct connects allow fast data flow
between adjacent CLBs, and between IOBs and CLBs.
Extra routing is included in the IOB pad ring. The
XC4000EX also includes a ring of octal interconnect lines
near the IOBs to improve pin-swapping and routing to
locked pins.
XC4000E devices include two types of global buffers, while
XC4000EX devices have three different types. These glo-
bal buffers have different properties, and are intended for
different purposes. They are discussed in detail later in this
section.
CLB Routing Connections
A high-level diagram of the routing resources associated
with one CLB is shown in
. The shaded arrows
represent routing present only in XC4000EX devices.
shows how much routing of each type is available
in XC4000E and XC4000EX CLB arrays. Clearly, very
large designs, or designs with a great deal of interconnect,
will route more easily in the XC4000EX. Smaller XC4000E
designs, typically requiring significantly less interconnect,
do not require the additional routing.
is a detailed diagram of both the
XC4000E and the XC4000EX CLB, with associated rout-
ing. The shaded square is the programmable switch
matrix, present in both the XC4000E and the XC4000EX.
The L-shaped shaded area is present only in XC4000EX
devices. As shown in the figure, the XC4000EX block is
essentially an XC4000E block with additional routing.
CLB inputs and outputs are distributed on all four sides,
providing maximum routing flexibility. In general, the entire
architecture is symmetrical and regular. It is well suited to
established placement and routing algorithms. Inputs, out-
puts, and function generators can freely swap positions
within a CLB to avoid routing congestion during the place-
ment and routing operation.
Table 16: Routing per CLB in XC4000-Series Devices
XC4000E
XC4000EX
Vertical Horizontal Vertical Horizontal
Singles
8
8
8
8
Doubles
4
4
4
4
Quads
0
0
12
12
Longlines
6
6
10
6
Direct
Connects
0
0
2
2
Globals
4
0
8
0
Carry Logic
2
0
1
0
Total
24
18
45
32