2-19
D
Q
M
M
Q
L
rd
M
DELAY
M M
M M
Input Clock IK
I - capture
I - update
GLOBAL
S/R
FLIP-FLOP/LATCH
INVERT
S/R
Input Data 1 I1
Input Data 2 I2
X3025
PAD
V
CC
SLEW
RATE
PULL
UP
M
OUT
SEL
D
Q
rd
M
INVERT
OUTPUT
M
M
INVERT
S/R
Ouput Clock OK
Ouput Data O
O - update
Q - capture
O - capture
Boundary
Scan
M
EXTEST
TS - update
TS - capture
3-State TS
sd
sd
TS INV
OUTPUT
TS/OE
PULL
DOWN
INPUT
Boundary
Scan
Boundary
Scan
Each output buffer can be configured to be either fast or
slew-rate limited, which reduces noise generation and
ground bounce. Each I/O pin can be configured with either
an internal pull-up or pull down resistor, or with no internal
resistor. Independent of this choice, each IOB has a pull-
up resistor during the configuration process.
The 3-state output driver uses a totem pole n-channel
output structure. V
OH
is one n-channel threshold lower
than V
CC
, which makes rise and fall delays more
symmetrical.
Per IOB Per IOB Per IOB # Slew
Family Source Sink Pair Sink Modes
XC4000 4 12 24 2
XC4000A 4 24 48 4
XC4000H 4 24* 48 2
*XC4000H devices can sink only 4 mA configured for SoftEdge mode
Figure 11. XC4000 and XC4000A I/O Block
Detailed Functional Description
XC4000 and XC4000A Input/Output Blocks
(For XC4000H family, see page 2-82)
The IOB forms the interface between the internal logic and
the I/O pads of the LCA device. Under configuration con-
trol, the output buffer receives either the logic signal (.out)
routed from the internal logic to the IOB, or the complement
of this signal, or this same data after it has been clocked
into the output flip-flop.
As a configuration option, each flip-flop (CLB or IOB) is
initialized as either set or reset, and is also forced into this
programmable initialization state whenever the global Set/
Reset net is activated after configuration has been com-
pleted. The clock polarity of each IOB flip-flop can be
configured individually, as can the polarity of the 3-state
control for the output buffer.
XC4000, XC4000A, XC4000H Logic Cell Array Families
2-20
The inputs drive TTL-compatible buffers with 1.2-V input
threshold and a slight hysteresis of about 300 mV. These
buffers drive the internal logic as well as the D-input of the
input flip-flop.
Under configuration control, the set-up time of this flip-flop
can be increased so that normal clock routing does not
result in a hold-time problem. Note that the input flip-flop
set-up time is defined between the data measured at the
device I/O pin and the clock input at the IOB. Any clock
routing delay must, therefore, be subtracted from this set-
up time to arrive at the real set-up time requirement on the
device pins. A short specified set-up time might, therefore,
result in a negative set-up time at the device pins, i.e. a
hold-time requirement, which is usually undesirable. The
default long set-up time can tolerate more clock delay
without causing a hold-time requirement. For faster input
register setup time, with non-zero hold, attach a "NODELAY"
property to the flip-flop. The exact method to accomplish
this depends on the design entry tool.
The input block has two connections to the internal logic,
I1 and I2. Each of these is driven either by the incoming
data, by the master or by the slave of the input flip-flop.
Wide Decoders
The periphery of the chip has four wide decoder circuits at
each edge (two in the XC4000A). The inputs to each
decoder are any of the I1 signals on that edge plus one
local interconnect per CLB row or column. Each decoder
generates High output (resistor pull-up) when the AND
condition of the selected inputs, or their complements, is
true. This is analogous to the AND term in typical PAL
devices. Each decoder can be split at its center.
The decoder outputs can drive CLB inputs so they can be
combined with other logic, or to form a PAL-like AND/OR
structure. The decoder outputs can also be routed directly
to the chip outputs. For fastest speed, the output should be
on the same chip edge as the decoder.
Figure 12. Example of Edge Decoding. Each row or column of
CLBs provide up to three variables (or their complements)
IOB
IOB
BA
INTERCONNECT
( C) .....
(A • B • C) .....
(A B C) .....
(A B C) .....
.I1.I1
X2627
C
Configurable Logic Blocks
Configurable Logic Blocks implement most of the logic in
an LCA device. Two 4-input function generators (F and G)
offer unrestricted versatility. A third function generator (H)
can combine the outputs of F and G with a ninth input
variable, thus implementing certain functions of up to nine
variables, like parity check or expandable-identity com-
parison of two sets of four inputs.
The four control inputs C1 through C4 can each generate
any one of four logic signals, used in the CLB.
Enable Clock, Asynchronous Preset/Reset, DIN, and
H1, when the memory function is disabled, or
Enable Clock, Write Enable, D0, and D1, when the
memory function is enabled.
Since the function-generator outputs are brought out inde-
pendently of the flip-flop outputs, and DIN and H1 can be
used as direct inputs to the two flip-flops, the two combina-
torial and the two sequential functions in the CLB can be
used independently. This versatility increases logic den-
sity and simplifies routing.
The asynchronous flip-flop input can be configured as
either set or reset. This configuration option also deter-
mines the state in which the flip-flops become operational
after configuration, as well as the effect of an externally or
internally applied Set/Reset during normal operation.
Fast Carry Logic
The CLBs can generate the arithmetic-carry output for
incoming operands, and can pass this extra output on to
the next CLB function generator above or below. This
connection is independent of normal routing resources
and it is, presently, only supported by Hard Macros. A later
software release will accommodate Soft Macros and will
permit graphic editing of the fast logic circuitry. This fast
carry logic is one of the most significant improvements in
the XC4000 families, speeding up arithmetic and counting
into the 60-MHz range.
Using Function Generators as RAMs
Using XC4000 devices, the designer can write into the
latches that hold the configuration content of the function
generators. Each function generator can thus be used as
a small Read/Write memory, or RAM. The function gen-
erators in any CLB can be configured in three ways.
Two 16 x 1 RAMs with two data inputs and two data
outputs – identical or, if preferred, different address-
ing for each RAM
One 32 x 1 RAM with one data input and one data
output
One 16 x 1 RAM plus one 5-input function generator
2-21
Figure 14. Fast Carry Logic in Each CLB
Figure 15. CLB Function Generators Can Be Used as
Read/Write Memory Cells
X1519
LOGIC
FUNCTION
OF
G1-G4
G4
G3
G2
G1
G'
LOGIC
FUNCTION
OF
F1-F4
F4
F3
F2
F1
F'
LOGIC
FUNCTION
OF
F', G',
AND
H1
H'
DIN
F'
G'
H'
DIN
F'
G'
H'
G'
H'
H'
F'
S/R
CONTROL
D
EC
RD
SD
Q
YQ
S/R
CONTROL
D
EC
RD
SD
Q
XQ
1
1
K
(CLOCK)
Y
X
H1 DIN S/R EC
C1 C2 C3 C4
MULTIPLEXER CONTROLLED
BY CONFIGURATION PROGRAM
Figure 13. Simplified Block Diagram of XC4000 Configurable Logic Block
Logic
Function
of G1 - G4
G'
Carry
Logic
Carry
Logic
F'
Logic
Function
of F1 - F4
M
F4
F3
F2
F1
COUT
CIN 1
CIN 2
B0
A0
G4
G3
G2
G1
A1
B1
SUM 1
SUM 0
X5373
M
Write G'
M
Write F'
M
16 x 2
WE DATA
IN
G'
Function
Generator
G4
G3
G2
G1
WE DATA
IN
F'
Function
Generator
F4
F3
F2
F1
M
Configuration Memory Bit
WE(S/R) D1(H1) D0(DIN) EC
C1 C2 C3 C4
X6074

XC4003-6PC84C

Mfr. #:
Manufacturer:
Xilinx
Description:
IC FPGA 61 I/O 84PLCC
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union