A New Hybrid Prime Code for OCDMA Network Multimedia Applications

: This paper presents a new family of spreading code sequences called hybrid prime code (HPC), to be used as source code for the optical code division multiple access (OCDMA) network for large network capacity. The network capacity directly depends on the number of available code sequences provided and their correlation properties. Therefore, the proposed HPC is designed based on combining two or more different code words belonging to two or more different prime numbers. This increases the number of code sequences generated. The code construction method utilized allows the generation of different code sets, each with different code length and weight, according to the number of prime numbers used. In addition, the incoherent pulse position modulation (PPM) OCDMA system is proposed based on the HPC code. Furthermore, the bit error rate (BER) performance analysis is introduced versus the received optical power and the number of active users. Moreover, the error vector magnitude (EVM) is calculated versus the optical signal-to-noise ratio. This work proves that using two prime numbers simultaneously generates far more codes than using prime numbers separately. It also achieved an OCDMA system capacity higher than the system that uses the optical orthogonal codes (OOCs), modiﬁed prime codes (MPCs) families, and two code families with separate simultaneously prime numbers, at a BER below 10 − 9 which is the optimum level.


Introduction
In the last three decades, there were two main categories of optical orthogonal codes, based on (0, 1) logic, and were introduced into the optical code division multiple access (OCDMA) networks.The first code category refers to the optical orthogonal codes (OOCs) and is designed with low off-peak, auto-and cross-correlation properties for the purposes of frame synchronization and minimum interference [1][2][3][4][5][6][7][8][9].The second one refers to the prime codes (PCs) and is designed to sacrifice the auto-correlation property [10][11][12][13][14][15][16][17][18][19][20][21].In direct sequence OCDMA (DS-OCDMA) networks, each user assigns a different code sequence to spread its data bits.Moreover, all code sequences are orthogonal and share the same available bandwidth such as the OOCs, MPCs, and other spreading codes in the literatures.Before the spreading, line coding such as block codes can be used at the bit level in order to detect and correct the data bits at the receiving end.
In order to improve the OCDMA network's performance, many researchers have focused on the modification of the OOC and PC parameters such as code length, code weight, and code correlation properties.Ultimately, the total number of code sequences provided is the most important network parameter.It limits the number of users sharing the network simultaneously.To date, all of the previous results demonstrated that the PC family such as; modified PCs (MPCs), padded MPCs (PMPC), new-MPCs (n-MPC), double padded MPCs (DPMPCs), uniform cross-correlation MPCs (UC-MPCs), enhanced MPCs (EMPCs), and weighted MPCs (WMPCs) can offer a greater number of sequences with much better characteristics than the OOC [22][23][24][25][26].
Within the PC family, the WMPC is an improvement over MPC, i.e., double the number of code sequences, higher code weight, and better correlation properties assuming the same PC sequence length [27][28][29][30][31][32][33].The MPC uses complex analysis methods to increase the code weight to further comply with the auto-correlation peak value.From these observations, the main objective of this study is to propose a new code family called hybrid prime codes (HPC) that is not related to the MPC and their method of construction but only depends on the code words of the PC.This new code family is able to provide data for the following issues efficiently: (1) Maximum number of code sequences for maximum number of users, leading to an increase in the network capacity for data and multimedia applications.(2) Minimum code length to increase the user bit rate.
(3) Optimal code weight for good network bit error rate (BER) performance.(4) Minimum cross-correlation values to prevent multiple access interference (MAI).
(5) Reliable code parameter variation while keeping the same cross-correlation value.(6) Simplicity of code generation.(7) Minimum cost with respect to the line coding techniques in optical domain.
Two main goals required for a high performance OCDMA network: (1) High signal integrity in the midst of interference at the receiving end.
(2) Broader network capacity.Therefore, all optical code sequences have to be in the optical orthogonal category in order to distinguish the target user from the rest.
The remainder of this paper is organized as follows.Section 2 is a literature review on the 2-D OCDMA codes.The construction principles and correlation properties of the HPC are introduced in Section 3. Section 4 shows the code correlation results.The proposed OCDMA system model is illustrated in Section 5. Section 6 is the BER performance analysis, while Section 7 is the throughput analysis.Section 8 displays and discusses the simulation results.Section 10 is devoted to the main conclusions.

Literature Review
The main disadvantage of the 1D code is the need for a long code length for a large system capacity, where a large bandwidth is used in spectral coding and ultrashort pulses have to be used in temporal coding.Various 2D schemes are proposed to circumvent this problem.The 2D code can be constructed through various combinations of time, spectral, and space.There has been much research into the 2D spectral/time, spectral/space, and space/time domains.One of the most popular schemes is the MPC.In this scheme, different data bits are temporally spread by using optical delay lines for the incoherent OCDMA networks.In this section, we will present the most important previous research, as well as what has been accomplished in each research.This will lead us to present the idea and importance of the proposed code.
In [34], the design of a 2D temporal/spatial incoherent OCDMA system is presented based on matrix codes with experimental results.The proposed system BRE performance was compared with the performance of the other system which uses the temporal codes.The results showed that the system performance based on the proposed designed code is better than the systems that use other codes.This is due to the lower losses with no side lobes in auto-correlation property.
In [35], the authors proposed a new set of 2D wavelength/time codes with orthogonal properties in both domains for the OCDMA network.This code set was generated by an array of fiber gratings and was constructed based on the expansion operation from the 1D to 2D Hamming correlation.The BER performance was derived theoretically in terms of only the MAI and all other noise sources are neglected.The numerical simulations proved that the BER was improved compared with the BER of the systems that use other codes when using the smallest number of wavelength sets.
In [36], the generation of a 2D pseudo-orthogonal code sequence was presented using the optimum Golomb rules.The authors analyzed the BER performance of a synchronous OCDMA system using 2D wavelength/time codes.It was shown that this code has higher cardinality and good spectral density than the linear code sequence.
In [37], the spatial/spectral codes and corresponding system architecture were presented.The developed code was constructed based on two 1D M-sequences.The detection operation at the receiver was performed using only a binary multiplier.The authors proved that these codes have better BER performance than 1D M-sequence code if the number of active users is increased in the network.However, the MAI limits the system performance because of the dependency on the 1D M-sequence for the code construction.
In [38], a new code family named 2D projection code was proposed with a balanced detection receiver.The code construction was based on the projection of 2D code into 1D wavelength code.The MAI was eliminated using the balanced detector.The BER performance was improved at the higher number of active users compared with the differential detection techniques.
In [39], a 2D wavelength/time OOCs family was constructed for asynchronous OCDMA systems.These codes have more flexibility than the conventional 2D codes relative to the code size.The system performance based on the Markov chain technique was analyzed.The authors proved that this code provides better BER performance than the others, and the number of active users is dependent on the code size.
In [40], the authors developed a 2D spatial/spectral code and used a MAI cancellation technique to enhance the BER performance.This code family was constructed based on a 1D perfect difference code and was named 2D perfect difference code.Moreover, the transceiver architecture was presented based on this 2D code and the results indicated that this system can accommodate more active users than the 2D M-sequence codes.
In [41], the authors combined one-coincidence frequency hop code (OCFHC) and OOC to demonstrate a new code called OCFHC/OOC.In this code, each code word used a single wavelength.The maximum cross-correlation between any pair of code words is one.The authors evaluated the system performance in terms of the throughput based on a new method called effective normalized throughput with the diverse code method used as a benchmark.Moreover, the numerical simulations of the BER performance are presented.
In [42], the authors constructed a high parameter-flexible 2D minimum weight OOC.They used minimum wavelengths that corresponded to the code weight with short lengths.Moreover, the electrical coding/decoding process was investigated based on the parallel interference cancellation receiver.The authors proved that when the encoder and decoder were implemented, electrically, the parallel interference cancellation receiver worked better than the conventional correlation receiver.
In [43], a 2D spectral/spatial code was developed based on the existing modified quadratic congruence code and M-sequence code.The authors used a tunable fiber Bragg grating to construct the corresponding transceiver.The receiver was designed to eliminate the MAI and enhance the system BER performance.
In [44], a new spectral/spatial code called diluted perfect difference code was developed.The code construction was based on the dilution method and the 1D perfect difference code.The corresponding OCDMA transceiver was presented.This code has a MAI cancellation property used to eliminate the interference between users due to multiple access.The authors proved that the BER performance, when calculated using the proposed code, is better than the other codes at 1.5 Gbps and 2.5 Gbps.
In [45,46], a new 2D wavelength/time code family was proposed based on the modified quadratic congruence code.The encoder/decoder structures were presented based on tunable optical delay lines.The balanced detector was used at the receiver to completely eliminate the MAI.It was proven that the OCDMA system using this new code can accom-modate a larger number of active users with a better BER performance than the system using 2D wavelength/spatial M-matrix code.
In [22], a 2D weighted modified prime code (WMPC) based on the existing MPC was developed.The author analyzed and presented the auto-correlation and cross-correlation properties of this new code in comparison with all the codes belonging to the MPC.The obtained results proved that the cross-correlation property of this code is limited to one and the auto-correlation property is higher than that of other MPC families.In [47], the design of 2D photonic crystal OCDMA encoder based on the WMPC was developed and presented.
In [48,49], a 2D multi-length WMPC (ML-WMPC), in multi-rate form based on multiple prime numbers, was used to accommodate different rates of multimedia services in the incoherent PPM-OCDMA network.In this research, the system BER performance was analyzed for different OCDMA receivers and the MAI cancellation receiver with Manchester encoding achieved better performance.The authors proved that the BER performance of network based on this multi-length code outperforms the ML-OOC's and all MPC families in the presence of the MAI cancellation receiver and Manchester encoding.
In [50,51], a new 2D double-length MPC (DL-MPC) was applied to wireless incoherent PPM-OCDMA and coherent BPSK-OCDMA networks, respectively.The wireless channel model was represented by a gamma-gamma model.In [51], the balanced detector was used at the receiving end to completely eliminate the MAI and other noise.The authors proved that the BER performance of coherent BPSK-OCDMA systems based on a new code outperforms all the incoherent and coherent systems using the other codes.
In [52,53], a 2D optimized MPC (OMPC) was developed to improve the BER performance of the PPM-OCDMA system by increasing the code weight of the DL-MPC to an optimum value.The MAI cancellation receiver was used to improve the signal-to-noise ratio.The code characteristics are compared with the other existing code characteristics and the proposed OMPC proved to be the best.Furthermore, the system BER performance based on this code was improved compared with the other existing codes.

Code Construction
The proposed HPC code is based on using two different prime numbers P 1 and P 2 ; P 2 is the greater prime number than P 1 .Each prime number can generate a number of code words equal to the same prime number.Each code word contains a number of chips equal to the corresponding prime number.Each code word contains one active chip "HIGH" and the remaining chips are "ZEROs".The position of the active chip is d i or j , where d i or j ∈ 0, 1, 2, . . ., P i or j − 1 .For the first prime number P i , the code words can be generated as X oi , X 1i , X 2i, • • • X (P i −1)i and for the second prime number P j , the code words can be generated as For example, when P 1 = 5 and P 2 = 7, the generated code words are listed in the following two groups: The code words listed in the above two groups are then utilized to construct the two code sequence trees as shown in Tables 1 and 2 based on the branching operation.

Folded Code Sequences
Code Sequences Table 2. Code sequences tree for P = 7.

Folded Code Sequences
Code Sequences The number of code sequences in the first and second trees in Tables 1 and 2 are K 1 = P 1 (P 1 − 1) and K 2 = P 2 (P 2 − 1), respectively.However, it is also shown in the twocode sequence trees that Thus, the number after the minus sign, such as 1, represents the number of code sequences that are not used in coding construction (the bold faced and highlighted code sequences in Table 2).

Code Construction Procedure
(a) Arrange the code sequences in the first tree, row by row in one column, as shown in Table 3, column 1.(b) Merge the code sequences in column 1 with the code sequences in the right side of the second tree in Table 2, column by column, as shown in Table 3, column 2. (c) Rotate the final code sequences in column 2 horizontally from right to left until the first code word in this sequence becomes the last one, as shown in Table 3, column 3.
After these operations, the final code sequence can generally be expressed as: The total number of code sequences in Table 3 is equal to K, where K = K 1 × number of merged code words (i.e., equals four in column 2, Table 3) and the total number of code sequences can be generated equal to 2 K if the left half code sequences (the folded tree) in Table 2 have been used.
In comparison with the other orthogonal codes used in the OCDMA networks, such as the OOCs and the MPCs, the proposed code achieved the following advantages: 1. Limited cross-correlation "0" or "1"; 2. Very large number of code sequences can provide a large number of simultaneous users without sacrificing performance; 3. Shorter code length for the same higher bit rate transmission.Table 4 summarizes the comparison between the HPC and the other orthogonal codes used in the OCDMA networks.Table 4 shows that the number of sequences provided by the OOC, MPC, and HPC are 2, 25, and 160, respectively.Moreover, the code lengths of the OOC, MPC, and HPC are 32, 25, and 24, respectively when P 2 = 7.

Correlation Properties
Equation (1) represents the auto-and cross-correlation functions of the HPC sequences according to Table 3.
This equation illustrates that: (a) The peak value of the auto-correlation property is 2n, where n is an integer number equal to the number of code words used to construct the code sequence in each tree.(b) The value of the cross-correlation property is "0" or "1" between any two different code sequences in the coding of Table 3 and is independent of whether these two codes share the same code index or not.(c) m ∈ {0, 1, 2, . . . . . . ,(Pi + 2Pj)} and z ∈ {0, 1, . . . ,(P i − 2)}

Correlation Results
The simulations in this section are performed to test the auto-and cross-correlation properties of the proposed HPC family at every synchronized time which is equal to the encoded bit time duration and to the time that represents the code sequence length.Figures 1-7 show the auto-correlation property of the HPC sequences C 01 , C 43 , C 71 , C 110 , C 141 , C 163 , and C 182 , respectively.The results illustrate that the auto-correlation peak value is equal to "Four".Such value represents the number of code words in each code sequence belonging to the HPC family.This value can be increased by increasing the number of code words.It is noted that the side lobe values on both sides of the peak value are limited to either "ZERO" or "ONE" in all results.These results are better than the results obtained from MPC and OOC families.
This equation illustrates that: (a) The peak value of the auto-correlation property is 2n, where n is an integer number equal to the number of code words used to construct the code sequence in each tree.(b) The value of the cross-correlation property is "0" or "1" between any two different code sequences in the coding of Table 3 and is independent of whether these two codes share the same code index or not.(c)  ∈ {0, 1, 2, … … , ( + 2)} and  ∈ {0, 1, … , (  − 2)}.

Correlation Results
The simulations in this section are performed to test the auto-and cross-correlation properties of the proposed HPC family at every synchronized time which is equal to the encoded bit time duration and to the time that represents the code sequence length.Figures 1-7 show the auto-correlation property of the HPC sequences  01 ,  43 ,  71 ,  110 ,  141 ,  163 , and  182 , respectively.The results illustrate that the auto-correlation peak value is equal to "Four".Such value represents the number of code words in each code sequence belonging to the HPC family.This value can be increased by increasing the number of code words.It is noted that the side lobe values on both sides of the peak value are limited to either "ZERO" or "ONE" in all results.These results are better than the results obtained from MPC and OOC families.Figures 8-13 represent the value of the cross-correlation between two code sequences in the same group.It is clear that for every synchronized time referred to the shift number "24", the cross-correlation value is "ZERO".This achieves perfect orthogonality and zero interference at the receiver side.Figures 8-13 represent the value of the cross-correlation between two code sequences in the same group.It is clear that for every synchronized time referred to the shift number "24", the cross-correlation value is "ZERO".This achieves perfect orthogonality and zero interference at the receiver side.Figures 8-13 represent the value of the cross-correlation between two code sequences in the same group.It is clear that for every synchronized time referred to the shift number "24", the cross-correlation value is "ZERO".This achieves perfect orthogonality and zero interference at the receiver side.The cross-correlation property between two code sequences from two different groups are illustrated in Figures 14-19 These results show that the cross-correlation value is "ZERO" or "ONE" at every synchronized time.If the HPC sequences are applied to the asynchronous OCDMA network, each user can communicate in the network at unique time slots that cause out-of-phase and undesirable correlation values, as shown between each synchronized time.The cross-correlation property between two code sequences from two different groups are illustrated in Figures 14-19 These results show that the cross-correlation value is "ZERO" or "ONE" at every synchronized time.If the HPC sequences are applied to the asynchronous OCDMA network, each user can communicate in the network at unique time slots that cause out-of-phase and undesirable correlation values, as shown between each synchronized time.The cross-correlation property between two code sequences from two different groups are illustrated in Figures 14-19.These results show that the cross-correlation value is "ZERO" or "ONE" at every synchronized time.If the HPC sequences are applied to the asynchronous OCDMA network, each user can communicate in the network at unique time slots that cause out-of-phase and undesirable correlation values, as shown between each synchronized time.

The Proposed OCDMA System Model
Figure 20 shows the proposed OCDMA transceiver system architecture based on the HPC.To prevent the pulse spreading during the optical fiber channel, the data is first PPM modulated.Each PPM chip is spread by the proposed HPC sequence of length L and weight W and then is fed to a star coupler optical channel to broadcast it [54].The system multiplicity M is the power control factor that controls the optical power level at the receiver.The total number of available code sequences is the most important factor for the system capacity calculation and throughput.Additionally, the MAI caused by the star

The Proposed OCDMA System Model
Figure 20 shows the proposed OCDMA transceiver system architecture based on the HPC.To prevent the pulse spreading during the optical fiber channel, the data is first PPM modulated.Each PPM chip is spread by the proposed HPC sequence of length L and weight W and then is fed to a star coupler optical channel to broadcast it [54].The system multiplicity M is the power control factor that controls the optical power level at the receiver.The total number of available code sequences is the most important factor for the system capacity calculation and throughput.Additionally, the MAI caused by the star

The Proposed OCDMA System Model
Figure 20 shows the proposed OCDMA transceiver system architecture based on the HPC.To prevent the pulse spreading during the optical fiber channel, the data is first PPM modulated.Each PPM chip is spread by the proposed HPC sequence of length L and weight W and then is fed to a star coupler optical channel to broadcast it [54].The system multiplicity M is the power control factor that controls the optical power level at the receiver.The total number of available code sequences is the most important factor for the system capacity calculation and throughput.Additionally, the MAI caused by the star coupler optical channel is also the important factor that affects the BER performance and system capacity and is considered in the performance analysis.coupler optical channel is also the important factor that affects the BER performance and system capacity and is considered in the performance analysis.

BER Performance Analysis
Each HPC sequence is characterized by the following parameters: , where   is the prime number and n is the number of the different prime numbers used for the code construction.2n, is the number of code words in each code sequence generated.The total number of sequences generated  = 2  (  − 1), where   is the minimum prime number used for the code construction.
Throughout the analysis, it is assumed that  is the maximum number of active users out of the  number of sequences available, with the remaining number of users being inactive.In addition,   ,  ∈ {1, 2, … … , } is given as a random variable which is defined as [48,49]: Thus, ∑    =1 = .Furthermore, the number of active users in the first group can be represented by a random variable , and  is the variable that realizes .When user #2 is recommended, then  = ∑   ,  =1 and its probability function can be written as: where umin = max(N + P1 − K, 1), and umax = min(N, P1 ).Furthermore, the random vector  = ( 0 ,  1 , … … ,  −1 ) represents the amount of MAI interference, where lj is a random variable representing the number of pulses interfering the time slot number j.Additionally, w = (w0, w1, ……., wM−1) U is the vector that realizes the vector l and U = u.The probability of the random vector l can be expressed as: where ∑   −1 =0 =  − .In case of the PPM-OCDMA scheme, the BER performance can be expressed as:

BER Performance Analysis
Each HPC sequence is characterized by the following parameters: 2n, is the number of code words in each code sequence generated.The total number of sequences generated K = 2nP min (P min − 1), where P min is the minimum prime number used for the code construction.
Throughout the analysis, it is assumed that N is the maximum number of active users out of the K number of sequences available, with the remaining number of users being inactive.In addition, α n , n ∈ {1, 2, . . . . . . ,K} is given as a random variable which is defined as [48,49]: Thus, Furthermore, the number of active users in the first group can be represented by a random variable U, and u is the variable that realizes U. When user #2 is recommended, α n , and its probability function can be written as: where u min = max(N + P 1 − K, 1), and u max = min(N, P 1 ).
Assume each PPM pulse having a number of photons Q that can be defined by Q = P r P t × ln M W . Furthermore, the random vector l = (l 0 , l 1 , . . . . . . ,l M−1 )U represents the amount of MAI interference, where l j is a random variable representing the number of pulses interfering the time slot number j.Additionally, w = (w 0 , w 1 , . . . . . .., w M−1 ) U is the vector that realizes the vector l and U = u.
The probability of the random vector l can be expressed as: where In case of the PPM-OCDMA scheme, the BER performance can be expressed as: According to the characteristics of HPC, Equation (5) can be modified as:

Throughput Analysis
The throughput calculation is mainly based on two important parameters such as the information rate and system capacity.It should be assumed that T M is the M-ary frame duration, L is the HPC sequence length, and each time slot has duration τ which equals LT c .Therefore, for different applications τ can be expressed as: The throughput R HPC for variable T C , according to the provided application by the network, can be defined as: ψ HPC (9) where is the chip rate and ψ HPC is a factor that represents the probability of received bit correctly multiplied by the maximum throughput or the steady state value of the throughput.The user throughput product measures the total information rate transmitted by all users in a network.This product denoted by N × R HPC , but in practice, the parameters M, L, and T c are optimized in order to maximize the users-throughput product.

EVM Analysis
The error vector magnitude (EVM) is a new important metric for measuring the quality of the optical signal with BER and throughput performances.For N randomly transmitted symbols, EVM is defined by the root mean square value of the difference between the received error vector and the ideal transmitted vector [55].For M-ary modulation the BER can be expressed as a function of the EVM as [56,57]: For more simplicity, EVM can also be expressed as:

Simulation Results
Figure 21 shows the BER performance of the OCDMA system versus the number of active users based on the proposed HPC.The graph compares HPC with OOC, MPC, EMPC, and WMPC (please refer to legend).The result illustrates that when n = 2, L = 24, and W = 4 the HPC outperforms the other codes and the OCDMA can accommodate 80 users at BER equal to 10 −10 .This means lower MAI as a result of good code correlation characteristics.If the code length and code weight are increased, the system can accommodate a higher number of active users at slightly higher BER due to the incremental increase in the MAI.Despite this increase, the proposed code is still better than the other codes as shown in Figure 22.

Simulation Results
Figure 21 shows the BER performance of the OCDMA system versus the number of active users based on the proposed HPC.The graph compares HPC with OOC, MPC, EMPC, and WMPC (please refer to legend).The result illustrates that when n = 2, L = 24, and W = 4 the HPC outperforms the other codes and the OCDMA can accommodate 80 users at BER equal to 10 −10 .This means lower MAI as a result of good code correlation characteristics.If the code length and code weight are increased, the system can accommodate a higher number of active users at slightly higher BER due to the incremental increase in the MAI.Despite this increase, the proposed code is still better than the other codes as shown in Figure 22.Considering the optimum value of BER and the value of system multiplicity M, Figure 23 presents the system users-throughput product against the number of active users N in case of the proposed HPC in comparison with the existing MPC.The results show that at any value of N, the system throughput product decreases as the system multiplicity increases.In addition, the results show that when the HPC is used the users-throughput product slightly increases as the number of active users N increases.This due to the dependence of N and the code length L on the used prime numbers P 1 & P 2 .On the other hand, when the MPC is used the users-throughput product remains the same when the number of active users increase, which is due to the minimum available number of codes.Finally, the system throughput product in the case of HPC outperforms the throughput product in the case of MPC due to the difference in the chip rate illustrated in the previous results in Figure 22 and the higher number of codes available.Considering the optimum value of BER and the value of system multiplicity M, Figure 23 presents the system users-throughput product against the number of active users N in case of the proposed HPC in comparison with the existing MPC.The results show that at any value of N, the system throughput product decreases as the system multiplicity increases.In addition, the results show that when the HPC is used the usersthroughput product slightly increases as the number of active users N increases.This due to the dependence of N and the code length L on the used prime numbers  1 &  2 .On the other hand, when the MPC is used the users-throughput product remains the same when the number of active users increase, which is due to the minimum available number of codes.Finally, the system throughput product in the case of HPC outperforms the throughput product in the case of MPC due to the difference in the chip rate illustrated in the previous results in Figure 22 and the higher number of codes available.Figure 24 shows EVM% versus the OSNR.This illustrates that at any value of EVM, the proposed HPC code outperforms the other codes.Moreover, at any value of OSNR, the error magnitude is lowest when the proposed code is recommended.For example, at 10 dB OSNR, the values of EVM% are 5%, 8%, and 15% for HPC, MPC, and OOC, respectively.This is because the good correlation properties achieve the minimum MAI and better BER. Figure 24 shows EVM% versus the OSNR.This illustrates that at any value of EVM, the proposed HPC code outperforms the other codes.Moreover, at any value of OSNR, the error magnitude is lowest when the proposed code is recommended.For example, at 10 dB OSNR, the values of EVM% are 5%, 8%, and 15% for HPC, MPC, and OOC, respectively.This is because the good correlation properties achieve the minimum MAI and better BER.

Conclusions
The new address sequence for the SI-OCDMA network which refers to HPC was proposed and evaluated in the communication systems in terms of BER and usersthroughput product.The code construction principles and their correlation properties were presented.Furthermore, the code construction results proved that the generated number of codes in the HPC family is much greater than the number of codes generated in the other existing code families at the same code length.Moreover, the proposed code has the potential to change its length and weight while maintaining its excellent correlation properties.In addition, the good correlation characteristics of the HPC led to: (1) achieve a minimum amount of MAI; and (2) improve the network EVM and BER performance in comparison with the OOC and MPC at a higher number of users.Finally, the HPC has the potential to enhance the OCDMA network capacity.

Conclusions
The new address sequence for the SI-OCDMA network which refers to HPC was proposed and evaluated in the communication systems in terms of BER and users-throughput product.The code construction principles and their correlation properties were presented.Furthermore, the code construction results proved that the generated number of codes in the HPC family is much greater than the number of codes generated in the other existing code families at the same code length.Moreover, the proposed code has the potential to change its length and weight while maintaining its excellent correlation properties.In addition, the good correlation characteristics of the HPC led to: (1) achieve a minimum amount of MAI; and (2) improve the network EVM and BER performance in comparison with the OOC and MPC at a higher number of users.Finally, the HPC has the potential to enhance the OCDMA network capacity.

1 .
Code length L equal to L = 2 n ∑ i=1 P i , where P i is the prime number and n is the number of the different prime numbers used for the code construction.

Figure 21 .
Figure 21.BER of OCDMA systems versus the number of active users N (n = 2, L = 24 and W = 4).Figure 21.BER of OCDMA systems versus the number of active users N (n = 2, L = 24 and W = 4).

Figure 21 .
Figure 21.BER of OCDMA systems versus the number of active users N (n = 2, L = 24 and W = 4).Figure 21.BER of OCDMA systems versus the number of active users N (n = 2, L = 24 and W = 4).

Figure 21 .
Figure 21.BER of OCDMA systems versus the number of active users N (n = 2, L = 24 and W = 4).

Figure 22 .
Figure 22.BER of OCDMA systems versus the number of active users N (n = 3, L = 36 and W = 6).Figure 22. BER of OCDMA systems versus the number of active users N (n = 3, L = 36 and W = 6).

Figure 22 .
Figure 22.BER of OCDMA systems versus the number of active users N (n = 3, L = 36 and W = 6).Figure 22. BER of OCDMA systems versus the number of active users N (n = 3, L = 36 and W = 6).

Figure 23 .
Figure 23.User throughput product versus the number of active users N.

Figure 23 .
Figure 23.User throughput product versus the number of active users N.

Table 1 .
Code sequences tree for P = 5.