XC4000 Series Arrays
XC4000 Series Arrays
Max.
Max Logic Max. RAM Typical Total Number Decode
Gates Bits Gate Range CLB Logic of Inputs Max.
Device (No RAM) (No Logic) (Logic and RAM)* Matrix Blocks Flip-Flops per side User I/O
XC4003E 3,000 3,200 2,000 - 5,000 10 x 10 100 360 30 80
XC4005E/L 5,000 6,272 3,000 - 9,000 14 x 14 196 616 42 112
XC4006E 6,000 8,192 4,000 - 12,000 16 x 16 256 768 48 128
XC4008E 8,000 10,368 6,000 - 15,000 18 x 18 324 936 54 144
XC4010E/L 10,000 12,800 7,000 - 20,000 20 x 20 400 1,120 60 160
XC4013E/L 13,000 18,432 10,000 - 30,000 24 x 24 576 1,536 72 192
XC4020E 20,000 25,088 13,000 - 40,000 28 x 28 784 2,016 84 224
XC4025E 25,000 32,768 15,000 - 45,000 32 x 32 1,024 2,560 96 256
XC4028EX/XL 28,000 32,768 18,000 - 50,000 32 x 32 1,024 2,560 96 256
XC4036EX/XL 36,000 41,472 22,000 - 65,000 36 x 36 1,296 3,168 108 288
XC4044EX/XL 44,000 51,200 27,000 - 80,000 40 x 40 1,600 3,840 120 320
XC4052XL 52,000 61,952 33,000 - 100,000 44 x 44 1,936 4,576 132 352
XC4062XL 62,000 73,728 40,000 - 130,000 48 x 48 2,304 5,376 144 384
Larger Devices Available in the First Half of 1997
* Max values of Typical Gate Range include 20-30% of CLBs used as RAM.
Note: Throughout the functional descriptions in this docu- can be written into the FPGA from an external device
ment, references to the XC4000E device family include the (slave, peripheral and Express modes).
XC4000L, and references to the XC4000EX device family XC4000-Series FPGAs are supported by powerful and
include the XC4000XL, unless explicitly stated otherwise. sophisticated software, covering every aspect of design
References to the XC4000 Series include the XC4000E, from schematic or behavioral entry, floorplanning, simula-
XC4000EX, XC4000L, and XC4000XL families. All func- tion, automatic block placement and routing of intercon-
tionality in low-voltage families is the same as in the corre- nects, to the creation, downloading, and readback of the
sponding 5-Volt family, except where numerical references configuration bit stream.
are made to timing, power, or current-sinking capability.
Because Xilinx FPGAs can be reprogrammed an unlimited
Description number of times, they can be used in innovative designs
where hardware is changed dynamically, or where hard-
XC4000-Series devices are implemented with a regular,
ware must be adapted to different user applications.
flexible, programmable architecture of Configurable Logic
FPGAs are ideal for shortening design and development
Blocks (CLBs), interconnected by a powerful hierarchy of
cycles, and also offer a cost-effective solution for produc-
versatile routing resources, and surrounded by a perimeter
tion rates well beyond 5,000 systems per month. For lowest
of programmable Input/Output Blocks (IOBs). They have
high-volume unit cost, a design can first be implemented in
generous routing resources to accommodate the most
the XC4000E or XC4000EX, then migrated to one of Xilinx’
complex interconnect patterns.
compatible HardWire mask-programmed devices.
The devices are customized by loading configuration data
Table 2 shows density and performance for a few common
into internal memory cells. The FPGA can either actively
circuit functions that can be implemented in XC4000-Series
read its configuration data from an external serial or byte-
devices.
parallel PROM (master modes), or the configuration data
1. When three separate functions are generated, one of the function outputs must be captured in a flip-flop internal to the CLB. Only two
unregistered function generator outputs are available from the CLB.
4
C1 • • • C4
H1 D IN /H 2 SR/H 0 EC
G4 S/R Bypass
CONTROL
DIN YQ
G3 LOGIC SD
F' D
FUNCTION G' Q
G'
OF
H'
G2 G1-G4
G1
LOGIC
EC
FUNCTION RD
G'
OF H' H'
F', G', 1
AND Y
H1
F4 Bypass
S/R
CONTROL
DIN XQ
F3 LOGIC SD
F'
FUNCTION F' D Q
G'
OF
H'
F2 F1-F4
F1
EC
RD
K
(CLOCK) 1
H'
X
F'
Multiplexer Controlled
by Configuration Program
X6692
Figure 1: Simplified Block Diagram of XC4000-Series CLB (RAM and Carry Logic functions not shown)
Global Set/Reset When the memory function is enabled, the four inputs are:
Each flip-flop is configured as either globally set or reset in Using FPGA Flip-Flops and Latches
the same way that the local set/reset (SR) is specified. The abundance of flip-flops in the XC4000 Series invites
Therefore, if a flip-flop is set by SR, it is also set by GSR. pipelined designs. This is a powerful way of increasing per-
Similarly, a reset flip-flop is reset by both SR and GSR. formance by breaking the function into smaller subfunc-
GSR can be driven from any user-programmable pin as a tions and executing them in parallel, passing on the results
global reset input. To use this global net, place an input through pipeline flip-flops. This method should be seriously
pad and input buffer in the schematic or HDL code, driving considered wherever throughput is more important than
the GSR pin of the STARTUP symbol. (See Figure 2.) A latency.
specific pin location can be assigned to this input using a To include a CLB flip-flop, place the appropriate library
LOC attribute or property, just as with any other user-pro- symbol. For example, FDCE is a D-type flip-flop with clock
grammable pad. An inverter can optionally be inserted enable and asynchronous clear. The corresponding latch
after the input buffer to invert the sense of the Global Set/ symbol (for the XC4000EX only) is called LDCE.
Reset signal.
In XC4000-Series devices, the flip flops can be used as
Alternatively, GSR can be driven from any internal node. registers or shift registers without blocking the function gen-
erators from performing a different, perhaps unrelated task.
This ability increases the functional capacity of the devices.
STARTUP
The CLB setup time is specified between the function gen-
PAD GSR Q2 erator inputs and the clock input K. Therefore, the specified
GTS Q3
IBUF CLB flip-flop setup time includes the delay through the
Q1Q4 function generator.
CLK DONEIN
X5260
Figure 2: Schematic Symbols for Global Set/Reset
WE D1 D0 EC
DIN
WRITE 16-LATCH
DECODER ARRAY MUX G'
4 4
G1 • • • G4
1 of 16
LATCH
ENABLE
READ
WRITE PULSE ADDRESS
DIN
WRITE 16-LATCH
DECODER ARRAY MUX F'
4 4
F1 • • • F4
1 of 16
LATCH
ENABLE
K
(CLOCK) READ
WRITE PULSE ADDRESS
X6752
4
C1 • • • C4
EC
WE D1/A4 D0 EC
DIN
WRITE 16-LATCH
DECODER ARRAY MUX G'
G1 • • • G4 4 4
F1 • • • F4 1 of 16
LATCH
ENABLE
READ
WRITE PULSE ADDRESS
H'
DIN
WRITE 16-LATCH
DECODER ARRAY MUX F'
4 4
1 of 16
LATCH
ENABLE
K
(CLOCK) READ
WRITE PULSE ADDRESS
X6754
G Function Generator
WE
D D Q Registered SPO
A[3:0] AR[3:0]
AW[3:0]
F Function Generator
WCLK
X6755
4
C1 • • • C4
WE D1 D0 EC
DIN
WRITE 16-LATCH
DECODER ARRAY MUX G'
4
1 of 16
LATCH
ENABLE
READ
4 WRITE PULSE ADDRESS
G1 • • • G4
DIN
WRITE 16-LATCH
DECODER ARRAY MUX F'
4 4
F1 • • • F4 1 of 16
LATCH
ENABLE
K
READ
(CLOCK) WRITE PULSE ADDRESS
X6748
Figure 7: 16x1 Edge-Triggered Dual-Port RAM
T WC
ADDRESS
TAS T WP T AH
WRITE ENABLE
T DS T DH
DATA IN REQUIRED
X6462
4
C1 • • • C4
WE D1 D0 EC
DIN
Enable
WRITE 16-LATCH
DECODER ARRAY MUX G'
4
G1 • • • G4
1 of 16
4
READ ADDRESS
DIN
Enable
WRITE 16-LATCH
DECODER ARRAY MUX F'
4
F1 • • • F4
1 of 16
4
X6746 READ ADDRESS
4
C1 • • • C4
WE D1/A4 D0 EC
DIN
Enable
WRITE 16-LATCH
DECODER ARRAY MUX G'
G1 • • • G4 4
F1 • • • F4 1 of 16
4
READ ADDRESS
H'
DIN
Enable
WRITE 16-LATCH
DECODER ARRAY MUX F'
4
1 of 16
4
READ ADDRESS X6749
Figure 10: 32x1 Level-Sensitive Single-Port RAM (F and G addresses are identical)
C OUT C IN DOWN D IN
CARRY
LOGIC
Y
G H
CARRY
G4
G3
G
G2 DIN
H S/R
G D Q YQ
F
G1
EC
COUT0
H1 H
DIN
F H S/R
CARRY G D Q XQ
F
EC
F4
F3
F
F2
H
F1
X
F
X6699
Figure 13: Fast Carry Logic in XC4000E CLB (shaded area not present in XC4000EX)
M
G1
M
1
0 1 G2
I 0
G4
G3
C OUT0
TO
M FUNCTION
GENERATORS
F2
M
1
0 1
F1
M 0
F4
M 0 1
M 3
F3 1 M
M 0
M 1 0
C IN UP
X2000
C IN DOWN
COUT
G1 M
M
1
0 1
G2
M 0
G4
G3
COUT0
TO
M FUNCTION
F2 GENERATORS
M
1
0 1
F1
M 0
F4
M 0 1
M 3
F3 1
M 0 M
C IN UP
M X6701
Figure 15: Detail of XC4000EX Dedicated Carry Logic (shaded areas show differences from XC4000E carry logic)
Input/Output Blocks (IOBs) Table 10: Supported Sources for XC4000-Series Device
Inputs
User-configurable input/output blocks (IOBs) provide the
interface between external package pins and the internal XC4000-Series Inputs
logic. Each IOB controls one package pin and can be con- 3.3 V, 5 V, 5 V,
figured for input, output, or bidirectional signals. Source
CMOS TTL CMOS
Figure 16 shows a simplified block diagram of the Any device, Vcc = 3.3 V,
√ √
XC4000E IOB. A more complete diagram of the XC4000E CMOS outputs
Unreli-
IOB can be found in Figure 42 on page 51, in the “Boundary XC4000-Series, Vcc = 5 V,
√ √ able
Scan” section. Figure 42 includes the boundary scan logic TTL outputs
Data
in the IOB. Any device, Vcc = 5 V,
√ √
Figure 17 shows a simplified block diagram of the TTL outputs (Voh ≤ 3.7 V)
XC4000EX IOB. The XC4000EX IOB contains some spe- Any device, Vcc = 5 V,
Danger1 √ √
cial features not included in the XC4000E IOB. These fea- CMOS outputs
tures are highlighted in Figure 17, and discussed
1. Acceptable for XC4000XL if the designated 5-Volt
throughout this section. When XC4000EX special features supply pad (VTT) is tied to 5V.
are discussed, they are clearly identified in the text. Any
feature not so identified is present in both XC4000E and Registered Inputs
XC4000EX devices. The I1 and I2 signals that exit the block can each carry
either the direct or registered input signal.
IOB Input Signals
The input and output storage elements in each IOB have a
Two paths, labeled I1 and I2 in Figure 16 and Figure 17,
common clock enable input, which, through configuration,
bring input signals into the array. Inputs also connect to an
can be activated individually for the input or output flip-flop,
input register that can be programmed as either an edge-
or both. This clock enable operates exactly like the EC pin
triggered flip-flop or a level-sensitive latch.
on the XC4000-Series CLB. It cannot be inverted within
The choice is made by placing the appropriate library sym- the IOB.
bol. For example, IFD is the basic input flip-flop (rising
The storage element behavior is shown in Table 11.
edge triggered), and ILD is the basic input latch (transpar-
ent-High). Variations with inverted clocks are available, and Table 11: Input Register Functionality
some combinations of latches and flip-flops can be imple- (active rising edge is shown)
mented in a single IOB, as described in the XACT Libraries
Clock
Guide. Mode Clock D Q
Enable
The inputs can be globally configured for either TTL (1.2V, Power-Up or X X X SR
default) or CMOS thresholds, using an option in the Make- GSR
Bits program. There is a slight hysteresis of about 300mV.
Flip-Flop __/ 1* D D
The output levels are also configurable; the two global
0 X X Q
adjustments of input threshold and output level are inde-
pendent. Latch 1 1* X Q
0 1* D D
Inputs of the low-voltage devices must be configured as
CMOS at all times. They can be driven by the outputs of all Both X 0 X Q
5-Volt XC4000-Series devices, provided that the 5-Volt out- Legend:
X Don’t care
puts are in TTL mode. They can also be driven by any TTL __/ Rising edge
output that does not exceed 3.7 V. 5-Volt XC3000-family SR Set or Reset value. Reset is default.
device outputs, for example, are TTL-compatible, but since 0* Input is Low or unconnected (default value)
the output voltage can exceed 3.7 V, they cannot be used to 1* Input is High or unconnected (default value)
drive an XC4000L or XC4000XL input.
The inputs of XC4000-Series 5-Volt devices can be driven
by the outputs of any 3.3-Volt device, if the 5-Volt inputs are
in TTL mode.
Supported sources for XC4000-Series device inputs are
shown in Table 10.
T
Flip-Flop
D Q
Out Output
CE Buffer
Pad
Output
Clock
I1
Flip- Input
Flop/ Buffer
Latch
I2
Q D
Delay
Clock
Enable CE
Input
Clock
X6704
T
Output MUX
0
1
Flip-Flop
Out D Q
Output
CE Buffer
Pad
I1
Flip-Flop/
Latch
I2 Delay Delay
Q D
Q D
Latch
Clock Enable CE Fast G
Capture
Latch
Input Clock
X5984
Figure 17: Simplified Block Diagram of XC4000EX IOB (shaded areas indicate differences from XC4000E)
Optional Delay Guarantees Zero Hold Time Additional Input Latch for Fast Capture (XC4000EX
only)
The data input to the register can optionally be delayed by
several nanoseconds. With the delay enabled, the setup The XC4000EX IOB has an additional optional latch on the
time of the input flip-flop is increased so that normal clock input. This latch, as shown in Figure 17, is clocked by the
routing does not result in a positive hold-time requirement. output clock — the clock used for the output flip-flop —
A positive hold time requirement can lead to unreliable, rather than the input clock. Therefore, two different clocks
temperature- or processing-dependent operation. can be used to clock the two input storage elements. This
additional latch allows the very fast capture of input data,
The input flip-flop setup time is defined between the data
which is then synchronized to the internal clock by the IOB
measured at the device I/O pin and the clock input at the
flip-flop or latch.
IOB (not at the clock pin). Any routing delay from the
device clock pin to the clock input of the IOB must, there- To use this Fast Capture technique, drive the output clock
fore, be subtracted from this setup time to arrive at the real pin (the Fast Capture latching signal) from the output of one
setup time requirement relative to the device pins. A short of the Global Early or FastCLK buffers supplied in the
specified setup time might, therefore, result in a negative XC4000EX. The second storage element should be
setup time at the device pins, i.e., a positive hold-time clocked by a Global Low-Skew buffer, to synchronize the
requirement. incoming data to the internal logic. (See Figure 18.) These
special buffers are described in “Global Nets and Buffers
When a delay is inserted on the data line, more clock delay
(XC4000EX only)” on page 43.
can be tolerated without causing a positive hold-time
requirement. Sufficient delay eliminates the possibility of a The Fast Capture latch is designed primarily for use with a
data hold-time requirement at the external pin. The maxi- Global Early buffer. For Fast Capture, a single clock signal
mum delay is therefore inserted as the default. is routed through both a Global Early buffer and a Global
Low-Skew buffer. (The two buffers share an input pad.)
The XC4000E IOB has a one-tap delay element: either the
The Fast Capture latch is clocked by the Global Early
delay is inserted (default), or it is not. The delay guarantees
buffer, and the standard IOB flip-flop or latch is clocked by
a zero hold time with respect to clocks routed through any
the Global Low-Skew buffer. This mode is the safest way to
of the XC4000E global clock buffers. (See “Global Nets
use the Fast Capture latch, because the clock buffers on
and Buffers (XC4000E only)” on page 41 for a description
both storage elements are driven by the same pad. There
of the global clock buffers in the XC4000E.) For a shorter
is no external skew between clock pads to create potential
input register setup time, with non-zero hold, attach a
problems.
NODELAY attribute or property to the flip-flop.
Alternatively, a FastCLK buffer can be used to minimize the
The XC4000EX IOB has a two-tap delay element, with
setup time of device inputs, if a positive hold time is accept-
choices of a full delay, a partial delay, or no delay. The
able. Use the FastCLK buffer to clock the Fast Capture
attributes or properties used to select the desired delay are
latch, and a slower clock buffer to clock the standard IOB
shown in Table 12. The choices are no added attribute,
flip-flop or latch. Either the Global Early buffer or the Global
MEDDELAY, and NODELAY. The default setting, with no
Low-Skew buffer can be used for the second storage ele-
added attribute, ensures no hold time with respect to any of
the XC4000EX clock buffers, including the Global Low-
ILFFX
Skew buffers. MEDDELAY ensures no hold time with
respect to the Global Early and FastCLK buffers. Inputs IPAD D Q to internal
logic
with NODELAY may have a positive hold time with respect
to all clock buffers, including the FastCLK buffers. For a GF
BUFGE
description of each of these buffers, see “Global Nets and CE
Buffers (XC4000EX only)” on page 43. IPAD
C
BUFGLS
Table 12: XC4000EX IOB Input Delay Element
pete with other routing resources; it uses a dedicated distri- Figure 20: Fast Pin-to-Pin Path in XC4000E
bution network.
X6599
are sourced by the same sources as the Global Low-Skew
Figure 21: Output AND and MUX Symbols in buffers, but are separately buffered. They have fewer loads
XC4000EX IOB and therefore less delay. The early clock can drive either
the IOB output clock or the IOB input clock, or both. The
The user can specify that the IOB function generator be early clock allows fast capture of input data, and fast clock-
used, by placing special library symbols beginning with the to-output on output data. The Global Early buffers that
letter “O.” For example, a 2-input AND-gate in the IOB func- drive these clocks are described in “Global Nets and Buff-
tion generator is called OAND2. Use the symbol input pin ers (XC4000EX only)” on page 43.
labelled “F” for the signal on the critical path. This signal is
Fast Clock for IOBs (XC4000EX only)
placed on the OK pin — the IOB input with the shortest
delay to the function generator. Two examples are shown in Very fast clocks driven by FastCLK buffers are also avail-
Figure 21. able for IOBs. These clocks are sourced by semi-dedicated
pads—the pads can be used as general I/O if not used to
Other IOB Options drive FastCLK buffers. There are two FastCLK buffers on
There are a number of other programmable options in the the left edge, and two on the right edge of the device. They
XC4000-Series IOB. provide the fastest method of reaching the IOB clock pins.
The FastCLK buffer can drive either the IOB output clock or
Pull-up and Pull-down Resistors the IOB input clock, or both. These buffers allow the fastest
Programmable pull-up and pull-down resistors are useful possible setup times and clock-to-output times. The Fast-
for tying unused pins to Vcc or Ground to minimize power CLK buffers are described in “Global Nets and Buffers
consumption and reduce noise sensitivity. The configurable (XC4000EX only)” on page 43.
pull-up resistor is a p-channel transistor that pulls to Vcc. Global Set/Reset
The configurable pull-down resistor is an n-channel transis-
tor that pulls to Ground. As with the CLB registers, the Global Set/Reset signal
(GSR) can be used to set or clear the input and output reg-
The value of these resistors is 50 kΩ − 100 kΩ. This high isters, depending on the value of the INIT attribute or prop-
value makes them unsuitable as wired-AND pull-up resis- erty. The two flip-flops can be individually configured to set
tors. or clear on reset and after configuration. Other than the
The pull-up resistors for most user-programmable IOBs are global GSR net, no user-controlled set/reset signal is avail-
active during the configuration process. See Table 24 on able to the I/O flip-flops. The choice of set or clear applies
page 78 for a list of pins with pull-ups active before and dur- to both the initial state of the flip-flop and the response to
ing configuration. the Global Set/Reset pulse. See “Global Set/Reset” on
page 13 for a description of how to use GSR.
After configuration, voltage levels of unused pads, bonded
or unbonded, must be valid logic levels, to reduce noise JTAG Support
sensitivity and avoid excess current. Therefore, by default,
unused pads are configured with the internal pull-up resis- Embedded logic attached to the IOBs contains test struc-
tor active. Alternatively, they can be individually configured tures compatible with IEEE Standard 1149.1 for boundary
with the pull-down resistor, or as a driven output, or to be scan testing, permitting easy chip and board-level testing.
driven by an external source. To activate the internal pull- More information is provided in “Boundary Scan” on
up, attach the PULLUP library component to the net page 50.
attached to the pad. To activate the internal pull-down,
Three-State Buffers
attach the PULLDOWN library component to the net
attached to the pad. A pair of 3-state buffers is associated with each CLB in the
array. (See Figure 27 on page 34.) These 3-state buffers
Independent Clocks can be used to drive signals onto the nearest horizontal
Separate clock signals are provided for the input and output longlines above and below the CLB. They can therefore be
flip-flops. The clock can be independently inverted for each used to implement multiplexed or bidirectional buses on the
flip-flop within the IOB, generating either falling-edge or ris- horizontal longlines, saving logic resources. Programma-
ing-edge triggered flip-flops. The clock inputs for each IOB ble pull-up resistors attached to these longlines help to
implement a wide wired-AND function.
The buffer enable is an active-High 3-state (i.e. an active- WAND4, WAND8, and WAND16 are also available. See
Low enable), as shown in Table 15. the XACT Libraries Guide for further information.
Another 3-state buffer with similar access is located near The T pin is internally tied to the I pin. Connect the input to
each I/O block along the right and left edges of the array. the I pin and the output to the O pin. Connect the outputs of
(See Figure 33 on page 39.) all the WAND1s together and attach a PULLUP symbol.
The horizontal longlines driven by the 3-state buffers have a Wired OR-AND
weak keeper at each end. This circuit prevents undefined
floating levels. However, it is overridden by any driver, even The buffer can be configured as a Wired OR-AND. A High
a pull-up resistor. level on either input turns off the output. Use the
WOR2AND library symbol, which is essentially an open-
Special longlines running along the perimeter of the array drain 2-input OR gate. The two input pins are functionally
can be used to wire-AND signals coming from nearby IOBs equivalent. Attach the two inputs to the I0 and I1 pins and
or from internal longlines. These longlines form the wide tie the output to the O pin. Tie the outputs of all the
edge decoders discussed in “Wide Edge Decoders” on WOR2ANDs together and attach a PULLUP symbol.
page 31.
Three-State Buffer Examples
Three-State Buffer Modes
Figure 22 shows how to use the 3-state buffers to imple-
The 3-state buffers can be configured in three modes: ment a wired-AND function. When all the buffer inputs are
• Standard 3-state buffer High, the pull-up resistor(s) provide the High output.
• Wired-AND with input on the I pin Figure 23 shows how to use the 3-state buffers to imple-
• Wired OR-AND ment a multiplexer. The selection is accomplished by the
buffer 3-state signal.
Standard 3-State Buffer
Pay particular attention to the polarity of the T pin when
All three pins are used. Place the library element BUFT.
using these buffers in a design. Active-High 3-state (T) is
Connect the input to the I pin and the output to the O pin.
identical to an active-Low output enable, as shown in
The T pin is an active-High 3-state (i.e. an active-Low
Table 15.
enable). Tie the T pin to Ground to implement a standard
buffer. Table 15: Three-State Buffer Functionality
P
Z=D ●D ● (D +D ) ● (D +D ) U U
A B C D E F
L P
L
D D
C E
D D D D
A B D F
WAND1 WAND1
W0R2AND W0R2AND
X6465
Z = DA • A + D B • B + D C • C + D N • N
~100 kΩ
DA DB DC DN
BUFT BUFT BUFT BUFT
A B C N
X6466
"Weak Keeper"
ments., as shown in Figure 24. Each decoder generates a Figure 24: XC4000-Series Edge Decoding Example
High output (resistor pull-up) when the AND condition of
the selected inputs, or their complements, is true. This is
analogous to a product term in typical PAL devices.
On-Chip Oscillator
Each of these wired-AND gates is capable of accepting up XC4000-Series devices include an internal oscillator. This
to 42 inputs on the XC4005E and 72 on the XC4013E. oscillator is used to clock the power-on time-out, for config-
There are up to 96 inputs for each decoder on the uration memory clearing, and as the source of CCLK in
XC4028EX and 132 on the XC4052EX. The decoders may Master configuration modes. The oscillator runs at a nom-
also be split in two when a larger number of narrower inal 8 MHz frequency that varies with process, Vcc, and
decoders are required, for a maximum of 32 decoders per temperature. The output frequency falls between 4 and 10
device. MHz. (The oscillator operates more slowly at lower volt-
ages. The output frequency may be reduced by as much
The decoder outputs can drive CLB inputs, so they can be as 10% for low-voltage devices.)
combined with other logic to form a PAL-like AND/OR struc-
ture. The decoder outputs can also be routed directly to the The oscillator output is optionally available after configura-
chip outputs. For fastest speed, the output should be on tion. Any two of four resynchronized taps of a built-in
the same chip edge as the decoder. Very large PALs can divider are also available. These taps are at the fourth,
be emulated by ORing the decoder outputs in a CLB. This ninth, fourteenth and nineteenth bits of the divider. There-
decoding feature covers what has long been considered a fore, if the primary oscillator output is running at the nomi-
weakness of older FPGAs. Users often resorted to exter- nal 8 MHz, the user has access to an 8 MHz clock, plus any
nal PALs for simple but fast decoding functions. Now, the two of 500 kHz, 16kHz, 490Hz and 15Hz (up to 10% lower
dedicated decoders in the XC4000-Series device can for low-voltage devices). These frequencies can vary by as
implement these functions fast and efficiently. much as -50% or +25%.
To use the wide edge decoders, place one or more of the These signals can be accessed by placing the OSC4
WAND library symbols (WAND1, WAND4, WAND8, library element in a schematic or in HDL code (see
WAND16). Attach a DECODE attribute or property to each Figure 25).
WAND symbol. Tie the outputs together and attach a PUL- The oscillator is automatically disabled after configuration if
LUP symbol. Location attributes or properties such as L the OSC4 symbol is not used in the design.
(left edge) or TR (right half of top edge) should also be used
to ensure the correct placement of the decoder inputs.
OSC4
F8M
F500K
F16K
F490
F15
X6703
Single
Double
Long
Direct
CLB Connect
Long
x5994
Figure 26: High-Level Routing Diagram of XC4000-Series CLB (shaded arrows indicate XC4000EX only)
QUAD
DOUBLE
SINGLE
DOUBLE
LONG
F4 C4 G4
YQ
Y DIRECT
G1
C1
F1
CLB G3
C3 FEEDBACK
F3
K
X
XQ
F2 C2 G2
LONG
LO G LO D D LO G D
LO O O LO IR
Q N N U SI U N BA EC FE
U G BA G BL N BL G
AD L E G E L T ED
LE BA
C
K
XC4000EX only
e
es
e
bl
bl
gl
ou
ou bility and offer fast routing between adjacent blocks. There
in
D
S
D
are eight vertical and eight horizontal single-length lines
associated with each CLB. These lines connect the switch-
Double ing matrices that are located in every row and a column of
CLBs.
Singles Single-length lines are connected by way of the program-
Six Pass Transistors mable switch matrices, as shown in Figure 29. Routing
Per Switch Matrix
Interconnect Point connectivity is shown in Figure 27.
Double
Single-length lines incur a delay whenever they go through
X6600 a switching matrix. Therefore, they are not suitable for rout-
Figure 28: Programmable Switch Matrix (PSM) ing signals for long distances. They are normally used to
conduct signals within a localized area and to provide the
Programmable Switch Matrices branching for nets with fanout greater than one.
The horizontal and vertical single- and double-length lines Double-Length Lines
intersect at a box called a programmable switch matrix The double-length lines consist of a grid of metal segments,
(PSM). Each switch matrix consists of programmable pass each twice as long as the single-length lines: they run past
transistors used to establish connections between the lines two CLBs before entering a switch matrix. Double-length
(see Figure 28). lines are grouped in pairs with the switch matrices stag-
For example, a single-length signal entering on the right gered, so that each line goes through a switch matrix at
side of the switch matrix can be routed to a single-length every other row or column of CLBs (see Figure 29).
line on the top, left, or bottom sides, or any combination There are four vertical and four horizontal double-length
thereof, if multiple branches are required. Similarly, a dou- lines associated with each CLB. These lines provide faster
ble-length signal can be routed to a double-length line on signal routing over intermediate distances, while retaining
any or all of the other three edges of the programmable routing flexibility. Double-length lines are connected by way
switch matrix. of the programmable switch matrices. Routing connectivity
is shown in Figure 27.
Doubles
Doubles
PSM PSM
X6601
Figure 29: Single- and Double-Length Lines, with Programmable Switch Matrices (PSMs)
Quad Lines (XC4000EX only) Each buffered switch matrix contains one buffer and six
pass transistors. It resembles the programmable switch
XC4000EX devices also include twelve vertical and twelve
matrix shown in Figure 28, with the addition of a program-
horizontal quad lines per CLB row and column. Quad lines
mable buffer. There can be up to two independent inputs
are four times as long as the single-length lines. They are
and up to two independent outputs. Only one of the inde-
interconnected via buffered switch matrices (shown as dia-
pendent inputs can be buffered.
monds in Figure 27 on page 34). Quad lines run past four
CLBs before entering a buffered switch matrix. They are The place and route software automatically uses the timing
grouped in fours, with the buffered switch matrices stag- requirements of the design to determine whether or not a
gered, so that each line goes through a buffered switch quad line signal should be buffered. A heavily loaded sig-
matrix at every fourth CLB location in that row or column. nal is typically buffered, while a lightly loaded one is not.
(See Figure 30.) One scenario is to alternate buffers and pass transistors.
This allows both vertical and horizontal quad lines to be
The buffered switch matrixes have four pins, one on each
buffered at alternating buffered switch matrices.
edge. All of the pins are bidirectional. Any pin can drive
any or all of the other pins. Due to the buffered switch matrices, quad lines are very
fast. They provide the fastest available method of routing
heavily loaded signals for long distances across the device.
X6602
Figure 30: Quad Lines (XC4000EX only)
IOB
IOB
IOB
IOB
IOB
IOB
vents undefined floating levels. However, it is overridden by
any driver, even a pull-up resistor.
Each XC4000E longline has a programmable splitter switch
~ ~
~
IOB IOB
at its center, as does each XC4000EX longline driven by CLB CLB CLB
~
TBUFs. This switch can separate the line into two indepen- IOB IOB
dent routing channels, each running half the width or height ~ ~
~ ~ ~ ~
~ ~ ~ ~
~ ~
of the array.
IOB ~ ~
~ IOB
Each XC4000EX longline not driven by TBUFs has a buff- CLB CLB CLB
~
ered programmable splitter switch at the 1/4, 1/2, and 3/4 IOB IOB
points of the array. Due to the buffering, XC4000EX lon-
gline performance does not deteriorate with the larger array
sizes. If the longline is split, the resulting partial longlines
IOB
IOB
IOB
IOB
IOB
IOB
are independent. X6603
Routing connectivity of the longlines is shown in Figure 27 Figure 31: XC4000EX Direct Interconnect
on page 34.
WED
IOB
Quad
WED
Single
Double
INTERCONNECT
Long
Direct
Connect
Long
IOB
WED
T
O
DOUBLE
C
SINGLE L
B
DOUBLE
LONG
A
R
R
IOB
A
DECODER
I1 I2
IK
OK
T
CE
O
DIRECT
Y
DECODER
IOB
T O
OK CE
DECODER
IK
I1 I2
LONG
G
LO
ED EC
LO
D
N
G OD
D
O
BA
G
E
O
C
U
TA
L
BL
L
E
E
XC4000EX only
Figure 33: Detail of Programmable Interconnect Associated with XC4000-Series IOB (Left Edge)
Octal I/O Routing (XC4000EX only) most recently buffered before the turn has the farthest dis-
tance to travel before the next buffer, as shown in
Between the XC4000EX CLB array and the pad ring, eight
Figure 34.
interconnect tracks provide for versatility in pin assignment
and fixed pinout flexibility. (See Figure 34.) IOB inputs and outputs interface with the octal lines via the
single-length interconnect lines. Single-length lines are
These routing tracks are called octals, because they can be
also used for communication between the octals and dou-
broken every eight CLBs (sixteen IOBs) by a programma-
ble-length lines, quads, and longlines within the CLB array.
ble buffer that also functions as a splitter switch. The buff-
ers are staggered, so each line goes through a buffer at Segmentation into buffered octals was found to be optimal
every eighth CLB location around the device edge. for distributing signals over long distances around the
device.
The octal lines bend around the corners of the device. The
lines cross at the corners in such a way that the segment
IOB IOB
IOB IOB
IOB IOB
IOB IOB
X6607
locals
locals
locals
locals
BUFGS BUFGP
PGCK1 SGCK4
SGCK1 PGCK4
4
4
BUFGP BUFGS
4
4 locals locals
CLB CLB
IOB IOB
locals locals
X4 Any BUFGS X4 X4 Any BUFGS X4
locals locals
One BUFGP One BUFGP
IOB per Global Line per Global Line IOB
locals CLB CLB locals
BUFGS BUFGP
PGCK2 SGCK3
SGCK2 PGCK3
locals
locals
locals
locals
BUFGP BUFGS
BUFGE BUFGE
locals
locals
locals
locals
X4 BUFGLS 8 X8 X8 8 BUFGLS X8
FCLK1 BUFGLS 8 locals locals 8 BUFGLS FCLK4
locals locals
4 8
8 8
locals locals
IOB CLB CLOCKS CLB CLOCKS IOB
IOB CLOCKS (PER COLUMN) (PER COLUMN) CLOCKS IOB
8 8
locals 4 8 locals
BUFGLS 8 locals locals 8 BUFGLS
FCLK2 BUFGLS 8 8 BUFGLS FCLK3
X4 X8 X8 X8
locals
locals
locals
BUFGE BUFGE
8 7 8 7
IOB IOB IOB IOB
1 6 1 6
I I I I
O CLB CLB O O CLB CLB O
B B B B
I I I I
O CLB CLB O
O CLB CLB O
B B
B B
2 5
2 5 IOB IOB
IOB IOB
3 4
3 4 X6751
X6753
Figure 37: Any BUFGLS (GCK1 - GCK8) Can Figure 38: Left and Right BUFGEs Can Drive Any or
Drive Any or All Clock Inputs on the Device All Clock Inputs in Same Quadrant or Edge (GCK1 is
shown. GCK2, GCK5 and GCK6 are similar.)
Global Early Buffers
The left-side Global Early buffers can each drive two of the
Each corner of the XC4000EX device has two Global Early
four vertical lines accessing the IOBs on the entire left edge
buffers. The primary purpose of the Global Early buffers is
of the device. The right-side Global Early buffers can each
to provide an earlier clock access than the potentially
drive two of the eight vertical lines accessing the IOBs on
heavily-loaded Global Low-Skew buffers. A clock source
the entire right edge of the device. (See Figure 38.)
applied to both buffers will result in the Global Early clock
edge occurring several nanoseconds earlier than the Glo- Each left and right Global Early buffer can also drive half of
bal Low-Skew buffer clock edge, due to the lighter loading. the IOBs along either the top or bottom edge of the device,
using a dedicated line that can only be accessed through
Global Early buffers also facilitate the fast capture of device
the Global Early buffers.
inputs, using the Fast Capture latches described in “IOB
Input Signals” on page 24. For Fast Capture, take a single The top and bottom Global Early buffers can drive half of
clock signal, and route it through both a Global Early buffer the IOBs along either the left or right edge of the device, as
and a Global Low-Skew buffer. (The two buffers share an shown in Figure 39. They can only access the top and bot-
input pad.) Use the Global Early buffer to clock the Fast tom IOBs via the CLB global lines.
Capture latch, and the Global Low-Skew buffer to clock the
normal input flip-flop or latch, as shown in Figure 18 on 8 7
page 26. IOB IOB
1 6
The Global Early buffers can also be used to provide a fast
Clock-to-Out on device output pins. However, an early I I
clock in the output flip-flop IOB must be taken into consid- O CLB CLB O
eration when calculating the internal clock speed for the B B
design.
The Global Early buffers at the left and right edges of the
chip have slightly different capabilities than the ones at the I I
top and bottom. Refer to Figure 38, Figure 39, and O CLB CLB O
Figure 36 on page 42 while reading the following explana- B B
tion.
2 5
Each Global Early buffer can access the eight vertical Glo- IOB IOB
bal lines for all CLBs in the quadrant. Therefore, only one- 3 4
X6747
fourth of the CLB clock pins can be accessed. This restric-
tion is in large part responsible for the faster speed of the Figure 39: Top and Bottom BUFGEs Can Drive Any
buffers, relative to the Global Low-Skew buffers. or All Clock Inputs in Same Quadrant (GCK8 is
shown. GCK3, GCK4 and GCK7 are similar.)
FastCLK Buffers
IOB IOB
The fastest way to bring a clock into the XC4000EX device X6745
is through a FastCLK buffer. Two FastCLK buffers are Figure 40: Each BUFFCLK Can Drive Any or
present on the left edge, and two on the right edge, of the All Clock Inputs in Same Half-Edge (FCLK1 is shown.
XC4000EX die. There are no FastCLK buffers on the top or FCLK2, FCLK3 and FCLK4 are similar.)
bottom edges.
One purpose of the FastCLK buffers is to create a very fast The FastCLK buffers are limited to accessing IOBs on one-
pin-to-pin path by using the IOB 2-input function generator half of the die edge only, as shown in Figure 40 and
in conjunction with the FastCLK. Drive the F input of the Figure 36 on page 42. They can each drive two of the four
IOB function generator with the FastCLK buffer output, as vertical lines accessing the IOBs on the left edge of the
described in “IOB Output Signals” on page 27. device, or two of the eight vertical lines accessing the IOBs
on the right edge of the device. They can only access the
Alternatively, a FastCLK buffer can be used to minimize the CLB array through single- and double-length lines.
setup time of device inputs, if a positive hold time is accept-
able. Use the FastCLK buffer to clock the Fast Capture The FastCLK buffers must be driven by the semi-dedicated
latch, and a slower clock buffer to clock the standard IOB IOBs. They are not accessible from internal nets. Other
flip-flop or latch. Either the Global Early buffer or the Global than the FastCLK feature, these IOBs are identical to all
Low-Skew buffer can be used for the second storage ele- other IOBs.
ment, but whichever one is used should be the same clock To use a FastCLK buffer, place a BUFFCLK element in a
as the related internal logic. Since the FastCLK pads are schematic or in HDL code. If desired, attach a LOC
different from the Global Early and Global Low-Skew pads, attribute or property to direct placement to the designated
care must be taken to ensure that skew external to the location. For example, attach a LOC=LB attribute or prop-
device does not create internal timing difficulties. erty to direct that a BUFFCLK be placed on the left edge of
The FastCLK buffers can also be used to provide a fast the device at the bottom, or use LOC=L to indicate either of
Clock-to-Out on device output pins. However, a fast clock the buffers on the left edge.
in the output flip-flop IOB must be taken into consideration The input to the BUFFCLK symbol must be driven by a
when calculating the internal clock speed for the design. input pad symbol, such as IPAD, or by an input flip-flop or
latch, such as INFF, ILD, ILFFX, or ILFLX.
Ground and
Vcc Ring for
I/O Drivers
Vcc Vcc
Logic
Power Grid
GND X5422
I/O I/O
During After
Pin Name Config. Config. Pin Description
Permanently Dedicated Pins
Eight or more (depending on package) connections to the nominal +5 V supply voltage
VCC I I (+3.3 V for low-voltage devices). All must be connected, and each must be decoupled
with a 0.01 - 0.1 µF capacitor to Ground.
Eight or more (depending on package type) connections to Ground. All must be con-
GND I I
nected.
During configuration, Configuration Clock (CCLK) is an output in Master modes or Asyn-
chronous Peripheral mode, but is an input in Slave mode, Synchronous Peripheral
mode, and Express mode. After configuration, CCLK has a weak pull-up resistor and
CCLK I or O I can be selected as the Readback Clock. There is no CCLK High time restriction on
XC4000-Series devices, except during Readback. See “Violating the Maximum High
and Low Time Specification for the Readback Clock” on page 65 for an explanation of
this exception.
DONE is a bidirectional signal with an optional internal pull-up resistor. As an output, it
indicates the completion of the configuration process. As an input, a Low level on
DONE can be configured to delay the global logic initialization and the enabling of out-
DONE I/O O
puts.
The optional pull-up resistor is selected as an option in MakeBits, the XACTstep pro-
gram that creates the configuration bitstream. The resistor is included by default.
PROGRAM is an active Low input that forces the FPGA to clear its configuration mem-
ory. It is used to initiate a configuration cycle. When PROGRAM goes High, the FPGA
finishes the current clear cycle and executes another complete clear cycle, before it
PROGRAM I I
goes into a WAIT state and releases INIT.
The PROGRAM pin has a permanent weak pull-up, so it need not be externally pulled
up to Vcc.
User I/O Pins That Can Have Special Functions
During Peripheral mode configuration, this pin indicates when it is appropriate to write
another byte of data into the FPGA. The same status is also available on D7 in Asyn-
RDY/BUSY O I/O chronous Peripheral mode, if a read operation is performed when the device is selected.
After configuration, RDY/BUSY is a user-programmable I/O pin.
RDY/BUSY is pulled High with a high-impedance pull-up prior to INIT going High.
During Master Parallel configuration, each change on the A0-A17 outputs (A0 - A21 for
XC4000EX) is preceded by a rising edge on RCLK, a redundant output signal. RCLK
RCLK O I/O
is useful for clocked PROMs. It is rarely used during configuration. After configuration,
RCLK is a user-programmable I/O pin.
As Mode inputs, these pins are sampled after INIT goes High to determine the configu-
ration mode to be used. After configuration, M0 and M2 can be used as inputs, and M1
can be used as a 3-state output. These three pins have no associated input or output
registers.
I (M0), During configuration, these pins have weak pull-up resistors. For the most popular con-
M0, M1, M2 I O (M1), figuration mode, Slave Serial, the mode pins can thus be left unconnected. The three
I (M2) mode inputs can be individually configured with or without weak pull-up or pull-down re-
sistors. A pull-down resistor value of 4.7 kΩ is recommended.
These pins can only be used as inputs or outputs when called out by special schematic
definitions. To use these pins, place the library components MD0, MD1, and MD2 in-
stead of the usual pad symbols. Input or output buffers must still be used.
I/O I/O
During After
Pin Name Config. Config. Pin Description
If boundary scan is used, this pin is the Test Data Output. If boundary scan is not used,
this pin is a 3-state output without a register, after configuration is completed.
TDO O O This pin can be user output only when called out by special schematic definitions. To
use this pin, place the library component TDO instead of the usual pad symbol. An out-
put buffer must still be used.
If boundary scan is used, these pins are Test Data In, Test Clock, and Test Mode Select
inputs respectively. They come directly from the pads, bypassing the IOBs. These pins
can also be used as inputs to the CLB logic after configuration is completed.
I/O
TDI, TCK, If the BSCAN symbol is not placed in the design, all boundary scan functions are inhib-
I or I
TMS ited once configuration is completed, and these pins become user-programmable I/O.
(JTAG)
In this case, they must be called out by special schematic definitions. To use these pins,
place the library components TDI, TCK, and TMS instead of the usual pad symbols. In-
put or output buffers must still be used.
High During Configuration (HDC) is driven High until the I/O go active. It is available as
HDC O I/O a control output indicating that configuration is not yet completed. After configuration,
HDC is a user-programmable I/O pin.
Low During Configuration (LDC) is driven Low until the I/O go active. It is available as a
LDC O I/O control output indicating that configuration is not yet completed. After configuration,
LDC is a user-programmable I/O pin.
Before and during configuration, INIT is a bidirectional signal. A 1 kΩ - 10 kΩ external
pull-up resistor is recommended.
As an active-Low open-drain output, INIT is held Low during the power stabilization and
internal clearing of the configuration memory. As an active-Low input, it can be used
INIT I/O I/O
to hold the FPGA in the internal WAIT state before the start of configuration. Master
mode devices stay in a WAIT state an additional 30 to 300 µs after INIT has gone High.
During configuration, a Low on this output indicates that a configuration data error has
occurred. After the I/O go active, INIT is a user-programmable I/O pin.
Four Primary Global inputs each drive a dedicated internal global net with short delay
PGCK1 - and minimal skew. If not used to drive a global buffer, any of these pins is a user-pro-
PGCK4 Weak grammable I/O.
I or I/O
(XC4000E Pull-up The PGCK1-PGCK4 pins drive the four Primary Global Buffers. Any input pad symbol
only) connected directly to the input of a BUFGP symbol is automatically placed on one of
these pins.
Four Secondary Global inputs each drive a dedicated internal global net with short delay
SGCK1 - and minimal skew. These internal global nets can also be driven from internal logic. If
SGCK4 Weak not used to drive a global net, any of these pins is a user-programmable I/O pin.
I or I/O
(XC4000E Pull-up The SGCK1-SGCK4 pins provide the shortest path to the four Secondary Global Buff-
only) ers. Any input pad symbol connected directly to the input of a BUFGS symbol is auto-
matically placed on one of these pins.
Eight inputs can each drive a Global Low-Skew buffer. In addition, each can drive a Glo-
GCK1 - bal Early buffer. Each pair of global buffers can also be driven from internal logic, but
GCK8 Weak must share an input signal. If not used to drive a global buffer, any of these pins is a
I or I/O
(XC4000EX Pull-up user-programmable I/O.
only) Any input pad symbol connected directly to the input of a BUFGLS or BUFGE symbol
is automatically placed on one of these pins.
Four FCLK inputs can each drive a FastCLK buffer. The FastCLK buffers cannot be
FCLK1 -
driven from internal logic. If not used to drive a global buffer, any of these pins is a user-
FCLK4 Weak
I or I/O programmable I/O.
(XC4000EX Pull-up
Any input pad symbol connected directly to the input of a BUFFCLK symbol is automat-
only)
ically placed on one of these pins.
I/O I/O
During After
Pin Name Config. Config. Pin Description
These four inputs are used in Asynchronous Peripheral mode. The chip is selected
when CS0 is Low and CS1 is High. While the chip is selected, a Low on Write Strobe
(WS) loads the data present on the D0 - D7 inputs into the internal data buffer. A Low
CS0, CS1, on Read Strobe (RS) changes D7 into a status output — High if Ready, Low if Busy —
I I/O
WS, RS and drives D0 - D6 High.
In Express mode, CS1 is used as a serial-enable signal for daisy-chaining.
WS and RS should be mutually exclusive, but if both are Low simultaneously, the Write
Strobe overrides. After configuration, these are user-programmable I/O pins.
During Master Parallel configuration, these 18 output pins address the configuration
A0 - A17 O I/O
EPROM. After configuration, they are user-programmable I/O pins.
A18 - A21 During Master Parallel configuration with an XC4000EX master, these 4 output pins add
(XC4000EX O I/O 4 more bits to address the configuration EPROM. After configuration, they are user-pro-
only) grammable I/O pins.
During Master Parallel and Peripheral configuration, these eight input pins receive con-
D0 - D7 I I/O
figuration data. After configuration, they are user-programmable I/O pins.
During Slave Serial or Master Serial configuration, DIN is the serial configuration data
DIN I I/O input receiving data on the rising edge of CCLK. During Parallel configuration, DIN is
the D0 input. After configuration, DIN is a user-programmable I/O pin.
During configuration in any mode but Express mode, DOUT is the serial configuration
data output that can drive the DIN of daisy-chained slave FPGAs. DOUT data changes
on the falling edge of CCLK, one-and-a-half CCLK periods after it was received at the
DOUT O I/O DIN input.
In Express mode, DOUT is the status output that can drive the CS1 of daisy-chained
FPGAs, to enable and disable downstream devices.
After configuration, DOUT is a user-programmable I/O pin.
Unrestricted User-Programmable I/O Pins
These pins can be configured to be input and/or output after configuration is completed.
Weak
I/O I/O Before configuration is completed, these pins have an internal high-value pull-up resis-
Pull-up
tor (50 kΩ - 100 kΩ) that defines the logic level as High.
TS/OE
3-State TS
TS - capture VCC
Boundary
Scan
TS - update
OUTPUT
INVERT
OUTPUT
M
sd
D Q
Ouput Data O
EC
M INVERT
O - capture
Clock Enable Boundary Q - capture
Scan
O - update
I - capture
Boundary
Scan
Input Data 1 I1
I - update
M M
sd
Q M M
D
EC Input Data 2 I2
DELAY QL
M INVERT
M
FLIP-FLOP/LATCH
Input Clock IK
rd
M S/R
INPUT
GLOBAL
S/R X5792
Figure 42: Block Diagram of XC4000E IOB with Boundary Scan (some details not shown).
XC4000EX Boundary Scan Logic is Identical.
DATA IN
1 sd
D Q D Q
0
LE
1
IOB.Q 0
IOB.T 0
1 sd
D Q D Q 1
0
IOB IOB sd
1
D Q D Q
0
IOB IOB
LE
IOB IOB
1
IOB.I
0
IOB IOB
1 sd
IOB IOB D Q D Q
0
LE
IOB IOB
1
0
IOB IOB IOB.Q
BYPASS
REGISTER
IOB.T 0
M TDO
1 sd
INSTRUCTION REGISTER U 1
TDI D Q D Q
X 0
LE
M TDI
U INSTRUCTION REGISTER
TDO X
BYPASS 1 sd
REGISTER D Q D Q
IOB IOB 0
LE
IOB IOB
1
IOB IOB IOB.I
0
IOB IOB 1 sd
D Q D Q
0
IOB IOB
LE
IOB IOB 0
1
IOB IOB IOB.O
X1523
Optional To User
Logic
Bit 0 ( TDO end) TDO.T
Bit 1 TDO.O IBUF
Bit 2
Top-edge IOBs (Right to Left) BSCAN
TDI TDI TDO TDO
Left-edge IOBs (Top to Bottom) TMS TMS DRCK
X6075
Figure 44: Boundary Scan Bit Sequence
mode runs at eight times the data rate of the other six Data Stream Format
modes. A length count is not used in Express mode.
The data stream (“bitstream”) format is identical for all con-
Express mode must be specified as an option to the Make- figuration modes, with the exception of Express mode. In
Bits program, which generates the bitstream. The Express Express mode, the device becomes active when DONE
mode bitstream is not compatible with the other six config- goes High, therefore no length count is required. Addition-
uration modes. ally, CRC error checking is not supported in Express mode.
Multiple slave devices with identical configurations can be The data stream formats are shown in Table 21. Express
wired with parallel D0-D7 inputs. In this way, multiple mode data is shown with D0 at the left and D7 at the right.
devices can be configured simultaneously. For all other modes, bit-serial data is read from left to right,
and byte-parallel data is effectively assembled from this
Pseudo Daisy Chain
serial bitstream, with the first bit in each byte assigned to
Multiple devices with different configurations can be con- D0.
nected together in a pseudo daisy chain, provided that all of
The configuration data stream begins with a string of eight
the devices are in Express mode. A single combined bit-
ones, a preamble code, followed by a 24-bit length count
stream is used to configure the chain of Express mode
and a separator field of ones (or 24 fill bits, in Express
devices, but the input data bus must drive D0-D7 of each
mode). This header is followed by the actual configuration
device. Tie High the CS1 pin of the first device to be con-
data in frames. The length and number of frames depends
figured. Connect the DOUT pin of each FPGA to the CS1
on the device type (see Table 22 and Table 23). Each
pin of the next device in the chain. The D0-D7 inputs are
frame begins with a start field and ends with an error check.
wired to each device in parallel. The DONE pins are wired
In all modes except Express mode, a postamble code is
together, with one or more internal DONE pull-ups acti-
required to signal the end of data for a single device. In all
vated. Alternatively, a 4.7 kΩ external resistor can be used,
cases, additional start-up bytes of data are required to pro-
if desired. (See Figure 63 on page 76.)
vide four clocks for the startup sequence at the end of con-
The requirement that all DONE pins in a daisy chain be figuration. Long daisy chains require additional startup
wired together applies only to Express mode, and only if all bytes to shift the last data through the chain. All startup
devices in the chain are to become active simultaneously. bytes are don’t-cares; these bytes are not included in bit-
All XC4000EX devices in Express mode are synchronized streams created by the Xilinx software.
to the DONE pin. User I/O for each device become active
Table 21: XC4000-Series Data Stream Formats
after the DONE pin for that device goes High. (The exact
timing is determined by MakeBits options.) Since the Express Mode All Other
DONE pin is open-drain and does not drive a High value, Data Type
(D0-D7) Modes (D0...)
tying the DONE pins of all devices together prevents all Fill Byte 11111111b 11111111b
devices in the chain from going High until the last device in
Preamble Code 11110010b 0010b
the chain has completed its configuration cycle.
Length Count FFFFFFh COUNT(23:0)
Because only XC4000EX and XC5200 devices support Fill Bits — 1111b
Express mode, only these devices can be used to form an
Start Field 11010010b 0b
Express mode daisy chain. XC5200 devices used in a
combined daisy chain with XC4000EX devices should be Data Frame DATA(n-1:0) DATA(n-1:0)
configured as synchronized to DONE (MakeBits option CRC or Constant 11010010b xxxx (CRC)
CCLK_SYNC or UCLK_SYNC), and their DONE pins wired Field Check or 0110b
together with those of the XC4000EX devices. Extend Write Cycle FFFFFFFFFFh —
Postamble — 01111111b
Setting CCLK Frequency Start-Up Bytes xxxxxxxxh xxh
For Master modes, CCLK can be generated in either of two
frequencies. In the default slow mode, the frequency LEGEND:
ranges from 0.5 MHz to 1.25 MHz (up to 10% lower for low- Unshaded Once per bitstream
voltage devices). In fast CCLK mode, the frequency ranges
Light Once per data frame
from 4 MHz to 10 MHz (up to 10% lower for low-voltage
devices). The frequency is selected by an option when run- Dark Once per device
ning MakeBits, the bitstream generation software tool. If an
XC4000-Series Master is driving an XC3000- or XC2000-
family slave, slow CCLK mode must be used. Slow mode is
the default.
The MakeBits software creates the configuration bitstream. performs an identical calculation on the bitstream and com-
In Express mode, only non-CRC error checking is sup- pares the result with the received checksum.
ported. In all other modes, MakeBits allows a selection of Each data frame of the configuration bitstream has four
CRC or non-CRC error checking. The non-CRC error error bits at the end, as shown in Table 21. If a frame data
checking tests for a designated end-of-frame field for each error is detected during the loading of the FPGA, the con-
frame. For CRC error checking, MakeBits calculates a run- figuration process with a potentially corrupted bitstream is
ning CRC and inserts a unique four-bit partial check at the terminated. The FPGA pulls the INIT pin Low and goes into
end of each frame. The 11-bit CRC check of the last frame a Wait state.
of an FPGA includes the last seven data bits.
During Readback, 11 bits of the 16-bit checksum are added
Detection of an error results in the suspension of data load- to the end of the Readback data stream. The checksum is
ing and the pulling down of the INIT pin. In Master modes, computed using the CRC-16 CCITT polynomial, as shown
CCLK and address signals continue to operate externally. in Figure 47. The checksum consists of the 11 most signif-
The user must detect INIT and initialize a new configuration icant bits of the 16-bit code. A change in the checksum
by pulsing the PROGRAM pin Low or cycling Vcc. indicates a change in the Readback bitstream. A compari-
son to a previous checksum is meaningful only if the read-
Cyclic Redundancy Check (CRC) for
back data is independent of the current device state. CLB
Configuration and Readback outputs should not be included (Read Capture MakeBits
The Cyclic Redundancy Check is a method of error detec- option not used), and if RAM is present, the RAM content
tion in data transmission applications. Generally, the trans- must be unchanged.
mitting system performs a calculation on the serial Statistically, one error out of 2048 might go undetected.
bitstream. The result of this calculation is tagged onto the
data stream as additional check bits. The receiving system
X2 X15
X16
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
SERIAL DATA IN
1 1 1 1 1 0 15 14 13 12 11 10 9 8 7 6 5
START BIT
X1789
Readback Data Stream
Figure 47: Circuit for Generating CRC-16
fore, devices with different time delays can easily be mixed Sample
and matched in a daisy chain. Mode Lines
Master CCLK
This delay is applied only on power-up. It is not applied Goes Active
when reconfiguring an FPGA by pulsing the PROGRAM pin
Initialization Pass
Configuration
During initialization and configuration, user pins HDC, LDC, Data to DOUT
INIT and DONE provide status outputs for the system inter-
face. The outputs LDC, INIT and DONE are held Low and CCLK
HDC is held High starting at the initial application of power. Count Equals No
Length
The open drain INIT pin is released after the final initializa- Count
Yes
tion pass through the frame addresses. There is a deliber-
ate delay of 50 to 250 µs (up to 10% longer for low-voltage
Start-Up
devices) before a Master-mode device recognizes an inac- Sequence
tive INIT. Two internal clocks after the INIT pin is recognized F
I/O Active
as High, the FPGA samples the three mode lines to deter- Operational
EXTEST
mine the configuration mode. The appropriate interface SAMPLE PRELOAD
lines become active and the configuration preamble and BYPASS
USER 1 If Boundary Scan
data can be loaded. USER 2 is Selected
CONFIGURE
READBACK
X6076
Configuration to make sure that any slaves in the optional daisy chain
have seen that INIT is High.
The 0010 preamble code, included for all modes except
Express mode, indicates that the following 24 bits repre- Start-Up
sent the length count. The length count is the total number
Start-up is the transition from the configuration process to
of configuration clocks needed to load the complete config-
the intended user operation. This transition involves a
uration data. (Four additional configuration clocks are
change from one clock source to another, and a change
required to complete the configuration process, as dis-
from interfacing parallel or serial configuration data where
cussed below.) After the preamble and the length count
most outputs are 3-stated, to normal operation with I/O pins
have been passed through to all devices in the daisy chain,
active in the user-system. Start-up must make sure that the
DOUT is held High to prevent frame start bits from reaching
user-logic ‘wakes up’ gracefully, that the outputs become
any daisy-chained devices. In Express mode, the length
active without causing contention with the configuration sig-
count bits are ignored, and DOUT is held Low, to disable
nals, and that the internal flip-flops are released from the
the next device in the pseudo daisy chain.
global Reset or Set at the right time.
A specific configuration bit, early in the first frame of a mas-
Figure 49 describes start-up timing for the three Xilinx fam-
ter device, controls the configuration-clock rate and can
ilies in detail. Express mode configuration always uses
increase it by a factor of eight. Therefore, if a fast configu-
either CCLK_SYNC or UCLK_SYNC timing, the other con-
ration clock is selected by the bitstream, the slower clock
figuration modes can use any of the four timing sequences.
rate is used until this configuration bit is detected.
To access the internal start-up signals, place the STARTUP
Each frame has a start field followed by the frame-configu-
library symbol.
ration data bits and a frame error field. If a frame data error
is detected, the FPGA halts loading, and signals the error Start-up Timing
by pulling the open-drain INIT pin Low. After all configura-
tion frames have been loaded into an FPGA, DOUT again Different FPGA families have different start-up sequences.
follows the input data so that the remaining data is passed The XC2000 family goes through a fixed sequence. DONE
on to the next device. In Express mode, when the first goes High and the internal global Reset is de-activated one
device is fully programmed, DOUT goes High to enable the CCLK period after the I/O become active.
next device in the chain.
The XC3000A family offers some flexibility. DONE can be
Delaying Configuration After Power-Up programmed to go High one CCLK period before or after
the I/O become active. Independent of DONE, the internal
There are two methods of delaying configuration after
global Reset is de-activated one CCLK period before or
power-up: put a logic Low on the PROGRAM input, or pull
after the I/O become active.
the bidirectional INIT pin Low, using an open-collector
(open-drain) driver. (See Figure 48 on page 59.) The XC4000 Series offers additional flexibility. The three
events — DONE going High, the internal Set/Reset being
A Low on the PROGRAM input is the more radical
de-activated, and the user I/O going active — can all occur
approach, and is recommended when the power-supply
in any arbitrary sequence. Each of them can occur one
rise time is excessive or poorly defined. As long as PRO-
CCLK period before or after, or simultaneous with, any of
GRAM is Low, the FPGA keeps clearing its configuration
the others. This relative timing is selected by means of soft-
memory. When PROGRAM goes High, the configuration
ware options in MakeBits, the bitstream generation soft-
memory is cleared one more time, followed by the begin-
ware.
ning of configuration, provided the INIT input is not exter-
nally held Low. Note that a Low on the PROGRAM input The default option, and the most practical one, is for DONE
automatically forces a Low on the INIT output. The to go High first, disconnecting the configuration data source
XC4000-Series PROGRAM pin has a permanent weak and avoiding any contention when the I/Os become active
pull-up. one clock later. Reset/Set is then released another clock
period later to make sure that user-operation starts from
Using an open-collector or open-drain driver to hold INIT
stable internal conditions. This is the most common
Low before the beginning of configuration causes the
sequence, shown with heavy lines in Figure 49, but the
FPGA to wait after completing the configuration memory
designer can modify it to meet particular requirements.
clear operation. When INIT is no longer held Low exter-
nally, the device determines its configuration mode by cap- Normally, the start-up sequence is controlled by the internal
turing its mode pins, and is ready to start the configuration device oscillator output (CCLK), which is asynchronous to
process. A master device waits up to an additional 250 µs the system clock.
CCLK
F
DONE
I/O
XC2000
Global Reset
F = Finished, no more
F
configuration clocks needed
DONE Daisy-chain lead device
XC3000 must have latest F
I/O
Heavy lines describe
default timing
Global Reset
F
DONE
C1 C2 C3 C4
XC4000E/EX I/O
CCLK_NOSYNC
C2 C3 C4
GSR Active
C2 C3 C4
DONE IN
F
DONE
C1, C2 or C3
XC4000E/EX I/O
CCLK_SYNC
Di Di+1
GSR Active
Di Di+1
F
DONE
C1 U2 U3 U4
I/O
XC4000E/EX
UCLK_NOSYNC U2 U3 U4
GSR Active
U2 U3 U4
DONE IN
F
DONE
C1 U2
I/O
XC4000E/EX
UCLK_SYNC Di Di+1 Di+2
GSR Active
Di Di+1 Di+2
Synchronization
Uncertainty UCLK Period
X6700
The XC4000 Series offers another start-up clocking option, Start-up from CCLK
UCLK_NOSYNC. The three events described above need If CCLK is used to drive the start-up, Q0 through Q3 pro-
not be triggered by CCLK. They can, as a configuration vide the timing. Heavy lines in Figure 49 show the default
option, be triggered by a user clock. This means that the timing, which is compatible with XC2000 and XC3000
device can wake up in synchronism with the user system. devices using early DONE and late Reset. The thin lines
When the UCLK_SYNC option is enabled, the user can indicate all other possible timing options.
externally hold the open-drain DONE output Low, and thus
stall all further progress in the start-up sequence until Start-up from a User Clock (STARTUP.CLK)
DONE is released and has gone High. This option can be When, instead of CCLK, a user-supplied start-up clock is
used to force synchronization of several FPGAs to a com- selected, Q1 is used to bridge the unknown phase relation-
mon user clock, or to guarantee that all devices are suc- ship between CCLK and the user clock. This arbitration
cessfully configured before any I/Os go active. causes an unavoidable one-cycle uncertainty in the timing
If either of these two options is selected, and no user clock of the rest of the start-up sequence.
is specified in the design or attached to the device, the chip DONE Goes High to Signal End of Configuration
could reach a point where the configuration of the device is
complete and the Done pin is asserted, but the outputs do In all configuration modes except Express mode, XC4000-
not become active. The solution is either to recreate the bit- Series devices read the expected length count from the bit-
stream specifying the start-up clock as CCLK, or to supply stream and store it in an internal register. The length count
the appropriate user clock. varies according to the number of devices and the compo-
sition of the daisy chain. Each device also counts the num-
Start-up Sequence ber of CCLKs during configuration.
The Start-up sequence begins when the configuration Two conditions have to be met in order for the DONE pin to
memory is full, and the total number of configuration clocks go high:
received since INIT went High equals the loaded value of
• the chip's internal memory must be full, and
the length count.
• the configuration length count must be met, exactly.
The next rising clock edge sets a flip-flop Q0, shown in
This is important because the counter that determines
Figure 50. Q0 is the leading bit of a 5-bit shift register. The
when the length count is met begins with the very first
outputs of this register can be programmed to control three
CCLK, not the first one after the preamble.
events.
Therefore, if a stray bit is inserted before the preamble, or
• The release of the open-drain DONE output
the data source is not ready at the time of the first CCLK,
• The change of configuration-related pins to the user
the internal counter that holds the number of CCLKs will be
function, activating all IOBs.
one ahead of the actual number of data bits read. At the
• The termination of the global Set/Reset initialization of
end of configuration, the configuration memory will be full,
all CLB and IOB storage elements.
but the number of bits in the internal counter will not match
The DONE pin can also be wire-ANDed with DONE pins of the expected length count.
other FPGAs or with other external signals, and can then
As a consequence, a Master mode device will continue to
be used as input to bit Q3 of the start-up register. This is
send out CCLKs until the internal counter turns over to
called “Start-up Timing Synchronous to Done In” and is
zero, and then reaches the correct length count a second
selected by the CCLK_SYNC and UCLK_SYNC MakeBits
time. This will take several seconds [224 ∗ CCLK period] —
options.
which is sometimes interpreted as the device not configur-
When DONE is not used as an input, the operation is called ing at all.
“Start-up Timing Not Synchronous to DONE In,” and is
If it is not possible to have the data ready at the time of the
selected by the CCLK_NOSYNC and UCLK_NOSYNC
first CCLK, the problem can be avoided by increasing the
MakeBits options.
number in the length count by the appropriate value. The
As a configuration option, the start-up control register XACT User Guide includes detailed information about man-
beyond Q0 can be clocked either by subsequent CCLK ually altering the length count.
pulses or from an on-chip user net called STARTUP.CLK.
In Express mode, there is no length count. The DONE pin
These signals can be accessed by placing the STARTUP
for each device goes High when the device has received its
library symbol.
quota of configuration data. Wiring the DONE pins of sev-
eral devices together delays start-up of all devices until all
are fully configured.
* GLOBAL SET/RESET OF
ALL CLB AND IOB FLIP-FLOP
1
0
GSR ENABLE
GSR INVERT
STARTUP.GSR CONTROLLED BY STARTUP SYMBOL
IN THE USER SCHEMATIC (SEE
STARTUP.GTS LIBRARIES GUIDE)
GTS INVERT
GTS ENABLE
0
GLOBAL 3-STATE OF ALL IOBs
1
Q S
* DONE
Q0 Q1 Q2 Q3 Q4
FULL 1
LENGTH COUNT S Q D Q D Q D Q D Q
0
K K K * K K
CLEAR MEMORY
CCLK 0
STARTUP.CLK 1
USER NET
M
CONFIGURATION BIT OPTIONS SELECTED BY USER IN "MAKEBITS"
* * X1528
Note that DONE is an open-drain output and does not go Release of Global Set/Reset After DONE Goes
High unless an internal pull-up is activated or an external High
pull-up is attached. The internal pull-up is activated as the
By default, Global Set/Reset (GSR) is released two CCLK
default by MakeBits, the bitstream generation software.
cycles after the DONE pin goes High. If CCLK is not
Release of User I/O After DONE Goes High clocked twice after DONE goes High, all flip-flops are held
in their initial set or reset state. The delay from DONE High
By default, the user I/O are released one CCLK cycle after
to GSR inactive is controlled by a MakeBits option.
the DONE pin goes High. If CCLK is not clocked after
DONE goes High, the outputs remain in their initial state — Configuration Complete After DONE Goes High
3-stated, with a 50 kΩ - 100 kΩ pull-up. The delay from
Three full CCLK cycles are required after the DONE pin
DONE High to active user I/O is controlled by a MakeBits
goes High, as shown in Figure 49 on page 61. If CCLK is
option.
not clocked three times after DONE goes High, readback
cannot be initiated and most boundary scan instructions
cannot be used.
IF UNCONNECTED,
DEFAULT IS CCLK
Read Capture
DATA
When the Read Capture option is selected, the readback
TRIG
RIP
data stream includes sampled values of CLB and IOB sig-
I
rdbk I/O I/O I/O rdclk
nals. The rising edge of RDBK.TRIG latches the inverted
values of the four CLB outputs, the IOB output flip-flops and
X1787
the input signals I1 and I2. Note that while the bits describ-
ing configuration (interconnect, function generators, and Figure 52: READBACK Symbol in Graphical Editor
RAM content) are not inverted, the CLB and IOB output sig-
nals are inverted.
When the Read Capture option is not selected, the values Violating the Maximum High and Low Time
of the capture bits reflect the configuration data originally Specification for the Readback Clock
written to those memory locations.
The readback clock has a maximum High and Low time
If the RAM capability of the CLBs is used, RAM data are specification. In some cases, this specification cannot be
available in readback, since they directly overwrite the F met. For example, if a processor is controlling readback, an
and G function-table configuration of the CLB. interrupt may force it to stop in the middle of a readback.
RDBK.TRIG is located in the lower-left corner of the device, This necessitates stopping the clock, and thus violating the
as shown in Figure 52. specification.
The specification is mandatory only on clocking data at the
Read Abort
end of a frame prior to the next start bit. The transfer mech-
When the Read Abort option is selected, a High-to-Low anism will load the data to a shift register during the last six
transition on RDBK.TRIG terminates the readback opera- clock cycles of the frame, prior to the start bit of the follow-
tion and prepares the logic to accept another trigger. ing frame. This loading process is dynamic, and is the
After an aborted readback, additional clocks (up to one source of the maximum High and Low time requirements.
readback clock per configuration frame) may be required to Therefore, the specification only applies to the six clock
re-initialize the control logic. The status of readback is indi- cycles prior to and including any start bit, including the
cated by the output control net RDBK.RIP. RDBK.RIP is clocks before the first start bit in the readback data stream.
High whenever a readback is in progress. At other times, the frame data is already in the register and
the register is not dynamic. Thus, it can be shifted out just
Clock Select like a regular shift register.
CCLK is the default clock. However, the user can insert The user must precisely calculate the location of the read-
another clock on RDBK.CLK. Readback control and data back data relative to the frame. The system must keep
are clocked on rising edges of RDBK.CLK. If readback track of the position within a data frame, and disable inter-
must be inhibited for security reasons, the readback control rupts before frame boundaries. Frame lengths and data
nets are simply not connected. formats are listed in Table 21, Table 22 and Table 23.
RDBK.CLK is located in the lower right chip corner, as
shown in Figure 52. Readback with the XChecker Cable
The XChecker Universal Download/Readback Cable and
Logic Probe uses the readback feature for bitstream verifi-
cation. It can also display selected internal signals on the
PC or workstation screen, functioning as a low-cost in-cir-
cuit emulator.
Configuration Timing In MakeBits, the user can specify Fast ConfigRate, which,
starting several bits into the first frame, increases the CCLK
The seven configuration modes are discussed in detail in frequency by a factor of eight. The value increases from
this section. Timing specifications are included. between 0.5 and 1.25 MHz, to a value between 4 and 10
MHz. (For low-voltage devices, the frequency can be up to
Master Serial Mode 10% lower.) Be sure that the serial PROM and slaves are
In Master Serial mode, the CCLK output of the lead FPGA fast enough to support this data rate. XC2000, XC3000/A,
drives a Xilinx Serial PROM that feeds the FPGA DIN input. and XC3100A devices do not support the Fast ConfigRate
Each rising edge of the CCLK output increments the Serial option.
PROM internal address counter. The next data bit is put on The SPROM CE input can be driven from either LDC or
the SPROM data output, connected to the FPGA DIN pin. DONE. Using LDC avoids potential contention on the DIN
The lead FPGA accepts this data on the subsequent rising pin, if this pin is configured as user-I/O, but LDC is then
CCLK edge. restricted to be a permanently High user output after con-
The lead FPGA then presents the preamble data—and all figuration. Using DONE can also avoid contention on DIN,
data that overflows the lead device—on its DOUT pin. provided the early DONE option is invoked.
There is an internal pipeline delay of 1.5 CCLK periods, Figure 53 shows a full master/slave system. The leftmost
which means that DOUT changes on the falling CCLK device is in Master Serial mode.
edge, and the next FPGA in the daisy chain accepts data
on the subsequent rising CCLK edge. Master Serial mode is selected by a <000> on the mode
pins (M2, M1, M0).
NOTE: NOTE:
M2, M1, M0 can be shorted M2, M1, M0 can be shorted
to Ground if not used as I/O to VCC if not used as I/O
VCC
N/C
4.7 KΩ 4.7 KΩ 4.7 KΩ 4.7 KΩ 4.7 KΩ
4.7 KΩ
M0 M1 M0 M1 M0 M1 PWRDN
M2 N/C M2 M2
PROGRAM X6608
2 TCKDS
1 TDSCK
X3223
Slave Serial Mode the next FPGA in the daisy chain accepts data on the sub-
sequent rising CCLK edge.
In Slave Serial mode, an external signal drives the CCLK
input of the FPGA. The serial configuration bitstream must Figure 55 shows a full master/slave system. An XC4000-
be available at the DIN input of the lead FPGA a short setup Series device in Slave Serial mode should be connected as
time before each rising CCLK edge. shown in the third device from the left.
The lead FPGA then presents the preamble data—and all Slave Serial mode is selected by a <111> on the mode pins
data that overflows the lead device—on its DOUT pin. (M2, M1, M0). Slave Serial is the default mode if the mode
There is an internal delay of 0.5 CCLK periods, which pins are left unconnected, as they have weak pull-up resis-
means that DOUT changes on the falling CCLK edge, and tors during configuration.
NOTE: NOTE:
M2, M1, M0 can be shorted M2, M1, M0 can be shorted
to Ground if not used as I/O to VCC if not used as I/O
VCC
N/C
4.7 KΩ 4.7 KΩ 4.7 KΩ 4.7 KΩ 4.7 KΩ
4.7 KΩ
M0 M1 M0 M1 M0 M1 PWRDN
M2 N/C M2 M2
CCLK CCLK
XC4000E/EX VCC
MASTER XC1700D +5 V XC4000E/EX, XC3100A
4.7 KΩ
SERIAL XC5200 SLAVE
CCLK CLK VPP SLAVE
DIN DATA
PROGRAM X6608
CCLK
4 TCCH 3 TCCO
DOUT
Bit n - 1 Bit n
(Output)
X5379
Master Parallel Modes The PROM address pins can be incremented or decre-
mented, depending on the mode pin settings. This option
In the two Master Parallel modes, the lead FPGA directly allows the FPGA to share the PROM with a wide variety of
addresses an industry-standard byte-wide EPROM, and microprocessors and microcontrollers. Some processors
accepts eight data bits just before incrementing or decre- must boot from the bottom of memory (all zeros) while oth-
menting the address outputs. ers must boot from the top. The FPGA is flexible and can
The eight data bits are serialized in the lead FPGA, which load its configuration bitstream from either end of the mem-
then presents the preamble data—and all data that over- ory.
flows the lead device—on its DOUT pin. There is an inter- Master Parallel Up mode is selected by a <100> on the
nal delay of 1.5 CCLK periods, after the rising CCLK edge mode pins (M2, M1, M0). The EPROM addresses start at
that accepts a byte of data (and also changes the EPROM 00000 and increment.
address) until the falling CCLK edge that makes the LSB
(D0) of this byte appear at DOUT. This means that DOUT Master Parallel Down mode is selected by a <110> on the
changes on the falling CCLK edge, and the next FPGA in mode pins. The EPROM addresses start at 3FFFF and
the daisy chain accepts data on the subsequent rising decrement.
CCLK edge.
N/C
M0 M1 M2 TO CCLK OF OPTIONAL
DAISY-CHAINED FPGAS
CCLK
DOUT
NOTE:M0 can be shorted
to Ground if not used A17 ... M0 M1 M2
as I/O.
A16 ... DIN DOUT
VCC
A15 ... EPROM
(8K x 8) CCLK
A14 ...
4.7KΩ (OR LARGER)
USER CONTROL OF HIGHER
INIT A13 ...
ORDER PROM ADDRESS BITS XC4000E/EX
CAN BE USED TO SELECT BETWEEN SLAVE
A12 A12
ALTERNATIVE CONFIGURATIONS
A11 A11
PROGRAM
A10 A10
PROGRAM A9 A9
DONE INIT
D7 A8 A8
D6 A7 A7 D7
D5 A6 A6 D6
D4 A5 A5 D5
D3 A4 A4 D4
D2 A3 A3 D3
D1 A2 A2 D2
D0 A1 A1 D1
A0 A0 D0
DONE OE
CE
DATA BUS 8
PROGRAM
X6697
1 TRAC
D0-D7
Byte
2 TDRC 3 TRCD
RCLK
(output)
7 CCLKs CCLK
CCLK
(output)
DOUT
(output) D6 D7
Byte n - 1 X6078
This timing diagram shows that the EPROM requirements are extremely relaxed. EPROM access time can be longer than
500 ns. EPROM data output has no hold-time requirements.
Figure 58: Master Parallel Mode Programming Switching Characteristics
Synchronous Peripheral Mode The lead FPGA serializes the data and presents the pre-
amble data (and all data that overflows the lead device) on
Synchronous Peripheral mode can also be considered its DOUT pin. There is an internal delay of 1.5 CCLK peri-
Slave Parallel mode. An external signal drives the CCLK ods, which means that DOUT changes on the falling CCLK
input(s) of the FPGA(s). The first byte of parallel configura- edge, and the next FPGA in the daisy chain accepts data
tion data must be available at the Data inputs of the lead on the subsequent rising CCLK edge.
FPGA a short setup time before the rising CCLK edge.
Subsequent data bytes are clocked in on every eighth con- In order to complete the serial shift operation, 10 additional
secutive rising CCLK edge. CCLK rising edges are required after the last data byte has
been loaded, plus one more CCLK cycle for each daisy-
The same CCLK edge that accepts data, also causes the chained device.
RDY/BUSY output to go High for one CCLK period. The pin
name is a misnomer. In Synchronous Peripheral mode it is Synchronous Peripheral mode is selected by a <011> on
really an ACKNOWLEDGE signal. Synchronous operation the mode pins (M2, M1, M0).
does not require this response, but it is a meaningful signal
for test purposes. Note that RDY/BUSY is pulled High with
a high-impedance pullup prior to INIT going High.
NOTE:
M2 can be shorted to Ground
if not used as I/O
M0 M1 M2 M0 M1 M2
CLOCK CCLK CCLK
OPTIONAL
8 DAISY-CHAINED
DATA BUS D0-7 FPGAs
DOUT DIN DOUT
CONTROL RDY/BUSY
SIGNALS INIT DONE INIT DONE
4.7 kΩ
X5996
INIT
BYTE BYTE
0 1
DOUT 0 1 2 3 4 5 6 7 0 1
RDY/BUSY
X6096
Asynchronous Peripheral Mode The READY/BUSY handshake can be ignored if the delay
from any one Write to the end of the next Write is guaran-
Write to FPGA teed to be longer than 10 CCLK periods.
Asynchronous Peripheral mode uses the trailing edge of Status Read
the logic AND condition of WS and CS0 being Low and RS
and CS1 being High to accept byte-wide data from a micro- The logic AND condition of the CS0, CS1and RS inputs
processor bus. In the lead FPGA, this data is loaded into a puts the device status on the Data bus.
double-buffered UART-like parallel-to-serial converter and • D7 High indicates Ready
is serially shifted into the internal logic. • D7 Low indicates Busy
The lead FPGA presents the preamble data (and all data • D0 through D6 go unconditionally High
that overflows the lead device) on its DOUT pin. The RDY/ It is mandatory that the whole start-up sequence be started
BUSY output from the lead FPGA acts as a handshake sig- and completed by one byte-wide input. Otherwise, the pins
nal to the microprocessor. RDY/BUSY goes Low when a used as Write Strobe or Chip Enable might become active
byte has been received, and goes High again when the outputs and interfere with the final byte transfer. If this
byte-wide input buffer has transferred its information into transfer does not occur, the start-up sequence is not com-
the shift register, and the buffer is ready to receive new pleted all the way to the finish (point F in Figure 49 on page
data. A new write may be started immediately, as soon as 61).
the RDY/BUSY output has gone Low, acknowledging
receipt of the previous data. Write may not be terminated In this case, at worst, the internal reset is not released. At
until RDY/BUSY is High again for one CCLK period. Note best, Readback and Boundary Scan are inhibited. The
that RDY/BUSY is pulled High with a high-impedance pull- length-count value, as generated by MakeBits and
up prior to INIT going High. MakePROM, ensures that these problems never occur.
The length of the BUSY signal depends on the activity in Although RDY/BUSY is brought out as a separate signal,
microprocessors can more easily read this information on
the UART. If the shift register was empty when the new
one of the data lines. For this purpose, D7 represents the
byte was received, the BUSY signal lasts for only two CCLK
RDY/BUSY status when RS is Low, WS is High, and the
periods. If the shift register was still full when the new byte
two chip select lines are both active.
was received, the BUSY signal can be as long as nine
CCLK periods. Asynchronous Peripheral mode is selected by a <101> on
the mode pins (M2, M1, M0).
Note that after the last byte has been entered, only seven of
its bits are shifted out. CCLK remains High with DOUT
equal to bit 6 (the next-to-last bit) of the last byte entered.
N/C
N/C N/C
4.7 kΩ
M0 M1 M2 M0 M1 M2
DATA 8
D0–7 CCLK CCLK
BUS
OPTIONAL
DAISY-CHAINED
FPGAs
DOUT DIN DOUT
VCC ADDRESS CS0
ADDRESS DECODE XC4000E/EX
...
BUS LOGIC
ASYNCHRO- XC4000E/EX
NOUS SLAVE
4.7 kΩ
PERIPHERAL
4.7 kΩ CS1
RS
WS
CONTROL RDY/BUSY
SIGNALS
INIT INIT
DONE DONE
REPROGRAM
PROGRAM PROGRAM
4.7 kΩ
X6696
CCLK
TWTRB 4
6 TBUSY
RDY/BUSY
X6097
Express Mode (XC4000EX only) nized as High, and remains Low until the device’s configu-
ration memory is full. DOUT is then pulled High to signal
Express mode is similar to Slave Serial mode, except that the next device in the chain to accept the configuration data
data is processed one byte per CCLK cycle instead of one on the D0-D7 bus.
bit per CCLK cycle. An external source is used to drive
CCLK, while byte-wide data is loaded directly into the con- The DONE pins of all devices in the chain should be tied
figuration data shift registers. A CCLK frequency of 1 MHz together, with one or more active internal pull-ups. If a
is equivalent to a 8 MHz serial rate, because eight bits of large number of devices are included in the chain, deacti-
configuration data are loaded per CCLK cycle. Express vate some of the internal pull-ups, since the Low-driving
mode does not support CRC error checking, but does sup- DONE pin of the last device in the chain must sink the cur-
port constant-field error checking. rent from all pull-ups in the chain. The DONE pull-up is
activated by default. It can be deactivated using a Make-
In Express mode, an external signal drives the CCLK input Bits option.
of the FPGA device. The first byte of parallel configuration
data must be available at the D inputs of the FPGA a short XC4000EX devices in Express mode are always synchro-
setup time before the second rising CCLK edge. Subse- nized to DONE. The device becomes active after DONE
quent data bytes are clocked in on each consecutive rising goes High. DONE is an open-drain output. With the DONE
CCLK edge. pins tied together, therefore, the external DONE signal
stays low until all devices are configured, then all devices in
Express mode is only supported by the XC4000EX and the daisy chain become active simultaneously. If the DONE
XC5200 families. It may not be used, therefore, when an pin of a device is left unconnected, the device becomes
XC4000EX or XC5200 device is daisy-chained with active as soon as that device has been configured.
devices from other Xilinx families. XC5200 devices in the chain should be configured as syn-
If the first device is configured in Express mode, additional chronized to DONE (MakeBits option CCLK_SYNC or
devices may be daisy-chained only if every device in the UCLK_SYNC), and their DONE pins wired together with
chain is also configured in Express mode. CCLK pins are those of the XC4000EX devices.
tied together and D0-D7 pins are tied together for all Express mode must be specified as an option to the Make-
devices along the chain. A status signal is passed from Bits program, which generates the bitstream. The Express
DOUT to CS1 of successive devices along the chain. The mode bitstream is not compatible with the other six config-
lead device in the chain has its CS1 input tied High (or float- uration modes.
ing, since there is an internal pullup). Frame data is
accepted only when CS1 is High and the device’s configu- Express mode is selected by a <010> on the mode pins
ration memory is not already full. The status pin DOUT is (M2, M1, M0).
pulled Low two internal-oscillator cycles after INIT is recog-
VCC
NOTE:
M2, M1, M0 can be shorted
to Ground if not used as I/O
4.7KΩ
8
To Additional
M0 M1 M2 M0 M1 M2 Optional
Daisy-Chained
Devices
CS1 DOUT CS1 DOUT
8 8
DATA BUS D0-D7 D0-D7
Optional
VCC
XC4000EX/ Daisy-Chained
XC5200 XC4000EX/
4.7KΩ
XC5200
PROGRAM PROGRAM PROGRAM
CCLK CCLK
To Additional
Optional
CCLK Daisy-Chained
Devices
X6611
CCLK
1 TIC
INIT
TCD 3
2 T
DC
DOUT
FPGA Filled
Internal INIT
RDY/BUSY
CS1 X6710
Note: If not driven by the preceding DOUT, CS1 must remain High until the device is fully configured.
Vcc T POR
RE-PROGRAM
>300 ns
PROGRAM
T PI
INIT
T ICCK TCCLK
<300 ns
M0, M1, M2
VALID DONE RESPONSE
(Required)
X1532
<300 ns
I/O
Master Modes
Description Symbol Min Max Units
M0 = High TPOR 10 40 ms
Power-On Reset M0 = Low TPOR 40 130 ms
Program Latency TPI 30 200 µs per
CLB column
CCLK (output) Delay TICCK 40 250 µs
CCLK (output) Period, slow TCCLK 640 2000 ns
CCLK (output) Period, fast TCCLK 80 250 ns
Note 1: At junction temperatures above those listed as Operating Conditions, all delay parameters increase by 0.35% per °C.
Note 2: Typical value only. Not tested or characterized.
Note 3: Input and output measurement thresholds for TTL are 1.5 V. Input and output measurement thresholds for CMOS are 2.5 V.
Note 1: With 50% of the outputs simultaneously sinking 12mA, up to a maximum of 64 pins.
Note 2: With no output current loads, no active input or Longline pull-up resistors, all package pins at Vcc or GND, and the FPGA
configured with a MakeBits Tie option.
1. Notwithstanding the definition of the above terms, all specifications are subject to change without notice.
Note 1: Maximum DC overshoot or undershoot above Vcc or below GND must be limited to either 0.5 V or 10 mA, whichever is
easier to achieve. During transitions, the device pins may undershoot to -2.0 V or overshoot to Vcc + 2.0 V, provided this
over- or undershoot lasts less than 20 ns.
Note 2: Stresses beyond those listed under Absolute Maximum Ratings may cause permanent damage to the device. These are
stress ratings only, and functional operation of the device at these or any other conditions beyond those listed under
Operating Conditions is not implied. Exposure to Absolute Maximum Ratings conditions for extended periods of time may
affect device reliability.
Finished
Internal Net
rdbk.TRIG
TRCRT TRCRT 2
1 TRTRC 2 1 TRTRC
rdclk.I
4 TRCL TRCH 5
rdbk.RIP
6
TRCRR
TRCRD
7 X1790
Speed Grade -4 -3 -2
Description Symbol Device Max Max Max Units
From pad through TPG XC4003E 7.0 4.7 4.0 ns
Primary buffer, XC4005E 7.0 4.7 4.3 ns
to any clock K XC4006E 7.5 5.3 5.2 ns
XC4008E 8.0 6.1 5.2 ns
XC4010E 11.0 6.3 5.4 ns
XC4013E 11.5 6.8 5.8 ns
XC4020E 12.0 7.0 6.4 ns
XC4025E 12.5 7.2 6.9 ns
From pad through TSG XC4003E 7.5 5.2 4.4 ns
Secondary buffer, XC4005E 7.5 5.2 4.7 ns
to any clock K XC4006E 8.0 5.8 5.6 ns
XC4008E 8.5 6.6 5.6 ns
XC4010E 11.5 6.8 5.8 ns
XC4013E 12.0 7.3 6.2 ns
XC4020E 12.5 7.5 6.7 ns
XC4025E 13.0 7.7 7.2 ns
Preliminary
Speed Grade -4 -3 -2
Description Symbol Device Max Max Max Units
Full length, both pull-ups, TWAF XC4003E 9.2 5.0 5.0 ns
inputs from IOB I-pins XC4005E 9.5 6.0 6.0 ns
XC4006E 12.0 7.0 7.0 ns
XC4008E 12.5 8.0 8.0 ns
XC4010E 15.0 9.0 9.0 ns
XC4013E 16.0 11.0 11.0 ns
XC4020E 17.0 13.9 13.9 ns
XC4025E 18.0 16.9 16.9 ns
Full length, both pull-ups, TWAFL XC4003E 12.0 7.0 7.0 ns
inputs from internal logic XC4005E 12.5 8.0 8.0 ns
XC4006E 14.0 9.0 9.0 ns
XC4008E 16.0 10.0 10.0 ns
XC4010E 18.0 11.0 11.0 ns
XC4013E 19.0 13.0 13.0 ns
XC4020E 20.0 15.5 15.5 ns
XC4025E 21.0 18.9 18.9 ns
Half length, one pull-up, TWAO XC4003E 10.5 6.0 6.0 ns
inputs from IOB I-pins XC4005E 10.5 7.0 7.0 ns
XC4006E 13.5 8.0 8.0 ns
XC4008E 14.0 9.0 9.0 ns
XC4010E 16.0 10.0 10.0 ns
XC4013E 17.0 12.0 12.0 ns
XC4020E 18.0 15.0 15.0 ns
XC4025E 19.0 17.6 17.6 ns
Half length, one pull-up, TWAOL XC4003E 12.0 8.0 8.0 ns
inputs from internal logic XC4005E 12.5 9.0 9.0 ns
XC4006E 14.0 10.0 10.0 ns
XC4008E 16.0 11.0 11.0 ns
XC4010E 18.0 12.0 12.0 ns
XC4013E 19.0 14.0 14.0 ns
XC4020E 20.0 16.8 16.8 ns
XC4025E 21.0 19.6 19.6 ns
Preliminary
Note 1: These values include a minimum load. The values reported by LCA2XNF -S include only a portion of this delay, therefore
the values cannot be directly compared. Use XDelay to determine the delay for each destination.
Note 2: These delays are specified from the decoder input to the decoder output. For pin-to-pin delays, add the input delay (TPID)
and output delay (TOPF or TOPS), as listed under “IOB Switching Characteristic Guidelines.”
Speed Grade -4 -3 -2
Description Symbol Device Max Max Max Units
TBUF driving a Horizontal Longline TIO1 XC4003E 5.0 4.2 3.4 ns
(LL): XC4005E 5.0 5.0 4.0 ns
XC4006E 6.0 5.9 4.7 ns
I going High or Low to LL going High or XC4008E 7.0 6.3 5.0 ns
Low, while T is Low. XC4010E 8.0 6.4 5.1 ns
Buffer is constantly active. XC4013E 9.0 7.2 5.7 ns
(Note1) XC4020E 10.0 8.2 7.3 ns
XC4025E 11.0 9.1 7.3 ns
I going Low to LL going from resistive TIO2 XC4003E 5.0 4.2 3.6 ns
pull-up High to active Low. XC4005E 6.0 5.3 4.5 ns
XC4006E 7.8 6.4 5.4 ns
TBUF configured as open-drain. XC4008E 8.1 6.8 5.8 ns
XC4010E 10.5 6.9 5.9 ns
(Note1) XC4013E 11.0 7.7 6.5 ns
XC4020E 12.0 8.7 8.7 ns
XC4025E 12.0 9.6 9.6 ns
T going Low to LL going from resistive TON XC4003E 5.5 4.6 3.9 ns
pull-up or floating High to active Low. XC4005E 7.0 6.0 5.7 ns
XC4006E 7.5 6.7 5.7 ns
TBUF configured as open-drain or active XC4008E 8.0 7.1 6.0 ns
buffer with I = Low. XC4010E 8.5 7.3 6.2 ns
XC4013E 8.7 7.5 7.0 ns
(Note1) XC4020E 11.0 8.4 7.1 ns
XC4025E 11.0 8.4 7.1 ns
T going High to TBUF going inactive, TOFF All devices 1.8 1.5 1.3 ns
not driving LL
T going High to LL going from Low to TPUS XC4003E 20.0 14.0 14.0 ns
High, pulled up by a single resistor. XC4005E 23.0 16.0 16.0 ns
XC4006E 25.0 18.0 18.0 ns
XC4008E 27.0 20.0 20.0 ns
(Note 2) XC4010E 29.0 22.0 22.0 ns
XC4013E 32.0 26.0 26.0 ns
XC4020E 35.0 32.5 32.5 ns
XC4025E 42.0 39.1 39.1 ns
T going High to LL going from Low to TPUF XC4003E 9.0 7.0 6.0 ns
High, pulled up by two resistors. XC4005E 10.0 8.0 6.8 ns
XC4006E 11.5 9.0 7.7 ns
XC4008E 12.5 10.0 8.5 ns
(Note1) XC4010E 13.5 11.0 9.4 ns
XC4013E 15.0 13.0 11.7 ns
XC4020E 16.0 14.8 14.8 ns
XC4025E 18.0 16.5 16.5 ns
Preliminary
Note 1: These values include a minimum load. The values reported by LCA2XNF -S include only a portion of this delay, therefore
the values cannot be directly compared. Use XDelay to determine the delay for each destination.
Note 2: This value includes a minimum load. The value reported by LCA2XNF -S is increased to allow for potentially heavy loading,
therefore the values cannot be directly compared. Use XDelay to determine the delay for each destination.
Speed Grade -4 -3 -2
Description Symbol Min Max Min Max Min Max
Combinatorial Delays
F/G inputs to X/Y outputs TILO 2.7 2.0 1.6
F/G inputs via H’ to X/Y outputs TIHO 4.7 4.3 2.7
C inputs via SR through H’ to X/Y outputs THH0O 4.1 3.3 2.4
C inputs via H’ to X/Y outputs THH1O 3.7 3.6 2.2
C inputs via DIN through H’ to X/Y outputs THH2O 4.5 3.6 2.6
CLB Fast Carry Logic
Operand inputs (F1, F2, G1, G4) to COUT TOPCY 3.2 2.6 2.1
Add/Subtract input (F3) to COUT TASCY 5.5 4.4 3.7
Initialization inputs (F1, F3) to COUT TINCY 1.7 1.7 1.4
CIN through function generators to TSUM 3.8 3.3 2.6
X/Y outputs
CIN to COUT, bypass function generators TBYP 1.0 0.7 0.6
Sequential Delays
Clock K to outputs Q TCKO 3.7 2.8 2.8
Setup Time before Clock K
F/G inputs TICK 4.0 3.0 2.4
F/G inputs via H’ TIHCK 6.1 4.6 3.9
C inputs via H0 through H’ THH0CK 4.5 3.6 3.5
C inputs via H1 through H’ THH1CK 5.0 4.1 3.3
C inputs via H2 through H’ THH2CK 4.8 3.8 3.7
C inputs via DIN TDICK 3.0 2.4 2.0
C inputs via EC TECCK 4.0 3.0 2.6
C inputs via S/R, going Low (inactive) TRCK 4.2 4.0 4.0
CIN input via F’/G’ TCCK
CIN input via F’/G’ and H’ TCHCK
Preliminary
Speed Grade -4 -3 -2
Description Symbol Min Max Min Max Min Max
Hold Time after Clock K
F/G inputs TCKI 0 0 0
F/G inputs via H’ TCKIH 0 0 0
C inputs via H0 through H’ TCKHH0 0 0 0
C inputs via H1 through H’ TCKHH1 0 0 0
C inputs via H2 through H’ TCKHH2 0 0 0
C inputs via DIN TCKDI 0 0 0
C inputs via EC TCKEC 0 0 0
C inputs via SR, going Low (inactive) TCKR 0 0 0
Clock
Clock High time TCH 4.5 4.0 4.0
Clock Low time TCL 4.5 4.0 4.0
Set/Reset Direct
Width (High) TRPW 5.5 4.0 4.0
Delay from C inputs via S/R, TRIO 6.5 4.0 4.0
going High to Q
Master Set/Reset (Note 1)
Width (High or Low) TMRW 13.0 11.5 11.5
Delay from Global Set/Reset net to Q TMRQ 23.0 18.7 17.4
Global Set/Reset inactive to first TMRK
active clock K edge
Toggle Frequency2 (MHz) (Note 2) FTOG 113 142 160
Preliminary
Note 1: Timing is based on the XC4005E. For other devices see the XACT timing calculator.
Note 2: Export Control Max. flip-flop toggle rate.
Speed Grade -4 -3 -2
Description Size Symbol Min Max Min Max Min Max
Write Operation
Address write cycle time 16x2 TWCS 15.0 14.4 11.6
(clock K period) 32x1 TWCTS 15.0 14.4 11.6
Clock K pulse width 16x2 TWPS 7.5 1 ms 7.2 1 ms 5.8 1 ms
(active edge) 32x1 TWPTS 7.5 1 ms 7.2 1 ms 5.8 1 ms
Address setup time 16x2 TASS 2.8 2.4 2.0
before clock K 32x1 TASTS 2.8 2.4 2.0
Address hold time 16x2 TAHS 0 0 0
after clock K 32x1 TAHTS 0 0 0
DIN setup time 16x2 TDSS 3.5 3.2 2.7
before clock K 32x1 TDSTS 2.5 1.9 1.7
DIN hold time 16x2 TDHS 0 0 0
after clock K 32x1 TDHTS 0 0 0
WE setup time 16x2 TWSS 2.2 2.0 1.6
before clock K 32x1 TWSTS 2.2 2.0 1.6
WE hold time 16x2 TWHS 0 0 0
after clock K 32x1 TWHTS 0 0 0
Data valid 16x2 TWOS 10.3 8.8 7.9
after clock K 32x1 TWOTS 11.6 10.3 9.3
Preliminary
Note 1: Timing for the 16x1 RAM option is identical to 16x2 RAM timing.
Note 2: Applicable Read timing specifications are identical to Level-Sensitive Read timing.
TWPS
WCLK (K)
TWSS TWHS
WE
TDSS TDHS
DATA IN
TASS TAHS
ADDRESS
TILO TILO
TWOS
X6461
Speed Grade -4 -3 -2
Description Size Symbol Min Max Min Max Min Max
Write Operation
Address write cycle time 16x1 TWCDS 15.0 14.4 11.6
(clock K period)
Clock K pulse width (active edge) 16x1 TWPDS 7.5 1 ms 7.2 1 ms 5.8 1 ms
Address setup time before clock K 16x1 TASDS 2.8 2.5 2.1
Address hold time after clock K 16x1 TAHDS 0 0 0
DIN setup time before clock K 16x1 TDSDS 2.2 1.9 1.6
DIN hold time after clock K 16x1 TDHDS 0 0 0
WE setup time before clock K 16x1 TWSDS 2.2 2.0 1.6
WE hold time after clock K 16x1 TWHDS 0.3 0 0
Data valid after clock K 16x1 TWODS 10.0 7.8 7.0
Preliminary
Note: Applicable Read timing specifications are identical to16x2 Level-Sensitive Read timing.
TWPDS
WCLK (K)
TWSDS TWHDS
WE
TDSDS TDHDS
DATA IN
TASDS TAHDS
ADDRESS
TILO TILO
TWODS
X6474
Speed Grade -4 -3 -2
Description Size Symbol Min Max Min Max Min Max
Write Operation
Address write cycle time 16x2 TWC 8.0 8.0 8.0
32x1 TWCT 8.0 8.0 8.0
Write Enable pulse width 16x2 TWP 4.0 4.0 4.0
(High) 32x1 TWPT 4.0 4.0 4.0
Address setup time 16x2 TAS 2.0 2.0 2.0
before WE 32x1 TAST 2.0 2.0 2.0
Address hold time 16x2 TAH 2.5 2.0 2.0
after end of WE 32x1 TAHT 2.0 2.0 2.0
DIN setup time 16x2 TDS 4.0 2.2 0.8
before end of WE 32x1 TDST 5.0 2.2 0.8
DIN hold time 16x2 TDH 2.0 2.0 2.0
after end of WE 32x1 TDHT 2.0 2.0 2.0
Read Operation
Address read cycle time 16x2 TRC 4.5 3.1 2.6
32x1 TRCT 6.5 5.5 3.8
Data valid after address 16x2 TILO 2.7 2.0 1.6
change (no Write Enable) 32x1 TIHO 4.7 4.3 2.7
Read Operation, Clocking
Data into Flip-Flop
Address setup time 16x2 TICK 4.0 3.0 2.4
before clock K 32x1 TIHCK 6.1 4.6 3.9
Read During Write
Data valid after WE goes 16x2 TWO 10.0 6.0 4.9
active (DIN stable 32x1 TWOT 12.0 7.3 5.6
before WE)
Data valid after DIN 16x2 TDO 9.0 6.6 5.8
(DIN changes during WE) 32x1 TDOT 11.0 7.6 6.2
Read During Write, Clock-
ing Data into Flip-Flop
WE setup time 16x2 TWCK 8.0 6.0 5.1
before clock K 32x1 TWCKT 9.6 6.8 5.8
Data setup time 16x2 TDCK 7.0 5.2 4.4
before clock K 32x1 TDCKT 8.0 6.2 5.3
Preliminary
Note: Timing for the 16x1 RAM option is identical to 16x2 RAM timing.
ADDRESS
WRITE
TAS T WP T AH
WRITE ENABLE
T DS T DH
DATA IN REQUIRED
CLOCK
T CKO
VALID VALID
XQ, YQ OUTPUTS
(OLD) (NEW)
WRITE ENABLE
T DH
DATA IN
(stable during WE)
T WO
DATA IN
(changing during WE) OLD NEW
T WO T DO
WRITE ENABLE
T WCK
T DCK
DATA IN
CLOCK
T CKO
XQ, YQ OUTPUTS
X2640
Speed Grade -4 -3 -2
Description Symbol Device
Global Clock to Output TICKOF XC4003E 12.5 10.2 8.7
(fast) using OFF XC4005E 14.0 10.7 9.1
XC4006E 14.5 10.7 9.1
XC4008E 15.0 10.8 9.2
TPG OFF
.
. (Max) XC4010E 16.0 10.9 9.3
. XC4013E 16.5 11.0 9.4
.
Global Clock-to-Output Delay
. XC4020E 17.0 11.0 10.2
X3202 XC4025E 17.0 12.6 10.8
Global Clock to Output TICKO XC4003E 16.5 14.0 11.5
(slew-limited) using OFF XC4005E 18.0 14.7 12.0
XC4006E 18.5 14.7 12.0
XC4008E 19.0 14.8 12.1
. (Max) XC4010E 20.0 14.9 12.2
TPG OFF .
. XC4013E 20.5 15.0 12.8
.
Global Clock-to-Output Delay
. XC4020E 21.0 15.1 12.8
X3202
XC4025E 21.0 15.3 13.0
Input Setup Time, using IFF TPSUF XC4003E 2.5 2.3 2.3
(no delay) XC4005E 2.0 1.2 1.2
XC4006E 1.9 1.0 1.0
D XC4008E 1.4 0.6 0.6
Input (Min) XC4010E 1.0 0.2 0.2
Set - Up IFF
& TPG XC4013E 0.5 0 0
Hold
Time XC4020E 0 0 0
X3201
XC4025E 0 0 0
Input Hold Time, using IFF TPHF XC4003E 4.0 4.0 4.0
(no delay) XC4005E 4.6 4.5 4.5
XC4006E 5.0 4.7 4.7
D XC4008E 6.0 5.1 5.1
Input (Min) XC4010E 6.0 5.5 5.5
Set - Up IFF
& TPG XC4013E 7.0 6.5 5.5
Hold
Time XC4020E 7.5 6.7 5.7
X3201
XC4025E 8.0 7.0 5.9
Input Setup Time, using IFF TPSU XC4003E 8.5 7.0 6.0
(with delay) XC4005E 8.5 7.0 6.0
XC4006E 8.5 7.0 6.0
D XC4008E 8.5 7.0 6.0
Input (Min) XC4010E 8.5 7.0 6.0
Set - Up IFF
& TPG XC4013E 8.5 7.0 6.0
Hold
Time XC4020E 9.5 7.0 6.8
X3201
XC4025E 9.5 7.6 6.8
Speed Grade -4 -3 -2
Description Symbol Device Min Max Min Max Min Max
Propagation Delays
(TTL Inputs)
Pad to I1, I2 TPID All devices 3.0 2.5 2.0
Pad to I1, I2 via transparent
latch, no delay TPLI All devices 4.8 3.6 3.6
with delay TPDLI XC4003E 10.4 9.3 6.9
XC4005E 10.8 9.6 7.4
XC4006E 10.8 10.2 8.1
XC4008E 10.8 10.6 8.2
XC4010E 11.0 10.8 8.3
XC4013E 11.4 11.2 9.8
XC4020E 13.8 12.4 11.5
XC4025E 13.8 13.7 12.4
(CMOS Inputs)
Pad to I1, I2 TPIDC All devices 5.5 4.1 3.7
Pad to I1, I2 via transparent
latch, no delay TPLIC All devices 8.8 6.8 6.2
with delay TPDLIC XC4003E 16.5 12.4 11.0
XC4005E 16.5 13.2 11.9
XC4006E 16.8 13.4 12.1
XC4008E 17.3 13.8 12.4
XC4010E 17.5 14.0 12.6
XC4013E 18.0 14.4 13.0
XC4020E 20.8 15.6 14.0
XC4025E 20.8 15.6 14.0
(TTL or CMOS)
Clock (IK) to I1, I2 (flip-flop) TIKRI All devices 5.6 2.8 2.8
Clock (IK) to I1, I2
(latch enable, active Low) TIKLI All devices 6.2 4.0 3.9
Hold Times (Note 1)
Pad to Clock (IK), no delay TIKPI All devices 0 0 0
with delay TIKPID All devices 0 0 0
Clock Enable (EC) to Clock (IK),
no delay TIKEC All devices 1.5 1.5 0.9
with delay TIKECD All devices 0 0 0
Preliminary
Note 1: Input pad setup and hold times are specified with respect to the internal clock (IK). For setup and hold times with respect to
the clock input pin, see the pin-to-pin parameters in the Guaranteed Input and Output Parameters table.
Note 2: Voltage levels of unused pads, bonded or unbonded, must be valid logic levels. Each can be configured with the internal
pull-up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
Speed Grade -4 -3 -2
Description Symbol Device Min Max Min Max Min Max
Setup Times (TTL Inputs)
Pad to Clock (IK), no delay TPICK All devices 4.0 2.6 2.0
with delay TPICKD XC4003E 10.9 8.2 6.0
XC4005E 10.9 8.7 6.1
XC4006E 10.9 9.2 6.2
XC4008E 11.1 9.6 6.3
XC4010E 11.3 9.8 6.4
XC4013E 11.8 10.2 7.9
XC4020E 14.0 11.4 9.4
XC4025E 14.0 11.4 10.0
(CMOS Inputs)
Pad to Clock (IK), no delay TPICKC All devices 6.0 3.3 2.4
with delay TPICKDC XC4003E 12.0 8.8 6.9
XC4005E 12.0 9.7 8.0
XC4006E 12.3 9.9 8.1
XC4008E 12.8 10.3 8.2
XC4010E 13.0 10.5 8.3
XC4013E 13.5 10.9 10.0
XC4020E 16.0 12.1 12.1
XC4025E 16.0 12.1 12.1
(TTL or CMOS)
Clock Enable (EC) to Clock
(IK), no delay TECIK All devices 3.5 2.5 2.1
with delay TECIKD XC4003E 10.4 8.1 4.3
XC4005E 10.4 8.5 5.6
XC4006E 10.4 9.1 6.7
XC4008E 10.4 9.5 6.9
XC4010E 10.7 9.7 7.1
XC4013E 11.1 10.1 9.0
XC4020E 14.0 11.3 10.6
XC4025E 14.0 11.3 11.0
Global Set/Reset (Note 3)
Delay from GSR net TRRI 12.0 7.8 6.8
through Q to I1, I2
GSR width TMRW 13.0 11.5 11.5
GSR inactive to first active TMRI
Clock (IK) edge
Preliminary
Note 1: Input pad setup and hold times are specified with respect to the internal clock (IK). For setup and hold times with respect to
the clock input pin, see the pin-to-pin parameters in the Guaranteed Input and Output Parameters table.
Note 2: Voltage levels of unused pads, bonded or unbonded, must be valid logic levels. Each can be configured with the internal
pull-up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
Note 3: Timing is based on the XC4005E. For other devices see the XACT timing calculator.
Speed Grade -4 -3 -2
Description Symbol Min Max Min Max Min Max
Propagation Delays
(TTL Output Levels)
Clock (OK) to Pad, fast TOKPOF 7.5 6.5 4.5
slew-rate limited TOKPOS 11.5 9.5 7.0
Output (O) to Pad, fast TOPF 8.0 5.5 4.8
slew-rate limited TOPS 12.0 8.5 7.3
3-state to Pad hi-Z TTSHZ 5.0 4.2 3.8
(slew-rate independent)
3-state to Pad active
and valid, fast TTSONF 9.7 8.1 7.3
slew-rate limited TTSONS 13.7 11.1 9.8
Propagation Delays
(CMOS Output Levels)
Clock (OK) to Pad, fast TOKPOFC 9.5 7.8 7.0
slew-rate limited TOKPOSC 13.5 11.6 10.4
Output (O) to Pad, fast TOPFC 10.0 9.7 8.7
slew-rate limited TOPSC 14.0 13.4 12.1
3-state to Pad hi-Z TTSHZC 5.2 4.3 3.9
(slew-rate independent)
3-state to Pad active
and valid, fast TTSONFC 9.1 7.6 6.8
slew-rate limited TTSONSC 13.1 11.4 10.2
Preliminary
Note 1: Output timing is measured at pin threshold, with 50pF external capacitive loads (incl. test fixture). Slew-rate limited output
rise/fall times are approximately two times longer than fast output rise/fall times. For the effect of capacitive loads on ground
bounce, see the “Additional XC4000 Data” section of the Programmable Logic Data Book.
Note 2: Voltage levels of unused pads, bonded or unbonded, must be valid logic levels. Each can be configured with the internal
pull-up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
Speed Grade -4 -3 -2
Description Symbol Min Max Min Max Min Max
Setup and Hold
Output (O) to clock (OK) TOOK 5.0 4.6 3.8
setup time
Output (O) to clock (OK) TOKO 0 0 0
hold time
Clock Enable (EC) to TECOK 4.8 3.5 2.7
clock (OK) setup
Clock Enable (EC) to TOKEC 1.2 1.2 0.5
clock (OK) hold
Clock
Clock High TCH 4.5 4.0 4.0
Clock Low TCL 4.5 4.0 4.0
Global Set/Reset (Note 3)
Delay from GSR net to Pad TRPO 15.0 11.8 8.7
GSR width TMRW 13.0 11.5 11.5
GSR inactive to first active TMRO
clock (OK) edge
Preliminary
Note 1: Output timing is measured at pin threshold, with 50pF external capacitive loads (incl. test fixture). Slew-rate limited output
rise/fall times are approximately two times longer than fast output rise/fall times. For the effect of capacitive loads on ground
bounce, see the “Additional XC4000 Data” section of the Programmable Logic Data Book.
Note 2: Voltage levels of unused pads, bonded or unbonded, must be valid logic levels. Each can be configured with the internal
pull-up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
Note 3: Timing is based on the XC4005E. For other devices see the XACT timing calculator.
Speed Grade -4 -3 -2
Description Symbol Min Max Min Max Min Max
Setup and Hold
Input (TDI) to clock (TCK) TTDITCK
setup time
Input (TDI) to clock (TCK) TTCKTDI
hold time
Input (TMS) to clock (TCK) TTMSTCK
setup time
Input (TMS) to clock (TCK) TTCKTMS
hold time
Propagation Delay
Clock (TCK) to Pad (TDO) TTCKPO
Clock
Clock (TCK) High TTCKH
Clock (TCK) Low TTCKL
Power-On Reset
JTAG operation after valid TRJTAG
Vcc
Preliminary
Note 1: Input pad setup and hold times are specified with respect to the internal clock (IK). For setup and hold times with respect to
the clock input pin, see the pin-to-pin parameters in the Guaranteed Input and Output Parameters table.
Note 2: Output timing is measured at pin threshold, with 50pF external capacitive loads (incl. test fixture). Slew-rate limited output
rise/fall times are approximately two times longer than fast output rise/fall times. For the effect of capacitive loads on ground
bounce, see the “Additional XC4000 Data” section of the Programmable Logic Data Book.
Note 3: Voltage levels of unused pads, bonded or unbonded, must be valid logic levels. Each can be configured with the internal
pull-up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
2/28/96
3/20/96
Pads labelled VCC* are internally bonded to a Vcc plane
within the BG225 package. They have no direct connection ‡ Pins marked with this symbol are reserved for Ground
to any specific package pin. connections on future revisions of the device. These pins
do not physically connect to anything on the current device
revision. However, they should be externally connected to
Ground, if possible.
HQ PG HQ Bndry HQ PG HQ Bndry
XC4020E Pad Name XC4020E Pad Name
208 223 240 Scan 208 223 240 Scan
I/O P136 U8 P156 607 I/O P173 N1 P198 47
I/O P137 T8 P157 610 I/O - M4 P199 50
I/O - - - 613 I/O - L4 P200 53
I/O - - - 616 VCC - - P201 -
I/O (D2) P138 V7 P159 619 I/O - - - 56
I/O P139 U7 P160 622 I/O - - - 59
VCC - - P161 - I/O (A4) P174 M2 P202 62
I/O P140 V6 P162 625 I/O (A5) P175 M1 P203 65
I/O P141 U6 P163 628 I/O P176 L3 P205 68
I/O - R8 P164 631 I/O P177 L2 P206 71
I/O - R7 P165 634 I/O P178 L1 P207 74
GND P142 T7 P166 - I/O P179 K1 P208 77
I/O - R6 P167 637 I/O (A6) P180 K2 P209 80
I/O - R5 P168 640 I/O (A7) P181 K3 P210 83
I/O P143 V5 P169 643 GND P182 K4 P211 -
I/O P144 V4 P170 646 4/2/96
I/O P145 U5 P171 649
I/O P146 T6 P172 652
I/O (D1) P147 V3 P173 655 Additional No Connect (N.C.) Connections on HQ208 &
I/O (RCLK, RDY/BUSY) P148 V2 P174 658 HQ240 Packages
I/O - - - 661
I/O - - - 664 HQ208 HQ240
I/O P149 U4 P175 667 P1 P22 ‡
I/O P150 T5 P176 670 P3 P37 ‡
I/O (D0, DIN) P151 U3 P177 673 P51 P83 ‡
I/O, SGCK4 (DOUT) P152 T4 P178 676 P52 P98 ‡
CCLK P153 V1 P179 - P53 P143 ‡
VCC P154 R4 P180 - P54 P158 ‡
O, TDO P159 U2 P181 0 P102 P195
GND P160 R3 P182 - P104 P204 ‡
I/O (A0, WS) P161 T3 P183 2 P105 P219 ‡
I/O, PGCK4 (A1) P162 U1 P184 5 P107
I/O P163 P3 P185 8 P155
I/O P164 R2 P186 11 P156
I/O (CS1, A2) P165 T2 P187 14 P157
I/O (A3) P166 N3 P188 17 P158
I/O - - - 20 P206
I/O - - - 23 P207
I/O - P4 P189 26 P208
I/O - N4 P190 29 3/20/96
I/O P167 P2 P191 32
I/O P168 T1 P192 35 ‡ Pins marked with this symbol are reserved for Ground
I/O P169 R1 P193 38 connections on future revisions of the device. These pins
I/O P170 N2 P194 41 do not physically connect to anything on the current device
GND P171 M3 P196 - revision. However, they should be externally connected to
I/O P172 P1 P197 44
Ground, if possible.
The following table may contain pinout information for I/O P6 B3 P4 B3 P301 D24 200
unsupported device/package combinations. Please see the I/O P7 C5 P5 E6 P300 E23 203
availability charts elsewhere in the XC4000 Series data I/O, TDI P8 A2 P6 D5 P299 C26 206
sheet for availability information. I/O, TCK P9 B4 P7 C4 P298 E24 209
I/O - - - A3 P297 F24 212
XC4025E,
HQ PG HQ PG HQ BG Bndry I/O - - - D6 P296 E25 215
/28EX/XL
208 223 240 299 304 352 Scan
Pad Name VCC - - - - - VCC* -
VCC P183 J4 P212 K1 P38 VCC* - GND - - - - - GND* -
I/O (A8) P184 J3 P213 K2 P37 D14 98 I/O P10 C6 P8 E7 P295 D26 218
I/O (A9) P185 J2 P214 K3 P36 C14 101 I/O P11 A3 P9 B4 P294 G24 221
I/O (A19) P186 J1 P215 K5 P35 A15 104 I/O P12 B5 P10 C5 P293 F25 224
I/O (A18) P187 H1 P216 K4 P34 B15 107 I/O P13 B6 P11 A4 P292 F26 227
I/O P188 H2 P217 J1 P33 C15 110 I/O - D5 P12 D7 P291 H23 230
I/O P189 H3 P218 J2 P32 D15 113 I/O - D6 P13 C6 P290 H24 233
I/O (A10) P190 G1 P220 H1 P31 A16 116 I/O - - - E8 P289 G25 236
I/O (A11) P191 G2 P221 J3 P30 B16 119 I/O - - - B5 P288 G26 239
GND - - - - - GND* - GND P14 C7 P14 A5 P287 GND* -
I/O - - - J4 P29 C16 122 I/O, FCLK1 P15 A4 P15 B6 P286 J23 242
I/O - - - J5 P28 B17 125 I/O P16 A5 P16 D8 P285 J24 245
I/O - - - H2 P27 C17 128 I/O, TMS P17 B7 P17 C7 P284 H25 248
I/O - - - G1 P26 B18 131 I/O P18 A6 P18 B7 P283 K23 251
VCC - - P222 E1 P25 VCC* - VCC - - P19 A6 P282 VCC* -
I/O - H4 P223 H3 P23 C18 134 I/O - D7 P20 C8 P280 K24 254
I/O - G4 P224 G2 P22 D17 137 I/O - D8 P21 E9 P279 J25 257
I/O P192 F1 P225 H4 P21 A20 140 I/O - - - A7 P278 L24 260
I/O P193 E1 P226 F2 P20 B19 143 I/O - - - D9 P277 K25 263
GND P194 G3 P227 F1 P19 GND* - GND‡ - - P22 - - GND* -
I/O - - - H5 P18 C19 146 I/O - - - B8 P276 L25 266
I/O - - - G3 P17 D18 149 I/O - - - A8 P275 L26 269
I/O P195 F2 P228 D1 P16 A21 152 I/O P19 C8 P23 C9 P274 M23 272
I/O P196 D1 P229 G4 P15 B20 155 I/O P20 A7 P24 B9 P273 M24 275
I/O P197 C1 P230 E2 P14 C20 158 I/O P21 B8 P25 E10 P272 M25 278
I/O P198 E2 P231 F3 P13 B21 161 I/O P22 A8 P26 A9 P271 M26 281
I/O (A12) P199 F3 P232 G5 P12 B22 164 I/O P23 B9 P27 D10 P270 N24 284
I/O (A13) P200 D2 P233 C1 P10 C21 167 I/O P24 C9 P28 C10 P269 N25 287
GND - - - - - GND* - GND P25 D9 P29 A10 P268 GND* -
VCC - - - - - VCC* - VCC P26 D10 P30 A11 P267 VCC* -
I/O - - - F4 P9 D20 170 I/O P27 C10 P31 B10 P266 N26 290
I/O - - - E3 P8 A23 173 I/O P28 B10 P32 B11 P265 P25 293
I/O - F4 P234 D2 P7 D21 176 I/O P29 A9 P33 C11 P264 P23 296
I/O - E4 P235 C2 P6 C22 179 I/O P30 A10 P34 E11 P263 P24 299
I/O P201 B1 P236 F5 P5 B24 182 I/O P31 A11 P35 D11 P262 R26 302
I/O P202 E3 P237 E4 P4 C23 185 I/O P32 C11 P36 A12 P261 R25 305
I/O (A14) P203 C2 P238 D3 P3 D22 188 I/O - - - B12 P260 R24 308
I/O, SGCK1, P204 B2 P239 C3 P2 C24 191 I/O - - - A13 P259 R23 311
GCK8 (A15)
GND‡ - - P37 - - GND* -
VCC P205 D3 P240 A2 P1 VCC* -
I/O - - - C12 P258 T26 314
GND P2 D4 P1 B1 P304 GND* -
I/O - - - D12 P257 T25 317
I/O, PGCK1, P4 C3 P2 D4 P303 D23 194
I/O - D11 P38 E12 P256 T23 320
GCK1 (A16)
I/O - D12 P39 B13 P255 V26 323
I/O (A17) P5 C4 P3 B2 P302 C25 197
VCC - - P40 A16 P253 VCC* -
XC4025E, XC4025E,
HQ PG HQ PG HQ BG Bndry HQ PG HQ PG HQ BG Bndry
/28EX/XL /28EX/XL
208 223 240 299 304 352 Scan 208 223 240 299 304 352 Scan
Pad Name Pad Name
I/O P33 B11 P41 A14 P252 U24 326 I/O P70 G17 P78 G19 P207 AC17 445
I/O P34 A12 P42 C13 P251 V25 329 I/O P71 G18 P79 H18 P206 AD17 448
I/O P35 B12 P43 B14 P250 V24 332 VCC - - P80 F20 P204 VCC* -
I/O, FCLK2 P36 A13 P44 D13 P249 U23 335 I/O P72 H16 P81 J16 P203 AE18 451
GND P37 C12 P45 A15 P248 GND* - I/O P73 H17 P82 G20 P202 AF18 454
I/O - - - B15 P247 Y26 338 I/O - - - J17 P201 AE17 457
I/O - - - E13 P246 W25 341 I/O - - - H19 P200 AE16 460
I/O - D13 P46 C14 P245 W24 344 GND‡ - - P83 - - GND* -
I/O - D14 P47 A17 P244 V23 347 I/O - - - H20 P199 AF16 463
I/O P38 B13 P48 D14 P243 AA26 350 I/O - - - J18 P198 AC15 466
I/O P39 A14 P49 B16 P242 Y25 353 I/O - G15 P84 J19 P197 AD15 469
I/O P40 A15 P50 C15 P241 Y24 356 I/O - H15 P85 K16 P196 AE15 472
I/O P41 C13 P51 E14 P240 AA25 359 I/O P74 H18 P86 J20 P195 AF15 475
GND - - - - - GND* - I/O P75 J18 P87 K17 P194 AD14 478
VCC - - - - - VCC* - I/O P76 J17 P88 K18 P193 AE14 481
I/O - - - A18 P239 AB25 362 I/O (INIT) P77 J16 P89 K19 P192 AF14 484
I/O - - - D15 P238 AA24 365 VCC P78 J15 P90 L20 P191 VCC* -
I/O P42 B14 P52 C16 P237 Y23 368 GND P79 K15 P91 K20 P190 GND* -
I/O P43 A16 P53 B17 P236 AC26 371 I/O P80 K16 P92 L19 P189 AE13 487
I/O P44 B15 P54 B18 P235 AA23 374 I/O P81 K17 P93 L18 P188 AC13 490
I/O P45 C14 P55 E15 P234 AB24 377 I/O P82 K18 P94 L16 P187 AD13 493
I/O P46 A17 P56 D16 P233 AD25 380 I/O P83 L18 P95 L17 P186 AF12 496
I/O, SGCK2, P47 B16 P57 C17 P232 AC24 383 I/O P84 L17 P96 M20 P185 AE12 499
GCK2 I/O P85 L16 P97 M19 P184 AD12 502
O (M1) P48 C15 P58 A20 P231 AB23 386 I/O - - - N20 P183 AC12 505
GND P49 D15 P59 A19 P230 GND* - I/O - - - M18 P182 AF11 508
I (M0) P50 A18 P60 C18 P229 AD24 389 GND‡ - - P98 - - GND* -
VCC P55 D16 P61 B20 P228 VCC* - I/O - - - M17 P181 AE11 511
I (M2) P56 C16 P62 D17 P227 AC23 390 I/O - - - M16 P180 AD11 514
I/O, PGCK2, P57 B17 P63 B19 P226 AE24 391 I/O - L15 P99 N19 P179 AF9 517
GCK3
I/O - M15 P100 P20 P178 AD10 520
I/O (HDC) P58 E16 P64 C19 P225 AD23 394
VCC - - P101 T20 P177 VCC* -
I/O P59 C17 P65 F16 P224 AC22 397
I/O P86 M18 P102 N18 P175 AE9 523
I/O P60 D17 P66 E17 P223 AF24 400
I/O P87 M17 P103 P19 P174 AD9 526
I/O P61 B18 P67 D18 P222 AD22 403
I/O P88 N18 P104 N17 P173 AC10 529
I/O (LDC) P62 E17 P68 C20 P221 AE23 406
I/O P89 P18 P105 R19 P172 AF7 532
I/O - - - F17 P220 AE22 409
GND P90 M16 P106 R20 P171 GND* -
I/O - - - G16 P219 AF23 412
I/O - - - N16 P170 AE8 535
VCC - - - - - VCC* -
I/O - - - P18 P169 AD8 538
GND - - - - - GND* -
I/O - N15 P107 U20 P168 AC9 541
I/O P63 F16 P69 D19 P218 AD20 415
I/O - P15 P108 P17 P167 AF6 544
I/O P64 C18 P70 E18 P217 AE21 418
I/O P91 N17 P109 T19 P166 AE7 547
I/O P65 D18 P71 D20 P216 AF21 421
I/O P92 R18 P110 R18 P165 AD7 550
I/O P66 F17 P72 G17 P215 AC19 424
I/O P93 T18 P111 P16 P164 AE6 553
I/O - E15 P73 F18 P214 AD19 427
I/O P94 P17 P112 V20 P163 AE5 556
I/O - F15 P74 H16 P213 AE20 430
GND - - - - - GND* -
I/O - - - E19 P212 AF20 433
VCC - - - - - VCC* -
I/O - - - F19 P211 AC18 436
I/O - - - R17 P162 AD6 559
GND P67 G16 P75 E20 P210 GND* -
I/O - - - T18 P161 AC7 562
I/O P68 E18 P76 H17 P209 AD18 439
I/O P95 N16 P113 U19 P160 AF4 565
I/O P69 F18 P77 G18 P208 AE19 442
I/O P96 T17 P114 V19 P159 AF3 568
Pads labelled GND‡ should be connected to Ground if pos- Note: In XC4025 (no extension) devices in the HQ304
sible; however, they can be left unconnected if necessary package, P101 is a No Connect (N.C.) pin. P101 is Vcc in
for compatibility with other devices. XC4025E/L and XC4028EX/XL devices. Where necessary
for compatibility, this pin can be left unconnected.
3/21/96
Additional No Connect (N.C.) Connections on HQ304 Additional No Connect, Vcc & Ground Connections on
Package BG432 Package
XC4044EX/XL XC4044EX/XL
PG411 BG432 Bndry Scan PG411 BG432 Bndry Scan
Pad Name Pad Name
VCC VCC* VCC* - I/O Y38 AL15 613
I (M2) G33 AJ28 486 I/O AA37 AJ15 616
I/O, GCK3 D36 AK29 487 I/O AB38 AK15 619
I/O (HDC) C37 AH27 490 I/O AD36 AJ14 622
I/O F34 AK28 493 I/O AA35 AH14 625
I/O J33 AJ27 496 I/O AE37 AK14 628
I/O D38 AL28 499 I/O AB36 AL13 631
I/O (LDC) G35 AH26 502 I/O AD38 AK13 634
I/O E39 AL27 505 VCC VCC* VCC* -
I/O K34 AH25 508 GND GND* GND* -
I/O F38 AK26 511 I/O AB34 AJ13 637
I/O G37 AL26 514 I/O AE39 AH13 640
VCC VCC* VCC* - I/O AM36 AL12 643
GND GND* GND* - I/O AC35 AK12 646
I/O H38 AH24 517 I/O AG39 AH12 649
I/O J37 AJ25 520 I/O AG37 AJ11 652
I/O G39 AK25 523 VCC VCC* VCC* -
I/O M34 AJ24 526 I/O AD34 AL10 655
I/O K36 AH23 529 I/O AN39 AK10 658
I/O K38 AK24 532 I/O AE35 AJ10 661
I/O N35 AL24 535 I/O AH38 AK9 664
I/O P34 AH22 538 GND GND* GND* -
I/O J35 AJ23 541 I/O AJ37 AL8 667
I/O L37 AK23 544 I/O AG35 AH10 670
GND GND* GND* - I/O AF34 AJ9 673
I/O M38 AJ22 547 I/O AH36 AK8 676
I/O R35 AK22 550 I/O AK38 AJ8 679
I/O H36 AL22 553 I/O AP38 AH9 682
I/O T34 AJ21 556 I/O AK36 AK7 685
VCC VCC* VCC* - I/O AM34 AL6 688
I/O N37 AH20 559 I/O AH34 AJ7 691
I/O N39 AK21 562 I/O AJ35 AH8 694
I/O U35 AK20 565 GND GND* GND* -
I/O R39 AJ19 568 VCC VCC* VCC* -
I/O M36 AL20 571 I/O AL37 AK6 697
I/O V34 AH18 574 I/O AT38 AL5 700
GND GND* GND* - I/O AM38 AH7 703
VCC VCC* VCC* - I/O AN37 AJ6 706
I/O R37 AK19 577 I/O AK34 AK5 709
I/O T38 AJ18 580 I/O AR39 AL4 712
I/O T36 AL19 583 I/O AN35 AK4 715
I/O V36 AK18 586 I/O AL33 AH5 718
I/O U37 AH17 589 I/O AV38 AK3 721
I/O U39 AJ17 592 I/O, GCK4 AT36 AJ4 724
I/O W35 AK17 595 GND GND* GND* -
I/O AC39 AL17 598 DONE AR35 AH4 -
I/O V38 AJ16 601 VCC VCC* VCC* -
I/O (INIT) W37 AK16 604 PROGRAM AN33 AH3 -
VCC VCC* VCC* - I/O (D7) AM32 AJ2 727
GND GND* GND* - I/O, GCK5 AP34 AG4 730
I/O Y34 AL16 607 I/O AW39 AG3 733
I/O AC37 AH15 610 I/O AN31 AH2 736
XC4044EX/XL XC4044EX/XL
PG411 BG432 Bndry Scan PG411 BG432 Bndry Scan
Pad Name Pad Name
I/O AM6 B6 26 I/O U5 D19 152
I/O AM2 A6 29 I/O T4 A20 155
VCC VCC* VCC* - I/O P2 B20 158
GND GND* GND* - I/O N1 C20 161
I/O AL3 D8 32 I/O R5 C21 164
I/O AH6 C7 35 I/O M2 A22 167
I/O AP2 B7 38 VCC VCC* VCC* -
I/O AK4 D9 41 I/O L3 B22 170
I/O AN1 B8 44 I/O T6 C22 173
I/O AK2 A8 47 I/O N5 B23 176
I/O AG5 D10 50 I/O M4 A24 179
I/O AF6 C9 53 GND GND* GND* -
I/O AL5 B9 56 I/O K2 D22 182
I/O AJ3 C10 59 I/O K4 C23 185
GND GND* GND* - I/O P6 B24 188
I/O AH2 B10 62 I/O M6 C24 191
I/O AE5 A10 65 I/O L5 D23 194
I/O AM4 C11 68 I/O J5 B25 197
I/O AD6 D12 71 I/O J3 A26 200
VCC VCC* VCC* - I/O H2 C25 203
I/O AG3 B11 74 I/O (A12) H4 D24 206
I/O AG1 C12 77 I/O (A13) G3 B26 209
I/O AC5 C13 80 GND GND* GND* -
I/O AE1 A12 83 VCC VCC* VCC* -
I/O AH4 D14 86 I/O K6 A27 212
I/O AB6 B13 89 I/O G1 D25 215
GND GND* GND* - I/O E1 C26 218
VCC VCC* VCC* - I/O E3 B27 221
I/O (A4) AD2 C14 92 I/O J7 C27 224
I/O (A5) AB4 A13 95 I/O H6 B28 227
I/O AE3 B14 98 I/O C3 D27 230
I/O AC1 D15 101 I/O D2 B29 233
I/O (A21) AD4 C15 104 I/O (A14) E5 C28 236
I/O (A20) AA5 B15 107 I/O, GCK8 (A15) G7 D28 239
I/O AB2 A15 110 VCC VCC* VCC* -
I/O AC3 C16 113 4/2/96
I/O (A6) AA3 B16 116
I/O (A7) Y6 A16 119 Pads labelled GND* are internally bonded to a Ground
GND GND* GND* - plane within the associated package. They have no direct
VCC VCC* VCC* - connection to any specific package pin.
I/O (A8) W3 D17 122
I/O (A9) Y2 A17 125 Pads labelled VCC* are internally bonded to a Vcc plane
I/O V2 C17 128 within the associated package. They have no direct con-
I/O W5 B17 131
nection to any specific package pin.
I/O (A19) V4 C18 134
I/O (A18) T2 D18 137
I/O U1 B18 140
I/O V6 A19 143
I/O (A10) U3 B19 146
I/O (A11) R1 C19 149
VCC VCC* VCC* -
GND GND* GND* -
3/26/96
Pin Locations for XC4052XL Devices XC4052XL Pad Name PG411 BG432 Bndry Scan
The following table may contain pinout information for GND GND* GND* -
unsupported device/package combinations. Please see the VCC VCC* VCC* -
availability charts elsewhere in the XC4000 Series data I/O F18 N29 368
sheet for availability information. I/O C15 N30 371
XC4052XL Pad Name PG411 BG432 Bndry Scan I/O B16 P30 374
GND GND* GND* - I/O D16 P28 377
I/O, GCK1 (A16) H8 D29 266 I/O D18 P29 380
I/O (A17) F6 C30 269 I/O A17 R31 383
I/O B4 E28 272 GND GND* GND* -
I/O D4 E29 275 I/O E19 R30 386
I/O, TDI B2 D30 278 I/O B18 R28 389
I/O, TCK G9 D31 281 I/O C17 R29 392
GND GND* GND* - I/O C19 T31 395
I/O E7 F28 284 GND GND* GND* -
I/O B6 F29 287 VCC VCC* VCC* -
I/O F8 E30 290 I/O F20 T30 398
I/O C5 E31 293 I/O B20 T29 401
I/O A7 G28 296 I/O C21 U31 404
I/O A5 G29 299 I/O B22 U30 407
VCC VCC* VCC* - GND GND* GND* -
GND GND* GND* - I/O E21 U28 410
I/O C7 F30 302 I/O D22 U29 413
I/O D8 F31 305 I/O A23 V30 416
I/O B8 H28 308 I/O B24 V29 419
I/O C9 H29 311 I/O C23 V28 422
I/O E9 G30 314 I/O F22 W31 425
I/O F12 H30 317 VCC VCC* VCC* -
GND GND* GND* - GND GND* GND* -
I/O D10 J28 320 I/O A25 W30 428
I/O B10 J29 323 I/O D24 W29 431
I/O F10 H31 326 I/O E23 W28 434
I/O F14 J30 329 I/O C25 Y31 437
GND GND* GND* - I/O B26 Y30 440
I/O, FCLK1 C11 K28 332 I/O A27 Y29 443
I/O B12 K29 335 GND GND* GND* -
I/O, TMS E11 K30 338 I/O C27 Y28 446
I/O E15 K31 341 I/O F24 AA30 449
VCC VCC* VCC* - VCC VCC* VCC* -
I/O F16 L29 344 I/O E25 AA29 452
I/O C13 L30 347 I/O E27 AB31 455
GND GND* GND* - I/O B28 AB30 458
I/O A13 M30 350 I/O, FCLK2 C29 AB29 461
I/O D12 M28 353 GND GND* GND* -
I/O B14 M29 356 I/O F26 AB28 464
I/O E17 M31 359 I/O D28 AC30 467
I/O E13 N31 362 I/O B30 AC29 470
I/O A15 N28 365 I/O E29 AC28 473
GND GND* GND* -
XC4052XL Pad Name PG411 BG432 Bndry Scan XC4052XL Pad Name PG411 BG432 Bndry Scan
I/O AE39 AH13 703 I/O AV36 AH1 814
I/O AM36 AL12 706 I/O AR33 AF4 817
I/O AC35 AK12 709 GND GND* GND* -
I/O AL35 AJ12 712 I/O AP32 AF3 820
I/O AF38 AK11 715 I/O AU35 AG2 823
GND GND* GND* - I/O AV34 AG1 826
I/O AG39 AH12 718 I/O AW35 AE4 829
I/O AG37 AJ11 721 I/O AW33 AE3 832
VCC VCC* VCC* - I/O AU33 AF2 835
I/O AD34 AL10 724 VCC VCC* VCC* -
I/O AN39 AK10 727 GND GND* GND* -
I/O AE35 AJ10 730 I/O (D6) AV32 AF1 838
I/O AH38 AK9 733 I/O AU31 AD4 841
GND GND* GND* - I/O AR31 AD3 844
I/O AJ37 AL8 736 I/O AP28 AE2 847
I/O AG35 AH10 739 I/O AP30 AD2 850
I/O AF34 AJ9 742 I/O AT30 AC4 853
I/O AH36 AK8 745 GND GND* GND* -
GND GND* GND* - I/O AT32 AC3 856
I/O AK38 AJ8 748 I/O AV30 AD1 859
I/O AP38 AH9 751 I/O AR29 AC2 862
I/O AK36 AK7 754 I/O AP26 AB4 865
I/O AM34 AL6 757 GND GND* GND* -
I/O AH34 AJ7 760 I/O AU29 AB3 868
I/O AJ35 AH8 763 I/O AV28 AB2 871
GND GND* GND* - I/O, FCLK3 AT28 AB1 874
VCC VCC* VCC* - I/O AR25 AA3 877
I/O AL37 AK6 766 VCC VCC* VCC* -
I/O AT38 AL5 769 I/O (D5) AP24 AA2 880
I/O AM38 AH7 772 I/O (CS0) AU27 Y2 883
I/O AN37 AJ6 775 GND GND* GND* -
I/O AK34 AK5 778 I/O AR27 Y4 886
I/O AR39 AL4 781 I/O AW27 Y3 889
GND GND* GND* - I/O AU25 Y1 892
I/O AR37 AH6 784 I/O AV26 W1 895
I/O AU37 AJ5 787 I/O AT24 W4 898
I/O AN35 AK4 790 I/O AR23 W3 901
I/O AL33 AH5 793 GND GND* GND* -
I/O AV38 AK3 796 VCC VCC* VCC* -
I/O, GCK4 AT36 AJ4 799 I/O AW25 W2 904
GND GND* GND* - I/O AW23 V2 907
DONE AR35 AH4 - I/O AP22 V4 910
VCC VCC* VCC* - I/O AV24 V3 913
PROGRAM AN33 AH3 - I/O AU23 U1 916
I/O (D7) AM32 AJ2 802 I/O AT22 U2 919
I/O, GCK5 AP34 AG4 805 GND GND* GND* -
I/O AW39 AG3 808 I/O AR21 U4 922
I/O AN31 AH2 811 I/O AV22 U3 925
XC4052XL Pad Name PG411 BG432 Bndry Scan XC4052XL Pad Name PG411 BG432 Bndry Scan
I/O AG1 C12 83 I/O N5 B23 194
GND GND* GND* - I/O M4 A24 197
I/O AF2 D13 86 GND GND* GND* -
I/O AJ5 B12 89 I/O K2 D22 200
I/O AC5 C13 92 I/O K4 C23 203
I/O AE1 A12 95 I/O P6 B24 206
I/O AH4 D14 98 I/O M6 C24 209
I/O AB6 B13 101 GND GND* GND* -
GND GND* GND* - I/O L5 D23 212
VCC VCC* VCC* - I/O J5 B25 215
I/O (A4) AD2 C14 104 I/O J3 A26 218
I/O (A5) AB4 A13 107 I/O H2 C25 221
I/O AE3 B14 110 I/O (A12) H4 D24 224
I/O AC1 D15 113 I/O (A13) G3 B26 227
I/O (A21) AD4 C15 116 GND GND* GND* -
I/O (A20) AA5 B15 119 VCC VCC* VCC* -
GND GND* GND* - I/O K6 A27 230
I/O AB2 A15 122 I/O G1 D25 233
I/O AC3 C16 125 I/O E1 C26 236
I/O (A6) AA3 B16 128 I/O E3 B27 239
I/O (A7) Y6 A16 131 I/O F2 A28 242
GND GND* GND* - I/O G5 D26 245
VCC VCC* VCC* - GND GND* GND* -
I/O (A8) W3 D17 134 I/O J7 C27 248
I/O (A9) Y2 A17 137 I/O H6 B28 251
I/O V2 C17 140 I/O C3 D27 254
I/O W5 B17 143 I/O D2 B29 257
GND GND* GND* - I/O (A14) E5 C28 260
I/O (A19) V4 C18 146 I/O, GCK8 (A15) G7 D28 263
I/O (A18) T2 D18 149 VCC VCC* VCC* -
I/O U1 B18 152 8/23/96
I/O V6 A19 155
I/O (A10) U3 B19 158 Pads labelled GND* are internally bonded to a Ground
plane within the associated package. They have no direct
I/O (A11) R1 C19 161
connection to any specific package pin.
VCC VCC* VCC* -
GND GND* GND* - Pads labelled VCC* are internally bonded to a Vcc plane
I/O U5 D19 164 within the associated package. They have no direct con-
I/O T4 A20 167 nection to any specific package pin.
I/O P2 B20 170
I/O N1 C20 173
I/O R3 B21 176
I/O N3 D20 179
GND GND* GND* -
I/O R5 C21 182
I/O M2 A22 185
VCC VCC* VCC* -
I/O L3 B22 188
I/O T6 C22 191
3/22/96
PQ PQ
160 XC4005E XC4006E XC4008E XC4010E XC4013E 160 XC4005E XC4006E XC4008E XC4010E XC4013E
Pin Pin
P91 GND GND GND GND GND P127 I/O I/O I/O I/O I/O
P92 I/O I/O I/O I/O I/O (CS1, A2) (CS1, A2) (CS1, A2) (CS1, A2) (CS1, A2)
P93 I/O I/O I/O I/O I/O P128 I/O (A3) I/O (A3) I/O (A3) I/O (A3) I/O (A3)
P94 I/O (D5) I/O (D5) I/O (D5) I/O (D5) I/O (D5) P129 N.C. I/O I/O I/O I/O
P95 I/O (CS0) I/O (CS0) I/O (CS0) I/O (CS0) I/O (CS0) P130 N.C. I/O I/O I/O I/O
P96 I/O I/O I/O I/O I/O P131 GND GND GND GND GND
P97 I/O I/O I/O I/O I/O P132 I/O I/O I/O I/O I/O
P98 I/O (D4) I/O (D4) I/O (D4) I/O (D4) I/O (D4) P133 I/O I/O I/O I/O I/O
P99 I/O I/O I/O I/O I/O P134 I/O (A4) I/O (A4) I/O (A4) I/O (A4) I/O (A4)
P100 VCC VCC VCC VCC VCC P135 I/O (A5) I/O (A5) I/O (A5) I/O (A5) I/O (A5)
P101 GND GND GND GND GND P136 N.C. N.C. I/O I/O I/O
P102 I/O (D3) I/O (D3) I/O (D3) I/O (D3) I/O (D3) P137 I/O I/O I/O I/O I/O
P103 I/O (RS) I/O (RS) I/O (RS) I/O (RS) I/O (RS) P138 I/O I/O I/O I/O I/O
P104 I/O I/O I/O I/O I/O P139 I/O (A6) I/O (A6) I/O (A6) I/O (A6) I/O (A6)
P105 I/O I/O I/O I/O I/O P140 I/O (A7) I/O (A7) I/O (A7) I/O (A7) I/O (A7)
P106 I/O (D2) I/O (D2) I/O (D2) I/O (D2) I/O (D2) P141 GND GND GND GND GND
P107 I/O I/O I/O I/O I/O P142 VCC VCC VCC VCC VCC
P108 I/O I/O I/O I/O I/O P143 I/O (A8) I/O (A8) I/O (A8) I/O (A8) I/O (A8)
P109 I/O I/O I/O I/O I/O P144 I/O (A9) I/O (A9) I/O (A9) I/O (A9) I/O (A9)
P110 GND GND GND GND GND P145 I/O I/O I/O I/O I/O
P111 N.C. I/O I/O I/O I/O P146 I/O I/O I/O I/O I/O
P112 N.C. I/O I/O I/O I/O P147 I/O (A10) I/O (A10) I/O (A10) I/O (A10) I/O (A10)
P113 I/O (D1) I/O (D1) I/O (D1) I/O (D1) I/O (D1) P148 I/O (A11) I/O (A11) I/O (A11) I/O (A11) I/O (A11)
P114 I/O (RCLK, I/O (RCLK, I/O (RCLK, I/O (RCLK, I/O (RCLK, P149 I/O I/O I/O I/O I/O
RDY/ RDY/ RDY/ RDY/ RDY/ P150 I/O I/O I/O I/O I/O
BUSY) BUSY) BUSY) BUSY) BUSY) P151 GND GND GND GND GND
P115 I/O I/O I/O I/O I/O P152 N.C. I/O I/O I/O I/O
P116 I/O I/O I/O I/O I/O P153 N.C. I/O I/O I/O I/O
P117 I/O I/O I/O I/O I/O P154 I/O (A12) I/O (A12) I/O (A12) I/O (A12) I/O (A12)
(D0, DIN) (D0, DIN) (D0, DIN) (D0, DIN) (D0, DIN)
P155 I/O (A13) I/O (A13) I/O (A13) I/O (A13) I/O (A13)
P118 I/O, I/O, I/O, I/O, I/O,
SGCK4 SGCK4 SGCK4 SGCK4 SGCK4 P156 I/O I/O I/O I/O I/O
(DOUT) (DOUT) (DOUT) (DOUT) (DOUT) P157 I/O I/O I/O I/O I/O
P119 CCLK CCLK CCLK CCLK CCLK P158 I/O (A14) I/O (A14) I/O (A14) I/O (A14) I/O (A14)
P120 VCC VCC VCC VCC VCC P159 I/O, I/O, I/O, I/O, I/O,
P121 O, TDO O, TDO O, TDO O, TDO O, TDO SGCK1 SGCK1 SGCK1 SGCK1 SGCK1
(A15) (A15) (A15) (A15) (A15)
P122 GND GND GND GND GND
P160 VCC VCC VCC VCC VCC
P123 I/O I/O I/O I/O I/O
(A0, WS) (A0, WS) (A0, WS) (A0, WS) (A0, WS) 2/28/96
P124 I/O, I/O, I/O, I/O, I/O,
PGCK4 PGCK4 PGCK4 PGCK4 PGCK4 Note: Shaded pins should be taken into account when
(A1) (A1) (A1) (A1) (A1)
designing PC boards, in case of future replacement by dif-
P125 I/O I/O I/O I/O I/O
ferent devices.
P126 I/O I/O I/O I/O I/O
PQ XC XC XC XC XC XC XC PQ XC XC XC XC XC XC XC
208 4005 4006 4008 4010 4013 4020 4028 208 4005 4006 4008 4010 4013 4020 4028
Pin E/L E E E/L E/L E EX/XL Pin E/L E E E/L E/L E EX/XL
P88 I/O I/O I/O I/O I/O I/O I/O P134 I/O I/O I/O I/O I/O I/O I/O
P89 I/O I/O I/O I/O I/O I/O I/O P135 I/O I/O I/O I/O I/O I/O I/O
P90 GND GND GND GND GND GND GND P136 N.C. N.C. I/O I/O I/O I/O I/O
P91 N.C. N.C. N.C. I/O I/O I/O I/O P137 N.C. N.C. I/O I/O I/O I/O I/O
P92 N.C. N.C. N.C. I/O I/O I/O I/O P138 I/O (D2) I/O (D2) I/O (D2) I/O (D2) I/O (D2) I/O (D2) I/O (D2)
P93 N.C. I/O I/O I/O I/O I/O I/O P139 I/O I/O I/O I/O I/O I/O I/O
P94 N.C. I/O I/O I/O I/O I/O I/O P140 I/O I/O I/O I/O I/O I/O I/O
P95 I/O I/O I/O I/O I/O I/O I/O P141 I/O I/O I/O I/O I/O I/O I/O,
P96 I/O I/O I/O I/O I/O I/O I/O FCLK4
P97 I/O I/O I/O I/O I/O I/O I/O P142 GND GND GND GND GND GND GND
P98 I/O I/O I/O I/O I/O I/O I/O P143 N.C. N.C. N.C. I/O I/O I/O I/O
P99 I/O I/O I/O I/O I/O I/O I/O P144 N.C. N.C. N.C. I/O I/O I/O I/O
P100 I/O, I/O, I/O, I/O, I/O, I/O, I/O, P145 N.C. I/O I/O I/O I/O I/O I/O
SGCK3 SGCK3 SGCK3 SGCK3 SGCK3 SGCK3 GCK4 P146 N.C. I/O I/O I/O I/O I/O I/O
P101 GND GND GND GND GND GND GND P147 I/O (D1) I/O (D1) I/O (D1) I/O (D1) I/O (D1) I/O (D1) I/O (D1)
P102 N.C. N.C. N.C. N.C. N.C. N.C. N.C. P148 I/O I/O I/O I/O I/O I/O I/O
P103 DONE DONE DONE DONE DONE DONE DONE (RCLK, (RCLK, (RCLK, (RCLK, (RCLK, (RCLK, (RCLK,
RDY/ RDY/ RDY/ RDY/ RDY/ RDY/ RDY/
P104 N.C. N.C. N.C. N.C. N.C. N.C. N.C. BUSY) BUSY) BUSY) BUSY) BUSY) BUSY) BUSY)
P105 N.C. N.C. N.C. N.C. N.C. N.C. N.C. P149 I/O I/O I/O I/O I/O I/O I/O
P106 VCC VCC VCC VCC VCC VCC VCC P150 I/O I/O I/O I/O I/O I/O I/O
P107 N.C. N.C. N.C. N.C. N.C. N.C. N.C. P151 I/O I/O I/O I/O I/O I/O I/O
P108 PRO- PRO- PRO- PRO- PRO- PRO- PRO- (D0, (D0, (D0, (D0, (D0, (D0, (D0,
GRAM GRAM GRAM GRAM GRAM GRAM GRAM DIN) DIN) DIN) DIN) DIN) DIN) DIN)
P109 I/O (D7) I/O (D7) I/O (D7) I/O (D7) I/O (D7) I/O (D7) I/O (D7) P152 I/O, I/O, I/O, I/O, I/O, I/O, I/O,
P110 I/O, I/O, I/O, I/O, I/O, I/O, I/O, SGCK SGCK4 SGCK4 SGCK4 SGCK4 SGCK4 GCK6
PGCK3 PGCK3 PGCK3 PGCK3 PGCK3 PGCK3 GCK5 (DOUT) (DOUT) (DOUT) (DOUT) (DOUT) (DOUT) (DOUT)
P111 I/O I/O I/O I/O I/O I/O I/O P153 CCLK CCLK CCLK CCLK CCLK CCLK CCLK
P112 I/O I/O I/O I/O I/O I/O I/O P154 VCC VCC VCC VCC VCC VCC VCC
P113 I/O (D6) I/O (D6) I/O (D6) I/O (D6) I/O (D6) I/O (D6) I/O (D6) P155 N.C. N.C. N.C. N.C. N.C. N.C. N.C.
P114 I/O I/O I/O I/O I/O I/O I/O P156 N.C. N.C. N.C. N.C. N.C. N.C. N.C.
P115 N.C. I/O I/O I/O I/O I/O I/O P157 N.C. N.C. N.C. N.C. N.C. N.C. N.C.
P116 N.C. I/O I/O I/O I/O I/O I/O P158 N.C. N.C. N.C. N.C. N.C. N.C. N.C.
P117 N.C. N.C. N.C. I/O I/O I/O I/O P159 O, TDO O, TDO O, TDO O, TDO O, TDO O, TDO O, TDO
P118 N.C. N.C. N.C. I/O I/O I/O I/O P160 GND GND GND GND GND GND GND
P119 GND GND GND GND GND GND GND P161 I/O I/O I/O I/O I/O I/O I/O
(A0, (A0, (A0, (A0, (A0, (A0, (A0,
P120 I/O I/O I/O I/O I/O I/O I/O,
WS) WS) WS) WS) WS) WS) WS)
FCLK3
P162 I/O, I/O, I/O, I/O, I/O, I/O, I/O,
P121 I/O I/O I/O I/O I/O I/O I/O PGCK4 PGCK4 PGCK4 PGCK4 PGCK4 PGCK4 GCK7
P122 I/O (D5) I/O (D5) I/O (D5) I/O (D5) I/O (D5) I/O (D5) I/O (D5) (A1) (A1) (A1) (A1) (A1) (A1) (A1)
P123 I/O I/O I/O I/O I/O I/O I/O P163 I/O I/O I/O I/O I/O I/O I/O
(CS0) (CS0) (CS0) (CS0) (CS0) (CS0) (CS0) P164 I/O I/O I/O I/O I/O I/O I/O
P124 N.C. N.C. I/O I/O I/O I/O I/O
P165 I/O I/O I/O I/O I/O I/O I/O
P125 N.C. N.C. I/O I/O I/O I/O I/O (CS1, (CS1, (CS1, (CS1, (CS1, (CS1, (CS1,
P126 I/O I/O I/O I/O I/O I/O I/O A2) A2) A2) A2) A2) A2) A2)
P127 I/O I/O I/O I/O I/O I/O I/O P166 I/O (A3) I/O (A3) I/O (A3) I/O (A3) I/O (A3) I/O (A3) I/O (A3)
P128 I/O (D4) I/O (D4) I/O (D4) I/O (D4) I/O (D4) I/O (D4) I/O (D4) P167 N.C. I/O I/O I/O I/O I/O I/O
P129 I/O I/O I/O I/O I/O I/O I/O P168 N.C. I/O I/O I/O I/O I/O I/O
P130 VCC VCC VCC VCC VCC VCC VCC P169 N.C. N.C. N.C. I/O I/O I/O I/O
P131 GND GND GND GND GND GND GND P170 N.C. N.C. N.C. I/O I/O I/O I/O
P132 I/O (D3) I/O (D3) I/O (D3) I/O (D3) I/O (D3) I/O (D3) I/O (D3) P171 GND GND GND GND GND GND GND
P133 I/O I/O I/O I/O I/O I/O I/O P172 I/O I/O I/O I/O I/O I/O I/O
(RS) (RS) (RS) (RS) (RS) (RS) (RS) P173 I/O I/O I/O I/O I/O I/O I/O
PG PG PG PG
XC4008E XC4010E XC4013E XC4020E XC4025E XC4008E XC4010E XC4013E XC4020E XC4025E
223 191 223 191
PG191 PG191 PG223 PG223 PG223 PG191 PG191 PG223 PG223 PG223
Pin Pin Pin Pin
C13 C13 I/O I/O I/O I/O I/O A2 A2 I/O, TDI I/O, TDI I/O, TDI I/O, TDI I/O, TDI
C14 C14 I/O I/O I/O I/O I/O A3 A3 I/O I/O I/O I/O I/O
C15 C15 O (M1) O (M1) O (M1) O (M1) O (M1) A4 A4 I/O I/O I/O I/O I/O
C16 C16 I (M2) I (M2) I (M2) I (M2) I (M2) A5 A5 I/O I/O I/O I/O I/O
C17 C17 I/O I/O I/O I/O I/O A6 A6 I/O I/O I/O I/O I/O
C18 C18 I/O I/O I/O I/O I/O A7 A7 I/O I/O I/O I/O I/O
B1 B1 I/O I/O I/O I/O I/O A8 A8 I/O I/O I/O I/O I/O
B2 B2 I/O, I/O, I/O, I/O, I/O, A9 A9 I/O I/O I/O I/O I/O
SGCK1 SGCK1 SGCK1 SGCK1 SGCK1 A10 A10 I/O I/O I/O I/O I/O
(A15) (A15) (A15) (A15) (A15)
A11 A11 I/O I/O I/O I/O I/O
B3 B3 I/O I/O I/O I/O I/O
A12 A12 I/O I/O I/O I/O I/O
B4 B4 I/O, TCK I/O, TCK I/O, TCK I/O, TCK I/O, TCK
A13 A13 I/O I/O I/O I/O I/O
B5 B5 N.C. I/O I/O I/O I/O
A14 A14 N.C. I/O I/O I/O I/O
B6 B6 N.C. I/O I/O I/O I/O
A15 A15 I/O I/O I/O I/O I/O
B7 B7 I/O, TMS I/O, TMS I/O, TMS I/O, TMS I/O, TMS
A16 A16 I/O I/O I/O I/O I/O
B8 B8 I/O I/O I/O I/O I/O
A17 A17 I/O I/O I/O I/O I/O
B9 B9 I/O I/O I/O I/O I/O
A18 A18 I (M0) I (M0) I (M0) I (M0) I (M0)
B10 B10 I/O I/O I/O I/O I/O
B11 B11 I/O I/O I/O I/O I/O 2/28/96
B12 B12 I/O I/O I/O I/O I/O
B13 B13 N.C. I/O I/O I/O I/O Note: Shaded pins should be taken into account when
B14 B14 I/O I/O I/O I/O I/O designing PC boards, in case of future replacement by dif-
B15 B15 I/O I/O I/O I/O I/O ferent devices.
B16 B16 I/O, I/O, I/O, I/O, I/O, Note: Viewed from the bottom side, the package pins start
SCGK2 SCGK2 SCGK2 SCGK2 SCGK2 at the top row and go from the left edge to the right edge.
B17 B17 I/O, I/O, I/O, I/O, I/O, Viewed from the top side, the pins start at the top row and
PGCK2 PGCK2 PGCK2 PGCK2 PGCK2
go from the right edge to the left edge.
B18 B18 I/O I/O I/O I/O I/O
PG411 Pin XC4036EX/XL XC4044EX/XL XC4052XL PG411 Pin XC4036EX/XL XC4044EX/XL XC4052XL
AP6 I/O (D0, DIN) I/O (D0, DIN) I/O (D0, DIN) AJ39 GND GND GND
AP8 N.C. N.C. I/O AH2 I/O I/O I/O
AP10 I/O I/O I/O AH4 I/O I/O I/O
AP12 I/O I/O I/O AH6 I/O I/O I/O
AP14 I/O I/O I/O AH34 I/O I/O I/O
AP16 I/O I/O I/O AH36 I/O I/O I/O
AP18 I/O I/O I/O AH38 I/O I/O I/O
AP20 I/O (D4) I/O (D4) I/O (D4) AG1 I/O I/O I/O
AP22 I/O I/O I/O AG3 I/O I/O I/O
AP24 I/O (D5) I/O (D5) I/O (D5) AG5 I/O I/O I/O
AP26 I/O I/O I/O AG35 I/O I/O I/O
AP28 I/O I/O I/O AG37 I/O I/O I/O
AP30 N.C. I/O I/O AG39 I/O I/O I/O
AP32 I/O I/O I/O AF2 N.C. N.C. I/O
AP34 I/O, GCK5 I/O, GCK5 I/O, GCK5 AF4 GND GND GND
AP36 GND GND GND AF6 I/O I/O I/O
AP38 N.C. I/O I/O AF34 I/O I/O I/O
AN1 N.C. I/O I/O AF36 GND GND GND
AN3 I/O (A3) I/O (A3) I/O (A3) AF38 N.C. N.C. I/O
AN5 N.C. N.C. I/O AE1 I/O I/O I/O
AN7 O, TDO O, TDO O, TDO AE3 I/O I/O I/O
AN9 I/O I/O I/O AE5 I/O I/O I/O
AN31 I/O I/O I/O AE35 I/O I/O I/O
AN33 PROGRAM PROGRAM PROGRAM AE37 I/O I/O I/O
AN35 I/O I/O I/O AE39 I/O I/O I/O
AN37 I/O I/O I/O AD2 I/O (A4) I/O (A4) I/O (A4)
AN39 I/O I/O I/O AD4 I/O (A21) I/O (A21) I/O (A21)
AM2 I/O I/O I/O AD6 I/O I/O I/O
AM4 I/O I/O I/O AD34 I/O I/O I/O
AM6 I/O I/O I/O AD36 I/O I/O I/O
AM8 I/O I/O I/O AD38 I/O I/O I/O
AM32 I/O (D7) I/O (D7) I/O (D7) AC1 I/O I/O I/O
AM34 I/O I/O I/O AC3 N.C. I/O I/O
AM36 I/O I/O I/O AC5 I/O I/O I/O
AM38 I/O I/O I/O AC35 I/O I/O I/O
AL1 GND GND GND AC37 I/O I/O I/O
AL3 I/O I/O I/O AC39 N.C. I/O I/O
AL5 I/O I/O I/O AB2 N.C. I/O I/O
AL7 I/O I/O I/O AB4 I/O (A5) I/O (A5) I/O (A5)
AL33 I/O I/O I/O AB6 I/O I/O I/O
AL35 N.C. N.C. I/O AB34 I/O I/O I/O
AL37 I/O I/O I/O AB36 I/O I/O I/O
AL39 VCC VCC VCC AB38 I/O I/O I/O
AK2 N.C. I/O I/O AA1 GND GND GND
AK4 I/O I/O I/O AA3 I/O (A6) I/O (A6) I/O (A6)
AK6 I/O (CS1, A2) I/O (CS1, A2) I/O (CS1, A2) AA5 I/O (A20) I/O (A20) I/O (A20)
AK34 I/O I/O I/O AA35 I/O I/O I/O
AK36 I/O I/O I/O AA37 N.C. I/O I/O
AK38 N.C. I/O I/O AA39 VCC VCC VCC
AJ1 VCC VCC VCC Y2 I/O (A9) I/O (A9) I/O (A9)
AJ3 I/O I/O I/O Y4 GND GND GND
AJ5 N.C. N.C. I/O Y6 I/O (A7) I/O (A7) I/O (A7)
AJ35 I/O I/O I/O Y34 I/O I/O I/O
AJ37 I/O I/O I/O Y36 GND GND GND
PG411 Pin XC4036EX/XL XC4044EX/XL XC4052XL PG411 Pin XC4036EX/XL XC4044EX/XL XC4052XL
E5 I/O (A14) I/O (A14) I/O (A14) C35 I/O I/O I/O
E7 N.C. N.C. I/O C37 I/O (HDC) I/O (HDC) I/O (HDC)
E9 I/O I/O I/O C39 VCC VCC VCC
E11 I/O, TMS I/O, TMS I/O, TMS B2 I/O, TDI I/O, TDI I/O, TDI
E13 I/O I/O I/O B4 I/O I/O I/O
E15 I/O I/O I/O B6 N.C. N.C. I/O
E17 I/O I/O I/O B8 I/O I/O I/O
E19 I/O I/O I/O B10 I/O I/O I/O
E21 I/O I/O I/O B12 I/O I/O I/O
E23 N.C. N.C. I/O B14 I/O I/O I/O
E25 I/O I/O I/O B16 I/O I/O I/O
E27 I/O I/O I/O B18 I/O I/O I/O
E29 I/O I/O I/O B20 I/O I/O I/O
E31 I/O I/O I/O B22 I/O I/O I/O
E33 I/O I/O I/O B24 I/O I/O I/O
E35 I (M0) I (M0) I (M0) B26 I/O I/O I/O
E37 N.C. N.C. I/O B28 I/O I/O I/O
E39 I/O I/O I/O B30 I/O I/O I/O
D2 I/O I/O I/O B32 I/O I/O I/O
D4 I/O I/O I/O B34 N.C. N.C. I/O
D6 VCC VCC VCC B36 I/O, GCK2 I/O, GCK2 I/O, GCK2
D8 N.C. I/O I/O B38 I/O I/O I/O
D10 I/O I/O I/O A3 VCC VCC VCC
D12 N.C. N.C. I/O A5 I/O I/O I/O
D14 GND GND GND A7 I/O I/O I/O
D16 I/O I/O I/O A9 GND GND GND
D18 I/O I/O I/O A11 VCC VCC VCC
D20 GND GND GND A13 N.C. N.C. I/O
D22 I/O I/O I/O A15 I/O I/O I/O
D24 I/O I/O I/O A17 I/O I/O I/O
D26 GND GND GND A19 GND GND GND
D28 I/O I/O I/O A21 VCC VCC VCC
D30 N.C. I/O I/O A23 I/O I/O I/O
D32 N.C. I/O I/O A25 I/O I/O I/O
D34 GND GND GND A27 I/O I/O I/O
D36 I/O, GCK3 I/O, GCK3 I/O, GCK3 A29 GND GND GND
D38 I/O I/O I/O A31 VCC VCC VCC
C1 GND GND GND A33 I/O I/O I/O
C3 I/O I/O I/O A35 I/O I/O I/O
C5 I/O I/O I/O A37 GND GND GND
C7 N.C. I/O I/O A39 O (M1) O (M1) O (M1)
C9 I/O I/O I/O
8/23/96
C11 I/O, FCLK1 I/O, FCLK1 I/O, FCLK1
C13 I/O I/O I/O Note: Shaded pins should be taken into account when de-
C15 N.C. I/O I/O signing PC boards, in case of future replacement by differ-
C17 I/O I/O I/O ent devices.
C19 I/O I/O I/O Note: Viewed from the bottom side, the package pins start
C21 I/O I/O I/O at the top row and go from the left edge to the right edge.
C23 N.C. I/O I/O Viewed from the top side, the pins start at the top row and
C25 N.C. N.C. I/O go from the right edge to the left edge.
C27 I/O I/O I/O
C29 I/O, FCLK2 I/O, FCLK2 I/O, FCLK2
C31 I/O I/O I/O
C33 N.C. N.C. I/O
BG432 Pin XC4036EX XC4044EX XC4052XL BG432 Pin XC4036EX XC4044EX XC4052XL
XC4036XL XC4044XL XC4036XL XC4044XL
AH16 GND GND GND AB2 I/O I/O I/O
AH17 I/O I/O I/O AB3 I/O I/O I/O
AH18 I/O I/O I/O AB4 I/O I/O I/O
AH19 N.C. N.C. I/O AB28 I/O I/O I/O
AH20 I/O I/O I/O AB29 I/O, FCLK2 I/O, FCLK2 I/O, FCLK2
AH21 VCC VCC VCC AB30 I/O I/O I/O
AH22 I/O I/O I/O AB31 I/O I/O I/O
AH23 N.C. I/O I/O AA1 VCC VCC VCC
AH24 I/O I/O I/O AA2 I/O (D5) I/O (D5) I/O (D5)
AH25 I/O I/O I/O AA3 I/O I/O I/O
AH26 I/O (LDC) I/O (LDC) I/O (LDC) AA4 VCC VCC VCC
AH27 I/O (HDC) I/O (HDC) I/O (HDC) AA28 VCC VCC VCC
AH28 I (M0) I (M0) I (M0) AA29 I/O I/O I/O
AH29 O (M1) O (M1) O (M1) AA30 I/O I/O I/O
AH30 I/O I/O I/O AA31 VCC VCC VCC
AH31 I/O I/O I/O Y1 N.C. N.C. I/O
AG1 N.C. N.C. I/O Y2 I/O (CS0) I/O (CS0) I/O (CS0)
AG2 I/O I/O I/O Y3 I/O I/O I/O
AG3 I/O I/O I/O Y4 I/O I/O I/O
AG4 I/O, GCK5 I/O, GCK5 I/O, GCK5 Y28 I/O I/O I/O
AG28 I/O I/O I/O Y29 I/O I/O I/O
AG29 I/O I/O I/O Y30 I/O I/O I/O
AG30 I/O I/O I/O Y31 N.C. N.C. I/O
AG31 I/O I/O I/O W1 N.C. N.C. I/O
AF1 I/O (D6) I/O (D6) I/O (D6) W2 N.C. I/O I/O
AF2 I/O I/O I/O W3 I/O I/O I/O
AF3 I/O I/O I/O W4 I/O I/O I/O
AF4 I/O I/O I/O W28 N.C. N.C. I/O
AF28 I/O I/O I/O W29 I/O I/O I/O
AF29 N.C. N.C. I/O W30 I/O I/O I/O
AF30 N.C. N.C. I/O W31 N.C. I/O I/O
AF31 I/O I/O I/O V1 GND GND GND
AE1 GND GND GND V2 N.C. I/O I/O
AE2 I/O I/O I/O V3 I/O I/O I/O
AE3 I/O I/O I/O V4 I/O I/O I/O
AE4 N.C. N.C. I/O V28 N.C. I/O I/O
AE28 I/O I/O I/O V29 I/O I/O I/O
AE29 I/O I/O I/O V30 I/O I/O I/O
AE30 I/O I/O I/O V31 GND GND GND
AE31 GND GND GND U1 I/O I/O I/O
AD1 I/O I/O I/O U2 I/O I/O I/O
AD2 N.C. I/O I/O U3 I/O I/O I/O
AD3 I/O I/O I/O U4 I/O I/O I/O
AD4 I/O I/O I/O U28 I/O I/O I/O
AD28 I/O I/O I/O U29 I/O I/O I/O
AD29 I/O I/O I/O U30 I/O I/O I/O
AD30 N.C. I/O I/O U31 I/O I/O I/O
AD31 N.C. I/O I/O T1 I/O (D4) I/O (D4) I/O (D4)
AC1 GND GND GND T2 I/O I/O I/O
AC2 I/O I/O I/O T3 I/O (D3) I/O (D3) I/O (D3)
AC3 I/O I/O I/O T4 GND GND GND
AC4 N.C. I/O I/O T28 GND GND GND
AC28 I/O I/O I/O T29 I/O I/O I/O
AC29 I/O I/O I/O T30 I/O I/O I/O
AC30 I/O I/O I/O T31 I/O I/O I/O
AC31 GND GND GND R1 I/O (RS) I/O (RS) I/O (RS)
AB1 I/O, FCLK3 I/O, FCLK3 I/O, FCLK3 R2 I/O I/O I/O
BG432 Pin XC4036EX XC4044EX XC4052XL BG432 Pin XC4036EX XC4044EX XC4052XL
XC4036XL XC4044XL XC4036XL XC4044XL
D27 I/O I/O I/O B20 I/O I/O I/O
D28 I/O, GCK8 (A15) I/O, GCK8 (A15) I/O, GCK8 (A15) B21 N.C. N.C. I/O
D29 I/O, GCK1 (A16) I/O, GCK1 (A16) I/O, GCK1 (A16) B22 I/O I/O I/O
D30 I/O, TDI I/O, TDI I/O, TDI B23 I/O I/O I/O
D31 I/O, TCK I/O, TCK I/O, TCK B24 I/O I/O I/O
C1 GND GND GND B25 N.C. I/O I/O
C2 I/O (D0, DIN) I/O (D0, DIN) I/O (D0, DIN) B26 I/O (A13) I/O (A13) I/O (A13)
C3 VCC VCC VCC B27 I/O I/O I/O
C4 O, TDO O, TDO O, TDO B28 I/O I/O I/O
C5 I/O I/O I/O B29 I/O I/O I/O
C6 I/O I/O I/O B30 GND GND GND
C7 I/O I/O I/O B31 GND GND GND
C8 N.C. N.C. N.C. A1 VCC VCC VCC
C9 I/O I/O I/O A2 GND GND GND
C10 I/O I/O I/O A3 GND GND GND
C11 I/O I/O I/O A4 N.C. N.C. I/O
C12 I/O I/O I/O A5 I/O (CS1, A2) I/O (CS1, A2) I/O (CS1, A2)
C13 I/O I/O I/O A6 I/O I/O I/O
C14 I/O (A4) I/O (A4) I/O (A4) A7 GND GND GND
C15 I/O (A21) I/O (A21) I/O (A21) A8 N.C. I/O I/O
C16 N.C. I/O I/O A9 GND GND GND
C17 N.C. I/O I/O A10 I/O I/O I/O
C18 I/O (A19) I/O (A19) I/O (A19) A11 VCC VCC VCC
C19 I/O (A11) I/O (A11) I/O (A11) A12 I/O I/O I/O
C20 I/O I/O I/O A13 I/O (A5) I/O (A5) I/O (A5)
C21 I/O I/O I/O A14 GND GND GND
C22 I/O I/O I/O A15 N.C. I/O I/O
C23 I/O I/O I/O A16 I/O (A7) I/O (A7) I/O (A7)
C24 I/O I/O I/O A17 I/O (A9) I/O (A9) I/O (A9)
C25 I/O I/O I/O A18 GND GND GND
C26 I/O I/O I/O A19 I/O I/O I/O
C27 I/O I/O I/O A20 I/O I/O I/O
C28 I/O (A14) I/O (A14) I/O (A14) A21 VCC VCC VCC
C29 VCC VCC VCC A22 I/O I/O I/O
C30 I/O (A17) I/O (A17) I/O (A17) A23 GND GND GND
C31 GND GND GND A24 I/O I/O I/O
B1 GND GND GND A25 GND GND GND
B2 GND GND GND A26 I/O I/O I/O
B3 I/O (A0, WS) I/O (A0, WS) I/O (A0, WS) A27 I/O I/O I/O
B4 I/O I/O I/O A28 N.C. N.C. I/O
B5 I/O I/O I/O A29 GND GND GND
B6 I/O I/O I/O A30 GND GND GND
B7 I/O I/O I/O A31 VCC VCC VCC
B8 N.C. I/O I/O 3/26/96
B9 I/O I/O I/O
B10 I/O I/O I/O Note: Shaded pins should be taken into account when de-
B11 I/O I/O I/O signing PC boards, in case of future replacement by differ-
B12 N.C. N.C. I/O ent devices.
B13 I/O I/O I/O
B14 I/O I/O I/O Note: Viewed from the bottom side, the package pins start
B15 I/O (A20) I/O (A20) I/O (A20) at the top row and go from the left edge to the right edge.
B16 I/O (A6) I/O (A6) I/O (A6) Viewed from the top side, the pins start at the top row and
B17 N.C. I/O I/O go from the right edge to the left edge.
B18 I/O I/O I/O
B19 I/O (A10) I/O (A10) I/O (A10)
Speed PC PQ VQ PG TQ PG PQ CB PG CB PQ HQ PG BG CB PQ HQ PG HQ
Grade 84 100 100 120 144 156 160 164 191 196 208 208 223 225 228 240 240 299 304
XC -4 CI CI CI CI
4003E -3 CI CI CI CI
-2 C C C C
-4 CI CI CI CI CI MB CI
XC MB
4005E
-3 CI CI CI CI CI CI
-2 C C C C C C
XC -4 CI CI CI CI CI
4006E -3 CI CI CI CI CI
-2 C C C C C
XC -4 CI CI CI CI
4008E -3 CI CI CI CI
-2 C C C C
-4 CI CI C I MB CI CI CI
XC MB
4010E -3 CI CI CI CI CI CI
-2 C C C C C C
-4 CI CI CI CI CI MB CI CI
XC MB
4013E -3 CI CI CI CI CI CI CI
-2 C C C C C C C
-4 CI CI CI
XC
-3 CI CI CI
4020E
-2 C C C
-4 CI MB CI CI CI
XC MB
4025E -3 CI CI CI CI
-2 C C C C
C = Commercial, TJ = 0° to +85° C
I = Industrial, TJ = -40° to +100° C
M = Mil Temp, TC = -55° to +125° C
B = MIL-STD-883C Class B, TC = -55° to +125° C
Shaded device/package combinations are not supported.
Speed
HQ208 HQ240 PG299 HQ304 BG352 PG411 BG432
Grade
-4 CI CI CI CI CI
XC4028EX -3 C C C C C
-4 CI CI CI
XC4036EX -3 C C C
-4 CI CI
XC4044EX -3 C C
C = Commercial, TJ = 0° to +85° C
I = Industrial, TJ = -40° to +100° C
M = Mil Temp, TC = -55° to +125° C
B = MIL-STD-883C Class B, TC = -55° to +125° C
Shaded device/package combinations are not supported.
Table 27: Component Availability Chart for XC4000L and XC4000XL FPGAs
Speed PC TQ PQ HQ BG PQ HQ PG HQ BG PG BG PG
Grade 84 176 208 208 225 240 240 299 304 352 411 432 475
-6 C C
XC4005L -5 C C
-4
-6 C C C
XC4010L -5 C C C
-4
-6 C C C
XC4013L -5 C C C
-4
C C C C C
XC4028XL
C C C
XC4036XL
C C
XC4044XL
C C
XC4052XL
C
XC4062XL
C = Commercial, TJ = 0° to +85° C
I = Industrial, TJ = -40° to +100° C
M = Mil Temp, TC = -55° to +125° C
B = MIL-STD-883C Class B, TC = -55° to +125° C
Shaded device/package combinations are not supported.
Speed grades for the XC4000XL have not yet been determined.
No. of Package
XC4003E XC4005E XC4006E XC4008E XC4010E XC4013E XC4020E XC4025E
Pins (Code)
Maximum User I/O 80 112 128 144 160 192 224 256
84 PLCC (PC) 61 61 61 61 61
100 PQFP (PQ) 77 77
VQFP (VQ) 77
120 PGA (PG) 80
144 TQFP (TQ) 112 113
156 PGA (PG) 112 125
160 PQFP (PQ) 112 128 129 129 129
164 CBFP (CB) 112
191 PGA (PG) 144 160
196 CBFP (CB) 160
208 PQFP (PQ) 112 128 144 160 160
HQFP (HQ) 160 160 160
223 PGA (PG) 192 192 192
225 BGA (BG) 160 192
228 CBFP (CB) 192 192
240 PQFP (PQ) 192
HQFP (HQ) 192 192 193
299 PGA (PG) 256
304 HQFP (HQ) 256
Note: This table includes standard user-programmable I/O. It also includes the TDI, TCK, and TMS pins, which can function as
user-programmable I/O if not used for boundary scan. In addition to the I/O listed in this table, the M0 and M2 pins can be
used as inputs only; the M1 and TDO pins can be used as outputs only. All of these pins must be called out using special
library symbols. The XACT software does not use them by default. (See Table 18 on page 47.)
Table 30: Maximum User I/O for XC4000L and XC4000XL Device/Package Combinations
No. of Package
XC4005L XC4010L XC4013L XC4028XL XC4036XL XC4044XL XC4052XL XC4062XL
Pins (Code)
Maximum User I/O 112 160 192 256 288 320 352 384
84 PLCC (PC) 61 61
176 TQFP (TQ) 153
208 PQFP (PQ) 112 160 160
208 HQFP (HQ) 160
225 BGA (BG) 192
240 PQFP (PQ) 192
240 HQFP (HQ) 193
299 PGA (PG) 256
304 HQFP (HQ) 256 256
352 BGA (BG) 256
411 PGA (PG) 288 320 352
432 BGA (BG) 288 320 352
475 PGA (PG) 384
Note: This table includes standard user-programmable I/O. It also includes the TDI, TCK, and TMS pins, which can function as
user-programmable I/O if not used for boundary scan. In addition to the I/O listed in this table, the M0 and M2 pins can be
used as inputs only; the M1 and TDO pins can be used as outputs only. All of these pins must be called out using special
library symbols. The XACT software does not use them by default. (See Table 18 on page 47.)
Example: XC4013E-3HQ240C
Device Type
Temperature Range
Speed Grade C = Commercial (TJ = 0 to +85°C)
-6 I = Industrial (TJ = -40 to +100°C)
-5 M = Military (TC = -55 to+125°C)
-4
-3 Number of Pins
-2
Package Type
PC = Plastic Lead Chip Carrier BG = Ball Grid Array
PQ = Plastic Quad Flat Pack PG = Ceramic Pin Grid Array
VQ = Very Thin Quad Flat Pack HQ = High Heat Dissipation Quad Flat Pack
TQ = Thin Quad Flat Pack MQ = Metal Quad Flat Pack
CB = Top Brazed Ceramic Quad Flat Pack
X6750