[Fpga-synth] phLUTe

Scott Gravenhorst music.maker at gte.net
Tue Apr 1 02:24:17 CEST 2008


"The making of synthesizers in FPGAs." wrote:
>Eric Brombaugh wrote:
>
>>>> 2) I haven't used LaGrange interpolators before. Do you have a link or 
>>>> reference to the structure you used here?
>>> I found this very complete and extremely helpful:
>>>
>>> http://www.acoustics.hut.fi/~vpv/publications/vesan_vaitos/ch3_pt2_lagrange.pdf
>>>
>>> As you can tell from that sample, the tuning is precise enough for music.
>> 
>> Yes - those seem to work just fine. In my wireless communications work I 
>> use something called a 'Farrow Interpolator' - it's got decent SNR and 
>> distortion characteristics but it's fairly resource intensive (read 
>> 'complicated'). I'm interested in learning simpler structures.
>
>Hah! Reading through that paper I see in section 3.3.7 that the Farrow 
>structures I've been using for lo these many years are considered a form 
>of LaGrange interpolation. Learn something new every day.

And the LaGrange interpolator I used is actually just a linear interpolator.  The way it works
sort of reminds me of a potentiometer...

>I typically use a 3rd order Farrow with 8-tap FIR structures driving the 
>polynomial chain (see figure 3.14). That eats up a lot of gates.

Ah, yes, I saw the higher order one, they're required when the signal frequency is a bigger
proportion of the sample rate.  My sample rate vs my signal frequency was compatible with the
performance of the much simpler 1st order interpolator, the sample rate is 100KHz and the
application stays at 5KHz or below. 

-- ScottG

-----------------------------------------------------------------

-- Scott Gravenhorst
-- GateMan-III - FPGA Based Monophonic MIDI Synthesizer with SVF
-- PolyDaWG/8 - FPGA Based 8 Voice Polyphonic MIDI Synthesizer
-- phLUTe - FPGA Based Monophonic Physical Model MIDI Synthesizer
-- 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