KORG DW-8000の波形を調べる

 1985年発売のKORG DW-8000の波形を調べたので記録を残しておきます。
 

DW-8000の音源システム

 DWGS(Digital Waveform Generator System)という、いわゆる波形メモリ音源の一種が採用されています。この音源が搭載されているのはDW-8000とラック版のEX-8000、下位モデルのDW-6000だけで、あまり多くの情報は検索しても見当たりません(そして情報の信頼性が低く、Wikipediaも一部間違ってます)。

波形メモリ音源

 波形メモリ音源と言えば、基本的にはゲーム業界で使われていた技術のように思えますが、楽器メーカーもKORGのDWGSだけではなくKAWAIもDC(Digital Cyclic)波形を採用したシンセサイザーを投入していました。
 一般的な波形メモリ音源は波形の1周期をメモリに保存し、その読み出しスピードを変更することで任意の周波数の音を鳴らす仕組みです。
 例えば、任天堂GameBoyは32sample/cycleで4bit/sampleの波形メモリ音源を搭載していたようです。この音源でA=440Hzの音を鳴らそうと思ったら、1/440秒で32sampleを読み出せばいいわけです。つまり、1/440/32秒=約71マイクロ秒毎に1sample読み出してDACに送り付けるようなイメージです。
 現実にはDACを駆動するサンプリング周波数と同じ周波数でsampleを送り込む必要があるので、1/サンプリング周波数 秒毎に波形メモリからsampleを読み出すことになります。仮にサンプリング周波数が44.1kHzなら約22.7マイクロ秒毎にサンプルが必要ですが、その時々の位相に応じたsampleを格納したアドレスを指定して波形メモリを読み出すことになります*1

DWGS

 KORGのDWGSが特徴的なのは、一つの波形に対して、波形メモリが一つではないことです。何を言っているかというと、同じ波形でも音域ごとに異なる波形メモリを持っています。つまり、現代のPCM音源のマルチサンプルと同様の考え方で、音域によって異なる音色を実現できるような仕組みになっています。
 DWGSは16種類の波形が用意されていますが、各種類につき8音域の波形メモリを持っています。DW-8000はこの波形を格納するため32KBのROMを4つ*2メイン基板(KLM-661)に搭載しており、合計128KBに16種類の波形が格納されていることになります。つまり波形1種類辺り8KBで、この中に8音域の波形が収められています。低い音域から順に、2048, 2048, 1024, 1024, 512, 512, 512, 512byteの波形メモリが格納され、計8KBとなります。これが16種類で128KBのROMに収められています*3。各sampleは8bitですので、DWGSの波形メモリは2048sample/cycle~512sample/cycleとなります。先に例示した任天堂GameBoyと比較すれば、DWGSの方が最大64倍、最低でも16倍は単位時間当たりのサンプル数が多く、量子化ビット数も2倍ありますので、高音質な音が生成できるということになります(現代のPCMと比較すると全くリアルではありませんが)。
 

DWGSの波形

 先述の通り16種類存在しますが、各波形の全音域の波形をプロットしてアニメーション化すると以下のようになります。

# Waveform Recommended use*4
1 DWGS Waveforms#1 ブラス、ストリングス、アナログシンセなど
2 DWGS Waveforms#2 クラリネット、アナログシンセサウンドなど(矩形波と同じ倍音成分です)
3 DWGS Waveforms#3 アコースティックピアノなど
4 DWGS Waveforms#4 エレクトリックピアノなど
5 DWGS Waveforms#5 エレクトリックピアノ(ハード)など
6 DWGS Waveforms#6 クラビなど
7 DWGS Waveforms#7 オルガンなど
8 DWGS Waveforms#8 ブラスなど
9 DWGS Waveforms#9 サックスなど
10 DWGS Waveforms#10 バイオリンなど
11 DWGS Waveforms#11 アコースティックギターなど
12 DWGS Waveforms#12 ディストーションギターなど
13 DWGS Waveforms#13 エレクトリックベースなど
14 DWGS Waveforms#14 デジタルベースなど
15 DWGS Waveforms#15 ベルなど
16 DWGS Waveforms#16 オルガン、口笛など

 一見していずれの波形もサイン波の加算で作ったような特徴のある形をしていることが解ります。それもそのはずで、取説に倍音加算で作ったと明示してあります。

これらの波形は実際の楽器音の波形を「倍音加算方式」によってシミュレートしたものですので、よりリアルな音づくりが可能です。(16種類の波形の中にはSaw,Square,Sineなど、従来のアナログシンセサイザーの持つ波形も含まれています。 )
(DW-8000取扱説明書2ページより引用)

 同じことが当時の広告にも書いてあります。


 そもそも、加算合成の結果を波形メモリに持たせることにどんな意味があるのでしょうか?加算合成ならではの音を出したいが、計算量を減らしたいという目的なら解りますが、せっかく波形を記録できるのですから、もっと多様な波形を格納すればよかったのにと思います。2番目の加算合成で作った矩形波なんて無駄なことをせずに、単に0と1(正確には8bitなので127)のかっちりしたパルス波形を格納すればより多くの倍音が含まれてより良くなるのでは?等々、思うところは色々あります。
 また、音域が上がる程、倍音が減ってサイン波に近づくという特徴も見て取れます。これなら最低音の波形メモリ1つだけでKeyboard Follow(Keyboard Tracking)で高音域になるほどLPFを閉めるように設定すればいいだけなのでは?音域毎に波形メモリ持つ必要ある?と思います。実際、DW-8000にはKBD TRACKパラメータがあり、鍵盤の位置に応じてカットオフ周波数を変化させることができます。が、フィルタを開ける方向にしか作用しないようなので、大本の波形メモリで削っておいたのか?という不思議な仕様になっています。
 

DW-8000 Version "E"

 日本国内ではほぼ知られていませんが、DW-8000には当時のドイツの輸入代理店による改造モデルことExpandedなVersion "E"が存在します。
Korg DW-8000 - Version E (Expanded) - Vintage Synth Explorer Forums
 Version "E"では波形メモリやRAMの拡張、外部入力の追加など結構大幅な改造が施されています。
 この追加された波形も同様にプロットしてアニメーション化してみると以下のようになります。

# Waveform
1 DW-8000 Version "E" added waveforms#1
2 DW-8000 Version "E" added waveforms#2
3 DW-8000 Version "E" added waveforms#3
4 DW-8000 Version "E" added waveforms#4
5 DW-8000 Version "E" added waveforms#5
6 DW-8000 Version "E" added waveforms#6
7 DW-8000 Version "E" added waveforms#7
8 DW-8000 Version "E" added waveforms#8
9 DW-8000 Version "E" added waveforms#9
10 DW-8000 Version "E" added waveforms#10
11 DW-8000 Version "E" added waveforms#11
12 DW-8000 Version "E" added waveforms#12
13 DW-8000 Version "E" added waveforms#13
14 DW-8000 Version "E" added waveforms#14
15 DW-8000 Version "E" added waveforms#15
16 DW-8000 Version "E" added waveforms#16

 Version "E"の追加波形はノーマルとはだいぶ雰囲気が異なります。
 #1, 2のSaw, Squareのような波形はノーマルと比較して構成している倍音の数が違うような波形ですがノーマルと同様に高音域になる程倍音が減る波形になっています。
 #3, 4, 5は音域による変化が無く、DWGSというよりも単なる波形メモリ音源です。
 #14, 15, 16は低音域と高音域で全く性質の異なる波形が格納されており、キーボードスプリットが適用されたように右手と左手で別の音色が弾けるような波形になっています。
 #14, 15の低音域は加算合成ではなく、#14が実効約3bitのLo-Fi波形、#15はパルス波形が格納されています。
 こうしてみると、Version "E"はDWGSで出来ることの可能性にチャレンジした意欲作であることが解ります(実用性はともかく)。
 

雑記

  • 今回の調査を経て、DWGS音源が波形メモリ音源に対するアドバンテージであるはずのマルチサンプル的なメリットが生かせていない*5ことが判ったので、実は単なる波形メモリ音源と大差ないと解りました。
  • 今となっては波形メモリ音源は簡単に作れるので、KORG NTS-1用のカスタムオシレータも作ってみましたが、いかにも人工的なニセモノっぽいペラい音を量産するのは簡単にできます。ただし、出音は良くも悪くも波形メモリの内容に依存するので、作りたい音のイメージが頭の中である程度具体化されていても、その波形を作るのはほぼ不可能です。気に入った面白い音が出るまで適当なデータを波形として順次鳴らしてみるみたいな音作りになるので、全く直感的ではありません。
  • DWGSを冠した名称の波形は後の多くのKORGのPCMシンセの波形(Multisample)にも含まれています。ただし、新しいモデル程種類が多く(オリジナルの16種類以上)あり、それもDWGSなの?と突っ込みを入れたい気もします。「加算合成で作った周期波形=DWGS」という程度の意味なんでしょうか?
  • 去年(2021年)の夏に発売されたKORG modwaveはDW-8000の発展形だそうですが、いい意味でまるで別物に進化してますね。

 
(追記ここから)
 この話には、もう少し続きがあります。
wave.hatenablog.com
(追記ここまで)
 



以上。

*1:位相は小数、アドレスは整数ですから、何らかの補完処理をしたりしなかったりの実装はいろいろ考えられます

*2:IC43, IC44, IC45, IC46のHN613256P

*3:現代のPCMに慣れきった感覚では桁や単位を間違えているように思うかもしれません。

*4:DW-8000取扱説明書15ページより「つぎのような音づくりに適しています」部分を引用

*5:Version "E"を除く