[sdiy] Electrosmith Eurorack DSP platform

Eric Brombaugh ebrombaugh at gmail.com
Thu Jan 27 22:30:29 CET 2022


No secrets - this was a personal project to see how well it works. 
Details are here:

https://github.com/emeb/up5k_osc

TL;DR on the differential PDM: The generic FPGA output drivers have a 
bit of asymmetry in the rise/fall times which can cause some low level 
harmonic distortion. There are a couple of techniques for dealing with 
this - 1) ensuring there's always a rise and fall in every output 
period, and 2) using differential signalling to cancel the asymmetry. I 
tried various combinations and saw improvements for both. Overall I'd 
estimate there was about a 15-20dB improvement in THD.

The output filter consists of a passive RC on each differential leg, 
then feeding into a diff-amp with additional 1-pole filtering that 
outputs a unipolar signal at modular synth levels. Since the clock rate 
was so high and the baseband signal bandwidth fairly low in comparison 
there wasn't much need for fancier filtering than that.

Eric

On 1/27/22 13:51, Mike Bryant wrote:
> Ok Eric, you've got me on this one ! :-)  If it's not a trade secret, what does the output filter look like such that differential PDM is needed, and how much improvement does it give over single ended ?
> 
> -----Original Message-----
> From: Synth-diy [mailto:synth-diy-bounces at synth-diy.org] On Behalf Of Eric Brombaugh via Synth-diy
> Sent: 27 January 2022 19:49
> To: synth-diy at synth-diy.org
> Subject: Re: [sdiy] Electrosmith Eurorack DSP platform
> 
> FPGA was the thing that came to my mind also - Lattice iCE40 and ECP5 parts are great for this and some of them are still available at the distributors. I did a high sample rate digital VCO using an iCE40UP5k last year that uses differential PDM outputs and gets some pretty nice SNR and distortion figures with minimal external circuitry. The logic needed is simple and with some of the high pincount devices they've got you could get a lot of channels out.
> 
> Eric
> 
> On 1/27/22 12:12, Mike Bryant wrote:
>> Renesas are launching a new range of FPGAs this summer that could be a good fit for this sort of thing.   They're not mega-gate or mega-speed like Altera or Xilinx, but better than CPLDs.   No datasheets yet but they tell me definitely worth waiting to have a look.
>>
>> -----Original Message-----
>> From: cheater cheater [mailto:cheater00social at gmail.com]
>> Sent: 27 January 2022 18:59
>> To: Mike Bryant
>> Cc: Eric Brombaugh; synth-diy at synth-diy.org
>> Subject: Re: [sdiy] Electrosmith Eurorack DSP platform
>>
>> Yep Mike, that's what I meant - using the Pi2040 as the DAC itself, not with external DACs ... 8-9 bits and unspecified other issues sounds really dire though...
>>
>> On Thu, Jan 27, 2022 at 7:16 PM Mike Bryant <mbryant at futurehorizons.com> wrote:
>>>
>>>
>>>>> How is the RP2040 as a massive amount of audio DACs?
>>>
>>>> You could certainly do it. With eight PIO state machines you could easily get 16 channels of I2S audio output and probably more if you tried really hard. There's plenty of bandwidth on the internal buses for stuff like that. Question is how you would >source all the data that kind of design would need - even 16 channels would more than saturate the full-speed USB port at 48k. Generating the data programatically or even just reading it from flash would likewise be a squeeze.
>>>
>>>> Eric
>>>
>>> I thought he meant using the internals of the chip to do DACs.  In theory the PIOs could manage 16 channels of TDM per state-machine so 128 in all, though then the processors can't fill the FIFOs fast enough.   I'm running a TDM ring with 40 channels in and out without overclocking or anything on one PIO, whilst the other sends and receives data from converters to put on and off the ring.
>>> _______________________________________________
>>> Synth-diy mailing list
>>> Synth-diy at synth-diy.org
>>> http://synth-diy.org/mailman/listinfo/synth-diy
>>> Selling or trading? Use marketplace at synth-diy.org
>>>
>>>
>>> _______________________________________________
>>> Synth-diy mailing list
>>> Synth-diy at synth-diy.org
>>> http://synth-diy.org/mailman/listinfo/synth-diy
>>> Selling or trading? Use marketplace at synth-diy.org
>>
> 
> _______________________________________________
> Synth-diy mailing list
> Synth-diy at synth-diy.org
> http://synth-diy.org/mailman/listinfo/synth-diy
> Selling or trading? Use marketplace at synth-diy.org
> 




More information about the Synth-diy mailing list