APPLICATION NOTE
0
R
XCR3128: 128 Macrocell CPLD
0
14*
DS034 (v1.2) August 10, 2000
Product Specification
Introduction
•
•
•
Industry's first TotalCMOS™ PLD - both CMOS design
and process technologies
Fast Zero Power (FZP™) design technique provides
ultra-low power and very high speed
IEEE 1149.1-compliant, JTAG Testing Capability
- Four pin JTAG interface (TCK, TMS, TDI, TDO)
- IEEE 1149.1 TAP Controller
- JTAG commands include: Bypass, Sample/Preload,
Extest, Usercode, Idcode, HighZ
3.3V, In-System Programmable (ISP) using the JTAG
interface
- On-chip supervoltage generation
- ISP commands include: Enable, Erase, Program,
Verify
- Supported by multiple ISP programming plat-
forms
High speed pin-to-pin delays of 10 ns
Ultra-low static power of less than 100
µA
100% routable with 100% utilization while all pins and
all macrocells are fixed
Deterministic timing model that is extremely simple to
use
Four clocks available
Programmable clock polarity at every macrocell
Support for asynchronous clocking
Innovative XPLA™ architecture combines high-speed
with extreme flexibility
1000 erase/program cycles guaranteed
20 years data retention guaranteed
Logic expandable to 37 product terms
PCI compliant
Advanced 0.5µ E
2
CMOS process
Security bit prevents unauthorized access
Design entry and verification using industry standard
and Xilinx CAE tools
Reprogrammable using industry standard device
programmers
Innovative control term structure provides either sum
terms or product terms in each logic block for:
- Programmable 3-state buffer
- Asynchronous macrocell register preset/reset
- Programmable global 3-state pin facilitates "bed of
nails" testing without using logic resources
- Available in PLCC, VQFP, and PQFP packages
- Available in both commercial and industrial grades
Description
The XCR3128 CPLD (Complex Programmable Logic
Device) is the third in a family of CoolRunner
®
CPLDs from
Xilinx. These devices combine high speed and zero power
in a 128 macrocell CPLD. With the FZP design technique,
the XCR3128 offers true pin-to-pin speeds of 10 ns, while
simultaneously delivering power that is less than 100
µA
at
standby without the need for ‘ turbo-bits’ or other
power-down schemes. By replacing conventional sense
amplifier methods for implementing product terms (a tech-
nique that has been used in PLDs since the bipolar era)
with a cascaded chain of pure CMOS gates, the dynamic
power is also substantially lower than any competing
CPLD. These devices are the first TotalCMOS PLDs, as
they use both a CMOS process technology
and
the pat-
ented full CMOS FZP design technique. For 5V applica-
tions, Xilinx also offers the high speed XCR5128 CPLD that
offers these features in a full 5V implementation.
The Xilinx FZP CPLDs utilize the patented XPLA
(eXtended Programmable Logic Array) architecture. The
XPLA architecture combines the best features of both PLA
and PAL type structures to deliver high speed and flexible
logic allocation that results in superior ability to make
design changes with fixed pinouts. The XPLA structure in
each logic block provides a fast 10 ns PAL path with five
dedicated product terms per output. This PAL path is joined
by an additional PLA structure that deploys a pool of 32
product terms to a fully programmable OR array that can
allocate the PLA product terms to any output in the logic
block. This combination allows logic to be allocated effi-
ciently throughout the logic block and supports as many as
37 product terms on an output. The speed with which logic
is allocated from the PLA array to an output is only 2.5 ns,
regardless of the number of PLA product terms used, which
results in worst case t
PD
’s of only 12.5 ns from any pin to
any other pin. In addition, logic that is common to multiple
outputs can be placed on a single PLA product term and
shared across multiple outputs via the OR array, effectively
increasing design density.
The XCR3128 CPLDs are supported by industry standard
CAE tools (CadencE/OrCAD, Exemplar Logic, Mentor,
Synopsys, Synario, Viewlogic, and Synplicity), using text
(ABEL, VHDL, Verilog) and/or schematic entry. Design ver-
ification uses industry standard simulators for functional
and timing simulation. Development is supported on per-
sonal computer, Sparc, and HP platforms. Device fitting
uses a Xilinx developed tool, XPLA Professional (available
on the Xilinx web site).
1
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
DS034 (v1.2) August 10, 2000
www.xilinx.com
1-800-255-7778
R
XCR3128: 128 Macrocell CPLD
The XCR3128 CPLD is electrically reprogrammable using
industry standard device programmers from vendors such
as Data I/O, BP Microsystems, SMS, and others. The
XCR3128 also includes an industry-standard, IEEE
1149.1, JTAG interface through which in-system program-
ming (ISP) and reprogramming of the device is supported.
by a Zero-power Interconnect Array (ZIA). The ZIA is a vir-
tual crosspoint switch. Each logic block is essentially a
36V16 device with 36 inputs from the ZIA and 16 macro-
cells. Each logic block also provides 32 ZIA feedback paths
from the macrocells and I/O pins.
From this point of view, this architecture looks like many
other CPLD architectures. What makes the CoolRunner
family unique is what is inside each logic block and the
design technique used to implement these logic blocks.
The contents of the logic block will be described next.
XPLA Architecture
Figure 1
shows a high level block diagram of a 128 macro-
cell device implementing the XPLA architecture. The XPLA
architecture consists of logic blocks that are interconnected
MC0
MC1
I/O
MC15
16
16
16
16
LOGIC
BLOCK
36
36
LOGIC
BLOCK
MC0
MC1
I/O
MC15
MC0
MC1
I/O
MC15
16
16
ZIA
LOGIC
BLOCK
36
36
LOGIC
BLOCK
16
16
LOGIC
BLOCK
36
36
LOGIC
BLOCK
MC0
MC1
I/O
MC15
MC0
MC1
I/O
MC15
16
16
MC0
MC1
I/O
MC15
16
16
MC0
MC1
I/O
MC15
16
16
16
16
LOGIC
BLOCK
36
36
LOGIC
BLOCK
MC0
MC1
I/O
MC15
SP00464
Figure 1: Xilinx XPLA Architecture
DS034 (v1.2) August 10, 2000
www.xilinx.com
1-800-255-7778
2
R
XCR3128: 128 Macrocell CPLD
Logic Block Architecture
Figure 2
illustrates the logic block architecture. Each logic
block contains control terms, a PAL array, a PLA array, and
16 macrocells. the six control terms can individually be con-
figured as either SUM or PRODUCT terms, and are used to
control the preset/reset and output enables of the 16 mac-
rocells’ flip-flops. The PAL array consists of a programma-
ble AND array with a fixed OR array, while the PLA array
consists of a programmable AND array with a programma-
ble OR array. The PAL array provides a high speed path
through the array, while the PLA array provides increased
product term density.
Each macrocell has five dedicated product terms from the
PAL array. The pin-to-pin t
PD
of the XCR3128 device
through the PAL array is 10 ns. If a macrocell needs more
than five product terms, it simply gets the additional product
terms from the PLA array. The PLA array consists of 32
product terms, which are available for use by all 16 macro-
cells. The additional propagation delay incurred by a mac-
rocell using one or all 32 PLA product terms is just 2.5 ns.
So the total pin-to-pin t
PD
for the XCR3128 using six to 37
product terms is 12.5 ns (10 ns for the PAL + 2.5 ns for the
PLA).
36 ZIA INPUTS
CONTROL
5
6
PAL
ARRAY
PLA
ARRAY
(32)
SP00435A
Figure 2: Xilinx XPLA Logic Block Architecture
3
www.xilinx.com
1-800-255-7778
DS034 (v1.2) August 10, 2000
TO 16 MACROCELLS
R
XCR3128: 128 Macrocell CPLD
Macrocell Architecture
Figure 3
shows the architecture of the macrocell used in
the CoolRunner family. The macrocell consists of a flip-flop
that can be configured as either a D- or T-type. A D-type
flip-flop is generally more useful for implementing state
machines and data buffering. A T-type flip-flop is generally
more useful in implementing counters. All CoolRunner fam-
ily members provide both synchronous and asynchronous
clocking and provide the ability to clock off either the falling
or rising edges of these clocks. These devices are
designed such that the skew between the rising and falling
edges of a clock are minimized for clocking integrity. There
are four clocks available on the XCR3128 device. Clock 0
(CLK0) is designated as the "synchronous" clock and must
be driven by an external source. Clock 1 (CLK1), Clock 2
(CLK2), and Clock 3 (CLK3) can either be used as a syn-
chronous clock (driven by an external source) or as an
asynchronous clock (driven by a macrocell equation). The
timing for asynchronous clocks is different in that the t
CO
time is extended by the amount of time that it takes for the
signal to propagate through the array and reach the clock
network, and the t
SU
time is reduced.
Two of the control terms (CT0 and CT1) are used to control
the Preset/Reset of the macrocell’s flip-flop. The Pre-
set/Reset feature for each macrocell can also be disabled.
Note that the Power-on Reset leaves all macrocells in the
"zero" state when power is properly applied. The other four
control terms (CT2-CT5) can be used to control the Output
Enable of the macrocell’s output buffers. The reason there
are as many control terms dedicated for the Output Enable
of the macrocell is to insure that all CoolRunner devices are
PCI compliant. The macrocell’s output buffers can also be
always enabled or disabled. All CoolRunner devices also
provide a Global 3-state (GTS) pin, which, when enabled
and pulled Low, will 3-state all the outputs of the device.
This pin is provided to support "In-circuit Testing" or
"Bed-of-nails" testing.
There are two feedback paths to the ZIA: one from the mac-
rocell, and one from the I/O pin. The ZIA feedback path
before the output buffer is the macrocell feedback path,
while the ZIA feedback path after the output buffer is the I/O
pin ZIA path. When the macrocell is used as an output, the
output buffer is enabled, and the macrocell feedback path
can be used to feedback the logic implemented in the mac-
rocell. When the I/O pin is used as an input, the output
buffer will be 3-stated and the input signal will be fed into
the ZIA via the I/O feedback path, and the logic imple-
mented in the buried macrocell can be fed back to the ZIA
via the macrocell feedback path. It should be noted that
unused inputs or I/Os should be properly terminated (see
the section on
“Terminations” on page 9
in this data sheet
and the application note
Terminating Unused I/O Pins in
Xilinx XPLA1 and XPLA2 CoolRunner™ CPLDs).
TO ZIA
PAL
LA
D/T
INIT
(P or R)
CLK0
CLK0
CLK1
CLK1
CLK2
CLK2
CLK3
CLK3
CT0
CT1
GND
CT2
CT3
CT4
CT5
V
CC
GND
SP00457
Q
GTS
GND
Figure 3: XCR3128 Macrocell Architecture
DS034 (v1.2) August 10, 2000
www.xilinx.com
1-800-255-7778
4
R
XCR3128: 128 Macrocell CPLD
Simple Timing Model
Figure 4
shows the CoolRunner Timing Model. The Cool-
Runner timing model looks very much like a 22V10 timing
model in that there are three main timing parameters,
including t
PD
, t
SU
, and t
CO
. In other competing architec-
tures, the user may be able to fit the design into the CPLD,
but is not sure whether system timing requirements can be
met until after the design has been fit into the device. This is
because the timing models of competing architectures are
very complex and include such things as timing dependen-
cies on the number of parallel expanders borrowed, shar-
able expanders, varying number of X and Y routing
channels used, etc. In the XPLA architecture, the user
knows up front whether the design will meet system timing
requirements. This is due to the simplicity of the timing
model.
TotalCMOS Design Technique for Fast Zero
Power
Xilinx is the first to offer a TotalCMOS CPLD, both in pro-
cess technology and design technique. Xilinx employs a
cascade of CMOS gates to implement its Sum of Products
instead of the traditional sense amp approach. This CMOS
gate implementation allows Xilinx to offer CPLDs which are
both high performance and low power, breaking the para-
digm that to have low power, you must have low perfor-
mance. Refer to
Figure 5
and
Table 1
showing the I
CC
vs.
Frequency of our XCR3128 TotalCMOS CPLD (data taken
w/eight up/down, loadable 16 bit counters at 3.3V, 25°C).
INPUT PIN
t
PD_PAL
= COMBINATORIAL PAL ONLY
t
PD_PLA
= COMBINATORIAL PAL + PLA
OUTPUT PIN
INPUT PIN
REGISTERED
t
SU_PAL
= PAL ONLY
t
SU_PLA
= PAL + PLA
D
Q
REGISTERED
t
CO
OUTPUT PIN
GLOBAL CLOCK PIN
SP00441
Figure 4: CoolRunner Timing Model
5
www.xilinx.com
1-800-255-7778
DS034 (v1.2) August 10, 2000