[HN Gopher] Yamaha DX7 chip reverse-engineering, part V: the out...
___________________________________________________________________
Yamaha DX7 chip reverse-engineering, part V: the output circuitry
Author : picture
Score : 115 points
Date : 2022-02-04 17:16 UTC (5 hours ago)
(HTM) web link (www.righto.com)
(TXT) w3m dump (www.righto.com)
| kens wrote:
| Author here if there are any questions about my latest DX7 post.
| annoyingnoob wrote:
| I love your work and your site, thank you.
| [deleted]
| orangesite wrote:
| Thank you so much for doing these, my childhood is complete!
| null4bl3 wrote:
| Have you tried out the korg Opsix?
| wrs wrote:
| Have you interacted with the folks at Plogue making the OPS7
| emulator? They seem to be obsessed with reverse engineering to
| get bit-level hardware accuracy (but with a logic analyzer).
| lostgame wrote:
| I just wanted to thank you for this.
|
| I 'grew up' on the YM2612 due to the Genesis being my childhood
| console.
|
| As a rapper/producer these days - I'm always reaching back
| there when composing Beats - with the self-imposed limitations
| included, of course. Some prouducers still prefer an MPC2000
| over a DAW.
| justaj wrote:
| What do you think about the dexed softsynth [0]? It's
| supposedly the closest modeled softsynth to the DX7 in
| existence.
|
| 0: https://asb2m10.github.io/dexed/
| [deleted]
| corysama wrote:
| They'd like this over in
| https://www.reddit.com/r/ReverseEngineering/
| pantulis wrote:
| Thanks for this! Will you be dissecting the M1? ;)
| jacquesm wrote:
| Will you donate an electron microscope? ;)
| TonyTrapp wrote:
| They are most likely referring to the Korg M1, not the
| Apple M1. Similar vintage as the DX7, so probably no
| electron microscope needed.
| kens wrote:
| I wasn't planning on looking at either M1 :-)
| jacquesm wrote:
| Ah yes, that possibility exists as well. Good call.
| wildzzz wrote:
| It would be interesting to have this design on an FPGA that has a
| built-in DAC. I could see a very general purpose midi keyboard
| that has an interface that would allow switching between multiple
| different simulated synthesizers.
| jedimastert wrote:
| Not exactly the same, but here's an FPGA emulation of a Hammond
| organ
|
| https://github.com/keyboardpartner/HX3
| dharma1 wrote:
| I just bought the parts for this FPGA 6op fm synth -
| https://www.futur3soundz.com/xfm2 for about $100.
|
| It sounds amazing, simple build. The author, Rene Caballos is a
| dsp guru who wrote Z3TA+ and a bunch of other softsynths. The
| same board can also run another synth,
| https://www.futur3soundz.com/da-blog/xva1
| klodolph wrote:
| Sure, but this is known to be easy to emulate in software. The
| FPGA isn't really necessary.
| dharma1 wrote:
| It's nice if you want a portable (size of a cigarette pack)
| hardware fm synth with megahertz sample rate oscillators (no
| aliasing), with built in effects
| klodolph wrote:
| For the same reason that dynamite can be used to dig holes
| in your garden, yes, an FPGA can be used to simulate a DX7.
|
| If you're going for a "no aliasing" simulation then you're
| not after the DX7 sound anyway (which has fairly heavy
| aliasing), and you might as well just wire up some
| bandlimited FM in software. I still don't see how using an
| FPGA helps you, except that it lets you throw money at a
| problem instead of having to learn signal processing
| theory.
|
| I'm not trying to pooh-pooh FPGAs, it's just that CPUs have
| a ton of processing power these days, and we have tons of
| signal processing techniques to deal with aliasing other
| than just cranking the sample rate up to infinity. The
| amount of processing power it requires for bandlimited
| synthesis is a function of sample rate, if you keep the
| other design parameters fixed. Low sample rates are
| inefficient because your filters get really large--so you
| oversample. Likewise, at high sample rates (megahertz is
| well beyond "high") it gets easier and easier to deal with
| aliasing, and at some point, you're just churning through
| more data without reducing the aliasing (because at some
| point it's below the noise floor anyway).
| dharma1 wrote:
| Ah, I agree that simulation of DX7 quirks with FPGA makes
| little sense. But they are an interesting choice for a
| very portable high quality FM synth (not a specific
| emulation) vs other similar sized options. Here is some
| more rationale - https://www.futur3soundz.com/xfm-index
| klodolph wrote:
| My experience implementing FM in software is that CPUs
| are just so wicked fast, because FM is super easy to
| implement in SIMD. I implemented FM synthesis using SSE
| and when I measured the performance, I found out that the
| oscillators were memory-bound or close to it. You could
| compile a few operators into a function and work on small
| buffers in L1 cache, and and it just wouldn't show up on
| the CPU usage monitor.
| dharma1 wrote:
| Yeah to be honest he could have probably implemented this
| as an iOS app for max portability. Wouldn't get latency
| down to 1ms like with the FPGA synth but otherwise would
| have been fine
| mikepurvis wrote:
| There have been a handful of products that have tried to be an
| FPGA for analog circuits, but unfortunately those applications
| are far, far more sensitive to signal integrity issues, so it's
| harder to just abstract away all the intermediate fabric that
| connects up your function blocks the way you can with a digital
| circuit.
|
| This post explains further:
| https://electronics.stackexchange.com/a/25529
|
| Here's an example [0] of some of the many considerations that
| come into play when laying out even a conventional PCB that
| handles analog signals, from which it's not hard to imagine how
| much more of issue basically all of that stuff would be when
| happening inside a single chip package-- particularly when part
| of the point of analog circuits for audio processing is often
| to achieve the aesthetically interesting effects that happen
| when components are overdriven, oscillating or feeding back, in
| breakdown, etc. Not hard to see why modern programmable effects
| pedals just have a high speed DAC and do everything in
| discretized space.
|
| [0]: https://resources.altium.com/p/pcb-design-rules-analog-
| circu...
| sparklingmango wrote:
| HN loves the DX7.
| httpsterio wrote:
| I mean, why not? It's not the first but one of the first FM
| synths and the one that definitely made the biggest splash.
| Affordable and versatile so it became a staple in studios,
| music classes and with home players as well.
|
| The sound chip YM2612 is also what elevated video game audio
| when it was still in its' infancy to something more akin to
| "real" sounding instruments.
|
| Historically it's been very influential since the 80s so it's
| no wonder it's struck a chord with people now in their 30s, 40s
| and older.
| klodolph wrote:
| IMO the YM2612 was neat but shortly after it appeared, we
| started getting multichannel PCM-based (or ADPCM) sound chips
| which were much more flexible and had more naturalistic
| sounds.
| w0mbat wrote:
| The same thing happened in the pro synth world.
|
| When the DX7 came out in 1983, people were wowed by the
| decent piano sound, for example, which was something analog
| synths never did well. There were lots of sounds like that
| - bells, xylophone etc.
|
| Then sample based keyboards started to get more affordable,
| and RAM and ROM got cheaper.
|
| Eventually in 1988 came the Korg M1. Megabytes of samples
| in ROM let it do a perfect piano sound, along with a horde
| of other great sounds, natural and unnatural. The M1 became
| the best-selling synth in history and the world's
| fascination with FM finally faded.
| jacquesm wrote:
| HN Loves Ken Sherriff. His work is absolutely amazing.
| Mountain_Skies wrote:
| I know next to nothing about musical keyboards but know about
| the DX7. In the 80s it was a rock star in its own right. MTV
| and the big DX7 label on the back of the keyboard made it as
| recognizable as members of the band using it. For that era, it
| was the Porsche 911 of keyboards.
___________________________________________________________________
(page generated 2022-02-04 23:00 UTC)