Abstract:
A method for encoding a data symbol vector in an OFDM symbol and decoding an OFDM symbol to recover a data symbol vector encoded therein, the method comprising: receiving a vector of values; generating at least one input spatial light pattern responsive to the vector; generating for each input spatial light pattern an output spatial light pattern that is an interference pattern produced by light from the input spatial light pattern; sensing the output spatial light pattern at discrete spatial points and generating signals responsive to the sensed light; and if the vector represents a data symbol vector, using the signals to encode the data symbol vector in an OFDM signal and if the vector represents an OFDM symbol, using the signals to recover a data symbol vector encoded in the OFDM symbol.

Description:
FIELD OF THE INVENTION  
         [0001]    The invention relates to transmitting information using orthogonal frequency division multiplexing (OFDM) systems and in particular to OFDM systems in which OFDM symbols are generated optically.  
         BACKGROUND OF THE INVENTION  
         [0002]    In OFDM communication systems information transmitted by a transmitter to a receiver is coded in a plurality of symbols, such as for example phase shift keying (PSK) symbols or quadrature amplitude modulation (QAM) symbols, which are simultaneously transmitted by the transmitter to the receiver via a set of orthogonal “OFDM” carriers. The OFDM carriers are orthogonal to each other over a time interval T. An OFDM modem uses each symbol of the plurality of symbols as a coefficient that multiplies a different one of the orthogonal carriers and adds the carriers, each multiplied by its coefficient, to generate a time varying signal having a period T, which is transmitted to the receiver. The symbols are hereinafter referred to as “data symbols”, the time varying signal is hereinafter referred to as an “OFDM symbol” and the period T is referred to as an OFDM symbol period. The OFDM symbol is transmitted for a duration ST=T+G where G is a guard time that separates sequential OFDM symbols to reduce inter symbol interference that might result from multipath delay spread.  
           [0003]    The orthogonal carriers in the OFDM symbol period T are harmonic carriers exp(i2πnt/T), where t is time, n is an integer and i is the imaginary i. Let the plurality of data symbols coded into an OFDM symbol be represented by a vector d(n,N) of N, generally complex, data symbols d(n), where N is the order of the vector d(n,N) and n is an index that distinguishes components of the vector and satisfies the relation 0≦n≦N−1. A convention is used herein that vectors are represented by a letter (or letters) in bold type, which is generally followed by the index of the vector in lower case and the order of the vector in upper case in parenthesis.. The letter or letters that designate the vector, followed by an index in parentheses in regular, i.e. non-bold, type represents a component of the vector corresponding to the index.  
           [0004]    If an OFDM symbol formed from data symbols d(n) is represented by s(t), where t is time, then  
         s        (   t   )       =       ∑     n   =   0       N   -   1                         y        (   n   )          cos            4      π                 nk                 Δ                 x                 Δξ       λ                   z   o                    .                               
 
           [0005]    Assume that time is quantized in units of a sampling period ΔT so that t=kΔT and T=NΔT, then s(t) may be written as a time ordered set of values, i.e. a vector s(k,N) having components  
         s        (   k   )       =       ∑     n   =   0       N   -   1                         y        (   n   )          sin            4      π                 nk                 Δ                 x                 Δξ       λ                   z   o                    .                               
 
           [0006]    From the expression for s(k,N) it is seen that s(k,N), which is in the time domain, is an inverse discrete Fourier transform (IDFT) of the vector d(n,N) of data symbols d(n), which are in the frequency domain. An OFDM modem in the receiver that receives the time varying OFDM symbol s(k,N) can determine the vector of data symbols d(n,N), which represents the transmitted information, by discrete Fourier transforming (DFT) the OFDM symbol from the time domain to the frequency domain.  
           [0007]    However, the OFDM symbol s(k,N) described above can be, and often is, a complex symbol and for signal transmission, a real OFDM symbol that contains the information of the above complex OFDM symbol is advantageous. In addition it is generally desirable that the DC component of the OFDM symbol be equal to zero. To assure that the OFDM symbol has a zero DC component, for any vector of data symbols d(n,N), if d(0) is not equal to zero a null data symbol is added to the symbol vector so that d(0) is zero. To assure that an OFDM symbol corresponding to a data symbol vector d(n,N) is a real symbol, an Hermitian vector is formed from d(n,N) and an IDFT of the Hermiitian vector is used to generate an OFDM symbol containing the information of the data symbol vector d(n,N).  
           [0008]    If a vector D(n,2N) having components D(n) represents the Hermitian vector formed from d(n,N), components D(n) are defined as follows: D(n)=d(n) for 0≦n≦(N−1), D(N)=0, (or an arbitrary real number), and D(n)=d(2N−n)* for (N+1)≦n≦(2N−1). If a vector S(k,2N) having components S(k) represents the OFDM symbol that is generated by inverse Fourier transforming D(n,2N), then  
           S        (   k   )       =         ∑     n   =   0         2      N     -   1                         D        (   n   )            exp        (     2π                   nk   /   2        N     )           =     2      R          ∑     n   =   0       N   -   1                         d        (   n   )            exp        (     2π                 nk        /        2      N     )                    ,                                                
 
           [0009]    where R stands for the real part of the last sum in the above expression. (It is noted that the vector D(n) is not quite Hermitian because component D(0) does not have a matching complex conjugate component in the vector D(n,2N). However, for convenience D(n) is referred to as an Hermitian vector.) The real OFDM symbol S(k,2N) is used to transmit the data symbol vector d(n,N) to an intended OFDM receiver. In some OFDM networks S(k,2N) is transmitted directly to the receiver, while in other OFDM networks the OFDM symbol is used to modulate a suitable bandpass carrier which is transmitted to the receiver.  
           [0010]    OFDM communication networks are relatively efficient in use of bandwidth and are substantially immune to inter symbol interference resulting from multipath time delays. However, as noted above, they require generating an inverse Fourier transform of data to be transmitted and generating a Fourier transform of received data. Performing the Fourier transform and its inverse are computation intensive and time consuming, even when performed by DSPs using fast Fourier transform (FFT) algorithms.  
           [0011]    In addition, in order to use FFT algorithms to process OFDM data, the number 2N of data symbols D(n), and as a result the number of orthogonal carriers in an OFDM carrier set, should be equal to 2 m , where m is an integer. As a result, data capacity of a prior art OFDM communication system is conveniently expanded only by at least doubling the data carrying capacity of the network, which requires at least doubling the number of its orthogonal carriers. It is therefore relatively difficult to expand data carrying capacity of prior art OFDM systems. In particular, data carrying capacity of such systems cannot easily be adjusted to provide an increase in capacity that is less than double the data capacity of the system.  
         SUMMARY OF THE INVENTION  
         [0012]    An aspect of some embodiments of the present invention relates to providing an OFDM communication network that processes data faster than many conventional prior art OFDM communication networks.  
           [0013]    An aspect of some embodiments of the present invention, relates to providing an OFDM communications network that can relatively easily be expanded to accommodate increases in data carrying demand.  
           [0014]    An aspect of some embodiments of the present invention relates to providing an OFDM modem comprising an optical processor that processes OFDM symbols faster than many conventional prior art OFDM modems. Preferably, the optical processor comprises a shearing interferometer, and is similar to an optical processor, hereinafter referred to as a “shearing processor”, based on shearing interferometry described in Israel Application 135576 entitled “OFDM”, filed on Apr. 10, 2000, Israel Application 141041, entitled “An Optical Discrete Transform Method and System” filed on Jan. 23, 2001 and PCT Application entitled “Optical Transform Method and System”, filed on even date with the present application, the disclosures of which are incorporated herein by reference.  
           [0015]    When an OFDM modem, in accordance with an embodiment of the present invention, receives a data symbol vector d(n,N) to encode in an OFDM symbol S(k,2N), the modem uses the shearing processor to generate an IDFT of the Hermitian vector D(n,2N) that corresponds to d(n,N) and thereby the OFDM symbol S(k,2N) corresponding to d(n,N). When the OFDM modem receives an OFDM symbol S(k,2N), the modem uses the shearing processor to generate a DFT of the OFDM symbol to recover a data symbol vector d(n,N) encoded in the OFDM symbol.  
           [0016]    Explicitly writing out the real part of the sum in the expression given above for a component S(k) of S(k,2N),  
         S        (   k   )       =       2          ∑     n   =   0       N   -   1                         [     Rd        (   n   )       ]          cos        (     2      π                 nk        /        2      N     )             -     2          ∑     n   =   0       N   -   1                         [     Id        (   n   )       ]          sin        (     2      π                 nk        /        2      N     )       ,                                 
 
           [0017]    where Rd(n) represents the real part of d(n) and Id(n) represents the imaginary part of d(n). The first sum in the expression for S(k) is a discrete cosine transform (DCT) of a vector Rd(n,N) having components Rd(n), evaluated for index k, and the second sum is a discrete sine transform (DST) of a vector Id(n,N) having components Id(n), evaluated for index k. S(k,2N) may therefore be written S(k,2N)=2DCT[Rd(n,N),k]−2DST[Id(n,N),k]. The modem uses the shearing processor it comprises, in accordance with an embodiment of the present invention, to generate the DCT and DST of d(n,N) to provide OFDM symbol S(k,2N).  
           [0018]    The modem receives the data symbol vector d(n,N) as electronic signals. Assume that the electronic signals represent the real and imaginary parts of each component d(n) of d(n,N) as binary numbers having B bits so that  
         d        (   n   )       =       ∑   0     B   -   1                         (         Rb        (   n   )       p     +       iIb        (   n   )       p       )          2   p     ,                             
 
           [0019]    where Rb(n) p  is the p-th bit of the binary number representing the real part of d(n) and Ib(n) p  is the p-th bit of the binary number representing imaginary part of d(n). The data symbol vector d(n,N) can then be expressed as a sum,  
         d        (     n   ,              N     )       =       ∑   0     (     B   -   1     )                         (         BRd        (     n   ,              N     )       p     +       iBId        (     n   ,              N     )       p       )            2   p     .                               
 
           [0020]    In the expression for d(n,N), BRd(n,N) p  is an N dimensional vector {Rb(N−1) p , Rb(N−2) p , . . . Rb(0) p } having components that are the p-th bits of the real parts of the components d(n,N). Similarly, BId(n,N) p  is a vector {Ib(N−1) p , Ib(N−2) p , . . . Ib(0) p } having components that are the p-th bits of the imaginary parts of the components of d(n,N). A vector having components that are bits, i.e. that can assume only a value one or zero, is hereinafter referred to as a “binary vector”. Binary vectors BRd(n,N) p  and BId(n,N) p  correspond to “bit planes” discussed in PCT Publication WO 00/72267, the disclosure of which is incorporated herein by reference.  
           [0021]    In accordance with an embodiment of the present invention, for each real and imaginary binary vector BRd(n,N) p  and BId(n,N) p  the shearing processor converts electronic signals representing the binary vector to at least one first spatial light pattern to represent the vector optically. The shearing processor generates a second spatial light pattern from each of the at least one first spatial light pattern, which second spatial light pattern is a function of the discrete cosine transform (DCT) and/or discrete sine transform (DST) of the vector d(n,N). The second spatial light pattern is sensed by a suitable optical sensor comprised in the shearing processor, which converts the second spatial light pattern to electronic signals. The electronic signals from the second spatial light patterns are processed by a suitable electronic processor to determine the DCT and DST of d(n,N) and thereby the OFDM symbol S(k,2N) corresponding to d(n).  
           [0022]    When the modem receives an OFDM symbol S(k,2N), in accordance with an embodiment of the present invention, the modem reverses the process by which the OFDM signal is generated to recover a data symbol vector d(n) encoded in the OFDM symbol. The modem converts electronic signals representing the OFDM symbol into at least one first spatial light pattern to represent the OFDM symbol optically. The shearing processor generates a second spatial light pattern for each of the at least one first spatial light pattern, which second spatial light pattern is sensed by the optical sensor. Electronic signals generated by the optical sensor for each of the second spatial patterns are processed to provide the data symbol vector d(n,N) encoded in the OFDM symbol.  
           [0023]    According to an aspect of some embodiments of the present invention, a data symbol vector d(n,N) is partitioned into subvectors prior to processing by the shearing processor.  
           [0024]    A shearing processor in an OFDM modem, in accordance with an embodiment of the present invention, comprises a plurality of preferably point-like, non-coherent, light sources that the processor controls to, generate first spatial light patterns representing vectors that the processor processes. To represent a binary vector, such as BRd(n,N) p  and BId(n,N) p , each bit of the binary vector is represented by a different one of the light sources. For example a bit of the binary vector that has a value 1 may be represented by a turned on light source while a bit that has a value 0 is represented by a turned off light source.  
           [0025]    In some cases a binary vector BRd(n,N) p  or BId(n,N) p  to be processed by the shearing processor so as to generate a DCT or DST of the vector contains more bits than the number of the plurality of light sources in the shearing processor. In such cases, in accordance with an embodiment of the present invention, the vector is partitioned into binary subvectors. Each binary subvector is in turn optically processed to generate a DCT and DST of the binary subvector. The DCT and DST of the binary subvectors of a vector BRd(n,N) p  or BId(n,N) p  are used to determine the DCT and DST of the binary vector BRd(n,N) p  or BId(n,N) p .  
           [0026]    In a prior art process for generating an OFDM symbol from a data symbol vector d(n,N), generation of a DCT and DST transform of the vector d(n) are generally the most computationally intense and time consuming portion of the process. In an “optical OFDM modem”, in accordance with an embodiment of the present invention, the optical signal processor generates the second spatial light pattern, which is used to determine the DCT and DST of d(n,N), for each of the at least one first spatial image substantially instantaneously. As a result, an optical OFDM modem, in accordance with an embodiment of the present invention, codes and decodes OFDM symbols substantially faster than many prior art OFDM modems. An OFDM communication network comprising optical modems, in accordance with an embodiment of the present invention, therefore processes data faster than many prior art OFDM communication networks.  
           [0027]    In addition, an optical signal processor and thereby an OFDM modem, in accordance with an embodiment of the present invention, does not generally require that the number of data symbols in a data symbol vector d(n,N) processed by the optical signal processor be a multiple of two. As a result, data carrying capacity of an OFDM communication network, in accordance with an embodiment of the present invention, does not necessarily have to be doubled each time an increase in data carrying capacity of the network is desired. The OFDM system can therefore be relatively easily expanded to accommodate increases in data carrying capacity.  
           [0028]    There is therefore provided, in accordance with an embodiment of the present invention a method for encoding a data symbol vector in an OFDM symbol and decoding an OFDM symbol to recover a data symbol vector encoded therein, the method comprising: receiving a vector of values; generating at least one input spatial light pattern responsive to the vector; generating for each input spatial light pattern an output spatial light pattern that is an interference pattern produced by light from the input spatial light pattern; sensing the output spatial light pattern at discrete spatial points and generating signals responsive to the sensed light; and if the vector represents a data symbol vector, using the signals to encode the data symbol vector in an OFDM signal and if the vector represents an OFDM symbol, using the signals to recover a data symbol vector encoded in the OFDM symbol.  
           [0029]    Optionally, generating at least one input spatial light pattern responsive to the vector comprises partitioning the vector into a plurality of data sub-vectors and generating at least one input spatial light pattern for each sub-vector. Alternatively or additionally, generating at least one input spatial light pattern comprises expressing the vector in terms of binary vectors, where a binary vector has components equal to one or zero and a vector expressed in terms of binary vectors is equal to a sum of the binary vectors each of which is multiplied by a different power of two, and generating at least one spatial input light pattern for each binary vector.  
           [0030]    In some embodiments of the present invention, if the vector comprises a complex component, generating at least one input spatial light pattern comprises parsing the vector into a real and an imaginary vector and generating at least one input spatial light pattern for the real vector and at least one input spatial light pattern for the imaginary vector.  
           [0031]    In some embodiments of the present invention, processing the signals to encode or decode the OFDM symbol comprises processing the signals to determine a DCT and DST of the vector.  
           [0032]    There is further provided in accordance with an embodiment of the present invention a method for generating a DCT and DST of a vector comprising: partitioning the vector into a plurality of sub-vectors; generating at least one input spatial light pattern responsive to each sub-vector; generating for each input spatial light pattern an output spatial light pattern that is an interference pattern produced by light from the input spatial light pattern; sensing the output spatial light pattern at discrete spatial points and generating signals responsive to the sensed light; and processing the signals to generate the DCT and DST of the vector.  
           [0033]    In some embodiments of the present invention, generating the at least one input spatial light pattern comprises providing a plurality of point-like light sources and controlling each light sources to radiate light at a desired intensity. Optionally, the light sources are coplanar in a first plane.  
           [0034]    Optionally, generating the output spatial light pattern comprises generating a virtual mirror image for each light source wherein the virtual images are reflections of the light sources across a same mirror plane that is perpendicular to the first plane.  
           [0035]    Optionally, the method comprises positioning the light sources in the first plane so that along a line that lies in the first plane and is perpendicular to the mirror plane, each light source has a projection at a different point on the line and a distance between any two adjacent projection points is the same.  
           [0036]    Positioning the light sources optionally comprises positioning the light sources along a straight line. Optionally the straight line is perpendicular to the mirror plane.  
           [0037]    In some embodiments of the present invention, the output spatial light pattern is a light pattern in a second plane parallel to the first plane at a distance “z” from the first plane.  
           [0038]    Optionally, each of the light sources provides light having a same characteristic wavelength “λ”.  
           [0039]    Optionally, the plurality of light sources comprises N light sources and the n-th light source, where n is an integer satisfying 0≦n≦N, is located at a distance xo+nΔx from the image plane and the light is sensed at N points in the second plane.  
           [0040]    Optionally, the k-th point at which light is sensed, where k is an integer satisfying 0≦k≦N, is located at a distance from the image plane that is equal to kΔξ, (k+2N)Δξ or (2N−k)Δξ and wherein λz=4NΔxΔξ.  
           [0041]    The at least one input spatial light pattern, optionally, comprises first and second input spatial light patterns and the intensity of the n-th light source in the second input spatial light pattern is substantially equal to the intensity of the (N−n) light source of the first input spatial light pattern.  
           [0042]    There is further provided, in accordance with an embodiment if the present, invention an OFDM modem for coding a data symbol vector into an OFDM symbol comprising: an optical processor having an input port and an output port that receives the data symbol vector and optically processes the data symbol vector to generate signals at the optical processor&#39;s output port that are responsive to a DCT and a DST of the data symbol vector; a signal processor that receives the signals generated by the optical processor and processes the signals to determine the DCT and DST of the data symbol vector and generates the OFDM symbol from the DCT and DST.  
           [0043]    There is further provided, in accordance with an embodiment of the present invention, an OFDM modem for decoding an OFDM symbol and recovering a data symbol vector encoded therein comprising: a signal processor that receives a first vector representing the OFDM symbol and generates a second and a third vector therefrom, wherein the second vector has components, each of which is proportional to a sum of two different components of the first vector, and the third vector has components, each of which is proportional to a difference between two different components of the first vector; and an optical processor that receives the second and third vectors and optically processes the received vectors to generate signals responsive to a DCT and a DST of the second vector and signals responsive to a DCT and DST of the third vector; wherein the signal processor receives the signals generated by the optical processor and processes them to decode the OFDM symbol and recover the data symbol vector encoded therein. Additionally or alternatively, the optical processor is a shearing processor.  
           [0044]    There is further provided, an OFDM communication network comprising an OFDM modem in accordance with an embodiment of the present invention. 
       
    
    
     BRIEF DESCRIPTION OF FIGURES  
       [0045]    Non-limiting examples of embodiments of the present invention are described below with reference to figures attached hereto. In the figures, identical structures, elements, or parts that appear in more than one figure are generally labeled with the same numeral in all the figures in which they appear. Dimensions of components and features shown in the figures are generally chosen for convenience and clarity of presentation and are not necessarily shown to scale. The figures are listed below.  
         [0046]    [0046]FIG. 1 schematically shows an OFDM communication network in which an OFDM symbol is being transmitted from a first OFDM modem to a second OFDM modem, in accordance with an embodiment of the present invention; and  
         [0047]    [0047]FIG. 2 schematically shows a shearing processor suitable for use in an OFDM modem in accordance with an embodiment of the present invention. 
     
    
     DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS  
       [0048]    [0048]FIG. 1 schematically shows an OFDM communication network  20  in which a first modem  22  generates an OFDM symbol that it transmits to a second OFDM modem  24 , in accordance with an embodiment of the present invention. Modem  22  comprises a processor  26  that processes electronic signals, an optical processor  28  and optionally an analogue front end (AFE)  30 . Optionally, optical processor  28  is a shearing processor similar to a shearing processor described in Israel Applications 135576 and 141041. Modem  24  is optionally similar to modem  22  and comprises a processor  32 , an optical processor  34  and optionally an analogue front end (AFE)  36 .  
         [0049]    Modem  22  receives an N dimensional data symbol vector d(n,N), schematically represented by a block arrow  23 , in the form of electronic signals generated by a data source (not shown). Data symbol vector d(n,N) is routed to processor  26 , which optionally, generates at least one binary vector, generally a real binary vector BRd(n,N) p  and an imaginary binary vector BId(n,N) p  and, as might be required, suitable subvectors thereof, to represent the data symbol vector.  
         [0050]    Processor  26  transmits each binary vector, schematically represented by a block arrow labeled BV, in the form of electronic signals to shearing processor  28 . Shearing processor  28  converts the electronic signals into a preferably discrete spatial light pattern and optically processes the light pattern to generate electronic “transform” signals that are functions of a DCT and/or DST transform of binary vector BV. The transform signals, represented by a block arrow labeled TBV are input to processor  26 . Processor  26  processes transform signals TBV from vectors BV to generate an OFDM signal expressed as a vector S(k,2N) of order 2N, represented by a block arrow labeled S(k,2N), that encodes data symbol vector d(n,N). S(k,2N) is input to analogue front end  30  which uses S(k,2N) to modulate a suitable carrier and generate a signal XTR encoded with S(k,2N) that is transmitted to OFDM modem  24  over a suitable communication channel, represented by dashed line  40  of communication network  20 .  
         [0051]    OFDM modem  24  receives a copy of transmitted signal XTR after transmission via channel  40  as a received signal RCV. Analogue front end  36  of OFDM modem  24  recovers a copy of S(k,2N) from received signal RCV, using methods known in the art, which copy is input to processor  32 . Processor  32  generates two real vectors of order N from S(k,2N). A first vector, RS(k,N) having components RS(k)=[S(2N−k)+S(k)]/2 and a second vector IS(k,N) having components IS(k)=[S(2N−k)-S(k)]/2. Processor  32  optionally decomposes RS(k,N) into binary vectors BRS(k,N) p , where  
         RS        (     k   ,              N     )       =       ∑   0     (     B   -   1     )                           BRS        (     n   ,              N     )       p          2   p                               
 
         [0052]    and IS(k,N) into binary vectors BIS(k,N) p  where  
         IS        (     k   ,              N     )       =       ∑   0     (     B   -   1     )                           BIS        (     n   ,              N     )       p            2   p     .                               
 
         [0053]    Processor  32  inputs each binary vector BRS(k,N) p  and BIS(k,N) p  generically represented by a block arrow BV in modem  24  into shearing processor  34 . Shearing processor  32  optically processes the vector and transmits transform signals TBV that are functions of the DCT and DST of the binary vector to processor  32 . Processor  32  uses transform signals TBV responsive to binary vectors BRS(k,N) p  generated for RS(k,N) to determine the real parts of components d(n) of data symbol vector d(n,N). Processor  32  uses transform signals TBV responsive to binary vectors BIS(kN) p  generated for IS(k,N) to determine the imaginary parts of components d(n) of data symbol vector d(n,N). The real and imaginary parts of d(n,N) determined by modem  24  are combined in an output signal  38  provided by the modem, which encodes a copy of d(n,N).  
         [0054]    [0054]FIG. 2 schematically shows a shearing processor  50  suitable for use in an OFDM modem, in accordance with an embodiment of the present invention.  
         [0055]    Shearing processor  50  is similar to a shearing processor described in Israel applications 135576 and 141041. Shearing processor  50  optionally comprises a planar mirror  52 , an optionally linear array  54  of N substantially evenly spaced light sources LS(n), 0≦n≦(N−1), such as LEDs or VCSLs, and an optionally linear array  56  of N evenly spaced light detectors LD(k), 0≦k≦N. To prevent clutter, only some of light sources LS(n) and light detectors LD(k) are labeled. Optionally, linear array  54  of light sources LS(n) and linear array  56  of detectors LD(k) are perpendicular to the plane of mirror  52 .  
         [0056]    For convenience, a coordinate system having its origin in the plane of mirror  52  and x-axis passing through light sources LS(n) is used to locate features of shearing processor  50 . Optionally, a straight line  58  that passes through light detectors LD(k) passes through the z-axis of the coordinate system. Let z o  represent the intersection point of line  58  with the z-axis.  
         [0057]    Let Δx represent spacing between light sources LS(n) and let x o  represent the x coordinate of LS(0), so that x(n), the x coordinate of LS(n) can be written x(n)=x o +nΔx. Mirror  52  generates an array  60  of virtual light sources LS′(n) that are mirror images of light sources LS(n). Whereas light from two different light sources LS(n) is not coherent, light emitted by a light source LS(N) is coherent with and substantially  1800  out of phase with light “virtually” emitted by its mirror image light source LS′(n). The 1800 phase difference is generated when light from light source LS(n) is reflected from mirror  52 .  
         [0058]    Light from light source array  54  interferes with light from its mirror image light source array  60  to generate an interference pattern (not shown) in a plane  62  that is parallel to the xy plane and passes through z o , in which plane light detectors LD(k) are located.  
         [0059]    Intensity of light in the interference pattern comprises a DC bias intensity plus an intensity that varies with position in z o  plane  62 . Assume that each light source LS(n) has an extent along the x axis “a” and radiates light with an intensity y(n). A vector y(n,N) of light intensities {y(0), y(1), . . . y(N−1)} at which light sources LS(n) radiate light is used. to define a spatial light pattern (i.e. a “first” spatial light pattern generated by shearing processor  50 ) of light sources LS(n).  
         [0060]    Let x coordinates of points in plane  62  be represented by ξ and let Y(ξ) represent light intensity of the interference pattern (a “second” spatial light pattern generated from a first spatial light pattern by shearing processor  50 ) in the plane. If λ represents the wavelength of light emitted by light sources LS(n) and if (2aξ/λz o )&lt;&lt;1 then  
         Y        (   ξ   )       =     K   +       ∑     n   =   0       N   -   1                         y        (   n   )          cos          4        π        (       x   o     +     n                 Δ                 x       )          ξ       λ                   z   o                                     
 
         [0061]    where K is the DC bias intensity and the sum is the variable intensity. (K depends only on the sum  
         ∑     n   =   0       N   -   1                       y        (   n   )                             
 
         [0062]    and to a first approximation, intensity of the interference pattern at a point in plane  62  is independent of the y component of the point for magnitudes of the y component substantially equal to values of ξ for which (2aξ/λz o )&lt;&lt;1.)  
         [0063]    Expanding the cosine term in the above expression for Y(ξ) gives,  
               Y        (   ξ   )       =            K   +       [     cos                     4                 π                   x   O                   ξ       λ                   z   O           ]                       ∑     n   =   0       N   -   1              y        (   n   )          cos          4                 π                 n                 Δ                 x                 ξ       λ                   z   O               -                            [     sin                     4                 π                   x   O                   ξ       λ                   z   O           ]                       ∑     n   =   0       N   -   1              y        (   n   )          sin            4                 π                 n                 Δ                 x                 ξ       λ                   z   O         .                                       
 
         [0064]    Let the even spacing between light detectors LD(k) be represented by Δξ and assume that LD(0) is located at (x=0, (i.e. ξ=0), y=0, z=z o ). The ξ coordinate ξ(k) (i.e. the x coordinates in plane  62 ) of light detector LD(k) can therefore be written ξ(k)=kΔξ. Replacing ξ in the above expression for Y(ξ) with kΔξ and defining q=x o /Δx, intesity of light sensed by light detector LD(k) can be written,  
               Y        (   k   )       =            K   +       [     cos                     4                 π                 kq                 Δ                 x                 Δ                 ξ       λ                   z   O           ]                       ∑     n   =   0       N   -   1              y        (   n   )          cos          4                 π                 nk                 Δ                 x                 Δ                 ξ       λ                   z   O               -                            [     sin                     4                 π                 kq                 Δ                 x                 Δ                 ξ       λ                   z   O           ]                       ∑     n   =   0       N   -   1              y        (   n   )          sin            4                 π                 nk                 Δ                 x                 Δ                 ξ       λ                   z   O         .                                       
 
         [0065]    The bias intensity K can be substantially removed from signals generated by detectors LD(k) responsive to sensed light intensity Y(k) using methods of processing the signals and/or hardware known in the art. For convenience it is therefore assumed hereinafter that K=0.  
         [0066]    If spacing Δx between light sources LS(n) and spacing Δξ between light detectors LD(k) satisfy a relation, a “matching condition”, λz o =4NΔxΔξ then,  
               Y        (   k   )       =         [     cos                     2                 π                 kq       2      N         ]            ∑     n   =   0       N   -   1              y        (   n   )          cos          2                 π                 nk       2      N             -       [     sin          2                 π                 kq       2      N         ]            ∑     n   =   0       N   -   1              y        (   n   )          sin          2                 π                 nk       2      N                           =         [     cos          2                 π                 kq       2      N         ]                     DCT   [       y        (     n   ,   N     )       ,   k     ]       -       [     sin          2                 π                 kq       2      N         ]                       DST   [       y   (     n   ,   N     )     ,   k     ]     .                                     
 
         [0067]    Matching conditions for optical systems that provide discrete transforms and effects of light source size (e.g. extent “a” of a light source LS(n) along the x axis) light detector size on matching conditions are discussed in PCT Publication WO 00/72105, the disclosure of which is incorporated herein by reference.  
         [0068]    Let Y′(k) represent intensity of light sensed by light detector LD(k) when the spatial light intensity pattern of light sources LS(n) is “reversed”. In the reversed spatial light pattern light source LS(n) emits light with intensity y(N−1−n) instead of with intensity y(n) and the spatial pattern of light intensity of light sources LS(n) is described by a vector of light intensity y′(n,N) having components y′(n)=y(N−1−n). Then,  
                 Y   ′          (   k   )       =                [     cos                     2                 π                   k        (     N   -   1   +   q     )           2      N         ]            ∑     n   =   0       N   -   1              y        (   n   )          cos          2                 π                 nk       2      N             +                            [     sin          2                 π                   k        (     N   -   1   +   q     )           2      N         ]            ∑     n   =   0       N   -   1              y        (   n   )          sin          2                 π                 nk       2      N                         =                [     cos                     2                 π                   k        (     N   -   1   +   q     )           2      N         ]                     DCT   [       y        (     n   ,   N     )       ,   k     ]       +                            [     sin                     2                 π                   k        (     N   -   1   +   q     )           2      N         ]                       DST   [       y        (     n   ,   N     )       ,   k     ]     .                                   
 
         [0069]    From the above discussion it is seen that light intensities Y(k) and Y′(k) sensed by light detector LD(k) are linear functions of the discrete cosine and sine transforms DCT[y(n,N),k] and DST[y(n,N),k]. As a result, DCT[y(n,N),k] and DST[y(n,N),k] are linear functions of Y(k) and Y′(k) that can be determined by a suitable processor using signals generated by detectors LD(n) responsive to Y(k) and Y′(k).  
         [0070]    Therefore, for any general N dimensional vector x(n,N) that can be represented by a light intensity vector y(n,N), in accordance with an embodiment of the present invention, the discrete cosine and sine transforms of the vector can be determined using shearing processor  50 . Light sources LS(n) are first controlled to emit light with intensities in accordance with a vector y(n,N) and signals generated by each light detector LD(k) responsive to intensity of light that it senses are recorded. Light sources LS(n) are then controlled to emit light with intensities determined in accordance with a reversed intensity vector y′(n,N), and signals generated by each light detector LD(k) responsive to intensity of light that it senses are again recorded. The recorded signals are processed by a suitable processor to determine DCT[y(n,N),k] and DST[y(n,N),k] and thereby DCT[x(n,N),k] and DST[x(n,N),k] .  
         [0071]    In terms of Y(k) and Y′(k), DCT[x(n,N),k]=DCT[y(n,N),k]=α(k,q)Y(k)+β(k,q)Y′(k) and DST[x(n,N),k]=DST[y(n,N),k]=γ(k,q)Y(k)+δ(k,q)Y′(k) where α(k,q) β(k,q), γ(k,q) and δ(k,q) are coefficients that are dependent only on the parameter q and index k. The coefficients are, of course, independent of y(n,N) and values for the coefficients may therefore be calculated once and stored in the processor for use for determining a DCT and DST for any intensity vector y(n,N). The possibility of storing coefficients α(k,q), β(k,q), γ(k,q) and δ(k,q) reduces processing time required to determine DCTs and DSTs for vectors optically processed by shearing processor  50 .  
         [0072]    In particular, shearing processor  50  can be used in an OFDM modem, in accordance with an embodiment of the present invention, to determine the DCT and DST respectively of the real and imaginary parts, Rd(n,N) and Id(n,N), of a data symbol vector d(n,N) so as to encode the data symbol vector in an OFDM symbol S(k,2N). For modems that represent a data symbol vector d(n,N) using binary vectors BRd(n,N) p  and BId(n,N) p , in accordance with an embodiment of the present invention, each binary vector is converted into corresponding intensity vectors y(n,N) and y′(n,N). (To represent a binary vector by an intensity vector y(n,N) each bit is represented by intensity y(n) of a different corresponding light source LS(n). Optionally, light sources LS(n) representing bits having a value one are turned on to radiate light at a substantially same predetermined intensity, while light sources LS(n) representing bits having a value zero are turned off.) Vectors y(n,N) and y′(n,N) are optically processed by shearing interferometer  50  to determine the DCT or DST of the binary vector and the DCT and DST of all the binary vectors are used by a suitable processor to determine the DCT and DST of d(n,N).  
         [0073]    It is noted that OFDM symbol S(k,2N) corresponding to d(n,N) is determined for 0≦k≦(2N−1) and that therefore DCT[Rd(n,N),k] and DST[Id(n,N),k] must similarly be determined for 0≦k≦(2N−1). However, S(k,2N) has a symmetry property with respect to k=N such that for 0≦k≦(2N−1)  
         [0074]    S(k,2N)=2{DCT[Rd(n,N),k]−DST[Id(n,N),k]} and S(2N−k,2N)=2{DCT[Rd(n,N),k]+DST[Id(n,N),k]}.  
         [0075]    As a result, to determine S(k,2N) for 0≦k≦(2N−1) it is sufficient to determine DCT[Rd(n,N),k] and 2DST[Id(n,N),k] for 0≦k≦(N−1).  
         [0076]    It is further noted that if q (i.e. x o /Δx) is an integer and Q is any positive integer (which may be different from N) and the matching condition λz o =4QΔxΔξ is satisfied, then Y(k) is periodic with period 2Q and Y(k)=Y(k+2Q). In addition Y(k) has a symmetry property that Y(k)=Y(2Q−k). As a result, of the periodicity and symmetry of Y(k), light detectors LD(k) can be located at convenient positions in plane  62  other than positions ξ=nΔξ for which 0≦k≦(N−1) to determine values for Y(k). If q is not an integer but a rational number, such that q=r/s where r and s are integers, then Y(k) has a period equal to sQ and a symmetry property Y(k)=Y(2sQ−k).  
         [0077]    The above description tacitly assumes that a vector represented by intensity vector y(n,N) is a positive vector, i.e. all the components of the vector are either positive or zero. Representing a vector by a spatial light intensity vector y(n,N) is relatively straightforward for a vector having components that are either positive or zero, or components that are either negative or zero. A positive vector and its negative, i e. a vector that is equal to the positive vector multiplied by minus one, are represented by a same intensity vector y(n,N) in shearing processor  50 . Shearing processor  50  does not differentiate between a positive vector and its negative and provides a same DCT and DST for both vectors. If a vector represented by y(n,N) is a negative vector, the DCT and DST provided by processing signals from shearing processor  50  is multiplied by minus one to provide the DCT and DST of the vector.  
         [0078]    However, for a “mixed” vector having both positive and negative valued components the situation is less straightforward. To process a mixed vector, the vector can be partitioned into positive and negative vectors that are separately processed by shearing processor  50 . The results of processing by shearing processor  50  are then added to provide a desired DCT or DST of the mixed vector. Alternatively, a known vector can be added to the mixed vector to generate a positive vector for which a DCT and DST is provided by shearing processor  50 . A DCT or DST, as appropriate, of the known vector is then subtracted from the DCT and/or DST provided by shearing processor  50  to provide the DCT and/or DST of the mixed vector. Methods of representing negative numbers and mixed vectors by spatial light patterns for processing by optical processors are discussed in PCT Publication WO 00/72267, the disclosure of which is incorporated herein by reference.  
         [0079]    In some cases, a vector to be processed by a shearing processor similar to shearing processor  50 , in accordance with an embodiment of the present invention, might have a number of components larger than the number of the plurality of light sources LS(n) comprised in the shearing processor. For example, in many OFDM communication networks a data symbol vector typically comprises 256 components and a shearing processor comprised in an OFDM modem in accordance with an embodiment of the present invention, might comprise 32 light sources LS(n).  
         [0080]    For such cases, in accordance with an embodiment of the present invention, the vector to be processed is partitioned into a plurality of subvectors, each having a number of components equal to the number of light sources in the shearing processor. (For simplicity and convenience of presentation it is assumed that the number of components in the vector is an integer multiple of the number of light sources in the shearing processor. If the number of components in the vector is not an integer multiple of the number of light sources, at least one of the subvectors is “padded” with suitable “filler” components having, for example, value zero or other suitable “dummy” value.) Each subvector is then processed by the shearing processor to determine the DCT and DST of the subvector. The DCTs and DSTs of the subvectors are then used to provide the DCT and DST of the vector.  
         [0081]    For example, assume that a vector x(n,N) having components x(n) is to be processed, in accordance with an embodiment of the present invention, by a shearing processor having M light sources, where N&gt;M. Let the components x(n) be arrayed in an (L×M) matrix for which N=LM, having row index l and column index m as follows:  
         (           x        (   0   )             x        (   L   )             x        (     m                 L     )             x        (       (     M   -   1     )        L     )                 x        (   1   )             x        (     L   +   1     )             x        (       m                 L     +   1     )             x        (         (     M   -   1     )        L     +   1     )                 x        (   l   )             x        (     L   +   l     )             x        (       m                 L     +   l     )             x        (         (     M   -   1     )        L     +   l     )                 x        (     L   -   1     )             x        (       2      L     -   1     )             x        (       m                 L     +   L   -   1     )             x        (       M                 L     -   1     )             )     .                         
 
         [0082]    In accordance with an embodiment of the present invention, each row l of M elements in the matrix is a subvector of vector x(n,N), which subvector is processed by the shearing processor to determine the DCT and DST of x(n,N).  
         [0083]    Let x l (m,M) represent the l-th subvector (i.e the l-th row of elements in the matrix shown above), (0≦l≦(L−1), of x(n,N). x l (m,M) has components x l (m)=x(mL+l), 0≦m≦(M−1). It can be shown that,  
               DCT        [       x        (     n   ,   N     )       ,   k     ]       =                ∑     l   =   0       L   -   1              DCT        [         x   l          (     m   ,   M     )       ,     k   ′       ]          cos          2                 π                 kl       2      N           +                            ∑     l   =   0       L   -   1              DST        [         x   l          (     m   ,   M     )       ,     k   ′       ]          sin          2                 π                 kl       2      N                                       
 
         [0084]    and  
               DST        [       x        (     n   ,   N     )       ,   k     ]       =                ∑     l   =   0       L   -   1              DCT        [         x   l          (     m   ,   M     )       ,     k   ′       ]          sin          2                 π                 kl       2      N           +                              ∑     l   =   0       L   -   1              DST        [         x   l          (     m   ,   M     )       ,     k   ′       ]          cos          2                 π                 kl       2      N           ,                                 
 
         [0085]    where k′=k(mod 2M).  
         [0086]    If Y(l,k) and Y′(l,k), are intensities of an interference pattern in plane  62  measured for the l-th subvector of vector x(n,N) then DCT and DST of x(n,N) can be written,  
         DCT        [       x        (     n   ,   N     )       ,   k     ]       =         ∑     l   =   0       L   -   1              α        (     k   ,   l     )            Y        (     l   ,     k   ′       )           +       ∑     l   =   0       L   -   1              β        (     k   ,   l     )              Y   ′          (     l   ,     k   ′       )                     and                   DST        [       x        (     n   ,   N     )       ,   k     ]       =         ∑     l   =   0       L   -   1              γ        (     k   ,   l     )            Y        (     l   ,     k   ′       )           +       ∑     l   =   0       L   -   1              δ        (     k   ,   l     )                Y   ′          (     l   ,     k   ′       )       .                                 
 
         [0087]    The number of arithmetical operations required to post process Y(l,k) and Y′(l,k) to determine the DCT and DST of the vector x(n,N), in accordance with an embodiment of the present invention, if the vector is partitioned into is L subvectors is 2N(4L−1). If the DCT and DST are determined using an FFT algorithm, the number of arithmetical operations is 2Nlog 2 N. Therefore if (4L−1)&lt;log 2 N, less arithmetical operations are generally required to determine the DCT and DST using a shearing processor and a suitable electronic “post processor” that processes output of the shearing processor than in using a DSP programmed with an FFT algorithm. As a result, determining the DCT and DST of the vector is generally faster using the shearing processor. Furthermore, it is noted that post processing can be performed using hardware, in which case, execution time for performing the DCT and DST with a shearing processor, in accordance with an embodiment of the present invention, is substantially equal to the processing time of the shearing processor.  
         [0088]    In the description and claims of the present application, each of the verbs, “comprise” “include” and “have”, and conjugates thereof, are used to indicate that the object or objects of the verb are not necessarily a complete listing of members, components, elements or parts of the subject or subjects of the verb.  
         [0089]    The present invention has been described using detailed descriptions of embodiments thereof that are provided by way of example and are not intended to limit the scope of the invention. The described embodiments comprise different features, not all of which are required in all embodiments of the invention. Some embodiments of the present invention utilize only some of the features or possible combinations of the features. Variations of embodiments of the present invention that are described and embodiments of the present invention comprising different combinations of features noted in the described embodiments will occur to persons of the art. The scope of the invention is limited only by the following claims.