(57)【特許請求の範囲】
【請求項１】
発音体の非線形特性に基づいて励振信号を発生する励振手段と、共鳴体の伝送特性をシミュレートするために、この励振手段から出力される励振信号を所定時間遅延させながら繰り返し循環させて共鳴体の共振動作に対応した音高の楽音を生成するウエーブガイド手段と、を少なくとも有する楽音発生装置において、
前記励振手段は、
外部より供給される吹奏圧に対応する信号と前記ウエーブガイド手段の伝送復路を介してフィードバックされる反射圧力波に対応する信号との差を表す圧力差信号を算出する第１の演算手段と、
この第１の演算手段より供給される圧力差信号を、吹奏態様に応じた共振値及びカットオフ周波数に基づいてローパスフィルタリングするローパスフィルタ手段と、
このローパスフィルタ手段からの信号を非線形変換する非線形テーブル手段と、
この非線形テーブル手段からの信号と前記圧力差信号とを乗算して前記ウエーブガイド手段の伝送往路に供給する第２の演算手段と、
を有し、さらに前記非線形テーブル手段は、
前記発音体の非線形特性を記憶する記憶手段を有し、前記ローパスフィルタ手段からの信号を読み出しアドレスとし、当該読み出しアドレスの整数部に応じて前記記憶手段から前記当該非線形特性を参照読み出しして前記ローパスフィルタ手段からの信号を非線形出力信号に変換する変換手段と、
前記非線形特性を補間するための補間係数を記憶しておき、前記読み出しアドレスの小数部に応じて補間係数を読み出し、読み出した補間係数に従って前記非線形出力信号を補間して出力する補間手段と、
を具備することを特徴とする楽音発生装置。
【請求項２】
発音体の非線形特性に基づいて励振信号を発生する励振手段と、共鳴体の伝送特性をシミュレートするために、この励振手段から出力される励振信号を所定時間遅延させながら繰り返し循環させて共鳴体の共振動作に対応した音高の楽音を生成するウエーブガイド手段と、を少なくとも有する楽音発生装置において、
前記励振手段は、
外部より供給される吹奏圧に対応する信号と前記ウエーブガイド手段の伝送復路を介してフィードバックされる反射圧力波に対応する信号との差を表す圧力差信号を算出する第１の演算手段と、
この第１の演算手段より供給される圧力差信号を、吹奏態様に応じた共振値及びカットオフ周波数に基づいてローパスフィルタリングするローパスフィルタ手段と、
このローパスフィルタ手段からの信号を非線形変換する非線形テーブル手段と、
この非線形テーブル手段からの信号と前記圧力差信号とを乗算して前記ウエーブガイド手段の伝送往路に供給する第２の演算手段と、
を有し、さらに前記非線形テーブル手段は、
前記発音体の非線形特性を記憶する記憶手段を有し、前記ローパスフィルタ手段からの信号を読み出しアドレスとして、当該読み出しアドレス整数部ＩＮＴおよびアドレス小数部ＦＲＣを発生する一方、このアドレス整数部ＩＮＴの前後複数のアドレスＩＮＴ±ｎと、前記アドレス小数部ＦＲＣの前後複数のアドレスＦＲＣ±ｎとを発生し、前記アドレス整数部ＩＮＴおよびその前後複数のアドレスＩＮＴ±ｎに従って非線形特性を前記記憶手段から参照読み出し、それぞれ対応する複数の非線形出力信号を発生する非線形出力手段と、
前記非線形特性を補間する補間関数から求まる複数の補間係数を記憶しておき、前記アドレス発生手段が発生したアドレス小数部ＦＲＣおよびその前後複数のアドレスＦＲＣ±ｎに従って対応する補間係数をそれぞれ読み出し、読み出した各補間係数により前記複数の非線形出力信号を重み付け加算した信号を形成して出力する補間演算手段と、
を具備することを特徴とする楽音発生装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、クラリネット等の管楽器の発音メカニズムに基づいて楽音を発生する楽音発生装置に関する。
【０００２】
【従来の技術】
近年、自然楽器の発音メカニズムをシミュレートしたモデルを動作させ、これにより自然楽器の楽音を発生する装置が各種開発されており、管楽器の発音メカニズムをシミュレートするものとしては、例えば、特開平２−２９３８９８号公報に開示されている。
この種の装置によれば、管楽器のマウスピースおよびリードからなる部分の非線形動作をシミュレートする励振部と、管楽器の管部である共鳴管の伝送特性をシミュレートする管体部とで閉ループを形成し、この閉ループ中に励振部から吹奏圧に相当する励振信号を注入すると、閉ループで信号の循環が励起され、これにより共鳴管の共振動作に対応したピッチ（音高）の楽音信号が得られる。
【０００３】
【発明が解決しようとする課題】
さて、上述した従来の楽音発生装置では、マウスピースおよびリードからなる部分の非線形動作をシミュレートする非線形テーブルを備えている。この非線形テーブルは、管内圧力変化をリード振動により励起される上記励振信号に変換するものであり、マウスピースとリードとの間隙を通過する空気流による管内圧力変化を読み出しアドレスとして、リードの非線形的な変位に応じた振動で励起される圧力を発生するようにしている。
こうしたテーブル変換では、ＲＯＭなどに変換特性を記憶しておく訳であるが、楽音発生用信号処理では、処理精度の向上を図る為に入力アドレス長が１６ビットを超える場合が多く、そのため膨大な記憶容量を持つテーブルとなってしまうという弊害が出ている。
【０００４】
ところで、近年においては、上述した従来の楽音発生装置による自励振動型の音源と、周知の波形読み出し型の音源とを搭載し、発生すべき楽音の種類に応じていずれかの音源を用いるようにした装置も案出されつつある。その場合、自励振動型の音源も波形読み出し型の音源もいずれも「テーブル」あるいは「波形メモリ」を読み出す構成が必須になる。そこで、上述した弊害を鑑みてテーブル記憶容量あるいは波形メモリ記憶容量の低減を図る上、自励振動型や波形読み出し型の音源と共用可能な補間手段が待望されている。
【０００５】
そこで、本発明は、上述した事情に鑑みてなされたもので、テーブル記憶容量あるいは波形メモリ記憶容量の低減を図る上、自励振動型や波形読み出し型の音源と共用可能な補間手段を備える楽音発生装置を提供することを目的としている。
【０００６】
上記目的を達成するため、請求項１に記載の発明では、発音体の非線形特性に基づいて励振信号を発生する励振手段と、共鳴体の伝送特性をシミュレートするために、この励振手段から出力される励振信号を所定時間遅延させながら繰り返し循環させて共鳴体の共振動作に対応した音高の楽音を生成するウエーブガイド手段と、を少なくとも有する楽音発生装置において、前記励振手段は、外部より供給される吹奏圧に対応する信号と前記ウエーブガイド手段の伝送復路を介してフィードバックされる反射圧力波に対応する信号との差を表す圧力差信号を算出する第１の演算手段と、この第１の演算手段より供給される圧力差信号を、吹奏態様に応じた共振値及びカットオフ周波数に基づいてローパスフィルタリングするローパスフィルタ手段と、このローパスフィルタ手段からの信号を非線形変換する非線形テーブル手段と、この非線形テーブル手段からの信号と前記圧力差信号とを乗算して前記ウエーブガイド手段の伝送往路に供給する第２の演算手段と、を有し、さらに前記非線形テーブル手段は、前記発音体の非線形特性を記憶する記憶手段を有し、前記ローパスフィルタ手段からの信号を読み出しアドレスとし、当該読み出しアドレスの整数部に応じて前記記憶手段から前記当該非線形特性を参照読み出しして前記ローパスフィルタ手段からの信号を非線形出力信号に変換する変換手段と、前記非線形特性を補間するための補間係数を記憶しておき、前記読み出しアドレスの小数部に応じて補間係数を読み出し、読み出した補間係数に従って前記非線形出力信号を補間して出力する補間手段と、を具備することを特徴としている。
【０００７】
請求項２記載の発明では、発音体の非線形特性に基づいて励振信号を発生する励振手段と、共鳴体の伝送特性をシミュレートするために、この励振手段から出力される励振信号を所定時間遅延させながら繰り返し循環させて共鳴体の共振動作に対応した音高の楽音を生成するウエーブガイド手段と、を少なくとも有する楽音発生装置において、前記励振手段は、外部より供給される吹奏圧に対応する信号と前記ウエーブガイド手段の伝送復路を介してフィードバックされる反射圧力波に対応する信号との差を表す圧力差信号を算出する第１の演算手段と、この第１の演算手段より供給される圧力差信号を、吹奏態様に応じた共振値及びカットオフ周波数に基づいてローパスフィルタリングするローパスフィルタ手段と、このローパスフィルタ手段からの信号を非線形変換する非線形テーブル手段と、この非線形テーブル手段からの信号と前記圧力差信号とを乗算して前記ウエーブガイド手段の伝送往路に供給する第２の演算手段と、を有し、さらに前記非線形テーブル手段は、前記発音体の非線形特性を記憶する記憶手段を有し、前記ローパスフィルタ手段からの信号を読み出しアドレスとして、当該読み出しアドレス整数部ＩＮＴおよびアドレス小数部ＦＲＣを発生する一方、このアドレス整数部ＩＮＴの前後複数のアドレスＩＮＴ±ｎと、前記アドレス小数部ＦＲＣの前後複数のアドレスＦＲＣ±ｎとを発生し、前記アドレス整数部ＩＮＴおよびその前後複数のアドレスＩＮＴ±ｎに従って非線形特性を前記記憶手段から参照読み出し、それぞれ対応する複数の非線形出力信号を発生する非線形出力手段と、前記非線形特性を補間する補間関数から求まる複数の補間係数を記憶しておき、前記アドレス発生手段が発生したアドレス小数部ＦＲＣおよびその前後複数のアドレスＦＲＣ±ｎに従って対応する補間係数をそれぞれ読み出し、読み出した各補間係数により前記複数の非線形出力信号を重み付け加算した信号を形成して出力する補間演算手段と、
を具備することを特徴としている。
【０００９】
本発明では、発音励起操作に応じた読み出しアドレスを発生すると、発音体の非線形特性を記憶する変換手段が読み出しアドレスの整数部に応じて当該非線形特性を参照読み出しして前記発音励起操作を非線形出力信号に変換する一方、非線形特性を補間するための補間係数が記憶された補間手段では、読み出しアドレスの小数部に応じて補間係数を読み出し、読み出した補間係数に従って前記非線形出力信号を補間して前記励振信号を生成するので、非線形特性が格納されるテーブル容量を低減できる。
【００１０】
【発明の実施の形態】
本発明は、管楽器の発音メカニズムをシミュレートする楽音発生装置に適用され得る。以下では、発明の原理について述べた後、本発明の実施の形態である楽音発生装置を実施例とし、図面を参照して説明する。
【００１１】
Ａ．発明の原理
（１）発音メカニズム
実施例の説明に入る前に、本発明による管楽器（シングル・リード楽器）の発音メカニズムについて述べる。周知の通り、管楽器は空気柱を取囲む管と、空気柱に振動を生じさせる機構とを備え、管は共鳴体として動作し、空気振動を生じる機構は発音体として動作する。管楽器では、多くの場合、リードと呼ばれる弾性体の薄片を振動させて発音するようになっており、ここで、図１に示すシングル・リード楽器の断面構造を参照して発音メカニズムについて説明する。
【００１２】
マウスピースＭＰとリードＲＤとの間隙に吹奏圧Ｐを吹込むと、吹込んだ吹奏圧Ｐによって発生する正の圧力波はボアＢＯ（管体）を経てベルＢＬへ伝播する。この様子をインパルス応答として図示すると、図２のように、管長Ｌ、音速ｃとした場合、２Ｌ／ｃ，４Ｌ／ｃおよび６Ｌ／ｃで圧力ピークとなる定在波が生じるのが判る。
ところで、ベルＢＬは開放端だから、ボアＢＯ（管体）を経た圧力波の符号は反転して負となり、今度はベルＢＬ→ボアＢＯ→リードＲＤの順に伝播し、リードＲＤ間近の圧力ｐを低下させる。これにより、マウスピースＭＰとリードＲＤとの間隙（スリット）を流れる空気流速は上昇し、その時リードＲＤに作用するベルヌーイ力により当該リードＲＤが閉じられ、スリット幅が減少する。
【００１３】
このように、吹奏圧Ｐが加えられると、体積流量はある程度まで上昇するが、それに応じてスリット幅が徐々に減少し、ついにはスリットが閉じて体積流量がゼロとなる。リードＲＤが閉じると、リード直近は完全な閉管状態になり、この場合、ベルＢＬ→ボアＢＯの順に到来する圧力波はその符号が反転せずに透過して行く。
こうしてリード直近の圧力ｐがある程度まで上昇すると、今度はリードＲＤが開き、吹奏圧Ｐが加えられた状況に戻り、以後同様な繰り返しがなされる。この繰り返し挙動に関わるパラメータとしては、ボアＢＯやベルＢＬの形状、吹奏圧Ｐ、リードＲＤと吹奏者の唇とを合わせた弾性係数などで決る共振周波数Ｆｃや共振値Ｑの他、管体の伝播損失などが挙げられる。
【００１４】
吹奏圧Ｐとリード直近の圧力ｐとの圧力差に対する体積流量Ｆの関係は、凡そ図３に示す２次関数で表現し得る。リード楽器の物性は、リードＲＤの変位ｘをも考慮した場合、「流量Ｆ」→「圧力ｐ」→「変位ｘ」→「流量Ｆ」の順に変換されるフィードバックループとして捉えることができる。つまり、「吹奏圧Ｐ」から出発して「圧力ｐ（吹奏圧Ｐとリード直近の圧力ｐとの圧力差）」→「リードＲＤの変位ｘ」→「流量Ｆ」の順に変換される非線形特性と、「流量Ｆ」→「圧力ｐ（吹奏圧Ｐとリード直近の圧力ｐとの圧力差）」に変換される線形特性とで発音メカニズムが実現される訳である。
【００１５】
ここで、「吹奏圧Ｐ」から出発して「圧力ｐ（吹奏圧Ｐとリード直近の圧力ｐとの圧力差）」→「リードＲＤの変位ｘ」→「流量Ｆ」の順に変換される非線形特性、つまり、リードＲＤの非線形動作は、上述したように、図３に示す２次関数であるから、図４に図示する２次方程式Ｆ＝−ｐ（ｐ＋ａ）で近似することができる。但し、ｐ＜ａではＦ＝０とする。また、これは当然、非線形テーブルとして扱うこともできるし、上記近似式の（ｐ＋ａ）項をテーブル変換する方法も考えられる。
【００１６】
（２）信号処理アルゴリズム
次に、図５を参照して上述した発音メカニズムに基づきリード楽器の発音動作をシミュレートする信号処理アルゴリズムについて説明する。この図において、１は乗算器であり、後述する非線形テーブル部１０から出力される圧力ｐに、後述する加算器８の出力（−ｐ＋ａ）を乗算して吹奏体積速度（流量Ｆ）を発生する。Ｍはこの乗算器１の出力に比例定数ｇ１を乗算して出力する係数乗算器である。２はマウスピースとリードとの間隙における反射圧力波の散乱（反射および透過）をシミュレートする信号散乱ジャンクションであり、加算器２ａ，２ｃ、乗算器２ｅ，２ｂおよび遅延素子２ｄとからなる乗算格子で形成される。ここで、遅延素子２ｄは、入力される信号を１サンプル周期遅延して出力するものである。
【００１７】
３は共鳴管の伝送特性をシミュレートするウェーブガイドであり、構成要素４〜６から構成されている。４−１〜４−６は、それぞれウェーブガイド３の伝送往路に介挿されて共鳴管における空気圧力波の伝播遅延をシミュレートする遅延回路である。これら遅延回路４は、例えば、ＲＡＭなどの揮発性メモリを環状アドレッシングしたリングバッファで形成され、その書込みアドレスと読み出しアドレスとの相対差に応じた遅延時間を発生する。
遅延回路４は、図６に示すように、リングバッファ４ａに互いに異なる２つの読み出しアドレスａ，ｂをセット可能とし、かつ、このアドレスａ，ｂに対応する遅延時間にそれぞれ補間係数ｒ，１−ｒを乗算する乗算器４ｂ，４ｃと、これら乗算器４ｂ，４ｃの出力を加算する加算器４ｄとを備える。
【００１８】
上記構成による遅延回路４では、ノートオンタイミング毎に読み出しアドレスａ，ｂが交互にセットされるようになっており、例えば、図７に示すように、ノートオンタイミングｔ１において読み出しアドレスａがセットされ、これに応じた遅延時間Ｄａに対応するピッチで発音している時、乗算器６ｂには補間係数ｒとして「１」がセットされる一方、読み出しアドレスｂ側は使用されない。次に、新たなピッチへ音高変化させる過程において、補間係数ｒを徐々に「０」にしながら、ノートオンタイミングｔ２において新たな読み出しアドレスｂをセットすることで、先のピッチに対応する遅延時間Ｄａから現ピッチに対応する遅延時間Ｄｂに遅延補間されるようになっている。
【００１９】
次に、再び図５に戻り、信号処理アルゴリズムの説明を進める。図５において、５−１〜５−５は、それぞれ共鳴管において管の径が変化している箇所で発生する空気圧力波の散乱をシミュレートする信号散乱ジャンクションである。
信号散乱ジャンクション５は、図８に示すように、減算器５ａ、係数乗算器５ｂおよび加算器５ｃ，５ｄから構成される格子構造フィルタであり、図１０に図示するように、管の断面積がＳ１からＳ２に変化する際の圧力波の反射（ｐ１’，ｐ２’）および透過（ｐ１，ｐ２）をシミュレートする。なお、係数乗算器５ｂの乗算係数ｋは、上記断面積の値Ｓ１、Ｓ２に基づき、ｋ＝Ｓ１−Ｓ２／Ｓ１＋Ｓ２の関係で与えられる値である。
【００２０】
また、図９は、図８に図示した格子構造フィルタと同等のジャンクションであり、この場合、図８に示す構成のものに比して乗算器の数を１つ省略し得る。図８および図９に示すジャンクションの構成は、使用するＤＳＰ（ディジタル・シグナル・プロセッサ）の特性に応じていずれかを選択する。つまり、乗算回数を減らしたい場合には、図８に図示する構成のジャンクションを使用した方が有利であるし、一方、乗加算処理が早いタイプのＤＳＰであれば、図９に図示する構成のジャンクションを用いれば良い。
【００２１】
再び図５を参照して信号処理アルゴリズムの説明に戻る。図５において、６−１〜６−６は、それぞれウェーブガイド３の伝送復路に介挿され、１サンプリング周期遅延する遅延素子、７は管体終端の損失をシミュレートする乗算器である。加算器８は、ウェーブガイド３の復路を介してフィードバックされる反射圧力波と吹奏圧との圧力差（−ｐ＋ａ）を発生し、これを次段へ出力する一方、前述した乗算器１に供給する。９はリードＲＤ（図１参照）の共振特性をシミュレートするローパスフィルタ（以下、ＬＰＦと記す）である。
ＬＰＦ９は、例えば、図１１に図示するように、減算器９ａ，９ｂ、乗算器９ｃ，９ｅ，９ｉ、加算器９ｄ，９ｆおよび遅延素子９ｇ，９ｈからなるＩＩＲフィルタから構成され、吹奏態様に応じた共振値Ｑおよびカットオフ周波数Ｆｃが乗算器９ｃ，９ｅ，９ｉの係数として与えられ、これによりリードの自励振動モード等が定められる。
【００２２】
非線形テーブル部１０は、リードＲＤの非線形動作をシミュレートするものであり、図１２に図示する関係、すなわち、吹奏圧Ｐとリード直近の圧力との圧力差（−ｐ＋ａ）に対する圧力（反射圧力）ｐをテーブル記憶している。この非線形テーブル部１０は、図１３に示すように、構成要素１０ａ〜１０ｆから形成される。
ここで、図１３を参照して非線形テーブル部１０の構成について説明する。図において、１０ａは、例えばフラッシュメモリやＥＰＲＯＭなどのように、電気的に書き換え可能な不揮発性メモリで構成される非線形テーブルメモリであり、上述した通り、吹奏圧Ｐとリード直近の圧力との圧力差（−ｐ＋ａ）に対する反射圧力ｐをデータテーブルとして記憶している。１０ｂは補間係数メモリであり、図１４に図示される補間関数Ｊｎにより求まる補間係数を記憶する。
【００２３】
これらメモリ１０ａ，１０ｂには、吹奏圧Ｐに対応して生成されるアドレスＡＤの整数部ＩＮＴと小数部ＦＲＣとがそれぞれ供給される。１０ｃ−１はアドレスＡＤの小数部ＦＲＣに「１」を加算して小数部ＦＲＣ＋１を発生する加算器、１０ｃ−２は小数部ＦＲＣから「１」を減算して小数部ＦＲＣ−１を発生する減算器、１０ｃ−３は小数部ＦＲＣから「２」を減算して小数部ＦＲＣ−２を発生する減算器である。これにより、アドレスＡＤの小数部ＦＲＣに対応した補間係数ＩＰＣ１と、これに前後隣り合うアドレスの３つの補間係数ＩＰＣ２〜ＩＰＣ４とが小数部ＦＲＣ＋１，ＦＲＣ−１，ＦＲＣ−２に応じて補間係数メモリ１０ｂから読み出される。
【００２４】
一方、１０ｄ−１はアドレスＡＤの整数部ＩＮＴに「２」を加算して整数部ＩＮＴ＋２を発生する加算器、１０ｄ−２はアドレスＡＤの整数部ＩＮＴに「１」を加算して整数部ＩＮＴ＋１を発生する加算器、１０ｄ−３は整数部ＩＮＴから「２」を減算して整数部ＩＮＴを発生する減算器であり、上記小数部ＦＲＣ側と同様に、アドレスＡＤの整数部ＩＮＴに対応した反射圧力ｐ１と、これに前後前後隣り合うアドレスの３つの反射圧力ｐ２〜ｐ４とが整数部ＩＮＴ−１，ＩＮＴ＋１，ＩＮＴ＋２に応じて非線形テーブルメモリ１０ａから読み出される。
【００２５】
１０ｅ−１〜１０ｅ−４は乗算器であり、アドレスＡＤの整数部ＩＮＴ，ＩＮＴ−１，ＩＮＴ＋１，ＩＮＴ＋２に応じて非線形テーブルメモリ１０ａから読み出される反射圧力ｐ２〜ｐ４に対して、アドレスＡＤの小数部ＦＲＣ，ＦＲＣ＋１，ＦＲＣ−１，ＦＲＣ−２に応じて補間係数メモリ１０ｂから読み出される補間係数ＩＰＣ１〜ＩＰＣ４をそれぞれ互いに乗算して出力する。１０ｆはこれら乗算器１０ｅ−１〜１０ｅ−４の各出力を加算して補間された反射圧力ｐを発生する加算器である。
【００２６】
このように、本発明では、補間関数により導出される補間係数を記憶する補間係数メモリ１０ｂを設けると共に、読み出しアドレスを整数部と小数部とに分割し、アドレス整数部に従って非線形テーブルメモリ１０ａから読み出した複数のテーブル値（圧力ｐ）を、アドレス小数部に従って上記メモリ１０ｂから読み出した複数の補間係数に基づいて補間演算する構成を備える為、非線形テーブルメモリ１０ａのメモリ容量の低減を図ることが可能となっている。
【００２７】
以上説明した信号処理アルゴリズムでは、構成要素８，９，１０，１からなる励振部において吹奏圧Ｐが与えられると、先ず加算器８においてウェーブガイド３の復路を介して伝播して来る反射圧力との圧力差（−ｐ＋ａ）が生成されてＬＰＦ９に入力される一方、乗算器１に乗算係数として供給される。ＬＰＦ９では、吹奏態様に応じた共振値Ｑおよびカットオフ周波数Ｆｃに基づき、この圧力差（−ｐ＋ａ）にローパスフィルタリングを施してリードの自励振動モードに基づく管内圧力変化、つまり、マウスピースとリードとの間隙を通過する空気流による管内圧力変化を非線形テーブル部１０に与える。
【００２８】
非線形テーブル部１０では、管内圧力変化に対応した反射圧力ｐを上述した補間演算により求めて出力し、これが乗算器１において加算器８の出力（−ｐ＋ａ）と乗算されて吹奏体積速度（流量Ｆ）となる。次いで、この吹奏体積速度がマウスピースとエア・リードとの間隙における圧力波の透過／反射をシミュレートする信号散乱ジャンクション２を経てウェーブガイド３の伝送往路に入力される。ウェーブガイド３では、共鳴管の伝播遅延、管の径が変化する箇所での散乱および管端の反射損失とがシミュレートされる。この後、遅延素子→ジャンクション→遅延素子…というようにウェーブガイド３の伝送復路を辿り、再び加算器８にフィードバック入力される。
こうにして構成要素１〜１０からなる閉ループ中にデータの循環、すなわち、共振動作が行われている過程で、ウェーブガイド３の終端となる乗算器７から楽音信号が出力される。
【００２９】
ところで、構成要素８，９，１０，１からなる励振部は、図５に示す構成のみならず各種態様を採り得る。例えば、図１５に図示する構成は、最も簡易的に非線形特性をシミュレートするものであり、この場合、非線形テーブル部１０には管内圧力変化に対応した吹奏体積速度（流量Ｆ）を格納しておき、ＬＰＦ９の出力を流量Ｆに直接的に変換する簡易な構成となっている。
また、図１６に示す構成では、非線形テーブルに替えて加算器ＡＤＤおよび論理ゲートＧを設けて図４に示した２次方程式Ｆ＝−ｐ（ｐ＋ａ）をシミュレートするようにしている。ここで、論理ゲートＧは入力信号がゼロ以下である時にゼロ出力し、それ以外は入力信号をそのまま出力する励振部となる。
【００３０】
なお、所謂、エア・リードの非線形特性をシミュレートするには、図１７に示す構成が有効である。この場合、ウェーブガイド３の伝送復路を介してフィードバックされる反射圧力波を直接、ＬＰＦ９に供給する。ＬＰＦ９では、吹奏態様に応じた共振値Ｑおよびカットオフ周波数Ｆｃに基づき、この反射圧力波にローパスフィルタリングを施してエア・リードの自励振動モードに基づく流速分布変化を生成して非線形テーブル部１０に与える。非線形テーブル部１０では、管内を往来する反射圧力波に対して作用する流速分布の変化に応じて発生する圧力波をテーブル記憶することになり、ＬＰＦ９の出力に対応した圧力波を読み出す。読み出された圧力波は、乗算器１にて吹奏圧Ｐが乗算されて吹奏体積速度（空気流速）となる。
【００３１】
Ｂ．実施例の構成
（１）全体構成
次に、図１８を参照し、上に述べた信号処理アルゴリズムに基づき楽音を発生する実施例の全体構成について説明する。この図において、２０は押離鍵操作に応じたキーオン、キーオフ、ノートナンバ（音高）および押鍵速度に対応したベロシティ値などの演奏情報を発生する鍵盤である。２１は操作パネルに各種配設されるパネルスイッチであり、各種スイッチの操作に応じた操作信号を発生する。パネルスイッチ２１には、例えば、図１９に示すように、数値入力する際に操作されるテンキー２１ａ、カーソル移動する際に操作されるカーソルキー２１ｂの他、前述した非線形テーブルメモリ１０ａ（図１３参照）の内容などを編集する際に操作されるキーＥＤＩＴや、動作モードを遷移する際に操作されるキーＥＸＩＴ、入力確定する際に操作されるキーＥｎｔｅｒなどがある。
【００３２】
２２はＬＣＤパネルやＬＣＤ駆動回路等で構成される表示装置であり、後述するマイクロコンピュータ２３からバスＢを介して供給される表示制御信号に基づき、例えば、上記操作信号に応じたパネル設定状態などを表示する。マイクロコンピュータ２３は、例えば、ＣＰＵ、ＲＯＭおよびＲＡＭ等を同一チップ上に形成した所謂ワンチップマイコンであり、後述する動作により装置各部を制御する。２４はディジタル・シグナル・プロセッサ（以下、ＤＳＰと記す）であり、自身に内蔵されるマイクロプログラムに従って上述した信号処理アルゴリズムに基づき楽音形成する。
【００３３】
ＤＳＰ２４において実行される信号処理アルゴリズムは、マイクロコンピュータ２３からバスＢを介して供給される各種パラメータ（後述する）に基づき制御される。２５は前述した遅延回路４−１〜４−５および遅延素子６−１〜６−６として使用される遅延用のＲＡＭである。２６はＲＯＭであり、前述した非線形テーブルメモリ１０ａや補間係数メモリ１０ｂ（図１３参照）が設けられている。２７はＤＳＰ１４から出力される楽音出力をアナログ信号に変換して出力するＤ／Ａ変換器である。
【００３４】
（２）ＤＳＰ２４の機能構成
▲１▼概略構成
次に、図２０〜図２５を参照してＤＳＰ２４の機能構成について説明していく。まず図２０を参照してＤＳＰ２４の概略構成について述べる。この図において、３０はマイクロコンピュータ２３（以下、マイコン２３と略称する）側とデータ授受するマイコンインタフェース部（ＭＩＦ）である。３１はマイクロプログラムメモリ（ＭＰＲＡＭ）であり、前述した信号処理アルゴリズムの内容を規定するマイクロプログラムが記憶される。
【００３５】
このＭＰＲＡＭ３１に記憶されるマイクロプログラムは、上記ＭＩＦ３０を介してマイコン２３側から供給される制御信号に応じて順次読み出される。こうして読み出されるマイクロプログラムは、処理単位毎、すなわち命令セット毎にインストラクションレジスタ（ＩＲ）３２にストアされる。３３はプログラムデコーダ（ＰＤ）であり、ＩＲ３２から読み出される命令セットをデコードして制御信号Ｓｃを発生する。この制御信号Ｓｃに応じてＤＳＰ２４内部のレジスタ、乗算器および論理演算器の動作が制御される。
【００３６】
３４はＭＩＦ３０を介してマイコン２３側から供給される各種楽音パラメータ（吹奏圧Ｐ、補間係数ｒ、カットオフ周波数Ｆ等）を設定されたレートで目標値になるようにエンべロープ制御するエンベローパであり、その構成および概略動作については追って述べる。３５は補間器／外部ＲＡＭインタフェースである。この補間器／外部ＲＡＭインタフェース３５は、ＲＯＭ２６に設けられている非線形テーブルメモリ１０ａおよび補間係数メモリ１０ｂに対する読み出しアドレスを制御して非線形テーブル変換時の補間を行う一方、遅延回路として用いられているＲＡＭ２５の読み出しアドレスを制御して遅延制御するものであり、その詳細については後述する。
【００３７】
３６は上記補間器／外部ＲＡＭインタフェース３５にて補間処理されたパラメータを記憶するパラメータメモリ（ＰＲＡＭ）、３７はＤＳＰ２４内部で行われる演算結果等を一時記憶するワークメモリである。３８はバス、３９，４０は乗算されるデータが一時記憶される乗算用レジスタ、４１，４２は論理演算されるデータが一時記憶される論理演算用レジスタである。４３〜４５はセレクタ、４６は乗算器、４７は乗算器４６の出力を保持する乗算結果レジスタである。４８は論理演算器、４９は論理演算器４８の出力を保持する論理演算結果レジスタである。５０は上記論理演算結果レジスタ４９の出力をシフトあるいはクリップするシフター／クリッパー、５１はシフター／クリッパー５０の出力結果をストアする結果レジスタである。５２〜５３は出力レジスタ、５４はこれらレジスタ５２，５３の内容をシリアルデータに変換して出力するパラレル／シリアル変換器である。
【００３８】
▲２▼エンベローパ３４の構成
図２１はエンベローパ３４の構成を示すブロック図である。この図において、３４ａは、ＰＲＡＭ３６の出力あるいはＴＲＡＭ１の出力のいずれかを選択して次段へ供給するセレクタである。３４ｂはターゲットデータレジスタ（ＴＧＲ）であり、設定目標値となるパラメータがセットされる。３４ｃはレートデータレジスタ（ＲＴＲ）であり、パラメータ変化率を表わすレートデータがストアされる。３４ｄはカレントデータレジスタ（ＣＲＲ）であり、現在設定されているパラメータ値がストアされる。
【００３９】
３４ｅは上記ＴＧＲ３４ｂあるいはＲＴＲ３４ｃの出力のいずれかを選択して次段へ供給するセレクタである。３４ｆは上記セレクタ３４ｅの出力とＣＲＲ３４ｄの出力とを加算、減算あるいは大小比較する加減算比較器である。この加減算比較器３４ｆの動作は、前述した制御信号Ｓｃに応じて定まる。３４ｇは加減算比較器３４ｆが比較演算する際の比較結果フラグがストアされる比較結果フラグレジスタである。３４ｈは上記加減算比較器３４ｆの演算により生成されるパラメータ値（エンベロープ）を一時記憶する結果レジスタである。３４ｉは、この結果レジスタ３４ｈの出力、あるいは前述したＭＩＦ３０から供給される信号のいずれかを選択して出力するセレクタである。
【００４０】
上記構成によるエンベローパ３４では、図２２に示すタイミングでパラメータのエンベロープ制御結果を出力する。すなわち、基本クロックφに同期してＴＧＲ３４ｂに設定目標値Ｄ＿ｔａｒｇｅｔがセットされた時刻ｔ０から基本クロックφの１周期後の時刻ｔ１においてＣＲＲ３４ｄに現在値Ｄ＿Ｃｕｒｒｅｎｔがストアされる。
これにより、時刻ｔ２では、加減算比較器３４ｆにおいて設定目標値Ｄ＿ｔａｒｇｅｔと現在値Ｄ＿Ｃｕｒｒｅｎｔとが比較される一方、ＲＴＲ３４ｄにレートデータがセットされる。そして、加減算比較器３４ｆの比較結果に基づき、時刻ｔ３ではＣＲＲ３４ｄにストアされる現在値Ｄ＿Ｃｕｒｒｅｎｔに対してＲＴＲ３４ｃに格納されているレートデータに従ってレート加算、あるいはレート減算した結果をＥＶＲ３４ｈにセットするようにしている。
【００４１】
▲３▼補間器／外部ＲＡＭインタフェース３５の構成
次に、図２３を参照して補間器／外部ＲＡＭインタフェース３５の構成について説明する。図において、３５１は実数型のオフセットアドレスがストアされるアドレスメモリ（ＴＲＡＭ１）である。３５２は、バスＴＲから供給されるオフセットアドレス、あるいは上記ＴＲＡＭ１から読み出されるオフセットアドレスのいずれかを選択して次段へ供給するセレクタである。３５３は上記セレクタ３５２を介して供給される実数型のアドレス、すなわち、アドレス整数部およびアドレス小数部が格納されるアドレスレジスタ（ＴＸＲ）である。
【００４２】
３５４は前述したＭＩＦ３０から供給される整数型のアドレスがストアされるアドレスメモリ（ＴＲＡＭ２）であり、３５５はこのアドレスメモリ３５４から読み出される整数アドレスを一時記憶するアドレスレジスタ（ＴＲ）である。３５６は上記ＴＸＲ３５３あるいはＴＲ３５５から出力されるアドレス整数部のいずれかを選択して次段へ供給するセレクタである。３５７はセレクタであり、後述する演算結果レジスタ３５９の出力あるいはサンプリングサイクルカウンタ値ＳＣのいずれを選択して出力する。
【００４３】
３５８はセレクタ３５６の出力とセレクタ３５７の出力とに基づき指定アドレスに対して前後３つのアドレス整数部を発生する論理演算器である。演算結果レジスタ３５９には、論理演算器３５８が生成する指定アドレス（整数部）とこれに前後する３つのアドレス（整数部）が逐次ストアされる。３６０はこの演算結果レジスタ３５９から出力される指定アドレス（整数部）とこれに前後する３つのアドレス（整数部）を外部メモリアドレスＥＡＤＲとして格納される外部メモリアドレスレジスタである。
この外部メモリアドレスＥＡＤＲに基づき非線形テーブルメモリ１０ａ（図１３参照）から補間演算のためのテーブル値が読み出される。
【００４４】
３６１は上述したＴＸＲ３５３から出力されるアドレス小数部を一時記憶する小数部レジスタ（ＴＴＲ）である。３６２は加減算器であり、上記ＴＴＲ３６１に格納されるアドレス小数部に前後する３つのアドレス小数部を発生する。３６３は前述したＲＯＭ２６（図１８参照）に設けられる補間係数メモリであり、加減算器３６２から出力される隣り合う４つのアドレス小数部に応じて対応する補間係数を読み出す。３６４はこの補間係数メモリ３６３から順次読み出される補間係数を一時記憶する補間係数レジスタである。３６５は、上述した外部メモリアドレスＥＡＤＲに基づき非線形テーブルメモリ１０ａから読み出されるテーブル値ＥＤＡＴを一時記憶するレジスタである。
【００４５】
３６６は補間係数レジスタ３６４から出力される補間係数と、レジスタ３６５から出力されるテーブル値ＥＤＡＴとを乗算する乗算器である。３６７は乗算器３６６の出力と自己の出力とを加算して補間演算する加算器である。３６８は加算器３６７の補間結果を一時記憶する演算結果レジスタ、３６９は補間結果を保持する保持レジスタである。３７０は前述したバスＴＲを介して供給されるベロシティ値ｐを遅延用ＲＡＭ２５に書き込むために一時記憶するレジスタである。
【００４６】
結局、上記構成による補間器／外部ＲＡＭインタフェース３５では、図２４に示すタイミングで非線形テーブルメモリ１０ａから読み出したテーブル値を補間演算する。
すなわち、図１３に示すアドレス表記に合せて説明すれば、まずＴＸＲ３５３に読み出すべきアドレス整数部ＩＮＴがセットされると、次のクロックタイミングでは、論理演算器３５８の処理に基づきＡＲ３５９には順次、アドレス整数部ＩＮＴ−１，ＩＮＴ，ＩＮＴ＋１，ＩＮＴ＋２がセットされる一方、ＴＴＲ３６１に対応するアドレス小数部ＦＲＣがストアされる。ＴＴＲ３６１にアドレス小数部ＦＲＣがセットされると、加減算器３６２はアドレス小数部ＦＲＣ−２，ＦＲＣ−１，ＦＲＣ，ＦＲＣ＋１を順次発生する。
【００４７】
こうして非線形テーブルメモリ１０ａを読み出すためのアドレス整数部ＩＮＴ−１，ＩＮＴ，ＩＮＴ＋１，ＩＮＴ＋２と、補間係数メモリ１０ｂを読み出すためのアドレス小数部ＦＲＣ−２，ＦＲＣ−１，ＦＲＣ，ＦＲＣ＋１とが生成されると、これに応じて上記メモリ１０ａから逐次読み出されるテーブル値（圧力値）ｐ２，ｐ１，ｐ３およびｐ４がＥＩＲ３６５に順次セットされると共に、ＫＲ３６４では上記メモリ１０ｂから逐次読み出される補間係数ＩＰＣ２，ＩＰＣ１，ＩＰＣ３およびＩＰＣ４がセットされる。
そして、乗算器３６６および加算器３６７を介した補間演算によりＡＤＲ３６８には、補間演算結果として「ｐ２×ＩＰＣ２」，「ｐ２×ＩＰＣ２＋ｐ１×ＩＰＣ１」，「ｐ２×ＩＰＣ２＋ｐ１×ＩＰＣ１＋ｐ３×ＩＰＣ３」および「ｐ２×ＩＰＣ２＋ｐ１×ＩＰＣ１＋ｐ３×ＩＰＣ３＋ｐ４×ＩＰＣ４」が順次ストアされることになる。
【００４８】
これに対し、補間器／外部ＲＡＭインタフェース３５が遅延発生する際には、図２５に図示するように、ＴＲＡＭ２からのアドレス整数部と、サンプリングサイクルカウンタ値ＳＣとが論理演算器３５８において加算され、その結果がＡＲ３５９にストアされる。このアドレスにより遅延用ＲＡＭ２５から読み出されたデータがＥＩＲ３６５に与えられる。
また、書込みの場合はバスＴＲからＥＯＲ３７０に書き込むべきデータを予めセットしておき、同様なアドレス演算により生成される書込みアドレスがＡＤＲ３６８にセットされ、そのアドレスに従い遅延ＲＡＭ２５にＥＯＲ３７０のデータが書き込まれるようになる。
【００４９】
Ｃ．実施例の動作
次に、上記構成による実施例の動作について図２６〜図３２を参照して説明する。
（１）イニシャル処理
まず、本実施例である楽音発生装置に電源が投入されると、マイクロコンピュータ２３は、内部ＲＯＭに記憶されている制御プログラムを読み出してロードした後、図２６に示すイニシャル処理を実行してステップＳＡ１に処理を進める。ステップＳＡ１では、レジスタｃ＿ｆｌａｇに格納される制御フラグを「０」、レジスタｒ＿ｔａｒｇｅｔに格納される遅延補間係数目標値を「０」、吹奏息圧に相当する直流成分ＤＣを格納するレジスタｐ＿ｔａｒｇｅｔを「０」とするイニシャライズを行った後、割込みマスクを解除してイベント割込みが発生するまで待機する。なお、ここで言うイベント割込みとは、上述したパネルスイッチ１１のスイッチ操作に応じた割込みや、押離鍵操作に応じた割込みの他、一定周期毎に発生するタイマ割込みを指す。
【００５０】
（２）エディット処理
ここで、例えば、演奏に先立って楽音パラメータの内容を編集すべく、操作パネルに配設されるキーＥＤＩＴ（図１９参照）が操作されたとする。そうすると、このキーＥＤＩＴの操作に応じて発生するキーオンイベントに基づき、マイクロコンピュータ２３は、図２７に示すエディット処理ルーチンを起動してステップＳＢ１に処理を進める。
ステップＳＢ１では、スイッチ操作に応じてエディット指定されたパラメータの種類を判別する。ここで、楽音の立上がり形状を表わすアタックレートを更新する際には、ステップＳＢ２に処理を進め、新たに入力されたアタックレートをレジスタａｔｋ＿ｒａｔｅにセットする。
【００５１】
また、リリースレートを更新する際には、ステップＳＢ３に処理を進め、新たに入力されたリリースレートをレジスタｒｌｓ＿ｒａｔｅにセットする。さらに、発音音高を滑らかに変化させる際のポルタメントレートを更新する時には、ステップＳＢ４に処理を進め、新たに入力されたポルタメントレートをレジスタｐｌｔ＿ｒａｔｅにセットする。
そして、前述した非線形テーブルメモリ１０ａの内容を更新する場合には、ステップＳＢ５に処理を進めて当該テーブル１０ａを形成する全テーブル値を画面（ＬＣＤパネル）表示し、続く、ステップＳＢ６では、これら画面表示された全テーブル値の内、更新すべきテーブル値番号Ｎｏ．を入力、あるいはカーソルキー１１ｂの操作にて指定する。そして、次のステップＳＢ７では、この指定したテーブル値に対して新たに入力された値を、レジスタＮＬＴ［ＮＯ．］にセットして非線形テーブルの内容を更新する。
【００５２】
（３）ノートオン処理
こうして各種パラメータや非線形テーブルの内容を更新させてエディット処理を完了すると、マイクロコンピュータ２３は再び割込み待機状態となる。そして、この状態で操作者が演奏操作により鍵盤１０のいずれかの鍵を押鍵したとする。そうすると、この押鍵に応じて発生するキーオンイベントに基づき、マイクロコンピュータ２３は図２８に示すノートオン処理を実行してステップＳＣ１に処理を進める。
ステップＳＣ１では、押鍵された鍵のノートナンバと押鍵速度に対応するベロシティ値とをそれぞれレジスタＮｏｔｅ、レジスタＶｅｌにストアし、次のステップＳＣ２に処理を進める。
【００５３】
ステップＳＣ２では、レジスタｃ＿ｆｌａｇに格納される制御フラグが「０」、すなわち、先の発音音高から現発音音高へ変化させる場合に遅延補間するか否かを判断する。ここで、遅延補間しない時には、レジスタｃ＿ｆｌａｇに格納される制御フラグは「０」であるから、判断結果は「ＹＥＳ」となり、次のステップＳＣ３に処理を進める。ステップＳＣ３では、レジスタｒ＿ｔａｒｇｅｔに補間係数目標値として「１」をセットすると共に、レジスタＤ３ａに上記レジスタＮｏｔｅに格納されるノートナンバに対応した遅延時間を与える読み出しアドレスａをセットする。
つまり、レジスタＤ３ａには、前述した信号処理アルゴリズム（図５参照）における遅延回路４−３の読み出しアドレスａがセットされる。次いで、マイクロコンピュータ２３は、ステップＳＣ４に進み、レジスタｃ＿ｆｌａｇに格納される制御フラグを「１」にセットした後、後述するステップＳＣ７へ処理を進める。
【００５４】
一方、遅延補間する発音の場合、すなわち、先の発音音高に対応する遅延時間から現発音音高に対応する遅延時間に補間する時には、レジスタｃ＿ｆｌａｇに格納される制御フラグが「１」にセットされるから、上記ステップＳＣ２の判断結果は「ＮＯ」となり、ステップＳＣ５に進む。ステップＳＣ５では、レジスタｒ＿ｔａｒｇｅｔの遅延補間係数目標値を「０」とし、かつ、レジスタＤ３ｂにノートナンバ（音高）に対応した遅延時間を与える読み出しアドレスｂをセットする。
これにより、遅延回路４−３における遅延時間は図７に図示したように、遅延補間係数ｒが「１」から「０」へ連続的に変化することで内挿補間される。次いで、ステップＳＣ６では、遅延補間を完了したので、レジスタｃ＿ｆｌａｇに格納される制御フラグをゼロリセットする。
【００５５】
そして、この後、マイクロコンピュータ２３はステップＳＣ７に処理を進め、レジスタＦ＿ｔａｒｇｅｔにノートナンバ（音高）に対応した目標カットオフ周波数をセットする一方、レジスタｐｌｔ＿ｒａｔｅに格納されているポルタメントレートをレジスタＦ＿ｒａｔｅにストアする。また、レジスタＶｅｌに格納されているベロシティ値を吹奏息圧に相当する直流成分ＤＣとしてレジスタＰ＿ｔａｒｇｅｔにストアすると共に、レジスタａｔｋ＿ｒａｔｅに格納されているアタックレートをレジスタＰ＿ｒａｔｅに格納する。さらに、レジスタｐｌｔ＿ｒａｔｅに格納されているポルタメントレートをレジスタｒ＿ｒａｔｅにセットする。
【００５６】
なお、レジスタＦ＿ｔａｒｇｅｔに格納される目標カットオフ周波数は、図２９に図示するように、予めテーブル化されており、発音すべき音高（ノートナンバ）に応じて読み出されるようになっている。
結局、ステップＳＣ７では、発音すべき音高に応じた目標カットオフ周波数とその変化レート（ポルタメントレート）とがセットされ、また、押鍵速度に応じたベロシティ値（吹奏息圧に相当）とその変化レート（アタックレート）とがセットされる。さらに、遅延補間係数を「１」から「０」に変化させる際のレートにポルタメントレートを割り当てる。
【００５７】
（４）ノートオフ処理
次に、押鍵されていた鍵が離鍵されると、その離鍵操作に応じて発生するキーオフイベントに基づき、マイクロコンピュータ２３は図３０に示すノートオン処理を実行してステップＳＤ１に処理を進め、上記ノートオン処理においてレジスタＰ＿ｔａｒｇｅｔにストアされたベロシティ値（吹奏圧に相当）をゼロリセットすると共に、レジスタｒｌｓ＿ｒａｔｅに格納されているリリースレートをレジスタＰ＿ｒａｔｅにセットする。
【００５８】
（５）タイマ割込み処理
さて、マイクロコンピュータ２３では、一定周期毎にタイマ割込み処理を起動して図２１に示すステップＳＥ１〜ＳＥ３を実行する。すなわち、ステップＳＥ１では、遅延補間係数ｒが目標値に到達するようポルタメントレートに応じて増加あるいは減少させる。また、ステップＳＥ２では、カットオフ周波数Ｆをカットオフ周波数目標値となるようにポルタメントレートに応じて増加あるいは減少させる。さらに、ステップＳＥ３では、吹奏息圧に相当するベロシティ値までアタックレートに応じて増加あるいは減少させる。つまり、これらステップＳＥ１〜ＳＥ３は、いずれも与えられたレートに応じてパラメータを目標値になるよう制御するエンベロープ処理であり、その詳細を上記ステップＳＥ１における遅延補間係数発生処理を例に挙げて説明する。
【００５９】
いま、タイマ割込みイベントが発生して図３１に示すタイマ割込み処理が起動され、ステップＳＥ１に進むと、マイクロコンピュータ２３は、図３２に示す遅延補間係数発生処理を実行してステップＳＦ１に処理を進める。
ステップＳＦ１では、遅延補間係数ｒがレジスタｒ＿ｔａｒｇｅｔに格納される目標値に達したか否かを判断する。ここで、目標値に達したならば、判断結果は「ＹＥＳ」となり、この処理を完了するが、そうでない場合には、判断結果が「ＮＯ」となり、次のステップＳＦ２に処理を進める。
【００６０】
ステップＳＦ２では、現在の遅延補間係数ｒが目標値より小であるか否かを判断する。ここで、現在の遅延補間係数ｒが目標値より小さい時には、判断結果が「ＹＥＳ」となり、ステップＳＦ３に進む。ステップＳＦ３では、現在の遅延補間係数ｒに対してレジスタｒ＿ｒａｔｅに格納されるポルタメントレートを加算して係数値を更新する。つまり、音高変化に応じて遅延補間係数ｒをレート加算する訳である。
一方、上記ステップＳＦ２において補間係数ｒが目標値より大なる時には、判断結果が「ＮＯ」となり、ステップＳＦ４に処理を進める。
【００６１】
ステップＳＦ４では、現在の遅延補間係数ｒに対してレジスタｒ＿ｒａｔｅに格納されるポルタメントレートを減算することにより、音高変化に応じて遅延補間係数ｒがレート減算される。そして、次のステップＳＦ５に進むと、マイクロコンピュータ２３は、レート加算あるいはレート減算された遅延補間係数ｒをＤＳＰ１４側に転送する。これにより、ＤＳＰ２４では、マイクロコンピュータ２３から供給される遅延補間係数ｒに応じて遅延補間する。
【００６２】
このように、遅延補間係数発生処理においては、遅延補間係数ｒが目標値に達するまでレート加算あるいはレート減算されて更新され、その更新された遅延補間係数ｒが逐次ＤＳＰ１４側へ転送される。こうした処理は、前述したステップＳＥ２，ＳＥ３においても同様である。
すなわち、ステップＳＥ２が実行された場合には、図示されていないカットオフ周波数発生処理を実行し、カットオフ周波数Ｆが目標値に達するまでレート加算あるいはレート減算されて更新され、その更新されたカットオフ周波数が逐次ＤＳＰ１４側へ転送される。また、ステップＳＥ３が実行された場合には、図示されていないベロシティ発生処理を実行し、吹奏息圧に相当するベロシティ値が目標値に達するまでレート加算あるいはレート減算されて更新され、その更新されたベロシティ値が逐次ＤＳＰ１４側へ転送される。
【００６３】
こうして演奏操作に応じた各パラメータが生成されると、マイクロコンピュータ２３はこれら各パラメータをＤＳＰ２４側へ送出する。すると、ＤＳＰ２４では、前述した信号処理アルゴリズム（図５参照）に基づき、先ず励振部において吹奏圧Ｐを与え、これにより加算器８にてウェーブガイド３の復路を介して伝播して来る反射圧力との圧力差（−ｐ＋ａ）を生成し、これをＬＰＦ９に入力する一方、乗算器１に乗算係数として供給する。
そして、ＬＰＦ９では、吹奏態様に応じた共振値Ｑおよびカットオフ周波数Ｆｃに基づき、この圧力差（−ｐ＋ａ）にローパスフィルタリングを施してリードの自励振動モードに基づく管内圧力変化、つまり、マウスピースとリードとの間隙を通過する空気流による管内圧力変化を非線形テーブル部１０に与える。
【００６４】
前述したように、ＤＳＰ２４では、ＬＰＦ９の出力、つまり、管内圧力変化に相当する読み出しアドレスＡＤを発生する。このアドレスＡＤは、整数部ＩＮＴと小数部ＦＲＣとから形成され、これに基づいて前述した補間器／外部ＲＡＭインタフェース３５が小数部ＦＲＣ−２，ＦＲＣ−１，ＦＲＣおよびＦＲＣ＋１を発生すると共に、整数部ＩＮＴ−１，ＩＮＴ，ＩＮＴ＋１およびＩＮＴ＋２を発生する。そして、アドレスＡＤの小数部ＦＲＣ−２，ＦＲＣ−１，ＦＲＣおよびＦＲＣ＋１を補間係数メモリ１０ｂに与えて補間係数ＩＰＣ２〜ＩＰＣ４を読み出す一方、アドレスＡＤの整数部ＩＮＴ−１，ＩＮＴ，ＩＮＴ＋１およびＩＮＴ＋２に基づき非線形テーブルメモリ１０ａから圧力ｐ２〜ｐ４を読み出す。
【００６５】
こうして指定アドレスＡＤを含む前後４サンプルの圧力ｐ２〜ｐ４と、これに対応する補間係数ＩＰＣ２〜ＩＰＣ４とが読み出されると、ＤＳＰ２４は、圧力ｐ２〜ｐ４と補間係数ＩＰＣ２〜ＩＰＣ４とをそれぞれ互いに乗算して加算する補間演算を行って補間された反射圧力ｐを発生する。そして、非線形テーブル部１０が補間演算により生成した反射圧力ｐは、乗算器１において加算器８の出力（−ｐ＋ａ）と乗算されて吹奏体積速度（流量Ｆ）に変換され、この吹奏体積速度がマウスピースとエア・リードとの間隙における圧力波の透過／反射をシミュレートする信号散乱ジャンクション２を経てウェーブガイド３の伝送往路に入力される。
【００６６】
ウェーブガイド３では、共鳴管の伝播遅延、管の径が変化する箇所での散乱および管端の反射損失とがシミュレートされる。この後、遅延素子→ジャンクション→遅延素子…というようにウェーブガイド３の伝送復路を辿り、再び加算器８にフィードバック入力される。以後、構成要素１〜１０からなる閉ループ中において上述した過程を繰り返すデータ循環がなされることで共振動作し、この時ウェーブガイド３の終端部に設けられた乗算器７から指定音高で共振する楽音信号が抽出される。
【００６７】
以上説明したように、本発明では、補間関数により導出される補間係数を記憶する補間係数メモリ１０ｂを設けておき、読み出しアドレスの整数部に従って非線形テーブルメモリ１０ａから読み出した複数のテーブル値（圧力ｐ）を、アドレス小数部に従って上記メモリ１０ｂから読み出した複数の補間係数に基づいて補間演算するから、従来のように、膨大なテーブル容量を備える必要がなく、非線形テーブルメモリ１０ａのメモリ容量の低減を図り得るようになっている。
【００６８】
Ｄ．変形例
（１）構成
さて、上述した実施例では、所謂、自励振動型と呼ばれる方式で楽音形成する際の補間技術について言及したが、以下では、この自励振動型の音源に用いた補間手段を波形読み出し型の音源と共用可能した変形例について説明する。
すなわち、上述した実施例においてはリードの非線形特性をシミュレートするための非線形テーブルメモリ１０ａを補間読み出ししたが、変形例ではこの非線形テーブルメモリ１０ａに替えて波形メモリを設け、当該波形メモリから波形データを補間読み出しして楽音形成する。この場合の信号処理アルゴリムを図３３に示す。
【００６９】
図３３において、６０は後述する波形メモリ部６３の読み出しアドレス整数部および小数部が一時記憶されるテンポラリレジスタ（ＴＥＭＰＲ）である。６１は発音すべき音高に応じて上記ＴＥＭＰＲ６０に記憶されるアドレスをインクリメントするためのレートデータがストアされるインクリメントレジスタ（ＩＮＣＲ）である。６２は加算器であり、ＩＮＣＲ６１の値をＴＥＭＰＲ６０の出力にレート加算して再びＴＥＭＰＲ６０にフィードバック入力する。
波形メモリ部６３は、図１３に示した非線形テーブル部１０と同等な構成を備え、非線形テーブルメモリ１０ａを波形メモリ（図示略）に置換したものである。
【００７０】
すなわち、図１４に図示される補間関数Ｊｎにより求まる補間係数を記憶した補間係数メモリ１０ｂを備える一方、ＴＥＭＰＲ６０から供給されるアドレスの小数部ＦＲＣに「１」を加算して小数部ＦＲＣ＋１を発生する加算器１０ｃ−１、小数部ＦＲＣから「１」を減算して小数部ＦＲＣ−１を発生する減算器１０ｃ−２および小数部ＦＲＣから「２」を減算して小数部ＦＲＣ−２を発生する減算器１０ｃ−３を具備し、アドレスの小数部ＦＲＣに対応した補間係数ＩＰＣ１と、これに前後隣り合うアドレスの３つの補間係数ＩＰＣ２〜ＩＰＣ４とを小数部ＦＲＣ＋１，ＦＲＣ−１，ＦＲＣ−２に応じて補間係数メモリ１０ｂから読み出す構成となっている。
【００７１】
また、波形メモリに対しては、アドレスの整数部ＩＮＴに「２」を加算して整数部ＩＮＴ＋２を発生する加算器１０ｄ−１、アドレスＡＤの整数部ＩＮＴに「１」を加算して整数部ＩＮＴ＋１を発生する加算器１０ｄ−２および整数部ＩＮＴから「２」を減算して整数部ＩＮＴを発生する減算器１０ｄ−３を設け、上記小数部ＦＲＣ側と同様に、アドレスの整数部ＩＮＴに対応した波形データＷＤ１と、これに前後前後隣り合うアドレスの３つの波形データＷＤ２〜ＷＤ４とを整数部ＩＮＴ−１，ＩＮＴ＋１，ＩＮＴ＋２に応じて波形メモリから読み出す構成となっている。
【００７２】
さらに、アドレスの整数部ＩＮＴ，ＩＮＴ−１，ＩＮＴ＋１，ＩＮＴ＋２に応じて波形メモリから読み出される波形データＷＤ２〜ＷＤ４に対して、アドレスの小数部ＦＲＣ，ＦＲＣ＋１，ＦＲＣ−１，ＦＲＣ−２に応じて補間係数メモリ１０ｂから読み出される補間係数ＩＰＣ１〜ＩＰＣ４をそれぞれ互いに乗算して出力する乗算器１０ｅ−１〜１０ｅ−４と、これら乗算結果を加算して補間波形を出力する加算器１０ｆとを備えている。
ＬＰＦ９は、前述した自励振動型の信号処理アルゴリズムに適用されるものと同一であり、２次ＩＩＲフィルタから構成され、吹奏態様に応じた共振値Ｑおよびカットオフ周波数Ｆｃに基づきローパスフィルタリング係数が定められ、これに応じて波形形状が加工されて音色調整がなされ、さらにこのＬＰＦ９の出力が係数乗算器１に入力されてエンベープ係数ＥＮＶが乗算されて楽音形成される。
【００７３】
このように、上記実施例における補間技術は、従前の波形読み出し方式による音源と共用し得るので、例えば、実施例による自励振動型の音源と波形読み出し型の音源とを具備して発生すべき楽音の種類に応じてこれら音源を切換えて動作させる楽音発生装置を実現する場合、補間手段を共用し得るので、効率良い設計が可能となり、製品価格の低減を招致する要因とも成り得る訳である。なお、ポリフォニック発音する場合には、上述した補間手段を時分割使用すれば良い。
【００７４】
（２）動作
次に、上記信号処理アルゴリズムに基づく変形例の動作について説明する。なお、上述した信号処理アルゴリズムは、図１８と同一の構成であるから、ここでは詳細な構成については省略している。
▲１▼イニシャル処理
まず、変形例による楽音発生装置に電源が投入されると、マイクロコンピュータ２３は、内部ＲＯＭに記憶されている制御プログラムを読み出してロードした後、図３４に示すイニシャル処理を実行してステップＳＧ１に処理を進める。ステップＳＡ１では、レジスタＦに格納されるカットオフ周波数を「０」、レジスタＥＮＶに格納されるエンベロープ係数値を「０」とするイニシャライズを行った後、割込みマスクを解除してイベント割込みが発生するまで待機する。なお、ここで言うイベント割込みとは、押離鍵操作に応じた割込みの他、一定周期毎に発生するタイマ割込みがある。
【００７５】
▲２▼ノートオン処理
こうしてイニシャライズがなされた後、操作者が演奏操作すべく鍵盤１０のいずれかの鍵を押鍵したとする。そうすると、この押鍵に応じて発生するキーオンイベントに基づき、マイクロコンピュータ２３は図３５に示すノートオン処理を実行してステップＳＨ１に処理を進める。
ステップＳＨ１では、押鍵された鍵のノートナンバと押鍵速度に対応するベロシティ値とをそれぞれレジスタＮｏｔｅ、レジスタＶｅｌにストアし、次のステップＳＨ２に処理を進める。
【００７６】
ステップＳＨ２では、波形読み出し開始アドレスＳＡＤを上述したテンパラリレジスタ（ＴＥＭＰＲ）６０にセットし、続く、ステップＳＨ３では、ノートナンバに対応する周波数ナンバをインクリメントレジスタ（ＩＮＣＲ）６１にセットする。これにより、発音すべき音高に応じて読み出しアドレスＡＤが上記開始アドレスＳＡＤより逐次累算されていく。
そして、この後、マイクロコンピュータ２３は、ステップＳＨ４に処理を進め、レジスタＶｅｌに格納されているベロシティ値をレジスタＥＮＶ＿ｔａｒｇｅｔにストアして目標エンベロープ値に設定し、次いで、ステップＳＨ５では、レジスタＶｅｌに格納されているベロシティ値をレジスタＦ＿ｔａｒｇｅｔにストアして目標カットオフ周波数に設定する。
【００７７】
▲３▼ノートオフ処理
次に、押鍵されていた鍵が離鍵されると、その離鍵操作に応じて発生するキーオフイベントに基づき、マイクロコンピュータ２３は図３６に示すノートオン処理を実行してステップＳＪ１に処理を進め、上記ノートオン処理においてレジスタＥＮＶ＿ｔａｒｇｅｔおよびレジスタＦ＿ｔａｒｇｅｔに各々ストアされたベロシティ値をゼロリセットする。
【００７８】
▲４▼タイマ割込み処理
さて、マイクロコンピュータ２３では、一定周期毎にタイマ割込み処理を起動して図３７に示すステップＳＫ１〜ＳＫ２を実行する。まずステップＳＫ１では、カットオフ周波数Ｆを目標カットオフ周波数となるように所定レートに応じて増加あるいは減少させる。さらに、ステップＳＫ２では、エンベロープ係数ＥＮＶを目標値になるよう所定レートに応じて増加あるいは減少させる。このように、ステップＳＫ１〜ＳＫ２は、いずれも与えられたレートに応じてパラメータを目標値になるよう制御するエンベロープ処理であり、その詳細は前述した遅延補間係数発生処理（図３２参照）とほぼ同等であるので、その説明については省略する。
【００７９】
上述した一連の処理に基づき、演奏操作に応じた各パラメータが生成されると、マイクロコンピュータ２３はこれら各パラメータをＤＳＰ１４側へ送出する。すると、ＤＳＰ２４では、図３３に示す信号処理アルゴリズムに基づき、押鍵と共に発音音高に同期して累算進行する読み出しアドレスＡＤを発生し、波形メモリ部６３に供給する。
このアドレスＡＤは、整数部ＩＮＴと小数部ＦＲＣとから形成され、これに基づいて前述した補間器／外部ＲＡＭインタフェース３５が小数部ＦＲＣ−２，ＦＲＣ−１，ＦＲＣおよびＦＲＣ＋１を発生すると共に、整数部ＩＮＴ−１，ＩＮＴ，ＩＮＴ＋１およびＩＮＴ＋２を発生する。そして、アドレスＡＤの小数部ＦＲＣ−２，ＦＲＣ−１，ＦＲＣおよびＦＲＣ＋１を補間係数メモリ１０ｂに与えて補間係数ＩＰＣ２〜ＩＰＣ４を読み出す一方、アドレスＡＤの整数部ＩＮＴ−１，ＩＮＴ，ＩＮＴ＋１およびＩＮＴ＋２に基づき波形メモリ（図示略）から波形データＷＤ２〜ＷＤ４を読み出す。
【００８０】
こうして指定アドレスＡＤを含む前後４サンプルの波形データＷＤ２〜ＷＤ４と、これに対応する補間係数ＩＰＣ２〜ＩＰＣ４とが読み出されると、ＤＳＰ２４は、波形データＷＤ２〜ＷＤ４と補間係数ＩＰＣ２〜ＩＰＣ４とをそれぞれ互いに乗算して加算する補間演算を行って補間された波形データＷＤを発生する。そして、この波形データＷＤがＬＰＦ９においてエンベロープ処理されたカットオフ周波数Ｆに基づきローパスフィルタリングされ、さらにこのフィルタリング出力にエンベロープ乗算されて楽音形成される。
【００８１】
このように、変形例では、補間関数により導出される補間係数を記憶する補間係数メモリ１０ｂを有し、読み出しアドレスの整数部に従って波形メモリから読み出した複数の波形データを、アドレス小数部に従って上記メモリ１０ｂから読み出した複数の補間係数に基づいて補間演算するから、波形メモリ容量の低減を図りながらも、前に述べた自励振動型の音源と補間手段を共用し得る。
【００８２】
Ｅ．その他の例
次に、前述した実施例において、ウェーブガイド３の伝送往路に介挿されて共鳴管における空気圧力波の伝播遅延をシミュレートする遅延回路４の変形態様に基づくその他の例について説明する。
前述した実施例の遅延回路４は、図６に示したように、環状アドレッシングしたリングバッファ４ａにおいて互いに異なる２つの読み出しアドレスａ，ｂをセット可能とし、かつ、このアドレスａ，ｂに対応する遅延時間Ｄａ，Ｄｂにそれぞれ補間係数ｒ，１−ｒを乗算する乗算器４ｂ，４ｃと、これら乗算器４ｂ，４ｃの出力を加算する加算器４ｄとを備えて遅延時間Ｄａから遅延時間Ｄｂに直線補間するものであるが、これに替えて、図３８に示す態様の遅延回路１００を構成する。
【００８３】
図３８において、１０１は環状アドレッシングされるリングバッファ４ａであり、ＲＡＭ等で構成され、４つの読み出しアドレスａ〜ｄをセット可能としている。１０２は減算器であり、読み出しアドレスａに対応する遅延時間Ｄａから読み出しアドレスｂに対応する遅延時間Ｄｂを減算して（Ｄａ−Ｄｂ）を発生する。１０３は乗算器であり、減算器１０２の出力に遅延補間係数ｒを乗算してｒ・（Ｄａ−Ｄｂ）を発生する。１０４は、この乗算器１０３の出力に遅延時間Ｄｂを加算してｒ・Ｄａ＋（１−ｒ）・Ｄｂとなる遅延補間出力ｏｕｔ１を発生する加算器である。このように、構成要素１０１〜１０４は前述した遅延回路４と同様に遅延補間係数ｒに応じて遅延時間Ｄａから遅延時間Ｄｂに内挿補間する。
【００８４】
次に、１０５は減算器であり、読み出しアドレスｃに対応する遅延時間Ｄｃから読み出しアドレスｄに対応する遅延時間Ｄｄを減算して（Ｄｃ−Ｄｄ）を発生する。１０６は係数乗算器であり、減算器１０２の出力にアドレス小数部ＦＲＣを乗算する。１０７は、この乗算器１０６の出力に遅延時間Ｄｄを加算して遅延補間出力ｏｕｔ２を発生する加算器である。１０８は書込みアドレスｉｎ＿ａｄｄｒｅｓｓに対して中心遅延時間を表わすデータＤｔを加算する加算器である。１０９は加算器１０８の出力にＬＦＯ（低周波発振器）出力を加算する加算器である。この加算器１０９から出力されるアドレス信号の小数部ＦＲＣが上述した係数乗算器１０６の乗算係数として供給され、一方、整数部ＩＮＴが読み出しアドレスｃとしてリングバッファ１０１に与えられる。また、この整数部ＩＮＴは、加算器１１０において「１」が加算され、読み出しアドレスｄとしてリングバッファ１０１に与えられる。
【００８５】
上記構成によれば、書込みアドレスｉｎ＿ａｄｄｒｅｓｓに対して中心遅延時間を表わすデータＤｔが加算され、さらにＬＦＯの値が加算された読み出しアドレスｃと、このアドレスｃに「１」を加算した読み出しアドレスｄとの２種類のアドレスが生成される。そして、読み出しアドレスｃに対応する遅延時間Ｄｃから読み出しアドレスｄに対応する遅延時間Ｄｄを減算して（Ｄｃ−Ｄｄ）を発生し、これにアドレス小数部ＦＲＣを乗算する一方、その乗算結果に遅延時間Ｄｄを加算することで直線補間された遅延補間出力ｏｕｔ２が出力される。
【００８６】
こうした遅延回路１００を前述した信号処理アルゴリズム（図５参照）に適用させる場合には、図３９に示す構成となる。なお、この図において、図５に示す各部と共通する要素には同一の番号を付し、その説明を省略する。
この場合、遅延回路１００−１〜１００−６からそれぞれ出力される遅延補間出力ｏｕｔ１，ｏｕｔ２は乗算器１２０，１２３にて所定係数が乗算された後、出力ｏｕｔ１系統および出力ｏｕｔ２系統の系統毎に加算器１２１，１２４にて加算され、さらに、ウェーブガイド３の終端点から抽出した信号を、加算器１２２，１２５にてそれぞれ系統別に加え合わせる。
【００８７】
このようにすることで、加算器１２２，１２５の各出力ｏｕｔ１，ｏｕｔ２からは各種遅延時間が異なる複数の楽音が出力されるので、周知のコーラス効果を付与し得る。
また、タップをさらに増やすことでアンサンブル効果も得ることが可能になる。さらに、各遅延回路１００−１〜１００−６の各出力ｏｕｔ１，ｏｕｔ２だけを楽音として抽出すれば、ビブラート効果を得ることも可能である。さらに、ＬＦＯ出力を重畳させる為、モジュレーション効果も付与し得る。
【００８８】
以上のように、本発明によれば、補間関数により導出される補間係数を記憶する補間係数メモリ１０ｂを設けておき、読み出しアドレスの整数部に従って非線形テーブルメモリ１０ａから読み出した複数のテーブル値（圧力ｐ）を、アドレス小数部に従って上記メモリ１０ｂから読み出した複数の補間係数に基づいて補間演算するから、従来のように、膨大なテーブル容量を備える必要がなく、非線形テーブルメモリ１０ａのメモリ容量の低減を図り得るようになっている。また、この非線形テーブルメモリ１０ａに替えて、波形メモリを設ければ、波形メモリ読み出し方式に適用でき、波形メモリ容量の低減を図りながらも、前に述べた自励振動型の音源と補間手段を共用し得る。
【００８９】
なお、上述した実施例では、マイクロコンピュータ２３側が演奏操作に応じた各種パラメータを生成し、ＤＳＰ２４側がこの各種パラメータに基づき信号処理アルゴリズムを動作させて楽音形成しているが、これに替えて、全ての処理をマイクロコンピュータ２３側に任せる構成としても良い。
また、本実施例による自励振動型の音源において、楽音発生当初のみに圧力変化に相当する初期励振信号を非線形テーブル部１０に入力させる構成としても良い。このようにすることで、信号が閉ループを一巡する前に楽音形成し得るので、発音遅延を解消し得る。
【００９０】
加えて、本発明の要旨は、管楽器音を発生する装置にのみ適用し得るものではなく、例えば、ギターなどの撥弦楽器やバイオリンなどの擦弦楽器の発音メカニズムをシミュレートするものにも適用可能であることは言うまでもない。要は、非線形特性をテーブル読み出しする信号処理アルゴリズムを用いた装置であれば、どのような態様であっても本発明の要旨が適用し得る。
【００９１】
【発明の効果】
本発明によれば、発音励起操作に応じた読み出しアドレスを発生すると、発音体の非線形特性を記憶する変換手段が読み出しアドレスの整数部に応じて当該非線形特性を参照読み出しして前記発音励起操作を非線形出力信号に変換する一方、非線形特性を補間するための補間係数が記憶された補間手段では、アドレス発生手段が発生した読み出しアドレスの小数部に応じて補間係数を読み出し、読み出した補間係数に従って前記非線形出力信号を補間して前記励振信号を生成するので、非線形特性が格納されるテーブル容量を低減できる。
【図面の簡単な説明】
【図１】本発明における発音メカニズムを説明するための図である。
【図２】本発明における発音メカニズムを説明するための図である。
【図３】吹奏圧Ｐとリード直近の圧力ｐとの圧力差に対する体積流量Ｆの関係を示す図である。
【図４】リードＲＤの非線形特性を示す図である。
【図５】本発明における信号処理アルゴリズムを示すブロック図である。
【図６】信号処理アルゴリズムにおける遅延回路４の構成を示すブロック図である。
【図７】遅延回路４における遅延補間を説明するための図である。
【図８】信号処理アルゴリズムにおける信号散乱ジャンクション５の構成を示すブロック図である。
【図９】信号散乱ジャンクション５の他の構成例を示すブロック図である。
【図１０】信号散乱ジャンクション５における乗算係数ｋを説明するための図である。
【図１１】信号処理アルゴリズムにおけるＬＰＦ９の構成を示すブロック図である。
【図１２】非線形テーブルメモリ１０ａに記憶される非線形特性を示す図である。
【図１３】非線形テーブル部１０の構成を示すブロック図である。
【図１４】補間関数を説明するための図である。
【図１５】他の態様による励振部の構成を示すブロック図である。
【図１６】他の態様による励振部の構成を示すブロック図である。
【図１７】他の態様による励振部の構成を示すブロック図である。
【図１８】本発明による実施例の構成を示すブロック図である。
【図１９】同実施例における操作パネルの外観を示す図である。
【図２０】ＤＳＰ２４の概略構成を示すブロック図である。
【図２１】ＤＳＰ２４におけるエンベローパ３４の構成を示すブロックである。
【図２２】エンベローパ３４の動作タイミングを示すタイミングチャートである。
【図２３】ＤＳＰ２４における補間器／外部ＲＡＭインタフェース３５の構成を示すブロック図である。
【図２４】補間器／外部ＲＡＭインタフェース３５の補間動作タイミングを示すタイミングチャートである。
【図２５】補間器／外部ＲＡＭインタフェース３５の遅延発生動作タイミングを示すタイミングチャートである。
【図２６】同実施例におけるイニシャル処理の動作を示すフローチャートである。
【図２７】同実施例におけるエディット処理の動作を示すフローチャートである。
【図２８】同実施例におけるノートオン処理の動作を示すフローチャートである。
【図２９】同実施例におけるパラメータテーブルの一例を示す図である。
【図３０】同実施例におけるノートオフ処理の動作を示すフローチャートである。
【図３１】同実施例におけるタイマ割込み処理の動作を示すフローチャートである。
【図３２】同実施例における遅延補間係数発生処理の動作を説明するためのフローチャートである。
【図３３】変形例の信号処理アルゴリムを示すブロック図である。
【図３４】変形例の動作を示すフローチャートである。
【図３５】変形例の動作を示すフローチャートである。
【図３６】変形例の動作を示すフローチャートである。
【図３７】変形例の動作を示すフローチャートである。
【図３８】その他の例による遅延回路１００の構成を示すブロック図である。
【図３９】遅延回路１００を適用した信号処理アルゴリズムの構成を示すブロック図である。
【符号の説明】
２３  マイクロコンピュータ（アドレス発生手段、変換手段）
２４  ＤＳＰ（変換手段、補間手段）
２６  ＲＯＭ（変換手段、補間手段）
【図１】
0003551575.tif 000002
【図２】
0003551575.tif 000003
【図３】
0003551575.tif 000004
【図４】
0003551575.tif 000005
【図５】
0003551575.tif 000006
【図６】
0003551575.tif 000007
【図７】
0003551575.tif 000008
【図８】
0003551575.tif 000009
【図９】
0003551575.tif 000010
【図１０】
0003551575.tif 000011
【図１１】
0003551575.tif 000012
【図１２】
0003551575.tif 000013
【図１３】
0003551575.tif 000014
【図１４】
0003551575.tif 000015
【図１５】
0003551575.tif 000016
【図１６】
0003551575.tif 000017
【図１７】
0003551575.tif 000018
【図１８】
0003551575.tif 000019
【図１９】
0003551575.tif 000020
【図２０】
0003551575.tif 000021
【図２１】
0003551575.tif 000022
【図２２】
0003551575.tif 000023
【図２３】
0003551575.tif 000024
【図２４】
0003551575.tif 000025
【図２５】
0003551575.tif 000026
【図２６】
0003551575.tif 000027
【図２７】
0003551575.tif 000028
【図２８】
0003551575.tif 000029
【図２９】
0003551575.tif 000030
【図３０】
0003551575.tif 000031
【図３１】
0003551575.tif 000032
【図３２】
0003551575.tif 000033
【図３３】
0003551575.tif 000034
【図３４】
0003551575.tif 000035
【図３５】
0003551575.tif 000036
【図３６】
0003551575.tif 000037
【図３７】
0003551575.tif 000038
【図３８】
0003551575.tif 000039
【図３９】
0003551575.tif 000040