Publication#
17466
Rev:
M
Amendment/
0
Issue Date:
March 2000
MACH 4 CPLD Family
High Performance E
2
CMOS
®
In-System Programmable Logic
FEATURES
x
High-performance, E
2
CMOS 3.3-V & 5-V CPLD families
x
Flexible architecture for rapid logic designs
— Excellent First-Time-Fit
TM
and refit feature
— SpeedLocking
TM
performance for guaranteed fixed timing
— Central, input and output switch matrices for 100% routability and 100% pin-out retention
x
High speed
— 7.5ns t
PD
Commercial and 10ns t
PD
Industrial
— 111.1MHz f
CNT
x
32 to 256 macrocells; 32 to 384 registers
x
44 to 256 pins in PLCC, PQFP, TQFP and BGA packages
x
Flexible architecture for a wide range of design styles
— D/T registers and latches
— Synchronous or asynchronous mode
— Dedicated input registers
— Programmable polarity
— Reset/ preset swapping
x
Advanced capabilities for easy system integration
— 3.3-V & 5-V JEDEC-compliant operations
— JTAG (IEEE 1149.1) compliant for boundary scan testing
— 3.3-V & 5-V JTAG in-system programming
— PCI compliant (-7/-10/-12 speed grades)
— Safe for mixed supply voltage system designs
— Bus-Friendly
TM
inputs and I/Os
— Programmable security bit
— Individual output slew rate control
x
Advanced E
2
CMOS process provides high-performance, cost-effective solutions
x
Supported by ispDesignEXPERT
TM
software for rapid logic development
— Supports HDL design methodologies with results optimized for MACH 4
— Flexibility to adapt to user requirements
— Software partnerships that ensure customer success
x
Lattice and third-party hardware programming support
— LatticePRO
TM
software for in-system programmability support on PCs and automated test
equipment
— Programming support on all major programmers including Data I/O, BP Microsystems, Advin,
and System General
2
MACH 4 Family
Notes:
1. For information on the M4-96/96 device, please refer to the M4-96/96 data sheet at www.latticesemi.com.
2. “M4-xxx” is for 5-V devices. “M4LV-xxx” is for 3.3-V devices.
Table 1. MACH 4 Device Features
1, 2
Feature
M4-32/32
M4LV-32/32
M4-64/32
M4LV-64/32
M4-96/48
M4LV-96/48
M4-128/64
M4LV-128/64
M4-128N/64
M4LV-128N/64
M4-192/96
M4LV-192/96
M4-256/128
M4LV-256/128
Macrocells
32
64
96
128
128
192
256
Maximum User I/O Pins
32
32
48
64
64
96
128
t
PD
(ns)
7.5
7.5
7.5
7.5
7.5
7.5
7.5
f
CNT
(MHz)
111
111
111
111
111
111
111
t
COS
(ns)
5.5
5.5
5.5
5.5
5.5
5.5
5.5
t
SS
(ns)
5.5
5.5
5.5
5.5
5.5
5.5
5.5
Static Power (mA)
25
25
50
70
70
85
100
JTAG Compliant
Yes
Yes
Yes
Yes
No
Yes
Yes
PCI Compliant
Yes
Yes
Yes
Yes
Yes
Yes
Yes
MACH 4 Family
3
GENERAL DESCRIPTION
The MACH
®
4 family from Lattice offers an exceptionally flexible architecture and delivers a
superior Complex Programmable Logic Device (CPLD) solution of easy-to-use silicon products
and software tools. The overall benefits for users are a guaranteed and predictable CPLD
solution, faster time-to-market, greater flexibility and lower cost. The MACH 4 devices offer
densities ranging from 32 to 256 macrocells with 100% utilization and 100% pin-out retention.
The MACH 4 family offer 5-V (M4-xxx) and 3.3-V (M4LV-xxx) operation.
MACH 4 products are 5-V or 3.3-V in-system programmable through the JTAG (IEEE Std. 1149.1)
interface. JTAG boundary scan testing also allows product testability on automated test
equipment for device connectivity.
All MACH 4 family members deliver First-Time-Fit and easy system integration with pin-out
retention after any design change and refit. For both 3.3-V and 5-V operation, MACH 4 products
can deliver guaranteed fixed timing as fast as 7.5 ns t
PD
and 111 MHz f
CNT
through the
SpeedLocking feature when using up to 20 product terms per output (Table 2).
Note:
1. C = Commercial, I = Industrial
The MACH 4 family offers numerous density-I/O combinations in Thin Quad Flat Pack (TQFP),
Plastic Quad Flat Pack (PQFP), Plastic Leaded Chip Carrier (PLCC), and Ball Grid Array (BGA)
voltage designs so that the 3.3-V devices can accept 5-V inputs, and 5-V devices do not overdrive
3.3-V inputs. Additional features include Bus-Friendly inputs and I/Os, a programmable power-
down mode for extra power savings and individual output slew rate control for the highest speed
transition or for the lowest noise transition.
Table 2. MACH 4 Speed Grades
Device
Speed Grade
1
-7
-10
-12
-14
-15
-18
M4-32/32
M4LV-32/32
C
C, I
C, I
I
C
I
M4-64/32
M4LV-64/32
C
C, I
C, I
I
C
I
M4-96/48
M4LV-96/48
C
C, I
C, I
I
C
I
M4-128/64
M4LV-128/64
C
C, I
C, I
I
C
I
M4-128N/64
M4LV-128N/64
C
C, I
C, I
I
C
I
M4-192/96
M4LV-192/96
C
C, I
C, I
I
C
I
M4-256/128
M4LV-256/128
C
C, I
C, I
I
C
I
4
MACH 4 Family
Table 3. MACH 4 Package and I/O Options (Number of I/Os and dedicated inputs in Table)
Package
M4-32/32
M4LV-32/32
M4-64/32
M4LV-64/32
M4-96/48
M4LV-96/48
M4-128/64
M4LV-128/64
M4-128N/64
M4LV-128N/64
M4-192/96
M4LV-192/96
M4-256/128
M4LV-256/128
44-pin PLCC
32+2
32+2
44-pin TQFP
32+2
32+2
48-pin TQFP
32+2
32+2
84-pin PLCC
64+6
100-pin TQFP
48+8
64+6
100-pin PQFP
64+6
144-pin TQFP
96+16
208-pin PQFP
128+14
256-ball BGA
128+14
MACH 4 Family
5
FUNCTIONAL DESCRIPTION
®
blocks interconnected by a central switch matrix. The central switch matrix allows
communication between PAL blocks and routes inputs to the PAL blocks. Together, the PAL
blocks and central switch matrix allow the logic designer to create large designs in a single
device instead of having to use multiple devices.
The key to being able to make effective use of these devices lies in the interconnect schemes.
In MACH 4 architecture, the macrocells are flexibly coupled to the product terms through the
logic allocator, and the I/O pins are flexibly coupled to the macrocells due to the output switch
matrix. In addition, more input routing options are provided by the input switch matrix. These
resources provide the flexibility needed to fit designs efficiently.
Notes:
1. 16 for MACH 4 devices with 1:1 macrocell-I/O cell ratio (see next page).
2. Block clocks do not go to I/O cells in M4(LV)-32/32.
3. M4(LV)-192/96 and M4(LV)-256/128 have dedicated clock pins which cannot be used as inputs and do not connect to the central
switch matrix.
I/O
Pins
Clock/Input
Pins
Central Switch Matrix
I/O
Pins
I/O
Pins
Dedicated
Input Pins
PAL Block
PAL Block
Logic
Allocator
with XOR
Output/
Buried
Macrocells
33/
34/
36
16
16
Clock
Generator
Logic
Array
Output Switch Matrix
Input
Switch
Matrix
I/O Cells
16
16
8
Note 1
Note 2
Note 3
4
PAL Block
17466G-001
Figure 1. MACH 4 Block Diagram and PAL Block Structure
6
MACH 4 Family
Table 4. Architectural Summary of MACH 4 devices
The Macrocell-I/O cell ratio is defined as the number of macrocells versus the number of I/O
cells internally in a PAL block (Table 4).
The central switch matrix takes all dedicated inputs and signals from the input switch matrices
and routes them as needed to the PAL blocks. Feedback signals that return to the same PAL block
still must go through the central switch matrix. This mechanism ensures that PAL blocks in MACH
4 devices communicate with each other with consistent, predictable delays.
The central switch matrix makes a MACH 4 device more advanced than simply several PAL
devices on a single chip. It allows the designer to think of the device not as a collection of
blocks, but as a single programmable device; the software partitions the design into PAL blocks
through the central switch matrix so that the designer does not have to be concerned with the
internal architecture of the device.
Each PAL block consists of:
x
Product-term array
x
Logic allocator
x
Macrocells
x
Output switch matrix
x
I/O cells
x
Input switch matrix
x
Clock generator
MACH 4 Devices
M4-64/32, M4LV-64/32
M4-96/48, M4LV-96/48
M4-128/64, M4LV-128/64
M4-128N/64, M4LV-128N/64
M4-192/96, M4LV-192/96
M4-256/128, M4LV-256/128
M4-32/32
M4LV-32/32
Macrocell-I/O Cell
Ratio
2:1
1:1
Input Switch Matrix
Yes
Yes
Input Registers
Yes
No
Central Switch Matrix
Yes
Yes
Output Switch Matrix
Yes
Yes
MACH 4 Family
7
Product-Term Array
The product-term array consists of a number of product terms that form the basis of the logic
being implemented. The inputs to the AND gates come from the central switch matrix (Table 5),
and are provided in both true and complement forms for efficient logic implementation.
Logic Allocator
Within the logic allocator, product terms are allocated to macrocells in “product term clusters.”
The availability and distribution of product term clusters are automatically considered by the
software as it fits functions within a PAL block. The size of a product term cluster has been
optimized to provide high utilization of product terms, making complex functions using many
product terms possible. Yet when few product terms are used, there will be a minimal number
of unused—or wasted—product terms left over. The product term clusters available to each
Each product term cluster is associated with a macrocell. The size of a cluster depends on the
configuration of the associated macrocell. When the macrocell is used in synchronous mode
cluster is routed to a different macrocell, the allocator configuration is not determined by the
mode of the macrocell actually being driven. The configuration is always set by the mode of the
macrocell that the cluster will drive if not routed away, regardless of the actual routing.
In addition, there is an extra product term that can either join the basic cluster to give an
extended cluster, or drive the second input of an exclusive-OR gate in the signal path. If included
with the basic cluster, this provides for up to 20 product terms on a synchronous function that
uses four extended 5-product-term clusters. A similar asynchronous function can have up to 18
product terms.
When the extra product term is used to extend the cluster, the value of the second XOR input
can be programmed as a 0 or a 1, giving polarity control. The possible configurations of the logic
Table 5. PAL Block Inputs
Device
Number of Inputs to PAL Block
M4-32/32 and M4LV-32/32
M4-64/32 and M4LV-64/32
M4-96/48 and M4LV-96/48
M4-128/64 and M4LV-128/64
M4-128N/64 and M4LV-128N/64
33
33
33
33
33
M4-192/96 and M4LV-192/96
M4-256/128 and M4LV-256/128
34
34
8
MACH 4 Family
Table 6. Logic Allocator for All MACH 4 Devices (except M4(LV)-32/32)
Output Macrocell
Available Clusters
Output Macrocell
Available Clusters
M
0
C
0
, C
1
, C
2
M
8
C
7
,
C
8
, C
9
, C
10
M
1
C
0
, C
1
, C
2
, C
3
M
9
C
8
, C
9
, C
10
, C
11
M
2
C
1
, C
2
, C
3
, C
4
M
10
C
9
, C
10
, C
11
, C
12
M
3
C
2
, C
3
, C
4
, C
5
M
11
C
10
, C
11
, C
12
, C
13
M
4
C
3
, C
4
, C
5
, C
6
M
12
C
11
, C
12
, C
13
, C
14
M
5
C
4
, C
5
, C
6
, C
7
M
13
C
12
, C
13
, C
14
, C
15
M
6
C
5
, C
6
, C
7
,
C
8
M
14
C
13
, C
14
, C
15
M
7
C
6
, C
7
,
C
8
, C
9
M
15
C
14
, C
15
Table 7. Logic Allocator for M4(LV)-32/32
Output Macrocell
Available Clusters
Output Macrocell
Available Clusters
M
0
C
0
, C
1
, C
2
M
8
C
8
, C
9
, C
10
M
1
C
0
, C
1
, C
2
, C
3
M
9
C
8
, C
9
, C
10
, C
11
M
2
C
1
, C
2
, C
3
, C
4
M
10
C
9
, C
10
, C
11
, C
12
M
3
C
2
, C
3
, C
4
, C
5
M
11
C
10
, C
11
, C
12
, C
13
M
4
C
3
, C
4
, C
5
, C
6
M
12
C
11
, C
12
, C
13
, C
14
M
5
C
4
, C
5
, C
6
, C
7
M
13
C
12
, C
13
, C
14
, C
15
M
6
C
5
, C
6
, C
7
M
14
C
13
, C
14
, C
15
M
7
C
6
, C
7
M
15
C
14
, C
15
0 Default
0 Default
Prog. Polarity
To n-1
To n-2
From n-1
To n+1
From n+1
From n+2
Basic Product
Term Cluster
Extra
Product
Term
Logic Allocator
n
n
To Macrocell
n
0 Default
0 Default
Prog. Polarity
To n-1
To n-2
From n-1
To n+1
From n+1
From n+2
Basic Product
Term Cluster
Extra
Product
Term
Logic Allocator
n
n
To Macrocell
n
17466G-006
Figure 2. Logic Allocator: Configuration of Cluster “n” Set by Mode of Macrocell “n”
17466G-005
a. Synchronous Mode
b. Asynchronous Mode
MACH 4 Family
9
Note that the configuration of the logic allocator has absolutely no impact on the speed of the
signal. All configurations have the same delay. This mean