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

Waveform generator and waveform generation processing program Download PDF

Info

Publication number
JP2009265546A
JP2009265546A JP2008118145A JP2008118145A JP2009265546A JP 2009265546 A JP2009265546 A JP 2009265546A JP 2008118145 A JP2008118145 A JP 2008118145A JP 2008118145 A JP2008118145 A JP 2008118145A JP 2009265546 A JP2009265546 A JP 2009265546A
Authority
JP
Japan
Prior art keywords
pitch
data
waveform
limit
playback
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
JP2008118145A
Other languages
Japanese (ja)
Other versions
JP5104522B2 (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 JP2008118145A priority Critical patent/JP5104522B2/en
Publication of JP2009265546A publication Critical patent/JP2009265546A/en
Application granted granted Critical
Publication of JP5104522B2 publication Critical patent/JP5104522B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To attain a waveform generator preventing unnatural sound from being generated when an instruction is made to generate sound exceeding a maximum reproduction pitch. <P>SOLUTION: In a reproduction pitch limit circuit 10, when pitch data Pitch read out from a RAM 200 exceeds pitch limit data PL, the pitch data Pitch is shifted by octave to be a value not to exceed the pitch limit data PL. The sound pitch is lowered by a unit of octave to be equal to or below the pitch limit data PL while maintaining a pitch name of the reproduction pitch predetermined by the pitch data Pitch, so that the unnaturalness such as a sound interruption and sound delay can be avoided, which are caused when an instruction is made to generate the sound exceeding a maximum reproduction pitch (the reproduction pitch corresponding to a maximum address stepping value). <P>COPYRIGHT: (C)2010,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つの発音チャンネルに割当てられる処理スロットの期間が短い。そうした音源に、差分波形に基づき楽音波形を生成する波形発生装置を搭載した場合、時分割動作する1つの処理スロット期間中に波形メモリから差分波形データを読み出す回数が制限される。波形読み出し回数の制限は、波形アドレス歩進値の制限となる。したがって、最大再生ピッチ(最大アドレス歩進値に対応した再生ピッチ)を超える発音が指示されると、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. When 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 during one processing slot period in which time division operation is performed is limited. The limitation on the number of waveform readouts is a limitation on the waveform address step value. Therefore, if a sound generation exceeding the maximum reproduction pitch (reproduction pitch corresponding to the maximum address step value) is instructed, the waveform address cannot be stepped up to a desired value within one processing slot period. For example, there is a risk that unnatural musical sounds such as sound interruptions and pronunciation delays may occur.

本発明は、このような事情に鑑みてなされたもので、最大再生ピッチを超える発音が指示された場合の不自然さを回避することができる波形発生装置および波形発生処理プログラムを提供することを目的としている。   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 avoiding unnaturalness when a pronunciation exceeding the maximum reproduction pitch is instructed. It is aimed.

上記目的を達成するため、請求項1に記載の発明では、再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを大小比較する比較手段と、前記比較手段によりピッチデータがピッチ制限データより大きいと判断された場合に、ピッチ制限データを超えない値になるまでピッチデータをオクターブシフトして出力する再生ピッチ制限手段と、前記再生ピッチ制限手段から出力されるピッチデータに基づく差分波形再生にて波形発生する波形発生手段とを具備することを特徴とする。   In order to achieve the above object, according to the first aspect of the present invention, the comparison means for comparing the size of the pitch data representing the reproduction pitch with the pitch limit data for designating the upper limit of the reproduction pitch, and the pitch data by the comparison means. When it is determined that the pitch limit data is larger than the pitch limit data, the playback pitch limit means outputs the pitch data by octave shifting until the value does not exceed the pitch limit data, and the pitch data output from the playback pitch limit means Waveform generating means for generating a waveform by differential waveform reproduction.

上記請求項1に従属する請求項2に記載の発明では、前記再生ピッチ制限手段は、前記比較手段によりピッチデータがピッチ制限データより小さいと判断された場合に、ピッチデータをそのまま出力することを特徴とする。   In the invention according to claim 2 subordinate to claim 1, the reproduction pitch limit means outputs the pitch data as it is when the comparison means determines that the pitch data is smaller than the pitch limit data. Features.

上記請求項1に従属する請求項3に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを記憶する記憶手段を更に備え、前記比較手段は、処理すべきチャンネルスロット毎に、前記記憶手段から対応するピッチデータとピッチ制限データとを読み出して大小比較することを特徴とする。   In the invention according to claim 3, which is dependent on claim 1, pitch data representing a reproduction pitch and pitch limit data designating an upper limit of the reproduction pitch are provided for each channel slot corresponding to a plurality of sound generation channels performing time-division operation. Is further provided, and the comparison means reads out the corresponding pitch data and pitch limit data from the storage means for each channel slot to be processed, and compares the magnitudes.

上記請求項1に従属する請求項4に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロットの全てに共通したピッチ制限データを記憶するピッチ制限データ記憶手段と、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータを記憶するピッチデータ記憶手段とを更に備え、前記比較手段は、処理すべきチャンネルスロットに対応して前記ピッチデータ記憶手段から読み出されるピッチデータと、前記ピッチ制限データ記憶手段から読み出される、全てのチャンネルスロットに共通のピッチ制限データとを大小比較することを特徴とする。   In the invention according to claim 4 subordinate to claim 1, pitch limit data storage means for storing pitch limit data common to all channel slots corresponding to a plurality of sound generation channels that perform time division operation, and time division operation Pitch data storage means for storing pitch data representing a reproduction pitch for each channel slot corresponding to a plurality of sound generation channels, and the comparing means corresponds to the pitch data storage means corresponding to the channel slot to be processed. Is compared with the pitch limit data common to all channel slots read from the pitch limit data storage means.

請求項5に記載の発明では、再生ピッチを表すピッチデータが、再生ピッチの上限を指定するピッチ制限データに対応した再生ピッチ上限値を超えた場合に、その再生ピッチ上限値をピッチデータとして出力する再生ピッチ制限手段と、前記再生ピッチ制限手段から出力されるピッチデータに基づく差分波形再生にて波形発生する波形発生手段とを具備することを特徴とする。   According to the fifth aspect of the present invention, when the pitch data representing the playback pitch exceeds the playback pitch upper limit value corresponding to the pitch limit data specifying the upper limit of the playback pitch, the playback pitch upper limit value is output as pitch data. And a waveform generating means for generating a waveform by differential waveform reproduction based on the pitch data output from the reproduction pitch limiting means.

上記請求項5に従属する請求項6に記載の発明では、前記再生ピッチ制限手段は、ピッチデータが再生ピッチ上限値より小さい場合に、ピッチデータをそのまま出力することを特徴とする。   The invention according to claim 6 that is dependent on claim 5 is characterized in that the reproduction pitch limiting means outputs the pitch data as it is when the pitch data is smaller than the reproduction pitch upper limit value.

上記請求項5に従属する請求項7に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを記憶する記憶手段を更に備え、前記再生ピッチ制限手段は、処理すべきチャンネルスロット毎に、前記記憶手段から対応するピッチデータとピッチ制限データとを読み出し、ピッチデータが再生ピッチの上限を指定するピッチ制限データに対応した再生ピッチ上限値を超えた場合に、その再生ピッチ上限値をピッチデータとして出力することを特徴とする。   In the invention according to claim 7, which is dependent on claim 5, pitch data representing a reproduction pitch and pitch limit data designating an upper limit of the reproduction pitch are provided for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation. For each channel slot to be processed, the corresponding pitch data and pitch limit data are read from the storage means, and the pitch data specifies the upper limit of the playback pitch. When the playback pitch upper limit value corresponding to the pitch limit data to be exceeded is exceeded, the playback pitch upper limit value is output as pitch data.

上記請求項5に従属する請求項8に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロットの全てに共通したピッチ制限データを記憶するピッチ制限データ記憶手段と、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータを記憶するピッチデータ記憶手段とを更に備え、前記再生ピッチ制限手段は、処理すべきチャンネルスロットに対応して前記ピッチデータ記憶手段から読み出されるピッチデータが、前記ピッチ制限データ記憶手段から読み出される全てのチャンネルスロットに共通のピッチ制限データに対応した再生ピッチ上限値を超えた場合に、その再生ピッチ上限値をピッチデータとして出力することを特徴とする。   In the invention according to claim 8, which is dependent on claim 5, pitch limit data storage means for storing pitch limit data common to all channel slots corresponding to a plurality of sound generation channels that perform time division operation, and time division operation Pitch data storage means for storing pitch data representing a playback pitch for each channel slot corresponding to a plurality of tone generation channels, wherein the playback pitch limiting means corresponds to the pitch data corresponding to the channel slot to be processed. When the pitch data read from the storage means exceeds the playback pitch upper limit value corresponding to the pitch limit data common to all channel slots read from the pitch limit data storage means, the playback pitch upper limit value is used as the pitch data. It is characterized by outputting.

請求項9に記載の発明では、再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを大小比較する比較処理と、前記比較処理によりピッチデータがピッチ制限データより大きいと判断された場合には、ピッチ制限データを超えない値になるまでピッチデータをオクターブシフトして出力する再生ピッチ制限処理と、前記再生ピッチ制限処理にて出力されるピッチデータに基づく差分波形再生にて波形発生する波形発生処理とを具備することを特徴とする。   According to the ninth aspect of the present invention, it is determined that the pitch data representing the playback pitch is compared with the pitch limit data specifying the upper limit of the playback pitch, and that the pitch data is larger than the pitch limit data by the comparison process. In this case, a playback pitch limit process for outputting the pitch data by octave shifting until the value does not exceed the pitch limit data, and a differential waveform playback based on the pitch data output by the playback pitch limit process. And a waveform generation process for generating a waveform.

請求項10に記載の発明では、再生ピッチを表すピッチデータが、再生ピッチの上限を指定するピッチ制限データに対応した再生ピッチ上限値を超えた場合には、その再生ピッチ上限値をピッチデータとして出力する再生ピッチ制限処理と、前記再生ピッチ制限処理にて出力されるピッチデータに基づく差分波形再生にて波形発生する波形発生処理とを具備することを特徴とする。 In the invention according to claim 10, when the pitch data representing the playback pitch exceeds the playback pitch upper limit value corresponding to the pitch limit data specifying the upper limit of the playback pitch, the playback pitch upper limit value is used as the pitch data. A playback pitch limiting process to be output; and a waveform generation process to generate a waveform by differential waveform playback based on the pitch data output by the playback pitch limiting process.

本発明では、最大再生ピッチを超える発音が指示された場合の不自然さを回避することができる。   In the present invention, it is possible to avoid unnaturalness when a pronunciation that exceeds the maximum reproduction pitch is instructed.

以下、図面を参照して本発明の実施の形態について説明する。
[第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.
[First Embodiment]
(1) Configuration FIG. 1 is a block diagram showing the main configuration of 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(0)」〜「Fh(15)」に分割する。こうしたクロックmc[9:4]およびクロックmc[3:0]に基づき、図1に図示する波形発生装置の各構成要素の動作タイミングが制御される。   The clock mc [3: 0] divides one channel slot CH formed by the clock mc [9: 4] into 16 processing slots “0h (0)” to “Fh (15)”. 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において、RAM200は、波形発生装置のワークメモリとして用いられる。RAM200は、図3に図示するように、音源が備える64個の発音チャンネルに各々対応付けられたチャンネルエリアCH0〜CH63を備える。これらチャンネルエリアCH0〜CH63におけるデータ読み出し/書き込みは、上述したクロックmc[3:0]が形成する処理スロットに同期して行われ、その読み出し/書き込み動作は制御部300によって指示される。   In FIG. 1, a RAM 200 is used as a work memory of the waveform generator. As shown in FIG. 3, the RAM 200 includes channel areas CH <b> 0 to CH <b> 63 respectively associated with the 64 sound generation channels included in the sound source. Data read / write in these channel areas CH0 to CH63 is performed in synchronization with the processing slot formed by the above-described clock mc [3: 0], and the read / write operation is instructed by the control unit 300.

RAM200の各チャンネルエリアCH0〜CH63には、整数部アドレスA、小数部アドレスa、整数部ピッチデータP、小数部ピッチデータp、整数部ピッチ制限データQ、小数部ピッチ制限データqおよび波高値Wが格納される。16ビットの整数部アドレスAと16ビットの小数部アドレスaとは、現在の波形アドレス(現在指定している差分波形の位相)を表す。整数部アドレスAおよび小数部波形アドレスaを現波形アドレスADと総称する。   In each channel area CH0 to CH63 of the RAM 200, an integer part address A, a fraction part address a, an integer part pitch data P, a fraction part pitch data p, an integer part pitch limit data Q, a fraction part pitch limit data q, and a peak value W Is stored. The 16-bit integer part address A and the 16-bit 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.

3ビットの整数部ピッチデータPと16ビットの小数部ピッチデータpとは、再生ピッチ(発音音高)に対応したアドレス歩進値を表す。整数部ピッチデータPおよび小数部ピッチデータpをピッチデータPitchと総称する。19ビット長のピッチデータPitch[18:0]は、「10000h」の場合に原音ピッチ再生を、「08000h」の場合に発音音高が原音ピッチの半分となる1/2ピッチ再生を、「20000h」の場合に発音音高が原音ピッチの2倍となる+1オクターブ再生をそれぞれ指定する。 The 3-bit integer part pitch data P and the 16-bit fractional part pitch data p represent address step values corresponding to the reproduction pitch (sounding pitch). The integer part pitch data P and the fractional part pitch data p are collectively referred to as pitch data Pitch. The 19-bit length pitch data Pitch [18: 0] is “10000h” for the original sound pitch reproduction, and “08000h” is the 1/2 pitch reproduction for which the pitch is half the original sound pitch. ”Designates +1 octave reproduction in which the pitch of the pronunciation is twice the original pitch.

整数部ピッチ制限データQおよび小数部ピッチ制限データqは、ピッチデータPitchと同様に19ビット長のデータであり、再生ピッチ(発音音高)の上限を指定する。整数部ピッチ制限データQおよび小数部ピッチ制限データqをピッチ制限データPLと総称する。16ビットの波高値Wは、更新前の現波形アドレスADに対応して差分波形データが積分された波高値である。 Like the pitch data Pitch, the integer part pitch limit data Q and the fractional part pitch limit data q are 19-bit data, and specify the upper limit of the playback pitch (sounding pitch). The integer part pitch limit data Q and the fractional part pitch limit data q are collectively referred to as pitch limit data PL. The 16-bit peak value W is a peak value obtained by integrating the differential waveform data corresponding to the current waveform address AD before update.

再生ピッチ制限回路10は、ピッチ制限レジスタ11、比較器12、シフト制御部13、セレクタ14およびピッチレジスタ15から構成される。ピッチ制限レジスタ11には、制御部300の読み出し指示に従ってRAM200から読み出されるピッチ制限データPL(整数部ピッチ制限データQおよび小数部ピッチ制限データq)がストアされる。ピッチレジスタ15には、セレクタ14を介して、RAM200から読み出されるピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)あるいはシフト制御部13から出力されるピッチデータPitchのいずれかがストアされる。 The reproduction pitch limit circuit 10 includes a pitch limit register 11, a comparator 12, a shift control unit 13, a selector 14, and a pitch register 15. The pitch limit register 11 stores pitch limit data PL (integer part pitch limit data Q and fractional part pitch limit data q) read from the RAM 200 in accordance with a read instruction from the control unit 300. The pitch register 15 stores either pitch data Pitch (integer part pitch data P and fractional part pitch data p) read from the RAM 200 or pitch data Pitch output from the shift control unit 13 via the selector 14. The

比較器12は、ピッチ制限レジスタ11にストアされるピッチ制限データPLと、ピッチレジスタ15にストアされるピッチデータPitchとを比較し、ピッチデータPitchがピッチ制限データPLより大きい場合にシフト指示信号を発生する。シフト制御部13は、比較器12からシフト指示信号が供給された場合には、ピッチレジスタ15にストアされるピッチデータPitchを1ビット右シフト(−1オクターブシフト)して出力し、一方、比較器12からシフト指示信号が供給されなければ、ピッチレジスタ15にストアされるピッチデータPitchをスルー出力する。セレクタ14は、制御部300からの切り替え指示に応じて、RAM200から読み出されるピッチデータPitchあるいはシフト制御部13から出力されるピッチデータPitchのいずれかを選択して出力する。   The comparator 12 compares the pitch limit data PL stored in the pitch limit register 11 with the pitch data Pitch stored in the pitch register 15, and if the pitch data Pitch is larger than the pitch limit data PL, the comparator 12 outputs a shift instruction signal. appear. When the shift instruction signal is supplied from the comparator 12, the shift control unit 13 shifts the pitch data Pitch stored in the pitch register 15 by 1 bit to the right (-1 octave shift), and outputs it. If no shift instruction signal is supplied from the device 12, the pitch data Pitch stored in the pitch register 15 is output through. The selector 14 selects and outputs either the pitch data Pitch read from the RAM 200 or the pitch data Pitch output from the shift control unit 13 in response to a switching instruction from the control unit 300.

このように、再生ピッチ制限回路10では、RAM200から読み出されるピッチデータPitchがピッチ制限データPLを超えると、当該ピッチ制限データPLを超えない値になるまでピッチデータPitchをオクターブシフトする。つまり、ピッチデータPitchで指定される再生ピッチの音名を維持しながら、ピッチ制限データPL以下になるまでオクターブ単位で発音音高を下げる。なお、本実施形態では、後述の動作説明で述べるように、シフト制御部13は最大3回のオクターブシフトを行う。   As described above, when the pitch data Pitch read from the RAM 200 exceeds the pitch limit data PL, the reproduction pitch limit circuit 10 shifts the pitch data Pitch by an octave until the value does not exceed the pitch limit data PL. That is, while maintaining the pitch name of the reproduction pitch specified by the pitch data Pitch, the tone pitch is lowered in octave units until the pitch limit data PL or less. In the present embodiment, the shift control unit 13 performs octave shift up to three times, as will be described later in the description of the operation.

次に、セレクタ17は、制御部300からの切り替え指示に従い、所定の処理スロットにおいてRAM200から読み出される現波形アドレスAD(整数部アドレスAおよび小数部アドレスa)または加算器16の出力のいずれかを選択して次段のADCレジスタ18にストアする。セレクタ17がRAM200から読み出される現波形アドレスADを選択した場合には、ピッチレジスタ15の出力と、ADCレジスタ18から出力される現波形アドレスADとが加算器16で加算され、これにより現波形アドレスADが更新される。加算器16では、ピッチレジスタ15の出力と、ADCレジスタ18の出力(現波形アドレスAD)との加算時に小数部桁上がりが生じると、小数部キャリーを発生する。   Next, in accordance with the switching instruction from the control unit 300, the selector 17 selects either the current waveform address AD (integer part address A and decimal part address a) read from the RAM 200 or the output of the adder 16 in a predetermined processing slot. Select and store in the next-stage ADC register 18. When the selector 17 selects the current waveform address AD read from the RAM 200, the output of the pitch register 15 and the current waveform address AD output from the ADC register 18 are added by the adder 16, thereby the current waveform address AD is updated. In the adder 16, when a decimal part carry occurs during addition of the output of the pitch register 15 and the output of the ADC register 18 (current waveform address AD), a decimal part carry is generated.

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

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

ADCレジスタ18にストアされた更新後の現波形アドレスADの整数部アドレスAは、セレクタ23を介して加算器24に供給される。セレクタ23、加算器24およびWADRレジスタ25は、波形メモリ26から差分波形データを読み出す4つの読み出しアドレスWADR1〜WADR4を発生する。 The integer part address A of the updated current waveform address AD stored in the ADC register 18 is supplied to the adder 24 via the selector 23. The selector 23, the adder 24, and the WADR register 25 generate four read addresses WADR1 to WADR4 for reading the differential waveform data from the waveform memory 26.

すなわち、最初にセレクタ23を介して加算器24に現波形アドレスADの整数部アドレスAが供給されると、「−6」を加算して読み出しアドレスWADR1(整数部アドレスA−6)を発生する。読み出しアドレスWADR1は、WADRレジスタ25にストアされる。WADRレジスタ25から読み出される読み出しアドレスWADR1は、セレクタ23を介して加算器24に入力される一方、その最下位ビットLSBを除いた上位15ビット分が波形メモリ26に供給される。 That is, when the integer part address A of the current waveform address AD is first supplied to the adder 24 via the selector 23, "-6" is added to generate the read address WADR1 (integer part address A-6). . The read address WADR1 is stored in the WADR register 25. The read address WADR1 read from the WADR register 25 is input to the adder 24 via the selector 23, while the upper 15 bits excluding the least significant bit LSB are supplied to the waveform memory 26.

加算器24では、セレクタ23を介して読み出しアドレスWADR1が供給されると、当該読み出しアドレスWADR1に「2」を加算した読み出しアドレスWADR2(整数部アドレスA−4)を発生する。読み出しアドレスWADR2は、WADRレジスタ25にストアされる。WADRレジスタ25から読み出される読み出しアドレスWADR2は、セレクタ23を介して加算器24に入力される一方、その最下位ビットLSBを除いた上位15ビット分が波形メモリ26に供給される。 When the read address WADR1 is supplied via the selector 23, the adder 24 generates a read address WADR2 (integer part address A-4) obtained by adding “2” to the read address WADR1. The read address WADR2 is stored in the WADR register 25. The read address WADR2 read from the WADR register 25 is input to the adder 24 via the selector 23, while the upper 15 bits excluding the least significant bit LSB are supplied to the waveform memory 26.

加算器24では、セレクタ23を介して読み出しアドレスWADR2が供給されると、当該読み出しアドレスWADR2に「2」を加算した読み出しアドレスWADR3(整数部アドレスA−2)を発生する。読み出しアドレスWADR3は、WADRレジスタ25にストアされる。WADRレジスタ25から読み出される読み出しアドレスWADR3は、セレクタ23を介して加算器24に入力される一方、その最下位ビットLSBを除いた上位15ビット分が波形メモリ26に供給される。 When the read address WADR2 is supplied via the selector 23, the adder 24 generates a read address WADR3 (integer part address A-2) obtained by adding “2” to the read address WADR2. The read address WADR3 is stored in the WADR register 25. The read address WADR3 read from the WADR register 25 is input to the adder 24 via the selector 23, while the upper 15 bits excluding the least significant bit LSB are supplied to the waveform memory 26.

加算器24では、セレクタ23を介して読み出しアドレスWADR3が供給されると、当該読み出しアドレスWADR2に「2」を加算した読み出しアドレスWADR4(整数部アドレスA)を発生する。読み出しアドレスWADR4は、WADRレジスタ25にストアされる。WADRレジスタ25から読み出される読み出しアドレスWADR4は、その最下位ビットLSBを除いた上位15ビット分が波形メモリ26に供給される。 When the read address WADR3 is supplied via the selector 23, the adder 24 generates a read address WADR4 (integer part address A) obtained by adding “2” to the read address WADR2. The read address WADR4 is stored in the WADR register 25. The read address WADR4 read from the WADR register 25 is supplied to the waveform memory 26 for the upper 15 bits excluding the least significant bit LSB.

波形メモリ26は、図4に図示するように、16ビット幅の格納エリアを有する。1つの格納エリアには、2の補数で仮数表現された8ビット幅の差分波形データが上位バイトおよび下位バイトに格納される。なお、この8ビット幅の差分波形データは、後述の差分波形積分演算回路30においてビットシフトされ、16ビットで実数表現される差分波形データとなる。   As shown in FIG. 4, the waveform memory 26 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 by a differential waveform integration arithmetic circuit 30 to be described later, and becomes differential waveform data expressed as a real number with 16 bits.

波形メモリ26は、WADRレジスタ25が順次発生する4つの読み出しアドレスWADR1〜WADR4に応じて、差分波形データD0〜D3を読み出す。差分波形データD0は、上位バイトの差分波形データD0Hおよび下位バイトの差分波形データD0Lから構成される。同様に、差分波形データD1は差分波形データD1H,D1L、差分波形データD2は差分波形データD2H,D2L、差分波形データD3は差分波形データD3H,D3Lから構成される。   The waveform memory 26 reads the differential waveform data D0 to D3 according to the four read addresses WADR1 to WADR4 that are sequentially generated by the WADR register 25. 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は、構成要素31〜38およびコントローラ28から構成される。DW0レジスタ31a〜DW3レジスタ31dには、上述した波形メモリ26から読み出される差分波形データD0〜D3がストアされる。すなわち、DW0レジスタ31aには差分波形データD0H,D0Lが、DW1レジスタ31bには差分波形データD1H,D1Lが、DW2レジスタ31cには差分波形データD2H,D2Lが、DW3レジスタ31dには差分波形データD3H,D3Lがそれぞれストアされる。   The differential waveform integration circuit 30 includes components 31 to 38 and a controller 28. The differential waveform data D0 to D3 read from the waveform memory 26 described above are stored in the DW0 registers 31a to DW3 registers 31d. That is, the differential waveform data D0H and D0L are stored in the DW0 register 31a, the differential waveform data D1H and D1L are stored in the DW1 register 31b, the differential waveform data D2H and D2L are stored in the DW2 register 31c, and the differential waveform data D3H is stored in the DW3 register 31d. , D3L are stored respectively.

コントローラ28は、退避レジスタ22に格納される波形アドレス歩進値と、ADC LSBレジスタ19の値(現波形アドレスADにおける整数部アドレスAの最下位ビットLSB)とで定まる積分演算パターンに従い、積分演算を施す差分波形データを指定する。セレクタ32は、DW0レジスタ32〜DW3レジスタ35にそれぞれストアされる差分波形データの内、コントローラ28が積分演算パターンに従って指定した差分波形データを選択的に出力する。加算器35では、セレクタ32から出力される差分波形データに、Xレジスタ34から出力される波高値Wを加算(積分)する。 The controller 28 performs an integration operation according to an integration operation pattern determined by the waveform address step value stored in the save register 22 and the value of the ADC LSB register 19 (the least significant bit LSB of the integer part address A in the current waveform address AD). Specifies the differential waveform data to be applied. The selector 32 selectively outputs the differential waveform data specified by the controller 28 in accordance with the integral calculation pattern among the differential waveform data stored in the DW0 register 32 to DW3 register 35, respectively. The adder 35 adds (integrates) the peak value W output from the X register 34 to the differential waveform data output from the selector 32.

ここで、図5〜図6を参照して積分演算パターンの内容について説明する。図5はADC LSBレジスタ19の値が「1」の場合の積分演算パターン、図6はADC LSBレジスタ19の値が「0」の場合の積分演算パターンを示す図である。これらの図に示す積分演算パターンは、退避レジスタ22に格納される波形アドレス歩進値「0」〜「8」と、処理スロットに対応する加算順番「0」〜「7」とに応じて定まる積分演算の内容を示している。   Here, the contents of the integral calculation pattern will be described with reference to FIGS. FIG. 5 shows an integration calculation pattern when the value of the ADC LSB register 19 is “1”, and FIG. 6 shows an integration calculation pattern when the value of the ADC LSB register 19 is “0”. The integration calculation patterns shown in these figures are determined according to the waveform address step values “0” to “8” stored in the save register 22 and the addition orders “0” to “7” corresponding to the processing slots. The contents of the integral calculation are shown.

例えば、ADC LSBレジスタ19の値が「1」の時に、退避レジスタ22に格納される波形アドレス歩進値が「8」(最大アドレス歩進値)であったとする。そうすると、まず加算順番「0」では「W+D0L」なる積分演算を実行する。「W+D0L」とは、DW0レジスタ31aにストアされる差分波形データD0Lを16ビットにビットシフトさせた後、この16ビットの差分波形データD0Lと、Xレジスタ34から出力される波高値Wとを加算器35で積分し、積分された波高値をセレクタ33を介してXレジスタ34にストアすることを意味する。 For example, it is assumed that the waveform address step value stored in the save register 22 is “8” (maximum address step value) when the value of the ADC LSB register 19 is “1”. Then, first, in the addition order “0”, an integration operation “W + D0L” is executed. “W + D0L” means that the differential waveform data D0L stored in the DW0 register 31a is bit-shifted to 16 bits, and then the 16-bit differential waveform data D0L is added to the peak value W output from the X register 34. Means that the integrated peak value is stored in the X register 34 via the selector 33.

次に、加算順番「1」では「W+D0H」なる積分演算を実行する。「W+D0H」とは、DW0レジスタ31aにストアされる差分波形データD0Hを16ビットにビットシフトさせた後、この16ビットの差分波形データD0Hと、Xレジスタ34から出力される波高値Wとを加算器35で積分し、積分された波高値をセレクタ33を介してXレジスタ34にストアすることを意味する。以降、同様にして、加算順番「2」では「W+D1L」、加算順番「3」では「W+D1H」、加算順番「4」では「W+D2L」、加算順番「5」では「W+D2H」、加算順番「6」では「W+D3L」、加算順番「7」では「W+D3H」なる積分演算を各々実行することを表している。   Next, in the addition order “1”, an integral operation “W + D0H” is executed. “W + D0H” means that the differential waveform data D0H stored in the DW0 register 31a is bit-shifted to 16 bits, and then the 16-bit differential waveform data D0H is added to the peak value W output from the X register 34. Means that the integrated peak value is stored in the X register 34 via the selector 33. Thereafter, in the same manner, “W + D1L” in the addition order “2”, “W + D1H” in the addition order “3”, “W + D2L” in the addition order “4”, “W + D2H” in the addition order “5”, and “6+” "" Indicates that the integral operation "W + D3L" is executed, and in the addition order "7", the integration operation "W + D3H" is executed.

さて、こうした積分演算によりXレジスタ34にストアされる波高値Wは、次に積分される波高値として加算器35および加算器37に供給される一方、セレクタ40を介してRAM200の対応するチャンネルエリアCHに書き込まれる。乗算器36、加算器37およびYレジスタ38は、ADC decレジスタ27にストアされる現波形アドレスADの小数部アドレスaに基づき、Xレジスタ34にストアされる波高値Wに対して直線補間演算を実行し、これにより算出される波高値YをYレジスタ38にストアする。   Now, the peak value W stored in the X register 34 by such integration operation is supplied to the adder 35 and the adder 37 as the peak value to be integrated next, while the channel area corresponding to the RAM 200 via the selector 40 is supplied. Written to CH. The multiplier 36, the adder 37, and the Y register 38 perform linear interpolation on the peak value W stored in the X register 34 based on the fractional part address a of the current waveform address AD stored in the ADC dec register 27. The peak value Y calculated by this is stored in the Y register 38.

加算器50、Mレジスタ51およびセレクタ52は、ミキサ回路を構成する。ミキサ回路では、Yレジスタ38から出力される各発音チャンネル毎の波高値Yを全て累算して波形出力waveを形成する。この波形出力waveは、図示されていない音源において、1サンプリング周期毎にD/A変換出力される。 The adder 50, the M register 51, and the selector 52 constitute a mixer circuit. In the mixer circuit, the waveform output wave is formed by accumulating all the peak values Y for the respective sound generation channels output from the Y register 38. This waveform output wave is D / A converted and output every sampling period in a sound source not shown.

(2)動作
次に、図7に図示するタイミングチャートを参照して、上記構成による第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 chart shown in FIG. 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」に同期したデータ期間ro0おいて、RAM200のチャンネルエリアCH0からピッチ制限データPL(整数部ピッチ制限データQおよび小数部ピッチ制限データq)が読み出される。読み出されたピッチ制限データPLは、CH0処理スロット「1」に同期してピッチ制限レジスタ11にストアされる。   First, in the data period ro0 synchronized with the CH0 processing slot “0”, the pitch limit data PL (the integer part pitch limit data Q and the fractional part pitch limit data q) is read from the channel area CH0 of the RAM 200. The read pitch limit data PL is stored in the pitch limit register 11 in synchronization with the CH0 processing slot “1”.

次いで、CH0処理スロット「1」に同期したデータ期間ro1では、RAM200のチャンネルエリアCH0からピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)が読み出される。読み出されたピッチデータPitchは、CH0処理スロット「2」に同期したデータ期間p0においてピッチレジスタ15にストアされる。 Next, in the data period ro1 synchronized with the CH0 processing slot “1”, the pitch data Pitch (integer part pitch data P and fractional part pitch data p) is read from the channel area CH0 of the RAM 200. The read pitch data Pitch is stored in the pitch register 15 in the data period p0 synchronized with the CH0 processing slot “2”.

こうして、ピッチ制限データPLがピッチ制限レジスタ11に、ピッチデータPitchがピッチレジスタ15にそれぞれストアされると、比較器12はCH0処理スロット「2」のデータ期間c0において、ピッチ制限レジスタ11のピッチ制限データPLと、ピッチレジスタ15のピッチデータPitchとを比較し、ピッチデータPitchがピッチ制限データPLより大きければ、シフト制御部13にシフト指示信号を発生する。   Thus, when the pitch limit data PL is stored in the pitch limit register 11 and the pitch data Pitch is stored in the pitch register 15, the comparator 12 causes the pitch limit of the pitch limit register 11 in the data period c0 of the CH0 processing slot “2”. The data PL and the pitch data Pitch of the pitch register 15 are compared. If the pitch data Pitch is larger than the pitch limit data PL, a shift instruction signal is generated in the shift control unit 13.

シフト制御部13では、比較器12からシフト指示信号が供給されなければ、ピッチレジスタ15にストアされるピッチデータPitchをスルー出力する。したがって、ピッチデータPitchがピッチ制限データPLを超えなければ、CH0処理スロット「3」〜「5」のデータ期間p1〜p3の間、ピッチレジスタ15にストアされるピッチデータPitchは維持される。   If the shift instruction signal is not supplied from the comparator 12, the shift control unit 13 outputs the pitch data Pitch stored in the pitch register 15 as a through output. Therefore, if the pitch data Pitch does not exceed the pitch limit data PL, the pitch data Pitch stored in the pitch register 15 is maintained during the data periods p1 to p3 of the CH0 processing slots “3” to “5”.

一方、ピッチデータPitchがピッチ制限データPLより大きく、比較器12からシフト指示信号が供給されると、シフト制御部13はピッチレジスタ15にストアされるピッチデータPitchを1ビット右シフト(−1オクターブシフト)する。1ビット右シフトされたピッチデータPitchは、CH0処理スロット「3」のデータ期間p1においてピッチレジスタ15にストアされる。   On the other hand, when the pitch data Pitch is larger than the pitch limit data PL and a shift instruction signal is supplied from the comparator 12, the shift control unit 13 shifts the pitch data Pitch stored in the pitch register 15 to the right by 1 bit (-1 octave). shift. The pitch data Pitch shifted right by 1 bit is stored in the pitch register 15 in the data period p1 of the CH0 processing slot “3”.

以後、比較器12およびシフト制御部13では、CH0処理スロット「3」〜「4」のデータ期間c1〜c2において、ピッチデータPitchがピッチ制限データPLを超えない値になるまでピッチデータPitchを1ビット右シフトする。つまり、本実施形態では、都合3回の1ビット右シフトを可能とし、ピッチ制限データPLを超えないようにピッチデータPitchを最大で−3オクターブシフトさせるようになっている。   Thereafter, the comparator 12 and the shift control unit 13 set the pitch data Pitch to 1 until the pitch data Pitch does not exceed the pitch limit data PL in the data periods c1 to c2 of the CH0 processing slots “3” to “4”. Shift right by bit. That is, in the present embodiment, three 1-bit right shifts are possible for convenience, and the pitch data Pitch is shifted by -3 octaves at maximum so as not to exceed the pitch limit data PL.

このように、再生ピッチ制限回路10では、RAM200から読み出されるピッチデータPitchがピッチ制限データPLを超えた場合、当該ピッチ制限データPLを超えない値になるまでピッチデータPitchを−1オクターブずつ下げる。すなわち、ピッチデータPitchで指定される再生ピッチの音名を維持しながら、ピッチ制限データPL以下になるまでオクターブ単位で発音音高を下げるようにした為、最大再生ピッチを超える発音が指示された場合の不自然さを回避することが可能になっている。 As described above, when the pitch data Pitch read from the RAM 200 exceeds the pitch limit data PL, the reproduction pitch limit circuit 10 lowers the pitch data Pitch by −1 octave until the value does not exceed the pitch limit data PL. That is, while maintaining the pitch name of the playback pitch specified by the pitch data Pitch, the tone pitch is lowered in octave units until the pitch limit data PL or less is reached, so that a pronunciation exceeding the maximum playback pitch is instructed. It is possible to avoid unnaturalness in cases.

さて一方、CH0処理スロット「2」に同期したデータ期間ro2では、RAM200のチャンネルエリアCH0から現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)が読み出される。また、CH0処理スロット「3」以降のデータ期間a0では、上記データ期間ro2においてRAM200から読み出された現波形アドレスAD(整数部アドレスAおよび小数部波形アドレスa)がADCレジスタ18にストアされる。   On the other hand, in the data period ro2 synchronized with the CH0 processing slot “2”, 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 200. In the data period a0 after the CH0 processing slot “3”, the current waveform address AD (integer part address A and fractional part waveform address a) read from the RAM 200 in the data period ro2 is stored in the ADC register 18. .

CH0処理スロット「5」以降のデータ期間p3では、上述したように、ピッチ制限データPLを超えた場合に、当該ピッチ制限データPL以下になるようにオクターブシフトされるピッチデータPitchがピッチレジスタ15にストアされる。そして、CH0処理スロット「6」以降のデータ期間s0では、ピッチレジスタ15の出力に、加算器16が発生する小数部キャリーを加算して得られる波形アドレス歩進値がSTEPレジスタ21にストアされる。 In the data period p3 after the CH0 processing slot “5”, as described above, when the pitch limit data PL is exceeded, the pitch data Pitch that is octave shifted to the pitch limit data PL or less is stored in the pitch register 15. Stored. In the data period s0 after the CH0 processing slot “6”, the waveform address step value obtained by adding the fractional part carry generated by the adder 16 to the output of the pitch register 15 is stored in the STEP register 21. .

また、CH0処理スロット「6」以降のデータ期間a1では、上記データ期間a0においてADCレジスタ18にストアされた現波形アドレスADに、ピッチレジスタ15の出力を加算してADCレジスタ18の現波形アドレスADを更新する。そして、更新された現波形アドレスADの整数部アドレスAおよび小数部アドレスaを、CH0処理スロット「6」に同期したデータ期間ri0において、セレクタ17を介してRAM200のチャンネルエリアCH0にストアする。   Further, in the data period a1 after the CH0 processing slot “6”, the output of the pitch register 15 is added to the current waveform address AD stored in the ADC register 18 in the data period a0, and the current waveform address AD of the ADC register 18 is added. Update. Then, the integer part address A and the decimal part address a of the updated current waveform address AD are stored in the channel area CH0 of the RAM 200 via the selector 17 in the data period ri0 synchronized with the CH0 processing slot “6”.

そして、CH0処理スロット「7」以降のデータ期間WADR1では、ADCレジスタ18から出力される更新後の現波形アドレスADの整数部アドレスAと「−6」とが加算器24で加算され、これにて生成される波形読み出しアドレスWADR1(整数部アドレスA−6)がWADRレジスタ25にストアされる。このWADRレジスタ25にストアされる波形読み出しアドレスWADR1は、セレクタ23を介して加算器24に入力される一方、その最下位ビットLSBを除いた上位15ビット分が波形メモリ26に供給される。 Then, in the data period WADR1 after the CH0 processing slot “7”, the integer part address A of the updated current waveform address AD output from the ADC register 18 and “−6” are added by the adder 24. The waveform read address WADR1 (integer part address A-6) generated in this manner is stored in the WADR register 25. The waveform read address WADR1 stored in the WADR register 25 is input to the adder 24 via the selector 23, while the upper 15 bits excluding the least significant bit LSB are supplied to the waveform memory 26.

次に、CH0処理スロット「B」以降のデータ期間WADR2では、セレクタ23を介して入力される読み出しアドレスWADR1と「2」とが加算器24で加算されて波形読み出しアドレスWADR2(整数部アドレスA−4)を発生し、WADRレジスタ25にストアされる。WADRレジスタ25にストアされる波形読み出しアドレスWADR2は、セレクタ23を介して加算器24に入力される一方、その最下位ビットLSBを除いた上位15ビット分が波形メモリ26に供給される。 Next, in the data period WADR2 after the CH0 processing slot “B”, the read address WADR1 and “2” input via the selector 23 are added by the adder 24 to obtain the waveform read address WADR2 (integer part address A−). 4) is generated and stored in the WADR register 25. The waveform readout address WADR2 stored in the WADR register 25 is input to the adder 24 via the selector 23, while the upper 15 bits excluding the least significant bit LSB are supplied to the waveform memory 26.

以後、CH0処理スロット「F」以降のデータ期間WADR3と、CH1処理スロット「3」以降のデータ期間WADR4とでは、上記データ期間WADR2と同様に、波形読み出しアドレスWADR3(整数部アドレスA−2)および波形読み出しアドレスWADR4(整数部アドレスA)を発生する。そして、これら波形読み出しアドレスWADR3〜WADR4の最下位ビットLSBを除いた上位15ビット分がそれぞれ波形メモリ26に供給される。 Thereafter, in the data period WADR3 after the CH0 processing slot “F” and the data period WADR4 after the CH1 processing slot “3”, similarly to the data period WADR2, the waveform readout address WADR3 (integer part address A-2) and A waveform read address WADR4 (integer part address A) is generated. Then, the upper 15 bits excluding the least significant bit LSB of these waveform read addresses WADR3 to WADR4 are supplied to the waveform memory 26, respectively.

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

WADRレジスタ25から順次出力される4つの波形読み出しアドレスWADR1〜WADR4に応じて、波形メモリ26から読み出される差分波形データD0(D0H,D0L)〜D3(D3H,D3L)は、図7に図示するタイミングでDW0レジスタ31a〜DW3レジスタ31dに格納される。すなわち、DW0レジスタ31aには差分波形データD0H,D0Lが、DW1レジスタ31bには差分波形データD1H,D1Lが、DW2レジスタ31cには差分波形データD2H,D2Lが、DW3レジスタ31dには差分波形データD3H,D3Lがそれぞれ格納される。   The differential waveform data D0 (D0H, D0L) to D3 (D3H, D3L) read from the waveform memory 26 in accordance with the four waveform read addresses WADR1 to WADR4 sequentially output from the WADR register 25 are the timing shown in FIG. Are stored in the DW0 register 31a to DW3 register 31d. That is, the differential waveform data D0H and D0L are stored in the DW0 register 31a, the differential waveform data D1H and D1L are stored in the DW1 register 31b, the differential waveform data D2H and D2L are stored in the DW2 register 31c, and the differential waveform data D3H is stored in the DW3 register 31d. , D3L are stored respectively.

そして、CH0処理スロット「F」に同期したデータ期間ro3では、RAM200のチャンネルエリアCH0から波高値Wが読み出され、これがCH1処理スロット「0」以降のデータ期間w0に、Xレジスタ34にストアされる。以後、退避レジスタ22に格納される波形アドレス歩進値と、ADC LSBレジスタ19の値(現波形アドレスADにおける整数部アドレスAの最下位ビットLSB)とに応じて定まる積分演算パターン(図5又は図6参照)に従って積分演算を行う。   In the data period ro3 synchronized with the CH0 processing slot “F”, the peak value W is read from the channel area CH0 of the RAM 200 and stored in the X register 34 in the data period w0 after the CH1 processing slot “0”. The Thereafter, an integral calculation pattern (FIG. 5 or FIG. 5) determined according to the waveform address step value stored in the save register 22 and the value of the ADC LSB register 19 (the least significant bit LSB of the integer part address A in the current waveform address AD). Integration operation is performed according to FIG.

例えば、前述したように、ADC LSBレジスタ19の値が「1」の時に、退避レジスタ22に格納される波形アドレス歩進値が「8」(最大アドレス歩進値)の場合には、図5に図示する積分パターンに従って差分波形データを積分する。先ずCH1処理スロット「3」に同期したデータ期間w1では「W+D0L」なる積分演算、すなわちDW0レジスタ31aにストアされる差分波形データD0Lを16ビットにビットシフトさせた後、この16ビットの差分波形データD0Lと、Xレジスタ34の波高値Wとを積分(加算)し、積分された波高値をセレクタ33を介してXレジスタ34にストアする。 For example, as described above, when the value of the ADC LSB register 19 is “1” and the waveform address step value stored in the save register 22 is “8” (maximum address step value), FIG. The differential waveform data is integrated according to the integration pattern shown in FIG. First, in the data period w1 synchronized with the CH1 processing slot “3”, the integration operation of “W + D0L”, that is, the differential waveform data D0L stored in the DW0 register 31a is bit-shifted to 16 bits, and then the 16-bit differential waveform data. D0L and the peak value W of the X register 34 are integrated (added), and the integrated peak value is stored in the X register 34 via the selector 33.

以後、CH1処理スロット「4」に同期したデータ期間w2では「W+D0H」を、CH1処理スロット「5」に同期したデータ期間w3では「W+D1L」を、CH1処理スロット「6」に同期したデータ期間w4では「W+D1H」を、CH1処理スロット「7」に同期したデータ期間w5では「W+D2L」を、CH1処理スロット「8」に同期したデータ期間w6では「W+D2H」を、CH1処理スロット「9」に同期したデータ期間w7では「W+D3L」を、CH1処理スロット「A」に同期したデータ期間w8では「W+D3H」を各々実行する。   Thereafter, “W + D0H” is synchronized in the data period w2 synchronized with the CH1 processing slot “4”, “W + D1L” is synchronized in the data period w3 synchronized with the CH1 processing slot “5”, and the data period w4 is synchronized with the CH1 processing slot “6”. In “W + D1H”, “W + D2L” is synchronized with the CH1 processing slot “7”, “W + D2L” is synchronized with the CH1 processing slot “8”, and “W + D2H” is synchronized with the CH1 processing slot “9” in the data period w6 synchronized with the CH1 processing slot “8”. In the data period w7, “W + D3L” is executed, and in the data period w8 synchronized with the CH1 processing slot “A”, “W + D3H” is executed.

こうした積分演算によりXレジスタ34に累算された波高値Wは、CH1処理スロット「A」に同期したデータ期間ri1において、次に積分される波高値WとしてRAM200のチャンネルエリアCH0にストアされる。また、積分演算によりXレジスタ34に累算された波高値Wは、次に積分される波高値として加算器35および加算器37に供給される。 The peak value W accumulated in the X register 34 by such integration operation is stored in the channel area CH0 of the RAM 200 as the peak value W to be integrated next in the data period ri1 synchronized with the CH1 processing slot “A”. Further, the peak value W accumulated in the X register 34 by the integration operation is supplied to the adder 35 and the adder 37 as a peak value to be integrated next.

そして、乗算器36、加算器37およびYレジスタ38は、ADC decレジスタ27にストアされる現波形アドレスADの小数部アドレスaに基づき、Xレジスタ34にストアされる波高値Wに対し、直線補間演算を図7に図示するタイミングで実行し、これにより算出される波高値YがYレジスタ38にストアされる。この後、波高値Yは、加算器50、Mレジスタ51およびセレクタ52から構成されるミキサ回路においてチャンネル累算されて波形出力waveを形成する。 The multiplier 36, the adder 37, and the Y register 38 linearly interpolate the peak value W stored in the X register 34 based on the fractional part address a of the current waveform address AD stored in the ADC dec register 27. The calculation is executed at the timing shown in FIG. 7, and the peak value Y calculated thereby is stored in the Y register 38. Thereafter, the crest value Y is channel-accumulated in a mixer circuit composed of an adder 50, an M register 51, and a selector 52 to form a waveform output wave.

以上のように、第1実施形態では、発音すべき音高を表すピッチデータPitchが、ピッチ制限データPLを超えると、ピッチデータPitchで指定される再生ピッチの音名を維持しながら、ピッチ制限データPL以下になるまで当該ピッチデータPitchをオクターブ単位で発音音高を下げるので、最大再生ピッチ(最大アドレス歩進値に対応した再生ピッチ)を超える発音が指示された時に生じる音切れや発音遅れなどの不自然さを回避することが可能になる。   As described above, in the first embodiment, when the pitch data Pitch indicating the pitch to be generated exceeds the pitch limit data PL, the pitch name is maintained while maintaining the pitch name of the reproduction pitch specified by the pitch data Pitch. Since the pitch pitch of the pitch data Pitch is lowered in octave units until the data becomes lower than the data PL, sound interruption or delay in sound generation when a sound is generated that exceeds the maximum playback pitch (playback pitch corresponding to the maximum address step value). It becomes possible to avoid such unnaturalness.

[第2実施形態]
次に、図8〜図10を参照して第2実施形態について説明する。上述した第1実施形態では、ピッチ制限データPLとピッチデータPitchとを比較し、ピッチデータPitchがピッチ制限データPLを超えると、当該ピッチ制限データPLを超えない値になるまでピッチデータPitchを−1オクターブずつ低減シフトするのに対し、第2実施形態では、ピッチデータPitchが、3ビットの整数部ピッチ制限データQで指定される再生ピッチ上限値を超えた場合に、ピッチデータPitchを再生ピッチ上限値に置き換える点で相違する。
[Second Embodiment]
Next, a second embodiment will be described with reference to FIGS. In the first embodiment described above, the pitch limit data PL and the pitch data Pitch are compared, and when the pitch data Pitch exceeds the pitch limit data PL, the pitch data Pitch is changed to a value that does not exceed the pitch limit data PL. In contrast to the reduction shift by one octave, in the second embodiment, when the pitch data Pitch exceeds the reproduction pitch upper limit value specified by the 3-bit integer part pitch limit data Q, the pitch data Pitch is reproduced as the reproduction pitch. It differs in that it is replaced with the upper limit.

図8は、こうした第2実施形態の構成を示すブロック図である。この図において、図1に図示した第1実施形態と共通する構成要素には同一の番号を付し、その説明を省略する。図9に図示する第2実施形態の構成が、第1実施形態と相違する点は、ピッチ制限レジスタ11、ピッチレジスタ15およびピッチリミッタ401から構成される再生ピッチ制限回路400を設け、かつ再生ピッチ制限回路400に対応してRAM200が図9に図示するデータ構造を有することにある。   FIG. 8 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 shown in FIG. 9 is different from the first embodiment in that a playback pitch limit circuit 400 including a pitch limit register 11, a pitch register 15, and a pitch limiter 401 is provided, and a playback pitch is set. Corresponding to the limiting circuit 400, the RAM 200 has the data structure shown in FIG.

すなわち、図9に図示するように、第2実施形態によるRAM200には、現在の波形アドレス(現在指定している差分波形の位相)を表す現波形アドレスAD(整数部アドレスAおよび小数部アドレスa)と、再生ピッチ(発音音高)に対応したアドレス歩進値を表すピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)と、再生ピッチ(発音音高)の上限となる再生ピッチ上限値を指定する3ビットの整数部ピッチ制限データQと、現波形アドレスADに対応して差分波形データが積分された波高値Wとが発音チャンネルに対応付けられた各チャンネルエリアCH0〜CH63毎に格納される。   That is, as shown in FIG. 9, the RAM 200 according to the second embodiment stores the current waveform address AD (the integer part address A and the fractional part address a) indicating the current waveform address (the phase of the differential waveform currently specified). ), Pitch data Pitch (integer part pitch data P and fractional part pitch data p) representing an address step value corresponding to the playback pitch (sounding pitch), and playback pitch that is the upper limit of the playback pitch (sounding pitch) For each channel area CH0 to CH63 in which 3-bit integer part pitch limit data Q designating the upper limit value and the peak value W obtained by integrating the differential waveform data corresponding to the current waveform address AD are associated with the sound generation channel. Stored in

再生ピッチ制限回路400において、ピッチ制限レジスタ11には、制御部300の読み出し指示に従ってRAM200から読み出される3ビットの整数部ピッチ制限データQがストアされる。ピッチレジスタ15には、RAM200から読み出されるピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)がストアされる。   In the reproduction pitch limit circuit 400, the pitch limit register 11 stores 3-bit integer part pitch limit data Q read from the RAM 200 in accordance with a read instruction from the control unit 300. The pitch register 15 stores pitch data Pitch (integer part pitch data P and decimal part pitch data p) read from the RAM 200.

ピッチリミッタ401は、ピッチ制限レジスタ11の出力(整数部ピッチ制限データQ)に対応する再生ピッチ上限値を設定しておき、ピッチレジスタ15から出力されるピッチデータPitchが、設定された再生ピッチ上限値未満ならば当該ピッチデータPitchを次段の加算器16へスルー出力し、一方、設定された再生ピッチ上限値以上ならば、当該再生ピッチ上限値を次段の加算器16に出力する。 The pitch limiter 401 sets a playback pitch upper limit value corresponding to the output of the pitch limit register 11 (integer part pitch limit data Q), and the pitch data Pitch output from the pitch register 15 is set to the set playback pitch upper limit. If it is less than the value, the pitch data Pitch is output through to the adder 16 at the next stage. On the other hand, if it is equal to or greater than the set reproduction pitch upper limit value, the reproduction pitch upper limit value is output to the adder 16 at the next stage.

具体的には、図10に図示するように、ピッチ制限レジスタ11の出力(整数部ピッチ制限データQ)が「0」の場合には再生ピッチ上限値「7FFFFh」を、ピッチ制限レジスタ11の出力が「1」の場合には再生ピッチ上限値「78000h」を、ピッチ制限レジスタ11の出力が「2」の場合には再生ピッチ上限値「70000h」を、ピッチ制限レジスタ11の出力が「3」の場合には再生ピッチ上限値「68000h」をそれぞれ発生して内部設定する。   Specifically, as shown in FIG. 10, when the output of the pitch limit register 11 (integer part pitch limit data Q) is “0”, the playback pitch upper limit value “7FFFFh” is output as the output of the pitch limit register 11. Is “1”, the playback pitch upper limit value is “78000h”, when the output of the pitch limit register 11 is “2”, the playback pitch upper limit value is “70000h”, and the output of the pitch limit register 11 is “3”. In this case, the reproduction pitch upper limit value “68000h” is generated and set internally.

さらに、ピッチ制限レジスタ11の出力が「4」の場合には再生ピッチ上限値「60000h」を、ピッチ制限レジスタ11の出力が「5」の場合には再生ピッチ上限値「58000h」を、ピッチ制限レジスタ11の出力が「6」の場合には再生ピッチ上限値「50000h」を、ピッチ制限レジスタ11の出力が「7」の場合には再生ピッチ上限値「48000h」をそれぞれ発生して内部設定する。なお、整数部ピッチ制限データQに対応した再生ピッチ上限値を生成する態様としては、例えば整数部ピッチ制限データQを読み出しアドレスとして、対応する再生ピッチ上限値を読み出す周知のデータテーブルにて具現する。 Further, when the output of the pitch limit register 11 is “4”, the playback pitch upper limit value “60000h” is set. When the output of the pitch limit register 11 is “5”, the playback pitch upper limit value “58000h” is set. When the output of the register 11 is “6”, the reproduction pitch upper limit value “50000h” is generated, and when the output of the pitch limit register 11 is “7”, the reproduction pitch upper limit value “48000h” is generated and set internally. . As an aspect for generating the reproduction pitch upper limit value corresponding to the integer part pitch limit data Q, for example, the integer part pitch limit data Q is used as a read address, and the reproduction pitch upper limit value is realized by a known data table for reading the corresponding reproduction pitch upper limit value. .

このように、第2実施形態では、再生ピッチ(発音音高)を指定するピッチデータPitchが、3ビットの整数部ピッチ制限データQで指定される再生ピッチ上限値を超えると、ピッチデータPitchを再生ピッチ上限値に置換して差分波形再生するので、最大再生ピッチ(最大アドレス歩進値に対応した再生ピッチ)を超える発音が指示された時に生じる音切れや発音遅れなどの不自然さを回避し得る。   As described above, in the second embodiment, when the pitch data Pitch specifying the playback pitch (sounding pitch) exceeds the playback pitch upper limit value specified by the 3-bit integer part pitch limit data Q, the pitch data Pitch is changed. Since the differential waveform is played back by replacing the upper limit value with the playback pitch, it avoids unnaturalness such as sound interruptions and sound delays that occur when a sound that exceeds the maximum playback pitch (playback pitch corresponding to the maximum address step value) is specified. Can do.

[第1実施形態の変形例]
次に、図11〜図12を参照して第1実施形態の変形例について説明する。前述した第1実施形態の再生ピッチ制限回路10では、発音チャンネルに対応してRAM200から読み出されるピッチ制限データPL(整数部ピッチ制限データQおよび小数部ピッチ制限データq)がピッチ制限レジスタ11にストアされるのに対し、変形例では、図11に図示する通り、全ての発音チャンネルに共通するピッチ制限データPL(整数部ピッチ制限データQおよび小数部ピッチ制限データq)が図示せぬCPUからピッチ制限レジスタ11にストアされる点で相違する。
[Modification of First Embodiment]
Next, a modification of the first embodiment will be described with reference to FIGS. In the reproduction pitch limit circuit 10 of the first embodiment described above, pitch limit data PL (integer part pitch limit data Q and fractional part pitch limit data q) read from the RAM 200 corresponding to the sound generation channel is stored in the pitch limit register 11. On the other hand, in the modification, as shown in FIG. 11, pitch limit data PL (integer part pitch limit data Q and fractional part pitch limit data q) common to all sound generation channels is pitched from a CPU (not shown). The difference is that it is stored in the restriction register 11.

したがって、図12に図示するように、RAM200には、ピッチ制限データPL(整数部ピッチ制限データQおよび小数部ピッチ制限データq)を除く、現波形アドレスAD(整数部アドレスAおよび小数部アドレスa)と、ピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)と、波高値Wとが各チャンネルエリアCH0〜CH63毎にストアされるデータ構造となる。こうすることによって、第1実施形態と同様に最大再生ピッチを超える発音が指示された場合の不自然さを回避しつつ、RAM200のメモリサイズ低減を図ることが可能になる。 Accordingly, as shown in FIG. 12, the RAM 200 stores the current waveform address AD (the integer part address A and the fractional part address a) excluding the pitch restriction data PL (the integer part pitch restriction data Q and the fractional part pitch restriction data q). ), Pitch data Pitch (integer part pitch data P and fractional part pitch data p), and peak value W are stored in each channel area CH0 to CH63. By doing so, it is possible to reduce the memory size of the RAM 200 while avoiding unnaturalness in the case where a sound generation exceeding the maximum reproduction pitch is instructed as in the first embodiment.

[第2実施形態の変形例]
次に、図13を参照して第2実施形態の変形例について説明する。前述した第2実施形態の再生ピッチ制限回路400では、発音チャンネルに対応してRAM200から読み出される整数部ピッチ制限データQがピッチ制限レジスタ11にストアされるのに対し、変形例では、図13に図示する通り、全ての発音チャンネルに共通する整数部ピッチ制限データQが図示せぬCPUからピッチ制限レジスタ11にストアされる点で相違する。このようにすることで第2実施形態と同様に最大再生ピッチを超える発音が指示された場合の不自然さを回避しつつ、RAM200のメモリサイズ低減を図ることが可能になる。
[Modification of Second Embodiment]
Next, a modification of the second embodiment will be described with reference to FIG. In the reproduction pitch limit circuit 400 of the second embodiment described above, the integer part pitch limit data Q read from the RAM 200 corresponding to the sound generation channel is stored in the pitch limit register 11, whereas in the modified example, as shown in FIG. As shown in the figure, the integer part pitch limit data Q common to all the sound generation channels is stored in the pitch limit register 11 from a CPU (not shown). By doing so, it is possible to reduce the memory size of the RAM 200 while avoiding unnaturalness when a sound generation exceeding the maximum reproduction pitch is instructed as in the second embodiment.

なお、前述の第1〜第2実施形態およびこれらの変形例にあっては、いずれもハードウェアで構成される波形発生装置として説明したが、本発明の主旨はハードウェアに限定されものではなく、その機能をソフトウェアで具現する場合であっても勿論適用可能であることは言うまでもない。   In the above-described first to second embodiments and the modifications thereof, all have been described as waveform generators configured by hardware, but the gist of the present invention is not limited to hardware. Needless to say, the present invention can be applied even when the function is implemented by software.

本発明による第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実施形態におけるRAM200のデータ構成を示すメモリマップである。It is a memory map which shows the data structure of RAM200 in 1st Embodiment. 波形メモリ26のデータ構造を示すメモリマップである。3 is a memory map showing a data structure of a waveform memory 26. ADC LSBレジスタ19の値が「1」の場合の積分演算パターンを示す図である。It is a figure which shows the integration calculation pattern in case the value of the ADC LSB register | resistor 19 is "1". ADC LSBレジスタ19の値が「0」の場合の積分演算パターンを示す図である。It is a figure which shows the integral calculation pattern in case the value of the ADC LSB register | resistor 19 is "0". 第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実施形態におけるRAM200のデータ構成を示すメモリマップである。It is a memory map which shows the data structure of RAM200 in 2nd Embodiment. ピッチ制限レジスタ11の出力(整数部ピッチ制限データQ)に対応してピッチリミッタ401に内部設定される再生ピッチ上限値を示す図である。It is a figure which shows the reproduction | regeneration pitch upper limit set internally in the pitch limiter 401 corresponding to the output (integer part pitch restriction data Q) of the pitch restriction register. 第1実施形態の変形例の構成を示すブロック図である。It is a block diagram which shows the structure of the modification of 1st Embodiment. 第1実施形態の変形例におけるRAM200のデータ構成を示すメモリマップである。It is a memory map which shows the data structure of RAM200 in the modification of 1st Embodiment. 第2実施形態の変形例の構成を示すブロック図である。It is a block diagram which shows the structure of the modification of 2nd Embodiment.

符号の説明Explanation of symbols

10 再生ピッチ制限回路
11 ピッチ制限レジスタ
12 比較器
13 シフト制御部
14,17,23,32,33,40,52 セレクタ
15 ピッチレジスタ
16,20,24,35,37,50 加算器
18 ADCレジスタ
19 ADC LSBレジスタ
21 STEPレジスタ
22 退避レジスタ
25 WADRレジスタ
26 波形メモリ
27 ADC decレジスタ
28 コントローラ
30 差分波形積分演算回路
31a〜31d DW0〜DW3レジスタ
34 Xレジスタ
36 乗算器
38 Yレジスタ
51 Mレジスタ
100 クロック発生部
200 RAM
300 制御部
DESCRIPTION OF SYMBOLS 10 Playback pitch limit circuit 11 Pitch limit register 12 Comparator 13 Shift control part 14, 17, 23, 32, 33, 40, 52 Selector 15 Pitch register 16, 20, 24, 35, 37, 50 Adder 18 ADC register 19 ADC LSB register 21 STEP register 22 Save register 25 WADR register 26 Waveform memory 27 ADC dec register 28 Controller 30 Differential waveform integration arithmetic circuit 31a to 31d DW0 to DW3 register 34 X register 36 Multiplier 38 Y register 51 M register 100 Clock generator 200 RAM
300 Control unit

Claims (10)

再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを大小比較する比較手段と、
前記比較手段によりピッチデータがピッチ制限データより大きいと判断された場合に、ピッチ制限データを超えない値になるまでピッチデータをオクターブシフトして出力する再生ピッチ制限手段と、
前記再生ピッチ制限手段から出力されるピッチデータに基づく差分波形再生にて波形発生する波形発生手段と
を具備することを特徴とする波形発生装置。
A comparison means for comparing the size of the pitch data representing the playback pitch and the pitch limit data specifying the upper limit of the playback pitch;
Reproduction pitch limiting means for octave shifting and outputting the pitch data until the value does not exceed the pitch limit data when the comparing means determines that the pitch data is larger than the pitch limit data;
And a waveform generating means for generating a waveform by differential waveform reproduction based on the pitch data output from the reproduction pitch limiting means.
前記再生ピッチ制限手段は、前記比較手段によりピッチデータがピッチ制限データより小さいと判断された場合に、ピッチデータをそのまま出力することを特徴とする請求項1記載の波形発生装置。 2. The waveform generating apparatus according to claim 1, wherein the reproduction pitch limiting means outputs the pitch data as it is when the comparing means determines that the pitch data is smaller than the pitch limiting data. 時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを記憶する記憶手段を更に備え、
前記比較手段は、処理すべきチャンネルスロット毎に、前記記憶手段から対応するピッチデータとピッチ制限データとを読み出して大小比較することを特徴とする請求項1記載の波形発生装置。
Storage means for storing, for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation, pitch data that represents a playback pitch and pitch limit data that specifies an upper limit of the playback pitch;
2. The waveform generating apparatus according to claim 1, wherein said comparing means reads out the corresponding pitch data and pitch limit data from said storage means for each channel slot to be processed, and compares the magnitudes.
時分割動作する複数の発音チャンネルに対応したチャンネルスロットの全てに共通したピッチ制限データを記憶するピッチ制限データ記憶手段と、
時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータを記憶するピッチデータ記憶手段とを更に備え、
前記比較手段は、処理すべきチャンネルスロットに対応して前記ピッチデータ記憶手段から読み出されるピッチデータと、前記ピッチ制限データ記憶手段から読み出される、全てのチャンネルスロットに共通のピッチ制限データとを大小比較することを特徴とする請求項1記載の波形発生装置。
Pitch limit data storage means for storing pitch limit data common to all channel slots corresponding to a plurality of sound generation channels that perform time division operation;
Pitch data storage means for storing pitch data representing a reproduction pitch for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation;
The comparison means compares the pitch data read from the pitch data storage means corresponding to the channel slot to be processed with the pitch limit data common to all channel slots read from the pitch limit data storage means. The waveform generator according to claim 1, wherein:
再生ピッチを表すピッチデータが、再生ピッチの上限を指定するピッチ制限データに対応した再生ピッチ上限値を超えた場合に、その再生ピッチ上限値をピッチデータとして出力する再生ピッチ制限手段と、
前記再生ピッチ制限手段から出力されるピッチデータに基づく差分波形再生にて波形発生する波形発生手段と
を具備することを特徴とする波形発生装置。
Playback pitch limiting means for outputting the playback pitch upper limit value as pitch data when the pitch data representing the playback pitch exceeds the playback pitch upper limit value corresponding to the pitch limit data specifying the upper limit of the playback pitch;
And a waveform generating means for generating a waveform by differential waveform reproduction based on the pitch data output from the reproduction pitch limiting means.
前記再生ピッチ制限手段は、ピッチデータが再生ピッチ上限値より小さい場合に、ピッチデータをそのまま出力することを特徴とする請求項5記載の波形発生装置。 6. The waveform generator according to claim 5, wherein the reproduction pitch limiting means outputs the pitch data as it is when the pitch data is smaller than the reproduction pitch upper limit value. 時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを記憶する記憶手段を更に備え、
前記再生ピッチ制限手段は、処理すべきチャンネルスロット毎に、前記記憶手段から対応するピッチデータとピッチ制限データとを読み出し、ピッチデータが再生ピッチの上限を指定するピッチ制限データに対応した再生ピッチ上限値を超えた場合に、その再生ピッチ上限値をピッチデータとして出力することを特徴とする請求項5記載の波形発生装置。
Storage means for storing, for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation, pitch data that represents a playback pitch and pitch limit data that specifies an upper limit of the playback pitch;
The reproduction pitch limit means reads the corresponding pitch data and pitch limit data from the storage means for each channel slot to be processed, and the playback pitch upper limit corresponding to the pitch limit data in which the pitch data specifies the upper limit of the playback pitch 6. The waveform generator according to claim 5, wherein when the value is exceeded, the reproduction pitch upper limit value is output as pitch data.
時分割動作する複数の発音チャンネルに対応したチャンネルスロットの全てに共通したピッチ制限データを記憶するピッチ制限データ記憶手段と、
時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータを記憶するピッチデータ記憶手段とを更に備え、
前記再生ピッチ制限手段は、処理すべきチャンネルスロットに対応して前記ピッチデータ記憶手段から読み出されるピッチデータが、前記ピッチ制限データ記憶手段から読み出される全てのチャンネルスロットに共通のピッチ制限データに対応した再生ピッチ上限値を超えた場合に、その再生ピッチ上限値をピッチデータとして出力することを特徴とする請求項5記載の波形発生装置。
Pitch limit data storage means for storing pitch limit data common to all channel slots corresponding to a plurality of sound generation channels that perform time division operation;
Pitch data storage means for storing pitch data representing a reproduction pitch for each channel slot corresponding to a plurality of sound generation channels that perform time-division operation;
The reproduction pitch limiting means corresponds to the pitch limit data read from the pitch data storage means corresponding to the channel slot to be processed corresponding to the pitch limit data common to all channel slots read from the pitch limit data storage means. 6. The waveform generator according to claim 5, wherein when the reproduction pitch upper limit value is exceeded, the reproduction pitch upper limit value is output as pitch data.
再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを大小比較する比較処理と、
前記比較処理によりピッチデータがピッチ制限データより大きいと判断された場合には、ピッチ制限データを超えない値になるまでピッチデータをオクターブシフトして出力する再生ピッチ制限処理と、
前記再生ピッチ制限処理にて出力されるピッチデータに基づく差分波形再生にて波形発生する波形発生処理と
を具備することを特徴とする波形発生処理プログラム。
A comparison process for comparing the size of the pitch data representing the playback pitch with the pitch limit data specifying the upper limit of the playback pitch;
When it is determined by the comparison process that the pitch data is larger than the pitch limit data, a reproduction pitch limit process for outputting the pitch data by octave shifting until the value does not exceed the pitch limit data; and
A waveform generation processing program comprising: a waveform generation process for generating a waveform in differential waveform playback based on pitch data output in the playback pitch limiting process.
再生ピッチを表すピッチデータが、再生ピッチの上限を指定するピッチ制限データに対応した再生ピッチ上限値を超えた場合には、その再生ピッチ上限値をピッチデータとして出力する再生ピッチ制限処理と、
前記再生ピッチ制限処理にて出力されるピッチデータに基づく差分波形再生にて波形発生する波形発生処理と
を具備することを特徴とする波形発生処理プログラム。
When the pitch data representing the playback pitch exceeds the playback pitch upper limit value corresponding to the pitch limit data specifying the upper limit of the playback pitch, the playback pitch limit process for outputting the playback pitch upper limit value as pitch data;
A waveform generation processing program comprising: a waveform generation process for generating a waveform in differential waveform playback based on pitch data output in the playback pitch limiting process.
JP2008118145A 2008-04-30 2008-04-30 Waveform generator and waveform generation processing program Active JP5104522B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008118145A JP5104522B2 (en) 2008-04-30 2008-04-30 Waveform generator and waveform generation processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008118145A JP5104522B2 (en) 2008-04-30 2008-04-30 Waveform generator and waveform generation processing program

Publications (2)

Publication Number Publication Date
JP2009265546A true JP2009265546A (en) 2009-11-12
JP5104522B2 JP5104522B2 (en) 2012-12-19

Family

ID=41391441

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008118145A Active JP5104522B2 (en) 2008-04-30 2008-04-30 Waveform generator and waveform generation processing program

Country Status (1)

Country Link
JP (1) JP5104522B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011113603A (en) * 2009-11-26 2011-06-09 Victor Co Of Japan Ltd Voice reproduction device, voice reproduction method, and program

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62242996A (en) * 1986-04-15 1987-10-23 ヤマハ株式会社 Musical tone signal generator
JPH05273978A (en) * 1992-03-30 1993-10-22 Casio Comput Co Ltd Waveform data reader
JPH0651778A (en) * 1992-07-27 1994-02-25 Yamaha Corp Waveform generating device
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
JP2005266552A (en) * 2004-03-19 2005-09-29 Kawai Musical Instr Mfg Co Ltd Waveform data output apparatus
JP2008046175A (en) * 2006-08-11 2008-02-28 Casio Comput Co Ltd Waveform generator and waveform generation processing program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62242996A (en) * 1986-04-15 1987-10-23 ヤマハ株式会社 Musical tone signal generator
JPH05273978A (en) * 1992-03-30 1993-10-22 Casio Comput Co Ltd Waveform data reader
JPH0651778A (en) * 1992-07-27 1994-02-25 Yamaha Corp Waveform generating device
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
JP2005266552A (en) * 2004-03-19 2005-09-29 Kawai Musical Instr Mfg Co Ltd Waveform data output apparatus
JP2008046175A (en) * 2006-08-11 2008-02-28 Casio Comput Co Ltd Waveform generator and waveform generation processing program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011113603A (en) * 2009-11-26 2011-06-09 Victor Co Of Japan Ltd Voice reproduction device, voice reproduction method, and program

Also Published As

Publication number Publication date
JP5104522B2 (en) 2012-12-19

Similar Documents

Publication Publication Date Title
US7612281B2 (en) Reverberation effect adding device
JP5104522B2 (en) Waveform generator and waveform generation processing program
JP4656326B2 (en) Waveform generator
US5559298A (en) Waveform read-out system for an electronic musical instrument
JPH07306681A (en) Musical sound producing device
US5245126A (en) Waveform generation system with reduced memory requirement, for use in an electronic musical instrument
US5639978A (en) Musical tone signal generating apparatus for electronic musical instrument
JPS6022191A (en) Sound source apparatus
JP2608938B2 (en) Waveform interpolation device
JP2904576B2 (en) Waveform generator
JP2944069B2 (en) Music signal generator
JP4179243B2 (en) Waveform generator and program
JP3223555B2 (en) Waveform reading device
JP3435702B2 (en) Music generator
US20030128102A1 (en) Method and device for generating electronic sounds and portable apparatus utilizing such device and method
JP3097324B2 (en) Digital sound data output device
JPS5921038B2 (en) electronic musical instruments
JP3288500B2 (en) Musical instrument for electronic musical instruments
JP2910632B2 (en) Waveform memory sound generator
JP3104873B2 (en) Sound source device
JP5573465B2 (en) Music generator
JP2003280650A (en) Modulated waveform generator
JP2007132965A (en) Sound source hardware accelerator
JP2940440B2 (en) Electronic musical instrument waveform data compression recording method and waveform data reproduction method
JP3541333B2 (en) Sound signal generator

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120626

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120801

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 5104522

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20151012

Year of fee payment: 3