ヤマハOPL

OPL (FM Operator Type-L)シリーズはヤマハが開発したサウンドチップファミリーです。コンピューティング、音楽、ビデオゲームなどのアプリケーションで使用できる FM音源機能を備えた低価格のサウンドチップで構成されています。

OPL シリーズのチップにより、1980 年代後半にAdLibSound BlasterなどのIBM PC 互換機用の手頃な価格のサウンド カードの作成が可能になり、 1990 年代前半から中頃に 「ウェーブテーブル合成」カードに取って代わられるまで、事実上のデファクト スタンダードとなりました。

内部操作

チップの内部動作は完全にデジタルです。各FMトーンは、直接デジタル合成方式のデジタル発振器によって生成されます。低周波発振器エンベロープジェネレーターがFM演算子を駆動し、DAC用の浮動小数点出力を生成します。チップのカプセル化を解除すると、指数計算用と対数正弦計算用の2つのルックアップテーブルが確認できます。[ 1 ]これにより、FM演算子は、式と2つの256エントリのルックアップテーブルを使用して、乗算器を使用せずに出力を計算できます。どちらのテーブルも、最も近い整数に丸められた値のペアとして保存され、2番目の値は最初の値との差として表されます。

対数変換された正弦波形の4分の1は、256ワードの読み取り専用メモリ(ROM)テーブルに、0から255の値に対して計算された近似値としてサンプリングされて保存されます。正弦波形の残りの部分は、その対称性を利用して外挿されます。発振器の出力を所望の音量にスケーリングするには、通常、乗算が必要ですが、YM3526は対数変換された信号を処理するため、乗算を回避し、計算コストの低い加算処理へと簡素化します。[ 2 ]

もう1つの256ワードのROMには、指数関数がルックアップテーブルとして保存されており、必要に応じて対数スケール信号を線形スケールに戻すために使用されます。これは、発振器出力が合計される最終段階(DAC出力バスの直前)で使用され、変調器の波形は常にキャリア波形の前に1サンプルだけ遅延されます。[ 3 ]このテーブルは、0〜255の値に対して によって計算されます。指数を計算するには、入力の最下位バイトで指定されたインデックスの値に1024を追加します。これが仮数になり、入力の残りのビットが浮動小数点出力の指数になります。

シリーズのチップ

OPL

ヤマハ YM3526

YM3526 (別名OPL、またはOPL1 )、1984年に発表されたOPLファミリーの最初のチップで、9チャンネル、2オペレータのシンセサイザーを提供しました。非常に近いチップとして、MSX拡張として使用されたY8950(別名MSX-AUDIO )があります。これは基本的に、 ADPCM録音・再生機能を備えたYM3526です。

この回路は244個の書き込み専用レジスタを備えています。9チャンネル(または5種類のパーカッション楽器を使用できる場合は6チャンネル)のサウンドを生成でき、各チャンネルは2つのオシレーターで構成されています。各オシレーターは正弦波を生成でき、独自のADSRエンベロープジェネレーターを備えています。主な合成方法は周波数変調合成で、 1つのチャンネルのオシレーターの位相を別のチャンネルの出力で位相変調することで実現されます。

YM3526の出力は、約49716Hzのサンプリング周波数でクロックされた浮動小数点数のシーケンスであり、別のデジタル-アナログコンバータ(DAC)チップであるYM3014Bに送られます。このDACチップは、 YM2151YM2203などの他のFMチップにも使用されていました。

チャネルのレジスタの概要:

チャンネル全体について:

  • メイン周波数(10ビット)
  • オクターブ(3ビット)
  • ノートのオン/オフ
  • 合成モード(FMまたは加算のみ)
  • フィードバック(0~7、モジュレーターが自身を変調する)

2 つの発振器のそれぞれについて:

  • 周波数逓倍数( 12、1~10、12、または15に設定可能)
  • 波形(正弦波)
  • 音量(0~63、対数)
  • アタック、ディケイ、サステイン、リリース(各 4 ビット、対数)
  • トレモロ(オンまたはオフ)
  • ビブラート(オンまたはオフ)
  • サステイン(オンまたはオフ)
  • キーごとのエンベロープスケーリング(オンまたはオフ)
  • キーごとの音量スケーリング(0~3)

チップ全体に設定できるパラメータもいくつかあります。

  • ビブラートの深さ
  • トレモロの深さ
  • パーカッション モード (3 つのチャンネルを使用して 5 つのパーカッション サウンドを提供します)
  • 複合正弦波モード(発振器同期を参照)

OPL2

YM3812用に作曲され、演奏された音楽のオーディオサンプル
OPL2波形[ 4 ] : 46

YM3812 (別名OPL2 )、1985年にリリースされたOPLファミリーの2番目の製品です。YM3526の改良版であり、YM3526およびその派生型であるY8950(MSX-AUDIO)と下位互換性がありました。関連チップとしては、YM3812の縮小版である YM2413 (OPLL)があります。

新たに追加された機能の一つは、レジスタを設定することで、各発振器ごとに4つの波形を選択できることです。オリジナルの正弦波に加えて、半正弦波(正弦波の負の部分をミュート)、絶対正弦波(負の部分を反転)、疑似ノコギリ波(正弦波の1/4を上向きに伸ばし、その間に無音部分を挟む)の3つの波形を生成できます。この独特な波形生成方法により、YM3812は独特のサウンドを生み出しています。[ 5 ]

YM3812は2オペレータのFM音源しか使用できないため、他のFM音源チップとは異なり、実際の楽器や打楽器の音色を正確に再現することができません。メロディーのポリフォニーは、メロディックモードで9ボイス、パーカッシブモードで6ボイスに制限されています。[ 6 ]:27.14–17.16 YM3812は、YM3526と同様に、外部のYM3014BモノフォニックDACチップと組み合わせて使用​​することで、アナログ形式でオーディオを出力します。

1980年代後半にAdlibSound Blasterが導入された当時、市場に競合がほとんどなかったため、このチップは「Sound Blaster互換」サウンドカードの事実上の標準となった。[ 6 ]:27.14

OPL3

OPL3波形[ 4 ] : 46–47

YMF262 (別名OPL3 )、1990年に発売されたOPLファミリーの3番目のモデルです。[ 7 ] [ a ]これはYM3812のアップグレード版で、前モデルの機能セットを改良するとともに、4オペレーターFMシンセシスに対応しました。これにより、YMF262は、ヤマハDX100などの当時の民生用シンセサイザーキーボードに匹敵する、より倍音豊かなサウンドを生み出します。[ 6 ] : 27.16

以下の機能が追加された: [ 8 ]

  • チャンネル数が2倍(9ではなく18)
  • シンプルなステレオ(左端、中央、右端)
  • 4チャンネルサウンド出力
  • 4 つの新しい波形 (交互正弦波、キャメル正弦波、方形波、対数ノコギリ波)
  • 4オペレーターモードでは、2つのチャンネルをペアにして最大6つの4オペレーターFMボイスを作成できます。
  • ホストレジスタアクセスのレイテンシが短縮されました(OPL2ではI/Oアクセスの遅延がはるかに長かったです)
  • YM3812の正弦波ルックアップテーブルとエンベロープジェネレータの微妙な違い(例えば、YM3812の変調波形は1サンプル遅延されるが、OPL3の搬送波と変調波形は適切に同期されている)[ 3 ]

YMF262のFM合成モードは、以下の方法で設定できます: [ 6 ] : 27.16–27.18 [ 8 ]

  • 基本モードでは、2 オペレータの FM チャンネルが 18 個提供されます。
  • OPL ラインの他の製品と共通の 1 つの設定では、3 つの FM チャンネルを 5 チャンネルのパーカッション セットに変換します。
  • このチップで導入されたもう一つの設定では、12チャンネルを6つの4オペレーターチャンネルに分割することができます。これにより、2オペレーターのチャンネル2つを4オペレーターのチャンネル1つに統合することができ、ポリフォニーを犠牲にしてより複雑なサウンド構成が可能になります。このモードでは、4オペレーターチャンネルそれぞれに約4種類のアルゴリズムを使用できます。
  • 上記の 2 つの設定は個別に使用することも、組み合わせて使用​​することもできます。合計 4 つのモードになります。
    • 18 2オペレータチャンネル
    • 15 2 オペレーター チャンネル + 5 ドラム チャンネル (ドラム設定オン)
    • 6 つの 2 オペレータ チャンネル + 6 つの 4 オペレータ チャンネル (4 オペレータ設定オン)
    • 3 つの 2 オペレーター チャンネル + 6 つの 4 オペレーター チャンネル + 5 つのドラム チャンネル (両方の設定をオン)

YMF262では、YM3526およびYM3812に搭載されていた、あまり使われていなかったCSM(複合正弦波モード)モードのサポートも削除されました。 [ 3 ]このモードは、複数チャンネルを同時にトリガーするのと同等の機能でした。OPL3は、前モデルと同様にデジタル形式でオーディオを出力するため、専用に設計されたYAC512などの外付けDACチップが必要でした。

YMF262は、改訂版Sound Blaster ProSound Blaster 16AdLib GoldMedia VisionPro AudioSpectrumカードMicrosoftWindows Sound Systemカードに使用されました。[ 4 ] : 45 競合するサウンドチップベンダー(ESS、[ 9 ] OPTi、[ 10 ] Crystal [ 11 ]など)も、オリジナルのOPL3にさまざまな忠実度で、独自のOPL3互換オーディオチップを設計しました。

ヤマハ YMF289

ヤマハのFMサウンドチップYMF262とYMF289の出力比較です。0:00がYMF262、0:31以降がYMF289です。

YMF289 (OPL3-L)、1995年にリリースされたYMF262の完全互換の低消費電力版で、PCMCIAサウンドカードとラップトップコンピュータを対象としています。[ 12 ]また、クリエイティブテクノロジー製の一部のSound Blaster 16サウンドカードにも使用されました。

YMF289はYMF262と完全なレジスタ互換性があり、機能セットも保持しているが、いくつかの違いがある。[ 12 ]

  • 5 ボルトまたは 3.3 ボルトの動作をサポートします。
  • レジスタはホスト CPU によって読み取りまたは書き込みが可能ですが、YMF262 では書き込み専用です。
  • 44,100 Hz (44.1 kHz) の出力サンプル レート。
  • パワーダウンモードが追加されました。
  • 完全な YMF262 実装と比較すると、DAC を含む全体的なフットプリントがやや小さくなります。
  • YMF262 で使用される 14.32 MHz 入力クロックと比較した、33.868 MHz 入力クロック。
  • 内部線形補間器。

YMF289B は、YMF262 と同様に、YAC513 または YAC516 コンパニオン浮動小数点 DAC チップとペアになっています。

ESS ESFM

レガシー / OPL3 互換モードでの ESFM の出力では、一部のサウンドが合成される方法に明らかな違いが見られます。

ESSテクノロジー社が自社開発した派生製品であるESFMは、72オペレータのOPL3互換クローンで、ネイティブモードとレガシーモードの2つの動作モードが組み込まれており、機能セットと動作を制御します。[ 9 ]ネイティブモードでは、ESFMにより18の4オペレータFMボイスをマッピングでき、各ボイスはオペレータごとの周波数制御とLFO深度を持ちます。[ 13 ]生成されるトーンの複雑さを大幅に増やす可能性があります。Windows 9x用ドライバには、この拡張モードを利用する独自のカスタムインストゥルメントパッチが組み込まれています。逆に、レガシーモードはヤマハのYMF262との完全な下位互換性を提供します。[ 9 ]このモードでのESFMの出力は全体的にYMF262に適度に忠実ですが、一部のトーンは全く異なる方法でレンダリングされ、一部のゲームのサウンドと音楽に独特の歪みをもたらします。

ESFMは、ISAベースのES1688 AudioDriveからPCIベースのES1946 Solo-1Eに至るまで、ESSサウンドチップで利用可能です。それ以前のチップでは、外部FMシンセサイザーチップ(通常はヤマハYMF262)が必要でした。ESSのPCIベースサウンドチップであるMaestroシリーズは、FMシンセシスのソフトウェア実装に依存しており、ESFMの特殊機能は備えていません。

OPL3-SA、DS-XG、OPL4

ヤマハの後継PCオーディオコントローラ(YMF278OPL4)、シングルチップのYMF718/719S、PCI YMF724/74xファミリーなど)には、旧来のソフトウェアとの下位互換性を確保するために、YMF262のFM合成ブロックが搭載されていました。詳細については、 YMF7xxを参照してください。

OPLシリーズを使用した製品

YM3526は、コモドール64の拡張モジュール「サウンドエクスパンダー」や、テラクレスタバブルボブルといったアーケードゲームで広く使用されました。ADPCMオーディオに対応したYM3526の改造版であるY8950(MSX-AUDIO)は、 MSXコンピュータのオプション拡張モジュールとして 使用されました。

YM3812は、AdLibSound BlasterPro AudioSpectrum(8ビット)などのIBM PCベースのサウンドカード[ 14 ]や、ニチブツトーアプランなどのアーケードゲームで広く使用されました。

YM2413は、セガ・マークIIIおよび日本版セガ・マスターシステムのFMサウンドユニット拡張、そしてMSX-MUSIC規格に使用されました。MSX-MUSIC規格は、パナソニックFM-PACなどの独立した拡張カードとして、また一部のMSX2+およびMSX TurboRコンピュータに内蔵されてリリースされました。また、AtariSNKアルファ電子などのアーケードゲームにも使用されました。

YMF262は多くのIBM PCベースのサウンドカードに使用されました。最初は1991年に人気のあったSound Blaster Pro 2で、その後1992年にSound Blaster 16 ASPやPro AudioSpectrum(16ビット)で使用されました。[ 14 ] Sound Blaster 16とSound Blaster AWEシリーズの後期モデルではOPL3が他のチップと統合され、Creative Labsは1995年後半から後期モデルで他のチップと統合されたOPL3クローンチップであるCQMを使用しました。[ 15 ]また、 Tecmoなどのいくつかのアーケードゲームでも使用されています。

YMF278 は、MSX 用のMoonsoundカードや、IBM PC 互換機用の Yamaha の Sound Edge カードに使用されました。

シンセサイザー

YM3812を使用したシンセサイザー: [ 16 ]

  • ヤマハ PSR-11 49鍵 16音 (1986)
  • ヤマハ PSR-12 49鍵 32音 (1987)
  • ヤマハ PSR-21 49鍵 16音色 2段スライダー (1986)
  • ヤマハ PSR-22 49鍵 32音色 2段スライダー (1987)
  • ヤマハPSR-31 61鍵16音、ドラム用YM3301チップ[ 17 ]追加(1986年)
  • ヤマハPSR-32 61鍵32音、ドラム用YM3301チップ[ 17 ]追加(1987年)
  • ヤマハ PSS-360 49 ミニ鍵盤、21 音色、5 段階スライダー、PSS-460 の低価格モノラル版 (1986)
  • ヤマハ PSS-460 49 ミニ鍵盤、21 音色、5 段階スライダー (1986)
  • ヤマハ PSS-470 49 ミニ鍵盤、21 音色、5 段階スライダー (1987)
  • ヤマハPSS-560 49ミニ鍵盤 21音色、5段階スライダー、ドラム用YM3301チップ[ 17 ]追加(1986年)
  • ヤマハPSS-570 49ミニ鍵盤 21音色、5段階スライダー、ドラム用YM3301チップ[ 17 ]追加(1987年)

YM2413(コスト削減版YM3812)を使用するシンセサイザー:[ 16 ]

  • ヤマハ PSR-6 49鍵 100音 (1994)
  • ヤマハ PSS-140 37ミニキー 100音(1988年); PSS-140は実際にはYM2420を使用しており、これはYM2413のわずかに改良された変種で、レジスターが異なる[ 18 ]
  • ヤマハ PSS-170 44ミニ鍵盤 100音色 (1986)
  • ヤマハ PSS-270 49ミニ鍵盤 100音 (1986)

派生品と派生品

OPL3のオープンソースRTL実装はSystemVerilogで書かれ、2015FPGA適合されました。 [ 19 ]

注記

  1. ^多くの情報源では、YMF262 (OPL3) は 1988 年にリリースされたと主張していますが、これはチップのリファレンス マニュアルに印刷されている著作権の年と関係があるため、誤りです。

参照

参考文献

  1. ^ "Adlib / OPL2 / YM3812 – iki.fi/o" . 2009年1月11日.
  2. ^ 「OPLxのカプセル化解除」。Googleドキュメント
  3. ^ a b c「データ」 . dev.kewl.org. 2021年6月2日時点のオリジナルよりアーカイブ2021年10月7日閲覧。
  4. ^ a b cライネッカー、リチャード・C (1994). 『ノイズを創る:PCで音を作る』 ニューヨーク:M&Tブックス. ISBN 1558513868
  5. ^ Sanglard, Fabien (2019). 「3.6.2. 音楽」 .ゲームエンジンブラックブック: Wolfenstein 3D . ソフトウェアウィザーズ. p. 95.
  6. ^ a b c dキーズ、ジェシカ (1997). 『究極のマルチメディアハンドブック』 ニューヨーク: マグロウヒル. ISBN 978-0-07-034530-0
  7. ^ 「Nuked OPL3エミュレータ」VOGONS . 2024年2月9日閲覧
  8. ^ a b「YMF262 データシート」(PDF)www.fit.vutbr.cz . 2003年5月20日時点のオリジナル(PDF)からアーカイブ。 2021年10月7日閲覧
  9. ^ a b c「マニュアル」(PDF) . ftp.alsa-project.org. 2020年5月21日時点のオリジナル(PDF)からアーカイブ。 2021年10月7日閲覧
  10. ^ 「82C925(100QFP) PDFデータシート - OPTi Technologies, Incwww.datasheets360.com .
  11. ^ 「アーカイブコピー」(PDF)gd.tuwien.ac.at . 2018年2月6日時点のオリジナル(PDF)からアーカイブ2022年1月15日閲覧。{{cite web}}: CS1 maint: アーカイブされたコピーをタイトルとして (リンク)
  12. ^ a b「情報」(PDF) . doc.chipfind.ru . 2021年10月7日閲覧
  13. ^ "esfm" . www.github.com.com . 2020年7月7日閲覧。
  14. ^ a b「パラレルポート用Ad-Libサウンドカード」 2017年12月13日 – www.youtube.com経由。
  15. ^ 「ラッダイトのためのPCオーディオflaterco.com
  16. ^ a b「あまり知られていない『Soundblaster』キーボードを紹介」 The 8-Bit Guy、YouTube。2015年8月。 2015年8月19日閲覧
  17. ^ a b c d「Edward D-tech、ヤマハチップ、YMシリーズ」。Edward D-tech。2016年5月16日時点のオリジナルよりアーカイブ。 2016年1月25日閲覧
  18. ^ 「ヤマハPSS-140 - サウンドブラスターカードのようなサウンドを実現するビンテージキーボード」 Preece Music、Youtube。2024年1月3日。 2024年1月16日閲覧
  19. ^ "opl3_fpga" . 2021年9月28日 – GitHub経由。