Quantcast
what's inside Yamaha DX7 ? - Gearspace.com
The No.1 Website for Pro Audio
what's inside Yamaha DX7 ?
Old 2nd December 2014
  #1
Gear Maniac
 
kjukambe's Avatar
 
🎧 5 years
what's inside Yamaha DX7 ?

I'm interested in voice architecture. Does it have single DSP and DAC, or each voice has it's own DAC? what's actually inside?)
Old 2nd December 2014
  #2
Gear Guru
 
EvilDragon's Avatar
 
🎧 10 years
One DAC for all voices.
Old 2nd December 2014
  #3
Gear Guru
 
Yoozer's Avatar
 
1 Review written
🎧 10 years
It does not have a DSP but an ASIC.

Start reading all posts from here: https://gearspace.com/board/electron...l#post10580251
Old 2nd December 2014
  #4
Gear Nut
 
🎧 10 years
There were no DSP's in 1983 or were very expensive.

It's not a CPU doing the sound generation - it's a custom logic IC handling it. The CPU only does control functions. You could do FM on a CPU, but it wouldn't have been cost-effective at the time - even emulating a lesser Yamaha chip in software requires a good deal more horsepower than the DX7's CPU has to offer.

From what I gather the DX synths are actually phase distortion. A table with a sine being read out for a specific phase.
It's essentially a wavetable. (And don't confuse "phase modulation" with "phase distortion" - PD is just a marketing term, from Casio even.)

Here's something that was posted to the music-dsp list a few years ago. It has to do with the OPL2/OPL3 chips that were used in PC soundcards, but it's probably the same techniques that are involved for all of Yamaha's chips.
http://music.columbia.edu/pipermail/...2008-April.txt

And here Adlib / OPL2 / YM3812

"
Date: Fri Apr 18 02:44:09 2008
Subject: [music-dsp] YM3812 reverse engineering

Me and Matthew Gambrell have an interest in emulation of YM3812, which
is the OPL2 sound chip found in the Adlib and 8-bit Sound Blaster
cards. A later derivative OPL3 is found in early 16-bit Sound
Blasters. We sent one YM3812 and one YMF262 (OPL3) to MEFAS for
decapsulation; the cost was around 90 USD each. They indicated that
the chips would still be operational after decapsulation, but we had
no need to test this. Looking at the revealed YM3812 die surface with
a microscope turned out two ROM's.

[snip]

The contents could be read bit-by-bit. The first ROM was a log-sin
waveform table, containing one quarter of a sine wave, 256 samples
long. The second ROM was an exponential table, 256 samples long. There
were no other ROM's larger than 16 samples. This is strong evidence
that YM3812 produces the sound without any multiplications, using for
frequency modulated (actually phase modulated) synthesis the formula:

out = exp(logsin(phase2 + exp(logsin(phase1) + gain1)) + gain2)

[snip]"

For more professional parts, the kinds used in the synths, you might expect to see variations on this theme, perhaps longer tables or wider data words; apparently the OPL chips have 11-bit resolution per operator, I think most synths after the first DX7s have higher resolution than that.
Old 2nd December 2014
  #5
Gear Maniac
 
kjukambe's Avatar
 
🎧 5 years
Thanks for the info! And what do you think about DX7s difference with NI FM7/8 main engine? I'm thinking of hardware DX7s, cos it is available now in my city, and I had a lot of fun with FM7/8 previously
Old 2nd December 2014 | Show parent
  #6
Gear Nut
 
🎧 10 years
Quote:
Originally Posted by kjukambe ➡️
Thanks for the info! And what do you think about DX7s difference with NI FM7/8 main engine? I'm thinking of hardware DX7s, cos it is available now in my city, and I had a lot of fun with FM7/8 previously
Personally I prefer the sound, hiss etc of the hardware units.

I have 4x different 4op Yamaha FM synths and they all have their own unique sound.

What I prefer on keyboards like the DX-100 is the interface is very easy to use and prefer it to using software.
Regardless of what people say it's very intuitive and every button has it's own function.

Saying that the same doesn't seem to apply to the DX-7 and friends who have it say it's still a bit of a pain to program but it's still more fun than a bunch of mouse clicking imo
Old 2nd December 2014 | Show parent
  #7
Lives for gear
 
acreil's Avatar
 
🎧 10 years
Quote:
Originally Posted by EvilDragon ➡️
One DAC for all voices.
...but each voice is converted individually.

Quote:
Originally Posted by vinyl_junkie ➡️
There were no DSP's in 1983 or were very expensive.
The main feature of a DSP is a fast hardware multiplier. 16x16 multipliers were available already in the mid 70s, but were very expensive because they require a lot of logic gates. The Yamaha FM synths instead use logarithms; a multiply is replaced by an addition and exponential table lookup. Many of the implementation details are described in patent 4554857.

Quote:
From what I gather the DX synths are actually phase distortion. A table with a sine being read out for a specific phase.
It's essentially a wavetable. (And don't confuse "phase modulation" with "phase distortion" - PD is just a marketing term, from Casio even.)
It's phase modulation; something is added to the carrier's phase accumulator, while phase distortion modifies it with a piecewise linear function.

Quote:
For more professional parts, the kinds used in the synths, you might expect to see variations on this theme, perhaps longer tables or wider data words; apparently the OPL chips have 11-bit resolution per operator, I think most synths after the first DX7s have higher resolution than that.
The GS-1/GS-2, OPL series chips and OPP (DX100, FB01, etc.) have 256 entry tables, meaning that the complete sine wave is 1024 samples long. Everything else (CE20/25, TX81z, DX7, DX7II, SY77, FS1r, etc.) uses 1024 entry tables, so the complete sine wave is 4096 samples long.

Lower table resolution leads to added high harmonics (often aliased), noise and rough sounding envelopes (zipper noise). The additional waveforms that are present in some models are generated by reading out the same quarter log sine table in different ways.

DACs, sample rates, etc. also vary between models. DACs add significant distortion in the GS-1/2, CE20/25, DX7 and 4 operator models, but are relatively insignificant in the others.

Quote:
Originally Posted by kjukambe ➡️
Thanks for the info! And what do you think about DX7s difference with NI FM7/8 main engine? I'm thinking of hardware DX7s, cos it is available now in my city, and I had a lot of fun with FM7/8 previously
FM7/8 (as well as other recent hardware and software implementations) likely use smooth interpolation to generate the sines, which eliminates the effects of the low resolution tables. DACs aren't emulated. The envelopes and modulation aren't identical, so patch conversion is imperfect (and thus direct A/B comparisons are somewhat flawed). It's FM as it's mathematically supposed to be, but it leaves out the high harmonics, noise and distortion that people have come to associate with the Yamaha synths.
Old 2nd December 2014
  #8
Gear Nut
 
🎧 10 years
Superb info acreil, thanks!
Old 22nd October 2015
  #9
Gear Maniac
 
kjukambe's Avatar
 
🎧 5 years
thanks for the info! so, the clock of DX7's master DACs runs at a constant speed? and if so, what is the carrier frequency?
Old 22nd October 2015 | Show parent
  #10
Lives for gear
 
nednerd's Avatar
 
🎧 5 years
Quote:
Originally Posted by acreil ➡️
...but each voice is converted individually.
With one DAC and 16 voices, how does this work, can you elaborate? Multiplexing?

Last edited by nednerd; 22nd October 2015 at 03:52 PM..
Old 22nd October 2015
  #11
Gear Maniac
 
🎧 10 years
Kewl thread
Old 23rd October 2015 | Show parent
  #12
Lives for gear
 
acreil's Avatar
 
🎧 10 years
Quote:
Originally Posted by kjukambe ➡️
thanks for the info! so, the clock of DX7's master DACs runs at a constant speed? and if so, what is the carrier frequency?
The sample rate is 49096 Hz, so the DAC is working at 785536 Hz (49096 * 16).

Quote:
Originally Posted by nednerd ➡️
With one DAC and 16 voices, how does this work, can you elaborate? Multiplexing?
Yeah, it's time-multiplexed, but unlike the usual polyphonic time multiplexed DAC where each channel gets is own sample and hold, here there are only two sample and holds that are used alternately (and I think two are used so that it's not too fast for the switches, etc.). So one sample and hold gets the even-numbered voices, and the other gets the odd-numbered voices.

Intuitively it might seem like the resulting waveform would be rough or distorted, since the voices are mixed by interleaving rather than summation, but it's smoothed out by the reconstruction filter.
Old 23rd October 2015
  #13
Lives for gear
 
nednerd's Avatar
 
🎧 5 years
Thanks for the great Info acreil!
That DA logic seems to be quite a peculiar construction.
I did not know that it was possible to run a DAC at 785kHz back then. Quite speedy.
...goes to show that restricted means spark inventiveness.
Old 23rd October 2015 | Show parent
  #14
Lives for gear
 
acreil's Avatar
 
🎧 10 years
Quote:
Originally Posted by nednerd ➡️
Thanks for the great Info acreil!
That DA logic seems to be quite a peculiar construction.
I did not know that it was possible to run a DAC at 785kHz back then. Quite speedy.
...goes to show that restricted means spark inventiveness.
The rate isn't really remarkable; DACs can go much faster, and ~800 kHz is more or less average for a time multiplexed synth. The main thing is that the DAC needs to have a lot of dynamic range to reproduce a digitally scaled sine; 16 bit DACs were available at the time, but very expensive. So Yamaha's solution was to use a commonly available 12 bit DAC with an external resistor ladder to make a floating point DAC with 15 bits dynamic range. But the resistors aren't very well matched, so this introduces some distortion, and the DX7 II models switched to a 15 bit linear DAC.
Old 10th August 2017 | Show parent
  #15
Lives for gear
 
zmix's Avatar
 
🎧 15 years
Quote:
Originally Posted by acreil ➡️
The sample rate is 49096 Hz, so the DAC is working at 785536 Hz (49096 * 16).



Yeah, it's time-multiplexed, but unlike the usual polyphonic time multiplexed DAC where each channel gets is own sample and hold, here there are only two sample and holds that are used alternately (and I think two are used so that it's not too fast for the switches, etc.). So one sample and hold gets the even-numbered voices, and the other gets the odd-numbered voices.

Intuitively it might seem like the resulting waveform would be rough or distorted, since the voices are mixed by interleaving rather than summation, but it's smoothed out by the reconstruction filter.
If this is true, is it possible to extract each voice after the S/H..?
Old 10th August 2017 | Show parent
  #16
Lives for gear
 
acreil's Avatar
 
🎧 10 years
Quote:
Originally Posted by zmix ➡️
If this is true, is it possible to extract each voice after the S/H..?
Yes, that's how the TX802 gets 8 outputs. There are 16 sample and holds. But you'd have to have the proper timing signals (there are some pins that indicate that this might be possible in the DX7) and build demultiplexing and sample and hold circuits.

Ultimately I'm not sure that it would be worthwhile since the DX7 II is already stereo and the TX802 has multiple outputs.
Old 10th August 2017 | Show parent
  #17
Lives for gear
 
zmix's Avatar
 
🎧 15 years
Quote:
Originally Posted by acreil ➡️
Yes, that's how the TX802 gets 8 outputs. There are 16 sample and holds. But you'd have to have the proper timing signals (there are some pins that indicate that this might be possible in the DX7) and build demultiplexing and sample and hold circuits.

Ultimately I'm not sure that it would be worthwhile since the DX7 II is already stereo and the TX802 has multiple outputs.
Thanks for the reply..

It's really nothing more than academic interest at this point, to be honest.
I'd love to see the schematics, though. The service manual I've seen online is somewhat general...
Old 10th August 2017
  #18
TNC
Lives for gear
 
There is a battery that you'll eventually need to change. I'm afraid of 80's synthesizers with batteries.
Old 10th August 2017
  #19
Lives for gear
 
GeminIAm's Avatar
 
🎧 5 years
What's inside a DX7? Dead flies and traces of cocaine
Old 10th August 2017 | Show parent
  #20
Lives for gear
 
acreil's Avatar
 
🎧 10 years
Quote:
Originally Posted by zmix ➡️
It's really nothing more than academic interest at this point, to be honest.
I'd love to see the schematics, though. The service manual I've seen online is somewhat general...
I think there are service manuals and schematics floating around for the DX7, DX7II, TX802, TX7 and TF1, and also a couple electronic pianos that are similar to the DX7II (PF80, CLP-30), and a fairly thorough patent (4554857). The DX1 and DX5 should use the same exact DAC design as the DX7.

As far as the DAC goes, the first and second generation models operate in pretty much the same way, only the floating point DAC is replaced by a 15 bit linear DAC.

The time multiplexing thing is also done in cheap ICs that use low quality onboard DACs, so that they can get not totally horrible performance from an 8 or 9 bit DAC. These have really considerable DAC distortion, but it sounds kind of nice since it's independent for each voice. Like the DX7, you can't replicate this effect with a bit crusher. You could hypothetically separate the DAC channels in these too, and in some cases it would be more useful because this would permit separate outputs for tone and rhythm sounds, for example. But there aren't any externally available signals that can drive sample and holds.
Old 10th August 2017
  #21
Deleted cda76ca
Guest
A million songs trying to get out.

Here are a couple of them

Old 20th August 2017 | Show parent
  #22
Lives for gear
 
zmix's Avatar
 
🎧 15 years
Quote:
Originally Posted by acreil ➡️
I think there are service manuals and schematics floating around for the DX7, DX7II, TX802, TX7 and TF1, and also a couple electronic pianos that are similar to the DX7II (PF80, CLP-30), and a fairly thorough patent (4554857). The DX1 and DX5 should use the same exact DAC design as the DX7.

As far as the DAC goes, the first and second generation models operate in pretty much the same way, only the floating point DAC is replaced by a 15 bit linear DAC.

The time multiplexing thing is also done in cheap ICs that use low quality onboard DACs, so that they can get not totally horrible performance from an 8 or 9 bit DAC. These have really considerable DAC distortion, but it sounds kind of nice since it's independent for each voice. Like the DX7, you can't replicate this effect with a bit crusher. You could hypothetically separate the DAC channels in these too, and in some cases it would be more useful because this would permit separate outputs for tone and rhythm sounds, for example. But there aren't any externally available signals that can drive sample and holds.
Casio employed a similar scheme in their VZ series:

Old 20th August 2017 | Show parent
  #23
Lives for gear
 
acreil's Avatar
 
🎧 10 years
Quote:
Originally Posted by zmix ➡️
Casio employed a similar scheme in their VZ series:
Yeah, oddly the DAC in the VZ appears to individually convert each line (i.e. pair of oscillators) rather than each voice. In the DX7 the advantage of individually converting each voice is that the DAC distortion doesn't cause intermodulation distortion between voices.

In general it's not that uncommon to oversample the DAC in order to increase its dynamic range, although it's not always obvious from the schematic.
Old 21st August 2017 | Show parent
  #24
Lives for gear
 
zmix's Avatar
 
🎧 15 years
Quote:
Originally Posted by acreil ➡️
Yeah, oddly the DAC in the VZ appears to individually convert each line (i.e. pair of oscillators) rather than each voice. In the the advantage of individually converting each voice is that the DAC distortion doesn't cause intermodulation distortion between voices.

In general it's not that uncommon to oversample the DAC in order to increase its dynamic range, although it's not always obvious from the schematic.
I assumed that those are the two 4-voice LSI chips, rather than the internal generator lines, the instrument has 8 voice polyphony.

Attached Thumbnails
what's inside Yamaha DX7 ?-casio-20vz-20voice-20chip-20page23image256.jpg  

Last edited by zmix; 21st August 2017 at 03:36 PM.. Reason: Added image
Old 21st August 2017 | Show parent
  #25
Lives for gear
 
acreil's Avatar
 
🎧 10 years
Quote:
Originally Posted by zmix ➡️
I assumed that those are the two 4-voice LSI chips, rather than the internal generator lines, the instrument has 8 voice polyphony.
Actually the LSIs each are 8 note polyphonic for 16 notes total. The VZ-8m has one IC and is thus 8 note polyphonic.

I haven't actually verified yet that each line is converted individually, but it seems to me that it would work that way.
Old 21st August 2017 | Show parent
  #26
Lives for gear
 
zmix's Avatar
 
🎧 15 years
Quote:
Originally Posted by acreil ➡️
Actually the LSIs each are 8 note polyphonic for 16 notes total. The VZ-8m has one IC and is thus 8 note polyphonic.

I haven't actually verified yet that each line is converted individually, but it seems to me that it would work that way.
Look at the voice architecture in the block diagram of the 8-voice LSI chip.
Each voice in the VZ is comprised of 8 DCO / DCA pairs (M1-M8) each of which can be routed directly to the output, ring modulated with the next, or in series with the next for "phase modulation", and each pair of which (L0-L3) can be routed in series to the next pair or output directly.
Old 8th November 2020
  #27
Here for the gear
 
🎧 5 years
Hey guys, does anybody know the correct information about the sample rate of Yamaha DX7's quarter sine wave which is in it's ROM? I know that it's 256 samples long, but at what sample rate?
Old 8th November 2020 | Show parent
  #28
Lives for gear
Quote:
Originally Posted by GeminIAm ➡️
What's inside a DX7? Dead flies and traces of cocaine
1 inch o dust and dead spiders
Old 8th November 2020 | Show parent
  #29
Deleted cda76ca
Guest
Quote:
Originally Posted by Alex Danilov ➡️
Hey guys, does anybody know the correct information about the sample rate of Yamaha DX7's quarter sine wave which is in it's ROM? I know that it's 256 samples long, but at what sample rate?
49096 Hz. There’s a static low pass filter at about 16kHz to roll off some of the more brittle sounding aliasing artefacts.
Old 8th November 2020
  #30
Gear Maniac
 
Disharmonic's Avatar
 
Interesting thread!
📝 Reply

Similar Threads

Thread / Thread Starter Replies / Views Last Post
replies: 395 views: 83456
Avatar for robotunes
robotunes 9th October 2018
replies: 112 views: 22195
Avatar for in media res
in media res 10th May 2021
replies: 60 views: 14253
Avatar for entresolmusic
entresolmusic 3rd April 2020
replies: 2686 views: 195964
Avatar for OnceTwiceMelody
OnceTwiceMelody 1 week ago
Topic:
Post Reply

Welcome to the Gearspace Pro Audio Community!

Registration benefits include:
  • The ability to reply to and create new discussions
  • Access to members-only giveaways & competitions
  • Interact with VIP industry experts in our guest Q&As
  • Access to members-only sub forum discussions
  • Access to members-only Chat Room
  • Get INSTANT ACCESS to the world's best private pro audio Classifieds for only USD $20/year
  • Promote your eBay auctions and Reverb.com listings for free
  • Remove this message!
You need an account to post a reply. Create a username and password below and an account will be created and your post entered.


 
 
Slide to join now Processing…

Forum Jump
Forum Jump