Electronic Musical Instrument Projects
- Random Timbre Synth
VB.NET Patch Editor Screen Shot
A MIDI Synthesizer that can change it's timbre to a randomly generated waveform on MIDI clock. Designed for
Spartan-3E Starter Kit board.
Portamento is supported.
DDR SDRAM used for looped delay effect (up to) 67+ seconds.
100 kHz sample rate.
Xarp-56 (pronounced 'harp fiftysix') is a 56 voice synthesizer using the Karplus-Strong string physical model. Each of the
56 strings is implemented as an individual digital waveguide and not multiplexed/reused as in the PolyDaWG synths.
Sample rate: 198.143 KHz
Xarp-61 is a 61 voice synthesizer using the Karplus-Strong string physical model. Each of the
61 strings is implemented as an individual digital waveguide and not multiplexed/reused as in the PolyDaWG synths.
Written for Spartan-3E Starter Kit. This design uses shorter waveguides with lagrange interpolators for fractional tuning.
DDR SDRAM is used for a (up to) 16.77 second looped delay effect.
Sample rate: 96.0 KHz
- Three Xarp-61 synths in one FPGA
Three Xarp-61 synths in one FPGA which can be tuned with a patch editor for various tuning effects. Among the many tuning
effects possible is a nice piano like beating that is quite evident on sustained notes.
Linear Arithmetic Subtractive Polysynth (8 voice), 4 NCOs per voice, each NCO supports 4 waveforms.
Designed for the Spartan-3E Starter Kit board.
DDR SDRAM is used to provide (up to) 16+ seconds of looped delay effect.
Sample rate: 250 KHz
PolyDrum is a 55 voice tonal drum synth. Each drum is made of a state variable filter and can be tuned to generate
desired pitches and Q adjusted to provide control over the decay envelope. There are no envelope generators per se, nor are
there any oscillators. The drums are excited with a programmable width rectangular pulse applied to the filter's input.
Avnet Spartan-3A 400K version with sample rate of 50 kHz.
Spartan-3E Starter Kit board version with sample rate of 150.602 kHz.
- Avnet Board PolyDaWG/8 Synth Details and Source
8 voice Polyphonic Karplus-Strong string physical model synth redesigned for the small Avnet Spartan-3A development board.
There is also a version that works on a Spartan-3E Starter Kit board.
Sample rate up to 826 KHz for the Spartan-3E board
Sample rate 200 KHz for the Avnet Spartan-3A board
Added 32 Kwords SPI SRAM. At 50 kHz, .655 seconds of delay is provided. The synth runs 4 samples for each DAC sample, thus decimating
from 200 kHz to 50 kHz.
- 8 Voice 8-op FM Bell Synth
Four 2 operator FM sound generators per voice, each generator is index modulated by an ADSR, amplitude of each generator is
modulated by an ADSR. Both ADSRs (per generator) have selectable linear or exponential release.
- 8-op FM Bell Synth with Chaos Modulation
Lorenz Attractor Modulated Demo
Lorenz Attractor Modulated Drone
Four 2 operator FM sound generators monosynth, In this design, the FM parameters are modulated by a Lorenz Attractor
chaos system. The link above gives some detail about the FM portion. The chaos generator is simply a Lorenz attractor who's out
put is connected to various modulation inputs of the FM synth.
- 16 Voice 8-OP FM Bell Synthesizer
This is essentially the same synth as above, but expanded to 16 voices. This synth will compile and run on a
Spartan-3E Starter Kit (using the onboard 12 bit DAC) or on an Avnet Spartan-3A 400 development board with an external 24 bit
stereo DAC (Eric Brombaugh)
The current version of this synthesizer is capable of 96ET, 48ET and 24ET microtonal tuning per note-on event.
Sample rate: 65.0141 KHz (Spartan-3E & Spartan-3A)
Version ver_j for the Spartan-3E Starter Kit uses the DDR SDRAM for stereo looped delay effect (257+ sec).
- Tonal Noise Synth
This monosynth uses state variable filters and a noise source to generate tonal noise which can be used to play melodies.
DDR SDRAM is used for (up to) 10+ seconds of looped delay effect.
Sample rate is 806.451 KHz which facilitates wide frequency range for the state variable filters.
- Sine Synth
Sine Synth Drones (demo)
This is a small additive monosynth (32 sinewave oscillators) meant for producing drone sounds. Each oscillator is controlled
by a harmonic multiplier, fine tuning, portamento time and noise/filter parameters. The noise and filters provide amplitude
modulation for the oscillators producing a randomly evolving timbre.
ver_e uses DDR SDRAM for (up to) 67+ seconds of delay/echo effect.
Sample rate: 250 KHz
- Additive Flute Model Synth
Additive Flute Model Synth uses 4 voices (3 sines, 1 noise) to model the sound of a flute.
Designed for Spartan-3E Starter Kit board.
DDR SDRAM is used for looped delay effect (up to) 41+ seconds.
Sample rate is 100 kHz.
- GateMan I FPGA MIDI Monosynth
Linear Arithmetic Subtractive Monosynth, 4 NCOs with 4 waveforms each. This is the first version of the GateMan synths.
Sample rate: 1.0 MHz
- GateMan II, III & IV FPGA MIDI Monosynths
Linear Arithmetic Subtractive Monosynth, 4 NCOs with 4 waveforms each. GateMan II contains a state variable filter which replaces
the simple IIR filter in GateMan I. GateMan III is also described, the major difference being better use of RAM and fewer flip flops
in the design.
Sample rate: 1.0 MHz
- Digital Waveguide Information
General digital waveguide information plus 8 voice Polyphonic Karplus-Strong string physical model synth for Spartan-3E
Starter Kit development board
Projects Currently Under Development:
- An 8 Operator FM Synthesizer
A chain of 8 operators allowing many of the most common algorithms
Music made with ScottG/JovianPyx FPGA synthesizers