Remove ads
Sound chip series by Yamaha From Wikipedia, the free encyclopedia
The OPL (FM Operator Type-L) series is a family of sound chips developed by Yamaha. It consists of low-cost sound chips providing FM synthesis for use in computing, music and video game applications.
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
The OPL series of chips enabled the creation of affordable sound cards for IBM PC compatibles in the late 1980s such the AdLib and Sound Blaster, effectively becoming a de-facto standard until they were supplanted by "wavetable synthesis" cards in the early-to-mid 1990s.
This section needs expansion with: less technical description of operation, sourced from a reliable source. You can help by adding to it. (January 2024) |
The internal operation of the chips is completely digital. Each FM-tone is generated by a digital oscillator using a form of direct digital synthesis. A low-frequency oscillator and an envelope generator drive an FM operator to produce floating-point output for the DAC. Decapsulation of the chips shows two look-up tables, one for calculating exponents and one for log-sine.[1] This allows the FM operator to calculate its output without any multipliers, using the formula and two 256-entry look-up tables. Both tables are stored as pairs of values rounded to the nearest whole number, with the second value represented as the difference between it and the first value.
A quarter of the log-transformed sine waveform is stored as a sampled approximation in a 256-word read-only memory (ROM) table, computed by for values of 0 to 255. The rest of the sine-waveform is extrapolated via its property of symmetry. Scaling the output of an oscillator to a wanted volume would normally be done by multiplication, but the YM3526 avoids multiplications by operating on log-transformed signals, which reduces multiplications into computationally cheaper additions.[2]
Another 256-word ROM stores the exponential function as a lookup table, used to convert the logarithmic scale signal back to linear scale when required, as the final stage where the oscillator-outputs are summed together (just prior to the DAC-output bus), with the modulator waveform always delayed by one sample before the carrier waveform.[3] This table is computed by for values of 0 to 255. To compute the exponent, 1024 is added to the value at the index given by the least significant byte of input; this becomes the significand and the remaining bits of input become the exponent of the floating point output.
The YM3526, introduced in 1984, was the first in the OPL family, providing a nine channel, two operator synthesizer. A very closely related chip is the Y8950, or MSX-AUDIO, which was used as an MSX expansion. It is essentially a YM3526 with ADPCM recording and playback capability.
The circuit has 244 different write-only registers. It can produce 9 channels of sound (or 6 channels with 5 percussion instruments available), each made of two oscillators. Each oscillator can produce sine waves and has its own ADSR envelope generator. Its main method of synthesis is frequency modulation synthesis, accomplished via phase modulation of the phase of one channel's oscillators by the output of another.
The YM3526's output, a sequence of floating point numbers clocked at a sampling frequency of approximately 49716 Hz, is sent to a separate digital-to-analog converter (DAC) chip, the YM3014B. The YM3014B DAC chip was also used in other FM chips such as the YM2151 and YM2203.
Overview of a channel's registers:
For the whole channel:
For each one of the two oscillators:
There are also a few parameters that can be set for the whole chip:
In 1985, Yamaha created the YM3812, also known as the OPL2. It is backward compatible with the YM3526. Another related chip is the YM2413 (OPLL), which is a cut down version of the YM3812.
Limited to two-operator FM synthesis, the YM3812 is unable to accurately reproduce timbres of real instruments and percussive sounds unlike other FM chips. Melody polyphony is limited to nine voices in melodic mode and six voices in percussive mode.[5]: 27.14–17.16 Among its newly-added features is the ability to pick between four waveforms for each individual oscillator by setting a register. In addition to the original sine wave, three modified waveforms can be produced: half-sine waves (where the negative part of the sine is muted), absolute-sine waves (where the negative part is inverted), and pseudo-sawtooth waves (quarter sine waves upward only with silent sections in between). This odd way of producing waveforms give the YM3812 a characteristic sound.[6] The YM3812 is used with an external YM3014B monophonic DAC chip to output its audio in analog form, like with the YM3526.
Having little competition on the market at the time of introduction of Adlib and Sound Blaster in the late 1980s, the chip became the de-facto standard for "Sound Blaster compatible" sound cards.[5]: 27.14
Released as early as 1990,[7] an upgraded version of the OPL2 known as the YMF262 (a.k.a. OPL3) was developed. It improves on the feature-set of the YM3812, which notably includes the ability to use four-operator FM synthesis. This makes the YMF262 produce more harmonically richer sound than its predecessors, similar to that of contemporary consumer synthesizer keyboards such as Yamaha DX100.[5]: 27.16
The following features were added:[8]
The YMF262's FM synthesis mode can be configured in different ways:[5]: 27.16–27.18 [8]
The YMF262 also removed support for the little-used CSM (Composite sine mode) that was featured on the YM3526 and YM3812.[3] The mode was equivalent to triggering multiple channels simultaneously. Like its predecessors, the OPL3 outputs audio in digital form, requiring an external DAC chip such as the YAC512.
The YMF262 was used in the revised Sound Blaster Pro, Sound Blaster 16, AdLib Gold, Media Vision’s Pro AudioSpectrum cards, and Microsoft’s Windows Sound System cards.[4]: 45 Competing sound chip vendors (such as ESS,[9] OPTi,[10] Crystal[11] and others) have also designed their own OPL3-compatible audio chips, with varying degrees of faithfulness to the original OPL3.
In 1995, Yamaha produced a fully compatible, low-power variant of the YMF262 called the YMF289 (OPL3-L), targeting PCMCIA sound cards and laptop computers.[12] It was also used in some Sound Blaster 16 sound cards made by Creative Technology. The YMF289B is paired with a YAC513 or YAC516 companion floating-point DAC chip.
The YMF289 is fully register-compatible with and retains the feature-set of the YMF262, with a number of differences:[12]
ESS Technology's in-house developed derivative, termed ESFM, is an enhanced 72-operator OPL3-compatible clone incorporating two operating modes, a Native mode and a Legacy mode, which controls its feature-set and behavior.[9] In Native mode, ESFM allows 18 4-operator FM voices to be mapped, each with per-operator frequency control and LFO depth,[13] potentially allowing for a significant increase in the complexity of tones generated. The drivers for Windows 9x incorporate their own custom instrument patches which make use of this extended mode. Conversely, Legacy mode provides full backward-compatibility with Yamaha's YMF262.[9] ESFM's output in this mode is moderately faithful to the YMF262 overall, but some tones are rendered quite differently, resulting in unique distortions in the sound and music of some games.
ESFM is available in ESS sound chips starting with the ISA-based ES1688 AudioDrive, up to the PCI-based ES1946 Solo-1E, whereas earlier chips required an external FM synthesizer chip (typically a Yamaha YMF262). ESS's Maestro series of PCI-based sound chips rely on a software implementation of FM synthesis that lacks ESFM's special features.
Yamaha's later PC audio controllers, including the YMF278 (OPL4), the single-chip Yamaha YMF718/719S, and the PCI YMF724/74x family, included the YMF262's FM synthesis block for backward compatibility with legacy software. See YMF7xx for more information.
The YM3526 was notably used in a Commodore 64 expansion, the Sound Expander, as well as several arcade games, such as Terra Cresta and Bubble Bobble. A modified version of the YM3526 with ADPCM audio known as the Y8950 (MSX-AUDIO) was used in the MSX computer as an optional expansion.
The YM3812 saw wide use in IBM PC-based sound cards such as the AdLib, Sound Blaster and Pro AudioSpectrum (8bit),[14] as well as several arcade games by Nichibutsu, Toaplan and others.
The YM2413 was used in the FM Sound Unit expansion for the Sega Mark III and the Japanese model Sega Master System, as well as the MSX-MUSIC standard, which was released both as separate enhancement cards (such as the Panasonic FM-PAC) and built-in into several MSX2+ and the MSX TurboR computers. It was also used in some arcade games by Atari, SNK and Alpha Denshi, among others.
The YMF262 was used in many IBM PC-based sound cards, firstly with the popular Sound Blaster Pro 2 in 1991 and then later with the Sound Blaster 16 ASP in 1992, as well as the Pro AudioSpectrum (16bit).[14] Later models of the Sound Blaster 16 and Sound Blaster AWE series integrated the OPL3 with other chips, with Creative Labs using an OPL3 clone chip, the CQM, integral with other chips in later models from late 1995.[15] It is also used in several arcade games by Tecmo and others.
The YMF278 was used in the Moonsound card for the MSX, as well as the Sound Edge card by Yamaha for IBM PC compatibles.
Synthesizers that use the YM3812:[16]
Synthesizers that use the YM2413 (cost reduced YM3812):[16]
An open-source RTL implementation of the OPL3 was written in SystemVerilog and adapted to an FPGA in 2015.[19]
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.