Reconfigurable cognitive transceiver for opportunistic networks

In this work, we provide the implementation and analysis of a cognitive transceiver for opportunistic networks. We focus on a previously introduced dynamic spectrum access (DSA) - cognitive radio (CR) solution for primary-secondary coexistence in opportunistic orthogonal frequency division multiplexing (OFDM) networks, called cognitive interference alignment (CIA). The implementation is based on software-defined radio (SDR) and uses GNU Radio and the universal software radio peripheral (USRP) as the implementation toolkit. The proposed flexible transceiver architecture allows efficient on-the-fly reconfigurations of the physical layer into OFDM, CIA or a combination of both. Remarkably, its responsiveness is such that the uplink and downlink channel reciprocity from the medium perspective, inherent to time division duplex (TDD) communications, can be effectively verified and exploited. We show that CIA provides approximately 10 dB of interference isolation towards the OFDM receiver with respect to a fully random precoder. This result is obtained under suboptimal conditions, which indicates that further gains are possible with a better optimization of the system. Our findings point towards the usefulness of a practical CIA implementation, as it yields a non-negligible performance for the secondary system, while providing interference shielding to the primary receiver.


Introduction
A popular research topic in wireless communications is the design of efficient coexistence techniques, allowing different systems to share the same bandwidth. A number of candidate coexistence techniques aim to combat the ever-growing spectrum scarcity issue experienced by modern data-centric networks. A prominent approach, called dynamic spectrum access (DSA) [1], aims to circumvent the rigid legacy spectrum policies by letting unlicensed devices access the spectrum opportunistically. Cognitive radios (CRs) [2] provide an interesting means to implement DSA. In the CR paradigm, two different types of devices compose a network. They are known as primary system devices (the holder of the license to use a frequency band) and secondary system devices (cognitive, opportunistic non-licensed users). Secondary system devices access the spectrum licensed to the primary ones *Correspondence: marco_maso@sutd.edu.sg 1 Singapore University of Technology and Design, 20 Dover Drive 138682, Singapore Full list of author information is available at the end of the article dynamically, by means of several techniques that mitigate the interference experienced by the primary system.
In a previous contribution [3], we considered the single-antenna primary-secondary coexistence problem for orthogonal frequency division multiplexing (OFDM)based two-tiered networks using time division duplex (TDD). Therein, we proposed cognitive interference alignment (CIA) [3], an optimal strategy to realize the aforementioned coexistence, maximizing the spectral efficiency at the secondary system. In [4], we described the implementation of CIA's parent technique, Vandermonde-subspace frequency division multiplexing (VFDM) [5], by means of the SDR4All [6] toolkit. This implementation was limited to the secondary link, since SDR4All lacks real time processing capabilities, which hindered our capacity to perform timely channel state information (CSI) estimations and forced us to perform offline base-band processing. In fact, implementing any adaptable precoder scheme is a daunting task since it requires timely channel estimations of the direct link and, in general, a good level http://asp.eurasipjournals.com/content/2014/1/69 of synchronization. For CIA, the problem is not different, as the absence of interference is ensured only if perfect synchronization of both primary and secondary signals is achieved at the primary receiver [7]. State-ofthe-art contributions in the literature on software-defined radio (SDR) implementations of interference alignment testbeds address these issues by introducing backbones (TCP/IP links) connecting multiple-antenna SDR devices [8,9], to provide CSI sharing and synchronization. Alternatively, solutions based on offline signal processing [9,10] focus on more theoretical aspects, simplifying the synchronization issues and the impact of hardware impairments.
In this contribution, we first present the design of a reconfigurable transceiver architecture, based on a flexible SDR approach. This efficient and responsive platform design is suitable for cognitive radio physical layer solutions for opportunistic networks. The architecture of our transceiver is characterized by a modular and transparent software structure composed of highly interoperable software blocks. Accordingly, the latter can be adopted to create flexible and easily configurable transmit/receive chains. As a result, the proposed transceiver is able to quickly switch between transmission schemes (acOFDM, CIA or a mix of both) as required, hence the 'reconfigurable' denomination. As a second step, we make use of this new reconfigurable solution to take one step towards a full implementation of CIA. In particular, we aim at providing a proof-of-concept; thus, we focus on a pointto-point cognitive radio channel as in [3]. We note that, differently from the aforementioned state-of-the-art contributions, herein, the necessary perfect synchronization of both primary and secondary signals at the primary receiver is achieved by means of a simplified strategy, based on a hybrid transceiver design. In practice, both primary and secondary transmitter chains are implemented in the same hardware, transforming the 2 × 2 model studied in [3] into a hybrid 1 × 2 one. Furthermore, the CSI required by the devices to perform their operations, i.e., precoding at the transmitter and decoding at the receivers, is not obtained through CSI sharing between the devices, as typically done in the literature. Instead, it is acquired independently by each interested device by means of channel estimations.
We show that the proposed transceiver is fast enough to exploit the channel reciprocity within the channel coherence time, from the medium perspective, i.e., from the transmitter's antenna (after the radio frequency frontend) to the receiver's antenna (before the radio frequency front-end). Remarkably, this can be achieved regardless of the TDD uplink-downlink radio frequency (RF) calibration, due to the special nature of the CIA precoder. This crucial aspect is usually downplayed in similar contributions [8][9][10], where the legitimacy of the assumption of perfect channel reciprocity is not assessed, but is indeed fundamental for the correct implementation of any adaptive precoding scheme in a TDD scenario. Subsequently, a performance study of the primary and secondary links under an interference cancelation constraint at the secondary system is provided. Extensive field tests are performed to validate the proposed reconfigurable transceiver design, providing encouraging results. We show that CIA achieves a non-negligible throughput while guaranteeing the performance of the OFDM transmission. In other words, the effective interference mitigation realized at the secondary system allows a profitable coexistence of the two systems.
This paper is organized as follows: The scenario and signal model are described in Section 2; the baseband design of the transceiver is presented in Section 4; a discussion on the validity of the channel reciprocity assumption for CSI acquisition purposes at the transmitter is carried out in Section 3; the transceiver chains description is given in Section 5; the experimental results of the field tests are provided in Section 6; we finally conclude and discuss future research directions in Section 7.

Cognitive interference alignment
Before starting, a brief review of CIA is in order. We start by introducing the mathematical notation adopted throughout this contribution. The result of the integer division of m, n ∈ N is denoted as m n . Lower case italic symbols (e.g., b) represent scalar values, a lower case bold symbol (e.g., b) a vector and an upper case bold symbol (e.g., B) a matrix. [B] m,n is the element of the matrix B at the mth row and the nth column, whereas b m is the mth element of the vector b. All vectors are columns, unless otherwise stated. I N is the identity matrix of size N × N, 1 N is the N-sized all ones vector and 0 N×M is the all zeros matrix of size N × M (with 0 N being the N-sized all zeros vectors). The diag(·) operator transforms a vector b into a diagonal matrix B, such that [B] i,i = b i . The vec operator is denoted by vec(·), and applied to the matrix The transpose and transpose conjugate operators are denoted by the superscripts T and H (e.g., B T , B H ), respectively. Finally, given c ∈ C, we denote by c * and c the complex conjugate and phase angle of c, respectively.
Consider a two transmitter (TX)-two receiver (RX) scenario, as shown in the Figure 1, where a primary system composed of a single-antenna transmitter/receiver pair denoted by TX1/RX1, shares the spectrum with an opportunistic secondary system composed of a single-antenna http://asp.eurasipjournals.com/content/2014/1/69 transmitter/receiver pair denoted by TX2/RX2. TDD is assumed throughout the model. TX1 performs an OFDM transmission towards RX1, similar to what is proposed in recent standards, such as long term evolution (LTE) [11], with N subcarriers and cyclic prefix (CP) size of L, for a total block length of N + L. TX2 is CIA-based (also of size N +L), and nulls its interference towards RX1 as described in [3].
Let us define s p ∈ C N , s s ∈ C L as the input symbol vectors at TX1 and TX2, respectively. Additionally, we define F ∈ C N×N as a unitary discrete Fourier transform (DFT) matrix with [F] (k+1,l+1) = 1 √ N e −i2π kl N for k, l = {0, . . . , N − 1}, and A as a CP insertion matrix of size (N + L) × N given by If we let E ∈ C (N+L)×L be the CIA precoder, detailed later, we can define x p and x s ∈ C (N+L) , coded transmit vectors at TX1 and TX2, respectively, as Now we let h d ab = h d ab,0 , . . . , h d ab,l be fading channel vectors of size l + 1 taps, representing the downlink between the transmitter in system 'a' and the receiver in system 'b'. The uplink between the receiver in system a and the transmitter in system b is defined accordingly as h u ab . The convolution of each coded symbol vector x i with the related channel h d ab can be modeled as an extended Toeplitz matrix H d ab ∈ C (N+L)×(N+L) , given by If we assume perfect synchronization at the receiver, the received signals y p ∈ C N at RX1 and y s ∈ C N+L at RX2 can be written as where B = [0 N×L I N ] is the CP removal matrix. Note that, in (5) and (6), n p and n s are additive white Gaussian noise (AWGN) vectors, modeling the thermal noise at the receivers with power σ 2 . At this stage, we can characterize the precoder E, by analyzing the interference constraint that TX2 must satisfy. As in [3], we require that no interference signal component be perceived at RX1, after the CP removal operation and DFT, framing our scenario in the overlay cognitive paradigm. Now, letH d sp = FBH d sp . In order to protect RX1 from undesired interference, the following must hold We know that rank H d sp = N, regardless of the channel realization. Thus, by the rank-nullity theorem [12], Then, if E is defined as the precoder whose columns span ker H d sp , (7) is always satisfied, regardless of the realization of s s . We know from [3] that the optimal precoder to maximize the spectral efficiency of the secondary link is semi-unitary.

TDD and channel-state information
One of the biggest drawbacks of CIA is its need for the h d sp CSI to construct the null-space precoder E, as seen in the previous section. Normally, obtaining h d sp involves complicated uplink feedback schemes, which are prone to error. As we are about to show, thanks to a property of the precoder E, either the h d sp or the h u ps CSI can be used, opening the possibility for a simpler channel estimation method. http://asp.eurasipjournals.com/content/2014/1/69 In principle, the uplink and downlink channel in a TDD system are reciprocal [13]. However, reciprocity holds only when seen strictly from the medium perspective, i.e., from the TX antenna to the RX antenna. In real implementations of TDD systems, overall channel reciprocity is in general an unrealistic assumption since uncalibrated RF imposes distinct disturbances of both the TX and RX chains of the same radio device [14,15]. A generally accepted assumption is that the RF part provides a flat transfer function inside the bandwidth of the signal. Then we can model the relationship between the downlink and uplink channels as with χ ∈ C. Note that, in general, χ depends on all disturbances present in the TX and RX chains of the considered pair of transceivers [14], and its variations occur at a period much larger than the coherence time of the considered channels. Remarkably, in our case, such a scalar disturbance has no influence on the interference cancelation capabilities of the null-space precoder E. In fact, the null-space is closed under scalar multiplication [16], hence we have that This implies that the channel reciprocity from the medium perspective can be exploited. As a consequence, the uplink channel estimation can be used to design the precoder adopted in the downlink transmission. This will allow for a much simpler channel estimation procedure, as detailed in the following.

Baseband design
Mitola introduced SDRs [17] on the basis that, as time goes by, processing power becomes cheap enough to allow offloading baseband signal processing to general-purpose processors (GPPs). In such an approach, baseband processing is provided by a suitable software toolkit, whereas the RF processing is performed by a dedicated hardware. Thus, test algorithms can be implemented on GPP, reducing the implementation time and allowing tests with real transmissions using actual hardware transceivers. From that seminal paper in 1995, until today, SDRs have evolved a long way, going from a military conceptual technology [18] to actual commercially available products [19]. The transceiver design presented in this work is based on the concept of SDRs. The design was developed for and tested on the universal software radio peripheral (USRP) 1 radio hardware a [19]. These radios are composed of two parts: a motherboard and one or two daughterboards. The motherboard controls the RF, universal serial bus (USB) circuitry and sampling. The adopted daughterboard is the RFX 2400, operating at 2.4 GHz industrial, scientific and medical (ISM) band. In this regard, we note that the default hardware configuration of all these devices/blocks is adopted for all our implementations and experiments (see [19] for specifications). Therefore, no hardware modification is performed or proposed in this work to implement the reconfigurable transceiver. In fact, all the customizations and modifications are performed at software level. In particular, no additional filtering operation is performed before or during the baseband signal processing.
The software toolkit adopted to perform the baseband signal processing is the so-called GNU Radio library [20]. This popular library offers a flexible way to create baseband designs, by connecting ready-made signal processing basic blocks using python or by creating such blocks in C and C++. Afterwards, a flow graph made of these blocks can be visually prepared and executed by means of the graphical tools provided with the library. In practice, first, the developer implements signal processing blocks and transceiver chains as a toolbox of GNU Radio. Then, after the compilation and installation of this toolbox, corresponding flow graphs of the transceiver chains are created by properly connecting these modular blocks. The signal processing blocks and the transceiver chains described in Section 5 have been implemented following this approach.
A simplified approach to the baseband design is adopted in this work, to guarantee perfect synchronization of CIA and OFDM signals at RX1 and satisfy a fundamental condition to ensure the effectiveness of CIA [3]. This is achieved by implementing both TX1 and TX2 chains on the same baseband transceiver, transforming the two TXtwo RX model into a hybrid one TX-two RX. However, in spite of this simplification, many other development issues need to be addressed and specific implementation solutions must be found, as described in the remainder of this section, then in Section 5 and Section 6. As CIA stands on some critical assumptions, for example, channel reciprocity in TDD mode, intermediate checks need to be performed to validate our development and better understand the limitations.
In order to improve the readability of the work, given that all devices can switch from transmitter to receiver state, we redefine the device names as follows: the hybrid device (encompassing TX1 and TX2) is from now on named HT; the primary receiver (RX1) becomes OT; and the secondary receiver (RX2) becomes CIA. This way, each device operates in a specific configuration, depending both on the transceiver mode (uplink or downlink) and its role in the communication. This defines a state machine, with states as shown in Table 1, implemented at software level through the reconfiguration of the SDR. Furthermore, due to the similarity of the receiver structures (of RX1 and RX2), many signal processing blocks are the same in both receiver chains. Through minimal http://asp.eurasipjournals.com/content/2014/1/69 re-configuration, any device can potentially act as an OFDM/CIA transceiver. Figure 2 provides the structure of the three devices, showing the configuration of the chains according to the states described in Table 1. We recall that all communications are in TDD; thus, the transmitters and receivers access the channel in an alternating manner. The communications between the devices are performed according to the following.

Channel estimation and triggering
As a first step, OT sends a trigger frame to HT. This trigger signals the start of a communication session. Pilot symbols are included in this frame to allow for channel estimation at the HT. This is necessary to decode the trigger and, in the future (next version of the implementation), to perform optimal power allocation. With the hybrid structure, such knowledge of h u ps is always accessible by both the OFDM and CIA transceiver chains, as shown in Figure 2. We remind the reader that, as seen in Section 3, the h u ps CSI is sufficient to construct the null-space precoder E. For the moment, this CSI is stored in the CIA transmitter chain for the subsequent precoder generation during the downlink phase. We note that no trigger message is sent by CT during the uplink phase. Unlike [3], no optimal power allocation is performed for the downlink CIA transmission, reducing the computational burden for HT.

Downlink transmission
Once triggered, the downlink phase starts. Two independent frames are generated in parallel, one for OFDM and one for CIA. For simplicity, the input symbol size is set such that the two frames have the same size. Then, the two frames are summed up and sent to the USRP for transmission. We recall that TX2 was introduced as an opportunistic device that can obtain the necessary CSI to design E, in Section 2. Herein, the cognitive nature is represented by HT's ability to act both as an OFDM receiver during the channel estimation phase and as a CIA transmitter in the downlink phase, under the adopted hybrid approach. We remark that, this scheme yields a simplified synchronization of the OFDM and CIA signals at the OT, but does not provide advantages in terms of channel estimation. In fact, any stand-alone CIA cognitive transceiver (without OFDM transmitter capabilities) would compute the null-space of H d sp as does HT.

Downlink reception
During the downlink phase, both OT and CT receive and decode their respective signals. The received symbols (after equalization) are stored for further analysis. Then, an ACK frame is constructed (including pilot symbols) and transmitted from OT back to HT, to confirm the positive reception and trigger a new transmission. We note that no uplink transmission by CT is required. For simplicity, no channel coding scheme is considered in this work. The analysis of channel coding on the performance of the reconfigurable transceiver is the subject of future research. For the sake of clarity, a brief explanation of these steps, from channel estimation to downlink reception, is given in Figure 3. Throughout the paper, these steps are assumed unless otherwise stated.

Transceiver chains description
Before starting, we note that the OFDM implementation herein described has been created for the purpose of this proof-of-concept to increase the flexibility and transparency of the legacy GNU Radio implementation. It is composed of blocks, fully written in C++, that can be easily plugged to (or unplugged from) other blocks within the graphical tool of GNU Radio, according to one's needs. This allows both a more efficient block reuse and the creation of chains that can work with custom frame structures. Naturally, the same modular structure has been adopted to create the CIA implementation, for which several blocks of the OFDM implementation are efficiently re-used, as discussed in the following. Finally, in order to achieve the desired reconfigurability of the transceiver, a set of novel controller blocks has been created to provide full support to the aforementioned modular structure and coordinate the multiple chains coexisting within the transceiver.
As previously stated, the cognitive transceiver proposed in this work has four possible operating modes, namely OFDM transmitter/receiver and CIA transmitter/receiver. In the following, the block structure of each mode is described.

OFDM transmitter
Consider the block representation given in Figure 4, a detailed description is provided in the following.

Constellation mapper
This block accepts a bit sequence as input and yields its digitally modulated version as output. We define A as the modulated symbol alphabet of order M. Now, let b ∈ [0, 1] K be the K -sized row input bit vector fed to the block, such that K = K log 2 M ∈ N. Consequently, we define d ∈ A K as the data row vector at the output of the constellation mapper, representing the digitally modulated version of b. We note that b can be either a binary file or a pseudo-random binary sequence, with the addition of an appropriate padding to satisfy the above size condition. Any mapping function can be implemented in this block to support the chosen digital modulation scheme.

Serial to parallel
This block prepares the modulated symbols for the frame generation in the frequency domain. Let us assume that only a central portion of the available spectrum may be used to obtain a smoother impulse response of the transmit/receive filters in the USRPs. In particular, we let N o be the number of active subcarriers, i.e., occupied tones, out of the N available for the OFDM transmission. Accordingly, a check on the size of d is performed before the serial to parallel operation.
. Finally, we note that K, N O and N are user-defined parameters known at both ends of the communication. These parameters are kept constant throughout all the duration of the tests. This comes without loss of generality and the consistency of the outcome of our tests persists over different system configurations.

Frame generation
The frame generation block accepts a data matrix D (O) as input and constructs an OFDM frame S, defined as where pilot matrix, known a priori by the frame generator. Note that, R g , R p ∈ N. We start by describing the preamble matrix G, adopted for time and frequency synchronization purposes at the receiver. We consider a preamble structure according to the classical procedure proposed by Schmidl and Cox (S-C) [21]. This approach makes use of the statistical properties of specially constructed sequences, characterized by interesting auto-correlation properties. In our implementation, we set R g = 1 and G degenerates into a N o -sized vector g, obtained by alternating pseudo-random binary phase-shift keying (BPSK) symbols g i , ∀i ∈ 1, N o 2 , and zeros such that g = g 1 , 0, g 2 , 0, . . . , g No . The adopted pseudo-random sequence should be known at both ends of the communication, to allow for a more precise time synchronization at the receiver (detailed in the following). In this implementation, we achieve this situation by imposing the adoption of an identical user-defined algorithm and initial seed at both the OFDM transmitter and receiver. At this stage, we note that an inverse discrete Fourier transform (IDFT) over the N available subcarriers will be performed in the following block, to generate the OFDM symbols. Due to the properties of the IDFT, the time domain representation of g will consist of a repeated sequence over one full OFDM symbol, as in the S-C algorithm.
In principle, the knowledge of the preamble at the receiver could enable channel estimations at the latter (for equalization purposes) by evaluating the received instance of g, as done in classical pilot-based estimations. Nevertheless, the significant number of zeros in g may decrease the quality of said estimation, even if linear interpolation techniques were to be adopted. Therefore, the pilot matrix is appended to the frame after g, to provide a more reliable tool for channel estimation at the receiver. In particular, we let deterministic vector known both at the transmitter and receiver. We remark that a bigger R (O) p could yield more accurate channel estimations at the receiver but reduces the spectral efficiency of the transmission. Thus, a careful adjustment of this parameter depending on the environment, e.g., perceived signal-to-noise ratio (SNR) at the receiver and coherence time of the channel, could become necessary during the field tests.

Power scaling
At this point, a power scaling may be performed to shape a desired power profile for S before the IDFT. Let α ∈ R be parameters adopted to scale independently the power of g, P (O) and D (O) . We note that, the scaling parameters α (O) g , α (O) p and α (O) d are set empirically during the field tests, to achieve a more homogeneous power profile for the signal. The frame obtained at the output of the power scaling block can be written as S = α

IDFT
The matrix S, input to the IDFT block, has size N o × 1 + R (O) p +K N o , thus a further padding to S has to be appended to prepare the frame for the N-point IDFT. In fact, the number of occupied tones in the proposed scheme is lower than the number of available subcarriers, i.e., Then, S T , time domain representation of S F , is obtained by stacking the N-point IDFT of S T and an additional padding matrix Z = 0 N×R z , included for SNR estimation purposes at the OFDM receiver, as further detailed in Section 5.2. Then, S T reads with F unitary DFT matrix as defined in Section 2 and R z ∈ N. Note that, the matrix representation adopted so far has been provided only for the sake of compactness. In fact, in the operating framework provided by GNU Radio, algorithms based upon matrix-wise operations are not computationally efficient. Consequently, the N-point IDFTs (and DFTs) are implemented by means of the computationally efficient algorithms provided by the FFTW [22] C library, based on vector-wise operations. This choice has been made to decrease the overall required computational time.

Cyclic prefix insertion
The CP insertion can be modeled as a matrix operation as well, that is S CP p +K No +R z be the matrix carrying the last L rows of S T , then the CP insertion operation can be implemented without matrix operations by constructing

Parallel to serial
The output of this block is the serialized version of the input stream, ready to be fed to the USRP for transmission. This operation can be written as

OFDM receiver
Consider the block representation given in Figure 5. A detailed block-by-block description is provided in the following.

Synchronization
Let us denote y as the signal obtained after the RF to baseband conversion performed by the USRP. After this operation, y is fed as input to the OFDM receiver baseband chain, as shown in Figure 5. The first operation performed by the latter on y is the time and frequency synchronization procedure. By construction, OFDM is based upon a large number of closely spaced orthogonal subcarrier signals, used to bear data on several parallel data streams or channels. In case of missed synchronization of the received frame, such carrier orthogonality is lost. Specifically, if the cyclic prefix L is not much larger than the delay spread of the channel, imperfect time synchronization of the frame may cause inter-block interference (IBI) and decrease the signal to interference plus noise ratio of the useful portion of the signal. Conversely, in case of imperfect frequency synchronization, issues such as intercarrier interference (ICI) or phase noise may arise [23], breaking the orthogonality between the subcarriers and impairing the decoder. Unfortunately, any communication system may experience a carrier frequency offset due to issues such as Doppler shifts, or imperfections in the phase lock loop responsible for the generation of the carrier frequency at the transmitter and receiver (used in the RF demodulation step to obtain the baseband representation of the received signal), just to name a few. Thus, an appropriate procedure to achieve time and frequency synchronization is required. Herein, we exploit the special structure of the preamble, described in Section 5.1, and adopt the S-C method [21] to achieve both time and frequency synchronization. First, the timing of the first sample of the preamble is identified. Then, the carrier frequency offset is detected and corrected to achieve frequency synchronization.
In this implementation, the receiver disposes of the same seed adopted at the transmitter to generate the preamble, as explained in Section 5.1, thus is able to generate a copy of g T = F −1 , time domain version of the N-sized preamble (CP excluded). Now, let us consider a window of N received samples. We define t as the time index corresponding to the first sample of the window. If we let the window slide along in time that we have, the receiver can search for the preamble by computing P t , auto-correlation function of the received signal evaluated at t, ∀t ∈ N, given by with y a = y [a] for clarity in the notation. Let M c t be a timing metric, defined as with R t = N/2 m=1 |y t+m+(N/2) | 2 received energy for the second half-window. The properties of the adopted preamble's auto-correlation induce the formation of a plateau to M c t , whose length is equal to L − l, with l number of channel taps (excluding the line-of-sight component) as defined in Section 2. The starting sample of the preamble may be taken to be anywhere within this plateau [21], leading to some uncertainty for the receiver. A twostep timing estimation is adopted to solve this issue. First, a coarse timing estimation is computed, i.e.,t c , to identify the approximate position of the preamble within the received sequence bŷ Then, we select a fixed window of received samples of size N 2 + 2L, including the sample att c (as the (L + 1)-th sample), and compute its cross-correlation with g T as Note that, (16) is feasible if L ≤ N 4 , condition usually verified in practical systems for matters of spectral efficiency [11]. Now, the fine estimation of the timing of the first sample of the preamble, i.e.,t f , is obtained by exploiting the property of the peak of the cross-correlationP t aŝ From now on, for clarity, we will letỹ be the received frame after the time synchronization, obtained by discarding the firstt f − 1 samples of y. Once the best timing pointt f has been identified, the carrier frequency offset (in subcarrier spacings) f can be directly estimated by evaluatinĝ φ, phase difference between the two halves of the received preamble, in radians, estimated att f aŝ Accordingly, f can be computed aŝ with z = 0 for |φ| < π and z ∈ Z \ {0} otherwise. We note that in the set of preliminary experimental OFDM transmissions performed according to the parameters in Table 2, to assess the effectiveness of the synchronization algorithms, the condition |φ| < π was always satisfied. Consequently, no estimator for the integer part of f has been implemented in this block [21]. In this regard, the time history of the resultingf , depicted in Figure 6, shows a very stable and consistent behavior across the 100 performed tests. As a result of the procedure described so far, the synchronized version of the received frame carrying the first (N + L) (

CP removal
The CP removal block discards the first L rows of the matrixX, to obtain a matrixX T ,N , ready to be processed by the DFT block. We can represent this operation in matrix form bŷ with B cyclic prefix removal matrix as defined in Section 2.

DFT
The DFT block yieldsX F ,N = FX T, N ∈ C N× 1+R (O) p +K No +R z , representation of the received frame in the frequency domain. As for the transmitter, herein the matrix representation is adopted for the sake of compactness, whereas the actual N-point DFT is computed by means of vectorwise operations through the FFTW [22] C library.

Equalizer
At this stage, a channel equalization is performed to remove the effect of the channel on the received signal and proceed to the decoding. The orthogonality between the subcarriers [24] allow the adoption of a classical low-complexity ZF strategy to equalize the received frame, as typically done in OFDM receivers. First, the portion of the spectrum with no active subcarrier is discarded fromX F ,N , to recover the received noisy version of S. Accordingly, we remove both the first and the last Note that, this approximation is more suitable for medium and high SNR regime, due to the presence of a noise component in g. Thus, the precision of SNR depends on the size of g and Z, being more accurate for 1 << R z . Subsequently, the receiver can exploit the knowledge of P (O) and compute the equalizer matrixĤ eq = Then, the equalized version of the data matrix is obtained , ending the equalization process.

Parallel to serial
This block yieldsd ∈ CK No = vec D (O) eq T , row vector carrying the received version of the digitally modulated symbol vector d, of sizeK N o .

Constellation demapper
The constellation demapper implements the appropriate function to recover the received bit vectorb, ending the receiver processing.

CIA transmitter
Consider the block representation in Figure 7. Differently from the OFDM transmitter in Figure 4, herein no IDFT or CP insertion block is present. Instead, a linear precoding is performed to the signal to project it onto the null-space of the interference channel h d sp , as discussed in Section 2. We note that, in the CIA transmitter, the precoding is performed at the frame generation stage for the sake of efficiency and compactnes; thus, these two operations are implemented in a single block, as shown in Figure 7. A detailed block-by-block description is provided in the following.

Constellation mapper
This block provides the same functions as its previously described OFDM counterpart. In this case, we let b ∈ [0, 1] J be the J-sized row input bit vector fed to the constellation mapper, such that J = J log 2 M ∈ N. Then, we let d ∈ A J be the data row vector at the output of the con-

Serial to parallel
This block provides the same functions as its previously described OFDM counterpart. Note that, the precoder E adopted in the following block operates on sequences of . As before, we note that L and J are user-defined parameters known at both ends of the communication and kept constant throughout the duration of the tests.

Frame generation and CIA precoder
This block is responsible for both the CIA frame generation and linear precoding. The CIA frame includes four parts, namely a preamble g ∈ C N+L , a pilot matrix P (C) detailed in the following, the data matrix D (C) obtained as input after the serial to parallel conversion and a padding matrix Z = 0 (N+L)×R z , with g and Z obtained as described in Section 5.1. Note that, the sizes of the input symbol vector of CIA and OFDM and L and N, respectively, do not coincide. Thus, the structure of the pilot matrix for CIA and OFDM, the latter being described in Section 5.1, is different. In this case, we let P (C) ∈ C L×R (C) p , (with R (C) p ≥ L) be a semi-unitary pilot matrix, such that P (C) P (C)H = I L . In Section 5.4, we will see how this choice allows for a simpler channel estimation at CT. Now, we recall that HT acts as an OFDM receiver during the uplink phase, as explained in  (4), is then obtained by taking the IDFT of χĥ d sp , and fed to the precoder block during the downlink phase, as shown in Figure 7. Subsequently, the efficient algorithms provided by the portable linear algebra library LAPACK [25] are exploited to compute the singular value decomposition (SVD) of χH d sp and select its right singular vectors generating ker(H d sp ), to obtain the CIA precoder E satisfying (7), as detailed in [3]. Finally, the CIA frame is constructed as where only the pilot and data matrices are precoded with E. We note that the preamble g is not precoded in order to preserve its useful properties in the time domain for synchronization purposes. The padding matrix does not need to be precoded, being entirely composed of null entries.

Power scaling
At this stage, a power scaling may be applied to shape a desired power profile for C before the parallel to serial operation. Let α d ∈ R be parameters adopted to scale independently the power of g, EP (C) and ED (C) . In particular, the scaling parameters α (C) g , α (C) p and α (C) d are set such that the peak power of both the CIA and OFDM frames has the same order of magnitude. This choice has been made to guarantee that any interaction between the two signals at the receiver is due to their structure and not to favorable power levels of one signal w.r.t. the other. The frame obtained at the output of the power scaling block can be written as C = α

Parallel to serial
We denote the output of the parallel to serial block p +˜J L +R z , serialized version of the stream, ready to be fed to the USRP for transmission. This http://asp.eurasipjournals.com/content/2014/1/69 operation can be written as x (C) = vec(C) T , with x (C) being a row vector.

CIA receiver
Consider the block representation in Figure 8. The main difference between this scheme and the one presented for the OFDM receiver in Section 5.2 is the absence of the DFT and CP removal blocks. In fact, in the CIA receiver, no CP removal operation and DFT are required and the received signal can be directly equalized after an appropriate channel estimation. A detailed block-by-block description is provided in the following.

Synchronization
The synchronization block provides the same functions as its previously described OFDM counterpart.
The output of this block isx (C) ∈ C

Serial to parallel
A serial to parallel conversion is performed onx (C) to prepare the received stream for the channel estimation and equalization. The output of this block is the matrix

Equalizer
A channel estimation and a subsequent equalization are performed in this block, to remove the combined effect of channel and precoder on the received signal. We note that, an approximate estimation of the average SNR experienced during the reception, i.e., SNR, can be computed by the CIA receiver before the actual equalization, by means of (22) as explained in Section 5.2. The received frame can be rewritten aŝ where the channel matrix H d ss has been isolated, for clarity. Note that, in (26), the matrix W (C) = collects the overall effect of both the thermal noise and the interference generated by the OFDM transmission, Let us consider an equivalent representation of the channel faced by the pilot and data matrices, given by the contribution of the CIA precoder and the actual channel.
The estimated version of the data matrix D (C) after the equalization is computed aŝ and this ends the equalization process.

Parallel to serial
A parallel-to-serial operation is performed onD

Constellation demapper
The constellation demapper provides the same functions as its previously described OFDM counterpart. It implements the appropriate function to recover the received bit vectorb, ending the receiver processing.

Experimental results
In this section, we describe and discuss the results of the field tests performed to assess the performance of the proposed reconfigurable transceiver. Before we start describing the experimental setup, we would like to recall that the main objective of this work is to show the effectiveness of CIA as a means to manage interference in a practical setting. As seen in the previous sections, the actual packets transmitted include a lot of overhead and redundancy in terms of preamble and pilot usage. This is necessary to guarantee the good operation of the experiment, avoiding issues like poor synchronization and bad channel estimation to impede our proof-of-concept. At this stage of the research, priority has been given to the assessment of the practical feasibility of CIA and not on the obtained raw data rate. The latter will be the object of a further work. In Figure 9, the environment hosting the field tests is depicted. Each USRP is driven by a PC that performs the baseband processing of the each transceiver, by executing the flow graph representing the transceiver chains, as described in Section 4. Differently from state-of-the-art contributions on the subject [8,10]) no backhaul is present in the environment, no data is shared among the devices and all the processing at the PCs is performed on the fly. For clarity, the operating mode of each device during the uplink and downlink phase is summarized in Table 1.
Finally, no object or person is moving inside the environment during the tests, unless otherwise specified. The parameters adopted throughout the test are described in Table 2.
We note that, the preamble size is identical in both OFDM and CIA chains, as seen in Sections 5.1 and 5.3. The first N + L samples of x, serialized version of the sum of the OFDM and CIA streams, i.e., S and C, are then obtained as the weighted sum of the OFDM and CIA preambles, identical by construction, with weights given by the power scaling factors α (O) g and α (C) g , respectively. We remark that, this guarantees that OFDM and CIA signals are perfectly synchronized both at HT and OT (and CT).
We recall that, the effectiveness of the CIA precoder is strictly dependent on the reliability of the channel-state information, acquired by HT during the uplink phase. In practice, HT must be able to exploit the reciprocity of the uplink and downlink channels from the medium perspective, i.e., h d sp = 1 χ h u ps , inherent to TDD communications. Its responsiveness has be to such that uplink and downlink transmissions are performed within the coherence time of the channel.

Channel reciprocity
With the following experiment, we test the responsiveness of the transceiver in the considered scenario. Consider the three devices depicted in Figure 9. We focus on the primary pair composed by HT and OT. Both devices engage in an OFDM transmission according to the procedure described in Section 4, and perform a channel estimation (uplink channel for HT and downlink channel for RX1), obtainingĥ u pp andĥ d pp , respectively. Additionally, we let CT operate as an OFDM receiver that decodes the received signal and performs a channel estimation, obtainingĥ d ps . We note that in our 1 × 2 scenario, h d pp coincides with h d sp , whereas h d ps coincides with h d ss , by construction. Now, some perturbations are generated in the channel between HT and OT, by placing an object between them and changing its position periodically. No action is performed w.r.t. CT. Furthermore, the position of the three devices and the duration of the experiment (more than 30 s), have been selected in order to ensure similar values of average SNR at the receiver, thus equivalent conditions at the different devices. To simplify the representation of the results, due to space constraints, we focus on one subcarrier inside the spectrum, i.e., the 20th occupied subcarrier. Now, we compute the time evolution of its normalized channel gain, to eliminate the contribution of 1/χ , and illustrate it in Figure 10. Remarkably, the time evolution of the considered channel gain for the uplink and downlink channel between HT and OT http://asp.eurasipjournals.com/content/2014/1/69  is almost identical. We note that, the negligible differences between the uplink and downlink channels are due to several factors, such as estimation errors, small differences in the experienced SNR and the contribution of 1/|χ | to the considered channel gain, caused by the nonperfectly symmetric response of the RF circuitry in the two USRPs [14,15].
Conversely, no clear relationship is present betweenĥ d pp andĥ d ps , channel between HT and CT. The importance of this result is twofold. On the one hand, we verified that the responsiveness of the proposed transceiver is such that the uplink and downlink channel reciprocity from the medium perspective holds in the considered scenario. On the other hand, the difference betweenĥ d pp andĥ d ps proves that the CIA precoder E designed at HT to project to signal onto the null-space precoder of h d pp , would not incur interference cancelation effect when facing h d ps . We note that this insight actively shows the feasibility of the CIA transmission, whose performance will be evaluated in the next section.

Performance evaluation
So far, we described the structure of our tests, and presented a preliminary result to show the responsiveness of the proposed architecture, necessary step before performing the set of complete experiments. Herein, we aim at showing that, in a cognitive radio setting, different primary and secondary devices may be effectively implemented adopting the same hardware, e.g., the USRPs, thanks to specific baseband operations and configurations performed at software level. We note that the OFDM and CIA architectures described in Section 5 are not optimized, but are the first step towards more refined architectures, object of future research. As a consequence, due to practical limitations, no meaningful comparison with theoretical results [23,24] can be established. Accordingly, specific benchmarks for both the OFDM and CIA http://asp.eurasipjournals.com/content/2014/1/69 transmissions are required, to assess the performance of primary and secondary system. We first focus on the OFDM transmission, i.e., the link between HT and OT.

OFDM performance
Let us consider a stand-alone OFDM transmission performed by HT and OT, according to the parameters in Table 2, as if the secondary link was not present. A BPSK modulation is adopted for simplicity. A straightforward way to evaluate how the performance of the OFDM transmission may vary in presence or absence of the CIA transmission, is discussed in the following. First, an upper bound on the achievable throughput of the considered OFDM transmission, i.e., the maximum number of information bits that HT can transmit per second to OT, can be computed according to the parameters in Table 2. In this regard, if we let B be the transmit bandwidth at HT then the maximum achievable throughput of the OFDM transmission can be computed as that, in our case, corresponds to 8.13 kbps. We start noting that the value of T o does not depend on the SNR. However, the same is not true for the experimental throughput, defined herein asT o for clarity. In this regard, let ρ ∈ R be the average SNR at the receiver, an estimation of which is given by SNR in (22). The experimental throughput achieved by the actual OFDM transmission is computed for several experiments performed for different values of the SNR at the receiver. During our tests, the SNR variations at the receiver to obtain different experimental throughput values are userinduced. In practice, the transmit gain of the transmitting USRP is modified by the user when necessary, such that the transmit power may vary between 1 and 20 mW, for a resulting SNR at the receiving antenna ranging between 10 and 30 dB. Accordingly, as a first step, we compute the experimental throughput of the aforementioned standalone OFDM transmission, to obtain a specific benchmark to evaluate the performance of the primary transmission, when coexisting with the secondary CIA transmission. Afterwards, the CIA frame is generated and added to the transmit signal at HT to assess its impact on the experimental throughput of the primary transmission.
Concerning the CIA frame, we aim at validating the interference cancelation (reduction) capabilities of the precoder E. As a consequence, in our tests, E is first computed from the estimation ofĥ u ps performed by HT during each uplink transmission, then from a Rayleigh fading channel, randomly generated before each downlink transmission, according to the model described in Section 2. The rationale for this is that if the precoder built upon h u ps were not more effective than a randomly generated null-space precoder, then CIA would lose its attractiveness, and there would be no use in further pursuing the development. The three so-obtained throughput curves are depicted in Figure 11. As previously mentioned, our proof-of-concept was not optimized to achieve the best rates but rather to show that CIA provides some effective interference protection. Therefore, we focus on a comparative analysis, i.e., a comparison between the performance obtained in presence of CIA w.r.t. to the stand-alone OFDM vase.
We note that the throughput loss experienced by the OFDM transmission when coexisting with the CIA transmission diminishes as the SNR increases if E is built upon h u ps , whereas it increases with the SNR if E is computed using the random channel realization. For the latter, the throughput is clearly interference-limited. Furthermore, we notice that for high SNR, i.e., larger than >20 dB, the experimental throughput of the OFDM transmission is very close to (if not coinciding with) T o . Thus, despite the imperfections due to the non-optimized practical implementation, these findings show the effectiveness of the CIA precoder built upon the actual channel estimation, as a mean to protect the primary receiver from undesired interference.
We now perform a last test w.r.t. the primary transmission and activate only the CIA transmitter chain at HT and switch our focus on the received power at OT after the CP removal operation and DFT. With this experiment, we aim at measuring the actual residual interference experienced by OT, to better characterize the previous results. 10 withẐ (O) as defined in Section 5.2. Note that, herein E is derived according to the two aforementioned strategies, i.e., first the precoder is built upon the actual channel estimation then upon a random channel realization. As shown in Figure 12, the INNR for the randomly derived E is significantly higher than the result for the actual CIA precoder, with the latter providing approximately 10 dB of interference isolation towards the OT, w.r.t. the former. These findings confirm the previous results. However, we note that the INNR for the actual CIA precoder can reach up to 7 dB at high SNR. This shows the impact of both the lack of optimization in our implementation and possible hardware imperfections not properly compensated at software level on the quality of the acquired CSI, even for very favorable SNR values, i.e., SNR > 20 dB.

CIA decoding
As a final test, we focus on the link between HT and CT to evaluate the performance of the secondary transmission. We first perform a stand-alone CIA transmission using a previously built E, upon one of the manyĥ u ps  Table 2. Subsequently, we follow an analogous approach to the test described in Section 6.2.1 and compute an upper bound on the achievable throughput of the considered CIA transmission, given the parameters in Table 2. Accordingly, we compute T c , maximum throughput of the CIA transmission, i.e., the maximum number of information bits that HT can transmit per second to CT, as whose value is identical to the previous case, i.e., 8.13 kbps, due to the identical size of the OFDM and CIA frame by construction. Like before, we evaluate the experimental throughput achieved by the actual CIA transmission, i.e., T c , for several experiments performed for different values of the SNR at the receiver. In this regard, we recall the dependency of the experimental throughput on the average SNR at the receiver, as discussed in Section 6.2.1. After the computation of the performance of the stand-alone CIA transmission, the impact of the primary transmission on the experimental throughput at CT is assessed by activating the OFDM transmitter chain at HT. Therefore, the signal transmitted by HT for this test is the serialized version of the sum of the CIA and OFDM frame. The results of this test are provided in Figure 13. The throughput of the secondary transmission is lower than the performance of the primary system, even though the difference is not large due to the adopted low modulation order, i.e., BPSK. We note that, this finding confirms the theoretical results in [5], showing that the CIA transmission achieves a non-negligible throughput w.r.t. OFDM. On the other hand, the presence of the OFDM transmission induces interference limited performance of the secondary system. Once again the performance loss 10   of around 5% is mitigated by the adopted low modulation order, but its trend is evident throughout the whole range of experienced SNR, confirming the findings in [5].

Conclusions
In this contribution, we provided a reconfigurable SDR transceiver implementation for interference management in CR networks. The adopted SDR framework is composed by the GNU Radio toolkit and a set of single antenna USRPs. The baseband operations are performed at software level, whereas the USRP's RF hardware is responsible for the actual transmissions. A simplified strategy to guarantee perfect synchronization of the primary and secondary signals at the primary receiver has been adopted, yielding a hybrid transceiver design, integrating both primary and secondary transmitter. The proposed architecture permits the implementation of transceivers adopting different physical layer strategies, e.g., OFDM and CIA. The performance of this scheme has been studied under an interference cancelation constraint at the secondary system. First, we performed field tests to validate the proposed transceiver design, showing that all the necessary conditions to implement CIA are fulfilled. Afterwards, we computed the residual interference at the primary OFDM receiver, showing that CIA provides approximately 10 dB of interference isolation w.r.t. a deliberately wrong precoder. Finally, we focused on the CIA performance itself. We showed that not only an actual CIA implementation makes sense, but it achieves a non-negligible performance as a secondary system. In the continuation of this work, we aim at extending our transceiver architecture to a full two TX -two RX system, adopting intelligent synchronization schemes and more accurate channel estimation procedures. An optimization of the proposed transceiver, by means of suitable software improvements, is also matter of our future research, along with the analysis of the performance of the systems when the simplified synchronization strategy is not adopted, and the consequent study of alternative solutions, to guarantee the synchronization of the received signals at the primary receiver. Our ultimate goal is to deploy CIA over a full multi-user network with several primary and secondary nodes. Endnote a In this work, no firmware modifications were made to these radios.