Self-programming optical parallel logic

2
SELF-PROGRAMMING OPTICAL PARALLEL LOGIC Sirning Zhang, Lan Shao, and Liren Liu Information Optics Laboratory Shanghai Institute of Optics and Fine Mechanics Academia Sinica Shanghai 201800 People's Republic of China P.O. BOX 800-21 1 KEY TERMS Binary logic, optical processing, self-pogramming ABSTRACT Based on dual-rail spatial coding, in this article a selfprogramming optical logic concept ~ proposed. The self-programingis formulated by different coding of input images. Thus all 16 binary logic operations can be realized optical& in parollel. Experimental results are demonstrated. 0 1995 John wiley & Sons, Inc. 1. INTRODUCTION One of the most important and fundamental techniques for optical binary computing is an optical approach to execute a Boolean logic gate in parallel. The binary optical operations are essentially nonlinear. Recently there have been many proposals for implementing optical parallel binary logical processing in terms of the concept of spatial coding, such as polarization encoding in an imaging system [l], spatial cell coding in a shadow-casting system [21, theta modulation in a spatial filtering system [3], and dual-rail coding in a multiple- imaging system [4]. By these suggestions the nonlinear bur- den is shifted from the logic unit itself to the encoding step, so that the communication advantages of the optics are retained and nonlinear optical operations are avoided. It is well known that there is a concept of packets in telecommunication switching 151. The head of the address has the function to self-route the contained data. The dual-rail coding of an image for parallel logic processing is simply a spatial duplication of the image and its negative replica [4]. Accordingly, we propose a self-programming logic technique on the basis of dual-rail coding. That is, the two spatial patterns for dual-rail coding are accessed not only by the image or its negation but also by a bright background or a dark background. Thus all 16 binary logic operations can be obtained. It can be recognized that the reorganization of the hardware is not necessary and no complexity is added to the coding procedure, in comparison with the conventional dual- rail coding. To implement such self-programming logic opera- tions optically a simple two-channel imaging system is devel- oped. It is simple in construction and effective in perfor- mance. 2. PRINCIPLE OF SELF-PROGRAMMING LOGIC The logic operations between two images, the set of X and the set of Y, can be conventionally represented in terms of sum-of-products form: C = (K, nXC n Yc) u (K, nXc n Y) U (K3 nXn Yc) U(K, nX n Y) (1) where K,,K,, K,, and K4 represent the four customizing signals, which are either W (all bright) or 0 (all dark). Obviously, there are 16 combinations of the values of the signals. As a result, all 16 possible logic operations can be programmed by the customizing signals. Table 1 shows the situations. Now we suggest an alternative form: C = (A, n Y) u (A, n Yc), (2) where pattern A, or pattern A, may be the input image X, the complement of X", the empty set 0 (all dark), or the full set W (all bright). Therefore, there are a total of 16 collec- tions to Eq. (2). Such 16 accesses of A, and A, lead to the 16 distinct logic operations. These results are also given in Table 1. Because the logic operations are customized by virtue of the inherent coding representations for one of the input images, the self-programming logic is named. In Table 1 the connections between the two kinds of logic programming are explored. The self-programming has the advantage that the hardware needs no reorganization. 3. OPTICAL SELF-PROGRAMMING LOGIC PROCESSOR Figure 1 shows schematically the optical and parallel system to implement the suggested self-programming logic, which is a two-channel imaging system. There are two liquid-crystal panels (LCP, and LCPJ that are used to display the two input images, and a screen to receive the output images. Two other screens (not shown in Figure 1) are placed closely before LCP, and LCP, to scatter the light and extend it. According to the dual-rail idea, each LCP is used to display two horizontally arranged patterns. Lenses L, and L, with the same focal length f, are used to image the patterns in the LCP, onto LCP,. Lenses L, and L, with the same focal length f, are designed to overlap the two patterns in LCP, onto the screen by multiimaging. The intensity distribution of the overlapped image on the screen is detected by a CCD camera and then thresholded by the PC computer as the final output of the logic process. For simplicity, the configuration is so arranged that all the lenses have the identical focal length (f = fi = f,), the interval between L, and L, is the same as the interval between the images on each LCP, and the magnification factors of the two imaging units are both 1 : 1. Thus, to guarantee the exact overlapping, the interval between L, and L, should equal half that between L, and L,. LCP, displays the coded pair of one input image, that is, Y and Yc, LCP, displays a pattern pair from X, X", 0, and W. In this case, we have the intensity distribution on the output plane as where I(x, y) is the intensity of the overlapped image on the screen, A,(x,y) is the intensity of image A,, and so on. To get a binary output, a proper threshold is needed. In fact, this is a counterpart of Eq. (2). Referring to Table 1, by changing the pattern pairs on the second LCP all 16 optical parallel binary logic operations are available. The coding of input images is carried out by a PC computer. 4. DESIGN AND EXPERIMENTS For experimental demonstration, we designed an optical sys- tem. The focal length of all the lenses is 135 mm, and the magnification factors are all 1 : 1. The interval between L, and L, is 100 mm and the interval between L, and L, is 50 mm. The two input binary patterns used are depicted in Figures 2(a) and 2(b). The size of the input pattern is 120 X 120 pixels, and the center interval between two coding pat- terns is 100 mm. 48 MICROWAVE AND OPTICAL TECHNOLOGY LETTERS / Vol. 8, No. 1, January 1995

Transcript of Self-programming optical parallel logic

SELF-PROGRAMMING OPTICAL PARALLEL LOGIC Sirning Zhang, Lan Shao, and Liren Liu Information Optics Laboratory Shanghai Institute of Optics and Fine Mechanics Academia Sinica

Shanghai 201800 People's Republic of China

P.O. BOX 800-21 1

KEY TERMS Binary logic, optical processing, self-pogramming

ABSTRACT Based on dual-rail spatial coding, in this article a selfprogramming optical logic concept ~ proposed. The self-programing is formulated by different coding of input images. Thus all 16 binary logic operations can be realized optical& in parollel. Experimental results are demonstrated. 0 1995 John wiley & Sons, Inc.

1. INTRODUCTION

One of the most important and fundamental techniques for optical binary computing is an optical approach to execute a Boolean logic gate in parallel. The binary optical operations are essentially nonlinear. Recently there have been many proposals for implementing optical parallel binary logical processing in terms of the concept of spatial coding, such as polarization encoding in an imaging system [l], spatial cell coding in a shadow-casting system [21, theta modulation in a spatial filtering system [3], and dual-rail coding in a multiple- imaging system [4]. By these suggestions the nonlinear bur- den is shifted from the logic unit itself to the encoding step, so that the communication advantages of the optics are retained and nonlinear optical operations are avoided.

It is well known that there is a concept of packets in telecommunication switching 151. The head of the address has the function to self-route the contained data. The dual-rail coding of an image for parallel logic processing is simply a spatial duplication of the image and its negative replica [4]. Accordingly, we propose a self-programming logic technique on the basis of dual-rail coding. That is, the two spatial patterns for dual-rail coding are accessed not only by the image or its negation but also by a bright background or a dark background. Thus all 16 binary logic operations can be obtained. It can be recognized that the reorganization of the hardware is not necessary and no complexity is added to the coding procedure, in comparison with the conventional dual- rail coding. To implement such self-programming logic opera- tions optically a simple two-channel imaging system is devel- oped. It is simple in construction and effective in perfor- mance.

2. PRINCIPLE OF SELF-PROGRAMMING LOGIC The logic operations between two images, the set of X and the set of Y, can be conventionally represented in terms of sum-of-products form:

C = (K, nXC n Y c ) u ( K , nXc n Y ) U (K3 n X n Y c )

U(K, n X n Y ) (1)

where K,, K,, K,, and K4 represent the four customizing signals, which are either W (all bright) or 0 (all dark). Obviously, there are 16 combinations of the values of the signals. As a result, all 16 possible logic operations can be

programmed by the customizing signals. Table 1 shows the situations.

Now we suggest an alternative form:

C = ( A , n Y ) u ( A , n Y c ) , (2)

where pattern A, or pattern A, may be the input image X, the complement of X", the empty set 0 (all dark), or the full set W (all bright). Therefore, there are a total of 16 collec- tions to Eq. (2). Such 16 accesses of A, and A, lead to the 16 distinct logic operations. These results are also given in Table 1.

Because the logic operations are customized by virtue of the inherent coding representations for one of the input images, the self-programming logic is named. In Table 1 the connections between the two kinds of logic programming are explored. The self-programming has the advantage that the hardware needs no reorganization.

3. OPTICAL SELF-PROGRAMMING LOGIC PROCESSOR Figure 1 shows schematically the optical and parallel system to implement the suggested self-programming logic, which is a two-channel imaging system. There are two liquid-crystal panels (LCP, and LCPJ that are used to display the two input images, and a screen to receive the output images. Two other screens (not shown in Figure 1) are placed closely before LCP, and LCP, to scatter the light and extend it. According to the dual-rail idea, each LCP is used to display two horizontally arranged patterns. Lenses L, and L, with the same focal length f, are used to image the patterns in the LCP, onto LCP,. Lenses L, and L, with the same focal length f, are designed to overlap the two patterns in LCP, onto the screen by multiimaging. The intensity distribution of the overlapped image on the screen is detected by a CCD camera and then thresholded by the PC computer as the final output of the logic process. For simplicity, the configuration is so arranged that all the lenses have the identical focal length (f = fi = f,), the interval between L, and L, is the same as the interval between the images on each LCP, and the magnification factors of the two imaging units are both 1 : 1. Thus, to guarantee the exact overlapping, the interval between L, and L, should equal half that between L, and L,. LCP, displays the coded pair of one input image, that is, Y and Yc, LCP, displays a pattern pair from X, X", 0, and W. In this case, we have the intensity distribution on the output plane as

where I ( x , y ) is the intensity of the overlapped image on the screen, A , ( x , y ) is the intensity of image A,, and so on. To get a binary output, a proper threshold is needed. In fact, this is a counterpart of Eq. (2). Referring to Table 1, by changing the pattern pairs on the second LCP all 16 optical parallel binary logic operations are available. The coding of input images is carried out by a PC computer.

4. DESIGN AND EXPERIMENTS For experimental demonstration, we designed an optical sys- tem. The focal length of all the lenses is 135 mm, and the magnification factors are all 1 : 1. The interval between L, and L, is 100 mm and the interval between L, and L, is 50 mm. The two input binary patterns used are depicted in Figures 2(a) and 2(b). The size of the input pattern is 120 X 120 pixels, and the center interval between two coding pat- terns is 100 mm.

48 MICROWAVE AND OPTICAL TECHNOLOGY LETTERS / Vol. 8, No. 1, January 1995

TABLE 1 Customizing Signals for Programming Conventional Logic and Self-Programming Logic

Conventional Logic Self-Programming Logic Logic Symbol Kl K2 K3 K4 A , A2 Function

f(0) 0 0 0 0 0 0 F A11 0 a 0 W X 0 AND f(2) 0 0 W 0 0 X X n Y‘ f( 3) 0 0 W W X X X f(4) 0 W 0 0 X “ 0 xC n Y K5) 0 W 0 W W 0 Y f(6) 0 W W 0 X C X XOR f(7) 0 W W W W X OR f(8) W 0 0 0 0 X‘ NOR f(9) W 0 0 W XC X NXOR f(10) W 0 W 0 0 W Y“ f(1l) W 0 W W X W x u Y C f(12) W W 0 0 X C X‘ XC K13) W W 0 W W XC xc v Y f(14) W W W 0 X C W NAND f(15) W W W W W W T

LCP 1 Lcp 2 SCREEN For a better understanding, we give here some examples. For the NOR operation (C = X‘Y‘), on LCP, the coding format is chosen as A , ( x , y ) = 0 and A,(x,y) = Xc((x,y). For the XOR operation (C = XcY LJ Y‘X), the coding for- mat is A,(x , y ) = XYx, y ) and A,(x, y) = X ( x , y).

Figures 2(c) and 2(d) give the results from NOR and XOR operations, respectively.

5. CONCLUSION The usual spatial coding techniques for implementing the optical logic require the nonlinear coding of input images and reorganization of hardware. For example, controllable trans- mission 2D masks are necessary for shadow casting and theta module systems [2, 31, controllable polarizers for imaging systems [ 11, and controllable shutters for multiimaging sys- tems [4]. But the suggested self-programming logic needs no reorganization of hardware and no additional procedures for spatial coding. This technique provide a very simple way to execute parallel optical logic operations.

ACKNOWLEDGMENT This work was supported by the National Foundation of Natural Science of China and the High-Tech Bureau of China.

Extended

Figure 1 Implement of the self-programmable logic processor

REFERENCES 1. B. M. Watrasiewicz, “Optical Digital Computers,” Opt. Laser

Technol., Vol. 7, 1975, p. 213. 2. Y. Ichioka and T. Tanida, “Optical Parallel Logic Gates Using a

Shadow-Casting System for Optical Digital Computing,” Proc.

3. H. Bartelt, A. W. Lomann, and E. E. Sicrc, “Optical Logical Processing in Parallel with Theta Modulation,” J. Opl. Soc. Am. Ser. A, Vol. 1, 1984, p. 944.

4. L. Liu and X. Liu, “Cascadable Binary Pattern Logic Processor Using Multiple-Imaging,’’ Opt. Commun., Vol. 82, 1991, p. 446.

5. D. W. Davies and D. L. A. Barber, Communication Networks for Computers, John Wiley L Sons, London, 1976, pp. 340 and 447.

IEEE, Vol. 72, 1984, pp. 787-801.

Receiried 7-28-94

Microwave and Optical Technology Letters, 8/1, 48-49 ( C ) (4

Figure 2 Experiment results. (a) Input image X , (b) input image Y, (c) output for X NOR Y, (d) output for X XOR Y

(9 1995 John Wiley & Sons, Inc. CCC 0894-2477/95

MICROWAVE AND OPTICAL TECHNOLOGY LETTERS / Vol. 8, No. 1 , January 1995 49