Keywords

1 Introduction

OFDM is a multicarrier modulation technique that consists of distributing a high bit rate bit stream over N low bit rates orthogonal sub-channels (or sub-carriers). This gives it several advantages in the frequency selective channels because, unlike the single carrier modulations, OFDM exhibits high resistance to selective fading and interference while offering a high degree of spectral efficiency.

Also, it lends itself to digital signal processing techniques while allowing to increase the bit rates of a transmission system and to simplify the equalization technique in reception.

For all these reasons, OFDM has been used during the last decade for a wide range of applications [1,2,3,4,5,6].

We can particularly mention ADSL for a wired context, WiFi, LTE (4G) and Digital Terrestrial Television for wireless systems. In addition, it is still considered for 5th generation mobiles (5G) in combination with a multiple access technique. However, among the multiple access techniques, the CDMA may be mentioned since it has the privilege of using the same bandwidth for all users, with each identified by a code. The codes have the effect of spreading the spectrum of the transmitted signal, which also provides a number of advantages including:

  • Good resistance to narrow-band disrupters

  • Low interference of conventional narrowband emissions

  • Insensitivity to the multipath effects (fading hollows)

  • Low probability of interception

  • Multiplexing and selective addressing

Faced with the use of OFDM for a large number of recent wireless applications, the scarcity of the spectrum and the increasing demand of users, the objective of this article is to combine the OFDM and CDMA techniques to propose a new mobile radio system that minimizes the use of the radio spectrum and greatly improves the quality of the transmitted signal.

Thus in this paper, we propose in a multipath Additive White Gaussian noise channel, a 4-QAM OFDM-CDMA synchronous multiuser system using OVSF codes.

The rest of the paper is organized as follows. In Sect. 2, we will first study the performance of a M-QAM OFDM single-user system. Then in Sect. 3, we will present the proposed system before studying its performance in Sect. 4. Section 5 concludes the paper.

2 Performance of a M-QAM OFDM Single User System

In this section, we consider an OFDM transmission in a multipath Additive White Gaussian Noise channel. Our goal is to see the impact of the constellation size and of the number of paths on the single user system BER.

2.1 Presentation of a M-QAM OFDM System

Consider a system emitting in a multipath Additive White Gaussian Noise channel an OFDM signal x(t) formed by P OFDM symbols. To avoid the presence of OFDM symbols interferences and OFDM carriers interferences, we add a cyclic prefix between two successive OFDM symbols.

x(t) is given by:

$$ x\left( t \right) = \mathop \sum \limits_{i = 1}^{P} x_{i} \left( t \right) = \mathop \sum \limits_{i = 1}^{P} (\mathop \sum \limits_{k = 1}^{{N_{c} }} c_{i} \left( k \right)e^{{j2\pi f_{k} \left( {t - iT_{s} } \right)}} ) $$
(1)

with P representing the total number of OFDM symbols, \( \varvec{x}_{\varvec{i}} \left( \varvec{t} \right) \) the ith OFDM signal or the ith OFDM symbol transmitted, \( \varvec{N}_{\varvec{c}} \) the total number of subcarriers, \( \varvec{c}_{\varvec{i}} \left( \varvec{k} \right) \) the kth M-QAM complex symbol of the ith OFDM symbol, \( \varvec{f}_{\varvec{k}} \) the kth subcarrier frequency and \( \varvec{T}_{\varvec{s}} \) the OFDM symbol duration.

By sampling \( x_{i} \left( t \right) \) at the times \( t = t_{n} = iT_{s} + nT \) where T represents the \( c_{i} \left( k \right) \) symbol duration and knowing that:

$$ f_{k} = \frac{k}{{T_{s} }} = \frac{k}{{N_{c} T}} $$
(2)

we obtain the discrete OFDM signal expression \( x_{n} \) corresponding to \( x\left( t \right) \) and given by:

$$ x_{n} = \sum\nolimits_{i = 1}^{P} {x_{i} \left( n \right)} = \sum\nolimits_{i = 1}^{P} {} (\sum\nolimits_{k = 1}^{{N_{c} }} {c_{i} \left( k \right)e^{{\frac{j2\pi kn}{{N_{c} }}}} } ) = \sum\nolimits_{i = 1}^{P} {IFFT} \left[ {c_{i} \left( k \right)} \right] $$
(3)

Thus according to the discrete Fourier transform properties, we have:

$$ c_{i} \left( k \right) = \frac{1}{{N_{c} }}FFT\left[ {x_{i} \left( n \right)} \right] $$
(4)

We rely on \( x_{n} \) expression to make a digital OFDM transmission system (Fig. 1) involving a cyclic prefix to avoid OFDM symbols interferences and OFDM carriers interferences.

Fig. 1.
figure 1

M-QAM OFDM system

2.2 Constellation Size Impact on the Single User System BER

In this sub-section, we study for a three paths Additive White Gaussian Noise channel, the constellation size impact on the BER of a M-QAM OFDM single user system.

The SNR in dB is given by the relation:

$$ {\mathbf{SNR}} = {\mathbf{Eb}}/{\mathbf{No}} + {\mathbf{10}}.{\mathbf{log}}\left( {\mathbf{k}} \right) + {\mathbf{10}}.{\mathbf{log}}\left( {{\mathbf{number}} \, \,{\mathbf{of}} \, \,{\mathbf{data}}\, \, {\mathbf{sub}} {\text{-}} {\mathbf{carriers}}/{\mathbf{N}}\_{\mathbf{fft}}} \right) $$
(5)

with SNR the signal to noise ratio, Eb the energy per bit, No the noise power spectral density, k the number of bits per symbol QAM and N_fft the FFT size.

The considered simulation parameters are summarized at Table 1 with M the constellation size, N the number of bits transmitted, N_fft the FFT size, Ncyc the cyclic prefix size and Nt the number of channel paths.

Table 1. Simulation parameters

Figure 2 shows the obtained results for number of data sub-carriers = N_fft

Fig. 2.
figure 2

BER of a M-QAM OFDM single user system

The simulation results of Fig. 2 show that for Eb/N0 varying from 0 dB to 20 dB, the best performance is obtained for the smallest constellation size which is M = 4.

2.3 Number of Paths Impact on the Single User System BER

In this sub-section, we study the number of paths impact on the BER of a 4-QAM OFDM single user system. The considered simulation parameters are: M = 4, N_fft = 128, N =  430080 bits, Ncyc = 8. The paths power profiles are given at Table 2.

Table 2. Simulation parameters

The obtained results are at Fig. 3.

Fig. 3.
figure 3

Number of paths impact on the BER of a 4-QAM OFDM single user system

Figure 3 shows best performance for a single path channel and the same performance for a 6 and a 10 paths channel.

3 Presentation of the Proposed System

In this section, we propose in a multipath Additive White Gaussian Noise channel, a M-QAM OFDM-CDMA synchronous multiuser system. In this system, the different users are identified by orthogonal spreading codes (OVSF codes).

The principle of this system is illustrated in Fig. 4.

Fig. 4.
figure 4

M-QAM OFDM-CDMA system

This system differs from a simple OFDM transmission system with the presence of the two blocks “Spreading” (before transmission of the OFDM symbols of each user in the channel) and “Despreading” (after the spread OFDM signals of the different users cross the channel so as to find the signal corresponding to each user). It is of a great spectral advantage because the same OFDM carriers are used for all users and each user is identified by an OVSF code.

  • M-QAM mapping

If we consider a system transmitting simultaneously to K users, a M-QAM mapping of the bits of each user is first made.

  • “S/P” and “IFFT” blocks

With the help of the S/P block, M-QAM symbols of each user are then grouped by block of size \( \varvec{N}_{{\varvec{fft}}} \) to enter the “IFFT” module in order to generate the \( \varvec{N}_{{\varvec{fft}}} \) OFDM symbol samples.

If for each user u is sent P OFDM symbols, then the nth OFDM symbol sample of the ith OFDM symbol of a user u is given by:

$$ \varvec{x}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right) = \sum\nolimits_{{\varvec{k} = 1}}^{{\varvec{N}_{{\varvec{fft}}} }} {\varvec{c}_{\varvec{i}}^{\varvec{u}} \left( \varvec{k} \right)} \varvec{e}^{{\frac{{\varvec{j}{\mathbf{2}}\varvec{\pi kn}}}{{\varvec{N}_{{\varvec{fft}}} }}}} = \varvec{IFFT}\left[ {\varvec{c}_{\varvec{i}}^{\varvec{u}} \left( \varvec{k} \right)} \right] $$
(6)

with \( 1 \le \varvec{i} \le \varvec{P} \), \( 1 \le \varvec{u} \le \varvec{K} \), \( 1 \le \varvec{n} \le \varvec{N}_{{\varvec{fft}}} \), \( \varvec{c}_{\varvec{i}}^{\varvec{u}} \left( \varvec{k} \right) \) the kth M-QAM symbol of the ith OFDM symbol of the user u and \( 1 \le \varvec{k} \le \varvec{N}_{{\varvec{fft}}} \).

Let’s consider \( \varvec{N}_{{\varvec{fft}}} = \varvec{N}_{\varvec{c}} \), then the ith vector of the \( \varvec{N}_{\varvec{c}} \) OFDM symbol samples of the user u is:

$$ \varvec{x}_{\varvec{i}}^{\varvec{u}} = \left[ {\begin{array}{*{20}c} {\begin{array}{*{20}c} {\varvec{x}_{\varvec{i}}^{\varvec{u}} \left( 1 \right)} \\ {\varvec{x}_{\varvec{i}}^{\varvec{u}} \left( 2 \right)} \\ \vdots \\ \end{array} } \\ {\varvec{x}_{\varvec{i}}^{\varvec{u}} \left( {\varvec{N}_{\varvec{c}} } \right)} \\ \end{array} } \right] $$
(7)
  • Cyclic prefix insertion

After insertion of the cyclic prefix of size \( \varvec{N}_{{\varvec{cyc}}} \), we get the vector \( v_{i}^{u} \) given by:

$$ \varvec{v}_{\varvec{i}}^{\varvec{u}} = \left[ {\begin{array}{*{20}c} {\varvec{x}_{\varvec{i}}^{\varvec{u}} \left( {\varvec{N}_{\varvec{c}} - \varvec{N}_{{\varvec{cyc}}} + 1} \right)} \\ \vdots \\ {\varvec{x}_{\varvec{i}}^{\varvec{u}} \left( {\varvec{N}_{\varvec{c}} } \right)} \\ {\varvec{x}_{\varvec{i}}^{\varvec{u}} \left( 1 \right)} \\ {\varvec{x}_{\varvec{i}}^{\varvec{u}} \left( 2 \right)} \\ \vdots \\ {\varvec{x}_{\varvec{i}}^{\varvec{u}} \left( {\varvec{N}_{\varvec{c}} } \right)} \\ \end{array} } \right] $$
(8)
  • «P/S» and «Spreading» blocks

It follows the P/S phase where the elements of \( v_{i}^{u} \) are sent in series in the «Spreading» block so that they can be spread one by one by the spreading code \( C^{u} = \left[ {C^{u} \left( 1 \right) C^{u} \left( 2 \right) \ldots \ldots \ldots \ldots \ldots C^{u} \left( {SF} \right)} \right] \) assigned to the user u. SF is the spreading factor.

Thus at the output of the «Spreading» block, we have for the user u the matrix \( E_{i}^{u} \) given by:

$$ \begin{aligned} & \quad \quad E_{i}^{u} = v_{i}^{u} .C^{u} = \left[ {\begin{array}{*{20}c} {x_{i}^{u} \left( {N_{c} - N_{cyc} + 1} \right)} \\ \vdots \\ {x_{i}^{u} \left( {N_{c} } \right)} \\ {x_{i}^{u} \left( 1 \right)} \\ {x_{i}^{u} \left( 2 \right)} \\ \vdots \\ {x_{i}^{u} \left( {N_{c} } \right)} \\ \end{array} } \right].[C^{u} \left( 1 \right) C^{u} \left( 2 \right) \ldots \ldots C^{u} \left( {SF} \right) \\ & = \,\left[ {\begin{array}{*{20}c} {x_{i}^{u} \left( {N_{c} - N_{cyc} + 1} \right).C^{u} \left( 1 \right)} & \cdots & {x_{i}^{u} \left( {N_{c} - N_{cyc} + 1} \right).C^{u} \left( {SF} \right)} \\ \vdots & \ddots & \vdots \\ {x_{i}^{u} \left( {N_{c} } \right).C^{u} \left( 1 \right)} & \cdots & {x_{i}^{u} \left( {N_{c} } \right).C^{u} \left( {SF} \right)} \\ \end{array} } \right] \\ \end{aligned} $$
(9)
  • Channel crossing

Let’s consider \( E_{i, j}^{u} \) the jth column of \( E_{i}^{u} \). After crossing the channel, the vector corresponding to it is \( R_{i, j}^{u} \).\( R_{i, j}^{u} \) is given by the convolution product of \( E_{i, j}^{u} \) with the impulse response \( h_{i}^{u} \).

$$ \varvec{R}_{{\varvec{i},\varvec{ j}}}^{\varvec{u}} = \varvec{E}_{{\varvec{i},\varvec{ j}}}^{\varvec{u}} \,\varvec{*}\,\varvec{h}_{\varvec{i}}^{\varvec{u}} = \left[ {\begin{array}{*{20}c} {\varvec{R}_{{\varvec{i},\varvec{j}}}^{\varvec{u}} \left( 1 \right) } \\ {\varvec{R}_{{\varvec{i},\varvec{j}}}^{\varvec{u}} \left( 2 \right)} \\ . \\ . \\ {\varvec{R}_{{\varvec{i},\varvec{j}}}^{\varvec{u}} \left( \varvec{N} \right) } \\ \\ \end{array} } \right] $$
(10)

And after the SF vectors \( E_{i, j}^{u} \) of the matrix \( E_{i}^{u} \) cross the channel, we have the matrix \( R_{i}^{u} \) given by:

$$ R_{i}^{u} = \left[ {\begin{array}{*{20}c} {R_{i,1}^{u} \left( 1 \right)\quad \quad \,R_{i,2}^{u} \left( 1 \right) \ldots \ldots \ldots \ldots . \ldots \ldots \ldots \ldots R_{i,SF}^{u} \left( 1 \right)} \\ {R_{i,1}^{u} \left( 2 \right) \;\;\quad R_{i,2}^{u} \left( 2 \right) \ldots \ldots \ldots \ldots \ldots \ldots \ldots \ldots .R_{i,SF}^{u} \left( 2 \right)} \\ . \\ . \\ {R_{i,1}^{u} \left( N \right)\quad R_{i,2}^{u} \left( N \right) \ldots \ldots \ldots \ldots . \ldots \ldots \ldots \ldots R_{i,SF}^{u} \left( N \right)} \\ \end{array} } \right] $$
(11)

with:

$$ N = N_{c} + N_{cyc} $$
(12)
  • Adding White Gaussian Noise

At the output of the channel, the K users’signals are summed together with White Gaussian Noise B given by:

$$ B = \left[ {\begin{array}{*{20}c} {B_{i, 1} \left( 1 \right) \quad B_{i, 2} \left( 1 \right) \ldots \ldots \ldots \ldots . \ldots \ldots \ldots \ldots B_{i, SF} \left( 1 \right)} \\ {B_{i, 1} \left( 2 \right) \quad B_{i, 2} \left( 2 \right) \ldots \ldots \ldots \ldots \ldots \ldots \ldots \ldots .B_{i, SF} \left( 2 \right)} \\ . \\ . \\ {B_{i, 1} \left( N \right) \quad B_{i, 2} \left( N \right) \ldots \ldots \ldots \ldots \ldots \ldots \ldots \ldots B_{i, SF} \left( N \right)} \\ \end{array} } \right] $$
(13)

This gives the matrix \( \varvec{Y}_{\varvec{i}} \)

$$ Y_{i} = \sum\nolimits_{u = 1}^{K} {(R_{i}^{u} ) + B} = \left[ {\begin{array}{*{20}c} {\sum\nolimits_{u = 1}^{K} {R_{i,1}^{u} \left( 1 \right) + B_{i, 1} \left( 1 \right)} \ldots \ldots \ldots \sum\nolimits_{u = 1}^{K} {R_{i,SF}^{u} \left( 1 \right) + B_{i, SF} \left( 1 \right)} } \\ {\sum\nolimits_{u = 1}^{K} {R_{i,1}^{u} \left( 2 \right) + B_{i, 1} \left( 2 \right) } \ldots \ldots \ldots \sum\nolimits_{u = 1}^{K} {R_{i,SF}^{u} \left( 2 \right) + B_{i, SF} \left( 2 \right)} } \\ . \\ . \\ {\sum\nolimits_{u = 1}^{K} {R_{i,1}^{u} \left( N \right) + B_{i, 1} \left( N \right)} .. \ldots \sum\nolimits_{u = 1}^{K} {R_{i,SF}^{u} \left( N \right) + B_{i, SF} \left( N \right)} } \\ \end{array} } \right] $$
(14)
$$ Y_{i} = \left[ {\begin{array}{*{20}c} {Y_{i, 1} \left( 1 \right)\quad Y_{i, 2} \left( 1 \right) \ldots \ldots \ldots \ldots . \ldots \ldots \ldots \ldots Y_{i, SF} \left( 1 \right)} \\ {Y_{i, 1} \left( 2 \right) \quad Y_{i, 2} \left( 2 \right) \ldots \ldots \ldots \ldots \ldots \ldots \ldots \ldots .Y_{i, SF} \left( 2 \right)} \\ . \\ . \\ {Y_{i, 1} \left( N \right) \quad Y_{i, 2} \left( N \right) \ldots \ldots \ldots \ldots \ldots \ldots \ldots \ldots Y_{i, SF} \left( N \right)} \\ \end{array} } \right] $$
(15)
  • «Despreading» and «S/P» blocks

The signal \( Z_{i}^{u} \) of a user u is obtained by multiplying successively each line of \( Y_{i} \) by the transpose of the code \( C^{u} \). that we note \( C_{u}^{T} \)

$$ C_{u}^{T} = \left[ {\begin{array}{*{20}c} {C^{u} \left( 1 \right)} \\ {C^{u} \left( 2 \right)} \\ . \\ . \\ {C^{u} \left( {SF} \right)} \\ \end{array} } \right] $$
(16)
$$ Z_{i}^{u} = Y_{i} .C_{u}^{T} = \left[ {\begin{array}{*{20}c} {Z_{i}^{u} \left( 1 \right)} \\ {Z_{i}^{u} \left( 2 \right)} \\ . \\ . \\ {Z_{i}^{u} \left( N \right)} \\ \end{array} } \right] $$
(17)

with:

$$ Z_{i}^{u} \left( n \right) = \sum\nolimits_{j = 1}^{SF} {Y_{i, j} \left( n \right)\,C_{u}^{T} \left( j \right)} $$
(18)
$$ Z_{i}^{u} \left( n \right) = \sum\nolimits_{j = 1}^{SF} {\left[ {\left( {\sum\nolimits_{u = 1}^{K} {R_{i, j}^{u} \left( n \right)} + B_{i, j} \left( n \right)} \right)C_{u}^{T} \left( j \right)} \right]} $$
(19)
$$ Z_{i}^{u} \left( n \right) = \sum\nolimits_{j = 1}^{SF} {\left[ {\left( {\sum\nolimits_{u = 1}^{K} {R_{i,j}^{u} \left( n \right)} } \right)C_{u}^{T} \left( j \right) + B_{i,j} \left( n \right)C_{u}^{T} \left( j \right)} \right]} $$
(20)
$$ Z_{i}^{u} \left( n \right) = \sum\nolimits_{j = 1}^{SF} {\left[ {\left( {\sum\nolimits_{u = 1}^{K} {\left\{ {E_{i,j}^{u} \left( n \right)*h_{i}^{u} \left( n \right)} \right\}} } \right)C_{u}^{T} \left( j \right) + B_{i,j} \left( n \right)C_{u}^{T} \left( j \right)} \right]} $$
(21)
$$ Z_{i}^{u} \left( n \right) = \sum\nolimits_{j = 1}^{SF} {\left[ {\left( {\sum\nolimits_{u = 1}^{K} {\left\{ {\left[ {v_{i}^{u} \left( n \right).C^{u} \left( j \right)} \right]*h_{i}^{u} \left( n \right)} \right\}} } \right)C_{u}^{T} \left( j \right) + B_{i,j} \left( n \right)C_{u}^{T} \left( j \right)} \right]} $$
(22)
$$ \begin{aligned} \varvec{Z}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right) & = \sum\nolimits_{{\varvec{j}{\mathbf{ = 1}}}}^{{\varvec{SF}}} {\left[ {\left[ {\left\{ {\left[ {\varvec{v}_{\varvec{i}}^{{\mathbf{1}}} \left( \varvec{n} \right).\varvec{C}^{{\mathbf{1}}} \left( \varvec{j} \right)} \right]*\varvec{h}_{\varvec{i}}^{{\mathbf{1}}} \left( \varvec{n} \right) + \cdots \ldots + \left[ {\varvec{v}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right).\varvec{C}^{\varvec{u}} \left( \varvec{j} \right)} \right]*\varvec{h}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right)} \right.} \right.} \right.} \\ & \;\;\left. {\left. {\left. { + \, \cdots \ldots + \left[ {\varvec{v}_{\varvec{i}}^{\varvec{K}} \left( \varvec{n} \right).\varvec{C}^{\varvec{K}} \left( \varvec{j} \right)} \right]*\varvec{h}_{\varvec{i}}^{\varvec{K}} \left( \varvec{n} \right)} \right\}\varvec{C}_{\varvec{u}}^{\varvec{T}} \left( \varvec{j} \right) + \varvec{B}_{{\varvec{i},\varvec{j}}} \left( \varvec{n} \right)\varvec{C}_{u}^{T} \left( \varvec{j} \right)} \right]} \right] \\ \end{aligned} $$
(23)
$$ \begin{aligned} & \varvec{Z}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right) = \sum\nolimits_{{\varvec{j} = \varvec{1}}}^{{\varvec{SF}}} {\left[ {\left[ {\varvec{v}_{\varvec{i}}^{\varvec{1}} \left( \varvec{n} \right).\varvec{C}^{1} \left( \varvec{j} \right)\varvec{C}_{\varvec{u}}^{\varvec{T}} \left( \varvec{j} \right)} \right]*\varvec{h}_{\varvec{i}}^{1} \left( \varvec{n} \right) + \cdots .\left[ {\varvec{v}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right).\varvec{C}^{\varvec{u}} \left( \varvec{j} \right)\varvec{C}_{\varvec{u}}^{\varvec{T}} \left( \varvec{j} \right)} \right]} \right.} \\ & \;\;\left. {*\,\varvec{h}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right) + \cdots . + \left[ {\varvec{v}_{\varvec{i}}^{\varvec{K}} \left( \varvec{n} \right).\varvec{C}^{\varvec{K}} \left( \varvec{j} \right)\varvec{C}_{\varvec{u}}^{\varvec{T}} \left( \varvec{j} \right)} \right]*\varvec{h}_{\varvec{i}}^{\varvec{K}} \left( \varvec{n} \right) + \varvec{B}_{{\varvec{i},\varvec{j}}} \left( \varvec{n} \right)\varvec{C}_{\varvec{u}}^{\varvec{T}} \left( \varvec{j} \right)} \right] \\ \end{aligned} $$
(24)
$$ \begin{aligned} & Z_{i}^{u} \left( n \right) = \sum\nolimits_{j = 1}^{SF} {\left[ {\left[ {C^{1} \left( j \right)C_{u}^{T} \left( j \right)} \right]v_{i}^{1} \left( n \right)*h_{i}^{1} \left( n \right) + \ldots + \left[ {C^{u} \left( j \right)C_{u}^{T} \left( j \right)} \right]v_{i}^{u} \left( n \right)} \right.} \\ & \;\,\;\left. {*\,h_{i}^{u} \left( n \right) + \ldots . + \left[ {C^{K} \left( j \right)C_{u}^{T} \left( j \right)} \right]v_{i}^{K} \left( n \right)*h_{i}^{K} \left( n \right) + B_{i,j} \left( n \right)C_{u}^{T} \left( j \right)} \right] \\ \end{aligned} $$
(25)

But \( C_{u}^{T} \left( j \right) = C^{u} \left( j \right) \) and (25) becomes

$$ \begin{aligned} & Z_{i}^{u} \left( n \right) = \sum\nolimits_{j = 1}^{SF} {\left[ {\left[ {C^{1} \left( j \right)C^{u} \left( j \right)} \right]v_{i}^{1} \left( n \right)*h_{i}^{1} \left( n \right) + \ldots + \left[ {C^{u} \left( j \right)C^{u} \left( j \right)} \right]v_{i}^{u} \left( n \right)} \right.} \\ & \;\;\left. {*\,h_{i}^{u} \left( n \right) + \ldots . + \left[ {C^{K} \left( j \right)C^{u} \left( j \right)} \right]v_{i}^{K} \left( n \right)*h_{i}^{K} \left( n \right) + B_{i,j} \left( n \right)C^{u} \left( j \right)} \right] \\ \end{aligned} $$
(26)

Because of orthogonality of the codes we have:

$$ Z_{i}^{u} \left( n \right) = SF.v_{i}^{u} \left( n \right)*h_{i}^{u} \left( n \right) + \sum\nolimits_{j = 1}^{SF} {B_{i, j} \left( n \right)C^{u} \left( j \right)} $$
(27)

And finally,

$$ \varvec{Z}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right) = \varvec{SF}.\varvec{v}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right)*\varvec{h}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right) + \varvec{B}_{\varvec{i}}^{\varvec{u}} \left( \varvec{n} \right) $$
(28)
  • Cyclic prefix suppression

After the suppression of the cyclic prefix, we obtain the vector \( W_{i}^{u} \) given by:

$$ W_{i}^{u} = \left[ {\begin{array}{*{20}c} {Z_{i}^{u} \left( {N_{cyc} + 1} \right)} \\ {Z_{i}^{u} \left( {N_{cyc} + 2} \right)} \\ . \\ . \\ {Z_{i}^{u} \left( N \right)} \\ \end{array} } \right] $$
(29)
  • «FFT» and «P/S» blocks

The FFT of the vector \( W_{i}^{u} \) generates \( N_{c} \) symbols. After channel equalization, these symbols are successively sent through the «P/S» block towards the «M-QAM demapping» block.

  • M-QAM demapping

Finally, at the «M QAM demapping» block, QAM demodulation of the symbols is performed in a hard decision taking

4 M-QAM OFDM-CDMA System Performance

4.1 Constellation Size Impact on the BER of a Two Users System

In this sub-section, we assume that the system transmits simultaneously the signals of two users: user1 and user2. Our objective is to study user1 signal BER evolution according to the constellation size M.

The SNR in dB is given by:

$$ {\mathbf{SNR}} = {\mathbf{Eb}}/{\mathbf{No}} + {\mathbf{10}}.{\mathbf{log}}\left( {\mathbf{k}} \right) + {\mathbf{10}}.{\mathbf{log}}\left( {{\mathbf{number}} \, \,{\mathbf{of}}\, \, {\mathbf{data}} \, \,{\mathbf{carriers}}/{\mathbf{N}}\_{\mathbf{fft}}} \right). $$
(30)

Eb is the energy per bit, No the noise power spectral density and k the number of bits per QAM symbol.

The considered simulation parameters are in Table 3 with M the constellation size, N the number of bits transmitted, N_fft the FFT size, Ncyc the cyclic prefix size, Nt the number of paths in the channel and SF the spreading factor.

Figure 5 shows the obtained results for a number of data carriers equal to N_fft.

Table 3. Simulation parameters
Fig. 5.
figure 5

User 1 signal BER in a M-QAM OFDM-CDMA system

The results in Fig. 5 show that for a fixed value of Eb/N0, the user1 signal BER increases with the constellation size M. Also for a fixed M, the user1 signal BER decreases when Eb/N0 increases. Consequently, the best performance is obtained with M = 4.

4.2 SF Impact on the BER of a 4-QAM OFDM-CDMA Two Users System

Here we consider a 4-QAM OFDM-CDMA two users system with the simulation parameters of Table 3 for N, N_fft, Ncyc, Nt and the path power profiles. By varying SF we get the results in Fig. 6 giving the user 1 signal BER.

Fig. 6.
figure 6

SF impact on the user1 signal BER

Figure 6 shows that in a 4-QAM OFDM-CDMA synchronous two users system, user1 signal performance increases with the code length SF.

4.3 Number of Paths Impact on the BER of a 4-QAM OFDM-CDMA Two Users System

Here we study for a 4-QAM OFDM-CDMA synchronous two users system, the number of paths impact on the user1 signal BER. The considered simulation parameters are: M = 4, N_fft = 128, N = 430080 bits, Ncyc = 8 and SF = 32. The paths power profiles are given at Table 4 and the simulation results at Fig. 7.

Table 4. The paths power profiles of the 2 users
Fig. 7.
figure 7

Number of paths impact on the user1signal BER

The results show that the best performance is obtained for a single path channel. For a 6 and a 10 paths channel, we see the same performance up to 16 dB. Beyond 16 dB, the best performance is obtained for a 6 paths channel.

4.4 Comparison of a 4-QAM OFDM Single User System and of a 4-QAM OFDM-CDMA Multiuser System

Consider a synchronous multiuser system based on OFDM access. It remains obvious that this system will give better performance in the event that it only transmits the signal of a single user.

In this sub-section, we want to determine the OFDM transmission system optimizing bandwidth and providing better signal quality. For this, we will compare the signals BER of two users having the same paths power profiles. One (user1) is in a 4-QAM OFDM single user system and the other (always user1) is in a 4-QAM OFDM-CDMA synchronous multiuser system. The comparison is made in a six paths Additive White Gaussian Noise channel and the considered simulation parameters are N = 860160 bits, N_fft = 128, Ncyc = 8 and Nt = 6. The users power profiles are given at Table 5 and the results at Fig. 8.

Table 5. The users power profiles in a 6 paths channel
Fig. 8.
figure 8

User1 signal BER in a 4-QAM OFDM single-user system and in a 4-QAM OFDM-CDMA twenty users system

The simulation results at Fig. 8 show for the values of Eb/N0 going from 0 dB to 11,5 dB, that the user1 signal BER is better in the 4-QAM OFDM-CDMA synchronous 20 users system. Beyond 11,5 dB, the user1 signal BER is the same in the two systems.

5 Conclusion

This work has been undertaken in a multipath Additive White Gaussian Noise (AWGN) channel to compare two types of systems: M-QAM OFDM systems and M-QAM OFDM-CDMA systems.

First, we studied the BER evolution of a M-QAM OFDM single-user system as a function of the constellation size M. This study showed that the lowest BER is reached with M = 4. Subsequently, we relied on a 4-QAM OFDM single-user system to study the impact of the number of channel paths on the system BER. This resulted in a BER which becomes smaller and smaller when the number of channel paths decreases (therefore better performance for a one path channel).

In a second step, we went on to study the performances in terms of BER of a M-QAM OFDM-CDMA synchronous multiuser system.

  • The first study was to consider a M-QAM OFDM-CDMA two-user system to see the impact of the value of M on the user1 signal BER. This resulted in a lower BER for M = 4.

  • In the second study, we considered a 4-QAM OFDM-CDMA two-user system with FFT = 128 to assess the impact of the spreading factor SF on the user1 signal BER. As a result, we came up with a weaker BER due to the increase of SF.

  • In the third study, we considered with FFT = 128 and SF = 32, a 4-QAM OFDM-CDMA two-user system to see the impact of the number of channel paths on the user1 signal BER. As a result (in a 10, 6, 3 and 1 path channel), we observed a user1 signal BER that decreases when the number of channel paths decreases. So, better performance for a one path channel.

  • Finally, we compared for a six paths channel, user1 signal BER in a 4-QAM OFDM single-user system and in a 4-QAM OFDM-CDMA synchronous multiuser system. For the same paths power profiles in the two systems application, FFT = 128 and SF = 32, we see that the user1 signal BER is better in the synchronous multiuser system where the OFDM symbols are spread; that is to say in the 4-QAM OFDM-CDMA system.

If in terms of BER a 4-QAM OFDM single-user system is normally more efficient than a 4-QAM OFDM synchronous multiuser system, we note from the simulations made in this paper that when SF is great, a 4-QAM OFDM-CDMA synchronous multi-user system is far better than a 4-QAM OFDM single user system. In the case for example of a 6 paths channel and for SF = 32, we do not obtain a sole better quality of user1 signal in the 4-QAM OFDM-CDMA twenty-user system, but also a less use of radio resources because the same OFDM carriers are allocated to the twenty users each identified by an OVSF code.

In the OFDMA multiple access technique which is based on OFDM, each user has his block of N sub-carriers. Therefore, it is necessary to have as many different blocks of N subcarriers as users to perform the OFDMA multiple access. But when SF is great, we have just seen that a 4-QAM OFDM-CDMA synchronous multi-user system offers better signal quality and greatly optimizes bandwidth. A 4-QAM OFDM-CDMA transmission system can nowadays be used on wireless OFDM systems such as the OFDMA-based LTE downlink or even be a 5th generation mobile system.