JP3095018B2 - Music generator - Google Patents

Music generator

Info

Publication number
JP3095018B2
JP3095018B2 JP11281990A JP28199099A JP3095018B2 JP 3095018 B2 JP3095018 B2 JP 3095018B2 JP 11281990 A JP11281990 A JP 11281990A JP 28199099 A JP28199099 A JP 28199099A JP 3095018 B2 JP3095018 B2 JP 3095018B2
Authority
JP
Japan
Prior art keywords
waveform
read
address
unit
waveform data
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
JP11281990A
Other languages
Japanese (ja)
Other versions
JP2000089765A (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 JP11281990A priority Critical patent/JP3095018B2/en
Publication of JP2000089765A publication Critical patent/JP2000089765A/en
Application granted granted Critical
Publication of JP3095018B2 publication Critical patent/JP3095018B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、波形メモリに記憶
された波形データを用いて楽音波形を生成する楽音発生
装置に関するものである。この楽音発生装置は、例え
ば、電子楽器の音源に用いることができる。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a musical tone generator for generating a musical tone waveform using waveform data stored in a waveform memory. This tone generator can be used, for example, as a sound source of an electronic musical instrument.

【0002】[0002]

【従来の技術】従来より、波形メモリに記憶された波形
データを、発生する楽音のピッチに応じた速さで読み出
し、読み出された波形データのエンベロープ等を制御し
て楽音波形を形成する楽音発生装置が知られている。こ
のような波形メモリを用いた楽音発生装置では、波形再
生時に音色を制御する方法が限られてしまう。波形メモ
リ中に複数の波形データを用意し、その波形データの中
から演奏データに応じた音色の波形データを選択し、こ
れを読み出して楽音を形成することができる。しかし、
ある特定の演奏表現で演奏され、この演奏表現に応じた
特性を有する波形を波形メモリに記憶させる場合、1つ
の演奏表現だけを取り上げてみても、短い時間のスラ
ー,長い時間のスラーといったように発生する楽音波形
の形状は多様に変化し、これらの楽音波形を全て記憶さ
せることは現実的でない。したがって、演奏データに応
じて音色を制御したい場合には、波形メモリから読み出
された波形データを、演奏データに応じた周波数特性を
有するディジタルフィルタで加工する方法が一般的であ
る。
2. Description of the Related Art Conventionally, waveform data stored in a waveform memory is read out at a speed corresponding to a pitch of a generated musical tone, and a musical tone for forming a musical tone waveform by controlling an envelope or the like of the read waveform data. Generators are known. In a tone generator using such a waveform memory, the method of controlling the timbre during waveform reproduction is limited. A plurality of waveform data is prepared in a waveform memory, and waveform data of a timbre corresponding to performance data is selected from the waveform data, and read out to form a musical tone. But,
When a waveform played by a specific performance expression and having a characteristic corresponding to the performance expression is stored in the waveform memory, even if only one performance expression is picked up, a short time slur, a long time slur, etc. The shapes of generated musical sound waveforms vary variously, and it is not practical to store all of these musical sound waveforms. Therefore, when it is desired to control the timbre in accordance with the performance data, a general method is to process the waveform data read from the waveform memory with a digital filter having a frequency characteristic corresponding to the performance data.

【0003】いずれにしても、波形データの読み出し
は、生成すべき楽音のピッチに応じて制御されるだけ
で、読み出される波形データの時間軸を、ピッチに関係
なく自由に制御することができないという問題があっ
た。例えば、読出レートを速くすればピッチが上がる
が、波形の全体長が短くなり、逆に読出レートを遅くす
ればピッチが下がるが、波形の全体長が長くなる。1波
形の中の立上り部分、中央部分、立下り部分といった個
々の時間長を制御する場合でも同様に楽音のピッチで決
定されていた。
In any case, the reading of the waveform data is controlled only in accordance with the pitch of the musical tone to be generated, and the time axis of the read waveform data cannot be freely controlled regardless of the pitch. There was a problem. For example, if the reading rate is increased, the pitch is increased, but the entire length of the waveform is shortened. Conversely, if the reading rate is decreased, the pitch is decreased, but the entire length of the waveform is increased. Even when individual time lengths such as a rising portion, a center portion, and a falling portion in one waveform are controlled, the pitch is determined in the same manner.

【0004】読み出される波形データの時間軸を自由に
制御できれば、波形再生時に、1種類の波形データから
生成可能な音色の種類を増やすことがでる。例えば、ピ
ッチを変えずにアタック長を変えることで異なる音色を
生成できる。また、演奏場面を飛躍的に広げることもで
きる。例えば、スラー波形を読み出す際には、ピッチを
変えずに時間軸方向に波形を縮めれば、録音時のスラー
よりも短い時間のスラーを、伸ばせば長い時間のスラー
を生成することができる。ビブラート波形を読み出す際
に、ピッチを変えずに時間軸方向に波形を伸ばせばビブ
ラートがゆっくりしたものとなり、縮めればビブラート
が早くなる。いずれも、ピッチと無関係に時間軸方向に
波形を伸ばしたり縮めたりする必要がある。
If the time axis of the waveform data to be read can be freely controlled, the types of timbres that can be generated from one type of waveform data during waveform reproduction can be increased. For example, different timbres can be generated by changing the attack length without changing the pitch. Also, the performance scene can be greatly expanded. For example, when reading a slur waveform, if the waveform is contracted in the time axis direction without changing the pitch, a slur that has a shorter time than the slur at the time of recording and a slur that has a longer time can be generated by extending the slur. When reading the vibrato waveform, if the waveform is extended in the time axis direction without changing the pitch, the vibrato becomes slower, and if the waveform is reduced, the vibrato becomes faster. In any case, it is necessary to expand or contract the waveform in the time axis direction regardless of the pitch.

【0005】一方、録音再生技術分野では、早口の言葉
を聞き取りやすくするためにピッチを変えずに時間軸方
向に音声波形を伸ばす技術、2倍速再生時に再生音声の
ピッチを元のピッチに戻す技術などが知られている。こ
のような技術を上述した楽音発生装置に適用することが
考えられる。しかし、楽音波形データのピッチは波形デ
ータの進行に従ってダイナミックに変動している。上述
した従来の時間軸圧縮伸張技術は、ピッチ制御を必要と
しない音声のための技術であり、電子楽器の音源のよう
にセント単位のピッチ制御が必要な場合への適用は容易
ではない。また、楽音波形は、演奏データに応じて各発
音毎に異なる態様で制御しなければならないのに対し、
従来の時間軸圧縮伸張技術は、入力する波形データを一
律に処理するためのものであり、楽音波形データの読出
レートを、生成すべき楽音のピッチに応じて自由に制御
することはできないという問題があった。
On the other hand, in the field of recording / reproducing technology, a technology for extending a voice waveform in the time axis direction without changing the pitch in order to make it easy to hear the words of the fast voice, a technology for returning the pitch of the reproduced voice to the original pitch at the time of double speed reproduction. Etc. are known. It is conceivable that such a technique is applied to the above-described tone generator. However, the pitch of the musical tone waveform data dynamically fluctuates as the waveform data progresses. The conventional time axis compression / expansion technology described above is a technology for voice that does not require pitch control, and is not easily applied to a case where pitch control in units of cents is required, such as a sound source of an electronic musical instrument. Also, while the musical tone waveform must be controlled in a different manner for each tone depending on the performance data,
The conventional time-axis compression / expansion technology is for uniformly processing input waveform data, and the read rate of musical tone waveform data cannot be freely controlled in accordance with the pitch of musical tones to be generated. was there.

【0006】そのため、演奏表現に応じた特性を有する
波形データを波形メモリに記憶し、読み出し時にこの楽
音波形を部分的に飛び越させたり、繰り返したりして楽
音波形の形状を変えようとする場合、元の波形データを
微細に眺めれば、各周期は一定していない。したがっ
て、波形メモリからの読み出し時に、読み出された波形
データをそのままの形で、部分的な抜き取りや繰り返し
をしようとすると、境界でのつながりが悪く、また、つ
なぎ合わせの波形処理操作が困難であった。
For this reason, when waveform data having characteristics corresponding to the performance expression is stored in a waveform memory, and the read-out tone waveform is partially skipped or repeated at the time of reading, the shape of the tone waveform is changed. If one looks closely at the original waveform data, each cycle is not constant. Therefore, when attempting to partially extract or repeat the read waveform data as it is when reading from the waveform memory, the connection at the boundary is poor and the waveform processing operation for joining is difficult. there were.

【0007】[0007]

【発明が解決しようとする課題】本発明は、上述した問
題点を解決するためになされたもので、生成する楽音の
ピッチと波形メモリから読み出される波形データの時間
軸の圧縮伸張とを自由に制御することができるととも
に、複数の部分的な波形データのつながりを良くするこ
とができる楽音発生装置および楽音発生方法を提供する
ことを目的とするものである。
SUMMARY OF THE INVENTION The present invention has been made in order to solve the above-mentioned problems, and it is possible to freely control the pitch of a musical tone to be generated and the time axis of waveform data read out from a waveform memory. It is an object of the present invention to provide a musical sound generating device and a musical sound generating method capable of controlling and improving connection of a plurality of partial waveform data.

【0008】[0008]

【課題を解決するための手段】請求項1に記載の発明に
おいては、楽音発生装置において、連続した複数周期の
楽音波形が1または複数の周期を単位として区切られた
複数の単位波形データを記憶した波形メモリと、指定さ
れた楽音ピッチに応じた速度で増加する読出アドレスを
生成し、前記読出アドレスにより前記波形メモリから前
記複数の単位波形データを読み出す読出手段と、時間的
に変化する仮想アドレスを出力する仮想アドレス出力手
段と、前記読出アドレスと前記仮想アドレスとの差に応
じて前記読出アドレスとは異なる交替読出アドレスを発
生し、前記読出手段が現在の読出アドレスに替えて前記
交替読出アドレスを前記読出アドレスとして前記複数の
単位波形データを読み出すように制御する制御手段とを
有するものである。したがって、仮想アドレスにより時
間軸の圧縮伸張を制御することができ、生成する楽音の
ピッチと波形メモリから読み出される波形データの時間
軸の圧縮伸張とを自由に制御することができる。また、
波形データの読み出しの途中においても、時間軸方向の
圧縮率を精密に制御することができる。単位波形データ
が1または複数の周期を単位として区切られているか
ら、単位波形データのつながりが良くなる。
According to the first aspect of the present invention, in a tone generator, a plurality of unit waveform data obtained by dividing a plurality of continuous tone waveforms by one or a plurality of cycles are stored. Read-out means for generating a read address that increases at a speed corresponding to a designated musical tone pitch, reading the plurality of unit waveform data from the waveform memory by the read address, and a virtual address that changes with time. Virtual address output means for outputting a read address different from the read address in accordance with a difference between the read address and the virtual address, and the read means replaces the current read address with the replacement read address. And control means for controlling the plurality of unit waveform data to be read as the read address. Therefore, the compression / expansion of the time axis can be controlled by the virtual address, and the pitch of the generated musical tone and the time axis of the waveform data read from the waveform memory can be freely controlled. Also,
Even during the reading of the waveform data, the compression ratio in the time axis direction can be precisely controlled. Since the unit waveform data is divided in units of one or a plurality of cycles, the connection of the unit waveform data is improved.

【0009】請求項2に記載の発明においては、楽音発
生装置において、連続した複数周期の楽音波形が1また
は複数の周期を単位として区切られた複数の単位波形デ
ータを記憶した波形メモリと、指定された楽音ピッチに
応じた速度で増加する読出アドレスを生成し、前記読出
アドレスにより前記波形メモリから前記複数の単位波形
データを読み出す読出手段と、時間的に減少変化する仮
想アドレスを出力する仮想アドレス出力手段と、前記読
出アドレス前記仮想アドレスとの差に応じて、時間軸
上の過去の位置にある周期を読み出すように、前記読出
手段の生成する前記読出アドレスを変更する制御をする
制御手段とを有するものである。
According to a second aspect of the present invention, in the musical sound generating device, a waveform memory storing a plurality of unit waveform data in which a plurality of continuous musical tone waveforms are divided in units of one or a plurality of periods; Reading means for generating a read address that increases at a speed corresponding to the selected tone pitch, reading the plurality of unit waveform data from the waveform memory based on the read address, and a virtual address for outputting a virtual address that decreases and changes with time Output means; and control means for performing control to change the read address generated by the read means so as to read a cycle at a past position on a time axis according to a difference between the read address and the virtual address. And

【0010】請求項3に記載の発明においては、楽音発
生装置において、連続した複数周期の楽音波形が1また
は複数の周期を単位として区切られた複数の単位波形デ
ータを記憶した波形メモリと、指定された楽音ピッチに
応じた速度で増加する読出アドレスを生成し、前記読出
アドレスにより前記波形メモリから前記複数の単位波形
データを読み出す読出手段と、楽音制御に関するパラメ
ータに応じて時間的に変化する仮想アドレスを出力する
仮想アドレス出力手段と、前記読出アドレス前記仮想
アドレスとの差に応じて、前記楽音波形が時間軸伸縮さ
れるように、前記読出手段の生成する前記読出アドレス
を変更する制御をする制御手段とを有するものである。
請求項4に記載の発明においては、楽音発生装置におい
て、連続した複数周期の楽音波形が1または複数の周期
を単位として区切られた複数の単位波形データを記憶し
た波形メモリと、指定された楽音ピッチに応じた速度で
増加する読出アドレスを生成し、前記読出アドレスによ
り前記波形メモリから前記複数の単位波形データを読み
出す読出手段と、時間的に減少変化する仮想アドレスを
出力する仮想アドレス出力手段と、前記読出アドレスと
前記仮想アドレスとの差に応じて前記読出アドレスとは
異なる交替読出アドレスを発生し、前記読出手段が現在
の読出アドレスに替えて前記交替読出アドレスを前記読
出アドレスとして前記複数の単位波形データを読み出す
ように制御することにより、時間軸上の過去の位置にあ
る周期を読み出すようにする制御手段とを有するもので
ある。請求項5に記載の発明においては、楽音発生装置
において、連続した複数周期の楽音波形が1または複数
の周期を単位として区切られた複数の単位波形データを
記憶した波形メモリと、指定された楽音ピッチに応じた
速度で増加する読出アドレスを生成し、前記読出アドレ
スにより前記波形メモリから前記複数の単位波形データ
を読み出す読出手段と、楽音制御に関するパラメータに
応じて時間的に変化する仮想アドレスを出力する仮想ア
ドレス出力手段と、前記読出アドレスと前記仮想アドレ
スとの差に応じて前記読出アドレスとは異なる交替読出
アドレスを発生し、前記読出手段が現在の読出アドレス
に替えて前記交替読出アドレスを前記読出アドレスとし
て前記複数の単位波形データを読み出すように制御する
とにより、前記楽音波形が時間軸伸縮されるようにす
る制御手段とを有するものである。
According to a third aspect of the present invention, in the musical tone generator, a waveform memory storing a plurality of unit waveform data in which a plurality of continuous musical tone waveforms divided in units of one or a plurality of periods is provided. Reading means for generating a read address which increases at a speed corresponding to the selected tone pitch, reading the plurality of unit waveform data from the waveform memory in accordance with the read address, and a virtual means temporally varying in accordance with parameters relating to tone control. Virtual address output means for outputting an address, and control for changing the read address generated by the read means so that the musical tone waveform is expanded or contracted in time in accordance with a difference between the read address and the virtual address. And control means for performing the operation.
According to the fourth aspect of the present invention, there is provided a musical sound generator.
And a plurality of continuous musical tone waveforms in one or more cycles
Stores a plurality of unit waveform data separated by
At the speed corresponding to the specified musical tone pitch
Generating an increasing read address, and
Reading the plurality of unit waveform data from the waveform memory
Read-out means and a virtual address which decreases and changes with time.
Output means for outputting a virtual address;
What is the read address according to the difference with the virtual address?
Generate a different alternate read address and the read means
The replacement read address in place of the read address of the
Reading the plurality of unit waveform data as an output address
Control in such a way that the past position on the time axis
Control means for reading out the cycle of
is there. According to the fifth aspect of the present invention, a musical sound generator is provided.
, One or more musical tone waveforms of continuous plural cycles
Multiple unit waveform data separated by the cycle of
According to the stored waveform memory and the specified tone pitch
Generating a read address that increases with speed,
The plurality of unit waveform data from the waveform memory
Reading means for reading the tone and parameters related to the tone control.
Virtual address that outputs a virtual address that changes over time
Address output means, the read address and the virtual address.
Read address different from the read address according to the difference between
An address is generated, and said read means outputs a current read address.
And the replacement read address is used as the read address.
Control to read out the plurality of unit waveform data
By and this, be such a tone waveform is telescopic time axis
Control means.

【0011】なお、上述した発明に関連した楽音発生装
置として、連続した複数周期の楽音波形が1または複数
の周期を単位として区切られ周期長が規格化された複数
の単位波形データを記憶した波形メモリと、指定された
楽音ピッチに応じた速度で増加する読出アドレスを生成
し、前記読出アドレスにより前記波形メモリから前記複
数の単位波形データを読み出す読出手段と、時間的に変
化する仮想アドレスを出力する仮想アドレス出力手段
と、前記読出アドレスと前記仮想アドレスとを前記単位
波形データの周期番号を単位として比較することによ
り、前記読出アドレスと前記仮想アドレスとの差を求
め、前記読出アドレスと前記仮想アドレスとの差に応じ
て前記読出アドレスと前記規格化された周期長の整数倍
だけ異なる交替読出アドレスを発生し、前記読出手段が
現在の読出アドレスに替えて前記交替読出アドレスを前
記読出アドレスとして前記複数の単位波形データを読み
出すように制御する制御手段を有するものがある。
A musical tone generating apparatus according to the invention described above has a waveform storing a plurality of unit waveform data in which a plurality of continuous musical tone waveforms are divided in units of one or a plurality of periods and whose period length is standardized. A memory for generating a read address that increases at a speed corresponding to a designated tone pitch, reading means for reading the plurality of unit waveform data from the waveform memory based on the read address, and outputting a time-varying virtual address; A difference between the read address and the virtual address by comparing the read address with the virtual address by using a cycle number of the unit waveform data as a unit. An alternate read address that differs by an integer multiple of the standardized cycle length from the read address in accordance with a difference between the address and the read address. A scan occurs, the reading means those having a control means for controlling to read said plurality of unit waveform data of the replacement read address as the read address instead of the current read address.

【0012】また、連続した複数周期の楽音波形が1ま
たは複数の周期を単位として区切られた複数の単位波形
データを記憶した波形メモリと、指定された楽音ピッチ
に応じた速度で増加する読出アドレスを生成し、前記読
出アドレスにより前記波形メモリから前記複数の単位波
形データを読み出す読出手段と、該読出手段の読み出し
ている前記単位波形データの番号を出力する番号出力手
段と、時間的に変化する仮想アドレスを出力する仮想ア
ドレス出力手段と、前記番号と前記仮想アドレスとの差
が所定値以上になったことを検出し、前記差が小さくな
るよう、前記読出手段の生成する前記読出アドレスを変
更する制御をする制御手段を有するものがある。
Further, a waveform memory storing a plurality of unit waveform data in which a plurality of continuous musical tone waveforms are divided in units of one or a plurality of periods, and a read address which increases at a speed corresponding to a designated musical tone pitch. Reading means for reading the plurality of unit waveform data from the waveform memory in accordance with the read address, and number output means for outputting a number of the unit waveform data read by the reading means, which changes with time. Virtual address output means for outputting a virtual address, and detecting that the difference between the number and the virtual address is greater than or equal to a predetermined value, and changing the read address generated by the read means so as to reduce the difference. Some have control means for performing control.

【0013】上述した請求項1ないし請求項3の各請求
項に記載の楽音発生装置、これらの楽音発生装置に関連
した上述した楽音発生装置を構成する各手段は、ハード
ウエアにより実現することができる。また、コンピュー
タを、上述した各手段として機能させるためのプログラ
ムを作成することができる。このプログラムを記録媒体
に記録し、記録媒体からこのプログラムをコンピュータ
で読み取り可能にすることができる。
[0013] Each of the above-mentioned musical tone generating devices according to the first to third aspects of the present invention, and each means constituting the above-mentioned musical tone generating device related to these musical tone generating devices can be realized by hardware. it can. Further, it is possible to create a program for causing a computer to function as each unit described above. This program can be recorded on a recording medium, and the program can be read from the recording medium by a computer.

【0014】[0014]

【発明の実施の形態】図1ないし図6を参照し、最初に
波形準備の段階について説明する。図1は、本発明の楽
音発生装置に用いる波形メモリに記憶させる楽音波形デ
ータの加工方法の原理的説明図である。図中、1は周期
の長い元波形(周期長L1)のサンプル値、2は周期の
短い元波形(周期長L2 )のサンプル値、3は規格化さ
れた周期長CL(Cycle Length)の記憶波
形のサンプル値である。楽音波形を記憶させる際に、周
期の長い元波形は、圧縮率α1 =CL/L1 で圧縮し、
周期の短い元波形は、圧縮率α2 =CL/L2 で伸張し
て、周期がCLに規格化された記憶波形を形成して波形
メモリに記憶する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS First, a waveform preparation stage will be described with reference to FIGS. FIG. 1 is a principle explanatory view of a processing method of musical tone waveform data stored in a waveform memory used in a musical tone generating device of the present invention. In the drawing, 1 is a sample value of an original waveform having a long cycle (cycle length L 1 ), 2 is a sample value of an original waveform having a short cycle (cycle length L 2 ), and 3 is a standardized cycle length CL (Cycle Length). Is a sample value of the stored waveform of FIG. When storing a musical sound waveform, an original waveform having a long cycle is compressed at a compression rate α 1 = CL / L 1 ,
The original waveform having a short cycle is expanded at a compression rate α 2 = CL / L 2 to form a storage waveform whose cycle is standardized to CL and stored in the waveform memory.

【0015】ここでの圧縮および伸張は、いわゆるサン
プリングレート変換の技術を用いて波形データのサンプ
リング周波数を変更することで実現され、それにより1
周期あたりのサンプル数が変化する。例えば、1周期あ
たり100サンプルの波形データのサンプリング周波数
を1.5倍すれば1周期あたり150サンプルの波形デ
ータが得られ、元波形は圧縮率α2 =150/100で
伸張され、周期長が150サンプルに規格化された記憶
波形を形成して波形メモリに記憶される。このように、
波形準備処理では、圧縮伸張により元波形の長さがα倍
された記憶波形が生成される。
The compression and decompression are realized by changing the sampling frequency of the waveform data by using a so-called sampling rate conversion technique.
The number of samples per cycle changes. For example, if the sampling frequency of waveform data of 100 samples per cycle is multiplied by 1.5, waveform data of 150 samples is obtained per cycle, the original waveform is expanded at a compression rate α 2 = 150/100, and the cycle length is A storage waveform standardized to 150 samples is formed and stored in the waveform memory. in this way,
In the waveform preparation processing, a stored waveform in which the length of the original waveform is multiplied by α by compression and expansion is generated.

【0016】具体的には、楽音波形データから、同位相
となる時点を検出して、ここを元波形の区切りポイント
として指定し、このポイント間を1周期と定めて、その
間のサンプル数が予め定められたサンプル数となるよう
にサンプル値を補間する処理を行い、規格化された周期
長CLの記憶波形のサンプル値3を得る。サンプリング
周波数が一定であるので、1周期あたりのサンプル数で
周期長を表すことができる。上述した波形処理におけ
る、1周期当たりのサンプル数の増減により、周期長が
圧縮または伸張されることになる。なお、α2 =CL/
2 は、1を超える値をとるが、圧縮の場合と同じ演算
式を用いるために伸張も圧縮率αで表現している。
More specifically, a point in time at which the phase becomes the same is detected from the musical sound waveform data, and this point is designated as a breakpoint of the original waveform. A process of interpolating the sample values so as to have the determined number of samples is performed to obtain the sample values 3 of the stored waveform having the standardized cycle length CL. Since the sampling frequency is constant, the cycle length can be represented by the number of samples per cycle. In the above-described waveform processing, the cycle length is compressed or expanded by increasing or decreasing the number of samples per cycle. Note that α 2 = CL /
L 2 is takes a value greater than 1, also stretched in order to use the same calculation formula as that of the compression is expressed at a compression rate alpha.

【0017】周期の切れ目のポイントとしては、楽音波
形を1つのポイントまで読み出し終わったときに、その
時点で、別の任意のポイントから始まる波形の読み出し
に直接つないだ場合でも、波形が比較的滑らかにつなが
り、比較的ノイズの発生しにくい位置が選ばれている。
本発明では、それを同位相ポイントと呼んでいる。例え
ば、振幅値がゼロのゼロクロスポイントが好適である。
同位相ポイントで区切られた範囲が複数周期の波形デー
タの各1周期であり、その長さが所定長に規格化され、
規格化処理後の単位波形データが波形メモリに記憶され
る。
As a point of a cycle break, when a musical tone waveform has been read out to one point, the waveform is relatively smooth even if it is directly connected to a waveform starting from another arbitrary point at that time. And a position where noise is relatively unlikely to occur is selected.
In the present invention, it is called an in-phase point. For example, a zero cross point having an amplitude value of zero is preferable.
The range delimited by the same phase point is each one cycle of the waveform data of a plurality of cycles, and the length is standardized to a predetermined length.
The unit waveform data after the normalization processing is stored in the waveform memory.

【0018】このように、本発明では、波形データの各
周期長を規格化したものであり、周期長CLを一定値に
揃えた単位波形データに加工してから波形メモリに記憶
させるとともに、元波形に対する規格化された単位波形
データの圧縮率αも周期データメモリに記憶しておき、
再生時にこの圧縮率αを用いて元波形をそのまま再現し
たり、読み出した波形データの時間軸圧縮伸張を行なう
ことにより元波形とは異なった音色の楽音波形を生成す
ることを可能とする。波形メモリに記憶する複数周期の
波形データの各周期の長さをあらかじめ規格化してある
ため、波形データの読出時に、波形データのある周期の
読み出しから別の周期の読み出しへと簡単に切換えでき
るようになる。
As described above, in the present invention, each cycle length of the waveform data is standardized, and is processed into unit waveform data in which the cycle length CL is set to a constant value, and then stored in the waveform memory. The compression rate α of the normalized unit waveform data for the waveform is also stored in the cycle data memory,
At the time of reproduction, the original waveform can be reproduced as it is using this compression ratio α, or the read-out waveform data can be compressed and decompressed in the time axis to generate a tone waveform having a tone different from the original waveform. Since the length of each cycle of the waveform data of a plurality of cycles to be stored in the waveform memory is standardized in advance, it is possible to easily switch from reading one cycle of the waveform data to reading another cycle when reading the waveform data. become.

【0019】図2は、本発明の楽音発生装置に用いる波
形メモリを作成する第1の装置の概要構成図である。図
中、11は録音再生部、12は周期長規格化部、13は
各周期長指定部、14は波形データ書込部、15は周期
データ書込部である。
FIG. 2 is a schematic block diagram of a first device for creating a waveform memory used in the tone generator of the present invention. In the figure, 11 is a recording / reproducing unit, 12 is a cycle length standardizing unit, 13 is each cycle length designating unit, 14 is a waveform data writing unit, and 15 is a cycle data writing unit.

【0020】波形入力は、録音再生部11においてディ
ジタル録音されている。この再生時に、録音された複数
周期の波形データは、各周期長指定部13において、波
形データの各周期の長さを自動的に検出、ないしは、ユ
ーザの操作子の操作により指定して、各周期の長さ、図
1の例では、L1 ,L2 を判定し、圧縮率αを決定す
る。圧縮率αは、規格化した周期長を元波形の周期長で
割った値である。周期長規格化部12では、決定された
圧縮率αに基づき圧縮伸張を行って、複数周期の波形デ
ータの各周期長CLを所定の長さに揃えて規格化した波
形データを作成する。波形データ書込部14は規格化さ
れた波形データで波形メモリを作成し、周期データ書込
部15は圧縮率α、または、これをセント単位の圧縮率
α’に変換して周期データメモリを作成する。
The waveform input is digitally recorded in the recording / playback unit 11. At the time of this reproduction, the recorded waveform data of a plurality of cycles is automatically detected by the cycle length designation unit 13 or the length of each cycle of the waveform data is designated by the operation of the user's operation element. The length of the cycle, L 1 and L 2 in the example of FIG. 1, is determined, and the compression ratio α is determined. The compression ratio α is a value obtained by dividing the normalized cycle length by the cycle length of the original waveform. The cycle length normalizing unit 12 performs compression and decompression based on the determined compression ratio α to create waveform data in which each cycle length CL of a plurality of cycles of waveform data is normalized to a predetermined length. The waveform data writing unit 14 creates a waveform memory with the standardized waveform data, and the periodic data writing unit 15 converts the compression rate α or the compression rate α ′ in cent units into create.

【0021】後述する本発明の楽音発生装置の実施の形
態では、上述した方法で準備された波形データを使用す
るが、次に示すような装置で波形データを作成すること
もできる。図3は、本発明の楽音発生装置に用いる波形
メモリを作成する第2の装置の概要構成図である。図
中、図2と同様な部分には同じ符号を付して説明を省略
する。21は分離部、22は非周期波形書込部である。
図2に示した第1の装置に比べて、分離部21で、録音
した波形データを周期成分と非周期成分に分離し、非周
期成分については非周期波形書込部22によりそのま
ま、波形メモリに書き込み、周期成分につては、図2に
示した第1の装置と同様に、周期長を所定の長さに揃え
て、波形メモリに記憶したものである。非周期波形と周
期波形とは、同期をとって読み出すことができるように
記憶される。
In the embodiment of the tone generator of the present invention, which will be described later, the waveform data prepared by the above-mentioned method is used. However, the waveform data can be created by the following device. FIG. 3 is a schematic configuration diagram of a second device for creating a waveform memory used in the tone generator of the present invention. In the figure, the same parts as those in FIG. Reference numeral 21 denotes a separating unit, and reference numeral 22 denotes an aperiodic waveform writing unit.
Compared to the first device shown in FIG. 2, the separating unit 21 separates the recorded waveform data into a periodic component and an aperiodic component. And the periodic component is stored in the waveform memory with the periodic length set to a predetermined length, as in the first device shown in FIG. The aperiodic waveform and the periodic waveform are stored so that they can be read out synchronously.

【0022】分離部としては、例えば、周期成分の多い
周波数帯域を分離するフィルタあるいは、1波形中で周
期成分の多い期間を分離するゲート回路等を用いること
ができる。このような非周期波形データと周期波形デー
タとを使用した楽音形成では、音源の2チャネルを使用
し、そのうち1チャネルで非周期波形データを通常の方
式で読み出し、もう1つのチャネルで周期波形データの
時間軸圧縮伸張を行いつつ読み出すようにする。
As the separating section, for example, a filter for separating a frequency band having a large number of periodic components, a gate circuit for separating a period having a large number of periodic components in one waveform, or the like can be used. In such tone generation using non-periodic waveform data and periodic waveform data, two channels of a sound source are used, and one of the channels reads out non-periodic waveform data in a normal manner, and the other channel reads periodic waveform data. While performing the time axis compression / expansion.

【0023】図4は、本発明の楽音発生装置において、
波形メモリに記憶される波形データの記憶形式の模式的
説明図である。図中、図4(a)は立上りから立下りま
での一連の全波形を記憶した例であり、図4(b)は、
アタック部の波形とループ部の波形とを切り出して波形
メモリに記憶した例である。
FIG. 4 shows a tone generator according to the present invention.
FIG. 5 is a schematic explanatory diagram of a storage format of waveform data stored in a waveform memory. FIG. 4A shows an example in which a series of all waveforms from rising to falling is stored, and FIG.
This is an example in which a waveform of an attack portion and a waveform of a loop portion are cut out and stored in a waveform memory.

【0024】図4(a)に示されるように、自然楽器の
複数周期の演奏音は、波形データの1周期の長さを所定
の規格化された長さに揃えられ、言い換えれば、1周期
当たり所定数のサンプル値となるようにして、波形メモ
リの各番地に立上りから立下がりまで順番に記憶されて
いる。図中、A0〜An−1は、規格化された波形デー
タの周期1〜周期n−1の先頭番地である。複数周期の
元波形の上で、1周期毎のそれぞれの同位相ポイントを
決定し、この同位相ポイントの間が周期長CLになるよ
うに規格化が行われる。その結果、規格後の各周期iの
先頭番地Aiは、周期長CLに等しい一定間隔おきであ
る。
As shown in FIG. 4A, the performance sound of a natural musical instrument having a plurality of cycles has the waveform data of one cycle equal to a predetermined standardized length, in other words, one cycle of the waveform data. A predetermined number of sample values are stored at each address of the waveform memory in order from rising to falling. In the figure, A0 to An-1 are the starting addresses of the periods 1 to n-1 of the normalized waveform data. On the original waveform of a plurality of cycles, each in-phase point for each cycle is determined, and normalization is performed so that the interval between the in-phase points becomes the cycle length CL. As a result, the start addresses Ai of each cycle i after the standardization are at regular intervals equal to the cycle length CL.

【0025】図4(b)においては、自然楽器の演奏音
を再生した際に、アタック部の波形とループ部の波形と
を抽出したものである。図4(a)と同様に、A0〜A
nは、規格化された波形データの周期1〜周期nの先頭
番地であり、先頭番地は周期長CLに等しい一定間隔お
きである。アタック部の波形データは、先頭番地AS=
A0からの波形データの周期0〜周期m−1であり、ル
ープ部の波形データは、先頭番地LS=Amからの波形
データの周期m〜周期nである。定常波形や、ビブラー
ト,トレモロ,トリルなどの周期性を有する変調波形の
変調周波数の1周期分などをループ部の波形データとす
る。変調周波数は、例えば、ビブラート等では数Hz〜
数十Hzくらいの周波数である。また、変調周波数の複
数周期分をループ部としてもよい。
In FIG. 4B, when a performance sound of a natural musical instrument is reproduced, a waveform of an attack portion and a waveform of a loop portion are extracted. As in FIG. 4A, A0 to A
n is the start address of the period 1 to period n of the normalized waveform data, and the start address is at regular intervals equal to the period length CL. The waveform data of the attack part is represented by the start address AS =
The period of the waveform data from A0 is 0 to the period m-1, and the waveform data of the loop portion is the period m to n of the waveform data from the start address LS = Am. One period of the modulation frequency of a modulated waveform having a periodicity such as a steady waveform, vibrato, tremolo, and torill is used as the waveform data of the loop portion. The modulation frequency is, for example, several Hz to vibrato or the like.
The frequency is about several tens Hz. Also, a plurality of cycles of the modulation frequency may be used as the loop unit.

【0026】なお、ループ部の終端から先端に戻る部分
を滑らかにするため、ループ部用に切り出した波形の終
端と先端の波形とをクロスフェードして得られた波形を
ループ部の終わりの部分に記憶してもよい。また、アタ
ック部の波形の途中を抜いて、その両側でクロスフェー
ドして、アタック部の長さを短縮して記憶させてもよ
い。図4(b)においても、各1周期の圧縮率αが周期
データとして記憶される。ただし、アタック部以外で
は、圧縮率が余り変化しないため、複数周期に一度記憶
させるだけでもよい。
In order to smooth the portion returning from the end of the loop to the end, the waveform obtained by cross-fading the end of the waveform cut out for the loop and the waveform at the end is used as the end of the loop. May be stored. Alternatively, the middle of the waveform of the attack portion may be extracted and cross-faded on both sides of the waveform, and the length of the attack portion may be shortened and stored. In FIG. 4B as well, the compression ratio α for each cycle is stored as cycle data. However, since the compression ratio does not change so much in portions other than the attack portion, it may be stored only once in a plurality of cycles.

【0027】上述した説明では、規格化された波形デー
タは、音高に関係なく一律に同一周期長、言い換えれ
ば、1周期当たりのサンプル数を同じにしていた。しか
し、規格化する周期長CLを、音高等に応じて変えるこ
とができる。図5は、周期長の規格化の第1,第2の例
を示す説明図である。図5(a)は、第1の例を示すも
ので、音色や音高によらないで1つの波形データの中の
各周期の長さを揃えたものである。例えば、1周期長を
1k(1024)サンプルとしたものである。以下の例
でも、1kサンプルを基準値として説明するが、この値
は説明用の数値例である。
In the above description, the normalized waveform data has the same period length regardless of the pitch, in other words, the same number of samples per period. However, the cycle length CL to be normalized can be changed according to the pitch and the like. FIG. 5 is an explanatory diagram showing first and second examples of normalizing the cycle length. FIG. 5A shows a first example, in which the lengths of the periods in one waveform data are made uniform regardless of the timbre or pitch. For example, one cycle length is 1k (1024) samples. In the following example, 1k samples will be described as a reference value, but this value is a numerical example for description.

【0028】図5(b)は、第2の例を示すもので、1
オクターブの各音域毎に、揃える周期の長さを異ならせ
たものである。音域毎にメモリバンクを割り当て、G0
〜F#1の音域は、1周期のサンプル数を1024サン
プルとしているが、1オクターブ上がる毎にサンプル数
を半分にし、G7〜F#8の音域は、8サンプルとして
いる。1つの波形データの中では、同じ周期長(サンプ
ル数)に揃えられている。
FIG. 5B shows a second example.
The length of the cycle to be aligned is different for each octave range. Allocate memory banks for each range,
In the range of F # 1 to 1024, the number of samples in one cycle is 1024, but the number of samples is halved every one octave up, and the range of G7 to F # 8 is 8 samples. Within one waveform data, they are set to the same cycle length (number of samples).

【0029】なお、複数周期を1つの単位波形データと
してもよい。例えば、G1〜F#2の音域では、2周期
を1つにして1024サンプルの単位波形データとす
る。波形メモリの読み出し時に、複数の単位波形の周期
を特定するための周期番号の桁数が少なくなり、カウン
タのビット数を減らすことができる。高いオクターブの
音域では、特にサンプル数が少ないために有効である。
A plurality of periods may be defined as one unit waveform data. For example, in the range of G1 to F # 2, two periods are set to one and the unit waveform data is 1024 samples. When reading the waveform memory, the number of digits of the cycle number for specifying the cycle of the plurality of unit waveforms is reduced, and the number of bits of the counter can be reduced. This is particularly effective in the high octave range because the number of samples is small.

【0030】図6は、周期長の規格化の第3の例を示す
説明図である。半音の4つ毎に区分した音域毎に揃える
周期の長さを異ならせたものである。音域毎にメモリバ
ンクを割り当て、G0〜A#0の音域は、1周期のサン
プル数を1536サンプルとしているが、音域が1つ上
がる毎にサンプル数を5/6〜3/4にしている。シフ
トダウン数については、後述するが、1024ビットの
カウンタに付加したシフトレジスタの動作を示してい
る。1つの波形データの中では、同じ周期数(サンプル
数)に揃えられている。
FIG. 6 is an explanatory diagram showing a third example of the standardization of the cycle length. The length of the period to be aligned in each of the sound ranges divided into four semitones is different. A memory bank is allocated to each range, and the range of G0 to A # 0 has 1536 samples in one cycle, but the number of samples is set to 5/6 to 3/4 every time the range is increased by one. As for the number of shift-down operations, the operation of the shift register added to the 1024-bit counter will be described later. In one waveform data, the number of cycles (the number of samples) is equalized.

【0031】上述した説明では、1つの立上りから立下
りまでの波形中の各周期長は、その波形の音域によって
異なる長さに揃えられていたが、アタックの周期長を増
やし、サステインの周期長を減らすといったように、発
音途中で発音期間に応じて切り換えるようにしてもよ
い。また、上述した例は、1つの音色に属する波形デー
タの中での例であり、複数の音色の波形データが用意さ
れる場合は、各音色毎に独立に周期長を決めればよい。
In the above description, each cycle length in one rising to falling waveform is set to a different length depending on the range of the waveform. However, the cycle length of the attack is increased, and the cycle length of the sustain is increased. For example, the sound may be switched in accordance with the sounding period during sounding. Further, the above-described example is an example of waveform data belonging to one tone color. When waveform data of a plurality of tone colors is prepared, the cycle length may be determined independently for each tone color.

【0032】上述した変形例では、音域や発音期間、音
色等によって周期長を異ならせたが、それでも、周期長
を全く規格化しない場合に比べて、単位波形の終了の検
出が1周期のサンプル数を計数するカウンタで容易に検
出することができ、次の単位波形の波形の先頭アドレス
に移ることができる。また、単位波形同士のつながりが
よくなる。1つの音色の中で、複数のバリエーションの
波形データ(タッチ強/弱の波形や、変調あり/なしの
波形等)を用意する場合に、各波形データの周期の切り
方を互いに同位相になるようにしておく。そうしておけ
ば、ノイズを抑えつつ1つのバリエーションの波形デー
タのある周期の読み出しの途中で、異なるバリエーショ
ンの波形データの任意の周期の読み出しに切り換えるこ
とができる。
In the above-described modified example, the cycle length is varied depending on the tone range, the tone generation period, the timbre, etc. However, even if the cycle length is not standardized at all, the detection of the end of the unit waveform is one sample period. The number can be easily detected by a counter that counts the number, and the process can move to the start address of the next unit waveform. Also, the connection between the unit waveforms is improved. When preparing a plurality of variations of waveform data (a waveform with strong / weak touch, a waveform with / without modulation, etc.) in one tone color, the cycle of each waveform data becomes in phase with each other. So that By doing so, it is possible to switch to reading an arbitrary cycle of waveform data of a different variation in the middle of reading a waveform data of one variation while suppressing noise.

【0033】図7は、本発明の楽音発生装置の実施の一
形態を説明するための全体構成図である。図中、31は
演奏入力部、32は設定入力部、33は制御部、34は
音源部、35は制御レジスタ部、36は波形発生部、3
7は音量制御部、38はCH累算部、39はDAC、4
0はサウンドシステムである。
FIG. 7 is an overall configuration diagram for explaining an embodiment of a musical sound generating apparatus according to the present invention. In the figure, 31 is a performance input section, 32 is a setting input section, 33 is a control section, 34 is a sound source section, 35 is a control register section, 36 is a waveform generation section,
7 is a volume control unit, 38 is a CH accumulation unit, 39 is a DAC,
0 is a sound system.

【0034】演奏入力部31は、MIDIキーボード、
MIDIギター、ホイール操作子、ペダル操作子、ジョ
イスティック等の演奏操作子、ないし、それらの中の任
意の操作子の組み合わせ、および、自動演奏装置等であ
り、MIDIイベント等の演奏情報を供給する。設定入
力部32は、表示器、パネルスイッチ、スライダー、ジ
ョグダイヤル等であり、ユーザが操作することにより、
設定情報を入力するとともに、設定情報等の表示を行
う。制御部33は、CPU、ROM、RAM、その他の
周辺回路を含み、設定情報に応じて楽音波形発生装置の
各種設定や、演奏入力に応じて音源部34に対する発音
制御を行う。
The performance input unit 31 includes a MIDI keyboard,
It is a performance operator such as a MIDI guitar, a wheel operator, a pedal operator, a joystick, or a combination of arbitrary operators among them, and an automatic performance device, and supplies performance information such as a MIDI event. The setting input unit 32 is a display, a panel switch, a slider, a jog dial, and the like.
The user inputs the setting information and displays the setting information and the like. The control unit 33 includes a CPU, a ROM, a RAM, and other peripheral circuits, and performs various settings of the musical tone waveform generator according to the setting information, and controls sound generation for the sound source unit 34 according to the performance input.

【0035】音源部36内の制御レジスタ部35は、制
御部33から、音色指定データ、ピッチデータ、エンベ
ロープデータ、発音開始終了データなどのデータを受け
取って保持する。波形発生部34は、制御レジスタ部3
5から制御データを受けて時分割で複数チャネル分の波
形を生成する。音量制御部37は、生成された各チャネ
ルの波形に、楽音の立ち上がりから終わりまでの音量変
化特性を付与するもので、ノートオン後に、アタック、
ディケイ、サステイン、リリース(ADSR)型のエン
ベロープを発生しつつ、波形発生部36が生成した波形
にエンベロープを乗じて音量を制御する。
The control register section 35 in the tone generator section 36 receives and holds data such as tone color designation data, pitch data, envelope data, and sound generation start / end data from the control section 33. The waveform generating unit 34 includes the control register unit 3
5 to generate waveforms for a plurality of channels by time division. The volume control unit 37 adds a volume change characteristic from the rise to the end of the musical tone to the generated waveform of each channel.
While generating a decay, sustain, release (ADSR) type envelope, the waveform generated by the waveform generator 36 is multiplied by the envelope to control the volume.

【0036】以上の、波形発生部36、音量制御部37
の動作は、各発音チャネル毎に独立して行われ、CH累
算部38は、エンベロープ特性を付与された複数チャネ
ルの波形を合成して、DAC(D/A変換器)39に供
給し、DAC39は、アナログ信号に戻された波形をサ
ウンドシステム40に出力する。
The above-described waveform generator 36 and volume controller 37
Is performed independently for each sounding channel. The CH accumulating unit 38 combines the waveforms of the plurality of channels to which the envelope characteristic is added, and supplies the synthesized waveform to the DAC (D / A converter) 39. The DAC 39 outputs the waveform returned to the analog signal to the sound system 40.

【0037】図8は、図7に示した波形発生部の内部構
成図である。図中、51,52は加算部、53はFナン
バ発生部、54はカウンタ部、55は波形選択部、56
はLPF、57はスタートアドレスおよび周期長記憶
部、58は周期データ記憶部、59は第1の周期番号レ
ジスタ、60は第2の周期番号レジスタ、61は第1の
加工部、62は第2の加工部、63は波形メモリ、64
は第1の補間部、65は第2の補間部、66はクロスフ
ェード合成部、67は仮想アドレスカウンタ部である。
FIG. 8 is an internal configuration diagram of the waveform generator shown in FIG. In the figure, 51 and 52 are adders, 53 is an F number generator, 54 is a counter, 55 is a waveform selector, 56
Is an LPF, 57 is a start address and cycle length storage section, 58 is a cycle data storage section, 59 is a first cycle number register, 60 is a second cycle number register, 61 is a first processing section, and 62 is a second processing section. , 63 is a waveform memory, 64
Denotes a first interpolation unit, 65 denotes a second interpolation unit, 66 denotes a cross-fade synthesizing unit, and 67 denotes a virtual address counter unit.

【0038】この実施の形態では、各発音チャネル毎
に、読出アドレスをずらせて波形メモリ63から2系列
の読み出しを行う。仮想アドレスカウンタ部67は、時
間の経過とともに波形メモリ63から波形データを読み
出すべき位置の軌跡を指示し、波形選択部55は、この
仮想アドレスVAの示すアドレスを目標として、2系列
を交替させることにより読み出すアドレスを追従させ
る。それとともに、クロスフェード合成部66を制御し
て、2系列の一方の選択または両系列の合成をする。1
つの波形データの連続した周期を順次読み出す場合は、
2系列のうちのいずれか一方だけを使用して読み出しを
行う。読み出す周期がジャンプする場合には、一方の系
列では、直前に読み出していた周期に続く周期を読み出
しつつ、もう一方の系列でジャンプ先の新たな周期の読
み出しを行い、その2波形をクロスフェード合成部66
で合成して波形のつながりを良くしている。
In this embodiment, two series of readings are performed from the waveform memory 63 by shifting the read address for each tone generation channel. The virtual address counter 67 indicates the trajectory of the position from which the waveform data is to be read out from the waveform memory 63 with the passage of time, and the waveform selector 55 switches the two series with the target indicated by the virtual address VA as the target. Makes the address to be read follow. At the same time, the cross-fade synthesizing unit 66 is controlled to select one of the two streams or to combine the two streams. 1
When reading consecutive cycles of two waveform data sequentially,
Reading is performed using only one of the two sequences. When the read cycle jumps, one cycle reads the cycle following the cycle read immediately before, while the other stream reads a new cycle at the jump destination, and cross-fade synthesizes the two waveforms. Part 66
To improve the connection of the waveforms.

【0039】この実施の形態では、波形メモリ63に記
憶された単位波形内のサンプル点のアドレスを指示する
位相データとして、Fナンバ(周波数ナンバ)演算方式
を採用している。各鍵の音高周波数に比例した数値をカ
ウンタ部54で累算してその整数部を単位波形内のサン
プル点のアドレスとして、サンプル値を実時間で読み出
すものである。
In this embodiment, an F-number (frequency number) calculation method is employed as phase data indicating an address of a sample point in a unit waveform stored in the waveform memory 63. The numerical value proportional to the pitch frequency of each key is accumulated by the counter unit 54, and the sample value is read out in real time using the integer part as the address of the sample point in the unit waveform.

【0040】各鍵の音高周波数に比例したノートナンバ
(セント単位)は、加算部51においてはピッチベンド
等のピッチずれ入力(セント単位)と加算され、加算部
52においては、LPF(ローパスフィルタ)56の出
力と加算され、Fナンバ発生部53に入力される。ピッ
チずれの入力データとしては、この他に、基準ピッチか
らのずれを指定するデチューンデータや、LFO(低周
波発振器)の発生する低周波波形データ、ピッチエンベ
ロープ発生器の発生するピッチエンベロープデータ等が
あり、これらのデータをそれぞれ単独で、あるいは、複
数混合してFナンバ発生部53に供給する。
The note number (in cents) that is proportional to the pitch frequency of each key is added to a pitch shift input such as pitch bend (in cents) in an adder 51, and an LPF (low-pass filter) is added in an adder 52. The number is added to the output of 56 and input to the F-number generator 53. Other input data of the pitch shift include detune data for specifying a shift from the reference pitch, low-frequency waveform data generated by an LFO (low-frequency oscillator), pitch envelope data generated by a pitch envelope generator, and the like. The data is supplied to the F-number generator 53 alone or as a mixture of a plurality of these data.

【0041】LPF56は、ディジタルローパスフィル
タであり、周期データ記憶部58から、単位波形毎の圧
縮率α’を受け取り、滑らかな変化となるようにフィル
タリングを行なって加算部52に圧縮率α’を出力す
る。この周期データ記憶部58は、選択された波形デー
タを加工した際に使用した各周期の圧縮率αをセント単
位に変換した圧縮率α’を記憶したものである。上述し
たノートナンバおよびピッチずれの入力データは、いず
れもセント単位であるため、乗算すべきところを加算で
済ますことができる。
The LPF 56 is a digital low-pass filter. The LPF 56 receives the compression ratio α ′ for each unit waveform from the periodic data storage unit 58, performs filtering so as to make a smooth change, and outputs the compression ratio α ′ to the addition unit 52. Output. The cycle data storage unit 58 stores a compression rate α ′ obtained by converting the compression rate α of each cycle used when processing the selected waveform data into cent units. Since the input data of the note number and the pitch shift described above are both in cents, the portion to be multiplied can be added.

【0042】圧縮率α’を加算することで、周波数的に
は、圧縮率を乗算したことになり、規格化された単位波
形データの周期長が、規格化前の変動している周期長に
戻される。規格化された周期長をそのまま用い、変動し
ている録音時の波形データに戻す必要がない場合には、
圧縮率α’を加算する必要はない。
By adding the compression ratio α ′, the frequency is multiplied by the compression ratio, and the cycle length of the normalized unit waveform data is changed to the fluctuating cycle length before the standardization. Will be returned. If it is not necessary to return to the fluctuating recording waveform data using the standardized cycle length as it is,
There is no need to add the compression ratio α '.

【0043】図5(b)を参照して説明したように、周
期長の規格化の第2の例においては、音域によって楽音
生成に使用する単位波形の周期長(サンプル数)が異な
っている。Fナンバ発生部53は、このことを考慮して
発音ピッチに対応する周波数情報(Fナンバ)を出力す
る。また、図6を参照して説明したように、周期長の規
格化の第3の例においては、バンク1〜3、バンク4〜
6、バンク7〜9・・・の各3つのバンクでは、次に説
明するように、カウンタ部54のカウント範囲(マスク
するビット数)が同じであるので、同じFナンバとな
る。
As described with reference to FIG. 5B, in the second example of the period length standardization, the period length (the number of samples) of the unit waveform used for generating the musical tone differs depending on the musical range. . The F-number generator 53 outputs frequency information (F-number) corresponding to the tone pitch in consideration of this. Further, as described with reference to FIG. 6, in the third example of the standardization of the cycle length, the banks 1 to 3 and the banks 4 to 4
6, the banks 7 to 9 have the same F number because the count range (the number of bits to be masked) of the counter unit 54 is the same as described below.

【0044】カウンタ部54は、Fナンバを累算するカ
ウンタである。整数部は、最大で1024までカウント
できればよいので10ビット、小数部は、ピッチ非同期
で正確なピッチの楽音を発生するために15ビット程度
を用いる。したがって、合わせて25ビット程度とな
る。カウンタ部54は、ノートオンでリセットされ、各
サンプリング周期に各チャネルのFナンバを累算し、各
系列それぞれの単位波形内を読み出すためのポインタp
1,p2を出力する。
The counter section 54 is a counter for accumulating the F number. The integer part needs to be able to count up to 1024 at the maximum, and the decimal part uses about 15 bits in order to generate a musical tone of an accurate pitch asynchronously with the pitch. Therefore, the total is about 25 bits. The counter section 54 is reset by note-on, accumulates the F number of each channel in each sampling period, and reads a pointer p for reading out the unit waveform of each series.
1 and p2 are output.

【0045】波形選択部55は、図7に示した制御部3
3内のCPUにより指示された読み出すべき波形データ
について、そのスタートアドレスA0と周期長CLを、
スタートアドレスおよび周期長記憶部57から受け取
る。スタートアドレスおよび周期長記憶部57は、選択
された波形データの立ち上がりのスタートアドレスと、
その波形の単位波形の周期長(各単位波形に共通の値)
を記憶している。
The waveform selecting section 55 includes the control section 3 shown in FIG.
3, the start address A0 and the cycle length CL of the waveform data to be read designated by the CPU in
It is received from the start address and cycle length storage unit 57. The start address and cycle length storage unit 57 stores a start address of the rising edge of the selected waveform data,
Period length of unit waveform of the waveform (value common to each unit waveform)
I remember.

【0046】波形選択部55内の、第1,第2の周期番
号レジスタ59,60は、それぞれ、各系列で読み出し
ている周期番号CN(サイクルナンバ)1,2を保持す
る。周期番号CN(サイクルナンバ)1,2は、先に図
4を参照した説明における、「規格化後の各周期i」に
相当する値であり、言い換えれば、周期番号CN(サイ
クルナンバ)1,2により「規格化後の各周期i」が指
定される。1波形内の各単位波形の先頭アドレスは、各
系列について、次式で計算される。 ADS1=A0+CL×CN1 ADS2=A0+CL×CN2 このように、各単位波形の先頭アドレスは、あらかじめ
記憶しておかなくても簡単に求めることができ、複数の
単位波形データを任意につなぐことが容易である。
The first and second cycle number registers 59 and 60 in the waveform selector 55 hold cycle numbers CN (cycle numbers) 1 and 2 which are read in each series, respectively. The cycle numbers CN (cycle numbers) 1 and 2 are values corresponding to “each standardized cycle i” in the description with reference to FIG. 4, in other words, the cycle numbers CN (cycle numbers) 1 and 2 2 specifies “each period i after standardization”. The start address of each unit waveform in one waveform is calculated by the following equation for each series. ADS1 = A0 + CL × CN1 ADS2 = A0 + CL × CN2 As described above, the head address of each unit waveform can be easily obtained without previously storing it, and it is easy to arbitrarily connect a plurality of unit waveform data. is there.

【0047】波形選択部55は、先頭アドレスADS
1,ADS2を加工部61,62に送るとともに、各周
期長CLに応じてポインタp1,p2の指定範囲を変え
るように第1,第2の加工部61,62に指示を送る。
また、カウンタ部54からの出力をモニタしており、ポ
インタp1,p2が規格化された周期長CLの範囲を一
通り通過するタイミング、すなわち、指定された1周期
分が読み終わるタイミングを検出し、そのタイミングで
次の波形との接続制御を行う。ただし、バンクにより終
了タイミングは異なる。
The waveform selector 55 has a head address ADS
1 and ADS2 are sent to the processing units 61 and 62, and an instruction is sent to the first and second processing units 61 and 62 to change the designated range of the pointers p1 and p2 according to each cycle length CL.
Further, the output from the counter unit 54 is monitored, and the timing at which the pointers p1 and p2 pass through the range of the standardized cycle length CL, that is, the timing at which reading of one designated cycle is completed, is detected. The connection with the next waveform is controlled at that timing. However, the end timing differs depending on the bank.

【0048】単位波形データは、その1周期を任意のn
ビットで表わされる数に2m を乗じた数の周期長(サン
プル数)で規格化されたものである。例えば、図5
(b)の規格化例の場合、バンク1の場合はm=3,n
=7、バンク2の場合はm=3,n=6、バンク3の場
合は、m=3,n=5であり、バンク8の場合にm=
3,n=0となる。カウンタ部54は、整数部がm+n
=10ビットであり、単位波形データの1周期内のサン
プル点の読出アドレスをポインタp1,p2の整数部で
指定する。バンク1の場合は、最上位の第10ビットが
1から0に反転したことを検出することにより単位波形
データの終了を判定することができ、同様に、バンク2
の場合は第9ビット、バンク3の場合は第8ビット、バ
ンク8の場合は第3ビットが、それぞれ1から0に反転
したことを検出することによって単位波形データの終了
を判定することができる。
As for the unit waveform data, one cycle of the unit waveform data is arbitrary n
It is standardized by the cycle length (the number of samples) obtained by multiplying the number represented by bits by 2 m . For example, FIG.
In the case of the standardization example of (b), m = 3, n for bank 1
= 7, m = 3, n = 6 for bank 2, m = 3, n = 5 for bank 3, and m = 3, n = 5 for bank 8.
3, n = 0. The counter unit 54 has an integer part of m + n.
= 10 bits, and specifies the read address of the sample point within one cycle of the unit waveform data by the integer part of the pointers p1 and p2. In the case of bank 1, the end of the unit waveform data can be determined by detecting that the 10th bit of the most significant bit has been inverted from 1 to 0.
, The ninth bit in the case of bank 3, the eighth bit in the case of bank 3, and the third bit in the case of bank 8, the end of the unit waveform data can be determined by detecting the inversion from 1 to 0, respectively. .

【0049】このように、図5(b)に示した規格化が
行われていれば、波形メモリから複数の単位波形データ
を順次読み出す場合に、周期長が異なる波形データであ
っても、1つのアドレスカウンタを共用し、単位波形デ
ータの終了の判定をカウンタ部54の上位ビットの判定
だけで行うことができる。また、図示を省略するが、第
1および第2の系列で波形メモリから波形データを時分
割による同時処理で読み出す場合に、第1の系列で読み
出す第1の波形データと第2の系列で読み出す第2の波
形データとの1周期あたりのサンプル数が異なる場合で
も、1つのアドレスカウンタを共用し、各系列毎に単位
波形データの終了の判定をカウンタ部54の上位ビット
の判定だけで行うことができる。
As described above, if the normalization shown in FIG. 5B is performed, when a plurality of unit waveform data are sequentially read out from the waveform memory, even if the waveform data has different cycle lengths, one unit data is obtained. One address counter is shared, and the determination of the end of the unit waveform data can be made only by the determination of the upper bit of the counter unit 54. Although not shown, when the waveform data is read from the waveform memory in the first and second streams by simultaneous processing by time division, the first waveform data to be read in the first stream and the second waveform are read in the second stream. Even if the number of samples per cycle with the second waveform data is different, one address counter is shared, and the determination of the end of the unit waveform data for each series is made only by the determination of the upper bit of the counter unit 54 Can be.

【0050】図9は、図8に示した第1,第2の加工部
の内部構成図である。図9(a)は、図5(b)を参照
して説明した周期長の規格化の第2の例に、図9(b)
は、図6を参照して説明した周期長の規格化の第3の例
に用いるものである。図中、71は上位ビットマスク
部、72は加算部、73はシフト部、74は加算部であ
る。
FIG. 9 is a diagram showing the internal structure of the first and second processing sections shown in FIG. FIG. 9A shows a second example of the standardization of the cycle length described with reference to FIG.
Is used in the third example of the standardization of the cycle length described with reference to FIG. In the figure, 71 is an upper bit mask unit, 72 is an addition unit, 73 is a shift unit, and 74 is an addition unit.

【0051】図9(a)において、上位ビットマスク部
71は、周期長CLを入力し、図5(b)に示したバン
ク1の場合には全ビットをそのまま出力するが、バンク
2の場合には上位1ビットを0でマスクして9ビット化
し、バンク3の場合には上位2ビットをマスクして8ビ
ット化し、読み出す周期の先頭アドレスADS1または
ADS2と加算部72で加算して波形メモリ63に出力
する。バンク4以降についても同様である。その結果、
加工部61,62の出力するアドレスAD1,AD2
は、バンク1では先頭アドレスADS1,ADS2から
スタートして1024サンプル分の範囲をFナンバに応
じた速度で変化し、バンク2では先頭アドレスから51
2サンプル分の範囲、バンク3では256サンプル分の
範囲、というように、それぞれバンクに応じた範囲で変
化するアドレスが出力される。
In FIG. 9A, the upper bit mask unit 71 receives the cycle length CL and outputs all bits as it is in the case of the bank 1 shown in FIG. In the case of bank 3, the upper 2 bits are masked to 9 bits, and in the case of bank 3, the upper 2 bits are masked to 8 bits. 63. The same applies to the banks 4 and thereafter. as a result,
Addresses AD1, AD2 output from the processing units 61, 62
In bank 1, starting from the top address ADS1, ADS2, the range of 1024 samples changes at a speed corresponding to the F number, and in bank 2, 51
Addresses that change in a range corresponding to each bank are output, such as a range corresponding to two samples, a range corresponding to 256 samples in the bank 3, and the like.

【0052】このように、図5(b)に示した規格化が
行われていれば、波形メモリから複数の単位波形データ
を順次読み出す場合に、周期長が異なる波形データであ
っても、1つのアドレスカウンタを共用し、ビットマス
クを変えるだけで同じ位相で変化する読出アドレスを作
成することができる。また、上述したように、第1およ
び第2の系列で波形メモリから波形データを時分割によ
る同時処理で読み出す場合に、第1の系列で読み出す第
1の波形データと第2の系列で読み出す第2の波形デー
タの周期長が異なる場合でも、1つのアドレスカウンタ
を共用し、各系列毎にビットマスクを異ならせるだけで
同じ位相で変化する各系列の読出アドレスを作成するこ
とができる。
As described above, if the normalization shown in FIG. 5B is performed, when a plurality of unit waveform data are sequentially read from the waveform memory, even if the waveform data has different cycle lengths, one unit data is obtained. One address counter is shared, and a read address that changes in the same phase can be created only by changing the bit mask. Further, as described above, when reading out the waveform data from the waveform memory in the first and second streams by simultaneous processing by time division, the first waveform data to be read out in the first stream and the second waveform to be read out in the second stream. Even when the cycle lengths of the two waveform data are different, it is possible to create a read address of each series that changes in the same phase by sharing one address counter and changing the bit mask for each series.

【0053】図9(b)において、上位ビットマスク部
71は、図6に示したバンク1〜3の場合にはマスクを
かけず10ビットとし、バンク4〜6の場合には9ビッ
ト化し、バンク7〜9の場合には8ビット化し、バンク
10〜12以降についても同様にマスクをかけて低ビッ
ト化する。さらに加えて、バンク1,4,6の場合に
は、ビットマスク後のポインタp1,p2をシフト部7
3により1ビットシフトダウンした出力(1/2倍にな
る)と加算部74で加算して、結果的に3/2倍したポ
インタを出力する。バンク2,5,7・・・の場合に
は、シフト部73により2ビットシフトダウンした出力
(1/4になる)と加算して、結果的に5/4したポイ
ンタを出力し、バンク3,6,9・・・の場合には、ビ
ットマスク後のポインタをそのまま出力する。
In FIG. 9B, the upper bit mask section 71 has 10 bits without masking in the case of the banks 1 to 3 shown in FIG. 6, and has 9 bits in the case of the banks 4 to 6, In the case of the banks 7 to 9, the bit is reduced to 8 bits, and the banks 10 to 12 and thereafter are similarly masked to reduce the bit. In addition, in the case of banks 1, 4, and 6, pointers p1 and p2 after the bit mask are
The addition unit 74 adds the output shifted down by 1 bit by 3 (to に よ り times), and outputs a pointer 3/2 times as a result. In the case of the banks 2, 5, 7,..., The output is added to the output (down to 1/4) shifted down by 2 bits by the shift unit 73, and as a result, a 5/4 pointer is output. , 6, 9..., The pointer after the bit mask is output as it is.

【0054】したがって、加工部61,62の出力する
アドレスAD1,AD2は、図6に示したバンク1では
先頭アドレスADS1,ADS2からスタートして15
36サンプル分の範囲をFナンバに応じた速度で変化
し、バンク2では先頭アドレスから1280サンプル分
の範囲、バンク3では1024サンプル分の範囲、バン
ク4では768サンプル分の範囲、というようにそれぞ
れバンクに応じた範囲で変化するアドレスが出力され
る。
Therefore, the addresses AD1 and AD2 output from the processing sections 61 and 62 start from the top addresses ADS1 and ADS2 in the bank 1 shown in FIG.
The range of 36 samples changes at a speed corresponding to the F number. In bank 2, a range of 1280 samples from the start address, in bank 3, a range of 1024 samples, in a bank 4, a range of 768 samples, and so on. An address that changes within a range corresponding to the bank is output.

【0055】次に、図8に戻り、波形メモリ63からの
波形の読み出しについて説明する。各チャネル毎に2系
列で、アドレスAD1=(ADS1+p1),AD2=
(ADS2+p2)に記憶された波形データを読み出
す。ここで、読み出し用のポインタp1,p2は、各周
期の読出開始時に値0(ほぼ0の値)からスタートし、
各サンプリング周期毎に、楽音ピッチに応じたレート
(Fナンバとシフト部73のシフト量により決まる値)
で増加する。ここで、先頭アドレスADS1,ADS2
は整数部だけを有し、Fナンバとポインタp1,p2は
整数部と小数部を有するので、結果的にAD1,AD2
も整数部と小数部からなるアドレスとなる。波形メモリ
63からは、各系列毎にそれぞれ、読出アドレスAD
1,AD2の整数部で示されるアドレスとその1つ先の
アドレスの2つのサンプル値が読み出され、第1,第2
の補間部64,65に出力される。
Next, returning to FIG. 8, reading of a waveform from the waveform memory 63 will be described. Address AD1 = (ADS1 + p1), AD2 =
The waveform data stored in (ADS2 + p2) is read. Here, the read pointers p1 and p2 start from a value 0 (almost 0) at the start of reading in each cycle,
For each sampling period, a rate corresponding to the musical tone pitch (a value determined by the F number and the shift amount of the shift unit 73)
To increase. Here, the start addresses ADS1, ADS2
Has only an integer part, and the F number and the pointers p1 and p2 have an integer part and a decimal part.
Is also an address consisting of an integer part and a decimal part. From the waveform memory 63, the read address AD
The two sample values of the address indicated by the integer part of 1, AD2 and the next address are read out, and the first and second values are read out.
Are output to the interpolation units 64 and 65.

【0056】第1,第2の補間部64,65では、各系
列毎に2つずつ読み出されたサンプル値の間を、それぞ
れ、読出アドレスAD1,AD2の小数部に応じて補間
し、結果的に、読出アドレスAD1,AD2の整数部お
よび小数部に対応した2系列の補間サンプル値が出力さ
れる。クロスフェード合成部16は、クロスフェードの
指示があった場合、入力する2系列分の補間サンプル値
のうちの切り替え前の系列のレベルを最大値から徐々に
小さくする(フェードアウト)とともに切り替え後の系
列のレベルをゼロから徐々に大きく(フェードイン)
し、かつ、レベル制御後の2系列の補間サンプル値を加
算して出力する波形データのサンプル値を得る。クロス
フェードの指示がなかった場合は、直前にフェードイン
した系列のレベルを最大値に保持するとともに、他方の
系列のレベルをゼロに保持し、2系列を合成した波形デ
ータを出力する。
The first and second interpolators 64 and 65 interpolate between two sample values read for each stream in accordance with the decimal part of the read addresses AD1 and AD2, respectively. Specifically, two series of interpolated sample values corresponding to the integer part and the decimal part of the read addresses AD1 and AD2 are output. When a crossfade is instructed, the crossfade synthesizing unit 16 gradually reduces the level of the pre-switching sequence among the input interpolated sample values for the two sequences from the maximum value (fade-out) and sets the post-switching sequence. Level gradually increases from zero (fade in)
Then, the sample values of the waveform data to be output are obtained by adding the two series of interpolated sample values after the level control. If there is no instruction for cross-fade, the level of the series that has just faded in is held at the maximum value, the level of the other series is held at zero, and waveform data obtained by combining the two series is output.

【0057】図10は、本発明の楽音発生装置におい
て、発音開始指示に応じて、音源部の発音割当てされた
チャネルで、指示に応じた楽音の生成を開始する状況を
説明するためのフローチャートである。図10(a)
は、メインのフローチャート、図10(b)は、キーオ
ンイベントのフローチャートである。図10(a)にお
いて、S81においては、装置の初期設定を行う。S8
2においては、鍵スイッチ入力に関する処理を行い、波
形生成S83においては、演奏操作子入力に関する処理
を行い、S84においては、設定操作子入力に関する処
理を行う。
FIG. 10 is a flow chart for explaining a situation in which, in the tone generator according to the present invention, generation of a tone according to the instruction is started in the channel assigned to the tone generation of the tone generator in response to the tone generation start instruction. is there. FIG. 10 (a)
Is a main flowchart, and FIG. 10B is a flowchart of a key-on event. In FIG. 10A, in S81, the apparatus is initialized. S8
In step S2, processing related to key switch input is performed, in waveform generation S83, processing related to performance operator input is performed, and in step S84, processing related to setting operator input is performed.

【0058】図10(b)は、S82の鍵スイッチ処理
において、キーオンイベント(発音を指示するイベン
ト)があったときの処理を説明するものであり、S85
においては、キーの音高をパラメータNNのレジスタに
設定し、押鍵強度(速度)をパラメータVELのレジス
タに設定する。S86においては、このキーオンイベン
トによる発音チャネル(ch)を発音チャネルASとし
て割当てる。S87においては、ASchの発音チャネ
ルの制御レジスタに、現在選択されている音色TCの波
形選択情報、エンベロープ情報等を設定する。より具体
的には、波形の記憶位置を指示する情報、アタックの長
さm、ループの長さn、音高NNに応じたピッチ、エン
ベロープの各レベル、各レート等を書き込む。S88に
おいては、ASchの発音チャネルにノートオンを指示
し、波形読み出し、および、音量エンベロープの制御な
どが開始される。
FIG. 10B illustrates a process when a key-on event (an event for instructing sound generation) occurs in the key switch process of S82.
In, the key pitch is set in a parameter NN register, and the key pressing intensity (speed) is set in a parameter VEL register. In S86, the sound channel (ch) by the key-on event is assigned as the sound channel AS. In S87, the waveform selection information and the envelope information of the currently selected timbre TC are set in the control register of the tone generation channel of ASch. More specifically, information indicating a storage position of a waveform, an attack length m, a loop length n, a pitch corresponding to a pitch NN, each level of an envelope, each rate, and the like are written. In S88, a note-on is instructed to the sound channel of the ASch, and waveform reading, control of the volume envelope, and the like are started.

【0059】上述したS87における発音指示時の制御
レジスタの設定において、当該チャネルでは圧縮伸張を
行わないよう設定された場合、波形発生部のノートオン
後の動作は次のようになる。まず、ステップ1として、
第1の系列のみを使用して、波形メモリに複数記憶され
た波形データの中から、選択されている音色TCに対応
した波形データの周期0のアドレスA0(図4(a)参
照)から読み出しを開始する。ここで、第1の周期番号
レジスタ59のCN1は0である。次に、ステップ2と
して、ピッチに応じた速度でポインタp1を更新しなが
ら読み出しを続行する。ステップ3として、ポインタp
1が、周期長CL(図4(a)の例では、一定長)に達
すると、CN1を1つインクリメントする。ここで、ポ
インタp1の示す位置は、図9に示した加工部61内の
上位ビットマスク部71の動作に応じ、先頭の0に戻っ
ている。以後、ステップ2とステップ3を繰り返す。
In the setting of the control register at the time of the tone generation instruction in S87 described above, if the compression / expansion is set not to be performed in the channel, the operation of the waveform generator after the note-on is as follows. First, as step 1,
Using only the first sequence, the waveform data stored in the waveform memory is read out from the address A0 (refer to FIG. 4A) of the waveform data corresponding to the selected timbre TC at the cycle 0. To start. Here, CN1 of the first cycle number register 59 is 0. Next, as step 2, reading is continued while updating the pointer p1 at a speed corresponding to the pitch. As step 3, the pointer p
When 1 reaches the cycle length CL (a constant length in the example of FIG. 4A), CN1 is incremented by one. Here, the position indicated by the pointer p1 has returned to the leading 0 according to the operation of the upper bit mask unit 71 in the processing unit 61 shown in FIG. Thereafter, steps 2 and 3 are repeated.

【0060】仮想アドレスカウンタ部67は、周期番号
のスケール上で整数部10ビット、小数部5ビットの1
5ビットを有するカウンタであり、この出力値に応じて
波形読み出し時の時間軸圧縮伸張が制御される。整数部
のビット数は、1波形の周期数の最大値またはこれ以上
になるように選定されている。小数部は、仮想アドレス
の進行速度VF(仮想Fナンバ)を細かく制御するため
である。仮想アドレスカウンタ部67は、同じ単位波形
データを繰り返し読み出す範囲を指定するループアドレ
ス、1波形を読み出す進行レート等を入力し、仮想アド
レスを波形選択部55に出力する。仮想アドレスカウン
タ部67は、時間の進行あるいは周期の進行に応じてカ
ウント値が進行する。このカウント値を、以下、仮想ア
ドレスVAという。
The virtual address counter 67 has a 10-bit integer part and a 5-bit decimal part on the scale of the cycle number.
This is a counter having 5 bits, and the time axis compression / expansion at the time of waveform reading is controlled according to the output value. The number of bits of the integer part is selected so as to be the maximum value of the number of periods of one waveform or more. The decimal part is for finely controlling the traveling speed VF (virtual F number) of the virtual address. The virtual address counter 67 inputs a loop address for specifying a range for repeatedly reading the same unit waveform data, a progress rate for reading one waveform, and the like, and outputs a virtual address to the waveform selector 55. The count value of the virtual address counter 67 advances as the time progresses or the cycle progresses. This count value is hereinafter referred to as a virtual address VA.

【0061】第1の例として、仮想アドレスVAに対し
て、所定時間毎(例えば、10ミリ秒毎、2ミリ秒毎
等、あるいは、サンプリング周期の100周期毎等)に
上述した進行速度VFを累算する。この値に小数部があ
れば、1回の累算で進む量を1.2とか0.8のように
指定できる。この場合の進行速度VFは、絶対時間を基
準とした仮想アドレスVAの進行レートとなる。したが
って、Fナンバ(実アドレスの進行レート)を変更して
波形のピッチを変更したとしても、波形データの再生時
間は変化を受けない。
As a first example, for the virtual address VA, the above-mentioned traveling speed VF is set at every predetermined time (for example, every 10 milliseconds, every 2 milliseconds, or every 100 sampling cycles). Accumulate. If this value has a decimal part, the amount to be advanced in one accumulation can be specified as 1.2 or 0.8. The traveling speed VF in this case is the traveling rate of the virtual address VA based on the absolute time. Therefore, even if the pitch of the waveform is changed by changing the F number (the progress rate of the real address), the reproduction time of the waveform data is not changed.

【0062】第2の例として、1つの単位波形を読み出
すごとに、仮想アドレスVAに対し進行速度VFを累算
する。この場合の進行速度VFは、波形データを時間軸
圧縮伸張なしで読み出したときの実アドレスの進行レー
ト(Fナンバに相当)を基準とした相対レートになる。
例えば、進行速度VFを2とすれば、仮想アドレスは実
アドレスの2倍の速度で進むことになり、波形の再生時
間が2分の1となる。以下の説明では、第1の例のよう
に、時間の進行に応じて仮想アドレスVAが進行する場
合についてのみ説明する。
As a second example, every time one unit waveform is read, the traveling speed VF is accumulated for the virtual address VA. In this case, the traveling speed VF is a relative rate based on the traveling rate (corresponding to the F number) of the real address when the waveform data is read without time axis compression / expansion.
For example, if the traveling speed VF is 2, the virtual address advances at twice the speed of the real address, and the reproduction time of the waveform is halved. In the following description, only the case where the virtual address VA progresses as time progresses as in the first example will be described.

【0063】仮想アドレスは、0からスタートし時間の
経過とともに波形メモリ63から単位波形データを読み
出すべき位置の軌跡を指示する。波形選択部55は、こ
の仮想アドレスVAの示す周期番号を目標として、第
1,第2の周期番号レジスタ59,60に記憶された周
期番号CN1,CN2を追従させる。すなわち、2つの
系列の読出アドレスを追従させる。その様子は、後述す
るように図11〜図17に示されている。それととも
に、クロスフェード合成部66を制御して、2系列の一
方の選択または両系列の合成をする。具体的には、仮想
アドレスカウンタ部67の示す周期番号VAと、現在ク
ロスフェード部66においてフェードイン中の系列、ま
たは、レベルが最大値に保持されている系列、すなわ
ち、現系列の周期番号CNとの差を判定して、当該系列
における周期の読み出しを継続するか、他方の系列でそ
れとは異なる番号の周期の読み出しを開始してその系列
への切り替えを行うかを決定する。
The virtual address starts from 0 and indicates the locus of the position from which unit waveform data is to be read from the waveform memory 63 as time elapses. The waveform selector 55 causes the cycle numbers CN1 and CN2 stored in the first and second cycle number registers 59 and 60 to follow the cycle number indicated by the virtual address VA. That is, two series of read addresses are made to follow. This state is shown in FIGS. 11 to 17 as described later. At the same time, the cross-fade synthesizing unit 66 is controlled to select one of the two streams or to combine the two streams. More specifically, the cycle number VA indicated by the virtual address counter 67 and the series currently fading in the cross-fade section 66 or the series whose level is held at the maximum value, that is, the cycle number CN of the current series Then, it is determined whether to continue reading the cycle in the series or to start reading the cycle of a different number from the other series and switch to that series.

【0064】なお、上述した説明では、現系列の周期番
号CN1またはCN2で周期データ記憶部58から圧縮
率α’を読み出しており、読み出している現系列の単位
波形データに対応してピッチを制御することを前提とし
ていた。これに代えて、図8において仮想アドレスカウ
ンタ部67から周期データ記憶部58に点線の矢印で示
したように、仮想アドレスカウンタ部67の出力する仮
想アドレスの整数部により、周期データ記憶部58から
圧縮率α’を読み出すことにより、現在クロスフェード
部66においてフェードイン中の系列、または、レベル
が最大値に保持されている系列の波形データを、波形全
体で見た場合の読み出しの進行に対応したピッチ変化で
読み出すようにすることができる。
In the above description, the compression rate α ′ is read from the cycle data storage unit 58 using the current cycle number CN1 or CN2, and the pitch is controlled according to the read current waveform unit waveform data. It was assumed that Instead of this, as shown by a dotted arrow from the virtual address counter 67 to the periodic data storage 58 in FIG. By reading out the compression ratio α ′, the waveform data of the sequence currently fading in the cross-fade unit 66 or the sequence whose level is held at the maximum value corresponds to the progress of reading when the entire waveform is viewed. Reading can be performed with the changed pitch.

【0065】図10(b)に示したS87における発音
指示時の制御レジスタの設定において、当該チャネルで
圧縮伸張を行うよう設定された場合、図8に示した波形
発生部では、第1の系列と第2の系列の両方を使用し
て、必要に応じてクロスフェード合成部66でクロスフ
ェードをしながら、波形メモリ63から読み出される波
形の時間軸を圧縮伸張する音源動作を開始する。
In the setting of the control register at the time of sounding instruction in S87 shown in FIG. 10B, if compression / expansion is set in the channel concerned, the waveform generator shown in FIG. A sound source operation for compressing / expanding the time axis of the waveform read from the waveform memory 63 while performing cross-fading by the cross-fade synthesizing unit 66 as necessary using both the first and second streams is started.

【0066】最初は、一方の系列の読出アドレス(仮に
AD1とする)を用いて波形データを出力する。この系
列の周期番号CN1の軌跡が仮想アドレスVAの軌跡に
十分近い場合には、この系列の読出を継続する。一方、
この系列の周期番号CN1の軌跡が仮想アドレスVAの
軌跡から遠ざかったときには、読み出しの切り替えを指
示し、他方の系列において、周期番号CN1と整数値だ
け大きいかまたは小さい値で、仮想アドレスに近い値の
周期番号CN2を用いて読み出しを開始するとともに、
この系列から他方の系列へのクロスフェードを行う。ク
ロスフェードの終了後は、他方の系列において読出アド
レス(AD2)で波形データを読み出すとともに、この
系列の周期番号CN2の軌跡と仮想アドレスVAとの差
を判定し、同様の動作を行う。
First, waveform data is output using one of the series of read addresses (tentatively AD1). If the trajectory of the cycle number CN1 of this series is sufficiently close to the trajectory of the virtual address VA, the reading of this series is continued. on the other hand,
When the trajectory of the cycle number CN1 of this sequence is far from the trajectory of the virtual address VA, the switching of the reading is instructed. Readout using the cycle number CN2 of
Crossfade is performed from this stream to the other stream. After the end of the crossfade, the waveform data is read at the read address (AD2) in the other series, the difference between the locus of the cycle number CN2 of this series and the virtual address VA is determined, and the same operation is performed.

【0067】図10(b)に示したS87のノートオン
に対して図8に示した波形発生部の動作を説明する。カ
ウンタ54は、ゼロを初期値として各サンプリング周期
毎にFナンバを累算し、累算値を加工部61,62に出
力する。一方、仮想アドレスカウンタ67は、ゼロを初
期値として進行速度VFに応じて時間的に変化する仮想
アドレスVAを出力する。波形選択部55は、周期番号
CN1=0を初期値として、まず、第1の系列において
選択されている音色TCに対応した波形データ(波形デ
ータの記憶形式としては、図4(a)参照)の周期0の
読み出しを行う。このとき、クロスフェード部66から
は第1系列の第1の補間部64の補間サンプル値が出力
されている。
The operation of the waveform generating section shown in FIG. 8 for the note-on in S87 shown in FIG. 10B will be described. The counter 54 accumulates the F number at each sampling cycle with zero as an initial value, and outputs the accumulated value to the processing units 61 and 62. On the other hand, the virtual address counter 67 outputs a virtual address VA that changes with time according to the traveling speed VF with zero as an initial value. The waveform selecting unit 55 sets the cycle number CN1 = 0 as an initial value, and firstly obtains waveform data corresponding to the tone color TC selected in the first series (see FIG. 4A for the storage format of the waveform data). Of the cycle 0 is performed. At this time, the interpolated sample value of the first interpolator 64 of the first system is output from the crossfade unit 66.

【0068】周期番号CN1=0の読み出しの終了時
に、第1の系列において続いて読み出される周期番号C
N1+1=1を新たな周期番号CN1に設定するととも
に、その時の仮想アドレスVAを新たな周期番号CN1
=1と比較し、その差が1/2周期以上かどうかを判定
する。仮想アドレスVAとCN1=1との差が1/2周
期以内の場合は、切り替えを行わず、第1の系列におい
て引き続きCN1=2,3,・・・に対応した周期の読
出を行い、その周期の終わりの時点で上述したのと同じ
動作を繰り返す。
At the end of the reading of the cycle number CN1 = 0, the cycle number C subsequently read in the first stream
N1 + 1 = 1 is set to the new cycle number CN1, and the virtual address VA at that time is set to the new cycle number CN1.
= 1, and it is determined whether the difference is equal to or more than 周期 cycle. If the difference between the virtual address VA and CN1 = 1 is less than 周期 cycle, switching is not performed, and reading of the cycle corresponding to CN1 = 2, 3,. At the end of the cycle, the same operation as described above is repeated.

【0069】一方、仮想アドレスVAがCN1より1/
2周期以上進んでいる場合、または、1/2周期以上遅
れている場合には切り替えを行う。波形選択部55は、
仮想アドレスVAに応じた周期番号をCN2に設定し、
引き続き第1の系列においてCN1に対応した周期の読
み出しを行うとともに、第2の系列において上述したC
N2に対応した新たな周期の読み出しを行い、クロスフ
ェード部66において、第1の系列の第1の補間部64
の補間サンプル値から第2の系列の第2の補間部65の
補間サンプル値へのクロスフェードを行うように制御す
る。このクロスフェードは、第2の系列における周期C
N2の読み出しが終わる前に終了するよう設定されてい
る。
On the other hand, the virtual address VA is 1 /
Switching is performed when the signal is advanced by two cycles or more, or when the signal is delayed by 1 / cycle or more. The waveform selection unit 55
A cycle number corresponding to the virtual address VA is set in CN2,
Subsequently, in the first stream, the cycle corresponding to CN1 is read out, and in the second stream, the above-described C is read.
A new cycle corresponding to N2 is read out, and the first interpolator 64 of the first stream is read by the crossfade unit 66.
Is controlled so as to perform cross-fading from the interpolation sample value of the second series to the interpolation sample value of the second interpolation unit 65 of the second series. This crossfade corresponds to the period C in the second sequence.
It is set to end before the reading of N2 ends.

【0070】その後、フェードインした第2の周期で周
期CN2の読み出しが終了すると、CN2の値を1つイ
ンクリメントするとともに、その時の仮想アドレスVA
と比較し、その差が1/2周期以上かどうか判定する。
その後の動作は、上述した第1の系列において判定が行
われた後の動作と同様である。すなわち、切り替えが必
要な場合は、再び第1の系列に向けてのクロスフェード
を行い、切り替えが必要ない場合には、第2の系列で継
続して読み出しを行う。なお、切り替えを行うかどうか
の判定基準は、上述したような1/2周期には限らず、
5/4周期,3周期など、任意に決めることができる。
特に、仮想アドレスVAも、読出アドレスの周期CN
1,CN2と同様に、単位波形データの周期番号を指定
するものとして、読出アドレスの周期CN1,CN2と
比較するようにすれば、周期番号同士の比較であるか
ら、仮想アドレスの発生と比較とを少ないビット数で簡
単に行うことができる。
After that, when the reading of the period CN2 is completed in the second period of the fade-in, the value of CN2 is incremented by one and the virtual address VA at that time is incremented.
And it is determined whether or not the difference is equal to or more than 周期 cycle.
The subsequent operation is the same as the operation after the determination is made in the first series described above. That is, when switching is necessary, crossfading is performed again toward the first stream, and when switching is not required, reading is continuously performed in the second stream. The criterion for determining whether or not to perform switching is not limited to the 周期 cycle as described above.
It can be arbitrarily determined, such as 5/4 cycle or 3 cycle.
In particular, the virtual address VA is also determined by the read address cycle CN.
As in the case of the first and CN2, if the cycle number of the unit waveform data is designated and compared with the read address cycles CN1 and CN2, the cycle numbers are compared. Can be easily performed with a small number of bits.

【0071】一般的に、切り替えを行わない場合には、
2つの系列のうちの現系列(クロスフェード部66で直
前にフェードインされた系列または最大レベルに保持さ
れていた系列)が、直前に読み出されていた周期に引き
続く周期の読み出しを継続するとともに、その出力がク
ロスフェード部から最大レベルで出力される。切り替え
を行う場合には、現系列が直前に読み出された周期に続
く周期の読み出しを行い、もう一方の系列で仮想アドレ
スVAに対応した切り替えられるべき周期の読み出しを
行うとともに、クロスフェード部66で現系列からもう
一方の系列へのクロスフェードが行われる。
Generally, when switching is not performed,
The current sequence of the two sequences (the sequence that has just been faded in by the cross-fade unit 66 or the sequence that has been held at the maximum level) continues to be read in the cycle that follows the cycle that was just read out. Is output at the maximum level from the crossfade section. When the switching is performed, reading of the cycle following the cycle in which the current series was read immediately before is performed, and reading of the cycle to be switched corresponding to the virtual address VA is performed in the other series. A crossfade is performed from the current stream to the other stream.

【0072】上述した仮想アドレスに応じた第1の系
列,第2の系列の読出アドレスの進行の様子が、図11
ないし図17に示されている。図11は、ピッチ一定で
再生時間のみを圧縮する第1の例である。図中、91は
圧縮伸張しない場合の第1の加工部の出力する第1の系
列の読出アドレス、92は仮想アドレスカウンタ部の出
力、93,95は第1の系列の読出アドレス、94,9
6は第2の系列の読出アドレスである。横軸は時間であ
り、縦軸は波形メモリ63のアドレスである。再生時間
を圧縮する場合には、仮想アドレスカウンタ部の出力9
2の傾きを、圧縮伸張しない場合の第1の系列の読出ア
ドレス91の傾きよりも急峻にする。最初、第1の系列
の読出アドレス93をアドレスとして波形メモリ63か
ら読み出した第1の系列をクロスフェード合成部66か
ら出力する。
FIG. 11 shows the progress of the first and second series of read addresses according to the virtual addresses described above.
17 to FIG. FIG. 11 shows a first example in which only the reproduction time is compressed at a constant pitch. In the figure, reference numeral 91 denotes a first series read address output from the first processing unit when no compression / expansion is performed, 92 denotes an output from the virtual address counter unit, 93 and 95 denote the first series read addresses, and 94 and 9.
6 is a second series of read addresses. The horizontal axis is time, and the vertical axis is the address of the waveform memory 63. When compressing the reproduction time, the output 9 of the virtual address counter unit is used.
The slope of 2 is steeper than the slope of the first series of read addresses 91 when no compression / expansion is performed. First, the first series read from the waveform memory 63 is output from the cross-fade synthesizing unit 66 using the first series of read addresses 93 as addresses.

【0073】そうすると、第1の系列の読出アドレス9
3は、仮想アドレスカウンタ部の出力92から遅れて行
き、この遅れが所定周期数に達したときに、第2の系列
の読出アドレス94をアドレスとして、上述した所定周
期数だけアドレスを進めた位置から波形メモリ63を読
み出し、この第2の系列をクロスフェード合成部66か
ら出力するようにする。その際、瞬時に切り替えるので
はなく、切り替えの前後の所定時間においては、2系列
の出力を用いて徐々に第2の系列の割合を多くしてクロ
スフェード合成部66から出力するようにする。
Then, the first series of read addresses 9
The position 3 is delayed from the output 92 of the virtual address counter unit, and when the delay reaches a predetermined number of cycles, the read address 94 of the second stream is used as an address to advance the address by the predetermined number of cycles. , The second sequence is output from the crossfade synthesizing unit 66. At this time, instead of switching instantaneously, the cross-fade synthesizing unit 66 gradually increases the ratio of the second stream by using the output of two streams during a predetermined time before and after the switching.

【0074】その後は、第2の系列の読出アドレス94
も、仮想アドレスカウンタ部の出力92から遅れ行く。
そこで、この遅れが上述した所定周期数に達したとき
に、第1の系列の読出アドレス95をアドレスとして、
上述した所定周期数だけアドレスを進めた位置から波形
メモリ63を読み出し、この第1の系列をクロスフェー
ド合成部66から出力するようにする。この際も、切り
替えの前後の所定時間においては、2系列の出力を用い
て徐々に第1の系列の割合を多くしてクロスフェード合
成部66から出力するようにする。同様にして、第1の
系列の読出アドレス95から第2の系列の読出アドレス
96に切り替える。結局、仮想アドレスカウンタ部の出
力92を目標値として交互に2系列を切り替え、かつ、
読み出しアドレスを局部的に飛び越しさせながら1つの
全波形を読み出す。
Thereafter, the second series of read addresses 94
Also lags behind the output 92 of the virtual address counter.
Then, when this delay reaches the above-mentioned predetermined number of cycles, the read address 95 of the first series is set as an address,
The waveform memory 63 is read from the position where the address has been advanced by the predetermined number of cycles, and the first series is output from the cross-fade synthesizing unit 66. Also in this case, in a predetermined time before and after the switching, the ratio of the first stream is gradually increased by using the output of the two streams, and the output is output from the cross-fade synthesizing unit 66. Similarly, the read address 95 of the first stream is switched to the read address 96 of the second stream. As a result, two systems are alternately switched using the output 92 of the virtual address counter unit as the target value, and
One entire waveform is read while locally skipping the read address.

【0075】図12は、ピッチ一定で再生時間のみを圧
縮する第2の例である。図中、図11と同様な部分には
同じ符号を付して説明を省略する。図11に示した例
が、全波形の期間において一様に圧縮されるように、仮
想アドレスカウンタ部の出力92を直線的に設定したの
に対して、この第2の例では、徐々に圧縮率が増加する
ような曲線状にしたものである。この場合も、図11に
示した例と同様にして交互に2系列を切り替えて圧縮を
実現することができる。切り替えの前後の所定時間にお
いては、2系列の出力をクロスフェードしてクロスフェ
ード合成部66から出力する。なお、遅れの差である所
定周期数を一定値に固定する代わりに、圧縮率が高くな
るほど大きな値にするなどして適応的に制御することも
可能である。
FIG. 12 shows a second example in which only the reproduction time is compressed at a constant pitch. In the figure, the same parts as those in FIG. In the example shown in FIG. 11, the output 92 of the virtual address counter section is set linearly so that the compression is uniformly performed during the entire waveform period. In the second example, the compression is gradually performed. It is a curve that increases the rate. Also in this case, compression can be realized by alternately switching the two systems in the same manner as in the example shown in FIG. At predetermined times before and after the switching, the two series of outputs are cross-fade and output from the cross-fade synthesizing unit 66. Note that, instead of fixing the predetermined number of cycles, which is the difference in delay, to a fixed value, it is also possible to adaptively control by setting a larger value as the compression ratio increases.

【0076】図13は、ピッチ一定で再生時間のみを伸
張する第1の例である。図中、図11と同様な部分には
同じ符号を付して説明を省略する。再生時間を伸張する
場合には、仮想アドレスカウンタ部の出力92の傾き
を、圧縮伸張しない場合の第1の系列の読出アドレス9
1の傾きよりも緩やかにする。最初、第1の系列の読出
アドレス93をアドレスとして波形メモリ63から読み
出した第1の系列をクロスフェード合成部66から出力
する。
FIG. 13 shows a first example in which only the reproduction time is extended at a constant pitch. In the figure, the same parts as those in FIG. When the reproduction time is extended, the slope of the output 92 of the virtual address counter unit is set to the first series of read addresses 9 when the compression / expansion is not performed.
Slower than 1 slope. First, the first series read from the waveform memory 63 is output from the cross-fade synthesizing unit 66 using the first series of read addresses 93 as addresses.

【0077】第1の系列の読出アドレス93の、仮想ア
ドレスカウンタ部の出力92からの進みが所定周期数に
達したときに、第2の系列の読出アドレス94をアドレ
スとして、上述した所定周期数だけアドレスを遅らせた
位置から波形メモリ63を読み出し、この第2の系列を
クロスフェード合成部66から出力するようにする。切
り替え前後の所定時間においては、2系列の出力をクロ
スフェードしてクロスフェード合成部66から出力す
る。その後、第2の系列の読出アドレス94の、仮想ア
ドレスカウンタ部の出力92からの進みが上述した所定
周期数に達したときに、再び第1の系列の読出アドレス
95をアドレスとして、上述した所定周期数だけアドレ
スを遅らせた位置から波形メモリ63を読み出し、以後
同様に、交互に2系列を切り替える。結局、仮想アドレ
スカウンタ部の出力92を目標値として交互に2系列を
切り替え、かつ、読出アドレスを局部的に繰り返しなが
ら1つの全波形のアドレスを読み出す。
When the advance of the first series of read addresses 93 from the output 92 of the virtual address counter reaches a predetermined number of cycles, the second series of read addresses 94 are used as addresses and the above-described predetermined number of cycles are used. The waveform memory 63 is read from the position delayed by only the address, and the second series is output from the cross-fade synthesizing unit 66. At predetermined times before and after the switching, the two series of outputs are cross-fade and output from the cross-fade synthesizing unit 66. Thereafter, when the advance of the second series of read addresses 94 from the output 92 of the virtual address counter unit reaches the above-mentioned predetermined number of cycles, the first series of read addresses 95 are again used as addresses, and The waveform memory 63 is read from the position where the address is delayed by the number of cycles, and thereafter, similarly, two systems are alternately switched. Eventually, two systems are alternately switched using the output 92 of the virtual address counter unit as the target value, and the address of one entire waveform is read while the read address is locally repeated.

【0078】図14は、ピッチ一定で再生時間のみを伸
張する第2の例である。図中、図11と同様な部分には
同じ符号を付して説明を省略する。この例は図13に示
した例が、全波形の期間において一様に伸張されるよう
に、仮想アドレスカウンタ部の出力92を直線的に設定
したのに対して、この第2の例では、徐々に圧縮率が低
下する(伸張率が増加する)ような曲線状にしたもので
ある。この場合も、図13に示した例と同様にして伸張
を実現することができる。なお、進みの差である所定周
期数を一定値に固定するのではなく、圧縮率が低くなる
ほど小さな値にするなどして適応的に制御することも可
能である。
FIG. 14 shows a second example in which only the reproduction time is extended at a constant pitch. In the figure, the same parts as those in FIG. In this example, the output 92 of the virtual address counter section is set linearly so that the example shown in FIG. 13 is uniformly expanded during the entire waveform period. In the second example, The curve is such that the compression ratio gradually decreases (the expansion ratio increases). Also in this case, decompression can be realized in the same manner as in the example shown in FIG. Note that, instead of fixing the predetermined cycle number, which is the difference in advance, to a fixed value, it is also possible to adaptively control by setting a smaller value as the compression ratio becomes lower.

【0079】Fナンバは、発生すべき楽音のピッチに対
応しており、したがって、カウンタ54はこのピッチに
応じた速度で増加する。一方、仮想アドレスVAの進行
速度VFは、楽音のピッチ等の他の楽音特性とは独立し
て任意に設定することができる。進行速度VFは、正の
値だけではなく、負の値をとってもよく、また、楽音の
発生途中で大きく変化させてもよい。進行速度VFが負
の値を取った場合は、各周期の読み出しにおいて実アド
レスは正方向に進行しつつ、時間軸上の過去の位置にあ
る周期に順次クロスフェードされ、全体として眺めれば
負の方向に読出位置が進むように見える。楽音の発生途
中で進行速度VFを変化させた場合、波形データに対し
部分的に異なる圧縮伸張をすることができる。例えば、
波形データのアタック部のアドレス範囲で大きい進行速
度VFとし、それ以降を小さい進行速度VFとすると、
アタック部が圧縮され、それ以降が伸張された波形デー
タが出力される。
The F number corresponds to the pitch of the musical tone to be generated, so that the counter 54 increases at a speed corresponding to this pitch. On the other hand, the traveling speed VF of the virtual address VA can be arbitrarily set independently of other tone characteristics such as the pitch of the tone. The traveling speed VF may take not only a positive value but also a negative value, or may be largely changed during the generation of a musical tone. When the traveling speed VF takes a negative value, in reading in each cycle, the real address advances in the positive direction and is sequentially cross-fade to a cycle at a past position on the time axis. The read position appears to move in the direction. When the traveling speed VF is changed during the generation of a musical tone, the waveform data can be partially compressed and expanded differently. For example,
Assuming that the traveling speed VF is high in the address range of the attack portion of the waveform data and the traveling speed VF is low thereafter.
The attack part is compressed, and the expanded waveform data after that is output.

【0080】図15は、再生時間一定でピッチのみを上
げる例である。図中、図11と同様な部分には同じ符号
を付して説明を省略する。97は第1の加工部の出力す
る第1の系列の読出アドレスである。ピッチを上げる場
合には、Fナンバ発生部53から出力されるFナンバを
大きくして、圧縮伸張しない場合の第1の系列の読出ア
ドレス91の傾きを、仮想アドレスカウンタ部の出力9
2の傾きよりも急峻にする。最初、第1の系列の読出ア
ドレス93をアドレスとして波形メモリ63から読み出
した第1の系列をクロスフェード合成部66から出力す
る。
FIG. 15 shows an example in which only the pitch is raised while the reproduction time is constant. In the figure, the same parts as those in FIG. Reference numeral 97 denotes a first series of read addresses output from the first processing unit. To increase the pitch, the F number output from the F number generation unit 53 is increased, and the slope of the first series of read addresses 91 when no compression / expansion is performed is determined by the output 9 of the virtual address counter unit.
Steeper than the slope of 2. First, the first series read from the waveform memory 63 is output from the cross-fade synthesizing unit 66 using the first series of read addresses 93 as addresses.

【0081】そうすると、第1の系列の読出アドレス9
3は、仮想アドレスカウンタ部の出力92から進んで行
き、この進みが所定周期数に達したときに、第2の系列
の読出アドレス94をアドレスとして、上述した所定周
期数だけアドレスを遅らせた位置から波形メモリ63を
読み出し、この第2の系列をクロスフェード合成部66
から出力するようにする。その際、瞬時に切り替えるの
ではなく、切り替えの前後の所定時間においては、2系
列の出力を用いて徐々に第2の系列の割合を多くしてク
ロスフェード合成部66から出力するようにする。
Then, the first series of read addresses 9
Reference numeral 3 designates a position which advances from the output 92 of the virtual address counter unit and, when the advance reaches a predetermined number of cycles, the read address 94 of the second stream is used as an address and the address is delayed by the above-described predetermined number of cycles. From the waveform memory 63, and the second sequence is
Output from. At this time, instead of switching instantaneously, the cross-fade synthesizing unit 66 gradually increases the ratio of the second stream by using the output of two streams during a predetermined time before and after the switching.

【0082】その後は、第2の系列の読出アドレス94
も、仮想アドレスカウンタ部の出力92から進んで行
く。そこで、この進みが上述した所定周期数に達したと
きに、第1の系列の読出アドレス95をアドレスとし
て、上述した所定周期数だけアドレスを遅らせた位置か
ら波形メモリ63を読み出し、この第1の系列をクロス
フェード合成部66から出力するようにする。この際
も、切り替えの前後の所定時間においては、2系列の出
力を用いて徐々に第1の系列の割合を多くしてクロスフ
ェード合成部66から出力するようにする。同様にし
て、第1の系列の読出アドレス95から第2の系列の読
出アドレス96に切り替え、さらに、第1の系列の読出
アドレス97に切り替える。結局、この場合も、仮想ア
ドレスカウンタ部の出力92を目標値として交互に2系
列を切り替え、かつ、アドレスを局部的に繰り返させな
がら1つの全波形のアドレスを読み出す。
Thereafter, the second series of read addresses 94
Also proceeds from the output 92 of the virtual address counter. Therefore, when the advance reaches the above-described predetermined number of cycles, the waveform memory 63 is read from a position where the address is delayed by the above-described predetermined number of cycles, using the read address 95 of the first series as an address. The sequence is output from the crossfade synthesizing unit 66. Also in this case, in a predetermined time before and after the switching, the ratio of the first stream is gradually increased by using the output of the two streams, and the output is output from the cross-fade synthesizing unit 66. Similarly, the switching is performed from the read address 95 of the first stream to the read address 96 of the second stream, and further to the read address 97 of the first stream. Eventually, in this case as well, the output 92 of the virtual address counter section is used as a target value to alternately switch two systems, and the address of one entire waveform is read while the address is locally repeated.

【0083】図16は、再生時間一定でピッチのみを下
げる例である。図中、図11と同様な部分には同じ符号
を付して説明を省略する。ピッチを下げる場合には、F
ナンバ発生部53から出力されるFナンバを小さくし
て、第1の系列の読出アドレス91の傾きを、圧縮伸張
しない場合の仮想アドレスカウンタ部の出力92の傾き
よりも緩やかにする。最初、第1の系列の読出アドレス
93をアドレスとして波形メモリ63から読み出した第
1の系列をクロスフェード合成部66から出力する。
FIG. 16 shows an example in which only the pitch is lowered while the reproduction time is constant. In the figure, the same parts as those in FIG. To lower the pitch, F
The F number output from the number generation unit 53 is reduced to make the slope of the first series of read addresses 91 gentler than the slope of the output 92 of the virtual address counter unit when no compression / expansion is performed. First, the first series read from the waveform memory 63 is output from the cross-fade synthesizing unit 66 using the first series of read addresses 93 as addresses.

【0084】第1の系列の読出アドレス93は、仮想ア
ドレスカウンタ部の出力92から遅れて行き、この遅れ
が所定周期数に達したときに、第2の系列の読出アドレ
ス94をアドレスとして、上述した所定周期数だけアド
レスを遅らせた位置から波形メモリ63を読み出し、こ
の第2の系列をクロスフェード合成部66から出力する
ようにする。その際、切り替えの前後の所定時間におい
ては、2系列の出力を用いてクロスフェードさせてクロ
スフェード合成部66から出力するようにする。その後
も同様に、仮想アドレスカウンタ部の出力92を目標値
として交互に2系列を切り替え、かつ、アドレスを局部
的に飛び越しさせながら1つの全波形のアドレスを読み
出す。
The first series of read addresses 93 lags behind the output 92 of the virtual address counter unit. When the delay reaches a predetermined number of cycles, the second series of read addresses 94 are used as addresses. The waveform memory 63 is read from a position where the address is delayed by the predetermined number of cycles, and the second series is output from the cross-fade synthesizing unit 66. At that time, for a predetermined time before and after the switching, the cross-fade is performed using the outputs of the two streams and output from the cross-fade synthesizing unit 66. Thereafter, similarly, two systems are alternately switched using the output 92 of the virtual address counter section as a target value, and the address of one entire waveform is read while the address is locally skipped.

【0085】図15,図16を参照して説明したよう
に、生成する楽音のピッチが変更された場合でも、仮想
アドレスVAの時間変化の形状を変更せずにおけば、も
とと同じ時間軸でピッチのみ変更された波形データを得
ることができる。仮想アドレスにより時間軸の圧縮伸張
を制御する方式であるため、通常のピッチチェンジャと
は異なり、精度の高いピッチチェンジが可能である。
As described with reference to FIGS. 15 and 16, even if the pitch of the musical tone to be generated is changed, the same time as the original one can be obtained without changing the shape of the time change of the virtual address VA. Waveform data in which only the pitch is changed on the axis can be obtained. Since the compression / expansion of the time axis is controlled by the virtual address, the pitch can be changed with high accuracy, unlike a normal pitch changer.

【0086】図11ないし図16を参照して説明した例
では、仮想アドレスVAを連続的に進行させたが、所定
の値まで進行した後に別の値にジャンプさせるようにし
てもよい。図17は、仮想アドレスをループさせながら
圧縮伸張する例である。図中、図11と同様な部分には
同じ符号を付して説明を省略する。98,100は第2
の加工部の出力する第2の系列の読出アドレス、99は
第1の加工部の出力する第1の系列の読出アドレスであ
る。
In the example described with reference to FIGS. 11 to 16, the virtual address VA is made to proceed continuously, but it may be made to jump to another value after having made progress to a predetermined value. FIG. 17 shows an example in which compression and decompression are performed while looping virtual addresses. In the figure, the same parts as those in FIG. 98,100 is the second
Is a second series of read addresses output by the processing unit, and 99 is a first series of read addresses output by the first processing unit.

【0087】例えば、図4(b)に示したような波形デ
ータを用意し、仮想アドレスVAが、ループエンドLE
のアドレスに達すれば、ループスタートアドレスLSに
復帰するようなループ進行がある。ここで、ループスタ
ートアドレスLS,エンドアドレスLEとしては、その
周期の番号だけで指定できる。図4(b)の例であれ
ば、LSのアドレスとして「m」、LEのアドレスとし
て「n」を指定すればよい。あるいは、LEとして
「n」、ループサイズとして「n−m」を指定してもよ
い。ループ進行の動作では、順次進行する仮想アドレス
VAの整数部がLE=nに達すれば(VA−n+m)を
計算し、それをループの戻りアドレスとして仮想アドレ
スVAに設定する。
For example, the waveform data as shown in FIG. 4B is prepared, and the virtual address VA is set to the loop end LE.
Is reached, the loop progresses to return to the loop start address LS. Here, the loop start address LS and end address LE can be designated only by their cycle numbers. In the example of FIG. 4B, “m” may be designated as the LS address and “n” may be designated as the LE address. Alternatively, “n” may be designated as the LE and “nm” may be designated as the loop size. In the loop progress operation, when the integer part of the virtual address VA that sequentially proceeds reaches LE = n, (VA−n + m) is calculated, and the calculated value is set in the virtual address VA as the return address of the loop.

【0088】仮想アドレスにループ進行が設定された場
合でも、仮想アドレスカウンタ部67にのみ、上述した
ループ進行機能を持つように変更すれば、波形発生部3
6における他のブロックの動作は特に変更する必要はな
い。波形選択部55は、ループ進行する仮想アドレスV
Aを入力し、それを現系列の周期CNと比較して、既に
説明したのと同様な手順で波形データの読出アドレスを
仮想アドレスに追従させる。
Even when the loop progress is set to the virtual address, if only the virtual address counter 67 is changed to have the above-described loop progress function, the waveform generator 3
The operation of the other blocks in 6 does not need to be changed. The waveform selection unit 55 determines the virtual address V
A is input and compared with the current series period CN, and the read address of the waveform data is made to follow the virtual address in the same procedure as described above.

【0089】この様子が図17に例示されており、図1
1と同様に第1および第2の系列の読出アドレス93,
94,95,96が交替した後、仮想アドレスVAがル
ープエンドLE=nとなり、ループスタートLS=mに
戻る際に、第1の系列の読出アドレス97に交替するこ
とにより、仮想アドレスVAから所定周期数だけアドレ
スを進ませた位置から波形メモリ63を読み出し、以後
同様にして、第1および第2の系列の読出アドレス9
3,94、95、96が交替する。切り替えの前後の所
定時間においては、2系列の出力を用いてクロスフェー
ドさせる。図示の例では、クロスフェードを考慮して、
仮想アドレスVAのループエンドの周期番号を波形メモ
リに記憶された最後の周期番号よりも若干手前に設定し
ている。
This situation is illustrated in FIG. 17 and FIG.
1, the first and second series of read addresses 93,
After the replacement of the virtual addresses 94, 95, and 96, the virtual address VA becomes the loop end LE = n, and when returning to the loop start LS = m, the virtual address VA is replaced with the read address 97 of the first system, so that the virtual address VA becomes a predetermined value. The waveform memory 63 is read from a position where the address is advanced by the number of cycles, and thereafter, similarly, the read addresses 9 of the first and second series are read.
3, 94, 95 and 96 are replaced. At a predetermined time before and after the switching, cross-fading is performed using two series of outputs. In the example shown, taking into account crossfade,
The cycle number of the loop end of the virtual address VA is set slightly before the last cycle number stored in the waveform memory.

【0090】この実施例では、仮想アドレスをループ進
行させるだけで、時間軸圧縮伸張を制御しながら、波形
のループ読出ができ、構成が簡単である。それに比べ、
波形の読出アドレスでループを制御しようとする場合に
は、読出アドレスがループエンドアドレスに達したのを
検出して読出アドレスを戻す処理に加え、仮想アドレス
をループスタートに戻す処理を行わなければならない。
In this embodiment, the loop can be read out of the waveform while controlling the time axis compression / expansion only by making the virtual address loop proceed, and the configuration is simple. In comparison,
When trying to control the loop with the read address of the waveform, in addition to the process of detecting that the read address has reached the loop end address and returning the read address, the process of returning the virtual address to the loop start must be performed. .

【0091】図15ないし図17を参照した説明におい
ては、仮想アドレスカウンタ部の出力92を直線状に変
化させたが、曲線状に変化させてもよい。また、図11
ないし図16の例において、Fナンバ発生部53から出
力されるFナンバを時間に対して曲線状に変化させるこ
とにより、第1,第2の系列の読出アドレス91の傾き
を曲線状に変化させてもよい。
In the description with reference to FIGS. 15 to 17, the output 92 of the virtual address counter is changed linearly, but it may be changed in a curve. FIG.
In the example of FIG. 16, the F number output from the F number generating unit 53 is changed in a curved line with respect to time, so that the inclination of the first and second series of read addresses 91 is changed in a curved line. You may.

【0092】上述した説明では、図5,図6に示したよ
うにバンク毎に1つの単位波形データの周期長(サンプ
ル数)が異なる波形データを図8に示した1つのカウン
タ部54で取り扱うことができるように、図8,図9に
示したた第1,第2の加工部において上位ビットマスク
を行う構成を採用した。その代わりに、バンクに応じた
所定の最終アドレスを判定したときに先頭アドレスにな
るようにカウンタ部54の動作を制御してもよい。
In the above description, as shown in FIGS. 5 and 6, waveform data having different cycle length (number of samples) of one unit waveform data for each bank is handled by one counter unit 54 shown in FIG. In order to make it possible, a configuration in which the upper bit mask is performed in the first and second processing units shown in FIGS. 8 and 9 is adopted. Instead, the operation of the counter unit 54 may be controlled so that when the predetermined final address corresponding to the bank is determined, the address becomes the head address.

【0093】上述した説明では、2系列の切り替え時点
においては、常にクロスフェードを行ったが、クロスフ
ェードは必ずしも必要ではない。各単位波形は、互いに
位相を同じに揃えてあるので、そのまま接続しても大き
なノイズにはならないからである。また、1つの全波形
の中で、圧縮する期間と伸張する期間とを設けることも
できる。
In the above description, crossfading is always performed at the time of switching between two systems, but crossfading is not always necessary. This is because the unit waveforms have the same phase with each other, so that even if they are connected as they are, no large noise will occur. Further, a compression period and an expansion period can be provided in one entire waveform.

【0094】また、1つの波形データの中の連続しない
単位波形データ同士を接続するだけでなく、2つの異な
る波形データの間で、単位波形データ同士を接続するよ
うにしてもよい。新たな波形に接続する時点で、音源部
に対し、新たな波形のスタートアドレスと接続したい周
期の番号を指示すればよい。異なる2波形でも、同じ周
波数になるように読み出しを行い、かつ、同じ位相のポ
イントで波形をつなげれば、接続時の大きなノイズを防
止することができる。
In addition to the connection of discontinuous unit waveform data in one waveform data, the unit waveform data may be connected between two different waveform data. At the time of connection to the new waveform, the start address of the new waveform and the number of the cycle to be connected may be indicated to the sound source unit. Even if two different waveforms are read out so as to have the same frequency and the waveforms are connected at the same phase point, it is possible to prevent a large noise at the time of connection.

【0095】次に、図18,図19を参照して、波形メ
モリに記憶された波形データの形状を制御して再生する
具体例を説明する。図18は、本発明の楽音発生装置で
波形データの形状を制御して再生する第1の具体例の説
明図である。1つの波形全体を伸ばしたり縮めたりする
例である。図中、111は元波形、112はピッチアッ
プ波形、113はピッチダウン波形、114は圧縮波
形、115は等長波形、116は伸張波形である。横軸
は時間、縦軸は振幅を表わす。いずれも1つの楽音波形
の立上りから減衰までの1波形を、左から順にアタック
期間(A)、ディケイ期間(D)、サステイン期間
(S)、リリース期間(R)の4区分に分けて模式的に
示すものである。
Next, a specific example in which the shape of the waveform data stored in the waveform memory is controlled and reproduced will be described with reference to FIGS. FIG. 18 is an explanatory diagram of a first specific example in which the shape of waveform data is controlled and reproduced by the tone generator of the present invention. This is an example of extending or contracting one entire waveform. In the figure, 111 is an original waveform, 112 is a pitch-up waveform, 113 is a pitch-down waveform, 114 is a compressed waveform, 115 is an equal-length waveform, and 116 is an expanded waveform. The horizontal axis represents time, and the vertical axis represents amplitude. In each case, one waveform from the rise to the attenuation of one musical sound waveform is schematically divided into four sections from the left, an attack period (A), a decay period (D), a sustain period (S), and a release period (R). It is shown in FIG.

【0096】ピッチアップ波形112は、波形メモリか
ら読み出す際にFナンバを大きな値にして、読出速度を
速くしてピッチを上げて再生した波形であり、1波形の
発生期間はピッチに応じて縮まっている。ピッチダウン
波形113は、Fナンバを小さな値にして、読出速度を
遅くしてピッチを下げて再生した波形であり、1波形の
発生期間はピッチに応じて伸びている。
The pitch-up waveform 112 is a waveform reproduced by increasing the F number at the time of reading from the waveform memory, increasing the reading speed, and increasing the pitch. The generation period of one waveform is reduced in accordance with the pitch. ing. The pitch-down waveform 113 is a waveform reproduced by setting the F number to a small value, lowering the reading speed and lowering the pitch, and the generation period of one waveform extends in accordance with the pitch.

【0097】圧縮波形114は、ピッチアップ波形11
2,ピッチダウン波形113のいずれかを加工し、加工
前の波形のピッチは変えないで1波形の発生期間を元波
形111よりも縮めて再生した波形である。等長波形1
15は、ピッチアップ波形112,ピッチダウン波形1
13のいずれかを加工し、加工前の波形のピッチは変え
ないで波形の発生期間を元波形111と同じ長さで再生
した波形である。もちろん、元波形111と同一ピッチ
で読み出しても再生できる。伸張波形116は、ピッチ
アップ波形112,ピッチダウン波形113のいずれか
を加工し、加工前の波形のピッチは変えないで1波形の
発生期間を元波形111よりも伸ばして再生した波形で
ある。
The compression waveform 114 is the pitch-up waveform 11
2, a waveform obtained by processing any one of the pitch-down waveforms 113 and shortening the generation period of one waveform from the original waveform 111 without changing the pitch of the waveform before processing. Isometric waveform 1
15 is pitch up waveform 112, pitch down waveform 1
13 is a waveform obtained by processing any one of the waveforms 13 and reproducing the waveform generation period with the same length as the original waveform 111 without changing the pitch of the waveform before processing. Of course, it can be reproduced even if read at the same pitch as the original waveform 111. The expanded waveform 116 is a waveform obtained by processing any one of the pitch-up waveform 112 and the pitch-down waveform 113 and extending the generation period of one waveform longer than the original waveform 111 without changing the pitch of the waveform before processing.

【0098】図19は、本発明の楽音発生装置で波形デ
ータの形状を制御して再生する第2の具体例の説明図で
ある。1つの波形を部分的に伸ばしたり縮めたりする例
である。図中、111は図18に示した元波形、121
は立上り部が圧縮された波形、122は定常部が圧縮さ
れた波形、123は立下り部が圧縮された波形、124
は立上り部が伸張された波形、125は定常部が伸張さ
れた波形、126は立下り部が伸張された波形である。
図18と同様に1波形を模式的に示す。立上がり部は、
上述したアタック期間とディケイ期間であり、定常部は
サステイン期間、立ち下がり部はリリース期間である。
FIG. 19 is an explanatory diagram of a second specific example in which the shape of waveform data is controlled and reproduced by the tone generator of the present invention. This is an example in which one waveform is partially expanded or contracted. In the figure, 111 is the original waveform shown in FIG.
Is a waveform with a rising portion compressed, 122 is a waveform with a stationary portion compressed, 123 is a waveform with a falling portion compressed, 124
Represents a waveform in which a rising portion is extended, 125 is a waveform in which a steady portion is extended, and 126 is a waveform in which a falling portion is extended.
One waveform is schematically shown as in FIG. The rising part is
The attack period and the decay period are described above. The steady portion is a sustain period, and the falling portion is a release period.

【0099】立上り部が圧縮された波形121、定常部
が圧縮された波形122、立下り部が圧縮された波形1
23は、それぞれ、1波形の一部分の期間を元波形11
1の対応部分よりも縮めて再生した波形である。立上り
部が伸張された波形124、定常部が伸張された波形1
25、立下り部が伸張された波形126は、それぞれ、
1波形の一部分の期間を元波形111の対応部分よりも
伸ばして再生した波形である。なお、図19に示した例
では、波形データのピッチを元波形のピッチと同じにし
て説明したが、ピッチを変更することも可能である。
A waveform 121 with a rising portion compressed, a waveform 122 with a stationary portion compressed, and a waveform 1 with a falling portion compressed
Reference numeral 23 designates a part of the period of one waveform as the original waveform 11
This is a waveform that is reproduced with being reduced from the corresponding part of No. 1. Waveform 124 with rising portion extended, waveform 1 with steady portion extended
25, the waveform 126 whose falling part is expanded is respectively
This is a waveform reproduced by extending the period of a part of one waveform beyond the corresponding part of the original waveform 111. In the example shown in FIG. 19, the pitch of the waveform data is the same as the pitch of the original waveform, but the pitch can be changed.

【0100】上述したように、本発明の楽音発生装置に
よれば、元波形111のピッチを単に変えることができ
るだけでなく、ピッチとは関係なく1波形の全体または
1波形の部分的な波形を時間軸上で圧縮、伸張すること
ができる。なお、図18,図19において、波形データ
のピッチを変更しても仮想アドレスVAの時間変化形状
を変更しなければ、全体的に見た波形形状(時間軸のど
のあたりでどのような形状の波形が出力されているか)
は保持される。上述した「全体的に見た波形形状」と
は、音量のエンベロープを意味するものではなく、波形
準備の段階で音量エンベロープを一定にする波形処理が
行われた波形データの場合にも見ることができる。
As described above, according to the tone generating apparatus of the present invention, not only can the pitch of the original waveform 111 be changed, but also the entire one waveform or a partial waveform of one waveform regardless of the pitch. It can be compressed and expanded on the time axis. In FIGS. 18 and 19, if the time change shape of the virtual address VA is not changed even if the pitch of the waveform data is changed, the overall waveform shape (anywhere on the time axis, what shape Is the waveform output?)
Is retained. The above-mentioned “overall waveform shape” does not mean the volume envelope, but can be seen even in the case of waveform data that has been subjected to waveform processing for making the volume envelope constant at the stage of waveform preparation. it can.

【0101】上述した説明では、仮想アドレスを生成し
て時間軸の圧縮伸張を制御したが、仮想アドレスと読出
アドレスとの差分さえ求めることができれば、仮想アド
レスは、必ずしも生成しなくともよい。差分が求められ
るということは、実質的に仮想アドレスも生成されてい
ることと等価であるので、このようなものも本発明の技
術的範囲に含まれる。なぜなら、この差分は、上述した
仮想アドレスから読出アドレスを引き算したものであ
り、読出アドレスにこの差分を加算すれば上述した仮想
アドレスを得ることができるからである。
In the above description, the virtual address is generated to control the compression / expansion on the time axis. However, the virtual address does not necessarily have to be generated as long as the difference between the virtual address and the read address can be obtained. Obtaining the difference is substantially equivalent to generating a virtual address, and such is also included in the technical scope of the present invention. This is because the difference is obtained by subtracting the read address from the virtual address described above, and the virtual address can be obtained by adding the difference to the read address.

【0102】上述した説明では、先頭アドレスADS
1,ADS2と読み出し用のポインタp1,p2を用い
て波形メモリ63から波形データを読み出したが、先頭
アドレスとしては、図4に示した一連の波形の最初の先
頭アドレスA0をそのまま保持するとともに、ポインタ
p1,p2のビット数を増やして、ポインタp1,p2
で複数の単位波形データを順次読み出したり、読出アド
レスの切り替えを行うようにしてもよい。
In the above description, the start address ADS
1, ADS2 and the read pointers p1 and p2 read the waveform data from the waveform memory 63. As the start address, the first start address A0 of the series of waveforms shown in FIG. By increasing the number of bits of the pointers p1 and p2, the pointers p1 and p2
In such a case, a plurality of unit waveform data may be sequentially read, or read addresses may be switched.

【0103】上述した説明では、単位波形の周期長を規
格化したが、周期長が規格化されていなくても、例え
ば、あらかじめ先頭アドレスが記憶されているような単
位波形データに、この単位波形データを特定する番号を
付けるだけでもよい。読出手段の読み出している単位波
形データの番号に基づいて仮想アドレスとの差を検出す
ることにより読出アドレスと仮想アドレスとの差の判定
処理が簡略化され、制御が容易になる。その際、圧縮率
α’は、このような番号によって特定される単位波形デ
ータに対応してあらかじめメモリに記憶される。単位波
形の周期長は、例えば、後に隣接する単位波形の先頭ア
ドレスとこの単位波形の先頭アドレスとの差から求める
ことができる。単位波形の周期長は、単位波形ごとにそ
の周期長をあらかじめ記憶しておくことも可能である。
In the above description, the cycle length of the unit waveform is standardized. However, even if the cycle length is not standardized, for example, the unit waveform data is stored in the unit waveform data in which the head address is stored in advance. It is only necessary to attach a number for specifying data. By detecting the difference between the virtual address and the virtual address based on the number of the unit waveform data read by the reading means, the process of determining the difference between the read address and the virtual address is simplified, and the control is facilitated. At this time, the compression ratio α ′ is stored in the memory in advance corresponding to the unit waveform data specified by such a number. The cycle length of the unit waveform can be obtained, for example, from the difference between the start address of the unit waveform that is adjacent later and the start address of this unit waveform. The cycle length of a unit waveform can be stored in advance for each unit waveform.

【0104】図18で説明した波形全体の伸縮、図19
で説明した波形の部分伸縮、図11ないし図17に例示
された態様を、図10に示したステップS87の設定処
理を適宜行うことにより、楽音制御に関するあらゆるパ
ラメータで選択的に使用して時間軸伸縮の制御をするこ
とができる。例えば、選択されている音色に応じて制御
したり、演奏データで指定された音高や強度で制御する
ことができる。その他、音量、テンポ、リズム種類、効
果種類、各種エンベロープ波形、演奏タイミング、和音
種類、調、等で制御してもよい。
The expansion and contraction of the entire waveform described with reference to FIG.
By appropriately performing the partial expansion and contraction of the waveform described in the above and the modes illustrated in FIG. 11 to FIG. 17 in the setting process of step S87 shown in FIG. The expansion and contraction can be controlled. For example, control can be performed according to a selected tone color, or control can be performed based on a pitch or intensity specified by performance data. In addition, control may be performed by volume, tempo, rhythm type, effect type, various envelope waveforms, performance timing, chord type, key, and the like.

【0105】上述した説明では、自然楽器の楽音を元波
形としたが、電子楽器からの楽音、人声音等の周期的な
成分を含むものであればよく、本発明においては、この
ような音も含めて楽音と総称している。また、圧縮率
α’は、必ずしも測定値から忠実に設定する必要はな
く、任意に加工をして設定することができる。圧縮率
α’に近似した時間変化特性を有する波形を、例えば、
ピッチエンベロープ発生器で発生させるようにしてもよ
い。具体的には、折れ線エンベロープとして近似した
り、時間的にサンプリング間隔の異なるエンベロープサ
ンプルを記憶したメモリを読み出してエンベロープを作
成する方法等がある。その場合、上述したピッチずれの
波形成分もそのエンベロープ発生器のパラメータの中に
取り込めば構成が簡単になる。
In the above description, the musical tone of a natural musical instrument is used as the original waveform. However, it is sufficient that the musical tone includes a periodic component such as a musical tone from an electronic musical instrument, a human voice, and the like. It is collectively referred to as musical sounds. Further, the compression ratio α ′ does not necessarily need to be set faithfully from the measured values, but can be set by arbitrarily processing. A waveform having a time-varying characteristic approximating the compression rate α '
It may be generated by a pitch envelope generator. Specifically, there is a method of creating an envelope by approximating it as a polygonal line envelope, or by reading a memory storing envelope samples at different sampling intervals in time. In this case, if the waveform component of the above-mentioned pitch shift is taken into the parameters of the envelope generator, the configuration becomes simple.

【0106】本発明の楽音発生装置は、ハードウエア音
源の代わりにCPUがプログラムを実行することにより
楽音を生成するソフト音源で実行するようにしてもよ
い。具体的には、図7に示した波形発生部36を、メモ
リおよびロジック回路などでハードウエア的に実現する
ことに代えて、メモリおよびCPUを用い、プログラム
によりCPUに同等の機能を実現させることができる。
また、図7に示した音源部34のブロック全体の機能を
プログラムを用いてCPUに実現させることもできる。
また、図7の制御部33と音源部34の機能を、1つの
共通のCPUに実現させるプログラムにすることもでき
る。この場合、制御部33がDAC39に直結すること
になる。
The tone generator according to the present invention may be executed by a software tone generator which generates a tone by executing a program by a CPU instead of a hardware tone generator. Specifically, instead of realizing the waveform generation unit 36 shown in FIG. 7 by hardware using a memory and a logic circuit or the like, using a memory and a CPU to realize a function equivalent to the CPU by a program Can be.
Further, the functions of the entire block of the sound source unit 34 shown in FIG. 7 can be realized by the CPU using a program.
Further, the functions of the control unit 33 and the sound source unit 34 in FIG. 7 can be implemented by a program that is realized by one common CPU. In this case, the control unit 33 is directly connected to the DAC 39.

【0107】パーソナルコンピュータにおいては、音源
ボード上に搭載された専用のCPUやDSP、ROM、
RAM等を用いて音源部34の機能を実行させるか、B
IOS等のシステムプログラムおよびオペレーティング
システムの下で動作するアプリケーションプログラムと
して、ソフト音源のプログラムを実行し、制御部33お
よび音源部34の機能をパーソナルコンピュータのCP
Uで実現させることができる。上述したソフト音源プロ
グラムは、ROMに記憶させておくか磁気ディスクや光
ディスク等に記憶させておき、実行時にRAMにロード
して実行する。このプログラムは、光ディスクや通信ネ
ットワークを用いて供給することができる。
In a personal computer, a dedicated CPU, DSP, ROM,
If the function of the sound source section 34 is executed using a RAM or the like,
A software sound source program is executed as a system program such as an IOS and an application program operating under the operating system, and the functions of the control unit 33 and the sound source unit 34 are controlled by a CP of a personal computer.
U. The above-described software sound source program is stored in a ROM or a magnetic disk, an optical disk, or the like, and is loaded into a RAM and executed at the time of execution. This program can be supplied using an optical disk or a communication network.

【0108】[0108]

【発明の効果】上述した説明から明らかなように、楽音
のピッチと波形データの時間軸の圧縮伸張を自由に制御
することができ、波形データの読み出しの途中において
も、時間軸方向の圧縮率を精密に制御することができる
という効果がある。複数の部分的な波形データのつなが
りが良くなるという効果がある。
As is apparent from the above description, the pitch of the musical tone and the compression / expansion of the waveform data on the time axis can be freely controlled, and the compression ratio in the time axis direction can be controlled even during the reading of the waveform data. Can be precisely controlled. There is an effect that connection between a plurality of partial waveform data is improved.

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

【図1】 本発明の楽音発生装置に用いる波形メモリに
記憶させる楽音波形データの加工方法の原理的説明図で
ある。
FIG. 1 is a principle explanatory diagram of a method of processing musical tone waveform data stored in a waveform memory used in a musical tone generating device of the present invention.

【図2】 本発明の楽音発生装置に用いる波形メモリを
作成する第1の装置の概要構成図である。
FIG. 2 is a schematic configuration diagram of a first device for creating a waveform memory used in the musical tone generating device of the present invention.

【図3】 本発明の楽音発生装置に用いる波形メモリを
作成する第2の装置の概要構成図である。
FIG. 3 is a schematic configuration diagram of a second device for creating a waveform memory used in the musical tone generating device of the present invention.

【図4】 本発明の楽音発生装置において、波形メモリ
に記憶される波形データの記憶形式の模式的説明図であ
る。
FIG. 4 is a schematic explanatory diagram of a storage format of waveform data stored in a waveform memory in the tone generator of the present invention.

【図5】 周期長の規格化の第1,第2の例を示す説明
図である。
FIG. 5 is an explanatory diagram showing first and second examples of normalization of a cycle length.

【図6】 周期長の規格化の第3の例を示す説明図であ
る。
FIG. 6 is an explanatory diagram showing a third example of normalization of the cycle length.

【図7】 本発明の楽音発生装置の実施の一形態を説明
するための全体構成図である。
FIG. 7 is an overall configuration diagram for describing an embodiment of a musical sound generating device according to the present invention.

【図8】 図7に示した波形発生部の内部構成図であ
る。
8 is an internal configuration diagram of the waveform generator shown in FIG.

【図9】 図8に示した第1,第2の加工部の内部構成
図である。
FIG. 9 is an internal configuration diagram of first and second processing units shown in FIG. 8;

【図10】 本発明の楽音発生装置において、発音開始
指示に応じて楽音の生成を開始する状況を説明するため
のフローチャートである。
FIG. 10 is a flowchart for explaining a situation in which generation of a musical tone is started in response to a sound generation start instruction in the musical sound generating device of the present invention.

【図11】 ピッチ一定で再生時間のみを圧縮する第1
の例の説明図である。
FIG. 11 shows a first method of compressing only the reproduction time at a constant pitch.
It is explanatory drawing of the example of.

【図12】 ピッチ一定で再生時間のみを圧縮する第2
の例の説明図である。
FIG. 12 shows a second method of compressing only the reproduction time at a constant pitch.
It is explanatory drawing of the example of.

【図13】 ピッチ一定で再生時間のみを伸張する第1
の例の説明図である。
FIG. 13 shows a first method of extending only the reproduction time at a constant pitch.
It is explanatory drawing of the example of.

【図14】 ピッチ一定で再生時間のみを伸張する第2
の例の説明図である。
FIG. 14 shows a second method of extending only the reproduction time at a constant pitch.
It is explanatory drawing of the example of.

【図15】 再生時間一定でピッチのみを上げる例の説
明図である。
FIG. 15 is an explanatory diagram of an example in which only the pitch is increased while the reproduction time is constant.

【図16】 再生時間一定でピッチのみを下げる例の説
明図である。
FIG. 16 is an explanatory diagram of an example in which only the pitch is lowered while the reproduction time is constant.

【図17】 仮想アドレスをループさせながら圧縮伸張
する例の説明図である。
FIG. 17 is an explanatory diagram of an example of compressing and expanding virtual addresses while looping them.

【図18】 本発明の楽音発生装置で波形データの形状
を制御して再生する第1の具体例の説明図である。
FIG. 18 is an explanatory diagram of a first specific example in which the shape of the waveform data is controlled and reproduced by the tone generator of the present invention.

【図19】 本発明の楽音発生装置で波形データの形状
を制御して再生する第2の具体例の説明図である。
FIG. 19 is an explanatory diagram of a second specific example in which the tone generation device of the present invention controls and reproduces the shape of the waveform data.

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

1 周期の長い元波形のサンプル値、2 周期の短い元
波形のサンプル値、3規格化された周期長の記憶波形の
サンプル値、51,52 加算部、53 Fナンバ発生
部、54 カウンタ部、55 波形選択部、56 LP
F、57 スタートアドレスおよび周期長記憶部、58
周期データ記憶部、59 第1の周期番号レジスタ、
60 第2の周期番号レジスタ、61 第1の加工部、
62第2の加工部、63 波形メモリ、64 第1の補
間部、65 第2の補間部、66 クロスフェード合成
部、67 仮想アドレスカウンタ部、91 圧縮伸張し
ない場合の第1の系列の読出アドレス、92 仮想アド
レスカウンタ部の出力、93,95,97,99 第1
の系列の読出アドレス、94,96,98,100 第
2の系列の読出アドレス
1 sample value of the original waveform having a long cycle, 2 sample values of the original waveform having a short cycle, 3 sample values of the stored waveform having a standardized cycle length, 51, 52 adding sections, 53 F number generating section, 54 counter section, 55 waveform selector, 56 LP
F, 57 Start address and cycle length storage unit, 58
Cycle data storage unit, 59 first cycle number register,
60 second cycle number register, 61 first processing unit,
62 second processing section, 63 waveform memory, 64 first interpolation section, 65 second interpolation section, 66 cross-fade synthesis section, 67 virtual address counter section, 91 readout address of the first series when no compression / expansion is performed , 92 Output of virtual address counter section, 93, 95, 97, 99 1st
Read addresses of the series, 94, 96, 98, 100 read addresses of the second series

Claims (5)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 連続した複数周期の楽音波形が1または
複数の周期を単位として区切られた複数の単位波形デー
タを記憶した波形メモリと、 指定された楽音ピッチに応じた速度で増加する読出アド
レスを生成し、前記読出アドレスにより前記波形メモリ
から前記複数の単位波形データを読み出す読出手段と、 時間的に変化する仮想アドレスを出力する仮想アドレス
出力手段と、 前記読出アドレスと前記仮想アドレスとの差に応じて前
記読出アドレスとは異なる交替読出アドレスを発生し、
前記読出手段が現在の読出アドレスに替えて前記交替読
出アドレスを前記読出アドレスとして前記複数の単位波
形データを読み出すように制御する制御手段と、 を有することを特徴とする楽音発生装置。
1. A waveform memory storing a plurality of unit waveform data obtained by dividing a plurality of continuous tone waveforms in units of one or a plurality of cycles, and a read address increasing at a speed corresponding to a designated tone pitch. Reading means for reading the plurality of unit waveform data from the waveform memory according to the read address; virtual address output means for outputting a time-varying virtual address; and a difference between the read address and the virtual address. Generating an alternate read address different from the read address in accordance with
Control means for controlling the read means to read the plurality of unit waveform data using the replacement read address as the read address in place of a current read address.
【請求項2】 連続した複数周期の楽音波形が1または
複数の周期を単位として区切られた複数の単位波形デー
タを記憶した波形メモリと、 指定された楽音ピッチに応じた速度で増加する読出アド
レスを生成し、前記読出アドレスにより前記波形メモリ
から前記複数の単位波形データを読み出す読出手段と、 時間的に減少変化する仮想アドレスを出力する仮想アド
レス出力手段と、 前記読出アドレス前記仮想アドレスとの差に応じて、
時間軸上の過去の位置にある周期を読み出すように、前
記読出手段の生成する前記読出アドレスを変更する制御
をする制御手段と、 を有することを特徴とする楽音発生装置。
2. A waveform memory storing a plurality of unit waveform data obtained by dividing a plurality of continuous tone waveforms in units of one or a plurality of cycles, and a read address which increases at a speed corresponding to a designated tone pitch. It generates a reading means for reading the plurality of unit waveform data from the waveform memory by the read address, a virtual address output means for outputting a virtual address which changes temporally reduced, and the read address and the virtual address According to the difference ,
Control means for controlling the change of the read address generated by the read means so as to read a cycle at a past position on a time axis.
【請求項3】 連続した複数周期の楽音波形が1または
複数の周期を単位として区切られた複数の単位波形デー
タを記憶した波形メモリと、 指定された楽音ピッチに応じた速度で増加する読出アド
レスを生成し、前記読出アドレスにより前記波形メモリ
から前記複数の単位波形データを読み出す読出手段と、 楽音制御に関するパラメータに応じて時間的に変化する
仮想アドレスを出力する仮想アドレス出力手段と、 前記読出アドレス前記仮想アドレスとの差に応じて、
前記楽音波形が時間軸伸縮されるように、前記読出手段
の生成する前記読出アドレスを変更する制御をする制御
手段と、 を有することを特徴とする楽音発生装置。
3. A waveform memory storing a plurality of unit waveform data obtained by dividing a plurality of continuous tone waveforms by one or a plurality of cycles, and a read address which increases at a speed corresponding to a designated tone pitch. Reading means for reading the plurality of unit waveform data from the waveform memory based on the read address; virtual address output means for outputting a virtual address that changes with time according to a parameter relating to musical tone control; wherein in accordance with the difference between the virtual address and,
Control means for controlling the read address generated by the read means so that the musical tone waveform is expanded and contracted on a time axis.
【請求項4】 連続した複数周期の楽音波形が1または4. A musical tone waveform having a plurality of continuous periods of one or more
複数の周期を単位として区切られた複数の単位波形デーMultiple unit waveform data separated by multiple cycles
タを記憶した波形メモリと、Waveform memory that stores data 指定された楽音ピッチに応じた速度で増加する読出アドRead-out address that increases at the speed corresponding to the specified tone pitch
レスを生成し、前記読出アドレスにより前記波形メモリAddress and generates the waveform memory according to the read address.
から前記複数の単位波形データを読み出す読出手段と、Reading means for reading the plurality of unit waveform data from 時間的に減少変化する仮想アドレスを出力する仮想アドA virtual address that outputs a virtual address that decreases with time
レス出力手段と、Output means, 前記読出アドレスと前記仮想アドレスとの差に応じて前According to the difference between the read address and the virtual address,
記読出アドレスとは異なる交替読出アドレスを発生し、Generate an alternate read address different from the
前記読出手段が現在の読出アドレスに替えて前記交替読The read means replaces the current read address with the replacement read address;
出アドレスを前記読出アドレスとして前記複数の単位波An output address as the read address and the plurality of unit waves.
形データを読み出すように制御することにより、時間軸By controlling the shape data to be read, the time axis
上の過去の位置にある周期を読み出すようにする制御手A control method to read the cycle at the past position above
段と、Steps and を有することを特徴とする楽音発生装置。A musical sound generator comprising:
【請求項5】 連続した複数周期の楽音波形が1または5. A musical tone waveform having a plurality of continuous cycles of one or more
複数の周期を単位として区切られた複数の単位波形デーMultiple unit waveform data separated by multiple cycles
タを記憶した波形メモリと、Waveform memory that stores data 指定された楽音ピッチに応じた速度で増加する読出アドRead-out address that increases at the speed corresponding to the specified tone pitch
レスを生成し、前記読出アドレスにより前記波形メモリAddress and generates the waveform memory according to the read address.
から前記複数の単位波形データを読み出す読出手段と、Reading means for reading the plurality of unit waveform data from 楽音制御に関するパラメータに応じて時間的に変化するChanges over time according to parameters related to musical tone control
仮想アドレスを出力する仮想アドレス出力手段と、Virtual address output means for outputting a virtual address; 前記読出アドレスと前記仮想アドレスとの差に応じて前According to the difference between the read address and the virtual address,
記読出アドレスとは異なる交替読出アドレスを発生し、Generate an alternate read address different from the
前記読出手段が現在の読出アドレスに替えて前記交替読The read means replaces the current read address with the replacement read address;
出アドレスを前記読出アドレスとして前記複数の単位波An output address as the read address and the plurality of unit waves.
形データを読み出すように制御することにより、前記楽By controlling to read the shape data,
音波形が時間軸伸縮されるようにする制御手段と、Control means for causing the sound waveform to expand and contract on the time axis, を有することを特徴とする楽音発生装置。A musical sound generator comprising:
JP11281990A 1997-03-03 1999-10-01 Music generator Expired - Fee Related JP3095018B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11281990A JP3095018B2 (en) 1997-03-03 1999-10-01 Music generator

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP6172397 1997-03-03
JP9-61723 1997-03-03
JP11281990A JP3095018B2 (en) 1997-03-03 1999-10-01 Music generator

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP10060373A Division JP3008922B2 (en) 1997-03-03 1998-02-26 Music sound generating apparatus and music sound generating method

Publications (2)

Publication Number Publication Date
JP2000089765A JP2000089765A (en) 2000-03-31
JP3095018B2 true JP3095018B2 (en) 2000-10-03

Family

ID=26402791

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11281990A Expired - Fee Related JP3095018B2 (en) 1997-03-03 1999-10-01 Music generator

Country Status (1)

Country Link
JP (1) JP3095018B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4612254B2 (en) * 2001-09-28 2011-01-12 ローランド株式会社 Waveform playback device
JP4716422B2 (en) * 2006-01-19 2011-07-06 株式会社河合楽器製作所 Resonant sound generator

Also Published As

Publication number Publication date
JP2000089765A (en) 2000-03-31

Similar Documents

Publication Publication Date Title
US6316710B1 (en) Musical synthesizer capable of expressive phrasing
US6169241B1 (en) Sound source with free compression and expansion of voice independently of pitch
US6255576B1 (en) Device and method for forming waveform based on a combination of unit waveforms including loop waveform segments
JP3644263B2 (en) Waveform forming apparatus and method
KR19980070963A (en) Apparatus and method for generating musical tones
US7396992B2 (en) Tone synthesis apparatus and method
KR100319481B1 (en) Method and device for forming a tone waveform by combined use of different waveform sample forming resolutions
JP3008922B2 (en) Music sound generating apparatus and music sound generating method
JP3601371B2 (en) Waveform generation method and apparatus
JP3482685B2 (en) Sound generator for electronic musical instruments
JP3397082B2 (en) Music generating apparatus and method
JP3654117B2 (en) Expansion and contraction method of musical sound waveform signal in time axis direction
JP3675184B2 (en) Waveform forming apparatus and method
JP4736046B2 (en) Waveform data production method, waveform data production apparatus, program, and waveform memory production method
JP3095018B2 (en) Music generator
JP3395560B2 (en) Waveform reproducing apparatus and method for cross-fading waveform data
JP3744247B2 (en) Waveform compression method and waveform generation method
JP3873268B2 (en) Waveform playback device
JP3788096B2 (en) Waveform compression method and waveform generation method
JP2970438B2 (en) Waveform memory type tone generator
JP3016470B2 (en) Sound source device
JP2940440B2 (en) Electronic musical instrument waveform data compression recording method and waveform data reproduction method
JP3726765B2 (en) Waveform forming apparatus and method
JP2000214852A (en) Waveform reproducing apparatus and waveform storage medium
JP3933162B2 (en) Waveform generation method and apparatus

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: 20000704

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: 20070804

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20080804

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090804

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100804

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100804

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110804

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120804

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130804

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees