9
Optoelectronic data filter for selection and projection Pericles A. Mitkas, Leo J. Irakliotis, Fred R. Beyette and Carl W. Wilmsen Jr,, Stuart A. Feld, Database processing, like the majority of nonnumerical applications, exhibits a high degree of functional parallelism but does not require complex operations; therefore it is amenable to optical solutions. The architecture of an optoelectronic filter that is capable of performing selection and projection operations on a two-dimensional data array in a relational database environment is presented. The system receives input from a parallel optical memory, one page at a time, and performs logic operations by using optoelectronic smart pixels based on heterostructure phototransistors and vertical-cavity surface- emitting lasers. Combinations of AND and XOR gates are used to realize row-column masking and comparisons of input data against user-supplied search arguments. The main goal of the filter is to reduce the effective data rate between the highly parallel optical storage and the low input data rate conventional electronic computer, thus efficiently interfacing currently available photonic and electronic technologies. Key words: Optical computing, optical data processing, smart pixel arrays, optoelectronic logic gates, database processing, database machines. 1. Introduction Database transactions constitute a major part of daily operations at many institutions, such as banks, phone companies, insurance companies, and universities, that need to manage large databases efficiently and to obtain responses to user queries in real time. A larger database has a typical volume of a few hundred gigabytes and a desired real-time response of 1 s.1 Database operations have two major characteristics: (1) a large volume of data must be retrieved and processed to generate the query result, which is usually a small fraction of the database, and (2) most of the transactions are based on a comparison of the data fields with a search argument. In most elec- tronic computers these operations are accomplished in two steps: (1) loading segments of the database from the secondary storage to the main memory, and (2) applying the query criteria and retaining only those records that satisfy them. Because secondary The authors are with the National Science Foundation Optoelec- tronic Computing Systems Center and the Department of Electri- cal Engineering, Colorado State University, Fort Collins, Colorado 80523. Received 9 June 1993; revised manuscript received 25 August 1993. 0003-6935/94/081345-09$06.00/0. © 1994 Optical Society of America. storage is typically orders of magnitude slower than main memory, the first step constitutes a major bottleneck that makes database processing an input- output-bound task and causes significant delays to the overall system response. Recent advances in optical technology have yielded optical memories such as parallel readout optical disks, volume holograms, and three-dimensional two- photon memories that offer both large storage capac- ity and massive transfer rates, two essential ingredi- ents of every database environment. In contrast to the serial output of most electronic and magnetic media, the output of parallel optical memories can be one or two-dimensional, and transfer rates can reach hundreds of megabytes per second. However, these transfer rates are not compatible with today's elec- tronic computers that can receive data at rates of only a few megabytes per second. Therefore an interface is needed between a high-capacity massive-transfer optical memory and a conventional electronic com- puter to avoid overwhelming the latter while maintain- ing and exploiting the superb data transfer perfor- mance of the fomer. This paper presents an optoelectronic solution to this interface bottleneck. The highly parallel nature of database searching, i.e., the same selection criteria must be applied repeat- edly to every record, along with the fact that the majority of retrieved data are typically discarded as 10 March 1994 / Vol. 33, No. 8 / APPLIED OPTICS 1345

Optoelectronic data filter for selection and projection

  • Upload
    carl-w

  • View
    215

  • Download
    1

Embed Size (px)

Citation preview

Optoelectronic data filterfor selection and projection

Pericles A. Mitkas, Leo J. Irakliotis, Fred R. Beyetteand Carl W. Wilmsen

Jr,, Stuart A. Feld,

Database processing, like the majority of nonnumerical applications, exhibits a high degree of functionalparallelism but does not require complex operations; therefore it is amenable to optical solutions. Thearchitecture of an optoelectronic filter that is capable of performing selection and projection operations ona two-dimensional data array in a relational database environment is presented. The system receivesinput from a parallel optical memory, one page at a time, and performs logic operations by usingoptoelectronic smart pixels based on heterostructure phototransistors and vertical-cavity surface-emitting lasers. Combinations of AND and XOR gates are used to realize row-column masking andcomparisons of input data against user-supplied search arguments. The main goal of the filter is toreduce the effective data rate between the highly parallel optical storage and the low input data rateconventional electronic computer, thus efficiently interfacing currently available photonic and electronictechnologies.

Key words: Optical computing, optical data processing, smart pixel arrays, optoelectronic logic gates,database processing, database machines.

1. Introduction

Database transactions constitute a major part of dailyoperations at many institutions, such as banks, phonecompanies, insurance companies, and universities,that need to manage large databases efficiently and toobtain responses to user queries in real time. Alarger database has a typical volume of a few hundredgigabytes and a desired real-time response of 1 s.1

Database operations have two major characteristics:(1) a large volume of data must be retrieved andprocessed to generate the query result, which isusually a small fraction of the database, and (2) mostof the transactions are based on a comparison of thedata fields with a search argument. In most elec-tronic computers these operations are accomplishedin two steps: (1) loading segments of the databasefrom the secondary storage to the main memory, and(2) applying the query criteria and retaining onlythose records that satisfy them. Because secondary

The authors are with the National Science Foundation Optoelec-tronic Computing Systems Center and the Department of Electri-cal Engineering, Colorado State University, Fort Collins, Colorado80523.

Received 9 June 1993; revised manuscript received 25 August1993.

0003-6935/94/081345-09$06.00/0.© 1994 Optical Society of America.

storage is typically orders of magnitude slower thanmain memory, the first step constitutes a majorbottleneck that makes database processing an input-output-bound task and causes significant delays tothe overall system response.

Recent advances in optical technology have yieldedoptical memories such as parallel readout opticaldisks, volume holograms, and three-dimensional two-photon memories that offer both large storage capac-ity and massive transfer rates, two essential ingredi-ents of every database environment. In contrast tothe serial output of most electronic and magneticmedia, the output of parallel optical memories can beone or two-dimensional, and transfer rates can reachhundreds of megabytes per second. However, thesetransfer rates are not compatible with today's elec-tronic computers that can receive data at rates of onlya few megabytes per second. Therefore an interfaceis needed between a high-capacity massive-transferoptical memory and a conventional electronic com-puter to avoid overwhelming the latter while maintain-ing and exploiting the superb data transfer perfor-mance of the fomer. This paper presents anoptoelectronic solution to this interface bottleneck.

The highly parallel nature of database searching,i.e., the same selection criteria must be applied repeat-edly to every record, along with the fact that themajority of retrieved data are typically discarded as

10 March 1994 / Vol. 33, No. 8 / APPLIED OPTICS 1345

irrelevant, suggests that the effective data rate fromoptical storage to the electronic host can be signifi-cantly reduced if a parallel optical processing unit isemployed to perform a first-order filtering operation.The availability of fast and highly parallel opticalprocessing elements3 makes the application of opticaltechniques to database processing a feasible alterna-tive.4 Recent discussions on optoelectronic imple-mentation of relational database machines 5 6 clearlydemonstrate the need for the design and the analysisof the necessary components to be used in such asystem. Because relational database processing re-lies heavily on a large volume of selection and projec-tion operations, it would be useful to implement aspecial-purpose unit that is capable of performingthese two operations in parallel in the optical domain.

In this paper we present the architecture and thefunctionality of an optoelectronic database filter forselection and projection. The filter is based on smartpixels that use vertical-cavity surface-emitting lasers(VCSEL's). We first introduce the concepts of selec-tion and projection operations in a relational databaseenvironment in Section 2. VCSEL-based logic isdescribed in Section 3, and the system architecture ispresented in Section 4. Implementation issues, in-cluding performance characteristics, are discussed inSection 5. Finally, we present our conclusions inSection 6.

2. Selection and Projection in a Relational DatabaseData in a relational database are stored in two-dimensional (2-D) arrays called relations. A data-base may be composed of multiple relations. Eachrow in the array corresponds to a record or tuple,whereas the columns demarcate the various datadomains or attributes. No two rows can be identicalin a relation. Every relation has one or more do-mains that serve as unique identifiers for the tuplesand are called primary keys.

To extract information from relational databases,we use a set of relational operations. These opera-tions select rows or columns of a data array accordingto user-defined criteria. There are two main catego-ries of relational database operations:

(1) traditional set operations, such as union, inter-section, set difference, and Cartesian product (a rela-tion can be considered a set, with tuples being theelements),

(2) relation-oriented operations, such as projec-tion, selection, and join.

Projection operation enables users to select col-umns from a relation and specify their order.Selection is the process of retrieving tuples from arelation that satisfies one or more selection criteria.Data in certain fields of a record must be comparedagainst user-supplied selection arguments. If amatch is detected, that record must be retained.

To illustrate with an example, consider the portionof the database, shown in Fig. 1, from a financial

o TRANSACTION CUSTOMER 0o NUMBER NUMBER TIMESTAMP AMOUNT TYPE 0o 0o 0012341 11232 930426124507 23.45 D 0o 0690216 32650 930426135621 32.21 D 0o 0680326 31888 930427141211 109.10 W 0o 0671228 81308 930501084532 3.45 W 0o 0670406 32650 930502094932 6.00 W 0o 0930219 32050 930502111721 11.21 W 0o 0670629 31394 930502111822 8.44 W 0o 0640531 81308 930502123337 221.00 W 0o 0620426 11232 930508093813 8.29 W 0o 9631102 32650 930508110657 4.76 D 0o 0670230 32650 930508121116 75.42 D 0o 9843181 81308 930509083911 6.72 W 0

Fig. 1. Example of a relation in a database.

institution. The Transaction Number is a numeri-cal tag attached to every record to serve as the uniqueidentifier of the transaction. The Customer Numberis used to identify each customer of the bank. TheTimestamp shows the date and the time the transac-tion was completed. The Amount shows the value ofthe transaction, which is a deposit if the Type is D or awithdrawal if the Type is W.

An example of a simple projection operation wouldbe to display only the Transaction-Number and theAmount fields. A selection operation with a singleselection criterion would be to retrieve all the transac-tion records for the customer with a Customer-Num-ber equal to 32650. Figure 2 shows the results ofthese two operations.

The filtering logic of the projection is quite simpleas it involves a masking operation that can be accom-plished with a bitwise AND between the input record rand the projection mask Tr, where

for every desired bitfor every undesired bit (1)

The selection logic is more complex because itrequires (1) a masking operation to disable the fieldsthat do not participate in the selection process and (2)a comparison between the contents of the remaining

o TRANSACTION oo NUMBER AMOUNT ao 0012341 23.45 ao 0690216 32.21 oo 0680326 109.10 oO 0671228 3.45 ao 0670406 6.00 oo 0930219 11.21 oo 0670629 8.44 0o 0640531 221.00 oo 0620426 8.29 oo 9631102 4.76 ao 0670230 75.42 oo 9843181 6.72 0

(a)

o TRANSACTION CUSTOMER 0o NUMBER NUMBER TIMESTAMP AMOUNT TYPE 0o 0o 0690216 32650 930426135621 32.21 D 0o 0670406 32650 930502094932 6.00 W oo 9631102 32650 930508110657 4.76 D 0o 0670230 32650 930508121116 75.42 D oo 0o 0

(b)Fig. 2. (a) Result of the projection on domains Transaction.Num-ber and Amount, (b) result of selection of the tuples with Custo-mer-Number = 32650.

1346 APPLIED OPTICS / Vol. 33, No. 8 / 10 March 1994

1Tri = 0

fields and the selection argument(s). For each inputrecord r, a corresponding match signal M must begenerated according to the formula

n

M = IX [(miri) @ oi], (2); . z~~=1

where mi is the ith bit of the selection mask (0 fordisabled and 1 for enabled bits), ri is the ith bit of theinput record, and ri is the ith bit of the selectionargument, with ri = 0 when mi = 0. Note that Mwill be 0 when the record satisfies the selectioncriterion.

The filtering logic of the selection operation for asingle tuple is shown in Fig. 3. The input record andthe selection mask are bitwise ANDed, so that onlycertain fields will arrive at the next stage of theoperation, where they will be compared with thesearch argument. The comparison is accomplishedby a bitwise XOR operation followed by an n-input OR.

If a perfect match occurs, the output of each XOR will

be 0; therefore the OR output will also be 0. Whenthe two arguments differ in one or more bit positions,at least one XOR output will be 1, thus setting the OR

output to 1 also. By inverting the OR output, we canget a logic 1 to indicate a match. Optical implemen-tation of the comparison by the use of the abovemethod has been repeatedly demonstrated. 4 78

The selection array shown in Fig. 3 can handle onetuple per step. By stacking multiple selection ar-rays, it is possible to create a 2-D selection array thatwill handle one page in parallel.

A good portion of database operations can bedecomposed into a series of projections and selections.Quite often a database query requires a selectionfollowed by a projection, i.e., retrieve only Transac-tionNumber and Amount for Customer-Number =32650. In general, the projection and the selectionmasks are not the same. A data filter capable ofperforming any combination of selections and projec-tions simultaneously will significantly increase thesystem throughput. As we demonstrate below, thesetwo operations can be implemented optically in paral-lel. An optoelectronic filter will act as an interfacebetween the secondary optical storage and an elec-tronic computer.

Input recordk

V

Masking Comparison

Fig. 3. Filtering logic for the selection operation.

3. Optoelectronic Logic Gates Based on Vertical-CavitySurface-Emitting Lasers (Optoelectronic Logic Gates)We propose to implement the AND and the XOR

functions with smart pixels that use VCSEL's as lightemitters and phototransistors as detectors and logicelements.

The past few years have seen the development oflogic gates by the use of detector emitter technology.In particular, optoelectronic logic gates that useheterojunction phototransistors (HPT's) and lightemitting diodes (LED's) have been demonstrated.91 0

Although these logic gates are suitable for integrationinto 2-D arrays, their use in the implementation ofinformation processing systems has been hamperedby the poor coupling efficiency associated with LED's.To overcome this deficiency, logic gates based onHPT's or positive-negative-positive-negative switchesand VCSEL's are being developed."l-13 For the sys-tem proposed in this paper, arrays of optoelectronicAND gates and XOR gates are required. We havedemonstrated these gates by using hybrid integrationof HPT's and VCSEL's.14 The following paragraphsdescribe these circuits and their characteristics.

The optical input to an HPT produces an effectivebase current into the transistor, resulting in anamplified current flowing through the HPT. If theinput is sufficiently large, the current flowing throughthe HPT can be large enough to exceed the thresholdcurrent of the VCSEL. Thus the serial connection ofan HPT and VCSEL leads to an optically controlledVCSEL that can be used as an optoelectronic AND iftwo subthreshold optical inputs are directed onto theHPT. Only when both inputs are present can thethreshold current of the laser be exceeded. Althoughthis circuit demonstrates the functionality of anoptoelectronic AND gate, the range of optical powerallowed for each input is limited to between thethreshold power and half of the threshold power.Another optoelectronic AND gate that does not limitthe maximum input power can be realized with twoHPT's and one VCSEL, as shown in Fig. 4(a). Ifeither one of the inputs is OFF, the correspondingHPT limits the current flowing into the VCSEL to alevel below the threshold current, and no output isproduced. When both inputs to the HPT's are ON,

the current generated by the phototransistors flowsthrough the VCSEL, producing an optical output.Thus the AND operation is performed on the inputs.

The XOR circuitry is shown in Fig. 4(b). If onlyinput A or only input B is present, the top parallelHPT's will permit current to flow to the lower part ofthe gate. Because only one input is present, thelower HPT's in series will present a resistivity higherthan the resistivity of the VCSEL. As a result,current will flow into the VCSEL, and an opticaloutput will be produced. If no input is present,obviously there will be no current flowing at all.Finally, when both inputs are present, current willsink through the two HPT's in series at the lower halfof the gate, resulting in no optical output.

Hybrid realization of these gates simply requires

10 March 1994 / Vol. 33, No. 8 / APPLIED OPTICS 1347

V

A

B

ViW*

AB

(a)

A

Fig. 4. Circuit diagrams ofVCSEL-based XOR gate.

4JWN_ B

()(b)(a) a VCSEL-based AND gate, (b) a

connecting separately packaged HPT's and VCSEL'sinto the circuits described above. The straightfor-ward realization has led to demonstration of thecircuit concepts and characterization of individualgates. Figure 5 shows the timing diagrams for anAND gate and an XOR gate. Note that both gatesfunction without the need for electrical clocking orreset pulses. Thus the logic gates will operate over afrequency range from dc to the maximum switching

a'a._

a.

a0.

o5

ELm

Tim (s)

(b)Fig. 5. Timing diagrams for (a) a VCSEL-based AND gate, (b) aVCSEL-based XOR gate. The time axis does not reflect the speed ofthe devices.

speed allowed by the circuit. Both the AND and theXOR gates exhibit an ON/OFF contrast ratio of approxi-mately 35. The implementation of 2-D arrays andexpected operating characteristics of these optoelec-tronic logic gates are discussed in Section 5.

4. System Architecture

Current available VCSEL-based devices operate inthe reflective mode, i.e., the optical output is availableon the same side on which the optical input isreceived. Although this behavior prevents thestraightforward data flow that is possible in a trans-missive mode approach, it does not affect the designsignificantly. Using combinations of two or morebeam splitters, we can produce any desired opticalpath. Additionally, the use of the reflective modepermits the back surface of the arrays to be easilyattached to a heat sink.

A. Projection Operation on a Two-Dimensional Data Array

The projection operation described in Section 2 isimplemented optically with the module shown in Fig.6. In its simplest form, the projection operationblocks out certain relation fields. Therefore a simpleANDing between the incoming information and theprojection mask will suffice to complete the operation.The projection mask can be provided by a 2-D spatiallight modulator (SLM).

The output of the projection operation can becollected by a 2-D photodector array (PDA).However, in our case, it would be particularly usefulto receive the projection output on an optoelectronicrandom access memory (RAM) array that acceptsoptical input, converts it to an electronic form, andstores it into a RAM-type memory.15,16 Such a devicecan accept an enable input as well. So if, we wish tostore only certain rows of the page incident upon thedevice, we can activate (enable) only the respectiveregions of the optoelectronic RAM. The usefulnessof this function becomes obvious in the case in whichwe need to obtain the result of a selection operation ina user-friendly format. The raw result of a selectionoperation is just a column of single binary digits(match signals), and the only information it providesis the locations of the tuples that match with theselection argument. Should we wish to use thesetuples or certain domains of them, a projection opera-tion implemented in parallel with the selection mod-

AND Array

OptoelectronicRAM Array

Fig. 6. Projection module.

1348 APPLIED OPTICS / Vol. 33, No. 8 / 10 March 1994

Input A li

Input B. . .. .. _.........

AAND B

S ._ _ _ K........ }h200 400 600 800 1000 1200 1400 1600 1800

Time (s)(a)

|Input ..

..o....~~~~~~~~~~~~~~~~~.. ... ...

AANDB\ x

0 200 400 600 800 1000 1200 1400 160io

ule and interfaced to the result of the selectionoperation is imperative.

B. Selection Operation on a Two-Dimensional Data ArrayThe selection operation on a data page that containsone record per row can be performed in three stages:

(a) Mask off all the unwanted fields, i.e., perform aprojection operation a separate projection module,

(b) Perform a bitwise XOR between the searchargument and the remaining fields of the tuples, and

(c) Perform the logical OR of the signals in anentire row.

Figure 7 illustrates the selection module that canrealize the three steps. The first step has alreadybeen discussed in Subsection 4.A and requires a 2-DSLM, an AND gate array, and two beam splitters.The second step can be accomplished by directing theoutput of the projection module onto an array of XORgates along with the selection argument. In thethird step, the outputs of the XOR gates for each tuplein the array are oRed together by the cylindrical lensand imaged onto a single cell of the linear photodetec-tor array (PDA). The outputs of the photodetectorarray are used to enable the tuples that satisfy theselection criteria.

The selection mask contains l's in every bit posi-tion of the desired fields and 0's for the rest. Thispattern is replicated in n rows of the 2-D SLM in thebottom and brought to the selection module througha beam splitter. The data array contains one tupleper row and is interleaved with the selection mask toform the input to the 2-D array of AND gates. Thelower part of the selection module is equivalent to aprojection module. The pixel diagram of the ANDgate array is shown in Fig. 8(a). A V cell in thisdiagram corresponds to a VCSEL, whereas each Hcell indicates an HPT. Note that the only electricalconnections required for each pixel are the powerrails, with all data signals being transferred opticallynormal to the array. The AND gate array used in theprojection module described in Subsection 4.A isidentical to this one.

When a second pair of beam splitters is used, theoutputs of the AND gate array are mixed with theselection arguments coming from another SLM and

SelectionArgument(SLM)

AbsorbingLayer

Cylindrical Lens

E4

PDA

Input

XOR Array

AND Array

k- ' t Selection'Mask

Fig. 7. Selection module. PDA, photodetector array.

(a)

(b)Fig. 8. Pixel diagrams of (a) the AND gate array,array. GND, ground node.

(b) the XOR gate

directed onto the array of XOR gates, the pixels ofwhich are shown in Fig. 8(b). In this case, eachinput beam illuminates two HPT's which is consis-tent with the circuit diagram of Fig. 4(b). It shouldbe noted here that the VCSEL's contact the groundnode through the substrate and need not be con-nected to the ground bus. The outputs of the XORpixels are brought into a cylindrical lens, which isoriented such that all the outputs of an entire row arefocused on a single detector cell of the PDA. Thephotodetector output can be directed to the optoelec-tronic RAM of the projection module to disable rowsthat contain irrelevant data.

The spatial separation of the input beams to eachgate relaxes the alignment requirements and reducescross talk. Because the XOR output will be reflectedback to the AND gate array, care was taken to positioneach XOR laser diode on the unoccupied quadrant ofthe corresponding AND pixel. Furthermore, anopaque layer is necessary between the two beamsplitters on the left to avoid interference between theselection mask beams and the selection argumentbeams, which come from opposite sides.

C. Optoelectronic Data FilterFigure 9(a) illustrates the block diagram of the opto-electronic data filter, and the flow of optical signalsthrough the various components is depicted in Fig.9(b). The filter is composed of a projection moduleand a selection module placed side by side. Dataenter the filter as 2-D pages from the left and are splitinto two channels, one for the selection module andone for the projection module. The design has beenoptimized for minimum power losses by a reduction

10 March 1994 / Vol. 33, No. 8 / APPLIED OPTICS 1349

{Rl My

AND Array

Input

(a)

(b)Fig. 9. Optoelectronic data filter:signal flow.

. f --1- ti XOR Array

3LM ANDArray

(a) block diagram, (b) optical

in the total number of beam-splitting operationsbetween successive signal regenerations to two (opti-cal power loss of 4), thus relaxing the gain require-ments of each optical gate array. Only the inputsignal, which can have arbitrarily high intensity,must pass through three beam splitters before it isregenerated.

The data filter can operate in several differentmodes:

(1) Data retrieval: When the entire content of arelation must be retrieved, the selection module is notused, and the projection mask loaded on SLM1 con-tains all 's. In this case, the data rate to electronicscannot be reduced.

(2) Projection only: The appropriate projectionmask is loaded on SLM1, and pages are retrieved fromthe optical memory and passed through the projec-tion module.

(3) Selection on a single field without projection:The appropriate selection mask and search argumentare loaded on SLM2 and SLM3, respectively. Dataalso go through the projection module with theprojection mask set to all I's. Whenever a matchoccurs, the corresponding cell of the PDA registers nolight and this enable signal is transmitted to therespective row of the optoelectronic RAM, which hasalready received the qualifying tuple. The contentsof the enabled rows of the RAM must be transferredto an electronic buffer for further processing before anew page is retrieved from the memory.

(4) Conjunctive selection on multiple fields with-out projection: This is the case of a database querythat calls for records that satisfy every one of severalselection conditions, each on a different field. Forexample, "Retrieve the records with Customer-Num-ber = 32650 and Type = D and Timestamp =9305********," where a star denotes the wild-cardcharacter. The data filter can test all conditionssimultaneously. The selection mask on SLM2 willallow only the contents of the fields participating inthe selection to reach the XOR array. All the searcharguments can be loaded on SLM3, and all thecomparisons will take place in parallel to generate thefinal match signal. The projection mask on SLM isagain all 's.

(5) Selection followed by a projection: Both type(3) and type (4) selections can be combined with aprojection. The appropriate projection and selectionmasks are loaded on SLM1 and SLM2, respectively,and SLM3 holds the selection argument(s). The twooperations are executed concurrently.

Disjunctive selection on the same or multiple datafields (i.e., Customer Number = 32650 or CustomerNumber = 43890) requires either multiple passes orseveral selection modules operating in parallel on thesame data page. Additional logic stages will be neededfor accommodating selection criteria that involveless-than or greater-than comparisons.1 7

5. Implementation IssuesIn this section we address several issues pertaining tothe implementation and the expected performance ofthe data filter.

A. Contrast Ratio, Size, Power, and Speed ConsiderationsThere are a number of fundamental questions regard-ing contrast ratio (CR) pixel size, array size, framerate, and power dissipation that need to be addressed.CR will determine the maximum length of the argu-ments that can participate in the comparison process.CR's greater than 50 are readily obtainable and canyield word lengths of 25 bits.

Pixel size determination is based on the need toreduce the VCSEL threshold current Ith and electricalpower dissipation. To accomplish this, the smallestVCSEL diameter that can be realistically reproducedin an array is desired. This diameter will be 5 m,which should yield Ith 1 mA. The HPT must bedesigned to provide 2 to 3 times this current and anoptical gain of 5 to overcome the system losses.Because the gain of an HPT increases with currentdensity, it is advantageous that the HPT's have asmall active area. If a VCSEL current of 2 mA isassumed, then for an HPT optical gain of 50 A/W, anactive area of 20 jim on a side is required. With. areaallowed for the emitter contact, interconnects, andalignment tolerance, the pixel is estimated to be (50j1m)

2 . This fits well with pixel pitch of 100 m,which allows 100 pixels/cm of array. Thus an arrayof 100 x 100 is physically permitted on a 1-cm 2 chip.

1350 APPLIED OPTICS / Vol. 33, No. 8 / 10 March 1994

The array power dissipation is estimated by

arraypower

= (power/pixel) x (number ofpixels) x (duty cycle)

x (averagepercentage ofpixels ON at any time), (3)

and the nominal values discussed above yield

array power = [(2 mA x 3 V) x (100 x 100)

x (0.5) x (0.5)] = 15 W. (4)

Although this is high, it is acceptable with propercooling or a reflective mode array.

The speed of operation of an HPT (especially onedesigned for high optical sensitivity) is ordinarilydominated by the charging and the discharging timesof the junction capacitances. Because these capaci-tances scale directly with the device area, the smallerthe devices can be made, the faster, in general, theywill operate. The limiting size of the HPT is deter-mined by the amount of light that can be coupled intoit. As the diffraction-limited spot size for the wave-length range of interest is of the order of 1 jlm, theHPT should be several micrometers on the side toallow for misalignment and focal aberrations. Nev-ertheless, an HPT of this size should operate atfrequencies of several hundred megahertz to severalgigahertz.18 The VCSEL section of the logic ele-ments has an optimum size of several micrometers,and discrete devices of that size have been operated atfrequencies of several gigahertz. The integrated de-vices are expected to operate at speeds close to thoseof separate components as the vertical interconnec-tion of the devices does not add significantly to theparasitics. The frame speed of arrays is more diffi-cult to estimate. Maeda et al.19 recently reportedoperating arrays of 16 VCSEL's at 300 MHz, andthus a frame rate of = 100 MHz appears feasible.

Two other factors, which are related to array size,need to be discussed. First, the uniformity of thewavelength and threshold current: The wavelengthvariance is not an important issue because the HPT'shave a broad spectral responsivity. Variation in thethreshold current, however, will cause a variation inoutput intensity that will affect the response of thenext stage. Second, can an array of 100 x 100working VCSEL's be fabricated? At the presenttime, the answer is no. However, the technology israiidly advancing, and the size of working arrays willcontinue to improve. The uniformity of the thresh-old current should also improve significantly.

B. Wavelength CompatibilityWavelength compatibility of the stages is anotherimportant issue. We have assumed that the inputdata to the system arrive in the form of a 2-D array ofintensity-encoded signals. No mention has beenmade until now as to where these data come from orwhat intensity and wavelength they have. If weassume that the data come from a parallel readoutoptical memory system, such as a page-oriented or

volume holographic memory, then we must ensurethat the pixels of the system are sensitive to thewavelength used by the optical memory. Such holo-graphic systems typically use visible wavelengths intheir operation. Fortunately the input elements ofthe smart pixels are HPT's, which are sensitive over alarge range of wavelengths (spectral width = 0.5 jim).

Both AlGaAs/GaAs and InGaP/GaAs HPT's aresensitive to wavelengths from the orange red to thenear infrared. This high sensitivity range permits alarge degree of freedom with which to choose theinput wavelength.

C. Feedback and Gain IssuesWhenever a system is composed of elements thatexhibit gain, care must be taken to control any opticalfeedback that may exist. Feedback can cause theoptical elements to latch up, or oscillate, and willdegrade the system operation. An example of afeedback path can be seen on the diagram of theoptoelectronic filter in Fig. 9, in which the output ofthe XOR array can propagate back through two beamsplitters to the input of the AND array. In this case,the detrimental effects of feedback have been avoidedby designing the AND and the XOR pixels in such amanner that the output spot of the XOR gate wouldappear on the unused quadrant of the AND gate.

The beam splitters used in the reflective mode ofoperation not only introduce possible feedback pathsbut also introduce a large loss mechanism into thesystem. For example, two beam splitters are used tointerconnect the AND gate array and the XOR gatearray, thereby causing the power delivered to the XORgates to be only, at most, a fourth of the powergenerated by the AND gates. The hybrid devices weuse have a potential gain of 10 or more, and themonolithic devices are expected to perform as muchas a factor of 3-4 better. The higher performance isexpected to come from the HPT's, which will have asmaller area in the monolithic devices, leading tohigher current density and thus higher gain andefficiency.

D. Optoelectronic Random Access MemoryThe optoelectronic RAM used in our design belongs toa larger family of devices that interface photonicsignals to electronic logic elements.' 5"6 These de-vices are implemented in Si complementary metal-oxide semiconductors, and VLSI permits the fabrica-tion of large arrays. Expansion to other systemssuch as GaAs and InP is possible and may providelight-emitting capabilities. The diagram of a singledevice is shown in Fig. 10. Detection time has beenreported to be less than 50 ns for relatively low opticalpower input, while clearing a pixel, i.e., returning it toa logic 0 from a logic 1, takes less than 1 ns (weassume positive logic). A single cell measures 100jm 100 jim, and arrays of 4 x 4 and 16 x 16 cellshave been demonstrated. It is expected that theminimum cell pitch will reach approximately 40jim.1 6

10 March 1994 / Vol. 33, No. 8 / APPLIED OPTICS 1351

Photonic Input

Photodiode

Electronic Inputs

LogicElements

Fig. 10. Single optoelectronic cell (this figure is a modified versionof Fig. 1 in Ref. 16).

E. System Throughput

From the list of different modes of operation pre-sented in the Subsection 4.C, it is easy to induce thatto estimate the throughput of the filter, the responsetimes of two cases must be considered: (1) whenonly the projection module is used, and (2) when bothmodules must process data. We call the responsetime of the first case Tproject and that of the second oneTselect-

Because the filter is based on combinational logicwith no latches, pipelined operation is not possibleand, as a result, the delays introduced by eachcomponent are additive. Therefore the time re-quired for the projection module to process k pages ofa relation is given by

Tproject = Tsetup+ k(Tpagein + TAD + TOERAM), (5)

where Tsetup comprises mainly the time to load theprojection mask on SLM1, Tpagein is the time toretrieve one page from the optical memory, TAND is theresponse time of an AND pixel, and TOERAM combinesthe response time of the OE RAM and the timerequired for reading its contents into the electronicbuffer. Typically a large number of data pages willbe processed before a new set of selection masks andsearch arguments must be loaded into the SLM's, sothe relatively slow frame rates of currently availableSLM's will not degrade the system response.

The page readout time of a holographic memorycan be as low as a few tens of nanoseconds. Theresponse time of the AND gate is of the order of 10 ns,whereas the OE RAM can be written in parallel in-50 ns. Electronic readout of the portion of a10-kbit RAM that contains qualifying data can beconcluded in a few tens of nanoseconds, bringing theoverall cycle of the projection module to approxi-mately 100 ns. During each cycle, 100 records arebeing processed, so the maximum throughput of asingle projection module can reach 109 records persecond.

A similar analysis can lead to an expression forTselect, the response time of the filter for performing aselection operation on k pages:

Tseiect = Tsetup + k{Tpagein + T.D

+ max[(TXOR + TPDA), TOEPUNM]}, (6)

where TXOR is the delay of the XOR, gate and TPDA is theresponse time of the linear PDA plus the delay forenabling the OE RAM rows. In this case, Tsetupinvolves loading modulators SLM1, SLM2, and SLM3,a process that can be executed in parallel.

The switching times TAN and TxOR of the two typesof gate have been found to be of the same order ofmagnitude, and the response time of a 1-D photodetec-tor can be less than 1 ns. Thus TOERAM, as definedabove, will always be higher than TXOR + TPDA, makingTselect equal to Tproject. Consequently the filter canachieve the same data processing rate for all thedifferent operating modes.

The percentage of effective data reduction is alwaysequal to the product of the projection factor (numberof bits in the desired fields over number of bits in anentire record) times the selectivity factor (number ofqualifying tuples over total number of tuples) and isquery dependent.

F. Transmissive ModeUp to this point, the architecture described hasexclusively made use of reflective mode pixel arrays.The reason for this is that at the present time themost commonly available VCSEL's are fabricatedwith the AlGaAs/GaAs material system, which doesnot have a transparent substrate. However, work isbeing undertaken to develop VCSEL's in theAlGaAs/InGaAs/GaAs and InGaAsP/InP materialsystems, which can provide a transparent substrate.The architecture described here does not inherentlyfavor one implementation over the other, and in factthere is no reason to expect great differences in thefunctionality of pixels fabricated from either materialsystem. The main advantage of the transmissiveover the reflective mode is in the number of passiveoptical elements. Because the reflective mode imple-mentation requires several more beam splitters thanthe transmissive mode, optical alignment along mul-tiple axes in the system is more critical. With thetransmissive mode implementation, all the elementscan be coaxial, which greatly simplifies the overallsystem. Besides the reduced number of optical com-ponents, the transmissive mode permits integratedoptical elements, such as microlens arrays, to be moreeasily added to the pixels by making use of the backsurface of the semiconductor wafer. The obviousconclusion is that a trade-off exists between thedifficulty of the optical implementation of a reflectivemode system and the difficulty of fabrication oftransmissive mode pixels.

6. Conclusions

The need for an efficient interface between a very fastparallel optical memory and a conventional electroniccomputer has been well documented in the literature.We presented an optoelectronic data filter capable ofaccepting hundreds of megabytes per second of datainput and providing output rates of 2 orders ofmagnitude lower. By taking advantage of the well-structured tabular representation of data and the

1352 APPLIED OPTICS / Vol. 33, No. 8 / 10 March 1994

highly parallel nature of projection and selectionoperations in a relational database environment, thisdata filter processes data on the fly in an associative-like mode. It uses 2-D arrays of HPT-VCSEL-basedoptoelectronic logic gates and performs in parallel thebasic functions of the row-column masking and datacomparison.

Although an all-optical implementation of the logicgate arrays would be possible (in principle), we chooseto use smart pixels with VCSEL's because they caneasily implement logic functions, have sufficient opti-cal gain to overcome losses, and do not require criticalwavelength tuning.

Database processing, like most nonnumerical pro-cessing applications, has been shown to be well suitedfor optical implementation. We believe that special-purpose optical processing units, similar to this filter,which attack applications with low computationalcomplexity but a large degree of parallelism, canbetter utilize the inherent advantages of optics and,therefore, have a greater probability of survival andsuccess in the ongoing race between electronic andoptical computing.

The authors acknowledge the partial support of theOptoelectronic Computing Systems Center, spon-sored by a National Science Foundation/EngineeringResearch Council grant ECD9015128 and by theColorado Advanced Technology Institute.

References1. P. B. Berra, K.-H. Brenner, W. T. Kathey, H. J. Caulfield, S. H.

Lee, and H. Szu, "Optical database/knowledge base ma-chines," Appl. Opt. 29, 193-204 (1990).

2. P. A. Mitkas and P. B. Berra, "Parallel optical memories forvery large databases," in Photonics for Computers, NeuralNetworks, and Memories, S. T. Kowel, W. J. Miceli, and J. A.Neff, eds., Proc. Soc. Photo-Opt. Instrum. Eng. 1773, 377-387(1992).

3. C. W. Wilmsen, S. A. Feld, F. R. Beyette Jr., and X. An,"Switching light with light," IEEE Circuits Devices 7, 21-25(1991).

4. P. B. Berra, A. Ghafoor, P. A. Mitkas, S. J. Marcinkowski, andM. Guizani, "The impact of optics on data and knowledge basesystems," IEEE Trans. Knowledge Data Eng. 1, 111-132(1989).

5. P. A. Mitkas and P. B. Berra, "PHOEBUS: An optoelectronicdatabase machine based on parallel optical disks," J. ParallelDistributed Process. 17, 230-244 (1993).

6. A. Louri and J. A. Hatch Jr., "High-speed database processingon an optical content-addressable parallel processor (OCAPP),"

in Optical Computing, Vol. 7 of 1993 OSA Technical DigestSeries (Optical Society of America, Washington, D.C., 1993),pp. 50-53.

7. P. S. Guilfoyle and W. Jackson Wiley, "Combinatorial logicbased optical computing architectures," Appl. Opt. 27, 1661-1673 (1988).

8. S. Matsuo, T. Kurokawa, H. Tsuda, and C. Amano, "All-opticalbit-pattern matching with photonic switching arrays," IEEEPhoton. Technol. Lett. 4, 267-269 (1992).

9. K. Matsuda, H. Adachi, T. Chino, and J. Shibata, "Integrationof InGaAsP/InP optoelectronic bistable switches with a func-tion of optical erasing," IEEE Electron. Device Lett. 11,442-444 (1990).

10. C. W. Wilmsen, F. R. Beyette Jr., X. An, S. A. Feld, and K. M.Geib, "Smart pixels using the light amplifying optical switch(LAOS)," IEEE J. Quantum Electron. 29, 769-774 (1993).

11. Y. H. Lee, J. I. Song, M. S. Kim, C. S. Shim, B. Tell, and R. E.Leibenguth, "Active optical NOR logic devices using surface-emitting lasers," IEEE Photon. Technol. Lett. 4, 479-482(1992).

12. R. P. Bryan, G. R. Olbright, and J. Cheng, "Cascadablesurface-emitting laser logic: Demonstration of Boolean logic,"Electron. Lett. 27, 893-894 (1991).

13. J. Cheng, P. Zhou, S. Z. Sun, S. Hersee, D. R. Myers, J. Zolper,and G. A. Vawter, "Surface-emitting laser-based smart pixelsfor two-dimensional optical logic and reconfigurable opticalinterconnections," IEEE J. Quantum Electron. 29, 741-756(1993).

14. F. R. Beyette Jr., K. M. Geib, C. M. St. Clair, S. A. Feld, andC. W. Wilmsen, "Optoelectronic exclusive-OR (XOR) using hy-brid integration of phototransistors and vertical cavity surfaceemitting lasers," IEEE Photon. Technol. Lett. (to be pub-lished).

15. A. H. Sayles and J. P. Uyemura, "An optoelectronic CMOSmemory circuit for parallel detection and storage of opticaldata," IEEE J. Solid-State Circuits 26, 1110-1115 (1991).

16. J. P. Uyemura and B. L. Austin, "Hybrid optical-electroniclogic gates in complementary metal-oxide semiconductor very-large-scale integration," Appl. Opt. 31, 1774-1782 (1992).

17. P. A. Mitkas, S. A. Feld, F. R. Beyette Jr., and C. W. Wilmsen,"Optical digital comparison unit for equal-to-, less-than, andgreater-than determination," Appl. Opt. 32, add page no(1993) (to be published).

18. F. S. Choa, Y. H. Lee, T. L. Koch, C. A. Burrus, B. Tell, L. J.Jewel, and R. E. Leibenguth, "High-speed modulation ofvertical-cavity surface-emitting lasers," IEEE Photon. Tech-nol. Lett. 3, 697-699 (1991).

19. M. W. Maeda, C. Chang-Hasnain, A. Von Lehmen, H. Idza-panah, C. Lin, M. Z. Iqbal, L. Florez, and J. Harbinson,"Multigigabit/s operation of 16-wavelength vertical-cavity,surface-emitting laser array," IEEE Photon. Technol. Lett. 3,863-865 (1991).

10 March 1994 / Vol. 33, No. 8 / APPLIED OPTICS 1353