You are on page 1of 8

O

United States Patent [19] [11] Patent Number: 4,843,587


Schlunt et al. ’ [45] Date of Patent: Jun. 27, 1989

[54] PROCESSING SYSTEM FOR PERFORMING 3,937,942 2/ 1976 Bromley et al. .................. ,. 235/181
MATRIX MULTIPLICATION 4,120,035 10/1978 Cases et a1. ..... .. .. 364/602
‘ 4,286,328 8/1981 Booker ........ .. 364/851
[75] Inventors: Richard S. Schlunt, Loma Linda; 4,365,310 12/1982 Green 364/322
Stephen W. Decker, Sunland, both of 4,747,069 5/1988 Grinberg et al. ............. .. 364/841 X
cahf' Primary Examiner-Steven Mottola
[73] Assignee: General Dynamics Pomona Division, Attorney, Agent, or Firm-Neil F. Martin
Pomona, Calif. [57] ABSTRACT
[21] Appl' No‘: 131’478 An optical processing system for performing a matrix
[22] Filed: Dec. 10, 1987 multiplication Mx where M is a matrix and x is a vector
_ involves two two-dimensional arrays of optically trans
[gl] (31C: """""""""""" " Goa}; missive elements with each element of the ?rst array
[ 2] ' ' ' """"""""""""""""" " ’ 364/837’ communicating light to the corresponding element of
, _ the second array. The optical transmittance of each row
[58] Fleld of Search """"""""""" " 364gssgi’gg3l71’ 831,316 of one of the arrays is controlled according to the values
' ’ of the vector x, and the optical transmittance of each
[56] References Cited element of the other array is controlled according to the
U S PATENT DOCUMENTS corresponding matrix value rn(i,j). The ?rst array is
' ' uniformly illuminated and the amount of light transmit
;Vinter ------------------------------- - ted through the two arrays is detected by a suitable
’ ’ erg" " array of photodetectors. The output of each photode
Emir;"""" " tector will be proportional to the sum of the products of
3’492’469 V1970 Sig/err‘: 364/841 the vector x(i) with each value of the matrix in the
3:588:486 6/1971 Rosen I: 235/194 cwespm‘ding column 0f the matrix?rfay
3,592,547 7/1971 Noble .... .. 356/71
3,872,293 3/1975 Green ................................ .. 235/181 10 Claims, 2 Drawing Sheets
US. Patent Jun. 27, 1989 Sheet 1 of2 4,843,587
10
18/\\ f
'20

(\22

FIG. 1

, ‘ 14

12/
INPUT
28
% | ————————————————— _....S

—-->- N

——>- N

-—> N
FIG. 3
——> N

26’\_/ __> N g \
(/l I

16

M3”? WWZ‘EW
, \ %
[52
K431
FIG. 4
US. Patent Jun. 27, 1989 Sheet 2 of 2 4,843,587

\22
20
4,843,587
1 2
element with the data entered in the corresponding
PROCESSING SYSTEM FOR PERFORMING element of the column. The output from the array is
MATRIX MULTIPLICATION detected by a suitable arrangement of photodetectors
and can be converted into electrical signals representa
BACKGROUND OF THE INVENTION 5 tive of the results of a matrix multiplication.
The present invention relates to an optical processing In U.S. Pat. No. 4,286,328 of Booker an optical sys
system capable of performing matrix calculations, such tem is used to perform the computation of the radar
as matrix multiplication. ambiguity function or similar mathematical computa
Image processing, spectrum analysis, signal analysis tions. The system includes a programmable mask for
and other areas of data processing require the transfor storing a set of values, and a light source is positioned to
mation of data via a linear operator which is repre illuminate the mask and have its intensity modulated as
sented in the form of a matrix. Mathematically, the a function of the sample values. The image re?ected
operator is denoted by from the array is directed onto a photosensor array to
yield the ambiguity or other function.
y=M X (1) 15 In U.S. patent application Ser. No. 565,052 ?led Dec.
23, 1983 and assigned to the same assignee as the present
where M is the matrix m(i,j), i=l,m. . . R andj=l. . . application, an optical matrix multiplier is described
S (i.e. a matrix with R rows and S columns) and x is an which has the capability of handling a linear multiplica
R element row or column vector x(i),having the values tion operation involving a matrix having bipolar values.
i=1, . . . R. The value m(i,]) represents the element in 20 A light source produces a plurality of light beams w ith
the ith row and the jth column of the matrix. The value the intensity of each beam representative of a predeter
y is represented by the series [y(l) . . . y(S)]where mined value of a known column vector. The beams
illuminate a mask having individual elements forming a
matrix having an extra row to generate an offset in the
25 matrix values to ensure that the matrix has only unipolar
values. The resultant output from the photodetectors
It can be seen that the generation of y(k) requires R can be adjusted to subtract the scalar constant gener
multiplications and R additions, and this process must ated by the additional row of the matrix.
be repeated S times for all values of the vector y to be Some of the known optical processing systems for
calculated. Thus ‘the linear transform of data becomes performing complicated mathematical computations
computationally intense for relatively large values of R are relatively large or complex, require a large number
and S and real time applications are limited. The multi of optical components, and are subject to errors unless
plication and addition process can, of course, be per perfectly aligned. In some cases, a photographic mask
formed by a computer but the mathematical manipula or ?lm is used to simulate the matrix with the result that
tions will then be carried out sequentially and may take the device is not programmable.
an unnecessarily large length of time or require a costly,
complex and relatively large computer system, which is SUMMARY OF THE INVENTION
not suitable where space or weight is limited. According to the present invention an improved opti
Optical processing systems have been used in the past cal processing system for performing matrix multiplica
for performing mathematical manipulations involving tion is provided, which includes two two-dimensional
matrices with large numbers of elements, since such matrix arrays of optically transmissive elements. One of
systems can perform a large number of parallel addi the arrays has the tranmissivity of elements in each of its
tions and multiplications simultaneously. rows or columns controlled in accordance with compo
Such systems typically involve the direction of one or nents of a vector x and the other array has the transmis
more beams of light through an optical mask of variable sivity of each of its elements controlled in accordance
- transmittance. The intensity of the light beam or beams with components of a matrix M. The arrays are dis
is adjusted according to a ?rst set of values, and the posed ‘with elements of each array in registration with
transmittance of predetermined areas of the mask is corresponding elements of the other array, and a ?rst
controlled according to a second set of values. Thus if one of the arrays is uniformly lit by a suitable light
the light beams incident on each area or element of the source. Thus the intensity of light transmitted through
mask are controlled in accordance with the vector x and each pair of aligned elements of the two arrays will
the transmittances of the respective elements of the depend on the product of the transmittance of the two
mask are controlled in accordance with the values of elements and will be proportional to the product of one
the matrix M, a solution for the equation (1) above can of the vector values with one of the matrix values.
be obtained by measuring the amount of light passing Thus if all the light directed through a particular
through the mask. This is done by suitably arranged column j of the matrix is directed onto a suitable photo
photodetectors. detector, the output of the photodetector will be pro
In U.S. Pat. No. 3,592,547 of Noble, for example, portional to
analog data to be transformed is entered on a column of
resolution elements by suitable control of the optical
transmissivity of the elements, and a matrix transform R , (3)

function is entered on an array of resolution elements in


Y0) = 1.21 X(0m(w)
a similar manner. Light projected through the column
of elements is imaged on the array by means of a lens where the matrix has R rows.
which images light from each element in the column on 65 Thus the result of the matrix multiplication can be
the corresponding row of elements in the matrix array. obtained from the magnitude of the electrical signals
Light transmitted through each element of the array is produced from a suitable array of photodetectors for
proportional to the product of the data entered in that receiving light transmitted through each column of the
4,843,587
3 4.
aligned matrix arrays. Alternatively, the vector may be ments 16 disposed in a matrix of R rows and S columns,
arranged as a column vector with the photodectectors as best shown in FIG. 2. The ?rst mask 12 is illuminated
arranged in a column to receive the light transmitted by a planar uniform light source 18 which illuminates
through each row of the array. the entire area of its outer face equally. The light source
In a preferred embodiment of the invention the two may be any suitable device for producing a uniform
arrays comprise transmissive liquid crystal displays, plane of illumination, such as a ?uorescent lamp or a
which are arranged either in face to face contact or single light source expanded by means of a lens.
close enough together to limit dispersion of light be The light output of the second mask 14 is directed by
tween corresponding elements of the two arrays. The a suitable guide such as the cylindrical lens 20 as shown
outer face of the ?rst array is uniformly illuminated by in FIG. 1 or ?ber optic connections onto an array of
a suitable light source, and either a lens, ?ber optic photodetectors 22 such as photodiodes. A suitable eleca
connections or other suitable light guides are provided trical circuit (not shown) is connected to the outputs of
to direct light transmitted through the two arrays to the the photodiodes to manipulate the individual outputs to
corresponding photodetectors. produce the desired mathematical computation. The
This arrangement has the advantage that it can be photodiodes 22 are provided in a single row of S ele
provided as a single, compact unit of simple design and ments with each photodiode in the row receiving the
with relatively few optical components. It has low output from all the elements in a corresponding column
power consumption and does not involve signi?cant of the array 14, as shown in FIG. 2.
optical alignment problems. The masks 12, 14 can comprise any suitable light
The optical processing system may be designed to transmissive device or material with individual loca
handle either negative matrix values or negative vector tions corresponding to the elements 16 for providing
values. In the ?rst case an extra column is provided in different values of light transmittance. They may, for
each array to add a factor N such that each matrix value example, be photographic plates or ?lm or any two
will be positive. Subsequent mathematical manipula dimensional spatial light modulator such as back light
tions of the outputs of the respective photodiodes can be 25 transmissive liquid crystal displays (LCD’s). The mask
carried out with suitable circuitry to produce the de elements are preferably programmable to allow any
sired result. In the second case each vector value has a desired values to be entered.
bias B added to it such that each resultant vector value As shown in FIG. 2, the first mask 12 has values of a
is positive and the two arrays are expanded to include vector'x entered in each of its rows, with the compo
an additional array for producing the matrix multiplica nents x(i) of the vector controlling the transmittance of
tion MB. The extra array has the value of the bias B the elements in the corresponding row of the array.
encoded in it so that the outputs can be manipulated to Thus each element in the ?rst row will have a transmit
subtract the resultant matrix constant M.B from the tance proportional to X(l), the second row elements will
output M.(x +B) of the basic array to produce the be proportional to X(2) and so on. If the mask is an
desired product of M.X. 35 LCD, the vector input x will be loaded serially line by
The system may be designed to perform a multiplica line into the array in a conventional manner for liquid
tion of two matrices instead of a row or column vector crystal display systems. The loading is accomplished via
with a matrix. serial to parallel converter 24. A suitable microproces
BRIEF DESCRIPTION OF THE DRAWINGS sor (not shown) may be provided for controlling the
40 input values x(i). Although the values of the vector in
The present invention will be better understood from this embodiment are entered row by row, it will be
the following detailed description of some preferred understood that they may alternatively be entered col
embodiments of the invention, taken in conjunction umn by column, i. e. with the elements in each co
with the accompanying drawings, in which like refer lumnnn proportional to respective values of the vector.
ence numerals refer to like parts and in which: 45 In this case the output photodiodes will be arranged in
FIG. 1 is a side view schematic representation of the a single column rather than in a row as indicated in
arrangement of the components of an optical processing FIG. 2.
system according to one embodiment of the present The second array 14 is preferably also an LCD. The
invention; array 14 comprises a mask holding the information
FIG. 2 is a schematic perspective view showing the 50 contained in a matrix M having R rows and S columns,
separate components of the system of FIG. 1 and illus with each matrix entry m(i,j) controlling the transmit
trating the two masks of the system each having areas of tance of the display element 16 located in the ith row
varying transmittance disposed in rows and columns to and the jth column of the array, as indicated in FIG. 2.
form a two-dimensional matrix; The matrix values are loaded into the LCD row by row
FIG. 3 illustrates one of the masks in an alternative 55 via serial to parallel converter 26 under the control of
embodiment of the invention; and the microprocessor so that the values can be changed at
FIG. 4 is a block diagram illustrating an electrical will. For some speci?c applications, the mask LCD may
circuit for mathematically manipulating the output of be replaced by a photographic mask to simplify con
photodetectors receiving the output of masks con?g struction and reduce cost.
ured as in FIG. 3. 60 The two arrays are arranged such that light transmit
DESCRIPTION OF THE PREFERRED ted through each element of the ?rst array is directed
EMBODIMENTS through the corresponding element of the second array.
The arrays may be in face to face contact as indicated in
FIG. 1 illustrates a ?rst embodiment of an optical FIG. 1, or may be spaced apart by a distance insuf?cient
processing system for performing matrix multiplication 65 to allow any signi?cant amount of light dispersion be
according to the present invention. The system 10 basi tween the elements. Alternatively suitable light guides
cally comprises two optically transmissive masks 12, 14 such as ?ber optic connections may be provided be
each having a plurality "of optically transmissive ele tween corresponding elements of the two arrays. When
4,843,587
5 6
all the desired values of a vector x (x=Xi . . . x(R) and a row vector, the same manipulation can be carried out
a matrix M (M m(ij) where i=1, . . . R and i=1, . . . R) by adding an extra row to the arrays in a similar manner.
have been loaded into the respective arrays by suitable An alternative modi?cation will enable the system to
control of the transmittance of the respective liquid handle computations involving negative x(i) values. A
crystal elements, and the ?rst array is uniformly lit, the bias B is added to each element in the ?rst array, such
amount of light which will pass through each location that the ?rst array contains values x’(i)=x(i)+B which
(i,j) of the aligned arrays will be proportional to the are all positive. The ?rst array is expanded to include an
product of x(i) and m(ij). Thus the result of the matrix additional of equal size 0 the ?rst in an extra array of an
multiplication equal number of elements array with each element hav
'10 ing a transmittance proportional to B. The second array
is also expanded to repeat the values of the matrix M so
I will be proportional to the outputs of the photodiodes. that the output of the two extra arrays will be propor
Since all the light passing through the jth column is tional to the product of the scalar value B with the
focussed on or directed to the jth photodiode of the matrix M. The row of photodiodes will also be ex
photodetector array, the output of that photodiode will panded to include an extra row of photodiodes for re
be proportional to: ceiving the outputs of each column of the extra array.
The extra diodes will be connected as shown in FIG.
R (4) 4 via a charge coupled device delay line to the negative
yo) = 1.51 xomoan input of the operational ampli?er 36. Since the output of
20 the original two arrays will be the result of the matrix
The outputs of all the photodiodes are connected to multiplication M(x+B) and the output of the additional
circuitry(not shown) which conventionally provides an arrays will be the result of MB, the subtraction of these
electrical signal representative of the amount of light two results will produce the desired result of the multi
falling on the photodetector. These signals will be pro plication M.x.
vided to conventional processing circuitry (not shown) With the optical processing device as described
for producing the desired results of the matrix multipli above using back light transmissive LCD’s for the two
cation M.x. arrays it is possible to perform a 512 point Fourier trans
The result of equation (4) above is based on the prem form in the time it takes for the crystals to orientate
ise that m(i,j) 50 and x(i) 50, since light can be ex themselves. The system is simple, fully programmable,
pressed only in unipolar quantities. However, the pro and compact, and can be constructed as a single rela
cessing system can be modi?ed to enable it to handle tively lightweight unit as indicated in FIG. 1, making it
either negative values of m(i,j) or negative x(i) values. extremely useful for processing operations in applica
FIGS. 3 and 4 show a modi?cation to the system to tions where space is limited. It can be programmed at
enable it to handle negative values of the matrix M. If will to handle sequential matrix multiplications and can
m(i,j) is negative, a constant N can be found such that be con?gured to handle relatively large matrices in a
m'(i,j)=m(i,j)+N is positive for all i and all j. Each of relatively small size unit. It will have very low power
the two arrays 12 and 14 is provided with a correspond consumption and optical alignment problems will be
ing extra column 28. This is illustrated for the array 14 reduced or eliminated because of the uniform illumina
in FIG. 3. The rows of the ?rst array are loaded with tion and the use of a minimal number of lenses. In fact
the values of x as in the ?rst embodiment, while the each 40 the system may use ?ber optic connections in place of
element of the extra column of the second array 14 has the ?nal lens to direct the output to the photodiodes to
a transmittance proportional to the constant N and the remove any critical alignment problems.
rest of the elements have transmittances proportional to The system of this invention may be used in any area
the corresponding values of m'(i,j). of data processing requiring the solution of a matrix
Now the output of the jth photodiode will be 45 multiplication, such as Fourier transforms, image pro
cessing, spectrum analysis, signal analysis, optical corre!
R . (5)
lation, and so on.
Y0) = ‘.51 some» + N» Although some preferred embodiments of the inven
tion have been described above by way of example, it
An extra photodiode 30 is provided in the array for will be understood by those skilled in the ?eld that
receiving the outputs from elements in the extra row, modi?cations may be made to the disclosed embodi
and this photodiode will have an output proportional to ments without departing from the scope of the inven
tion, which is de?ned by the appended claims.
N 122 x(i) (6) We claim:
x=l 55 1. An optical processing system for performing ma
trix multiplication, comprising:
Subtracting (6) from (5) gives equation (4). This sub two optically transmissive masks each including a
traction can be accomplished by circuitry as generally plurality of individual elements disposed in‘ a two
indicated in FIG. 4. Each photodiode of the array 22 is dimensional matrix, the matrices being of equiva
connected to a corresponding channel 31 of a charge 60 lent size and the masks being aligned in series such
coupled device delay line 32 which is connected to one that elements of the ?rst mask are in registration
of the inputs of an operational ampli?er 34. The photo with corresponding elements of the second mask;
diode 28 corresponding to the extra column is con data input means for controlling the optical transmit
nected via charge coupled device 36 to the opposite tance of each element of one of the masks in accor
input of the ampli?er 34. Thus the output signal from 65 dance with a set of values of a vector x, and con
ampli?er 32 will be proportional to the result of sub trolling the optical transmittance of each element
tracting equation (6) from equation (5) above. Where of the other mask in accordance with correspond
the vector x is arranged as a column vector rather than ing values of a matrix M;
4,843,587
7 8
light source means for uniformly illuminating the mined value of a known RX S matrix and a constant N,
outer face of the ?rst mask; and and for controlling the transmittance of each element in
photodetection means positioned to receive light the remaining column in accordance with the value of
transmitted through the two masks for determining the constant N, and said l098APA.Cl9] photodetection
the intensity of light received and for producing an means includes means of detecting the light transmitted
output signal representative of the product of said through the S columns of said two masks and for pro
vector x with said matrix M. ducing a ?rst output signal representative of the intern
2. The system as claimed in claim 1, wherein the sity of said transmitted light, and means for detecting
transmittances of the elements of at least one of said the light transmitted through said extra column and for
masks are selectively programmable. l0 producing a second output signal representative of said
3. The system as claimed in claim 2, wherein said transmitted light, and further including signal process
programmable mask is a transmissive liquid crystal dis ing means for subtracting said second output signal
play. from said ?rst output signal to produce an output repre
4. The system as claimed in claim 3, wherein both of sentative of the product of said vector with said known
said masks comprise transmissive liquid crystal displays. 15 RX S matrix.
5. The system as claimed in claim 1, wherein each of 10. The system as claimed in claim 1, wherein each of
said masks is programmable and said data input means said matrices has R rows and 28 columns, said data
comprises computer means for entry of data into said entry means comprising means for entering values of a
masks. vector x plus a constant bias B in the ?rst S columns of
6. The system as claimed in claim 1, wherein said one of the matrices, means for entering the constant bias
masks are positioned in face to face contact. B in each element of the second S columns of that ma
7. The system as claimed in claim 1, wherein the trix, and means for entering values of a known RXS
components of said system are provided as a single unit. matrix in the ?rst and the second S columns of the other
8. The system as claimed in claim 1, wherein said data matrix, and said photodetection means comprises means
input means controls the optical transmittance of the 25 for detecting the light transmitted through the ?rst S
elements in each row of the ?rst mask in accordance columns of the two matrices and for producing a ?rst
with respective values of a vector x, and said photode output signal representative of the intensity of the de
tection means includes a series of photodetectors and tected light, and means for detecting the light transmit
light guide means for directing light transmitted ted through the second S columns of the two matrices
through each column of the second mask to a respective and for producing a second output signal representative
one of said series of photodetectors. of the intensity of the detected light, and further includ~
9. The system as claimed in claim 1, wherein each ing signal processing means for subtracting said second
mask de?nes a matrix having R rows and S+l columns, output signal from said ?rst output signal and producing
said data entry means comprises means for controlling a resultant output representative of the product of said
the transmittance of each element of S columns of said 35 vector x with said R><S matrix.
other mask in accordance with the sum of a predeter * * I! * *

45

55

65
UNITED STATES PATENT AND TRADEMARK OFFICE
CERTIFICATE OF CORRECTION
PATENT N0. : 4,843,587
DATED : June 27, 1989
INVENTUMS) 2 Schlunt, et al.
It is certified that error appears in the above-identified patent and that said Letters Patent is hereby
corrected as shown below:

Column 8, claim 9, line 4, please delete 1098APA.C19]

Signed and Sealed this


Second Day of October, 1990

Attest:

HARRY F. MANBECK, JR.

Attesting O?icer Commissioner of Patents and Trademarks

You might also like