# Patent

## Title
Sub-Nyquist sampling of short pulses

## Abstract

A method for signal processing includes accepting an analog signal, which consists of a sequence of pulses confined to a finite time interval. The analog signal is sampled at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval. The sampled analog signal is processed.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application claims the benefit of U.S. Provisional Patent Application 61/392,671, filed Oct. 13, 2010, whose disclosure is incorporated herein by reference.


FIELD OF THE INVENTION
The present invention relates generally to signal processing, and particularly to methods and systems for sampling of pulse signals.
BACKGROUND OF THE INVENTION
Several techniques for sampling a signal below the signal's Nyquist rate are known in the art. Such techniques are commonly known as sub-Nyquist sampling techniques. Example sub-Nyquist sampling schemes are described by Vettereli et al., in “Sampling Signals with Finite Rate of Innovation,” IEEE Transactions on Signal Processing, volume 50, no. 6, 2002, by Tur et al., in “Low Rate Sampling of Pulse Streams with Application to Ultrasound Imaging,” arXiv e-Print archive, March, 2010, and by Gedalyahu et al., in “Multichannel Sampling of Pulse Streams at the Rate of Innovation,” arXiv e-Print archive, April, 2010, which are incorporated herein by reference.
Sampling techniques for time-limited signals are described, for example, by Butzer and Splettstosser, in “A Sampling Theorem for Duration-Limited Functions with Error Estimates,” Information and Control, volume 34, 1977, and by Butzer and Stens, in “Sampling Theory for Not Necessarily Band-Limited Functions: A Historical Overview,” SIAM Review, volume 34, no. 1, 1992, which are incorporated herein by reference.
Some sampling schemes achieve sub-Nyquist sampling rates by exploiting sparsity properties of the sampled signal. Sampling techniques for sparse signals are described, for example, by Mishali and Eldar, in “From Theory to Practice: Sub-Nyquist Sampling of Sparse Wideband Analog Signals,” IEEE Journal of Selected Topics in Signal Processing, volume 4, no. 1, 2010, and by Mishali et al., in “Xampling: Analog to Digital at Sub-Nyquist Rates,” CIT Report, volume 5751, 2010, which are incorporated herein by reference, and in PCT International Publications WO 2009/034568 and WO 2010/095083, whose disclosures are incorporated herein by reference.
Sampling schemes for short discrete pulses are described by Candes et al., in “Compressed Sensing with Coherent and Redundant Dictionaries,” arXiv e-Print archive, May, 2010, which is incorporated herein by reference.
The description above is presented as a general overview of related art in this field and should not be construed as an admission that any of the information it contains constitutes prior art against the present patent application.
SUMMARY OF THE INVENTION
An embodiment of the present invention that is described herein provides a method for signal processing, including:
accepting an analog signal, which consists of a sequence of pulses confined to a finite time interval;
sampling the analog signal at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval; and
processing the sampled analog signal.
In some embodiments, sampling the analog signal includes computing sampled values based on Gabor coefficients with respect to a predefined windowing function. In a disclosed embodiment, the sampled values include Gabor coefficients of the analog signal, linear combinations of the Gabor coefficients of the analog signal, or Gabor coefficients of linear combinations of the analog signal.
In an embodiment, sampling the analog signal includes generating a plurality of weighted superpositions of multiple sub-sections of the analog signal that are drawn from respective sub-intervals of the finite time interval and windowed by a predefined windowing function, and sampling the analog signal using the weighted superpositions. In a disclosed embodiment, sampling the analog signal includes integrating each weighted superposition over the finite time interval to produce a respective sampled value. In another embodiment, sampling the analog signal includes filtering each weighted superposition to produce a respective sampled value.
In some embodiments, sampling the analog signal includes modulating multiple replicas of the analog signal with respective different modulating waveforms, which depend on a predefined windowing function. In an embodiment, each modulating waveform includes a respective sinusoidal signal multiplied by a respective weighted sum of time shifts of the windowing function. In another embodiment, each modulating waveform includes a respective first weighted sum of sinusoidal signals, multiplied by a respective second weighted sum of time shifts of the windowing function.
In some embodiments, the analog signal is sparse in time. In a disclosed embodiment, processing the sampled analog signal includes reconstructing the analog signal based on the sampled analog signal. In another embodiment, the analog signal originates from an ultrasound signal, a radar signal, a communication signal, a bio-imaging signal or a neuronal signal. In some embodiments, the analog signal is sparse in both time and frequency, and sampling the analog signal includes setting the sampling rate responsively to time and frequency sparsity of the signal.
There is additionally provided, in accordance with an embodiment of the present invention, a signal processing apparatus, including:
an input interface, which is configured to accept an analog signal consisting of a sequence of pulses confined to a finite time interval; and
a sampling unit, which is configured to sample the analog signal at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval.
There is also provided, in accordance with an embodiment of the present invention, a method for signal processing, including:
accepting an analog signal that is confined to a finite time interval;
sampling the analog signal by generating multiple sampled values, each sampled value including a respective linear combination of Gabor coefficients of the analog signal with respect to a predefined windowing function; and
processing the sampled values.
In some embodiments, generating the sampled values includes generating a plurality of weighted superpositions of multiple sub-sections of the analog signal that are drawn from respective sub-intervals of the finite time interval and windowed by the predefined windowing function, and sampling the analog signal using the weighted superpositions. In an embodiment, generating the sampled values includes integrating each weighted superposition over the finite time interval to produce a respective sampled value. Generating the sampled values may include filtering each weighted superposition to produce a respective sampled value.
There is further provided, in accordance with an embodiment of the present invention, a signal processing apparatus, including:
an input interface, which is configured to accept an analog signal that is confined to a finite time interval; and
a sampling unit, which is configured to sample the analog signal by generating multiple sampled values, each sampled value including a respective linear combination of Gabor coefficients of the analog signal with respect to a predefined windowing function.
The present invention will be more fully understood from the following detailed description of the embodiments thereof, taken together with the drawings in which:



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram that schematically illustrates a system for signal sampling and processing, in accordance with an embodiment of the present invention;
FIG. 2 is a graph showing an analog signal that includes multiple pulses, in accordance with an embodiment of the present invention;
FIG. 3 is a diagram showing time-frequency positions of Gabor coefficients, in accordance with an embodiment of the present invention;
FIG. 4 is a block diagram that schematically illustrates a signal sampling unit, in accordance with an embodiment of the present invention;
FIGS. 5A-5C are graphs showing waveforms used in the signal sampling unit of FIG. 4, in accordance with an embodiment of the present invention;
FIG. 6 is a block diagram that schematically illustrates a signal sampling unit, in accordance with an alternative embodiment of the present invention;
FIGS. 7A-7C are graphs showing waveforms used in the signal sampling unit of FIG. 6, in accordance with an embodiment of the present invention; and
FIG. 8 is a flow chart that schematically illustrates a method for signal sampling and processing, in accordance with an embodiment of the present invention.



DETAILED DESCRIPTION OF EMBODIMENTS
Overview
Embodiments of the present invention that are described herein provide methods and systems for sampling and processing finite-duration analog pulsed signals. The disclosed techniques sample and process analog signals, which consist of one or more pulses having unknown pulse shapes and time positions. Sampling of the signal is performed independently of the pulse shapes and time positions of the pulses. Nevertheless, the methods and systems described herein sample such signals at sampling rates that can be considerably below the Nyquist rate of the signal but still allow for highly accurate signal reconstruction.
In some embodiments, a sampling unit samples the signal by computing sampled values that are based on a set of Gabor coefficients with respect to a predefined windowing function. In some embodiments, the sampling unit computes the individual Gabor coefficients. In other embodiments, the sampling unit exploits the sparsity of the signal and achieves a low sampling rate by computing linear combinations of the Gabor coefficients, or Gabor coefficients of linear combinations of the signal.
In an example embodiment, the sampling unit samples the analog signal using multiple sampling channels operating in parallel. In each sampling channel, the analog signal is modulated by a respective modulating waveform, and the modulation product is then integrated over the finite time interval. The modulating waveforms, which are designed based on the Gabor frame, collect different weighted superpositions of sub-sections of the analog signal, drawn from respective sub-intervals of the finite time interval. Integrating the weighted superpositions produces respective sampled values that represent the analog signal and enable accurate signal reconstruction. Several efficient sampling unit configurations and associated modulating waveforms are described herein. In alternative embodiments, linear combinations of the Gabor coefficients are produced in multiple processing channels by filtering instead of integration.
The disclosed techniques can be applied in a variety of applications involving pulsed signals, such as ultrasound imaging, radar, communication, bio-imaging and processing of neuronal signals. The sampling unit configurations described herein can be applied to both sparse and non-sparse signals.
System and Signal Description
FIG. 1 is a block diagram that schematically illustrates a system 20 for signal sampling and processing, in accordance with an embodiment of the present invention. System 20 comprises an input interface 24 for accepting an analog input signal, denoted fit). A sampling unit 28 samples the signal using methods and hardware configurations that are described in detail below. A processing unit 32 processes the sampled signal, and produces processing results. Systems of this sort can be used in a variety of applications, such as for processing ultrasound signals in ultrasound imaging, processing radar signals, processing communication signals, processing bio-imaging signals, processing neuronal signals, among others.
FIG. 2 is a graph showing an analog signal that includes a sequence of pulses, in accordance with an embodiment of the present invention. The analog signal f(t) comprises a superposition of N pulses. In the present example N=6, and the six pulses are denoted 36A . . . 36F. Signal f(t) is confined to a finite time interval [−β/2,β/2]. The maximum pulse width (duration) of any individual pulse is denoted W.
In some embodiments, signal f(t) is sparse, i.e., N·W<<β. In other words, f(t) is typically non-zero in only a small portion of time interval [−β/2,β/2]. The embodiments described herein refer to scenarios in which the signal amplitude is zero outside the portion of time occupied by the N pulses. Nevertheless, the disclosed techniques can also be applied successfully in scenarios in which some small residual signal energy remains outside the pulse durations (either inside or outside the time interval in question), e.g., because of noise, energy leakage outside the pulse durations, or for any other reason. (Alternative embodiments in which signal f(t) is not necessarily sparse are addressed further below.)
Generally, each of the pulses making up signal f(t) may be of a different pulse shape and time position within the time interval. One or more of the pulses may overlap. The example of FIG. 1 shows a particular signal comprising a particular constellation of pulses, for the sake of clarity. Generally, however, signal f(t) may comprise one or more pulses having any desired shapes and time positions. The pulse shapes and time positions of the pulses in f(t) are assumed to be unknown. Since signal f(t) has a finite duration, its spectrum is not perfectly band-limited. In practice, however, the majority of the signal's spectral content (e.g., 95% or 99%) is confined to a finite spectral interval [−Ω/2, Ω/2]. The signal is therefore referred to as essentially band-limited.
As will be shown and demonstrated in detail below, sampling unit 28 of system 20 samples analog signal f(t) at a sampling rate that is lower than the Nyquist rate of the analog signal, and with samples taken at sample times that are independent of the pulse shapes and time positions of the pulses making up the analog signal.
Gabor-Based Sampling
In some embodiments, sampling unit 28 of system 20 samples the analog signal by effectively computing a matrix of Gabor coefficients, denoted Z. Sampling using Gabor frames and Gabor coefficients is described, for example, by Grochenig, in “Foundations of Time-Frequency Analysis,” Birkhauser Boston, first edition, December, 2000, sections 3.1 and 5.2, which is incorporated herein by reference. (In alternative embodiments, sampling unit 28 computes linear combinations of the Gabor coefficients and not the individual coefficients, by exploiting the sparsity of the analog signal. These embodiments, which achieve lower sampling rates, are described further below.)
Matrix Z is a two-dimensional array of Gabor coefficients in time-frequency space. The Gabor coefficients are given by:




  
    
      
        
          z
          kl
        
        =
        
          
            ∫
            
              
                -
                β
              
              /
              2
            
            
              β
              /
              2
            
          
          ⁢
          
            
              
                f
                ⁡
                
                  (
                  t
                  )
                
              
              ·
              
                
                  g
                  ⁡
                  
                    (
                    
                      t
                      -
                      ak
                    
                    )
                  
                
                _
              
              ·
              
                e
                
                  
                    -
                    2
                  
                  ⁢
                  π
                  ⁢
                  
                    
                  
                  ⁢
                  i
                  ⁢
                  
                    
                  
                  ⁢
                  blt
                
              
            
            ⁢
            
              
            
            ⁢
            
              d
              t
            
          
        
      
    
    
      
        [
        1
        ]
      
    
  




wherein g(t) denotes a certain window, e.g., a raised-cosine window or any other suitable window function, a and b are constants that define the temporal and spectral sampling resolution, respectively, and i denotes √{square root over (−1)}.

Computation of the Gabor coefficient zkl can thus be viewed as multiplying signal f(t) with a window function g(t) that is centered around time a·k, computing the Fourier Transform (FT) of the windowed signal, and taking the value of the FT at frequency ω=b·l. In other words, the Gabor coefficient zkl comprises a sample of the Short-Time Fourier Transform (STFT) of signal f(t) using window g(t), evaluated at time t=a·k and frequency ω=b·l.
FIG. 3 is a diagram showing time-frequency positions of Gabor coefficients zkl of matrix Z, in accordance with an embodiment of the present invention. Matrix Z can be viewed as a two-dimensional array of Gabor coefficients in time-frequency space. In FIG. 3, each Gabor coefficient is represented by a time-frequency point 40. In the time domain, the Gabor coefficients are computed at a spacing of a from one another, i.e., at times 0, ±a, ±2a . . . . . The spacing a typically depends on the maximum pulse width W, with some over-sampling ratio denoted μ, i.e., α=μ·W. In the frequency domain, the Gabor coefficients are computed at a spacing of b from one another, i.e., at frequencies 0, ±b, ±2b . . . . The spectral resolution is typically selected to be b=1/W.
Coefficients zkl, k,l=0, ±1, ±2, ±3 . . . make up an infinite set of Gabor coefficients. As noted above, however, signal f(t) is time-limited to the time interval [−β/2,β/2] and essentially band-limited to the spectral interval [−Ω/2,Ω/2]. Under these conditions, it can be shown that the signal can be sampled with little or no loss of information by computing the Gabor coefficients in a time interval [−β′/2,β′/2], which is somewhat larger and contains interval [−β/2,β/2]. In the frequency domain, it is sufficient to compute the Gabor coefficients in a spectral interval [−Ω′/2,Ω′/2], which is somewhat larger and contains interval [−Ω/2,Ω/2].
Typically, the window function g(t) is chosen to be well-localized in the frequency domain. In other words, g(t) is typically selected such that its Fourier transform decays rapidly with frequency. When g(t) is selected in this way, spectral interval [−Ω′/2,Ω′/2] can be only slightly larger than interval [−Ω/2,Ω/2], and the number of samples needed for accurate signal reconstruction can be reduced.
A rectangle 48 in FIG. 3 marks the essential time-frequency support of signal f(t), which is time-limited and essentially band-limited to a rectangle 44 defined by [−β/2,β/2]X[−Ω/2,Ω/2]. Typically, unit 28 computes the Gabor coefficients that fall in rectangle 48 in order to enable reliable reconstruction of the signal. The number of rows in matrix Z (i.e., the number of Gabor coefficients in the time domain) is denoted K. The number of columns in matrix Z (i.e., the number of Gabor coefficients in the frequency domain) is denoted L. It can be shown that the total number of Gabor coefficients in the matrix is given by:




  
    
      
        
          
            K
            ·
            L
          
          ≈
          
            
              
                β
                ′
              
              a
            
            ⁢
            
              
                Ω
                ′
              
              b
            
          
        
        =
        
          
            β
            ′
          
          ⁢
          
            Ω
            ′
          
          ⁢
          
            μ
            
              -
              1
            
          
        
      
    
    
      
        [
        2
        ]
      
    
  




The factor μ in Equation [2] denotes an over-sampling factor for Gabor frames (which can be viewed as over-completed dictionaries for the space of square integrable functions). The over-sampling factor μ quantifies the amount of over-completeness: μ=1 corresponds to an orthogonal basis, and μ<1 corresponds to a frame. In the embodiments described herein μ is typically smaller than unity, in order to find well-localized windowing functions g(t) that form a frame.
The description above refers to sampling unit 28 as computing the individual Gabor coefficients, for the sake of clarity. As noted above, however, in some embodiments unit 28 does not compute the individual Gabor coefficients, but rather linear combinations of the Gabor coefficients, or Gabor coefficients of linear combinations of the signal. Such configurations are described in detail below. It should be noted that the specific sub-Nyquist sampling configurations described herein are shown purely by way of example. The disclosed techniques can be used with any other suitable sampling scheme that produces linear combinations of the Gabor coefficients, or Gabor coefficients of linear combinations of the signal, for example filtering-based methods.
Efficient Gabor-Based Sampling of Sparse Analog Signals
The total number of Gabor coefficients in the above description, K·L, does not take into account the fact that signal f(t) is sparse in time. If sampling unit 28 were to compute all K·L Gabor coefficients, i.e., a matrix Z of K rows and L columns, most of the matrix rows would be all-zero. Computing the complete K·L matrix would involve an unnecessarily high sampling rate and a large number of unnecessary computations.
In some embodiments of the present invention, unit 28 computes a considerably smaller number of Gabor coefficients, by taking advantage of the time sparsity of signal f(t). It can be shown that the number of matrix rows can be reduced using the disclosed techniques to M, which is considerably smaller than K and is given by:

M≧2·┌2μ−1┐·N  [3]

As a result, the sampling rate used for sampling the analog signal f(t) is reduced significantly, far below the Nyquist rate of the signal. When using the disclosed techniques, the signal can be sampled reliably using only ≈4Ω′WNμ−1 samples instead of Ω′β samples for conventional Nyquist samples. Assuming 4WNμ−<β, the disclosed techniques achieve a sampling rate that is lower than that achievable using conventional sampling techniques. (In the context of the present patent application and in the claims, the term “Nyquist rate,” with reference to a signal that is constrained to the finite time interval [−β/2,β2] and essentially band-limited to the spectral interval [−Ω′/2,Ω′/2], is defined as Ω′β. In other words, the Nyquist rate of such a signal depends on the desired reconstruction accuracy, which is in turn related to the essential bandwidth of the signal.)
In some embodiments, signal f(t) is sparse in frequency in addition to being sparse in time. Such signals are common, for example, in radar applications. The dual sparsity can be used to further reduce the sampling rate using the disclosed techniques. Example sampling and reconstruction schemes for such signals are described further below.
Hardware Configurations for Efficient Gabor-Based Sampling
The description that follows presents several hardware configurations for sampling the analog signal f(t) efficiently using the Gabor-based sampling scheme described above. These hardware configurations exploit the sparsity of f(t) in the time domain to reduce both sampling rate and hardware complexity.
FIG. 4 is a block diagram that schematically illustrates a signal sampling unit 50, in accordance with an embodiment of the present invention. The configuration of unit 50 can be used, for example, to implement sampling unit 28 of FIG. 1 above.
Unit 50 distributes the incoming analog signal f(t) to multiple sampling channels operating in parallel. The number of sampling channels is denoted R. The rth sampling channel, 1≦r≦R, comprises a respective mixer 54, which mixes f(t) with a respective modulating waveform denoted pr(t). An integrator 58 integrates the mixer output over the time interval [−β/2,β/2]. The modulating waveforms pr(t) are given by:




  
    
      
        
          
            p
            r
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          
            e
            
              
                -
                2
              
              ⁢
              π
              ⁢
              
                
              
              ⁢
              i
              ⁢
              
                
              
              ⁢
              blt
            
          
          ⁢
          
            
              ∑
              
                k
                =
                
                  -
                  
                    K
                    0
                  
                
              
              
                K
                0
              
            
            ⁢
            
              
                c
                mk
              
              ⁢
              
                
                  g
                  ⁡
                  
                    (
                    
                      t
                      -
                      ak
                    
                    )
                  
                
                _
              
            
          
        
      
    
    
      
        [
        4
        ]
      
    
  




wherein cmk are weight coefficients and g(t−ak) denotes the complex conjugate of g(t−ak). Index r=(m,l) is a double index with l=−L0 . . . L0 and m=0 . . . (M−1). K0 and L0 are given by:





  
    
      
        
          K
          0
        
        =
        
          
            
              ⌈
              
                
                  β
                  +
                  W
                
                
                  2
                  ⁢
                  W
                  ⁢
                  
                    
                  
                  ⁢
                  μ
                
              
              ⌉
            
            -
            
              1
              ⁢
              
                
              
              ⁢
              
                L
                0
              
            
          
          =
          
            
              ⌈
              
                
                  
                    (
                    
                      Ω
                      +
                      B
                    
                    )
                  
                  ⁢
                  W
                
                2
              
              ⌉
            
            -
            1
          
        
      
    
    
      
        [
        5
        ]
      
    
  




wherein B denotes the essential bandwidth of windowing function g(t).

Modulating waveforms pr(t) are different from one another. Each modulating waveform is designed such that the mixing operation produces a different weighted superposition of multiple sub-sections of f(t) from multiple sub-intervals of interval [−β/2,β2]. Each sub-section of the signal is windowed (multiplied) by the windowing function g(t). In a given modulating waveform, the multiple windowed sub-sections of the signal are weighted with the weight coefficients cmk and then summed.
FIGS. 5A-5C are graphs showing waveforms used in the signal sampling unit of FIG. 4, in accordance with an embodiment of the present invention. FIG. 5A shows an example windowing function g(t), in the present example a cosine function having a width 0.3S and a shift parameter of a=0.15S. FIG. 5B shows an example weighted sum of shifted replicas of the windowing function of FIG. 5A. In the present example, the weighting coefficients cmk have values of ±1 and IC0=5. FIG. 5C shows the real component of a modulating waveform pr(t), which is produced by modulating the weighted sum of FIG. 5B by e2πiblt. The waveforms shown in FIGS. 5A-5C are example waveforms, which are chosen for the sake of conceptual clarity. In alternative embodiments, any other suitable waveforms can also be used.
The R integrators 58 in FIG. 4 above produce R respective output values denoted xr, 1≦r≦R. These R values are the samples of signal f(t), which enable high-quality reconstruction of the signal. It can be shown that the output values xr can be expressed in terms of the Gabor coefficients zkl described above:




  
    
      
        
          x
          r
        
        =
        
          
            
              ∫
              
                
                  -
                  β
                
                /
                2
              
              
                β
                /
                2
              
            
            ⁢
            
              
                f
                ⁡
                
                  (
                  t
                  )
                
              
              ⁢
              
                
                  p
                  r
                
                ⁡
                
                  (
                  t
                  )
                
              
              ⁢
              
                d
                t
              
            
          
          =
          
            
              ∑
              
                k
                =
                
                  -
                  
                    K
                    0
                  
                
              
              
                K
                0
              
            
            ⁢
            
              
                c
                mk
              
              ⁢
              
                z
                kl
              
            
          
        
      
    
    
      
        [
        6
        ]
      
    
  




wherein cmk are the weighting coefficients of modulating waveform pr(t), as defined in Equation [4] above. In matrix form, this relation can be written as:

X=C·Z  [7]

wherein X denotes a matrix containing output values xr, C denotes a matrix containing weight coefficients cmk, and Z denotes the matrix of Gabor coefficients zkl defined above. In some embodiments, matrix Z is sparse, i.e., has only a small number on non-zero rows.
In some embodiments, processing unit 32 reconstructs the signal f(t) based on these output values. The reconstruction process may be performed using any suitable Compressed Sensing (CS) process, and is considered to be outside the scope of the present disclosure. Some aspects of signal reconstruction, and citations of several CS methods that can be used for this purpose, are given further below.
In order to enable signal reconstruction, weight coefficients cmk should be selected such that matrix C qualifies as a CS matrix. To qualify as a CS matrix, matrix C may have low coherence or low restricted isometry constants. In some embodiments, this requirement is fulfilled by assigning weight coefficients cmk pseudo-random ±1 values. Alternatively, weight coefficients cmk may be assigned any other suitable values that enable reconstruction of matrix Z from matrix X.
In some embodiments, a multi-channel sampling unit can be implemented using filters instead of integrators. In comparison with the scheme of FIG. 4, for example, integrators 58 can be replaced with respective filters s(t). The response of the filters is given by:




  
    
      
        
          
            s
            ⁡
            
              (
              t
              )
            
          
          =
          
            
              ∑
              
                m
                =
                0
              
              
                M
                -
                1
              
            
            ⁢
            
              
                s
                m
              
              ⁡
              
                (
                
                  t
                  +
                  WKm
                
                )
              
            
          
        
        ,
        
          

        
        ⁢
        
          
            
              s
              m
            
            ⁡
            
              (
              t
              )
            
          
          =
          
            
              ∑
              
                k
                =
                
                  -
                  
                    K
                    0
                  
                
              
              
                K
                0
              
            
            ⁢
            
              
                c
                mk
              
              ⁢
              
                
                  g
                  ⁡
                  
                    (
                    
                      t
                      -
                      ak
                    
                    )
                  
                
                _
              
            
          
        
      
    
    
      
        [
        7
        ]
      
    
  




Under these assumptions, the output value produced by the lth sampling channel is given by:




  
    
      
        
          
            x
            m
          
          ⁡
          
            [
            l
            ]
          
        
        =
        
          
            
              (
              
                
                  e
                  
                    
                      -
                      2
                    
                    ⁢
                    π
                    ⁢
                    
                      
                    
                    ⁢
                    i
                    ⁢
                    
                      
                    
                    ⁢
                    blt
                  
                
                ⁢
                
                  f
                  ⁡
                  
                    (
                    t
                    )
                  
                
                *
                
                  s
                  ⁡
                  
                    (
                    
                      -
                      t
                    
                    )
                  
                
              
              )
            
            ⁡
            
              [
              WKm
              ]
            
          
          =
          
            ...
            =
            
              
                ∑
                
                  k
                  =
                  
                    -
                    
                      K
                      0
                    
                  
                
                
                  K
                  0
                
              
              ⁢
              
                
                  c
                  mk
                
                ⁢
                
                  z
                  kl
                
              
            
          
        
      
    
    
      
        [
        8
        ]
      
    
  




wherein the * operator denotes convolution. When using this filter-based sampling configuration, the number of sampling channels can be reduced from M·L to L.

FIG. 6 is a block diagram that schematically illustrates a signal sampling unit 60, in accordance with an alternative embodiment of the present invention. The configuration of unit 50 can be used, for example, to implement sampling unit 28 of FIG. 1 above. In comparison with sampling unit 50 of FIG. 4 above, the configuration of sampling unit 60 uses modulating waveforms that are sometimes simpler to implement in hardware.
Unit 60 distributes the analog signal f(t) to multiple sampling channels operating in parallel. The number of sampling channels is J·M, wherein J≧L. The sampling channels are indexed with a double index denoted jm, such that j=0 . . . (J−1) and m=0 . . . (M−1). The jmth sampling channel comprises a respective mixer 64, which mixes f(t) with a respective modulating waveform denoted qjm(t). An integrator 68 integrates the mixer output over the time interval [−β/2,β/2]. The modulating waveforms qjm(t) are given by:




  
    
      
        
          
            q
            jm
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          
            
              ∑
              
                l
                =
                
                  -
                  
                    L
                    0
                  
                
              
              
                L
                0
              
            
            ⁢
            
              
                d
                jl
              
              ⁢
              
                
                  p
                  ml
                
                ⁡
                
                  (
                  t
                  )
                
              
            
          
          =
          
            
              ∑
              
                l
                =
                
                  -
                  
                    L
                    0
                  
                
              
              
                L
                0
              
            
            ⁢
            
              
                d
                jl
              
              ⁢
              
                e
                
                  
                    -
                    2
                  
                  ⁢
                  π
                  ⁢
                  
                    
                  
                  ⁢
                  i
                  ⁢
                  
                    
                  
                  ⁢
                  blt
                
              
              ⁢
              
                
                  ∑
                  
                    k
                    =
                    
                      -
                      
                        K
                        0
                      
                    
                  
                  
                    K
                    0
                  
                
                ⁢
                
                  
                    c
                    mk
                  
                  ⁢
                  
                    
                      g
                      ⁡
                      
                        (
                        
                          t
                          -
                          ak
                        
                        )
                      
                    
                    _
                  
                
              
            
          
        
      
    
    
      
        [
        9
        ]
      
    
  




The terms




  
    
      ∑
      
        l
        =
        
          -
          
            L
            0
          
        
      
      
        L
        0
      
    
    ⁢
    
      
    
    ⁢
    
      
        d
        jl
      
      ⁢
      
        e
        
          
            -
            2
          
          ⁢
          
            
          
          ⁢
          π
          ⁢
          
            
          
          ⁢
          iblt
        
      
      ⁢
      
        
          
        
        ⁢
        
          
        
      
      ⁢
      and
      ⁢
      
        
          
        
        ⁢
        
          
        
      
      ⁢
      
        
          ∑
          
            k
            =
            
              -
              
                K
                0
              
            
          
          
            K
            0
          
        
        ⁢
        
          
        
        ⁢
        
          
            c
            mk
          
          ⁢
          
            
              g
              ⁡
              
                (
                
                  t
                  -
                  ak
                
                )
              
            
            _
          
        
      
    
  
  ⁢
  
    
  




in Equation [9] are denoted with wj(t) and sm(t), respectively. As noted above, coefficients cmk in sm(t) are typically chosen so that matrix C is a valid CS matrix. The coefficients djl in wj(t) are typically chosen so that they form an invertible matrix.

The scheme of FIG. 6 is mathematically equivalent to the scheme of FIG. 4 above. In some embodiments, integrators 68 may be replaced with filters s(t) as explained above. Modulating waveforms qjm(t) of FIG. 6 are sometimes simpler to implement in hardware than modulating waveforms pr(t) of FIG. 4. As can be seen in Equation [4] above, waveforms pr(t) are modulated pulse sequences multiplied by sinusoidal signals of the form e2πiblt. The frequencies of these sinusoidal signals are multiples of some common base frequency. Generation of a large number of such sinusoidal signals may be complicated. Generating the




  
    
      w
      j
    
    ⁡
    
      (
      t
      )
    
  
  =
  
    
      ∑
      
        l
        =
        
          -
          
            L
            0
          
        
      
      
        L
        0
      
    
    ⁢
    
      
    
    ⁢
    
      
        d
        jl
      
      ⁢
      
        e
        
          
            -
            2
          
          ⁢
          
            
          
          ⁢
          π
          ⁢
          
            
          
          ⁢
          iblt
        
      
    
  




term in Equation [9] above, i.e., a weighted sum of sinusoids, is sometimes more straightforward. This is due to the fact that the weighted sum represents a low-pass periodic function, so that in practice only one time signal is typically needed.

For any given value of m, let Pm denote a set of L modulating waveforms pr(t) whose index is r=(m,l) with |l|≦L0. The notations pml(t) and pr(t) are used interchangeably. As can be seen in Equation [9], each modulating waveform qjm(t) is a weighted sum of waveforms pr(t)εPm. The waveforms pr(t) in each set Pm are mixed in the same manner, since djl does not depend on m. Sampling unit 60 produces J·M output values denoted yjm. The output value produced by the jmth sampling channel is given by:




  
    
      
        
          
            
              y
              jm
            
            ⁡
            
              (
              t
              )
            
          
          =
          
            
              ∑
              
                l
                =
                
                  -
                  
                    L
                    0
                  
                
              
              
                L
                0
              
            
            ⁢
            
              
                d
                jl
              
              ⁢
              
                
                  x
                  m
                
                ⁡
                
                  (
                  l
                  )
                
              
            
          
        
        ,
        
          
            
              x
              m
            
            ⁡
            
              [
              l
              ]
            
          
          =
          
            x
            r
          
        
      
    
    
      
        [
        10
        ]
      
    
  




Equation [10] can be written in matrix form as:

Y=D·XT  [11]

wherein Y denotes a matrix containing output values yjm, D denotes a matrix containing coefficients djl, and XT denotes the transpose of matrix X Coefficients djl are typically selected such that matrix D is invertible.

An example scheme for generating wj(t) such that D is invertible is described in the paper by Gedalyahu, Tur and Eldar, cited above. In this scheme, waveforms wj(t) are obtained from functions




  
    
      
        
          
            
              w
              ~
            
            j
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          
            ∑
            
              l
              ∈
              Z
            
          
          ⁢
          
            
              ∑
              
                i
                =
                0
              
              
                I
                -
                1
              
            
            ⁢
            
              
                
                  α
                  j
                
                ⁡
                
                  [
                  i
                  ]
                
              
              ⁢
              
                w
                ⁡
                
                  (
                  
                    t
                    -
                    
                      i
                      bI
                    
                    -
                    
                      l
                      b
                    
                  
                  )
                
              
            
          
        
      
    
    
      
        [
        12
        ]
      
    
  




wherein w(t) is a certain pulse shape, αj[i] is a sequence of length I. Waveforms wj(t) are derived from the respective functions {tilde over (w)}j(t) by filtering them with a filter u(t). Since {tilde over (w)}j(t) is periodic with period 1/b, it can be expressed as:





  
    
      
        
          
            
              w
              ~
            
            j
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          
            ∑
            
              l
              ∈
              Z
            
          
          ⁢
          
            
              
                d
                ~
              
              jl
            
            ⁢
            
              e
              
                
                  -
                  2
                
                ⁢
                π
                ⁢
                
                  
                
                ⁢
                i
                ⁢
                
                  
                
                ⁢
                blt
              
            
          
        
      
    
    
      
        [
        13
        ]
      
    
  




After filtering with u(t), the coefficients become djl={tilde over (d)}jl·û(bl). The matrix D is left invertible if the following four conditions are met:

    
    
        J≧I≧L;
        The frequency response of filter u(t) satisfies
    
    






  
    
      u
      ^
    
    ⁡
    
      (
      w
      )
    
  
  =
  
    {
    
      
        
          nonzero
        
        
          
            
              w
              =
              bl
            
            ,
            
              
                
                l
                
              
              ≤
              
                L
                0
              
            
          
        
      
      
        
          0
        
        
          
            
              w
              =
              bl
            
            ,
            
              
                
                l
                
              
              ≥
              
                L
                0
              
            
          
        
      
      
        
          arbitrary
        
        
          elsewhere
        
      
    
  




    
    
        The frequency response of w(t) satisfies ŵ(bl)≠0 for |l|≦L0;
        The sequences αj[i] are chosen such that the matrix A, whose jith element is αj[i], has full column rank.
    
    


In an example embodiment that satisfies the four conditions defined above, J=I=L,




  
    w
    ⁡
    
      (
      t
      )
    
  
  =
  
    {
    
      
        
          
            1
          
          
            
              t
              ∈
              
                [
                
                  0
                  ,
                  
                    1
                    /
                    bI
                  
                
                ]
              
            
          
        
        
          
            0
          
          
            
              t
              ∉
              
                [
                
                  0
                  ,
                  
                    1
                    /
                    bI
                  
                
                ]
              
            
          
        
      
      ,
    
  




and αj[i] is a sequence of ±1 values that are created using cyclic shifts of a certain base sequence in a way that A is invertible. Such rectangular pulses with alternating signs can be generated using suitable hardware in a straightforward manner. See, for example, the paper by Mishali et al., entitled “Xampling: Analog to Digital at Sub-Nyquist Rates,” cited above. In this example, the shaping filter frequency response û(ω) is designed to transfer only the Fourier coefficients whose indices are |l|≦L0 and suppress the other coefficients. Alternatively, any other suitable scheme can be used.

FIGS. 7A-7C are graphs showing waveforms used in signal sampling unit 60 of FIG. 6, in accordance with an embodiment of the present invention. FIG. 7A shows an example windowing function g(t), in the present example a B-spline of order three. FIG. 7B shows an example waveform sm(t), which is generated using the windowing function of FIG. 7A. In the present example, the over-sampling parameter is set to μ=1⁄3, and K0=5. In FIG. 7C, a graph 72 shows an example waveform {tilde over (w)}j(t), before filtering with u(t). A graph 76 shows an example waveform wj(t), after filtering with u(t). (Generally, any of the system configurations of FIGS. 4 and 6 may use any of the waveforms shown in FIGS. 5A-5C and FIGS. 7A-7C.)
In some embodiments, processing unit 32 of system 20 (FIG. 1) reconstructs the analog signal f(t) from the output coefficients yjm produced by sampling unit 60 of FIG. 6, i.e., from matrix Y of Equation [11]. Equation [11] can be written as:

Y=D·XT=D·ZT·CT  [14]

Assuming matrix D has a full column rank, where J≧L is a necessary condition, unit 32 can recover matrix X from matrix Y by evaluating:

X=(D†Y)T  [15]

wherein † denotes the pseudo-inverse operator. Then, unit 32 can recover the matrix Z of Gabor coefficients from matrix X using the relation X=C·Z. Assuming that matrix Z is sparse, derivation of Z from X can be carried out using any suitable Compressed Sensing (CS) method. Example CS schemes that can be used for this purpose are described by Eldar and Mishali, in “Robust Recovery of Signals from a Structured Union of Subspaces,” IEEE Transactions on Information Theory, volume 55, no. 11, 2009, which is incorporated herein by reference. Alternatively, any other suitable CS scheme can also be used. As noted above, the specific CS reconstruction scheme used by unit 32 is considered outside the scope of the present disclosure.

FIG. 8 is a flow chart that schematically illustrates a method for signal sampling and processing, in accordance with an embodiment of the present invention. The method begins with input interface 24 of system 20 accepting an analog signal f(t), at an input step 80. Sampling unit 28 of system 20 (e.g., unit 50 of FIG. 4 or unit 60 of FIG. 6) distributes the analog signal to multiple parallel sampling channels, at a signal splitting step 84. Sampling unit 28 also generates the modulating waveforms (e.g., pr(t) in the configuration of FIG. 4, or qjm(t) in the configuration of FIG. 6), at a waveform generation step 88.
In each sampling channel, unit 28 modulates (mixes) the analog signal with the respective modulating waveform of that channel, and then integrates the modulated signal, at a modulation and integration step 92. The resulting output values (xr in the configuration of FIG. 4, or yjm in the configuration of FIG. 6) represents the analog signal with high accuracy, while requiring a sub-Nyquist sampling rate. Processing unit 32 of system 20 processes the sampled signal, at a processing step 96. In some embodiments, unit 32 reconstructs the analog signal as explained above. In alternative embodiments, unit 32 may apply any other suitable processing to the sampled signal, such as detecting the occurrence of a pulse and/or determining the time positions of the pulses in the time interval.
The system elements described herein, including input interface 24, sampling units 32, 50 and 60 and processing unit 32, can be implemented in hardware, such as using one or more discrete components, Application-Specific Integrated Circuits (ASICS) or Field-Programmable Gate arrays (FPGAs). Alternatively, some system elements may be implemented in software executing on a suitable processor, or using a combination of hardware and software elements. When some or all system elements are implemented in software, the processor may comprise a general-purpose processor, which is programmed in software to carry out the functions described herein. The software may be downloaded to the processor in electronic form, over a network, for example, or it may, alternatively or additionally, be provided and/or stored on non-transitory tangible media, such as magnetic, optical, or electronic memory. The system configurations shown in FIGS. 1, 4 and 6 are example configurations, which are chosen for the sake of conceptual clarity. In alternative embodiments, any other suitable system configuration can also be used.
Sampling Signals Irrespective of Sparsity
Some of the sampling schemes described herein, such as the schemes of FIGS. 4 and 6 above, can be used for sampling analog signals without attempting to exploit any time sparsity of the signal. Such sampling schemes are useful, for example, for sampling signals that have no multi-pulse structure, non-sparse signals in general, or signal for which no information regarding sparsity is available.
In some embodiments, sampling unit 28 is designed to sample analog signals without assuming or exploiting time sparsity, using the scheme of FIG. 4 (multi-channel scheme with modulating waveforms pr(t)) or the scheme of FIG. 6. (multi-channel scheme with modulating waveforms qjm(t)). In these embodiments, the number of channels (modulation waveforms) should be at least M=K, since the signal is not assumed to be sparse.
Matrix C in these embodiments is a square matrix of size K·K, which should be invertible. In an example embodiment, matrix C comprises a Vandermonde matrix. Thus, waveforms pr(t) are generated using different circulant shifts of a certain sequence of coefficients c.
In alternative embodiments, analog signals can be sampled irrespective of sparsity using a sampling unit that is based on filtering instead of integration, as explained above.
Sampling and Reconstruction of Signals that are Sparse in Both Time and Frequency
In some embodiments, signal f(t) is sparse in the frequency domain in addition to its sparsity in the time domain. For signals of this sort (e.g., signals that are both multi-pulse and essentially multi-band), matrix Z is sparse in columns in addition to its sparsity in rows. In other words, when signal f(t) is sparse in both time and frequency, matrix Z has only a small number of non-zero rows and a small number of dominant columns. The non-dominant columns contain matrix elements that are very small in comparison with the dominant columns.
The sparsity of matrix Z in both rows and columns can be used to further reduce the sampling rate of such signals. The dominant columns of matrix Z typically correspond to the spectral locations of the essential bands of the signal. In some embodiments, the sampling unit may sample such a signal by applying the sampling scheme with modulating waveforms qjm(t) (FIG. 6) with a total number of J·M waveforms, wherein J in these embodiments is smaller than L due to the frequency sparsity.
In these embodiments, the signal can be reconstructed by solving Z from the relation Y=DXT=DZTCT using the following sequence of computations:

    
    
        Transform the relation to YT=CW, wherein W=ZDT and W has only a small number of non-zero rows.
        Apply any suitable CS method to solve for the sparse matrix W from YT=CW.
        Once W is found, solve for Z using any suitable CS method from WT=DZT. Note, however, that the solution (denoted V) will typically not be exactly Z, since ZT is not exactly sparse in rows but rather approximately sparse. Nevertheless, the L2 error of Z-V is typically small, and the reconstruction is therefore accurate.
    
    


A radar signal is one example of an analog signal that is sparse in both time and frequency. Consider a radar signal of the form




  
    
      r
      ⁡
      
        (
        t
        )
      
    
    =
    
      
        ∑
        
          n
          =
          1
        
        N
      
      ⁢
      
        
      
      ⁢
      
        
          e
          
            2
            ⁢
            
              
            
            ⁢
            π
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            
              ω
              n
            
            ⁢
            t
          
        
        ⁢
        
          h
          ⁡
          
            (
            
              t
              -
              
                x
                n
              
            
            )
          
        
      
    
  
  ,




wherein xn denote shifts in time, ωn denote shifts in frequency, and h(t) is a compactly supported pulse that is well concentrated in frequency.

When computing Gabor coefficients for such a signal with a windowing function g(t) that is compactly supported in time and well concentrated in frequency, for each non-zero row there are at least U dominant entries (U is related to the essential bandwidth of the pulse h(t), function g(t) and lattice constant b). In an embodiment, U is given by U=2U0+1, wherein U0=┌(Ωh+B)W/2┐−1. Ωh and B denote the essential bandwidths of the pulses h(t) and the window g(t), respectively. Assuming there are no more than S≦N different possible values of ωn then matrix Z has U·S dominant columns and [2μ−1]N non-zero rows. Matrix Z can be solved for using the above-described method. The number of waveforms needed for recovering Z is 2US·2┌2μ−1┐N=4·US·┌2μ−1┐N.
Although the embodiments described herein mainly address exploitation of sparsity in the Gabor domain, the methods and systems described herein can also be used, mutatis mutandis, to exploit sparsity in other domains or transforms, such as wavelet transforms. In the latter example, the disclosed techniques can be used to sample signals that are sparse in time and smooth, and therefore sparse in the wavelet domain.
It will thus be appreciated that the embodiments described above are cited by way of example, and that the present invention is not limited to what has been particularly shown and described hereinabove. Rather, the scope of the present invention includes both combinations and sub-combinations of the various features described hereinabove, as well as variations and modifications thereof which would occur to persons skilled in the art upon reading the foregoing description and which are not disclosed in the prior art.

## Claims

1. A method for signal processing, comprising:
accepting an analog signal, which consists of a sequence of pulses confined to a finite time interval;
sampling the analog signal at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval, by computing sampled values based on Gabor coefficients with respect to a predefined windowing function; and
processing the sampled analog signal.

2. The method according to claim 1, wherein the sampled values comprise one of:
Gabor coefficients of the analog signal;
linear combinations of the Gabor coefficients of the analog signal; and
Gabor coefficients of linear combinations of the analog signal.

3. The method according to claim 1, wherein the analog signal is sparse in time.

4. The method according to claim 1, wherein processing the sampled analog signal comprises reconstructing the analog signal based on the sampled analog signal.

5. The method according to claim 1, wherein the analog signal originates from one of an ultrasound signal, a radar signal, a communication signal, a bio-imaging signal and a neuronal signal.

6. A method for signal processing, comprising:
accepting an analog signal, which consists of a sequence of pulses confined to a finite time interval;
sampling the analog signal at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval, by generating a plurality of weighted superpositions of multiple sub-sections of the analog signal that are drawn from respective sub-intervals of the finite time interval and windowed by a predefined windowing function, and sampling the analog signal using the weighted superpositions; and
processing the sampled analog signal.

7. The method according to claim 6, wherein sampling the analog signal comprises integrating each weighted superposition over the finite time interval to produce a respective sampled value.

8. The method according to claim 6, wherein sampling the analog signal comprises filtering each weighted superposition to produce a respective sampled value.

9. A method for signal processing, comprising:
accepting an analog signal, which consists of a sequence of pulses confined to a finite time interval;
sampling the analog signal at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval, by modulating multiple replicas of the analog signal with respective different modulating waveforms, which depend on a predefined windowing function; and
processing the sampled analog signal.

10. The method according to claim 9, wherein each modulating waveform comprises a respective sinusoidal signal multiplied by a respective weighted sum of time shifts of the windowing function.

11. The method according to claim 9, wherein each modulating waveform comprises a respective first weighted sum of sinusoidal signals, multiplied by a respective second weighted sum of time shifts of the windowing function.

12. A method for signal processing, comprising:
accepting an analog signal, which consists of a sequence of pulses confined to a finite time interval and which is sparse in both time and frequency;
sampling the analog signal at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval, by setting the sampling rate responsively to time and frequency sparsity of the signal; and
processing the sampled analog signal.

13. A signal processing apparatus, comprising:
an input interface, which is configured to accept an analog signal consisting of a sequence of pulses confined to a finite time interval; and
a sampling unit, which is configured to sample the analog signal at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval, by computing sampled values based on Gabor coefficients with respect to a predefined windowing function.

14. A signal processing apparatus, comprising:
an input interface, which is configured to accept an analog signal consisting of a sequence of pulses confined to a finite time interval; and
a sampling unit, which is configured to sample the analog signal at a sampling rate that is lower than a Nyquist rate of the analog signal and with samples taken at sample times that are independent of respective pulse shapes of the pulses and respective time positions of the pulses in the time interval, by generating a plurality of weighted superpositions of multiple sub-sections of the analog signal that are drawn from respective sub-intervals of the finite time interval and windowed by a predefined windowing function, and sampling the analog signal using the weighted superpositions.

15. A method for signal processing, comprising:
accepting an analog signal that is confined to a finite time interval;
sampling the analog signal by generating multiple sampled values, each sampled value comprising a respective linear combination of Gabor coefficients of the analog signal with respect to a predefined windowing function, wherein generating the sampled values comprises generating a plurality of weighted superpositions of multiple sub-sections of the analog signal that are drawn from respective sub-intervals of the finite time interval and windowed by the predefined windowing function, and sampling the analog signal using the weighted superpositions; and
processing the sampled values.

16. The method according to claim 15, wherein generating the sampled values comprises integrating each weighted superposition over the finite time interval to produce a respective sampled value.

17. The method according to claim 15, wherein generating the sampled values comprises filtering each weighted superposition to produce a respective sampled value.