This project recreates the MATLAB scenarios described from thesis page 43,
Figure 4.1, through Chapter 5 of Master_of_Technology_Thesis.pdf.
All result figures are generated directly by MATLAB from the simulation.
- Gold code generated as
PN1 XOR PN2 - Proposed hybrid code generated as
Gold XOR Walsh - 127-chip spreading-code period
- shortened RS(18,16) coding over 8-bit symbols
- Gray-coded rectangular 16-QAM
- AWGN channel and an additional wideband jammer
- SNR values of 0, 4, 8, 12, 16, and 18 dB
- interception by changing 12 of the 127 hybrid-code chips
The five Chapter 5 cases are:
- communication without spreading or an added jammer
- communication with an added jammer only
- matched spreading and despreading without a jammer
- interception with an imperfect receiver spreading code
- matched spreading and despreading with an added jammer
Open MATLAB in this folder and execute:
results = run_master_thesis_ds_cdma;MATLAB writes the .png, editable .fig, and simulation_results.mat
files to results/.
After the simulation, run:
verify_master_thesis_ds_cdmaThis verifies the hybrid-code identities, the RS(18,16) round trip, all five saved cases, and the ten generated PNG/FIG pairs.
The thesis states the system dimensions and processing blocks, but it does not record the exact PN taps/seeds, selected Walsh row, number of Monte Carlo bits, jammer waveform, or jammer power. The code therefore:
- uses explicit degree-seven PN polynomials and fixed seeds;
- searches the nonconstant rows of a 128-by-128 Hadamard matrix for the most balanced hybrid with the lowest periodic-autocorrelation penalty;
- uses a fixed random seed and 64,000 information bits;
- exposes all jammer powers and interception mismatch counts in
default_configurationin the main file.
Figure 5.8 states that 12 hybrid chips were changed. The exact Gold and Walsh mismatch counts are not stated, so their configurable defaults are chosen to reproduce the ordering shown in the thesis. Likewise, pure single-user AWGN cannot create different BER curves for normalized, perfectly matched spreading codes; Figure 5.10 therefore requires an explicit code-aware jammer model. Its effective powers are documented in the configuration rather than hidden in the plotting code.
The SNR axis is treated as symbol SNR (Es/N0), which is consistent with
the numerical theoretical 16-QAM curve in Figure 5.2. MATLAB's
berawgn input is converted from Es/N0 to Eb/N0.