Académique Documents
Professionnel Documents
Culture Documents
1860
A CMOS Field-Programmable
Analog Array
Edward K. F. Lee a n d P. Glenn Gulak, Member, ZEEE
Abstract -The design details and test results of a field-programmable analog array (FPAA) prototype chip in 1.2-pm
CMOS are presented. The analog array is based on subthreshold circuit techniques and consists of a collection of homogeneous configurable analog blocks (CABS) and an interconnection network. Interconnections between CABs and the analog
functions to be implemented in each block are defined by a set
of configuration bits loaded serially into an on-board shift
register by the user. Macromodels are developed for the analog
functions in order to simulate various neural network applications on the field-programmable analog array.
I. INTRODUCTION
IELD-programmable gate arrays for prototyping digital circuits are now commercially available from several vendors (as in [l]). Conspicuously absent in the
literature is a field-programmable analog array (FPAA)
and perhaps for good reason-many
more challenges
must be addressed such as bandwidth, linearity, signalto-noise ratio, frequency response, etc. Noteworthy, however, are several recent commercial products and publications in the literature that offer fixed topologies and
programmable coefficients. For example, most singlechip analog neural network implementations are designed
for a fixed network topology even though the synaptic
weights are programmable [41, 191, [121, [131. As pointed
out by Sivilotti [14], it would be advantageous to devise an
IC strategy whereby various analog networks can be realized, as determined by the user, in some type of reusable
generic prototyping medium. The approach taken in this
paper is to focus on a small number of specialized analog
functions that are realized using subthreshold techniques.
Furthermore, differential circuitry is used for noise immunity, and current-mode signaling provides addition and
subtraction operations. In addition, memory functions
such as integrators, coefficient storage, and sampled analog delay lines are also supported.
As manufacturability and cost consciousness has grown
among circuit designers, an awareness of the importance
of testability has also increased. But, testing of analog
circuits is a difficult task. The FPAA concept provides an
Manuscript received May 14, 1991; revised July 16, 1991. This work
was supported by an operating grant from NSERC and Micronet.
The authors are with the VLSI Research Group, Department of
Electrical Engineering, University of Toronto, Toronto, Canada M5S
1A4.
IEEE Log Number 9103054.
1
I
1861
111. CONFIGURABLE
ANALOG
BLOCK
A typical [l] field-programmable gate array (FPGA)
consists of configurable logic blocks (CLBs) that perform
the required logic function and an interconnection network to provide connections between CLBs. The FPAA
presented in this paper is modeled on a similar strategy,
although there are many issues unique to analog circuits
that must be accommodated. The analog functions will be
grouped into CABs and the interconnection network will
connect them together. One important observation, however, is that the circuit topologies for different functions
are similar. Therefore, different functions can be conveniently obtained by configuring the circuit primitives
(Table I(a)> with a few transistors that act as analog
switches (Table I(b)).
The design of the CAB is shown in Fig. 3. The configuration of the CAB is determined by a local 3-b shift
register. Each bit of the shift register controls various
switches and/or multiplexors within the CAB itself. For
example, when the shift register contains the bit pattern
001, the CAB is configured as a four-quadrant multiplier
with X and Y as inputs and 2 as output. Table I1 shows
all the configurations inside the CAB.
Though various specialized types of CABs could be
defined in the same manner, controlling the level of
granularity of the CAB is critical to minimizing the number of 1 / 0 lines that ultimately must be accommodated
by the interconnection network.
IV. INTERCONNECTIONNETWORK
Interconnection networks can usually be categorized
into two types: crossbar and multistage (hierarchical). The
crossbar interconnection network provides full interconnection capability between any two connected elements,
which is known as nonblocking. It also provides less delay
on data transfer. However, the crossbar approach exhibits
an area growth rate of O ( N 2 )for connecting N inputs to
N outputs. On the other hand, hierarchical interconnection networks evolve with slower cost growth. Examples of
this type of network include Banyan [3], omega [5], and
1862
IEEE JOURNAL OF SOLID-STATE CIRCUITS, VOL. 26, NO. 12, DECEMBER 1991
TABLE I
D~SCRIPTIONS
OF (a) THE CIRCUIT
PRIMITIVES
AND (b) THE SWITCHES
Prlmitive Element
Ill,
)D V4
I
VSSl
v5
GND
TABLE I1
CONFIGURATIONS
OF THE CAB
Description
VDOL
1
Buffer from X to Y
P
O
X+AY
W
Buffer from X to Y
+-X
*
1.0 +z
Z=W
Z=XW
x*s:
Comparator from x to Y
x ~ - > Y _
Comparator from X to Y
I I
Symbol
Z=XW
Circuit Diagram
Switch Element
1.0 *z
z=w
Signal multiplier
IY-x*z
I-
Constant multiplier
Y=
K
D*E
Difkrentiml D and E
W(Z)
ments are not capable of being fully connected. Furthermore, as the CABs are increased, the dimension of the
array will be proportional to N x log N and the layout of
the array will be rectangular. However, a layout with an
aspect ratio of one is usually desired in a VLSI design.
Consequently, the network mentioned above may not be
suitable for the design of the array.
From a VLSI point of view, the area of the layout is of
most concern. Therefore, the interconnection network
must have the property of area universality [SI. A
network that is area universal is a network that, for a
given area, can efficiently embed any circuit whose size is
only slightly smaller. One such area-universal network is a
1
I
1863
z
Y
W U i
V. IMPLEMENTATION
AND PROGRAMMING
OF THE
PROTOTYPE
DESIGN
In order to demonstrate the feasibility of the circuits, a
prototype containing the portion inside the dotted box 9
(Fig. 4) was designed, which consists of two CABS and an
SB. The shift registers of the SB and the shift registers of
the CAB are connected together as a chain. The configuration bits are set by shifting the bits into the chip serially.
A control unit is needed to determine the required bit
patterns for the configuration cycles as well as the clock
phases of the shift registers to control the begin and end
of the different cycles.
1864
IEEE JOURNAL OF SOLID-STATE CIRCUITS, VOL. 26, NO. 12, DECEMBER 1991
TABLE 111
SPECIFICATIONS
OF THE CAE3 AND SB
Item
Size
= 30%
98
148
75%
600
P
400
200
Differential
output
current
InAI
-200 .
.,........
-400
-600
-200
-100
100
200
1865
..................
- .1021
...................
Differential
output
current
[nAl
-120
-go!
-50
-100
SO
100
Fig. 8. DC measurement for the comparator in cascade with the Gilbert multiplier.
Based on the models developed, the multilayer feedforward network and the Hopfield network are simulated to
illustrate the application of the FPAA in this area. Fig. 10
shows the schematic diagram of a single-layer neural
network realized by the circuits discussed above. Four
switches are assumed in each connection between different functions. The weights of the network were obtained
by training the network with the delta rule [2]. The input
differential voltage values of the multiplier models are set
according to the resulting normalized weight values. The
input and output patterns used during training are shown
in Table IV. The response of the network is correct and
shown in Fig. 11.
The behavior of the networks due to the offset errors of
the circuit is also studied and simulated with the use of a
multilayer network to solve the classic EXCLUSIVE-OR
problem. Table V shows the corresponding input and
output patterns. The simulation results are shown in Fig.
12 with the values of the constant differential current
sources randomly disturbed in the range of -2.5 to 2.5
1866
mumn 1
neuron 5
output
current
Input
[nAI
I
0
10
20
30
40
time ( p e c )
Fig. 12. Simulation results for the EXCLUSIVE-OR problem with offset
in the range of - 2.5 to 2.5 nA.
+
ourput
neuron 5
output
current
TABLE IV
INPUTAND OUTPUT
PA-ITERNSFOR THE SINGLE-LAYER NETWORK
Input pattern
~
Output pattern
~~~~
( - 1, 1, - 1, 1, - 1)
(+ 1, - 1, 1, - 1, 1)
[nAl
(-1,+l)
(+ 1, - 1)
(+L + 1 )
... ..
10
20
30
40
time (psec]
Fig. 13. Simulations results for the EXCLUSIVE-OR problem with offset
in the range of - 10 to 10 nA.
r r s p o m c 01 neuron 6
rcbPo"lc of neuron 1
- 5 7
.loo+
--
U...
1.2
. ..
..
I
I
2.4
36
time [psec]
Output pattern
where
the output of neuron i,
wij the weight from i to j,
Bi
the constant input to neuron i.
oi
1
I
1867
I4
1-17
G
OUQUl
0 5
1 5
time [psec]
VII. CONCLUSION
The concept of developing a field-programmable analog array (FPAA) to realize different neural network
topologies is proposed. The array is designed using subthreshold circuit techniques to achieve very low power
dissipation. The interconnection network is based on an
area-universal fat tree. Consequently, the layout of the
array is compact and area efficient. An experimental
prototype design was successfully implemented and tested.
The prototype can be dynamically reconfigured to perform various analog functions. A set of macromodels for
the circuits is developed. These models are then used in
the simulation of various neural networks. Based on the
prototype and simulation results, the FPAA concept appears to be a promising candidate for neural network
applications.
ACKNOWLEDGMENT
The authors thank Prof. S. Zukotynski for generous
access to the Keithley SMUs and to Oswin Hall for
[l] The Programmable Gate Array Data Book, Xilinx, San Jose, CA,
1989.
[2] G. E. Hinton, D. E. Rumelhart, and R. J. Williams, Parallel
Distributed Processing: Explorations in the Microstructure of Cognition, vol. 1, Foundations. Cambridge, M A MIT Press, 1986.
[3] L. R. Coke and G. J. Lipovski, Banyan networks for partitioning
multiprocessing system, in Proc. 1st Annual Computer Architecture
Conf., 1973, pp. 21-28.
[4] H. P. Graf and L. D. Jackel, Analog electronic neural network
circuits, IEEE Circuits Devices Mag., vol. 5 , no. 4, pp. 44-49, July
1989.
[5] D. H. Lawrie, Access and alignment of data in an array processor,
IEEE Trans. Comput., vol. C-24, pp. 1145-1155, 1975.
[6] E. K. F. Lee, Field programmable analog arrays-A CMOS
realization, M.A.Sc. thesis, Univ. Toronto, Toronto, Ont., Canada,
1991.
[7] C. E. Leiserson, Fat-trees: Universal networks for hardware-efficient supercomputing, IEEE Trans. Comput., vol. C-34, no. 10, pp.
892-901, 1985.
181 C. E. Leiserson, VLSI Theory and Parallel Supercomputing. Cambridge, M A MIT Press, 1989.
[9] J. Mann, R. Lippmann, B. Berger, and J. Raffel, A self-organizing
neural net chip, in Proc. IEEE 1988 Custom Integrated Circuits
Conf., 1988, pp. 10.3.1-10.3.5.
[lo] R. J. McEliece, E. C. Posner, E. R. Rodemich, and S. S. Venkatesh,
The capacity of the Hopfield associative memory, IEEE Trans.
Inform. Theory, vol. IT-33, no. 4, pp. 461-482, July 1987.
[ 111 J. H. Patel, Processor-memory interconnections for multiprocessors, in Proc. 6th Annual Symp. Computer Architecture, 1979, pp.
168- 177.
[ 121 J. I. Raffel, Electronic implementation of neuromorphic systems,
in Proc. IEEE I988 Crrstom Integrated Circuits Conf., 1988, pp.
10.3.1- 10.3.5.
1131 D. B. Schwartz, R. E. Howard, and W. E. Hubbard, A programmable analog neural network chip, IEEE. J . Solid-state Circuits, vol. 24, no. 2, pp. 313-319, Apr. 1989.
[14] M. A. Sivilotti, A dynamically configurable architecture for prototyping analog circuits, in Advanced Res. VLSI: Proc. Decennial
Caltech Conf. VLSI. Cambridge, MA: MIT Press, 1988.