Skip to content

Waveform Generators

Waveform Generators are components that generate signals on the DSP. Almost any signal can be produced by combining these basic waveform generators with filters and signal mixers.

This group includes the following components:

This group also includes the following component, if RPvdsEx Device Setup is configured for a high performance device, such as the RXn or RZn:

ConstF

Description:

This component feeds the signal chain with the specified constant. Often used with parameter tags, which are unable to connect to the input port of a processor.

Name Description Data Type
Output K Floating Point
K Constant Value Floating Point

Equation:

OutputO = K1

ConstI

Description:

This component feeds the signal chain with the specified constant. Often used with parameter tags, which are unable to connect to the input port of a processor.

Name Description Data Type
Output K Integer
K Constant Value Integer

Equation:

OutputO = K1

ConstL

Description:

This component feeds the signal chain with the specified constant. Often used with parameter tags, which are unable to connect to the input port of a processor.

Name Description Data Type
Output K Logic
K Constant Value Logic

Equation:

Fo = K1

FStep

Description:

The FStep is an up/down counter. It counts for the duration of a high pulse sent to the Enable port ( Enab ). It increments the count by a set value (determined by Step) for each pulse of sample clock (e.g. if the enable is high for 1 msec and the sample rate is 25 Kilohertz then the counter will step 25 times). When it reaches the Min or Max value the FStep stops and retains that value until reset (see below for more details). The FStep starts at the Base value the first time the counter is started or after the Reset (Rst) port is triggered (value goes from low (0) to high (1)).

Use FStep in place of Counter (which is primarily designed for RamBuffers) for functions that require countdown, negative numbers, or floating point output.

Name Description Data Type
Output Incremented Floating point value Floating Point
Base Base value Floating Point
Step Step Size Floating Point
Min Minimum value for counter Floating Point
Max Maximum value for counter Floating Point
Rst Resets counter when Logic is High Logic
Enable When Enable line is set hi(1) counter is incremented on each tick of the clock. Logic

GaussNoise

Description:

This component generates a white noise process with a Gaussian probability density function with the specified attributes. Peak voltages will be higher. To avoid clipping a signal the RMS amplitude should be less than 2.1.

Name Description Data Type
Output Gaussian Noise Floating Point
Amp RMS Amplitude of the Signal Floating Point
Shift DC shift of signal output. Floating Point
Seed Integer value for Random generation of noise output Integer
Rst When set high, resets sequence to restart at random (seed). Feeding new Seeds produces different noise. Feeding the same seed produces the same noise sequence. Logic

All noise generators produce a fixed energy across the bandwidth of the RPvdsEx circuit. In other words, the noise power is spread evenly across the entire Nyquist bandwidth. Changing the sampling rate changes the Nyquist bandwidth and thus alters the RMS noise level over a fixed bandwidth by the following relationship:

RMS dB change=20*log(New SR/Old SR)/2

Doubling the sample rate will double the Nyquist frequency and decrease the RMS noise level over a fixed bandwidth by 3 dB. Similarly, halving the SR will increase the RMS over that bandwidth by 3 dB.

Note:

The PowerBand difference will be 6dB.

Example(s):

Second Order Biquad Filter (filtered noise with Butterworth coefficients), see ButCoef.

Parametric Coefficient (filtered noise with parametric coefficients), see ParaCoef.

MCConst

Description:

This component is a multi-channel version of the ConstF component. MCConst feeds a specified constant to a multi-channel output. The constant is specified using the Value parameter and can be controlled dynamically. The constant is fed to each of the signals in the multi-channel signal. The number of channels in the output is specified by the nChan parameter.

Note:

This component is for use with only high performance processor devices, such as RXn or RZn.

Name Description Data Type
Output Multi-channel output Floating Point
nChan Number of channels required in output signal Integer (Static)
Value Constant value fed to the output Floating Point

Equation:

Output(1: nChan) = Value

MCValList

Description:

This component is similar to MCConst but lets you specify the value for each individual channel. MCValList feeds a specified list to a multi-channel output. The value list is specified using the {>List} parameter and can be controlled statically with an nRow DataTable or dynamically with a ParTag. The number of channels in the output is specified by the nChan parameter.

Note:

This component is for use with only high performance processor devices, such as RXn or RZn.

Name Description Data Type
Output Multi-channel output Floating Point
nChan Number of channels required in output signal Integer (Static)
{>List} Pointer to value list (DataTable or ParTag) Floating Point

Equation:

Output(1: nChan) = {>List}

PulseGen

Description:

PulseGen is a three segment pulse generator with all timing specified in samples. All setup parameters can be controlled dynamically. The Trig input triggers the pulse. The Reset input can be used to asynchronously halt the pulse generator. To produce continuous pulses, set and hold Trig to 1. To produce a set number of pulses, connect a PulseTrain2 component to the Trig input.

Note:

This component is for use with only high performance processor devices, such as RXn or RZn.

Name Description Data Type
Output Floating point value Floating Point
nSegA Duration of segment A (in samples) Integer
nSegB Duration of segment B (in samples) Integer
nSegC Duration of segment C (in samples) Integer
vSegA Output value during segment A Floating Point
vSegB Output value during segment B Floating Point
vSegC Output value during segment C Floating Point
Trig Triggers the three segment pulse Logic
Reset Forces output to zero and halts pulse Logic

RampTooth

Description:

This component generates a ramped waveform with the specified attributes.

Note:

Ensure that the bounds of the phase parameter are greater than -180 and less than +180. Any value (including exactly -180 or +180) outside of these bounds will be set to a phase of zero.

Name Description Data Type
Output Ramped waveform Floating Point
Amp Peak amplitude of the signal Floating Point
Shift DC shift of signal output Floating Point
Freq Frequency in Hz Floating Point
Phse Phase of sine when Rst goes from high to low Floating Point
Rst When reset goes high. Sine phase resets to Phse Logic

Random

Description:

This component generates a white noise process with a uniform probability density function with the specified attributes. The amplitude specifies the maximum output of the component.

Name Description Data Type
Output Uniformed distribution of values. Floating Point
Amp Peak Amplitude. Floating Point
Shift DC shift of signal output. Floating Point
Seed Integer value for Random generation of noise output Integer
Rst When set high, resets sequence to restart at random (seed). Feeding new Seeds produces different noise. Feeding the same seed produces the same noise sequence. Logic

All noise generators produce a fixed energy across the bandwidth of the RPvdsEx circuit. In other words, the noise power is spread evenly across the entire Nyquist bandwidth. Changing the sampling rate changes the Nyquist bandwidth and thus alters the RMS noise level over a fixed bandwidth by the following relationship:

RMS dB change=20*log(New SR/Old SR)/2

Doubling the sample rate will double the Nyquist frequency and decrease the RMS noise level over a fixed bandwidth by 3 dB. Similarly, halving the SR will increase the RMS over that bandwidth by 3 dB.

Note:

The PowerBand difference will be 6dB.

SawTooth

Description:

This component generates a saw tooth waveform with the specified attributes.

Note:

Ensure that the bounds of the phase parameter are greater than -180 and less than +180. Any value (including exactly -180 or +180) outside of these bounds will be set to a phase of zero.

Name Description Data Type
Output Gaussian noise Floating Point
Amp RMS amplitude of the Signal (0.707 rms=1 volt max peak-to-peak) Floating Point
Shift DC shift of signal output Floating Point
Freq Frequency in Hz Floating Point
Phse Phase of sine when Rst goes from high to low Floating Point
Rst When reset goes high, sine phase resets to Phse Logic

Tone

Description:

Generates a sinusoid Waveform with the specified frequency and phase. The waveform's Amplitude and DC Shift can also be controlled. The Rst control is used to reset the signals phase. The output will remain locked at the specified starting Phase as long as Rst is high. Typically an Edge Detector is used in conjunction with the Rst control.

Note:

Ensure that the bounds of the phase parameter are greater than -180 and less than +180. Any value (including exactly -180 or +180) outside of these bounds will be set to a phase of zero.

Name Description Data Type
Output Tone of set frequency amplitude and DC shift Floating Point
Amp Peak amplitude of the signal Floating Point
Shift DC shift of signal output Floating Point
Freq Frequency in Hz Floating Point
Phse Phase of sine when Rst goes from high to low Floating Point
Rst When reset goes high, sine phase resets to Phse Logic

Example:

This example demonstrates a number of circuit design concepts as well as the use of the Tone component. The circuit shown will generate an AM modulated sinusoidal output from channel one of the DAC. The output will be 100% modulated with a peak voltage of 2.0 volts.

The external trigger input is used to turn the output on and off by driving the Rst control of the modulator tone. Notice that the phase for the modulator tone is specified as -90 degrees causing it to fully 'close' when the reset line is high (trigger input is low).

The carrier tone is set for 1000 Hz output. The default value of Amp = 1.0 will be ignored as this parameter is being dynamically controlled by the modulator tone. The carrier's Rst is fed by an edge detector connected to the external trigger. This forces the carrier to start at sine phase 0.0 each time the external trigger is high.

TSlope

Description:

This component generates a linear ramp waveform with the specified attributes. It is useful for generating a time value for time stamping buffer operations.

Name Description Data Type
Output Linear ramp related to slope rate Floating Point
Min Minimum (starting) value of the Output Floating Point
Slp Slope of amplitude ramp in units/millisecond Floating Point
Max Maximum value of the Output Floating Point
Rst When Hi, reset Output to Min and generate ramp Logic