Table Of Contents

MT Modulate AM (SSB) (G Dataflow)

Last Modified: January 9, 2017

Performs single sideband (SSB) amplitude modulation. This node performs signal processing on data and operates independently of hardware settings. Use this node in both simulated and hardware-equipped applications.

connector_pane_image
datatype_icon

message signal

Message signal used to modulate the carrier wave.

datatype_icon

modulation index

Desired modulation index of the AM modulated waveform parameter. A value of 0.7, for example, corresponds to a modulation index of 70%. A value greater than unity may cause overmodulation and distortion. The node ignores this parameter if you set the suppress carrier? parameter to TRUE.

Default: 1.0

datatype_icon

hilbert filter

The complex-valued Hilbert filter used for sideband cancellation during generation of the AM-SSB baseband complex signal. The node applies this filter to the message signal for generating the baseband complex analytic signal.

spd-note-note
Note  

Changes to the Hilbert filter take effect when the reset? parameter is set to TRUE.

datatype_icon

taps

The length (N), in taps, of the Hilbert filter.

datatype_icon

design

The underlying design of the Hilbert filter.

Name Description
Windowed Hilbert Transformer

Generates the length N Hilbert filter based on the impulse response.

Equiripple Hilbert transformer

Generates an equiripple Hilbert filter.

Default: Equiripple Hilbert transformer

datatype_icon

peak message amplitude

Peak message amplitude of the message signal parameter. The node uses this value to scale or normalize the input message signal prior to modulation. This value must be positive.

Default: 1.0

datatype_icon

error in

Error conditions that occur before this node runs. The node responds to this input according to standard error behavior.

Default: no error

datatype_icon

suppress carrier?

A Boolean that determines whether to suppress the carrier of the modulated signal.

TRUE The DC component corresponding to the carrier tone in the amplitude-modulated baseband signal is suppressed.
FALSE The output amplitude-modulated baseband signal consists of a DC component corresponding to the carrier tone.

Default: FALSE

datatype_icon

reset?

A Boolean that determines whether the node continues AM-SSB modulation using internal states from previous iterations.

TRUE The node restarts AM-SSB modulation, redesigns the Hilbert filter, and clears internal filter states on each call.
FALSE The node does not change the Hilbert filter design across multiple calls, and sets the internal filter state to ensure continuous filter operation.

Default: TRUE

datatype_icon

sideband

A value that indicates whether the AM-SSB modulator retains the lower or upper sideband of the message spectrum to generate the AM-SSB baseband complex analytic signal.

Name Description
Lower sideband

Retains the portion of the message spectrum lying in the negative frequency range [ ( 1 / 2 d t ) , 0 ] and eliminates the positive sideband spectrum.

Upper sideband

Retains the message spectrum spanning the positive frequency range [ 0 , 1 / 2 d t ] .

Default: upper sideband

datatype_icon

pilot tone

Parameters for specifying pilot tone generation. The pilot tone is added to the Hilbert-filtered complex baseband signal to generate the modulated waveform. The pilot tone provides a coherent phase reference during demodulation for performing carrier phase and carrier frequency offset correction. Set the amplitude parameter to 0 to disable addition of the pilot tone.

spd-note-tip
Tip  

Adding a pilot tone is optional when suppress carrier? is set to FALSE. In this case, the presence of the DC component in the AM signal (corresponding to the pure carrier tone) provides a coherent reference for phase and frequency offset correction, therefore the pilot tone is not needed.

datatype_icon

frequency

Frequency of the complex exponential tone that is added to the complex baseband signal. Ensure that the absolute value of this tone frequency is less than the Nyquist frequency 1/(2 * dt).

spd-note-note
Note  

When specifying pilot tone parameters, ensure that the pilot tone is added to a portion of the spectrum where the message component of the signal is absent. Conflict between the pilot tone and message signals can cause a residual carrier phase and frequency offset error after demodulation. For example, if you specify a negative pilot tone frequency, specify an upper sideband in the sideband parameter.

datatype_icon

amplitude

Amplitude of the complex exponential tone that is added to the complex analytic baseband signal.

datatype_icon

AM modulated waveform

The modulated complex baseband time-domain data for demodulation.

datatype_icon

t0

The trigger (start) time of the Y array.

Default: 0.0

datatype_icon

dt

Time interval between data points in the Y array.

Default: 1.0

datatype_icon

Y

The complex-valued signal-only baseband modulated waveform. The real and imaginary parts of this complex data array correspond to the in-phase (I) and quadrature-phase (Q) data, respectively.

datatype_icon

error out

Error information. The node produces this output according to standard error behavior.

Adjusting the Carrier Phase

Use the initial phase parameter of MT Upconvert Baseband to adjust the carrier phase during the upconversion process. The initial phase parameter specifies the initial phase, in degrees, of the software local oscillator used in the upconversion process.

Avoiding Distortion

To avoid distortion, amplitude-normalize the message signal parameter to ±1.0 with respect to the absolute maximum amplitude of the message signal.

Prescaling Behavior

This node prescales the message signal parameter by the scalar peak amplitude prior to modulation. The default value of 1.0 for peak message amplitude indicates that no prescaling occurs.

Single Sideband (SSB) Amplitude Modulation

SSB amplitude modulation ensures bandwidth reduction by only retaining either the upper or lower sideband in the message spectrum after the modulation process. The following figure illustrates the series of algorithms applied to the incoming signal m(t). The node applies the AM-DSB algorithms and then applies the Hilbert filter to remove the signal.

When suppress carrier? is set to FALSE, the output amplitude-modulated signal is represented by the following formula:

s D S B ( t ) = 1 + k × m ( t ) max | m ( t ) |
s S S B ( t ) = s D S B ( t ) ( h i ± j × h q ( t ) ) + A p i l o t e j ω p i l o t

where

m(t) represents the message signal data

SDSB(t) represents the double sideband AM modulated signal (unsuppressed carrier)

SSSB(t) represents the single sideband AM modulated signal (unsuppressed carrier)

k represents the modulation index

Apilot represents the amplitude of the pilot tone

ωpilot represents the frequency of the pilot tone

hi represents the real component of the Hilbert filter

hq represents the imaginary component of the Hilbert filter

When suppress carrier? is set to TRUE, the output amplitude-modulated signal is represented by the following formula:

s D S B S C ( t ) = k × m ( t ) max | m ( t ) |
s S S B S C = s D S B S C ( t ) ( h i ± j × h q ( t ) ) + A p i l o t e j ω p i l o t

where

m(t) represents the message signal data

SDSBSC(t) represents the double sideband AM modulated signal (unsuppressed carrier)

SSSBSC(t) represents the single sideband AM modulated signal (unsuppressed carrier)

k represents the modulation index

Apilot represents the amplitude of the pilot tone

ωpilot represents the frequency of the pilot tone

hi represents the real component of the Hilbert filter

hq represents the imaginary component of the Hilbert filter

In both suppressed and unsuppressed carrier cases, one of two possible Hilbert filter designs is specified using the design element in the Hilbert filter cluster. Select either a Windowed Hilbert transformer or an Equiripple Hilbert transformer.

The Windowed Hilbert transformer generates a length N Hilbert filter with an impulse response h(n) given by the following equation:

ωh ( n ) = δ ( n N 2 ) + j × { 2 π sin 2 ( π n 2 ) n 0 , n = 0 , n 0 }

The Equiripple Hilbert transformer generates a length N Hilbert filter with an impulse response h(n) given by the following equation:

h ( n ) = g ( n ) e ± j × 0.25 × n

where g(n) represents an equiripple lowpass filter with a normalized cutoff frequency of 0.25 Hz.

Where This Node Can Run:

Desktop OS: Windows

FPGA: Not supported


Recently Viewed Topics