JP2008046175A - Waveform generator and waveform generation processing program - Google Patents

Waveform generator and waveform generation processing program Download PDF

Info

Publication number
JP2008046175A
JP2008046175A JP2006219174A JP2006219174A JP2008046175A JP 2008046175 A JP2008046175 A JP 2008046175A JP 2006219174 A JP2006219174 A JP 2006219174A JP 2006219174 A JP2006219174 A JP 2006219174A JP 2008046175 A JP2008046175 A JP 2008046175A
Authority
JP
Japan
Prior art keywords
waveform
pitch
channel
slot
step value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006219174A
Other languages
Japanese (ja)
Other versions
JP4656326B2 (en
Inventor
Hiroaki Nagasaka
浩明 長坂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2006219174A priority Critical patent/JP4656326B2/en
Publication of JP2008046175A publication Critical patent/JP2008046175A/en
Application granted granted Critical
Publication of JP4656326B2 publication Critical patent/JP4656326B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a waveform generator for generating a musical sound waveform exceeding the upper limit of a reproduction pitch decided by a control of a waveform address stepping value. <P>SOLUTION: A pitch control flag F is provided in each of channel areas CH 0-CH 63 of a RAM 10 corresponding to sounding channels CH 0-CH 63. When there is the sounding channel having the pitch control flag F representing the excess of the upper limit of the reproduction pitch, a leading channel slot and a following channel slot assigned to the sounding channel are regarded as one channel slot. In the leading channel slot, the first output waveform is generated by a difference waveform reproduction based on a maximum address stepping value, and the first output waveform is added to the second output waveform obtained by the difference waveform reproduction based on the remaining address stepping value after subtracting the maximum address stepping value so as to generate the musical sound waveform, in the following channel slot. As a result, the musical sound waveform exceeding the upper limit of the reproduction pitch can be generated. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、電子楽器の音源に用いて好適な波形発生装置および波形発生処理プログラムに関する。   The present invention relates to a waveform generation device and a waveform generation processing program suitable for use as a sound source of an electronic musical instrument.

従来より、差分PCM符号化された差分波形データをメモリから読み出して楽音波形を発生する波形発生装置が知られている。この種の装置として、例えば特許文献1には、メモリに記憶された差分波形データを読み出す波形アドレスの歩進量が「1」より大きく、これにより更新される波形アドレス整数部が、更新前の波形アドレス整数部に対して不連続となった場合、更新前の波形アドレス整数部から更新された波形アドレス整数部まで連続して対応する差分波形データを逐次積分しつつ、波形アドレス小数部に基づく補間演算を施すことによって、原音ピッチ以上の再生ピッチで楽音波形を発生させる技術が開示されている。   2. Description of the Related Art Conventionally, a waveform generator that reads differential waveform data that has been subjected to differential PCM encoding from a memory and generates a musical sound waveform is known. As this type of device, for example, in Patent Document 1, the step amount of the waveform address for reading the differential waveform data stored in the memory is larger than “1”, and the waveform address integer part updated thereby is the pre-update waveform portion. When the waveform address integer part becomes discontinuous, based on the waveform address decimal part while sequentially integrating the corresponding differential waveform data from the waveform address integer part before update to the updated waveform address integer part A technique is disclosed in which a musical sound waveform is generated at a reproduction pitch equal to or higher than the original sound pitch by performing an interpolation calculation.

特許第3223560号公報Japanese Patent No. 3223560

ところで、昨今のマルチティンバー音源では、ポリフォニック数の増加により1つの発音チャンネルに割当てられる処理スロットの期間が短い。そうした音源に、差分波形に基づき楽音波形を生成する波形発生装置を搭載すると、必然的に波形メモリから差分波形データを読み出す回数が制限される。波形読み出し回数の制限は波形アドレス歩進値の制限を招き、これにより再生ピッチが所定の上限値(最大アドレス歩進値)に制限されてしまうという問題がある。   By the way, in the recent multi-timbral sound source, the period of the processing slot assigned to one tone generation channel is short due to the increase in the number of polyphonics. If such a sound source is equipped with a waveform generator that generates a musical sound waveform based on a differential waveform, the number of times of reading differential waveform data from the waveform memory is necessarily limited. The limitation on the number of waveform readouts causes a limitation on the waveform address step value, which causes a problem that the reproduction pitch is limited to a predetermined upper limit value (maximum address step value).

本発明は、このような事情に鑑みてなされたもので、波形アドレス歩進値の制限により決る再生ピッチの上限を超えた楽音波形を発生することができる波形発生装置および波形発生処理プログラムを提供することを目的としている。   The present invention has been made in view of such circumstances, and provides a waveform generation device and a waveform generation processing program capable of generating a musical sound waveform exceeding the upper limit of the reproduction pitch determined by the limitation of the waveform address step value. The purpose is to do.

上記目的を達成するため、請求項1に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置において、再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別手段と、前記判別手段によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、当該発音チャンネルに対応する先行チャンネルスロットとこれに続く後続チャンネルスロットとを指定するスロット指定手段と、前記スロット指定手段により指定された先行チャンネルスロットにおいて、発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生する第1の波形発生手段と、前記スロット指定手段により指定された後続チャンネルスロットにおいて、発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、前記第1の波形発生手段が発生した第1の波形出力を加算して楽音波形を形成する第2の波形発生手段とを具備することを特徴とする。   In order to achieve the above object, according to the first aspect of the present invention, there is provided a waveform generator for reproducing a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation to form a musical sound waveform. Determining means for determining whether or not the sound generation pitch is assigned to a sound generation channel that exceeds the upper limit of the playback pitch by the determination means. Slot designating means for designating the preceding channel slot corresponding to the following channel slot, and the preceding channel slot designated by the slot designating means, the sounding pitch is set to the maximum address step value which is the upper limit of the reproduction pitch. Limit and regenerate differential waveform based on the limited maximum address step value In the first waveform generating means for generating the first waveform output at the time point and the subsequent channel slot designated by the slot designating means, based on the remaining address step value obtained by subtracting the maximum address step value from the tone generation pitch. And a second waveform generating means for adding a first waveform output generated by the first waveform generating means to a second waveform output obtained by differential waveform reproduction to form a musical sound waveform. And

請求項2に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置において、再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別手段と、前記判別手段によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、発音ピッチが再生ピッチの上限に収まるまで最大アドレス歩進値ずつ減少させるのに要する複数のチャンネルスロットを当該発音チャンネルに割当てるスロット割当て手段と、前記スロット割当て手段により割当てられた複数のチャンネルスロットの内、最大アドレス歩進値に制限されたチャンネルスロットでは、その制限された最大アドレス歩進値に基づく差分波形再生にて波形出力を発生し、最大アドレス歩進値以下の残余のアドレス歩進値が割当てられたチャンネルスロットでは、その残余のアドレス歩進値に基づく差分波形再生で得られる波形出力を発生し、これら各チャンネルスロットで生成される各波形出力を累算して楽音波形を形成する波形発生手段とを具備することを特徴とする。   According to a second aspect of the present invention, in a waveform generator for reproducing a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation to form a musical sound waveform, a sound generation pitch exceeding the upper limit of the reproduction pitch is assigned. A discriminating means for discriminating whether or not the sound channel is a sound channel, and until the sound producing pitch falls within the upper limit of the playback pitch when the discriminating means determines that the sound channel is assigned a sound generation pitch exceeding the upper limit of the playback pitch. Slot assigning means for assigning a plurality of channel slots required for decreasing the maximum address increment value to the tone generation channel, and the maximum address increment value among the plurality of channel slots assigned by the slot assigning means. Channel slots are based on their limited maximum address step value. In a channel slot that generates waveform output during differential waveform playback and is assigned a residual address step value less than or equal to the maximum address step value, the waveform output obtained by differential waveform playback based on the residual address step value is displayed. And waveform generating means for accumulating the waveform outputs generated in the channel slots to form a musical sound waveform.

請求項3に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置において、再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別手段と、前記判別手段によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、当該発音チャンネルに対応する第1のチャンネルスロットと、当該第1チャンネルスロットで行われる差分波形再生の続きを行う第2のチャンネルスロットとを指定するスロット指定手段と、前記スロット指定手段が指定する第1のチャンネルスロットにおいて、発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生する第1の波形発生手段と、前記スロット指定手段が指定する第2のチャンネルスロットにおいて、発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、前記第1の波形発生手段が発生した第1の波形出力を加算して楽音波形を形成する第2の波形発生手段とを具備することを特徴とする。   According to a third aspect of the present invention, in a waveform generator for reproducing a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation to form a musical sound waveform, a sound generation pitch exceeding the upper limit of the reproduction pitch is assigned. And a first channel corresponding to the sounding channel when the sounding channel is determined to be assigned a sounding pitch exceeding the upper limit of the reproduction pitch. A slot designating unit for designating a slot and a second channel slot for continuing the differential waveform reproduction performed in the first channel slot, and a sounding pitch is reproduced in the first channel slot designated by the slot designating unit. Limit to the maximum address step value that is the upper limit of the pitch, and limit the maximum address In the first waveform generation means for generating the first waveform output by the differential waveform reproduction based on the scan step value, and the second channel slot designated by the slot designation means, the maximum address step value is calculated from the tone pitch. A second waveform output obtained by differential waveform reproduction based on the subtracted remaining address step value is added to the first waveform output generated by the first waveform generating means to form a musical tone waveform. And a waveform generating means.

請求項4に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置で実行されるプログラムであって、再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別処理と、前記判別処理によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、当該発音チャンネルに対応する先行チャンネルスロットとこれに続く後続チャンネルスロットとを指定するスロット指定処理と、前記スロット指定処理により指定された先行チャンネルスロットにおいて、発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生する第1の波形発生処理と、前記スロット指定処理により指定された後続チャンネルスロットにおいて、発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、前記第1の波形発生処理が発生した第1の波形出力を加算して楽音波形を形成する第2の波形発生処理とを具備することを特徴とする。   According to a fourth aspect of the present invention, there is provided a program that is executed by a waveform generating apparatus that reproduces a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation to form a musical sound waveform, and is an upper limit of a reproduction pitch. A determination process for determining whether or not the sound generation channel is assigned a sound generation pitch exceeding the sound generation pitch, and when the sound generation channel is determined to be assigned a sound generation pitch exceeding the upper limit of the playback pitch by the determination processing, the sound generation channel In the slot designation process for designating the preceding channel slot corresponding to the following channel slot and the subsequent channel slot, and the preceding channel slot designated by the slot designation process, the tone generation pitch is set to the maximum address step value which is the upper limit of the reproduction pitch. Limit waveform playback based on the limited maximum address step value And a difference based on the remaining address step value obtained by subtracting the maximum address step value from the tone generation pitch in the first channel generation process for generating the first waveform output and the subsequent channel slot specified by the slot specifying process. And a second waveform generation process for adding a first waveform output generated by the first waveform generation process to a second waveform output obtained by waveform reproduction to form a musical sound waveform. To do.

請求項5に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置で実行されるプログラムであって、再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別処理と、前記判別処理によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、発音ピッチが再生ピッチの上限に収まるまで最大アドレス歩進値ずつ減少させるのに要する複数のチャンネルスロットを当該発音チャンネルに割当てるスロット割当て処理と、前記スロット割当て処理により割当てられた複数のチャンネルスロットの内、最大アドレス歩進値に制限されたチャンネルスロットでは、その制限された最大アドレス歩進値に基づく差分波形再生にて波形出力を発生し、最大アドレス歩進値以下の残余のアドレス歩進値が割当てられたチャンネルスロットでは、その残余のアドレス歩進値に基づく差分波形再生で得られる波形出力を発生し、これら各チャンネルスロットで生成される各波形出力を累算して楽音波形を形成する波形発生処理とを具備することを特徴とする。   According to a fifth aspect of the present invention, there is provided a program that is executed by a waveform generator that forms a musical tone waveform by reproducing a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation, and an upper limit of a reproduction pitch A determination process for determining whether or not the sound generation channel is assigned a sound generation pitch that exceeds the sound generation pitch, and if the sound generation channel is determined to be a sound generation channel that is assigned a sound generation pitch that exceeds the upper limit of the playback pitch by the determination processing, A slot allocation process for allocating a plurality of channel slots required for decreasing the maximum address step value until the upper limit of the reproduction pitch is reached, and a maximum address among the plurality of channel slots allocated by the slot allocation process For channel slots restricted to step values, the restricted maximum Waveform output is generated by differential waveform playback based on the address step value, and in the channel slot to which the remaining address step value below the maximum address step value is assigned, the differential waveform playback based on the remaining address step value is performed. And a waveform generation process for generating a waveform waveform by accumulating the waveform outputs generated in each channel slot.

請求項6に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置で実行されるプログラムであって、再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別処理と、前記判別処理によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、当該発音チャンネルに対応する第1のチャンネルスロットと、当該第1チャンネルスロットで行われる差分波形再生の続きを行う第2のチャンネルスロットとを指定するスロット指定処理と、前記スロット指定処理が指定する第1のチャンネルスロットにおいて、発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生する第1の波形発生処理と、前記スロット指定処理が指定する第2のチャンネルスロットにおいて、発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、前記第1の波形発生手段が発生した第1の波形出力を加算して楽音波形を形成する第2の波形発生処理とを具備することを特徴とする。   According to a sixth aspect of the present invention, there is provided a program that is executed by a waveform generator that forms a musical tone waveform by reproducing a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation, and an upper limit of a reproduction pitch A determination process for determining whether or not the sound generation channel is assigned a sound generation pitch exceeding the sound generation pitch, and when the sound generation channel is determined to be assigned a sound generation pitch exceeding the upper limit of the playback pitch by the determination processing, the sound generation channel A slot designating process for designating a first channel slot corresponding to the second channel slot for continuing the differential waveform reproduction performed in the first channel slot, and a first channel designated by the slot designating process. In the slot, limit the pronunciation pitch to the maximum address step value that is the upper limit of the playback pitch, In the first waveform generation processing for generating the first waveform output in the differential waveform reproduction based on the limited maximum address step value, and in the second channel slot specified by the slot specification processing, the maximum from the tone generation pitch The tone waveform is obtained by adding the first waveform output generated by the first waveform generating means to the second waveform output obtained by differential waveform reproduction based on the remaining address step value obtained by subtracting the address step value. And a second waveform generation process to be formed.

本発明では、再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別されると、当該発音チャンネルに対応する先行チャンネルスロットとこれに続く後続チャンネルスロットとを指定する。指定された先行チャンネルスロットでは発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生し、続く後続チャンネルスロットでは発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、先行チャンネルスロットで得た第1の波形出力を加算して楽音波形を形成するので、波形アドレス歩進値の制限により決る再生ピッチの上限を超えた楽音波形を発生することができる。   In the present invention, when it is determined that the sound generation channel is assigned a sound generation pitch exceeding the upper limit of the reproduction pitch, the preceding channel slot corresponding to the sound generation channel and the subsequent channel slot are designated. In the designated preceding channel slot, the tone generation pitch is limited to the maximum address step value that is the upper limit of the playback pitch, and the first waveform output is generated by the differential waveform playback based on the limited maximum address step value, In the subsequent channel slot, the first waveform output obtained in the preceding channel slot is added to the second waveform output obtained by the differential waveform reproduction based on the remaining address step value obtained by subtracting the maximum address step value from the sound generation pitch. Since the musical tone waveform is formed, the musical tone waveform exceeding the upper limit of the reproduction pitch determined by the limitation of the waveform address step value can be generated.

以下、図面を参照して本発明の実施の形態について説明する。
A.第1実施形態
(1)構成
図1は、本発明の第1実施形態による波形発生装置の要部構成を示すブロック図であり、電子楽器の音源に搭載される波形発生装置の一構成例を示している。この図において、クロック発生部100は、基本クロックckをカウントする10ビットのカウンタから構成され、当該カウンタの下位4ビット出力(3SB〜0SB(LSB))であるクロックmc[3:0]と、上位6ビット出力(9SB(MSB)〜4SB)であるクロックmc[9:4]とを発生する。
Embodiments of the present invention will be described below with reference to the drawings.
A. First embodiment
(1) Configuration
FIG. 1 is a block diagram showing a main configuration of the waveform generator according to the first embodiment of the present invention, and shows a configuration example of a waveform generator mounted on a sound source of an electronic musical instrument. In this figure, the clock generator 100 is composed of a 10-bit counter that counts the basic clock ck, and a clock mc [3: 0] that is the lower 4 bits output (3SB to 0SB (LSB)) of the counter; A clock mc [9: 4] that is an upper 6-bit output (9SB (MSB) to 4SB) is generated.

ここで、図2を参照して基本クロックck、クロックmc[3:0]およびクロックmc[9:4]の対応関係について説明する。この図に示すように、クロックmc[9:4]は、音源において時分割動作する64個(0h〜3Fh)の発音チャンネルに各々対応するチャンネルスロットCH0〜CH63を形成する。チャンネルスロットCH0〜CH63の期間は、差分波形データの1サンプリング周期1/Fs(Fs:サンプリング周波数)に相当する。   Here, a correspondence relationship between the basic clock ck, the clock mc [3: 0], and the clock mc [9: 4] will be described with reference to FIG. As shown in this figure, the clock mc [9: 4] forms channel slots CH0 to CH63 respectively corresponding to 64 (0h to 3Fh) sound generation channels that perform time-division operation in the sound source. The period of the channel slots CH0 to CH63 corresponds to one sampling period 1 / Fs (Fs: sampling frequency) of the differential waveform data.

クロックmc[3:0]は、上記クロックmc[9:4]が形成する1つのチャンネルスロットCHを、16個(0h〜Fh)の処理スロット「0h(0)」〜「Fh(15)」に分割する。こうしたクロックmc[9:4]およびクロックmc[3:0]に基づき、図1に図示する波形発生装置の各構成要素の動作タイミングが制御される。   The clock mc [3: 0] is composed of 16 (0h to Fh) processing slots “0h (0)” to “Fh (15)” of one channel slot CH formed by the clock mc [9: 4]. Divide into Based on the clock mc [9: 4] and the clock mc [3: 0], the operation timing of each component of the waveform generator illustrated in FIG. 1 is controlled.

図1において、RAM10は、波形発生装置のワークメモリとして用いられる。RAM10は、図3に図示するように、音源が備える64個の発音チャンネルに各々対応付けられたチャンネルエリアCH0〜CH63を備える。これらチャンネルエリアCH0〜CH63におけるデータ読み出し/書き込みは、上述したクロックmc[3:0]が形成する処理スロットに同期して行われる。   In FIG. 1, a RAM 10 is used as a work memory of a waveform generator. As shown in FIG. 3, the RAM 10 includes channel areas CH <b> 0 to CH <b> 63 respectively associated with the 64 sound generation channels included in the sound source. Data reading / writing in these channel areas CH0 to CH63 is performed in synchronization with the processing slot formed by the clock mc [3: 0] described above.

RAM10の各チャンネルエリアCH0〜CH63には、ピッチ制御フラグF、整数部ピッチデータP、小数部ピッチデータp、整数部アドレスA、小数部アドレスa、シフト値E、波高値Xおよび出力音量Vが格納される。ピッチ制御フラグFは、発音すべき楽音波形の音高がアドレス歩進値の制限により決る再生ピッチの上限を超える場合に「1」、それ以外は「0」となるフラグである。   Each channel area CH0 to CH63 of the RAM 10 has a pitch control flag F, an integer part pitch data P, a decimal part pitch data p, an integer part address A, a decimal part address a, a shift value E, a peak value X, and an output volume V. Stored. The pitch control flag F is “1” when the pitch of the musical sound waveform to be generated exceeds the upper limit of the reproduction pitch determined by the limit of the address step value, and is “0” otherwise.

整数部ピッチデータPおよび小数部ピッチデータpは、発音音高に対応したアドレス歩進値を表す。なお、整数部ピッチデータPおよび小数部ピッチデータpをピッチデータPitchと総称する。整数部アドレスAおよび小数部アドレスaは、現在の波形アドレス(現在指定している差分波形の位相)を表す。整数部アドレスAおよび小数部波形アドレスaを現波形アドレスADと総称する。   The integer part pitch data P and the fractional part pitch data p represent address step values corresponding to the pronunciation pitch. The integer part pitch data P and the fractional part pitch data p are collectively referred to as pitch data Pitch. The integer part address A and the fractional part address a represent the current waveform address (the phase of the differential waveform currently specified). The integer part address A and the fractional part waveform address a are collectively referred to as the current waveform address AD.

シフト値Eは、波形メモリ30から読み出される差分波形データ、すなわち2の補数で仮数表現された8ビット幅の差分波形データを実数表現する際のビットシフト量を表す。波高値Xは、更新前の現波形アドレスADに対応して差分波形データが積分された波高値である。出力音量Vは、出力する楽音波形の振幅レベルを表す。   The shift value E represents the amount of bit shift when the differential waveform data read from the waveform memory 30, that is, the differential waveform data of 8-bit width expressed in mantissa with 2's complement is expressed as a real number. The peak value X is a peak value obtained by integrating the differential waveform data corresponding to the current waveform address AD before update. The output volume V represents the amplitude level of the musical sound waveform to be output.

図1において、ピッチ制御フラグレジスタ11には、RAM10から読み出されるピッチ制御フラグFがストアされる。判別テーブル12は、ピッチ制御フラグレジスタ11から出力されるピッチ制御フラグFが「1」の場合、つまり再生ピッチの上限を超える場合に出力値「7」を発生し、一方、ピッチ制御フラグFが「0」の場合に出力値「0」を発生する。減算器13は、ピッチレジスタ17の出力から判別テーブル12の出力値を減算してなる減算値を発生してコントローラ14およびセレクタ15に供給する。   In FIG. 1, the pitch control flag F read from the RAM 10 is stored in the pitch control flag register 11. The discrimination table 12 generates an output value “7” when the pitch control flag F output from the pitch control flag register 11 is “1”, that is, exceeds the upper limit of the reproduction pitch, while the pitch control flag F is In the case of “0”, an output value “0” is generated. The subtracter 13 generates a subtracted value obtained by subtracting the output value of the discrimination table 12 from the output of the pitch register 17 and supplies it to the controller 14 and the selector 15.

コントローラ14は、ピッチ制御フラグレジスタ11から出力されるピッチ制御フラグFと、減算器13の出力(減算値)とに応じた切替え指示をセレクタ15に与える。セレクタ15は、コントローラ14からの切替え指示に応じて、RAM10から読み出されるピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)、入力データ「0」、減算器13の出力のいずれかを選択して次段のピッチレジスタ17にストアする。   The controller 14 gives the selector 15 a switching instruction according to the pitch control flag F output from the pitch control flag register 11 and the output (subtraction value) of the subtractor 13. The selector 15 selects one of pitch data Pitch (integer part pitch data P and fractional part pitch data p) read from the RAM 10, input data “0”, and the output of the subtractor 13 in response to a switching instruction from the controller 14. Select and store in the pitch register 17 of the next stage.

RAMコントローラ16は、ピッチ制御フラグレジスタ11から出力されるピッチ制御フラグFの値が「1」の場合、連続する2つのチャンネルスロット(先行チャンネルスロットCH、後続チャンネルスロットCH+1)を1つのチャンネルスロットと見做せるようにRAM10のアドレスを変更する。つまり、先行チャンネルスロットCHに対応するチャンネルエリアCHから読み出されたピッチ制御フラグFの値が「1」であると、後続チャンネルスロットCH+1では先行チャンネルエリアCHのアドレスをアサインする。   When the value of the pitch control flag F output from the pitch control flag register 11 is “1”, the RAM controller 16 sets two consecutive channel slots (preceding channel slot CH, succeeding channel slot CH + 1) as one channel slot. The address of the RAM 10 is changed so that it can be seen. That is, if the value of the pitch control flag F read from the channel area CH corresponding to the preceding channel slot CH is “1”, the address of the preceding channel area CH is assigned to the succeeding channel slot CH + 1.

ピッチリミッタ18は、ピッチレジスタ17から出力されるピッチデータPitchが「7」以上の場合、当該ピッチデータPitchを「7」に制限して出力する。ピッチレジスタ17から出力されるピッチデータPitchが「7」未満ならば、そのままスルー出力する。つまり、本実施の形態では、差分波形再生における最大アドレス歩進値を「7」としている。ピッチデータPitchが「7」以上であると、最大アドレス歩進値を超えてしまうので、ピッチリミッタ18がピッチデータPitchを強制的に「7」に制限する。   When the pitch data Pitch output from the pitch register 17 is “7” or more, the pitch limiter 18 outputs the pitch data Pitch limited to “7”. If the pitch data Pitch output from the pitch register 17 is less than “7”, the through data is output as it is. That is, in the present embodiment, the maximum address step value in the differential waveform reproduction is set to “7”. If the pitch data Pitch is “7” or more, the maximum address step value is exceeded, so the pitch limiter 18 forcibly limits the pitch data Pitch to “7”.

また、本実施の形態においては、上述したように、ピッチデータPitchが「7」を超える場合、すなわち波形アドレス歩進値の制限により決る再生ピッチの上限を超えると、連続する2つのチャンネルスロットCH,CH+1を1つのチャンネルスロットと見做し、先行チャンネルスロットCHにおいてピッチリミッタ18によりピッチデータPitchを「7」に制限して最大アドレス歩進値「7」を発生させた後、後続チャンネルスロットCH+1において「7」を超えた分のアドレス歩進値を生成するようになっている。   In this embodiment, as described above, when the pitch data Pitch exceeds “7”, that is, when the upper limit of the reproduction pitch determined by the limitation of the waveform address step value is exceeded, two consecutive channel slots CH , CH + 1 are regarded as one channel slot, the pitch data Pitch is limited to “7” by the pitch limiter 18 in the preceding channel slot CH to generate the maximum address step value “7”, and then the subsequent channel slot CH + 1 The address step value exceeding “7” is generated.

具体的には、例えばRAM10から読み出されるピッチデータPitchが「10」であると、先行チャンネルスロットCHにおいては、セレクタ15を介してピッチレジスタ17にストアされたピッチデータPitchがピッチリミッタ18により「7」に制限される。そして、後続チャンネルスロットCH+1においては、減算器13がピッチレジスタ17にストアされたピッチデータPitchから判別テーブル12の出力「7」を減算(10−7)することによって「3」が得られる。   Specifically, for example, if the pitch data Pitch read from the RAM 10 is “10”, the pitch data Pitch stored in the pitch register 17 via the selector 15 is “7” by the pitch limiter 18 in the preceding channel slot CH. ". In the subsequent channel slot CH + 1, “3” is obtained by subtracting (10−7) the output “7” of the discrimination table 12 from the pitch data Pitch stored in the pitch register 17 by the subtractor 13.

なお、RAM10から読み出されるピッチデータPitchが「7」未満の場合、例えば「6」であると、先行チャンネルスロットCHにおいては、セレクタ15を介してピッチレジスタ17にストアされたピッチデータPitchがピッチリミッタ18をそのままスルーする為、「6」となる。そして、後続チャンネルスロットCH+1においては、減算器13がピッチレジスタ17にストアされたピッチデータPitchから判別テーブル12の出力「7」を減算(6−7)することによって「−1」となるが、この場合、セクレタ15がコントローラ14からの切替え指示により入力データ「0」を選択するので、結局、ピッチリミッタ18の出力は「0」となる。   If the pitch data Pitch read from the RAM 10 is less than “7”, for example “6”, the pitch data Pitch stored in the pitch register 17 via the selector 15 is stored in the pitch limiter 17 in the preceding channel slot CH. Since it passes through 18 as it is, it becomes “6”. In the subsequent channel slot CH + 1, the subtracter 13 subtracts (6-7) the output “7” of the discrimination table 12 from the pitch data Pitch stored in the pitch register 17 to become “−1”. In this case, since the secretor 15 selects the input data “0” according to the switching instruction from the controller 14, the output of the pitch limiter 18 eventually becomes “0”.

セレクタ20は、所定の処理スロットにおいて、RAM10から読み出される現波形アドレスAD(整数部アドレスAおよび小数部アドレスa)または加算器19の出力のいずれかを選択して次段のADCレジスタ21にストアする。セレクタ20がRAM10から読み出される現波形アドレスADを選択した場合には、ピッチリミッタ18の出力と、ADCレジスタ21から出力される現波形アドレスADとが加算器19で加算され、これにより現波形アドレスADが更新される。なお、加算器19では、ピッチリミッタ18の出力と、ADCレジスタ21の出力(現波形アドレスAD)との加算時に小数部桁上がりが生じると、小数部キャリーを発生する。   The selector 20 selects either the current waveform address AD (integer part address A and fractional part address a) read from the RAM 10 or the output of the adder 19 and stores it in the ADC register 21 at the next stage in a predetermined processing slot. To do. When the selector 20 selects the current waveform address AD read from the RAM 10, the output of the pitch limiter 18 and the current waveform address AD output from the ADC register 21 are added by the adder 19, thereby the current waveform address. AD is updated. The adder 19 generates a decimal part carry when a carry occurs in the decimal part when adding the output of the pitch limiter 18 and the output of the ADC register 21 (current waveform address AD).

更新された現波形アドレスADは、セレクタ20を介してADCレジスタ21にストアされる。ADCレジスタ21にストアされた更新後の現波形アドレスAD(整数部アドレスAおよび小数部アドレスa)は、セレクタ42を介してRAM10の対応するチャンネルエリアCHに書き込まれる。ADC LSBレジスタ22には、ADCレジスタ21にストアされる現波形アドレスADにおける整数部アドレスAの最下位ビットLSBがストアされる。   The updated current waveform address AD is stored in the ADC register 21 via the selector 20. The updated current waveform address AD (integer part address A and decimal part address a) stored in the ADC register 21 is written to the corresponding channel area CH of the RAM 10 via the selector 42. The ADC LSB register 22 stores the least significant bit LSB of the integer part address A in the current waveform address AD stored in the ADC register 21.

加算器23は、ピッチリミッタ18の出力に、加算器19が発生する小数部キャリーを加算して波形アドレス歩進値を発生する。加算器23が発生する波形アドレス歩進値は、STEPレジスタ24にストアされる。退避レジスタ25は、STEPレジスタ24の遅延バッファとして機能し、STEPレジスタ24の波形アドレス歩進値を退避格納する。   The adder 23 adds the decimal part carry generated by the adder 19 to the output of the pitch limiter 18 to generate a waveform address step value. The waveform address step value generated by the adder 23 is stored in the STEP register 24. The save register 25 functions as a delay buffer of the STEP register 24 and saves and stores the waveform address step value of the STEP register 24.

加算器26は、ADCレジスタ21から出力される現波形アドレスADの整数部アドレスAに「−6」を加算する。加算器26の出力(整数部アドレスA−6)は、その最下位ビットLSBを除いた上位15ビット分がセレクタ27を介してWADRレジスタ28にストアされる。WADRレジスタ28の出力は、波形メモリ30の読み出しアドレスWADRとなる。インクリメンタ29は、WADRレジスタ28に格納される読み出しアドレスWADRを所定の処理スロットに同期して歩進し、4つの読み出しアドレスWADR、WADR+1、WADR+2およびWADR+3を発生する。   The adder 26 adds “−6” to the integer part address A of the current waveform address AD output from the ADC register 21. The output of the adder 26 (integer part address A-6) is stored in the WADR register 28 via the selector 27 with the upper 15 bits excluding the least significant bit LSB. The output of the WADR register 28 becomes the read address WADR of the waveform memory 30. The incrementer 29 advances the read address WADR stored in the WADR register 28 in synchronization with a predetermined processing slot, and generates four read addresses WADR, WADR + 1, WADR + 2, and WADR + 3.

波形メモリ30は、図4に図示するように、16ビット幅の格納エリアを有する。1つの格納エリアには、2の補数で仮数表現された8ビット幅の差分波形データが上位バイトおよび下位バイトに格納される。なお、この8ビット幅の差分波形データは、後述するEレジスタ39にストアされるシフト値に応じてビットシフトされて16ビットの差分波形データとなる。   As shown in FIG. 4, the waveform memory 30 has a storage area having a 16-bit width. In one storage area, 8-bit wide differential waveform data expressed as a mantissa in 2's complement is stored in the upper byte and the lower byte. The 8-bit width differential waveform data is bit-shifted according to a shift value stored in an E register 39, which will be described later, and becomes 16-bit differential waveform data.

波形メモリ30は、WADRレジスタ28が順次発生する4つの読み出しアドレスWADR、WADR+1、WADR+2およびWADR+3に応じて、差分波形データD0〜D3を読み出す。差分波形データD0は、上位バイトの差分波形データD0Hおよび下位バイトの差分波形データD0Lから構成される。同様に、差分波形データD1は差分波形データD1H,D1L、差分波形データD2は差分波形データD2H,D2L、差分波形データD3は差分波形データD3H,D3Lから構成される。   The waveform memory 30 reads the differential waveform data D0 to D3 according to the four read addresses WADR, WADR + 1, WADR + 2 and WADR + 3 which are sequentially generated by the WADR register 28. The differential waveform data D0 is composed of high-order byte differential waveform data D0H and low-order byte differential waveform data D0L. Similarly, the differential waveform data D1 includes differential waveform data D1H and D1L, the differential waveform data D2 includes differential waveform data D2H and D2L, and the differential waveform data D3 includes differential waveform data D3H and D3L.

波形メモリ30から読み出される差分波形データD0〜D3は、セレクタ31を介してDW0レジスタ32〜DW3レジスタ35に格納される。すなわち、DW0レジスタ32には差分波形データD0H,D0Lが、DW1レジスタ33には差分波形データD1H,D1Lが、DW2レジスタ34には差分波形データD2H,D2Lが、DW3レジスタ35には差分波形データD3H,D3Lがそれぞれ格納される。   The differential waveform data D0 to D3 read from the waveform memory 30 is stored in the DW0 register 32 to DW3 register 35 via the selector 31. That is, the differential waveform data D0H and D0L are stored in the DW0 register 32, the differential waveform data D1H and D1L are stored in the DW1 register 33, the differential waveform data D2H and D2L are stored in the DW2 register 34, and the differential waveform data D3H is stored in the DW3 register 35. , D3L are stored respectively.

セレクタ31は、コントローラ37の指示に応じて、波形メモリ30から読み出される差分波形データD0〜D3をDW0レジスタ32〜DW3レジスタ35にストアする。セレクタ/シフタ36は、DW0レジスタ32〜DW3レジスタ35の内からコントローラ37が指示する差分波形データを選択すると共に、選択した差分波形データを、Eレジスタ39に格納されるシフト値Eに従ってビットシフトすることで当該差分波形データを16ビットの実数として表現する。   The selector 31 stores the differential waveform data D0 to D3 read from the waveform memory 30 in the DW0 register 32 to DW3 register 35 in accordance with an instruction from the controller 37. The selector / shifter 36 selects the differential waveform data instructed by the controller 37 from the DW0 register 32 to DW3 register 35, and bit-shifts the selected differential waveform data according to the shift value E stored in the E register 39. Thus, the differential waveform data is expressed as a 16-bit real number.

加算器38では、セレクタ36から出力される差分波形データに、Xレジスタ41から出力される波高値Xを加算(積分)する。コントローラ37は、退避レジスタ25に格納される波形アドレス歩進値と、ADC LSBレジスタ22の値(現波形アドレスADにおける整数部アドレスAの最下位ビットLSB)とに応じた積分演算パターン(後述する)に従い、加算器38において波高値Xを積分する差分波形データを選択する。   The adder 38 adds (integrates) the peak value X output from the X register 41 to the differential waveform data output from the selector 36. The controller 37 performs an integration calculation pattern (described later) according to the waveform address step value stored in the save register 25 and the value of the ADC LSB register 22 (the least significant bit LSB of the integer part address A in the current waveform address AD). ), The adder 38 selects differential waveform data for integrating the peak value X.

ここで、図5〜図6を参照して退避レジスタ25に格納される波形アドレス歩進値と、ADC LSBレジスタ22の値(現波形アドレスADにおける整数部アドレスAの最下位ビットLSB)とで定まる積分演算パターンの内容について説明する。図5はADC LSBレジスタ22の値が「1」の場合の積分演算パターンを表し、図6はADC LSBレジスタ22の値が「0」の場合の積分演算パターンを表す。これらの図に示す積分演算パターンは、退避レジスタ25に格納される波形アドレス歩進値「0」〜「7」と、クロックmc[3:0]が指定する処理スロットとに応じて定まる積分演算の内容を示す。   Here, referring to FIG. 5 to FIG. 6, the waveform address step value stored in the save register 25 and the value of the ADC LSB register 22 (the least significant bit LSB of the integer part address A in the current waveform address AD) The contents of the determined integral calculation pattern will be described. FIG. 5 shows an integration calculation pattern when the value of the ADC LSB register 22 is “1”, and FIG. 6 shows an integration calculation pattern when the value of the ADC LSB register 22 is “0”. The integration calculation patterns shown in these figures are integral calculations determined according to the waveform address step values “0” to “7” stored in the save register 25 and the processing slot designated by the clock mc [3: 0]. The contents of

先ず最初に、図5を参照してADC LSBレジスタ22の値が「1」の場合における積分演算の一例について述べる。ADC LSBレジスタ22の値が「1」の時に、退避レジスタ25に格納される波形アドレス歩進値が「7」であったとする。そしてこの時、クロックmc[3:0]が指定する処理スロット「C」ならば、積分演算は行われず、「X=RAM」と表される。「X=RAM」とは、RAM10から読み出した波高値Xをセレクタ40を介してXレジスタ41にストアすることを意味する。   First, an example of an integration operation when the value of the ADC LSB register 22 is “1” will be described with reference to FIG. It is assumed that the waveform address step value stored in the save register 25 is “7” when the value of the ADC LSB register 22 is “1”. At this time, if the processing slot “C” specified by the clock mc [3: 0] is specified, the integration operation is not performed, and “X = RAM” is expressed. “X = RAM” means that the peak value X read from the RAM 10 is stored in the X register 41 via the selector 40.

次に、処理スロット「D」において「X=X+S(D0H)」なる積分演算を実行する。「X=X+S(D0H)」とは、DW0レジスタ32にストアされる差分波形データD0Hを、Eレジスタ39に格納されるシフト値Eに従ってビットシフトさせた後、Xレジスタ41から出力される波高値Xを加算器38で積分し、積分された波高値をXレジスタ41にストアすることを意味する。   Next, an integral operation “X = X + S (D0H)” is executed in the processing slot “D”. “X = X + S (D0H)” means that the peak value output from the X register 41 after the differential waveform data D0H stored in the DW0 register 32 is bit-shifted according to the shift value E stored in the E register 39. This means that X is integrated by the adder 38 and the integrated peak value is stored in the X register 41.

続いて、処理スロット「0」において「X=X+S(D0L)」なる積分演算を実行する。「X=X+S(D0L)」とは、DW0レジスタ32にストアされる差分波形データD0Lを、Eレジスタ39に格納されるシフト値Eに従ってビットシフトさせた後、Xレジスタ41から出力される波高値Xを加算器38で積分し、積分された波高値をXレジスタ41にストアすることを意味する。   Subsequently, an integration operation “X = X + S (D0L)” is executed in the processing slot “0”. “X = X + S (D0L)” is a peak value output from the X register 41 after the differential waveform data D0L stored in the DW0 register 32 is bit-shifted according to the shift value E stored in the E register 39. This means that X is integrated by the adder 38 and the integrated peak value is stored in the X register 41.

以後、同様にして、処理スロット「1」において「X=X+S(D1H)」、処理スロット「4」において「X=X+S(D1L)」、処理スロット「5」において「X=X+S(D2H)」、処理スロット「8」において「X=X+S(D2L)」、処理スロット「9」において「X=X+S(D3H)」なる積分演算を各々実行する。   Thereafter, similarly, “X = X + S (D1H)” in the processing slot “1”, “X = X + S (D1L)” in the processing slot “4”, and “X = X + S (D2H)” in the processing slot “5”. In the processing slot “8”, integration operations “X = X + S (D2L)” and “X = X + S (D3H)” in the processing slot “9” are executed.

次に、図6を参照してADC LSBレジスタ22の値が「0」の場合の積分演算の一例について述べる。ADC LSBレジスタ22の値が「0」の時に、退避レジスタ25に格納される波形アドレス歩進値が「6」であったとする。そしてこの時、クロックmc[3:0]が指定する処理スロット「C」ならば、積分演算は行われず、「X=RAM」と表される。「X=RAM」とは、RAM10から読み出した波高値Xをセレクタ40を介してXレジスタ41にストアすることを意味する。   Next, an example of the integration operation when the value of the ADC LSB register 22 is “0” will be described with reference to FIG. It is assumed that the waveform address step value stored in the save register 25 is “6” when the value of the ADC LSB register 22 is “0”. At this time, if the processing slot “C” specified by the clock mc [3: 0] is specified, the integration operation is not performed, and “X = RAM” is expressed. “X = RAM” means that the peak value X read from the RAM 10 is stored in the X register 41 via the selector 40.

次に、処理スロット「D」では、加算器38において、Xレジスタ41から出力される波高値Xに「0」を積分する「X=X+0」なる演算を実行する。続いて、処理スロット「0」において「X=X+S(D0L)」なる積分演算を実行する。「X=X+S(D0L)」とは、DW0レジスタ32にストアされる差分波形データD0Lを、Eレジスタ39に格納されるシフト値Eに従ってビットシフトさせた後、Xレジスタ41から出力される波高値Xを加算器38で積分し、積分された波高値をXレジスタ41にストアすることを意味する。   Next, in the processing slot “D”, the adder 38 performs an operation “X = X + 0” that integrates “0” into the peak value X output from the X register 41. Subsequently, an integration operation “X = X + S (D0L)” is executed in the processing slot “0”. “X = X + S (D0L)” is a peak value output from the X register 41 after the differential waveform data D0L stored in the DW0 register 32 is bit-shifted according to the shift value E stored in the E register 39. This means that X is integrated by the adder 38 and the integrated peak value is stored in the X register 41.

次いで、処理スロット「1」では、「X=X+S(D1H)」なる積分演算を実行する。「X=X+S(D1H)」とは、DW1レジスタ32にストアされる差分波形データD1Hを、Eレジスタ39に格納されるシフト値Eに従ってビットシフトさせた後、Xレジスタ41から出力される波高値Xを加算器38で積分し、積分された波高値をXレジスタ41にストアすることを意味する。以後、処理スロット「4」にて「X=X+S(D1L)」、処理スロット「5」にて「X=X+S(D2H)」、処理スロット「8」にて「X=X+S(D2L)」、処理スロット「9」にて「X=X+S(D3H)」の積分演算を各々実行する。   Next, in the processing slot “1”, an integral operation “X = X + S (D1H)” is executed. “X = X + S (D1H)” means that the peak value output from the X register 41 after the differential waveform data D1H stored in the DW1 register 32 is bit-shifted according to the shift value E stored in the E register 39. This means that X is integrated by the adder 38 and the integrated peak value is stored in the X register 41. Thereafter, “X = X + S (D1L)” in the processing slot “4”, “X = X + S (D2H)” in the processing slot “5”, “X = X + S (D2L)” in the processing slot “8”, Integration processing of “X = X + S (D3H)” is executed in the processing slot “9”.

さて、こうした積分演算によりXレジスタ41にストアされた波高値Xは、次に積分される波高値として加算器38に供給される一方、乗算器45に供給される。VOLレジスタ43には、RAM10から読み出される出力音量Vがストアされる。ADC decレジスタ44には、ADCレジスタ21から出力される現波形アドレスADの小数部アドレスaがストアされる。   Now, the peak value X stored in the X register 41 by such an integration operation is supplied to the adder 38 as a peak value to be integrated next, and is also supplied to the multiplier 45. The VOL register 43 stores the output volume V read from the RAM 10. The ADC dec register 44 stores the decimal part address a of the current waveform address AD output from the ADC register 21.

乗算器45、セレクタ46および加減算器47は、ADC decレジスタ44にストアされる現波形アドレスADの小数部アドレスaに基づき、Xレジスタ41にストアされる波高値Xに対して次式(1)の直線補間演算を実行し、これにより算出される波高値Y(n,a)をYレジスタ48にストアする。
Y(n,a)=X(n)+a×{X(n+1)−X(n)}…(1)
なお、上記(1)式において、nは差分波形データ読み出しの回数を表し、aは小数部アドレスを表す。
The multiplier 45, the selector 46, and the adder / subtractor 47 are based on the fractional part address a of the current waveform address AD stored in the ADC dec register 44 and the following equation (1) for the peak value X stored in the X register 41: The peak value Y (n, a) calculated by this is stored in the Y register 48.
Y (n, a) = X (n) + a × {X (n + 1) −X (n)} (1)
In the above equation (1), n represents the number of times differential waveform data is read, and a represents the decimal part address.

Yレジスタ48にストアされる波高値Yは、更新された波高値Xとして、セレクタ42を介してRAM10の対応するチャンネルエリアCHに書き込まれる。乗算器49は、Yレジスタ48から出力される波高値Yに、VOLレジスタ43の出力(出力音量V)を乗算する。加算器50、セレクタ51およびMレジスタ52は、乗算器49から出力される各発音チャンネルの出力波形を全て累算して波形出力waveを形成する。この波形出力waveは、図示されていない音源において、1サンプリング周期毎にD/A変換出力される。   The peak value Y stored in the Y register 48 is written into the corresponding channel area CH of the RAM 10 via the selector 42 as the updated peak value X. The multiplier 49 multiplies the peak value Y output from the Y register 48 by the output (output volume V) of the VOL register 43. The adder 50, the selector 51, and the M register 52 accumulate all output waveforms of the sound generation channels output from the multiplier 49 to form a waveform output wave. This waveform output wave is D / A converted and output every sampling period in a sound source not shown.

(2)動作
次に、図7〜図8に図示するタイミングチャートを参照して上記構成による第1実施形態の動作を説明する。なお、以下の動作説明では、チャンネルスロットCH0中の処理スロットをCH0処理スロットと称し、チャンネルスロットCH1中の処理スロットをCH1処理スロットと称す。
(2) Operation
Next, the operation of the first embodiment having the above configuration will be described with reference to the timing charts shown in FIGS. In the following description of the operation, a processing slot in the channel slot CH0 is referred to as a CH0 processing slot, and a processing slot in the channel slot CH1 is referred to as a CH1 processing slot.

先ずCH0処理スロット「0」のデータ期間d1おいて、RAM10のチャンネルエリアCH0からピッチ制御フラグf1が読み出される。この動作例では、ピッチ制御フラグf1が「1」、つまり発音チャンネルCH0の発音音高(ピッチデータPitch)が再生ピッチの上限を超えている場合を想定している。読み出されたピッチ制御フラグf1は、CH0処理スロット「1」に同期してピッチ制御フラグレジスタ11にストアされる。次いで、CH0処理スロット「2」のデータ期間d2では、RAM10のチャンネルエリアCH0からピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)が読み出される。   First, in the data period d1 of the CH0 processing slot “0”, the pitch control flag f1 is read from the channel area CH0 of the RAM 10. In this example of operation, it is assumed that the pitch control flag f1 is “1”, that is, the tone pitch (pitch data Pitch) of the tone generation channel CH0 exceeds the upper limit of the reproduction pitch. The read pitch control flag f1 is stored in the pitch control flag register 11 in synchronization with the CH0 processing slot “1”. Next, in the data period d2 of the CH0 processing slot “2”, the pitch data Pitch (the integer part pitch data P and the fractional part pitch data p) is read from the channel area CH0 of the RAM 10.

読み出されたピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)は、CH0処理スロット「3」のデータ期間p1においてピッチレジスタ17にストアされる。また、CH0処理スロット「3」のデータ期間d3では、RAM10のチャンネルエリアCH0から現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)を読み出す。さらに、CH0処理スロット「3」のデータ期間sa1では、減算器13がピッチデータPitchから判別テーブル12の出力値「7」を減算してなる減算値(Pitch−7)を発生する。   The read pitch data Pitch (integer part pitch data P and fractional part pitch data p) is stored in the pitch register 17 in the data period p1 of the CH0 processing slot “3”. In the data period d3 of the CH0 processing slot “3”, the current waveform address AD (the integer part address A and the fractional part waveform address a) is read from the channel area CH0 of the RAM 10. Further, in the data period sa1 of the CH0 processing slot “3”, the subtractor 13 generates a subtraction value (Pitch-7) obtained by subtracting the output value “7” of the discrimination table 12 from the pitch data Pitch.

次に、CH0処理スロット「3」以降のデータ期間p2では、減算器13の出力(Pitch−7)がピッチレジスタ17にストアされる。また、CH0処理スロット「4」に同期したデータ期間a1では、上記データ期間d3においてRAM10から読み出された現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)がADCレジスタ21にストアされる。さらに、CH0処理スロット「4」のデータ期間sb1では、ピッチリミッタ18が出力する制限値「7」と、ADCレジスタ21の現波形アドレスADとが加算器19で加算される。   Next, in the data period p2 after the CH0 processing slot “3”, the output (Pitch-7) of the subtractor 13 is stored in the pitch register 17. In the data period a1 synchronized with the CH0 processing slot “4”, the current waveform address AD (integer part address A and fractional part waveform address a) read from the RAM 10 in the data period d3 is stored in the ADC register 21. The Further, in the data period sb1 of the CH0 processing slot “4”, the limit value “7” output from the pitch limiter 18 and the current waveform address AD of the ADC register 21 are added by the adder 19.

そして、CH0処理スロット「4」以降のデータ期間STEP0では、上記データ期間sb1において加算器19が小数部桁上がりに応じて発生する小数部キャリーを、ピッチリミッタ18から出力される制限値「7」に加算してなる波形アドレス歩進値を発生してSTEPレジスタ24にストアする。続いて、CH0処理スロット「5」以降のデータ期間a2では、上記データ期間a1にて更新された現波形アドレスADをADCレジスタ21にストアする一方、CH0処理スロット「5」のデータ期間d4においてADCレジスタ21の値(更新後の現波形アドレスAD)を、セレクタ42を介してRAM10のチャンネルエリアCH0にストアする。   In the data period STEP0 after the CH0 processing slot “4”, the decimal part carry generated by the adder 19 in response to the decimal part carry in the data period sb1 is the limit value “7” output from the pitch limiter 18. A waveform address step value obtained by adding to is generated and stored in the STEP register 24. Subsequently, in the data period a2 after the CH0 processing slot “5”, the current waveform address AD updated in the data period a1 is stored in the ADC register 21, while the ADC in the data period d4 of the CH0 processing slot “5”. The value of the register 21 (updated current waveform address AD) is stored in the channel area CH 0 of the RAM 10 via the selector 42.

ADCレジスタ21から出力される現波形アドレスADは、その整数部アドレスAに「−6」が加算器26において加算された後、最下位ビットLSBを除いた上位15ビット分が読み出しアドレスWADRとしてWADRレジスタ28にストアされる。そして、CH0処理スロット「8」以降のデータ期間WADR0〜WADR3において、WADRレジスタ28の読み出しアドレスWADRがインクリメンタ29により順次歩進されて4つの読み出しアドレスWADR、WADR+1、WADR+2およびWADR+3が生成される。   The current waveform address AD output from the ADC register 21 is obtained by adding “−6” to the integer part address A by the adder 26, and then the upper 15 bits excluding the least significant bit LSB are read out as WADR as WADR. Stored in register 28. Then, in the data periods WADR0 to WADR3 after the CH0 processing slot “8”, the read address WADR of the WADR register 28 is sequentially incremented by the incrementer 29 to generate four read addresses WADR, WADR + 1, WADR + 2 and WADR + 3.

さて一方、CH0処理スロット「A」以降のデータ期間STEP0では、STEPレジスタ24から読み出した波形アドレス歩進値が退避レジスタ25に退避格納される。また、CH0処理スロット「A」以降のデータ期間ADClsb0では、CH0処理スロット「5」のデータ期間a2においてADCレジスタ21にストアした現波形アドレスADの最下位ビットLSBを、ADC LSBレジスタ22にストアする。次に、CH0処理スロット「B」以降のデータ期間ADCdec0では、CH0処理スロット「5」のデータ期間a2においてADCレジスタ21にストアした現波形アドレスADの小数部アドレスaを、ADC decレジスタ44にストアする。   On the other hand, in the data period STEP 0 after the CH 0 processing slot “A”, the waveform address step value read from the STEP register 24 is saved in the save register 25. In the data period ADClsb0 after the CH0 processing slot “A”, the least significant bit LSB of the current waveform address AD stored in the ADC register 21 in the data period a2 of the CH0 processing slot “5” is stored in the ADC LSB register 22. . Next, in the data period ADCdec0 after the CH0 processing slot “B”, the decimal part address a of the current waveform address AD stored in the ADC register 21 in the data period a2 of the CH0 processing slot “5” is stored in the ADC dec register 44. To do.

WADRレジスタ28から順次出力される4つの読み出しアドレスWADR、WADR+1、WADR+2およびWADR+3に応じて、波形メモリ30が読み出す差分波形データD0(D0H,D0L)〜D3(D3H,D3L)は、図7に図示するタイミングでセレクタ31を介してDW0レジスタ32〜DW3レジスタ35に格納される。すなわち、DW0レジスタ32には差分波形データD0H,D0L、DW1レジスタ33には差分波形データD1H,D1L、DW2レジスタ34には差分波形データD2H,D2L、DW3レジスタ35には差分波形データD3H,D3Lがそれぞれ格納される。   The differential waveform data D0 (D0H, D0L) to D3 (D3H, D3L) read by the waveform memory 30 according to the four read addresses WADR, WADR + 1, WADR + 2, and WADR + 3 sequentially output from the WADR register 28 are illustrated in FIG. Are stored in the DW0 register 32 to DW3 register 35 via the selector 31 at the timing of That is, the differential waveform data D0H and D0L are stored in the DW0 register 32, the differential waveform data D1H and D1L are stored in the DW1 register 33, and the differential waveform data D3H and D3L are stored in the DW2 register 34. Each is stored.

そして、CH0処理スロット「C」のデータ期間d9では、RAM10のチャンネルエリアCH0からシフト値Eおよび波高値Xを読み出す。読み出されたシフト値Eは、CH0処理スロット「D」以降のデータ期間E0においてEレジスタ39にストアされる。一方、波高値XはCH0処理スロット「D」に同期したデータ期間X00においてXレジスタ41にストアされる。   Then, in the data period d9 of the CH0 processing slot “C”, the shift value E and the peak value X are read from the channel area CH0 of the RAM 10. The read shift value E is stored in the E register 39 in the data period E0 after the CH0 processing slot “D”. On the other hand, the peak value X is stored in the X register 41 in the data period X00 synchronized with the CH0 processing slot “D”.

また、CH0処理スロット「D」のデータ期間I00では、退避レジスタ25に格納される波形アドレス歩進値と、ADC LSBレジスタ22の値(現波形アドレスADにおける整数部アドレスAの最下位ビットLSB)とに応じて定まる積分演算パターンに従って積分演算を行う。   In the data period I00 of the CH0 processing slot “D”, the waveform address step value stored in the save register 25 and the value of the ADC LSB register 22 (the least significant bit LSB of the integer part address A in the current waveform address AD) are stored. Integral calculation is performed according to the integral calculation pattern determined according to.

例えば、前述したように、ADC LSBレジスタ22の値が「1」であって、かつ退避レジスタ25に格納される波形アドレス歩進値が「7」の場合には、図5に図示したように、CH0処理スロット「D」のデータ期間I00において、「X=X+S(D0H)」なる積分演算を実行する。「X=X+S(D0H)」とは、DW0レジスタ32にストアされる差分波形データD0Hを、Eレジスタ39に格納されるシフト値Eに従ってビットシフトさせた後、Xレジスタ41から出力される波高値Xを加算器38で積分し、積分された波高値をXレジスタ41にストアすることを意味する。   For example, as described above, when the value of the ADC LSB register 22 is “1” and the waveform address step value stored in the save register 25 is “7”, as illustrated in FIG. , The integration operation “X = X + S (D0H)” is executed in the data period I00 of the CH0 processing slot “D”. “X = X + S (D0H)” means that the peak value output from the X register 41 after the differential waveform data D0H stored in the DW0 register 32 is bit-shifted according to the shift value E stored in the E register 39. This means that X is integrated by the adder 38 and the integrated peak value is stored in the X register 41.

以後、CH1処理スロット「0」のデータ期間I01では「X=X+S(D0L)」を、CH1処理スロット「1」のデータ期間I02では「X=X+S(D1H)」を、CH1処理スロット「4」のデータ期間I03では「X=X+S(D1L)」を、CH1処理スロット「5」のデータ期間I04では「X=X+S(D2H)」を、CH1処理スロット「8」のデータ期間I05では「X=X+S(D2L)」を、CH1処理スロット「9」のデータ期間I06では「X=X+S(D3H)」を各々実行する。   Thereafter, “X = X + S (D0L)” is set in the data period I01 of the CH1 processing slot “0”, “X = X + S (D1H)” is set in the data period I02 of the CH1 processing slot “1”, and the CH1 processing slot “4” is set. “X = X + S (D1L)” in the data period I03, “X = X + S (D2H)” in the data period I04 in the CH1 processing slot “5”, and “X = X in the data period I05 in the CH1 processing slot“ 8 ”. X + S (D2L) ”and“ X = X + S (D3H) ”are executed in the data period I06 of the CH1 processing slot“ 9 ”.

そして、これら処理スロットの積分演算により得られる波高値Xは、図7に図示するように、対応するデータ期間X00〜X06においてXレジスタ41にストアされ、次に積分される波高値として加算器38に供給される一方、乗算器45に供給される。   Then, as shown in FIG. 7, the peak value X obtained by the integration calculation of these processing slots is stored in the X register 41 in the corresponding data period X00 to X06, and is added as the peak value to be integrated next. Is supplied to the multiplier 45.

さて、こうした積分演算が行われている時にCH0処理からCH1処理に遷移すると、CH1処理スロット「0」のデータ期間d5おいて、RAM10のチャンネルエリアCH1からピッチ制御フラグf2が読み出される。ここで、読み出されたピッチ制御フラグf2の値が「0」であったとする。そうすると、RAMコントローラ16は、本来、チャンネルエリアCH1に割当てるべき読み出しアドレスをチャンネルエリアCH0に割当てる。こうすることで、チャンネルスロットCH1では、先行するチャンネルスロットCH0の処理を継続するようになる。   If the transition from the CH0 process to the CH1 process is performed while such an integration operation is being performed, the pitch control flag f2 is read from the channel area CH1 of the RAM 10 in the data period d5 of the CH1 process slot “0”. Here, it is assumed that the value of the read pitch control flag f2 is “0”. Then, the RAM controller 16 assigns a read address that should originally be assigned to the channel area CH1 to the channel area CH0. By doing so, the processing of the preceding channel slot CH0 is continued in the channel slot CH1.

すなわち、CH1処理スロット「2」のデータ期間d6では、チャンネルスロットCH0において「7」に制限された後の残余のピッチデータPitch、つまり減算器13がピッチレジスタ17にストアされたピッチデータPitchから判別テーブル12の出力「7」を減算した後の残余のピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)を発生する。   That is, in the data period d6 of the CH1 processing slot “2”, the remaining pitch data Pitch after being limited to “7” in the channel slot CH0, that is, the subtractor 13 is discriminated from the pitch data Pitch stored in the pitch register 17. The remaining pitch data Pitch (integer part pitch data P and fractional part pitch data p) after subtracting the output “7” of the table 12 is generated.

また、CH1処理スロット「3」のデータ期間d7では、RAM10のチャンネルエリアCH0から現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)を読み出す。さらに、CH1処理スロット「5」のデータ期間d8では、ADCレジスタ21の値(更新後の現波形アドレスAD)を、セレクタ42を介してRAM10のチャンネルエリアCH0にストアする。   In the data period d7 of the CH1 processing slot “3”, the current waveform address AD (the integer part address A and the fractional part waveform address a) is read from the channel area CH0 of the RAM 10. Further, in the data period d8 of the CH1 processing slot “5”, the value of the ADC register 21 (the updated current waveform address AD) is stored in the channel area CH0 of the RAM 10 via the selector 42.

そして、CH1処理スロット「8」のデータ期間d10(図8参照)にRAM10のチャンネルエリアCH0から読み出された出力音量Vは、CH1処理スロット「9」以降のデータ期間V0にVOLレジスタ43にストアされる。また、CH1処理スロット「9」に同期したデータ期間J00では、Xレジスタ41の波高値X06にADC decレジスタ44のADCdec0(現波形アドレスADの小数部アドレスa)を乗算してX06×ADCdec0を算出し、続くデータ期間J01では、Xレジスタ41の波高値X07にADC decレジスタ44のADCdec0(現波形アドレスADの小数部アドレスa)を乗算してX07×ADCdec0を算出する。   The output volume V read from the channel area CH0 of the RAM 10 in the data period d10 (see FIG. 8) of the CH1 processing slot “8” is stored in the VOL register 43 in the data period V0 after the CH1 processing slot “9”. Is done. In the data period J00 synchronized with the CH1 processing slot “9”, X06 × ADCdec0 is calculated by multiplying the peak value X06 of the X register 41 by ADCdec0 (decimal part address a of the current waveform address AD) of the ADC dec register 44. In the subsequent data period J01, X07 × ADCdec0 is calculated by multiplying the peak value X07 of the X register 41 by ADCdec0 (decimal part address a of the current waveform address AD) of the ADC dec register 44.

次いで、図8に図示するCH1処理スロット「A」のデータ期間Y00では、直線補間演算の経過値であるX06−X06×ADCdec0を発生してYレジスタ48にストアし、続くデータ期間Y01では、データ期間Y00で発生したX06−X06×ADCdec0にX07×ADCdec0を加算する。これにより、直線補間された波高値Y(n,a)=X(n)+a×{X(n+1)−X(n)}がYレジスタ48にストアされる。   Next, in the data period Y00 of the CH1 processing slot “A” shown in FIG. 8, X06-X06 × ADCdec0, which is the elapsed value of the linear interpolation calculation, is generated and stored in the Y register 48, and in the subsequent data period Y01, the data X07 × ADCdec0 is added to X06−X06 × ADCdec0 generated in the period Y00. As a result, the linearly interpolated peak value Y (n, a) = X (n) + a × {X (n + 1) −X (n)} is stored in the Y register 48.

そして、CH1処理スロット「B」に同期したデータ期間K0では、Yレジスタ48にストアされた波高値Y01に、VOLレジスタ43の出力音量V0を乗算する。Mレジスタ52では、CH1処理スロット「B」に同期してゼロクリアした後、データ期間M0において上記データ期間K0にて生成される出力波形Y01×V0がストアされる。これにより、先行チャンネルスロットCH0に対応する出力波形Y01×V0が生成される。   In the data period K 0 synchronized with the CH 1 processing slot “B”, the peak value Y 01 stored in the Y register 48 is multiplied by the output volume V 0 of the VOL register 43. In the M register 52, after clearing to zero in synchronization with the CH1 processing slot “B”, the output waveform Y01 × V0 generated in the data period K0 is stored in the data period M0. As a result, an output waveform Y01 × V0 corresponding to the preceding channel slot CH0 is generated.

以後、上述したデータ期間d6およびd7で得た残余のピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)と現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)とに応じて、上述と同様の過程で後続チャンネルスロットCH1の出力波形Y11×V11を生成する。そして、生成された出力波形Y11×V11は、CH2処理スロット「C」以降のデータ期間M1において、Mレジスタ52で累算される。   Thereafter, according to the remaining pitch data Pitch (integer part pitch data P and fractional part pitch data p) obtained in the data periods d6 and d7 and the current waveform address AD (integer part address A and fractional part waveform address a). Thus, the output waveform Y11 × V11 of the subsequent channel slot CH1 is generated in the same process as described above. Then, the generated output waveform Y11 × V11 is accumulated in the M register 52 in the data period M1 after the CH2 processing slot “C”.

このように、第1実施形態では、発音チャンネルCH0〜CH63に対応したRAM10のチャンネルエリアCH0〜CH63毎に、発音音高が再生ピッチの上限を超えるか否かを表すピッチ制御フラグFを設けておき、再生ピッチの上限を超える旨を表すピッチ制御フラグFを有する発音チャンネルがあると、当該発音チャンネルにアサインされた先行チャンネルスロットCHと後続するチャンネルスロットCH+1とを実質的に1つのチャンネルスロットと見做す。   As described above, in the first embodiment, the pitch control flag F indicating whether or not the tone pitch exceeds the upper limit of the reproduction pitch is provided for each of the channel areas CH0 to CH63 of the RAM 10 corresponding to the tone generation channels CH0 to CH63. If there is a tone generation channel having a pitch control flag F indicating that the upper limit of the playback pitch is exceeded, the preceding channel slot CH assigned to the tone generation channel and the succeeding channel slot CH + 1 are substantially one channel slot. I will look down.

そして、先行チャンネルスロットCHでは、ピッチデータPitchを最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生により第1の出力波形を発生した後、後続チャンネルスロットCH+1では、ピッチデータPitchから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の出力波形に上記第1の出力波形を加えて最終的な出力波形を発生するので、波形アドレス歩進値の制限により決る再生ピッチの上限を超えた楽音波形を発生することが可能になっている。   In the preceding channel slot CH, the pitch data Pitch is limited to the maximum address step value, the first output waveform is generated by the differential waveform reproduction based on the limited maximum address step value, and then the subsequent channel slot CH + 1. Then, the final output waveform is generated by adding the first output waveform to the second output waveform obtained by differential waveform reproduction based on the remaining address step value obtained by subtracting the maximum address step value from the pitch data Pitch. Therefore, it is possible to generate a musical sound waveform exceeding the upper limit of the reproduction pitch determined by the limitation of the waveform address step value.

B.第2実施形態
次に、図9〜図11を参照して第2実施形態について説明する。上述した第1実施形態では、再生ピッチの上限を超える旨を表すピッチ制御フラグFを有する発音チャンネルがあると、当該発音チャンネルにアサインされた先行チャンネルスロットCHと後続するチャンネルスロットCH+1とを1つのチャンネルスロットと見做すようにした。これに対し、第2実施形態では、上述の第1実施形態のように連続する2つのチャンネルスロットに限定せず、2つ以上のチャンネルスロットを連続させて再生ピッチの上限を伸ばすものである。
B. Second Embodiment Next, a second embodiment will be described with reference to FIGS. In the first embodiment described above, if there is a tone generation channel having the pitch control flag F indicating that the upper limit of the reproduction pitch is exceeded, the preceding channel slot CH assigned to the tone generation channel and the subsequent channel slot CH + 1 are combined into one. It was considered as a channel slot. On the other hand, the second embodiment is not limited to two continuous channel slots as in the first embodiment described above, but extends the upper limit of the reproduction pitch by continuing two or more channel slots.

図9は、そうした第2実施形態の構成を示すブロック図である。この図において、図1に図示した第1実施形態と共通する構成要素には同一の番号を付し、その説明を省略する。図9に図示する第2実施形態の構成が、第1実施形態と相違する点は、チャンネルレジスタ200を設けたことにある。チャンネルレジスタ200は、最初にピッチ制御フラグFが「1」となったチャンネルスロットCHの番号(クロックmc[9:4]の値)を、ピッチ制御フラグFが「0」になるまで保持する。RAMコントローラ16は、チャンネルレジスタ200に保持されるチャンネルスロットCHの番号に対応したRAM10のチャンネルエリアCHのアドレスを発生する。   FIG. 9 is a block diagram showing the configuration of the second embodiment. In this figure, the same number is attached | subjected to the same component as 1st Embodiment illustrated in FIG. 1, and the description is abbreviate | omitted. The configuration of the second embodiment illustrated in FIG. 9 is different from the first embodiment in that a channel register 200 is provided. The channel register 200 holds the number of the channel slot CH (the value of the clock mc [9: 4]) in which the pitch control flag F is first “1” until the pitch control flag F becomes “0”. The RAM controller 16 generates an address of the channel area CH of the RAM 10 corresponding to the channel slot CH number held in the channel register 200.

次に、図10〜図11に図示するタイミングチャートを参照して第2実施形態の動作について説明する。先ず図10に図示するCH0処理スロット「0」のデータ期間d1において、RAM10のチャンネルエリアCH0からピッチ制御フラグf1が読み出される。ここで、例えばチャンネルスロットCH0のピッチデータPitchが最大アドレス歩進値を超える「16」であったとすると、ピッチ制御フラグf1は「1」となる。データ期間d1にて読み出されたピッチ制御フラグf1は、CH0処理スロット「1」に同期してピッチ制御フラグレジスタ11にストアされる。   Next, the operation of the second embodiment will be described with reference to the timing charts shown in FIGS. First, the pitch control flag f1 is read from the channel area CH0 of the RAM 10 in the data period d1 of the CH0 processing slot “0” shown in FIG. For example, if the pitch data Pitch of the channel slot CH0 is “16” exceeding the maximum address step value, the pitch control flag f1 is “1”. The pitch control flag f1 read in the data period d1 is stored in the pitch control flag register 11 in synchronization with the CH0 processing slot “1”.

次いで、CH0処理スロット「2」のデータ期間d2では、RAM10のチャンネルエリアCH0からピッチデータPitch(=「16」)が読み出される。また、CH0処理スロット「2」に同期して、ピッチ制御フラグFが「1」となる最初のチャンネルスロットCHの番号C1として、クロックmc[9:4]の値「0」がチャンネルレジスタ200にストアされる。CH0処理スロット「2」で読み出されたピッチデータPitchは、CH0処理スロット「3」のデータ期間p1においてピッチレジスタ17にストアされる。   Next, in the data period d2 of the CH0 processing slot “2”, the pitch data Pitch (= “16”) is read from the channel area CH0 of the RAM 10. Further, in synchronization with the CH0 processing slot “2”, the value “0” of the clock mc [9: 4] is stored in the channel register 200 as the number C1 of the first channel slot CH in which the pitch control flag F becomes “1”. Stored. The pitch data Pitch read in the CH0 processing slot “2” is stored in the pitch register 17 in the data period p1 of the CH0 processing slot “3”.

CH0処理スロット「3」のデータ期間d3では、RAM10のチャンネルエリアCH0から現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)を読み出す。さらに、CH0処理スロット「3」のデータ期間sa1では、減算器13がピッチデータPitchから判別テーブル12の出力値「7」を減算して減算値(16−7=9)を発生する。   In the data period d3 of the CH0 processing slot “3”, the current waveform address AD (the integer part address A and the fractional part waveform address a) is read from the channel area CH0 of the RAM 10. Further, in the data period sa1 of the CH0 processing slot “3”, the subtractor 13 subtracts the output value “7” of the discrimination table 12 from the pitch data Pitch to generate a subtraction value (16−7 = 9).

次に、CH0処理スロット「3」以降のデータ期間p2では、減算値「9」がピッチレジスタ17にストアされる。また、CH0処理スロット「4」に同期したデータ期間a1では、上記データ期間d3にてRAM10から読み出された現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)がADCレジスタ21にストアされる。さらに、CH0処理スロット「4」のデータ期間sb1では、ピッチリミッタ18が出力する制限値「7」と、ADCレジスタ21の現波形アドレスADとが加算器19で加算される。   Next, the subtraction value “9” is stored in the pitch register 17 in the data period p2 after the CH0 processing slot “3”. In the data period a1 synchronized with the CH0 processing slot “4”, the current waveform address AD (integer part address A and fractional part waveform address a) read from the RAM 10 in the data period d3 is stored in the ADC register 21. Is done. Further, in the data period sb1 of the CH0 processing slot “4”, the limit value “7” output from the pitch limiter 18 and the current waveform address AD of the ADC register 21 are added by the adder 19.

続いて、CH0処理スロット「5」以降のデータ期間a2では、上記データ期間a1にて更新された現波形アドレスADをADCレジスタ21にストアする一方、CH0処理スロット「5」のデータ期間d4においてADCレジスタ21の値(更新後の現波形アドレスAD)を、セレクタ42を介してRAM10のチャンネルエリアCH0にストアする。これ以後は、前述した第1実施形態と同様の動作によってチャンネルスロットCH0の波形出力を生成する。   Subsequently, in the data period a2 after the CH0 processing slot “5”, the current waveform address AD updated in the data period a1 is stored in the ADC register 21, while the ADC in the data period d4 of the CH0 processing slot “5”. The value of the register 21 (updated current waveform address AD) is stored in the channel area CH 0 of the RAM 10 via the selector 42. Thereafter, the waveform output of the channel slot CH0 is generated by the same operation as in the first embodiment described above.

次に、CH1処理スロット「0」のデータ期間d5では、本来ならば、RAM10のチャンネルエリアCH1のピッチ制御フラグFを読み出すが、RAMコントローラ16がRAM10のチャンネルエリアCH0のアドレスを維持する為、上記データ期間d1と同様、チャンネルエリアCH0のピッチ制御フラグf1が読み出される。データ期間d5にて読み出されたピッチ制御フラグf1は、CH1処理スロット「1」に同期してピッチ制御フラグレジスタ11にストアされる。   Next, in the data period d5 of the CH1 processing slot “0”, the pitch control flag F of the channel area CH1 of the RAM 10 is read out originally, but since the RAM controller 16 maintains the address of the channel area CH0 of the RAM 10, Similar to the data period d1, the pitch control flag f1 of the channel area CH0 is read. The pitch control flag f1 read in the data period d5 is stored in the pitch control flag register 11 in synchronization with the CH1 processing slot “1”.

次いで、CH1処理スロット「2」のデータ期間d6では、本来ならば、RAM10のチャンネルエリアCH1からピッチデータPitchを読み出すが、ここではCH0処理スロット「3」以降のデータ期間p2においてストアされた減算値「9」がピッチレジスタ17に保持される為、ピッチデータPitchの読み出しは行われない。   Next, in the data period d6 of the CH1 processing slot “2”, the pitch data Pitch is originally read from the channel area CH1 of the RAM 10, but here, the subtraction value stored in the data period p2 after the CH0 processing slot “3”. Since “9” is held in the pitch register 17, the pitch data Pitch is not read.

CH1処理スロット「3」のデータ期間d7では、CH0処理スロット「5」のデータ期間d4においてRAM10のチャンネルエリアCH0にストアした更新後の現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)を読み出す。さらに、CH0処理スロット「3」のデータ期間sa2では、減算器13が前回の減算値「9」から判別テーブル12の出力値「7」を減算して減算値(9−7=2)を発生する。   In the data period d7 of the CH1 processing slot “3”, the updated current waveform address AD (the integer part address A and the fractional part waveform address a) stored in the channel area CH0 of the RAM 10 in the data period d4 of the CH0 processing slot “5”. Is read. Further, in the data period sa2 of the CH0 processing slot “3”, the subtractor 13 subtracts the output value “7” of the discrimination table 12 from the previous subtraction value “9” to generate a subtraction value (9−7 = 2). To do.

次に、CH1処理スロット「3」以降のデータ期間p3では、減算値「2」がピッチレジスタ17にストアされる。また、CH1処理スロット「4」に同期したデータ期間a3では、上記データ期間d7にてRAM10から読み出された現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)がADCレジスタ21にストアされる。さらに、CH1処理スロット「4」のデータ期間sb2では、ピッチリミッタ18が出力する制限値「7」と、ADCレジスタ21の現波形アドレスADとが加算器19で加算される。   Next, in the data period p3 after the CH1 processing slot “3”, the subtraction value “2” is stored in the pitch register 17. In the data period a3 synchronized with the CH1 processing slot “4”, the current waveform address AD (integer part address A and fractional part waveform address a) read from the RAM 10 in the data period d7 is stored in the ADC register 21. Is done. Further, in the data period sb2 of the CH1 processing slot “4”, the limit value “7” output from the pitch limiter 18 and the current waveform address AD of the ADC register 21 are added by the adder 19.

続いて、CH1処理スロット「5」以降のデータ期間a4では、上記データ期間a3にて更新された現波形アドレスADをADCレジスタ21にストアする一方、CH1処理スロット「5」のデータ期間d8においてADCレジスタ21の値を、セレクタ42を介してRAM10のチャンネルエリアCH0にストアする。これ以後は、前述した第1実施形態と同様の動作によって生成されるチャンネルスロットCH1の波形出力をチャンネルスロットCH0の波形出力に累算して累算波形を形成する。   Subsequently, in the data period a4 after the CH1 processing slot “5”, the current waveform address AD updated in the data period a3 is stored in the ADC register 21, while the ADC in the data period d8 of the CH1 processing slot “5”. The value of the register 21 is stored in the channel area CH0 of the RAM 10 via the selector 42. Thereafter, the waveform output of the channel slot CH1 generated by the same operation as in the first embodiment is accumulated to the waveform output of the channel slot CH0 to form an accumulated waveform.

次に、CH2処理スロット「0」のデータ期間d9では、CH1処理スロット「0」のデータ期間d5と同様、チャンネルエリアCH0のピッチ制御フラグf1が読み出され、読み出されたピッチ制御フラグf1は、CH2処理スロット「1」に同期してピッチ制御フラグレジスタ11にストアされる。続いて、CH2処理スロット「2」のデータ期間d10では、本来ならば、RAM10のチャンネルエリアCH2からピッチデータPitchを読み出すが、ここではCH1処理スロット「3」以降のデータ期間p3においてストアされた減算値「2」がピッチレジスタ17に保持される為、ピッチデータPitchの読み出しは行われない。   Next, in the data period d9 of the CH2 processing slot “0”, the pitch control flag f1 of the channel area CH0 is read out similarly to the data period d5 of the CH1 processing slot “0”, and the read pitch control flag f1 is , Stored in the pitch control flag register 11 in synchronization with the CH2 processing slot “1”. Subsequently, in the data period d10 of the CH2 processing slot “2”, the pitch data Pitch is originally read from the channel area CH2 of the RAM 10, but here, the subtraction stored in the data period p3 after the CH1 processing slot “3” is stored. Since the value “2” is held in the pitch register 17, the pitch data Pitch is not read.

CH2処理スロット「3」のデータ期間d11では、CH1処理スロット「5」のデータ期間d8においてRAM10のチャンネルエリアCH0にストアした更新後の現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)を読み出す。さらに、CH2処理スロット「3」のデータ期間sa3では、前回の減算値「2」が最大アドレス歩進値「7」以下である為、減算値(2−0=2)を発生する。   In the data period d11 of the CH2 processing slot “3”, the updated current waveform address AD (the integer part address A and the fractional part waveform address a) stored in the channel area CH0 of the RAM 10 in the data period d8 of the CH1 processing slot “5”. Is read. Further, in the data period sa3 of the CH2 processing slot “3”, since the previous subtraction value “2” is equal to or less than the maximum address step value “7”, a subtraction value (2-0 = 2) is generated.

次に、CH2処理スロット「3」以降のデータ期間p4では、減算値「2」がピッチレジスタ17にストアされる。また、CH2処理スロット「4」に同期したデータ期間a5では、上記データ期間d11にてRAM10から読み出された現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)がADCレジスタ21にストアされる。さらに、CH2処理スロット「4」のデータ期間sb3では、ピッチリミッタ18が出力する減算値「2」と、ADCレジスタ21の現波形アドレスADとが加算器19で加算される。   Next, the subtraction value “2” is stored in the pitch register 17 in the data period p4 after the CH2 processing slot “3”. In the data period a5 synchronized with the CH2 processing slot “4”, the current waveform address AD (integer part address A and fractional part waveform address a) read from the RAM 10 in the data period d11 is stored in the ADC register 21. Is done. Further, in the data period sb3 of the CH2 processing slot “4”, the subtracted value “2” output from the pitch limiter 18 and the current waveform address AD of the ADC register 21 are added by the adder 19.

続いて、CH2処理スロット「5」以降のデータ期間a6では、上記データ期間a5にて更新された現波形アドレスADをADCレジスタ21にストアする一方、CH2処理スロット「5」のデータ期間d12においてADCレジスタ21の値を、セレクタ42を介してRAM10のチャンネルエリアCH0にストアする。これ以後は、前述した第1実施形態と同様の動作によって生成されるチャンネルスロットCH2の波形出力を、チャンネルスロットCH0、CH1の累算波形に加算して出力波形を発生する。   Subsequently, in the data period a6 after the CH2 processing slot “5”, the current waveform address AD updated in the data period a5 is stored in the ADC register 21, while the ADC in the data period d12 of the CH2 processing slot “5”. The value of the register 21 is stored in the channel area CH0 of the RAM 10 via the selector 42. Thereafter, an output waveform is generated by adding the waveform output of the channel slot CH2 generated by the same operation as in the first embodiment to the accumulated waveform of the channel slots CH0 and CH1.

このように、第2実施形態では、再生ピッチの上限を超える旨を表すピッチ制御フラグFを有する発音チャンネルがあると、この発音チャンネルの発音音高(ピッチデータPitch)が再生ピッチの上限に収まるまで最大アドレス歩進値ずつ減少させるのに要する複数のチャンネルスロットを当該発音チャンネルにアサインする。   As described above, in the second embodiment, if there is a sound generation channel having the pitch control flag F indicating that the upper limit of the reproduction pitch is exceeded, the sound pitch (pitch data Pitch) of this sound generation channel falls within the upper limit of the reproduction pitch. A plurality of channel slots required to decrease the maximum address step value by 1 are assigned to the sound generation channel.

そして、これら複数のチャンネルスロットの内、最大アドレス歩進値に制限されたチャンネルスロットでは、その制限された最大アドレス歩進値に基づく差分波形再生により生成される出力波形を発生し、最大アドレス歩進値以下の残余のアドレス歩進値が割当てられたチャンネルスロットでは、その残余のアドレス歩進値に基づく差分波形再生で得られる出力波形を発生し、これら各チャンネルスロットで生成される各出力波形を逐次累算して最終的な出力波形を発生するので、波形アドレス歩進値の制限により決る再生ピッチの上限を超えた楽音波形を発生することが可能になる。   Of the plurality of channel slots, in the channel slot limited to the maximum address step value, an output waveform generated by differential waveform reproduction based on the limited maximum address step value is generated, and the maximum address step value is generated. In a channel slot to which a remaining address step value less than the decimal value is assigned, an output waveform obtained by differential waveform reproduction based on the remaining address step value is generated, and each output waveform generated in each channel slot is generated. Are sequentially accumulated to generate a final output waveform, so that it is possible to generate a tone waveform that exceeds the upper limit of the reproduction pitch determined by the limitation of the waveform address step value.

C.第3実施形態
次に、図12〜図14を参照して第3実施形態について説明する。前述した第1実施形態では、再生ピッチの上限を超える旨を表すピッチ制御フラグFを有する発音チャンネルがあると、当該発音チャンネルにアサインされた先行チャンネルスロットCHと後続するチャンネルスロットCH+1とを1つのチャンネルスロットと見做すようにした。これに対し、第3実施形態では、上述の第1実施形態のように連続する2つのチャンネルスロットに限定せず、連続していない2つのチャンネルスロットを1つのチャンネルスロットと見做して再生ピッチの上限を伸ばすものである。
C. Third Embodiment Next, a third embodiment will be described with reference to FIGS. In the first embodiment described above, if there is a sound generation channel having the pitch control flag F indicating that the upper limit of the reproduction pitch is exceeded, the preceding channel slot CH assigned to the sound generation channel and the subsequent channel slot CH + 1 are combined into one. It was considered as a channel slot. On the other hand, in the third embodiment, the playback pitch is not limited to two continuous channel slots as in the first embodiment described above, and the two consecutive channel slots are regarded as one channel slot. It extends the upper limit of.

図12は、そうした第3実施形態の構成を示すブロック図である。この図において、図1に図示した第1実施形態と共通する構成要素には同一の番号を付し、その説明を省略する。図12に図示する第3実施形態の構成が、第1実施形態と相違する点は、RAM10から読み出されるチャンネルデータCを保持するチャンネルレジスタ300を設けたことにある。図13は、第3実施形態によるRAM10のデータ構成を示す図であり、チャンネルデータC以外は前述した第1実施形態と同一である。   FIG. 12 is a block diagram showing the configuration of the third embodiment. In this figure, the same number is attached | subjected to the same component as 1st Embodiment illustrated in FIG. 1, and the description is abbreviate | omitted. The configuration of the third embodiment shown in FIG. 12 is different from the first embodiment in that a channel register 300 that holds channel data C read from the RAM 10 is provided. FIG. 13 is a diagram showing a data configuration of the RAM 10 according to the third embodiment, and is the same as that of the first embodiment except for the channel data C.

チャンネルデータCは、再生ピッチの上限を超え、ピッチ制御フラグFが「1」となった発音チャンネルにアサインされるチャンネルスロットで行われる差分波形再生の続きを行う他のチャンネルスロットの番号を指定する。RAMコントローラ16は、チャンネルレジスタ300にストアされるチャンネルデータCに従って、連続していない2つのチャンネルスロットを1つのチャンネルスロットと見做すようにアドレス変更する。例えば、RAM10のチャンネルエリアCH0に格納されるピッチ制御フラグFが「1」であって、チャンネルデータCが「15(Fh)」であると、チャンネルスロットCH15の期間中、RAMコントローラ16はRAM10のアドレスを、チャンネルエリアCH0のアドレスに変更する。   The channel data C designates the number of another channel slot that continues the differential waveform reproduction performed in the channel slot assigned to the sound generation channel that exceeds the upper limit of the reproduction pitch and the pitch control flag F is “1”. . The RAM controller 16 changes the address so that two non-consecutive channel slots are regarded as one channel slot according to the channel data C stored in the channel register 300. For example, if the pitch control flag F stored in the channel area CH0 of the RAM 10 is “1” and the channel data C is “15 (Fh)”, the RAM controller 16 is in the RAM 10 during the channel slot CH15. The address is changed to the address of the channel area CH0.

次に、図14に図示するタイミングチャートを参照して第3実施形態の動作について説明する。以下では、RAM10のチャンネルエリアCH0に格納されるピッチ制御フラグFが「1」であって、チャンネルデータCが「15」の場合を想定した動作例を説明する。   Next, the operation of the third embodiment will be described with reference to the timing chart shown in FIG. In the following, an operation example is described assuming that the pitch control flag F stored in the channel area CH0 of the RAM 10 is “1” and the channel data C is “15”.

図14に図示するCH0処理スロット「0」のデータ期間d1において、RAM10のチャンネルエリアCH0からピッチ制御フラグf1(=「1」)およびチャンネルデータC(=「15」)が読み出されたとする。そうすると、ピッチ制御フラグf1がCH0処理スロット「1」に同期してピッチ制御フラグレジスタ11にストアされる一方、チャンネルデータCがチャンネルレジスタ300にストアされる。   Assume that the pitch control flag f1 (= “1”) and the channel data C (= “15”) are read from the channel area CH0 of the RAM 10 in the data period d1 of the CH0 processing slot “0” illustrated in FIG. Then, the pitch control flag f1 is stored in the pitch control flag register 11 in synchronization with the CH0 processing slot “1”, while the channel data C is stored in the channel register 300.

次いで、CH0処理スロット「2」のデータ期間d2では、RAM10のチャンネルエリアCH0からピッチデータPitchが読み出される。読み出されたピッチデータPitchは、CH0処理スロット「3」のデータ期間p1においてピッチレジスタ17にストアされる。CH0処理スロット「3」のデータ期間d3では、RAM10のチャンネルエリアCH0から現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)を読み出す。さらに、CH0処理スロット「3」のデータ期間sa1では、減算器13がピッチデータPitchから判別テーブル12の出力値「7」を減算して減算値を発生する。   Next, in the data period d2 of the CH0 processing slot “2”, the pitch data Pitch is read from the channel area CH0 of the RAM 10. The read pitch data Pitch is stored in the pitch register 17 in the data period p1 of the CH0 processing slot “3”. In the data period d3 of the CH0 processing slot “3”, the current waveform address AD (the integer part address A and the fractional part waveform address a) is read from the channel area CH0 of the RAM 10. Further, in the data period sa1 of the CH0 processing slot “3”, the subtractor 13 subtracts the output value “7” of the discrimination table 12 from the pitch data Pitch to generate a subtraction value.

次に、CH0処理スロット「3」以降のデータ期間p2では、減算値がピッチレジスタ17にストアされる。次に、CH0処理スロット「4」に同期したデータ期間a1では、上記データ期間d3にてRAM10から読み出された現波形アドレスADがADCレジスタ21にストアされる。さらに、CH0処理スロット「4」のデータ期間sb1では、ピッチリミッタ18が出力する制限値「7」と、ADCレジスタ21の現波形アドレスADとが加算器19で加算される。   Next, the subtraction value is stored in the pitch register 17 in the data period p2 after the CH0 processing slot “3”. Next, in the data period a1 synchronized with the CH0 processing slot “4”, the current waveform address AD read from the RAM 10 in the data period d3 is stored in the ADC register 21. Further, in the data period sb1 of the CH0 processing slot “4”, the limit value “7” output from the pitch limiter 18 and the current waveform address AD of the ADC register 21 are added by the adder 19.

続いて、CH0処理スロット「4」以降のデータ期間a2では、上記データ期間a1にて更新された現波形アドレスADをADCレジスタ21にストアする。CH0処理スロット「5」のデータ期間d4では、ADCレジスタ21の値(更新後の現波形アドレスAD)を、セレクタ42を介してRAM10のチャンネルエリアCH0にストアする。これ以後は、前述した第1実施形態と同様の動作によって最大アドレス歩進値に基づく差分波形再生にて出力波形を生成する。   Subsequently, in the data period a2 after the CH0 processing slot “4”, the current waveform address AD updated in the data period a1 is stored in the ADC register 21. In the data period d4 of the CH0 processing slot “5”, the value of the ADC register 21 (updated current waveform address AD) is stored in the channel area CH0 of the RAM 10 via the selector. Thereafter, an output waveform is generated by differential waveform reproduction based on the maximum address step value by the same operation as in the first embodiment described above.

この後、CH15処理スロット「0」のデータ期間d9になると、RAM10のチャンネルエリアCH15からピッチ制御フラグf3が読み出される。ところで、RAM10のチャンネルエリアCH15には、チャンネルスロットCH0において最大アドレス歩進値「7」に制限された後の残余のピッチデータPitchが設定される。この為、RAM10のチャンネルエリアCH15に格納されるピッチ制御フラグf3の値は「0」となる。このピッチ制御フラグf3は、CH15処理スロット「1」に同期してピッチ制御フラグレジスタ11にストアされる。   Thereafter, when the data period d9 of the CH15 processing slot “0” is reached, the pitch control flag f3 is read from the channel area CH15 of the RAM 10. In the channel area CH15 of the RAM 10, the remaining pitch data Pitch after being limited to the maximum address step value “7” in the channel slot CH0 is set. Therefore, the value of the pitch control flag f3 stored in the channel area CH15 of the RAM 10 is “0”. The pitch control flag f3 is stored in the pitch control flag register 11 in synchronization with the CH15 processing slot “1”.

次いで、CH15処理スロット「2」のデータ期間d10では、本来ならば、RAM10のチャンネルエリアCH15からピッチデータPitchを読み出すが、RAMコントローラ16がRAM10のアドレスを、チャンネルエリアCH0のアドレスに変更する為、RAM10のチャンネルエリアCH10から最大アドレス歩進値「7」に制限された後の残余のピッチデータPitchを読み出す。読み出されたピッチデータPitchは、CH15処理スロット「3」以降のデータ期間p4においてピッチレジスタ17にストアされる。   Next, in the data period d10 of the CH15 processing slot “2”, the pitch data Pitch is originally read from the channel area CH15 of the RAM 10, but the RAM controller 16 changes the address of the RAM 10 to the address of the channel area CH0. The remaining pitch data Pitch after being limited to the maximum address step value “7” is read from the channel area CH10 of the RAM 10. The read pitch data Pitch is stored in the pitch register 17 in the data period p4 after the CH15 processing slot “3”.

CH15処理スロット「3」のデータ期間d11では、RAMコントローラ16のアドレス変更によりRAM10のチャンネルエリアCH0から現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)を読み出す。さらに、CH15処理スロット「3」のデータ期間sa3では、減算器13がピッチデータPitchから判別テーブル12の出力値「0」を減算して減算値(Pitch−0)を発生する。   In the data period d11 of the CH15 processing slot “3”, the current waveform address AD (integer part address A and fractional part waveform address a) is read from the channel area CH0 of the RAM 10 by changing the address of the RAM controller 16. Further, in the data period sa3 of the CH15 processing slot “3”, the subtractor 13 subtracts the output value “0” of the discrimination table 12 from the pitch data Pitch to generate a subtraction value (Pitch-0).

次に、CH15処理スロット「4」に同期したデータ期間a5では、上記データ期間d11にてRAM10から読み出された現波形アドレスADがADCレジスタ21にストアされる。さらに、CH15処理スロット「4」のデータ期間sb3では、ピッチリミッタ18からスルー出力される減算値(Pitch−0)と、ADCレジスタ21の現波形アドレスADとが加算器19で加算される。続いて、CH15処理スロット「4」以降のデータ期間a6では、上記データ期間a5にて更新された現波形アドレスADをADCレジスタ21にストアする。   Next, in the data period a5 synchronized with the CH15 processing slot “4”, the current waveform address AD read from the RAM 10 in the data period d11 is stored in the ADC register 21. Further, in the data period sb3 of the CH15 processing slot “4”, the adder 19 adds the subtraction value (Pitch-0) output through from the pitch limiter 18 and the current waveform address AD of the ADC register 21. Subsequently, in the data period a6 after the CH15 processing slot “4”, the current waveform address AD updated in the data period a5 is stored in the ADC register 21.

以後、上述したデータ期間d10およびd11で得た残余のピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)と現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)とに応じて、チャンネルスロットCH15の出力波形を生成し、これをチャンネルスロットCH0の出力波形に累算する。   Thereafter, according to the remaining pitch data Pitch (integer part pitch data P and fractional part pitch data p) obtained in the data periods d10 and d11 described above and the current waveform address AD (integer part address A and fractional part waveform address a). Thus, an output waveform of the channel slot CH15 is generated and accumulated in the output waveform of the channel slot CH0.

以上のように、第3実施形態では、発音チャンネルCH0〜CH63に対応したRAM10のチャンネルエリアCH0〜CH63毎に、発音音高が再生ピッチの上限を超えるか否かを表すピッチ制御フラグFと、ピッチ制御フラグFが「1」となった発音チャンネルにアサインされるチャンネルスロットで行われる差分波形再生の続きを行う他のチャンネルスロットの番号を指定するチャンネルデータCとを設けておき、再生ピッチの上限を超える旨を表すピッチ制御フラグFを有する発音チャンネルがあると、当該発音チャンネルにアサインされた第1のチャンネルスロットとチャンネルデータCで指定される第2のチャンネルスロットとを実質的に1つのチャンネルスロットと見做す。   As described above, in the third embodiment, for each channel area CH0 to CH63 of the RAM 10 corresponding to the sound generation channels CH0 to CH63, the pitch control flag F indicating whether the sound generation pitch exceeds the upper limit of the reproduction pitch, Channel data C for designating the number of another channel slot for continuing the differential waveform reproduction performed in the channel slot assigned to the sound generation channel for which the pitch control flag F is “1” is provided, and the reproduction pitch is set. When there is a sound generation channel having a pitch control flag F indicating that the upper limit is exceeded, the first channel slot assigned to the sound generation channel and the second channel slot specified by the channel data C are substantially one. Think of it as a channel slot.

そして、第1のチャンネルスロットでは、ピッチデータPitchを最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生により第1の出力波形を発生した後、第2のチャンネルスロットでは、ピッチデータPitchから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の出力波形に上記第1の出力波形を加えて最終的な出力波形を発生するので、波形アドレス歩進値の制限により決る再生ピッチの上限を超えた楽音波形を発生することが可能になっている。   Then, in the first channel slot, the pitch data Pitch is limited to the maximum address step value, and after the first output waveform is generated by the differential waveform reproduction based on the limited maximum address step value, In the channel slot, the final output waveform is obtained by adding the first output waveform to the second output waveform obtained by differential waveform reproduction based on the remaining address step value obtained by subtracting the maximum address step value from the pitch data Pitch. Therefore, it is possible to generate a tone waveform that exceeds the upper limit of the reproduction pitch determined by the limit of the waveform address step value.

なお、前述した第1〜第3実施形態は、いずれもハードウェアで構成される波形発生装置として説明したが、本発明の主旨はハードウェアに限定されものではなく、その機能をソフトウェアで具現する場合であっても勿論適用可能であることは言うまでもない。   In the first to third embodiments described above, the waveform generation apparatus is configured by hardware. However, the gist of the present invention is not limited to hardware, and the function is implemented by software. Needless to say, this is applicable even in cases.

本発明による第1実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 1st Embodiment by this invention. 基本クロックck、クロックmc[3:0]およびクロックmc[9:4]の対応関係を示す図である。It is a figure which shows the correspondence of basic clock ck, clock mc [3: 0], and clock mc [9: 4]. 第1実施形態におけるRAM10のデータ構成を示すメモリマップである。It is a memory map which shows the data structure of RAM10 in 1st Embodiment. 波形メモリ30のデータ構造を示すメモリマップである。3 is a memory map showing a data structure of a waveform memory 30. ADC LSBレジスタ22の値が「1」の場合における積分演算パターンを説明するための図である。It is a figure for demonstrating the integral calculation pattern in case the value of the ADC LSB register | resistor 22 is "1". ADC LSBレジスタ22の値が「0」の場合における積分演算パターンを説明するための図である。It is a figure for demonstrating the integral calculation pattern in case the value of the ADC LSB register | resistor 22 is "0". 第1実施形態の動作を説明するためのタイムチャートである。It is a time chart for demonstrating operation | movement of 1st Embodiment. 第1実施形態の動作を説明するためのタイムチャートである。It is a time chart for demonstrating operation | movement of 1st Embodiment. 第2実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 2nd Embodiment. 第2実施形態の動作を説明するためのタイムチャートである。It is a time chart for demonstrating operation | movement of 2nd Embodiment. 第2実施形態の動作を説明するためのタイムチャートである。It is a time chart for demonstrating operation | movement of 2nd Embodiment. 第3実施形態の構成を示すブロック図である。It is a block diagram which shows the structure of 3rd Embodiment. 第3実施形態におけるRAM10のデータ構成を示すメモリマップである。It is a memory map which shows the data structure of RAM10 in 3rd Embodiment. 第2実施形態の動作を説明するためのタイムチャートである。It is a time chart for demonstrating operation | movement of 2nd Embodiment.

符号の説明Explanation of symbols

10 RAM
11 ピッチ制御フラグレジスタ
12 判別テーブル
13 減算器
14、37 コントローラ
15、20、27、31、40、42、46、51 セレクタ
16 RAMコントローラ
17 ピッチレジスタ
18 ピッチリミッタ
19、23、26、38、50 加算器
21 ADCレジスタ
22 ADC LSBレジスタ
24 STEPレジスタ
25 退避レジスタ
28 WADRレジスタ
29 インクリメンタ
30 波形メモリ
32〜35 DW0〜DW3レジスタ
36 セレクタ/シフタ
39 Eレジスタ
41 Xレジスタ
43 VOLレジスタ
44 ADC decレジスタ
45、49 乗算器
47 加減算器
48 Yレジスタ
52 Mレジスタ
10 RAM
11 Pitch control flag register 12 Discrimination table 13 Subtractor 14, 37 Controller 15, 20, 27, 31, 40, 42, 46, 51 Selector 16 RAM controller 17 Pitch register 18 Pitch limiter 19, 23, 26, 38, 50 Addition Device 21 ADC register 22 ADC LSB register 24 STEP register 25 Save register 28 WADR register 29 Incrementer 30 Waveform memory 32 to 35 DW0 to DW3 register 36 Selector / shifter 39 E register 41 X register 43 VOL register 44 ADC dec register 45, 49 Multiplier 47 Adder / Subtractor 48 Y register 52 M register

Claims (6)

時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置において、
再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別手段と、
前記判別手段によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、当該発音チャンネルに対応する先行チャンネルスロットとこれに続く後続チャンネルスロットとを指定するスロット指定手段と、
前記スロット指定手段により指定された先行チャンネルスロットにおいて、発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生する第1の波形発生手段と、
前記スロット指定手段により指定された後続チャンネルスロットにおいて、発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、前記第1の波形発生手段が発生した第1の波形出力を加算して楽音波形を形成する第2の波形発生手段と
を具備することを特徴とする波形発生装置。
In a waveform generator that forms a musical sound waveform by reproducing a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation,
A discriminating means for discriminating whether or not the tone generation channel is assigned a tone pitch exceeding the upper limit of the playback pitch;
A slot designating unit for designating a preceding channel slot corresponding to the sounding channel and a subsequent channel slot when the sounding channel is assigned with a sounding pitch exceeding the upper limit of the reproduction pitch by the determining unit;
In the preceding channel slot designated by the slot designating means, the tone generation pitch is limited to the maximum address step value which is the upper limit of the reproduction pitch, and the first difference waveform is reproduced based on the limited maximum address step value. First waveform generating means for generating a waveform output;
In the subsequent channel slot designated by the slot designating means, the second waveform output obtained by differential waveform reproduction based on the remaining address step value obtained by subtracting the maximum address step value from the tone generation pitch is used as the first waveform. A waveform generator comprising: a second waveform generator configured to add a first waveform output generated by the generator to form a musical sound waveform.
時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置において、
再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別手段と、
前記判別手段によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、発音ピッチが再生ピッチの上限に収まるまで最大アドレス歩進値ずつ減少させるのに要する複数のチャンネルスロットを当該発音チャンネルに割当てるスロット割当て手段と、
前記スロット割当て手段により割当てられた複数のチャンネルスロットの内、最大アドレス歩進値に制限されたチャンネルスロットでは、その制限された最大アドレス歩進値に基づく差分波形再生にて波形出力を発生し、最大アドレス歩進値以下の残余のアドレス歩進値が割当てられたチャンネルスロットでは、その残余のアドレス歩進値に基づく差分波形再生で得られる波形出力を発生し、これら各チャンネルスロットで生成される各波形出力を累算して楽音波形を形成する波形発生手段と
を具備することを特徴とする波形発生装置。
In a waveform generator that forms a musical sound waveform by reproducing a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation,
A discriminating means for discriminating whether or not the tone generation channel is assigned a tone pitch exceeding the upper limit of the playback pitch;
A plurality of channel slots required to decrease the maximum address step value until the sound generation pitch falls within the upper limit of the reproduction pitch when the determination means determines that the sound generation channel is assigned with the sound generation pitch exceeding the upper limit of the reproduction pitch. Slot assigning means for assigning to the sound channel;
Among the plurality of channel slots assigned by the slot assigning means, in the channel slot restricted to the maximum address step value, a waveform output is generated by differential waveform reproduction based on the restricted maximum address step value, In the channel slot to which the remaining address step value less than or equal to the maximum address step value is assigned, a waveform output obtained by differential waveform reproduction based on the remaining address step value is generated and generated in each of these channel slots. And a waveform generating means for accumulating each waveform output to form a musical sound waveform.
時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置において、
再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別手段と、
前記判別手段によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、当該発音チャンネルに対応する第1のチャンネルスロットと、当該第1チャンネルスロットで行われる差分波形再生の続きを行う第2のチャンネルスロットとを指定するスロット指定手段と、
前記スロット指定手段が指定する第1のチャンネルスロットにおいて、発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生する第1の波形発生手段と、
前記スロット指定手段が指定する第2のチャンネルスロットにおいて、発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、前記第1の波形発生手段が発生した第1の波形出力を加算して楽音波形を形成する第2の波形発生手段と
を具備することを特徴とする波形発生装置。
In a waveform generator that forms a musical sound waveform by reproducing a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation,
A discriminating means for discriminating whether or not the tone generation channel is assigned a tone pitch exceeding the upper limit of the playback pitch;
When it is determined that the sound generation channel is assigned a sound generation pitch exceeding the upper limit of the playback pitch by the determination means, the first channel slot corresponding to the sound generation channel and the differential waveform reproduction performed in the first channel slot are performed. Slot designation means for designating a second channel slot to be continued;
In the first channel slot designated by the slot designating means, the tone generation pitch is limited to the maximum address step value which is the upper limit of the playback pitch, and the first is performed by differential waveform playback based on the limited maximum address step value. First waveform generating means for generating a waveform output of
In the second channel slot designated by the slot designating means, the second waveform output obtained by the differential waveform reproduction based on the remaining address step value obtained by subtracting the maximum address step value from the tone generation pitch is used as the first waveform output. A waveform generator comprising: a second waveform generator configured to add a first waveform output generated by the waveform generator to form a musical sound waveform.
時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置で実行されるプログラムであって、
再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別処理と、
前記判別処理によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、当該発音チャンネルに対応する先行チャンネルスロットとこれに続く後続チャンネルスロットとを指定するスロット指定処理と、
前記スロット指定処理により指定された先行チャンネルスロットにおいて、発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生する第1の波形発生処理と、
前記スロット指定処理により指定された後続チャンネルスロットにおいて、発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、前記第1の波形発生処理が発生した第1の波形出力を加算して楽音波形を形成する第2の波形発生処理と
を具備することを特徴とする波形発生処理プログラム。
A program executed by a waveform generator that reproduces a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation to form a musical sound waveform,
A determination process for determining whether or not the sound generation channel is assigned a sound generation pitch that exceeds the upper limit of the playback pitch;
A slot designating process for designating a preceding channel slot corresponding to the sounding channel and a subsequent channel slot when the sounding channel is assigned with a sounding pitch exceeding the upper limit of the reproduction pitch by the determining process;
In the preceding channel slot designated by the slot designation process, the tone generation pitch is limited to the maximum address step value that is the upper limit of the reproduction pitch, and the first difference waveform is reproduced based on the limited maximum address step value. A first waveform generation process for generating a waveform output;
In the subsequent channel slot designated by the slot designation process, the first waveform is output to the second waveform output obtained by the differential waveform reproduction based on the remaining address step value obtained by subtracting the maximum address step value from the tone generation pitch. A waveform generation processing program comprising: a second waveform generation process for forming a musical sound waveform by adding the first waveform outputs generated by the generation process.
時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置で実行されるプログラムであって、
再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別処理と、
前記判別処理によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、発音ピッチが再生ピッチの上限に収まるまで最大アドレス歩進値ずつ減少させるのに要する複数のチャンネルスロットを当該発音チャンネルに割当てるスロット割当て処理と、
前記スロット割当て処理により割当てられた複数のチャンネルスロットの内、最大アドレス歩進値に制限されたチャンネルスロットでは、その制限された最大アドレス歩進値に基づく差分波形再生にて波形出力を発生し、最大アドレス歩進値以下の残余のアドレス歩進値が割当てられたチャンネルスロットでは、その残余のアドレス歩進値に基づく差分波形再生で得られる波形出力を発生し、これら各チャンネルスロットで生成される各波形出力を累算して楽音波形を形成する波形発生処理と
を具備することを特徴とする波形発生処理プログラム。
A program executed by a waveform generator that reproduces a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation to form a musical sound waveform,
A determination process for determining whether or not the sound generation channel is assigned a sound generation pitch that exceeds the upper limit of the playback pitch;
A plurality of channel slots required for decreasing the maximum address step value until the sound generation pitch falls within the upper limit of the reproduction pitch when it is determined by the determination process that the sound generation channel is assigned with the sound generation pitch exceeding the upper limit of the reproduction pitch. Slot assignment processing for assigning to the sound channel;
Among the plurality of channel slots allocated by the slot allocation process, in the channel slot limited to the maximum address step value, a waveform output is generated by differential waveform reproduction based on the limited maximum address step value, In the channel slot to which the remaining address step value less than or equal to the maximum address step value is assigned, a waveform output obtained by differential waveform reproduction based on the remaining address step value is generated and generated in each of these channel slots. A waveform generation processing program comprising: waveform generation processing for accumulating each waveform output to form a musical sound waveform.
時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に差分波形再生して楽音波形を形成する波形発生装置で実行されるプログラムであって、
再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルであるか否かを判別する判別処理と、
前記判別処理によって再生ピッチの上限を超える発音ピッチが割当てられた発音チャンネルと判別された場合に、当該発音チャンネルに対応する第1のチャンネルスロットと、当該第1チャンネルスロットで行われる差分波形再生の続きを行う第2のチャンネルスロットとを指定するスロット指定処理と、
前記スロット指定処理が指定する第1のチャンネルスロットにおいて、発音ピッチを再生ピッチの上限となる最大アドレス歩進値に制限し、その制限された最大アドレス歩進値に基づく差分波形再生にて第1の波形出力を発生する第1の波形発生処理と、
前記スロット指定処理が指定する第2のチャンネルスロットにおいて、発音ピッチから最大アドレス歩進値を減算した残余のアドレス歩進値に基づく差分波形再生で得られる第2の波形出力に、前記第1の波形発生手段が発生した第1の波形出力を加算して楽音波形を形成する第2の波形発生処理と
を具備することを特徴とする波形発生処理プログラム。
A program executed by a waveform generator that reproduces a differential waveform for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation to form a musical sound waveform,
A determination process for determining whether or not the sound generation channel is assigned a sound generation pitch that exceeds the upper limit of the playback pitch;
When it is determined by the determination process that the sound generation channel is assigned a sound generation pitch exceeding the upper limit of the reproduction pitch, the first channel slot corresponding to the sound generation channel and the difference waveform reproduction performed in the first channel slot are performed. Slot designation processing for designating a second channel slot to be continued;
In the first channel slot designated by the slot designation process, the tone generation pitch is limited to the maximum address step value that is the upper limit of the reproduction pitch, and the first difference waveform is reproduced based on the limited maximum address step value. A first waveform generation process for generating a waveform output of
In the second channel slot designated by the slot designation process, the second waveform output obtained by the differential waveform reproduction based on the remaining address step value obtained by subtracting the maximum address step value from the tone generation pitch is used as the first waveform output. A waveform generation processing program comprising: a second waveform generation process for adding a first waveform output generated by the waveform generation means to form a musical sound waveform.
JP2006219174A 2006-08-11 2006-08-11 Waveform generator Expired - Fee Related JP4656326B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006219174A JP4656326B2 (en) 2006-08-11 2006-08-11 Waveform generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006219174A JP4656326B2 (en) 2006-08-11 2006-08-11 Waveform generator

Publications (2)

Publication Number Publication Date
JP2008046175A true JP2008046175A (en) 2008-02-28
JP4656326B2 JP4656326B2 (en) 2011-03-23

Family

ID=39180005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006219174A Expired - Fee Related JP4656326B2 (en) 2006-08-11 2006-08-11 Waveform generator

Country Status (1)

Country Link
JP (1) JP4656326B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009265546A (en) * 2008-04-30 2009-11-12 Casio Comput Co Ltd Waveform generator and waveform generation processing program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05273978A (en) * 1992-03-30 1993-10-22 Casio Comput Co Ltd Waveform data reader
JPH06186976A (en) * 1992-12-22 1994-07-08 Casio Comput Co Ltd Waveform data output device
JPH06202666A (en) * 1992-12-26 1994-07-22 Yamaha Corp Waveform generating device and waveform storage device
JPH09198049A (en) * 1996-01-24 1997-07-31 Matsushita Electric Ind Co Ltd Musical sound synthesizing device
JP2000293178A (en) * 1999-04-12 2000-10-20 Korg Inc Encoding device and decoding device for musical sound signal
JP2005266552A (en) * 2004-03-19 2005-09-29 Kawai Musical Instr Mfg Co Ltd Waveform data output apparatus

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05273978A (en) * 1992-03-30 1993-10-22 Casio Comput Co Ltd Waveform data reader
JPH06186976A (en) * 1992-12-22 1994-07-08 Casio Comput Co Ltd Waveform data output device
JPH06202666A (en) * 1992-12-26 1994-07-22 Yamaha Corp Waveform generating device and waveform storage device
JPH09198049A (en) * 1996-01-24 1997-07-31 Matsushita Electric Ind Co Ltd Musical sound synthesizing device
JP2000293178A (en) * 1999-04-12 2000-10-20 Korg Inc Encoding device and decoding device for musical sound signal
JP2005266552A (en) * 2004-03-19 2005-09-29 Kawai Musical Instr Mfg Co Ltd Waveform data output apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009265546A (en) * 2008-04-30 2009-11-12 Casio Comput Co Ltd Waveform generator and waveform generation processing program

Also Published As

Publication number Publication date
JP4656326B2 (en) 2011-03-23

Similar Documents

Publication Publication Date Title
US4719833A (en) Tone signal generation device with interpolation of sample points
EP0454047B1 (en) Tone waveform generation apparatus
JP3175179B2 (en) Digital pitch shifter
JPS6223319B2 (en)
JP2567717B2 (en) Musical sound generator
USRE33558E (en) Electronic musical instrument forming tone waveforms
JPS6242515B2 (en)
JP4656326B2 (en) Waveform generator
US5290965A (en) Asynchronous waveform generating device for use in an electronic musical instrument
JP5104522B2 (en) Waveform generator and waveform generation processing program
JP2608938B2 (en) Waveform interpolation device
JP3435702B2 (en) Music generator
US5639978A (en) Musical tone signal generating apparatus for electronic musical instrument
JP4095206B2 (en) Waveform generating method and apparatus
JP4179243B2 (en) Waveform generator and program
JP3223555B2 (en) Waveform reading device
JPH0369119B2 (en)
JP2814939B2 (en) Waveform processing device
JP3288500B2 (en) Musical instrument for electronic musical instruments
JP2944069B2 (en) Music signal generator
JP3221987B2 (en) Delay time modulation effect device
JP2897680B2 (en) Music signal generator
JP2907051B2 (en) Apparatus and method for generating waveform
JP2962539B2 (en) Music sound generation apparatus and music sound generation method
JP2008070408A (en) Touch response detecting apparatus and electronic musical instrument

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100805

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100916

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101214

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

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4656326

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees