JP2009265546A - Waveform generator and waveform generation processing program - Google Patents
Waveform generator and waveform generation processing program Download PDFInfo
- 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
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
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
ところで、昨今のマルチティンバー音源では、ポリフォニック数の増加により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
上記請求項1に従属する請求項3に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを記憶する記憶手段を更に備え、前記比較手段は、処理すべきチャンネルスロット毎に、前記記憶手段から対応するピッチデータとピッチ制限データとを読み出して大小比較することを特徴とする。
In the invention according to
上記請求項1に従属する請求項4に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロットの全てに共通したピッチ制限データを記憶するピッチ制限データ記憶手段と、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータを記憶するピッチデータ記憶手段とを更に備え、前記比較手段は、処理すべきチャンネルスロットに対応して前記ピッチデータ記憶手段から読み出されるピッチデータと、前記ピッチ制限データ記憶手段から読み出される、全てのチャンネルスロットに共通のピッチ制限データとを大小比較することを特徴とする。
In the invention according to
請求項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
上記請求項5に従属する請求項7に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータと、再生ピッチの上限を指定するピッチ制限データとを記憶する記憶手段を更に備え、前記再生ピッチ制限手段は、処理すべきチャンネルスロット毎に、前記記憶手段から対応するピッチデータとピッチ制限データとを読み出し、ピッチデータが再生ピッチの上限を指定するピッチ制限データに対応した再生ピッチ上限値を超えた場合に、その再生ピッチ上限値をピッチデータとして出力することを特徴とする。
In the invention according to
上記請求項5に従属する請求項8に記載の発明では、時分割動作する複数の発音チャンネルに対応したチャンネルスロットの全てに共通したピッチ制限データを記憶するピッチ制限データ記憶手段と、時分割動作する複数の発音チャンネルに対応したチャンネルスロット毎に、再生ピッチを表すピッチデータを記憶するピッチデータ記憶手段とを更に備え、前記再生ピッチ制限手段は、処理すべきチャンネルスロットに対応して前記ピッチデータ記憶手段から読み出されるピッチデータが、前記ピッチ制限データ記憶手段から読み出される全てのチャンネルスロットに共通のピッチ制限データに対応した再生ピッチ上限値を超えた場合に、その再生ピッチ上限値をピッチデータとして出力することを特徴とする。
In the invention according to
請求項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
本発明では、最大再生ピッチを超える発音が指示された場合の不自然さを回避することができる。 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
ここで、図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
クロック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
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
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
比較器12は、ピッチ制限レジスタ11にストアされるピッチ制限データPLと、ピッチレジスタ15にストアされるピッチデータPitchとを比較し、ピッチデータPitchがピッチ制限データPLより大きい場合にシフト指示信号を発生する。シフト制御部13は、比較器12からシフト指示信号が供給された場合には、ピッチレジスタ15にストアされるピッチデータPitchを1ビット右シフト(−1オクターブシフト)して出力し、一方、比較器12からシフト指示信号が供給されなければ、ピッチレジスタ15にストアされるピッチデータPitchをスルー出力する。セレクタ14は、制御部300からの切り替え指示に応じて、RAM200から読み出されるピッチデータPitchあるいはシフト制御部13から出力されるピッチデータPitchのいずれかを選択して出力する。
The
このように、再生ピッチ制限回路10では、RAM200から読み出されるピッチデータPitchがピッチ制限データPLを超えると、当該ピッチ制限データPLを超えない値になるまでピッチデータPitchをオクターブシフトする。つまり、ピッチデータPitchで指定される再生ピッチの音名を維持しながら、ピッチ制限データPL以下になるまでオクターブ単位で発音音高を下げる。なお、本実施形態では、後述の動作説明で述べるように、シフト制御部13は最大3回のオクターブシフトを行う。
As described above, when the pitch data Pitch read from the
次に、セレクタ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
更新された現波形アドレス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
加算器20は、ピッチレジスタ15の出力に、加算器16が発生する小数部キャリーを加算して波形アドレス歩進値を発生する。加算器20が発生する波形アドレス歩進値は、STEPレジスタ21にストアされる。退避レジスタ22は、STEPレジスタ21の遅延バッファとして機能し、STEPレジスタ21の波形アドレス歩進値を退避格納する。
The
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
すなわち、最初にセレクタ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
加算器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
加算器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
加算器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
波形メモリ26は、図4に図示するように、16ビット幅の格納エリアを有する。1つの格納エリアには、2の補数で仮数表現された8ビット幅の差分波形データが上位バイトおよび下位バイトに格納される。なお、この8ビット幅の差分波形データは、後述の差分波形積分演算回路30においてビットシフトされ、16ビットで実数表現される差分波形データとなる。
As shown in FIG. 4, the
波形メモリ26は、WADRレジスタ25が順次発生する4つの読み出しアドレスWADR1〜WADR4に応じて、差分波形データD0〜D3を読み出す。差分波形データD0は、上位バイトの差分波形データD0Hおよび下位バイトの差分波形データD0Lから構成される。同様に、差分波形データD1は差分波形データD1H,D1L、差分波形データD2は差分波形データD2H,D2L、差分波形データD3は差分波形データD3H,D3Lから構成される。
The
差分波形積分回路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
コントローラ28は、退避レジスタ22に格納される波形アドレス歩進値と、ADC LSBレジスタ19の値(現波形アドレスADにおける整数部アドレスAの最下位ビットLSB)とで定まる積分演算パターンに従い、積分演算を施す差分波形データを指定する。セレクタ32は、DW0レジスタ32〜DW3レジスタ35にそれぞれストアされる差分波形データの内、コントローラ28が積分演算パターンに従って指定した差分波形データを選択的に出力する。加算器35では、セレクタ32から出力される差分波形データに、Xレジスタ34から出力される波高値Wを加算(積分)する。
The
ここで、図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
例えば、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
次に、加算順番「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
さて、こうした積分演算により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
加算器50、Mレジスタ51およびセレクタ52は、ミキサ回路を構成する。ミキサ回路では、Yレジスタ38から出力される各発音チャンネル毎の波高値Yを全て累算して波形出力waveを形成する。この波形出力waveは、図示されていない音源において、1サンプリング周期毎にD/A変換出力される。
The
(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
次いで、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
こうして、ピッチ制限データ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
シフト制御部13では、比較器12からシフト指示信号が供給されなければ、ピッチレジスタ15にストアされるピッチデータPitchをスルー出力する。したがって、ピッチデータPitchがピッチ制限データPLを超えなければ、CH0処理スロット「3」〜「5」のデータ期間p1〜p3の間、ピッチレジスタ15にストアされるピッチデータPitchは維持される。
If the shift instruction signal is not supplied from the
一方、ピッチデータ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
以後、比較器12およびシフト制御部13では、CH0処理スロット「3」〜「4」のデータ期間c1〜c2において、ピッチデータPitchがピッチ制限データPLを超えない値になるまでピッチデータPitchを1ビット右シフトする。つまり、本実施形態では、都合3回の1ビット右シフトを可能とし、ピッチ制限データPLを超えないようにピッチデータPitchを最大で−3オクターブシフトさせるようになっている。
Thereafter, the
このように、再生ピッチ制限回路10では、RAM200から読み出されるピッチデータPitchがピッチ制限データPLを超えた場合、当該ピッチ制限データPLを超えない値になるまでピッチデータPitchを−1オクターブずつ下げる。すなわち、ピッチデータPitchで指定される再生ピッチの音名を維持しながら、ピッチ制限データPL以下になるまでオクターブ単位で発音音高を下げるようにした為、最大再生ピッチを超える発音が指示された場合の不自然さを回避することが可能になっている。
As described above, when the pitch data Pitch read from the
さて一方、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
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
また、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
そして、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
次に、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
以後、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
さて一方、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
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
そして、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
例えば、前述したように、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
以後、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
そして、乗算器36、加算器37およびYレジスタ38は、ADC decレジスタ27にストアされる現波形アドレスADの小数部アドレスaに基づき、Xレジスタ34にストアされる波高値Wに対し、直線補間演算を図7に図示するタイミングで実行し、これにより算出される波高値YがYレジスタ38にストアされる。この後、波高値Yは、加算器50、Mレジスタ51およびセレクタ52から構成されるミキサ回路においてチャンネル累算されて波形出力waveを形成する。
The
以上のように、第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
すなわち、図9に図示するように、第2実施形態によるRAM200には、現在の波形アドレス(現在指定している差分波形の位相)を表す現波形アドレスAD(整数部アドレスAおよび小数部アドレスa)と、再生ピッチ(発音音高)に対応したアドレス歩進値を表すピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)と、再生ピッチ(発音音高)の上限となる再生ピッチ上限値を指定する3ビットの整数部ピッチ制限データQと、現波形アドレスADに対応して差分波形データが積分された波高値Wとが発音チャンネルに対応付けられた各チャンネルエリアCH0〜CH63毎に格納される。
That is, as shown in FIG. 9, the
再生ピッチ制限回路400において、ピッチ制限レジスタ11には、制御部300の読み出し指示に従ってRAM200から読み出される3ビットの整数部ピッチ制限データQがストアされる。ピッチレジスタ15には、RAM200から読み出されるピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)がストアされる。
In the reproduction
ピッチリミッタ401は、ピッチ制限レジスタ11の出力(整数部ピッチ制限データQ)に対応する再生ピッチ上限値を設定しておき、ピッチレジスタ15から出力されるピッチデータPitchが、設定された再生ピッチ上限値未満ならば当該ピッチデータPitchを次段の加算器16へスルー出力し、一方、設定された再生ピッチ上限値以上ならば、当該再生ピッチ上限値を次段の加算器16に出力する。
The
具体的には、図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
さらに、ピッチ制限レジスタ11の出力が「4」の場合には再生ピッチ上限値「60000h」を、ピッチ制限レジスタ11の出力が「5」の場合には再生ピッチ上限値「58000h」を、ピッチ制限レジスタ11の出力が「6」の場合には再生ピッチ上限値「50000h」を、ピッチ制限レジスタ11の出力が「7」の場合には再生ピッチ上限値「48000h」をそれぞれ発生して内部設定する。なお、整数部ピッチ制限データQに対応した再生ピッチ上限値を生成する態様としては、例えば整数部ピッチ制限データQを読み出しアドレスとして、対応する再生ピッチ上限値を読み出す周知のデータテーブルにて具現する。
Further, when the output of the
このように、第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
したがって、図12に図示するように、RAM200には、ピッチ制限データPL(整数部ピッチ制限データQおよび小数部ピッチ制限データq)を除く、現波形アドレスAD(整数部アドレスAおよび小数部アドレスa)と、ピッチデータPitch(整数部ピッチデータPおよび小数部ピッチデータp)と、波高値Wとが各チャンネルエリアCH0〜CH63毎にストアされるデータ構造となる。こうすることによって、第1実施形態と同様に最大再生ピッチを超える発音が指示された場合の不自然さを回避しつつ、RAM200のメモリサイズ低減を図ることが可能になる。
Accordingly, as shown in FIG. 12, the
[第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
なお、前述の第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.
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
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記載の波形発生装置。 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記載の波形発生装置。 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.
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)
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)
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 |
-
2008
- 2008-04-30 JP JP2008118145A patent/JP5104522B2/en active Active
Patent Citations (8)
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)
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 |