advanced audio recording
Pulse Shaping Module for the Music Synthesizer in VHDL

18 Bit

Xilnx Spartan 3E 500

An Spartan 3e platform is used to implement a wave shaper module in VHDL capable of generating square waves and pulses with adjustable slope based on equations. Using either DDS-based frequency generation or VA-modeled sine wave operation, a trigger wave is used to control the phase and shape of the primary signal, driving either phase or amplitude.

Synthesized waves from wavetable module - scanned with VGA-Oscilloscope - Jürgen Schuhmacher

Processing the signal the module can be used for generating a modified edges with controlled harmonics or a generic wave use for band limited square waves and pulses.

Signal Set
Functional signals of the wave shaper

 Several parametric functions are used to apply edge shaping of a formery linear signal. Because of the limited number of Multipliers in the Spartan 3E of only 20, a full parallel implementation is limited to 8 functions altogether and a x16 in maximum because of the required number of square operations. With forthcoming FPGAs more waves shall be possible.

SyncMaster - with synthesized waves from waveshaper - scanned with VGA-PLD-Oscilloscope - Juergen Schuhmacher
Example functions shown on simple VGA Oscilloscope using 1280 x 1024 view
(Samsung SynchMaster FFT-flac screen TV+Monitor)

For the Oscilloscope realtime output is possible only, because the block rams and the multiplications share the same (not to say identical) resources. So for demonstration only the functions themselves can be presented using the real time system frequency of the video of 108 MHz.

Signal Examples
Audio signals from wave shaper

To use real wave processing the incoming signals have to be treated and also stored to let them become visible at the SVGA screen. Here 8 channels and 4 block Rams are used to show eventual signals. By switching the parametric curve various edge constellations can be achieved including fast rise and slow falling with one pulse. The derived signals can be used for testing serial protocols in terms of slew rate analysis. Overshoot signals can be derived by substracting e.g. curve 6 from curve 4 thus emphesizing the high frequent part of the signal.

Synthesized waves from waveshaper - scanned with VGA-PLD-Oscilloscope - Jüergen Schuhmacher Consulting
Example Waves on a simple VGA Oscilloscope using 2x4 channels

The 8 channels are switched in 2:1 during the block ram write action to show them all. Because of the multiplier limititations only x6 grade - waves can be used together with brams. Without an internal oscilloscope all multipliers could be used for wave generation and shaping.

Read about the math of the equations Parametric Curves.

96 kHz
Audio DSP


© SHSM / Sound of L.A. Music Productions 2006