of unused—or wasted—product terms left over. The product term clusters available to each
macrocell within a PAL block are shown in Tables 10 and 11.
Each product term cluster is associated with a macrocell. The size of a cluster depends on the
conﬁguration of the associated macrocell. When the macrocell is used in synchronous mode
(Figure 2a), the basic cluster has 4 product terms. When the associated macrocell is used in
asynchronous mode (Figure 2b), the cluster has 2 product terms. Note that if the product term
cluster is routed to a different macrocell, the allocator conﬁguration is not determined by the
mode of the macrocell actually being driven. The conﬁguration 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
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 conﬁgurations of the logic
allocator are shown in Figures 3 and 4.
MACH 4 Family