### 2.1 OFDM architecture and sub-sampling method

The binary data stream at the transmitter input of an OFDM system is encoded in order to generate a parity bit stream. These parity bits are used for the error correction on the receiver side (forward error correction - FEC). *L*
*o*
*g*
_{2}
*q* bits from the interleaved parity/data bit streams are mapped to the corresponding q-order quadrature amplitude modulation (q-QAM) constellation symbols. The *N*-pt IFFT that follows, accepts *N*, q-QAM symbols: *X*
_{
k
},(0≤*k*<*N*) at its input that are arranged in a proper order and generates the time symbols *x*
_{
n
}(0≤*n*<*N*). The target of the IFFT is to perform the frequency division multiplexing by placing various *X*
_{
k
} symbols on different orthogonal subcarriers. Different users may transmit on dedicated subcarriers. An optimal spectrum allocation may be performed in cognitive radio (CR) applications. Some special pilot symbols are placed on reserved subcarriers. The receiver is aware of the pilot positions and their values in order to perform channel equalization.

The reverse procedure is followed at the receiver. The symbols (*y*
_{
n
}), received by the channel, form the N-pt FFT input. In an Additive White Gaussian Noise (AWGN) channel, *y*
_{
n
}=*x*
_{
n
}+*z*
_{
n
}. The symbol *z*
_{
n
} stands for the noise that corresponds to the symbol *y*
_{
n
}. Although, there are more accurate ways to describe a communication channel, the AWGN is a generally accepted model for wired channels. Moreover, the proposed sub-sampling method does not depend on the selected channel modelling, although this modelling can affect the information recovery error. A different channel model is used for wireless channels. The modification of the proposed sub-sampling method for wireless channels is dictated by the STBC encoding, rather than the used channel model. The output of the FFT is the set of *N*-symbols: *Y*
_{
k
}. An appropriate FEC method (e.g., Viterbi, low density parity check-LDPC, turbo decoder, etc) uses the received parity bits for the correction of as many errors as possible, without the use of packet retransmission.

The sub-sampling method proposed here, takes advantage of the input data sparseness. The position of the non-zero data is not important since the interleaver scatters them throughout the IFFT input. The proportion of the non-zero data affects the error rate at the receiver. Several q-QAM symbols have identical value due to the data sparseness and can be placed at specific positions at the input of the IFFT. The symbols at the output of the receiver FFT are expected to match the transmitter IFFT input symbols, even if a number of samples at the FFT input are replaced by others (sub-sampling) that have already been received. This can be achieved by exploiting certain DFT properties. The sub-sampling can be realized by reducing the ADC sampling rate on the receiver.

The type of FEC encoder adopted at the OFDM transmitter has to be taken into consideration when the proposed sub-sampling method is defined. The type of FEC encoder used affects the parity pattern predictability that is employed in this approach. Moreover, the FEC type also affects the IFFT input symbol structures that can be used. The recursive systematic convolutional (RSC) encoder, described in [17] will be used, since recursive encoders are more effective in correcting errors at the destination. The encoder used is described by the feed forward and feedback polynomials: 1+*D*+*D*
^{2}+*D*
^{3} and 1+*D*+*D*
^{2}, respectively. However, similar predictable parity patterns and appropriate IFFT input structures can be defined for non-recursive encoders. The outputs of the RSC encoder used here are the original input data stream (systematic output) and the parity output. The interleaver used in this work, generates q-QAM constellations, either from parity, or data bits only. For this purpose, a small buffer is used at the output of the FEC encoder in order to store *l*
*o*
*g*
_{2}(*q*) bits from each one of the two RSC encoder outputs.

As described in [19], the minimum Trellis decoding diagram for a specific RSC encoder depends on the order of the forward and feedback polynomials. The parity output of the employed RSC encoder remains “0” until the first “1” appears at its input. Then, the 7-bit pattern shown in Fig. 1
a is repeated until another “1” appears at the data input. A different 7-bit repeated pattern is generated then at the encoder parity output, until a third “1” appears and so forth. If the input data are sparse and an appropriate interleaving scheme is selected then, the distance between successive 1’s can be long. Consequently, a larger number of identical successive 7-bit patterns will appear at the parity output. This property is exploited in order to place predictable parity QAM symbols at specific positions of the IFFT input, as required by the proposed method. Assume, for example, that identical 128-QAM parity symbols have to be placed at the positions No. 5 and No. *N*/2-5 of the*N*-pt IFFT input. Successive identical parity symbols derived by the 7-bit pattern of Fig. 1
a, can be directly placed in these positions. If 256-QAM modulation is used in the OFDM system then, the 7-bit parity can be padded with one “0”, as shown in Fig. 1
b, to form successive equal 8-bit parity symbols. A 16-QAM modulation is used in most of the case studies of this paper. The padded structure of Fig. 1
b can be used again in these cases, to form successive 4-bit parity symbol pairs that are expected to be equal. Different types of FEC encoders described by higher order feedback/feed forward polynomials, non-recursive or non-convolutional ones, etc. can also be considered. They would also generate predictable parity patterns of potentially different lengths when operating on sparse data. Using the appropriate padding, they could have also been exploited in a similar way, as the patterns shown in Fig. 1 that are used here.

The DFT definition used in this paper has the following form:

$$ Y_{k}=\sum_{n=0}^{N-1}y_{n}w_{N}^{-kn},0\leq k<N-1 $$

((1))

where the twiddle factors \({w_{N}^{r}}\) are defined as \({w_{N}^{r}}=e^{2\pi r/N}\). The IDFT is defined as:

$$ x_{n}=\frac{1}{N}\sum_{k=0}^{N-1}X_{k}w_{N}^{kn},0\leq n<N-1 $$

((2))

The sub-sampling method proposed in [17] is based on the following IDFT expressions:

$$ x_{n}=\frac{1}{N}\left(\sum_{k=0,2,\ldots}^{N-2}X_{k}w_{N}^{kn}+\sum_{k=1,3,\ldots}^{N/2-1}\left(X_{k}-X_{k+N/2}\right)w_{N}^{kn}\right) $$

((3))

$${} {\begin{aligned} x_{n+N/2}&=\frac{1}{N}\sum_{k=0}^{N-1}X_{k}w_{N}^{k(n+N/2)}\\ &= \frac{1}{N}\left(\sum_{k=0,2,\ldots}^{N-2}X_{k}w_{N}^{kn}-\sum_{k=1,3,\ldots}^{N/2-1}\left(X_{k}-X_{k+N/2}\right)w_{N}^{kn}\right) \end{aligned}} $$

((4))

As can be seen from Eqs. (3) and (4), the IDFT outputs *x*
_{
n
} and \(x_{n+\frac {N}{2}}\) are equal, only if *X*
_{
k
} and \(X_{k+\frac {N}{2}}\), with odd k, are identical. This condition is satisfied if all the data *X*
_{
k
}, pad and pilot symbols that have been placed in odd *k* positions have a common value, that will be denoted henceforth as *X*
_{
c
}. This can be guaranteed for the majority of the data symbols, since they are derived by sparse data. Using this property, up to half of the symbols (with odd *n*>*N*/2), at the receiver can be replaced by others (\(y_{n-\frac {N}{2}}\)). Thus, up to 50 % of the time, the receiver’s ADC can operate at the half sampling rate (sub-sampling mode). If *R* is the number of *y*
_{
n
} values, that can be substituted by their counterparts, at distance *N*/2 then, *R*≤*N*/4. The *R* value may have to be selected much lower than *N*/4 in order to achieve an acceptable error. This depends on the sparseness level of the input data. The sub-sampling is applied in uniform intervals and therefore, there is no need to define a customized sampling matrix. The sub-sampling mode is extended in this work, using another DFT property, that concerns the *x*
_{
n
} with odd *n* and *n*<*N*/4. Taking into consideration that \(w_{N}^{n(N/2-k)}=-w_{N}^{-nk}\), \(w_{N}^{n(N/2+k)}=-w_{N}^{nk}\) and \(w_{N}^{n(N-k)}=w_{N}^{-nk}\) then, the *x*
_{
n
} can be expressed as:

$${} {\begin{aligned} x_{n} &= \frac{1}{N}\left(\sum_{k=1,3,\ldots}^{N/4}\left(X_{k}w_{N}^{kn}-X_{N/2-k}w_{N}^{-kn}\right)\right. \\ &\quad + \sum_{k=1,3,\ldots}^{N/4}\left(-X_{k+N/2}w_{N}^{kn}+X_{N-k}w_{N}^{-kn}\right)\\ & \quad\left.+ \sum_{k=2,4,\ldots}^{N/2-2}\!\left(\!X_{k}w_{N}^{kn}+X_{N-k}w_{N}^{-kn}\!\right)+X_{0}-X_{N/2}\!\right)=x_{N/2-n} \end{aligned}} $$

((5))

The IFFT output symbols *x*
_{
n
} and *x*
_{
N/2−n
} are equal if \(X_{k}=X_{\frac {N}{2}-k}\) (with odd *k* and *k*≤*N*/4), \(X_{k+\frac {N}{2}}=X_{N-k}\) (with odd *k* and *k*≤*N*/4) and *X*
_{
k
}=*X*
_{
N−k
}, with even *k* and 0≤*k*<*N*/2. This can similarly be proven if the value of *n* is between *N*/2 and *N*. If the conditions related to Eq. (5) are valid, then the sub-sampling mode can be extended up to 75 % of the time. This can be achieved by replacing (a) the *y*
_{
n
}, with odd *n* between *N*/4 and *N*/2, by the samples \(y_{n-\frac {N}{4}}\) and (b) the *y*
_{
n
} with odd *n*≥*N*/2, by \(y_{n-\frac {N}{2}}\). The aforementioned conditions are always true only in the extreme case where all of the input data have the same trivial value (e.g., “0”). However, if the input data are sparse, these conditions are still valid for most of the *k* values. The few cases where the data are non-trivial make the conditions described above invalid. These few cases are responsible for the sub-sampling error. The FEC method used can reduce the effect of this error, since it can be viewed as an additional noise source. The new IFFT input packet structure shown in Fig. 2 can be used in order to apply the extended sub-sampling mode. The data symbols (most of them are equal to *X*
_{
c
}) have been placed at the even positions.

The first 4-bits (denoted as Parity A) and the last 4-bits (Parity B) of the padded 8-bit parity patterns shown in Fig. 1
b, have been placed as follows: the first Parity A, B pair is placed at the positions 1 and 3, respectively, the second A, B pair at the positions *N*/2−1 and *N*/2−3, the third, at the positions 5 and 7, the fourth at *N*/2−5 and *N*/2−7, and so forth. After all the odd positions below *N*/2 have been filled with parity patterns A or B then, the odd positions between *N*/2 and *N*−1 are filled in a similar way. Had successive parity symbols been placed at the odd positions starting from the position 1 towards the position *N*−1, then the conditions related to Eq. (5) would not hold in most cases. This is owed to the fact that the 4-bit Parity A (or B) patterns of the initial padded 8-bit pairs, are probably not equal to the Parity A (or B) patterns of the last pairs in the IFFT input packet. The pilot and padding symbols have not been shown in Fig. 2 but they can be placed in the even positions instead of data symbols if they are selected to be equal to *X*
_{
c
}. Alternatively, pairs of padding symbols or pilots, with equal value (potentially different than *X*
_{
c
}), can be placed in symmetric odd parity positions around *N*/4, or around 3*N*/4. It has to be stressed that in this approach, there are many more options than [17], concerning the allowed positions and values of the padding and the pilot symbols. If the predictable parity patterns consisted of more than two QAM symbols, they would have to be spread appropriately to fulfil the conditions related to the Eqs. (3)–(5).

### 2.2 The Sub-sampling effect to the SNR

A wired communication between the OFDM transmitter and receiver is assumed and the channel noise is modelled as AWGN in this section. The distortion posed by the sub-sampling operating mode and the quantization noise of the IFFT/FFT operations and the ADC, are considered as noise sources, additional to the *z*
_{
n
}. The signal to noise ratio (*S*
*N*
*R*
_{
AWGN
}) in this type of communication can be defined as the ratio of the signal power *P*
_{
SIG
}, to the sum of the AWGN noise power on all *X*
_{
k
} symbols (\(\sigma _{noise}^{2}\)), the sub-sampling (*P*
_{
SS
}) and the quantization (*P*
_{
Q
}) error due to the finite system resolution:

$$ SNR_{AWGN}=\frac{P_{SIG}}{P_{SS}+P_{Q}+\sigma_{noise}^{2}} $$

((6))

Equation (6) above is used to determine how the various sub-sampling parameters affect the error on the receiver side, rather than the estimation of an exact SNR value. In this sense, different channel models with potentially higher precision could have also been employed. In the previous section, it was initially assumed that *X*
_{
c
}=*X*
_{
k
}=*X*
_{
k+N/2} for odd *k* positions, since they were derived from sparse input data. However, this condition is not valid for all the *k* values since, the input data bits are sparse but they are not all zero. The square error that corresponds to the inequality of *X*
_{
k
} with *X*
_{
k+N/2} is

$${} {\begin{aligned} \varepsilon_{SS}^{2}(k)&=\left | X_{k}w_{N}^{kn}+X_{k+N/2}w_{N}^{(k+N/2)n} \right |^{2}=\left |X_{k}w_{N}^{kn}-X_{k+N/2}w_{N}^{kn} \right |^{2} \\ &=\left | X_{k} \right |^{2}+\left | X_{k+N/2} \right |^{2}-X_{k}X_{k+N/2}^{*}-X_{k}^{*}X_{k+N/2} \end{aligned}} $$

((7))

If *X*
_{
k
}=*α*+*β*
*j*, *X*
_{
k+N/2}=*γ*+*δ*
*j*, then the error *ε*
_{
ss
} can be generally expressed as: \(\varepsilon _{ss}^{2}=(\alpha -\gamma)^{2}+(\beta -\delta)^{2}\). The maximum absolute real or imaginary dimension of the q-QAM modulation used, is \(d=\left | \sqrt {q} \right |-1\). The maximum error caused by a pair of unequal *X*
_{
k
} and *X*
_{
k+N/2} values is

$$ max\left(\varepsilon_{SS}^{2}\right)=(\alpha -\gamma)^{2}+(\beta -\delta)^{2}=8d^{2} $$

((8))

The average absolute *ε*
_{
sa
} for a single *X*
_{
k
} and *X*
_{
k+N/2} pair is: \(\varepsilon _{sa}=\sqrt {2}d\). The probability of a q-QAM symbol (consisting of *l*
*o*
*g*
_{2}(*q*) bits) to be different than *X*
_{
c
}, is *S*·*l*
*o*
*g*
_{2}(*q*), where *S* is the sparseness level defined as the ratio of the non-zero bits to the total number of data bits. The average *ε*
_{
sa
} error can appear up to *R*≤*N*/4 times in the estimation of a single IFFT output symbol *x*
_{
n
}. The power *P*
_{
SS
} of the sub-sampling error on the receiver side for a single *y*
_{
n
} symbols is

$$ P_{SS}=(R\cdot S\sqrt{2}d\cdot log(q))^{2} $$

((9))

The truncation or quantization noise in FIR filters, FFTs, etc is described in [20]. The result of a multiplication between two *n*
_{
b
} bit numbers requires 2*n*
_{
b
} bits. If the result has to fit in *n*
_{
b
} bits, then the rest of the *n*
_{
b
} bits have to be truncated. The round-off error will be a value between \(-\frac {2^{-(n_{b}-1)}}{2}\) and \(\frac {2^{-(n_{b}-1)}}{2}\). The distance between these limits is \(d_{s}=2^{-(n_{b}-1)}\phantom {\dot {i}\!}\). The parameter *d*
_{
s
}, represents the minimum difference that can be discriminated between the quantized real numbers. The error probability is assumed to be uniform (1/*d*
_{
s
}) between −*d*
_{
s
}/2 and *d*
_{
s
}/2. The variance of the error is then estimated as: \(\frac {{d_{s}^{2}}}{12}\). Although the quantization noise power in all real and imaginary parts of the DFT outputs is estimated in [20] as

$$ P_{Q}=N\frac{{d_{s}^{2}}}{12} $$

((10))

this *P*
_{
Q
} noise is reduced to [20]

$$ P_{Q}\leq \frac{{d_{s}^{2}}}{6}(log_{2}N-2) $$

((11))

in the real and imaginary parts of all FFT outputs. The upper limit of the relation (11) corresponds to the classic FFT implementation by Cooley and Turkey [21]. The number of multiplications is reduced to *O*(*l*
*o*
*g*
_{2}
*N*) in [21], from *O*(*N*) that were required in the DFT definition of Eq. (1). Modern FFT implementations can further reduce the required number of multiplications below this limit leading to the relation (11), as described in [20]. In [22], time-domain sine-wave peak amplitude characteristics are estimated based on FFT data. Although the scalloping loss characteristics of the FFT degrade the accuracy, the author of [22] presents multiplier-free methods that show a scalloping error as low as 0.0113 dB.

Equations (6), (9), and (11), show that a better SNR can be achieved for small values of *R*, *S*, *q* (*d* is also proportional to the square root of *q*), as well as *N*. The quantization noise is also reduced in low order q-QAM modulations. These parameters can be related directly to the bit or symbol error rate shown by this system using the complementary error function (*erfc*) as described, e.g., in [23]. There are different versions of these relations, depending on the QAM modulation order *q* and the QAM coding used (e.g., grey coding). However, it can be generally stated that the probability of a symbol error is proportional to \(Q(c\cdot \sqrt {SNR_{AWGN}})\), where *c* is a constant depending on the QAM order *q*. For example, the probability of symbol error in 4-QAM and 16-QAM is approximately \(2Q(\sqrt {2\cdot SNR_{AWGN}})\) and \(3Q(\sqrt {4\cdot SNR_{AWGN}/5})\), respectively. The *Q* function is defined as: \(Q(x)=\frac {1}{2}erfc\left (\frac {x}{\sqrt {2}}\right)=\frac {1}{2\sqrt {2}}\int _{0}^{\frac {x^{2}}{2}}\frac {e^{-t}}{\sqrt {t}}dt\). The erfc function returns a value between 0 and 2. Consequently, the *Q* function is between 0 and 1. The probability of symbol error tends to 0 as *S*
*N*
*R*
_{
AWGN
} is increased. However, the sub-sampling error (*P*
_{
SS
} in Eq. (6)) dominates over the channel noise in this case. Thus, the increase of the overall *S*
*N*
*R*
_{
AWGN
} is prevented, even if the signal power *P*
_{
SIG
} gets much higher than the additive noise: \(\sigma _{noise}^{2}\). An error floor appears when the value of one or more of the parameters *R*, *S*, *q*, *N* is high.

### 2.3 FFT/IFFT implementation issues

A radix-2 *N*-pt FFT is performed by combining a pair of *N*/2-pt FFTs. The first FFT accepts as input the odd positioned inputs of the *N*-pt FFT and the second one the inputs from the even positions. The *N*/2-pt FFTs can be recursively implemented by pairs of *N*/4-pt FFTs and so forth until 2-pt FFTs are defined. In this way, the *N*
^{2} operations required by the *N*-pt DFT are reduced to *N*·*l*
*o*
*g*
_{2}
*N* [21]. The inputs in the FFT sub-blocks are bit reversed while the outputs are in normal order. The implementation of an *N*-point FFT using two *N*/2-pt FFTs is shown in Fig. 3
a. If the number of substituted samples on the receiver side is *R*=*N*/4, then all the input pairs of the *N*/2-pt, FFT-B with distance *N*/4, are equal. Thus, half of the *N*/2-pt FFT-B output values will be zero, as proved by the Eq. (12) below. The zero outputs of FFT-B in Fig. 3
a, are indicated with dashed arrows and the corresponding operations can be omitted. The *N*/2-pt FFTs can be flattened to lower order FFTs in order to apply recursively this property. The fraction of the multiplications and additions that can be omitted if *R*=*N*/4, is 3/8. If the number of substituted samples *R* is lower than *N*/4 then, a smaller number of FFT operations can be omitted. For example, if *R*=*N*/8 then, 1/8 of the additions and multiplications can be discarded.

$$\begin{array}{@{}rcl@{}} Y_{k}&=&\sum_{n=0}^{N/2-1}y_{n}w_{N}^{-kn}+\sum_{n=0}^{N/2-1}y_{n+\frac{N}{2}}w_{N}^{-k(n+N/2)}\\ &=& \sum_{n=0}^{N/2-1}y_{n}w_{N}^{-kn}+(-1)^{k} \sum_{n=0}^{N/2-1}y_{n}w_{N}^{-kn} \end{array} $$

((12))

Figure 3
b shows how an *N*-pt IFFT can be implemented on the transmitter. For example, the data samples *X*
_{
k
} (most of them are equal to *X*
_{
c
}) can be placed at the even positions of the IFFT input as shown in Fig. 2. Then, only the No. 0 output of the N/2-pt IFFT-A is equal to *X*
_{
c
} and the rest of the outputs are 0, as shown by Eq. (13) below. If the IFFT input packet structure of [17] was used, the data symbols should have been placed at the odd positions of the IFFT input. The IFFT-B would have zero outputs in this case.

$$ x_{n}=\frac{1}{N}\sum_{k=0}^{N-1}X_{k}w_{N}^{kn}=X_{c}\frac{1}{N}\sum_{k=0}^{N-1}w_{N}^{kn}=0, n\neq0 $$

((13))

The IFFT sub-blocks that can be turned off in the sub-sampling operating mode, can have a size of up to *N*/2. Of course, a small error overhead is posed since some *X*
_{
k
} symbols are not equal to *X*
_{
c
}. A lower error can be achieved if smaller IFFT sub-blocks are deactivated. Deactivating FFT sub-blocks at the receiver affects more the BER than the deactivation of IFFT sub-blocks. This is due to the fact that the deactivation of larger FFT blocks than those corresponding to the selected *R* value leads to information loss since FFT blocks with non-identical inputs are turned off. On the other hand, the size of the IFFT block that can be deactivated depends only on the sparseness level of the input data. It is not affected by the number of substituted samples *R* at the receiver. The deactivation of IFFT operations is based on the assumption that most of the data *X*
_{
k
} symbols have the same value *X*
_{
c
}.