YM2151
From Wikipedia, the free encyclopedia
性能
YM2151は、同時に8音を発音できる性能を持つFM音源LSIである[4]。サイン波を出力する発振機(オペレータ)がそれぞれの音に対して4個ずつ割り当てられる、4オペレータFM音源方式を採用している[4][注 1]。YM2151ではそれぞれのオペレータの出力を加算合成したり、オペレータの出力を変調波として用いて、別のオペレータにFM変調を掛けることによって、音色を作成する[4]。
4つのオペレータ同士をどう繋ぐかを示すアルゴリズムは、変調を重ねることによって豊富な倍音が得られる直列配置や、それぞれのオペレータの出力を加算合成する並列配置など、8種類の組み合わせから選択できる[6]。加えて、それぞれの音の第1オペレータについては、加えて自分自身の出力を用いてFM変調を掛けられるフィードバック機能が使用でき、倍音が多く含まれる波形やノイズの生成に利用できる[6]。なお、YM2151に搭載されたアルゴリズムは、日本楽器の4オペレータFM音源方式のシンセサイザー「DX9」に搭載されたものと同一である[6][注 2]。また、YM2151では、8音目の第4オペレータに限り、オペレータの出力をサイン波からノイズへと切り替えることができる[5]。
YM2151はステレオ出力が可能であり、それぞれの音ごとに左右への音の出力の有無を設定できる[4]。音声はデジタル出力であり、ステレオ出力に対応したD/Aコンバータ「YM3012」と組み合わせて使用する[4]。また、YM2151は速度の異なる2系統のタイマーを内蔵しており、これを用いてCPUに対して割り込みを要求できる[4]。
YM2151は、クロック周波数が3MHzから4MHzの範囲で動作するが、推奨値は3.58MHzとなっている[11]。パッケージは24ピンDIPである[11]。
音程と発音の制御
YM2151における音程の設定は、それぞれの音ごとに12音階(最低音C♯から最高音Cの範囲)と8段階のオクターブ情報(0から7の範囲)を組み合わせて指定する方式となっている[4]。また、音階指定に加えて、最大100セントの範囲(64段階、約1.6セントステップ)で周波数を上昇でき、音程を微調整できる[4]。
なお、YM2151に内蔵された音程データは、クロック周波数が3.58MHzで動作するときを基準に設計されており、それ以外のクロック周波数でYM2151が動作する場合には、その周波数の差に応じて音律全体が上下する[4][5][注 3]。そのため、音律の基準周波数を3.58MHz動作時と同じ周波数に合わせる場合には、周波数の微調整機能を用いて、3.58MHz動作時の音律との差が100セントの倍数に近づくように補正する必要がある[4][5]。加えて、音階についてもクロック周波数の差を考慮して、指定をずらす必要がある[4][5]。
発音の状態はオペレータ単位で制御でき、音番号と4つのオペレータに対応するビットを組み合わせてレジスタに書き込むことによって、入力と停止を切り替える[4]。
オペレータの制御
周波数
YM2151では、オペレータが発振する周波数は各音ごとに設定する音程、各オペレータごとに設定するマルチプル、および2種類のデチューンの設定値を組み合わせることによって決定される[4]。
マルチプルは、基準となる周波数から何倍の周波数を発振するかを設定するもので、YM2151では基準の0.5倍、1倍から15倍の範囲から選択できる[4]。
YM2151では、オペレータが発振する周波数にデチューンを掛けることができ、基準の周波数からわずかに変化させる「DT1」と、大幅に変化させる「DT2」の2種類の機能が用意されている[4]。DT1を用いて、各オペレータの周波数を調和関係からわずかにずらして合成するとうなりが生じ、コーラスやフランジャーのような効果を得ることができる[6]。また、DT2を用いるとオペレータの出力を1.41倍(600セント)、1.57倍(781セント)、1.73倍(950セント)と基準の非整数倍で、かつ基準から大きく離れた周波数に設定できる[4]。この出力を変調波として用いることによって、基音に調和しない非整数次倍音を生成でき、その成分を音色に加えることで鐘や銅鑼のような効果音的な音色を作成できる[6]。
エンベロープと出力
YM2151では、音色や音量に対して時間の経過による変化を加えるエンベロープは、各オペレータごとに5種類の要素を用いて設定する[4]。エンベロープの指定は、音が立ち上がる速度を示すアタックレート、アタック後の音が減衰する速度を示すファーストディケイレート、ファーストディケイからセカンドディケイに移行する変化点を示すファーストディケイレベル、ファーストディケイ後から入力が離されるまでの間の音が減衰する速度を示すセカンドディケイレート、入力が離された後の音が減衰する速度を示すリリースレートで構成される[4]。また、YM2151には、音高に応じてエンベロープの速度に影響を与えるキースケール機能があり、各オペレータごとに適用度を4段階で設定できる[4]。
オペレータの出力(トータルレベル)は、0.75dBステップ・128段階で減衰量を指定する[5]。
LFO
YM2151には、オペレータの音量や音程に作用するLFOが内蔵されており[4]、出力される波形を用いて振幅変調によるトレモロ効果や、周波数変調によるビブラート効果を掛けることができる[6]。YM2151では、LFOの波形をサイン波、ノコギリ波、矩形波、ノイズ(サンプル&ホールド)から選択でき、発振周波数を0.0008Hzから約53Hzの範囲で設定できる[4][6]。
ただし、YM2151にはLFOが1系統しか搭載されていないため、LFOの波形と周波数は全ての音で共通となる[4][6]。また、振幅変調と周波数変調についても、波形および周波数を個別に指定することはできない[6]。その一方で、LFOの適用度については、各音に対して振幅変調は4段階、周波数変調は8段階で調整でき、振幅変調については各オペレータごとに適用の有無を指定できる[4]。なお、LFO自体の出力は、振幅変調と周波数変調に対してそれぞれ128段階で調整できる[5]。また、LFOの位相は、テストレジスタを操作することで初期化できる[5]。
開発経緯
YM2151は、日本楽器製「MSX」コンピュータ用の周辺機器「FMサウンドシンセサイザーユニット SFG-01」[注 4]に搭載されたFM音源LSIであり[2]、同社製のMSXコンピュータによる使用を目的に開発された音源LSIである[1]。
日本楽器製造はアスキーが提唱したMSX規格に参入するにあたって、同社の電子オルガン「FSシリーズ」やシンセサイザー「DXシリーズ」に導入されたFM音源方式の音源を、同社製のMSXコンピュータに実装することを構想していた[13]。その実装を行うために小型化や低価格化が要求され、日本楽器では実現のための検討を進めていた[13]。その結果、カートリッジによって機能を追加するサイドスロット機構の採用や、そのスペースを確保するためにコンピュータ本体の回路の集積化を行うことを決定した[13]。そして、日本楽器製造はその構想の実現のため、MSXコンピュータ用の7種類のカスタムLSIの開発に着手した[1][13]。
FM音源を含む7種類のカスタムLSI[注 5]の開発は1983年夏から約3ヶ月間の期間を掛けて行われ[1][13]、1983年11月にMSXコンピュータとその関連製品の発売に至った[13]。

