JP2006047728A - Waveform generator and program - Google Patents

Waveform generator and program Download PDF

Info

Publication number
JP2006047728A
JP2006047728A JP2004229087A JP2004229087A JP2006047728A JP 2006047728 A JP2006047728 A JP 2006047728A JP 2004229087 A JP2004229087 A JP 2004229087A JP 2004229087 A JP2004229087 A JP 2004229087A JP 2006047728 A JP2006047728 A JP 2006047728A
Authority
JP
Japan
Prior art keywords
waveform
address
generated
phase information
frequency number
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
JP2004229087A
Other languages
Japanese (ja)
Other versions
JP4179243B2 (en
Inventor
Atsuichi Nakamura
敦一 中村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2004229087A priority Critical patent/JP4179243B2/en
Priority to KR1020050071329A priority patent/KR100693964B1/en
Priority to CN 200510089381 priority patent/CN1734554B/en
Priority to TW094126814A priority patent/TW200620237A/en
Publication of JP2006047728A publication Critical patent/JP2006047728A/en
Application granted granted Critical
Publication of JP4179243B2 publication Critical patent/JP4179243B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To generate waveform having a complex waveform shape in a simple and abundantly controlled manner. <P>SOLUTION: Phase information, which changes with the rate corresponding to frequency information in accordance with the parameter that specifies at least two sample points, is generated so that the information is repeated along a normal direction and a reversed direction between at least the two specified sample points. The frequency information that is used for the rate with which the phase information is changed, is changed in accordance with the parameter that specifies the frequency information that sets the frequency of the waveform to be generated by at least the two sample points. By inputting the generated phase information into a waveform generating means which generates the sample data of a prescribed fundamental waveform made of a plurality of sample points, the waveform, in which the fundamental waveform is deformed in accordance with the change in the phase information, is generated. Thus, only specifying at least two sample points by a user, a waveform having a complex waveform shape is generated in a simple and abundantly controlled manner without changing pitch. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

この発明は、楽音信号を生成するのに用いて好適な波形発生装置及びプログラムに関する。特に、基本波形を変形して複雑な波形形状の波形を簡単且つ制御性豊かに発生することのできるようにした波形発生装置及びプログラムに関する。   The present invention relates to a waveform generator and a program suitable for use in generating a musical sound signal. In particular, the present invention relates to a waveform generating apparatus and a program that can generate a waveform having a complicated waveform shape by modifying a basic waveform easily and with rich controllability.

従来から楽音信号を生成する装置として、例えば可聴周波数領域の周波数変調演算(FM演算)によって所望の倍音構成を持つ楽音信号を合成する所謂FM方式の楽音合成装置(FM音源とも呼ぶ)等が知られている。従来知られているように、FM方式の楽音合成装置では基本的に搬送波信号と変調波信号とをそれぞれ発生し、搬送波信号を変調波信号により変調することによって、所望のスペクトル構成を持つ楽音信号を生成するようにしている。一般的に、こうしたFM方式の楽音合成装置においては、例えば正弦波等の基本波形を発生することが可能なオペレータと呼ばれる波形発生装置を具えている。このオペレータ(波形発生装置)では楽音の音高に対応する所望の周波数で変化する位相情報に応じて、予め記憶された複数サンプル点からなる所定の基本波形(サンプルデータ)を波形テーブルから読み出すなどして発生させ、該発生させた基本波形を搬送波信号や変調波信号などとして周波数変調演算(FM演算)に使用している。   Conventionally, as a device for generating a musical sound signal, for example, a so-called FM-type musical sound synthesizer (also referred to as an FM sound source) that synthesizes a musical sound signal having a desired harmonic structure by frequency modulation calculation (FM calculation) in the audible frequency region is known. It has been. 2. Description of the Related Art As is known in the art, an FM-type musical tone synthesizer basically generates a carrier wave signal and a modulated wave signal, and modulates the carrier wave signal with the modulated wave signal to thereby generate a musical tone signal having a desired spectrum configuration. Is generated. In general, such an FM type musical tone synthesizer includes a waveform generator called an operator capable of generating a basic waveform such as a sine wave. In this operator (waveform generator), a predetermined basic waveform (sample data) consisting of a plurality of sample points stored in advance is read out from the waveform table in accordance with phase information changing at a desired frequency corresponding to the pitch of the musical tone. The generated basic waveform is used as a carrier wave signal, a modulated wave signal, or the like for frequency modulation calculation (FM calculation).

ところで、上記したようなFM方式の楽音合成装置などにおいて、多様な音色を実現する楽音信号を生成するためには、搬送波信号や変調波信号の波形形状を複雑なものにするとよい。そこで、波形テーブルからの基本波形の読み出しを制御することが従来から行われている。こうしたものの一例を挙げると、例えば下記に示す特許文献1に記載の楽音合成装置がある。この特許文献1に記載の楽音合成装置では、所定位相区間において位相値を単にシフトするあるいは下位ビットを無視するなどして変更しながら正弦波テーブル(波形テーブルに該当する)から予め記憶済みの正弦波(基本波形に該当する)のサンプルデータを読み出すことによって該正弦波の波形形状を変化させた上で、該波形形状変更後の波形を周波数変調演算に用いることでより複雑な楽音信号を生成することができるようにしている。
特公平6−44193号公報
By the way, in order to generate a musical tone signal that realizes various tone colors in the above-described FM-type musical tone synthesizer, it is preferable that the waveform shape of the carrier wave signal or the modulated wave signal is complicated. Therefore, it has been conventionally performed to control the reading of the basic waveform from the waveform table. As an example of such a device, for example, there is a musical tone synthesizer described in Patent Document 1 shown below. In the musical tone synthesizing device described in Patent Document 1, a sine stored in advance from a sine wave table (corresponding to a waveform table) while changing the phase value in a predetermined phase section by simply shifting or ignoring lower bits. A more complex musical tone signal is generated by changing the waveform shape of the sine wave by reading the sample data of the wave (corresponding to the basic waveform) and then using the waveform after the waveform shape change for frequency modulation calculation To be able to.
Japanese Patent Publication No. 6-44193

しかし、基本波形の読み出し制御として、上述したように所定位相区間において位相値を単にシフトするあるいは下位ビットを無視するなどの制御を行いながら正弦波テーブルから正弦波を読み出すだけでは、元の正弦波の波形形状を大きく変化させることは難しい。したがって、そのようにして生成された波形を用いて、多様な音色を実現する、より複雑な楽音信号を生成することは非常に難しいことであった、という問題点があった。   However, as a basic waveform readout control, simply reading out the sine wave from the sine wave table while performing control such as simply shifting the phase value in the predetermined phase interval or ignoring the lower bits as described above, the original sine wave It is difficult to greatly change the waveform shape. Therefore, there is a problem that it is very difficult to generate a more complicated musical tone signal that realizes various timbres using the waveform generated in this way.

本発明は上述の点に鑑みてなされたもので、基本波形に比べて大きな変化のある複雑な波形形状をした波形を簡単且つ制御性豊かに発生することのできるようにした波形発生装置及びプログラムを提供しようとするものである。   The present invention has been made in view of the above points, and a waveform generating apparatus and a program capable of generating a waveform having a complicated waveform shape having a large change compared to a basic waveform easily and with rich controllability. Is to provide.

本発明に係る波形発生装置は、複数サンプル点からなる所定の基本波形のサンプルデータを、入力される位相情報に応じて、発生する波形発生手段と、発生すべき波形の周波数を設定する周波数情報を、少なくとも2つのサンプル点を特定するパラメータに従い、変更する手段と、前記変更された周波数情報に基づき、該周波数情報に応じたレートで変化する位相情報を発生する位相情報発生手段と、前記位相情報発生手段で発生する前記位相情報が、前記特定された前記少なくとも2つのサンプル点の間で正及び逆方向に繰り返されるよう、前記位相情報発生手段を制御する手段とを備え、前記位相情報発生手段で発生された前記位相情報を前記波形発生手段に入力することで、該位相情報の変化に応じて前記基本波形を変形した波形が該波形発生手段から発生されることを特徴とする。   The waveform generator according to the present invention is a frequency generator for generating sample data of a predetermined basic waveform composed of a plurality of sample points in accordance with input phase information, and frequency information for setting the frequency of the waveform to be generated. Means for changing at least two sample points according to a parameter, phase information generating means for generating phase information that changes at a rate corresponding to the frequency information based on the changed frequency information, and the phase Means for controlling the phase information generating means so that the phase information generated by the information generating means is repeated in the forward and reverse directions between the specified at least two sample points. By inputting the phase information generated by the means to the waveform generating means, a waveform obtained by deforming the basic waveform according to the change in the phase information can be obtained. Characterized in that it is generated from the shape generator.

本発明によると、少なくとも2つのサンプル点を特定するパラメータに従って、周波数情報に応じたレートで変化する位相情報を、前記特定された少なくとも2つのサンプル点の間で正及び逆方向に繰り返されるようにして発生する。前記位相情報が変化するレートに用いられる周波数情報は、発生すべき波形の周波数を設定する周波数情報を前記少なくとも2つのサンプル点を特定するパラメータに従い変更したものである。そして、前記発生した位相情報を、複数サンプル点からなる所定の基本波形のサンプルデータを発生する波形発生手段に対して入力することにより、該位相情報の変化に応じて前記基本波形を変形した波形が発生される。特定された少なくとも2つのサンプル点の間で正及び逆方向に繰り返されるようにして発生される位相情報を入力して所定の基本波形のサンプルデータを発生する場合に前記位相情報を変更せずに入力すると、前記繰り返しなく発生される位相情報を入力して発生された波形のピッチに比べて、繰り返しがある分だけ発生される波形のピッチは大きくなる。そこで、周波数情報を前記少なくとも2つのサンプル点を特定するパラメータに従い変更し、前記変更された周波数情報に応じたレートで変化する位相情報に基づき所定の基本波形のサンプルデータを発生させる。このようにすると、ユーザは少なくとも2つのサンプル点を特定するだけで、ピッチを変えることなく複雑な波形形状をした波形を簡単且つ制御性豊かに発生させることができるようになる。   According to the present invention, phase information that changes at a rate according to frequency information according to a parameter that specifies at least two sample points is repeated in the forward and reverse directions between the specified at least two sample points. Occur. The frequency information used for the rate at which the phase information changes is obtained by changing the frequency information for setting the frequency of the waveform to be generated according to the parameter for specifying the at least two sample points. Then, by inputting the generated phase information to a waveform generating means for generating sample data of a predetermined basic waveform composed of a plurality of sample points, a waveform obtained by deforming the basic waveform in accordance with the change of the phase information Is generated. When phase information generated by repeating in the forward and reverse directions between at least two specified sample points is input to generate sample data of a predetermined basic waveform, the phase information is not changed. When input, the pitch of the waveform generated corresponding to the repetition becomes larger than the pitch of the waveform generated by inputting the phase information generated without repetition. Therefore, the frequency information is changed according to the parameter specifying the at least two sample points, and sample data of a predetermined basic waveform is generated based on the phase information that changes at a rate corresponding to the changed frequency information. In this way, the user can generate a waveform having a complicated waveform shape simply and with a high degree of controllability without changing the pitch, simply by specifying at least two sample points.

本発明は装置の発明として構成し実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはDSP等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記憶媒体の形態で実施することもできる。   The present invention can be constructed and implemented not only as a device invention but also as a method invention. Further, the present invention can be implemented in the form of a program of a processor such as a computer or a DSP, or can be implemented in the form of a storage medium storing such a program.

この発明によれば、パラメータとして新たに少なくとも2つのサンプル点を特定するパラメータを与え、波形を発生する際には前記少なくとも2つのサンプル点間においては正及び逆方向に繰り返されるようにして位相情報の発生を制御する。こうすると、基本波形に比べて大きな変化のある複雑な波形形状をした波形を簡単且つ制御性豊かに発生することができることから、該発生した波形を用いて多様な音色を実現する、より複雑な楽音信号を簡単に生成することができるようになる、という効果を得る。   According to the present invention, a parameter for specifying at least two sample points is newly given as a parameter, and when generating a waveform, the phase information is repeated in the forward and reverse directions between the at least two sample points. Control the occurrence of This makes it possible to easily generate a waveform having a complicated waveform shape that has a large change compared to the basic waveform, with rich controllability. Therefore, it is possible to generate various timbres using the generated waveform. An effect is obtained that a musical sound signal can be easily generated.

以下、この発明の実施の形態を添付図面に従って詳細に説明する。   Embodiments of the present invention will be described below in detail with reference to the accompanying drawings.

まず、本発明に係る波形発生装置を適用した周波数変調演算型(FM方式)の楽音合成装置について、図1及び図2を用いて簡単に説明する。図1は、この発明に係る波形発生装置を適用した周波数変調演算型(FM方式)の楽音合成装置の全体構成の一実施例を示すブロック図である。図2は、図1に示したオペレータ(波形発生装置)の基本構成の一実施例を示すブロック図である。ただし、従来知られているように、FM方式の楽音合成装置では波形発生装置としてハード的には演算ユニットであるオペレータを1個具備しておけばよく、この1個のオペレータを2タイムスロットで時分割使用することにより図1に示すような2個のオペレータ(後述するモジュレータOM又はキャリアOC)として機能させるようにしている。そこで、図2では代表的なオペレータを1つだけ図示し、これを用いてオペレータ(モジュレータOM又はキャリアOC)について簡単に説明する。   First, a frequency modulation calculation type (FM method) musical tone synthesis apparatus to which a waveform generator according to the present invention is applied will be briefly described with reference to FIGS. FIG. 1 is a block diagram showing an embodiment of the overall configuration of a frequency modulation calculation type (FM method) musical tone synthesis apparatus to which a waveform generator according to the present invention is applied. FIG. 2 is a block diagram showing an embodiment of the basic configuration of the operator (waveform generator) shown in FIG. However, as is known in the art, an FM-type musical sound synthesizer may be equipped with one operator, which is an arithmetic unit in terms of hardware, as a waveform generator, and this one operator can be divided into two time slots. By using time-sharing, it is made to function as two operators (a modulator OM or a carrier OC described later) as shown in FIG. Therefore, in FIG. 2, only one representative operator is shown, and the operator (modulator OM or carrier OC) will be briefly described using this.

図1に示すように、本実施例に示すFM方式の楽音合成装置は1音につき2個のオペレータ(モジュレータOM及びキャリアOC)を使用してFM演算を行い、所望のスペクトル構成を持つ楽音信号を合成する。この楽音合成装置は、楽音信号の基本となるキャリア波形信号(搬送波信号)を発生するキャリア波形発生器(キャリアOC)と、前記キャリア波形信号を所望の楽音信号に変調するためのモジュレーション波形信号(変調波信号)を発生するモジュレーション波形発生器(モジュレータOM)とからなる。これらの各波形発生器では、FB(フィードバック)パラメータ、波形パラメータ、ピッチパラメータ、エンベロープパラメータなどの各種パラメータをそれぞれ入力できるようになっており、これらの各パラメータに従って最終的にキャリアOCから出力される楽音信号の波形形状を制御することのできるようにしている。詳しくは後述するが、この実施例に示す楽音合成装置においては、波形パラメータとして少なくともループポイントアドレス(LP)及びリターンポイントアドレス(RP)とここでは呼んでいる適宜の相対値(例えば相対アドレス値など)をそれぞれのオペレータに対して与え、各オペレータでは前記ループポイントアドレス(LP)及びリターンポイントアドレス(RP)に基づくアドレス範囲において、波形テーブル(後述のウェーブテーブルWT)から所望の基本波形(正弦波など)を往復で繰り返し読み出すように制御する。こうすることにより、ユーザは上記ループポイントアドレス(LP)及びリターンポイントアドレス(RP)を基本波形のスタートアドレス(SA)及びエンドアドレス(EA)以外の中間点のいずれかに設定するだけで、多様な音色を実現する、より複雑な波形形状をした楽音信号を簡単に生成することができるようになる。なお、上記ループポイントアドレス(LP)及びリターンポイントアドレス(RP)以外の波形パラメータに含まれるその他のパラメータや、FB(フィードバック)パラメータ、ピッチパラメータ、エンベロープパラメータについては公知であることから、ここでの説明を省略する。   As shown in FIG. 1, the FM musical tone synthesizer shown in this embodiment performs FM calculation using two operators (modulator OM and carrier OC) for each tone, and a musical tone signal having a desired spectrum configuration. Is synthesized. This musical tone synthesizer includes a carrier waveform generator (carrier OC) that generates a carrier waveform signal (carrier signal) that is the basis of a musical tone signal, and a modulation waveform signal (for modulating the carrier waveform signal into a desired musical tone signal). A modulation waveform generator (modulator OM) for generating a modulation wave signal). In each of these waveform generators, various parameters such as an FB (feedback) parameter, a waveform parameter, a pitch parameter, and an envelope parameter can be input, and finally output from the carrier OC according to these parameters. The waveform shape of the musical tone signal can be controlled. As will be described in detail later, in the musical tone synthesizer shown in this embodiment, at least a loop point address (LP) and a return point address (RP) as waveform parameters and appropriate relative values referred to here (for example, a relative address value) ) For each operator, and in each operator, in the address range based on the loop point address (LP) and the return point address (RP), a desired basic waveform (sine wave) is obtained from a waveform table (wave table WT described later). Etc.) is controlled so as to be read repeatedly in a round trip. By doing this, the user can simply set the loop point address (LP) and the return point address (RP) to any one of intermediate points other than the start address (SA) and end address (EA) of the basic waveform. It is possible to easily generate a musical tone signal having a more complicated waveform shape that realizes a simple timbre. Since other parameters included in the waveform parameters other than the loop point address (LP) and the return point address (RP), the FB (feedback) parameter, the pitch parameter, and the envelope parameter are well known, Description is omitted.

図2に示すように、各オペレータ(モジュレータOM又はキャリアOC)はそれぞれセレクタS1、フェーズジェネレータPG、アドレスジェネレータAG、ウェーブテーブルWT、エンベロープジェネレータEG、加算器K1、乗算器J1を少なくとも含んで構成される。セレクタS1はFBパラメータが「0」つまり該オペレータの出力波形を自己フィードバックしないよう設定されている場合には、セレクタS1の入力端子からの自己フィードバック信号を出力しない一方で、FBパラメータが「1」つまり該オペレータの出力波形を自己フィードバックするよう設定されている場合には、セレクタS1の入力端子からの自己フィードバック信号を出力する。すなわち、図1に示すように、モジュレータOMは自身の出力波形を入力側にフィードバックすることにより前記出力波形で更なる変調を行う所謂自己フィードバック機能を具えており、同じ周波数での変調であるが出力波形をフィードバックすることによって、より複雑な波形の変調波信号を作り出すことができるようにしている。そこで、FBパラメータを設定することによって、こうした自己フィードバック機能を動作させるか否かを制御する。ただし、図1から理解できるように、こうした自己フィードバック機能を有しているのはモジュレータOMのみであってキャリアOCは上記機能を有していないことから、キャリアOCでは自己フィードバック信号を出力することがない。そこで、キャリアOCでは、前記FBパラメータをモジュレータOMからの出力波形を入力するか否かを決定するためのパラメータとして用いる。   As shown in FIG. 2, each operator (modulator OM or carrier OC) includes at least a selector S1, a phase generator PG, an address generator AG, a wave table WT, an envelope generator EG, an adder K1, and a multiplier J1. The When the FB parameter is set to “0”, that is, the output waveform of the operator is not self-feedback, the selector S1 does not output the self-feedback signal from the input terminal of the selector S1, while the FB parameter is “1”. That is, when the operator's output waveform is set to self-feedback, a self-feedback signal is output from the input terminal of the selector S1. That is, as shown in FIG. 1, the modulator OM has a so-called self-feedback function that performs further modulation on the output waveform by feeding back its output waveform to the input side, and the modulation is performed at the same frequency. By feeding back the output waveform, a modulated wave signal having a more complicated waveform can be generated. Therefore, whether or not to operate such a self-feedback function is controlled by setting an FB parameter. However, as can be understood from FIG. 1, since only the modulator OM has such a self-feedback function and the carrier OC does not have the above function, the carrier OC outputs a self-feedback signal. There is no. Therefore, in the carrier OC, the FB parameter is used as a parameter for determining whether or not to input an output waveform from the modulator OM.

フェーズジェネレータPGは、演奏操作子(例えば鍵盤など)のユーザ操作に応じて入力される例えば音高及びオクターブ情報などのピッチパラメータに応じて、該当するピッチ周波数ナンバを発生する。ピッチ周波数ナンバは、押下された鍵などの操作された演奏操作子毎に予め割り当てられている音高に、又はMIDI等の演奏データに含まれるキーコードに対応した発生すべき波形の音高周波数(ピッチ)を決定する数値データからなる周波数情報である。詳しくは後述するが(図3及び図4参照)、フェーズジェネレータPGでは波形パラメータとしてループポイントアドレス(LP)及びリターンポイントアドレス(RP)が設定されている場合に、該ループポイントアドレス(LP)及びリターンポイントアドレス(RP)に応じて前記発生したピッチ周波数ナンバを補正する。このようにしてフェーズジェネレータPGから発生されたピッチ周波数ナンバは、加算器K1によりセレクタS1からの出力と加算されてアドレスジェネレータAGに対して与えられる。   The phase generator PG generates a corresponding pitch frequency number according to pitch parameters such as pitch and octave information that are input in response to a user operation of a performance operator (for example, a keyboard). The pitch frequency number is a pitch frequency of a waveform to be generated corresponding to a pitch assigned in advance for each operated performance operator such as a pressed key or a key code included in performance data such as MIDI. This is frequency information composed of numerical data for determining (pitch). Although details will be described later (see FIGS. 3 and 4), when the loop point address (LP) and the return point address (RP) are set as waveform parameters in the phase generator PG, the loop point address (LP) and The generated pitch frequency number is corrected according to the return point address (RP). The pitch frequency number generated from the phase generator PG in this way is added to the output from the selector S1 by the adder K1 and given to the address generator AG.

アドレスジェネレータAGは位相角(0〜2π)に対応する位相情報を発生する回路であり、前記フェーズジェネレータPGから与えられたピッチ周波数ナンバを累算(加算又は減算であってもよい)することに応じて波形読み出しアドレス信号を発生する。この波形読み出しアドレス信号は、ウェーブテーブルWTに記憶された基本波形を読み出すためのアドレス情報である。ウェーブテーブルWTは基本波形を多数記憶したテーブルであり、該テーブルには基本波形(サンプルデータ)として正弦波、三角波、のこぎり波などの1周期分の各波形データが複数のサンプル点毎に記憶されている。ウェーブテーブルWTにおいて、当該基本波形の最初のサンプルデータを記憶した絶対アドレスがスタートアドレス(SA)であり、その基本波形の最後のサンプルデータを記憶した絶対アドレスがエンドアドレス(EA)である。   The address generator AG is a circuit that generates phase information corresponding to the phase angle (0 to 2π), and accumulates (may be addition or subtraction) the pitch frequency number given from the phase generator PG. In response, a waveform read address signal is generated. This waveform read address signal is address information for reading the basic waveform stored in the wave table WT. The wave table WT stores a large number of basic waveforms. In this table, waveform data for one cycle such as a sine wave, a triangular wave, and a sawtooth wave is stored as a basic waveform (sample data) for each of a plurality of sample points. ing. In the wave table WT, the absolute address storing the first sample data of the basic waveform is a start address (SA), and the absolute address storing the last sample data of the basic waveform is an end address (EA).

この実施例に示す楽音合成装置においては波形パラメータとして、スタートアドレス(SA)に向かってアドレスを遡って(つまりアドレス値が減少する負の方向に)基本波形の読み出しを開始する相対値(例えば相対アドレス値など)であるループポイントアドレス(LP)、アドレスを遡っての読み出しを折り返して再度エンドアドレス(EA)に向かって(つまりアドレス値が増加する正の方向に)基本波形の読み出しを開始する相対値(例えば相対アドレス値など)であるリターンポイントアドレス(RP)をそれぞれ適宜に設定することができ、これを各オペレータに与えることができるようになっている。各オペレータにおいてウェーブテーブルWTから所望の基本波形(サンプルデータ)を読み出す際には、上記ループポイントアドレス(LP)及びリターンポイントアドレス(RP)を参照して、スタートアドレス(SA)からループポイントアドレス(LP)まで順次に基本波形の読み出しを行うと(1回目の読み出し)、次にループポイントアドレス(LP)からリターンポイントアドレス(RP)までアドレスを遡るようにして基本波形の読み出しを行い(2回目の読み出し)、さらにリターンポイントアドレス(RP)まで戻ったら再度エンドアドレス(EA)まで順次に基本波形の読み出しを行う(3回目の読み出し)ようにして基本波形の読み出しを制御する。したがって、ループポイントアドレス(LP)からリターンポイントアドレス(RP)までのアドレス範囲においては、該当する基本波形が3回繰り返して読み出されることになる(それ以外の範囲では1回の読み出しのみ)。こうしたウェーブテーブルWTからの基本波形の読み出しは、上記アドレスジェネレータAGから出力される波形読み出しアドレス信号に基づくアドレス進行に従って制御される。このアドレスジェネレータAGから出力される波形読み出しアドレス信号については、後述する(図5及び図6参照)。   In the musical tone synthesizer shown in this embodiment, as a waveform parameter, a relative value (for example, a relative value) that starts reading out the basic waveform by going back the address toward the start address (SA) (that is, in the negative direction in which the address value decreases). Loop point address (LP), which is an address value, etc., and reading back to the address are folded back, and reading of the basic waveform is started again toward the end address (EA) (that is, in the positive direction in which the address value increases). A return point address (RP) that is a relative value (for example, a relative address value) can be set as appropriate, and can be given to each operator. When each operator reads out a desired basic waveform (sample data) from the wave table WT, the loop point address (LP) and the return point address (RP) are referred to, and the loop point address (SA) is determined from the start address (SA). When the basic waveform is read sequentially until (LP) (first read), the basic waveform is read back from the loop point address (LP) to the return point address (RP) (second time). When the return to the return point address (RP) is completed, the basic waveform is read out sequentially until the end address (EA) is read again (third read). Therefore, in the address range from the loop point address (LP) to the return point address (RP), the corresponding basic waveform is repeatedly read out three times (in other ranges, only one reading is performed). The reading of the basic waveform from the wave table WT is controlled according to the address progression based on the waveform read address signal output from the address generator AG. The waveform read address signal output from the address generator AG will be described later (see FIGS. 5 and 6).

エンベロープジェネレータEGは入力されたエンベロープパラメータに応じたエンベロープ信号を出力し、これをウェーブテーブルWTから基本波形を読み出すことに伴い生成された波形に対して乗算することにより最終的に出力する信号のエンベロープを決定する。図1に示した周波数変調演算型の楽音合成装置では、上記のようにしてオペレータから出力される信号を搬送波信号や変調波信号などとして用いる。   The envelope generator EG outputs an envelope signal corresponding to the input envelope parameter, and multiplies the generated waveform by reading out the basic waveform from the wavetable WT, thereby finally outputting the envelope of the signal. To decide. In the frequency modulation calculation type musical tone synthesizer shown in FIG. 1, the signal output from the operator as described above is used as a carrier wave signal, a modulated wave signal, or the like.

次に、上述したオペレータに含まれるフェーズジェネレータPG及びアドレスジェネレータAGの詳細について説明する。まず、フェーズジェネレータPGについて、図3及び図4を用いて説明する。図3は、フェーズジェネレータPGの具体的な実施例を示す回路図である。図4は、フェーズジェネレータPGから出力されるピッチ周波数ナンバを時間経過にあわせて累算したAG出力波形(ただし、スタートアドレス(SA)によるオフセットは省略)を表した図である。ここで、図4(a)は基本波形の繰り返し読み出しがない場合(つまり、ループポイントアドレス(LP)及びリターンポイントアドレス(RP)が設定されておらず、後述するピッチ周波数ナンバの補正がなされない場合)のAG出力波形図であり、図4(b)は基本波形の繰り返し読み出しがある場合(つまり、ループポイントアドレス(LP)及びリターンポイントアドレス(RP)が設定されており、後述するピッチ周波数ナンバの補正がなされた場合)のAG出力波形図である。   Next, details of the phase generator PG and the address generator AG included in the above-described operator will be described. First, the phase generator PG will be described with reference to FIGS. FIG. 3 is a circuit diagram showing a specific embodiment of the phase generator PG. FIG. 4 is a diagram showing an AG output waveform obtained by accumulating the pitch frequency number output from the phase generator PG as time passes (however, the offset by the start address (SA) is omitted). Here, in FIG. 4A, when the basic waveform is not repeatedly read (that is, the loop point address (LP) and the return point address (RP) are not set, the pitch frequency number described later is not corrected). 4 (b) is an AG output waveform diagram, and FIG. 4 (b) shows a case where the basic waveform is repeatedly read (that is, a loop point address (LP) and a return point address (RP) are set, and a pitch frequency described later). It is an AG output waveform diagram when the number is corrected).

図3に示すように、フェーズジェネレータPGは、シフタB、補正係数算出器E、乗算器J2を少なくとも含む回路により構成される。シフタBはピッチパラメータとして入力された音高に対応した音高周波数(ピッチ)に比例するピッチ周波数ナンバ(FUNM)を、同様にピッチパラメータとして入力されたオクターブ情報OCTに従いオクターブシフトするためのものである。例えば、シフタBはピッチ周波数ナンバ(FNUM)をオクターブ情報OCTが指示するビット数だけシフトし、ピッチ周波数ナンバ(FNUM1)として出力する。したがって、オクターブシフトされない場合には、入力された音高に対応したピッチ周波数ナンバ(FUNM)とシフタBからの出力であるオクターブシフト後のピッチ周波数ナンバ(FNUM1)とは等しいものとなる。シフタBからの出力は乗算器J2に与えられて、補正係数算出部Eから出力される補正係数と乗算される。補正係数算出部Eは波形パラメータとして入力されたループポイントアドレス(LP)及びリターンポイントアドレス(RP)に基づき補正係数を算出して、これを乗算器J2に与えることによりシフタBから出力されたピッチ周波数ナンバ(FNUM1)を補正する。該補正係数は、以下に示す数1によって算出する。

Figure 2006047728
ここで、「L」はウェーブテーブルWTにおいて1周期分の所望の基本波形を記憶しているアドレス範囲であり(つまり、スタートアドレスからエンドアドレスまでのアドレス長)、「LP」はループポイントアドレス、「RP」はリターンポイントアドレスである。 As shown in FIG. 3, the phase generator PG includes a circuit including at least a shifter B, a correction coefficient calculator E, and a multiplier J2. The shifter B is for shifting the pitch frequency number (FUNM) proportional to the pitch frequency (pitch) corresponding to the pitch input as the pitch parameter, in the same manner, according to the octave information OCT input as the pitch parameter. is there. For example, the shifter B shifts the pitch frequency number (FNUM) by the number of bits indicated by the octave information OCT and outputs it as the pitch frequency number (FNUM1). Therefore, when the octave shift is not performed, the pitch frequency number (FUNM) corresponding to the input pitch is equal to the pitch frequency number (FNUM1) after the octave shift which is the output from the shifter B. The output from the shifter B is given to the multiplier J2 and is multiplied by the correction coefficient output from the correction coefficient calculation unit E. The correction coefficient calculation unit E calculates a correction coefficient based on the loop point address (LP) and the return point address (RP) input as the waveform parameters, and supplies this to the multiplier J2, thereby outputting the pitch output from the shifter B. The frequency number (FNUM1) is corrected. The correction coefficient is calculated by the following equation (1).
Figure 2006047728
Here, “L” is an address range in which a desired basic waveform for one cycle is stored in the wave table WT (that is, an address length from a start address to an end address), and “LP” is a loop point address, “RP” is a return point address.

補正係数算出器Eからの出力である前記補正係数と、シフタBからの出力であるシフト後のピッチ周波数ナンバ(FNUM1)とは乗算器J2に与えられて、乗算器J2により互いに掛け合わされることによって補正後のピッチ周波数ナンバ(FNUM2)を算出し、これをアドレスジェネレータAGに対して出力する。詳しくは後述するが、リターンポイントアドレス(RP)及びループポイントアドレス(LP)間において、ウェーブテーブルWT内の基本波形のサンプル値データを補正前のピッチ周波数ナンバ(FNUM1)に従って繰り返し読み出した場合にはその分だけ生成される波形のピッチが変わってしまうことが生ずるので(後述の図6において一点鎖線で示した波形図参照)、ここで予め基本波形を繰り返し読み出しする範囲に応じて予めピッチ周波数ナンバ(FNUM1)を補正しておくことにより、ウェーブテーブルWTから基本波形を繰り返し読み出して生成される波形のピッチが変わらないようにしている(後述の図6において実線で示した波形図参照)。   The correction coefficient that is output from the correction coefficient calculator E and the shifted pitch frequency number (FNUM1) that is output from the shifter B are supplied to the multiplier J2 and multiplied by the multiplier J2. Is used to calculate a corrected pitch frequency number (FNUM2) and output it to the address generator AG. As will be described in detail later, when the sample value data of the basic waveform in the wave table WT is repeatedly read according to the pitch frequency number (FNUM1) before correction between the return point address (RP) and the loop point address (LP). The pitch of the generated waveform may change accordingly (see the waveform diagram indicated by a dashed line in FIG. 6 to be described later). Here, the pitch frequency number is previously set according to the range in which the basic waveform is repeatedly read out. By correcting (FNUM1), the pitch of the waveform generated by repeatedly reading out the basic waveform from the wave table WT is prevented from changing (see the waveform diagram shown by the solid line in FIG. 6 described later).

図4(a)に示すように、波形パラメータとしてループポイントアドレス(LP)及びリターンポイントアドレス(RP)が与えられていない場合、つまり波形の繰り返し読み出しが「なし」の場合には、後述するアドレスジェネレータAGにおいて所定の規則的時間間隔(Δt)毎にピッチ周波数ナンバ(FNUM1)が順次に加算され、各時間におけるピッチ周波数ナンバ累算値が算出される。ループポイントアドレス(LP)及びリターンポイントアドレス(RP)が与えられていない場合には、補正係数算出器Eによる補正係数は「1」と算出されることから、ピッチ周波数ナンバ(FNUM1)が補正されることなくそのまま累算に用いられる。図4(a)に示す実施例では、1周期分の基本波形のアドレス長(L)に達するまでの時間、つまり1周期波形をウェーブテーブルWTから読み出すのにかかる時間は「t12」であり、この時間は基本波形をウェーブテーブルWTから読み出す際のピッチに相当する。   As shown in FIG. 4A, when the loop point address (LP) and the return point address (RP) are not given as the waveform parameters, that is, when the waveform is repeatedly read as “none”, the address described later is used. In the generator AG, a pitch frequency number (FNUM1) is sequentially added every predetermined regular time interval (Δt), and a pitch frequency number accumulated value at each time is calculated. When the loop point address (LP) and the return point address (RP) are not given, the correction coefficient by the correction coefficient calculator E is calculated as “1”, so that the pitch frequency number (FNUM1) is corrected. It is used for accumulation without any change. In the embodiment shown in FIG. 4A, the time required to reach the address length (L) of the basic waveform for one period, that is, the time required to read one period waveform from the wavetable WT is “t12”. This time corresponds to the pitch when the basic waveform is read from the wavetable WT.

一方、図4(b)に示すように、波形パラメータとしてループポイントアドレス(LP)及びリターンポイントアドレス(RP)が与えられている場合、つまり波形の繰り返し読み出しが「あり」の場合においても、上記と同様にして所定の規則的時間間隔(Δt)毎にピッチ周波数ナンバが順次に加算されることによって各時間におけるピッチ周波数ナンバ累算値が算出されることは同じであるが、この場合には補正係数算出記Eによる補正係数は「1以上」と算出されることから補正後のピッチ周波数ナンバ(FNUM2)が累算に用いられる。図4(b)に示した実施例においては、ループポイントアドレス(LP)として1周期波形のアドレス長(L)に対する相対アドレス値「4L/6」、リターンポイントアドレス(RP)として1周期波形のアドレス長(L)に対する相対アドレス値「L/6」がそれぞれ設定されていることから、上記数1に従い補正係数は「2」と算出される。そこで、補正前のピッチ周波数ナンバ(FNUM1)の2倍に補正されたピッチ周波数ナンバ(FNUM2)が順次に累算されることになり、図4(a)の場合と比較して2倍の速さで1周期波形のアドレス長に達する。すなわち、1周期波形のアドレス長に達するまでの時間は「t6」となり、この時間がピッチに相当することから上記の場合と比べ基本波形をウェーブテーブルWTから読み出す際のピッチがここでは一時的に変更されることになる。   On the other hand, as shown in FIG. 4B, when the loop point address (LP) and the return point address (RP) are given as the waveform parameters, that is, when the waveform is repeatedly read out, Similarly, the pitch frequency number accumulated value at each time is calculated by sequentially adding the pitch frequency number every predetermined regular time interval (Δt), but in this case, Since the correction coefficient according to the correction coefficient calculation E is calculated as “1 or more”, the corrected pitch frequency number (FNUM2) is used for accumulation. In the embodiment shown in FIG. 4B, the relative address value “4L / 6” with respect to the address length (L) of the one-cycle waveform as the loop point address (LP) and the one-cycle waveform as the return point address (RP). Since the relative address value “L / 6” with respect to the address length (L) is set, the correction coefficient is calculated as “2” according to the above equation (1). Therefore, the pitch frequency number (FNUM2) corrected to twice the pitch frequency number (FNUM1) before correction is sequentially accumulated, which is twice as fast as the case of FIG. 4 (a). Now, the address length of one period waveform is reached. That is, the time required to reach the address length of one period waveform is “t6”, and this time corresponds to the pitch. Therefore, the pitch when reading the basic waveform from the wavetable WT is temporarily compared with the above case here. Will be changed.

次に、アドレスジェネレータAGについて、図5及び図6を用いて説明する。図5は、アドレスジェネレータAGの具体的な実施例を示す回路図である。図6は、アドレスジェネレータAGから出力されるAG出力波形を表す図である。ただし、この図6では説明を理解し易くするために、基本波形の繰り返し読み出しを行った際にピッチ周波数ナンバに対する「補正なし」の場合を一点鎖線で、「補正あり」の場合を実線でそれぞれ示し、上述したフェーズジェネレータPGにおけるピッチ周波数ナンバ補正の有無による出力信号の違いについて説明する。   Next, the address generator AG will be described with reference to FIGS. FIG. 5 is a circuit diagram showing a specific embodiment of the address generator AG. FIG. 6 is a diagram illustrating an AG output waveform output from the address generator AG. However, in order to facilitate understanding of the explanation in FIG. 6, when the basic waveform is repeatedly read out, the case of “no correction” for the pitch frequency number is indicated by a one-dot chain line, and the case of “correction” is indicated by a solid line. The difference in the output signal depending on the presence / absence of the pitch frequency number correction in the phase generator PG described above will be described.

上記フェーズジェネレータPGから出力された補正後のピッチ周波数ナンバ(FNUM2)はアドレスジェネレータAGに与えられ、アドレスジェネレータAGではウェーブテーブルWTから基本波形のサンプルデータを読み出すための波形読み出しアドレス信号(OUT)を出力する。ここでは説明を理解し易くするために、便宜的にアドレスジェネレータAGを機能別に分けて説明する。すなわち、アドレスジェネレータAGを機能的に大きく分けるとすると、ピッチ周波数ナンバを累算することにより波形読み出しアドレスを生成する機能Xと、ループポイントアドレス(LP)とリターンポイントアドレス(RP)とに基づき基本波形を該当するアドレス範囲において繰り返し読み出しする制御を行う機能Yとに分けることができ、これらの各機能をそれぞれ実現するための回路を有している。前記機能Xを実現する回路は、セレクタS2及びS3、遅延回路D、ゲート回路G、加算器K2、減算器Mとを少なくとも含んで構成されている。他方、前記機能Yを実現する回路は、反転器P、セレクタS2、比較回路H1及びH2、遅延回路D1及びD2、EXOR回路O1及びO2、OR回路N1及びN2、カウンタCN、デコーダQを少なくとも含んで構成されている。勿論、前記機能X及び機能Yを実現するそれぞれの回路は上記したものに限られないことは言うまでもない。   The corrected pitch frequency number (FNUM2) output from the phase generator PG is given to the address generator AG, and the address generator AG receives a waveform read address signal (OUT) for reading the sample data of the basic waveform from the wave table WT. Output. Here, in order to facilitate the understanding of the description, the address generator AG will be described separately for each function for convenience. That is, if the address generator AG is functionally divided, it is based on the function X for generating the waveform read address by accumulating the pitch frequency number, the loop point address (LP), and the return point address (RP). The waveform Y can be divided into a function Y for controlling to repeatedly read out the waveform in a corresponding address range, and a circuit for realizing each of these functions is provided. The circuit that realizes the function X includes at least selectors S2 and S3, a delay circuit D, a gate circuit G, an adder K2, and a subtractor M. On the other hand, the circuit for realizing the function Y includes at least an inverter P, a selector S2, comparison circuits H1 and H2, delay circuits D1 and D2, EXOR circuits O1 and O2, OR circuits N1 and N2, a counter CN, and a decoder Q. It consists of Of course, it goes without saying that the circuits for realizing the function X and the function Y are not limited to those described above.

まず、前記機能Xを実現する回路について説明する。フェーズジェネレータPGから出力された補正後のピッチ周波数ナンバ(FNUM2)は、セレクタS2に与えられる。セレクタS2では、後述するデコーダQからの入力信号が「0」である場合には与えられたピッチ周波数ナンバ(FNUM2)をそのまま出力し、後述するデコーダQからの入力信号が「1」である場合には与えられたピッチ周波数ナンバ(FNUM2)の正負が反転器Pにより反転されたピッチ周波数ナンバ(FNUM2)を加算器K2に対して出力する。上記デコーダQの動作(前記入力信号「0」又は「1」のセット)については後述することから、ここでの説明を省略する。加算器K2は、セレクタS2からの出力(ピッチ周波数ナンバ(FNUM2)又は正負が逆転されたピッチ周波数ナンバ(FNUM2)のいずれか)と、遅延回路Dと減算器M及びセレクタS3とゲート回路Gとからなる循環回路からの出力とを加算して、ピッチ周波数ナンバ(FNUM2)の累算値を算出する。ここで、ピッチ周波数ナンバ(FNUM2)は、押下された鍵に割り当てられている音高に、又はMIDI等の演奏データに含まれるキーコードに対応した音高周波数(ピッチ)に比例する補正後の数値データであり、単位時間当りの位相増分値に相当する。そのため、ピッチ周波数ナンバ(FNUM2)を規則的時間間隔(Δt)毎に繰り返し演算した累算値は時間的に変化する位相情報であり、これはウェーブテーブルWTにおいて1周期分の基本波形を記憶した記憶領域内の相対的なアドレスに対応する。こうして加算器K2で算出されたピッチ周波数ナンバ(FNUM2)の累算値は、循環回路の遅延回路D及び減算器M、比較回路H1、H2に対してそれぞれ与えられる。   First, a circuit for realizing the function X will be described. The corrected pitch frequency number (FNUM2) output from the phase generator PG is given to the selector S2. The selector S2 outputs the given pitch frequency number (FNUM2) as it is when the input signal from the decoder Q described later is “0”, and the input signal from the decoder Q described later is “1”. The pitch frequency number (FNUM2) obtained by inverting the sign of the given pitch frequency number (FNUM2) by the inverter P is output to the adder K2. Since the operation of the decoder Q (setting of the input signal “0” or “1”) will be described later, a description thereof is omitted here. The adder K2 includes an output from the selector S2 (either the pitch frequency number (FNUM2) or the pitch frequency number (FNUM2) whose polarity is reversed), a delay circuit D, a subtractor M, a selector S3, and a gate circuit G. The accumulated value of the pitch frequency number (FNUM2) is calculated by adding the output from the circulation circuit consisting of Here, the pitch frequency number (FNUM2) is corrected after being proportional to the pitch assigned to the pressed key or the pitch frequency (pitch) corresponding to the key code included in the performance data such as MIDI. It is numerical data and corresponds to a phase increment value per unit time. Therefore, the accumulated value obtained by repeatedly calculating the pitch frequency number (FNUM2) at regular time intervals (Δt) is phase information that changes with time, and this is the basic waveform for one period stored in the wave table WT. Corresponds to a relative address in the storage area. The accumulated value of the pitch frequency number (FNUM2) calculated by the adder K2 is given to the delay circuit D, the subtracter M, and the comparison circuits H1 and H2 of the circulation circuit.

遅延回路D、減算器M及びセレクタS3、ゲート回路Gとからなる循環回路では、ピッチ周波数ナンバ(FNUM2)を累算するために、1サンプリング周期ずつピッチ周波数ナンバ(FNUM2)の累算値を遅延して加算器K2に対して与える。すなわち、遅延回路Dは加算器K2から出力された1サンプリング周期である時間(Δt)だけ遅延された時間に算出されたピッチ周波数ナンバ累算値を、セレクタS3の入力端子の一方に与える。セレクタS3のもう一方の入力端子には、減算器Mから出力されたデータのうち最上位ビット(MSB)以外の値が与えられる。この減算器Mは、加算器K2から出力されたピッチ周波数ナンバ累算値からアドレス長(L)を減算するものである。セレクタS3では、こうした減算器Mから出力されたデータの最上位ビット(MSB)が「1」である場合には最上位ビット(MSB)以外をゲート回路Gに出力し、前記最上位ビット(MSB)が「0」である場合には遅延回路Dからの出力であるピッチ周波数ナンバ累算値をゲート回路Gへと出力する。こうすると、ピッチ周波数ナンバ累算値がオーバーフローした場合には最小値から再び累算を行うようになることから、アドレスジェネレータAGから出力される波形読み出しアドレス信号としては繰り返し周期の波形が出力される。ゲート回路Gでは、キーオンに伴い発生されるパルス信号であるキーオンパルス(KONP)が新たに入力されるまで、該ピッチ周波数ナンバ累算値を加算器K2に与える。キーオンパルス(KONP)が新たに入力された場合には該ピッチ周波数ナンバ累算値を加算器K2に与えないことによって、キーオンされた鍵に対応付けられた音高のピッチ周波数ナンバに基づき新たに最初からピッチ周波数ナンバの累算を開始する。加算器K2では、新たに入力されたピッチ周波数ナンバ(FNUM2)とゲート回路Gからのピッチ周波数ナンバ累算値とを加算する。   In the circulation circuit including the delay circuit D, the subtractor M, the selector S3, and the gate circuit G, the accumulated value of the pitch frequency number (FNUM2) is delayed by one sampling period in order to accumulate the pitch frequency number (FNUM2). To the adder K2. That is, the delay circuit D gives the pitch frequency number accumulated value calculated at the time delayed by the time (Δt), which is one sampling period output from the adder K2, to one input terminal of the selector S3. A value other than the most significant bit (MSB) of the data output from the subtractor M is given to the other input terminal of the selector S3. The subtractor M subtracts the address length (L) from the pitch frequency number accumulated value output from the adder K2. In the selector S3, when the most significant bit (MSB) of the data output from the subtractor M is “1”, other than the most significant bit (MSB) is output to the gate circuit G, and the most significant bit (MSB) ) Is “0”, the pitch frequency number accumulated value output from the delay circuit D is output to the gate circuit G. In this way, when the pitch frequency number accumulated value overflows, accumulation is performed again from the minimum value, so that a waveform having a repetition period is output as the waveform read address signal output from the address generator AG. . In the gate circuit G, the pitch frequency number accumulated value is supplied to the adder K2 until a key-on pulse (KONP), which is a pulse signal generated with key-on, is newly input. When a key-on pulse (KONP) is newly input, the pitch frequency number accumulated value is not given to the adder K2, so that a new one is newly generated based on the pitch frequency number of the pitch associated with the key-on key. Accumulation of pitch frequency number starts from the beginning. The adder K2 adds the newly input pitch frequency number (FNUM2) and the pitch frequency number accumulated value from the gate circuit G.

次に、前記機能Yを実現する回路について説明する。リターンポイントアドレス(RP)とループポイントアドレス(LP)とがそれぞれ比較回路H1、H2の入力端子に各々加えられる。また、比較回路H1、H2のもう一方の入力端子には加算器K2からの出力であるピッチ周波数ナンバ累算値(相対アドレス信号)が加えられる。リターンポイントアドレス(RP)とピッチ周波数ナンバ累算値とを比較する比較回路H1の出力は、遅延回路D1及びEXOR回路O1を介して、OR回路N1の一方の端子に加えられる。一方、ループポイントアドレス(LP)とピッチ周波数ナンバ累算値とを比較する比較回路H2の出力は、遅延回路D2及びEXOR回路O2を介して、OR回路N1のもう一方の端子に加えられる。そして、OR回路N1の出力はカウンタCNに与えられ、カウンタCNでは前記OR回路N1からの出力に応じてカウントを行った結果であるカウンタ値をデコーダQに送る。上記図4に示したようにリターンポイントアドレス(RP)とループポイントアドレス(LP)が与えられている場合においては、デコーダQはカウンタCNからのカウンタ値が「2」又は「3」である場合には「1」を、それら以外である場合には「0」をセレクタS2に対して出力する。こうしたデコーダQからセレクタS2に対して出力される「0」又は「1」を決定するカウンタ値は一例であって、リターンポイントアドレス(RP)とループポイントアドレス(LP)の与え方、ピッチ周波数ナンバ(FNUM2)の大きさ、あるいはそれらの関係等によって上記カウンタ値は異なる値であってよいことは言うまでもない。
なお、上記カウンタCNは、上記した減算器Mから出力されたデータの最上位ビット(MSB)と、キーオンに伴い発生されるパルス信号であるキーオンパルス(KONP)とを入力とするOR回路N2からの出力に従って、カウンタCNのカウント値を「0」にリセットする。
Next, a circuit for realizing the function Y will be described. The return point address (RP) and the loop point address (LP) are respectively added to the input terminals of the comparison circuits H1 and H2. Further, a pitch frequency number accumulated value (relative address signal), which is an output from the adder K2, is added to the other input terminals of the comparison circuits H1 and H2. The output of the comparison circuit H1 that compares the return point address (RP) with the pitch frequency number accumulated value is applied to one terminal of the OR circuit N1 via the delay circuit D1 and the EXOR circuit O1. On the other hand, the output of the comparison circuit H2 that compares the loop point address (LP) with the pitch frequency number accumulated value is applied to the other terminal of the OR circuit N1 via the delay circuit D2 and the EXOR circuit O2. The output of the OR circuit N1 is given to the counter CN, and the counter CN sends a counter value, which is the result of counting according to the output from the OR circuit N1, to the decoder Q. As shown in FIG. 4, when the return point address (RP) and the loop point address (LP) are given, the decoder Q has a counter value “2” or “3” from the counter CN. "1" is output to the selector S2, otherwise "0" is output to the selector S2. The counter value for determining “0” or “1” output from the decoder Q to the selector S2 is an example. How to give a return point address (RP) and a loop point address (LP), a pitch frequency number It goes without saying that the counter value may be different depending on the size of (FNUM2) or the relationship between them.
The counter CN is supplied from an OR circuit N2 that receives the most significant bit (MSB) of the data output from the subtractor M and a key-on pulse (KONP) that is a pulse signal generated upon key-on. Is reset to “0”.

まず、キーオンに伴いキーオンパルス(KONP)がOR回路N2に入力されると、OR回路N2によりカウンタCNに対してリセット信号が加えられることからカウント値が「0」となり、これに応じてデコーダQの出力信号も「0」となる。すると、セレクタS2は入力されたピッチ周波数ナンバ(FNUM2)を選択することとなり、ピッチ周波数ナンバ(FNUM2)の加算が開始される。すなわち、OR回路N2に対してキーオンに伴い発生されるパルス信号であるキーオンパルス(KONP)が新たに入力された場合には、その時点からは新たに入力された正負の逆転されていないピッチ周波数ナンバ(FNUM2)に従い累算を開始する。ピッチ周波数ナンバ累算値(相対アドレス信号)がリターンポイントアドレス(RP)に到達した場合には(1回目の到達)、EXOR回路O1が「1」、EXOR回路O2が「0」となることから、OR回路N1が「1」となってカウンタCNはカウント値を「0」から「1」へとカウントする。デコーダQはカウント値「1」に応じて「0」を出力するので、セレクタS2はピッチ周波数ナンバ累算値(相対アドレス信号)に対してピッチ周波数ナンバ(FNUM2)の加算を続けるように、ピッチ周波数ナンバ(FNUM2)を選択する。ここで、ピッチ周波数ナンバ累算値(相対アドレス信号)がリターンポイントアドレス(RP)に1回目の到達をした以降においては、比較回路H1により常に「1」が出力されることとなり、それに伴いEXOR回路O1はOR回路N1の一方の端子に対して常に「0」を出力することになる。   First, when a key-on pulse (KONP) is input to the OR circuit N2 in response to the key-on, a reset signal is applied to the counter CN by the OR circuit N2, so that the count value becomes “0”. Is also “0”. Then, the selector S2 selects the input pitch frequency number (FNUM2), and the addition of the pitch frequency number (FNUM2) is started. That is, when a key-on pulse (KONP), which is a pulse signal generated with key-on, is newly input to the OR circuit N2, the newly input positive and negative pitch frequency is not reversed from that point. Accumulation starts according to the number (FNUM2). When the pitch frequency number accumulated value (relative address signal) reaches the return point address (RP) (first arrival), the EXOR circuit O1 becomes “1” and the EXOR circuit O2 becomes “0”. The OR circuit N1 becomes “1”, and the counter CN counts the count value from “0” to “1”. Since the decoder Q outputs “0” in response to the count value “1”, the selector S2 performs pitch pitch so that the pitch frequency number (FNUM2) continues to be added to the pitch frequency number accumulated value (relative address signal). Select the frequency number (FNUM2). Here, after the pitch frequency number accumulated value (relative address signal) reaches the return point address (RP) for the first time, “1” is always output by the comparison circuit H1, and accordingly, EXOR is output. The circuit O1 always outputs “0” to one terminal of the OR circuit N1.

ピッチ周波数ナンバ累算値(相対アドレス信号)がループポイントアドレス(LP)に到達した場合には(1回目の到達)、デコーダQの出力信号は「0」から「1」へと変更される。すなわち、1回目のループポイントアドレス(LP)に到達した場合にはEXOR回路O2が「1」となり、また上記したようにEXOR回路O1からは常に「0」が出力されることから、OR回路N1が「1」となってカウンタCNはカウント値を「1」から「2」へとカウントする。デコーダQは、カウント値「2」に応じて「1」を出力する。そこで、セレクタS2は反転器Pにより正負が反転されたピッチ周波数ナンバ(FNUM2)を選択することになる。したがって、ピッチ周波数ナンバ累算値(相対アドレス信号)が1回目のループポイントアドレス(LP)に到達した以降においては、ピッチ周波数ナンバ累算値は減算されていく。そして、新たにピッチ周波数ナンバ(FNUM2)が入力されて、ピッチ周波数ナンバ累算値の1回目の減算が開始された場合に、この実施例においては上記したようにEXOR回路O1からは「0」が出力されており、またEXOR回路O2は「1」のままであることから、OR回路N1が「1」となってカウンタCNはカウント値を「2」から「3」へとカウントする。また、減算されていったピッチ周波数ナンバ累算値(相対アドレス信号)が再度リターンポイントアドレス(RP)に到達するまで(2回目の到達)、該カウント値「3」は変わらない。デコーダQは、該カウント値「3」に応じて「1」を出力する。したがって、カウント値「3」の間、つまり1回目の減算が開始されてからピッチ周波数ナンバ累算値が再度リターンポイントアドレス(RP)に到達するまで(2回目の到達)、ピッチ周波数ナンバ累算値は減算されることになる。   When the pitch frequency number accumulated value (relative address signal) reaches the loop point address (LP) (first arrival), the output signal of the decoder Q is changed from “0” to “1”. That is, when the first loop point address (LP) is reached, the EXOR circuit O2 becomes “1”, and since the EXOR circuit O1 always outputs “0” as described above, the OR circuit N1 Becomes “1” and the counter CN counts the count value from “1” to “2”. The decoder Q outputs “1” according to the count value “2”. Therefore, the selector S2 selects the pitch frequency number (FNUM2) whose polarity is inverted by the inverter P. Therefore, after the pitch frequency number accumulated value (relative address signal) reaches the first loop point address (LP), the pitch frequency number accumulated value is subtracted. Then, when the pitch frequency number (FNUM2) is newly input and the first subtraction of the pitch frequency number accumulated value is started, in this embodiment, the EXOR circuit O1 outputs “0” as described above. Since the EXOR circuit O2 remains “1”, the OR circuit N1 becomes “1” and the counter CN counts the count value from “2” to “3”. Further, the count value “3” does not change until the pitch frequency number accumulated value (relative address signal) that has been subtracted reaches the return point address (RP) again (second arrival). The decoder Q outputs “1” according to the count value “3”. Therefore, during the count value “3”, that is, from when the first subtraction is started until the pitch frequency number accumulated value reaches the return point address (RP) again (second arrival), the pitch frequency number accumulated. The value will be subtracted.

こうして減算されていったピッチ周波数ナンバ累算値(相対アドレス信号)が再度リターンポイントアドレス(RP)に到達すると(2回目の到達)、デコーダQの出力信号は「1」から「0」へと変更される。すなわち、2回目のリターンポイントアドレス(RP)に到達した場合、EXOR回路O1が上記「0」から「1」となり、EXOR回路O2は「0」のままであることから、OR回路N1が「1」となってカウンタCNはカウント値を「3」から「4」へとカウントする。デコーダQは、カウント値「4」に応じて「0」を出力する。そこで、セレクタS2はピッチ周波数ナンバ(FNUM2)を選択することになる。したがって、減算されていったピッチ周波数ナンバ累算値(相対アドレス信号)が再度リターンポイントアドレス(RP)に到達した以降ではピッチ周波数ナンバ累算値に対して正負が逆転されていないピッチ周波数ナンバ(FNUM2)が再度加算されていく。そして、新たにピッチ周波数ナンバ(FNUM2)が入力されて、再度ピッチ周波数ナンバ累算値の1回目の加算が開始された場合に、この実施例においてはEXOR回路O1は「1」のまま、EXOR回路O2は「0」のままであることから、OR回路N2が「1」となってカウンタCNはカウント値を「4」から「5」へとカウントする。ピッチ周波数ナンバ累算値(相対アドレス信号)が再度ループポイントアドレス(LP)に到達するまで(2回目の到達)、該カウント値「5」は変わらない。デコーダQは該カウント値「5」に応じて「0」を出力することから、カウント値「5」の間はピッチ周波数ナンバ累算値が加算されることになる。   When the pitch frequency number accumulated value (relative address signal) thus subtracted reaches the return point address (RP) again (second arrival), the output signal of the decoder Q changes from “1” to “0”. Be changed. That is, when the second return point address (RP) is reached, the EXOR circuit O1 changes from “0” to “1”, and the EXOR circuit O2 remains “0”. The counter CN counts the count value from “3” to “4”. The decoder Q outputs “0” according to the count value “4”. Therefore, the selector S2 selects the pitch frequency number (FNUM2). Therefore, after the pitch frequency number accumulated value (relative address signal) that has been subtracted reaches the return point address (RP) again, the pitch frequency number (in which the sign frequency is not reversed with respect to the pitch frequency number accumulated value ( FNUM2) is added again. Then, when a new pitch frequency number (FNUM2) is input and the first addition of the pitch frequency number accumulated value is started again, in this embodiment, the EXOR circuit O1 remains "1" and EXOR Since the circuit O2 remains “0”, the OR circuit N2 becomes “1”, and the counter CN counts the count value from “4” to “5”. The count value “5” does not change until the pitch frequency number accumulated value (relative address signal) reaches the loop point address (LP) again (second arrival). Since the decoder Q outputs “0” according to the count value “5”, the pitch frequency number accumulated value is added during the count value “5”.

次に、ピッチ周波数ナンバ累算値(相対アドレス信号)が再度ループポイントアドレス(LP)に到達した場合には(2回目の到達)、1回目の到達時と異なりデコーダQの出力信号は「0」から「1」へと変更されずに「0」のままである。すなわち、2回目のループポイントアドレス(LP)に到達した場合、EXOR回路O1が「0」であり、EXOR回路O2が「1」となることから、OR回路N1が「1」となってカウンタCNはカウント値を「5」から「6」へとカウントする。デコーダQは、カウント値「6」に応じて「0」を出力する。すなわち、1回目の到達時と異なり2回目の到達時においては、セレクタS2は反転器Pにより正負が反転されたピッチ周波数ナンバ(FNUM2)を選択しない。したがって、ピッチ周波数ナンバ累算値(相対アドレス信号)が2回目のループポイントアドレス(LP)に到達した以降においては、ピッチ周波数ナンバ累算値に対して正負が逆転されていないピッチ周波数ナンバ(FNUM2)がそのまま加算されていく。そして、上記した減算器Mからデータの最上位ビット(MSB)として「1」が与えられた場合には、カウンタCNのカウント値を「0」にリセットする。   Next, when the pitch frequency number accumulated value (relative address signal) reaches the loop point address (LP) again (second arrival), the output signal of the decoder Q is “0” unlike the first arrival. "" Is not changed from "1" to "1" and remains "0". That is, when the second loop point address (LP) is reached, the EXOR circuit O1 is “0” and the EXOR circuit O2 is “1”, so that the OR circuit N1 becomes “1” and the counter CN Counts the count value from “5” to “6”. The decoder Q outputs “0” according to the count value “6”. That is, unlike the first arrival, the selector S2 does not select the pitch frequency number (FNUM2) whose polarity is inverted by the inverter P at the second arrival. Therefore, after the pitch frequency number accumulated value (relative address signal) reaches the second loop point address (LP), the pitch frequency number (FNUM2) whose polarity is not reversed with respect to the pitch frequency number accumulated value. ) Is added as it is. When “1” is given as the most significant bit (MSB) of data from the subtracter M, the count value of the counter CN is reset to “0”.

上述したように、入力されたピッチ周波数ナンバ(FNUM2)を規則的時間間隔毎に順次に加算することに応じて生成されるピッチ周波数ナンバ累算値は、1周期分の基本波形を記憶した記憶領域内の相対的なアドレスに対応する。ウェーブテーブルWTから基本波形を読み出すためには、このピッチ周波数ナンバ累算値(相対アドレス信号)を絶対アドレス信号へと変換する必要がある。そこで、加算器K3では絶対アドレスであるスタートアドレス(SA)を加算することにより、ピッチ周波数ナンバ累算値(相対アドレス信号)を絶対アドレス信号に変換する。この加算器K3から出力される絶対アドレス信号に応じてウェーブテーブルWTをアクセスすることにより、ウェーブテーブルWTに記憶された所定の基本波形(例えば正弦波など)のサンプルデータが応答してウェーブテーブルWTから読み出しされる。   As described above, the pitch frequency number accumulated value generated by sequentially adding the input pitch frequency number (FNUM2) at regular time intervals is a memory storing a basic waveform for one period. Corresponds to a relative address within the region. In order to read the basic waveform from the wave table WT, it is necessary to convert the pitch frequency number accumulated value (relative address signal) into an absolute address signal. Therefore, the adder K3 converts the pitch frequency number accumulated value (relative address signal) into an absolute address signal by adding the start address (SA) which is an absolute address. By accessing the wave table WT according to the absolute address signal output from the adder K3, the sample data of a predetermined basic waveform (for example, a sine wave) stored in the wave table WT responds to the wave table WT. Is read from.

このようにして、アドレスジェネレータAGではピッチ周波数ナンバ(FNUM2)を規則的時間間隔で繰り返し演算し累算することにより、波形読み出しアドレス信号を発生する。図6に示すように、波形パラメータとしてループポイントアドレス(LP)及びリターンポイントアドレス(RP)が与えられている場合、まず時刻「t0」においてスタートアドレス(SA)からサンプル値データの読み出しが開始される。所定の規則的時間間隔毎にピッチ周波数ナンバ(FNUM2)に相当するアドレス分だけ増加されていくが、該アドレス値がループポイントアドレス(LP)に到達した時刻「t4」からは所定の規則的時間間隔毎にピッチ周波数ナンバ(FNUM2)に相当するアドレス分だけ減算されていく。そして、該アドレス値がリターンポイントアドレス(RP)に到達した時刻「t7」からは再度所定の規則的時間間隔毎にピッチ周波数ナンバ(FNUM2)に相当するアドレス分ずつアドレス長(L)に達するまで増加される。こうして、1周期波形を読み出す分の絶対アドレスからなる波形読み出しアドレス信号が生成される。この場合には1周期波形のアドレス長(L)に達するまでの時刻が「t12」となり、入力された補正前のピッチ周波数ナンバ(FNUM1)をそのままアドレスとした場合(図4(a)参照)と同様のピッチで読み出しすることになる。すなわち、フェーズジェネレータPGにおいてピッチ周波数ナンバの補正を予め行っておくことにより、波形の繰り返し読み出しを行って生成される波形におけるピッチの同一性を保つようにしている。   In this way, the address generator AG generates a waveform read address signal by repeatedly calculating and accumulating the pitch frequency number (FNUM2) at regular time intervals. As shown in FIG. 6, when a loop point address (LP) and a return point address (RP) are given as waveform parameters, first, reading of sample value data is started from the start address (SA) at time “t0”. The Each predetermined regular time interval is incremented by an address corresponding to the pitch frequency number (FNUM2), but from the time “t4” when the address value reaches the loop point address (LP), the predetermined regular time is reached. For each interval, the address corresponding to the pitch frequency number (FNUM2) is subtracted. From the time “t7” when the address value reaches the return point address (RP), until the address length (L) is reached by an address corresponding to the pitch frequency number (FNUM2) every predetermined regular time interval. Will be increased. In this way, a waveform read address signal consisting of an absolute address for reading one period waveform is generated. In this case, the time until the address length (L) of the one-cycle waveform is reached is “t12”, and the input pitch frequency number (FNUM1) before correction is used as the address as it is (see FIG. 4A). Are read at the same pitch. That is, by correcting the pitch frequency number in advance in the phase generator PG, the same pitch is maintained in the waveform generated by repeatedly reading out the waveform.

以上のようにして、アドレスジェネレータAGから出力された例えば図6に示したような波形読み出しアドレスに従いウェーブテーブルWTから基本波形を読み出すと、図7に示すような波形形状の波形を生成することができる。図7は、図6に示したAG出力波形に基づきウェーブテーブルから正弦波を読み出した場合に生成される波形の一例を表す図である。この図7から理解できるように、上述したようにして、ループポイントアドレス(LP)とリターンポイントアドレス(RP)間において、基本波形を繰り返し読み出しするように波形読み出し制御を行うことにより、出力される波形のピッチを変えることなく波形形状のみを変えることができる。したがって、ユーザは元の基本波形の波形形状を大きく変化させて基本波形を読み出すことが前記ループポイントアドレス(LP)とリターンポイントアドレス(RP)を適宜に設定することによりできるようになり、該読み出した波形を周波数変調演算に用いることによって、多様な音色を実現する、より複雑な波形形状をした楽音信号を生成することが簡単にできるようになる。このようにして、図1に示したモジュレータOMではピッチ周波数ナンバ累算値に従ってウェーブテーブルWTから基本波形を読み出すことによって変調波信号を発生する。他方、キャリアOCではピッチ周波数ナンバ累算値に従ってウェーブテーブルWTから基本波形を読み出すことによって搬送波信号を発生し、前記モジュレータOMから出力された変調波信号と該発生した搬送波信号とを加算することにより、変調された楽音信号を出力することができる。   As described above, when the basic waveform is read from the wave table WT according to the waveform read address shown in FIG. 6, for example, output from the address generator AG, a waveform having the waveform shape shown in FIG. 7 can be generated. it can. FIG. 7 is a diagram illustrating an example of a waveform generated when a sine wave is read from the wave table based on the AG output waveform illustrated in FIG. As can be understood from FIG. 7, as described above, output is performed by performing waveform readout control so as to repeatedly read out the basic waveform between the loop point address (LP) and the return point address (RP). Only the waveform shape can be changed without changing the waveform pitch. Accordingly, the user can read the basic waveform by changing the waveform shape of the original basic waveform by appropriately setting the loop point address (LP) and the return point address (RP). By using the obtained waveform for frequency modulation calculation, it is possible to easily generate a musical tone signal having a more complicated waveform shape that realizes various tone colors. In this manner, the modulator OM shown in FIG. 1 generates a modulated wave signal by reading the basic waveform from the wave table WT according to the pitch frequency number accumulated value. On the other hand, in the carrier OC, a carrier wave signal is generated by reading out a basic waveform from the wave table WT according to the accumulated pitch frequency number, and the modulated wave signal output from the modulator OM and the generated carrier wave signal are added. A modulated tone signal can be output.

上述した実施例では波形パラメータとして与えられたループポイントアドレス(LP)からリターンポイントアドレス(RP)までのアドレス範囲において該当する基本波形を1回ループするようにして繰り返し読み出すようにしたが、この繰り返し読み出しを行うループ回数を波形パラメータとして与えることができるようにしてもよい。こうした場合には、ピッチ周波数ナンバを補正する際にループポイントアドレス(LP)及びリターンポイントアドレス(RP)だけでなく前記ループ回数を考慮して補正係数を算出し、これにより一時的にピッチを変更しておくようにする。
また、上述した実施例ではループポイントアドレス(LP)とリターンポイントアドレス(RP)の二点の相対アドレス値を波形パラメータとして与え、これらの間において基本波形を繰り返し読み出すようにしたがこれに限らない。例えば、波形パラメータとして三点の相対アドレス値(例えばA1<A2<A3)を与え、アドレスA1からアドレスA3へと進んだ後に、アドレスA3からアドレスA2へと逆方向に進み、再度アドレスA2からアドレスA3へと進むようにして、基本波形を繰り返し読み出すようにしてもよい。あるいは波形パラメータとして四点の相対アドレス値(例えばA1<A2<A3<A4)を与え、アドレスA1からアドレスA4へと進んだ後に、アドレスA4からアドレスA2へと逆方向に進み、次にアドレスA2からアドレスA3へと進んだ後に、アドレスA3からアドレスA2(又はアドレスA1)へと逆方向に進み、再度アドレスA2(又はアドレスA1)からアドレスA4へと進むようにして、基本波形を繰り返し読み出すようにしてもよい。こうすることにより、ウェーブテーブルWTから基本波形を読み出すだけで、より複雑な波形形状をした波形を発生させることができるようになる。勿論、こうした場合においても、繰り返しを考慮して補正係数を算出し、これにより一時的にピッチを変更しておくことは言うまでもない。
勿論、上記のようにした場合には、図5に示したアドレスジェネレータAGにおける基本波形を該当するアドレス範囲において繰り返し読み出しする制御を行う機能Yを実現する回路は上記各態様にあわせて変更することが必要であることは言うまでもない。
In the embodiment described above, the corresponding basic waveform is repeatedly read out in a loop once in the address range from the loop point address (LP) to the return point address (RP) given as a waveform parameter. The number of loops for reading may be given as a waveform parameter. In such a case, when correcting the pitch frequency number, the correction coefficient is calculated considering not only the loop point address (LP) and return point address (RP) but also the number of loops, thereby temporarily changing the pitch. Try to keep it.
In the above-described embodiment, the relative address value of the two points of the loop point address (LP) and the return point address (RP) is given as a waveform parameter, and the basic waveform is repeatedly read between them. . For example, three relative address values (for example, A1 <A2 <A3) are given as waveform parameters, and after proceeding from address A1 to address A3, proceed in the reverse direction from address A3 to address A2, and again from address A2 to address A2. The basic waveform may be repeatedly read by proceeding to A3. Alternatively, four relative address values (for example, A1 <A2 <A3 <A4) are given as waveform parameters, and after proceeding from address A1 to address A4, proceeding in the reverse direction from address A4 to address A2, and then address A2 After proceeding from address A3 to address A3, the basic waveform is repeatedly read by proceeding in the reverse direction from address A3 to address A2 (or address A1) and again from address A2 (or address A1) to address A4. Also good. By doing this, it is possible to generate a waveform having a more complicated waveform shape by simply reading the basic waveform from the wave table WT. Of course, even in such a case, it is needless to say that the correction coefficient is calculated in consideration of repetition and the pitch is temporarily changed by this.
Of course, in the case described above, the circuit for realizing the function Y for performing the control of repeatedly reading the basic waveform in the address range shown in FIG. 5 in the corresponding address range should be changed in accordance with each of the above embodiments. Needless to say, is necessary.

なお、上述の実施例においては最も単純な1項の周波数変調演算を2タイムスロットを使用して1個のオペレータ(演算ユニット)を時分割で行うものを示したがこれに限らず、複数のオペレータを用意しておき、各オペレータの接続態様を選択的に切り替えることによって、FM演算のアルゴリズムを選択し、所望の音色の楽音の合成を行うようにしてあってもよい。
なお、上述した実施例に示したオペレータの基本構成(図2参照)や、フェーズジェネレータPG又はアドレスジェネレータAGの回路構成(図3又は図5参照)は一例であってこれに限らないことは言うまでもない。
なお、記憶装置に予め記憶している基本波形のサンプル値データはPCM、DPCM、ADPCMなどの、どのような波形サンプルデータ方式のものであってもよいことは言うまでもない。
なお、上述した実施例においては発生した波形を周波数変調演算型(FM方式)の楽音合成装置に用いる例を示したがこれに限らず、振幅変調演算型(AM方式)の楽音合成装置における搬送波信号や変調波信号などとして用いてもよい。
In the above-described embodiment, the simplest frequency modulation calculation of one term is performed using two time slots and one operator (calculation unit) is performed in a time division manner. However, the present invention is not limited to this. An operator may be prepared, and an FM calculation algorithm may be selected by selectively switching the connection mode of each operator to synthesize a musical tone having a desired tone color.
Needless to say, the basic configuration of the operator (see FIG. 2) and the circuit configuration of the phase generator PG or the address generator AG (see FIG. 3 or FIG. 5) shown in the above-described embodiments are merely examples. Yes.
It goes without saying that the sample value data of the basic waveform stored in advance in the storage device may be of any waveform sample data system such as PCM, DPCM, ADPCM.
In the above-described embodiment, an example in which the generated waveform is used in a frequency modulation arithmetic type (FM method) musical sound synthesizer has been described. It may be used as a signal or a modulated wave signal.

この発明に係る波形発生装置を適用した周波数変調演算型の楽音合成装置の全体構成の一実施例を示すブロック図である。1 is a block diagram showing an example of the overall configuration of a frequency modulation arithmetic type musical tone synthesizer to which a waveform generator according to the present invention is applied. オペレータ(波形発生装置)の基本構成の一実施例を示すブロック図である。It is a block diagram which shows one Example of the basic composition of an operator (waveform generator). フェーズジェネレータの具体的な実施例を示す回路図である。It is a circuit diagram which shows the specific Example of a phase generator. フェーズジェネレータから出力されるピッチ周波数ナンバを時間経過にあわせて累算したAG出力波形を表した図であり、図4(a)は繰り返し読み出しがない場合、図4(b)は繰り返し読み出しがある場合である。FIG. 4A is a diagram showing an AG output waveform obtained by accumulating the pitch frequency number output from the phase generator with time. FIG. 4A shows a case where there is no repeated reading, and FIG. Is the case. アドレスジェネレータの具体的な実施例を示す回路図である。It is a circuit diagram which shows the specific Example of an address generator. アドレスジェネレータから出力されるAG出力波形を表す図である。It is a figure showing AG output waveform output from an address generator. 図6に示したAG出力波形に基づきウェーブテーブルから正弦波を読み出した場合に生成される波形の一例を表す図である。It is a figure showing an example of the waveform produced | generated when a sine wave is read from a wavetable based on AG output waveform shown in FIG.

符号の説明Explanation of symbols

OM…オペレータ(モジュレータ)、OC…オペレータ(キャリア)、S1(S2、S3)…セレクタ、PG…フェーズジェネレータ、AG…アドレスジェネレータ、EG…エンベロープジェネレータ、WT…ウェーブテーブル、K1(K2、K3)…加算器、J1(J2)…乗算器、B…シフタ、E…補正係数算出器、H1(H2)…比較回路、N1(N2)…OR回路、O1(O2)…EXOR回路、CN…カウンタ、Q…デコーダ、D(D1、D2)…遅延回路、G…ゲート回路、P…反転器、M…減算器 OM ... operator (modulator), OC ... operator (carrier), S1 (S2, S3) ... selector, PG ... phase generator, AG ... address generator, EG ... envelope generator, WT ... wavetable, K1 (K2, K3) ... Adder, J1 (J2) ... multiplier, B ... shifter, E ... correction coefficient calculator, H1 (H2) ... comparison circuit, N1 (N2) ... OR circuit, O1 (O2) ... EXOR circuit, CN ... counter, Q: Decoder, D (D1, D2): Delay circuit, G: Gate circuit, P: Inverter, M: Subtractor

Claims (5)

複数サンプル点からなる所定の基本波形のサンプルデータを、入力される位相情報に応じて、発生する波形発生手段と、
発生すべき波形の周波数を設定する周波数情報を、少なくとも2つのサンプル点を特定するパラメータに従い、変更する手段と、
前記変更された周波数情報に基づき、該周波数情報に応じたレートで変化する位相情報を発生する位相情報発生手段と、
前記位相情報発生手段で発生する前記位相情報が、前記特定された前記少なくとも2つのサンプル点の間で正及び逆方向に繰り返されるよう、前記位相情報発生手段を制御する手段と
を備え、前記位相情報発生手段で発生された前記位相情報を前記波形発生手段に入力することで、該位相情報の変化に応じて前記基本波形を変形した波形が該波形発生手段から発生されることを特徴とする波形発生装置。
Waveform generation means for generating sample data of a predetermined basic waveform composed of a plurality of sample points according to input phase information;
Means for changing frequency information for setting a frequency of a waveform to be generated according to a parameter specifying at least two sample points;
Phase information generating means for generating phase information that changes at a rate corresponding to the frequency information based on the changed frequency information;
Means for controlling the phase information generation means so that the phase information generated by the phase information generation means is repeated in the forward and reverse directions between the identified at least two sample points. By inputting the phase information generated by the information generating means to the waveform generating means, a waveform obtained by deforming the basic waveform according to the change of the phase information is generated from the waveform generating means. Waveform generator.
前記パラメータに従い前記少なくとも2つのサンプル点の位置が変更可能である請求項1に記載の波形発生装置。   The waveform generating apparatus according to claim 1, wherein positions of the at least two sample points can be changed according to the parameter. 前記正及び逆方向に繰り返す回数を変更可能である請求項1又は2に記載の波形発生装置。   The waveform generator according to claim 1, wherein the number of repetitions in the forward and reverse directions can be changed. 請求項1に記載の波形発生装置を、変調波又は搬送波の少なくとも一方の波形を発生するための手段として使用することを特徴とする変調演算型の楽音合成装置。   A modulation calculation type musical tone synthesizer using the waveform generator according to claim 1 as means for generating a waveform of at least one of a modulated wave and a carrier wave. コンピュータに、
複数サンプル点からなる所定の基本波形のサンプルデータを、入力される位相情報に応じて、発生する手順と、
発生すべき波形の周波数を設定する周波数情報を、少なくとも2つのサンプル点を特定するパラメータに従い、変更する手順と、
前記変更された周波数情報に基づき、該周波数情報に応じたレートで変化する位相情報を発生する手順と、
前記発生する位相情報が、前記特定された前記少なくとも2つのサンプル点の間で正及び逆方向に繰り返されるよう、制御する手順と
を実行させるためのプログラム。
On the computer,
A procedure for generating sample data of a predetermined basic waveform consisting of a plurality of sample points according to input phase information,
A procedure for changing frequency information for setting a frequency of a waveform to be generated according to a parameter for specifying at least two sample points;
A procedure for generating phase information that changes at a rate according to the frequency information based on the changed frequency information;
A program for executing a control procedure so that the generated phase information is repeated in the forward and reverse directions between the specified at least two sample points.
JP2004229087A 2004-08-05 2004-08-05 Waveform generator and program Expired - Fee Related JP4179243B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004229087A JP4179243B2 (en) 2004-08-05 2004-08-05 Waveform generator and program
KR1020050071329A KR100693964B1 (en) 2004-08-05 2005-08-04 Waveform generating device and method, musical sound synthesis apparatus, and computer-readable storage medium
CN 200510089381 CN1734554B (en) 2004-08-05 2005-08-05 Waveform generating apparatus and method thereof
TW094126814A TW200620237A (en) 2004-08-05 2005-08-08 Waveform generating apparatus and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004229087A JP4179243B2 (en) 2004-08-05 2004-08-05 Waveform generator and program

Publications (2)

Publication Number Publication Date
JP2006047728A true JP2006047728A (en) 2006-02-16
JP4179243B2 JP4179243B2 (en) 2008-11-12

Family

ID=36026350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004229087A Expired - Fee Related JP4179243B2 (en) 2004-08-05 2004-08-05 Waveform generator and program

Country Status (2)

Country Link
JP (1) JP4179243B2 (en)
CN (1) CN1734554B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6778865B2 (en) * 2016-09-13 2020-11-04 福井 誠司 High-speed communication method and high-speed communication system
CN108107771B (en) * 2017-11-03 2021-02-19 内蒙古银安科技开发有限责任公司 Device for generating specific waveform

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5635192A (en) * 1979-08-31 1981-04-07 Nippon Musical Instruments Mfg Electronic musical instrument
JPS59188697A (en) * 1983-04-11 1984-10-26 ヤマハ株式会社 Musical sound generator
US4813326A (en) * 1984-07-16 1989-03-21 Yamaha Corporation Method and apparatus for synthesizing music tones with high harmonic content

Also Published As

Publication number Publication date
JP4179243B2 (en) 2008-11-12
CN1734554B (en) 2011-03-16
CN1734554A (en) 2006-02-15

Similar Documents

Publication Publication Date Title
US4726276A (en) Slur effect pitch control in an electronic musical instrument
US4256004A (en) Electronic musical instrument of the harmonic synthesis type
JPH0766267B2 (en) Musical sound generator
US4554854A (en) Automatic rhythm performing apparatus
JP4179243B2 (en) Waveform generator and program
JP2766662B2 (en) Waveform data reading device and waveform data reading method for musical sound generator
JPS6227718B2 (en)
JP4179245B2 (en) Waveform generator and program
JPH10307586A (en) Musical sound generator and method
KR100693964B1 (en) Waveform generating device and method, musical sound synthesis apparatus, and computer-readable storage medium
US5627334A (en) Apparatus for and method of generating musical tones
US6207885B1 (en) System and method for rendition control
JP3844214B2 (en) Modulation waveform generator
JPS6230639B2 (en)
JPS6220557B2 (en)
JP3715069B2 (en) Music signal synthesis method and apparatus, and recording medium
JP3888315B2 (en) Sound synthesis apparatus and program
JP2006058380A (en) Waveform generator and program
JP2684833B2 (en) Music signal generator
JP3223555B2 (en) Waveform reading device
JP3489713B2 (en) Musical sound synthesizer and method
JP3871119B2 (en) Modulation waveform generator
JP2004325467A (en) Musical sound synthesizer and program
JP3758664B2 (en) Musical sound signal generator
JP3245411B2 (en) Electronic musical instrument

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080507

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080707

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110905

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120905

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130905

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees