## 2 Literature Review
Despite this, the increase in the number of users creates multiple access interference (MAI) thanks to a non-zero cross-correlation property, which leads to limiting the number of simultaneous users. In [22], a new code named the dynamic cyclic shift (DCS) has been suggested for optical CDMA systems. Further, the code supported a large number of users and any code weight; furthermore, the system performance demonstrates that the DCS code provides better performance in terms of BER as a function of the number of users at a high data rate. In [23], a zero cross-correlation code called multi-diagonal for one-dimensional spectral coding has been suggested. Moreover, the code is compared with MQC and RD codes; as a result, the results demonstrate that the MD code provides better performance in terms of SNR and BER as a function of the number of simultaneous users due to the ZCC property. In [8], a new zero cross-correlation code called [PERSON]'s triangle zero cross-correlation 1D-PTZCC for OCDMA system has been studied, where the proposed code totally suppressed the PINN noise thanks to the property of ZCC. In [7,24], a new zero cross-correlation code 1D-ZCC for the OCDMA-orthogonal frequency division multiplexing (OFDM) system has been studied. Furthermore, the code supports a large number of users and offers better performance due to the property of zero cross-correlation. In [5], a single-weight zero cross-correlation (2D-SWZCC) code based on 1D-SWZCC has been proposed; furthermore, the PINN noise is completely suppressed due to zero cross-correlation properties. Further, the code supports a large number of users at a high data rate; despite this, this code is used in the case where the code weight is unique. In [7], a two-dimensional half spectral/spatial zero cross-correlation (2D-HSSZCC) code has been proposed, where the effect of PINN is always absent; in addition, the system complexity has been reduced to half thanks to the ZCC property. Despite this, the code is compatible with an even number of users and needs narrow filters at the receiver level. In [8], [PERSON]'s triangle zero cross-correlation (2D-PTZCC) code is developed where the code supports a large number of users, needs narrow filters, and is affected by a low PINN noise. In [26], a two-dimensional dynamic cyclic shift (2D-DCS) code is developed for the purpose of removing PINN noise by using a method of cancellation property of the MAI. The code is characterized by high PINN noise, which leads to the presence of MAI, and needs two photo-detectors at the receiver to detect the optical signal. In [27], a two-dimensional Diagonal Eigen value Unity (2D-DEU) code is also proposed. Furthermore, the 2D-DEU code is affected by a high PINN noise due to non-zero cross-correlation, which leads to multi-access interference MAI. In [28], the two-dimensional multi-diagonal (2D-MD) code is proposed in order to reduce PINN noise. As a result, the code is characterized by MAI and needs narrow filters to detect an optical signal at the receiver. In [10], the three-dimensional (3D-SWZCC) code is also developed to eliminate the effect of PINN based on the two-dimensional spectral/time code 2D-SWZCC, and a one sequence 1D-SWZCC for the spatial code, where the system becomes efficient due to the ZCC property and supports a large number of users. Despite that, the code is still only compatible with a single weight. In [11], the three-dimensional code (3D-PTZCC) based on three sequences of the same PTZCC code where PINN is suppressed due to the property of ZCC, and the optical signal is detected by the direct detection technique. As well, the detection at the receiver needs narrow filters. In [12], the three-dimensional multi-diagonal (3D-MD) code has been developed where the PINN noise is totally suppressed. Moreover, the code supports a high data rate compared to the 1D and 2D codes, and the detection of the optical signal needs a narrow filter.