parallel implementation of optical symbolic substitution logic using

9
Parallel implementation of optical symbolic substitution logic using shadow-casting and polarization Ahmed Louri We propose a parallel implementation method for optical symbolic substitution logic. The method uses shadow-casting principles for the efficient implementation of fundamental operations required in symbolic substitution logic; namely, image replication, spatial shifting, and combination. The use of light polarization allows for the implementation in parallel of several substitution rules without replicating the input image. The distinctive features of the method include light efficiency, flexibility, cascadability, and programmabili- ty. Key words: Optical symbolic substitution logic, shadow-casting, polarization, parallel processing, light efficiency, programmability, cascadability. 1. Introduction The escalating demands for processing power and speed in a wide range of numerical and symbolic appli- cations are placing stringent demands on computer system design. It is generally agreed that significant improvements in computer performance in the future can only be achieved through exploitation of parallel- ism at all machine organization levels (architecture and algorithm designs). A key issue in the design of parallel processing systems is their ability to provide adequate support for interprocessor and processor memory communications. As it turns out, communi- cations (interprocessor and processor memory) can be the deciding and limiting factor in cost and perfor- mance of parallel processing machines. However, conventional electronic technology seems to be reach- ing its fundamental physical limits and therefore is unable to provide adequate architectural support for high speed and massively parallel processing.1 2 Optics, due to its inherent parallelism, high tempo- ral-spatial bandwidths, and noninterfering communi- cations, has the potential of breaking through the per- formance barriers faced by conventional technology and is therefore under serious consideration for imple- menting future high performance parallel comput- The author is with University of Arizona, Department of Electri- cal & Computer Engineering, Tucson, Arizona 85721. Received 18 December 1989. 0003-6935/91/050540-09$05.00/0. © 1991 Optical Society of America. ers. 3 - 5 As a result, several optical computing tech- niques and architectures, with varying degrees of computational efficiency and design complexity have recently emerged (see, for example, Ref. 6). Extensive research and laboratory experiments are under way to assess the validity and merits of these novel tech- niques. Among the wide variety of proposed tech- niques, optical symbolic substitution logic (SSL) 7 and optical array logic 8 (shadow-casting) have gained wide popularity among the research community. We introduce here a hybrid computation method that combines SSL, shadow-casting principles, and the parallelism of light polarization. First, architectural merits and implementation requirements of SSL are discussed, then a new implementation method based on shadow-casting principles and light polarization is proposed for its efficient realization. The main dis- tinctive features of the new method are simultaneous implementation of several substitution rules, energy efficiency, cascadability, and, most important, pro- grammability. II. Computational Merits and Implementation Requirements of SSL This section is intended to highlight briefly the basic concept of SSL, its applicability range, and its optical implementation requirements. A. Basic Principles of SSL Symbolic substitution logic 9 is a pattern transforma- tion design technique for performing digital logic opti- cally. It uses both the temporal-spatial bandwidths and the high connectivity of optics for constructing digital optical computing systems. The motivation behind this computing technique is the exploitation of 540 APPLIED OPTICS / Vol. 30, No. 5 / 10 February 1991

Upload: vuongdang

Post on 12-Feb-2017

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Parallel implementation of optical symbolic substitution logic using

Parallel implementation of optical symbolic substitutionlogic using shadow-casting and polarization

Ahmed Louri

We propose a parallel implementation method for optical symbolic substitution logic. The method usesshadow-casting principles for the efficient implementation of fundamental operations required in symbolicsubstitution logic; namely, image replication, spatial shifting, and combination. The use of light polarizationallows for the implementation in parallel of several substitution rules without replicating the input image.The distinctive features of the method include light efficiency, flexibility, cascadability, and programmabili-ty. Key words: Optical symbolic substitution logic, shadow-casting, polarization, parallel processing, lightefficiency, programmability, cascadability.

1. IntroductionThe escalating demands for processing power and

speed in a wide range of numerical and symbolic appli-cations are placing stringent demands on computersystem design. It is generally agreed that significantimprovements in computer performance in the futurecan only be achieved through exploitation of parallel-ism at all machine organization levels (architectureand algorithm designs). A key issue in the design ofparallel processing systems is their ability to provideadequate support for interprocessor and processormemory communications. As it turns out, communi-cations (interprocessor and processor memory) can bethe deciding and limiting factor in cost and perfor-mance of parallel processing machines. However,conventional electronic technology seems to be reach-ing its fundamental physical limits and therefore isunable to provide adequate architectural support forhigh speed and massively parallel processing.1 2

Optics, due to its inherent parallelism, high tempo-ral-spatial bandwidths, and noninterfering communi-cations, has the potential of breaking through the per-formance barriers faced by conventional technologyand is therefore under serious consideration for imple-menting future high performance parallel comput-

The author is with University of Arizona, Department of Electri-cal & Computer Engineering, Tucson, Arizona 85721.

Received 18 December 1989.0003-6935/91/050540-09$05.00/0.© 1991 Optical Society of America.

ers.3-5 As a result, several optical computing tech-niques and architectures, with varying degrees ofcomputational efficiency and design complexity haverecently emerged (see, for example, Ref. 6). Extensiveresearch and laboratory experiments are under way toassess the validity and merits of these novel tech-niques. Among the wide variety of proposed tech-niques, optical symbolic substitution logic (SSL)7 andoptical array logic8 (shadow-casting) have gained widepopularity among the research community.

We introduce here a hybrid computation methodthat combines SSL, shadow-casting principles, and theparallelism of light polarization. First, architecturalmerits and implementation requirements of SSL arediscussed, then a new implementation method basedon shadow-casting principles and light polarization isproposed for its efficient realization. The main dis-tinctive features of the new method are simultaneousimplementation of several substitution rules, energyefficiency, cascadability, and, most important, pro-grammability.

II. Computational Merits and ImplementationRequirements of SSL

This section is intended to highlight briefly the basicconcept of SSL, its applicability range, and its opticalimplementation requirements.

A. Basic Principles of SSLSymbolic substitution logic9 is a pattern transforma-

tion design technique for performing digital logic opti-cally. It uses both the temporal-spatial bandwidthsand the high connectivity of optics for constructingdigital optical computing systems. The motivationbehind this computing technique is the exploitation of

540 APPLIED OPTICS / Vol. 30, No. 5 / 10 February 1991

Page 2: Parallel implementation of optical symbolic substitution logic using

the massive fine grain parallelism and the regular andspace-invariant connectivity of optics. In optics, it isrelatively easy to move and operate on optically en-coded data in a regular fashion rather than in a randommanner. Hence, SSL is one possible way to performcomputations with constant fanin, constant fanout,and regular (space-invariant) interconnections. Inthis method, data are encoded as spatial patterns andoperators are seen as pattern transformation rules orsubstitution rules. In its operation, SSL consists oftwo pattern processing steps. The first step is a recog-nition phase whereby all the occurrences of a searchpattern (representing the left-hand side of a substitu-tion rule) are simultaneously searched in the inputplane. This is followed by a substitution phase where-by a different pattern (representing the right-handside of the substitution rule) is substituted in all thelocations where the search pattern is found.

B. ApplicabilityThus far, SSL has been proposed for a wide range of

applications, including digital logic and arithmetic op-erations, 9 -12 signal and image processing, 13-16 massive-ly parallel computing,1 7 and symbolic artificial intelli-gence computing. 18-20 This rapid spread of SSL hasgenerated a series of comparisons. 21 22 In Ref. 21 itwas concluded, among other things, that SSL is not avalid model for parallel computations because of thedifficulty of applying it to applications that exhibitglobal communications (i.e., numerical transforms,sorting, and searching). The argument went even fur-ther by claiming that mesh connected architectures(one of which is SSL) are not efficient architectures forparallel processing.

As described above, the essence behind SSL is com-patibility with optics characteristics, that is, the easy(hardware) support of parallel, regular space-invariantnetwork topologies. Therefore, it is evident that SSLwill be a local communication oriented computingmodel. The real question is whether parallel architec-tures designed around local communication networktopologies are efficient. In my view, the answer is yesbecause an optimal architecture (in terms of communi-cations and processing power) is application depen-dent. Not all real world computing applications re-quire multiple instruction control of multiple data(MIMD) computations and global communications.There is an abundance of applications where singleinstruction control of multiple data (SIMD) comput-ing and local communications are the most suitable.Data parallel computing, where the parallelism comesfrom the simultaneous operation across large sets ofdata rather than from multiple threads of control, hasbeen proposed as the most suitable class for SIMD finegrained parallel processing.23 Some areas of this classthat are still overburdening existing electronic tech-nologies include image processing, radar signal pro-cessing, image analysis, low level vision processing(pattern recognition and classification phases), opti-mization processes (branch and bound algorithms),partial differential equations (finite element analysis,

Fig. 1. Block diagram of a parallel architecture formed by multiplecontrol of multiple single-instruction-stream multiple data (MIM-

SIMD) symbolic substitution modules.

numerical integrations), and some artificial intelli-gence problems such as production systems, mathe-matical resolution, and unification problems.

The proliferation of commercial mesh connectedcomputers is yet another evidence that SIMD comput-ing is a well-established and accepted field of parallelprocessing. Some of these machines include theNASA massively parallel processor (MPP), 24 the ICLDAP,25 the CLIP,26 the GRID,27 the AAP,28 and tosome extent the Connection Machine29 (at the lowlevel, every sixteen processing elements are mesh con-nected and form a cluster; at the high level, the clusterscommunicate via a router network which is configuredas a Boolean n-cube). Granted that SSL may not bean efficient computing model for all-purpose parallelcomputing, it is still a viable and a better alternativemodel for SIMD and multiple control of multipleSIMD modules (MIMSIMD). This latter is a subsetof the MIMD computation model. Multiple control ofmultiple SIMD can be achieved by operating severalSIMD modules on different operation streams asshown in Fig. 1.

C. ImplementationThe author agrees with the conclusion in Ref. 21

relating to power breakdown of the current opticalimplementations of SSL. The most popular algo-rithm for implementing SSL is based on additive logicand consists of applying a thresholding (nonlinear op-eration) to a composite of shifted copies of the inputplane.9 The algorithm is simple and general. Howev-er, its known implementation methods9 30 are powerinefficient and lack computational flexibility (namely,architectural flexibility, cascadability, and program-mability).

In its operation, and assuming bright pixel recogni-tion, the additive logic algorithm consists of designat-ing a reference pixel in the search pattern, replicatingthe input plane as many times as there are bright pixelsin the search pattern, shifting the replicated images insuch a manner that their associated bright pixel isaligned with the reference pixel, superimposing them,and thresholding the resulting image. The substitu-tion phase is functionally similar to the recognitionprocess except for thresholding. The replication ofimages constitutes a major source of power loss. The

10 February 1991 / Vol. 30, No. 5 / APPLIED OPTICS 541

Page 3: Parallel implementation of optical symbolic substitution logic using

situation is even worse for implementing several rulesin parallel. In this latter case, the input image isreplicated into as many copies as there are rules to beprocessed in parallel. Then each rule splits the imageaccording to the number of dark/bright pixels in itssearch/replacement pattern. It should be noted thatthere are other novel optical implementation methodsunder investigation which are not based on additivelogic.3 1-34 The computational merits of these methodsare yet to be determined. A critical study is under wayto determine the performance and complexity of thevarious implementation methods that have been pro-posed for SSL.35

This paper is an attempt to contribute to the ongo-ing efforts in finding power efficient implementationmeans for SSL that are also architecturally flexible,programmable, and cascadable. In this vein, the restof the paper introduces a parallel implementationmethod based on shadow-casting principles and lightpolarization.

Ill. Parallel Implementation of SSLIn Ref. 36 a power efficient and flexible method was

presented for implementing SSL using the additivelogic algorithm. The basic idea was to use shadow-casting principles 8 to provide input replication, spatialshifting, and combination. A somewhat similar ideato the one presented in Ref. 36 was reported indepen-dently elsewhere. 37 A shadow-casting system is com-posed of a source plane (a set of LED arrays), an inputplane, and an output plane or screen. 8 Diverging lightbeams from the LEDs pass through the input planeand produce overlapped shadows of the input plane onthe screen. By choosing the spacing between the

S-6 w49Substitution rulel . Substitution rule 2.

/=#fI ~ ~ ~ ~ ~ -

/

(a) Source plane.(2 orthogonallypolarized LEDarrays)

(b) Input (c) Superimposedimage. image.

LEDs and distance from the source plane to the inputplane and from input plane to the screen, one canobtain a number of replicated and shifted copies of theinput plane superimposed on the screen. The numberof replicas and the amount of shift are a function of theON-OFF switching states of the LEDs. The states ofthe LEDs are in turn dictated by the structure of thesearch and replacement patterns of the substitutionrules. In Ref. 36, the method was shown to implementSSL systems with both single rail as well as dual railcoding.

A. Simultaneous Implementation of Two SubstitutionRules

The shadow-casting system, as proposed by Tanidaand Ichioka,8 was extended by Li et al.3 8 to includepolarized input pixel coding and output mask trans-parency, to permit the generation of multivariable log-ic as well as multiple valued logic functions. Recently,Karim et al.39'40 presented several systematic algo-rithms for designing complex arithmetic logic unitsusing the extended shadow-casting scheme. We ex-plore here the polarization of the source plane (the useof polarized LEDs) for the parallel implementation ofSSL. Using the two orthogonal polarization states oflight, several substitution rules can be implementedsimultaneously. In the following, I first describe theparallel implementation of two substitution rules,then extend it to the implementation of four rules inthe next section. Without loss of generality, I discusssubstitution rules in which the search and replacementpatterns consist of 2 X 2 pixels.

Figure 2 illustrates the parallel implementation ofthe recognition phase of two substitution rules. The

IlEGiEND:. LED ONo LED OFF

f Vertical polarization/Horizontal polarization

Recog. planefor rule 2.

Recog. planefor rule 1.

(d) Wollaston (e) Two copies (f) Thresholding (g) Two masks. (h) Two recognitionprism, with distinct optical AND-gate planes: one for each

polarization. arrays. substitution rule.

Fig. 2. Parallel implementation of the recognition phase of two substitution rules.

542 APPLIED OPTICS / Vol. 30, No. 5 / 10 February 1991

Page 4: Parallel implementation of optical symbolic substitution logic using

source plane consists of 2 X 2 orthogonally polarizedLED arrays [Fig. 2(a)]. Each element of the 2 X 2array is a pair of orthogonally polarized LEDs that arephysically positioned at near coincident points in thesource plane. This is equivalent to having two inde-pendent LED arrays occupying the same space andable to radiate horizontally and vertically polarizedlight that simultaneously passes through the inputplane. The vertically polarized LED array is responsi-ble for implementing substitution rule 1, while thesecond LED array is horizontally polarized and is re-sponsible for substitution rule 2. The vertical andhorizontal states of polarization are represented by avertical bar and a horizontal bar, respectively. Thereference pixel (that will later indicate the presenceand location of the search pattern) is chosen to be thelower right corner of the search pattern. Each LEDarray (vertically and horizontally polarized) providesmultiple shadowgrams of the input plane such that allthe pixels of its associated search pattern overlap inthe reference pixel.

The input plane is encoded in light intensity(opaque/transparent coding) as shown in Fig. 2(b).The configuration of the LED arrays produces dis-tinct, shifted copies of the input plane onto the screen.The superimposed image (projected on the screen)consists of pixels containing two horizontal polariza-tions, pixels containing two vertical polarizations, pix-els containing one polarization (vertical or horizontal),and pixels containing both polarizations (indicated bya cross). Pixels containing two vertical polarizationsindicate the presence and locations of the search pat-tern of substitution rule 1. Pixels containing two hori-zontal polarizations indicate the presence and loca-tions of the search pattern of substitution rule 2.There may be some erroneous pixels (due to patternoverlap) that will be discarded later through maskingoperations. Thus, the superimposed image consti-tutes, in effect, two recognition planes sharing thesame physical space. This image is then passedthrough a Wollaston prism.5 The Wollaston prismconsists of two birefringent wedges with their crystalaxes orthogonal to each other and also orthogonal tothe principal beam direction. The Wollaston prismdeflects the two states of polarization in opposite di-rections, hence producing two physically separate rec-ognition planes. The upper plane contains horizon-tally polarized pixels, while the lower plane containsvertically polarized pixels [Fig. 2(e)]. It should benoted that there is no power loss in generating thesetwo separate planes. The Wollaston prism splits theimage according to the state of polarization only.

The next step in the recognition phase is a thresh-olding operation through optical AND gate arrays [Fig.2(f)]. The thresholding operation will make all thepixels with two identical polarizations bright and allthe other pixels will remain dark. The thresholdedplanes are passed through an optical mask [Fig. 2(g)]whose transparent pixels coincide with the location ofthe reference pixel in the thresholded image. Thepurpose of the mask is to filter out erroneous pixels.

F

(a) Unpolarized (b) Recognition plane (c) Output plane.

LED array. for substitution rule 2.

Fig. 3. Implementation of the substitution phase using shadow-casting.

LEDs for rule 2.

LEDs for rule 3.

LEDs for rule 4.

(a) Four LED arrays.

Ri: Referencc pixel for rule i.

(i = 1,2,3,4).

(b) Locations of the reference

pixels on hc superirposed image.

Fig. 4. Source plane configuration and reference pixel arrangementfor the parallel implementation of four substitution rules.

Thus, the masked planes contain bright pixels only inthe locations of the input plane where the search pat-terns are found. At this end, we get two recognitionplanes, one for each substitution rule being imple-mented [Fig. 2(h)].

Next is the substitution phase. Since we have twoseparate recognition planes, the substitution of thereplacement patterns can also proceed in parallel. Inadditive logic, the substitution phase consists of repli-cating the recognition plane as many times as there arebright pixels in the replacement pattern and shiftingthem so as to scribe the replacement pattern in all thebright locations of the recognition plane. The shiftedcopies are then combined (ORed) to produce the finaloutput plane. The optical setup to accomplish this isshown in Fig. 3 (the figure shows an optical setup for asingle substitution rule). The unpolarized LED arrayconfiguration in Fig. 3(a) provides a superimposedimage of shifted replicas of the recognition plane. TheON-OFF state of each LED is dictated by the place-ment of the bright pixels in the substitution pattern.Thus, for a parallel implementation, two distinct LEDarrays are required. The replicas are shifted and su-

10 February 1991 / Vol. 30, No. 5 / APPLIED OPTICS 543

Page 5: Parallel implementation of optical symbolic substitution logic using

-NeSubstitution rule 2.

Substitution rule 3. Substitution rule 4.

a

o "I

(a) Source (b) Input (c) Superimposed (d) Beamplane. image. image. splitter.

(e) Two identicalcopies.

(f) Two Wollaston prisms.

Rcognition plane forsubstitution rule 2.

Recognition plane forsubstitution rule 1.

Recognition plane forsubstitution rule 4.

Recognition plane forsubstitution rule 3.

Fig. 5. Optical setup for the parallel recognition of four searchpatterns.

perimposed with the net result that the substitutionpattern is scribed in all the occurrences of the searchpattern [Fig. 3(c)].

B. Simultaneous Implementation of Four SubstitutionRules

Figure 4 shows the source plane and the arrange-ment of the screen for the simultaneous recognition of

(f) Optical AND-gatesarrays.

(g) Four distinctmasks.

(h) Four recognitionplanes.

four search patterns. The source plane consists ofsixteen LEDs arranged in a square array. The LEDsare organized into four 2 X 2 arrays. Each 2 X 2 LEDarray implements one substitution rule. The geomet-ric configuration is chosen such that each 2 X 2 LEDarray provides a distinct pixel on the screen where allfour patterns of a search pattern can overlap. Thesepixels are chosen to be the reference pixels of the four

544 APPLIED OPTICS / Vol. 30, No. 5 / 10 February 1991

P9_6MSubstitution rule .

Page 6: Parallel implementation of optical symbolic substitution logic using

(a) Superimposed (b) Wollaston prism. (c) Halfwave plates.image.

Recog. planefor rule 4.

Recog. planefor rule 1.

Recog. planefor rule 3.

Recog. planefor rule 1.

Fig. 6. Modified optical setupfor the parallel recognition of foursearch patterns without any pow-

er splitters.(d) Two Wollaston prisms. (e) Four optical

AND-gate arrays.(f) Four recognition planes.

substitution rules to be implemented. Thus, the ref-erence pixels for LED arrays 1, 2, 3, and 4 are the lowerright corner, lower left corner, upper right corner, andupper left corner, respectively [Fig. 4(b)]. Two of theLED arrays will be polarized vertically and the othertwo horizontally [Fig. 4(a)]. The ON-OFF states ofeach 2 X 2 LED array are dictated by the placement ofthe bright pixels of the search pattern of the substitu-tion rule associated with it.

The complete four rule recognition setup is shown inFig. 5. The LED arrays produce a composite image onthe screen [Fig. 5(c)] whose pixels contain various

states of polarization. This image is duplicated via anunpolarizing beam splitter [Fig. 5(d)] into two copieswhich are passed through two Wollaston prisms, W1and W2 [Fig. 5(f)]. Thus the formation of four images,each with only one type of polarization. These imagesare impinged on four optical AND gate arrays thatproduce a bright pixel in all locations having threevertical or three horizontal bars. The outputs of theAND gate arrays are passed through four distinctmasks [Fig. 5(h)]. Each mask is associated with onesubstitution rule, and therefore its transparent pixelcoincides with the reference pixel of the corresponding

10 February 1991 / Vol. 30, No. 5 / APPLIED OPTICS 545

Page 7: Parallel implementation of optical symbolic substitution logic using

Fig. 7. Alternative optical setup for the parallel recognition of foursearch patterns which requires only two distinct masks.

substitution rule. The outputs of the masks consti-tute four recognition planes [Fig. 5(i)]. Each planeindicates the presence and locations of one search pat-tern. The substitution phase proceeds with four inde-pendent channels; one for each recognition plane.The final output is obtained by optically combiningthe outputs of each substitution channel.

In the setup of Fig. 5, the superimposed image is splitvia a beam splitter into two copies, each with half of thepower of the original superimposed image. This split-ting can be avoided if pixel-addressable halfwaveplates are used. Since we are using only the two or-thogonal polarization states of light, each pair of LEDarrays shares the same polarization. The basic ideafor the modified scheme is to introduce halfwave platesto produce a physical separation of the recognitionplanes of the substitution rules that share the samestate of polarization.

The modified setup is shown in Fig. 6. The frontend (source plane, input plane, and screen) is similar tothe setup described above. Instead of splitting thesuperimposed image into two identical copies, we firstpass it through a Wollaston prism, W1 [Fig. 6(b)], thatsplits it into two copies, each holding only one type ofpolarization. In this example, substitution rules 1 and3 are associated with vertical polarization and substi-tution rules 2 and 4 are associated with horizontalpolarization. The upper halfwave plate, H1 [Fig.6(c)], inverts the polarization state of the referencepixels of substitution rule 2, while the polarizationstate of reference pixels of substitution rule 4 are leftunchanged. Similarly, the lower halfwave plate, H2,inverts the polarization state of reference pixels ofsubstitution rule 3 and does not affect the referencepixels of substitution rule 1. The output of each half-wave plate is an image with both vertical and horizon-tal polarizations. These images are passed throughtwo Wollaston prisms, W2 and W3, to generate fourimages with no power loss [Fig. 6(d)]. In addition,only one in four pixels of the halfwave plates needs tobe switched on. This will reduce the demand for extra

power to operate the halfwave plates. The four imagesare then thresholded with optical AND gate arrays andmasked as in the previous method.

Another alternative method for four-rule implemen-tation is the extension of the two-rule method present-ed in Sec. III.A. The source plane would be sixteenLED arrays arranged as shown in Fig. 7; basically, twoLED arrays, where each element of the array is in turntwo orthogonally polarized LEDs, placed adjacent toeach other in the horizontal (or vertical) direction.This setup maps two substitution rules onto the samereference pixel in the output plane (Fig. 7). The ad-vantage of this setup is a reduced number of custom-ized masks. By arranging the source plane as depictedin Fig. 7, only two types of mask are required at theoutput.

IV. Summary and ConclusionsDespite the space-invariant nature of SSL, it is an

attractive and promising model for fine grain parallelprocessing. Its computational power stems from thefact that it is compatible with optics capabilities. SSLis based on a few basic processing steps (that is, imagereplication, shifting, and combination) that can beeffectively implemented in optics.

Because of its inherent space-invariant connectionsand regular communications, SSL may not be efficientfor implementing general-purpose scalar computa-tions with a low degree of parallelism (e.g., scalar arith-metic), or parallel computations with irregular andglobal communication patterns. SSL is more suitablefor regular and structured computations that exhibitmassive data parallelism and heavy local communica-tions. This is not a negative point for SSL since thereis an abundance of these applications in real worldcomputing and current (electronic) systems are failingto provide the required levels of performance.

The major problems facing SSL at this time arepower requirements and lack of computational flexi-bility (in terms of programmability and architecturalflexibility) of its optical implementation schemes.Part of the problem, namely, the lack of optical gatearrays and spatial light modulators with faster switch-ing time and significantly reduced switching energy,afflicts all digital optical computing systems. Muchwork is currently being done in this area, and I believethis will be overcome in the near future. The otherpart of the power problem is due to the fundamentaloperations required in SSL (beam splitting, shifting,and combining). The implementation method intro-duced here is an attempt to limit the power loss fromthe basic operations and provide enough flexibility soas to make the architecture easily programmable andcascadable. Summarizing, the features of the pro-posed method are as follows:

(1) Energy efficiency: no optical image splitters oranalyzers are needed, only polarization beam splittersare used. In addition, more than one substitution ruleis implemented in parallel.

(2) Hardware flexibility: the same optical setupcan implement different substitution rules by simply

546 APPLIED OPTICS / Vol. 30, No. 5 / 10 February 1991

Page 8: Parallel implementation of optical symbolic substitution logic using

changing (if necessary) the geometric configuration ofthe source plane.

(3) Programmability: by controlling the switchingconfiguration of the LED arrays, the optical setup canbe dynamically reconfigurable to implement differentfunctions. Thus an external control memory thatstores microcodes, corresponding to different comput-able functions, can be used to control the source plane.

(4) Cascadability: the input and output planes areof the same format; therefore, the output image can beused as input to the same system for feedback process-ing or to a subsequent stage for pipelined computa-tions.

The limitations of the proposed implementationmethod can be seen as architectural and technological.The architecture is based on the shadow-casting con-cept and therefore is limited by the principles of geo-metrical optics. These limits have been studied byTanida and Ichioka. 8 The technological limitationsdepend on the nonlinear optical devices to be usedsuch as the polarization devices for thresholding andpixel-addressable halfwave plates for filtering.

This research was supported by NSF grant MIP-8909326. The author would like to acknowledge thefruitful discussions with Drs. Miles Murdocca and JunTanida. The constructive comments of the refereeswere very much appreciated.

References1. K. C. Saraswat and F. Mohammadi, "Effect of Scaling of Inter-

connections on the Time Delay of VLSI Circuits," IEEE Trans.Electron Devices ED-29, 645-650 (1982).

2. G. M. Amdahl, "Tempered Expectations in Massively ParallelProcessing and Semiconductor Industry," in Technical Digest,Second International Conference on Supercomputing, SantaClara, CA (1987).

3. A. A. Sawchuk and T. C. Strand, "Digital Optical Computing,"Proc. IEEE 72, 758-779 (1984).

4. A. Huang, "Architectural Considerations Involved in the Designof an Optical Digital Computer," Proc. IEEE 72,780-787 (1984).

5. A. W. Lohmann, "What Classical Optics Can Do for the DigitalOptical Computer," Appl. Opt. 25, 1543-1549 (1986).

6. H. J. Caulfield and G. Gheen, Eds., Milestone Series, SelectedPapers on Optical Computing, Proc. Soc. Photo-Opt. Instrum.Eng. 1142 (1989).

7. A. Huang, "Parallel Algorithms for Optical Digital Computers,"in Proceedings, IEEE Tenth International Optical ComputingConference (1983), pp. 13-17.

8. J. Tanida and Y. Ichioka, "Optical Logic Array Processor UsingShadowgrams," J. Opt. Soc. Am. 73, 800-809 (1983).

9. K.-H. Brenner, A. Huang, and N. Streibl, "Digital Optical Com-puting with Symbolic Substitution," Appl. Opt. 25, 3054-3060(1986).

10. K. Hwang and A. Louri, "Optical Multiplication and Divisionusing Modified Signed-Digit Symbolic Substitution," Opt. Eng.28, 364-373 (1989).

11. K.-H. Brenner, M. Kufner, and S. Kufner, "Highly ParallelArithmetic Algorithms for a Digital Optical Processor UsingSymbolic Substitution Logic," Appl. Opt. 29,1610-1618 (1990).

12. A. Louri, "Throughput Enhancement for Optical Symbolic Sub-stitution Computing Systems," Appl. Opt. 29,2979-2981 (1990).

13. S. D. Goodman and W. T. Rhodes, "Symbolic SubstitutionApplications to Image Processing," Appl. Opt. 27, 1708-1714(1988).

14. K. S. Huang, B. K. Jenkins, and A. A. Sawchuk, "Image AlgebraRepresentation of Parallel Optical Binary Arithmetic," Appl.Opt. 28, 1263-1278 (1989).

15. A. K. Cherri and M. A. Karim, "Uses of Optical Symbolic Substi-tution i Image Processing: Median Filters," in Technical Di-gest, Topical Meeting on Optical Computing, Vol. 9 (OpticalSociety of America, Washington, DC, 1989).

16. M. J. Murdocca, "Digital Optical Computing with One-RuleCellular Automata," Appl. Opt. 26, 682-688 (1987).

17. A. Louri, "A Parallel Architecture and Algorithms for OpticalComputing," Opt. Commun. 72, 27-37 (1989).

18. A. D. McAulay, "Optical Prolog Computer Using Symbolic Sub-stitution," Proc. Soc. Photo-Opt. Instrum. Eng. 881, 223-229(1988).

19. G. Eichmann and S. Basu, "Parallel Optical Syntactic PatternRecognizers," Appl. Opt. 26, 1859-1865 (1987).

20. D. P. Casasent and E. C. Botha, "Multifunctional Optical Pro-cessor Based on Symbolic Substitution," Opt. Eng. 28,425-433(1989).

21. F. Kiamilev et al., "Programmable Optoelectronic Multiproces-sors and Their Comparison with Symbolic Substitution for Digi-tal Optical Computing," Opt. Eng. 28, 396-409 (1989).

22. T. J. Cloonan, "Performance Analysis of Optical Symbolic Sub-stitution," Appl. Opt. 27, 1701-1707 (1988).

23. W. D. Hillis and G. L. Steele, Jr., "Data Parallel Algorithms,"Commun. ACM 29, 1170-1183 (1986).

24. K. E. Batcher, "Design of a Massively Parallel Processor," IEEETrans. Comput. C-29, 836-840 (1980).

25. S. F. Reddaway, "DAP-a Distributed Array Processor," inProceedings, First Annual IEEE/ACM Symposium on Com-puter Architecture, Miami, FL (1973).

26. M. J. Duff, "CLIP 4: Special Computer Architecture for Pat-tern Recognition," X. Fu and X. Ichikawa, Eds. (CRC Press,Cleveland, 1982).

27. I. N. Robinson and W. R. Moore, "A Parallel Processor ArrayArchitecture and Its Implementation in Silicon," in Proceed-ings, IEEE Custom Integrated Circuit Conference (1982), pp.41-45.

28. T. Kondo, T. Nakashima, M. Aoki, and T. Sudo, "An lsi Adap-tive Array Processor," IEEE J. Solid-State Circuits SSC-18,147-156 (1983).

29. W. D. Hillis, The Connection Machine (MIT Press, Cambridge,1985).

30. K.-H. Brenner, "New Implementation of Symbolic SubstitutionLogic," Appl. Opt. 25, 3061-3064 (1986).

31. E. Botha, D. Casasent, and E. Barnard, "Optical Symbolic Sub-stitution Using Multichannel Correlators," Appl. Opt. 27, 817-818 (1988).

32. K.-H. Brenner, A. W. Lohmann, and T. M. Merklein, "SymbolicSubstitution Implemented by Spatial Filtering Logic," Opt.Eng. 28, 390-395 (1989).

33. F. T. S. Yu, C. Zhang, and S. Jutamulia, "Application of One-Step Holographic Associative Memories to Symbolic Substitu-tion," Opt. Eng. 27, 399-402 (1988).

34. H.-I. Jeon, M. A. G. Abushagur, A. A. Sawchuk, and B. K.Jenkins, "Digital Optical Processor Based on Symbolic Substi-tution Using Holographic Matched Filtering," Appl. Opt. 29,2113-2125 (1990).

35. A. Louri and A. D. Post, "Digital Optical Computing Tech-niques: Computational Merits and Implementation Require-ments," Submitted to AO.

36. A. Louri, "Efficient Implementation Method for Symbolic Sub-stitution Logic Based on Shadow-Casting," Appl. Opt. 28,3264-3267 (1989).

10 February 1991 / Vol. 30, No. 5 / APPLIED OPTICS 547

Page 9: Parallel implementation of optical symbolic substitution logic using

37. W. Xue, L. X. Chen, C. F. Li, and Q. S. Hu, "Symbolic Substitu-tion Using Shadow-Casting," Proc. Soc. Photo-Opt. Instrum.Eng. 963, 653-656 (1989).

38. Y. Li, G. Eichmann, and R. R. Alfano, "Optical ComputingUsing Hybrid Encoded Shadow Casting," Appl. Opt. 25, 2636-2638 (1986).

39. M. A. Karim, A. A. S. Awwal, and A. K. Cherri, "Polarization-Encoded Optical Shadow-Casting Logic Units: Design," Appl.Opt. 26, 2720-2725 (1987).

40. A. A. S. Awwal and M. A. Karim, "Multiprocessor Design UsingPolarization-Encoded Optical Shadow-Casting," Appl. Opt. 29,2107-2112 (1990).

548 APPLIED OPTICS / Vol. 30, No. 5 / 10 February 1991