(57)【特許請求の範囲】
【請求項１】
楽音を電子的に生成する装置であって、
第１の入力及び第２の入力に存在するデータを加算するディジタル加算手段であって、該第１の入力が一連のディジタル・サンプルを生成するように作られた入力デバイスに接続されているディジタル加算手段と、
該加算手段の出力を受信するよう接続された周期波形用メモリ・テーブルであって、第１の入力アドレスに従って選択可能な複数の周期波形を記憶するための周期波形用メモリ・テーブルと、
該周期波形用メモリ・テーブルの出力を受信するよう接続され、第２の入力アドレスに従って選択可能な、各々が該周期波形のうちの１つと帰還成分βとの関数により表わされる複数の変形波形を出力するための帰還変更子テーブルであって、該帰還変更子テーブルの出力が該ディジタル加算手段の該第２の入力に接続され、該第２の入力アドレスが、該帰還成分βと、該周期波形用メモリ・テーブルの出力中のビットの部分集合とから形成されるコンビネーション・アドレスであるような帰還変更子テーブルと、を備えることを特徴とする装置。
【請求項２】
請求項１に記載の装置において、該帰還変更子テーブルから出力される該変形波形が、該周期波形を該帰還成分βと乗算することにより得られるものである装置。
【請求項３】
請求項２に記載の装置において、該帰還変更子テーブルで用いられる該帰還成分βが、該帰還変更子テーブルの入力アドレスの範囲に基づいて選択可能となっている装置。
【請求項４】
請求項１に記載の装置において、該周期波形用メモリ・テーブルの出力が、楽音を発生する処理手段に接続されている装置。
【請求項５】
請求項４に記載の装置において、該処理手段が、
該入力装置からの信号に応答して包絡線形状の信号を生成するエンベロープ・ゼネレータと、
該包絡線形状の信号を該周期波形用メモリ・テーブルからの出力で乗算する乗算器であって、該乗算器の積が出力装置に出力され、それにより該楽音を発生するようになっている装置。
【請求項６】
請求項１に記載の装置において、該周期波形用メモリ・テーブル、該帰還変更子テーブルおよび該ディジタル加算手段が、該帰還変更子テーブルの該出力を該ディジタル加算手段の該第１入力に同期させるためのデータ・レジスタをも含む閉じられた経路上内に接続されている装置。
【請求項７】
請求項１に記載の装置において、該加算手段、該周期波形用メモリ・テーブルおよび該帰還変更子テーブルが演算装置内に含まれ、さらに入力装置からの複数の入力に接続され、それにより一連の楽音を同時に発生する複数の演算装置を含む装置。
【請求項８】
請求項１に記載の装置において、該入力デバイスが、
所定の周波数を記憶する周波数ナンバー・メモリであって、周波数を選択するための入力ロジックから生成される信号を受信するよう作られた周波数ナンバー・メモリと、
該周波数ナンバー・メモリに接続され、所定のクロック・パルスに従って該周波数ナンバー・メモリから選択された該周波数を繰り返し加算するための累算器手段であって、その出力が該ディジタル加算手段の該第一の入力に接続されている累算器手段とを含む装置。
【請求項９】
請求項１に記載の装置において、
該コンビネーション・アドレスを形成するのに用いられる該ビットの部分集合が、該周期波形用メモリ・テーブルの出力中の最上位ビットの所定の数に対応するものである装置。
【請求項１０】
請求項１に記載の装置において、該帰還変更子テーブルへの入力前に、最下位から連続する所定の数の最下位ビットが該周期波形用メモリ・テーブルの該出力から切り捨て処理され、それにより該帰還変更子テーブルへの入力をフィルタにかける装置。
【請求項１１】
請求項１０に記載の装置において、
該周期波形用メモリ・テーブル、該帰還変更子テーブル、および該ディジタル加算手段が、平均化手段をも含む閉じられた経路内に接続され、該平均化手段により該経路中の少なくとも以前の値がこの経路中の現在の値と平均化され、これにより該帰還変更子テーブルの出力信号をフィルタリングするようになっている装置。
【請求項１２】
楽音を電子的に生成する方法であって、
入力装置から発生される選択周波数を表す一連のディジタル・サンプルを帰還経路から生成されるデータと共に加算するステップと、
複数の種々の周期波形を記憶する周期波形用メモリ・テーブルを参照するステップであって、該加算するステップから提供される第１の入力アドレスに基づいて周期波形用メモリ・テーブルから該周期波形のうちの１つの波形が出力されるステップと、
第２の入力アドレスに従って選択可能な、各々が該周期波形のうちの１つと帰還成分βとの関数により表わされる複数の変形波形を、該帰還変更子テーブルから出力するステップであって、該変形波形が該加算するステップのための入力として該帰還経路において出力され、該第２の入力アドレスが、該帰還成分βと、該周期波形用メモリ・テーブルの出力中のビットの部分集合とから形成されるコンビネーション・アドレスであるようなステップと、を含むことを特徴とする方法。
【請求項１３】
請求項１２に記載の方法において、
該コンビネーション・アドレスを形成するのに用いられるビットの部分集合が、該周期波形用メモリ・テーブルの出力中の最上位ビットの所定の数に対応するものである方法。
【請求項１４】
請求項１２に記載の方法において、該帰還変更子テーブルから出力される該変形波形が、該周期波形を該帰還成分βと乗算することによって得られるものである方法。
【請求項１５】
請求項１４に記載の方法において、該帰還変更子テーブルにおいて用いられる該帰還成分βが、該帰還変更子テーブルに対する入力アドレスの範囲に基づき選択可能である方法。
【請求項１６】
請求項１２に記載の方法において、該周期波形用メモリ・テーブルの出力を処理し、楽音を生成するステップをさらに含む方法。
【請求項１７】
請求項１６に記載の方法において、該処理するステップが、該入力装置からの信号に応答し包絡線形状の信号を生成するステップと、
該包絡線形状の信号を該周期波形用メモリ・テーブルからの出力で乗算し、該乗算の積を出力装置に出力し、それにより該楽音を発生するステップと、を含む方法。
【請求項１８】
請求項１２に記載の方法において、
該所定の波形の選択された部分を表す数値をデータ・レジスタに一時記憶するステップと、
所定のサンプル・クロック速度でアドレス・データを該帰還変更子に入力するステップと、をさらに含む方法。
【請求項１９】
請求項１２に記載の方法において、該加算手段と、該周期波形用メモリ・テーブルと、該帰還変更子テーブルが演算装置内にを含まれ、さらに複数の演算装置を該入力装置からの複数の入力に接続し、それにより一連の楽音を同時に生成するようにするステップを含む方法。
【請求項２０】
請求項１９に記載の方法において、入力ロジックから生成される信号に基づき周波数ナンバー・メモリから周波数を選択するステップと、
該周波数ナンバー・メモリから選択された該周波数を所定のクロック・パルスに従って繰り返し加算するステップであって、その出力が該一連のディジタル・サンプルとして加算されるステップと、をさらに含む方法。
【発明の詳細な説明】
【０００１】
【発明の分野】
本発明は、電子音楽を生成するための楽音発生装置に関し、さらに詳細には、楽音波の部分的成分を連続的に変化させる方法と装置に関する。
【０００２】
【発明の背景】
電子的に楽音を合成するため、従来技術では各種の方法が提案されてきた。周波数変調を含む一つの方法がトミサワ(Tomisawa)に交付された米国特許第4,249,447号に解説されている。ディジタル周波数変調を行う基本装置には、加算器と加算器の出力に基づいた数値を持つ正弦波メモリとが含まれる。この装置では、一連のディジタル・サンプルで表す波形「ｘ」が適正な帰還率で正弦波メモリの出力に加えられる。このメモリの出力ｓｉｎ ｙを帰還パラメータβで乗算するため、乗算器を帰還ループに挿入する。乗算の積βｓｉｎ ｙは加算機に加え、その結果、式ｘ＋βｓｉｎ ｙで表される数値になる。加算機の出力ｘ＋βｓｉｎ ｙは正弦波メモリへの入力アドレスを構成する。前記装置が発生する楽音波の部分的成分は帰還パラメータβの数値を変化させることによって制御する。
【０００３】
トミサワの特許に記載する装置は実施の仕方が比較的簡単な構成であるが、単純な乗算によって達成できる高調波スペクトルに多少の制約があることが不利な点である。その上、ある数値の帰還率では、プラス、マイナスの両数値の振幅データはメモリの各出力サンプリング点に於いて余りにも速く交番し、その結果、好ましからざるハンチング現象(hunting phenomenon)が発生する。このハンチング現象を排除するため、帰還路に付加的な平均化装置を挿入しなければならない。
【０００４】
周波数変調音楽を生成する他の装置は「RIO/Roadrunner」なる商標名でＡＴ＆Ｔ社で製作されている。この装置では、周波数変調のアルゴリズムは浮動少数点ＤＳＰコードを用いて模写される。帰還路に代えて、複合波形を書き込んだ大型のルックアップ・テーブル・メモリ(look-up table memory)が使用される。複合波形ではトミサワの特許と同様に、各種帰還パラメータに対する帰還効果を含める試みがなされている。しかし、利用し得るメモリの制約ため、高調波スペクトルの品質には限界がある。従って、従来技術による装置で達成できるものよりもさらに特別に調整された高調波スペクトルを発生する装置が必要とされている。
【０００５】
【発明の概要】
本発明は電子的に音楽を発生する装置と方法を開示する。本発明には異なる出力特性を有する各種の正弦波を含むルックアップ・テーブル(look-up table)であるシヌソイド・メモリ(Sinusoid Memory、正弦波曲線メモリ）に接続した加算器が含まれる。シヌソイド・メモリの出力部と加算器の入力部相互間の帰還路には帰還変更子装置に接続したレジスタが含まれる。帰還変更子装置にはシヌソイド・メモリからの正弦波出力への帰還成分βの代入に用いる第２のルックアップ・テーブルが含まれる。帰還変更子装置の出力は正弦波出力と帰還成分βの任意関数である。一つのこのような関数はシヌソイド・メモリからの選択波と帰還成分の選択値相互間での乗算を表すことができる。
【０００６】
【発明の詳細な記述】
本発明は電子音楽の合成に用いる楽音を発生する新しい方法と装置を開示する。図１を参照すると、本発明に従って電子的に音楽を発生する演算装置１０の一つの好適な実施例が記載されている。演算装置１０はディジタル装置で、異なる出力特性を有する各種の正弦波を含むルックアップ・テーブルであるシヌソイド・メモリ１４に接続した加算器１２が含まれる。シヌソイド・メモリ１４の出力部と加算器１２の入力部相互間に於ける帰還路には帰還変更子装置２０に接続したレジスタ１８が含まれる。帰還変更子装置２０は、本質的に（他の回路を追加することが可能な）第２のルック・アップ・テーブルであり、このテーブルは、帰還変更子装置に対するアドレス入力を生成するために、帰還成分βをシヌソイド・メモリ１４からの正弦波出力と結合するよう動作するものである。
【０００７】
図から分かるように、本発明の加算器１２には第１、第２入力部２２、２４が含まれ、第１、第２入力部に存在するデータは周知の方法に従って加算合計される。本発明の好適な実施例では、図１に記載する加算器は１０ビット加算器であるが、特定の用途に必要な正確さ及び精度、又はそのいずれか一方の度合いに従って他の容量の加算器を採用したり、別サイズのデータを加算器に入力することができることは当業者には理解されよう。好適な実施例では、適正な波形の正確さに対しては加算器１２のＢ入力のわずかに８ビットだけが必要とされる。
【０００８】
加算器１２への第１入力２２は−πとπとの間の数値を表す一連のディジタル・サンプルで表される変数「Ｘ」である。加算器への第２入力２４であるβｓｉｎ ｙは帰還変更子２０からの出力である。好適な実施例では、これら二つの数値は加算されて加算器の出力部に１０ビット値「Ｙ」が形成される。出力がモジュロ（２π）値であるため、これら二つの入力の加算で形成することのできる第１１ビットは排除されている。理解されるように、図１の各成分から伸ばした作図用単一線はバス構造上に並列に配したデータを表す。
【０００９】
加算器１２の第１入力部に於ける変数Ｘは例えばキーボード・タイプの装置から生成される信号を表す。信号Ｘを形成するもので、キー・ロジック３０と、周波数ナンバー・メモリ３２と、累算器３４とを含む引用例装置を図２を記載する。キーボードで操作したキーを表す信号はキー・ロジック３０から周波数ナンバー・メモリ３２に印加される。操作したキーの周波数、即ち位相増加に対応する定数である周波数ナンバーは周波数ナンバー・メモリ３２から読みとられる。このメモリから読みとられた周波数ナンバーは累算器に加えられ、そこでこの周波数ナンバーはクロック・パルスφに従って繰り返し加算される。累算器は、例えば、モジュロＭのカウンタから成り、累算器の出力は変数Ｘとして加算器１２に加えられる。
【００１０】
加算器１２の出力Ｙ（１０ビット）はシヌソイド・メモリ１４のアドレス・ラインに入力される。メモリへの特定なアドレス入力に従って、対応する波値ｓｉｎ ｙがルックアップ・テーブルで選択され、シヌソイド・メモリ装置１４のデータ・ラインから出力される。図に記載する実施例では、シヌソイド・メモリは１０２４×１０ビットＲＯＭとして表示されている。然し、必要とされる精度に従って異なる容量のメモリ装置を使用することができ、ＲＯＭに代えてランダム・アクセス・メモリ（ＲＡＭ）も使用できることは理解されよう。ＲＡＭをメモリ装置として使用するシステムは異なる波形で再度プログラム操作ができるという有利な点に与ることが考えられる。
【００１１】
シヌソイド・メモリ１２の出力は帰還路にも接続する、図１に記載する好適な実施例では、このメモリから出力される１０ビットの内の最上位５ビットはデータ・レジスタ１８に入力する。このデータ・レジスタは図に示すように、一連のフリップ・フロップまたは一時的にデータをステージング操作できる他の装置で構成することができる。データ・レジスタ１８にはディジタル値Ｘが加算器１２に加えられる速度と同じ速度でレジスタからのデータを入力時間の記録をして帰還変更子２０に入力させることができるサンプリング・クロック入力２６が含まれる。データ・レジスタには加算器１２への入力として表される二つの成分を同期させる目的がある。データ・レジスタはディジタル値Ｘから成るサンプルを形成する装置と同一のタイミングで時間が記録される。こうして、データ・レジスタ１８を帰還路の他の位置に配置し得ることが理解されるであろう。
【００１２】
図に記載の実施例では、帰還変更子２０は２５６×８ビットＲＯＭである。帰還変更子には二組の入力が含まれる。シヌソイド・メモリ１２からの最上位５ビットは最下位ビットの入力としてデータ・レジスタ１８から例えばアドレス・ラインＡ（０：４）に於いて帰還変更子に入力する。帰還成分βに対する数値はアドレス・ラインＡ（５：７）に於いて帰還変更子２０の最上位３ビットで入力する。最下位５ビットと最上位３ビット（β）のコンビネーション・アドレスは帰還変更子のルックアップ・テーブルに８ビット・アドレスを形成する。このアドレスは書き込まれ、帰還成分βによって変更したｓｉｎ ｙの数値に対応する８ビット・データ値を保持するメモリの位置に参照符をつける。帰還変更子のデータ・ライン上の出力は従ってｆ（β，ｓｉｎ ｙ）である。
【００１３】
理解されるように、帰還成分βは（正弦波の構成がシヌソイド・メモリ１４に出力により決定されるようになっている）帰還変更子２０に入力される最上位３ビットを選択することによって変更され得る。理解されると思われるが、帰還変更子の記憶容量と正弦波成分および帰還値に対し確保する正確なビット数は出力波の目標精度に基づいて決定される。帰還変更子のルックアップ・テーブル２０は単純な乗算によって発生されるものよりもさらに特別に調整された高調波スペクトルが形成される点で有利である。すなわち、帰還変更子２０は最終波形の高調波成分をより高い精度で制御するために選択ができる数値を発生する。その上、本実施例の回路はある実施例に於ける乗算器の回路よりも複雑度が低い。
【００１４】
さて、帰還変更子の機能がβによってｓｉｎ ｙを乗算する機能である場合、βの数値が０から１（図５−ａ乃至図５−ｃ）まで増加すると、波形は正弦波形から鋸歯波形に変化し、波形の高調波成分が対応して増加することが理解できる。各図中、上側のグラフ１００には−πとπとの間で加算器のｘ入力部に提示される一連の連続変化するサンプルが示されている。−πからπまでの範囲は２００のサンプルに分割する。下側のグラフ１１０には各サンプルに対するｓｉｎｙの対応値が示される。βの数値がほぼ１．３に等しくなると、あるいはこれ以上になると、波形ｓｉｎ ｙの高速振動がｓｉｎ ｙ＝０（図６参照）の近傍に観察されることがある。この振動は期待される鋸歯状波形からの交番するプラス、マイナスのオフセットから構成される。この振動はｓｉｎ ｙ波形のサンプル形成速度の１／２の速度で行われる。振動は回路内の何らかの欠陥が原因ではなく、むしろ回路の帰還相による。ｓｉｎ ｙ波形がマイナス傾斜を示す領域では、帰還はマイナスである。すなわち、加算器１２の出力ｙが増加すると、上記領域に於けるｓｉｎ ｙの数値は減少する。帰還変更子２０に於いてプラスβで乗算したこの減少値は加算器２０に加え、加算器出力ｙが減少する傾向が生まれ、このためｓｉｎ ｙの数値が増加する傾向が形成される。このサイクルが繰り返され、波形ｓｉｎ ｙに対し交番するプラス、マイナス効果が生じる。マイナス帰還が充分強化されると、振動が発生する。
【００１５】
（ｓｉｎ ｙ）／ｙは共にマイナスで、ｙ＝πの関係が成立する点に於いて最大振幅となるため、振動の始まりはβの大きさと波形ｓｉｎ ｙの傾斜の双方による。事実、積（β）・（傾斜（ｓｉｎ ｙ））が約マイナス０．５６以下になったときに限り振動がスタートすることを提示することができる。
【００１６】
必要に応じ、帰還路のいずれかの部位に平均化装置２１を挿入することによってこの振動現象をフィルタ処理することができる。このような一つの平均化装置はレジスタまたはこれに類する装置を用いサンプルを記憶する回路であるため、周知の処理に従ってサンプルは後続してくる連続サンプルに加算し、加算の結果が周知の処理に従って２で除算される。平均化装置２１は記憶しようとするビット数が減少したため、加算器出力部ｓｉｎ ｙと帰還変更子２０との間で最も有利な条件で回路に挿入することができる。事実、平均化装置は帰還変更子２０の一部にすることができる。しかし、加算器１２と、シヌソイド・メモリ１４と、帰還変更子２０とから成る帰還ループ内のいずれかの部位に挿入すれば、平均化装置が有効になることは理解されよう。さらに、３つ、４つまたはそれ以上の連続サンプルを類似する周知の処理によって平均化することができ、その結果、上記振動を一層効果的に抑制することができるようになる。帰還変更子２０に加える前に行う最上位５ビットに合わせたｓｉｎ ｙ波形の切頭処理は前記の振動現象をフィルタ処理する上で一層の効果をもつことにも留意されたい。フィルタ処理を採用すれば、好適な実施例では帰還されるｓｉｎ ｙ波形は切頭処理され、次いで、簡単な回路を用い有効なフィルタ処理をすることになる二つの連続サンプルの平均化が行われる。
【００１７】
フィルタ処理をする量が大きくても、マイナス帰還の効果のためにβの数値が充分大きくなると、振動が再開することに注目する必要がある。振動によって高調波成分が波形出力に加えられるとき、この振動は高調波成分にとり実際に望ましいことがある。帰還のあるレベルを越えると、振動が前記で説明したように波形に影響するため、帰還レベルが一層引き上げられると可聴効果が低下する。この場合、βの数値が増加するにつれてフィルタ処理量が拡大されるよう帰還変更子を調整することができる。
【００１８】
演算装置の出力部に供給される楽音波形をさらに処理して楽音を作り出すことができる。図３を参照すると、演算装置から供給される信号を処理するための引用例の回路が記載されている。包絡線発生器４０は例えば操作したキーに従って図２のキー・ロジック３０から出力されるキー・オン信号に応答し包絡線形状の信号を形成する。この包絡線形状の信号は乗算器４２に印加する。乗算器４２は演算装置１０から出力される楽音波形ｓｉｎ ｙを包絡線形状の信号で乗算し、振幅包絡線を楽音波形ｓｉｎ ｙに分与する。乗算器から出力された楽音信号は出力装置４４に加えられ、次いで、アナログ信号の変換とフィルタ処理のような周知の処理を介して楽音として聴き取られる。
【００１９】
理解されるように、周波数ナンバー・メモリ３２から読みとった周波数ナンバーが大きいと、加算器１２（図１に記載のもの）に入力される変数Ｘは急速に増加し、周波数ナンバーが小さければゆっくり増加する。変数Ｘの変化率によって演算装置１０で形成する楽音の周波数が決定される。演算装置で形成する楽音の高調波成分は帰還パラメータβの数値を変化させることによって連続的に制御することができる。本発明に従って入力アドレスが変調されるシヌソイド・メモリは目標とする楽音波形の発生のみならず、他の波形メモリの入力アドレスの変調のためにも使用することができることも理解されたい。後者の場合、楽音波形は他の波形メモリで発生する。
【００２０】
本発明についての上記説明では、シヌソイド・メモリ１４は正弦波を記憶するメモリとして解説してきた。メモリにそのような制限はなく、又、余弦波、あるいは初期位相を有する正弦関数を記憶するメモリは上記のメモリ同様、有効に利用できることは理解されよう。さらに、鋸歯波形、三角波形または不規則形状の波形を採用することができる。メモリに記憶する波形は全期波形に限定されないが、周知の方法に従って再生ができる全期波形の他の部分を含めることができる。
【００２１】
図４を参照すると、本発明の他の実施例が記載されている。図に記載の実施例では、図１に示す複数の演算装置６０には単一の入力装置６４で生成される複数の入力６２が接続される。理解されるように、本発明を利用し一連の楽音を一時に多数の演算装置から形成することができ、これらの楽音は後に処理し、一出力として複合する。
【００２２】
前記から、図面に関し説明した実施例は単なる引用例であり、当該技術に精通した者であれば本発明の精神と範囲から逸脱することなく図に記載の実施例に対し様々な変更や修正を加え得ることを理解されたい。こうした変更や修正の総ては以下に付属する請求項に記載する本発明の範囲内に収められるものと考える。
【図面の簡単な説明】
【図１】本発明に従って楽音を発生する演算装置の好適な一実施例のブロック図である。
【図２】電子的楽音の生成に用いた一連のディジタル値（ｘ）を発生する回路の引用実施例のブロック図である。
【図３】出力楽音波形を楽音として処理する引用例装置のブロック図である。
【図４】本発明に従って多数の楽音を同時に発生する他の実施例である。
【図５ａ】βの数値が次第に増加するときに行うβによるｓｉｎ ｙの乗算のサンプリング点に対する帰還変更子の出力波形に於ける変化を示す。
【図５ｂ】βの数値が次第に増加するときに行うβによるｓｉｎ ｙの乗算のサンプリング点に対する帰還変更子の出力波形に於ける変化を示す。
【図５ｃ】βの数値が次第に増加するときに行うβによるｓｉｎ ｙの乗算のサンプリング点に対する帰還変更子の出力波形に於ける変化を示す。
【図６】βの数値が次第に増加するときに行うβによるｓｉｎ ｙの乗算のサンプリング点に対する帰還変更子の出力波形に於ける変化を示す。
【図１】
0003641091.tif 000002
【図２】
0003641091.tif 000003
【図３】
0003641091.tif 000004
【図４】
0003641091.tif 000005
【図５ａ】
0003641091.tif 000006
【図５ｂ】
0003641091.tif 000007
【図５ｃ】
0003641091.tif 000008
【図６】
0003641091.tif 000009