1 2
respective set of operands, (ii) a digital multiplier first DIGITAL DATA PROCESSING APPARATUS and second inputs of which are coupled to said common
USING DAISY CHAIN CONTROL data input and to a data output of the operand store
respectively, for multiplying successive items of the set
This is a continuation of application Ser. No. 5 of sequential input digital data items by respective oper07/427,411, filed Oct. 24, 1989, now abandoned. ands read from the operand store, (iii) an accumulator
This invention relates to digital data processing appa- to the data input of which the output of the multiplier is ratus. coupled, for accumulating the results of the multiplica
It is sometimes required that the same set of input tions, (iv) a latch arrangement for storing and outputdata items is processed several times using different sets 10 ting the respective item of output data, and (v) data of operands to produce respective items of output data. transfer means coupling the output of the accumulator This is the case, for example, in each layer of a multi- to a data mput 0f tne corresponding latch, said data layer perceptron the organisation of an analog example transfer means having a non-linear transfer characterisof which (being a type of so-called "neural network" ) tic ^ ^ outputs 0f said iatch arrangements being is shown diagrammatically in FIG. 1 of the drawings. In 15 ... t0 a common data output, the apparatus includthe example shown in FIG. 1 the perceptron comprises mg clock pulse generator means coupled to the operand three layers each in the form of a set of four data pro- stores md the latch arrangements for reading out the cessing cells 1-*, 5-* and 9-12 respectively Each cell contents of the storage locations of each said operand has four inputs and one output, the outputs 13-16 of the store m succession ^ m step ^ the corresponding cells 1-4 of the first layer each being connected to a 20 readK)ut of the of the st locations of the
respective mput of each cell 5-8 of the second layer othef ^ an(J stores ^ readin Qut the amteBt of and the outputs 17-20 of the cells 5-8 of the second ^ ^ ^gemer* in succession onto the common layer each being connected to a respective mput of each ^ fAlthoueh each resoective set of ooerands
"ii v;,of !rr- ^ °rts 2i-%f* „ ^^ss^ss^^s^js^ssSi
cells 9-12 of the third layer together constitute the 25 ^^^^u, K» A. TM„ ;„ „ii „;,„„„,..,„ , v°
„ „ r j. ^ It- r ■ not necessarily be the case in all circumstances. How
output of the network. Four items of mput data are . ...' . , , . of these
denoted by circles 25,26,27 and 28 respectively, each of ev,' Ti- ♦3? ^iT\
iL . . 3 ,. ,' .. . r. , 1 «« * sets are different from each other),
these being applied to a respective mput of each cell 1-4 Ti, , . ,' . . , ,
of the first laVer. In generaleach of the data processing . 11 has n0^ recognised that the requisite calcula
cells 1-12 is arranged to produce an output signal which 30 t10"5 m «J«J ^ of a multi-layer perceptron can be
is a non-linear function of the result of subtracting a Pffonned digitally m an efficacious manner if the cells
threshold value (which may be zero) from the sum of its of fch ... *re arranged to have a common data input
input signals after these input signals have been TMd a common data output and the set of mput data
weighted by multiplying them by predetermined re- &ntt for each layer is arranged to occur sequentially on
spective weighting factors. The non-linear function 35 the re»evant common data mput. The mput data items
may have, for example, a sigmoid form. As another <** then processed in parallel by the cells of the
example it may be obtained by means of a hard limiting relevant layers and, ii the results are latched and then
process. The perceptron may be employed, for exam- read out sequentially onto the relevant data output,
pie, as a classifier for an input vector represented by the these results can act directly as the sequential input data
four items of input data 25-28, the resulting vector at 40 for tfle next layer (if present). The respective weighting
the outputs 21-24 being indicative of to which of a factors required for the processing in each cell can be
plurality of classes the input vector belongs (these st°red therein and read out as required,
classes being stored in the perceptron in the form of the If> for example, the apparatus is required to form part
set of weighting factors). The choice of four cells per of a multilayer perceptron then, as implied above, said
layer and three layers is, of course, only an example; in 45 common data output may constitute the common data
some cases fewer layers will suffice and, moreover, it is mPut of a further such set of digital data processing
not even essential that each layer comprises the same cells. As an alternative, however, a single set of cells
number of cells. may be used recursively, the common data output
Perceptrons are discussed, for example in an article thereof then being coupled to the common data input
by R. P. Lippmann entitled "An Introduction to Com- 50 thereof. If maximum processing speed for successive
puting with Neural Nets" in IEEE ASSP Magazine, sets of input data items is required then the former ar
April 1987, pages 4-22, particularly pages 13-18. Practi- rangement will be preferred, whereas if rmnimisation of
cal implementations of neural networks up to the pres- the hardware employed takes precedence then the latter
ent time appear, in general, to employ analog circuitry arrangement will probably be preferred. In both cases
(see e.g. EP-A-242110). However, it is often preferred 55 the clock pulse generator means is preferably arranged
to employ digital techniques and it is an object of the to read out the contents of each latch arrangement in
present invention to provide a digital circuit architec- succession in step with the reading out of the contents
ture which enables the multiple crossover connections of the storage locations of the operand stores. If this is
inherent in the architecture shown in FIG. 1 to be the case synchronization between the inputting of suc
avoided. 60 cessive data items to a cell from other cells and the
The invention provides digital data processing appa- reading out of the relevant operands in that cell can be
ratus comprising a set of digital data processing cells for facilitated.
each processing, using a respective set of operands, the Embodiments of the invention will now be described,
same set of sequential input digital data items to produce by way of example, with reference to the accompanying
a respective item of digital output data, said cells having 65 diagrammatic drawings, in which:
a common input for the set of sequential input data FIG. 1 shows the organisation of a multilayer percep
items and each comprising (i) an operand store having a tron which operates in an analog manner, as referred to
storage location corresponding to each operand of the previously,