JPH04233595A - 電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法 - Google Patents

電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法

Info

Publication number
JPH04233595A
JPH04233595A JP2409577A JP40957790A JPH04233595A JP H04233595 A JPH04233595 A JP H04233595A JP 2409577 A JP2409577 A JP 2409577A JP 40957790 A JP40957790 A JP 40957790A JP H04233595 A JPH04233595 A JP H04233595A
Authority
JP
Japan
Prior art keywords
data
channel
musical
tone
envelope
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2409577A
Other languages
English (en)
Inventor
Tsutomu Saito
勉 斉藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP2409577A priority Critical patent/JPH04233595A/ja
Publication of JPH04233595A publication Critical patent/JPH04233595A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、電子楽器のチャンネル
割り当て装置に関し、特にチャンネル割り当ての優先順
位の決定の仕方の改良に関する。
【0002】
【従来技術】従来、このようなチャンネル割り当て装置
においては、キーボードタイプの電子楽器を例にとると
、新たな発音操作があると、各チャンネルに割り当てら
れている各楽音のうちキーオフ状態の楽音があるか否を
サーチして、キーオフ状態の楽音があれば、この楽音が
割り当てられているチャンネルに新たな発音操作に係る
楽音を割り当てていた。
【0003】また、これを改良して、各チャンネルに割
り当てられている各楽音のキーオン順番やキーオフ順番
等をそれぞれ記憶しておき、この順番に基づいてチャン
ネル割り当てを行うものもあった。
【0004】
【発明が解決しようとする課題】ところが、近年、1つ
の電子楽器でエンベロープ波形の異なる種々の楽音を生
成放音できるものが実施化されつつあり、このような種
々のエンベロープ波形には、例えば、図20に示すよう
に、キーオン中でも減衰をはじめる、パーカッシブ音タ
イプまたはドラム音タイプのエンベロープ波形もあれば
、キーオフするまで減衰しない、オルガン音タイプのエ
ンベロープ波形もある。
【0005】従って、しばしばオルガン音タイプのエン
ベロープ波形のキーオフ後のレベルが、パーカッシッブ
音タイプまたはドラム音タイプのエンベロープ波形のキ
ーオン中のレベルより大きいこともある。そうすると、
上述のキーオフチャンネルだけのサーチでは、エンベロ
ープレベルがいちばん小さいものを優先して、このチャ
ンネルに新たな楽音を割り当てることができず、各楽音
の発音状態に見合った最適なチャンネル割り当てを行う
ことができない。これは、上述したキーオン順番やキー
オフ順番のデータに基づいてチャンネルを割り当てるも
のでも同様である。
【0006】本発明は、上述した課題を解決するために
なされたものであり、エンベロープ波形の異なる楽音そ
れぞれについても、それぞれのエンベロープレベルに応
じて、最適なチャンネル割り当てを行うことのできる電
子楽器のチャンネル割り当て装置を提供することを目的
としている。
【0007】
【課題を解決するための手段】上記目的を達成するため
、本発明は、各チャンネルに割り当てられているエンベ
ロープ波形の異なる各楽音のうち、対応する発音指示手
段が操作中であるか否かにかかわらず、エンベロープレ
ベルの小さいものに係るチャンネルをサーチして、新た
な発音指示に係る楽音を割り当てるようにした。
【0008】
【作用】このように、発音指示手段が操作中の楽音が割
り当てられているものについても、チャンネルサーチの
対象としているので、エンベロープレベルの最も小さい
ものを確実に選び出すことができる。そして、エンベロ
ープレベルをサーチの基準としているので、エンベロー
プ波形の異なる楽音が混在していても、聴覚上異和感の
ないチャンネル割り当てを行うことができる。
【0009】
【実施例】1.全体回路図2は電子楽器の全体回路を示
すものである。キーボード1の各キーは、楽音の発音を
指示するもので、キースキャン回路2によってスキャン
され、キーオン、キーオフを示すデータが検出され、C
PU5によってRAM6に書き込まれる。そして、それ
までRAM6に記憶されていた各キーのオン、オフの状
態を示すデータと比較され、各キーのオンイベント、オ
フイベントの判別が、CPU5によって行われる。
【0010】このキーボード1は、ローアキーボード、
アッパーキーボード、ペダルキーボード等から成ってお
り、それぞれにつき異なる音色の楽音、つまりエンベロ
ープ波形の異なる楽音の発音が可能となっている。そし
て、アッパーキーボードについては、1つのキーオンで
2音色の楽音を同時に鳴らすことも可能である。なお、
キーボード1は、電子弦楽器、電子吹奏(管)楽器、電
子打楽器(パッド等)、コンピュータ用のキーボード等
で代用してもよい。
【0011】パネルスイッチ群3の各スイッチは、パネ
ルスキャン回路4によって、スキャンされる。このスキ
ャンにより、各スイッチのオン、オフを示すデータが検
出され、CPU5によってRAM6に書き込まれる。そ
して、それまでRAM6に記憶されていた各スイッチの
オン、オフの状態を示すデータと比較され、各スイッチ
のオンイベント、オフイベントの判別が、CPU5によ
って行われる。上記各スイッチのオン、オフの状態を示
すデータは、パネルLEDドライバ8へ送られ、各スイ
ッチに対応して設けられた各LEDの点灯、消灯が行わ
れる。
【0012】ミディインタフェース9は、外部接続され
た電子楽器との間で楽音データの送受を行うためのイン
タフェースである。この楽音データはMIDI(ミュー
ジカルインスツルメントデジタルインタフェース)規格
のもので、この楽音データに基づいた発音も行われる。
【0013】RAM6には、上述したデータをはじめと
する各種処理データが記憶される。このRAM6内には
、アサインメントメモリ10が形成されている。このア
サインメントメモリ10には、16チャンネルの楽音生
成系にそれぞれ割り当てられている楽音の楽音データが
記憶される。また、このRAM6には、後述するワーキ
ングメモリ25も形成されている。
【0014】ROM7には、CPU5が各種処理を行う
ためのプログラムやシーケンスデータや生成エンベロー
プ指定データ等が記憶されている。シーケンスデータは
、電子楽器が自動演奏を行うためのデータであり、発音
すべき楽音データ列よりなっている。生成エンベロープ
指定データは、音色またはキータッチに応じたエンベロ
ープ波形のスーピードデータSPD及び目標データPE
P等である。このROM7には、後述する重み係数デー
タテーブル20も形成されている。波形データは、波形
メモリ13に記憶されているが、このROM7に記憶し
てもよい。
【0015】トーンジェネレータ11は、上記キーボー
ド1のオンキーに応じた音高、キーオンまたはキーオフ
のタッチ、パネルスイッチ群3のオンスイッチに応じた
音色等に応じた楽音信号を生成する。ここでタッチとは
、キーボード1の各キーの発音操作の速さまたは強さを
示すデータである。このトーンジェネレータ11には、
複数チャンネル分、例えば16チャンネル分の楽音生成
系が時分割処理により形成されており、楽音をポリフォ
ニックに発音させることができる。このトーンジェネレ
ータ11で生成された楽音信号は、パンニング回路17
で、ステレオ楽音の左右それぞれの楽音信号のレベルが
コントロールされ、D−A変換器18でアナログ信号に
変換され、右スピーカ19Rまたは左スピーカ19Lよ
り発音される。
【0016】上記トーンジェネレータ11の波形読出回
路12により、波形メモリ13より指定音色に応じた楽
音波形データが指定音高に応じた速度で時分割に読み出
される。またトーンジェネレータ11のエンベロープ発
生器14では、複数のエンベロープ波形データが時分割
に生成される。これら楽音波形データとエンベロープ波
形データとは、乗算回路15で乗算され、グループ累算
回路16で楽音データのサウンドグループごとに累算さ
れ、上記パンニング回路17へ送られる。
【0017】2.パネルスイッチ群3 図3は、パネルスイッチ群3の一部をを示す図である。 サウンドグループスイッチ群21は、アッパー1、アッ
パー2、ローア、ペダル、リズム1、リズム2、リズム
3、リズム4よりなり、各サウンドグループのモードを
選択するスイッチである。このモード選択により各サウ
ンドグループの音色または音量の設定が可能となる。ア
ッパーのサウンドグループには、2つの音色を設定でき
、これにより1つのキーオンで2つの音色の楽音を発音
させることができる。リズムのサウンドグループも同様
に4つの音色を設定できる。このリズムはマニュアルの
ほか、後述するシーケンスディバイスによって自動演奏
もできる。
【0018】音色スイッチ群22は、ピアノ、バイオリ
ン、ドラム等の楽器音の音色を選択するスイッチである
。この音色選択スイッチ群22により、上記各サウンド
グループの音色の設定が行われる。音量ボリューム23
は、楽音の発音音量を設定するつまみである。この音量
ボリューム23により、上記各サウンドグループの音量
の設定が行われる。これら音色、音量の設定内容はディ
スプレイ24に表示される。
【0019】3.アサインメントメモリ10図4は、ア
サインメントメモリ10を示すものである。 このアサインメントメモリ10には、16チャンネル分
のメモリエリアが形成されており、上記トーンジェネレ
ータ11に形成された16個の楽音生成チャンネルに割
り当てられた楽音のデータがそれぞれ記憶される。これ
ら各チャンネルメモリエリアに記憶される楽音データは
、オン/オフデータ、キーナンバデータKN、ディバイ
スナンバデータDN、サウンドグループナンバデータG
N、イニシャルタッチデータIT、トーンナンバデータ
TNである。
【0020】オン/オフデータは、キーボード1の各キ
ーのオン(「1」)、オフ(「0」)を示すデータであ
る。キーナンバデータKNは、キーボード1の各キーの
音高を示すデータである。ディバイスナンバデータDN
は、当該チャンネルメモリエリアに記憶されているデー
タの発生元を示すデータである。この発生元は、上記キ
ーボード1によるマニュアルデータか(DN=0)、ミ
ディインタフェース9を通じて入力されたMIDIデー
タか(DN=1)、ROM7から読み出されたシーケン
スデータか(DN=2)を示している。このディバイス
ナンバデータDNはメロディ、コードまたはリズムの演
奏パートを示すデータとしてもよい。
【0021】サウンドグループナンバデータGNは、上
記マニュアルデータをさらに細分化して、アッパー(「
0」)、ローア(「1」)、ベース(「2」)、リズム
(「3」)の区別を示すデータである。イニシャルタッ
チデータITは、キーボード1の各キーのキーオンまた
はキーオフの操作速度を示すデータである。このデータ
は、操作圧力を示すアフタータッチデータで代用しても
よい。トーンナンバデータTNは、ピアノ、バイオリン
、ドラム等の音色を示すデータである。
【0022】4.ワーキングメモリ25図5は、RAM
6内のワーキングメモリ25を示すものである。このワ
ーキングメモリ25には、トーンナンバレジスタ26a
〜26h、音量レジスタ27a〜27h及び使用チャン
ネル数レジスタ28a〜28dが形成されている。
【0023】トーンナンバレジスタ26a〜26hには
、上記パネルスイッチ群3で、アッパー1、アッパー2
、ローア…の各サウンドグループごとに、上記音色スイ
ッチ群22により設定された音色を示すトーンナンバデ
ータTNが記憶される。音量レジスタ27a〜27hに
は、上記パネルスイッチ群3で、アッパー1、アッパー
2、ローア…の各サウンドグループごとに、上記音量ボ
リューム23により設定された音量データVOLが記憶
される。
【0024】使用チャンネル数レジスタ28a〜28d
には、アッパー(アッパー1及びアッパー2)、ローア
、ペダル、リズム(リズム1〜リズム4)の4つのサウ
ンドグループにつき、各々割り当てられているチャンネ
ル数の総数を示す使用チャンネル数データUCが記憶さ
れる。
【0025】5.エンベロープ発生器14内のメモリ3
1、32、33 図6はエンベロープ発生器14内の3つのメモリ31、
32、33を示すものである。このメモリ31、32、
33は、生成エンベロープ指定データメモリ31、エン
ベロープレベルメモリ32、修正エンベロープレベルメ
モリ33である。
【0026】生成エンベロープ指定データメモリ31は
、16個のチャンネルメモリエリアが形成されており、
各チャンネルメモリエリアには、それぞれのチャンネル
に割り当てられている楽音のエンベロープ波形の内容を
示す生成エンベロープ指定データが記憶される。
【0027】この生成エンベロープ指定データは、エン
ベロープ波形のアタック、ディケィ、リリースそれぞれ
のスピードデータSPDと目標データPEP、ラウドネ
スデータLOUD、フェーズナンバデータPN、書き込
みプロテクトデータwp及び重み係数データWPよりな
っている。
【0028】スピードデータSPDは、エンベロープ波
形の各フェーズ(タイム)の変化のスピードを示すデー
タである。このデータSPDの上位にはアップ/ダウン
データU/Dが付加されており、各タイムの変化が加算
方向か減算方向かを示している。目標データPEPは、
エンベロープ波形の各フェーズ(タイム)の到達レベル
を示すデータである。エンベロープ波形は、この目標デ
ータPEPに向って、スピードデータSPDに応じたス
ピードで変化していくことになる。なお、エンベロープ
波形のサスティンタイムは、ディケイタイムの目標デー
タPEPをキーオフまで維持するだけなので、記憶デー
タはない。
【0029】ラウドネスデータLOUDは、音量を示す
データである。このデータLOUDは、上記パネルスイ
ッチ群3の音量ボリューム23で各サウンドグループご
とに設定された音量に、発音操作のスピードを示すイニ
シャルタッチデータITを付加したデータである。この
付加は乗算、加算または一方を上位データ他方を下位デ
ータとした合成等である。フェーズナンバデータPNは
、エンベロープ波形のアタック、ディケイ、サスティン
、リリースの各フェーズ(タイム)を示すデータである
。書き込みプロテクトデータwpは、上記フェーズナン
バデータPNの更新を許可したり(「1」)、禁止した
りする(「0」)1ビットデータである。
【0030】重み係数データWPは、チャンネル割り当
ての優先度を示すデータである。新たなチャンネル割り
当ては、エンベロープレベルに対し、重み係数データW
Pを修正演算した修正エンベロープレベルデータMEL
に基づいて行われる。
【0031】エンベロープレベルメモリ32も、16チ
ャンネル分のチャンネルメモリエリアが形成されており
、各チャンネルメモリエリアには、それぞれのチャンネ
ルに割り当てられている楽音のエンベロープレベルデー
タELが記憶される。このエンベロープレベルデータE
Lは、発音中の楽音のその時点のエンベロープのレベル
を示すデータである。
【0032】修正エンベロープレベルメモリ33も、1
6チャンネル分のチャンネルメモリエリアが形成されて
おり、各チャンネルメモリエリアには、それぞれのチャ
ンネルに割り当てられている楽音の修正エンベロープレ
ベルデータMELが記憶される。この修正エンベロープ
レベルデータMELは、上記エンベロープレベルデータ
ELに対し、上記重み係数データWPを修正演算したも
のである。この修正演算は後述する。この修正エンベロ
ープレベルメモリ33には、さらに3つのメモリエリア
が形成されており、それぞれのメモリエリアには、上記
修正エンベロープレベルデータMELが小さい方から3
つの楽音データに係るチャンネルナンバが記憶される。
【0033】6.重み係数データテーブル20図7はR
OM7内の重み係数データテーブル20を示すものであ
る。重み係数データWPは、チャンネル割り当ての優先
度を示すデータであり、このデータは「0.00」〜「
1.00」の値をとり、この値が小さいほど、新たなキ
ーオンに係る楽音に割り当てられ易くなる。
【0034】この重み係数データWPは、各サウンドグ
ループごとに設定されており、各サウンドグループの使
用チャンネル数データUCに応じて、値が次第に小さく
なる。従って、1つのサウンドグループに割り当てられ
ているチャンネル数が多いほど、このサウンドグループ
に係るチャンネルに対し、新たなキーオンに係る楽音が
割り当てられ易くなっている。この重み係数データWP
は、新たな楽音をチャンネルに割り当てるごとに、上記
生成エンベロープ指定データメモリ31内の同じサウン
ドグループに属するすべての重み係数データWPが、新
たな使用チャンネル数に応じた重み係数データWPに書
き換えられる。
【0035】そして、この重み係数データWPは、各サ
ウンドグループごとに必要とされるチャンネル数の理想
型も示している。今16個のチャンネルがエンベロープ
レベルデータELに関係なく割り当てられるとすると、
まず4つのチャンネルにアッパーのサウンドグループの
楽音が割り当てられ(「1.00」)、次に1つのチャ
ンネルにペダルのサウンドグループの楽音が割り当てら
れ(「0.98」)、次に2つのチャンネルにリズムの
サウンドグループの楽音が割り当てられ(「0.97」
)、次に3つのチャンネルにローアのサウンドグループ
の楽音が割り当てられるとともに1つのチャンネルにリ
ズムのサウンドグループの楽音が割り当てられ(「0.
95」)、次に1つのチャンネルにアッパーのサウンド
グループの楽音が割り当てられ(「0.94」)、次に
1つのチャンネルにリズムのサウンドグループの楽音が
割り当てられ(「0.92」)、次に3つのチャンネル
にそれぞれアッパー、ローア及びリズムのサウンドグル
ープの楽音が割り当てられる(「0.90」)。これら
理想型の割り当てチャンネルは、図7の丸印で示したと
うりである。
【0036】図8は、重み係数データテーブル20の別
の実施例を示すものである。本実施例では、同一サウン
ドグループで同一キーナンバの楽音の割り当てられてい
るチャンネル数に応じて、チャンネル割り当ての優先度
を決めている。同一サウンドグループで同一キーナンバ
の楽音の割り当てられているチャンネル数が「1」から
「16」になるに従って、重み係数データWPは「1.
00」〜「0.10」まで変化するようになっている。 これにより、音高が異なり、サウンドグループの異なる
楽音がチャンネルに割り当てられ易くなる。
【0037】なお、上記重み係数データテーブル20の
両重み係数データWPは、使用チャンネル数データUC
または同一サウンドグループで同一キーナンバの楽音の
割り当てられているチャンネル数が「0」のときは、い
ずれも「1.00」となる。また、図7と図8の重み係
数データテーブル20の両重み係数データWPを、乗算
または加算等の演算合成をして、新たな別の重み係数デ
ータWPを作成してもよい。
【0038】上述の図7及び図8の各重み係数データW
Pは、同一または似た楽音の数が多いほど、値が小さく
なり、新たな楽音にチャンネルを明け渡しし易くするこ
とができるとともに、同じまたは似た楽音の数が少ない
楽音をできるだけ残しておくことができる。従って、消
音すると聴覚上それほど異和感のない楽音にチャンネル
を明け渡しし易くすることができるとともに、消音する
と聴覚上異和感のある楽音をできるだけ残しておくこと
ができ、聴覚上異和感のないチャンネル割り当てを行う
ことができる。
【0039】7.エンベロープ発生器14図1はエンベ
ロープ発生器14を示すものである。上記生成エンベロ
ープ指定データメモリ31の上述した各データは、上記
アサインメントメモリ10内の各データに基づいて、C
PU5によってROM7より読み出されたり、演算処理
されたりして、同メモリ31に書き込まれる。この生成
エンベロープ指定データメモリ31の各データは、時分
割に各チャンネルタイミングごとに読み出される。
【0040】この読み出されるデータのうち、エンベロ
ープ波形の各フェーズ(タイム)のスピードデータSP
Dは、セレクタ48及び2の補数回路34を介し、アダ
ー35でそれまでのエンベロープレベルデータに加算ま
たは減算される。2の補数回路34は、例えばイクスク
ルシブオアゲート群よりなり、スピードデータSPDの
各ビットが各ゲートに与えられるとともに、スピードデ
ータSPDの上位1ビットのアップ/ダウンデータU/
Dがセレクタ47を介し、全ゲートに与えられ、スピー
ドデータSPDがアップ/ダウンデータU/Dに基づい
てプラス/マイナスの値とされ、さらにアダーを使って
+1されて、2の補数値が出力される。
【0041】上記スピードデータSPDが加算まはた減
算されたエンベロープレベルデータELは、セレクタ3
6を介し、上記エンベロープレベルメモリ32に書き込
まれる。このエンベロープレベルメモリ32の書き込み
チャンネルメモリエリアは、上記生成エンベロープ指定
データメモリ31の読み出しチャンネルメモリエリアと
同じであり、この書き込みと読み出しは、タイミング制
御回路51によって同期がとられる。
【0042】一方、コンパレータ37には、上記アダー
35からのエンベロープレベルデータELと、上記生成
エンベロープ指定データメモリ31より読み出されるエ
ンベロープ波形の各フェーズ(タイム)の目標データP
EPとが、セレクタ49を介して与えられる。そして、
スピードデータSPDが順次加減算されて、エンベロー
プレベルデータELが目標データPEPに到達すると、
比較結果信号が上記セレクタ36に出力される。セレク
タ36では、比較結果信号が与えられると、セレクトデ
ータをエンベロープレベルデータELから目標データP
EPに切り換える。
【0043】上記比較結果信号は、フェーズインクリメ
ンタ38にも入力される。このフェーズインクリメンタ
38は、例えば2ビット入力のアダー等で構成すること
ができ、上記生成エンベロープ指定データメモリ31よ
り読み出されたフェーズナンバデータPNに対し、比較
結果信号が加算されて+1され、エンベロープ波形のフ
ェーズ(タイム)がアタックからディケイ、サスティン
へ更新される。
【0044】この加算されたフェーズナンバデータPN
は、書き込みプロテクト回路45を介し、生成エンベロ
ープ指定データメモリ31に書き込まれる。この書き込
みプロテクト回路45には、上記書き込みプロテクトデ
ータwpが与えられており、フェーズナンバデータPN
が「10(2)(リリース)」へ更新されたときに、書
き込みプロテクトがかかり、誤って「00(0)(アタ
ック)」から「01(1)(ディケイ、サスティン)」
への更新がなされないようになっている。これは「01
(1)(ディケイ、サスティン)」から「10(2)(
リリース)」への更新は、後述するように、CPU5に
よってキーオフ時に行われるからである(図13、ステ
ップ43)。
【0045】また、上記セレクタ47、48、49では
、それぞれアップ/ダウンデータU/D、スピードデー
タSPD及び目標データPEPのアタック、ディケイ、
リリースのいずれかのデータが選択される。このセレク
タ47、48、49には、上記フェーズナンバデータP
Nがセレクト切換データとして与えられている。
【0046】上述したスピードデータSPD、目標デー
タPEP、アップ/ダウンデータU/D、フェーズナン
バデータPN、ラウドネスデータLOUDは、各チャン
ネルごとに一括して読み出されるが、何回かに分けて読
み出す場合には、ラッチに記憶して同期をとってもよい
【0047】乗算回路39には、上記セレクタ36から
のエンベロープレベルデータELと、上記生成エンベロ
ープ指定データメモリ31より読み出されるラウンドネ
スデータLOUDとが入力される。これにより、エンベ
ロープレベルデータELは、ラウンドネスデータLOU
Dに応じた値、すなわち設定音量及びイニシャルタッチ
データITに応じた値とされ、上述した乗算回路15へ
送出されて、楽音波形データと乗算される。
【0048】上記エンベロープレベルメモリ32に書き
込まれたエンベロープレベルデータELは、上記アダー
35に出力されて、スピードデータSPDが加算される
ほか、演算回路40にも出力される。この演算回路40
には、エンベロープレベルデータELのほか、生成エン
ベロープ指定データメモリ31より読み出されたアップ
/ダウンデータU/D及び重み係数データWPも入力さ
れる。
【0049】演算回路40では、エンベロープレベルデ
ータELに対し、重み係数データWP及びアップ/ダウ
ンデータU/Dに応じた修正演算が行われる。この修正
演算は、例えば乗算器及び加算器等を用い、次のような
演算式に基づいて行われる。
【0050】     (EL×WP)+U/D=MEL      
        (1)このうちエンベロープレベルデ
ータELは「0〜255」の値をとり、重み係数データ
WPは「0〜1」の値をとり、アップ/ダウンデータU
/Dは「0」のとき「0」、「1」のとき「256」の
値とすることができる。アップ/ダウンデータU/Dが
「1」のとき「256」の大きな値とするのは、エンベ
ロープ波形がアタックフェーズにあるときは、新たなキ
ーオンに係る楽音にできるだけチャンネルを明け渡さな
いようにするためである。アップ/ダウンデータU/D
が「1」となるのは、通常アタックフェーズ(タイム)
のときである。むろん、上記演算にあたっては、各デー
タEL、WP、U/Dは上述した値以外の値をとっても
よい。
【0051】また、上述した演算は次式に基づいて行っ
てもよい。 (EL+U/D)×WP=MEL          
    (2)EL+U/D+WP=MEL     
           (3)EL×U/D×WP=M
EL                (4)むろん演
算の形は、上述のものに限らず、エンベロープレベルデ
ータELを重み係数データWPで修正し、かつアップ/
ダウンデータU/Dが「1」のときに大きくなるように
修正できれば、どうのような形でもよい。
【0052】このようにして、演算回路40で演算修正
された修正エンベロープレベルデータMELは、CPU
5によって、修正エンベロープレベルメモリ33に書き
込まれる。この修正エンベロープレベルメモリ33の書
き込みチャンネルメモリエリアは、上記エンベロープレ
ベルメモリ32の読み出しチャンネルメモリエリアと同
じであり、この書き込みと読み出しは、タイミング制御
回路51によって図9に示すように同期がとられる。
【0053】図9では、1つのチャンネルのシェアタイ
ムを4等分し、それぞれ第1シェアタイム、第2シェア
タイム、第3シェアタイム及び第4シェアタイムとする
と、各メモリ31、32、33へのアクセスは次のよう
になる。生成エンベロープ指定データメモリ31からの
読み出しは、第1シェアタイム及び第2シェアタイムを
使って行われ、同メモリ31への更新されたフェーズナ
ンバデータPNの書き込みは、第4シェアタイムを使っ
て行われ、同メモリ31へのCPU5からのアクセスは
、第3シェアタイムを使って行われる。
【0054】エンベロープレベルメモリ32からの読み
出しは、第1シェアタイムを使って行われ、エンベロー
プレベルメモリ32及び修正エンベロープレベルメモリ
33への書き込みは、第4シェアタイムを使って行われ
、エンベロープレベルメモリ32及び修正エンベロープ
レベルメモリ33へのCPU5からのアクセスは、第3
シェアタイムを使って行われる。これ以外のシェアタイ
ムは使用されない。
【0055】このような各シェアタイムの切り換えは、
セレクタ52を介しタイミング制御回路51より送られ
てくるクロック信号群その他のデータに基づいて行われ
る。CPU5からのアクセス用のデータもこのセレクタ
52を介して送られる。このセレクタ52の切り換えは
、タイミング制御回路51からのクロック信号に基づい
て行われる。
【0056】ここで、1つのチャンネルのシェアタイム
で、フェーズインクリメンタ38によって、フェーズナ
ンバデータPNが「0(アタック)」から「1(ディケ
イ、サスティン)」に変化するときに、このシェアタイ
ムでCPU5が「2(リリース)」に切り換えると、こ
の「2(リリース)」に切り換えの後に「1(ディケイ
、サスティン)」に変化してしまう。これを防止するた
め、上記書き込みプロテクト回路45と書き込みプロテ
クトデータwpとがある。
【0057】書き込みプロテクトデータwpが「1」の
ときは、フェーズナンバデータPNを生成エンベロープ
指定データメモリ31に書き込むことが可能であるが、
書き込みプロテクトデータwpがCPU5によって「0
」にされたときは、上記書き込みが禁止される。この書
き込みプロテクトデータwpは書き込みプロテクト回路
45に与えられ、セレクタ52からの生成エンベロープ
指定データメモリ31に対する書き込み指令信号、及び
フェーズインクリメンタ38からのフェーズナンバデー
タPNがゲート制御される。
【0058】上記演算回路40より出力される修正エン
ベロープレベルデータMELは、第1最小レベル検出回
路41、第2最小レベル検出回路42及び第3最小レベ
ル検出回路43に与えられる。第1最小レベル検出回路
41では、演算回路40からの修正エンベロープレベル
データMELを、全チャンネル分について比較処理を行
い、修正エンベロープレベルデータMELがいちばん小
さい楽音が割り当てられているチャンネルナンバを検出
し、上記修正エンベロープレベルメモリ33に出力する
【0059】同様に、第2最小レベル検出回路42及び
第3最小レベル検出回路43も、全チャンネルの修正エ
ンベロープレベルデータMELの比較処理を行い、それ
ぞれ修正エンベロープレベルデータMELが2番目に小
さい楽音が割り当てられているチャンネルナンバ及び修
正エンベロープレベルデータMELが3番目に小さい楽
音が割り当てられているチャンネルナンバを検出し、修
正エンベロープレベルメモリ33に出力する。修正エン
ベロープレベルメモリ33には、この送られてくる3つ
のチャンネルナンバが書き込まれる。
【0060】これにより、修正エンベロープレベルデー
タMELが小さい方から3つの楽音が割り当てられてい
るチャンネルのナンバが検出され、このチャンネルに新
たなキーオンに係る楽音が割り当てられていく。なお、
各最小レベル検出回路41、42、43における比較処
理は、演算回路40からの修正エンベロープレベルデー
タMELではなく、エンベロープレベルメモリ32から
のエンベロープレベルデータELについて行ってもよい
【0061】8.最小レベル検出回路41、42、43
図10は第1最小レベル検出回路41、第2最小レベル
検出回路42及び第3最小レベル検出回路43を示すも
のである。上記演算回路40からの修正エンベロープレ
ベルデータMELは、第1最小レベル検出回路41のコ
ンパレータ51に与えられる。このコンパレータ51に
は、それまでに検出して第1レベルラッチ71に記憶し
てある最小の修正エンベロープレベルデータMELも与
えられている。そして、この最小の修正エンベロープレ
ベルデータMELより上記新たな修正エンベロープレベ
ルデータMELの方が小さければ、コンパレータ51よ
り比較検出信号が出力され、この信号がアンドゲート5
2を介してラッチ信号として、上記第1レベルラッチ7
1に与えられ、上記新たな修正エンベロープレベルデー
タMELがセットされる。
【0062】またこのラッチ信号は、第1チャンネルナ
ンバラッチ81にも与えられ、上記新たな修正エンベロ
ープレベルデータMEL係るチャンネルナンバがセット
される。このチャンネルナンバは、上記生成エンベロー
プ指定データメモリ31、エンベロープレベルメモリ3
2及び修正エンベロープレベルメモリ33に対し、CP
U5が与えているアドレスデータに応じたものである。 このようにして、16チャンネル分のシェアタイムが経
過すると、16チャンネル分の楽音データの中で最も修
正エンベロープレベルデータMELが小さいチャンネル
のナンバが第1チャンネルナンバラッチ81にセットさ
れ、この最も小さい修正エンベロープレベルデータME
Lの値が第1レベルラッチ71にセットされることにな
る。
【0063】上記アンドゲート52には、図11に示す
クロック信号CK0が与えられており、1つのチャンネ
ルのシェアタイムの前半でコンパレータ51での比較が
行われ、後半で上記第1チャンネルナンバラッチ81及
び第1レベルラッチ71へのセットが行われる。
【0064】図11に示すように、上述のようにして1
6チャンネル分のシェアタイムが経過すると、次の16
チャンネル分のシェアタイムの先頭でシェアリング信号
SY1がラッチ信号として、第2レベルラッチ72及び
第2チャンネルナンバラッチ82に与えられ、第1レベ
ルラッチ71からの最も小さい修正エンベロープレベル
データMELが第2レベルラッチ72に転送されて出力
されるとともに、第1チャンネルナンバラッチ81から
のチャンネルナンバが第2チャンネルナンバラッチ82
に転送されて、修正エンベロープレベルメモリ33に書
き込まれる。
【0065】このシェアリング信号SY1は、上記第1
レベルラッチ71にも与えられて、同ラッチ71のラッ
チデータをリセットして最大値の「11…1」とする。 上述のラッチ81、82、71、72はR−Sタイプの
ラッチである。
【0066】そして、第1最小レベル検出回路41の第
2チャンネルナンバラッチ82からのチャンネルナンバ
データは第2最小レベル検出回路42の一致判別回路5
3に与えられる。この一致判別回路53には、上記第1
最小レベル検出回路41の第1チャンネルナンバラッチ
81に与えられているものと同じチャンネルナンバも与
えられている。両データが一致したとき、一致判別回路
53の出力信号はローレベルとなり、アンドゲート56
が閉成される。このアンドゲート56を介して、第2最
小レベル検出回路42のコンパレータ54からの比較結
果信号が第1チャンネルナンバラッチ83及び第1レベ
ルラッチ73に与えられている。
【0067】従って、第1最小レベル検出回路41で検
出された最小修正エンベロープレベルデータMEL及び
チャンネルナンバが、第2最小レベル検出回路41に与
えられる時には、このデータのセットが禁止される。こ
の結果、第2最小レベル検出回路41では、2番目に小
さい修正エンベロープレベルデータMEL及びチャンネ
ルナンバが検出されることになる。上記一致判別回路5
3は、イクスクルシブオアゲート群とオアゲートとより
なり、2つのチャンネルナンバデータの各ビットが各イ
クスクルシブオアゲートに与えられて、各ビットデータ
の相違が判別され、1つのビットでも一致しないときに
は、ハイレベル信号がオアゲートを介して出力される。
【0068】この第2最小レベル検出回路42のコンパ
レータ54、アンドゲート55、第1チャンネルナンバ
ラッチ83、第2チャンネルナンバラッチ84、第1レ
ベルラッチ73及び第2レベルラッチ74の構成及び動
作は、上記第1最小レベル検出回路41のコンパレータ
51、アンドゲート52、第1チャンネルナンバラッチ
81、第2チャンネルナンバラッチ82、第1レベルラ
ッチ71及び第2レベルラッチ72と同じである。
【0069】そして、第3最小レベル検出回路43のコ
ンパレータ59、アンドゲート60、第1チャンネルナ
ンバラッチ85、第2チャンネルナンバラッチ86、第
1レベルラッチ75、第2レベルラッチ76、アンドゲ
ート61及び一致判別回路57の構成及び動作は、上記
第2最小レベル検出回路42のコンパレータ54、アン
ドゲート55、第1チャンネルナンバラッチ83、第2
チャンネルナンバラッチ85、第1レベルラッチ73、
第2レベルラッチ75、アンドゲート56及び一致判別
回路53と同じである。
【0070】上記第2最小レベル検出回路42の一致判
別回路53からの信号と第3最小レベル検出回路43の
一致判別回路57からの信号とは、アンドゲート58に
与えられ、このアンドゲート58の出力信号が、アンド
ゲート61に開成信号として与えられる。このアンドゲ
ート61を介して、第3最小レベル検出回路43のコン
パレータ59からの比較結果信号が第1チャンネルナン
バラッチ85及び第1レベルラッチ75に与えられてい
る。
【0071】従って、第1最小レベル検出回路41で検
出された最小修正エンベロープレベルデータMEL並び
にチャンネルナンバ及び第2最小レベル検出回路42で
検出された最小修正エンベロープレベルデータMEL並
びにチャンネルナンバが、第3最小レベル検出回路43
に与えられる時には、このデータのセットが禁止される
。この結果、第3最小レベル検出回路43では、3番目
に小さい修正エンベロープレベルデータMEL及びチャ
ンネルナンバが検出されることになる。同様にして、4
番目に小さい修正エンベロープレベルデータMEL及び
チャンネルナンバを検出する第4最小レベル検出回路4
、5番目に小さい修正エンベロープレベルデータMEL
及びチャンネルナンバを検出する第5最小レベル検出回
路5…を設けてもよい。
【0072】上記各第2レベルラッチ72、74及び7
6より出力される、検出された修正エンベロープレベル
データMELは、修正エンベロープレベルメモリ33の
「A0н〜A2н」に、チャンネルナンバとともに記憶
してもよい。
【0073】9.全体処理 図12は全体処理のフローチャートを示すもので、この
処理は電源投入によりスタートする。この処理では、C
PU5は、イニシャライズ処理(ステップ01)、パネ
ルスイッチ検出処理(ステップ02)、パネルLED点
灯消灯処理(ステップ03)の後、ステップ04以降の
キー処理を行う。このキー処理は、マニュアル(ステッ
プ04〜09)、ミディ(ステップ10〜14)、シー
ケンサ(ステップ15〜19)の3つのディバイスそれ
ぞれについて行われる。
【0074】キー処理では、まずCPU5は、キーボー
ドの各キーのキーのオン/オフの検出処理を行い(ステ
ップ04)、キーオンまたはキーオフのイベントがあれ
ば(ステップ05)、まずディバイスナンバデータDN
を「0」のマニュアルディバイスとする(ステップ06
)。これは、キーボード1はマニュアルのディバイスだ
からである。
【0075】次に、イベントキーに応じたサウンドグル
ープナンバデータGNを作成する(ステップ07)。イ
ベントキーがキーボード1のアッパーエリアに属せば、
サウンドグループナンバデータGNは「0」となり、ロ
ーアエリアに属せば「1」となり、ペダルエリアに属せ
ば「2」となり、リズムエリアに属せば「3」となる。 この後、イベントキーに応じた発音処理を行い(ステッ
プ08)、このイベントキーに係る楽音データをミディ
インタフェース9を通じて出力する(ステップ09)。
【0076】そして、ミディインタフェイス9を通じて
入力されたデータの検出処理を行い(ステップ10)、
キーオンまたはキーオフのイベントがあれば(ステップ
11)、まずディバイスナンバデータDNを「1」のミ
ディディバイスとする(ステップ12)。この後、ミデ
ィインタフェース9を通じて同時に入力されたサウンド
グループを示すミディチャンネルデータよりサウンドグ
ループナンバデータGNを作成し(ステップ13)、上
記ミディデータに応じた発音処理を行う(ステップ14
)。
【0077】さらに、ROM7内のシーケンスデータ読
み出し処理を行い(ステップ15)、キーオンまたはキ
ーオフのイベントのタイミングであれば(ステップ16
)、まずディバイスナンバデータDNを「2」のシーケ
ンスディバイスとする(ステップ17)。この後、シー
ケンスデータ内のサウンドグループを示すトラックナン
バデータよりサウンドグループナンバデータGNを作成
し(ステップ18)、上記シーケンスデータに応じた発
音処理を行う(ステップ19)。このステップ15〜1
9は、オートプレイモードが選択されているときのみ行
うようにしてもよい。
【0078】10.発音処理 図13は発音処理を示すもので、図12のステップ08
、14、19では、この処理が実行される。この処理で
は、まずCPU5は、上述のイベントがキーオンイベン
トかキーオフイベントかを判別する(ステップ31)。 キーオンイベントであれば、各サウンドグループごとの
使用チャンネル数をカウントする(ステップ32)。こ
のカウントは、ワーキングRAM25の使用チャンネル
数レジスタ28a〜28dをクリアして、アサインメン
トメモリ10の各チャンネルメモリエリアのサウンドグ
ループナンバデータGNを読み出し、これに応じた使用
チャンネル数レジスタ28a〜28dをインクリメント
することで行われる。
【0079】次いで、CPU5はエンベロープ発生器1
4の修正エンベロープレベルメモリ33の「A0н(н
は16進値を示す記号)」番地に記憶されている、修正
エンベロープレベルデータMELが最小の楽音に係るチ
ャンネルナンバデータを読み出し(ステップ33)、こ
のチャンネルナンバに応じたアサインメントメモリ10
内のチャンネルメモリエリアに、上記キーオンイベント
に係る楽音データを書き込む(ステップ34)。こうし
て、対応するキーが操作中であるか否かにかかわらず、
エンベロープ波形の形に関係なく、修正エンベロープレ
ベルデータMELが最も小さい楽音に係るチャンネルに
新たなキーオンに係る楽音データが割り当てられる。
【0080】この場合、アッパーのサウンドグループの
ように、1つのオンイベントで複数の音色の楽音が発音
する場合には、この音色に応じた楽音データがそれぞれ
書き込まれる。このようにして書き込まれる楽音データ
は、「1(オン)」のオン/オフデータ、オンキーのキ
ーナンバデータKN、オンキーの属するサウンドグルー
プナンバデータGN及びディバイスナンバデータDN、
オンキーのイニシャルタッチデータIT及びワーキング
メモリ25のトーンナンバレジスタ26a〜26hの記
憶内容に基づいたオンキーのトーンナンバデータTNで
ある。
【0081】この後、CPU5は、上記ステップ34で
アサインメントメモリ10に書き込んだオンキーのキー
ナンバデータKNとトーンナンバデータTNとを波形読
出回路12内のメモリに転送する(ステップ35)。こ
の場合、ROM7に読出波形指定データ(周波数ナンバ
等)を記憶しておき、これを読み出して転送するように
してもよい。また、同じくアサインメントメモリ10に
書き込んだトーンナンバデータTN及びイニシャルタッ
チデータITに応じた生成エンベロープ指定データ、す
なわちエンベロープ波形の各フェーズのスピードデータ
SPD、目標データPEP及びラウドネスデータLOU
D、「0(アタック)」のフェーズナンバデータPN、
「1(書き込み可能)」の書き込みプロテクトデータw
pをエンベロープ発生器14の生成エンベロープ指定デ
ータメモリ31の対応チャンネルメモリエリアに書き込
む(ステップ36)。
【0082】この生成エンベロープ指定データのスピー
ドデータSPDと目標データPEPとは、トーンナンバ
データTNとイニシャルタッチデータITに応じたもの
がROM7より読み出される。この場合、ROM7に記
憶するデータSPD、PEPは、トーンナンバデータT
Nに応じたものだけとし、これをイニシャルタッチデー
タITの大きさに応じて修正するようにしてもよい。ま
た上記ラウドネスデータLOUDは、ワーキングメモリ
25内の音量レジスタの音量データVOLに、上記イニ
シャルタッチデータITが乗算されて算出される。
【0083】この後、CPU5は、上記ステップ32で
カウントし直した使用チャンネル数データUCを読み出
し(ステップ37)、このデータUCと上記ステップ3
4でアサインメントメモリ10に書き込んだサウンドグ
ループナンバデータGNとに基づき、重み係数データテ
ーブル20より対応する重み係数データWPを読み出し
(ステップ38)、エンベロープ発生器14の生成エン
ベロープ指定データメモリ31の対応チャンネルメモリ
エリアに書き込む(ステップ39)。そして、このチャ
ンネルメモリエリアのサウンドグループナンバデータG
Nと同じサウンドグループナンバデータGNの記憶され
ているすべてのチャンネルメモリエリアの重み係数デー
タWPも、上記新たな重み係数データWPに書き換え(
ステップ40)、リターンする。
【0084】また、上記ステップ31で、キーオフイベ
ントが判別されれば、アサインメントメモリ10内の各
チャンネルメモリエリアのキーナンバデータKN、サウ
ンドグループナンバデータGN及びディバイスナンバデ
ータDNが、このキーオフイベントに係る楽音データと
一致するものをサーチする(ステップ41)。そして、
このチャンネルメモリエリアのオン/オフデータを「0
(オフ)」とし(ステップ42)、生成エンベロープ指
定データメモリ31の対応するチャンネルメモリエリア
のフェーズナンバデータPNを「2」のリリースフェー
ズ(タイム)とし、書き込みプロテクトデータwpを「
0」の書き込み禁止状態として(ステップ43)、リタ
ーンする。
【0085】なお、図7の重み係数データテーブル20
は、トーンナンバデータTNと使用チャンネル数データ
UCとに対応して重み係数データWPを記憶したり、音
域(音高)と使用チャンネル数データUCとに対応して
重み係数データWPを記憶したり、タッチデータ(イニ
シャルタッチまたはアクタタッチ)域と使用チャンネル
数データUCとに対応して重み係数データWPを記憶し
たり、ディバイスナンバデータDNと使用チャンネル数
データUCとに対応して重み係数データWPを記憶した
り、音量域と使用チャンネル数データUCとに対応して
重み係数データWPを記憶したりしてもよい。またこれ
ら重み係数データWPを、乗算または加算等の演算合成
をして、新たな別の重み係数データWPを作成してもよ
い。
【0086】これに応じ、ステップ32では、トーンナ
ンバごと、音域(音高)ごと、タッチデータごと、ディ
バイスごとまたは音量域ごとの使用チャンネル数データ
UCをカウントし、ステップ37〜40では、この使用
チャンネル数データUCに応じた重み係数データWPを
生成エンベロープ指定データメモリ31に書き込んでい
くことになる。また上記ディバイスナンバデータDNは
メロディ、コードまたはリズムの演奏パートを示すデー
タとしてもよい。
【0087】11.その他の実施例 図14〜図19はその他の実施例の発音処理のフローチ
ャートを示すものである。これらのフローチャートは、
図13のフローチャートのステップ37〜40に置き換
わるものである。
【0088】図14では、CPU5は、アサインメント
メモリ10の各チャンネルメモリエリア内のキーンナン
バデータKN及びサウンドグループナンバデータGNが
、上記キーオンイベントに係る楽音データと一致するも
のをサーチして、その割り当てチャンネル数をカウント
する(ステップ51)。そして、このカウント数に応じ
た重み係数データWPを図8の方の重み係数データテー
ブル20より読み出し(ステップ52)、生成エンベロ
ープ指定データメモリ31の対応するチャンネルメモリ
エリアに書き込む(ステップ53)。この後、このチャ
ンネルメモリエリアのサウンドグループナンバデータG
N及びキーナンバデータKNと同じサウンドグループナ
ンバデータGN及びキーナンバデータKNの記憶されて
いるすべてのチャンネルメモリエリアの重み係数データ
WPも、上記新たな重み係数データWPに書き換え(ス
テップ54)、リターンする。
【0089】なお、図8の重み係数データテーブル20
は、同一キーナンバに割り当てられているチャンネル数
のみに応じた重み係数データWPを記憶したり、同一サ
ウンドグループに割り当てられているチャンネル数のみ
に応じた重み係数データWPを記憶したり、同一ディバ
イスに割り当てられているチャンネル数のみに応じた重
み係数データWPを記憶したり、同一トーンナンバに割
り当てられているチャンネル数のみに応じた重み係数デ
ータWPを記憶したり、同一音域に割り当てられている
チャンネル数のみに応じた重み係数データWPを記憶し
たり、同一タッチデータ域に割り当てられているチャン
ネル数のみに応じた重み係数データWPを記憶したり、
同一音量域に割り当てられているチャンネル数のみに応
じた重み係数データWPを記憶したりしてもよい。また
これら重み係数データWPを、乗算または加算等の演算
合成をして、新たな別の重み係数データWPを作成して
もよい。
【0090】これに応じ、ステップ51では、同一キー
ナンバごと、同一サウンドグループごと、同一ディバイ
スごと、同一トーンナンバごと、同一音域ごと、同一タ
ッチデータ域ごとまたは同一音量域ごとの使用チャンネ
ル数データをカウントし、ステップ54では同じキーナ
ンバ、同じサウンドグループ、同じディバイス、同じト
ーンナンバ、同じ音域、同じタッチデータ域または同じ
音量域にも、上記重み係数データWPを書き込んでいく
ことになる。また上記ディバイスナンバデータDNはメ
ロディ、コードまたはリズムの演奏パートを示すデータ
としてもよい。
【0091】図15では、CPU5は、上記キーオンイ
ベントに係るサウンドグループナンバデータGNと同じ
サウンドグループナンバデータGNの記憶されているア
サインメントメモリ10の各チャンネルメモリエリアを
サーチし(ステップ61)、これらの中でキーナンバデ
ータKNのいちばん小さいものに係る重み係数データW
Pを「1.00」とし、キーナンバデータKNのいちば
ん大きいものに係る重み係数データWPを「0.90」
とし、他の重み係数データWPを「0.80」とし(ス
テップ62)、これら重み係数データWPを生成エンベ
ロープ指定データメモリ31の各対応チャンネルメモリ
エリアに書き込んで(ステップ63)、リターンする。
【0092】なお、キーナンバデータKNが最小または
最大のものから2番目、3番目…についても重み係数デ
ータWPを設定してもよい。この場合、重み係数データ
WPは、上述の音高の大小関係で設定するのではなく、
音量域(音量)の大小関係、トーンナンバTNの大小関
係、音域(オクターブデータ)の大小関係またはタッチ
データ域(タッチデータ)の大小関係に基づいて設定さ
れるようにしてもよい。
【0093】図16では、CPU5は、上記オンキーの
属するサウンドグループの設定音量、すなわちワーキン
グメモリ25の音量レジスタ26a〜26hのオンキー
の属するサウンドグループのレジスタに記憶されている
音量データVOLを重み係数データWPとし(ステップ
71)、この重み係数データWPを生成エンベロープ指
定データメモリ31の対応チャンネルメモリエリアに書
き込んで(ステップ72)、リターンする。この場合、
音量データVOLではなく、ラウドネスデータLOUD
に基づいて重み係数データWPを決定してもよい。
【0094】図17では、CPU5は、上記オンキーの
イニシャルタッチ、すなわち上記ステップ34でアサイ
ンメントメモリ10に書き込んだオンキーのイニシャル
タッチデータITを重み係数データWPとし(ステップ
73)、この重み係数データWPを生成エンベロープ指
定データメモリ31の対応チャンネルメモリエリアに書
き込んで(ステップ74)、リターンする。
【0095】図18では、CPU5は、オンキーの属す
るディバイスを示すディバイスナンバデータDNが「0
」のマニュアルディバイスであれば、重み係数データW
Pを「1.00」とし、「1」のミディディバイスであ
れば、重み係数データWPを「0.80」とし、「2」
のシーケンスディバイスであれば、重み係数データWP
を「0.90」とする(ステップ75)。そして、この
重み係数データWPを生成エンベロープ指定データメモ
リ31の対応するチャンネルメモリエリアに書き込んで
(ステップ76)、リターンする。
【0096】図19では、CPU5は、アサインメント
メモリ10の各チャンネルメモリエリアのキーナンバデ
ータKNをサーチし(ステップ77)、この各サーチキ
ーナンバデータKNが上記キーオンイベントに係るキー
ナンバデータKNから上下1オクターブ以内に、1つも
なければ重み係数データWPを「1.00」とし、1つ
あれば重み係数データWPを「0.90」とし、2つあ
れば重み係数データWPを「0.80」とし、3つ以上
あれば重み係数データWPを「0.70」とし(ステッ
プ78)、この重み係数データWPを生成エンベロープ
指定データメモリ31の対応するチャンネルメモリエリ
アに書き込んで(ステップ79)、リターンする。
【0097】なお、サーチキーナンバデータKNの存在
を検出する、キーオンイベントに係るキーナンバデータ
KNからの範囲は、上下1オクターブ以内に限られるも
のではない。この場合、重み係数データWPは、上述の
キーオンに係る楽音の音高と既にチャンネルに割り当て
られている楽音の音高との関係で設定するのではなく、
キーオンに係る楽音の音量と既にチャンネルに割り当て
られている楽音の音量との関係、キーオンに係る楽音の
トーンナンバTNと既にチャンネルに割り当てられてい
る楽音のトーンナンバTNとの関係、キーオンに係る楽
音の音域(オクターブデータ)と既にチャンネルに割り
当てられている楽音の音域(オクターブデータ)との関
係、キーオンに係る楽音のタッチデータ域(タッチデー
タ)と既にチャンネルに割り当てられている楽音のタッ
チデータ域(タッチデータ)との関係に基づいて設定さ
れるようにしてもよい。
【0098】上述のようにしてセットされる各重み係数
データWPは、同一または似た楽音の数が多いほど、値
が小さくなり、新たな楽音にチャンネルを明け渡しし易
くすることができるとともに、同じまたは似た楽音の数
が少ない楽音をできるだけ残しておくことができる。従
って、消音すると聴覚上それほど異和感のない楽音にチ
ャンネルを明け渡しし易くすることができるとともに、
消音すると聴覚上異和感のある楽音をできるだけ残して
おくことができ、聴覚上異和感のないチャンネル割り当
てを行うことができる。
【0099】上述の図13〜図19の処理で設定した各
重み係数データWPはそのままセットするのではなく、
ある定数を加算または乗算等の演算を施したものをセッ
トしたり、また、図13〜図19の処理で設定した各重
み係数データWPを相互に加算または乗算等の演算を施
したものをセットしてもよい。
【0100】本発明は上記実施例に限定されず、本発明
の趣旨を逸脱しない範囲で種々変更可能である。例えば
、第1最小レベル検出回路41、第2最小レベル検出回
路42、第3最小レベル検出回路43に送られるデータ
は、演算回路40からの修正エンベロープレベルデータ
MELではなく、エンベロープレベルメモリ32から読
み出されたエンベロープレベルデータELまたは、乗算
回路39からのエンベロープレベルデータELにラウド
ネスデータLOUDを乗算したものでもよい。
【0101】また、演算回路40へ送られるデータは、
エンベロープレベルメモリ32からのエンベロープレベ
ルデータELではなく、乗算回路39からのエンベロー
プレベルデータELにラウドネスデータLOUDを乗算
したものでもよい。
【0102】さらに、重み係数データWPは重み係数デ
ータテーブル20に記憶するものではなく、使用チャン
ネル数データ等から図7、図8に示す重み係数データテ
ーブル20に示した値を算出する演算式を記憶しておき
、プログラム演算処理により算出するようにしてもよい
。各重み係数データWPは「0.00」〜「1.00」
の値に限定されるものではなく、どのような値であって
もよい。
【0103】このほか、重み係数データWPを修正演算
する対象は、エンベロープレベルデータELそのもので
はなく、特願平1−42298に示されるエンベロープ
レベルをシュミレートしたデータであってもよい。また
、図2の電子楽器自体は、キーボード1を備えておらず
、外部接続されたキーボードよりミディインタフェース
9を通じて送られてくるデータのみに基づいて発音する
ものであってもよい。
【0104】
【発明の効果】以上詳述したように、本発明は、各チャ
ンネルに割り当てられているエンベロープ波形の異なる
各楽音のうち、対応する発音指示手段が操作中であるか
否かにかかわらず、エンベロープレベルの小さいものに
係るチャンネルをサーチして、新たな発音指示に係る楽
音を割り当てるようにした。従って、発音指示手段が操
作中の楽音が割り当てられているものについても、チャ
ンネルサーチの対象としているので、エンベロープレベ
ルの最も小さいものを確実に選び出すことができる。そ
して、エンベロープレベルをサーチの基準としているの
で、エンベロープ波形の異なる楽音が混在していても、
聴覚上異和感のないチャンネル割り当てを行うことがで
きる。
【図面の簡単な説明】
【図1】エンベロープ発生器14の回路図
【図2】電子
楽器の全体回路図
【図3】パネルスイッチ群3を示す図
【図4】アサインメントメモリ10をを示す図
【図5】
ワーキングメモリ25を示す図
【図6】生成エンベロー
プ指定データメモリ31、エンベロープレベルメモリ3
2及び修正エンベロープレベルメモリ33を示す図
【図7】重み係数データテーブル20を示す図
【図8】
重み係数データテーブル20(別の実施例)を示す図
【図9】図1の各部の信号波形のタイムチャート図
【図
10】各最小レベル検出回路41〜44を示す図
【図1
1】図10の各部の信号波形のタイムチャート図
【図1
2】全体処理のフローチャート図
【図13】発音処理の
フローチャート図
【図14】発音処理(別の実施例)の
フローチャート図
【図15】発音処理(別の実施例)の
フローチャート図
【図16】発音処理(別の実施例)の
フローチャート図
【図17】発音処理(別の実施例)の
フローチャート図
【図18】発音処理(別の実施例)の
フローチャート図
【図19】発音処理(別の実施例)の
フローチャート図
【図20】エンベロープ波形を示す図
【符号の説明】
1…キーボード、3…パネルスイッチ群、5…CPU、
6…RAM、7…ROM、9…ミディインタフェース、
10…アサインメントメモリ、11…トーンジェネレー
タ、14…エンベロープ発生器、20…重み係数データ
テーブル、21…サウンドグループスイッチ群、22…
音色スイッチ群、23…音量ボリューム、25…ワーキ
ングメモリ、26a〜26h…トーンナンバレジスタ、
27a〜27h…音量レジスタ、28a〜28d…使用
チャンネル数レジスタ、31…生成エンベロープ指定デ
ータメモリ、32…エンベロープレベルメモリ、33…
修正エンベロープレベルメモリ、41〜43…最小レベ
ル検出回路。

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】楽音の発音を指示する複数の発音指示手段
    と、この発音指示手段より少ない数の、同時に発音可能
    な最大発音数と同数の楽音発生チャンネルと、この楽音
    発生チャンネルに対し、上記発音指示手段の指示に基づ
    いて、エンベロープ波形の異なる楽音を割り当てるチャ
    ンネル割り当て手段と、このチャンネル割り当て手段に
    よって、各チャンネルに割り当てられている各楽音のう
    ち、対応する発音指示手段が操作中であるか否かにかか
    わらず、エンベロープレベルの小さい楽音が割り当てら
    れているチャンネルをサーチするサーチ手段と、このサ
    ーチ手段でサーチされたチャンネルに、上記発音指示手
    段の新たな発音指示に係る楽音を割り当てる割り当て制
    御手段とを備えたことを特徴とする電子楽器のチャンネ
    ル割り当て装置。
  2. 【請求項2】上記サーチ手段によってサーチされる楽音
    のエンベロープレベルは、チャンネル割り当ての優先度
    を示す重み係数データによって修正されていることを特
    徴とする請求項1記載の電子楽器のチャンネル割り当て
    装置。
  3. 【請求項3】上記サーチ手段は、サーチされるチャンネ
    ルに割り当てられている楽音のエンベロープがアタック
    状態にあるものは除外することを特徴とする請求項1記
    載の電子楽器のチャンネル割り当て装置。
  4. 【請求項4】上記重み係数データは、音量域(音量)、
    楽音発生元、音色、音域(音高)またはタッチデータ域
    (タッチデータ)に応じて設定されるデータであること
    を特徴とする請求項2記載の電子楽器のチャンネル割り
    当て装置。
  5. 【請求項5】上記重み係数データは、音量域(音量)、
    楽音発生元、音色、音域(音高)またはタッチデータ域
    (タッチデータ)ごとの割り当てチャンネル数に応じて
    設定されるデータであることを特徴とする請求項2記載
    の電子楽器のチャンネル割り当て装置。
  6. 【請求項6】上記重み係数データは、チャンネルに割り
    当てられている各楽音間の音量域(音量)関係、楽音発
    生元関係、音色関係、音域(音高)関係またはタッチデ
    ータ域(タッチデータ)関係に基づいて設定されるデー
    タであることを特徴とする請求項2記載の電子楽器のチ
    ャンネル割り当て装置。
  7. 【請求項7】上記重み係数データは、これからチャンネ
    ルに割り当てられる楽音と既にチャンネルに割り当てら
    れている楽音との間の音量域(音量)関係、楽音発生元
    関係、音色関係、音域(音高)関係またはタッチデータ
    域(タッチデータ)関係に基づいて設定されるデータで
    あることを特徴とする請求項2記載の電子楽器のチャン
    ネル割り当て装置。
JP2409577A 1990-12-28 1990-12-28 電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法 Pending JPH04233595A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2409577A JPH04233595A (ja) 1990-12-28 1990-12-28 電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2409577A JPH04233595A (ja) 1990-12-28 1990-12-28 電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法

Publications (1)

Publication Number Publication Date
JPH04233595A true JPH04233595A (ja) 1992-08-21

Family

ID=18518904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2409577A Pending JPH04233595A (ja) 1990-12-28 1990-12-28 電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法

Country Status (1)

Country Link
JP (1) JPH04233595A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6031173A (en) * 1997-09-30 2000-02-29 Kawai Musical Inst. Mfg. Co., Ltd. Apparatus for generating musical tones using impulse response signals
US6762357B2 (en) 2001-04-17 2004-07-13 Kawai Musical Instruments Mfg. Co., Ltd. Resonance apparatus, resonance method and computer program for resonance processing
JP2015125388A (ja) * 2013-12-27 2015-07-06 ヤマハ株式会社 電子楽器、プログラム及び発音音高選択方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63261395A (ja) * 1987-04-20 1988-10-28 松下電器産業株式会社 電子楽器
JPH01169497A (ja) * 1987-10-29 1989-07-04 Roorand Kk 電子楽器
JPH01315794A (ja) * 1988-03-10 1989-12-20 Roland Corp 電子楽器
JPH02220098A (ja) * 1989-02-22 1990-09-03 Kawai Musical Instr Mfg Co Ltd 電子楽器のチャンネル割り当て装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63261395A (ja) * 1987-04-20 1988-10-28 松下電器産業株式会社 電子楽器
JPH01169497A (ja) * 1987-10-29 1989-07-04 Roorand Kk 電子楽器
JPH01315794A (ja) * 1988-03-10 1989-12-20 Roland Corp 電子楽器
JPH02220098A (ja) * 1989-02-22 1990-09-03 Kawai Musical Instr Mfg Co Ltd 電子楽器のチャンネル割り当て装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6031173A (en) * 1997-09-30 2000-02-29 Kawai Musical Inst. Mfg. Co., Ltd. Apparatus for generating musical tones using impulse response signals
US6762357B2 (en) 2001-04-17 2004-07-13 Kawai Musical Instruments Mfg. Co., Ltd. Resonance apparatus, resonance method and computer program for resonance processing
JP2015125388A (ja) * 2013-12-27 2015-07-06 ヤマハ株式会社 電子楽器、プログラム及び発音音高選択方法

Similar Documents

Publication Publication Date Title
JP2645181B2 (ja) 電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法
JP2655905B2 (ja) 電子楽器のチャンネル割り当て装置
JP2664098B2 (ja) 電子楽器のペダル装置
JP5142363B2 (ja) 成分音合成装置及び成分音合成方法。
JPH04233595A (ja) 電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法
US5177314A (en) Timbre setting device for an electronic musical instrument
JP3156285B2 (ja) 電子楽器
JP2698942B2 (ja) 楽音発生装置
JP3436806B2 (ja) 楽音信号のエンベロープ制御装置
JP3673388B2 (ja) 楽音のチャンネル割り当て装置及び楽音のチャンネル割り当て方法
JPH08137469A (ja) 楽音信号の周波数特性制御装置
JPH1091160A (ja) 電子楽器の効果付与装置
JP3508139B2 (ja) デジタル信号処理プロセッサ
JP3121196B2 (ja) 電子楽器
JP2685419B2 (ja) 電子楽器のチャンネル割り当て装置及びチャンネル割り当て方法
JP4124434B2 (ja) デジタル音源付き電子楽器
JP3673387B2 (ja) 楽音のチャンネル割り当て装置及び楽音のチャンネル割り当て方法
JP3673386B2 (ja) 楽音のチャンネル割り当て装置及び楽音のチャンネル割り当て方法
JP3067145B2 (ja) エンベロープ発生制御装置、放音形態制御装置、エンベロープ発生制御方法及び放音形態制御方法
JPH04181997A (ja) 残響装置
JPH11282468A (ja) 楽音生成装置及び楽音生成方法
JPS6223093A (ja) 電子楽器
JP2000338974A (ja) 電子楽器におけるアサイン装置
JPH01319794A (ja) 電子楽器
JP2003044050A (ja) 楽音発生装置及び楽音発生処理のプログラム