JPH07199938A - Acoustic signal generator - Google Patents

Acoustic signal generator

Info

Publication number
JPH07199938A
JPH07199938A JP5337896A JP33789693A JPH07199938A JP H07199938 A JPH07199938 A JP H07199938A JP 5337896 A JP5337896 A JP 5337896A JP 33789693 A JP33789693 A JP 33789693A JP H07199938 A JPH07199938 A JP H07199938A
Authority
JP
Japan
Prior art keywords
waveform data
waveform
sounding
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.)
Granted
Application number
JP5337896A
Other languages
Japanese (ja)
Other versions
JP3223282B2 (en
Inventor
Goro Sakata
吾朗 坂田
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/en
Publication of JPH07199938A publication Critical patent/JPH07199938A/en
Application granted granted Critical
Publication of JP3223282B2 publication Critical patent/JP3223282B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

PURPOSE:To eliminate foldover noise without increasing hardwares at the time of generating acoustic signals in the acoustic signal generator of the sound source of an electronic musical instrument or the like. CONSTITUTION:For one sounding instruction, to a waveform data memory, in a first sounding channel, the read of waveform data A from a waveform address specified by the sounding instruction with a step width specified by the sounding instruction is instructed. Simultaneously, in a second sounding channel, the read of the waveform data B from the waveform address obtained by adding an offset value which is 1/2 of the step width to the waveform address specified by the sounding instruction with the step width is instructed. The waveform data A and B are successively outputted to a D/A converter as the waveform data A+B in a cycle which is 1/2 of a sampling cycle.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、電子楽器の音源などの
音響信号発生装置に係り、更に詳しくは、音響信号発生
時の折り返しノイズの除去技術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an acoustic signal generator such as a sound source of an electronic musical instrument, and more particularly to a technique for removing aliasing noise when an acoustic signal is generated.

【0002】[0002]

【従来の技術】音響信号をディジタルデータからアナロ
グ信号に変換する場合に、折り返しノイズの発生が問題
となる。この折り返しノイズは、音響信号がサンプリン
グ周波数の1/2の周波数よりも高い周波数の信号成分
を有している場合に、変換の過程において、その信号成
分が音響信号の最高周波数成分以下の周波数の信号成分
に重畳されることにより、発生する。
2. Description of the Related Art When converting an acoustic signal from digital data into an analog signal, the generation of aliasing noise poses a problem. When the acoustic signal has a signal component having a frequency higher than half the sampling frequency, this aliasing noise has a signal component whose frequency is equal to or lower than the highest frequency component of the acoustic signal in the conversion process. It is generated by being superimposed on the signal component.

【0003】ここで、近年のDAC(ディジタル/アナ
ログ変換器)において、サンプリング周波数の2、4、
8倍といったオーバーサンプリング周波数で変換が可能
なものが現われている。そして、従来、音響信号発生装
置内で発生された音響波形データをオーバーサンプリン
グ周波数で動作するディジタルフィルタに通し、音響波
形データのサンプリン周波数をその波形データが有する
最高周波数成分よりも遥かに高い周波数であるオーバー
サンプリング周波数まで引き上げることによって、折り
返しノイズを除去する技術が知られている。
In recent DACs (digital / analog converters), sampling frequencies of 2, 4,
There are some that can be converted at an oversampling frequency of 8 times. Then, conventionally, the acoustic waveform data generated in the acoustic signal generator is passed through a digital filter that operates at an oversampling frequency, and the sampling frequency of the acoustic waveform data is much higher than the highest frequency component of the waveform data. A technique is known in which aliasing noise is removed by raising the frequency to a certain oversampling frequency.

【0004】[0004]

【発明が解決しようとする課題】しかし、このような従
来技術では、オーバーサンプリング周波数で動作するデ
ィジタルフィルタが必要となり、音響信号発生装置の製
造コストを増加させてしまうという問題点を有してい
た。
However, such a conventional technique has a problem that a digital filter operating at an oversampling frequency is required, which increases the manufacturing cost of the acoustic signal generator. .

【0005】本発明の課題は、ハードウエアを増加させ
ることなく、折り返しノイズを除去可能とすることにあ
る。
An object of the present invention is to eliminate aliasing noise without increasing hardware.

【0006】[0006]

【課題を解決するための手段】本発明は、波形データ記
憶手段(波形メモリ103)に記憶されている波形デー
タを読み出して音響波形データを生成する音響信号発生
装置を前提とする。
The present invention is premised on an acoustic signal generator which reads out waveform data stored in a waveform data storage means (waveform memory 103) to generate acoustic waveform data.

【0007】そして、まず、サンプリング周期毎に、そ
のサンプリング周期を時分割して得られる複数の発音チ
ャネルの各々において、波形データ記憶手段上の指定さ
れた波形アドレスから指定された歩進幅で波形データを
読み出す波形データ読出し手段(発音チャネルデータ生
成部)を有する。
First, in each of a plurality of tone generation channels obtained by time-dividing the sampling period, a waveform is generated at a designated step width from a designated waveform address on the waveform data storage means. It has a waveform data reading means (sound generation channel data generation unit) for reading data.

【0008】次に、1つの発音指示に対して、波形デー
タ読出し手段に対して、所定数の発音チャネルのそれぞ
れにおいて、発音指示により指定される波形アドレスよ
り発音指示により指定される歩進幅の所定数分の1ずつ
ずれた波形アドレスから発音指示により指定される歩進
幅で波形データの読出しを指示する発音制御手段(CP
U101)を有する。より具体的には、この発音制御手
段は、例えば、1つの発音指示に対して、波形データ読
出し手段に対して、第1の前記発音チャネルにおいて、
発音指示により指定される波形アドレスから発音指示に
より指定される歩進幅で波形データの読出しを指示する
と共に、第2の前記発音チャネルにおいて、発音指示に
より指定される波形アドレスに発音指示により指定され
る歩進幅の1/2のオフセット値を加算して得られる波
形アドレスから発音指示により指定される歩進幅で波形
データの読出しを指示する。
Next, in response to one sounding instruction, the step width of the step width specified by the sounding instruction is determined from the waveform address specified by the sounding instruction in each of the predetermined number of sounding channels to the waveform data reading means. A sound generation control means (CP) for instructing to read out waveform data with a step width specified by a sound generation instruction from a waveform address deviated by a predetermined number.
U101). More specifically, the sound generation control means, for example, for one sounding instruction, for the waveform data reading means, in the first sounding channel,
The reading of the waveform data is instructed from the waveform address specified by the sounding instruction with the step width specified by the sounding instruction, and the waveform address specified by the sounding instruction is specified by the sounding instruction in the second sounding channel. The waveform data is instructed to be read with the step width specified by the tone generation instruction from the waveform address obtained by adding the offset value of 1/2 of the step width.

【0009】そして、波形データ読出し手段により、所
定数の発音チャネルのそれぞれにおいて読み出された波
形データに基づいて生成される音響波形データを、サン
プリング周期の所定数分の1の周期で順次D/A変換器
などに出力する音響波形データ出力手段(発音チャネル
データ出力部)を有する。より具体的には、この音響波
形データ出力手段は、前述した第1の発音チャネルにお
いて読み出された波形データに基づいて生成される音響
波形データと、前述した第2の発音チャネルにおいて読
み出された波形データに基づいて生成される音響波形デ
ータを、サンプリング周期の1/2の周期で順次D/A
変換器などに出力する。
Then, the acoustic waveform data generated by the waveform data reading means on the basis of the waveform data read out in each of the predetermined number of sound generation channels is sequentially D / S at a period of a predetermined fraction of the sampling period. It has acoustic waveform data output means (sound generation channel data output section) for outputting to an A converter or the like. More specifically, the acoustic waveform data output means reads the acoustic waveform data generated based on the waveform data read in the first sounding channel described above and the second sounding channel described above. The acoustic waveform data generated based on the generated waveform data is sequentially D / A at a cycle of 1/2 the sampling cycle.
Output to converter etc.

【0010】上述の発明の構成において、発音制御手段
は、発音指示が所定の属性を有する場合、例えば、所定
の音域の楽音のノートオン指示である場合、又は所定の
音域の所定の音色の楽音のノートオン指示であるような
場合に、上述した動作を行うように動作し、それ以外の
場合には、通常の例えば1つの発音チャネルのみを使用
した発音処理を行うように動作するように、発明を構成
することもできる。
In the above-mentioned configuration of the invention, the sound generation control means is arranged such that the sounding instruction has a predetermined attribute, for example, a note-on instruction of a musical tone in a predetermined musical range, or a musical tone having a predetermined tone color in the predetermined musical range. In the case of the note-on instruction of the above, the above-described operation is performed, and in other cases, the normal sounding processing using only one sounding channel is performed, for example. The invention can also be configured.

【0011】[0011]

【作用】オーバーサンプリング用の特別なディジタルフ
ィルタを用いることなく、複数の発音チャネルを同時に
制御するだけで、オーバーサンプリング処理を実現する
ことができ、折り返しノイズを除去できる。
The oversampling process can be realized by simply controlling a plurality of tone generation channels at the same time without using a special digital filter for oversampling, and aliasing noise can be removed.

【0012】また、発音指示の属性に応じて、必要な場
合のみ複数の発音チャネルを同時に制御することによ
り、発音チャネルを有効に利用することができる。
Further, by simultaneously controlling a plurality of sound generation channels only when necessary according to the attribute of the sound generation instruction, it is possible to effectively use the sound generation channels.

【0013】[0013]

【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。まず、図1は、本発明が電子鍵盤
楽器に適用される場合の実施例の全体構成図である。
Embodiments of the present invention will now be described in detail with reference to the drawings. First, FIG. 1 is an overall configuration diagram of an embodiment in which the present invention is applied to an electronic keyboard instrument.

【0014】鍵盤105の鍵が押鍵操作されることによ
り発生する音高を指定するノートデータと押鍵強度を指
定するベロシティデータは、バス106を介してCPU
101によって検出された後、波形メモリ103から波
形データが読み出される場合の歩進値データとエンベロ
ープ値データに変換された後、バス106を介して音源
102に、それが処理する空き発音チャネルに対応する
データとしてセットされる。
The note data for designating the pitch and the velocity data for designating the key pressing strength generated by the key pressing operation on the keyboard 105 are sent to the CPU via the bus 106.
After being detected by 101, converted to step value data and envelope value data when waveform data is read from the waveform memory 103, and then to the sound source 102 via the bus 106, corresponding to a free sounding channel to be processed by the sound source 102. Is set as the data to be set.

【0015】音源102は、発音チャネル毎に、時分割
処理により、波形メモリ103に波形アドレス整数部W
ADを供給してそこから出力される波形データWDT
を、発音チャネルデータとして取り込む。そして、各発
音チャネルの発音チャネルデータは、サンプリング周波
数に同期して加算され、その加算結果がD/A変換器1
04に出力される。この場合、本発明に関連する特徴と
して、波形メモリ103内の各波形データは2つの発音
チャネルを使ってオーバーサンプリングされ、その結果
得られる2つの発音チャネルの発音チャネルデータは、
サンプリング周波数の2倍のオーバーサンプリング速度
で、D/A変換器104に出力される。
The sound source 102 stores the waveform address integer part W in the waveform memory 103 by time division processing for each sounding channel.
Waveform data WDT that supplies AD and is output from it
Is taken in as sounding channel data. Then, the tone generation channel data of each tone generation channel is added in synchronization with the sampling frequency, and the addition result is the D / A converter 1.
It is output to 04. In this case, as a feature related to the present invention, each waveform data in the waveform memory 103 is oversampled by using two sounding channels, and the resulting sounding channel data of the two sounding channels are:
It is output to the D / A converter 104 at an oversampling rate that is twice the sampling frequency.

【0016】D/A変換器104は、サンプリング周波
数の2倍のオーバーサンプリング速度で、出力波形デー
タをアナログ楽音波形信号に変換し、そのアナログ楽音
波形信号は、アンプ107で増幅された後、スピーカ1
08から楽音として放音される。
The D / A converter 104 converts the output waveform data into an analog musical tone waveform signal at an oversampling rate that is twice the sampling frequency. The analog musical tone waveform signal is amplified by the amplifier 107 and then the speaker. 1
It is emitted as a musical sound from 08.

【0017】次に、図1の音源102は、それぞれが図
2に示される構成を有する8つの発音チャネルデータ生
成部と、各発音チャネルデータ生成部が生成した発音チ
ャネルデータをラッチする8つの発音チャネルデータラ
ッチ301を含む図3に示される発音チャネルデータ出
力部とから構成される。
Next, the sound source 102 of FIG. 1 has eight sound generation channel data generators each having the structure shown in FIG. 2 and eight sound generators that latch the sound generation channel data generated by each sound generation channel data generator. The sound channel data output section shown in FIG. 3 including the channel data latch 301.

【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に順次出力
される。
The eight tone generation channel data generators are shown in FIG.
As shown in (a), the waveform address is generated and the integer part WAD is stored in the waveform memory 103 of FIG. 3 to generate sound channel data from the waveform data WDT obtained as a result,
The sounding channel data latch 301 shown in FIG. The sound generation channel data latched in each sound generation channel data latch 301 is shown in FIG. 3 at the change timing of the current sampling period and the next sampling period.
Adder 303 according to the settings of eight switches 302
Or 304, the addition result of the adder 303 is the first output waveform data A to the first output latch 305, and the addition result of the adder 304 is the second output waveform data B.
Are respectively latched by the second output latch 306. First output waveform data A and second output waveform data B
Are sequentially output to the D / A converter 104 of FIG. 1 at a cycle of 1/2 of the sampling cycle T, as shown in FIG. 4 (b).

【0019】次に、図2の発音チャネルデータ生成部の
詳細な動作について説明する。図1のCPU101から
は、バス106からスイッチ203を介してアドレスレ
ジスタ204に、波形メモリ103に記憶されている読
出しが開始されるべき波形データの先頭アドレスがセッ
トされ、また、バス106から歩進値レジスタ201
に、波形メモリ103から波形データが読み出されると
きの歩進幅を示す歩進値データが、更に、バス106か
らエンベロープ値レジスタ209に、出力される発音チ
ャネルデータの強度を決定するエンベロープ値データが
セットされる。ここで、歩進値データはノートデータに
対応し、エンベロープ値データはベロシティデータに対
応する。
Next, the detailed operation of the tone generation channel data generating section of FIG. 2 will be described. From the CPU 101 of FIG. 1, the start address of the waveform data stored in the waveform memory 103 and from which the reading is to be started is set in the address register 204 from the bus 106 via the switch 203. Value register 201
In addition, step value data indicating the step width when the waveform data is read from the waveform memory 103, and envelope value data for determining the strength of the sounding channel data output from the bus 106 to the envelope value register 209. Set. Here, the step value data corresponds to the note data, and the envelope value data corresponds to the velocity data.

【0020】アドレスレジスタ204内の波形アドレス
は、加算器202及びスイッチ203を介して、図4
(a) の各サンプリング周期内の何れかの数字に対応する
タイミング毎に、発音開始時にセットされた先頭アドレ
スから、歩進値レジスタ201にセットされた歩進値デ
ータが示す歩進幅で、順次インクリメントされる。この
場合、歩進値データは実数値を指定できるため、波形ア
ドレスも実数値となる。そして、この波形アドレスの整
数部WADが図1の波形メモリ103に出力される。
The waveform address in the address register 204 is passed through the adder 202 and the switch 203, as shown in FIG.
At each timing corresponding to any number in each sampling period of (a), with the step width indicated by the step value data set in the step value register 201 from the head address set at the start of sounding, It is sequentially incremented. In this case, since the step value data can specify a real value, the waveform address also becomes a real value. Then, the integer part WAD of this waveform address is output to the waveform memory 103 in FIG.

【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に得られている実数のアドレスデータに対応する波
形データを算出する。
In the portion consisting of the data register 205, the subtractor 206, the multiplier 207, and the adder 208,
Waveform data WDT (n +) corresponding to the current sampling period T (n + 1) read from the waveform memory 103
1) and the waveform data WD corresponding to the previous sampling period T (n) held in the data register 205.
T (n) and the fractional part of the waveform address output from the address register 204. From WAD, the waveform data corresponding to the real number address data obtained in the address register 204 is calculated by the linear interpolation calculation. The principle of linear interpolation calculation is shown in FIG. First, the subtractor 206
Waveform data WDT (n +) corresponding to the current sampling period T (n + 1) read from the waveform memory 103
The waveform data WD corresponding to the previous sampling period T (n) held in the data register 205 in 1)
The difference with respect to T (n) is calculated. Next, the multiplier 207
However, the difference value is added to the waveform address fractional part. The increment value from the waveform data WDT (n) corresponding to the immediately preceding sampling cycle T (n) is calculated by multiplying the ratio corresponding to WAD. Then, the adder 208 uses this increment value as the waveform data W corresponding to the immediately preceding sampling period T (n) output from the data register 205.
By adding to DT (n), the address register 2
The waveform data corresponding to the real number address data obtained in 04 is calculated.

【0022】乗算器210は、上述の波形データにエン
ベロープ値データを乗算することにより、発音チャネル
データWOCHを算出する。ここで、図1のCPU101
は、1つの楽音の発音開始を決定すると、音源102内
の2つの発音チャネルデータ生成部に対して、同じ歩進
値データ及びエンベロープ値データをセットする。ま
た、CPU101は、一方の発音チャネルデータ生成部
内のアドレスレジスタ204には、波形メモリ103に
記憶されている読出しが開始されるべき波形データの先
頭アドレスをセットし、他方の発音チャネルデータ生成
部内のアドレスレジスタ204には、上記先頭アドレス
に歩進値データの1/2のオフセット値を加算して得ら
れるアドレスをセットする。この結果、2つの発音チャ
ネルデータ生成部は、波形メモリ103上の同じ波形デ
ータから、図6の波形データA及び波形データBとして
示されるように、サンプリング周期毎に、サンプリング
周期の1/2周期だけ位相がずれた発音チャネルデータ
を生成することになる。
The multiplier 210 calculates the tone generation channel data WO CH by multiplying the above waveform data by the envelope value data. Here, the CPU 101 of FIG.
Determines the start of sounding one musical sound, sets the same step value data and envelope value data in the two sounding channel data generators in the sound source 102. Further, the CPU 101 sets the start address of the waveform data stored in the waveform memory 103 and from which the reading is to be started in the address register 204 in the one tone generation channel data generation unit, and the other tone generation channel data generation unit in the other tone generation channel data generation unit. In the address register 204, an address obtained by adding an offset value of 1/2 of the step value data to the start address is set. As a result, the two sound generation channel data generation units generate, from the same waveform data on the waveform memory 103, as shown as waveform data A and waveform data B in FIG. Therefore, the tone generation channel data which is out of phase with each other is generated.

【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倍の速度でオー
バーサンプリングされたデータとなる。
The two tone generation channel data thus generated are held in any two of the eight tone generation channel data latches 301 shown in FIG. Then, one tone generation channel data is held as the first output waveform data A in the first output latch 305 via the switch 302 to which the tone generation channel data latch 301 holding the same is connected and the adder 303, and the other one. The pronunciation channel data is stored in the pronunciation channel data latch 30 in which it is held.
After being held as the second output waveform data B in the second output latch 306 via the switch 302 and the adder 304 to which 1 is connected, as shown in FIG. Of the D / A converter 104 of FIG.
Are sequentially output to. As a result, the first output waveform data A and the second output waveform data B are combined and the switch 3 of FIG.
As shown in FIG. 6, the output waveform data A + B output from 07 is data oversampled at a speed twice the sampling frequency.

【0024】以上の動作において、CPU101は、各
楽音の開始時に2つの空き発音チャネルを決定した場合
において、図2のアドレスレジスタ204に波形データ
の先頭アドレスのみをセットする発音チャネルに対応す
る図3のスイッチ302は、その出力が加算器303側
に出力されるように設定し、図2のアドレスレジスタ2
04に(波形データの先頭アドレス+歩進値データの1
/2のオフセット値)をセットする発音チャネルに対応
する図3のスイッチ302は、その出力が加算器304
側に出力されるように設定する。
In the above operation, when the CPU 101 determines two empty tone generation channels at the start of each tone, the CPU 101 of FIG. 3 corresponding to the tone generation channel for setting only the leading address of the waveform data in the address register 204 of FIG. Switch 302 is set so that its output is output to the adder 303 side, and the address register 2 of FIG.
04 (waveform data start address + step value data 1
The output of the switch 302 of FIG. 3 corresponding to the tone generation channel for which the (/ 2 offset value) is set is an adder 304.
Set to output to the side.

【0025】以上説明したように、図1の音源102
に、図3に示される簡単な回路を付加するだけで、オー
バーサンプリング機能を実現することができる。ここ
で、上述のオーバーサンプリング処理を、全ての発音開
始される楽音に対し適用するのではなく、発音チャネル
を有効に利用するために、オーバーサンプリング処理が
必要な楽音に対してのみ適用することが考えられる。具
体的には、波形メモリ103において読出しが指定され
た波形データのピッチが高く高周波数領域に信号成分が
多い場合、又は波形メモリ103において読出しが指定
された波形データが倍音を多く含んでおり高周波数領域
にまで信号成分が達している場合などにおいては、上述
のオーバーサンプリング処理を行うことが効果的であ
る。
As explained above, the sound source 102 of FIG.
In addition, the oversampling function can be realized only by adding the simple circuit shown in FIG. Here, the above-described oversampling process may not be applied to all the musical tones for which sound generation is started, but may be applied only to the musical tones requiring the oversampling process in order to effectively use the sound generation channel. Conceivable. Specifically, when the pitch of the waveform data designated to be read in the waveform memory 103 is high and there are many signal components in the high frequency region, or the waveform data designated to be read in the waveform memory 103 contains many overtones. When the signal component reaches the frequency domain, it is effective to perform the above oversampling process.

【0026】このような基準に基づいて図1のCPU1
01が実行する、発音指示のための制御動作の第1の実
施例の動作フローチャートを図7、図8に示す。まず、
ステップ701では、CPU101及び音源102内の
各種レジスタの内容などがイニシャライズされる。
Based on such criteria, the CPU 1 of FIG.
7 and 8 show operation flowcharts of the first embodiment of the control operation for sounding instruction, which is executed by 01. First,
In step 701, the contents of various registers in the CPU 101 and the sound source 102 are initialized.

【0027】次に、ステップ702で、CPU101内
のレジスタnの値が0に初期設定された後に、ステップ
714でレジスタnの値が+1ずつインクリメントされ
ながら、図8のステップ715でレジスタnの値が図1
の鍵盤105の鍵数を越えたと判断されるまで、以下の
ステップ703〜711の制御処理が実行される。
Next, in step 702, after the value of the register n in the CPU 101 is initialized to 0, the value of the register n is incremented by +1 in step 714, and the value of the register n is incremented in step 715 of FIG. Is Figure 1
Until it is determined that the number of keys of the keyboard 105 has been exceeded, the following control processing of steps 703 to 711 is executed.

【0028】まず、ステップ703で、レジスタnの値
に対応する位置の鍵の状態が判定される。ステップ70
3で、レジスタnの値に対応する位置の鍵の状態が変化
しないと判定された場合は、何も処理が行われず、ステ
ップ714で、次のレジスタnの値がインクリメントさ
れて次の鍵位置に対する制御処理が実行される。
First, in step 703, the state of the key at the position corresponding to the value of the register n is determined. Step 70
If it is determined in 3 that the state of the key at the position corresponding to the value of the register n does not change, no processing is performed, and in step 714, the value of the next register n is incremented to determine the next key position. The control process for is executed.

【0029】ステップ703で、レジスタnの値に対応
する位置の鍵がノートオン(ON)されたと判定された
場合は、ステップ704〜711が実行される。即ち、
まず、ステップ704で、処理対象である鍵の位置を示
すレジスタnの値がCPU101内のレジスタTNRに
代入された後、ステップ705で、このレジスタTNR
の値が、予め鍵盤105上の鍵域を分割する鍵位置を格
納しているレジスタSPLITの値以上であるか否か、
即ち、ノートオンされた鍵の位置が所定の上鍵域である
か否かが判定される。
If it is determined in step 703 that the key at the position corresponding to the value of the register n has been turned on (ON), steps 704 to 711 are executed. That is,
First, in step 704, the value of the register n indicating the position of the key to be processed is substituted into the register TNR in the CPU 101, and then in step 705, this register TNR
Whether or not the value of is greater than or equal to the value of the register SPLIT which stores the key positions for dividing the key range on the keyboard 105 in advance,
That is, it is determined whether or not the position of the note-on key is within the predetermined upper key range.

【0030】ステップ705で、レジスタTNRの値が
レジスタSPLITの値以上であると判定された場合に
は、ステップ706で、音源102において現在発音処
理がなされていない空き発音チャネルが検出される。
If it is determined in step 705 that the value of the register TNR is greater than or equal to the value of the register SPLIT, then in step 706, the sound source 102 detects an empty tone generation channel that is not currently sounded.

【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も制御する。
Further, in step 707, step 706
As a result of the detection processing in step 1, it is determined whether or not there are two free tone generation channels. When the CPU 101 determines in step 707 that there are two free tone generation channels, in step 708, the register TN indicating the position of the key, that is, the pitch is displayed.
Step value data corresponding to the value of R, and step 7 described later.
The start address of the waveform data corresponding to the tone color number set in the register TCR in the CPU 101 by the process of 18, and especially the envelope value data corresponding to the velocity data of the note-on key held in the register not shown. Are transferred to the two sound generation channel data generation units in the sound source 102 corresponding to the two empty sound generation channels. In this case, as described above, the CPU 101 sets only the start address of the waveform data stored in the waveform memory 103 and from which reading is to be started, in the address register 204 in one of the tone generation channel data generation units, In the address register 204 in the other tone generation channel data generation unit, an address obtained by adding an offset value of 1/2 of the step value data to the above-mentioned start address is set. Further, the CPU 101, as described above, uses the sound source 102 corresponding to the above two sounding channels.
It also controls the switch 302 shown in FIG.

【0032】このようにして、所定の上鍵域の鍵がノー
トオンされた場合には、2つの発音チャネルを使ったオ
ーバーサンプリング処理に基づく楽音の発音処理が行わ
れることになる。
In this way, when a note on a key in a predetermined upper key range is made on a note, a tone generation process based on oversampling using two tone generation channels is performed.

【0033】ステップ708の処理が実行された後は、
ステップ714で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。一
方、所定の上鍵域以下の鍵域の鍵がノートオンされステ
ップ705の判定がNOとなりステップ709で空き発
音チャネルの検出処理が実行された場合、或いは、所定
の上鍵域の鍵がノートオンされた場合であってもステッ
プ707で空き発音チャネルが2個はないと判定された
場合には、更に、ステップ710で、空き発音チャネル
が1個あるか否かが判定される。
After the processing of step 708 is executed,
In step 714, the value of the next register n is incremented and the control process for the next key position is executed. On the other hand, when a key in a key range equal to or lower than the predetermined upper key range is note-on and the determination in step 705 is NO and the detection processing of the empty sound generation channel is executed in step 709, or when the key in the predetermined upper key range is note Even if it is turned on, if it is determined in step 707 that there are no empty tone generation channels, it is further determined in step 710 whether or not there is one empty tone generation channel.

【0034】CPU101は、ステップ710で空き発
音チャネルが1個あると判定した場合には、ステップ7
11で、鍵の位置すなわち音高を示すレジスタTNRの
値に対応する歩進値データと、後述するステップ718
の処理によりCPU101内のレジスタTCRにセット
されている音色番号に対応する波形データの先頭アドレ
ス、及び特には図示しないレジスタに保持されているノ
ートオンされた鍵のベロシティデータに対応するエンベ
ロープ値データを、上述の空き発音チャネルに対応する
音源102内の発音チャネルデータ生成部に転送する。
If the CPU 101 determines in step 710 that there is one vacant tone generation channel, it executes step 7
In step 11, step value data corresponding to the value of the register TNR indicating the position of the key, that is, the pitch, and step 718 described later.
By the processing of the above step, the start address of the waveform data corresponding to the tone color number set in the register TCR in the CPU 101, and the envelope value data corresponding to the velocity data of the note-on key held in the register (not shown) are displayed. , To the sound generation channel data generation unit in the sound source 102 corresponding to the above-mentioned empty sound generation channel.

【0035】このようにして、所定の上鍵域以下の鍵域
の鍵がノートオンされた場合、又は所定の上鍵域の鍵が
ノートオンされた場合であっても空き発音チャネルが1
個しかなかった場合には、オーバーサンプリング処理で
はない通常の発音処理が行われることになる。なお、所
定の上鍵域の鍵がノートオンされた場合で空き発音チャ
ネルが1個しかなかった場合には、オーバーサンプリン
グ処理が行えないことになるが、空き発音チャネルが少
ない場合には他に複数の楽音が発音されていることにな
るため折り返しノイズはそれらの楽音にマスキングされ
て目立たなくなる。
In this way, even if a key in the key range equal to or lower than the predetermined upper key range is note-on, or even if a key in the predetermined upper key range is note-on, the empty tone generation channel is 1
If there is only one, normal sounding processing other than oversampling processing is performed. It should be noted that when a key in a predetermined upper range is note-on and there is only one free sounding channel, the oversampling process cannot be performed. Since a plurality of musical tones are being pronounced, folding noise is masked by those musical tones and becomes inconspicuous.

【0036】ステップ711の処理が実行された後は、
ステップ714で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。ス
テップ710で空き発音チャネルが1個もないと判定さ
れた場合には、発音処理は行われず、ステップ714
で、次のレジスタnの値がインクリメントされて次の鍵
位置に対する制御処理が実行される。
After the processing of step 711 is executed,
In step 714, the value of the next register n is incremented and the control process for the next key position is executed. If it is determined in step 710 that there are no free sound generation channels, sound generation processing is not performed and step 714
Then, the value of the next register n is incremented and the control process for the next key position is executed.

【0037】次に、前述したステップ703で、レジス
タnの値に対応する位置の鍵がノートオフ(OFF)さ
れたと判定された場合は、ステップ712で、レジスタ
nの値に対応するノートナンバが割り当てられている発
音チャネルが検出された後、ステップ713で、その発
音チャネルに対して消音処理が実行される。
Next, when it is determined in step 703 described above that the key at the position corresponding to the value of register n has been turned off (OFF), the note number corresponding to the value of register n is determined in step 712. After the assigned sounding channel is detected, the mute processing is executed for the sounding channel in step 713.

【0038】ステップ713の処理が実行された後は、
ステップ714で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。以
上のステップ702〜図8のステップ715によって、
全ての鍵に対する状態変化の検出と発音制御処理が実行
された後は、図8のステップ716で、特には図示しな
い音色スイッチの設定状態が操作され、ステップ717
でスイッチの設定状態に変化があると判定された場合に
は、ステップ718で、レジスタTCRに新たな音色番
号が設定される。
After the processing of step 713 is executed,
In step 714, the value of the next register n is incremented and the control process for the next key position is executed. By the above steps 702 to 715 of FIG. 8,
After the detection of the state change and the tone generation control processing for all the keys are executed, the setting state of the tone color switch (not shown) is operated in step 716 of FIG.
If it is determined that there is a change in the setting state of the switch, a new tone color number is set in the register TCR in step 718.

【0039】その後、ステップ702の処理に制御が戻
り、上述の処理が繰り返される。次に、図1のCPU1
01が実行する、発音指示のための制御動作の第2の実
施例の動作フローチャートを図9、図10に示す。
Thereafter, the control is returned to the processing of step 702, and the above processing is repeated. Next, the CPU 1 of FIG.
9 and 10 show operation flowcharts of the second embodiment of the control operation for sounding instruction executed by 01.

【0040】まず、ステップ901では、CPU101
及び音源102内の各種レジスタの内容などがイニシャ
ライズされる。次に、ステップ902で、CPU101
内のレジスタnの値が0に初期設定された後に、ステッ
プ922でレジスタnの値が+1ずつインクリメントさ
れながら、図10のステップ923でレジスタnの値が
図1の鍵盤105の鍵数を越えたと判断されるまで、以
下のステップ903〜図10のステップ919の制御処
理が実行される。
First, in step 901, the CPU 101
Also, the contents of various registers in the sound source 102 are initialized. Next, in step 902, the CPU 101
After initializing the value of the register n in the register 0 to 0, the value of the register n exceeds the number of keys of the keyboard 105 of FIG. 1 in step 923 of FIG. 10 while the value of the register n is incremented by +1 in step 922. Until it is determined that it is determined, the control processing of the following step 903 to step 919 of FIG. 10 is executed.

【0041】まず、ステップ903で、レジスタnの値
に対応する位置の鍵の状態が判定される。ステップ90
3で、レジスタnの値に対応する位置の鍵の状態が変化
しないと判定された場合は、何も処理が行われず、ステ
ップ922で、次のレジスタnの値がインクリメントさ
れて次の鍵位置に対する制御処理が実行される。
First, in step 903, the state of the key at the position corresponding to the value of the register n is determined. Step 90
If it is determined in 3 that the state of the key at the position corresponding to the value of the register n does not change, no processing is performed, and in step 922, the value of the next register n is incremented to determine the next key position. The control process for is executed.

【0042】ステップ903で、レジスタnの値に対応
する位置の鍵がノートオン(ON)されたと判定された
場合は、ステップ904〜912が実行される。即ち、
まず、ステップ904で、処理対象である鍵の位置を示
すレジスタnの値がCPU101内のレジスタTNRに
代入された後、ステップ905で、このレジスタTNR
の値が、予め鍵盤105上の鍵域を分割する鍵位置を格
納しているレジスタSPLITの値以上であるか否か、
即ち、ノートオンされた鍵の位置が所定の上鍵域である
か否かが判定される。
If it is determined in step 903 that the key at the position corresponding to the value of the register n has been turned on (ON), steps 904 to 912 are executed. That is,
First, in step 904, the value of the register n indicating the position of the key to be processed is substituted into the register TNR in the CPU 101, and then in step 905, this register TNR
Whether or not the value of is greater than or equal to the value of the register SPLIT which stores the key positions for dividing the key range on the keyboard 105 in advance,
That is, it is determined whether or not the position of the note-on key is within the predetermined upper key range.

【0043】ステップ905で、レジスタTNRの値が
レジスタSPLITの値以上であると判定された場合に
は、更にステップ906で、後述するステップ926の
処理によりCPU101内のレジスタUTCRにセット
されている上鍵域の音色番号がオーバーサンプリング処
理をすべき特定の音色(例えば倍音成分が多い音色)の
番号であるかが判定される。
If it is determined in step 905 that the value of the register TNR is greater than or equal to the value of the register SPLIT, then in step 906 the register UTCR in the CPU 101 is set by the processing of step 926, which will be described later. It is determined whether the tone color number of the key range is the number of a specific tone color (for example, tone color having many overtone components) to be oversampled.

【0044】ステップ906の判定がYESの場合に
は、ステップ907で、音源102において現在発音処
理がなされていない空き発音チャネルが検出される。更
にステップ908では、ステップ907での検出処理の
結果、空き発音チャネルが2個あるか否かが判定され
る。
If the determination in step 906 is YES, then in step 907, a vacant tone generation channel in which tone generation processing is not currently performed in the sound source 102 is detected. Further, in step 908, it is determined whether or not there are two free tone generation channels as a result of the detection processing in step 907.

【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も制御する。
If the CPU 101 determines in step 908 that there are two free tone generation channels, the CPU 101 proceeds to step 90.
In step 9, it corresponds to the step value data corresponding to the value of the register TNR indicating the position of the key, that is, the pitch, and the tone color number of the upper key range set in the register UTCR in the CPU 101 by the processing of step 926 described later. The start address of the waveform data and the envelope value data corresponding to the velocity data of the note-on key held in a register (not shown) are used as two tone generation channels in the tone generator 102 corresponding to two empty tone generation channels. Transfer to the data generator. In this case, as described above, the CPU 101 sets only the start address of the waveform data stored in the waveform memory 103 at which the reading is to be started in the address register 204 in one of the tone generation channel data generation units, and the other one. An address obtained by adding a 1/2 offset value of the step value data to the above-mentioned head address is set in the address register 204 in the sound generation channel data generator. Further, the CPU 101 uses the sound source 10 corresponding to the above-mentioned two sound generation channels as described above.
It also controls the switch 302 shown in FIG.

【0046】このようにして、所定の上鍵域の鍵がノー
トオンされ、かつその上鍵域に所定の音色がアサインさ
れている場合には、2つの発音チャネルを使ったオーバ
ーサンプリング処理に基づく楽音の発音処理が行われる
ことになる。
In this way, when a key in a predetermined upper key range is note-on and a predetermined tone color is assigned to the upper key range, it is based on the oversampling process using two sound generation channels. Musical tone generation processing is performed.

【0047】ステップ909の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。一
方、レジスタUTCRにセットされている上鍵域の音色
番号がオーバーサンプリング処理をすべき特定の音色の
番号ではなくステップ906の判定がNOとなり続いて
ステップ910で空き発音チャネルの検出処理が実行さ
れた場合、或いは、特定の音色であってもステップ90
8で空き発音チャネルが2個はないと判定された場合に
は、更に、ステップ911で、空き発音チャネルが1個
あるか否かが判定される。
After the processing of step 909 is executed,
At step 922, the value of the next register n is incremented and the control processing for the next key position is executed. On the other hand, the tone color number of the upper key range set in the register UTCR is not the number of the specific tone color for which the oversampling process is to be performed, but the determination in step 906 is NO, and subsequently, in step 910, the detection process of the empty tone generation channel is executed. Or if it is a specific tone, step 90
If it is determined in step 8 that there are no empty tone generation channels, it is further determined in step 911 whether there is one empty tone generation channel.

【0048】CPU101は、ステップ911で空き発
音チャネルが1個あると判定した場合には、ステップ9
12で、鍵の位置すなわち音高を示すレジスタTNRの
値に対応する歩進値データと、後述するステップ926
の処理によりCPU101内のレジスタUTCRにセッ
トされている上鍵域の音色番号に対応する波形データの
先頭アドレス、及び特には図示しないレジスタに保持さ
れているノートオンされた鍵のベロシティデータに対応
するエンベロープ値データを、上述の空き発音チャネル
に対応する音源102内の発音チャネルデータ生成部に
転送する。
If the CPU 101 determines in step 911 that there is one free tone generation channel, the CPU 101 proceeds to step 9
12, step value data corresponding to the value of the register TNR indicating the position of the key, that is, the pitch, and step 926 described later.
By the processing of 1., it corresponds to the start address of the waveform data corresponding to the tone color number of the upper key range set in the register UTCR in the CPU 101, and the velocity data of the note-on key held in the register (not shown). The envelope value data is transferred to the sound generation channel data generation unit in the sound source 102 corresponding to the above-mentioned empty sound generation channel.

【0049】このようにして、特定の音色以外の音色が
アサインされている所定の上鍵域の鍵がノートオンされ
た場合、又は特定の音色がアサインされている所定の上
鍵域の鍵がノートオンされた場合であっても空き発音チ
ャネルが1個しかなかった場合には、オーバーサンプリ
ング処理ではない通常の発音処理が行われることにな
る。
In this way, when a key in a predetermined upper key range to which a tone color other than a specific tone color is assigned is note-on, or a key in a predetermined upper key range to which a specific tone color is assigned is Even if the note-on is performed, if there is only one free sounding channel, the normal sounding processing other than the oversampling processing is performed.

【0050】ステップ912の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。ス
テップ911で空き発音チャネルが1個もないと判定さ
れた場合には、発音処理は行われず、ステップ922
で、次のレジスタnの値がインクリメントされて次の鍵
位置に対する制御処理が実行される。
After the processing of step 912 is executed,
At step 922, the value of the next register n is incremented and the control processing for the next key position is executed. If it is determined in step 911 that there are no free sound generation channels, sound generation processing is not performed and step 922 is performed.
Then, the value of the next register n is incremented and the control process for the next key position is executed.

【0051】一方、所定の上鍵域以下の鍵域の鍵がノー
トオンされステップ905の判定がNOとなった場合
は、更に図10のステップ913で、後述するステップ
929の処理によりCPU101内のレジスタLTCR
にセットされている下鍵域の音色番号がオーバーサンプ
リング処理をすべき特定の音色の番号であるかが判定さ
れる。
On the other hand, if the keys in the key range equal to or lower than the predetermined upper key range are note-on and the determination in step 905 is NO, further in step 913 of FIG. Register LTCR
It is determined whether or not the tone color number of the lower key range set to is the number of the specific tone color to be oversampled.

【0052】ステップ913の判定がYESの場合に
は、ステップ914で、音源102において現在発音処
理がなされていない空き発音チャネルが検出される。更
にステップ915では、ステップ914での検出処理の
結果、空き発音チャネルが2個あるか否かが判定され
る。
If the determination in step 913 is YES, then in step 914, an empty tone generation channel for which tone generation processing is not currently performed in the sound source 102 is detected. Further, in step 915, it is determined whether or not there are two free tone generation channels as a result of the detection processing in step 914.

【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も制御する。
If the CPU 101 determines in step 915 that there are two free tone generation channels, the CPU 101 proceeds to step 91.
In step 6, it corresponds to the step value data corresponding to the value of the register TNR indicating the position of the key, that is, the pitch, and the tone color number of the lower key range set in the register LTCR in the CPU 101 by the processing of step 929 described later. The start address of the waveform data and the envelope value data corresponding to the velocity data of the note-on key held in a register (not shown) are used as two tone generation channels in the tone generator 102 corresponding to two empty tone generation channels. Transfer to the data generator. In this case, as described above, the CPU 101 sets only the start address of the waveform data stored in the waveform memory 103 at which the reading is to be started in the address register 204 in one of the tone generation channel data generation units, and the other one. An address obtained by adding a 1/2 offset value of the step value data to the above-mentioned head address is set in the address register 204 in the sound generation channel data generator. Further, the CPU 101 uses the sound source 10 corresponding to the above-mentioned two sound generation channels as described above.
It also controls the switch 302 shown in FIG.

【0054】このようにして、所定の下鍵域の鍵がノー
トオンされ、かつその下鍵域に所定の音色がアサインさ
れている場合には、2つの発音チャネルを使ったオーバ
ーサンプリング処理に基づく楽音の発音処理が行われる
ことになる。
In this way, when a key in a predetermined lower key range is note-on and a predetermined tone color is assigned to the lower key range, it is based on an oversampling process using two sound generation channels. Musical tone generation processing is performed.

【0055】ステップ916の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。一
方、レジスタLTCRにセットされている下鍵域の音色
番号がオーバーサンプリング処理をすべき特定の音色の
番号ではなくステップ913の判定がNOとなり続いて
ステップ917で空き発音チャネルの検出処理が実行さ
れた場合、或いは、特定の音色であってもステップ91
5で空き発音チャネルが2個はないと判定された場合に
は、更に、ステップ918で、空き発音チャネルが1個
あるか否かが判定される。
After the processing of step 916 is executed,
At step 922, the value of the next register n is incremented and the control processing for the next key position is executed. On the other hand, the tone color number in the lower key range set in the register LTCR is not the number of the specific tone color to be oversampled, but the determination in step 913 is NO, and in step 917, the detection process of the empty tone generation channel is executed. If it does, or if it is a specific timbre, step 91
If it is determined in step 5 that there are no empty tone generation channels, it is further determined in step 918 whether there is one empty tone generation channel.

【0056】CPU101は、ステップ918で空き発
音チャネルが1個あると判定した場合には、ステップ9
19で、鍵の位置すなわち音高を示すレジスタTNRの
値に対応する歩進値データと、後述するステップ929
の処理によりCPU101内のレジスタLTCRにセッ
トされている下鍵域の音色番号に対応する波形データの
先頭アドレス、及び特には図示しないレジスタに保持さ
れているノートオンされた鍵のベロシティデータに対応
するエンベロープ値データを、上述の空き発音チャネル
に対応する音源102内の発音チャネルデータ生成部に
転送する。
If the CPU 101 determines in step 918 that there is one vacant tone generation channel, the CPU 101 proceeds to step 9
In 19, the step value data corresponding to the value of the register TNR indicating the position of the key, that is, the pitch, and step 929 to be described later.
By the processing of 1., it corresponds to the start address of the waveform data corresponding to the tone color number of the lower key range set in the register LTCR in the CPU 101, and the velocity data of the note-on key held in the register (not shown). The envelope value data is transferred to the sound generation channel data generation unit in the sound source 102 corresponding to the above-mentioned empty sound generation channel.

【0057】このようにして、特定の音色以外の音色が
アサインされている所定の下鍵域の鍵がノートオンされ
た場合、又は特定の音色がアサインされている所定の下
鍵域の鍵がノートオンされた場合であっても空き発音チ
ャネルが1個しかなかった場合には、オーバーサンプリ
ング処理ではない通常の発音処理が行われることにな
る。
In this way, when a key in a predetermined lower key range to which a tone color other than a specific tone color is assigned is note-on, or a key in a predetermined lower key range to which a specific tone color is assigned is Even if the note-on is performed, if there is only one free sounding channel, the normal sounding processing other than the oversampling processing is performed.

【0058】ステップ919の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。ス
テップ918で空き発音チャネルが1個もないと判定さ
れた場合には、発音処理は行われず、ステップ922
で、次のレジスタnの値がインクリメントされて次の鍵
位置に対する制御処理が実行される。
After the processing of step 919 is executed,
At step 922, the value of the next register n is incremented and the control processing for the next key position is executed. If it is determined in step 918 that there are no free sound generation channels, sound generation processing is not performed and step 922 is performed.
Then, the value of the next register n is incremented and the control process for the next key position is executed.

【0059】次に、前述した図9のステップ903で、
レジスタnの値に対応する位置の鍵がノートオフ(OF
F)されたと判定された場合は、ステップ920で、レ
ジスタnの値に対応するノートナンバが割り当てられて
いる発音チャネルが検出された後、ステップ921で、
その発音チャネルに対して消音処理が実行される。
Next, in step 903 of FIG. 9 described above,
The key at the position corresponding to the value of register n is the note-off (OF
F), it is determined in step 920 that the tone generation channel to which the note number corresponding to the value of the register n is assigned is detected, and then in step 921,
The mute processing is executed for the sound generation channel.

【0060】ステップ921の処理が実行された後は、
ステップ922で、次のレジスタnの値がインクリメン
トされて次の鍵位置に対する制御処理が実行される。以
上の図9のステップ902〜図10のステップ923に
よって、全ての鍵に対する状態変化の検出と発音制御処
理が実行された後は、図10のステップ924で、特に
は図示しない上鍵域音色スイッチの設定状態が操作さ
れ、ステップ925でスイッチの設定状態に変化がある
と判定された場合には、ステップ926で、レジスタU
TCRに新たな音色番号が設定される。
After the processing of step 921 is executed,
At step 922, the value of the next register n is incremented and the control processing for the next key position is executed. After the state change detection and sound generation control processing for all the keys are executed by the above steps 902 to 1023 of FIG. 9, at step 924 of FIG. If it is determined in step 925 that the switch setting state has changed, then in step 926 the register U
A new tone color number is set in the TCR.

【0061】続いて、ステップ927で、特には図示し
ない下鍵域音色スイッチの設定状態が操作され、ステッ
プ928でスイッチの設定状態に変化があると判定され
た場合は、ステップ929で、レジスタLTCRに新た
な音色番号が設定される。
Subsequently, in step 927, the setting state of the lower key tone color switch (not shown) is operated, and if it is determined in step 928 that the setting state of the switch has changed, then in step 929, the register LTCR is registered. A new tone color number is set to.

【0062】その後、図9のステップ902の処理に制
御が戻り、上述の処理が繰り返される。
Thereafter, the control is returned to the processing of step 902 in FIG. 9, and the above processing is repeated.

【0063】[0063]

【発明の効果】本発明によれば、オーバーサンプリング
用の特別なディジタルフィルタを用いることなく、複数
の発音チャネルを同時に制御するだけで、オーバーサン
プリング処理を実現することができ、折り返しノイズを
除去することが可能となる。このため、音響信号発生装
置のコストの増加を抑えることができる。
According to the present invention, oversampling processing can be realized by simply controlling a plurality of sound generation channels at the same time without using a special digital filter for oversampling, and aliasing noise is removed. It becomes possible. Therefore, it is possible to suppress an increase in the cost of the acoustic signal generator.

【0064】また、発音指示の属性に応じて、必要な場
合のみ複数の発音チャネルを同時に制御することによ
り、発音チャネルを有効に利用することが可能となる。
Further, depending on the attribute of the sounding instruction, the sounding channels can be effectively used by simultaneously controlling the plurality of sounding channels only when necessary.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の実施例の全体構成図である。FIG. 1 is an overall configuration diagram of an embodiment of the present invention.

【図2】音源内の発音チャネルデータ生成部の構成図で
ある。
FIG. 2 is a configuration diagram of a sound generation channel data generation unit in a sound source.

【図3】音源内の発音チャネルデータ出力部の構成図で
ある。
FIG. 3 is a configuration diagram of a sound generation channel data output unit in a sound source.

【図4】音源の動作タイミングチャートである。FIG. 4 is an operation timing chart of a sound source.

【図5】波形データの直線補間演算の説明図である。FIG. 5 is an explanatory diagram of linear interpolation calculation of waveform data.

【図6】音源のオーバーサンプリング動作の説明図であ
る。
FIG. 6 is an explanatory diagram of a sound source oversampling operation.

【図7】CPUの制御動作の第1の実施例の動作フロー
チャート(その1)である。
FIG. 7 is an operation flowchart (No. 1) of the first embodiment of the control operation of the CPU.

【図8】CPUの制御動作の第1の実施例の動作フロー
チャート(その2)である。
FIG. 8 is an operation flowchart (No. 2) of the first embodiment of the control operation of the CPU.

【図9】CPUの制御動作の第2の実施例の動作フロー
チャート(その1)である。
FIG. 9 is an operation flowchart (part 1) of the second embodiment of the control operation of the CPU.

【図10】CPUの制御動作の第2の実施例の動作フロ
ーチャート(その2)である。
FIG. 10 is an operation flowchart (part 2) of the second embodiment of the control operation of the CPU.

【符号の説明】[Explanation of symbols]

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出力ラッチ 101 CPU 102 Sound source 103 Waveform memory 104 D / A converter 105 Keyboard 106 Bus 107 Amplifier 108 Speaker 201 Step value register 202, 208 Adder 203 Switch 204 Address register 205 Data register 206 Subtractor 207, 210 Multiplier 209 Envelope value Register 301 Sound channel data latch 302, 307 Switch 303, 304 Adder 305 First output latch 306 Second output latch

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 波形データ記憶手段に記憶されている波
形データを読み出して音響波形データを生成する音響信
号発生装置において、 サンプリング周期毎に、該サンプリング周期を時分割し
て得られる複数の発音チャネルの各々において、前記波
形データ記憶手段上の指定された波形アドレスから指定
された歩進幅で前記波形データを読み出す波形データ読
出し手段と、 1つの発音指示に対して、前記波形データ読出し手段に
対して、所定数の前記発音チャネルのそれぞれにおい
て、前記発音指示により指定される波形アドレスより前
記発音指示により指定される歩進幅の所定数分の1ずつ
ずれた波形アドレスから前記発音指示により指定される
歩進幅で前記波形データの読出しを指示する発音制御手
段と、 前記波形データ読出し手段により、前記所定数の発音チ
ャネルのそれぞれにおいて読み出された前記波形データ
に基づいて生成される音響波形データを、前記サンプリ
ング周期の所定数分の1の周期で順次出力する音響波形
データ出力手段と、 を有することを特徴とする音響信号発生装置。
1. An acoustic signal generator for reading out waveform data stored in a waveform data storage unit to generate acoustic waveform data, wherein a plurality of sound generation channels obtained by time-dividing the sampling period for each sampling period. In each of the above, waveform data reading means for reading the waveform data at a designated step width from a designated waveform address on the waveform data storage means; and for one sounding instruction, for the waveform data reading means. In each of the predetermined number of the sounding channels, the sounding instruction specifies a waveform address that is deviated from the waveform address specified by the sounding instruction by a predetermined number of steps of the step width specified by the sounding instruction. Sound generation control means for instructing the reading of the waveform data with a step width, and the waveform data reading means. Acoustic waveform data output means for sequentially outputting acoustic waveform data generated based on the waveform data read in each of the predetermined number of sound generation channels in a cycle of a predetermined fraction of the sampling cycle, An acoustic signal generator having:
【請求項2】 波形データ記憶手段に記憶されている波
形データを読み出して音響波形データを生成する音響信
号発生装置において、 サンプリング周期毎に、該サンプリング周期を時分割し
て得られる複数の発音チャネルの各々において、前記波
形データ記憶手段上の指定された波形アドレスから指定
された歩進幅で前記波形データを読み出す波形データ読
出し手段と、 1つの発音指示に対して、前記波形データ読出し手段に
対して、第1の前記発音チャネルにおいて、前記発音指
示により指定される波形アドレスから前記発音指示によ
り指定される歩進幅で前記波形データの読出しを指示す
ると共に、第2の前記発音チャネルにおいて、前記発音
指示により指定される波形アドレスに前記発音指示によ
り指定される歩進幅の1/2のオフセット値を加算して
得られる波形アドレスから前記発音指示により指定され
る歩進幅で前記波形データの読出しを指示する発音制御
手段と、 前記波形データ読出し手段により、前記第1の発音チャ
ネルにおいて読み出された前記波形データに基づいて生
成される音響波形データと、前記第2の発音チャネルに
おいて読み出された前記波形データに基づいて生成され
る音響波形データを、前記サンプリング周期の1/2の
周期で順次出力する音響波形データ出力手段と、 を有することを特徴とする音響信号発生装置。
2. An acoustic signal generator for reading out waveform data stored in a waveform data storage means to generate acoustic waveform data, wherein a plurality of sound generation channels obtained by time-dividing the sampling period for each sampling period. In each of the above, waveform data reading means for reading the waveform data at a designated step width from a designated waveform address on the waveform data storage means; and for one sounding instruction, for the waveform data reading means. In the first sounding channel, the reading of the waveform data is instructed from the waveform address specified by the sounding instruction with the step width specified by the sounding instruction, and in the second sounding channel, The waveform address specified by the sounding instruction has an offset of 1/2 of the step width specified by the sounding instruction. Tone generation control means for instructing the reading of the waveform data with a step width specified by the tone generation instruction from the waveform address obtained by adding the tone value, and the waveform data reading means for reading in the first tone generation channel. The acoustic waveform data generated based on the output waveform data and the acoustic waveform data generated based on the waveform data read in the second sound generation channel are set to half of the sampling period. An acoustic signal generation device, comprising: an acoustic waveform data output unit that sequentially outputs in a cycle.
【請求項3】 前記発音制御手段は、前記発音指示が所
定の属性を有する場合に動作する、 ことを特徴とする請求項1又は2の何れか1項に記載の
音響信号発生装置。
3. The acoustic signal generation device according to claim 1, wherein the sound generation control means operates when the sound generation instruction has a predetermined attribute.
JP33789693A 1993-12-28 1993-12-28 Sound signal generator Expired - Fee Related JP3223282B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33789693A JP3223282B2 (en) 1993-12-28 1993-12-28 Sound signal generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33789693A JP3223282B2 (en) 1993-12-28 1993-12-28 Sound signal generator

Publications (2)

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

Family

ID=18313025

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33789693A Expired - Fee Related JP3223282B2 (en) 1993-12-28 1993-12-28 Sound signal generator

Country Status (1)

Country Link
JP (1) JP3223282B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10218618A1 (en) 2002-04-25 2003-11-06 Basf Ag Process for the preparation of perylene-3,4: 9,10-tetracarboximide and perylene-3,4: 9,10-tetracarboximide and of naphthalene-1,8-dicarboximides

Also Published As

Publication number Publication date
JP3223282B2 (en) 2001-10-29

Similar Documents

Publication Publication Date Title
JPS6147435B2 (en)
US4336736A (en) Electronic musical instrument
JPH09127941A (en) Electronic musical instrument
JP2567717B2 (en) Musical sound generator
US5288940A (en) Tone generating circuitry for reading out one-shot and sustaining waveforms
JP3223282B2 (en) Sound signal generator
JPH0486796A (en) Musical tone generator
JP2762926B2 (en) Music generator
JP2663496B2 (en) Signal interpolator for musical tone signal generator
JP3288500B2 (en) Musical instrument for electronic musical instruments
JP2699570B2 (en) Electronic musical instrument
JP2990777B2 (en) Electronic musical instrument effect device
JPH052999B2 (en)
JP2991436B2 (en) Music signal generator
JP2640991B2 (en) Tone generator
JPH07244487A (en) Music signal generating device
JP2915753B2 (en) Electronic musical instrument
JP2678970B2 (en) Tone generator
JP3044712B2 (en) Electronic musical instrument
JP2897680B2 (en) Music signal generator
JPH10143153A (en) Electronic musical instrument
JP3651675B2 (en) Electronic musical instruments
JP3298152B2 (en) Music signal generator
JPH10247084A (en) Sound source device
JPS5926790A (en) Combination musical tone generator for musical instrument

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