MATLAB: Am I receiving unexpected results while modulating the double sideband signal into upper and lower sidebands using the SSB AM Modulator Baseband block from the Communications Blockset 2.5(R13)

amamplitudecommunications blocksetdoublefftfrequencylowerModulationmodulatoroutputresponsesidebandsinglessbupper

Why am I receiving unexpected results while modulating my double sideband signal into upper and lower sidebands using the SSB AM Modulator Baseband block from the Communications Blockset 2.5(R13)?
I am trying to modulate my double sideband signal using the SSB AM Modulator Baseband block from the Communications Blockset 2.5(R13). The output signal is complex, as expected. The phase of the output signal is different for the lower sideband(LSB) and upper sideband(USB), whereas the amplitude remains the same.
However, the Power Spectral Density(PSD), FFT, and spectrograms are identical for the LSB and USB modulated signals.

Best Answer

This is a bug in the SSB AM Modulator Baseband block of the Communications Blockset 2.5(R13). Our development staff is currently investigating this issue.
As a workaround, you can download a revised version of the SSB AM Modulator block that fixes the problem. Here are the required steps:
1. Please download the file 'ssb_am_modified.mdl' attached to this solution.
2. Replace the SSB AM Modulator Baseband block in your model with the block downloaded in the above step.
NOTE: You must include the complete path of your solution directory from the Web site.
Note that this version of the block uses the REMEZ function to compute the Hilbert transform of the signal. The previous version of the block that was shipped with the Communications Blockset 2.5 (R13), used a Discrete filter whose coefficients were derived from the toolbox function HILBIIR. This function was not generating the correct coefficients and hence the unexpected behavior in the SSB AM Modulator Baseband block.