Yamaha OPL

Last updated

The OPL (FM Operator Type-L) series are a family of sound chips developed by Yamaha. The OPL series are low-cost sound chips providing FM synthesis for use in computing, music and video game applications.

Contents

The OPL series of chips enabled the creation of affordable sound cards in IBM PC compatibles like the AdLib and Sound Blaster, becoming a de-facto standard until they were supplanted by "wavetable synthesis" cards in the early-to-mid 1990s.

Internal operation

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.

Chips in the series

OPL

Yamaha YM3526 Yamaha YM3526.png
Yamaha YM3526

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, each made of two oscillators or 6 channels with 5 percussion instruments available. 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.

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:

OPL2

An audio sample of music written for and played on YM3812
OPL2 waveforms YM3812 waveforms numbered.png
OPL2 waveforms

In 1985, Yamaha created the YM3812, also known as the OPL2. It is backwards compatible with the YM3526. Another related chip is the YM2413 (OPLL), which is a cut down version.

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. [5]

Limited to two-operator FM synthesis, the chip is unable to accurately reproduce timbres of real instruments and percussive sounds. Melody polyphony is limited to nine voices in melodic mode and six voices in percussive mode. [6] :27.14–17.16

Having little competition on the market at the time of introduction of Adlib and Sound Blaster, the chip became the de-facto standard for "Sound Blaster compatible" sound cards. [6] :27.14

The YM3812 is used with the YM3014B external DAC chip to output its audio in analog form, like with the YM3526.

OPL3

OPL3 waveforms OPL3-Waves.jpg
OPL3 waveforms

An upgraded version of the OPL2, the YMF262 (a.k.a. OPL3), was released in 1990. [7] It improved upon the feature-set of the YM3812, using four-operator FM synthesis, which produces harmonically richer sound similar to contemporary consumer synthesizer keyboards such as Yamaha DX100. [6] :27.16

The following features were added: [8]

The YMF262 also removed support for the little-used CSM (Composite sine mode) mode, featured on the YM3812 and YM3526. [3]

The YMF262's FM synthesis mode can be configured in different ways: [6] :27.16–27.18 [8]

Like its predecessors, the OPL3 outputs audio in digital-I/O 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) designed their own OPL3-compatible audio chips, with varying degrees of faithfulness to the original OPL3.

Yamaha YMF289

A comparison of the outputs of Yamaha's YMF262 and YMF289 FM sound chips. 0:00 is YMF262, and 0:31 onward is YMF289.

Yamaha also produced a fully compatible, low-power variant of the YMF262 in 1995 called the YMF289 (OPL3-L), which targeted PCMCIA sound cards and laptop computers. [12] It was 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]

  • Supports 5 or 3.3 volt operation.
  • The registers can be read or written by the host CPU, whereas on the YMF262 they are write-only.
  • 44,100 Hz (44.1 kHz) output sample rate.
  • A power-down mode is added.
  • Somewhat smaller overall footprint, including DAC, compared to a full YMF262 implementation.
  • 33.868 MHz input clock, compared to the 14.32 MHz input clock used for the YMF262.
  • Internal linear interpolator.

ESS ESFM

ESFM's output under Legacy / OPL3-compatible mode demonstrates some tangible differences in the way some sounds are synthesized.

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.

OPL3-SA, DS-XG, OPL4

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.

Products using the OPL series

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.

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 SoundEdge card by Yamaha for IBM PC compatibles.

Synthesizers

Synthesizers that use the YM3812: [16]

Synthesizers that use the YM2413 (cost reduced YM3812): [16]

Variants and derivatives

An open-source RTL implementation of the OPL3 was written in SystemVerilog and adapted to an FPGA in 2015. [19]

See also

Related Research Articles

<span class="mw-page-title-main">Frequency modulation synthesis</span> Form of sound synthesis

Frequency modulation synthesis is a form of sound synthesis whereby the frequency of a waveform is changed by modulating its frequency with a modulator. The (instantaneous) frequency of an oscillator is altered in accordance with the amplitude of a modulating signal.

<span class="mw-page-title-main">Sound card</span> Expansion card that provides input and output of audio signals

A sound card is an internal expansion card that provides input and output of audio signals to and from a computer under the control of computer programs. The term sound card is also applied to external audio interfaces used for professional audio applications.

<span class="mw-page-title-main">Music tracker</span> Type of software for creating music

A music tracker is a type of music sequencer software for creating music. The music is represented as discrete musical notes positioned in several channels at chronological positions on a vertical timeline. A music tracker's user interface is traditionally number based. Notes, parameter changes, effects and other commands are entered with the keyboard into a grid of fixed time slots as codes consisting of letters, numbers and hexadecimal digits. Separate patterns have independent timelines; a complete song consists of a master list of repeated patterns.

<span class="mw-page-title-main">Sound Blaster</span> Family of sound cards by Creative Technology

Sound Blaster is a family of sound cards and audio peripherals designed by Singaporean technology company Creative Technology. The first Sound Blaster card was introduced in 1989.

<span class="mw-page-title-main">MOS Technology 6581</span> MOS Technology sound chip

The MOS Technology 6581/8580 SID is the built-in programmable sound generator chip of the Commodore CBM-II, Commodore 64, Commodore 128, and MAX Machine home computers.

<span class="mw-page-title-main">Yamaha YM2612</span> FM synthesis sound chip by Yamaha

The YM2612, a.k.a. OPN2, is a sound chip developed by Yamaha. It is a member of Yamaha's OPN family of FM synthesis chips, and is derived from the YM2203.

The digital sound revolution refers to the widespread adoption of digital audio technology in the computer industry beginning in the 1980s.

<span class="mw-page-title-main">Yamaha YM2413</span> FM synthesis sound chip by Yamaha

The YM2413, a.k.a. OPLL, is a cost-reduced FM synthesis sound chip manufactured by Yamaha Corporation and based on their YM3812 (OPL2).

<span class="mw-page-title-main">Yamaha YMF7xx</span>

There have been various families of Yamaha audio controllers labelled as YMF7xx.

<span class="mw-page-title-main">Ensoniq Soundscape S-2000</span> PC sound card

Soundscape S-2000 was Ensoniq's first direct foray into the PC sound card market. The card arrived on the market in 1994. It is a full-length ISA digital audio and sample-based synthesis device, equipped with a 2 MiB Ensoniq-built ROM-based patch set. Some OEM versions of the card feature a smaller 1 MiB patch set. It was praised for its then-high quality music synthesis and sound output, high compatibility and good software support.

<span class="mw-page-title-main">Sound Blaster 16</span> Sound card by Creative Technology

The Sound Blaster 16 is a series of sound cards by Creative Technology, first released in June 1992 for PCs with an ISA or PCI slot. It was the successor to the Sound Blaster Pro series of sound cards and introduced CD-quality digital audio to the Sound Blaster line. For optional wavetable synthesis, the Sound Blaster 16 also added an expansion-header for add-on MIDI-daughterboards, called a Wave Blaster connector, and a game port for optional connection with external MIDI sound modules.

<span class="mw-page-title-main">Sound Blaster AWE32</span> Sound card for PCs

The Sound Blaster AWE32 is an ISA sound card from Creative Technology. It is an expansion board for PCs and is part of the Sound Blaster family of products. The Sound Blaster AWE32, introduced in March 1994, was a near full-length ISA sound card, measuring 14 inches (356 mm) in length, due to the number of features included.

<span class="mw-page-title-main">Yamaha YM2151</span>

The Yamaha YM2151, also known as OPM is an eight-channel, four-operator sound chip. It was Yamaha's first single-chip FM synthesis implementation, being created originally for some of the Yamaha DX series of keyboards. Yamaha also used it in some of their budget-priced electric pianos, such as the YPR-7, -8, and -9.

<span class="mw-page-title-main">Media Vision Pro AudioSpectrum</span>

The Media Vision Pro AudioSpectrum family of personal computer sound cards included the original 8-bit Pro AudioSpectrum (1991), the 8-bit Pro AudioSpectrum Plus, 16-bit Pro AudioSpectrum 16, Pro AudioSpectrum 16 Basic and 16-bit Pro Audio Studio. All PAS cards with the exception of Pro AudioSpectrum 16 Basic could connect to CD-ROM drives—variants having SCSI or various proprietary interfaces—and many were sold in multimedia kits with compatible CD-ROM drives.

Moonsound is the name of a sound card released for the MSX home-computer system at the Tilburg Computer Fair in 1995. It was designed by electronic engineer Henrik Gilvad and produced by Sunrise Swiss on a semi-hobby basis.

<span class="mw-page-title-main">Yamaha Y8950</span>

The Yamaha Y8950 is a sound chip, produced in 1984. It is also known as MSX-Audio as it was designed for inclusion in an expansion cartridge for the MSX personal computer.

The Yamaha YMF278, also known as the OPL4, is a sound chip that incorporates both FM synthesis and sample-based synthesis by Yamaha.

<span class="mw-page-title-main">Yamaha YM2414</span>

The YM2414, a.k.a. OPZ, is an eight-channel sound chip developed by Yamaha. It was used in many mid-market phase/frequency modulation-based synthesizers, including Yamaha's TX81Z, DX11, YS200 family, the Korg Z3 guitar synthesizer, and many other devices. A successor was released as the upgraded OPZII/YM2424, used only in the Yamaha V50.

<span class="mw-page-title-main">Yamaha DX21</span> 1985 digital FM synthesizer

The Yamaha DX21 is a digital controlled bi-timbral programmable digital FM synthesizer with a four operator synth voice generator which was released in 1985. It uses sine wave-based frequency modulation (FM) synthesis. It has two FM tone generators and a 32-voice random-access memory (RAM), 32 user voices and 128 read-only memory (ROM) factory preset sounds. As a programmable synth, it enables users to create their own unique synthesized tones and sound effects by using the algorithms and oscillators. The instrument weighs 8 kg (17.6 lbs). On its release, it sold for $795.

References

  1. "Adlib / OPL2 / YM3812 – iki.fi/o". 11 January 2009.
  2. "OPLx decapsulated". Google Docs.
  3. 1 2 3 "Data". dev.kewl.org. Retrieved 2021-10-07.
  4. 1 2 3 Leinecker, Richard C (1994). Making noise : creating sounds on your PC. New York: M & T Books. ISBN   1558513868.
  5. Sanglard, Fabien (2019). "3.6.2. Music". Game Engine Black Book: Wolfenstein 3D. Software Wizards. p. 95.
  6. 1 2 3 4 Keyes, Jessica (1997). The Ultimate multimedia handbook. New York: McGraw Hill. ISBN   978-0-07-034530-0.
  7. "Nuked OPL3 emulator". VOGONS. Retrieved 2024-02-09.
  8. 1 2 "YMF262 datasheet" (PDF). www.fit.vutbr.cz. Archived from the original (PDF) on 2003-05-20. Retrieved 2021-10-07.
  9. 1 2 3 "Manual" (PDF). ftp.alsa-project.org. Retrieved 2021-10-07.
  10. "82C925(100QFP) PDF Datasheet - OPTi Technologies, Inc". www.datasheets360.com.
  11. "Archived copy" (PDF). gd.tuwien.ac.at. Archived from the original (PDF) on 6 February 2018. Retrieved 15 January 2022.{{cite web}}: CS1 maint: archived copy as title (link)
  12. 1 2 "Info" (PDF). doc.chipfind.ru. Retrieved 2021-10-07.
  13. "esfm". www.github.com.com. Retrieved 2020-07-07.
  14. 1 2 "Ad-Lib Sound Card for the Parallel Port" via www.youtube.com.
  15. "PC audio for luddites". flaterco.com.
  16. 1 2 "Meet the little-known "Soundblaster" Keyboards". The 8-Bit Guy, Youtube. Retrieved 19 August 2015.
  17. 1 2 3 4 "Edward D-tech, Yamaha Chips, YM series". Edward D-tech. Archived from the original on 16 May 2016. Retrieved 25 January 2016.
  18. "The Yamaha PSS-140 - a vintage keyboard that sounds like a Sound Blaster card". Preece Music, Youtube. Retrieved 16 January 2024.
  19. "opl3_fpga". September 28, 2021 via GitHub.