Abstract:
A nonlinear signal mapper that can implement any continuous one-to-one nonlinear map of baseband or intermediate-frequency digital signals. The mapping method follows a “divide-and-conquer” approach in that a nonlinear map to be implemented is piecewise decomposed into a set of simpler nonlinear component maps. The component maps are implemented using code-enabled feed-forward neural networks (FF-NNs). Each code-enabled feed-forward neural network only operates on samples of a digital input signal that lie in a specified interval of the real-valued number line. Code-enabled FF-NNs are controlled by code-words produced by a scalar quantization encoder. The quantization encoder also controls a multiplexer that directs values produced by the FF-NNs to the nonlinear mapper&#39;s output.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS  
       [0001]    This application claims benefit of U.S. Provisional application No. 60/269,235, filed Feb. 14, 2001, the content of which is herein incorporated by reference in its entirety. 
     
    
     
       TECHNICAL FIELD  
         [0002]    This invention relates to signal mappers, and more particularly to continuous one-to-one nonlinear mapping of digital signals.  
         BACKGROUND  
         [0003]    A signal mapper is an apparatus that operates on an input signal x and outputs a signal y according to a functional map f:x→y. A signal mapper is linear if signal x 1  produces signal y 1 , signal x 2  produces signal y 2 , and ax 1 +bx 2  produces ay 1 +by 2  for all constant pairs (a, b) and input pairs (x 1 , x 2 ). Any signal mapper which violates this property is called a nonlinear mapper.  
           [0004]    Nonlinear mappers can be employed to implement numerous digital signal processing tasks within communications systems. Power control procedures between base stations and mobile terminals within a cellular network may be based on estimated signal-to-interference plus noise power ratios (SINR). SINR estimates can be mapped to their logarithmic representation by a nonlinear mapper. The logarithmic map stabilizes the variance of an estimated SINR signal and thereby helps improve power control performance and stability. A benefit of improved power control is an increase in cellular network capacity. Automatic gain control (AGC) is another signal processing task that typically employs a nonlinear mapper. For AGC a non-linear logarithmic mapper maps a many-decade dynamic range input signal to an output signal with a relatively narrow dynamic range, an AGC loop requirement. Source coding is another digital signal processing task that may require a nonlinear mapper. A non-uniform quantizer for source coding can be implemented by first passing a digital signal through a type of nonlinear mapper called a compander. The compander compresses the signal&#39;s amplitude range which is subsequently uniformly quantized. The above digital signal processing tasks and many others such as signal enhancement, noise and interference mitigation, nonlinear pre-emphasis and de-emphasis, cryptography, digital watermarking, square roots, inverse tangents for phase, etc., may employ nonlinear mappings. Methods which implement nonlinear maps in a computationally and power efficient manner are a necessity in current and future communications systems.  
           [0005]    Two methods for implementing nonlinear maps for digital signal processing tasks within communications systems are commonly used in prior art. The first method involves storing desired nonlinear map output values in a random-access-memory (RAM) look-up table, one for every possible mapper input value. This method allows a nonlinear mapper output value to be computed quickly if the look-up table is small and is practical for nonlinear maps requiring limited precision and having mapper input and output values within a small domain. However, for many nonlinear maps this method is impractical because it requires too great a RAM to store the look-up table, especially if the nonlinear mapper is implemented on an integrated circuit chip where chip area is a limited resource. The second method for computing a nonlinear map involves implementing a power series expansion to approximate a desired nonlinear map. Although the power series method allows a nonlinear map value to be computed with high precision, it requires a large number of numeric operations to attain high precision and therefore a longer period of time to execute. This negatively affects the time-critical throughput of a digital signal processing task within a communications systems.  
           [0006]    A need exists for a nonlinear mapper that can quickly and accurately perform nonlinear maps of digital signals and can be implemented using minimal hardware and power consumption. Additionally, the nonlinear mapper should have the capability to be reconfigured instantaneously allowing a single nonlinear mapper to be utilized for numerous nonlinear maps that may be required in a communications system.  
         SUMMARY  
         [0007]    The present invention provides a nonlinear mapper that can implement any continuous one-to-one nonlinear map of baseband or intermediate-frequency digital signals. The mapping method follows a “divide-and-conquer” approach in that a nonlinear map to be implemented is piecewise decomposed into a set of simpler nonlinear component maps. The component maps are implemented using code-enabled feed-forward neural networks (FF-NNs). Each code-enabled feed-forward neural network only operates on samples of a digital input signal that lie in a specified interval of the real-valued number line. Code-enabled FF-NNs are controlled by codewords produced by a scalar quantization encoder. The quantization encoder also controls a multiplexer that directs values produced by the FF-NNs to the nonlinear mapper&#39;s output.  
           [0008]    Each code-enabled FF-NN implements a component nonlinear map of a piecewise decomposition as a weighted linear summation of sigmoidal basis functions. The FF-NN apparatus implements the summation in a parallel architecture thereby allowing a nonlinear map to be performed quickly. The apparatus to implement each basis function in the summation employs a simple RAM look-up table. Smoothness properties, symmetry and ordinate ranges of sigmoidal functions allow the basis functions to be implemented using very small RAM look-up tables. Weights associated with basis functions can be changed instantaneously thereby allowing the nonlinear mapper to be easily and quickly reconfigured for numerous nonlinear maps.  
           [0009]    The details of an embodiment of the invention are set forth in the accompanying drawings and description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims. 
       
    
    
     DESCRIPTION OF DRAWINGS  
       [0010]    Studying the invention description concurrently with the invention drawings will facilitate understanding and implementation of the invention. The drawings are for purposes of invention description only and do not limit the scope of the invention in any way.  
         [0011]    [0011]FIG. 1 is a top-level view of the parallel apparatus used to implement piecewise nonlinear maps of digital signals.  
         [0012]    [0012]FIG. 2 is a block diagram of one of the code enabled feed-forward neural networks (FF-NNs).  
         [0013]    [0013]FIG. 3 is block diagram of a basis function approximator for an FF-NN.  
         [0014]    Like reference symbols in the various drawings indicate like elements. 
     
    
     DETAILED DESCRIPTION  
       [0015]    A functional architecture depicts the functional modules of a method or system and how they are integrated. This invention description is organized into functional modules. Invention description in terms of functional modules permits flexibility in the actual hardware or software implementation of the invention.  
         [0016]    [0016]FIG. 1 shows a top-level view of the parallel apparatus used to implement piecewise nonlinear maps of digital signals. Components of the apparatus are a K-level uniform or nonlinear scalar quantization encoder  100 , a plurality of K code-enabled feed-forward neural networks  200 A, 200 B, . . . , 200 K, and a K-to-1 line multiplexer  300 .  
         [0017]    Let integer m denote the sample number of a discrete-time signal. The apparatus operates on a discrete-time deterministic or random input signal {x m } m=0   ∞ . Samples of the apparatus input signal are within a known open interval (a,b). Let integer K be greater than 1. Real-valued numbers a and b are endpoints of a partition 
         
       a=P 
       1 
       &lt;P 
       2 
       &lt; . . . &lt;P 
       K 
       &lt;P 
       (K+1) 
       =b 
     
         [0018]    where each partition end-point P i , i=1, . . . ,K+1, is also a real-valued number. K-level quantization encoder  100  quantizes each signal sample x m  within partition interval [P i , P (i+1) ), i=1, . . . ,K, to an amplitude level L i  from an amplitude level set L={L 1 , . . . , L K }. In the preferred embodiment the number of amplitude levels in L is K=2 B  where B≧1 is a positive integer. For each quantized signal sample x m , quantization encoder  100  outputs a unique FF-NN enable codeword c(L i ) from a codebook 
           C={c ( L   i ),  i= 1, . . . ,  K}   
         [0019]    Each codeword c(L i ) output by quantization encoder  100  is selected by using L i  as an index into codebook C. As an example, if K=4 the K-level quantization encoder  100  might be described by the following logic:  
         [0020]    if x m  is in [P 1 , P 2 ) quantize x m  to L 1  output c(L 1 )=00 
         [0021]    else if x m  is in [P 2 , P 3 ) quantize x m  to L 2  output c(L 2 )=01 
         [0022]    else if x m  is in [P 3 , P 4 ) quantize x m  to L 3  output c(L 3 )=10 
         [0023]    else x m  is in [P 4 , P 5 ) quantize x m  to L 4  output c(L 4 )=11 
         [0024]    The invention allows the quantization encoder  100  to be implemented as a digital comparator structure or a feedforward neural network. A neural network implementation has the advantage of being better able to cope with a noisy input signal {x m } m=0   ∞ .  
         [0025]    [0025]FIG. 2 shows an exemplary apparatus to implement the ith code-enabled FF-NN in  200 A,  200 B, . . . ,  200 K of FIG. 1. Referring to FIG. 2 it is seen that the exemplary apparatus for the ith FF-NN is comprised of a plurality of sigmoidal basis function approximators ( 201 ,  202 , . . . ,  205 ), a plurality of basis function weights ( 206 ,  207 , . . . ,  210 ), an adder  211 , a bias weight  212 , another adder  213  and enable circuitry  200 . The ith FF-NN only processes samples of input signal {x m } m=0   ∞  within a specified partition interval [P i , P i+1 ), i=1, . . . ,K. The ith code-enabled FF-NN is assigned its own unique codeword c(L i ) from codebook C. The enable circuitry  200  controls its operation. The enable circuitry reads all enable codewords output by quantization encoder  100 . For each enable codeword read the enable circuitry makes a decision. If a codeword other than its own is read, the enable circuitry commands the ith FF-NN to remain idle or in a sleep state, its output is disabled. If the enable circuitry reads its own enable codeword, indicating that a sample x m  is in partition interval [P i , P i+1 ), the enable circuitry commands the ith FF-NN to output a nonlinear map value  
           f   i          (       x   m     ,     w   i       )       =         ∑     j   =   1       N   i                         α     i   ,   j              σ     i   ,   j            (         β     i   ,   j            x   m       +     ψ     i   ,   j         )           +     δ   i                             
 
         [0026]    Each basis function σ i,j  in the above equation is a continuous sigmoidal function multiplied by a real-valued basis function weight α i,j . An example of a continuous sigmoidal function is the hyperbolic tangent function  
         σ        (   x   )       =       tanh        (   x   )       =         e   x     -     e     -   x             e   x     +     e     -   x                                   
 
         [0027]    Other well-known continuous sigmoidal functions are the logistic sigmoid and the Gaussian sigmoid. Note that the invention allows for different combinations of sigmoidal basis functions to compute the above nonlinear map value.  
         [0028]    The exemplary ith FF-NN apparatus of FIG. 2 only employs five sigmoidal basis functions to implement a nonlinear component map ƒ i (x m , w i ) for partition interval [P i , P i+1 ). The invention allows as many sigmoidal basis functions as desired to implement ƒ i (x m , w i ). Variable parameters for ƒ i (x m , w i ) above are (1) N i ≧1 an integer used to specify the number of sigmoidal basis functions, and (2) learned basis function parameters which include real-valued length N i -vectors  
               α   i     =       [       α     i   ,   1                       α     i   ,   2                     ⋯                   α     i   ,     N   i           ]     T                   β   i     =       [       β     i   ,   1                       β     i   ,   2                     ⋯                   β     i   ,     N   i           ]     T                   ψ   i     =       [       ψ     i   ,   1                       ψ     i   ,   2                     ⋯                   ψ     i   ,     N   i           ]     T                                 
 
         [0029]    and δ i  a real-valued scalar. Superscript T in the above vector equations denotes vector transpose. If input signal {x m } m=0   ∞  is random partition intervals [P i , P i+1 ), with a higher probability of occurrence should be parameterized with FF-NNs that are more accurate. Parameterization and partitioning for the invention apparatus can be better optimized when the probability density function of a random input signal {x m } m=0   ∞  is known.  
         [0030]    [0030]FIG. 3 shows the apparatus for implementing one of the sigmoidal basis function approximators in FIG. 2. Gain  214  multiplies input signal sample x m  by a real-valued multiplicative parameter β i,j  to produce β i,j x m . Register  215  stores real-valued parameter ψ i,j  which is added to β i,j x m  by adder  216  to form a sigmoidal basis function argument β i,j x m +ψ i,j . Sigmoidal basis function σ i,j  is implemented using look-up table  217 . The look-up table is indexed by argument β i,j x m +ψ i,j . The size of the look-up table is dependent on the type of sigmoidal basis function chosen and the accuracy required. Smoothness, symmetry and ordinate ranges of sigmoidal functions allow for look-up tables with very small memory requirements.  
         [0031]    To estimate parameter vectors α i , β i  and ψ i  and scalar δ i  for the ith FF-NN the finite length-M i  learning signals 
         {x i,m   LRN } m=1   M     i    and {y i,m   LRN } m=1   M     i     
         [0032]    are required. Samples of the learning signals are comprised of known ƒ i (x m , w i ) input values {x i,m   LRN } m=0   M     i    and corresponding output values {y i,m   LRN } m=0   M     i   . The real-valued length 3N i +1 vector 
           w   i =[α i   T  β i   T  ψ i   T  δ i ] T   
         [0033]    contains all the parameters required to define a desired component nonlinear map ƒ i (x m , w i ) for partition interval [P i , P i+1 ). The optimum w i  for ƒ i (x m , w i ) can be computed off-line by minimizing the summation of squares cost function  
         1     M   i              ∑     m   =   1       M   i                         (       y     i   ,   m     LRN     -       f   i          (       x     i   ,   m     LRN     ,     w   i       )         )     2                             
 
         [0034]    over all possible length 3N i +1 real-valued vectors w i . The invention allows other cost functions to be used if desired. A nonlinear optimization algorithm such as the Levenberg-Marquardt can be used to accomplish cost function minimization.  
         [0035]    Function approximation theory shows that a parameterized nonlinear map ƒ i (x m , w i ) for partition interval [P i , P i+1 ) can approximate any nonlinear continuous one-to-one function. Approximation error is dependent on both the length M i  of the learning signals and the ability of the chosen parameterized structure ƒ i (x m , w i ) to model the map associated with [P i , P i+1 ). The design of ƒ i (x m , w i ) should address: (1) the type and number N i  of sigmoidal basis functions, (2) the accuracy of the learning signals used to characterize the desired nonlinear map, and (3) the nonlinear optimization algorithm used and its parameters (iterations, error bound, etc.).  
         [0036]    Returning to FIG. 1, K-to-1 line multiplexer  300  is a combinatorial logic circuit that selects one of the K output lines of FF-NNs  200 A,  200 B, . . . ,  200 K. Multiplexer  300  directs information on the selected line to the apparatus output. The selection of a particular FF-NNs output line is also controlled by an enable codeword read from the output of quantization encoder  100 . The real-valued scalar output y m  of the K-to-1 line multiplexer  300  is described by the piecewise-nonlinear map  
         y   m     =     {             f   1          (       x   m     ,     w   1       )                          if                   x   m                   is                   in              [       P   1     ,     P   2       )                     f   2          (       x   m     ,     w   2       )                          if                   x   m                   is                   in              [       P   2     ,     P   3       )                 ⋮                    ⋮                 f   K          (       x   m     ,     w   K       )             if                   x   m                   is                   in              [       P   K     ,     P     K   +   1         )                                     
 
         [0037]    where ƒ i (x m , w i ) ), i=1, . . . ,K, is the parameterized nonlinear map value for partition interval [P i , P i+1 ). In accordance with an enable codeword read from the output of the quantization encoder  100 , multiplexer  300  selects the appropriate output value from the right-hand-side of the above equation. The above parallel decomposition allows for simple or complicated nonlinear maps to be divided piecewise. Each partition interval [P i , P i+1 ), i=1, . . . , K, of the piecewise defined map is associated with a dedicated FF-NN implementation of ƒ i(x   m , w i ). In this manner a “divide-and-conquer” strategy is applied to implement nonlinear maps.  
         [0038]    The present invention allows for (1) decreased memory usage due to a piecewise decomposition of a map and simple sigmoidal basis function look up tables, (2) decreased computational complexity due to map representation as a linear combination of basis functions rather than a power series expansion, (3) decreased processing delay due to a parallel apparatus which implements the basis function representation, and (4) easy reconfiguration due to the ability of the apparatus to instantaneously change the nonlinear map by downloading new parameters. This last improvement is especially useful for programmable logic devices such as field-programmable-gate-arrays. In fact, the apparatus allows ƒ i (x m , w i )), i=1, . . . , K, for partition [P i , P i+1 ) to be reconfigured for a different nonlinear map at any time instant. Only parameters for ƒ i (x m , w i )) need to changed, the basis functions can remain the same. Thus a single nonlinear mapper can be utilized to perform many signal processing tasks resulting in decreased costs and signal processor form factor.  
         [0039]    A single embodiment of the invention has been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. Accordingly, other embodiments are within the scope of the following claims.