<div dir="ltr">I use DPW in the context of: Integrate your waveform, generate the integrated waveform, then differentiate to get back your original signal. It can be used to help reduce aliasing in oscillators and waveshapers. I already posted the algorithm. For waveshapers you integrate the waveshaper, waveshape your signal with it, then differentiate to get get the actual waveshaping you want.<div><br></div><div>The acronym is from differentiating a parabolic waveform to lower the aliasing in sawtooth oscillators, but it can be applied to any function, and you can also apply it with multiple levels, so you can double differentiate the double integrated waveform, but you'll need much greater precision and more computational effort to pull it off.</div><div><br></div><div>You can also use it in the context of non-linear trapezoidal integrated filters, where you wrap the averaging filter of the DPW calculation directly into the trapezoidal integration.<br><div><div><br></div><div>Cheers,</div><div><br></div><div>Andy</div></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, 7 Aug 2018 at 10:15, <<a href="mailto:rsdio@audiobanshee.com">rsdio@audiobanshee.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I have the same question.<br>
<br>
It’s either “deterministic parity word” or “differential parabolic wave,” both from papers on synthesis - I’m assuming the latter.<br>
<br>
Brian Willoughby<br>
<br>
<br>
On Aug 6, 2018, at 7:06 PM, Tim Ressel <<a href="mailto:timr@circuitabbey.com" target="_blank">timr@circuitabbey.com</a>> wrote:<br>
> DPW?<br>
> <br>
> On 8/6/2018 6:20 PM, Andrew Simper wrote:<br>
>> And don't forget DPW as an easy to implement method to reduce aliasing. You can use an interpolated inverse table         and the error only appears as slight differences in amplitude, it doesn't reduce the efficacy of the anti-aliasing (which is the case with BLEP if you don't have a good division). As long as you can easily generate the intergrated waveshape equation and compute that efficiently you can do DPW efficiently and it will tilt the spectrum by -6 dB/Oct, which will reduce the oversampling overhead considerably.<br>
>> <br>
>> On Mon, 6 Aug 2018 at 08:49, <<a href="mailto:rsdio@audiobanshee.com" target="_blank">rsdio@audiobanshee.com</a>> wrote:<br>
>> If you’re willing to consider building everything on an FPGA, then I suggest that you should definitely consider a DSP. You’ll get more bang for your buck with a DSP - unless you literally pay for an FPGA that has full DSP slices in it - and it will be easier to work in an instruction set that has been optimized for decades for exactly the kind of thing you’re doing.<br>
>> <br>
>> Top contenders would be the TMS320, especially the C5000 or C6000 series, and the SHARC.<br>
>> <br>
>> I addition to the math support and large accumulators, you’ll also get timer peripherals and serial ports that support digital audio connections to multi-channel DACs.<br>
>> <br>
>> I’ve done some complex designs, and using a DSP is basically as flexible as an FPGA without the overhead of creating or finding and adapting the various IP blocks. You’ll also have the benefit that there won’t be as much wasted power.<br>
>> <br>
>> Brian<br>
>> <br>
>> <br>
>> On Aug 3, 2018, at 8:50 PM, Tim Ressel <<a href="mailto:timr@circuitabbey.com" target="_blank">timr@circuitabbey.com</a>> wrote:<br>
>> > I have a design for a complex VCO that will include 9 NCOs. While the polyBlep stuff looks interesting, I am wondering if I can pull it off with an FPGA. So the 9 NCOs would run at a high rate, say 2MHz. Then they get mixed, filtered, and downsampled to about 50KHz. The filter is the part I am not sure of, but its been done before so it is just a matter of working it out.<br>
>> > <br>
>> > I figure by the time I get a processor powerful enough to do this, and FPGA is cheaper maybe?<br>
>> > <br>
>> > Am I more out of my mind than usual?<br>
>> > <br>
>> > -- <br>
>> > --Tim Ressel<br>
>> <br>
>> _______________________________________________<br>
>> Synth-diy mailing list<br>
>> <a href="mailto:Synth-diy@synth-diy.org" target="_blank">Synth-diy@synth-diy.org</a><br>
>> <a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
>> <br>
>> <br>
>> _______________________________________________<br>
>> Synth-diy mailing list<br>
>> <br>
>> <a href="mailto:Synth-diy@synth-diy.org" target="_blank">Synth-diy@synth-diy.org</a><br>
>> <a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
> <br>
> -- <br>
> --Tim Ressel<br>
> Circuit Abbey<br>
> <br>
> <a href="mailto:timr@circuitabbey.com" target="_blank">timr@circuitabbey.com</a><br>
> _______________________________________________<br>
> Synth-diy mailing list<br>
> <a href="mailto:Synth-diy@synth-diy.org" target="_blank">Synth-diy@synth-diy.org</a><br>
> <a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
<br>
<br>
_______________________________________________<br>
Synth-diy mailing list<br>
<a href="mailto:Synth-diy@synth-diy.org" target="_blank">Synth-diy@synth-diy.org</a><br>
<a href="http://synth-diy.org/mailman/listinfo/synth-diy" rel="noreferrer" target="_blank">http://synth-diy.org/mailman/listinfo/synth-diy</a><br>
</blockquote></div>