[sdiy] Digital Waveshape Generator.
brianw
brianw at audiobanshee.com
Sat Jul 12 05:13:15 CEST 2025
On Jul 11, 2025, at 1:39 PM, Phillip Harbison <alvitar at xavax.com> wrote:
>
> Chris McDowell wrote:
>> My gut immediately says there are very good ways to do this without
>> all of the hardware digital logic (depends on your goal, of course).
>
> That all fit on a 4"x4" protoboard including the multiplying DAC that
> is mentioned in the design doc but not in the diagram. I intended to
> use the multiplying DAC to implement the equivalent of an envelope generator and VCA. A bunch of these minus DACS would fit in an FPGA.
I did not know about MDAC technology in the eighties when I was attempting to design such things. I considered abusing standard DAC chips by feeding audio rate signals into the VREF pin, but discovered that the typical chips do not preserve high bandwidth on the VREF input. The assumption must be that any signal on VREF would be noise that needs to be filtered out. By the time I discovered the MDAC, I was no longer working on any project that might use it.
Which MDAC chips are you thinking of using? I am very curious to study the data sheets of modern MDAC chips to learn about the capabilities.
> I guess the main question I have is does it make sense to have all this waveshape precision when a 44 kHz sample rate captures music with a level of fidelity I think most people find acceptable if not ideal.
44.1 kHz is great for playback of music that has already gone through the recording, mixing, and mastering stages. At that point, no more manipulation is being done, so the extra resolution isn't necessary. Modern recording tends to benefit from sample rates above 60 kHz, and there are certain sounds where the human hearing system can detect finely-detailed impulse responses that require higher sample rates. It's not that continuous tones can be heard at those frequencies, but that the attack phase of certain sounds - particularly percussive - can suffer from lower sample rates. I would assume that synthesis could benefit from higher sample rates, even if there isn't a DSP implementing filtering.
If you're going to build your senior project with modern digital technology, I would recommend bumping up to 24-bit samples, if possible, and increase the sample rate of the individual voices as high as possible. They won't all be playing the highest notes on the keyboard. I have designed some waveform generators using Texas Instruments 14-bit DAC chips that can run as fast as 125 MHz. 14-bit may seem like a limitation, but when mixing a lot of individual voices in a synthesizer, you probably do not need high resolution for each individual voice.
>> If you were trying to make this into a product in 2025, I think you'd
>> pick a fast microcontroller and do all of this monkey business in
>> code, accepting the tradeoffs we're all familiar with.
>
> Microprocessors available in 1980 on a student budget:
> 6502
> 6800/6801/6809
> 8080/8085
> Z80
>
> The 68000, 8086/88, and Z8000 were available but expensive. Today I
> would probably go with the ARM chips used by Arduino.
There are many options for ARM chips, each with different sets of peripherals. Texas Instruments has their TM4C line. ST Micro has their STM ARM chips. You will surely want a better development environment than the Arduino - that's great for simple projects, but something that needs musical timing would be better coded bare metal.
I assume that the suggestion above was to handle the audio in the microcontroller, but for this project I think that the Control Voltage matrix could be handled by an MCU while the audio is synthesized and processed entirely by bespoke digital hardware.
> Thanks for your input.
> --
> Phil Harbison
Please keep us posted. I think this could be an interesting project.
Brian
More information about the Synth-diy
mailing list