Next Article in Journal
A New Double-Layer Decentralized Consistency Algorithm for the Multi-Satellite Autonomous Mission Allocation Based on a Block-Chain
Next Article in Special Issue
Towards an Evolved Immersive Experience: Exploring 5G- and Beyond-Enabled Ultra-Low-Latency Communications for Augmented and Virtual Reality
Previous Article in Journal
Improved Monitoring of Wildlife Invasion through Data Augmentation by Extract–Append of a Segmented Entity
Previous Article in Special Issue
MiniDeep: A Standalone AI-Edge Platform with a Deep Learning-Based MINI-PC and AI-QSR System
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Modulated Wideband Converter Model Based on Linear Algebra and Its Application to Fast Calibration

Université de Bretagne Occidentale, Lab-STICC, CNRS, UMR 6285, 6 Avenue Le Gorgeu, 29200 Brest, France
*
Author to whom correspondence should be addressed.
Submission received: 28 July 2022 / Revised: 12 September 2022 / Accepted: 22 September 2022 / Published: 28 September 2022
(This article belongs to the Special Issue Advanced Wireless Sensing Techniques for Communication)

Abstract

:
In the context of cognitive radio, smart cities and Internet-of-Things, the need for advanced radio spectrum monitoring becomes crucial. However, surveillance of a wide frequency band without using extremely expensive high sampling rate devices is a challenging task. The recent development of compressed sampling approaches offers a promising solution to these problems. In this context, the Modulated Wideband Converter (MWC), a blind sub-Nyquist sampling system, is probably the most realistic approach and was successfully validated in real-world conditions. The MWC can be realized with existing analog components, and there exist calibration methods that are able to integrate the imperfections of the mixers, filters and ADCs, hence allowing its use in the real world. The MWC underlying model is based on signal processing concepts such as filtering, modulation, Fourier series decomposition, oversampling and undersampling, spectrum aliasing, and so on, as well as in-flow data processing. In this paper, we develop an MWC model that is entirely based on linear algebra, matrix theory and block processing. We show that this approach has many interests: straightforward translation of mathematical equations into simple and efficient software programming, suppression of some constraints of the initial model, and providing a basis for the development of an extremely fast system calibration method. With a typical MWC acquisition device, we obtained a speed-up of the calibration computation time by a factor greater than 20 compared with a previous implementation.

1. Introduction

Digital wireless radio signals are often composed of a small number of narrow-band transmissions spread across a wide spectrum range. For example, the Internet-of-Things (IoT) communications have recently emerged in contexts such as smart cities. Cognitive radios are able to manage the spectrum dynamically but require advanced sensing techniques for spectrum monitoring.
Basically, spectrum monitoring is based on the Shannon–Nyquist sampling theorem [1,2]. This theorem states that the signal must be sampled at a rate greater than its Nyquist frequency, which is twice its frequency band. However, when we have to monitor a large frequency band, this requirement can exceed the capabilities of existing Analog to Digital Converters (ADC) or require very expensive components. Furthermore, sampling at a very high rate may require huge storage capacities to store the digital samples.
Recently, new approaches have been proposed allowing sampling at sub-Nyquist rates. These approaches, known as compressed sensing, or compressive sampling [3], have emerged as a promising framework for signal acquisition in difficult applications, such as monitoring a wideband spectrum [4]. The basic idea of compressed sampling is to take advantage of the fact that a signal that has a sparse representation on a given basis can theoretically be recovered from a small set of linear measurements [5,6]. The price to pay is the need to develop sophisticated signal processing algorithms to reconstruct the signal from this small set of measurements, these algorithms being much more complex than the usual demodulators.
A great deal of the theoretical aspects of compressed sampling has been addressed in the literature. For example, many studies have been proposed in relation to the design of the measurement scheme as in [7,8]. However, few studies have considered the practical limitations of compressed acquisition. In fact, designing measurement schemes and applying them to practical acquisition systems remains a significant challenge.
In this context, the Modulated Wideband Converter (MWC) has been proposed as an efficient system for real-world compressed sampling [9]. The MWC does sub-Nyquist sampling without prior information about the spectral support of the transmitters present in the monitored wideband. It can be realized with existing devices [10] and has been successfully tested on real-world problems, including surveillance of a wideband spectrum [11].
A few real-world compressed sensing acquisition systems have already been proposed [11,12,13,14,15,16,17,18]. An analog circuit board with discrete components was designed by us to prototype compressed sensing based on the MWC principle [19].
A necessary step when using MWC in real-world conditions is the calibration of the acquisition system. Indeed, analog components are never ideal, especially when fed with wideband signals. Then, using a purely theoretical model leads to extremely poor performances of signal reconstruction. An efficient calibration method, which is considered a reference, has been proposed in [13]. It consists of estimating the sensing matrix column after column by injecting sine waves at a specific frequency and recording the corresponding output signals. The procedure is repeated by changing the input frequency until all columns are estimated. Some researchers have exploited this work to calibrate their systems or to propose variants of the calibration algorithms [18,20,21,22,23]. While this procedure is efficient, it can be time-consuming because the number of columns to estimate is usually at least a few dozen. That is why a few authors [24,25], including us [19], have recently proposed alternative calibration algorithms requiring only one input signal.
The MWC theoretical background is signal processing theory (filters, modulation, Fourier series, sampling theory, spectrum aliasing, etc.). Most signal processing theoretical tools are asymptotic. However, when signals are processed in real-world conditions, they are always finite; thus, block processing and purely matrix-based algorithms may be more natural and efficient.
Moreover, a quick look at the literature shows that most people use Matrix-based programming tools, such as Octave or Matlab, for signal processing in this context, but without really exploiting the power of these tools. To take full advantage of the power of Matrix-oriented software, it would then be preferable to process data by blocks instead of in-flow. It is, therefore, interesting to view the whole MWC acquisition and reconstruction in terms of block processing. The most natural framework to achieve this objective is matrix theory and linear algebra.
In this paper, we elaborate on an MWC model using linear algebra only (without any signal processing theory). While this approach will probably appear less intuitive than the approach based on signal processing, because most people are less familiar with linear algebra than with signal processing, it has strong advantages:
  • Once the model is established, programming it becomes extremely simple, straightforward and efficient.
  • Furthermore, computational complexity is significantly reduced.
  • The border effects are implicitly taken into account in the model. Indeed, using a signal processing model, people have to deal with the fact that the signals processed in the real world are not infinite, while when using a linear algebra model, the finite nature of the data is implicitly taken into account and the mathematical equations are exact and not approximate.
  • In the original version of the MWC, the number of physical branches is increased by a factor q, which must be an odd integer due to signal processing considerations. An interesting aspect of the linear algebra model is that it allows even integers for q.
The main contributions of this paper are:
  • The development of a pure linear-algebra model of the MWC. Despite the fact that establishing this model is rather hard because it requires non-trivial matrix manipulations, once established, it is extremely simple and allows programming MWC-related software, such as calibration, in a very fast, compact and efficient way.
  • Its application to the development of a very fast calibration method. With typical choices of parameters, the calibration is more than 20 times faster than our previous method (this previous method being itself very fast compared to a reference method because it required only one calibration signal instead of dozens of sinusoidal signals in the reference method).
The remainder of this paper is organized as follows: Section 2 provides the main mathematical tools used in the paper. Then, Section 3 presents an overview of our hardware acquisition board and the MWC principle. Section 4 establishes a system model based on linear algebra, and an equivalent model, useful for signal reconstruction and system calibration, is then derived in Section 5. In Section 6, we show how this model allows us to considerably improve a calibration method that we proposed previously, leading to speeding up the process by a factor greater than 20. Then, some experimental results are shown in Section 7.

2. Mathematical Background

2.1. Notations

Unless otherwise stated, lowercase symbols denote row vectors (e.g., x, p), uppercase symbols denote matrices (e.g., C, Z), x ¯ stands for the DFT (Discrete Fourier Transform) of x. The symbols N , K , L , a , b will be used to denote the size of vectors or matrices.
We will denote D x as the square diagonal matrix whose diagonal is vector x.
The vectorization of a K × L matrix Q, denoted v e c ( Q ) , is the 1 × K L row vector obtained by reading the matrix row after row, from top to bottom:
v e c ( Q ) = q 11 q 1 L q 21 q 2 L q K 1 q K L
M * stands for the Hermitian transpose of matrix M .
I K stands for the K × K identity matrix.
The nearest lower or equal integer will be noted   and the nearest greater or equal integer   .

2.2. Circulant Matrices

Let x be a 1 × N row vector. A circulant matrix C x is a square matrix whose first row is x and each next row is a circular shift one element to the right of the preceding row. That is:
C x = x o x 1 x 2 x N 1 x N 1 x 0 x 1 x N 2 x N 2 x N 1 x 0 x N 3 x 1 x 2 x 3 x 0
It is convenient to define the cyclic permutation matrix as the N × N matrix below:
J N = 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0
Then, C x is a polynomial in J N :
C x = n = 0 N 1 x n J N n
The effect of multiplication of a matrix M by J N is as follows. The rows of M J N are the rows of M circularly shifted one element to the right. The columns of J N M are the columns of M circularly shifted one element to the top.
Matrices J N and C x commute:
J N C x = C x J N
because
J N C x = J N n = 0 N 1 x n J N n
= n = 0 N 1 x n J N n + 1
= n = 0 N 1 x n J N n J N
= C x J N

2.3. Discrete Fourier Transform (DFT)

Let us note ω the N t h square root of unity below:
ω = exp i 2 π N
The DFT matrix F N is an N × N square symmetric matrix whose element at row l column k is ω l k (assuming row 0 is the first row, and column 0 the first column):
F N = 1 1 1 1 1 ω ω 2 ω N 1 1 ω 2 ω 4 ω 2 ( N 1 ) 1 ω N 1 ω 2 ( N 1 ) ω ( N 1 ) 2
The inverse DFT matrix is
F N 1 = 1 N F N *
The DFT of a vector x is
x ¯ = x F N
and the inverse DFT (IDFT) is given by x ¯ F N 1 .
A circulant matrix is diagonalized by the DFT matrix. That is
C x = F N D x ¯ F N 1
It follows that the elements of x ¯ are the eigenvalues of C x and the columns of F N 1 are the eigenvectors.
We also have
D x ¯ = F N 1 C x F N
and
1 N C x ¯ = F N 1 D x F N .

2.4. Kronecker Product

The Kronecker product is a bilinear matrix operation, denoted by ⊗. If A is a K × L matrix and B is a M × N matrix, it produces the K M × L N block matrix C below:
C = A B = a 11 B a 1 L B a K 1 B a K L B
A useful property about the inverse is:
A B 1 = A 1 B 1
Assuming the sizes are such that one can form the matrix products A C and B D , an interesting property, known as the mixed-product property, is:
( A B ) ( C D ) = ( A C ) ( B D )
The product is not commutative, but there exist permutation matrices (shuffle matrices) such that if A is an a × a square matrix and B a b × b square matrix, then [26]:
A B = P a , b ( B A ) P b , a
Matrix P a , b represents the permutation obtained when elements, written row by row in an a × b matrix, are read column by column. For instance, set a = 2 and b = 3 , and write the elements 1 , 2 , 3 , 4 , 5 , 6 row by row in a a × b matrix
1 2 3 4 5 6
Reading column by column, we obtain 1 , 4 , 2 , 5 , 3 , 6 . The permutation matrix is then the matrix such that:
1 4 2 5 3 6 = 1 2 3 4 5 6 P 2 , 3
That is:
P 2 , 3 = 1 1 1 1 1 1
If N = K L , an interesting property with the permutation matrix defined in (3) is
J N K = J L I K .

2.5. General Radix Identity

If N is a composite number, i.e., N = K L , then [26]:
F N = ( F K I L ) T K , L ( I K F L ) P K , L
where T K , L is a diagonal matrix (twiddle matrix) and P K , L a permutation matrix (shuffle matrix defined in Section 2.4).
The twiddle matrix T K , L is an N × N diagonal matrix, the diagonal of which is v e c ( Q K , L ) with ω defined in Equation (10) and
Q K , L = 1 1 1 1 1 ω ω 2 ω L 1 1 ω 2 ω 4 ω 2 ( L 1 ) 1 ω K 1 ω 2 ( K 1 ) ω ( K 1 ) ( L 1 )
For instance, with K = 2 and L = 3 , we have
Q 2 , 3 = 1 1 1 1 e i π / 3 e 2 i π / 3
and the diagonal of T 2 , 3 is
d i a g ( T 2 , 3 ) = 1 1 1 1 e i π / 3 e 2 i π / 3
Let us note θ K and 1 K as the ( 1 × K ) vectors below
θ K = 1 1 1
1 K = 1 0 0
Note that for any 1 × L vector p, we have
( 1 K p ) T K , L = ( 1 K p )
because only the first L elements of 1 K p are non null, and the L first elements of T K , L are ones.
Note also that
( 1 K p ) P K , L = p 1 K
when elements of 1 K p are written row by row in a K × L matrix, the elements of p go on the first row and the K 1 next rows are null. Then, when this matrix is read column by column, we obtain elements of p separated by K 1 zeroes, that is, p 1 K
Similarly, it is easy to check that
T a , b 1 ( I a 1 b T ) = I a 1 b T
and
P a , b 1 ( I a θ b T ) = θ b T I a .

2.6. Selection Matrix

Let us define the selection matrix S N , K ( r ) as the N × K matrix below:
S N , K ( r ) = 0 r × K I K 0 ( N K r ) × K
If x = x 0 x N 1 is a 1 × N vector, then y = x S N , K ( r ) is the 1 × K vector below:
y = x r x r + K 1
We consider the indices modulo N, so r may be negative.

2.7. Moore–Penrose Pseudo-Inverse

Let us consider a rectangular matrix Z whose size is L × K with L K . The Moore–Penrose pseudo-inverse [27] of Z, denoted Z + , is a K × L matrix, which generalizes the concept of inverse and, among other interesting properties, provides a mean to compute a least squares solution to a system of linear equations that lacks an exact solution. The pseudo-inverse is defined and unique for all complex matrices. It is usually computed using the singular value decomposition (SVD).
Let us note the SVD of Z as [28]:
Z = U S V *
where U is a L × L unitary matrix (i.e., U U * = U * U = I ), V is a K × L matrix with orthonormal columns (i.e., V * V = I ) and S is a diagonal matrix whose diagonal elements are the singular values (non-negative real numbers, ranked by decreasing order). The SVD exists for all complex matrices.
Here we consider a version of the S V D usually called “thin-SVD”, which is a compact version of the more general S V D decomposition (in which matrices S and V are larger), because this compact version is sufficient for the purpose of computing the pseudo-inverse. The computational cost of computing the thin-SVD is 6 K L 2 + 20 L 3 flops ([28] p. 254). Note that for complex matrices, it is usual to redefine the floating point operation (flop) in order to count only one flop for the product of two complex numbers, while in reality it requires four real multiplications. Since only ratios between the computational costs of algorithms are of interest, applying this does not change the result.
The pseudo-inverse is given by:
Z + = V S + U *
where S + is the pseudo-inverse of S. It is a diagonal matrix in which the diagonal contains the inverses of the singular values of S, which are above a small tolerance value, and 0 elsewhere.
The cost of the inversion plus the computation of the matrix product is 2 L + K L 2 K L 2 .
Overall, the cost of computing the pseudo-inverse is 7 K L 2 + 20 L 3 .

3. Acquisition Device and System Parameters

The MWC is a compressed sampling device that samples a signal x ( t ) at a sampling frequency F s significantly lower than its Nyquist frequency F n y q . The input signal is assumed sparse in the frequency domain. From the outputs of this acquisition device, one can reconstruct the input signal using a compressed sensing algorithm, such as Orthogonal Matching Pursuit (OMP) [29].
The principle of the MWC is shown in Figure 1:
  • The input signal x ( t ) is multiplied (using a mixer) by a scrambling signal s ( t ) .
  • The resulting signal v ( t ) goes through a low-pass filter whose impulse response is h ( t ) .
  • Then, the filter output w ( t ) is sampled by an Analog to Digital Converter (ADC), providing the output samples y [ n ] .
The scrambler s ( t ) is a periodic signal: it is a basic waveform p ( t ) repeated F p times per second. The analog waveform p ( t ) itself is generated at sampling frequency F n y q from an L samples digital sequence, which is usually a pseudo-random sequence. Consequently, we have F p = F n y q / L .
The performance of the system can be enhanced by using M parallel branches with different scrambling signals. However, since generalization to M branches is trivial, we will restrict the discussions below to one branch.
The digital outputs y [ n ] are provided at F s samples per second.
In previous practical realizations, in order to reduce aliasing, the ADC output samples go through a digital filter, which provides properly filtered samples at a frequency F s s lower than F s . In the original MWC model, F s s is an odd multiple of F p , that is F s s = q F p with q an odd integer. In this paper, since the linear algebra model allows a less constrained post-processing, this digital filter is not required and q is not necessarily odd. Indeed, we will see that the linear algebra model also allows even values of q.
When designing an actual acquisition device, we have to choose some parameters:
  • The sampling frequency F n y q of the scramblers, which will impact the Nyquist frequency of acceptable input signals (i.e., input signal maximum frequency must remain under F n y q / 2 ).
  • The sampling frequency F s of the ADC, which should be significantly lower than F n y q (otherwise the system would have no interest compared to direct sampling at F n y q ). This frequency determines the subsampling factor b = F n y q / F s .
  • The length L of the scrambler periodic pattern. This parameter determines the frequency of repetition F p = F n y q / L of the scrambling pattern.
Figure 2 illustrates, in a very simplified case ( L = 5 ), an example of scrambling signal. It is formed from a length-L binary pseudo-random sequence, which is repeated. In the time domain, the duration of a binary symbol is 1 / F n y q , and the period of the signal is 1 / F p (where F n y q and F p are the frequencies defined above).
Figure 3 illustrates the low-pass filter response. The scrambled signal, which occupies a frequency band of width F n y q , goes through a low-pass filter. The filter output is sampled at a frequency F s , high enough to avoid aliasing.
The scrambler and the ADC are controlled by a common central clock to avoid synchronization problems.
Reconstruction of the input signal, and calibration of the system, are based on the information provided by a block of a output samples. In order to avoid unnecessary mathematical complications, the value of a is chosen such that it corresponds to an integer number K of scrambling patterns, then a = K L / b . This output block then corresponds to N = K L scrambler samples (and also to N input samples if the input signal were sampled at F n y q ). The size of the block determines the frequency resolution F s / a = F n y q / N .
For our experiments on real-world data, we designed a 4-channel MWC analog board (Figure 4), which was described in more detail in a previous paper [19]. The scramblers are sampled at F n y q = 1  GHz and their length is L = 96 . Therefore, their repetition frequency is F p = F n y q / L = 10.41667  MHz. The device is then able to monitor a wideband spectrum of 1 GHz.
The prototype includes M = 4 physical channels. Each channel features an M1-0008 mixer from MArki©, and an SXLP-36+ low-pass filter from Mini-Circuits©. The filter cut-off frequency is 40 MHz (at -3 dB). The SXLP-36+ filter was chosen because it is quite close to the ideal low-pass filter. Indeed, it has a sharp cut-off, linear phase and flat band (attenuation < 0.5 dB) in the frequency range (0–36) MHz. The ADC sampling frequency is F s = 10 F p = 104.1667 M H z (at F s / 2 the filter attenuation is more than 30 dB); therefore, the downsampling factor is b = 9.6 . Table 1 sums up the main parameters.
The frequency response of the low-pass filter implemented on our acquisition board is shown in Figure 5 and its phase i n Figure 6. Details on filter calibration can be found in one of our previous papers [30].
F n y q being the Nyquist frequency of the input signal, we can consider a digital equivalent model at F n y q without loss of information. Furthermore, as previously mentioned, since calibration and signal processing are always performed on a limited amount of data in real-world applications, we can consider an input block of N samples (at F n y q ).
Modern implementations of the FFT [31] contain a special code to handle splittings not only of size 2 but also of sizes 3 (and sometimes 5 and 7). Therefore, for the efficiency of the FFT, we will preferably choose block sizes whose prime factors belong to { 2 , 3 , 5 , 7 } . In our experiments, we have taken K = 448 , N = K L = 43 , 008 = 2 11 × 3 × 7 and a = 4480 = 2 9 × 5 × 7 . The frequency resolution is then F n y q / N 23 kHz, which is far sufficient unless we would like to detect extreme narrow-band transmitters.

4. System Model and Matrix Representation

4.1. System Equations in the Time Domain

Let us note:
  • x the vector representing the input signal.
  • s the vector representing the scrambling signal.
  • v the vector representing the scrambler output.
  • h the vector representing the low-pass filter impulse response.
  • w the vector representing the low-pass filter output.
  • y the 1 × a vector containing the digital output samples (at F s ).
All of these vectors, except for y, are ( 1 × N ) vectors and represent the signals at F n y q samples per second. In Figure 7, we show the links between these vectors. In the time domain (top of the figure), the signals are represented by vectors. Symbol * stands for cyclic convolution. These vectors can be transposed in the frequency domain using a multiplication by matrix F N or F a . A post-processing, described later, is then performed in the frequency domain. The post-processing outputs q vectors y ˜ n of size 1 × K .
In the figure, we have used different symbols for down-sampling because the operation in the time and frequency domains are different. For instance, when b is an integer, down-sampling in the time domain consists of picking one sample out of b while its equivalent in the frequency domain is a multiplication of the down-sampling matrix Ξ , which will be defined later.
Notations used below have already been defined in Section 2. Since the system is linear, in the time domain, we have
y = x B
where B is an N × a matrix. The structure of B can be easily computed from the system model (Figure 7):
B = D s C h I a 1 b T
Indeed, the scrambler output is given by:
v = x D s
The filter output is:
w = v C h
For the moment, let us consider that b is an integer (we will see later that this is not a requirement). In that case, down-sampling consists of picking one sample out of b in w. Mathematically, that is:
y = w I a 1 b T
Otherwise, down-sampling can be modeled using an interpolation matrix. However, we will not detail this because only the equations in the frequency domain will be useful for our purpose. We will see later that in the frequency domain, thanks to the presence of a low pass filter, b being an integer is not a requirement anymore.

4.2. System Equations in the Frequency Domain

Multiplying Equation (39) by F a and inserting the identity F N F N 1 where appropriate, we obtain:
y F a = x F N F N 1 B F a
That is
y ¯ = x ¯ A
where A is an N × a matrix.
A = F N 1 B F a
The structure of A can be detailed further. Replacing B with its expression (Equation (40)) and inserting the identity F N F N 1 where it is appropriate, we obtain:
A = F N 1 D s F N F N 1 C h F N F N 1 I a 1 b T F a
Then, using Equations (15) and (16) we obtain:
A = 1 N C s ¯ D h ¯ Ξ
As proved in the appendix (see Appendix A.1), the frequency-domain down-sampling matrix Ξ is:
Ξ = 1 b θ b T I a
That is:
Ξ = 1 b I a I a
where sub-matrix I a is repeated b times. Here we remind that h is a low-pass filter. Since the ADC sampling frequency is F s , we assume that the elements of h ¯ , which correspond to frequencies outside the interval ] F s / 2 , F s / 2 [are almost null. Since h ¯ contains N elements, the frequency resolution is F n y q / N , so F s / 2 corresponds to index ( F s / 2 ) / ( F n y q / N ) = N / ( 2 b ) , that is, a / 2 . Let us note
c = a / 2
and
δ = a m o d 2
Therefore, the elements of h ¯ are almost null for indices outside the interval [ c , c + δ ] (the indices are considered modulo N). Hence, we can redefine Ξ as the N × a matrix below:
Ξ = 1 b I c + δ 0 0 0 0 I c
without changing the product D h ¯ Ξ . Here, the zeros stand for null sub-matrices. We see that, thanks to the low-pass pass filter which leads to this structure of Ξ , it is not required any more that b is an integer (this requirement was only due to the need for an integer number of occurrences of I a in Equation (50)).
Finally, let us define the ( 1 × a ) vector h ˜ :
h ˜ = h ¯ 0 h ¯ c + δ 1 h ¯ c h ¯ 1
where the indices are modulo N. We then have:
D h ¯ Ξ = Ξ D h ˜
and the expression of matrix A becomes:
A = 1 N C s ¯ Ξ D h ˜

4.3. Unconstrained System Equations in the Time Domain

Now we can go back to the time domain to obtain a matrix B, which does not require b being an integer. We have:
y = y ¯ F a 1
= x ¯ A F a 1
= x ¯ F N 1 F N A F a 1
= x B
where
B = F N A F a 1

4.4. Fast Simulation of the Acquisition System

A first interest of the linear algebra model is that it makes the design of a fast simulator obvious. Indeed, multiplication by a diagonal matrix D is efficiently implemented as an element-by-element vectors product, and multiplication by a Fourier matrix F (or its inverse) is efficiently implemented by Fast Fourier Transform (FFT). On the contrary, multiplications by circulant matrices C should be avoided because of their computational cost. Then, the method to design a fast simulator is to insert identities F F 1 or F 1 F where it is appropriate in order to suppress the circulant matrices. For instance, we have:
y = x B
= x F N 1 N C s ¯ Ξ D h ˜ F a 1
= x F N 1 N C s ¯ F N 1 F N Ξ D h ˜ F a 1
= x D s F N Ξ D h ˜ F a 1
using Equation (16). Here we have only fast operations, as shown in Figure 8.

5. Equivalent Model and Post-Processing

5.1. Equivalent Model

Until now, we have not taken advantage of the periodicity of the scrambler. This opens the way to an equivalent model with interesting properties.
The scrambler is a ( 1 × N ) vector s, which contains K replica of a basic waveform represented by a ( 1 × L ) vector p. Then, the scrambler can be written:
s = θ K p
and we have (see proof in Appendix A.2)
s ¯ = K p ¯ 1 K
It follows that s ¯ is sparse (only one element out of K is non-zero). It will be easier to take benefit of the sparsity of s ¯ if we permute x ¯ and s ¯ in the expression of y ¯ :
y ¯ = 1 N x ¯ C s ¯ Ξ D h ˜
= 1 N s ¯ C x ¯ Ξ D h ˜
The proof is trivial: since the multiplication is commutative, we can permute x and s (see Figure 7); therefore, we can also permute x ¯ and s ¯ .
Let us define the L × N matrix C x ¯ ( K ) obtained by picking one row out of K in C x ¯ . That is:
C x ¯ ( K ) = I L 1 K C x ¯
More explicitly, that is:
C x ¯ ( K ) = x ¯ 0 x ¯ N 1 x ¯ K x ¯ N K 1 x ¯ ( L 1 ) K x ¯ K 1
where the indices are considered modulo N.
Let us denote
p ˜ = 1 L p ¯
Using Equation (67), the mixer output becomes:
1 N s ¯ C x ¯ = 1 N K p ¯ 1 K C x ¯
= 1 L p ¯ I L 1 K C x ¯
= 1 L p ¯ I L 1 K C x ¯
= p ˜ C x ¯ ( K )
An interesting property of matrix C x ¯ ( K ) , which will be exploited later, is (see proof in Appendix A.3):
C x ¯ ( K ) J N K = J L C x ¯ ( K )
Finally, let us define
y ˜ = y ¯ D 1 / h ˜
We then have:
y ˜ = 1 N s ¯ C x ¯ Ξ
= p ˜ C x ¯ ( K ) Ξ

5.2. Post-Processing

The post-processing extracts frequency blocks of K samples from y ˜ .
Using definition (35), let us note S n the a × K selection matrix below
S n = b S a , K ( r + n K )
and R n the N × K selection matrix below
R n = S N , K ( r + n K )
Denoting y ˜ n a 1 × K vector representing the selected data, we have:
y ˜ n = y ˜ S n
y ˜ n contains the elements of y ˜ whose indices (modulo a) are in the interval Φ = [ r + n K , r + n K + K 1 ] .
The indices are considered modulo a, so r may be negative. We will consider that Φ [ c , c + δ ] , so
Ξ S n = Ξ b S a , K ( r + n K )
= S N , K ( r + n K )
= R n
We can note that:
R n = J N n K R 0
This is a matrix similar to R 0 but with sub-matrix I K circularly shifted n K positions downwards. We can note that we have also:
R n + 1 = J N K R n
Eventually, using Equations (73) and (77) we have:
y ˜ n = p ˜ C x ¯ ( K ) Ξ S n
= p ˜ C x ¯ ( K ) R n
= p ˜ C x ¯ ( K ) J N n K R 0
= ( p ˜ J L n ) ( C x ¯ ( K ) R 0 )
= p ˜ n Z x ¯
where
p ˜ n = p ˜ J L n
and
Z x ¯ = C x ¯ ( K ) R 0
More explicitly, Z x ¯ is the L × K matrix below:
Z x ¯ = x ¯ r x ¯ r + K 1 x ¯ r K x ¯ r 1 x ¯ r ( L 1 ) K x ¯ r ( L 2 ) K 1
were the indices are considered modulo N. The interesting feature in Equation (89) is that Z x ¯ does not depend on n. Hence, we can take q different values of n and write
y ˜ n = p ˜ n Z x ¯
assuming we know the filter frequency response (which should be the case because the filter is part of the acquisition system). More compactly, this fundamental equation can be noted:
Y = P Z
were Y is the ( q × K ) matrix below:
Y = y ˜ n
P is the ( q × L ) matrix below:
P = p ˜ n
and Z is the ( L × K ) matrix below:
Z = Z x ¯
Therefore, the sizes of the matrices appearing in Equation (98) are ( q × K ) , ( q × L ) , ( L × K ) . Then, if the number of non-zero rows in Z is less than q the matrix Z can be reconstructed from this equation using an algorithm such as OMP [29]. Eventually, from Z we can retrieve x ¯ as shown below. Indeed, it is easy to see that x ¯ can be rebuilt from Z with
x ¯ = v e c ( A L Z ) J N r + K
where A L is the K × K anti-diagonal matrix:
A L = 0 0 1 1 0 0 1 0 0
The effect of the multiplication of a matrix by A L on the left is to reverse the order of its rows.
If we have M channels instead of one in the physical system, the number of rows of Y becomes q M ; hence, we can theoretically rebuild the signal if the number of non-zero rows in Z is less than q M .
Let us note q = 2 ρ + τ the Euclidean division of q by 2. In our experiments, we have set r = 0 for q even and r = K / 2 for q odd. For n we take the integers in the interval ρ to ρ + τ 1 . This choice, while not compulsory, is designed to take into account equally distributed values around frequency 0 in y ˜ , which is a priori the best choice. Indeed, the indices of the samples taken into account go from r ρ K to r + ( ρ + τ ) K 1 , that is:
  • For q odd: from ρ K K / 2 to ρ K + K / 2 1
  • For q even: from ρ K to ρ K 1
For this choice, Figure 9 illustrates how the elements of x ¯ are arranged into matrix Z x ¯ and Figure 10 illustrates how the elements of y ˜ are arranged into matrix Y.

5.3. Application of the Equivalent Model to Reconstruction

The input of the reconstruction algorithm is the vector y provided by the acquisition device. The output is an estimation of x ¯ .
We assume that:
  • The frequency response h ¯ of the low-pass filter is known (or has been estimated). Then h ˜ can be precomputed using Equation (54).
  • Matrix P has been precomputed, using Equations (72), (94) and (100), or (better) has been estimated by the calibration process (see Section 6).
The procedure is as follows:
  • Using an a-points FFT compute y ¯
  • Compensate the filter by computing y ˜ (Equation (78))
  • Extract q sub-vectors y ˜ n from y ˜ (Equation (83))
  • Compute matrix Y (Equation (99))
  • Use a compressed sensing algorithm, such as OMP [29], to estimate matrix Z from Equation (98)
  • Reconstruct x ¯ from Z using Equation (102)
As an illustration of how the linear algebra model makes things simple from the programming point of view, this is the Octave program, which builds matrix Y from y and then obtains x from the reconstructed matrix Z:
ytilde = fft(y,[],2)./htilde;
ind = 1+mod(r+[-rho*K:(rho+tau)*K-1], a);
Y = reshape(ytilde(ind),K,q).’;
% Insert here estimation of Z from Y and P (using OMP, for instance)
xbs = reshape(Z(L:-1:1,:).’,1,N);
xb = circshift(xbs,[0 r+K]);
x = ifft(xb,[],2);
If there are M > 1 physical channels, the q × K matrices Y corresponding to each channel are stacked vertically, leading to a q M × K matrix Y.

5.4. Interest of Q Even

The linear algebra model allows even values of q, instead of previous models that required q to be odd. The main interest is that it puts lower constraints on the design of the acquisition board. If the acquisition board is already available, it may also allow a better use of the MWC output data if the acquisition board is not perfectly optimized.
Let us consider our own acquisition board, which was designed before we established the linear-algebra model. We remind that the ADC sampling frequency is F s 104.2 MHz and the scramblers repetition frequency is F p = F n y q / L 10.42 MHz. Using F s = F n y q / b and N = K L = a b , it is easy to see that F p = K F s / a . In the frequency domain, the a output samples correspond to F s , then q K output samples correspond to q K F s / a = q F p .
  • With q = 7 , we put into Y a total of q K samples corresponding to a frequency half-band q F p / 2 = 36.47 MHz. This choice perfectly fits the frequency response of the low-pass filter, which is an almost perfectly flat and linear phase in [DC-36MHz] (see Figure 5 and Figure 6).
  • With q = 6 , we would put into Y samples corresponding to a frequency half-band q F p / 2 = 31.26 MHz. This corresponds to an even better area of the filter response, but in doing this, we would not use all the available information.
  • On the contrary, with q = 8 , we would put it into Y samples corresponding to a frequency half-band q F p / 2 = 41.68 MHz. This allows us to take more information into account, but we see that we take into account some samples corresponding to a lower quality of the filter response.
This result is not surprising, because our acquisition board was designed and optimized for q = 7 , but for a future design of a new board, the possibility to have q may even be interesting because it puts fewer constraints on the choice of the commercial filters.
Indeed, applying the proposed method to our analog board did not need any change because odd values of q are allowed by our method. If a new analog board were to be designed, our method adds an additional degree of freedom because it allows even values of q also. This would allow, for example, the designer of the analog board to use a low-pass filter with a cut-off frequency of about 34 MHz (using q = 6 ) instead of 40 MHz (using q = 7 ).

6. Application to Fast Calibration

6.1. Proposed Approach

The objective of calibration is to estimate the true matrix P. Indeed, for real-world applications, using the theoretical matrix (Equation (100)) leads to very poor results [13]. In a previous paper [19], we proposed an approach that uses a single wideband signal for calibration, contrary to previous approaches that required successive injections of sinusoids in the system. In that paper, we presented spectrum reconstruction performances and examples of spectrum reconstruction obtained with our calibration method. In the present paper, we will mainly focus on simplifying and speeding up the method thanks to the linear algebra model.
The signal we used for calibration has a spectrum that is totally flat in the
F n y q / 2 , F n y q / 2 frequency band and random phase. Compared to methods based on iterative injections of sinusoidal waves, our new calibration method is time-saving and is more practical in terms of the simplicity of implementation because it requires a single measurement to perform the calibration. The calibration method uses advanced resynchronization preprocessing. Our calibration method offers slightly better spectrum reconstruction performances compared to reference method [13].
If we know matrices Y and Z, using Equation (98), we can estimate matrix P by:
P ^ = Y Z +
where Z + is the Moore–Penrose pseudo-inverse [27] of Z. Matrix Y depends on the MWC outputs, and matrix Z depends on its input signal. The problem in a real-world context is that we cannot reliably synchronize the input of the MWC with the ADC sampling, which provides the output, and even if a costly synchronization device was implemented, there are delays in the analog board itself, which are intractable. Then, the input signal must be designed such that a synchronization can be performed numerically. Otherwise, in Equation (104), we would multiply matrices Y and Z + corresponding to desynchronized data, which would make no sense.
In order to allow an efficient numerical synchronization, we used, for the MWC input, a periodical signal with a flat spectrum and random phase. More precisely, the period of this signal corresponds to the chosen block size, that is N / F n y q , and one period can be represented by a length-N row vector x. This vector is generated as follows:
  • A length-N vector x ¯ is generated such that, for any of its elements x ¯ ( k ) , we have x ¯ ( k ) = 1 and A r g x ¯ ( k ) is random in [ 0 , 2 π ] under the constraint A r g x ¯ ( k ) = A r g x ¯ ( k ) (this constraint ensures that x is real).
  • x is deduced from x ¯ by an inverse FFT: x = x ¯ F N 1
Reminding that matrix Z contains the elements of x ¯ (Equation (101)), the constant modulus x ¯ ( k ) = 1 ensures that no element of Z is privileged or disadvantaged by the input signal. Furthermore, the random phase ensures that the input signal has good localization properties, which is desired for efficient synchronization. Finally, choosing a periodic signal has a strong advantage: a time shift of a block taken on the input signal is equivalent to a cyclic permutation of vector x.
On the programming point of view, building Z from x is very simple:
xb = fft(x, [], 2);
xbs = circshift(xb,[0 -(r+K)]);
Z(L:-1:1,:) = reshape(xbs,K,L).’;
In the following, we will note x 0 = x as the signal pattern and x d a cyclic permutation, d positions to the right, of the pattern. This means that
x d = x J N d
The procedure that we propose is as follows:
  • Feed the acquisition device with a periodic signal, which is a repetition of a known pattern x 0
  • Record a samples at the output of the acquisition device (this is vector y), then compute matrix Y using steps 1 to 4 of the reconstruction procedure.
  • Perform cyclic permutations of the input pattern x 0 . For each vector x d , compute matrix Z d = Z x ¯ d (using Equations (96) and (101)) and then P ^ (using Equation (104)).
Let us note the residue
R d = Y P ^ d Z d .
The criterion to determine the best cyclic permutation of the input pattern x 0 is the inverse Frobenius norm of R d (the Frobenius norm is the square root of the sum of the square modules of the elements of the matrix).
The computational cost per iteration (i.e., per value of d tested) can be estimated as follows:
  • A FFT is required to compute x ¯ d , that is L K log 2 ( L K ) flops (because N = L K ).
  • Computation of the pseudo-inverse Z d + : 7 K L 2 + 20 L 3 flops (see Section 2.7).
  • Computation of P ^ = Y Z d + (the sizes of the matrices are q M × K and K × L ): q M K L flops.
  • Computation of P ^ Z d requires q M L K flops.
  • Computation of the Frobenius norm requires K L flops
Globally, since the computation of the Frobenius norm can be neglected compared to the other terms, the algorithm requires about L ( 2 q M K + 7 L K + 20 L 2 + K log 2 ( L K ) ) flops per iteration.

6.2. Fast Update of Matrix Z

While evaluating all possible shifts d, computation of matrix Z d = Z x ¯ d requires an N-points FFT to obtain x ¯ d , which requires approximately N l o g 2 ( N ) multiplication at each iteration. However, we can reduce the complexity just by computing the first matrix and then updating it at each iteration as described below. Let us consider a vector x d , which is a cyclic permutation, d positions to the right of pattern x. We have:
x d = x 0 J N d
Then
x ¯ d = x 0 J N d F N
= x 0 F N F N 1 J N d F N
= x ¯ 0 D α ¯ d
where
α d = 0 0 d 10 0
Indeed, since J N d = C α d , using Equation (15) we have:
F N 1 J N d F N = F N 1 C α d F N
= D α ¯ d
Since α ¯ d = α d F N , it is easy to see that α ¯ d is the ( d + 1 ) t h row of F N , that is (see Equations (10) and (11)):
α ¯ d = 1 ω d ω 2 d ω ( N 1 ) d
Then, we have:
Z d = Z α ¯ d x ¯ 0
= Z α ¯ d Z 0
where • stands for element by element multiplication. This equation can also be written
Z d = ω r d Θ d * Z 0 Ω d
with
Θ d = d i a g 1 ω K d ω 2 K d ω ( L 1 ) K d
Ω d = d i a g 1 ω d ω 2 d ω ( K 1 ) d
To see where this formula comes from, we must remind that multiplication by a diagonal matrix on the left (right) multiplies the rows (columns) by the elements of the diagonal. Then, denoting ω d = ω d we can see that:
ω d r v e c Θ d * v e c Ω d = ω d r 1 ω d K ω d ( L 1 ) K 1 ω d ω d K
= ω d r 1 ω d ω d K 1 ω d K ω d K + 1 ω d 1 ω d ( L 1 ) K ω d ( L 1 ) K + 1 ω d ( L 2 ) K 1
= Z α ¯ d
If we evaluate by step g, we can use:
Z d = Z α ¯ g Z d g
Matrix Z α ¯ g can be precomputed. Therefore, at each iteration, we need only N multiplications, which is less complex than computing x ¯ d each time. This update requires only N = L K multiplications at each iteration, instead of approximately N l o g 2 ( N ) .
If we want to allow sub-sample precision (i.e., g < 1 ), we just have to note η = N / 2 and write α ¯ g as follows:
α ¯ g = 1 ω g ω η 1 ω η g ω g
This is very interesting because sub-sample precision is then allowed without any additional cost due to oversampling (with this method, no oversampling is required). Matrix Z α ¯ g is computed as follows:
alpha = exp(-i*2*pi*g*[0:eta-1 -eta:-1]/N);
alpha = circshift(alpha,[0 -(r+K)]);
Zalpha(L:-1:1,:) = reshape(alpha,K,L).’;
Then, at each iteration, updating matrix Z is achieved by:
Z = Z .* Zalpha;

6.3. Fast Update of Matrix Z +

The approach is similar to the pseudo-inverse: we can reduce the complexity just by computing the first pseudo-inverse matrix and then updating it at each iteration, as described below. This update requires only N multiplications at each iteration.
According to discussions above, denoting Z 0 = U S V * as the SVD of Z 0 , we have
Z d = ω r d Θ d * U S V * Ω d
= ( ω r d Θ d * U ) S Ω d * V *
This equation directly provides the SVD of Z d . It follows that Z d + is
Z d + = Ω d * V S + ( ω r d Θ d * U ) *
= ω r d Ω d * Z 0 + Θ d
This update can be realized by element-by-element multiplication:
Z d + = Z α ¯ d * Z 0 +
If we evaluate by step g we can update the matrix at each iteration by:
Z d + = Z α ¯ g * Z d g +
where Z α ¯ g * can be precomputed.

6.4. Fast Synchronization

To obtain a synchronization, we must evaluate the Frobenius norm of R d at each iteration.
We can evaluate the computational complexity of this fast algorithm as follows:
  • Updating matrix Z d and Z d + requires 2 L K flops.
  • Computing Y d Z 0 + requires q M K L flops.
  • Multiplying Y d Z 0 + by Z 0 requires q M K L flops.
  • Computing the Frobenius norm requires K L flops.
Globally, the algorithm requires 2 q M K L + 3 K L 2 q M K L flops per iteration, which is to be compared to L ( 2 q M K + 7 L K + 20 L 2 + K log 2 ( L K ) ) for the previous version. The gain is, approximately:
G 1 + 7 L 2 q M + 10 L 2 q M K + log 2 L 2 q M + log 2 K 2 q M
21
Computation time on Octave is 54 s for the slow version and 1.6 s for the fast version, which is then 34 times faster.
As a function of K, the gain decreases until K = 20 ln ( 2 ) L 2 = 127761 (which is a huge value, not expected for real-world acquisition devices), where it reaches a minimum of 13.4, then increases slowly, behaving asymptotically as log 2 K / ( 2 q M ) , as shown in Figure 11.

7. Experimental Results

Using a step g > 1 for the evaluation of the synchronization criterion allows a decrease in the computation time by a factor g. A good strategy is to obtain a coarse synchronization with a step g > 1 , and then to perform a fine synchronization around the detected peak. The fine synchronization may even be realized at sub-sample precision, if desired. However, a too large initial step must be avoided because it may lead to missing the synchronization peak during the coarse synchronization. In our experiments, we first used a coarse synchronization with step g = 16 , then a fine synchronization with step g = 1 around the coarse synchronization peak. Figure 12 shows the obtained synchronization data. Figure 13 and Figure 14 present are magnifications of the synchronization peak to show more details.
If the response of the filter is not taken into account in Equation (78) (i.e., assuming an ideal low-pass filter), the synchronization peak is only slightly lower (4.75 instead of 5.22). This is due to the fact that the low-pass filter used in our analog board has good characteristics (almost flat response, and almost linear phase, in the band of interest). The difference would be higher with a lower quality filter. Anyway, it is always better to integrate the filter response in the equations, as we did, because the additional computational cost is negligible.
Once the signal is synchronized, the estimated matrix P ^ is obtained using Equation (104) (at no additional cost because this computation was already part of the synchronization process). Figure 15 shows the modulus of the matrix elements. Here, since we have M = 4 physical channels and we have taken q = 7 , the matrix has q M = 28 rows (and L = 96 columns). The first q = 7 rows correspond to the first physical channel, then the next q rows to the second physical channel, and so on.
The theoretical (ideal) matrix P t h can be computed using Equation (100). Since the analog scrambling sequence is the output of a Digital to Analog Converter (DAC), fed with a digital pseudo-random sequence, it is (ideally) piecewise constant in the time domain. In the spectral domain, this is equivalent to a multiplication by the s i n c function in which first zero is at F n y q . We take that into account when computing our theoretical matrix in order to be as close as possible to the real-world matrix. Figure 16 shows the modules of the elements of this matrix.
The estimated (real-world) mixture matrix P ^ may be compared with the theoretical (ideal) mixture matrix P t h . On the basis of the elements modules, we can see that their overall aspects are close despite noticeable differences. In fact, the main differences are in the phases of the elements. If we draw the normalized correlation coefficients between the columns of both matrices (Figure 17), we obtain low values, which confirms significant differences. We remind that a normalized correlation coefficient is the absolute value of the cosine of the angle between two vectors (here the columns of both matrices), then values around 0.5 mean that the angle is about 60 degrees, and thus, the columns are significantly different.
In a previous paper [19], we showed that despite the good quality of our real-world acquisition board, calibration of the system is absolutely required: using the theoretical matrix leads to poor reconstruction performances. Without calibration, the system usually incorrectly detects the active sub-bands, and even when the active sub-bands are correctly identified, the spectrum reconstruction provided by the uncalibrated system is extremely poor, as illustrated in Figure 18.
Figure 19 shows the relative error between computed and observed system output, as a function of output frequency. The computation is performed using a formula similar to the criterion used in [32].
ε ( f ) = 20 log 10 o u t p u t r e a l ( f ) o u t p u t c o m p u t e d ( f ) o u t p u t r e a l ( f )
Here the frequency band of the acquisition system output signal has been divided into 28 subbands, and o u t p u t r e a l is the real output signal comprised in the subband centered on f. Similarly, o u t p u t c o m p u t e d ( f ) is the computed output signal comprised in the subband centered on f, “computed” meaning that it is computed from the input signal using the system model and a given matrix P. The three curves correspond to using different matrices P in this computation. It can be seen that our method and the reference method provide a good prediction of the real output (relative errors around −18 dB), while the theoretical uncalibrated matrix provides poor results (large relative errors). We remind that in any case, even for the theoretical matrix, we always use a low-pass filter that is calibrated: the true frequency response of the filter (Figure 5 and Figure 6) is being taken into account in the equations through the diagonal matrix D h ˜ .
To further illustrate the interest of the approach, Figure 20 shows the spectrum of the reconstructed signal using different matrices P. On top, it is the true spectrum. Here we have two transmitters in the monitored bandwidth. We can see that our method, as well as the reference method [13], correctly identifies the presence of two active transmitters. On the contrary, when using the theoretical matrix, the number of transmitters and their frequency locations are incorrect.
If we zoom in on Figure 20, we can see (Figure 21) that the frequency location of the second transmitter is more precise when using matrix P provided by our method than when using the matrix provided by the reference method.
Let us now consider a much more difficult case, where six transmitters are simultaneously active in the monitored bandwidth (Figure 22). Using the matrix P provided by our approach leads to a correct estimation of the number of transmitters and of their frequency location, despite imperfect shapes of the spectrum reconstruction for some transmitters. The reference method produced quite good results also, but missed one transmitter (around 330 MHz) and detected a non-existing transmitter (around 180 MHz). Finally, as anticipated, using the theoretical matrix P lead to a reconstruction that is almost totally false.
This shows that calibration is unavoidable. An interest of the extremely fast calibration procedure proposed in this paper is the possibility of performing quick recalibration of the system as soon as the performances appear to decrease. Indeed, many factors, such as temperature, external perturbation, components aging, etc., modify the characteristics of the system, making a recalibration necessary.

8. Conclusions

In this paper, we have established an MWC model solely based on linear algebra. It is very convenient as a basis for fast and efficient programming of simulation, reconstruction and calibration algorithms related to MWC. It suppresses a previous restriction on the channels augmentation factor, hence providing more degrees of liberty to the systems designer. It also allowed us to develop an extremely fast implementation of a previously proposed calibration algorithm, leading to a gain of a factor greater than 20 on the computation time. This fast calibration allows quick recalibration of the system as soon as it becomes necessary. Our future work will include more in-depth exploitation of the advantages and interesting properties of this model.

Author Contributions

Conceptualization, G.B.; methodology, G.B., A.F. and R.G.; software, G.B.; validation, G.B., A.F. and R.G.; formal analysis, G.B., A.F. and R.G.; investigation, G.B., A.F. and R.G.; resources, G.B., A.F. and R.G.; data curation, G.B., A.F. and R.G.; writing—original draft preparation, G.B.; writing—review and editing, G.B., A.F. and R.G.; visualization, G.B., A.F. and R.G.; supervision, R.G.; project administration, A.F. and R.G.; funding acquisition, G.B. and R.G. All authors have read and agreed to the published version of the manuscript.

Funding

This research is partly supported by the IBNM (Brest Institute of Computer Science and Mathematics) CyberIoT Chair of Excellence at the University of Brest. The design of our MWC analog board has been partly supported by the RAPID REACC-RF project, whereas the MWC model based on linear algebra was developed after the end of the REACC-RF project.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Acknowledgments

The authors would like to thank the company Syrlinks for the design of the analog board.

Conflicts of Interest

The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript; or in the decision to publish the results.

Abbreviations

The following abbreviations are used in this manuscript:
ADCAnalog to Digital Converter
DACDigital to Analog Converter
DFTDiscrete Fourier Transform
FFTFast Fourier Transform
flopfloating point operation
MWCModulated Wideband Converter
SVDSingular Value Decomposition

Appendix A. Mathematical Proofs

Appendix A.1. Frequency-Domain Downsampling Matrix Ξ

Using the general radix identity, with N = a b , the inverse DFT matrix can be decomposed as:
F N 1 = P a , b 1 ( I a F b 1 ) T a , b 1 ( F a 1 I b )
Then, the frequency-domain downsampling matrix Ξ is:
Ξ = F N 1 I a 1 b T F a
= P a , b 1 ( I a F b 1 ) T a , b 1 ( F a 1 I b ) I a 1 b T F a
= P a , b 1 ( I a F b 1 ) T a , b 1 ( F a 1 1 b T ) F a
= P a , b 1 ( I a F b 1 ) T a , b 1 ( I a 1 b T )
= P a , b 1 ( I a F b 1 ) ( I a 1 b T )
= 1 b P a , b 1 ( I a θ b T )
= 1 b θ b T I a

Appendix A.2. Periodic Scrambler

Using the general radix identity, with N = K L , the DFT matrix can be decomposed as:
F N = ( F K I L ) T K , L ( I K F L ) P K , L
Then, we have:
s ¯ = s F N
= ( θ K p ) ( F K I L ) T K , L ( I K F L ) P K , L
= ( θ K F K ) ( p I L ) T K , L ( I K F L ) P K , L
= K ( 1 K p ) T K , L ( I K F L ) P K , L
= K ( 1 K p ) ( I K F L ) P K , L
= K ( 1 K I K ) ( p F L ) P K , L
= K ( 1 K p ¯ ) P K , L
= K p ¯ 1 K

Appendix A.3. Commutation Property of C x ¯ ( K )

C x ¯ ( K ) J N K = K I L 1 K C x ¯ J N K
= K I L 1 K J N K C x ¯
= K I L 1 K J L I K C x ¯
= K I L J L 1 K I K C x ¯
= J L K I L 1 K C x ¯
= J L C x ¯ ( K )
where we have used Equation (24).

References

  1. Shannon, C.E. Communication in the presence of noise. Proc. IRE 1949, 37, 10–21. [Google Scholar] [CrossRef]
  2. Nyquist, H. Certain topics in telegraph transmission theory. Trans. Am. Inst. Electr. Eng. 1928, 47, 617–644. [Google Scholar] [CrossRef]
  3. Upadhyaya, V.; Salim, M. Compressive Sensing: Methods, Techniques, and Applications. In Proceedings of the IOP Conference Series: Materials Science and Engineering, Jeju Island, Korea, 12–14 March 2021; IOP Publishing: Bristol, UK, 2021; Volume 1099, p. 012012. [Google Scholar]
  4. Fang, J.; Wang, B.; Li, H.; Liang, Y.C. Recent Advances on Sub-Nyquist Sampling-Based Wideband Spectrum Sensing. IEEE Wirel. Commun. 2021, 28, 115–121. [Google Scholar] [CrossRef]
  5. Candès, E.J.; Wakin, M.B. An introduction to compressive sampling. IEEE Signal Process. Mag. 2008, 25, 21–30. [Google Scholar] [CrossRef]
  6. Donoho, D.L. Compressed sensing. IEEE Trans. Inf. Theory 2006, 52, 1289–1306. [Google Scholar] [CrossRef]
  7. Zelnik-Manor, L.; Rosenblum, K.; Eldar, Y.C. Sensing matrix optimization for block-sparse decoding. IEEE Trans. Signal Process. 2011, 59, 4300–4312. [Google Scholar] [CrossRef]
  8. Abolghasemi, V.; Ferdowsi, S.; Makkiabadi, B.; Sanaei, S. On optimization of the measurement matrix for compressive sensing. In Proceedings of the European Signal Processing Conference, Aalborg, Denmark, 23–27 August 2010. [Google Scholar]
  9. Mishali, M.; Eldar, Y.C. From theory to practice: Sub-Nyquist sampling of sparse wideband analog signals. IEEE J. Sel. Top. Signal Process. 2010, 4, 375–391. [Google Scholar] [CrossRef]
  10. Mishali, M.; Hilgendorf, R.; Shoshan, E.; Rivkin, I.; Eldar, Y.C. Generic sensing hardware and real-time reconstruction for structured analog signals. In Proceedings of the 2011 IEEE International Symposium of Circuits and Systems (ISCAS), Rio de Janeiro, Brazil, 15–18 May 2011; pp. 1748–1751. [Google Scholar]
  11. Mishali, M.; Eldar, Y.C.; Dounaevsky, O.; Shoshan, E. Xampling: Analog to digital at sub-Nyquist rates. IET Circuits Devices Syst. 2011, 5, 8–20. [Google Scholar] [CrossRef]
  12. Laska, J.N.; Kirolos, S.; Duarte, M.F.; Ragheb, T.S.; Baraniuk, R.G.; Massoud, Y. Theory and implementation of an analog-to-information converter using random demodulation. In Proceedings of the IEEE International Symposium on Circuits and Systems, New Orleans, LA, USA, 27–30 May 2007; pp. 1959–1962. [Google Scholar]
  13. Israeli, E.; Tsiper, S.; Cohen, D.; Shoshan, E.; Hilgendorf, R.; Reysenson, A.; Eldar, Y.C. Hardware calibration of the modulated wideband converter. In Proceedings of the Global Communications Conference (GLOBECOM), Austin, TX, USA, 8–12 December 2014; pp. 948–953. [Google Scholar]
  14. Adams, D.; Eldar, Y.C.; Murmann, B. A Mixer Front End for a Four-Channel Modulated Wideband Converter With 62-dB Blocker Rejection. IEEE J. Solid-State Circuits 2017, 52, 1286–1294. [Google Scholar] [CrossRef]
  15. Mishali, M.; Eldar, Y.C.; Dounaevsky, O.; Shoshan, E. Sub-Nyquist acquisition hardware for wideband communication. In Proceedings of the 2010 IEEE Workshop on Signal Processing Systems, San Francisco, CA, USA, 6–8 October 2010; pp. 156–161. [Google Scholar]
  16. Eldar, Y.C. Sampling Theory: Beyond Bandlimited Systems; Cambridge University Press: Cambridge, UK, 2015. [Google Scholar]
  17. Cohen, D.; Tsiper, S.; Eldar, Y.C. Analog-to-Digital Cognitive Radio: Sampling, Detection, and Hardware. IEEE Signal Process. Mag. 2018, 35, 137–166. [Google Scholar] [CrossRef] [Green Version]
  18. Liu, W.; Huang, Z.; Wang, X.; Sun, W. Design of a single channel modulated wideband converter for wideband spectrum sensing: Theory, architecture and hardware implementation. Sensors 2017, 17, 1035. [Google Scholar] [CrossRef] [PubMed]
  19. Burel, G.; Fiche, A.; Gautier, R.; Martin-Guennou, A. A Modulated Wideband Converter Calibration Technique Based on a Single Measurement of a White Noise Signal with Advanced Resynchronization Preprocessing. Electronics 2022, 11, 774. [Google Scholar] [CrossRef]
  20. Wang, P.; You, F.; He, S. An improved signal reconstruction of modulated wideband converter using a sensing matrix built upon synchronized modulated signals. Circuits Syst. Signal Process. 2019, 38, 3187–3210. [Google Scholar] [CrossRef]
  21. Fu, N.; Jiang, S.; Deng, L.; Qiao, L. Successive-phase correction calibration method for modulated wideband converter system. IET Signal Process. 2019, 13, 624–632. [Google Scholar] [CrossRef]
  22. Park, J.; Jang, J.; Lee, H.N. A calibration for the modulated wideband converter using sinusoids with unknown phases. In Proceedings of the 2017 Ninth International Conference on Ubiquitous and Future Networks (ICUFN), Milan, Italy, 4–7 July 2017; pp. 951–955. [Google Scholar]
  23. Alp, Y.K.; Korucu, A.B.; Karabacak, A.T.; Gürbüz, A.C.; Arikan, O. Online calibration of modulated wideband converter. In Proceedings of the 2016 24th Signal Processing and Communication Application Conference (SIU), Zonguldak, Turkey, 16–19 May 2016; pp. 913–916. [Google Scholar]
  24. Byambadorj, Z.; Asami, K.; Yamaguchi, T.; Higo, A.; Fujita, M.; Iizuka, T. A Calibration Technique for Simultaneous Estimation of Actual Sensing Matrix Coefficients on Modulated Wideband Converters. IEEE Trans. Circuits Syst. I Regul. Pap. 2020, 67, 5561–5573. [Google Scholar] [CrossRef]
  25. Byambadorj, Z.; Asami, K.; Yamaguchi, T.J.; Higo, A.; Fujita, M.; Iizuka, T. High-Precision Sub-Nyquist Sampling System Based on Modulated Wideband Converter for Communication Device Testing. IEEE Trans. Circuits Syst. I Regul. Pap. 2021, 69, 378–388. [Google Scholar] [CrossRef]
  26. D’Angeli, D.; Donno, A. Shuffling Matrices, Kronecker Product and Discrete Fourier Transform. Discret. Math. 2017, 233, 1–18. [Google Scholar] [CrossRef]
  27. Penrose, R. A generalized inverse for matrices. In Mathematical Proceedings of the Cambridge Philosophical Societ; Cambridge University Press: Cambridge, UK, 1955; Volume 51, pp. 406–413. [Google Scholar]
  28. Golub, G.H.; Van Loan, C.F. Matrix Computations, 3rd ed.; The Johns Hopkins University Press: Baltimore, MD, USA; London, UK, 1996; ISBN 0-8018-5413-8. [Google Scholar]
  29. Cai, T.T.; Wang, L. Orthogonal matching pursuit for sparse signal recovery with noise. IEEE Trans. Inf. Theory 2011, 57, 4680–4688. [Google Scholar] [CrossRef]
  30. Nguyen, L.L.; Fiche, A.; Gautier, R.; Canaff, C.; Radoi, E.; Burel, G. Implementation of Modulated Wideband Converter compressed sensing scheme based on COTS low-pass filter with amplitude and phase compensation for spectrum monitoring. In Proceedings of the 2018 IEEE International Conference on Advanced Video and Signal-based Surveillance (AVSS), Auckland, New Zealand, 27–30 November 2018. [Google Scholar]
  31. Sondergaard, P.L. Next Fast FFT Size. Available online: https://ltfat.github.io/notes/ltfatnote017.pdf (accessed on 23 July 2022).
  32. Daponte, P.; De Vito, L.; Iadarola, G.; Iovini, M.; Rapuano, S. Experimental comparison of two mathematical models for Analog-to-Information Converters. In Proceedings of the 21st IMEKO TC4 International Symposium and 19th International Workshop on ADC Modelling and Testing Understanding the World through Electrical and Electronic Measurement, Budapest, Hungary, 7–9 September 2016. [Google Scholar]
Figure 1. Principle of MWC acquisition (one physical branch).
Figure 1. Principle of MWC acquisition (one physical branch).
Sensors 22 07381 g001
Figure 2. Illustration of the scrambling signal.
Figure 2. Illustration of the scrambling signal.
Sensors 22 07381 g002
Figure 3. Illustration of the low-pass filter response and output spectrum.
Figure 3. Illustration of the low-pass filter response and output spectrum.
Sensors 22 07381 g003
Figure 4. Our analog acquisition board.
Figure 4. Our analog acquisition board.
Sensors 22 07381 g004
Figure 5. Frequency response of the low-pass filter.
Figure 5. Frequency response of the low-pass filter.
Sensors 22 07381 g005
Figure 6. Phase of the low-pass filter.
Figure 6. Phase of the low-pass filter.
Sensors 22 07381 g006
Figure 7. Principle of the system, using vector notations, in the time and frequency domains.
Figure 7. Principle of the system, using vector notations, in the time and frequency domains.
Sensors 22 07381 g007
Figure 8. Fast simulation. Dotted arrows are for a elements, full arrows are for N elements.
Figure 8. Fast simulation. Dotted arrows are for a elements, full arrows are for N elements.
Sensors 22 07381 g008
Figure 9. Arrangement of the elements of x ¯ into matrix Z x ¯ , for L = 4 .
Figure 9. Arrangement of the elements of x ¯ into matrix Z x ¯ , for L = 4 .
Sensors 22 07381 g009
Figure 10. Arrangement of the elements of y ˜ into matrix Y, for q = 4 and q = 3 .
Figure 10. Arrangement of the elements of y ˜ into matrix Y, for q = 4 and q = 3 .
Sensors 22 07381 g010
Figure 11. Gain as a function of K (the red dot shows the values corresponding to our acquisition board).
Figure 11. Gain as a function of K (the red dot shows the values corresponding to our acquisition board).
Sensors 22 07381 g011
Figure 12. Synchronization (overview).
Figure 12. Synchronization (overview).
Sensors 22 07381 g012
Figure 13. Synchronization (zoom 1).
Figure 13. Synchronization (zoom 1).
Sensors 22 07381 g013
Figure 14. Synchronization (zoom 2).
Figure 14. Synchronization (zoom 2).
Sensors 22 07381 g014
Figure 15. Estimated mixture matrix P (modulus).
Figure 15. Estimated mixture matrix P (modulus).
Sensors 22 07381 g015
Figure 16. Theoretical mixture matrix P t h (modulus).
Figure 16. Theoretical mixture matrix P t h (modulus).
Sensors 22 07381 g016
Figure 17. Normalized correlation coefficients.
Figure 17. Normalized correlation coefficients.
Sensors 22 07381 g017
Figure 18. Example of sub-band spectrum reconstruction with and without calibration.
Figure 18. Example of sub-band spectrum reconstruction with and without calibration.
Sensors 22 07381 g018
Figure 19. Relative error between computed and observed system output, as a function of output frequency.
Figure 19. Relative error between computed and observed system output, as a function of output frequency.
Sensors 22 07381 g019
Figure 20. Example of spectrum reconstruction with 2 transmitters. The horizontal axes are frequencies, labeled in MHz.
Figure 20. Example of spectrum reconstruction with 2 transmitters. The horizontal axes are frequencies, labeled in MHz.
Sensors 22 07381 g020
Figure 21. Example of spectrum reconstruction with 2 transmitters (zoom). The horizontal axes are frequencies, labeled in MHz.
Figure 21. Example of spectrum reconstruction with 2 transmitters (zoom). The horizontal axes are frequencies, labeled in MHz.
Sensors 22 07381 g021
Figure 22. Example of spectrum reconstruction with 6 transmitters. The horizontal axes are frequencies, labeled in MHz.
Figure 22. Example of spectrum reconstruction with 6 transmitters. The horizontal axes are frequencies, labeled in MHz.
Sensors 22 07381 g022
Table 1. Parameters of our MWC prototype.
Table 1. Parameters of our MWC prototype.
SymbolMeaningValue
MNumber of physical channels4
LLength of scramblers96
F n y q Sampling frequency of scramblers = bandwidth to monitor1 GHz
F s Sampling frequency of physical ADC104.1667 MHz
b = F n y q / F s Physical subsampling factor9.6
F p = F n y q / L Repetition frequency of scramblers10.41667 MHz
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Burel, G.; Fiche, A.; Gautier, R. A Modulated Wideband Converter Model Based on Linear Algebra and Its Application to Fast Calibration. Sensors 2022, 22, 7381. https://0-doi-org.brum.beds.ac.uk/10.3390/s22197381

AMA Style

Burel G, Fiche A, Gautier R. A Modulated Wideband Converter Model Based on Linear Algebra and Its Application to Fast Calibration. Sensors. 2022; 22(19):7381. https://0-doi-org.brum.beds.ac.uk/10.3390/s22197381

Chicago/Turabian Style

Burel, Gilles, Anthony Fiche, and Roland Gautier. 2022. "A Modulated Wideband Converter Model Based on Linear Algebra and Its Application to Fast Calibration" Sensors 22, no. 19: 7381. https://0-doi-org.brum.beds.ac.uk/10.3390/s22197381

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop