Sources

PulseGenerator Block

Generates square wave pulses with configurable amplitude, period, and duty cycle

Open PulseGenerator in BlockWerk →

# Pulse Generator Block

Description

The Pulse Generator block creates square wave pulse signals with configurable parameters. It generates periodic pulses that alternate between high and low values, making it useful for creating timing signals, reference waveforms, and test inputs for digital systems.

The block produces a square wave output that spends a portion of each period at the high amplitude level (determined by the duty cycle) and the remainder at zero. The phase delay allows for shifting the pulse timing relative to the simulation start.

Mathematical Model

The Pulse Generator block implements:

y(t) = amplitude    if (t + phaseDelay) mod period < dutyCycle/100 × period
y(t) = 0            otherwise

Where:

Parameters

amplitude

The height of the pulse when in the 'high' state.

period

The time (in seconds) between the start of successive pulses.

dutyCycle

The percentage of the period during which the pulse is high.

phaseDelay

The time delay (in seconds) applied to the pulse sequence.

Examples

1Hz Square Wave

Basic 50% duty cycle signal:

PulseGenerator (period: 1, dutyCycle: 50) → NumericDisplay

Short Pulse Trigger

Generate a 0.1s pulse every 2 seconds:

PulseGenerator (period: 2, dutyCycle: 5) → LogicSystem

Remarks

See Also