JP3223282B2 - 音響信号発生装置 - Google Patents

音響信号発生装置

Info

Publication number
JP3223282B2
JP3223282B2 JP33789693A JP33789693A JP3223282B2 JP 3223282 B2 JP3223282 B2 JP 3223282B2 JP 33789693 A JP33789693 A JP 33789693A JP 33789693 A JP33789693 A JP 33789693A JP 3223282 B2 JP3223282 B2 JP 3223282B2
Authority
JP
Japan
Prior art keywords
waveform data
sounding
waveform
data
register
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
JP33789693A
Other languages
English (en)
Other versions
JPH07199938A (ja
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP33789693A priority Critical patent/JP3223282B2/ja
Publication of JPH07199938A publication Critical patent/JPH07199938A/ja
Application granted granted Critical
Publication of JP3223282B2 publication Critical patent/JP3223282B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、電子楽器の音源などの
音響信号発生装置に係り、更に詳しくは、音響信号発生
時の折り返しノイズの除去技術に関する。
【0002】
【従来の技術】音響信号をディジタルデータからアナロ
グ信号に変換する場合に、折り返しノイズの発生が問題
となる。この折り返しノイズは、音響信号がサンプリン
グ周波数の1/2の周波数よりも高い周波数の信号成分
を有している場合に、変換の過程において、その信号成
分が音響信号の最高周波数成分以下の周波数の信号成分
に重畳されることにより、発生する。
【0003】ここで、近年のDAC(ディジタル/アナ
ログ変換器)において、サンプリング周波数の2、4、
8倍といったオーバーサンプリング周波数で変換が可能
なものが現われている。そして、従来、音響信号発生装
置内で発生された音響波形データをオーバーサンプリン
グ周波数で動作するディジタルフィルタに通し、音響波
形データのサンプリン周波数をその波形データが有する
最高周波数成分よりも遥かに高い周波数であるオーバー
サンプリング周波数まで引き上げることによって、折り
返しノイズを除去する技術が知られている。
【0004】
【発明が解決しようとする課題】しかし、このような従
来技術では、オーバーサンプリング周波数で動作するデ
ィジタルフィルタが必要となり、音響信号発生装置の製
造コストを増加させてしまうという問題点を有してい
た。
【0005】本発明の課題は、ハードウエアを増加させ
ることなく、折り返しノイズを除去可能とすることにあ
る。
【0006】
【課題を解決するための手段】本発明は、波形データ記
憶手段(波形メモリ103)に記憶されている波形デー
タを読み出して音響波形データを生成する音響信号発生
装置を前提とする。
【0007】そして、まず、サンプリング周期毎に、そ
のサンプリング周期を時分割して得られる複数の発音チ
ャネルの各々において、波形データ記憶手段上の指定さ
れた波形アドレスから指定された歩進幅で波形データを
読み出す波形データ読出し手段(発音チャネルデータ生
成部)を有する。
【0008】次に、1つの発音指示に対して、波形デー
タ読出し手段に対して、所定数の発音チャネルのそれぞ
れにおいて、発音指示により指定される波形アドレスよ
り発音指示により指定される歩進幅の所定数分の1ずつ
ずれた波形アドレスから発音指示により指定される歩進
幅で波形データの読出しを指示する発音制御手段(CP
U101)を有する。より具体的には、この発音制御手
段は、例えば、1つの発音指示に対して、波形データ読
出し手段に対して、第1の前記発音チャネルにおいて、
発音指示により指定される波形アドレスから発音指示に
より指定される歩進幅で波形データの読出しを指示する
と共に、第2の前記発音チャネルにおいて、発音指示に
より指定される波形アドレスに発音指示により指定され
る歩進幅の1/2のオフセット値を加算して得られる波
形アドレスから発音指示により指定される歩進幅で波形
データの読出しを指示する。
【0009】そして、波形データ読出し手段により、所
定数の発音チャネルのそれぞれにおいて読み出された波
形データに基づいて生成される音響波形データを、サン
プリング周期の所定数分の1の周期で順次D/A変換器
などに出力する音響波形データ出力手段(発音チャネル
データ出力部)を有する。より具体的には、この音響波
形データ出力手段は、前述した第1の発音チャネルにお
いて読み出された波形データに基づいて生成される音響
波形データと、前述した第2の発音チャネルにおいて読
み出された波形データに基づいて生成される音響波形デ
ータを、サンプリング周期の1/2の周期で順次D/A
変換器などに出力する。
【0010】上述の発明の構成において、発音制御手段
は、発音指示が所定の属性を有する場合、例えば、所定
の音域の楽音のノートオン指示である場合、又は所定の
音域の所定の音色の楽音のノートオン指示であるような
場合に、上述した動作を行うように動作し、それ以外の
場合には、通常の例えば1つの発音チャネルのみを使用
した発音処理を行うように動作するように、発明を構成
することもできる。
【0011】
【作用】オーバーサンプリング用の特別なディジタルフ
ィルタを用いることなく、複数の発音チャネルを同時に
制御するだけで、オーバーサンプリング処理を実現する
ことができ、折り返しノイズを除去できる。
【0012】また、発音指示の属性に応じて、必要な場
合のみ複数の発音チャネルを同時に制御することによ
り、発音チャネルを有効に利用することができる。
【0013】
【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。まず、図1は、本発明が電子鍵盤
楽器に適用される場合の実施例の全体構成図である。
【0014】鍵盤105の鍵が押鍵操作されることによ
り発生する音高を指定するノートデータと押鍵強度を指
定するベロシティデータは、バス106を介してCPU
101によって検出された後、波形メモリ103から波
形データが読み出される場合の歩進値データとエンベロ
ープ値データに変換された後、バス106を介して音源
102に、それが処理する空き発音チャネルに対応する
データとしてセットされる。
【0015】音源102は、発音チャネル毎に、時分割
処理により、波形メモリ103に波形アドレス整数部W
ADを供給してそこから出力される波形データWDT
を、発音チャネルデータとして取り込む。そして、各発
音チャネルの発音チャネルデータは、サンプリング周波
数に同期して加算され、その加算結果がD/A変換器1
04に出力される。この場合、本発明に関連する特徴と
して、波形メモリ103内の各波形データは2つの発音
チャネルを使ってオーバーサンプリングされ、その結果
得られる2つの発音チャネルの発音チャネルデータは、
サンプリング周波数の2倍のオーバーサンプリング速度
で、D/A変換器104に出力される。
【0016】D/A変換器104は、サンプリング周波
数の2倍のオーバーサンプリング速度で、出力波形デー
タをアナログ楽音波形信号に変換し、そのアナログ楽音
波形信号は、アンプ107で増幅された後、スピーカ1
08から楽音として放音される。
【0017】次に、図1の音源102は、それぞれが図
2に示される構成を有する8つの発音チャネルデータ生
成部と、各発音チャネルデータ生成部が生成した発音チ
ャネルデータをラッチする8つの発音チャネルデータラ
ッチ301を含む図3に示される発音チャネルデータ出
力部とから構成される。
【0018】8つの発音チャネルデータ生成部は、図4
(a) に示されるように、それぞれ、各サンプリング周期
T内の1〜8の数字が付されている時分割タイミングに
おいて、波形アドレスを生成してその整数部WADを図
1の波形メモリ103に供給し、その結果得られる波形
データWDTから発音チャネルデータを生成して、図3
に示される各発音チャネルデータラッチ301にラッチ
させる。各発音チャネルデータラッチ301にラッチさ
れた発音チャネルデータは、現在のサンプリング周期と
次のサンプリング周期の変化タイミングにおいて、図3
の8つのスイッチ302の設定内容に従い加算器303
又は304で加算され、加算器303での加算結果は第
1出力波形データAとして第1出力ラッチ305に、ま
た、加算器304での加算結果は第2出力波形データB
として第2出力ラッチ306に、それぞれラッチされ
る。第1出力波形データA及び第2出力波形データB
は、図4(b) に示されるように、サンプリング周期Tの
1/2の周期で、図1のD/A変換器104に順次出力
される。
【0019】次に、図2の発音チャネルデータ生成部の
詳細な動作について説明する。図1のCPU101から
は、バス106からスイッチ203を介してアドレスレ
ジスタ204に、波形メモリ103に記憶されている読
出しが開始されるべき波形データの先頭アドレスがセッ
トされ、また、バス106から歩進値レジスタ201
に、波形メモリ103から波形データが読み出されると
きの歩進幅を示す歩進値データが、更に、バス106か
らエンベロープ値レジスタ209に、出力される発音チ
ャネルデータの強度を決定するエンベロープ値データが
セットされる。ここで、歩進値データはノートデータに
対応し、エンベロープ値データはベロシティデータに対
応する。
【0020】アドレスレジスタ204内の波形アドレス
は、加算器202及びスイッチ203を介して、図4
(a) の各サンプリング周期内の何れかの数字に対応する
タイミング毎に、発音開始時にセットされた先頭アドレ
スから、歩進値レジスタ201にセットされた歩進値デ
ータが示す歩進幅で、順次インクリメントされる。この
場合、歩進値データは実数値を指定できるため、波形ア
ドレスも実数値となる。そして、この波形アドレスの整
数部WADが図1の波形メモリ103に出力される。
【0021】データレジスタ205、減算器206、乗
算器207、及び加算器208からなる部分において、
波形メモリ103から読み出された現在のサンプリング
周期T(n+1)に対応する波形データWDT(n+
1)と、データレジスタ205に保持されている1つ前
のサンプリング周期T(n)に対応する波形データWD
T(n)と、アドレスレジスタ204から出力されてい
る波形アドレスの小数部.WADとから、直線補間演算
により、アドレスレジスタ204に得られている実数の
アドレスデータに対応する波形データを算出する。直線
補間演算の原理を図5に示す。まず、減算器206は、
波形メモリ103から読み出された現在のサンプリング
周期T(n+1)に対応する波形データWDT(n+
1)の、データレジスタ205に保持されている1つ前
のサンプリング周期T(n)に対応する波形データWD
T(n)に対する差分を算出する。次に、乗算器207
が、上述の差分値に、波形アドレス小数部.WADに対
応する比率を乗算することにより、1つ前のサンプリン
グ周期T(n)に対応する波形データWDT(n)から
の増分値を算出する。そして、加算器208が、この増
分値を、データレジスタ205から出力されている1つ
前のサンプリング周期T(n)に対応する波形データW
DT(n)に加算することにより、アドレスレジスタ2
04に得られている実数のアドレスデータに対応する波
形データを算出する。
【0022】乗算器210は、上述の波形データにエン
ベロープ値データを乗算することにより、発音チャネル
データWOCHを算出する。ここで、図1のCPU101
は、1つの楽音の発音開始を決定すると、音源102内
の2つの発音チャネルデータ生成部に対して、同じ歩進
値データ及びエンベロープ値データをセットする。ま
た、CPU101は、一方の発音チャネルデータ生成部
内のアドレスレジスタ204には、波形メモリ103に
記憶されている読出しが開始されるべき波形データの先
頭アドレスをセットし、他方の発音チャネルデータ生成
部内のアドレスレジスタ204には、上記先頭アドレス
に歩進値データの1/2のオフセット値を加算して得ら
れるアドレスをセットする。この結果、2つの発音チャ
ネルデータ生成部は、波形メモリ103上の同じ波形デ
ータから、図6の波形データA及び波形データBとして
示されるように、サンプリング周期毎に、サンプリング
周期の1/2周期だけ位相がずれた発音チャネルデータ
を生成することになる。
【0023】このようにして生成された2つの発音チャ
ネルデータは、図3の8つの発音チャネルデータラッチ
301のうちの何れか2つに保持される。そして、一方
の発音チャネルデータは、それが保持される発音チャネ
ルデータラッチ301が接続されるスイッチ302及び
加算器303を介して第1出力ラッチ305に第1出力
波形データAとして保持され、他方の発音チャネルデー
タは、それが保持される発音チャネルデータラッチ30
1が接続されるスイッチ302及び加算器304を介し
て第2出力ラッチ306に第2出力波形データBとして
保持された後、図4(b) に示されるように、サンプリン
グ周期Tの1/2の周期で、図1のD/A変換器104
に順次出力される。この結果、第1出力波形データAと
第2出力波形データBとが合成されて図3のスイッチ3
07から出力される出力波形データA+Bは、図6に示
されるように、サンプリング周波数の2倍の速度でオー
バーサンプリングされたデータとなる。
【0024】以上の動作において、CPU101は、各
楽音の開始時に2つの空き発音チャネルを決定した場合
において、図2のアドレスレジスタ204に波形データ
の先頭アドレスのみをセットする発音チャネルに対応す
る図3のスイッチ302は、その出力が加算器303側
に出力されるように設定し、図2のアドレスレジスタ2
04に(波形データの先頭アドレス+歩進値データの1
/2のオフセット値)をセットする発音チャネルに対応
する図3のスイッチ302は、その出力が加算器304
側に出力されるように設定する。
【0025】以上説明したように、図1の音源102
に、図3に示される簡単な回路を付加するだけで、オー
バーサンプリング機能を実現することができる。ここ
で、上述のオーバーサンプリング処理を、全ての発音開
始される楽音に対し適用するのではなく、発音チャネル
を有効に利用するために、オーバーサンプリング処理が
必要な楽音に対してのみ適用することが考えられる。具
体的には、波形メモリ103において読出しが指定され
た波形データのピッチが高く高周波数領域に信号成分が
多い場合、又は波形メモリ103において読出しが指定
された波形データが倍音を多く含んでおり高周波数領域
にまで信号成分が達している場合などにおいては、上述
のオーバーサンプリング処理を行うことが効果的であ
る。
【0026】このような基準に基づいて図1のCPU1
01が実行する、発音指示のための制御動作の第1の実
施例の動作フローチャートを図7、図8に示す。まず、
ステップ701では、CPU101及び音源102内の
各種レジスタの内容などがイニシャライズされる。
【0027】次に、ステップ702で、CPU101内
のレジスタnの値が0に初期設定された後に、ステップ
714でレジスタnの値が+1ずつインクリメントされ
ながら、図8のステップ715でレジスタnの値が図1
の鍵盤105の鍵数を越えたと判断されるまで、以下の
ステップ703〜711の制御処理が実行される。
【0028】まず、ステップ703で、レジスタnの値
に対応する位置の鍵の状態が判定される。ステップ70
3で、レジスタnの値に対応する位置の鍵の状態が変化
しないと判定された場合は、何も処理が行われず、ステ
ップ714で、次のレジスタnの値がインクリメントさ
れて次の鍵位置に対する制御処理が実行される。
【0029】ステップ703で、レジスタnの値に対応
する位置の鍵がノートオン(ON)されたと判定された
場合は、ステップ704〜711が実行される。即ち、
まず、ステップ704で、処理対象である鍵の位置を示
すレジスタnの値がCPU101内のレジスタTNRに
代入された後、ステップ705で、このレジスタTNR
の値が、予め鍵盤105上の鍵域を分割する鍵位置を格
納しているレジスタSPLITの値以上であるか否か、
即ち、ノートオンされた鍵の位置が所定の上鍵域である
か否かが判定される。
【0030】ステップ705で、レジスタTNRの値が
レジスタSPLITの値以上であると判定された場合に
は、ステップ706で、音源102において現在発音処
理がなされていない空き発音チャネルが検出される。
【0031】更にステップ707では、ステップ706
での検出処理の結果、空き発音チャネルが2個あるか否
かが判定される。CPU101は、ステップ707で空
き発音チャネルが2個あると判定した場合には、ステッ
プ708で、鍵の位置すなわち音高を示すレジスタTN
Rの値に対応する歩進値データと、後述するステップ7
18の処理によりCPU101内のレジスタTCRにセ
ットされている音色番号に対応する波形データの先頭ア
ドレス、及び特には図示しないレジスタに保持されてい
るノートオンされた鍵のベロシティデータに対応するエ
ンベロープ値データを、2個の空き発音チャネルに対応
する音源102内の2つの発音チャネルデータ生成部に
転送する。この場合に、CPU101は、前述したよう
に、一方の発音チャネルデータ生成部内のアドレスレジ
スタ204には、波形メモリ103に記憶されている読
出しが開始されるべき波形データの先頭アドレスのみを
セットし、他方の発音チャネルデータ生成部内のアドレ
スレジスタ204には、上記先頭アドレスに歩進値デー
タの1/2のオフセット値を加算して得られるアドレス
をセットする。また、CPU101は、前述したように
して、上述の2つの発音チャネルに対応する音源102
内の図3に示されるスイッチ302も制御する。
【0032】このようにして、所定の上鍵域の鍵がノー
トオンされた場合には、2つの発音チャネルを使ったオ
ーバーサンプリング処理に基づく楽音の発音処理が行わ
れることになる。
【0033】ステップ708の処理が実行された後は、
ステップ714で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。一
方、所定の上鍵域以下の鍵域の鍵がノートオンされステ
ップ705の判定がNOとなりステップ709で空き発
音チャネルの検出処理が実行された場合、或いは、所定
の上鍵域の鍵がノートオンされた場合であってもステッ
プ707で空き発音チャネルが2個はないと判定された
場合には、更に、ステップ710で、空き発音チャネル
が1個あるか否かが判定される。
【0034】CPU101は、ステップ710で空き発
音チャネルが1個あると判定した場合には、ステップ7
11で、鍵の位置すなわち音高を示すレジスタTNRの
値に対応する歩進値データと、後述するステップ718
の処理によりCPU101内のレジスタTCRにセット
されている音色番号に対応する波形データの先頭アドレ
ス、及び特には図示しないレジスタに保持されているノ
ートオンされた鍵のベロシティデータに対応するエンベ
ロープ値データを、上述の空き発音チャネルに対応する
音源102内の発音チャネルデータ生成部に転送する。
【0035】このようにして、所定の上鍵域以下の鍵域
の鍵がノートオンされた場合、又は所定の上鍵域の鍵が
ノートオンされた場合であっても空き発音チャネルが1
個しかなかった場合には、オーバーサンプリング処理で
はない通常の発音処理が行われることになる。なお、所
定の上鍵域の鍵がノートオンされた場合で空き発音チャ
ネルが1個しかなかった場合には、オーバーサンプリン
グ処理が行えないことになるが、空き発音チャネルが少
ない場合には他に複数の楽音が発音されていることにな
るため折り返しノイズはそれらの楽音にマスキングされ
て目立たなくなる。
【0036】ステップ711の処理が実行された後は、
ステップ714で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。ス
テップ710で空き発音チャネルが1個もないと判定さ
れた場合には、発音処理は行われず、ステップ714
で、次のレジスタnの値がインクリメントされて次の鍵
位置に対する制御処理が実行される。
【0037】次に、前述したステップ703で、レジス
タnの値に対応する位置の鍵がノートオフ(OFF)さ
れたと判定された場合は、ステップ712で、レジスタ
nの値に対応するノートナンバが割り当てられている発
音チャネルが検出された後、ステップ713で、その発
音チャネルに対して消音処理が実行される。
【0038】ステップ713の処理が実行された後は、
ステップ714で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。以
上のステップ702〜図8のステップ715によって、
全ての鍵に対する状態変化の検出と発音制御処理が実行
された後は、図8のステップ716で、特には図示しな
い音色スイッチの設定状態が操作され、ステップ717
でスイッチの設定状態に変化があると判定された場合に
は、ステップ718で、レジスタTCRに新たな音色番
号が設定される。
【0039】その後、ステップ702の処理に制御が戻
り、上述の処理が繰り返される。次に、図1のCPU1
01が実行する、発音指示のための制御動作の第2の実
施例の動作フローチャートを図9、図10に示す。
【0040】まず、ステップ901では、CPU101
及び音源102内の各種レジスタの内容などがイニシャ
ライズされる。次に、ステップ902で、CPU101
内のレジスタnの値が0に初期設定された後に、ステッ
プ922でレジスタnの値が+1ずつインクリメントさ
れながら、図10のステップ923でレジスタnの値が
図1の鍵盤105の鍵数を越えたと判断されるまで、以
下のステップ903〜図10のステップ919の制御処
理が実行される。
【0041】まず、ステップ903で、レジスタnの値
に対応する位置の鍵の状態が判定される。ステップ90
3で、レジスタnの値に対応する位置の鍵の状態が変化
しないと判定された場合は、何も処理が行われず、ステ
ップ922で、次のレジスタnの値がインクリメントさ
れて次の鍵位置に対する制御処理が実行される。
【0042】ステップ903で、レジスタnの値に対応
する位置の鍵がノートオン(ON)されたと判定された
場合は、ステップ904〜912が実行される。即ち、
まず、ステップ904で、処理対象である鍵の位置を示
すレジスタnの値がCPU101内のレジスタTNRに
代入された後、ステップ905で、このレジスタTNR
の値が、予め鍵盤105上の鍵域を分割する鍵位置を格
納しているレジスタSPLITの値以上であるか否か、
即ち、ノートオンされた鍵の位置が所定の上鍵域である
か否かが判定される。
【0043】ステップ905で、レジスタTNRの値が
レジスタSPLITの値以上であると判定された場合に
は、更にステップ906で、後述するステップ926の
処理によりCPU101内のレジスタUTCRにセット
されている上鍵域の音色番号がオーバーサンプリング処
理をすべき特定の音色(例えば倍音成分が多い音色)の
番号であるかが判定される。
【0044】ステップ906の判定がYESの場合に
は、ステップ907で、音源102において現在発音処
理がなされていない空き発音チャネルが検出される。更
にステップ908では、ステップ907での検出処理の
結果、空き発音チャネルが2個あるか否かが判定され
る。
【0045】CPU101は、ステップ908で空き発
音チャネルが2個あると判定した場合は、ステップ90
9で、鍵の位置すなわち音高を示すレジスタTNRの値
に対応する歩進値データと、後述するステップ926の
処理によりCPU101内のレジスタUTCRにセット
されている上鍵域の音色番号に対応する波形データの先
頭アドレス、及び特には図示しないレジスタに保持され
ているノートオンされた鍵のベロシティデータに対応す
るエンベロープ値データを、2個の空き発音チャネルに
対応する音源102内の2つの発音チャネルデータ生成
部に転送する。この場合、CPU101は、前述したよ
うに、一方の発音チャネルデータ生成部内のアドレスレ
ジスタ204には、波形メモリ103に記憶されている
読出しが開始されるべき波形データの先頭アドレスのみ
をセットし、他方の発音チャネルデータ生成部内のアド
レスレジスタ204には、上記先頭アドレスに歩進値デ
ータの1/2のオフセット値を加算して得られるアドレ
スをセットする。また、CPU101は、前述したよう
にして、上述の2つの発音チャネルに対応する音源10
2内の図3に示されるスイッチ302も制御する。
【0046】このようにして、所定の上鍵域の鍵がノー
トオンされ、かつその上鍵域に所定の音色がアサインさ
れている場合には、2つの発音チャネルを使ったオーバ
ーサンプリング処理に基づく楽音の発音処理が行われる
ことになる。
【0047】ステップ909の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。一
方、レジスタUTCRにセットされている上鍵域の音色
番号がオーバーサンプリング処理をすべき特定の音色の
番号ではなくステップ906の判定がNOとなり続いて
ステップ910で空き発音チャネルの検出処理が実行さ
れた場合、或いは、特定の音色であってもステップ90
8で空き発音チャネルが2個はないと判定された場合に
は、更に、ステップ911で、空き発音チャネルが1個
あるか否かが判定される。
【0048】CPU101は、ステップ911で空き発
音チャネルが1個あると判定した場合には、ステップ9
12で、鍵の位置すなわち音高を示すレジスタTNRの
値に対応する歩進値データと、後述するステップ926
の処理によりCPU101内のレジスタUTCRにセッ
トされている上鍵域の音色番号に対応する波形データの
先頭アドレス、及び特には図示しないレジスタに保持さ
れているノートオンされた鍵のベロシティデータに対応
するエンベロープ値データを、上述の空き発音チャネル
に対応する音源102内の発音チャネルデータ生成部に
転送する。
【0049】このようにして、特定の音色以外の音色が
アサインされている所定の上鍵域の鍵がノートオンされ
た場合、又は特定の音色がアサインされている所定の上
鍵域の鍵がノートオンされた場合であっても空き発音チ
ャネルが1個しかなかった場合には、オーバーサンプリ
ング処理ではない通常の発音処理が行われることにな
る。
【0050】ステップ912の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。ス
テップ911で空き発音チャネルが1個もないと判定さ
れた場合には、発音処理は行われず、ステップ922
で、次のレジスタnの値がインクリメントされて次の鍵
位置に対する制御処理が実行される。
【0051】一方、所定の上鍵域以下の鍵域の鍵がノー
トオンされステップ905の判定がNOとなった場合
は、更に図10のステップ913で、後述するステップ
929の処理によりCPU101内のレジスタLTCR
にセットされている下鍵域の音色番号がオーバーサンプ
リング処理をすべき特定の音色の番号であるかが判定さ
れる。
【0052】ステップ913の判定がYESの場合に
は、ステップ914で、音源102において現在発音処
理がなされていない空き発音チャネルが検出される。更
にステップ915では、ステップ914での検出処理の
結果、空き発音チャネルが2個あるか否かが判定され
る。
【0053】CPU101は、ステップ915で空き発
音チャネルが2個あると判定した場合は、ステップ91
6で、鍵の位置すなわち音高を示すレジスタTNRの値
に対応する歩進値データと、後述するステップ929の
処理によりCPU101内のレジスタLTCRにセット
されている下鍵域の音色番号に対応する波形データの先
頭アドレス、及び特には図示しないレジスタに保持され
ているノートオンされた鍵のベロシティデータに対応す
るエンベロープ値データを、2個の空き発音チャネルに
対応する音源102内の2つの発音チャネルデータ生成
部に転送する。この場合、CPU101は、前述したよ
うに、一方の発音チャネルデータ生成部内のアドレスレ
ジスタ204には、波形メモリ103に記憶されている
読出しが開始されるべき波形データの先頭アドレスのみ
をセットし、他方の発音チャネルデータ生成部内のアド
レスレジスタ204には、上記先頭アドレスに歩進値デ
ータの1/2のオフセット値を加算して得られるアドレ
スをセットする。また、CPU101は、前述したよう
にして、上述の2つの発音チャネルに対応する音源10
2内の図3に示されるスイッチ302も制御する。
【0054】このようにして、所定の下鍵域の鍵がノー
トオンされ、かつその下鍵域に所定の音色がアサインさ
れている場合には、2つの発音チャネルを使ったオーバ
ーサンプリング処理に基づく楽音の発音処理が行われる
ことになる。
【0055】ステップ916の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。一
方、レジスタLTCRにセットされている下鍵域の音色
番号がオーバーサンプリング処理をすべき特定の音色の
番号ではなくステップ913の判定がNOとなり続いて
ステップ917で空き発音チャネルの検出処理が実行さ
れた場合、或いは、特定の音色であってもステップ91
5で空き発音チャネルが2個はないと判定された場合に
は、更に、ステップ918で、空き発音チャネルが1個
あるか否かが判定される。
【0056】CPU101は、ステップ918で空き発
音チャネルが1個あると判定した場合には、ステップ9
19で、鍵の位置すなわち音高を示すレジスタTNRの
値に対応する歩進値データと、後述するステップ929
の処理によりCPU101内のレジスタLTCRにセッ
トされている下鍵域の音色番号に対応する波形データの
先頭アドレス、及び特には図示しないレジスタに保持さ
れているノートオンされた鍵のベロシティデータに対応
するエンベロープ値データを、上述の空き発音チャネル
に対応する音源102内の発音チャネルデータ生成部に
転送する。
【0057】このようにして、特定の音色以外の音色が
アサインされている所定の下鍵域の鍵がノートオンされ
た場合、又は特定の音色がアサインされている所定の下
鍵域の鍵がノートオンされた場合であっても空き発音チ
ャネルが1個しかなかった場合には、オーバーサンプリ
ング処理ではない通常の発音処理が行われることにな
る。
【0058】ステップ919の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。ス
テップ918で空き発音チャネルが1個もないと判定さ
れた場合には、発音処理は行われず、ステップ922
で、次のレジスタnの値がインクリメントされて次の鍵
位置に対する制御処理が実行される。
【0059】次に、前述した図9のステップ903で、
レジスタnの値に対応する位置の鍵がノートオフ(OF
F)されたと判定された場合は、ステップ920で、レ
ジスタnの値に対応するノートナンバが割り当てられて
いる発音チャネルが検出された後、ステップ921で、
その発音チャネルに対して消音処理が実行される。
【0060】ステップ921の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。以
上の図9のステップ902〜図10のステップ923に
よって、全ての鍵に対する状態変化の検出と発音制御処
理が実行された後は、図10のステップ924で、特に
は図示しない上鍵域音色スイッチの設定状態が操作さ
れ、ステップ925でスイッチの設定状態に変化がある
と判定された場合には、ステップ926で、レジスタU
TCRに新たな音色番号が設定される。
【0061】続いて、ステップ927で、特には図示し
ない下鍵域音色スイッチの設定状態が操作され、ステッ
プ928でスイッチの設定状態に変化があると判定され
た場合は、ステップ929で、レジスタLTCRに新た
な音色番号が設定される。
【0062】その後、図9のステップ902の処理に制
御が戻り、上述の処理が繰り返される。
【0063】
【発明の効果】本発明によれば、オーバーサンプリング
用の特別なディジタルフィルタを用いることなく、複数
の発音チャネルを同時に制御するだけで、オーバーサン
プリング処理を実現することができ、折り返しノイズを
除去することが可能となる。このため、音響信号発生装
置のコストの増加を抑えることができる。
【0064】また、発音指示の属性に応じて、必要な場
合のみ複数の発音チャネルを同時に制御することによ
り、発音チャネルを有効に利用することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施例の全体構成図である。
【図2】音源内の発音チャネルデータ生成部の構成図で
ある。
【図3】音源内の発音チャネルデータ出力部の構成図で
ある。
【図4】音源の動作タイミングチャートである。
【図5】波形データの直線補間演算の説明図である。
【図6】音源のオーバーサンプリング動作の説明図であ
る。
【図7】CPUの制御動作の第1の実施例の動作フロー
チャート(その1)である。
【図8】CPUの制御動作の第1の実施例の動作フロー
チャート(その2)である。
【図9】CPUの制御動作の第2の実施例の動作フロー
チャート(その1)である。
【図10】CPUの制御動作の第2の実施例の動作フロ
ーチャート(その2)である。
【符号の説明】
101 CPU 102 音源 103 波形メモリ 104 D/A変換器 105 鍵盤 106 バス 107 アンプ 108 スピーカ 201 歩進値レジスタ 202、208 加算器 203 スイッチ 204 アドレスレジスタ 205 データレジスタ 206 減算器 207、210 乗算器 209 エンベロープ値レジスタ 301 発音チャネルデータラッチ 302、307 スイッチ 303、304 加算器 305 第1出力ラッチ 306 第2出力ラッチ

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 波形データ記憶手段に記憶されている波
    形データを読み出して音響波形データを生成する音響信
    号発生装置において、 サンプリング周期毎に、該サンプリング周期を時分割し
    て得られる複数の発音チャネルの各々において、前記波
    形データ記憶手段上の指定された波形アドレスから指定
    された歩進幅で前記波形データを読み出す波形データ読
    出し手段と、 1つの発音指示に対して、前記波形データ読出し手段に
    対して、所定数の前記発音チャネルのそれぞれにおい
    て、前記発音指示により指定される波形アドレスより前
    記発音指示により指定される歩進幅の所定数分の1ずつ
    ずれた波形アドレスから前記発音指示により指定される
    歩進幅で前記波形データの読出しを指示する発音制御手
    段と、 前記波形データ読出し手段により、前記所定数の発音チ
    ャネルのそれぞれにおいて読み出された前記波形データ
    に基づいて生成される音響波形データを、前記サンプリ
    ング周期の所定数分の1の周期で順次出力する音響波形
    データ出力手段と、 を有することを特徴とする音響信号発生装置。
  2. 【請求項2】 波形データ記憶手段に記憶されている波
    形データを読み出して音響波形データを生成する音響信
    号発生装置において、 サンプリング周期毎に、該サンプリング周期を時分割し
    て得られる複数の発音チャネルの各々において、前記波
    形データ記憶手段上の指定された波形アドレスから指定
    された歩進幅で前記波形データを読み出す波形データ読
    出し手段と、 1つの発音指示に対して、前記波形データ読出し手段に
    対して、第1の前記発音チャネルにおいて、前記発音指
    示により指定される波形アドレスから前記発音指示によ
    り指定される歩進幅で前記波形データの読出しを指示す
    ると共に、第2の前記発音チャネルにおいて、前記発音
    指示により指定される波形アドレスに前記発音指示によ
    り指定される歩進幅の1/2のオフセット値を加算して
    得られる波形アドレスから前記発音指示により指定され
    る歩進幅で前記波形データの読出しを指示する発音制御
    手段と、 前記波形データ読出し手段により、前記第1の発音チャ
    ネルにおいて読み出された前記波形データに基づいて生
    成される音響波形データと、前記第2の発音チャネルに
    おいて読み出された前記波形データに基づいて生成され
    る音響波形データを、前記サンプリング周期の1/2の
    周期で順次出力する音響波形データ出力手段と、 を有することを特徴とする音響信号発生装置。
  3. 【請求項3】 前記発音制御手段は、前記発音指示が所
    定の属性を有する場合に動作する、 ことを特徴とする請求項1又は2の何れか1項に記載の
    音響信号発生装置。
JP33789693A 1993-12-28 1993-12-28 音響信号発生装置 Expired - Fee Related JP3223282B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33789693A JP3223282B2 (ja) 1993-12-28 1993-12-28 音響信号発生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33789693A JP3223282B2 (ja) 1993-12-28 1993-12-28 音響信号発生装置

Publications (2)

Publication Number Publication Date
JPH07199938A JPH07199938A (ja) 1995-08-04
JP3223282B2 true JP3223282B2 (ja) 2001-10-29

Family

ID=18313025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33789693A Expired - Fee Related JP3223282B2 (ja) 1993-12-28 1993-12-28 音響信号発生装置

Country Status (1)

Country Link
JP (1) JP3223282B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7807836B2 (en) 2002-04-25 2010-10-05 Basf Aktiengesellschaft Preparation of perylen-3,4:9,10-tetracarboxylic dianhydride and also of naphtalene-1,8-dicarboximides

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7807836B2 (en) 2002-04-25 2010-10-05 Basf Aktiengesellschaft Preparation of perylen-3,4:9,10-tetracarboxylic dianhydride and also of naphtalene-1,8-dicarboximides

Also Published As

Publication number Publication date
JPH07199938A (ja) 1995-08-04

Similar Documents

Publication Publication Date Title
US4942799A (en) Method of generating a tone signal
JPH09127941A (ja) 電子楽器
US5340938A (en) Tone generation apparatus with selective assignment of one of tone generation processing modes to tone generation channels
US5625158A (en) Musical tone generating apparatus
US4890527A (en) Mixing type tone signal generation device employing two channels generating tones based upon different parameter
JP3223282B2 (ja) 音響信号発生装置
JP2663496B2 (ja) 楽音信号発生装置のための信号補間器
JP2707818B2 (ja) 電子楽器
JP3288500B2 (ja) 電子楽器の楽音発生装置
JP2722482B2 (ja) 楽音発生装置
JP2990777B2 (ja) 電子楽器の効果装置
JP2943536B2 (ja) 電子楽器
JP2640991B2 (ja) 楽音発生装置
JP3394290B2 (ja) 楽音加工装置
JP2684833B2 (ja) 楽音信号発生装置
JPH07244487A (ja) 楽音信号発生装置
JP2526838B2 (ja) 波形デ―タ発生装置
JP2678970B2 (ja) 楽音発生装置
KR960006230Y1 (ko) 전자악기의 음색 재생장치
JP2822293B2 (ja) 楽音発生装置
JP2991436B2 (ja) 楽音信号発生装置
JPH10247084A (ja) 音源装置
JPH0792978A (ja) 楽音発生装置
JPH052999B2 (ja)
JP2897680B2 (ja) 楽音信号発生装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010710

LAPS Cancellation because of no payment of annual fees