(57)【要約】【課題】楽音の生成処理に要する時間を短縮して、演奏時のレスポンスに優れた演奏を行うことができる電子楽器、電子楽器の制御方法及び制御プログラムを提供する。【解決手段】押鍵時に取得される情報に基づいて低速大容量のフラッシュメモリに格納された波形データを、音源の高速小容量のＲＡＭに転送してから再生を行う楽音生成装置において、演奏者がリアルタイムに演奏するための鍵盤パートや、自動リズム機能で使用するリズム楽器のように演奏時のレスポンスの重要性が高いパート等、優先度（又は、使用頻度）の高い音色波形のみを、予め音色選択時あるいはリズム選択時に、フラッシュメモリからＲＡＭ、あるいは、音源ＬＳＩが直接再生を行うための波形バッファに転送を開始しておくように制御を行う。【選択図】図７
2019168644.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも第１音色と、再生される演奏データにて指定される第２音色と、を含む複数の音色のなかから前記第１音色を選択する音色選択処理と、
前記音色選択処理により選択された前記第１音色に応じた複数の第１波形データを、前記選択に応じて、第１記憶手段から第２記憶手段内における音色波形バッファへ転送する第１波形データ転送処理と、
前記演奏データにて指定される前記第２音色に応じた第２波形データを、前記再生に合わせて、前記第１記憶手段から前記第２記憶手段内における発振が割り当てられた波形発生装置に応じた波形バッファに転送する第２波形データ転送処理と、
前記第１音色に応じた楽音は前記音色波形バッファ内に記憶される前記複数の第１波形データに基づいて発音部に発音させるとともに、前記第２音色に応じた楽音は前記波形発生装置に応じた波形バッファ内に記憶される前記第２波形データに基づいて前記発音部に発音させる発音処理と、
を実行する電子楽器。
【請求項２】
前記第１波形データ転送処理による前記複数の第１波形データの転送中に、前記発音処理により発音させる前記複数の第１波形データ及び前記第２波形データのいずれかの波形データが前記第２記憶手段内に記憶されているか否かを判断する判断処理と、
前記判断処理により前記第２記憶手段内に記憶されていないと判断された場合に、前記第１波形データ転送処理による前記複数の第１波形データの転送を中断して、前記発音処理により発音させる波形データを優先して前記第１記憶手段から前記第２記憶手段に転送させる転送制御処理と、
を実行する請求項１に記載の電子楽器。
【請求項３】
前記転送制御処理は、前記発音処理により発音させる前記波形データを前記第１記憶手段から前記第２記憶手段に転送させてから、前記複数の第１波形データの転送を再開させる請求項２に記載の電子楽器。
【請求項４】
前記発音処理は、前記発音させる前記複数の第１波形データ及び前記第２波形データのいずれかの波形データが前記第２記憶手段内における或る波形発生装置に応じた波形バッファに記憶されている場合に、前記発振が割り当てられた波形発生装置に応じた波形バッファに前記波形データを複製して、前記複製された波形データに基づいて前記発音部に発音させる請求項１乃至３のいずれかに記載の電子楽器。
【請求項５】
電子楽器のコンピュータに、
少なくとも第１音色と、再生される演奏データにて指定される第２音色と、を含む複数の音色のなかから前記第１音色を選択する音色選択処理と、
前記音色選択処理により選択された前記第１音色に応じた複数の第１波形データを、前記選択に応じて、第１記憶手段から第２記憶手段内における音色波形バッファへ転送する第１波形データ転送処理と、
前記演奏データにて指定される前記第２音色に応じた第２波形データを、前記再生に合わせて、前記第１記憶手段から前記第２記憶手段内における発振が割り当てられた波形発生装置に応じた波形バッファに転送する第２波形データ転送処理と、
前記第１音色に応じた楽音は前記音色波形バッファ内に記憶される前記複数の第１波形データに基づいて発音部に発音させるとともに、前記第２音色に応じた楽音は前記波形発生装置に応じた波形バッファ内に記憶される前記第２波形データに基づいて前記発音部に発音させる発音処理と、
を実行させる方法。
【請求項６】
電子楽器のコンピュータに、
少なくとも第１音色と、再生される演奏データにて指定される第２音色と、を含む複数の音色のなかから前記第１音色を選択する音色選択処理と、
前記音色選択処理により選択された前記第１音色に応じた複数の第１波形データを、前記選択に応じて、第１記憶手段から第２記憶手段内における音色波形バッファへ転送する第１波形データ転送処理と、
前記演奏データにて指定される前記第２音色に応じた第２波形データを、前記再生に合わせて、前記第１記憶手段から前記第２記憶手段内における発振が割り当てられた波形発生装置に応じた波形バッファに転送する第２波形データ転送処理と、
前記第１音色に応じた楽音は前記音色波形バッファ内に記憶される前記複数の第１波形データに基づいて発音部に発音させるとともに、前記第２音色に応じた楽音は前記波形発生装置に応じた波形バッファ内に記憶される前記第２波形データに基づいて前記発音部に発音させる発音処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子楽器、電子楽器の制御方法及び制御プログラムに関する。
【背景技術】
【０００２】
近年の電子楽器やパーソナルコンピュータにおいては、管楽器や弦楽器等の原音の特徴により近い楽音を再現するために、多種多様な音源データ（波形データ）を利用した楽音生成方法が採用されている。例えば、電子楽器やパーソナルコンピュータ上で稼働するソフトウェア音源において、フラッシュメモリやハードディスク等の、アクセス速度が遅く記憶容量が大きい（低速大容量の）補助記憶装置に音源となる波形データを保存しておき、発音に使用する波形データのみを、アクセス速度が速く記憶容量が小さい（高速小容量の）波形メモリに転送して再生させるシステムが知られている。このようなシステムを採用した音源装置については、例えば特許文献１等に記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−７２８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような楽音生成方法においては、低速大容量の補助記憶装置から高速低容量の波形メモリへの波形データの転送に時間がかかるという問題を有している。特に、データサイズの大きな波形データを必要とする音色や、複数の波形データが組み合わされた音色の場合には、転送時間がさらに長くなるため、楽音を発音させることができず演奏に支障を来す場合があった。
【０００５】
そこで、本発明は、楽音の生成処理に要する時間を短縮して、演奏時のレスポンス（応答特性）に優れた演奏を行うことができる電子楽器、電子楽器の制御方法及び制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様の電子楽器は、
少なくとも第１音色と、再生される演奏データにて指定される第２音色と、を含む複数の音色のなかから前記第１音色を選択する音色選択処理と、
前記音色選択処理により選択された前記第１音色に応じた複数の第１波形データを、前記選択に応じて、第１記憶手段から第２記憶手段内における音色波形バッファへ転送する第１波形データ転送処理と、
前記演奏データにて指定される前記第２音色に応じた第２波形データを、前記再生に合わせて、前記第１記憶手段から前記第２記憶手段内における発振が割り当てられた波形発生装置に応じた波形バッファに転送する第２波形データ転送処理と、
前記第１音色に応じた楽音は前記音色波形バッファ内に記憶される前記複数の第１波形データに基づいて発音部に発音させるとともに、前記第２音色に応じた楽音は前記波形発生装置に応じた波形バッファ内に記憶される前記第２波形データに基づいて前記発音部に発音させる発音処理と、
を実行する。
【発明の効果】
【０００７】
本発明によれば、楽音の生成処理に要する時間を短縮して、演奏時のレスポンスに優れた演奏を行うことができる。
【図面の簡単な説明】
【０００８】
【図１】本発明に係る電子楽器の一実施形態を示す外観図である。
【図２】一実施形態に係る電子楽器に適用される音源の仕様の一例を説明するための図である。
【図３】一実施形態に係る電子楽器に適用されるハードウェアの構成例を示すブロック図である。
【図４】一実施形態に係る電子楽器に適用される音源ＬＳＩの内部構造の例を示すブロック図である。
【図５】一実施形態に適用される波形データの管理手法（その１）を説明する図である。
【図６】一実施形態に適用される波形データの管理手法（その２）を説明する図である。
【図７】一実施形態に適用されるＲＡＭ及びフラッシュメモリ上の情報とその転送処理の概要を説明する図である。
【図８】一実施形態に適用されるＲＡＭの波形領域を説明する図である。
【図９】一実施形態に係る電子楽器の制御方法のメインルーチンを示すフローチャートである。
【図１０】一実施形態に係る電子楽器の制御方法に適用される初期化処理を示すフローチャートである。
【図１１】一実施形態に係る電子楽器の制御方法のスイッチ処理に適用される音色、リズム選択処理を示すフローチャートである。
【図１２】一実施形態に係る電子楽器の制御方法の鍵盤処理に適用される押鍵処理を示すフローチャートである。
【図１３】一実施形態に係る電子楽器の制御方法の自動演奏処理に適用される発音イベント処理を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明に係る電子楽器、電子楽器の制御方法及び制御プログラムを実施するための形態について、図面を参照しながら詳しく説明する。
＜電子楽器＞
図１は、本発明に係る電子楽器の一実施形態を示す外観図である。ここでは、本発明に係る電子楽器の一実施形態として、電子鍵盤楽器（電子キーボード）を示して説明する。また、図２は、本実施形態に係る電子楽器に適用される音源の仕様の一例を説明するための図である。
【００１０】
本発明に係る電子楽器１００の一実施形態は、例えば図１（ａ）に示すように、楽器本体の一面側に、複数の鍵からなる鍵盤１０２と、音色選択ボタン１０４及びリズム選択ボタン１０６からなるスイッチ・パネルと、ピッチベンドやトレモロ、ビブラート等の各種モジュレーション（演奏効果）を付加するためのベンダ／モジュレーション・ホイール１０８と、音色やリズム、その他の各種設定情報を表示する表示部１１０と、を備えている。また、電子楽器１００は、図示を省略したが、演奏により生成された楽音を出力するスピーカを、例えば楽器本体の裏面部、側面部、又は背面部等に備えている。
【００１１】
このような電子楽器１００において、音色選択ボタン１０４は、例えば図１（ｂ）に示すように、ピアノ（図中「Piano」）やエレクトリックピアノ（図中「E.Piano」）、オルガン（図中「Organ」）、・・・等の各種の音色のカテゴリを選択するための波形選択操作子としてのボタンである。ここで、図１（ｂ）においては１６種類の音色のカテゴリを示した。また、リズム選択ボタン１０６は、例えば図１（ｃ）に示すように、ロック風（図中「ROCK1」）やポップ風（図中「POP1」）、ジャズ風（図中「JAZZ1」）、・・・等の各種のリズムのカテゴリを選択するための波形選択操作子としてのボタンである。ここで、図１（ｃ）においては１６種類のリズムのカテゴリを示した。電子楽器１００の演奏者（ユーザ）は、任意の音色選択ボタン１０４及びリズム選択ボタン１０６を押下することにより、１６×１６種類のリズム音色の中から任意のリズム音色のカテゴリを選択して演奏することができる。
【００１２】
ここで、本実施形態に係る電子楽器１００に適用される音源の仕様について説明する。本実施形態に適用される音源は、周知のＰＣＭ（パルス符号変調）波形再生方式を有しており、最大２５６音を同時に発音することができる。また、例えば図２に示すように、「０」〜「１５」の１６の音源パートを有し、１６種類の音色を同時に再生することができる。具体的には、音源パートの「０」は鍵盤に割り当てられ、音源パートの「１」〜「１５」は自動リズム機能に割り当てられている。特に、音源パート「１」はリズム音色を割り当てる専用のパートに定義されており、「１」以外の音源パートではメロディー音色が割り当てられる。
【００１３】
また、本実施形態に係る電子楽器１００に適用される音源は、１６のメロディー音色と４つのリズム音色を搭載している。メロディー音色の音色番号は「０」〜「１５」が割り当てられ、リズム音色の音色番号は「１６」〜「１９」が割り当てられている（後述する図５、図６参照）。
【００１４】
すなわち、本実施形態において鍵盤で演奏できるのは、１６種類のメロディー音色のみであり、これらのメロディー音色は図１（ｂ）に示した音色選択ボタン１０４を押下することにより選択される。なお、後述する自動リズム機能においては、搭載されているいずれの音色を使用することもできる。但し、図２に示したように、リズム音色は１６の音源パートのうち１パートのみで使用される。
【００１５】
また、本実施形態においては、図１（ｃ）に示したリズム選択ボタン１０６の上段に配置されたボタンを押下することにより８種類のリズムパターンが選択される。リズム選択ボタン１０６の下段には自動リズムの制御ボタンが配置されている。それぞれのリズムパターンは４種類のリズム音色のうちの１つを使用している。
【００１６】
図３は、本実施形態に係る電子楽器に適用されるハードウェアの構成例を示すブロック図である。図４は、本実施形態に係る電子楽器に適用される音源ＬＳＩの内部構造の例を示すブロック図である。
【００１７】
電子楽器１００は、例えば図３に示すように、ＣＰＵ２０２と、音源ＬＳＩ２０４と、ＤＭＡ（Direct Memory Access）コントローラ２１４と、Ｉ／Ｏ（入出力）コントローラ２１６とが、それぞれシステムバス２２６に直接接続されている。また、電子楽器１００は、ＲＡＭ２０８がメモリコントローラ２０６を介して、また、フラッシュメモリ２１２がフラッシュメモリコントローラ２１０を介して、それぞれシステムバス２２６に接続されている。また、電子楽器１００は、図１に示したＬＣＤ等の表示部１１０がＬＣＤコントローラ２１８及びＩ／Ｏコントローラ２１６を介してシステムバス２２６に接続され、また、鍵盤１０２と、音色選択ボタン１０４及びリズム選択ボタン１０６を有するスイッチ・パネルとがキー・スキャナ２２０及びＩ／Ｏコントローラ２１６を介してシステムバス２２６に接続され、また、ベンダ／モジュレーション・ホイール１０８がＡ／Ｄコンバータ２２２及びＩ／Ｏコントローラ２１６を介してシステムバス２２６に接続されている。また、システムバス２２６はバスコントローラ２２４に接続され、バスコントローラ２２４により上記の各構成間で送受信される信号やデータが制御される。また、音源ＬＳＩ２０４には、Ｄ／Ａコンバータ２２８及びアンプ２３０が接続され、音源ＬＳＩ２０４から出力されるデジタル楽音波形データがＤ／Ａコンバータ２２８によりアナログ楽音波形信号に変換され、さらにアンプ２３０で増幅された後に、出力端子又は図示を省略したスピーカから出力される。
【００１８】
このように、電子楽器１００は、機器全体がバスコントローラ２２４によって制御されるシステムバス２２６を中心に構成されている。具体的には、バスコントローラ２２４はシステムバス２２６に接続された上記の各構成における信号やデータの送受信時の優先順位を制御する。例えば、電子楽器１００において、ＲＡＭ２０８は、ＣＰＵ２０２と音源ＬＳＩ２０４によって共有されているが、発音を行う音源ＬＳＩ２０４は、データの欠落が許されないため、バスコントローラ２２４により、音源ＬＳＩ２０４とＲＡＭ２０８との送受信時が最も高い優先順位に設定されており、必要に応じてＣＰＵ２０２によるＲＡＭ２０８へのアクセスが制限される。
【００１９】
上記のような構成において、ＣＰＵ２０２は、機器全体の処理を行うメインプロセッサであって、ＲＡＭ２０８をワーク領域として使用しながら所定の制御プログラムを実行することにより、電子楽器１００の制御動作を実行する。特に、本実施形態においては、ＣＰＵ２０２は、後述する楽音生成方法を含む一連の制御動作を実行する。
【００２０】
ＲＡＭ（第２の記憶手段）２０８は、後述するフラッシュメモリ２１２に比較して、アクセス速度が高速（第２の読み出し速度）で記憶容量が小さい（第２の記憶容量；理解を助けるための一例として記載すると、例えば１６ＭＢ以下）高価なメモリデバイスであり、インターフェースであるメモリコントローラ２０６を介してシステムバス２２６に接続される。ＲＡＭ２０８は、フラッシュメモリ２１２から転送された波形データや制御プログラム、各種の固定データ等を配置する。特に、ＲＡＭ２０８は、後述する音源ＬＳＩ２０４において実行される楽音の生成処理に使用される波形データを展開する音源メモリ（上述した波形メモリに対応する）としての機能を有し、発音される楽音の波形データは必ず、ＲＡＭ２０８上に配置される。また、ＲＡＭ２０８は、ＣＰＵ２０２や音源ＬＳＩ２０４に内蔵されるＤＳＰ（デジタル信号処理回路）３０６のワーク領域としても使用される。ここで、ＲＡＭ２０８の記憶容量は、フラッシュメモリ２１２に比較して小さいため、ＲＡＭ２０８の記憶内容が逐次入れ替えられるが、特定の波形データについては、演奏者により音色が選択されて決定された時点で、フラッシュメモリ２１２からＲＡＭ２０８の専用の記憶領域に優先的に転送されるように制御される。本実施形態は、後述するように、ＲＡＭ２０８の記憶内容のうち、波形データの入れ替えに関する管理方法に特徴を有している。
【００２１】
フラッシュメモリ（第１の記憶手段）２１２は、アクセス速度が低速（第１の読み出し速度）で記憶容量が大きい（第１の記憶容量；理解を助けるための一例として記載すると、例えば２５６ＭＢ以上）安価なメモリデバイスであり、インターフェースであるフラッシュメモリコントローラ２１０を介してシステムバス２２６に接続される。フラッシュメモリ２１２は、音源ＬＳＩ２０４において実行される楽音の生成処理に使用される（又は、使用される可能性のある）全ての音色の波形データや、全ての音色のパラメータデータ、ＣＰＵ２０２や音源ＬＳＩ２０４のＤＳＰ３０６において実行される制御プログラムのプログラムデータ、音楽データや演奏者の設定データ等の各種の固定データを記憶している。ここで、フラッシュメモリ２１２に記憶された全ての波形データは、圧縮されており、例えば１語長が８ビットに設定されている。フラッシュメモリ２１２に記憶された波形データ等は、ＣＰＵ２０２がシーケンシャルに順次アクセスすることにより読み出されてＲＡＭ２０８に転送される。
【００２２】
なお、本実施形態においては、低速大容量で安価なメモリデバイスとして、フラッシュメモリ（例えば、ＮＡＮＤ型のフラッシュメモリを集積して構成されたＳＳＤ；Solid State Drive）を適用する場合を示すが、本発明はこれに限定されるものではなく、ハードディスクを適用するものであってもよい。ここで、フラッシュメモリやハードディスクは、電子楽器１００に対して着脱可能（すなわち、差し替え可能）な構成を有しているものであってもよい。また、データの高速転送が可能である場合には、大容量のメモリデバイスとして、特定のネットワーク上やインターネット上（すなわち、クラウド上）のハードディスクを適用するものであってもよい。
【００２３】
ＬＣＤコントローラ２１８は、表示部１１０の表示状態を制御するＩＣである。キー・スキャナ２２０は、鍵盤１０２や音色選択ボタン１０４及びリズム選択ボタン１０６等のスイッチ・パネルの状態を走査して、ＣＰＵ２０２に通知するＩＣである。Ａ／Ｄコンバータ２２２は、ベンダ／モジュレーション・ホイール１０８の操作位置を検出するＩＣである。これらのＬＣＤコントローラ２１８やキー・スキャナ２２０、Ａ／Ｄコンバータ２２２は、インターフェースであるＩ／Ｏコントローラ２１６を介してシステムバス２２６との間でデータや信号の入出力を行う。
【００２４】
音源ＬＳＩ（発音部）２０４は、後述する楽音生成処理を実行する専用のＩＣである。ここで、上記のフラッシュメモリ２１２は、ＣＰＵ２０２からはランダムアクセスが不可能であり、音源ＬＳＩ２０４からもアクセスが不可能であるため、フラッシュメモリ２１２に記憶されたデータ等は、再生前にランダムアクセスが可能なＲＡＭ２０８に一旦転送される。音源ＬＳＩ２０４は、ＣＰＵ２０２からの命令に基づいて、ＲＡＭ２０８に転送された波形データについて、対象となる音色の記憶領域から、演奏で指定された鍵の音高に対応する速度で波形データを読み出し、その読み出した波形データに対して演奏で指定されたベロシティの振幅エンベロープを付加し、その結果として得られる波形データを出力楽音波形データとして出力する。
【００２５】
音源ＬＳＩ２０４は、例えば図４に示すように、２５６個の波形データを同時に発振できる波形発生装置３０４を有する波形発生器３０２と、ＤＳＰ３０６と、ミキサ３０８と、バスインターフェース３１０と、を備え、波形発生器３０２、ＤＳＰ３０６及びミキサ３０８は、バスインターフェース３１０を介してシステムバス２２６に接続されて、ＲＡＭ２０８へのアクセスや、ＣＰＵ２０２との通信が行われる。
【００２６】
波形発生器３０２の各波形発生装置３０４は、ＲＡＭ２０８から波形データを読み出して音色の波形を再生する発振器であり、ＤＳＰ３０６は、音声信号に音響効果をもたらす信号処理回路である。ミキサ３０８は、波形発生器３０２からの信号を混合したり、ＤＳＰ３０６との間で信号を送受信したりすることにより全体の音声信号の流れを制御して、外部に出力する。すなわち、ミキサ３０８は、演奏に応じて波形発生器３０２の各波形発生装置３０４によりＲＡＭ２０８から読み出された波形データに対して、ＤＳＰ３０６によりＣＰＵ２０２から供給される楽音パラメータに応じたエンベロープを付加して、出力楽音波形データとして出力する。ミキサ３０８の出力信号は、図３に示したように、Ｄ／Ａコンバータ２２８及びアンプ２３０を介して所定の信号レベルのアナログ信号として、図示を省略したスピーカやヘッドホン等に出力される。
【００２７】
（ＲＡＭの管理方法）
上述した電子楽器１００において、音源メモリとして使用されるＲＡＭ２０８の管理方法（波形データの転送動作の仕様）は、次のような概要を有している。
【００２８】
本実施形態に示した電子楽器１００においては、図２に示したように、音源が１６パートから構成され、最大１６種類の音色を同時に発生することができる。そして、これらの音色のうち、演奏者による鍵盤演奏のメロディー音色（伴奏で使用する波形を含む）と、自動リズム機能で使用されるリズム音色（ロック風やポップ風、ジャズ風等の打楽器音）とを、演奏時のレスポンス（応答特性）において優先度（又は、使用頻度）の高い音色と位置づけて、これらの２音色の波形データについては、音色が決定（選択）された時点でＲＡＭ２０８上の専用の記憶領域への転送を開始する。演奏者による鍵盤演奏のメロディー音色は、図１（ｂ）に示した音色選択ボタン１０４の操作子を押下（演奏で指定）した際に更新され、自動リズム機能で使用されるリズム音色は、図１（ｃ）に示したリズム選択ボタン１０６の操作子を押下（選択）した際に更新される。上記のいずれの音色の選択時も先頭の波形番号から順番に波形データがＲＡＭ２０８に転送される。ここで、波形データの転送にはある程度の時間を要するため、転送中に未転送の音色波形を用いる演奏が行われた場合には、現在実行されている転送を中断して、演奏で必要とされている音色波形を優先的に転送するようにスケジュールを変更することにより、最小限の遅延で済むように制御を行う。具体的な手法については、後述する制御方法において詳しく説明する。
【００２９】
（波形データの管理手法）
次に、上述したＲＡＭ及びフラッシュメモリに格納される波形データについて詳しく説明する。
図５、図６は、本実施形態に適用される波形データの管理手法を説明する図である。図５（ａ）は、メロディー音色波形スプリットの説明図であり、図５（ｂ）は、メロディー音色波形ディレクトリの説明図であり、図６は、リズム音色波形ディレクトリの説明図である。
【００３０】
本実施形態においては、上述したように、演奏者が音色選択ボタン１０４やリズム選択ボタン１０６を押下することにより、１６種類のうちの任意の音色が選択されて演奏が行われる。このとき、鍵域やベロシティによって音量や音高のみならず音色が変化するのを再現するために、フラッシュメモリ２１２からＲＡＭ２０８に、音高又は音量ごとのメロディー音色やリズム音色の波形データが読み込まれる。
【００３１】
ここで、各メロディー音色は、例えば１音色当たり最大３２種類の波形、１６音色で最大５１２の波形を有し、その波形データはフラッシュメモリ２１２に記憶されている。それぞれの波形データのサイズの最大値は、例えば６４ＫＢに設定されている。一つのメロディー音色に対して、音高又は音量ごとに波形データを管理する手法としては、図５（ａ）に示すように、鍵盤１０２上で演奏者が演奏する鍵域（図中、横軸で示される複数の「Key」）ごとにそれぞれ波形データを割り当て、また、同じ鍵域であっても押鍵時の速さ（演奏の強さ）を示すベロシティ（図中、縦軸の「Velocity」）に応じてそれぞれ波形データを割り当てる音色波形スプリット構造が適用される。すなわち、メロディー音色波形スプリット構造を用いた波形データの管理手法においては、１音色の音域とベロシティ域を２次元的に分割し、それぞれのスプリット（分割）エリアに最大３２個の波形データが割り当てられている。この管理手法によれば、押鍵時の速さ（ベロシティ）とキー番号（鍵域）の２つのファクターから読み出すべき波形データが１つだけ決定される。
【００３２】
また、ＲＡＭ２０８やフラッシュメモリ２１２に記憶されるメロディー音色の波形データは、テーブル形式を有するメロディー音色波形ディレクトリ情報に基づいて管理される。メロディー音色波形ディレクトリ情報は、フラッシュメモリ２１２に記憶され、音色選択ボタン１０４が押下された際に、ＣＰＵ２０２によりフラッシュメモリ２１２から読み出されてＲＡＭ２０８に転送される。或るメロディー音色で楽音を演奏する際には、ＣＰＵ２０２がＲＡＭ２０８からそのメロディー音色に対応するメロディー音色波形ディレクトリ情報のデータを読み出して参照する。
【００３３】
具体的には、メロディー音色波形ディレクトリ情報のテーブルには、例えば図５（ｂ）に示すように、１つの「音色番号」のメロディー音色に含まれる波形データごとに、その波形データの「波形番号」と、その波形データが発音されるべき鍵域及びベロシティの範囲を示す「最小ベロシティ」、「最大ベロシティ」、「最低キー番号」及び「最高キー番号」と、ＲＡＭ２０８に転送された当該メロディー音色の記憶領域（波形領域）の先頭からのアドレスを示す「波形領域先頭からのアドレス」と、その波形データのデータサイズを示す「波形サイズ」との各項目値が登録されている。すなわち、メロディー音色波形ディレクトリ情報においては、各メロディー音色の各波形データについて、上記のメロディー音色波形スプリット構造においてどのような条件で分割されているかという鍵域、及び、ベロシティ域情報と、実際にフラッシュメモリ２１２の中でどのアドレスに配置されていて、波形サイズはどれだけかという情報とが、テーブル形式で規定されている。
【００３４】
また、各リズム音色は、例えば１音色当たり最大５０種類の波形、４音色で最大２００の波形を有し、その波形データはフラッシュメモリ２１２に記憶されている。ここで、上述したメロディー音色波形と同様に、それぞれの波形データのサイズの最大値は、例えば６４ＫＢに設定され、また、それぞれの波形データは、その波形を再生することができる１つの鍵域に割り当てられている。
【００３５】
ＲＡＭ２０８やフラッシュメモリ２１２に記憶されるリズム音色の波形データは、テーブル形式を有するリズム音色波形ディレクトリ情報に基づいて管理される。リズム音色波形ディレクトリ情報は、フラッシュメモリ２１２に記憶され、リズム選択ボタン１０６が押下された際に、ＣＰＵ２０２によりフラッシュメモリ２１２から読み出されてＲＡＭ２０８に転送される。或るリズム音色で楽音を演奏する際には、ＣＰＵ２０２がＲＡＭ２０８からそのリズム音色に対応するリズム音色波形ディレクトリ情報のデータを読み出して参照する。
【００３６】
ここで、リズム音色波形ディレクトリ情報のテーブルには、例えば図６に示すように、１つの「音色番号」のリズム音色に含まれる波形データごとに、その波形データの「波形番号」と、その波形データに関連付けられたリズム楽器の種類や割り当てられた鍵域等を示す「楽器名」、「キー番号」及び「グループ」と、ＲＡＭ２０８に転送された当該リズム音色の記憶領域（波形領域）の先頭からのアドレスを示す「波形領域先頭からのアドレス」と、その波形データのデータサイズを示す「波形サイズ」との各項目値が登録されている。すなわち、リズム音色波形ディレクトリ情報においては、各リズム音色の各波形データについて、どのような鍵域に割り当てられているかという情報と、実際にフラッシュメモリ２１２の中でどのアドレスに配置されていて、波形サイズはどれだけかという情報とが、テーブル形式で規定されている。
【００３７】
なお、リズム楽器においては、例えばドラムセットのオープンハイハットとクローズドハイハットのように、１つの楽器で異なる演奏音を収録しているものがある。この場合、同時には１つの演奏音しか発音させない（すなわち、１つの演奏音のみを発音させる）仕組みを実現する必要があり、そのための情報がリズム音色波形ディレクトリ情報の「グループ」という項目である。ここで、「グループ」が同じ波形データは最後（直近）に演奏された１つの演奏音以外は消音されることになる。
【００３８】
（ＲＡＭ及びフラッシュメモリ上の情報と転送処理）
次に、本実施形態に係る電子楽器に適用されるＲＡＭ及びフラッシュメモリ上の情報とその転送処理について詳しく説明する。
【００３９】
図７は、本実施形態に適用されるＲＡＭ及びフラッシュメモリ上の情報とその転送処理の概要を説明する図である。図８は、本実施形態に適用されるＲＡＭの波形領域を説明する図である。図８（ａ）は、メロディー音色波形バッファのディレクトリの内容を示す図であり、図８（ｂ）は、リズム音色波形バッファのディレクトリの内容を示す図であり、図８（ｃ）は、波形発生装置用波形バッファのディレクトリの内容を示す図である。
【００４０】
ＲＡＭ２０８上には、図７左方の「ＲＡＭ上の情報」に示すように、音色波形ディレクトリ、音色パラメータ、ＣＰＵプログラム、ＣＰＵデータ、ＣＰＵワーク、ＤＳＰプログラム、ＤＳＰデータ、ＤＳＰワークの各種データが展開される。また、フラッシュメモリ２１２上には、図７右方の「フラッシュメモリ上の情報」に示すように、音色波形ディレクトリ、メロディー、リズム音色パラメータ領域、ＣＰＵプログラム、ＣＰＵデータ、ＤＳＰプログラム、ＤＳＰデータの各種データが展開される。
【００４１】
ここで、電子楽器１００の演奏に伴って、音源ＬＳＩ２０４が波形読み出し動作を実行する際には、対象となる波形データがＲＡＭ２０８上に配置されている必要がある。そのため、例えば電子楽器１００の起動時に、図５（ｂ）、図６に示した各音色波形ディレクトリ情報、音色パラメータ、ＣＰＵプログラム、ＣＰＵデータ、ＤＳＰプログラム、ＤＳＰデータがフラッシュメモリ２１２からＲＡＭ２０８に転送される。
【００４２】
また、音源ＬＳＩ２０４による波形読み出し動作の対象となる波形データもＲＡＭ２０８上に配置されている必要があるが、ＲＡＭ２０８は、フラッシュメモリ２１２に比較して記憶容量が小さいため、フラッシュメモリ２１２に記憶されている全ての音色の波形データをＲＡＭ２０８上に配置することができない。
【００４３】
そこで、本実施形態においては、基本的には演奏により発音する際にフラッシュメモリ２１２から必要な波形データの読み出しを行い、発音チャンネルである波形発生装置３０４ごとにＲＡＭ２０８上に割り当てられた波形バッファに転送して、音源ＬＳＩ２０４により読み出し再生を行う。ここで、鍵盤１０２に割り当てられたメロディー音色、及び、自動リズム機能が使用するリズム音色は、図７に示したようにＲＡＭ２０８上に専用のバッファ領域を有しており、それぞれの音色の選択時にフラッシュメモリ２１２からＲＡＭ２０８の専用バッファに波形データが転送されて再生される。すなわち、ＲＡＭ２０８上の波形発生装置用波形バッファを使用することなく、上記の専用バッファに転送された波形データが再生される。
【００４４】
また、本実施形態においては、演奏時のＣＰＵ２０２の処理負担を軽減し、処理時間を削減するために、フラッシュメモリ２１２からＲＡＭ２０８への波形データの転送処理に先立って、押鍵時に指定された楽音の波形データが予めＲＡＭ２０８上に存在しているか否かを検索して判別する。該当する波形データが既にＲＡＭ２０８上に存在する場合には、ＣＰＵ２０２はフラッシュメモリ２１２からの波形データの転送を行わず、同じＲＡＭ２０８上の波形バッファ間で波形データの複製を行う。
【００４５】
図８（ａ）に示す「ＲＡＭメロディー音色波形バッファディレクトリ」は、図７に示した「ＲＡＭ上の情報」において、メロディー音色の波形データが格納されるＲＡＭ２０８のバッファ領域のディレクトリの内容を示すものである。このメロディー音色波形バッファディレクトリは、ＣＰＵ２０２のワーク領域（ＣＰＵワーク）内に作成され、その内容は音色選択時に更新される。
【００４６】
メロディー音色波形バッファディレクトリの各バッファ領域は、波形ごとに固定長６４ＫＢの容量が割り当てられ、３２種類のメロディー音色波形と各バッファ領域とが１対１の関係で対応するように、メロディー音色波形とバッファ領域の番号が設定されている。なお、この場合のメロディー音色波形バッファディレクトリにおける全バッファ領域の合計容量として、例えば４ＭＢが割り当てられている。メロディー音色波形バッファディレクトリの内容は、図８（ａ）に示すように、各メロディー音色波形０、１、２、・・・３１が格納されるバッファ領域ごとに、当該波形の属する音色番号、音色内波形番号、当該波形が配置されたメロディー音色波形領域の先頭からのアドレス情報、波形サイズが格納されている。
【００４７】
図８（ｂ）に示す「ＲＡＭリズム音色波形バッファディレクトリ」は、図７に示した「ＲＡＭ上の情報」において、リズム音色の波形データが格納されるＲＡＭ２０８のバッファ領域のディレクトリの内容を示すものである。このリズム音色波形バッファディレクトリは、ＣＰＵ２０２のワーク領域（ＣＰＵワーク）内に作成され、その内容はリズム選択時に更新される。
【００４８】
リズム音色波形バッファディレクトリの各バッファ領域は、波形ごとに固定長６４ＫＢの容量が割り当てられ、５０種類のリズム音色波形と各バッファ領域とが１対１の関係で対応するように、リズム音色波形とバッファ領域の番号が設定されている。なお、この場合のリズム音色波形バッファディレクトリにおける全バッファ領域の合計容量として、例えば８ＭＢが割り当てられている。リズム音色波形バッファディレクトリの内容は、図８（ｂ）に示すように、各リズム音色波形０、１、２、・・・４９が格納されるバッファ領域ごとに、当該波形の属する音色番号、音色内波形番号、当該波形が配置されたリズム音色波形領域の先頭からのアドレス情報、波形サイズが格納されている。
【００４９】
図８（ｃ）に示す「ＲＡＭ波形発生装置用波形バッファディレクトリ」は、図７に示した「ＲＡＭ上の情報」において、発音チャンネルである波形発生装置３０４が読み出そうとする波形データが格納されるＲＡＭ２０８のバッファ領域のディレクトリの内容を示すものである。この波形発生装置用波形バッファディレクトリは、ＣＰＵ２０２のワーク領域（ＣＰＵワーク）内に確保され、その内容は、演奏に伴って可変的に記憶され、楽音の発音時や消音時に更新される。
【００５０】
波形発生装置用波形バッファディレクトリの各バッファ領域は、波形発生装置３０４ごとに固定長６４ＫＢの容量が割り当てられ、２５６個の波形データを同時に発振できる波形発生装置３０４と波形バッファ０〜２５５とが１対１の関係で対応するように、波形発生装置３０４と波形バッファの番号が設定されている。なお、この場合の波形発生装置用波形バッファディレクトリにおける全バッファ領域の合計容量として、例えば１６ＭＢが割り当てられている。これにより、本実施形態の電子楽器１００においては、２５６の同時発音が可能な構成を有している。波形発生装置用波形バッファディレクトリの内容は、図８（ｃ）に示すように、各波形発生装置３０４に対応する波形バッファごとに、当該バッファ番号、波形データが読み込まれているか否かを示し、転送が完了した時点でセットされる転送済みフラグ、バッファに読み込まれている波形に関する情報である音色番号、音色内波形番号、波形サイズが格納されている。
【００５１】
（ＲＡＭ上の波形データの流用方法）
次に、本実施形態に適用されるＲＡＭ上の波形データの流用方法について説明する。
本実施形態に係る電子楽器１００において、演奏者による押鍵時には、ＣＰＵ２０２は、まず、キーアサイナによって押鍵された鍵に応じた波形データを発振させる音源ＬＳＩ２０４内の波形発生装置３０４を決定する。ここで、キーアサインは発振（発音）が停止している波形発生装置３０４から優先的に割り当てられる。
【００５２】
次いで、ＣＰＵ２０２は、押鍵時のベロシティと鍵域に基づいて、図５（ａ）に示したメロディー音色波形のスプリット情報、又は、リズム音色のキー割り当て情報から演奏中に指定された音高に応じた波形データの波形番号を特定し、該当する波形データが図７に示したＲＡＭ２０８上に存在しているか否かを調査する。ここで、ＣＰＵ２０２は、まず、ＲＡＭ２０８上のメロディー音色波形バッファ、もしくは、リズム音色波形バッファに該当する波形データが存在しているか否かを調査し、メロディー音色波形バッファ、もしくは、リズム音色波形バッファに該当する波形データが存在しない場合には、波形発生装置用波形バッファに存在しているか否かをさらに調査する。
【００５３】
該当する波形データがＲＡＭ２０８上のメロディー音色波形バッファ、もしくは、リズム音色波形バッファに存在している場合には、ＣＰＵ２０２は、ＲＡＭ２０８上の当該波形データを発音のための読み出し動作の対象とする。また、該当する波形データがメロディー音色波形バッファ、もしくは、リズム音色波形バッファに存在せず、波形発生装置用波形バッファに存在している場合には、ＣＰＵ２０２は、同一のＲＡＭ２０８内で、発音のために割り当てられた波形発生装置３０４に対応する波形バッファに当該波形データを複製する。これにより、フラッシュメモリ２１２からＲＡＭ２０８に波形データを転送する処理に比較して短時間で必要な波形データをＲＡＭ２０８上の割り当てられた波形発生装置３０４に対応する波形バッファに配置することができる。そして、発音のための波形データがＲＡＭ２０８上に存在し、割り当てられた波形発生装置３０４に対応する波形バッファの位置（アドレス）が確定した時点で、ＣＰＵ２０２は、音源ＬＳＩ２０４において発音のための読み出し動作を開始する。
【００５４】
なお、割り当てられた波形発生装置３０４に対応する波形バッファに既に当該波形データが存在している場合には、フラッシュメモリ２１２から波形データを転送したり、ＲＡＭ２０８内で波形データを複製したりする必要はなく、当該波形データが発音のための読み出し動作に使用される。一方、該当する波形データがメロディー音色波形バッファ、もしくは、リズム音色波形バッファに存在せず、さらに、波形発生装置用波形バッファにも存在していない場合には、ＣＰＵ２０２は、フラッシュメモリ２１２に記憶された該当する波形データをＲＡＭ２０８へ転送する。
【００５５】
＜電子楽器の制御方法＞
次に、本実施形態に係る電子楽器の制御方法（楽音生成方法）について、図面を参照して詳しく説明する。ここでは、上記の波形データの流用方法を適用した楽音生成方法を有する、電子楽器の制御方法全体について説明する。また、以下に示す一連の制御処理は、上述した電子楽器１００のＣＰＵ２０２及び音源ＬＳＩ２０４において、ＲＡＭ２０８に記憶された所定の制御プログラムを実行することにより実現されるものである。
【００５６】
（メインルーチン）
図９は、本実施形態に係る電子楽器の制御方法のメインルーチンを示すフローチャートである。
【００５７】
本実施形態に係る電子楽器１００の制御方法においては、まず、演奏者により電子楽器１００の装置電源がパワーオンされると、ＣＰＵ２０２は図９に示すメインルーチンを起動し、装置各部を初期化する初期化処理を実行する（ステップＳ９０２）。
【００５８】
次いで、初期化処理が完了すると、ＣＰＵ２０２は演奏者が音色選択やリズム選択、自動演奏の再生、停止等のボタン操作を行った際のスイッチ処理（ステップＳ９０４）、鍵盤１０２を弾いた際の押鍵や離鍵に対する鍵盤処理（ステップＳ９０６）、自動演奏の進行(発音イベントや消音イベントの発生)を行う自動演奏処理（ステップＳ９０８）の一連の処理動作を繰り返し実行する。
【００５９】
なお、図９に示したフローチャートにおいては図示を省略したが、ＣＰＵ２０２は上述した各処理動作（ステップＳ９０２〜Ｓ９０８）の実行中に、演奏モードが終了や中断したり、装置電源をパワーオフしたりする状態の変化を検出した場合には、メインルーチンを強制的に終了する。
【００６０】
以下、上述した各処理動作について、具体的に説明する。
（初期化処理）
図１０は、本実施形態に係る電子楽器の制御方法に適用される初期化処理を示すフローチャートである。
【００６１】
本実施形態に係る電子楽器の制御方法に適用される初期化処理においては、図１０に示すフローチャートのように、まず、ＣＰＵ２０２は、フラッシュメモリ２１２からメロディー音色波形ディレクトリ及びリズム音色波形ディレクトリをＲＡＭ２０８上に転送する（ステップＳ１００２）。
【００６２】
次いで、ＣＰＵ２０２は、フラッシュメモリ２１２からピッチやフィルター、音量の設定など発音に必要なメロディー、リズム音色パラメータをＲＡＭ２０８上に転送する（ステップＳ１００４）。次いで、ＣＰＵ２０２は、フラッシュメモリ２１２からＣＰＵプログラム、ＣＰＵデータ、さらに、ＤＳＰプログラム、ＤＳＰデータをＲＡＭ２０８上に順次転送する（ステップＳ１００６、Ｓ１００８）。そして、フラッシュメモリ２１２からＲＡＭ２０８への一連の転送動作が終了した場合には、ＣＰＵ２０２は、初期化処理を終了して、メインルーチンに戻る。
【００６３】
（スイッチ処理；第１波形データ転送処理）
図１１は、本実施形態に係る電子楽器の制御方法のスイッチ処理に適用される音色、リズム選択処理を示すフローチャートである。
【００６４】
演奏者が電子楽器１００に備えられたボタンやスイッチ類を操作した際に実行されるスイッチ処理（ステップＳ９０４）においては、ＣＰＵ２０２は、音色選択処理、又は、リズム選択処理を実行する。具体的には、ＣＰＵ２０２は、図１１に示すフローチャートのように、演奏者による音色選択ボタン１０４の押下操作により音色選択イベントが発生したか否かを判断し（ステップＳ１１０２）、音色選択イベントが発生したと判断した場合（ステップＳ１１０２のＹｅｓ）には、音色選択ボタン１０４により決定された音色番号とメロディー音色波形ディレクトリとにより決まる最大３２種類の波形データを、フラッシュメモリ２１２からＲＡＭ２０８上のメロディー音色波形バッファに転送する動作を開始する（ステップＳ１１０６）。
【００６５】
一方、音色選択イベントが発生していないと判断した場合には、ＣＰＵ２０２は、演奏者によるリズム選択ボタン１０６の上段に配置された８種類のボタンの押下操作によりリズム選択イベントが発生したか否かを判断する（ステップＳ１１０４）。リズム選択イベントが発生したと判断した場合（ステップＳ１１０４のＹｅｓ）には、ＣＰＵ２０２は、リズム選択ボタン１０６により選択されたリズムが使用しているリズム音色番号とリズム音色波形ディレクトリで決まる最大５０種類の波形データを、フラッシュメモリ２１２からＲＡＭ２０８上のリズム音色波形バッファに転送する動作を開始する（ステップＳ１１０８）。
【００６６】
なお、ＣＰＵ２０２は、音色選択イベント及びリズム選択イベントのいずれも発生していないと判断した場合（ステップＳ１１０２、Ｓ１１０４のＮｏ）には、スイッチ処理を終了して、メインルーチンに戻る。
【００６７】
（鍵盤処理；第２波形データ転送処理、発音処理、判断処理、転送制御処理）
図１２は、本実施形態に係る電子楽器の制御方法の鍵盤処理に適用される押鍵処理を示すフローチャートである。
【００６８】
演奏者が電子楽器１００に備えられた鍵盤１０２を操作した際に実行される鍵盤処理（ステップＳ９０６）においては、ＣＰＵ２０２は、当該鍵盤操作により押鍵イベントや離鍵イベントが発生したか否かをそれぞれ判断する。押鍵イベントが発生したと判断した場合には、ＣＰＵ２０２は、図１２に示すフローチャートのように、まず、キーアサイン処理により、音源ＬＳＩ２０４内の２５６個の波形データを同時に発振できる波形発生装置３０４のうちの一つの波形発生装置３０４を割り当てる（ステップＳ１２０２）。
【００６９】
次いで、ＣＰＵ２０２は、押鍵されたキー番号（鍵盤位置）とベロシティ（押鍵時の速さ）を取得し（ステップＳ１２０４）、これらの情報と鍵盤（図２に示した音源パート番号「０」）に設定されている音色番号に基づいて、図５（ｂ）に示したメロディー音色波形ディレクトリから対応する波形番号を取得する（ステップＳ１２０６）。
【００７０】
次いで、ＣＰＵ２０２は、ＲＡＭ２０８上のメロディー音色波形バッファに該当する波形番号の波形データが存在するか否かを確認する（ステップＳ１２０８）。メロディー音色波形バッファに該当する波形番号の波形データが存在する場合（ステップＳ１２０８のＹｅｓ）には、ＣＰＵ２０２は、先に割り当てられた波形発生装置３０４に対して、メロディー音色波形バッファの波形データを使用して発音を開始する（ステップＳ１２１０）。
【００７１】
ステップＳ１２０８において、メロディー音色波形バッファに該当する波形番号の波形データが存在しない場合（ステップＳ１２０８のＮｏ）には、ＣＰＵ２０２は、ＲＡＭ２０８上の波形発生装置用波形バッファに、該当する波形番号の波形データが既に存在するか否かを確認する（ステップＳ１２１２）。波形発生装置用波形バッファのいずれかに該当する波形番号の波形データが既に存在する場合（ステップＳ１２１２のＹｅｓ）には、ＣＰＵ２０２は、当該波形データが存在する波形装置用波形バッファの波形データを、先に割り当てられた波形発生装置３０４に対応付けられた波形バッファに複製する（ステップＳ１２１４）。
【００７２】
ステップＳ１２１２において、いずれの波形発生装置用波形バッファにも該当する波形番号の波形データが存在しない場合（ステップＳ１２１２のＮｏ）には、ＣＰＵ２０２は、上述したスイッチ処理（音色選択イベント発生）において開始、実行されていた、メロディー音色波形に対するフラッシュメモリ２１２からＲＡＭ２０８上のメロディー音色波形バッファへの波形データの転送を一旦中断する（ステップＳ１２１６）。このとき、ＣＰＵ２０２は、波形データの転送を再開できるように、ＲＡＭ２０８上のメロディー音色波形バッファに対してどこまで波形データの転送が終了したかを示す情報をＣＰＵワークに保存しておく。
【００７３】
次いで、ＣＰＵ２０２は、該当する波形番号の波形データをフラッシュメモリ２１２から先に割り当てられた波形発生装置用波形バッファに転送する（ステップＳ１２１８）。波形データの転送終了後、ＣＰＵ２０２は、ＣＰＵワークに保存しておいた情報に基づいて、メロディー音色波形に対するフラッシュメモリ２１２からＲＡＭ２０８上のメロディー音色波形バッファへの波形データの転送を再開する（ステップＳ１２２０）。
【００７４】
次いで、ＣＰＵ２０２は、先に割り当てられた波形発生装置３０４に対して、ステップＳ１２１４、又は、ステップＳ１２１８において波形発生装置用波形バッファに複製、又は、転送された波形データを使用して発音を開始する（ステップＳ１２２２）。そして、演奏者による鍵盤操作に基づく発音動作が行われたのち、ＣＰＵ２０２は、鍵盤処理を終了して、メインルーチンに戻る。
【００７５】
（自動演奏処理）
図１３は、本実施形態に係る電子楽器の制御方法の自動演奏処理に適用される発音イベント処理を示すフローチャートである。
【００７６】
電子楽器１００に備えられた自動演奏機能により実行される自動演奏処理（ステップＳ９０８）においては、ＣＰＵ２０２は、自動演奏の進行により発音イベントや消音イベントが発生したか否かをそれぞれ判断する。発音イベントが発生したと判断した場合には、ＣＰＵ２０２は、図１３に示すフローチャートのように、まず、キーアサイン処理により、音源ＬＳＩ２０４の２５６個の波形データを同時に発振できる波形発生装置３０４のうちの一つの波形発生装置３０４を割り当てる（ステップＳ１３０２）。
【００７７】
次いで、ＣＰＵ２０２は、発音イベントから音源パート番号、音色番号、キー番号とベロシティを取得し（ステップＳ１３０４）、取得した音源パート番号が「１」であるか「１」以外であるかの判別を行う（ステップＳ１３０６）。音源パート番号が「１」であると判別された場合には、ＣＰＵ２０２は、取得した音色番号、キー番号、ベロシティに基づいて、図６に示したリズム音色波形ディレクトリから対応する波形番号を取得する（ステップＳ１３０８）。
【００７８】
次いで、ＣＰＵ２０２は、ＲＡＭ２０８上のリズム音色波形バッファに該当する波形番号の波形データが存在するか否かを確認する（ステップＳ１３１０）。リズム音色波形バッファに該当する波形番号の波形データが存在する場合（ステップＳ１３１０のＹｅｓ）には、ＣＰＵ２０２は、先に割り当てられた波形発生装置３０４に対して、リズム音色波形バッファの波形データを使用して発音を開始する（ステップＳ１３１２）。
【００７９】
ステップＳ１３１０において、リズム音色波形バッファに該当する波形番号の波形データが存在しない場合（ステップＳ１３１０のＮｏ）には、ＣＰＵ２０２は、ＲＡＭ２０８上の波形発生装置用波形バッファに、該当する波形番号の波形データが既に存在するか否かを確認する（ステップＳ１３１４）。波形発生装置用波形バッファのいずれかに該当する波形番号の波形データが既に存在する場合（ステップＳ１３１４のＹｅｓ）には、ＣＰＵ２０２は、当該波形データが存在する波形装置用波形バッファの波形データを、先に割り当てられた波形発生装置３０４に対応付けられた波形バッファに複製する（ステップＳ１３１６）。
【００８０】
ステップＳ１３１４において、いずれの波形発生装置用波形バッファにも該当する波形番号の波形データが存在しない場合（ステップＳ１３１４のＮｏ）には、ＣＰＵ２０２は、上述したスイッチ処理（リズム選択イベント発生）において開始、実行されていた、リズム音色波形に対するフラッシュメモリ２１２からＲＡＭ２０８上のリズム音色波形バッファへの波形データの転送を一旦中断する（ステップＳ１３１８）。このとき、ＣＰＵ２０２は、波形データの転送を再開できるように、ＲＡＭ２０８上のリズム音色波形バッファに対してどこまで波形データの転送が終了したかを示す情報をＣＰＵワークに保存しておく。
【００８１】
次いで、ＣＰＵ２０２は、該当する波形番号の波形データをフラッシュメモリ２１２から先に割り当てられた波形発生装置用波形バッファに転送する（ステップＳ１３２０）。波形データの転送終了後、ＣＰＵ２０２は、ＣＰＵワークに保存しておいた情報に基づいて、リズム音色波形に対するフラッシュメモリ２１２からＲＡＭ２０８上のリズム音色波形バッファへの波形データの転送を再開する（ステップＳ１３２２）。
【００８２】
一方、ステップＳ１３０６において、音源パート番号が「１」以外であると判別された場合には、ＣＰＵ２０２は、取得した音色番号、キー番号、ベロシティに基づいて、図５（ｂ）に示したメロディー音色波形ディレクトリから対応する波形番号を取得する（ステップＳ１３２４）。次いで、ＣＰＵ２０２は、該当する波形番号の波形データをフラッシュメモリ２１２から先に割り当てられた波形発生装置用波形バッファに転送する（ステップＳ１３２６）。
【００８３】
次いで、ＣＰＵ２０２は、先に割り当てられた波形発生装置３０４に対して、ステップＳ１３１６、Ｓ１３２０、又は、Ｓ１３２６において波形発生装置用波形バッファに複製、又は、転送された波形データを使用して発音を開始する（ステップＳ１３２８）。そして、自動演奏処理における発音動作が行われたのち、ＣＰＵ２０２は、自動演奏処理を終了して、メインルーチンに戻る。
【００８４】
このように、本実施形態は、複数の音源パートを有し、同時に複数の音色を再生できるマルチパート構造を備え、押鍵時に取得される情報に基づいて低速大容量の記憶装置（フラッシュメモリ）に格納された波形データを、音源の高速小容量の記憶装置（ＲＡＭ）に転送してから再生を行う音源システム（楽音生成装置）を有している。このような音源システムにおいて、演奏者がリアルタイムに演奏するための鍵盤パートや、自動伴奏や自動演奏で使用するリズム楽器のように演奏時のレスポンスの重要性が高いパート等、優先度（又は、使用頻度）の高い音色波形のみを、予め音色選択時あるいはリズム選択時に、フラッシュメモリからＣＰＵが高速にアクセスできるＲＡＭ、あるいは、音源ＬＳＩが直接再生を行うための波形バッファに転送を開始しておくことにより、波形データの転送の高速化を図る。
【００８５】
これにより、本実施形態によれば、楽音の生成処理に要する時間を短縮して、演奏時のレスポンスに優れた演奏を行うことができる。すなわち、本実施形態によれば、発音のための操作を行った後にフラッシュメモリのような低速大容量の記憶装置から高速小容量の音源メモリに、発音に必要な波形データを転送して読み出す方式に比較して、演奏時にレスポンスが重視されるリズム音色や演奏者の鍵盤音色の発音に使用される波形データの転送時間を大幅に短縮することができる、もしくは、当該波形データの転送動作自体を不要とすることができる。したがって、記憶装置やＣＰＵ、システムバス等のハードウェアの持つ限られた転送能力や記憶容量を効率的に活用することができ、音楽的にレスポンス（応答特性）の優れた電子楽器を実現することができる。
【００８６】
なお、上述した実施形態においては、ＲＡＭ２０８上の波形データの流用方法として、フラッシュメモリ２１２からＲＡＭ２０８に波形データを転送する処理に先立って、発音の対象となる波形データが、ＲＡＭ２０８上の他の波形バッファに既に存在するか否かを調査し、存在する場合には、その波形バッファの波形データを、発音のため割り当てられた波形発生装置３０４に対応する波形バッファに複製した後、読み出して発音に使用する場合について説明した。本発明はこのような波形データを、実質的に間接的に読み出して流用する形態に限定されるものではなく、発音の対象となる波形データが、ＲＡＭ２０８上の他の波形バッファに既に存在する場合には、その波形バッファの波形データを、割り当てられた波形発生装置３０４により直接的に読み出して発音に使用するものであってもよい。
【００８７】
以上、本発明のいくつかの実施形態について説明したが、本発明は、上述した実施形態に限定されるものではなく、特許請求の範囲に記載された発明とその均等の範囲とを含むものである。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【００８８】
（付記）
［１］
少なくとも第１音色と、再生される演奏データにて指定される第２音色と、を含む複数の音色のなかから前記第１音色を選択する音色選択処理と、
前記音色選択処理により選択された前記第１音色に応じた複数の第１波形データを、前記選択に応じて、第１記憶手段から第２記憶手段内における音色波形バッファへ転送する第１波形データ転送処理と、
前記演奏データにて指定される前記第２音色に応じた第２波形データを、前記再生に合わせて、前記第１記憶手段から前記第２記憶手段内における発振が割り当てられた波形発生装置に応じた波形バッファに転送する第２波形データ転送処理と、
前記第１音色に応じた楽音は前記音色波形バッファ内に記憶される前記複数の第１波形データに基づいて発音部に発音させるとともに、前記第２音色に応じた楽音は前記波形発生装置に応じた波形バッファ内に記憶される前記第２波形データに基づいて前記発音部に発音させる発音処理と、
を実行する電子楽器。
【００８９】
［２］
前記第１波形データ転送処理による前記複数の第１波形データの転送中に、前記発音処理により発音させる前記複数の第１波形データ及び前記第２波形データのいずれかの波形データが前記第２記憶手段内に記憶されているか否かを判断する判断処理と、
前記判断処理により前記第２記憶手段内に記憶されていないと判断された場合に、前記第１波形データ転送処理による前記複数の第１波形データの転送を中断して、前記発音処理により発音させる波形データを優先して前記第１記憶手段から前記第２記憶手段に転送させる転送制御処理と、
を実行する［１］に記載の電子楽器。
【００９０】
［３］
前記転送制御処理は、前記発音処理により発音させる前記波形データを前記第１記憶手段から前記第２記憶手段に転送させてから、前記複数の第１波形データの転送を再開させる［２］に記載の電子楽器。
【００９１】
［４］
前記発音処理は、前記発音させる前記複数の第１波形データ及び前記第２波形データのいずれかの波形データが前記第２記憶手段内における或る波形発生装置に応じた波形バッファに記憶されている場合に、前記発振が割り当てられた波形発生装置に応じた波形バッファに前記波形データを複製して、前記複製された波形データに基づいて前記発音部に発音させる［１］乃至［３］のいずれかに記載の電子楽器。
【００９２】
［５］
電子楽器のコンピュータに、
少なくとも第１音色と、再生される演奏データにて指定される第２音色と、を含む複数の音色のなかから前記第１音色を選択する音色選択処理と、
前記音色選択処理により選択された前記第１音色に応じた複数の第１波形データを、前記選択に応じて、第１記憶手段から第２記憶手段内における音色波形バッファへ転送する第１波形データ転送処理と、
前記演奏データにて指定される前記第２音色に応じた第２波形データを、前記再生に合わせて、前記第１記憶手段から前記第２記憶手段内における発振が割り当てられた波形発生装置に応じた波形バッファに転送する第２波形データ転送処理と、
前記第１音色に応じた楽音は前記音色波形バッファ内に記憶される前記複数の第１波形データに基づいて発音部に発音させるとともに、前記第２音色に応じた楽音は前記波形発生装置に応じた波形バッファ内に記憶される前記第２波形データに基づいて前記発音部に発音させる発音処理と、
を実行させる方法。
【００９３】
［６］
電子楽器のコンピュータに、
少なくとも第１音色と、再生される演奏データにて指定される第２音色と、を含む複数の音色のなかから前記第１音色を選択する音色選択処理と、
前記音色選択処理により選択された前記第１音色に応じた複数の第１波形データを、前記選択に応じて、第１記憶手段から第２記憶手段内における音色波形バッファへ転送する第１波形データ転送処理と、
前記演奏データにて指定される前記第２音色に応じた第２波形データを、前記再生に合わせて、前記第１記憶手段から前記第２記憶手段内における発振が割り当てられた波形発生装置に応じた波形バッファに転送する第２波形データ転送処理と、
前記第１音色に応じた楽音は前記音色波形バッファ内に記憶される前記複数の第１波形データに基づいて発音部に発音させるとともに、前記第２音色に応じた楽音は前記波形発生装置に応じた波形バッファ内に記憶される前記第２波形データに基づいて前記発音部に発音させる発音処理と、
を実行させるプログラム。
【符号の説明】
【００９４】
１００    電子楽器
１０２    鍵盤
１０４    音色選択ボタン
１０６    リズム選択ボタン
２０２    ＣＰＵ
２０４    音源ＬＳＩ（発音部）
２０８    ＲＡＭ（第２記憶手段）
２１２    フラッシュメモリ（第１記憶手段）
３０４    波形発生装置
【図１】
2019168644.tif 000003
【図２】
2019168644.tif 000004
【図３】
2019168644.tif 000005
【図４】
2019168644.tif 000006
【図５】
2019168644.tif 000007
【図６】
2019168644.tif 000008
【図７】
2019168644.tif 000009
【図８】
2019168644.tif 000010
【図９】
2019168644.tif 000011
【図１０】
2019168644.tif 000012
【図１１】
2019168644.tif 000013
【図１２】
2019168644.tif 000014
【図１３】
2019168644.tif 000015