If you want to do a full study of this technique, we would definitely suggest to download and “play” with our Matlab implementation: https://uk.mathworks.com/matlabcentral/fileexchange/55995-cyclic-prefix-in-16qam-system-with-single-path-rayleigh
The Cyclic Prefix technique commonly used in OFDM based systems to avoid ISI (inter-symbol interference), whereby a copy of the end of the transmitted signal acts as a guard interval.
By adding the cyclic prefix, the transmitted signal will need more energy and therefore, there will be a bit rate reduction which can be overcome by choosing a symbol period greater than the cyclic
prefix length. One of the key points when implementing a system with CP is the loss of energy per symbol due to the addition of the CP:
Where N is the number of bits per symbol and v, the CP length. Therefore, in order to minimize these losses, the symbol length has to be much longer than the CP length. In addition, there is a constraint in the length of the CP, depending on the number of paths introduced by the channel. If the channel introduces a delay of Td, the corresponding CP should be equal to that delay. In the Matlab simulations, we need to set the CP length to maximum of the number of paths introduced by the channel minus one. This has an effect on Eb because only a fraction of it is used. For the M chips considered by the detector, the useful fraction of Eb is:
where Tc is the duration of the CP. Therefore, the SNR for each receiver is:
and G determine the effective gain introduced by the receiver.
In next posts we will develop and test a 16QAM system which includes DSSS and CP. In addition, a rake receiver will be implemented and we will check that the use of the CP helps to reduce the number of fingers of this receiver. Moreover, when using CP, the spreading sequence autocorrelation properties can be less exigent in terms of side-lobe energy, because the CP contributes to reduce ISI.
For a more detailed explanation, have a look to our previous post about a 16QAM DSSS system.