[Fpga-synth] Xarp-56
Scott Gravenhorst
music.maker at gte.net
Tue Nov 25 01:26:07 CET 2008
"The making of synthesizers in FPGAs." wrote:
>Scott Gravenhorst wrote:
>
>> Here is the Xarp-56 FPGA 56 voice physical model polysynth.
>>
>> http://home1.gte.net/res0658s/FPGA_synth/Xarp-56.html
>>
>> The sound clip is a piece of Tchaikovsky's "Dance of the Sugar
>Plum Fairy" that I adapted for this instrument - the entire clip
>is played on one Xarp-56 instrument. > > Verilog source is
>provided if you're interested. > > While you listen, remember
>that this it is a single integrated circuit that is doing the DSP
>computations to make the sounds you're hearing. > > Please
>enjoy... >
>
>Hi Scott,
>
>Nice sound, always good to try new synthesisforms with rich sounds.
>Thinking about the string simulations I did back in ´98 or so and
>elaborated on later (see http://www.theover.org/Articles/pms.html),
Theo, that's very interesting. I came to similar conclusions, these physical models
are difficult to make sound exactly like something specific, but their
characteristics are not boring or synthy even for minimal implementations.
>I´d think you´re into issues with the Karplus/strong where both the
>noise-type excitation and the way of propagating the sound aren´t too
>optimal for harp, but very nice sound though.
This design is very simple, I use a square pulse to excite a waveguide. The
pulsewidth is a proportion of the wavelength. There is no wooden box
resonator/ampilfier emulation, it's just a set of individual strings with equally
weighted end of string pickups. There is no coupling between strings. The
adjustments available are the global proportion value applied to the excitation
pulsewidth and the reflection filter parameter which is controlled by a keyfollow
algorithm.
>Have you tried a Spartan 3e-500 version, too by any chance ?
A Spartan-3E 500 doesn't have enough internal RAM (73 block RAMs and 8 multipliers
are used). The Xarp design is an extension of an 8 voice version I wrote for a
Spartan-3E Starter Kit (PolyDaWG/8). PolyDaWG/8 has a movable pickup (mod wheel) as
well as adjustable reflection filter (rotary encoder and keyfollow).
-- ScottG
________________________________________________________________________
-- Scott Gravenhorst
-- FPGA MIDI Synthesizer Information: home1.gte.net/res0658s/FPGA_synth/
-- FatMan: home1.gte.net/res0658s/fatman/
-- NonFatMan: home1.gte.net/res0658s/electronics/
-- When the going gets tough, the tough use the command line.
More information about the Fpga-synth
mailing list