# Patent

## Title
Processing method for providing, starting from signals acquired by a set of sensors, an aggregate signal and data acquisition system using such method

## Abstract

Embodiment for forming an aggregate signal from a plurality of starting signals, comprising:

    
    
        acquiring said starting signals through respective sensors of a homogeneous sensors group;
        converting acquired signals in respective digital signals having data represented with a predetermined bits number;
        processing the digital signals to form aggregate signal.
    
    


The processing step comprises the operations of:

    
    
        modifying digital signals changing the data format of each such digital signals from a first format to a second format, each data in the second format having been obtained from a respective data in the first format through an operation of permuting the bits position according to a permutation scheme associated with said data and to the specific digital signal comprising that data;
        forming aggregate signal obtaining said aggregate signal data by means of a bitwise logic operator acting upon said modified digital signal respective data.

## Background
PRIORITY CLAIM
This application claims priority from European patent application No. 06425259.6, filed Apr. 12, 2006, which is incorporated herein by reference.
TECHNICAL FIELD
An embodiment of the present invention relates to data acquisition, processing, and transmission, and in particular is concerned with a processing method for providing an aggregate signal, starting from signals acquired from a set of sensors. An embodiment of the present invention further relates to a data-acquisition system using such method.
BACKGROUND
As it is known, in an ever increasing number of applications is the widespread use of sensors networks for acquiring various kind of data and for transmitting such data to a remote processing unit. Just to mention a few examples, the use of sensor networks has proven itself particularly advantageous in the security-systems field, in bio-medical applications, in the environment-control field, and in the transport field. In many applications, the sensor networks used are wireless networks, often referred to by the WSN acronym (Wireless Sensors Network).
It is known that in sensor networks, primarily in wireless networks, reducing the area or volume occupied by circuits or components included in the sensors is often a system requirement. For instance, presently in sensor wireless networks are generally used micro-sensors, or MEMS (an acronym of the expression Micro Electro-Mechanical Sensors), realized by CMOS technology, and in the future one envisages a use of sensors realized by sub-micrometric sophisticated technology CMOS (DSM CMOS).
In sensor networks, primarily in wireless networks, another system restraint is a low-energy consumption of the various system components supplied by a battery, with the purpose to maximize the battery life.
In sensor networks, and particularly in wireless networks, to limit the energy required to transmit the sensor output via signals to the remote processing unit, a transmission technique is known, that envisages grouping the sensors provided for acquiring data concerning homogeneous quantities, in such a way as to form groups of sensors. Each of such groups is associated with a local processing unit (that, generally, may be integrated in a sensor of the group), provided for receiving signals output by the sensors, processing such signals to form an aggregate signal, and transmitting such aggregate signal to the remote processing unit. The local processing unit generally comprises a micro-controller with very low power dissipation (MCU, Ultra-low-power Micro Controller) adapted to execute the above described operations.
A specific example of the above indicated transmission technique is disclosed in a paper by A. Wang, W. Einzelam and A. P. Chandrakasan entitled “Energy Scalable Protocols for Battery-Operated MicroSensor network” Kluwer Journal of VLSI Signal Processing, pp. 223-239, November 2001, which is incorporated by reference.
In the above-described transmission technique, the aggregate signal is obtained from the local processing unit by a merge (also referred to in the field by the word “beamforming”) of signals output by various sensors of the group, exploiting the redundancy present in such signals. In the above cited paper, such merge is obtained by adaptive equalization. In other techniques, the merge is obtained by a Kalman filtering.
The above-described beamforming techniques require the local processing unit to perform computations of significant complexity, such as for instance arithmetic operations in fixed or floating point. This implies a sizeable power consumption in the local processing unit, which, in practice, is forced to operate as a digital signal processor (DSP).
SUMMARY
An embodiment of the present invention makes available a signal processing method, or a beamforming method, for provide an aggregate signal from a plurality of starting signals and that overcomes one or more of the above-described shortcomings.



BRIEF DESCRIPTION OF THE DRAWINGS
Features and advantages of one or more embodiments of the present invention will be better understood from the following detailed description, given by way of example, and, therefore, in no way limiting in relation to the appended figures.
FIG. 1 shows an exemplary block diagram of a data-acquisition system according to an embodiment of the present invention, comprising a sensors network, a local processing unit and a remote processing unit.
FIG. 2 shows an exemplary block diagram of the local processing unit of FIG. 1.
FIG. 3 shows an exemplary logic scheme of a swap module of the local processing unit of FIG. 2.
FIG. 4 shows an exemplary block diagram of the remote processing unit of FIG. 1.
FIG. 5 shows a waveform portion of an exemplary output signal provided by a sensor and a waveform portion of a signal extracted from the aggregate signal.
FIGS. 6 and 7 each show a waveform section of an exemplary output signal provided by a sensor and a waveform section of the signal extracted from the aggregate signal following a filtering operation.
FIG. 8 shows waveforms of exemplary output signals provided by a group of four sensors and corresponding signals extracted from an aggregate signal ybeam.



In the figures, same or similar elements are indicated with the same reference numerals.
DETAILED DESCRIPTION
In FIG. 1 is schematically shown an example of a data acquisition system, generally indicated at 1, comprising a sensor network 2, a local processing unit L_PU and a remote processing unit R_PU.
Sensor network 2 comprises a plurality of sensors U1, . . . , U5, for instance micro-sensors (MEMS), that together forms a set of homogeneous sensors U1, . . . , U5. In this description, the term “homogeneous group” of sensors U1, . . . , U5 means a group of sensors adapted to measure the same physical quantity to provide in output a respective acquired signal x1, . . . , x5 representing such physical quantity. For instance sensors U1, . . . , U5 might all be sensors adapted to measure a respective value of room temperature. In another example, sensors U1, . . . , U5 might all be sensors adapted to measure a respective value of a same chemical quantity.
Although in FIG. 1 a sensor network 2 has been schematically shown comprising five sensors U1, . . . , U5, the network 2 may include any integer number of sensors at least equal to two.
Each sensor U1, . . . , U5 comprises one or more transducers for acquiring signals x1, . . . , x5, representative of the measured physical quantity, and comprises further resources for generating and transmitting such signal x1, . . . , x5 processing and output transmission. More specifically, each sensor U1, . . . , U5 comprises analog/digital conversion means, to provide in output said signals x1, . . . , x5 as digital signals, that is comprising data in a digital format and having a resolution of Nres bits. Hereinafter, it is assumed, without necessarily introducing any limitation, to the case wherein signals x1, . . . , x5 output from sensors U1, . . . , U5 are digital signals, having for instance data represented on Nres=16 bits.
In one alternative embodiment signals x1, . . . , x5 output from sensors network 2 are analog signals destined to be converted in digital signals by suitable analog/digital conversion means provided in the local processing unit L_PU.
Sensors network 2 comprises a local processing unit L_PU which preferably, as in the example illustrated in FIG. 1, is integrated in one of said network 2 sensors, in the shown example in sensor U5. In an alternative embodiment, but operatively equivalent, local processing unit L_PU could be separate from each of the sensors U1, . . . , U5 of the sensors network 2.
Local processing unit L_PU is such to receive different digital signals x1, . . . , x5 acquired and provided in output from network 2 sensors U1, . . . , U5.
Local processing unit L_PU comprises processing means for processing digital signals x1, . . . , x5 provided from sensors U1, . . . , U5 and to form, starting from such signals, an aggregate digital signal ybeam to be transmitted to the remote processing unit R_PU. Local processing unit L_PU comprises processing means in the form of a low-dissipation micro-controller.
In an embodiment, sensor network 2, and more generally data-acquisition system 1, is of a wireless type. In this case, in practice, data transmission among different entities constituting network 2, or more generally data-acquisition system 1, takes place by free space propagation of radio frequency signals. In alternative embodiments, such transmission might take place via wired connections between at least some of different network/system entities. For instance, there may be proposed wired connections between sensors U1, . . . , U4 and sensor U5, or more generally between each sensor network 2 sensors U1, . . . , U5 and a the local processing unit L_PU.
For the digital signals x1, . . . , x5 transmission to local processing unit L_PU, it is possible to envisage various types of access modes. For instance, it is possible for such transmission to envisage for each signal x1, . . . , x5 a dedicated frequency channel (FDMA) or as, an alternative, envisage a time-sharing multiple access (TDMA) of different signals x1, . . . , x5 to a single channel (TDMA), or even envisage a mixed system FDMA/TDMA.
In FIG. 2 is shown a block diagram of an embodiment of local processing unit L_PU, in this example integrated in one of the homogeneous sensors U1, . . . , U5 set. Local processing unit L_PU is such to receive input digital signals x1, . . . , x5 provided from the sensors and comprises processing means Bswap, Bform for forming an aggregate signal Ybeam.
Processing means Bswap, Bform comprise a swap block Bswap adapted to modify signals x1, . . . , x5 received in input exchanging the data format of each of said signals from a first format to a second format. In FIG. 2 by x1(t), . . . , x5(t) are indicated at clock cycle t digital data in the first format of signals x1, . . . , x5 and by xs1(t), . . . , xs5(t) are indicated at clock cycle t digital data in the second format of signals xs1, . . . , xs5.
Each data xs1(t), . . . , xs5(t) in the second format is obtained from a respective data in the first format x1(t), . . . , x5(t) by a permutation operation such as to change the bit positions within each data based upon a permutation scheme p1(t), . . . , p5(t) associated with data x1(t), . . . , x5(t) and with the specific digital signal x1, . . . , x5 comprising such data x1(t), . . . , x5(t).
As may be noted by a coordinated observation of FIGS. 1 and 2, in an embodiment, the permutation schemes p1(t), . . . , p5(t) may be selected by the remote processing unit R_PU and transmitted to the local processing unit L_PU trough at least one signal P.
For example, the swap block Bswap has been shown as formed by a plurality of swap modules Bs1, Bs2, Bs3, Bs4, Bs5, each assigned to process a respective input signal x1, . . . , x5. In an alternative embodiment, swap block Bswap may be implemented through a single processing unit shared among all signals x1, . . . , x5.
In FIG. 3 is shown an example of the logic scheme of a swap module, and particularly of swap module Bs1 provided for processing signal x1. For illustration simplification only, the input data x1(t)(or first format data) at clock cycle t is represented as data having a resolution equal to Nres=4 bits. Owing to the fact that swap module Bs1 is such as to perform only a position swap, or permutation, of the input data bits (first format data) also output data xs1(t)(second format data) from swap module Bs1 will be represented in this example as a data having a resolution equal to Nres=4 bits.
In general, if digital signals x1-xn data input to the swap module are each represented by Nres=2n bits, the permutation scheme (indicated as p1 in FIG. 3) may be in turn expressed as a data, or a coded word, that may take up to Nres! values, each may be represented with Nres digits, or each may be represented with n bits.
In the example shown in FIG. 3, at the clock cycle t input data is x1(t)=0110 while output data is xs1(t)=1001. In such instance the permutation scheme (referred to the input and output positions numbered as 0, 1, 2, 3) has the expression 2-3-0-1.
In practice, if the permutation scheme is expressed as 2-3-0-1, this is equal to say that swap module Bs1 performs a bit permutation such that:

    
    
        the bit having position 0 in the input data has position 2 bit in the output data;
        the bit having position 1 in the input data has position 3 bit in the output data;
        the bit having position 2 in the input data has position 0 bit in the output data; and
        the bit having position 3 in the input data has position 1 bit in the output data;
    
    


In more general terms, a swap module Bs1 equals functionally a combinatory logic operator S (or swap operator) for which is valid a relation of type:

Bs1(t)=S[x1(t), p1(t)]=Xs1(t).   (1)

A property of such swap operator S is that the operator is reversible, therefore the reverse operator S−1 exists such that x1(t)=S−1[xs1(t), p1(t)]. Further, direct and reverse swap operations may be carried out using the same S operator, applying two distinct permutation schemes (direct p1(t) and reverse p−1(t)) linked to each other by the bi-univocal relationship:

x1(t)=S−1[xs1(t), p1(t)]=S[xs1(t), p−1(t)].   (2)

A few examples of permutation scheme p1 and related reverse schemes p−1 are shown in the following table:














p1
p−1









1, 2, 3, 0
3, 0, 1, 2



1, 0, 2, 3
1, 0, 2, 3



2, 1, 3, 0
3, 1, 0, 2



1, 3, 0, 2
2, 0, 3, 1










In general, using a swap operator S for digital data transformation from a first to a second format is known. For instance, applying swap operators to digital data, in the specific field of data transmissions, and more particularly with the aim of reducing a bus switching activity, is described in the US patent application 2004/0201505 A1, which is incorporated by reference.
Another property of a swap operator S resides in the fact that given a positional bitwise logic operator Opl[d1(t),d2(t)], wherein d1(t) and d2(t) are data each represented on Nres bits, the following property is valid:




  
    
      
        
          
            
              S
              ⁡
              
                [
                
                  
                    
                      O
                      pl
                    
                    ⁡
                    
                      [
                      
                        
                          d
                          ⁢
                          
                            
                          
                          ⁢
                          1
                          ⁢
                          
                            (
                            t
                            )
                          
                        
                        ,
                        
                          d
                          ⁢
                          
                            
                          
                          ⁢
                          2
                          ⁢
                          
                            (
                            t
                            )
                          
                        
                      
                      ]
                    
                  
                  ,
                  
                    p
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                
                ]
              
            
            ]
          
          ==
          
            
              O
              pl
            
            ⁡
            
              [
              
                
                  S
                  ⁡
                  
                    [
                    
                      
                        d
                        ⁢
                        
                          
                        
                        ⁢
                        1
                        ⁢
                        
                          (
                          t
                          )
                        
                      
                      ,
                      
                        p
                        ⁡
                        
                          (
                          t
                          )
                        
                      
                    
                    ]
                  
                
                ,
                
                  S
                  ⁡
                  
                    [
                    
                      
                        d
                        ⁢
                        
                          
                        
                        ⁢
                        2
                        ⁢
                        
                          (
                          t
                          )
                        
                      
                      ,
                      
                        p
                        ⁡
                        
                          (
                          t
                          )
                        
                      
                    
                    ]
                  
                
              
              ]
            
          
        
        ,
      
    
    
      
        (
        3
        )
      
    
  




wherein p(t) represents any swap sequence.

For instance, in case the positional bitwise logic operator Opl is the EX-OR operator, represented by ⊕, the above property translates itself in:




  
    
      
        
          
            
              
                S
                ⁡
                
                  [
                  
                    
                      d
                      ⁢
                      
                        
                      
                      ⁢
                      1
                      ⁢
                      
                        (
                        t
                        )
                      
                    
                    ⊕
                    
                      d
                      ⁢
                      
                        
                      
                      ⁢
                      2
                      ⁢
                      
                        (
                        t
                        )
                      
                    
                  
                  ]
                
              
              ,
              
                p
                ⁡
                
                  (
                  t
                  )
                
              
            
            ]
          
          ]
        
        ==
        
          
            S
            ⁡
            
              [
              
                
                  d
                  ⁢
                  
                    
                  
                  ⁢
                  1
                  ⁢
                  
                    (
                    t
                    )
                  
                
                ,
                
                  p
                  ⁡
                  
                    (
                    t
                    )
                  
                
              
              ]
            
          
          ⊕
          
            
              S
              ⁡
              
                [
                
                  
                    d
                    ⁢
                    
                      
                    
                    ⁢
                    2
                    ⁢
                    
                      (
                      t
                      )
                    
                  
                  ,
                  
                    p
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                
                ]
              
            
            .
          
        
      
    
    
      
        (
        4
        )
      
    
  




wherein p(t) represents any swap sequence.

Other examples of positional bitwise logic operators are the following: AND, NAND, OR, NOR, EX-NOR, etc. . . . or any combination of said operators.
In case, as often occurs, input signal data x1, . . . , x5 to be modified from the swap block Bswap, and, more particularly, swap units Bs1, Bs2, Bs3, Bs4, Bs5, are represented by a considerable number of bits (for instance 16), one may realize the swap operation such that it operates rigidly on M blocks of input data bits, wherein M is a greater than 1 integer, overall such as envisaged from the teachings of the above mentioned US patent application 2004/0201505 A1. This allows, as will be explained better in the following, a reduction in the permutation schemes' p1(t), . . . , p5(t) length, and in the number of trials to be performed at the remote processing unit R_PU in the permutation schemes p1(t), . . . , p5(t) research operations. This is due to the fact that, as described in the abovementioned US patent application, in the case wherein the permutation schemes operate on single bits of the data to be processed having a resolution of Nres bits, any permutation schemes may be selected within a set of Nres! (factorial) possible permutation schemes, while in the case wherein one operates upon M groups of bits this may be selected among M! (factorial) possible permutation schemes. This allows one to reduce considerably computational complexity at the remote processing unit R_PU of the permutation schemes to be utilized by the local processing unit.
In an embodiment, if each of the input signals to the swap block Bswap shows stationarity characteristics (for example strict stationarity), it is possible to envisage for each x1, . . . , x5 input signal a dedicated permutation scheme group (or set) comprising a finite number W of permutation schemes to be utilized cyclically (i.e., repeatedly), for instance sequentially, for modifying the data format of said input signal. Further, in case x1, . . . , x5 input signals present modest stationarity characteristics, it is possible to envisage for each said x1, . . . , x5 signals an update of said sets of permutation schemes by the remote processing unit R_PU with an update frequency, for example, much lower compared to the clock frequency of signals x1, . . . , x5 received in input to the swap block Bswap.
Referring to FIG. 2, processing means Bswap and Bform of local processing unit L_PU further comprise an aggregation (beamforming) block Bform for producing starting from signals xs1(t), . . . , xs5(t) as processed by swap block Bswap an aggregate signal ybeam(t) having Nres bits resolution data.
Aggregation block Bform produces such aggregate signal ybeam by applying a positional logic operator bitwise Opl upon corresponding bits of signals xs1(t), . . . , xs5(t) for producing a single bit of the aggregate signal ybeam. In other words, for each, Nres bits, data xs1(t), . . . , xs5(t) of input signals xs1, . . . , xs5, beamforming block Bform provides in output an aggregate signal ybeam data ybeam(t) having a Nres bits resolution and such that:

ybeam(t)=Opl[xs1(t), . . . , xs5(t)].   (5).

In an embodiment, the positional logic operator Opl is the Boolean operator EX-OR (also called exclusive OR, also represented by symbol ⊕).
Only to make an example in this case, named xs1(t)(i), xs2(t)(i), xs3(t)(i), xs4(t)(i) xs5(t)(i) the i-th bits (with i comprised between 0 and Nres−1) of signals xs1, . . . , xs5 at clock cycle t, aggregation block Bform produces the i-th bit of aggregate signal ybeam (t) at clock cycle t by computing:




  
    
      
        
          
            
              
                
                  
                    y
                    beam
                  
                  ⁡
                  
                    (
                    t
                    )
                  
                
                ⁢
                
                  (
                  i
                  )
                
              
              =
              
              ⁢
              
                
                  
                    
                      xs
                      1
                    
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                  ⁢
                  
                    (
                    i
                    )
                  
                
                ⊕
                
                  
                    
                      xs
                      2
                    
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                  ⁢
                  
                    (
                    i
                    )
                  
                
                ⊕
                
                  
                    
                      xs
                      3
                    
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                  ⁢
                  
                    (
                    i
                    )
                  
                
                ⊕
              
            
          
        
        
          
            
              
              ⁢
              
                
                  
                    
                      xs
                      4
                    
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                  ⁢
                  
                    (
                    i
                    )
                  
                
                ⊕
                
                  
                    
                      xs
                      5
                    
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                  ⁢
                  
                    (
                    i
                    )
                  
                
              
            
          
        
        
          
            
              
                =
                
                ⁢
                
                  
                    
                      
                        ∑
                        ⊕
                      
                      u
                    
                    ⁢
                    
                      
                        
                          xs
                          u
                        
                        ⁡
                        
                          (
                          t
                          )
                        
                      
                      ⁢
                      
                        (
                        i
                        )
                      
                      ⁢
                      
                        
                      
                      ⁢
                      
                        for
                      
                      ⁢
                      
                        
                      
                      ⁢
                      u
                    
                  
                  =
                  1
                
              
              ,
              ...
              ⁢
              
                
              
              ,
              5.
            
          
        
      
    
    
      
        (
        6
        )
      
    
  




Expressing a previous relationship as a function of the signals x1(t), . . . , x5(t)received in input from local processing unit L_PU and clearing index i, the aggregate signal ybeam(t) data at clock cycle t maybe written in the form:




  
    
      
        
          
            y
            beam
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          
            
              ∑
              ⊕
            
            u
          
          ⁢
          
            S
            ⁡
            
              [
              
                
                  
                    x
                    u
                  
                  ⁡
                  
                    (
                    t
                    )
                  
                
                ,
                
                  
                    p
                    u
                  
                  ⁡
                  
                    (
                    t
                    )
                  
                
              
              ]
            
          
        
      
    
    
      
        (
        7
        )
      
    
  




wherein pu(t) is the permutation scheme assigned at clock cycle t to digital signal xu(t) to modify said data format through swap block Bswap. As previously explained, permutation schemes pu(t) that represent in practice digital signatures for the same signal xu may be repeated cyclically as clock t cycles vary. In that way, permutation sequences pu(t) may be used to apply to the same signal from a set (associated with said signal) comprising a finite number W of possible sequences identified by the remote processing unit R_PU to modify, in practice to “sign”, said signal. More generally, using a bitwise positional logic operator Opl in the aggregation block Bform one has:





  
    
      
        
          
            y
            beam
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          
            
              ∑
              
                O
                pl
              
            
            u
          
          ⁢
          
            
              S
              (
              
                
                  
                    x
                    u
                  
                  ⁡
                  
                    (
                    t
                    )
                  
                
                ,
                
                  
                    p
                    u
                  
                  ⁡
                  
                    (
                    t
                    )
                  
                
              
              ]
            
            .
          
        
      
    
    
      
        (
        8
        )
      
    
  




Referring to FIG. 1, in an embodiment, local processing unit L_PU is such as to send aggregate signal ybeam thus obtained to remote processing unit R_PU using a digital modulation, such as for instance a QPSK modulation or a B-PSK modulation compliant with the IEEE 802.14.5 standard.
Remote processing unit R_PU is such as to receive said aggregate signal ybeam to decode it with the aim of extracting (that is detect) from it single signals x1, . . . , x5 supplied in output by sensors U1, . . . , U5 of sensors network 2, or more correctly, of extracting from ybeam an as-accurate-as-possible estimate of such x1, . . . , x5 signals. For purposes of the present description, an “estimate as accurate as possible” is meant an estimate having an accuracy level compatible with some predefined system requirements.
In FIG. 4 is shown an exemplary block diagram of an embodiment of a remote processing unit R_PU.
Such remote processing unit R_PU comprises a reverse swap block Bswap−1 similar to the above described swap block referring to the local processing unit L_PU and to FIG. 2.
In FIG. 4 only by way of example reverse swap block Bswap−1 has been represented as comprising a plurality of reverse swap blocks Bs1−1, . . . , Bs5−1 each provided for processing the aggregate signal ybeam for reconstructing a respective signal x1, . . . , x5 provided in output from sensors U1, . . . , U5 and transmitted to local processing unit L_PU.
In practice, reverse swap block Bswap−1 operates in such a way to process the aggregate signal ybeam by applying to said signal data-swap operators that use reverse permutation schemes p1−1, . . . , p5−1 with respect to permutation schemes p1, . . . , p5 used by swap block Bswap in local processing unit L_PU.
As an example, to extract the u-th signal from the aggregate-signal-reverse swap block Bswap−1 is to execute the following swap operation:




  
    
      
        
          S
          ⁡
          
            [
            
              
                
                  y
                  beam
                
                ⁡
                
                  (
                  t
                  )
                
              
              ,
              
                
                  p
                  u
                  
                    -
                    1
                  
                
                ⁡
                
                  (
                  t
                  )
                
              
            
            ]
          
        
        =
        
          
            
              S
              ⁡
              
                [
                
                  
                    
                      
                        ∑
                        ⊕
                      
                      u
                    
                    ⁢
                    
                      S
                      ⁡
                      
                        [
                        
                          
                            
                              x
                              u
                            
                            ⁡
                            
                              (
                              t
                              )
                            
                          
                          ,
                          
                            
                              p
                              u
                            
                            ⁡
                            
                              (
                              t
                              )
                            
                          
                        
                        ]
                      
                    
                  
                  ,
                  
                    
                      p
                      u
                      
                        -
                        1
                      
                    
                    ⁡
                    
                      (
                      t
                      )
                    
                  
                
                ]
              
            
            ==
            
              
                
                  x
                  u
                
                ⁡
                
                  (
                  t
                  )
                
              
              ⊕
              
                
                  
                    ∑
                    ⊕
                  
                  
                    m
                    ≠
                    u
                  
                
                ⁢
                
                  S
                  ⁡
                  
                    [
                    
                      
                        S
                        ⁡
                        
                          [
                          
                            
                              
                                x
                                m
                              
                              ⁡
                              
                                (
                                t
                                )
                              
                            
                            ,
                            
                              
                                p
                                m
                              
                              ⁡
                              
                                (
                                t
                                )
                              
                            
                          
                          ]
                        
                      
                      ,
                      
                        
                          p
                          u
                          
                            -
                            1
                          
                        
                        ⁡
                        
                          (
                          t
                          )
                        
                      
                    
                    ]
                  
                
              
            
          
          =
          
            
              
                x
                u
              
              ⁡
              
                (
                t
                )
              
            
            ⊕
            
              
                
                  w
                  u
                
                ⁡
                
                  (
                  t
                  )
                
              
              .
            
          
        
      
    
    
      
        (
        9
        )
      
    
  




From the above cited relationship, which refers to the specific case wherein the positional logic operator used to form signal ybeam is the Boolean operator EX-OR, it is evident that the extracted signal has been corrupted by a noise process due to all remaining signals that have contributed to form aggregate signal ybeam at local processing unit L_PU. It is observed that the above-cited relationship as an example for the specific case of EX-OR operator may also be true for other bitwise positional logic operators.
For this reason, the remote processing unit R_PU comprises a search block Psearch provided for searching permutation schemes, or better sets (or sequences) comprising a limited and restricted number W of permutation schemes, to be transmitted to the local processing unit L_PU with the aim of reducing as far as possible, from each u-th signal to be extracted (i.e., to be revealed) from aggregate signal ybeam, the interference due to the process wu(t).
This in practice reduces itself to the search of permutation scheme sets such as to satisfy the following relationship:




  
    
      
        
          
            w
            u
          
          ⁡
          
            (
            t
            )
          
        
        =
        
          
            
            
              
                
                  ∑
                  ⊕
                
                
                  m
                  ≠
                  u
                
              
              ⁢
              
                S
                ⁡
                
                  [
                  
                    
                      S
                      ⁡
                      
                        [
                        
                          
                            
                              x
                              m
                            
                            ⁡
                            
                              (
                              t
                              )
                            
                          
                          ,
                          
                            
                              p
                              m
                            
                            ⁡
                            
                              (
                              t
                              )
                            
                          
                        
                        ]
                      
                    
                    ,
                    
                      
                        p
                        u
                        
                          -
                          1
                        
                      
                      ⁡
                      
                        (
                        t
                        )
                      
                    
                  
                  ]
                
              
            
            
          
          ≤
          ɛ
        
      
    
    
      
        (
        10
        )
      
    
  




wherein ε is an arbitrary small predefined value. The above criteria correspond to minimize noise energy Eu due to wu(t) process. Such energy Eu is given by:

Eu=Σi=0Nres−1|wu(t)(i)|2·22·i,   (11)

wherein wu(t)(0) is the signal wu(t) least-significant bit while wu(t)(Nres−1) is the signal wu(t) most-significant bit.

The search of the U permutation sequences sets (each sequence comprising W permutation schemes) according to the above-noted criteria has a computational complexity such as (Nres!)U·W, wherein U is the number of signals (in this example, U=5) that contribute to the ybeam aggregate-signal formation. This applies in the case wherein the permutation schemes operate independently on each bit of the data signals provided in output from the sensors.
In the case in which instead the permutation schemes are such as to operate upon M bit sets of the data signals provided in output from the sensors, the U permutation sequences sets search according to above-noted criteria has a computational complexity that reduces itself to (M!)U·W.
In a first embodiment, the permutation schemes sequences search problem may be solved in a heuristic way, through the study of the characteristics of the signals provided in output from sensors U1, . . . , U5 such as to minimize the noise spectral density of wu(n). A shortcoming of this methodology is given from the high computational complexity and from the requested times to execute such heuristic search.
In an alternative embodiment, search block Psearch executes the permutation-sequence-schemes search operation in a sub-optimal way minimizing (or maximizing) a predefined cost function, that represents the search operation metric and that is given by the sum (or by the product, using logarithms) of an individual contribution plurality. In that case, in an embodiment, search block Psearch operates according to a Viterbi algorithm.
As it is known, such algorithm application, that represents a “brick” of telecommunications theory, is not limited to signals decoding and equalization, because such algorithm more generally represents a strategy to minimize (or maximize) a cost function based upon a system description in terms of inputs, states and outputs. Such system description is known in the field by the name of “trellis diagram”.
In an embodiment, search block Psearch realizes a Viterbi algorithm according to the following operations:

    
    
        a) casually generate a permutation schemes sequence (in practice, comprising W schemes) to be associated with first x1 of U signals provided in output from sensors, and
    
    


For remaining U-1 signals x2, . . . , x5:

    
    
        b) identify, operating signal by signal and through trials, respective permutation schemes sequences, such as to minimize for each (remaining) signal xu a given cost function (or metric) of energy Eu (substantially as defined in formula 10) of interference (substantially as defined in formula 9) of the other signals whose permutation schemes have already been identified through Viterbi algorithm.
    
    


In this way “almost-orthogonal” permutation sequences schemes are obtained, that is permutation sequences schemes such to render, for each signal extracted from aggregate signal ybeam, the interference contribution at formula 10 as small as possible.
An embodiment of a Viterbi algorithm carried out by search block Psearch uses a fully connected trellis diagram. This means that in the Viterbi algorithm, once a selected permutation scheme (start state) starts at cycle t-1, it is possible to carry out a transition (that is carry out a trial) at cycle t towards any permutation scheme (arrival state) including the start one. This selection, compared to the use of a partially connected trellis, does not limit the system's degrees of freedom during the permutation schemes sets search. On the contrary, adopting a partially connected trellis scheme may be a strategy to be used to reduce the number of trials to be carried out during the permutation schemes sequence.
A Viterbi algorithm of depth D (D is a parameter whose meaning is known to a person skilled in the art), is significantly less with respect to a number of sequences W that are part of a same set of permutation sequences (e.g.,: W=32 and D=16).
In an embodiment, remote processing unit R_PU, besides the search operations of permutation schemes sequences and of extraction of different signals from the aggregate signal, carries out post-processing operations on extracted signals. In fact, extracted signals from aggregate signal ybeam may show replicas in the time domain (due to frequency domain sampling) and high-frequency components that require a base-band conversion and a subsequent low-pass-type filtering. Such filtering may be carried out by a Butterworth filter or an elliptic type filter (not shown in FIG. 4 scheme).
Experimental tests and simulations have demonstrated the effectiveness, in terms of power savings at the remote processing unit, as compared to known art methods.
In FIG. 5 is shown the time pattern of a signal provided in output by one of the sensors (indicated as x-Tx) and of the corresponding signal (indicated as x_Rx) extracted by the remote processing unit R_PU from the aggregate signal. In this case, the transmitted signal is an absolute value sinusoidal waveform, while the number U of signals that have contributed to signal aggregated ybeam is equal to 4 (in practice, U=4). As may be noticed in FIG. 5, extracted signal x_Rx shows high frequency components.
In the graph of FIG. 6, signal x_Tx is compared with extracted signal x_Rx following a filtering operation by an 8-pole low-pass Butterworth filter with a normalized frequency of 0.000025 Hz.
In the graph of FIG. 7, transmitted signal x_Tx is compared with extracted signal x_Rx after a filtering operation by an elliptic two-pole low-pass filter having a normalized frequency equal to 0.025 Hz.
Finally, in FIG. 8 four signals are shown x1, . . . , x4 provided in output from four sensors U1, . . . , U4 (of a four-sensor group) and corresponding signals x1—Rx, . . . , x4—Rx extracted from aggregate signal ybeam, filtered and detected.
The sensor group 2 of FIG. 1 may be disposed on an integrated circuit (IC) that may be part of a first system and coupled to another IC such as a processor/controller. The remote processor R_PU may by formed on the same or a different IC, and this IC may be part of the first or part of a second system, and coupled to another IC such as a processor/controller.
From the foregoing it will be appreciated that, although specific embodiments of the invention have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention.

## Claims

1. Processing method for forming an aggregate signal from a plurality of starting signals, the method comprising:
acquiring said starting signals, through respective sensors of a homogeneous set of sensors;
converting the acquired signals into respective digital signals having data represented with a predetermined number of bits;
processing the digital signals for forming the aggregate signal;
wherein the processing step comprises the operations of:
modifying digital signals changing the data format of each such digital signals from a first format to a second format, each data in the second format being obtained from a respective data in the first format by an operation of permuting the bits position according to a permutation scheme associated to that data and to the particular digital signal containing said data;
forming aggregate signal obtaining data of said aggregate signal by a logic bitwise operator acting upon respective data of said modified digital signals.

2. Method according to claim 1, further comprising a step of identifying for each of said digital signals a respective permutation schemes group to be associated with said signal.

3. Method according to claim 2, wherein the permutation schemes of each of said sets are in a finite number, said modifying step being such as to use repetitively each set schemes for each respective signal to be modified.

4. Method according to claim 3, wherein said phase of modifying is such as to sequentially use said permutation schemes of each set.

5. Method according to claim 2, wherein said phase of identifying for each digital signal the respective permutation schemes set, comprises an operation of minimizing an interference contribution due to the remaining digital signals in the decoding of said signal from said aggregate signal.

6. Method according to claim 5, wherein said minimizing operation is based upon an energy minimization of said interference contribution.

7. Method according to claim 5, wherein said minimizing operation is carried out minimizing for each digital signal a respective cost function through a Viterbi algorithm.

8. Method according to claim 1, wherein said data have a Nres bits resolution, said method further comprising a phase of grouping the each data Nres bits in M sub-groups of Nres/M bits each, and wherein said permutation operation is such to change in each data the reciprocal position of complete M bits sub-groups.

9. Method according to claim 1, wherein said aggregate signal is to be transmitted from a local processing unit spatially proximate to said sensors group to a remote processing unit spatially distal from said sensors group.

10. Method according to claim 2, wherein said identifying step is carried out in said remote processing unit, said method further comprising a step of transmitting said permutation schemes identified from said remote processing unit to said local processing unit.

11. Method according to claim 9, wherein said processing phase is carried out in said local processing unit.

12. Method according to claim 9, wherein said local processing unit is comprised in a sensor of said sensors group.

13. Method according to claim 1, wherein said logic bitwise operator is operator EX-OR.

14. Data acquisition system comprising:
a sensor network comprising a homogeneous sensors group each adapted to provide in output a respective acquired signal;
analog to digital conversion means, adapted to convert said acquired signals in respective digital signals;
a local processing unit adapted to receive said digital signals and comprising processing means to form starting from said digital signals an aggregate signal;
a remote processing unit adapted to receive said aggregate signal wherefrom to extract said digital signals;
wherein said processing means comprise:
a swap block adapted to modify said digital signals changing the data format of each of said digital signals from a first format to a second format, each data in the second format having been obtained from a respective data in the first format by an operation of permuting the bits position on the basis of a permutation scheme associated with said data and with the specific digital signal comprising said data;
an aggregation block to form said aggregate signal obtaining said aggregate signal data by a bitwise logical operator acting upon said respective digital signals modified data.

15. Data acquisition system according to claim 14, wherein said logic operator is operator EX-OR.

16. Data acquisition system according to claim 14, wherein the remote processing unit comprises a reverse swap block for processing the aggregate signal applying to said aggregate signal swap operators using reverse permutation schemes as compared to permutation schemes used by swap block in the local processing unit.

17. Data acquisition system according to claim 14, wherein said remote processing unit comprises a search block adapted to identify for each of said signals a respective permutation schemes set.

18. Data acquisition system according to claim 17, wherein said search block is such as to implement a Viterbi algorithm for identifying said permutation schemes sets.