OPTIMISED CIRCULAR CONVOLUTIONS STAGE FOR OS/OSB FBMC RECEIVERS

20230140597 · 2023-05-04

    Inventors

    Cpc classification

    International classification

    Abstract

    A device configured to perform a stage of circular convolutions in an Overlap-Save Filtered-Bank Multicarrier Communication (OS-FBMC) or Overlap-Save-Block FBMC (OSB-FBMC) receiver and the corresponding method, the stage of circular convolutions comprising P circular convolutions operated between subsets of input samples and frequency domain responses of a frequency shifted version of a prototype filter associated to an FBMC modulation having C.sub.g coefficients, with P an integer greater than one, the device comprising at least one Finite Impulse Response filter implemented in the form of a transposed direct filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ with

    [00001] Δ = c g - 1 2 ,

    wherein the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1; 0custom-character has an equal absolute value to the multiplier coefficient of tap (1−p) . An FBMC equalization and demodulation unit or an FBMC receiver comprising the device.

    Claims

    1. A device configured to perform a stage of circular convolutions in an Overlap-Save Filtered-Bank MultiCarrier (OS-FBMC) or Overlap-Save-Block FBMC (OSB-FBMC) receiver, the stage of circular convolutions performing P circular convolutions between subsets of input samples and frequency domain responses of frequency shifted versions of a prototype filter associated to the FBMC modulation having C.sub.g coefficients, said input samples being designated as [X(0) . . . X(KMP−1)] with M a number of subcarriers, K an oversampling factor of a Filtered-Bank MultiCarrier (FBMC) modulation applied to a FBMC signal received by the receiver and P an integer greater than one, wherein the stage of circular convolutions comprises: a first Finite Impulse Response (FIR) filter implemented in the form of a transposed direct filter having C.sub.g taps numbered p=−Δ to p=Δ, the multiplier coefficient of each tap p within the set of taps custom-character−Δ;−1custom-character having an equal value to the multiplier coefficient of tap (−p), and taking as input a subset X.sub.0=[X(0), X(P), X(2P), . . . , X((KM−1)P)] of said input samples; at least one Finite Impulse Response (FIR) filter, each of said FIR filter being implemented in the form of a transposed direct filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ with Δ = C g - 1 2 , the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character having an equal absolute value to the multiplier coefficient of tap (1−p), and taking as input a subset or a combination of subsets of said input samples; the coefficients of the first FIR filter and of the at least one FIR filter being based on said frequency domain responses of frequency shifted versions of a prototype filter associated to the FBMC modulation.

    2. The device of claim 1, where P is even, and where the at least one FIR filter comprises a second FIR filter implemented in the form of a transposed direct filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ, the second FIR filter taking as input the subset of input samples X.sub.P/2=[X(P/2), X(P/2+P), X(P/2+2P), . . . , X(P/2+(KM−1)P)], the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character having an opposite value to the multiplier coefficient of tap (1−p).

    3. The device of claim 2, wherein the coefficients of the first and second FIR filters are the C.sub.g significant coefficients of: G l ( p ) = .Math. k = 0 L - 1 g ( k ) z l ( k ) e - i 2 π p k L , where g is the time domain response of the prototype filter and z l ( k ) = e i 2 π l ( k - L / 2 ) P , with l=0 for the first FIR filter, and l=P/2 for the second FIR filter.

    4. The device according to claim 1, wherein the at least one FIR filter comprises a partial summation unit configured to take as input subsets X.sub.l and X.sub.P−l of said input samples, with X.sub.l=[X(l),X(l+P), X(l+2P), . . . , X(l+(KM−1)P)] and X.sub.P−l=[X(P−l), X(P−l+P), X(P−l+2P), . . . , X(P−l+(KM−1)P)], l∈custom-character1,P/2−1custom-character, the partial summation unit comprising: one or more calculation unit configured to calculate a first set of samples equal to X.sub.l−X.sub.P−l and a second set of samples equal to X.sub.l+X.sub.P−l, a first FIR sub-filter implemented in the form of a transposed direct filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ taking as input the first set of samples, the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character having an equal value to the multiplier coefficient of tap (1−p), a second FIR sub-filter implemented in the form of a transposed direct filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ taking as input the second set of samples, the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character having an opposite value to the multiplier coefficient of tap (1−p), and a calculation unit configured to sum and divide by a factor two corresponding outputs of the first and second FIR sub-filters.

    5. The device of claim 4, wherein the coefficients of the first FIR sub-filter are the C.sub.g significant coefficients of R.sub.l(p)=G.sub.l(p)+G.sub.l(1−p), with: G l ( p ) = .Math. k = 0 L - 1 g ( k ) z l ( k ) e - i 2 π p k L , where g is the time domain response of the prototype filter and z l ( k ) = e i 2 π l ( k - L / 2 ) P , and wherein the coefficients of the second FIR sub-filter are the C.sub.g significant coefficients of S.sub.l(p)=G.sub.l(p)−G.sub.l(1−p).

    6. The device of claim 4, comprising P - 2 2 partial summation units when P is even, or P - 1 2 partial summation units when P is odd.

    7. The device of claim 1, wherein taps having equal absolute values in a FIR filter among the said first FIR filter, and when relevant second FIR filter, first FIR sub-filter and second FIR sub-filter, are implemented by a single multiplier.

    8. The device of claim 7, wherein said taps implemented by a single multiplier and having multipliers coefficients of opposite values comprise means to calculate the opposite of an output of the said single multiplier.

    9. The device according to claim 1, wherein multiplier coefficients of the said first FIR filter, and when relevant second FIR filter, first FIR sub-filter and second FIR sub-filter are real and implemented in the form of networks of constant multipliers.

    10. An FBMC equalization and demodulation unit configured to process an FBMC signal comprising FBMC symbols, each FBMC symbol comprising data mapped over M subcarriers, oversampled by a factor K, filtered by a prototype filter and transposed in the time-domain, the FBMC equalization and demodulation unit comprising: a frequency domain transposition unit, configured to transpose a block of P*KM samples comprising at least one FBMC symbol into frequency domain samples, where P is an integer greater than one, an equalizer unit configured to output a set of equalized samples X by multiplying said frequency domain samples by coefficients computed from a propagation channel estimate, a device as of claim 1 configured to perform a stage of circular convolutions and taking as input samples the set equalized samples X, and adders, configured to sum outputs of said device.

    11. An FBMC receiver comprising an FBMC equalization and demodulation unit as of claim 10.

    12. A method to perform P circular convolutions in an Overlap-Save Filtered-Bank MultiCarrier (OS-FBMC) or Overlap-Save-Block FBMC (OSB-FBMC) receiver between subsets of input samples and frequency domain responses of frequency shifted versions of a prototype filter associated to the FBMC modulation having C.sub.g coefficients, said input samples being designated as [X(0) . . . X(KMP−1)] with M a number of subcarriers, K an oversampling factor of a Filtered-Bank MultiCarrier (FBMC) modulation applied to a FBMC signal received by the receiver and P an integer greater than one, the method comprising the steps of: filtering a subset X.sub.0=[X(0), X(P), X(2P), . . . , X((KM−1)P)] of said input samples by a first Finite Impulse Response (FIR) filter implemented in the form of a transposed direct filter having C.sub.g taps numbered p=−Δ to p=Δ, the multiplier coefficient of each tap p within the set of taps custom-character−Δ;−1custom-character having an equal value to the multiplier coefficient of tap (−p); filtering a subset or a combination of subsets of said input samples by at least one FIR filter implemented in the form of a transposed direct FIR filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ with Δ = C g - 1 2 , the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character having an equal absolute value to the multiplier coefficient of taps (1−p), the coefficients of the first FIR filter and of the at least one FIR filter being based on said frequency domain responses of frequency shifted versions of a prototype filter associated to the FBMC modulation.

    13. A computer program adapted to implement the method of claim 12.

    14. A computer readable medium incorporating the computer program of claim 13.

    Description

    BRIEF DESCRIPTION OF THE DRAWINGS

    [0052] The invention will be better understood and its various features and advantages will emerge from the following description of a number of exemplary embodiments and its appended figures in which:

    [0053] FIGS. 1a to 1c represent various embodiments of an OS/OSB-FBMC receiver as known from the previous art;

    [0054] FIGS. 2a and 2b represent various known FIR architecture implementations;

    [0055] FIG. 3a represents an illustrative embodiment of an OS-FBMC receiver according to the disclosure;

    [0056] FIG. 3b represents a FIR structure implementing circular convolution indexed 0 in an illustrative embodiment of an OS/OSB-FBMC receiver according to the disclosure;

    [0057] FIGS. 4a to 4c represent various FIR structures implementing circular convolution indexed P/2 in illustrative embodiments of an OS/OSB-FBMC receiver according to the disclosure;

    [0058] FIG. 5 represents a partial summation unit to be used in an embodiment of an OS/OSB-FBMC receiver according to the disclosure;

    [0059] FIG. 6 represents a FIR filter structure to be used as a sub-filter of a partial summation unit in an embodiment of an OS/OSB-FBMC receiver according to the disclosure;

    [0060] FIG. 7 represents a bench of FIR filters to be used in an embodiment of an OS/OSB-FBMC receiver according to the disclosure.

    [0061] The examples disclosed in this specification are only illustrative of some embodiments of the invention.

    DETAILED DESCRIPTION OF THE INVENTION

    [0062] As can be seen in Eq. 4, the P circular convolutions can be implemented through independent FIR filters. A straightforward implementation of Eq. 4 could be done using FIR filter architectures known as “direct-form FIR”, as shown in FIG. 2a. In this FIR filter architecture, input samples are delayed by a series of C.sub.g delay registers 201. The delayed input samples are respectively multiplied by coefficients G.sub.l 211 to 214 obtained from the prototype filter. The outputs of the multipliers are summed by summing device 220 to provide one output sample per cycle that corresponds to the output of the circular convolution. This architecture is a direct application of Eq. 4 as the delayed inputs correspond to the term X.sub.l(m−p) . However, it is not the most efficient filtering architecture.

    [0063] FIG. 2b represents another possible implementation of the FIR of Eq. 4, using a FIR filter architecture known as the “transposed direct FIR” architecture. In this architecture, each input sample is parallely multiplied by coefficients G.sub.l 214 to 211. Once multiplied, the samples are processed by a pipeline of delay registers 201 and adders 231, to provide one output sample per cycle. This architecture is composed of C.sub.g taps 220, a tap being the combination of a multiplier, a delay register, and an adder (except for the first tap where the adder is not relevant). In practice, the last delay register 202 is not implemented, as its only role is to ensure that the direct-form and transposed-direct structures have equal timing. This architecture has the same implementation complexity as the one of the direct form FIR structure, but is more prone to take advantage of design improvements related to the structure of the FBMC/OQAM signal, which are discussed further below.

    [0064] Some known improvements may be done to both FIR architectures. For instance, as coefficients G.sub.l are of constant values (they only depend on the impulse response of the prototype filter and the index l of the circular convolution considered), multiplier-less FIR architectures can be designed for fixed-point precision that use adders and shifts in place of multipliers. Such multiplier-less FIR architectures require far less hardware resources (logic gates) than regular multipliers, achieving thus an important hardware complexity reduction. Advantageously, as all the multipliers of the transposed direct structure process the same input sample, they can be implemented through a network of constant multipliers, where an important reuse of the adders and shift registers used to replace the multipliers can be achieved, reducing thus significantly the implementation complexity. Tools are known that automatically and efficiently generate such networked multiplier-less FIR structures. The various embodiments of an OS/OSB-FBMC receiver according to the disclosure may therefore advantageously use FIR filters architectures based on the transposed direct structure presented in FIG. 2b to compute the circular convolutions stage.

    [0065] Some interesting properties of the signal processed by the circular convolutions stage of OS/OSB-FBMC receivers are presented hereafter. These properties are used later on to improve the unit's implementation.

    [0066] The first property concerns the value of coefficients G.sub.l. Sequence G.sub.l, used within circular convolution number l, can be expressed as follows:

    [00017] G l ( p ) = .Math. k = 0 L - 1 G ( p - m ) Z l ( m ) Eq . 5

    where G and Z.sub.l are the Fourier transform (of a size L) respectively of the prototype filter impulse response g and of the linear phase rotation z.sub.l.

    [0067] Z.sub.l may be expressed as:

    [00018] Z l ( m ) = z l ( 0 ) + z l ( L / 2 ) + .Math. k = 1 L 2 - 1 ( z l ( k ) e - i 2 π km L + z l * ( k ) e i 2 π km L ) Eq . 6

    [0068] In the summation of Eq. 6, by definition,

    [00019] z l ( k ) e - i 2 π km L + z l * ( k ) e i 2 π km L

    and z.sub.l(L/2) are real valued numbers. Therefore, custom-character(Z.sub.l(m))=custom-character(Z.sub.l(0)), custom-character(.) being the imaginary part of a complex number. The imaginary part of G.sub.l becomes:

    [00020] ( G l ( p ) ) = ( z l ( 0 ) ) .Math. m = 0 L - 1 G ( p - m ) = ( z l ( 0 ) ) g ( 0 ) . Eq . 7

    [0069] As g(0) corresponds to the first sample of the ramp up part of the impulse response of the prototype filter, it is necessarily close to zero and g(0)≈0. From Eq. 7, it can then be deduced that custom-character(G.sub.l(p)))≈0.

    [0070] Implementing the circular convolutions stage in an OS/OSB-FBMC receiver may take this property into consideration by only considering the real part of G.sub.l(p) to perform the circular convolutions, reducing thus the implementation cost by a factor two.

    [0071] The second property concerns some symmetry within the sequences G.sub.l.

    [0072] Indeed, when l=0, Eq. 1 is:

    [00021] G 0 ( - p ) = ( .Math. k = 0 L - 1 g ( k ) e - i 2 π kp L ) * = G 0 ( p ) . Eq . 8

    [0073] Therefore, a FIR filter having a transposed direct structure and implementing the circular convolution indexed l=0 can be constructed using only Δ+1 multipliers, as except for one tap, the taps can be regrouped by pairs having a same input and a same multiplier coefficient. The multiplication can therefore be performed only once for each pair of taps.

    [0074] When l>0, G.sub.l(p)=−G.sub.P−l(1−p), with p∈custom-character0,Δcustom-character. Indeed, the term −G.sub.P−l(1−p) can be expressed as:

    [00022] - G P - l ( 1 - p ) = - .Math. k = 0 L - 1 g ( k ) z P - 1 ( k ) e - i 2 π k L e i 2 π p k L . Eq . 9

    [0075] In addition,

    [00023] z P - 1 ( k ) = - z l * ( k ) e i 2 π k L ,

    and the above equation becomes:

    [00024] - G P - l ( 1 - p ) = - .Math. k = 0 L - 1 g ( k ) z l ( k ) * e i 2 π p k L , Eq . 10

    which corresponds to the result of the Inverse FFT (of a size L) of the term g(k)z.sub.l(k)*. A known relation between an FFT and an IFFT can be exploited: the effects of conjugating both the inputs and the outputs of an IFFT cancel each other: FFT(x)=IFFT(x*)*. Applying this property to the above equation gives:

    [00025] - G P - l ( 1 - p ) = ( .Math. k = 0 L - 1 g ( k ) z l ( k ) e - i 2 π p k L ) * = G l * ( p ) = G l ( p ) Eq . 11

    as custom-character(G.sub.l(p)))≈0.

    [0076] There is therefore a property of symmetry between the coefficient p of circular convolution G.sub.l and the coefficient (1−p) of circular convolution G.sub.P−l which may be exploited during the design of the filters implementing the circular convolutions to reduce the number of multipliers by a factor 2.

    [0077] Considering that the sequences G.sub.l can be implemented using real operators only and exploiting their symmetry properties, the number of processing required by OS/OSB-FBMC receivers may be decreased drastically. Theoretically, considering a number of coefficients C.sub.g=7, the complexity could be divided by at least a factor 4. However, these simplifications are difficult to integrate as such in the receiver, in particular as the simplifications related to the symmetrical property G.sub.l(p)=−G.sub.P−l(1−p) require a “cross-talk” between the various circular convolution units. The various embodiments of OS/OSB-FBMC receivers presented hereafter make possible to take advantage of both the transposed direct FIR filter architecture and of the properties of the sequences G.sub.l.

    [0078] To this end, the disclosure consists in a receiver configured to process an FBMC signal, as represented in FIG. 3a. The FBMC signal comprises FBMC symbols made of data mapped over M subcarriers, oversampled by a factor K, filtered by a prototype filter and transposed in the time-domain, as for instance an OQAM signal modulated by an FS-FBMC transmitter. The FBMC receiver comprises at least: [0079] a frequency domain transposition unit 101, configured to transpose a block of N=P*KM samples comprising at least one FBMC symbol into frequency domain samples, where P is an integer greater than one, as in FIGS. 1a, 1b and 1c. In the illustration example of FIG. 3, P=4; [0080] an equalizer unit 102 configured to multiply said frequency domain samples by N coefficients computed from a propagation channel estimate. The coefficients are estimated over well-known sequences or pilot samples, as it is known from the state of the art; [0081] a circular convolutions stage 301, comprising a plurality of Finite Impulse Response (FIR) filter units 311, 312, 313 configured to perform P circular convolutions between subsets of said equalized samples and a frequency domain response of a frequency shifted version of the prototype filter. The FIR filters as input one or more sets of samples X.sub.l and delivers one or more sets of samples Y.sub.l; [0082] adders 105, configured to sum corresponding outputs of each of the FIR filters.

    [0083] According to one embodiment, the adders are followed by a stage 106 of downsampling the samples by a factor K, when K>1. In that case, the summing stage 105 comprises L=KM adders, each adder having P inputs. The first adder adds together the first value of each of the Y.sub.l, the second adder adds together the second value adds together the second value of each of the Y.sub.l, and so on.

    [0084] According to an advantageous embodiment, the summing stage 105 and the downsampling stage 106 may be carried out simultaneously in a common stage. In that case, the adders only sum the samples of Y.sub.l that would not be discarded by a downsampling stage, that is to say M samples out of each set of Y.sub.l. In that case, the stage 106 of downsampling the corresponding outputs of summing stage 105 is no longer required.

    [0085] The FIR filters computing the circular convolutions stage in an FBMC receiver according to the disclosure have an architecture that depends on the index l of the set of samples X.sub.l they process.

    [0086] First Fir Filter: l=0

    [0087] The FIR filter unit 311, used to process the set of samples X.sub.0 (that is to say samples X(0), X(P), X(2P), . . . , X(P(L−1))), may be implemented in any manner, for instance using the direct-form implementation of FIG. 2a, or the transposed direct implementation of FIG. 2b.

    [0088] Such a filter has C.sub.g taps, which are symmetrical around the center coefficient. Therefore, multiplier resources may be advantageously shared between pairs of taps.

    [0089] FIG. 3b represents a FIR structure implementing circular convolution indexed 0 in an illustrative embodiment of an OS/OSB-FBMC receiver according to the disclosure. The FIR is of a direct transposed structure, and multipliers are shared between taps G.sub.0(p) and G.sub.0(−p), with p∈custom-character1,Δcustom-character, as for instance for taps 331 and 337, which both implement the multiplier coefficient G.sub.0(Δ), taps 332 and 336 implementing the multiplier coefficient G.sub.0(Δ−1), or taps 333 and 335 implementing the multiplier coefficient G.sub.0(1).

    [0090] As in the transposed direct structure the same sample is input to each tap, two taps sharing a same multiplier coefficient may be implemented by a single multiplier resource, saving thus C.sub.g−1/2 multipliers. In addition, using a direct transposed FIR structure makes possible to implement the filter through a network of constant multipliers, as previously described.

    [0091] Second Fir Filter: l=P/2

    [0092] When P is even, FIR filter 311 processing the set of samples X.sub.P/2 may be implemented through a transposed direct filter having C.sub.g multipliers which coefficients are given by G.sub.P/2, as the FIR filter of FIG. 2b. However, this implementation may be further improved.

    [0093] Indeed, Eq. 11 as demonstrated that G.sub.P/2(p)=−G.sub.P/2(1−p). In particular, with

    [00026] Δ = C g - 1 2 , G P / 2 ( - Δ ) = - G P / 2 ( Δ + 1 ) .

    Since all the coefficients having an index superior to Δ are considered as non-significant, G.sub.P/2(−Δ) can be set to zero, and one multiplier may be removed from the filter. Therefore, the output of the convolution stage numbered P/2 now becomes:

    [00027] Y P / 2 ( m ) = .Math. p = - Δ Δ G P / 2 ( p ) X P / 2 ( m - p ) , Eq . 12

    with

    [00028] G P / 2 ( p ) = { 0 , p = - Δ , - G P / 2 ( 1 - p ) , p - Δ + 1 , 0 , G P / 2 ( p ) , p 1 , Δ . Eq . 13

    [0094] FIG. 4a represents a FIR structure implementing the circular convolution indexed P/2 in an exemplary embodiment of an OS/OSB-FBMC receiver according to the disclosure. Depending on the implementation, the FIR filter may comprise C.sub.g taps or C.sub.g−1 taps, as the first tap corresponding to p=−Δ can be removed, as indicated in Eq. 13. Therefore, the FIR filter may be implemented in the form of a FIR filter where the Δ last taps 403 to 404, corresponding to p∈custom-character1custom-character in Eq. 13, have multiplier coefficients equal to G.sub.P/2(p). The Δ taps 401 to 402, corresponding to p∈custom-character−Δ+1,0custom-character in Eq. 13, have multiplier coefficients equal to −G.sub.P/2(1−p).

    [0095] By implementing this equation into a transposed direct FIR structure, it appears that the multiplier resources of taps corresponding to p∈custom-character−Δ+1,0custom-character can be shared with the multiplier resources of taps corresponding to p∈custom-character1,Δcustom-character through small adjustments of the filter design, as those sets of coefficients are symmetrical in absolute value around the imaginary axis 405 and have the same input. The number of multipliers of the structure can therefore be reduced by half.

    [0096] The FIR structure may further comprise an additional shift register 406 configured to delay the input samples by one clock-cycle in order to guarantee an equal processing time in all the filters of the circular convolutions stage. Indeed, the second FIR filter (processing the circular convolution l=P/2) has one tap less than the first FIR filter (processing the circular convolution l=0). Consequently, there will be a difference of one clock-cycle between the moments where the outputs of the filters are available. If this may have no consequence for a software implementation or for a hardware implementation where the processing is chained, this can have one in a hardware implementation where the processing is performed in parallel. However, other methods exist to guarantee the right timing, as for instance inserting the shift register at the output of the second FIR filter, or supervising the timing between the different FIR filters from a dedicated control unit. Therefore, the shift register 406 is only optional and depends on implementation choices.

    [0097] In an advantageous embodiment represented in FIG. 4b, a logical inverter 410, or any means configured to change the sign of the output of the multiplier, is added to taps 401 to 402. That way, the coefficients used by the multipliers of taps 401-402 corresponding to p∈custom-character−Δ+1,0custom-character are equal to the multipliers of taps 403-404 (1−p). The multiplier coefficients are then symmetrical around the imaginary axis 405. The resources used to perform the multiplications into these C.sub.g−1 taps can therefore be shared by pairs of taps. For instance, in the illustration of FIG. 4b, the multipliers of tap 401 and tap 404 having a same input and a same multiplier coefficient G.sub.P/2(Δ) can be implemented through a single multiplier resource.

    [0098] In another advantageous embodiment represented in FIG. 4c, an inverter 410 is implemented within the first tap, and subtractors are implemented instead of adders in taps −Δ+2 to 0. The multiplier coefficients are then two by two symmetrical around imaginary axis 405, and can be shared between pairs of taps.

    [0099] Whereas a straightforward implementation of the circular convolution processing samples X.sub.P/2 with complex multipliers would have required 4C.sub.g multipliers, the FIR structure described in FIG. 4a only requires C.sub.g−1 real multipliers. Using now the architecture of FIG. 4b or 4c, where the multipliers are shared and therefore reduced by a factor two, the number of multipliers required to perform this circular convolution is of

    [00029] C g - 1 2 .

    In addition, as all taps of a transposed direct FIR structure input the same sample, the FIR may be implemented using a network of constant value multipliers where the multipliers are implemented through adders and shift registers only and massively shared.

    [0100] Other Fir Filters

    [0101] The approach concerning the remaining circular convolutions is different since they are inter-dependent (FIR filter unit processing samples X.sub.l has some symmetry properties with the FIR filter unit processing samples X.sub.P−l). To efficiently reduce their complexity, a relation between the outputs of the circular convolutions must be exploited, which can be found in the summation stage 105 that follows the circular convolutions stage.

    [0102] The output of the summation stage 105 Y(m) can be expressed as:

    [00030] Y ( m ) = .Math. l = 0 P - 1 Y l ( m ) = Y 0 ( m ) + Y P / 2 ( m ) + .Math. l = 0 P 2 - 1 Y l ( m ) + .Math. l = P 2 + 1 P - 1 Y l ( m ) . Eq . 14

    [0103] The first two terms correspond to the output of the first FIR filter (l=0) and the second FIR filter (l=P/2), and have been discussed above. The last term can be rewritten as follows:

    [00031] .Math. l = P 2 + 1 P - 1 Y l ( m ) = .Math. l = 1 P 2 - 1 Y P - l ( m ) , Eq . 15

    and the output of the summation stage becomes:

    [00032] Y ( m ) = .Math. l = 0 P - 1 Y l ( m ) = Y 0 ( m ) + Y P / 2 ( m ) + .Math. l = 0 P - 1 ( Y l ( m ) + Y P - l ( m ) ) . Eq . 16

    [0104] In what follows, Y.sub.l(m)+Y.sub.P−l(m) is refered as a “partial sum”. Partial sum V.sub.l=Y.sub.l(m)+Y.sub.P−l(m) sums the outputs of circular convolutions which have some inter-dependent properties, as demonstrated in Eq. 11. V.sub.l can be expressed as follows:

    [00033] V l ( m ) = .Math. p = - Δ Δ G l ( p ) X l ( m - p ) + .Math. p = - Δ Δ G P - l ( p ) X P - l ( m - p ) . Eq . 17

    [0105] Since G.sub.l(−Δ)=−G.sub.P−l(Δ+1), G.sub.l(−Δ) may be set to zero as all the coefficients having an index superior to Δ are considered non-significants.

    [0106] Exploiting the property of symmetry G.sub.P−l(p)=−G.sub.l(1−p), the output of the partial sum can be rewritten as:

    [00034] V l ( m ) = .Math. p = - Δ Δ G l ( p ) X l ( m - p ) - .Math. p = - Δ Δ G l ( p ) X P - l ( m - p ) . Eq . 18

    with:

    [00035] G l ( p ) = { 0 , p = - Δ , G l ( 1 - p ) , p - Δ + 1 , Δ Eq . 19

    [0107] The above equation can be implemented using two FIR filters, each filter having C.sub.g or C.sub.g−1 taps, but such an implementation would not allow the sharing of multipliers, and would therefore be suboptimal.

    [0108] It would be possible to exploit the properties of symmetry by using one direct-form FIR structure, as the one of FIG. 2a, taking as inputs a combination of X.sub.l and X.sub.P−l, and using the coefficients G.sub.l as FIR coefficients. This way, the factorization of multipliers would be possible. However, such structure cannot be implemented through a network of constant multiplier, and is therefore not optimal to reduce the complexity related to the multiplications.

    [0109] Exploiting the symmetrical properties is however more challenging when considering the transposed direct FIR structure. Indeed, the taps of each FIR process the same input but the two FIRs of the partial sum have different inputs (X.sub.l and X.sub.P−l). Therefore, the networks of constant multipliers only apply to one FIR, and it is not possible to share resources between different FIR filter although they have the same set of coefficients. As there is no symmetrical relation in a given FIR filter, the FIR structure proposed for the convolution stage l=P/2 cannot be applied in this configuration.

    [0110] The disclosure proposes a solution to this problem. Indeed, it can be shown that resource sharing is possible in the transposed direct FIR structure if the FIR coefficients uses other coefficients than coefficients G.sub.l. To this end, Eq. 18 is rewritten as:

    [00036] 2 V l ( m ) = .Math. p = - Δ Δ ( G l ( p ) + G l ( p ) + G l ( p ) - G l ( p ) ) X l ( m - p ) - .Math. p = - Δ Δ ( G l ( p ) + G l ( p ) + G l ( p ) - G l ( p ) ) X P - l ( m - p ) Eq . 20

    [0111] With S.sub.l=G.sub.l(p)+G′.sub.l(p) and R.sub.l=G.sub.l(p)−G′.sub.l(p), then:

    [00037] 2 V l ( m ) = .Math. p = - Δ Δ S l ( p ) ( X l ( m - p ) - X P - l ( m - p ) ) + .Math. p = - Δ Δ R l ( p ) ( X l ( m - p ) + X P - l ( m - p ) ) . Eq . 21

    [0112] The two circular convolutions of Eq. 21 respectively use S.sub.l and R.sub.l as coefficients, and can both be implemented by using a direct-form or transposed direct FIR structure of C.sub.g taps taking respectively X.sub.l−X.sub.P−l and X.sub.l+X.sub.P−l as input samples. However, the symmetrical relation between S.sub.l and R.sub.l no longer exist: S.sub.l(p)≠R.sub.l(p) for any p∈custom-character−Δ+1,Δcustom-character. Instead, the symmetrical relation is similar to the one in the convolution stage indexed=P/2. Indeed, S.sub.l(−Δ)≈0 since G.sub.l(−Δ)=G′.sub.l(−Δ)=0, and for p∈custom-character−Δ+1,Δcustom-character:


    S.sub.l(p)=G.sub.l(p)+G.sub.l(1−p)=S.sub.l(1−p)   Eq. 22


    R.sub.l(p)=G.sub.l(p)−G.sub.l(1−p)=−R.sub.l(1−p)   Eq. 23

    [0113] FIG. 5 is partial summation unit 500 to be used in an embodiment of an OS/OSB-FBMC receiver according to the disclosure when P>2, used to perform the circular convolutions indexed l and (P−l), with l∈custom-character1,P/2−1custom-character.

    [0114] In this architecture, a first FIR sub-filter unit 501 having coefficients S.sub.l and a second FIR sub-filter unit 502 having coefficients Q.sub.l are arranged in parallel. One or more calculation units, as for instance subtractor 510 and adder 511, respectively calculate the set of samples X.sub.l−X.sub.P−l, which is input to the first FIR sub-filter, and X.sub.l+X.sub.P−l, which is input to the second FIR sub-filter. The output of each FIR sub-filter is connected to an adder, and followed by a factor 2 divider. Such a divider can be efficiently implemented by discarding the least significant bit of the partial sum output, which is a known technique to the skilled engineer.

    [0115] In the partial summation unit, the properties of symmetry of the second FIR sub-filter 502, having multiplier coefficients R.sub.l, are exactly the same as those of the FIR filter implementing circular convolution P/2. The transposed direct FIR architecture of the circular convolution stage indexed P/2, presented in FIGS. 4a to 4c, can therefore be used to implement Eq. 23, only replacing the multiplier coefficients G.sub.P/2 by R.sub.l.

    [0116] For the first FIR sub-filter 501, having multiplier coefficients S.sub.l, the difference with the FIR structure presented in FIGS. 4a to 4c only lies in a sign change. Therefore, the transposed FIR architecture used for the convolution stage index P/2 and presented in FIGS. 4a to 4c can be used if adjusted to: [0117] not invert the sign of the output of the multiplication in the first FIR taps, and [0118] use multiplier coefficients S.sub.l instead of G.sub.P/2.

    [0119] FIG. 6 represents a FIR sub-filter structure that may be used to implement the first

    [0120] FIR sub-filter of a partial summation unit in an embodiment of an OS/OSB-FBMC receiver according to the disclosure, in order to compute the first part of the circular convolution described in Eq. 21.

    [0121] As for the FIR filters of FIGS. 4a to 4c, the first tap of the filter, corresponding to p=−Δ, can be advantageously removed. Therefore, the first FIR filter may be implemented in the form of a filter having only C.sub.g−1 coefficients. However, when relevant, a shift register 606 may be implemented over the input or output samples, so that the filter has the same timing as the other filters of the circular convolutions stage.

    [0122] The Δ last taps 603 to 604, corresponding to p∈custom-character1,Δcustom-character, have multiplier coefficients equal to S.sub.l(p), while the Δ taps 601 to 602, corresponding to p∈custom-character−Δ+1,0custom-character, have multiplier coefficients equal to S.sub.l(1−p), with S.sub.l(1−p)=S.sub.l(p).

    [0123] By implementing this equation into a transposed direct FIR structure, it appears that the multiplier resources implemented to compute the taps corresponding to p∈custom-character−Δ+1,0custom-character can be shared by pairs with those of taps corresponding to (1−p), as they show some symmetry around the imaginary axis 605. The number of multipliers of the structure can therefore be reduced by a factor two.

    [0124] Obviously, this FIR structure is prone to be implemented considering that the multipliers are real operators, and using a network of constant values multipliers, where the multipliers are implemented through adders and shift registers only, and massively reused.

    [0125] The partial summation unit according to the invention significantly reduces the implementation complexity of the OS/OSB-FBMC receiver. Indeed, a straightforward implementation of the circular convolutions stage processing the set of samples X.sub.l and X.sub.P−l would need two FIR filters, each of them having C.sub.g complex multipliers, for a total cost of 2*4*C.sub.g multipliers.

    [0126] In the partial summation unit according to the disclosure, using the architecture of FIG. 6 to implement the FIR sub-filter having coefficients P.sub.l and the architecture of FIGS. 4b or 4c to implement the FIR sub-filter having coefficients R.sub.l and where the multipliers resources are shared by pairs of taps and real, the total cost is of

    [00038] C g - 1 2 + C g - 1 2 = C g - 1

    multipliers. In addition, as both FIR sub-filters use a transposed direct structure, the multipliers can be implemented by way of networks of constant valued multipliers, where they are replaced by adders and shifters, which is far less expensive to implement.

    [0127] In brief, in an OS/OSB-FBMC receiver according to the disclosure, the stage of circular convolutions of the receiver is replaced by a bench of FIR filters disposed in parallel. FIG. 7 represents such a bank of FIR filters. It comprises a first FIR filter 701 of a size C.sub.g, to process samples X.sub.0 through the set of coefficients G.sub.0. This FIR filter can be implemented in a transposed direct form only using

    [00039] C g + 1 2

    multiplier resources, as the multiplier coefficients of the taps are symmetrical around the central tap, as shown in FIG. 3b.

    [0128] When P is even, it also comprises a second FIR filter 702, processing set of samples) X.sub.P/2. This FIR filter is implemented according to any of the embodiments presented in FIG. 4a to 4c, using the set of multiplier coefficients G.sub.P/2. This filter is of a size C.sub.g but the first tap can be removed as the value of its multiplier coefficient is about zero. In addition, according to the embodiments of FIGS. 4b to 4c, the multiplier coefficients of the first half of the remaining taps are symmetrical (in absolute value) with the multipliers coefficients of the second half of the remaining taps. As all the taps process the same input sample, the taps can thus be regrouped by pairs of taps using a same multiplier coefficient, and the physical/logical resource implementing the multiplications shared between two taps.

    [0129] When P=2, the circular convolutions stage of the receiver only comprises these first and second FIR filter units.

    [0130] When P>2, P being even, the circular convolutions stage of the receiver according to an embodiment of the invention comprises: [0131] a first FIR filter as of the one of FIG. 3b, [0132] a second FIR filter as the one of FIGS. 4a to 4c, and [0133] up to

    [00040] P - 2 2

    partial summation units as of partial summation units 703, 704 and 705 of FIG. 7. Each of the partial summation unit takes as input the set of samples X.sub.l and X.sub.P−l, with l∈custom-character1,P/2−1custom-character, and provides as output a set of samples equal to Y.sub.l+Y.sub.P−l.

    [0134] The partial summation units comprise means to calculate the values X.sub.l+X.sub.P−l and X.sub.l−X.sub.P−l, and two FIR sub-filter units, one filtering X.sub.l−X.sub.P−l with a set of coefficients S.sub.l with S.sub.l(p)=G.sub.l(p)+G.sub.l(1−p), and one filtering X.sub.l+X.sub.P−l with a set of coefficients R.sub.l with R(p)=G.sub.l(p)−G.sub.l(1−p). The outputs of the two sub-filters are summed and divided by two. The two sub-filters have C.sub.g multiplier coefficients, but the first tap of each sub-filter can be removed. In addition, the sub-filter having the coefficients R.sub.l may be implemented according to the embodiments of FIGS. 4b to 4c, while the sub-filter having the coefficients S.sub.l may be implemented according to the embodiment of FIG. 6. Thus, the taps of each of the two sub-filters can be regrouped by pairs of taps sharing a common multiplier resource.

    [0135] When P>2, P being odd, the circular convolutions stage of the receiver according to an embodiment of the invention comprises: [0136] a first FIR filter as of the one of FIG. 3b, [0137] up to

    [00041] P - 1 2

    partial summation units, as or partial summation units 703, 704 and 705 of FIG. 7. Each of the partial summation unit takes as input the set of samples X.sub.l and X.sub.P−l, with l∈custom-character1,P/2−1custom-character, and provides as output a set of samples which is equal to Y.sub.l+Y.sub.P−l.

    [0138] Corresponding outputs of the first FIR filter, second FIR filter when relevant, and partial summation units, are summed by adders 105. This stage is followed by a downsampling stage, to downsample the signal by a factor K. However, the stage of adding the outputs and the downsampling stage may advantageously be performed jointly by only adding samples that would not be rejected by the downsampler. The downsampled signal is then processed by an OQAM demapper 107.

    [0139] The disclosure further concerns a method to perform a stage of circular convolutions in an OS/OSB-FBMC receiver. The stage comprises P circular convolutions operated between subsets of input samples and frequency domain responses of a frequency shifted version of a prototype filter associated to an FBMC modulation, the frequency shifted version of the prototype filter having C.sub.g coefficients. The method comprises at least the filtering of a subset of samples that are input to the circular convolutions stage by a filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ with

    [00042] Δ = C g - 1 2 ,

    wherein the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character has an equal absolute value to the multiplier coefficient of taps (1−p).

    [0140] According to an embodiment, the method comprises the filtering of a subset of samples X.sub.0=[X(0),X(0+P), X(2P), . . . , X((KM−1)P)] that are input to the circular convolutions stage by a transposed direct FIR filter having C.sub.g taps numbered p=−Δ to p=Δ, the multiplier coefficient of each tap p within the set of taps custom-character−Δ,−1custom-character being equal to the multiplier coefficient of tap (−p). This step corresponds to the computation of circular convolution 701 of FIG. 7.

    [0141] While in a hardware implementation, the choice of a direct form or a transposed direct form to implement the FIR filters implies specific arrangements of the taps (in the transposed direct structure, shift registers are positioned after the multiplication within the taps), in a software implementation, it as consequences on the way data are memorized. In a direct-form FIR structure, samples that are input to the FIR filters are successively stored in memory, while in the transposed-direct FIR structure, that is the output of the multiplications that are successively stored in memory.

    [0142] According to various embodiments of the invention, the method may comprise: [0143] a step of filtering of a subset of samples X.sub.P/2=[X(P/2),X(P/2+P),X(P/2+2P), . . . , X(P/2+(KM−1)P)] that are input to the circular convolutions stage by a transposed direct FIR filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ, the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character having an opposite value to the multiplier coefficient of tap (1−p). This step occurs when an integer P corresponding to a number of circular convolution to operate in the convolution stage, is even. This step corresponds to the computation of circular convolution 702 of FIG. 7; [0144] a step of filtering a first and a second subset of samples that are input to the circular convolutions stage (X.sub.l=[X(l),X(l+P), X (l+2P), . . . , X(l+(KM−1)P)] and X.sub.P−l=[X(P−l), X(P−l+P), X(P−l+2P), . . . , X(P−l+(KM−1)P)]) by two transposed direct FIR filter, which comprises: [0145] calculating a set of samples equal to X.sub.l−X.sub.P−l and a set of samples equal to X.sub.l+X.sub.P−l, [0146] filtering the set of samples X.sub.l−X.sub.P−l with a first FIR sub-filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ taking as input samples corresponding to the set of samples X.sub.l−X.sub.P−l, wherein the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character has an equal value to the multiplier coefficient of tap (1−p), [0147] filtering the set of samples X.sub.l+X.sub.P−l with a second FIR sub-filter having at least C.sub.g−1 taps numbered p=−Δ+1 to p=Δ taking as input samples X.sub.l+X.sub.P−l, wherein the multiplier coefficient of each tap p within the set of taps custom-character−Δ+1;0custom-character has an opposite value to the multiplier coefficient of tap (1−p), and [0148] calculating the sum of corresponding outputs of the first and second FIR sub-filters, and dividing the result by a factor two.
    This step corresponds to the partial summation 703 to 705 of FIG. 7, and is performed a number of times corresponding to P−2/2 when P is even, or P−1/2 when P is odd.

    [0149] The disclosure also concerns a method to demodulate and equalize an FBMC signal in a receiver, the method comprising at least a step of performing a stage of circular convolutions as described here above.

    [0150] The OS/OSB-FBMC receiver according to the disclosure may be embedded in a receiver having an RF chain in charge of receiving an FBMC signal over one or more antennas, and converting the signal to an intermediate frequency or to baseband. The signal is then processed by an OS/OSB-FBMC receiver according to the disclosure, and transmitted to a unit in charge of computing the subsequent algorithms required to receive the data transmitted, as for instance the OQAM demapping, error decoding, and/or the functions of the OSI layers located above the PHY layer. The OS/OSB-FBMC receiver according to the disclosure is compatible with the embodiment of FIG. 1c, wherein subcarriers are allocated to multiple users. In that case, the stage of FIR filtering 301 according to the disclosure may be implemented for each user.

    [0151] The OS/OSB-FBMC receiver according to the disclosure may also be embedded in a standalone device configured to take as input an intermediate frequency or baseband signal, and to provide an equalized and demodulated signal to another reception device, in charge of the subsequent algorithms.

    [0152] The disclosure concerns both a unit performing a stage of circular convolutions, an equalization and demodulation unit comprising the stage of circular convolutions, and an OS/OSB-FBMC receiver as a whole.

    [0153] The implementation improvements disclosed in the OS/OSB-FBMC receiver according to the disclosure is particularly well adapted for an hardware implementation over a hardware platform like a FPGA, or an ASIC, wherein the multipliers units shared in a FIR filter/sub-filter are dedicated hardware units and parallelized. However, the various improvements described may also be used to generate an efficient software implementation of a method for receiving an FBMC signal over a software reprogrammable calculation machine, like a microprocessor, a microcontroller, a DSP, or a graphic processing unit (GPU), or any other appropriate equipment, wherein the software code takes into account the structure of the FIR filters/sub-filters, in particular the shared multiplier resources, to reduce the number of operations required to compute the software FIR filtering. In that case, the shared multiplication resource corresponds to a single calculation, which output is used two compute two corresponding taps of the FIR filter/sub-filter.

    [0154] The OS/OSB-FBMC receiver according to the disclosure may therefore be implemented by means of computer-application programs or services, as an application-programming interface (API), a library, and/or other computer-program product, or any combination of such entities.

    [0155] The subject matter of the present disclosure includes all novel and non-obvious combinations and sub-combinations of the various processes, systems and configurations, and other features, functions, acts, and/or properties disclosed herein, as well as any and all equivalents thereof. In particular, it includes all OS/OSB-FBMC receiver mixing FIR filters as described previously with regular FIR filters, as for instance a circular convolutions stage 301 for P=2 comprising a FIR unit as described in FIGS. 4a to 4c processing the set of samples X.sub.P/2, and a direct form FIR unit processing the set of samples X.sub.0. Such an implementation would be obvious for the skilled person seeking to circumvent the protection sought in view of the above description.

    [0156] It would also be obvious for the skilled person based on the current disclosure to add extra taps to the FIR filters implementing the circular convolutions stage, as for instance the stage corresponding to tap p=Δ which, as it was demonstrated above, can be advantageously removed.

    [0157] While embodiments of the invention have been illustrated by a description of various examples, and while these embodiments have been described in considerable details, it is not the intent of the applicant to restrict or in any way limit the scope of the appended claims to such details. The invention in its broader aspects is therefore not limited to the specific details, representative methods, and illustrative examples shown and described.