Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3765670B2 - Music signal generator - Google Patents
[go: Go Back, main page]

JP3765670B2 - Music signal generator - Google Patents

Music signal generator Download PDF

Info

Publication number
JP3765670B2
JP3765670B2 JP21606598A JP21606598A JP3765670B2 JP 3765670 B2 JP3765670 B2 JP 3765670B2 JP 21606598 A JP21606598 A JP 21606598A JP 21606598 A JP21606598 A JP 21606598A JP 3765670 B2 JP3765670 B2 JP 3765670B2
Authority
JP
Japan
Prior art keywords
interpolation
waveform
signal
parameters
control signal
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.)
Expired - Fee Related
Application number
JP21606598A
Other languages
Japanese (ja)
Other versions
JPH11126078A (en
Inventor
佳生 藤田
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP21606598A priority Critical patent/JP3765670B2/en
Publication of JPH11126078A publication Critical patent/JPH11126078A/en
Application granted granted Critical
Publication of JP3765670B2 publication Critical patent/JP3765670B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、波形メモリに予め記憶されていて楽音波形を離散的に表す一連の波形サンプル群を音高に応じた速度で読み出して楽音信号として出力する楽音信号発生装置に関する。
【0002】
【従来の技術】
従来から、楽音波形を離散的に表す一連の波形サンプル群を予め波形メモリに記憶しておき、同波形メモリに記憶されている波形サンプルを比較的低い固定の周波数を有するサンプリングクロック信号に同期させて読み出すために、発生される楽音の音高に応じた速度で変化して波形サンプルを指定する複数ビットからなるアドレス信号を発生し、このアドレス信号の上位ビットで指定される一つの波形サンプル近傍の複数の波形サンプルを読み出すとともに、アドレス信号の下位ビットの値に応じて変化する補間用パラメータを用いて同読み出した複数の波形サンプルを補間して、同補間された波形サンプルを楽音信号として出力するようにしたピッチ非同期型の楽音信号発生装置はよく知られている。
【0003】
【発明の概略】
本発明は、上記従来の楽音信号発生装置の補間用パラメータの発生に着目したもので、相互に異なる特性を有する2つの補間関数に対応した2組の補間用パラメータの間を補間して、同補間された補間パラメータを波形サンプルの補間に使用するようにしたものである。
【0004】
上記目的を達成するために、本発明の構成上の特徴は、楽音波形を離散的に表す一連の波形サンプル群を記憶した波形メモリと、音高を指定するための音高指定信号を入力し、同入力した音高指定信号により指定される音高に応じた速度で変化して前記波形サンプル群に属する波形サンプルを指定するための複数ビットからなるアドレス信号を発生するアドレス信号発生手段と、前記アドレス信号の上位ビットにより指定される波形サンプル近傍の複数の波形サンプルを補間用波形サンプルとして読み出す波形サンプル読み出し手段と、複数ビットからなる制御信号を発生する制御信号発生手段と、前記制御信号の上位ビットにより指定されるとともに相互に異なる特性を有する2つの補間関数にしたがいかつ前記アドレス信号の下位ビットにより表される値に応じて変化する2組の補間用パラメータを指定し、前記制御信号の下位ビットに応じて前記指定された2組の補間用パラメータを補間して1組の補間用パラメータを生成して出力する補間パラメータ発生手段と、前記出力された1組の補間用パラメータを用いて前記読み出した補間用波形サンプルを補間して一つの波形サンプルを導出する波形サンプル補間手段とを備えたことにある。
【0005】
この場合、前記補間パラメータ発生手段を、異なる特性を有する複数の補間関数にしたがった補間用パラメータを記憶する補間パラメータメモリと、前記複数の補間関数のうちで前記制御信号の上位ビットにより指定されるとともに相互に異なる特性を有する2つの補間関数を表す補間関数指定データを出力する補間関数指定手段と、前記補間関数指定データにより指定されるとともに相互に異なる特性を有する2つの補間関数にしたがいかつ前記アドレス信号の下位ビットにより表される値に応じて変化する2組の補間用パラメータを前記補間パラメータメモリから読み出す補間用パラメータ読み出し手段と、前記読み出された2組の補間用パラメータを前記制御信号の下位ビットにより補間して1組の補間用パラメータを生成して出力する関数補間手段とで構成できる。また、前記制御信号は、例えば時変動する信号である。
【0006】
上記のように構成した本発明においては、アドレス信号発生手段及び波形サンプル読み出し手段によって波形メモリから読み出された補間用波形サンプルは、波形サンプル補間手段により、補間パラメータ発生手段にて生成された1組の補間用パラメータを用いて補間される。この場合、補間パラメータ発生手段は、複数ビットからなる制御信号の上位ビットにより指定されるとともに相互に異なる特性を有する2つの補間関数にしたがいかつ前記アドレス信号の下位ビットにより表される値に応じて変化する2組の補間用パラメータを指定し、かつ同制御信号の下位ビットに応じて同2組の補間用パラメータを補間して1組の補間用パラメータを生成して出力する。例えば、補間パラメータ発生手段を、前記のように補間パラメータメモリ、補間関数指定手段、補間用パラメータ読み出し手段、及び関数補間手段で構成して、補間関数指定手段が複数の補間関数のうちで制御信号の上位ビットにより指定されるとともに相互に異なる特性を有する2つの補間関数を表す補間関数指定データを出力し、補間用パラメータ読み出し手段が前記補間関数指定データにより指定される2つの補間関数にしたがいかつ前記アドレス信号の下位ビットにより表される値に応じて変化する2組の補間用パラメータを前記補間パラメータメモリから読み出し、関数補間手段が前記読み出された2組の補間用パラメータを前記制御信号の下位ビットにより補間して1組の補間用パラメータを生成して出力する。
【0007】
このように、制御信号の上位ビットに応じて選択された相互に異なる特性を有する関数によって規定される2組の補間用パラメータを、さらに制御信号の下位ビットにより補間した補間用パラメータを生成できる。したがって、本発明によれば、制御信号に応じた相互に異なる補間関数により規定される2組の補間用パラメータを補間して波形サンプルの補間に利用できる。
【0008】
【実施例】
以下、本発明の一実施例を図面を用いて説明すると、図1は本発明に係る楽音信号発生装置を適用した電子楽器の全体をブロック図により示している。
【0009】
この電子楽器は、発生される楽音の音高を指定するための複数の鍵からなる鍵盤装置11と、発生される楽音の音色を選択するための複数の音色選択スイッチ12とを備えている。これらの鍵盤装置11及び音色選択スイッチ12はマイクロコンピュータ13に接続されており、同コンピュータ13は、鍵盤装置11の押離鍵及び音色選択スイッチ12の操作に応答して、音源インターフェース14と共に波形発生器15の複数の楽音発生チャンネルにおける各楽音信号の発生を制御する。具体的には、マイクロコンピュータ13及び音源インターフェース14は、下記▲1▼〜▲4▼の機能を有する。
【0010】
▲1▼マイクロコンピュータ13は、鍵盤装置11における押鍵に応答して、新たに押された鍵を複数の楽音発生チャンネルのいずれかに割り当て、音源インターフェース14に対して同割り当てチャンネルに対応した記憶領域に前記押鍵された鍵の音高を表す音高データNN及び同鍵の鍵タッチ強さを表す鍵タッチデータKTを書き込むとともに、音源インターフェース14を介して同割り当てチャンネルに対して楽音の発音開始を指示するためのキーオン信号KONを出力する。これに応答して、音源インターフェース14は、前記記憶した音高データNNを鍵音高周波数に比例して増加する周波数ナンバFNOに変換して、前記鍵タッチデータKTと共に前記割り当てチャンネルに出力する。
【0011】
▲2▼マイクロコンピュータ13は、鍵盤装置11における離鍵に応答して、新たに離鍵された鍵が割り当てられている楽音信号発生チャンネルを探し出し、音源インターフェース14を介して同チャンネルに対して楽音の発音停止を指示するためのキーオフ信号KOFを出力する。
【0012】
▲3▼マイクロコンピュータ13は、音色選択スイッチ12の操作に応答して、同操作された音色選択スイッチ12により指定される音色を表す音色番号TCを記憶する。
【0013】
▲4▼マイクロコンピュータ13は、鍵盤装置11の押鍵及び音色選択スイッチ12の操作に応答し、前記音色番号TC、音高データNN及び鍵タッチデータKTに基づいて楽音信号の音色及び音量を制御するための制御パラメータWN,AS,LS,LE,P1〜P5,FMS,FML,FMDT,EGを計算して音源インターフェース14を介して前記割り当てチャンネルに出力する。なお、制御パラメータWN(以下、波形番号WNという)は、読み出し出力される波形サンプル群の一つを選択するもので、その他の制御パラメータAS,LS,LE,P1〜P5,FMS,FML,FMDT,EGに関しては、同制御パラメータが利用される後述の各回路の説明時に説明する。
【0014】
音源インターフェース14には、前記楽音発生チャンネル数に等しい数の時分割チャンネルを有する波形発生器15及びエンベロープ発生器16が接続されている。波形発生器15に関しては図2及び図5を用いて詳しく後述するが、基本的には、各時分割チャンネル毎に波形番号WNにより指定される波形サンプル群を押鍵された鍵音高に対応した速度で読み出して乗算器17に出力する。エンベロープ発生器16は、各時分割チャンネル毎に、押鍵に応答して立ち上がりかつ離鍵に応答して減衰する振幅エンベロープ波形信号を形成して乗算器17に出力する。この振幅エンベロープ波形信号の形状を決めるアタックレベル、減衰係数などは、マイクロコンピュータ13から音源インターフェース14を介して供給される制御パラメータEGにより決定される。
【0015】
乗算器17は、前記時分割チャンネル毎に、波形発生器15からの波形サンプルにエンベロープ発生器からの振幅エンベロープ波形信号を乗算して累算器18に出力する。累算器18は前記時分割チャンネル毎の各出力信号を累算して、D/A変換器21に供給する。D/A変換器21はこの累算された信号をアナログ信号に変換して、サウンドシステム22に供給する。サウンドシステム22はアンプ、スピーカなどからなり、前記変換されたアナログ信号に対応した楽音を発音する。その結果、サウンドシステム22からは音色選択スイッチ12により指定された音色の楽音が鍵盤装置11における押離鍵操作に応答して発音されることになる。
【0016】
次に、図1の波形発生器15について詳しく説明する。図2は波形発生器15の詳細をブロック図により示しており、同発生器15は波形メモリ31を備えている。波形メモリ31は、複数種類の楽音波形にそれぞれ対応した複数組の波形サンプル群を記憶しており、各波形サンプル群は多数周期からなる楽音波形を離散的に表す一連かつ多数の波形サンプルからなる。なお、データの節約上、各組の多数の波形サンプルは楽音の立ち上がり時に1回だけ読み出されるアタック分とその後に繰り返し読み出されるループ分とに分けられ、波形番号WNにより指定される楽音波形のアタック部のスタートアドレス、ループ部のスタートアドレス及びエンドアドレスがそれぞれ制御パラメータAS(WN),LS(WN),LE(WN)により指定されるようになっている。
【0017】
波形メモリ31には、アドレス発生器32からのアドレス信号ADRの整数部(上位ビット)INTと、補間カウンタ33からのカウント値CNTとを加算器34にて加算した値が読み出しアドレス信号として与えられている。アドレス発生器32は、キーオン信号KON、周波数ナンバFNO及び制御パラメータAS(WN),LS(WN),LE(WN)を入力して、1DACサイクル毎に各時分割チャンネルにて周波数ナンバFNOをそれぞれ累算し、波形番号WNにより指定される楽音波形のアタック部の波形サンプルをキーオン信号KONに応答して1回通り読み出し、その後にループ部の波形サンプルを繰り返し読み出すためのアドレス信号ADRを形成して出力する(図10参照)。したがって、この各時分割チャンネルのアドレス信号ADRは、予め決められた周期毎に周波数ナンバFNOに比例した速度で変化する信号となる。補間カウンタ33は、各時分割チャンネルタイミングの間に「0」から「5」まで繰り返し変化する補間用のカウント値CNTを出力する。その結果、アドレス信号ADRの整数部INTが図11の楽音波形のサンプル値Y0 を表していれば、1時分割チャンネルタイミングの間に、波形メモリ31から6個の波形サンプル値Y0〜Y5がクロック信号φabの一周期毎にそれぞれ読み出される。
【0018】
波形メモリ31の出力は遅延回路35を介して乗算器36に接続されており、同乗算器36は前記波形サンプル値Y0〜Y5に補間係数発生器40から供給される補間用パラメータとしての6個の補間係数a0〜a5をそれぞれ順次乗算する。遅延回路35は、波形サンプル値Y0〜Y5と補間係数a0〜a5の各出力タイミング合わせのために用いられている。この各乗算結果は補間累算器37に供給されて累算され、同累算器37は下記数1に示すように補間係数a0〜a5を用いて波形サンプル値Y0〜Y5を補間して一つの波形サンプル値Yを計算して出力する。
【0019】
【数1】
Y=a00+a11+a22+a33+a44+a55
補間係数発生器40は、補間係数メモリ41を備えている。補間係数メモリ41は、図3に示すように、k個(2以上の整数)の補間係数テーブルからなる。各補間係数テーブルは関数選択部42からの第1補間係数選択信号FS1により選択されるようになっている。各補間係数テーブルはさらに8個の領域(ただし、本件実施例の場合には2領域は不使用)に分けられていて、各領域は補間カウンタ33からのカウント値CNT(0〜5)によりそれぞれ指定されるようになっている。前記6個の各領域には、アドレス発生器32からのアドレス信号ADRの少数部(下位ビット)FRACによりアドレス指定される各補間係数a0〜a5がそれぞれ記憶されている。
【0020】
これらの補間係数a0〜a5は、例えば図4のグラフに示す補間関数により規定されるもので、これらの補間係数a0〜a5を用いた上記数1の演算により複数の波形サンプル値Y0〜Y5が補間されることはよく知られたことである。また、このような補間関数によって規定される補間によれば、出力である波形サンプル値Yはローパスフィルタ処理を施されたものと同等な効果が付加されることもよく知られたことであり、図4の実線から波線方向に補間関数を変化させることは同ローパスフィルタのカットオフ周波数が低く設定されることに相当する。そして、前記k個の補間係数テーブルには、前記のような異なる特性の補間関数により規定される補間係数a0〜a5がそれぞれ記憶されている。
【0021】
関数選択部42は、図5に詳細に示すように、時変動する制御信号を発生するための非周期信号発生器51及び低周波発振器52を備えている。非周期信号発生器51はキーオン信号KON及び制御パラメータP1〜P5を入力して、キーオン信号KONの到来から時間的かつ非周期的に変化する第1制御信号FEGを出力する(例えば、図6参照)。この場合、制御パラメータP1は初期レベルを表し、制御パラメータP2〜P5は第1制御信号FEGの所定時間後の各目標レベル及び各目標レベルに達するまでの各変化率を表すものであり、非周期信号発生器51はこれらの制御パラメータP1〜P5を用いて折れ線上の第1制御信号FEGを形成する。低周波発振器52はキーオン信号KON及び制御パラメータFMS,FML,FMDTを入力して、キーオン信号KONの到来から時間的に振幅が徐々に大きくなる低周波信号を表す第2制御信号LFOを出力する(例えば、図7参照)。この場合、制御パラメータFMSは第2制御信号LFOの周期を表し、制御パラメータFMLは同信号LFOの最大振幅レベルを表し、かつ制御パラメータFMDTはキーオン信号KONの到来から同信号LFOの発生までの遅延時間を表すもので、低周波発振器52はこれらの制御パラメータFMS,FML,FMDTを用いて前記第2制御信号LFOを形成する。
【0022】
これらの第1制御信号FEGと第2制御信号LFOは加算器53にて加算され、リミッタ54にて「0」〜「1」の範囲内に制限されて乗算器55に出力される。乗算器55は、第1テーブル56から出力されたテーブル数TNから減算器57にて「1」を減算した値TN−1をリミッタ54の出力信号に乗算して出力する。第1テーブル56は、図8に示すように、波形番号WNに対応してテーブル数TNを記憶しており、同テーブル数TNは波形番号WNにより選択的に読み出し出力される。このテーブル数TNは、波形番号WNにより指定される波形サンプル群の補間演算のために利用される補間係数テーブル(図3参照)の数を表すものである。したがって、乗算器55の出力は、「0」から利用されるテーブル数TNより「1」だけ少ない数の間で連続的に変化する信号となる。たとえば、テーブル数TNが「4」であれば、乗算器55の出力は「0」〜「3」の間で変化する。
【0023】
この乗算器55の出力のうちで整数部(上位ビット)INTは加算器58を介して第2テーブル59に出力される。加算器58にはインバータ58aを介してクロック信号φabが供給されており、同加算器58は、クロック信号φabがハイレベルにあるとき前記整数部INTをそのまま出力し、かつクロック信号φabがローレベルにあるとき前記整数部INTに「1」を加算して出力するものである。第2テーブル59は、図9に示すように、波形番号WN毎に、同番号WNにより指定される波形サンプル群の補間のために利用される複数の補間係数テーブル(図3参照)をそれぞれ指定するための複数のテーブルデータTDを記憶している。波形番号WN毎のテーブルデータDTの数は前述のテーブル数TNに等しく、波形番号WNにより指定される複数のテーブルデータTDは、それぞれ加算器58の出力により指定されて第2テーブル59から第1補間係数選択信号FS1として出力されるようになっている。
【0024】
例えば、波形番号WNが「1」であれば、第2テーブル59内のテーブルデータTDとしてTD1=2,TD2=5,TD3=6,TD4=0が指定される。一方、第1テーブル56からはテーブル数TN=4が出力され、乗算器55の出力信号の整数部INTは「0」,「1」,「2」のいずれかを表すので、加算器58からは「0」と「1」、「1」と「2」、「2」と「3」を表す信号がそれぞれクロック信号φabに同期して交互に出力される。したがって、第2テーブル59からの第1補間係数選択信号FS1は、非周期信号発生器51からの第1制御信号FEG及び低周波発振器52からの第2制御信号LFOに応じて、TD1=2とTD2=5、TD2=5とTD3=6、TD3=6とTD4=0をクロック信号φabに同期してそれぞれ交互に表す信号となる。そして、図2の補間係数メモリ41(図3参照)からは、前記第1補間係数選択信号FS1により指定された補間係数テーブル内の補間係数a0〜a5であって、補間カウンタ33のカウント値CNT及びアドレス信号ADRの少数部FRACによりアドレス指定された補間係数a0〜a5がクロック信号φabに同期して2つずつ順次出力される。
【0025】
補間係数メモリ41には、ラッチ回路43,44が接続されている。ラッチ回路43,44はクロック信号φab及び同信号φabをインバータ45により反転した信号により制御され、前記各2つずつの補間係数a0〜a5をそれぞれ交互にラッチして補間係数補間回路46に出力する。この補間係数補間回路46には、関数選択部42の乗算器55からの出力信号の少数部(下位ビット)FRACが第2補間係数選択信号FS2として供給されている。補間係数補間回路46は、この第2補間係数選択信号FS2を用いて、ラッチ回路43,44にてラッチされた各一対の補間係数a0〜a5をそれぞれ補間し(例えば、第2補間係数選択信号FS2を混合比として2つの補間係数を混合し)、同補間した補間係数a0〜a5を乗算器36に出力する。
【0026】
上記のように構成した実施例においては、鍵盤装置11にていずれかの鍵が押鍵されると、マイクロコンピュータ13は押鍵された鍵の音高を表す音高データNNを音源インターフェース14に供給し、音源インターフェース14は同音高データNNに対応した周波数ナンバFNOをアドレス発生器32に供給する。これと同時に、マイクロコンピュータ13は、音色選択スイッチ12の操作により指定されている音色番号TC、音高データNN及び鍵タッチデータKTに応じて波形番号WNを決定するとともに、同波形番号WNに応じて制御パラメータAS,LS,LEを決定してアドレス発生器32に供給する。アドレス発生器32は、前記制御パラメータAS(WN),LS(WN),LE(WN)により選択される波形サンプル群に属する波形サンプルを指定しかつ前記周波数ナンバFNOに比例した速度で変化する複数ビットからなるアドレス信号ADRを発生する。したがって、音色番号TC、音高データNN、鍵タッチデータKT、波形番号WNなどが波形を選択するための波形選択信号を構成する。
【0027】
補間カウンタ33は「0」〜「5」まで繰り返し変化するカウント値CNTを加算器34に出力しており、同加算器34は前記アドレス信号ADRの整数部INTとカウント値CNTとを加算して波形メモリ31に供給するので、同メモリ31から、前記整数部INTにより指定される波形サンプル値Y0 及び次の5個の波形サンプル値Y1〜Y5が補間用波形サンプルとして読み出される。したがって、本発明の波形サンプル読み出し手段は補間カウンタ33及び加算器34に対応する。
【0028】
また、関数選択部42においては、押鍵に応答して、非周期信号発生器51(本発明の制御信号発生手段)が音色番号TC、音高データNN及び鍵タッチデータKTにより決定される制御パラメータP1〜P5に応じて時変動する第1制御信号FEGを発生しているとともに、低周波発振器52(本発明の制御信号発生手段)が音色番号TC、音高データNN及び鍵タッチデータKTにより決定される制御パラメータFMS,FML,FMDTに応じた第2制御信号LFOを発生している。一方、この関数選択部42には、前記音色番号TC、音高データNN及び鍵タッチデータKTにより決定される波形番号WNも供給されており、同選択部42内の乗算器55、第1テーブル56、第2テーブル59などの作用により、補間係数メモリ41からは本発明の補間用パラメータとしての補間係数a0〜a5がラッチ回路43,44及び補間係数補間回路46を介して乗算器36に供給される。そして、乗算器36及び補間累算器37の作用により、前記補間係数a0〜a5を用いて波形サンプル値Y0〜Y5が補間されて一つの波形サンプル値Yとして出力される。したがって、乗算器55、第1テーブル56、第2テーブル59、補間係数メモリ41、補間係数補間回路46などが本発明の補間パラメータ発生手段を構成するとともに、乗算器36及び補間累算器37が本発明の波形サンプル補間手段を構成する。
【0029】
上記作動説明からも理解できるように、上記実施例によれば、音色番号TC、音高データNN、鍵タッチデータKT、波形番号WNなどからなる波形選択信号により選択される波形サンプル群に対応して、同波形サンプル群に属する波形サンプルの補間に用いられる補間用パラメータとしての補間係数a0〜a5が変更される。また、複数周期分の楽音波形を表す波形サンプル群が時間経過にしたがって読み出されるのに対応して、第1制御信号FEGは時間経過にしたがって変化するので、時間経過にしたがって変化する波形サンプル群に対応して、同波形サンプル群に属する波形サンプルの補間に用いられる補間用パラメータとしての補間係数a0〜a5も変更される。したがって、読み出される各波形サンプル群に最適な補間関数にしたがった補間係数a0〜a5を利用できて、音色、鍵タッチ、音高などの相違により読み出される波形サンプル群が変化しても、また楽音のアタックからリリースに到る時間経過にしたがって読み出される波形サンプル群が変化しても、同変化に対応した最適な波形サンプルの補間を実現することができる。また、第2制御信号LFOは補間係数a0〜a5を周期的に変化させるようにも作用するので、周期的な音色変化も実現される。
【0030】
なお、上記実施例においては、多数の周期からなり時変動する楽音波形を表す複数種類の波形サンプル群を波形メモリ31に記憶させるようにしたが、単に1,2周期の少ない周期の楽音波形を表す複数種類の波形サンプル群を波形メモリ31に記憶させるようにした楽音信号発生装置にも本発明は適用できる。この場合、アドレス発生器32を前記波形サンプル群を繰り返し読み出すためのアドレス信号ADRを発生するように構成し、非周期信号発生器51及び低周波発振器52を省略して、単に波形番号WNに応じて補間係数a0〜a5を決定するようにすればよい。
【0031】
また、上記実施例においては、6個の補間用波形サンプル値Y0〜Y5を補間するようにしたが、この補間用波形サンプル値の数は6個に限定されることはなく、他の数にしてもよい。さらに、他の回路(例えばディジタルフィルタ)との接続、楽音信号発生チャンネル数の切り換えなどに関係して、前記補間用波形サンプル値の数を選択的に設定できるようにしてもよい。この場合、補間カウンタ33のカウンタ値CNTの最大値を変更するとともに、これに伴いチャンネルタイミングなどを変更する。
【0032】
さらに、上記実施例においては、音色番号TC、音高データNN及び鍵タッチデータKTに応じて波形番号WNが決定され、かつ同番号WNに応じて補間係数a0〜a5を規定する補間関数が決定されるようにしたが、さらに周波数ナンバFNOが大きくなるにしたがってカットオフ周波数が低くなる補間関数及び補間係数a0〜a5が決定されるようにすれば、最終的に出力される楽音波形信号に含まれる折り返しノイズをより効果的に除去できる。
【図面の簡単な説明】
【図1】 本発明に係る楽音信号発生装置を適用した電子楽器の全体を示す概略ブロック図である。
【図2】 図1の波形発生器の詳細ブロック図である。
【図3】 図2の補間係数メモリのメモリマップである。
【図4】 同補間係数メモリに記憶されている補間係数を規定する補間関数を示すグラフである。
【図5】 図2の関数選択部の詳細ブロック図である。
【図6】 図5の非周期信号発生器から出力される第1制御信号の一例を示すタイムチャートである。
【図7】 図5の低周波発振器から出力される第2制御信号の一例を示すタイムチャートである。
【図8】 図5の第1テーブルのテーブルマップである。
【図9】 図5の第2テーブルのテーブルマップである。
【図10】 図2及び図5の回路動作を説明するためのタイムチャートである。
【図11】 図2の補間動作を説明するためのタイムチャートである。
【符号の説明】
11…鍵盤装置、12…音色選択スイッチ、13…マイクロコンピュータ、15…波形発生器、16…エンベロープ発生器、22…サウンドシステム、31…波形メモリ、32…アドレス発生器、33…補間カウンタ、36…乗算器、37…補間累算器、40…補間係数発生器、41…補間係数メモリ、42…関数選択部、43,44…ラッチ回路、46…補間係数補間回路、51…非周期信号発生器、52…低周波発振器、56…第1テーブル、59…第2テーブル。
[0001]
[Industrial application fields]
The present invention relates to a musical tone signal generating apparatus that reads a series of waveform sample groups that are stored in advance in a waveform memory and discretely represent musical tone waveforms at a speed corresponding to the pitch and outputs them as musical tone signals.
[0002]
[Prior art]
Conventionally, a series of waveform sample groups discretely representing musical sound waveforms are stored in advance in a waveform memory, and the waveform samples stored in the waveform memory are synchronized with a sampling clock signal having a relatively low fixed frequency. In order to read out, an address signal consisting of a plurality of bits specifying a waveform sample is generated at a speed corresponding to the pitch of the generated musical sound, and the vicinity of one waveform sample specified by the upper bits of this address signal And interpolating the read waveform samples using an interpolation parameter that changes according to the value of the lower bits of the address signal, and outputting the interpolated waveform samples as a musical sound signal A pitch asynchronous type musical tone signal generator configured as described above is well known.
[0003]
SUMMARY OF THE INVENTION
  The present invention pays attention to the generation of the interpolation parameter of the conventional musical tone signal generator,Have different characteristicsInterpolation is performed between two sets of interpolation parameters corresponding to two interpolation functions, and the interpolated interpolation parameters are used for interpolation of waveform samples.
[0004]
  In order to achieve the above object, the constitutional feature of the present invention is that a waveform memory storing a series of waveform sample groups discretely representing musical sound waveforms and a pitch designation signal for designating a pitch are input. Address signal generating means for generating an address signal consisting of a plurality of bits for designating waveform samples belonging to the waveform sample group, changing at a speed according to the pitch designated by the inputted pitch designation signal; Waveform sample reading means for reading out a plurality of waveform samples in the vicinity of the waveform sample specified by the upper bits of the address signal as interpolation waveform samples, control signal generating means for generating a control signal consisting of a plurality of bits, and Specified by upper bitWith two different characteristicsTwo sets of interpolation parameters that change according to an interpolation function and change according to the value represented by the lower bits of the address signal are specified, and the two specified sets of interpolation parameters according to the lower bits of the control signal Interpolation parameter generating means for generating a set of interpolation parameters and outputting them, and interpolating the read out waveform sample for interpolation using the set of output interpolation parameters, to obtain one waveform sample And waveform sample interpolation means for deriving.
[0005]
  In this case, the interpolation parameter generating means isHave different characteristicsInterpolation parameter memory for storing interpolation parameters according to a plurality of interpolation functions, and specified by upper bits of the control signal among the plurality of interpolation functionsAnd have different characteristicsInterpolation function designation means for outputting interpolation function designation data representing two interpolation functions, and designated by the interpolation function designation dataAnd two different characteristicsInterpolation parameter reading means for reading from the interpolation parameter memory two sets of interpolation parameters that change in accordance with the interpolation function of the address signal and depending on the value represented by the lower bits of the address signal, and the two sets of read out sets The interpolation parameter can be constituted by function interpolation means for interpolating the interpolation parameter with the lower bits of the control signal to generate and output a set of interpolation parameters. The control signal is, for example, a signal that varies with time.
[0006]
  In the present invention configured as described above, the waveform sample for interpolation read from the waveform memory by the address signal generating means and the waveform sample reading means is generated by the interpolation parameter generating means by the waveform sample interpolating means. Interpolated using a set of interpolation parameters. In this case, the interpolation parameter generating means is designated by the upper bits of the control signal consisting of a plurality of bits.And have different characteristicsSpecifies two sets of interpolation parameters according to two interpolation functions and changes according to the value represented by the lower bits of the address signal, and the two sets of interpolation parameters according to the lower bits of the control signal Are interpolated to generate and output a set of interpolation parameters. For example, the interpolation parameter generating means is composed of the interpolation parameter memory, the interpolation function specifying means, the interpolation parameter reading means, and the function interpolation means as described above, and the interpolation function specifying means is a control signal among the plurality of interpolation functions. Specified by the upper bits ofAnd two different characteristicsInterpolation function designation data representing the interpolation function is output, and the parameter reading means for interpolation changes according to the two interpolation functions designated by the interpolation function designation data and according to the value represented by the lower bits of the address signal Two sets of interpolation parameters are read from the interpolation parameter memory, and the function interpolation means interpolates the read two sets of interpolation parameters with the lower bits of the control signal to generate one set of interpolation parameters. Output.
[0007]
  Thus, selected according to the upper bits of the control signalDefined by functions with different characteristicsIt is possible to generate an interpolation parameter obtained by interpolating two sets of interpolation parameters with lower bits of the control signal. Therefore, according to the present invention, according to the control signalMutualTwo sets of interpolation parameters defined by different interpolation functions can be interpolated and used for waveform sample interpolation.
[0008]
【Example】
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing an entire electronic musical instrument to which a musical tone signal generator according to the present invention is applied.
[0009]
This electronic musical instrument includes a keyboard device 11 composed of a plurality of keys for designating the pitch of the generated musical tone, and a plurality of tone color selection switches 12 for selecting the tone color of the generated musical tone. The keyboard device 11 and the timbre selection switch 12 are connected to a microcomputer 13, and the computer 13 generates a waveform together with the sound source interface 14 in response to the operation of the key release / timing selection switch 12 of the keyboard device 11. The generation of each tone signal in the plurality of tone generation channels of the device 15 is controlled. Specifically, the microcomputer 13 and the sound source interface 14 have the following functions (1) to (4).
[0010]
(1) The microcomputer 13 allocates a newly pressed key to one of a plurality of musical tone generation channels in response to a key press in the keyboard device 11, and stores a corresponding to the allocated channel for the tone generator interface 14. The pitch data NN indicating the pitch of the pressed key and the key touch data KT indicating the key touch strength of the key are written in the area, and the tone of the musical tone is generated for the same assigned channel via the sound source interface 14. A key-on signal KON for instructing the start is output. In response to this, the tone generator interface 14 converts the stored pitch data NN into a frequency number FNO that increases in proportion to the key pitch frequency, and outputs it to the assigned channel together with the key touch data KT.
[0011]
(2) In response to the key release from the keyboard device 11, the microcomputer 13 searches for a musical sound signal generation channel to which the newly released key is assigned, and receives a musical sound for the same channel via the sound source interface 14. A key-off signal KOF for instructing to stop sound generation is output.
[0012]
(3) In response to the operation of the timbre selection switch 12, the microcomputer 13 stores a timbre number TC representing the timbre specified by the operated timbre selection switch 12.
[0013]
(4) The microcomputer 13 controls the tone color and volume of the tone signal based on the tone number TC, the pitch data NN, and the key touch data KT in response to pressing of the keyboard device 11 and the operation of the tone color selection switch 12. Control parameters WN, AS, LS, LE, P1 to P5, FMS, FML, FMDT, and EG are calculated and output to the assigned channel via the sound source interface 14. The control parameter WN (hereinafter referred to as waveform number WN) is used to select one of the waveform sample groups to be read out and output, and the other control parameters AS, LS, LE, P1 to P5, FMS, FML, FMDT. , EG will be described in the description of each circuit to be described later in which the same control parameter is used.
[0014]
Connected to the tone generator interface 14 are a waveform generator 15 and an envelope generator 16 having time-division channels equal to the number of musical sound generation channels. The waveform generator 15 will be described in detail later with reference to FIGS. 2 and 5. Basically, the waveform sample group designated by the waveform number WN for each time division channel corresponds to the key pitch that is depressed. The data is read out at the speed and output to the multiplier 17. The envelope generator 16 forms, for each time division channel, an amplitude envelope waveform signal that rises in response to key press and attenuates in response to key release, and outputs the signal to the multiplier 17. The attack level, attenuation coefficient, and the like that determine the shape of the amplitude envelope waveform signal are determined by control parameters EG supplied from the microcomputer 13 via the sound source interface 14.
[0015]
The multiplier 17 multiplies the waveform sample from the waveform generator 15 by the amplitude envelope waveform signal from the envelope generator for each time division channel and outputs the result to the accumulator 18. The accumulator 18 accumulates each output signal for each time division channel and supplies it to the D / A converter 21. The D / A converter 21 converts the accumulated signal into an analog signal and supplies it to the sound system 22. The sound system 22 includes an amplifier, a speaker, and the like, and generates a musical sound corresponding to the converted analog signal. As a result, the sound tone of the tone color designated by the tone color selection switch 12 is generated from the sound system 22 in response to the key release operation on the keyboard device 11.
[0016]
Next, the waveform generator 15 of FIG. 1 will be described in detail. FIG. 2 is a block diagram showing details of the waveform generator 15, and the generator 15 includes a waveform memory 31. The waveform memory 31 stores a plurality of sets of waveform samples corresponding respectively to a plurality of types of musical sound waveforms, and each waveform sample group is composed of a series of a large number of waveform samples that discretely represent a musical sound waveform having a large number of periods. . In order to save data, a large number of waveform samples in each group are divided into an attack that is read only once at the rising edge of a musical tone and a loop that is repeatedly read thereafter, and an attack of a musical sound waveform designated by the waveform number WN Start address, loop start address and end address are specified by control parameters AS (WN), LS (WN) and LE (WN), respectively.
[0017]
A value obtained by adding the integer part (upper bit) INT of the address signal ADR from the address generator 32 and the count value CNT from the interpolation counter 33 by the adder 34 is given to the waveform memory 31 as a read address signal. ing. The address generator 32 inputs the key-on signal KON, the frequency number FNO, and the control parameters AS (WN), LS (WN), and LE (WN), and sets the frequency number FNO in each time division channel for each DAC cycle. Accumulate and read the waveform sample of the attack part of the musical tone waveform specified by the waveform number WN once in response to the key-on signal KON, and then form the address signal ADR for repeatedly reading the waveform sample of the loop part (See FIG. 10). Therefore, the address signal ADR of each time division channel is a signal that changes at a rate proportional to the frequency number FNO for each predetermined period. The interpolation counter 33 outputs a count value CNT for interpolation that repeatedly changes from “0” to “5” during each time division channel timing. As a result, if the integer part INT of the address signal ADR represents the musical tone waveform sample value Y0 of FIG. 11, six waveform sample values Y from the waveform memory 31 during one time division channel timing.0... Y5 are read for each cycle of the clock signal .phi.ab.
[0018]
The output of the waveform memory 31 is connected to a multiplier 36 via a delay circuit 35, and the multiplier 36 receives the waveform sample value Y.0~ YFive6 interpolation coefficients a as interpolation parameters supplied from the interpolation coefficient generator 400~ AFiveAre sequentially multiplied. The delay circuit 35 calculates the waveform sample value Y0~ YFiveAnd interpolation coefficient a0~ AFiveAre used to adjust the output timing. Each multiplication result is supplied to and accumulated in an interpolation accumulator 37, which accumulates an interpolation coefficient a as shown in Equation 1 below.0~ AFiveWaveform sample value Y using0~ YFiveIs interpolated to calculate and output one waveform sample value Y.
[0019]
[Expression 1]
Y = a0Y0+ A1Y1+ A2Y2+ AThreeYThree+ AFourYFour+ AFiveYFive
The interpolation coefficient generator 40 includes an interpolation coefficient memory 41. As shown in FIG. 3, the interpolation coefficient memory 41 includes k (integer of 2 or more) interpolation coefficient tables. Each interpolation coefficient table is selected by a first interpolation coefficient selection signal FS1 from the function selection unit 42. Each interpolation coefficient table is further divided into 8 areas (however, 2 areas are not used in the present embodiment), and each area is determined by a count value CNT (0 to 5) from the interpolation counter 33. It is to be specified. In each of the six regions, each interpolation coefficient a addressed by the decimal part (lower bit) FRAC of the address signal ADR from the address generator 32 is provided.0~ AFiveAre stored.
[0020]
These interpolation coefficients a0~ AFiveIs defined by, for example, the interpolation function shown in the graph of FIG.0~ AFiveA plurality of waveform sample values Y by the calculation of the above equation 1 using0~ YFiveIt is well known that is interpolated. In addition, according to the interpolation defined by such an interpolation function, it is well known that the waveform sample value Y as an output has an effect equivalent to that obtained by the low-pass filter processing. Changing the interpolation function from the solid line to the wavy line in FIG. 4 corresponds to setting the cut-off frequency of the low-pass filter low. The k interpolation coefficient tables include interpolation coefficients a defined by the interpolation functions having different characteristics as described above.0~ AFiveAre stored.
[0021]
As shown in detail in FIG. 5, the function selection unit 42 includes an aperiodic signal generator 51 and a low-frequency oscillator 52 for generating a control signal that varies with time. The aperiodic signal generator 51 receives the key-on signal KON and the control parameters P1 to P5, and outputs a first control signal FEG that changes temporally and aperiodically from the arrival of the key-on signal KON (see, for example, FIG. 6). ). In this case, the control parameter P1 represents the initial level, and the control parameters P2 to P5 represent each target level after the predetermined time of the first control signal FEG and each rate of change until the target level is reached. The signal generator 51 forms the first control signal FEG on the broken line using these control parameters P1 to P5. The low frequency oscillator 52 receives the key-on signal KON and the control parameters FMS, FML, FMDT, and outputs a second control signal LFO representing a low-frequency signal whose amplitude gradually increases with time from the arrival of the key-on signal KON ( For example, see FIG. In this case, the control parameter FMS represents the period of the second control signal LFO, the control parameter FML represents the maximum amplitude level of the signal LFO, and the control parameter FMDT is a delay from the arrival of the key-on signal KON to the generation of the signal LFO. In order to represent time, the low-frequency oscillator 52 forms the second control signal LFO using these control parameters FMS, FML, and FMDT.
[0022]
The first control signal FEG and the second control signal LFO are added by the adder 53, limited by the limiter 54 within the range of “0” to “1”, and output to the multiplier 55. The multiplier 55 multiplies the output signal of the limiter 54 by a value TN−1 obtained by subtracting “1” from the table number TN output from the first table 56 by the subtractor 57 and outputs the result. As shown in FIG. 8, the first table 56 stores the table number TN corresponding to the waveform number WN, and the table number TN is selectively read out and output by the waveform number WN. This table number TN represents the number of interpolation coefficient tables (see FIG. 3) used for the interpolation calculation of the waveform sample group designated by the waveform number WN. Therefore, the output of the multiplier 55 is a signal that continuously changes between “0” and a number smaller by “1” than the number of tables TN used. For example, if the table number TN is “4”, the output of the multiplier 55 changes between “0” and “3”.
[0023]
Of the output of the multiplier 55, the integer part (upper bit) INT is output to the second table 59 via the adder 58. The adder 58 is supplied with a clock signal φab via an inverter 58a. The adder 58 outputs the integer part INT as it is when the clock signal φab is at a high level, and the clock signal φab is at a low level. In this case, “1” is added to the integer part INT and output. As shown in FIG. 9, the second table 59 designates, for each waveform number WN, a plurality of interpolation coefficient tables (see FIG. 3) used for interpolation of the waveform sample group designated by the same number WN. A plurality of table data TD is stored. The number of table data DT for each waveform number WN is equal to the above-mentioned table number TN, and a plurality of table data TD specified by the waveform number WN is specified by the output of the adder 58 and is first to second from the second table 59. The interpolation coefficient selection signal FS1 is output.
[0024]
For example, if the waveform number WN is “1”, TD1 = 2, TD2 = 5, TD3 = 6, and TD4 = 0 are specified as the table data TD in the second table 59. On the other hand, the number of tables TN = 4 is output from the first table 56, and the integer part INT of the output signal of the multiplier 55 represents one of “0”, “1”, and “2”. , Signals representing “0” and “1”, “1” and “2”, “2” and “3” are alternately output in synchronization with the clock signal φab. Therefore, the first interpolation coefficient selection signal FS1 from the second table 59 is TD1 = 2 according to the first control signal FEG from the aperiodic signal generator 51 and the second control signal LFO from the low frequency oscillator 52. The signals TD2 = 5, TD2 = 5 and TD3 = 6, TD3 = 6 and TD4 = 0 are alternately expressed in synchronization with the clock signal φab. Then, from the interpolation coefficient memory 41 (see FIG. 3) of FIG. 2, the interpolation coefficient a in the interpolation coefficient table designated by the first interpolation coefficient selection signal FS1 is obtained.0~ AFiveThe interpolation coefficient a addressed by the count value CNT of the interpolation counter 33 and the fractional part FRAC of the address signal ADR.0~ AFiveAre sequentially output two by two in synchronization with the clock signal φab.
[0025]
Latch circuits 43 and 44 are connected to the interpolation coefficient memory 41. The latch circuits 43 and 44 are controlled by a clock signal φab and a signal obtained by inverting the signal φab by an inverter 45, and each of the two interpolation coefficients a0~ AFiveAre alternately latched and output to the interpolation coefficient interpolation circuit 46. The interpolation coefficient interpolation circuit 46 is supplied with the fractional part (lower bit) FRAC of the output signal from the multiplier 55 of the function selection unit 42 as the second interpolation coefficient selection signal FS2. The interpolation coefficient interpolation circuit 46 uses the second interpolation coefficient selection signal FS2, and uses a pair of interpolation coefficients a latched by the latch circuits 43 and 44.0~ AFiveAre interpolated (for example, two interpolation coefficients are mixed using the second interpolation coefficient selection signal FS2 as a mixing ratio), and the interpolated interpolation coefficient a0~ AFiveIs output to the multiplier 36.
[0026]
In the embodiment configured as described above, when any key is pressed by the keyboard device 11, the microcomputer 13 sends the pitch data NN indicating the pitch of the pressed key to the sound source interface 14. The tone generator interface 14 supplies the address generator 32 with a frequency number FNO corresponding to the pitch data NN. At the same time, the microcomputer 13 determines the waveform number WN according to the timbre number TC, the pitch data NN and the key touch data KT specified by the operation of the timbre selection switch 12, and also according to the waveform number WN. The control parameters AS, LS, LE are determined and supplied to the address generator 32. The address generator 32 designates waveform samples belonging to the waveform sample group selected by the control parameters AS (WN), LS (WN), and LE (WN), and changes at a rate proportional to the frequency number FNO. An address signal ADR consisting of bits is generated. Therefore, the tone color number TC, the pitch data NN, the key touch data KT, the waveform number WN, etc. constitute a waveform selection signal for selecting a waveform.
[0027]
The interpolation counter 33 outputs a count value CNT that repeatedly changes from “0” to “5” to the adder 34. The adder 34 adds the integer part INT of the address signal ADR and the count value CNT. Since the waveform is supplied to the waveform memory 31, the waveform sample value Y specified by the integer part INT is stored in the memory 31.0 And the next five waveform sample values Y1~ YFiveAre read as waveform samples for interpolation. Therefore, the waveform sample reading means of the present invention corresponds to the interpolation counter 33 and the adder 34.
[0028]
In the function selection unit 42, in response to the key depression, the aperiodic signal generator 51 (the control signal generating means of the present invention) is controlled by the tone number TC, the pitch data NN, and the key touch data KT. The first control signal FEG that varies with time according to the parameters P1 to P5 is generated, and the low-frequency oscillator 52 (control signal generating means of the present invention) uses the tone number TC, the pitch data NN, and the key touch data KT. A second control signal LFO corresponding to the determined control parameters FMS, FML, and FMDT is generated. On the other hand, the function selection unit 42 is also supplied with the waveform number WN determined by the tone number TC, the pitch data NN, and the key touch data KT. The multiplier 55 and the first table in the selection unit 42 are also supplied. 56, the second table 59, and the like, the interpolation coefficient memory 41 extracts the interpolation coefficient a as the interpolation parameter of the present invention.0~ AFiveIs supplied to the multiplier 36 through the latch circuits 43 and 44 and the interpolation coefficient interpolation circuit 46. The interpolation coefficient a is obtained by the action of the multiplier 36 and the interpolation accumulator 37.0~ AFiveWaveform sample value Y using0~ YFiveAre interpolated and output as one waveform sample value Y. Therefore, the multiplier 55, the first table 56, the second table 59, the interpolation coefficient memory 41, the interpolation coefficient interpolation circuit 46, etc. constitute the interpolation parameter generating means of the present invention, and the multiplier 36 and the interpolation accumulator 37 are provided. This constitutes the waveform sample interpolation means of the present invention.
[0029]
As can be understood from the above description of the operation, according to the above embodiment, the waveform sample group selected by the waveform selection signal including the timbre number TC, the pitch data NN, the key touch data KT, the waveform number WN, etc. is supported. Thus, an interpolation coefficient a as an interpolation parameter used for interpolation of waveform samples belonging to the same waveform sample group0~ AFiveIs changed. Further, since the first control signal FEG changes with the passage of time in response to the waveform sample group representing the musical sound waveform for a plurality of periods being read out with the passage of time, the waveform sample group that changes with the passage of time is obtained. Correspondingly, an interpolation coefficient a as an interpolation parameter used for interpolation of waveform samples belonging to the same waveform sample group.0~ AFiveWill also be changed. Therefore, the interpolation coefficient a according to the optimum interpolation function for each waveform sample group to be read out.0~ AFiveEven if the waveform sample group to be read changes due to differences in timbre, key touch, pitch, etc., and the waveform sample group to be read changes as time elapses from the attack to release of the musical sound Therefore, it is possible to realize the optimum waveform sample interpolation corresponding to the change. The second control signal LFO is an interpolation coefficient a.0~ AFiveSince this also acts to periodically change the tone, a periodic timbre change is also realized.
[0030]
In the above-described embodiment, a plurality of types of waveform sample groups representing a musical sound waveform having a large number of cycles and varying with time are stored in the waveform memory 31. The present invention can also be applied to a musical tone signal generator in which a plurality of types of waveform sample groups to be represented are stored in the waveform memory 31. In this case, the address generator 32 is configured to generate an address signal ADR for repeatedly reading out the waveform sample group, the aperiodic signal generator 51 and the low-frequency oscillator 52 are omitted, and simply according to the waveform number WN. Interpolation coefficient a0~ AFiveShould be determined.
[0031]
In the above embodiment, six interpolation waveform sample values Y0~ YFiveHowever, the number of waveform sample values for interpolation is not limited to six and may be other numbers. Further, the number of waveform sample values for interpolation may be selectively set in relation to connection with other circuits (for example, a digital filter), switching of the number of musical tone signal generation channels, and the like. In this case, the maximum value of the counter value CNT of the interpolation counter 33 is changed, and the channel timing is changed accordingly.
[0032]
Further, in the above embodiment, the waveform number WN is determined according to the tone color number TC, the pitch data NN, and the key touch data KT, and the interpolation coefficient a is determined according to the same number WN.0~ AFiveIs determined, but the interpolation function and the interpolation coefficient a in which the cutoff frequency decreases as the frequency number FNO further increases.0~ AFiveIs determined, it is possible to more effectively remove the aliasing noise included in the musical tone waveform signal that is finally output.
[Brief description of the drawings]
FIG. 1 is a schematic block diagram showing the entirety of an electronic musical instrument to which a musical tone signal generator according to the present invention is applied.
FIG. 2 is a detailed block diagram of the waveform generator of FIG.
FIG. 3 is a memory map of the interpolation coefficient memory of FIG. 2;
FIG. 4 is a graph showing an interpolation function for defining an interpolation coefficient stored in the interpolation coefficient memory.
FIG. 5 is a detailed block diagram of a function selection unit in FIG. 2;
6 is a time chart showing an example of a first control signal output from the aperiodic signal generator of FIG.
7 is a time chart showing an example of a second control signal output from the low frequency oscillator of FIG. 5. FIG.
FIG. 8 is a table map of the first table in FIG. 5;
FIG. 9 is a table map of the second table in FIG. 5;
10 is a time chart for explaining the circuit operation of FIGS. 2 and 5. FIG.
11 is a time chart for explaining the interpolation operation of FIG. 2;
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 11 ... Keyboard apparatus, 12 ... Tone selection switch, 13 ... Microcomputer, 15 ... Waveform generator, 16 ... Envelope generator, 22 ... Sound system, 31 ... Waveform memory, 32 ... Address generator, 33 ... Interpolation counter, 36 ... multiplier 37 ... interpolation accumulator 40 ... interpolation coefficient generator 41 ... interpolation coefficient memory 42 ... function selection unit 43,44 ... latch circuit 46 ... interpolation coefficient interpolation circuit 51 ... non-periodic signal generation 52, low frequency oscillator, 56 ... first table, 59 ... second table.

Claims (3)

楽音波形を離散的に表す一連の波形サンプル群を記憶した波形メモリと、
音高を指定するための音高指定信号を入力し、同入力した音高指定信号により指定される音高に応じた速度で変化して前記波形サンプル群に属する波形サンプルを指定するための複数ビットからなるアドレス信号を発生するアドレス信号発生手段と、
前記アドレス信号の上位ビットにより指定される波形サンプル近傍の複数の波形サンプルを補間用波形サンプルとして読み出す波形サンプル読み出し手段と、
複数ビットからなる制御信号を発生する制御信号発生手段と、
前記制御信号の上位ビットにより指定されるとともに相互に異なる特性を有する2つの補間関数にしたがいかつ前記アドレス信号の下位ビットにより表される値に応じて変化する2組の補間用パラメータを指定し、前記制御信号の下位ビットに応じて前記指定された2組の補間用パラメータを補間して1組の補間用パラメータを生成して出力する補間パラメータ発生手段と、
前記出力された1組の補間用パラメータを用いて前記読み出した補間用波形サンプルを補間して一つの波形サンプルを導出する波形サンプル補間手段と
を備えた楽音信号発生装置。
A waveform memory storing a series of waveform samples that discretely represent musical sound waveforms;
A plurality of pitch designation signals for designating pitches are input, and the waveform samples belonging to the waveform sample group are changed at a speed corresponding to the pitch designated by the pitch designation signal inputted. Address signal generating means for generating an address signal composed of bits;
Waveform sample reading means for reading out a plurality of waveform samples in the vicinity of the waveform sample specified by the upper bits of the address signal as interpolation waveform samples;
Control signal generating means for generating a control signal composed of a plurality of bits;
Specifying two sets of interpolation parameters that are specified by the upper bits of the control signal and that vary according to the values represented by the lower bits of the address signal according to two interpolation functions having different characteristics from each other ; Interpolation parameter generation means for generating and outputting one set of interpolation parameters by interpolating the two specified sets of interpolation parameters according to the lower bits of the control signal;
A musical tone signal generator comprising waveform sample interpolation means for interpolating the read waveform sample for interpolation using the set of output interpolation parameters to derive one waveform sample.
前記請求項1に記載の補間パラメータ発生手段を、
異なる特性を有する複数の補間関数にしたがった補間用パラメータを記憶する補間パラメータメモリと、
前記複数の補間関数のうちで前記制御信号の上位ビットにより指定されるとともに相互に異なる特性を有する2つの補間関数を表す補間関数指定データを出力する補間関数指定手段と、
前記補間関数指定データにより指定されるとともに相互に異なる特性を有する2つの補間関数にしたがいかつ前記アドレス信号の下位ビットにより表される値に応じて変化する2組の補間用パラメータを前記補間パラメータメモリから読み出す補間用パラメータ読み出し手段と、
前記読み出された2組の補間用パラメータを前記制御信号の下位ビットにより補間して1組の補間用パラメータを生成して出力する関数補間手段と
で構成した楽音信号発生装置。
The interpolation parameter generating means according to claim 1,
An interpolation parameter memory for storing parameters for interpolation according to a plurality of interpolation functions having different characteristics ;
Interpolation function designating means for outputting interpolation function designating data representing two interpolation functions designated by higher bits of the control signal among the plurality of interpolation functions and having mutually different characteristics ;
Two sets of interpolation parameters that are specified by the interpolation function specifying data and change according to two interpolation functions having different characteristics from each other and corresponding to a value represented by a lower bit of the address signal are stored in the interpolation parameter memory. Interpolation parameter reading means for reading from,
A musical tone signal generator comprising: function interpolation means for interpolating the read two sets of interpolation parameters with lower bits of the control signal to generate and output a set of interpolation parameters.
前記請求項1又は請求項2に記載の制御信号は、時変動する信号である楽音信号発生装置。  The musical tone signal generator according to claim 1 or 2, wherein the control signal according to claim 1 or 2 is a signal that varies with time.
JP21606598A 1995-03-28 1998-07-30 Music signal generator Expired - Fee Related JP3765670B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21606598A JP3765670B2 (en) 1995-03-28 1998-07-30 Music signal generator

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP7069992A JP2897680B2 (en) 1995-03-28 1995-03-28 Music signal generator
JP21606598A JP3765670B2 (en) 1995-03-28 1998-07-30 Music signal generator

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP7069992A Division JP2897680B2 (en) 1995-03-28 1995-03-28 Music signal generator

Publications (2)

Publication Number Publication Date
JPH11126078A JPH11126078A (en) 1999-05-11
JP3765670B2 true JP3765670B2 (en) 2006-04-12

Family

ID=13418687

Family Applications (2)

Application Number Title Priority Date Filing Date
JP7069992A Expired - Fee Related JP2897680B2 (en) 1995-03-28 1995-03-28 Music signal generator
JP21606598A Expired - Fee Related JP3765670B2 (en) 1995-03-28 1998-07-30 Music signal generator

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP7069992A Expired - Fee Related JP2897680B2 (en) 1995-03-28 1995-03-28 Music signal generator

Country Status (1)

Country Link
JP (2) JP2897680B2 (en)

Also Published As

Publication number Publication date
JP2897680B2 (en) 1999-05-31
JPH08263066A (en) 1996-10-11
JPH11126078A (en) 1999-05-11

Similar Documents

Publication Publication Date Title
JP2722907B2 (en) Waveform generator
KR0150223B1 (en) Sound signal generator
JPH079588B2 (en) Musical sound generator
JPS5917838B2 (en) Waveform generator for electronic musical instruments
JPS6129895A (en) Musical sound generator
CN101149916A (en) Filter device and electronic musical instrument using filter device
US4890527A (en) Mixing type tone signal generation device employing two channels generating tones based upon different parameter
US5173567A (en) Musical tone generating apparatus with parameter controller for changing characteristics of musical tone signal
JP3765670B2 (en) Music signal generator
JPH0243199B2 (en)
JP2915452B2 (en) Tone generator
JPH0422519B2 (en)
JP2779983B2 (en) Electronic musical instrument
JP2663496B2 (en) Signal interpolator for musical tone signal generator
JP2580860B2 (en) Music signal generator
JP2684833B2 (en) Music signal generator
JP2699886B2 (en) Music control information generator
JPS61110199A (en) Musical sound signal generator
JPH02181797A (en) Musical tone signal synthesizer
JP3257520B2 (en) Music signal generator
JP2723041B2 (en) Tone generator
JPH0369119B2 (en)
JPH07104670B2 (en) Electronic musical instrument
JPH08146961A (en) Waveform memory type musical sound generating device
JPH0766268B2 (en) Musical sound generator

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20000620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050922

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060124

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090203

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100203

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110203

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120203

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130203

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees