JPH06250654A - Electronic musical instrument - Google Patents

Electronic musical instrument

Info

Publication number
JPH06250654A
JPH06250654A JP5062460A JP6246093A JPH06250654A JP H06250654 A JPH06250654 A JP H06250654A JP 5062460 A JP5062460 A JP 5062460A JP 6246093 A JP6246093 A JP 6246093A JP H06250654 A JPH06250654 A JP H06250654A
Authority
JP
Japan
Prior art keywords
envelope
data
waveform
harmonic
segment
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
JP5062460A
Other languages
Japanese (ja)
Other versions
JP3091343B2 (en
Inventor
清己 ▲高▼氏
Kiyomi Takauji
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.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP05062460A priority Critical patent/JP3091343B2/en
Publication of JPH06250654A publication Critical patent/JPH06250654A/en
Application granted granted Critical
Publication of JP3091343B2 publication Critical patent/JP3091343B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PURPOSE:To provide the electronic musical instrument which has an envelope generator and can control speed data on a segment repeated by the envelope generator. CONSTITUTION:The envelope generator of the electronic musical instrument which has the envelope generator is equipped with a storage means 100 which stores data for envelope generation of respective segments, an arithmetic means 106 which sequentially calculates an arrival signal outputted when an envelope value and a target value of its segment are reached and outputs it to the outside and storage means, a control means which repeats transition between specific segments on the basis of data read out of the storage means 100 and the arrival signal when specific conditions are met, and a selecting means which selects specific data among plural speed data read out of the storage means 100 and outputs it to the arithmetic means 106 on the basis of the data read out of the storage means 100.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は電子楽器に関し、特にエ
ンベロープ発生器を持つ電子楽器において、該エンベロ
ープ発生器がセグメントの繰り返しを行い、かつ繰り返
し時のエンベロープスピードを制御することができる電
子楽器に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic musical instrument, and more particularly to an electronic musical instrument having an envelope generator, which can repeat a segment and control an envelope speed at the time of repeating. It is a thing.

【0002】[0002]

【従来の技術】従来、電子楽器においては、波形読み出
し方式の楽音発生手段を持つものがある。この方式は、
複数の音色に対応する楽音波形を記憶した波形メモリを
有し、音高に対応したアドレス間隔で該波形メモリから
波形データを読み出し、エンベロープ信号発生器により
発生したエンベロープデータを乗算することによって楽
音信号を発生させる。
2. Description of the Related Art Conventionally, some electronic musical instruments have a waveform read-out tone generating means. This method
A tone signal having a waveform memory storing tone waveforms corresponding to a plurality of tones, reading waveform data from the waveform memory at an address interval corresponding to a pitch, and multiplying the envelope data generated by an envelope signal generator with the tone signal. Generate.

【0003】また、第2の方式としてサイン合成方式が
ある。これは、あらゆる周期信号は基本周期の整数倍の
高調波の組み合わせで表現できるというフーリエ合成の
理論に基づき、音色によって異なるレベル(エンベロー
プ)を持つ複数の高調波を加算し、任意の楽音波形を得
るものである。
The second method is a signature combining method. This is based on the theory of Fourier synthesis that any periodic signal can be expressed by a combination of harmonics that are an integral multiple of the fundamental period, and multiple harmonics with different levels (envelopes) are added depending on the timbre to create an arbitrary tone waveform. I will get it.

【0004】この方式においては、各高調波ごとのエン
ベロープ、あるいは、合成後の楽音信号のエンベロープ
をエンベロープ信号発生器によって発生し、波形信号に
乗算する。また各種効果用にもエンベロープ信号発生器
が用いられている。
In this system, an envelope for each harmonic or an envelope of a synthesized tone signal is generated by an envelope signal generator and multiplied by a waveform signal. An envelope signal generator is also used for various effects.

【0005】上記のような用途に使用されるエンベロー
プ発生器としては、エンベロープを複数の区間、即ちセ
グメントに分け、各セグメントの目標値とスピードデー
タを基に、演算回路によりエンベロープ値を演算する方
式が知られている。また、LFO的な効果を出すため
に、特定のデータをセットすると、特定のセグメント間
の移行を繰り返す方式も提案されている。
As an envelope generator used for the above-mentioned applications, the envelope is divided into a plurality of sections, that is, segments, and an envelope value is calculated by an arithmetic circuit based on the target value and speed data of each segment. It has been known. In addition, in order to obtain an LFO-like effect, a method has been proposed in which specific data is set and the transition between specific segments is repeated.

【0006】[0006]

【発明が解決しようとする課題】上記のような、特定の
セグメント間の移行を繰り返すエンベロープ信号発生器
においては、セグメントに対してスピードデータが固定
的に割り当てられていたため、セグメント間の移行を繰
り返した場合に変化が不自然になるという問題点があっ
た。
In the envelope signal generator that repeats the transition between the specific segments as described above, since the speed data is fixedly assigned to the segment, the transition between the segments is repeated. However, there is a problem that the change becomes unnatural.

【0007】本発明の目的は、前記のような従来技術の
問題点を改良し、エンベロープ発生器を有する電子楽器
において、該エンベロープ発生器が繰り返すセグメント
のスピードデータを制御することが可能な電子楽器を提
供することを目的とする。
An object of the present invention is to improve the above-mentioned problems of the prior art and, in an electronic musical instrument having an envelope generator, an electronic musical instrument capable of controlling speed data of a segment repeated by the envelope generator. The purpose is to provide.

【0008】[0008]

【課題を解決するための手段】本発明は、エンベロープ
発生器を有する電子楽器において、エンベロープ発生器
は、各セグメントのエンベロープ発生用データを記憶す
る記憶手段と、記憶手段から読み出されたデータに基づ
き、エンベロープ値および当セグメントの目標値に到達
した場合に出力される到達信号を順次計算し、外部およ
び記憶手段に出力する演算手段と、記憶手段から読み出
されたデータ、および到達信号に基づき、特定の条件が
成立した場合に、特定のセグメント間の移行を繰り返す
制御手段と、記憶手段から読み出されたデータに基づ
き、記憶手段から読み出された複数のスピードデータの
中から特定のものを選択して演算手段に出力する選択手
段とを備えたことを特徴とする。
According to the present invention, in an electronic musical instrument having an envelope generator, the envelope generator stores the data for generating the envelope of each segment, and the data read from the memory means. Based on the envelope value and the arrival signal output when the target value of this segment is reached are sequentially calculated and output to the external and storage means, the data read from the storage means, and the arrival signal , A specific one of a plurality of speed data read from the storage means based on the data read from the storage means and the control means that repeats the transition between the specific segments when a specific condition is satisfied. And selecting means for selecting and outputting to the calculating means.

【0009】[0009]

【作用】本発明はこのような手段により、エンベロープ
発生器において繰り返すセグメントのスピードデータを
選択することができ、例えばセグメントの繰り返しによ
り、オルガンの音のような持続性のある楽音にLFO的
効果を付加した場合に、自然なエンベロープの変化を得
ることができる。
According to the present invention, the speed data of the repeating segment in the envelope generator can be selected by such means. For example, by repeating the segment, the LFO-like effect can be applied to a continuous musical tone such as an organ sound. When added, a natural envelope change can be obtained.

【0010】[0010]

【実施例】以下、本発明の一実施例を図面を参照して詳
細に説明する。図1は一実施例である電子楽器のハード
ウェア構成を表すブロック図である。CPU1はキーア
サイン、発音制御など電子楽器全体の制御を行う。RO
M2には、制御に必要なプログラム、及び音色毎の高調
波係数、位相偏移データ、エンベロープデータ等のデー
タが格納されている。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below in detail with reference to the drawings. FIG. 1 is a block diagram showing a hardware configuration of an electronic musical instrument which is an embodiment. The CPU 1 controls the entire electronic musical instrument such as key assignment and sound generation control. RO
M2 stores programs required for control and data such as harmonic coefficients for each tone color, phase shift data, and envelope data.

【0011】RAM3には、音色、テンポ、ボリューム
等のパネル設定情報、楽器内の各種制御データあるいは
自動演奏データ等が記憶される。またその少なくとも一
部はバッテリーバックアップされ、電源を切ってもパネ
ルからセットされた音色情報等を保持することができる
ように構成されている。キーボード部4は、キーボー
ド、およびCPU1の制御によりキーボードの複数のキ
ースイッチをスキャンする回路から成る。
The RAM 3 stores panel setting information such as tone color, tempo and volume, various control data in the musical instrument, automatic performance data and the like. Further, at least a part of the battery is backed up by a battery so that the tone color information set from the panel can be retained even when the power is turned off. The keyboard unit 4 includes a keyboard and a circuit for scanning a plurality of key switches of the keyboard under the control of the CPU 1.

【0012】パネル部5は、操作スイッチ、ボリューム
およびLCDあるいはLED等の表示器を備えたパネル
と、CPU1の制御によりパネルのスイッチをスキャン
するパネルスキャン回路、表示器のドライブ回路から成
る。
The panel section 5 comprises a panel provided with operation switches, a volume and a display such as an LCD or LED, a panel scan circuit for scanning the switches of the panel under the control of the CPU 1, and a drive circuit for the display.

【0013】楽音発生部6は詳細は後述するが、サイン
合成方式によって所望の音色の波形情報を作成し、この
波形情報をRAMに記憶して、波形読み出し方式によっ
て鍵盤に対応した音高のデジタル楽音信号を発生するも
のである。また音像効果回路、残響効果回路等も含まれ
る。D/A変換器7は全てのチャネルのデジタル楽音信
号を加算、合成し、該信号をD/A変換する。アナログ
信号処理部8はアナログ楽音信号に対して雑音除去のた
めのフィルタ処理を施す回路である。
The tone generation section 6, which will be described in detail later, creates waveform information of a desired tone color by a sine synthesis method, stores this waveform information in a RAM, and digitally reproduces a pitch corresponding to a keyboard by a waveform reading method. A musical tone signal is generated. It also includes a sound image effect circuit and a reverberation effect circuit. The D / A converter 7 adds and synthesizes digital tone signals of all channels, and D / A converts the signals. The analog signal processing unit 8 is a circuit that performs filter processing for noise removal on the analog tone signal.

【0014】アンプ9は、1個または複数個のスピーカ
10を駆動するために楽音信号を増幅する。バス11は
楽器内の各回路を接続している。なお楽音発生部から左
右2系統のステレオ信号を出力するように構成し、D/
A変換器7からスピーカ10までをそれぞれ2系統設け
てもよい。またこの他に、MIDIインターフェース回
路等を設けてもよい。
The amplifier 9 amplifies a musical tone signal in order to drive one or a plurality of speakers 10. The bus 11 connects each circuit in the musical instrument. In addition, it is configured so that the left and right stereo signals are output from the musical sound generation unit, and D /
Two systems may be provided for each of the A converter 7 to the speaker 10. In addition to this, a MIDI interface circuit or the like may be provided.

【0015】図2は、図1の楽音発生回路6の内部構成
を示すブロック図である。実行制御回路20は、楽音発
生部6の動作を規定するシステムカウンタを内蔵してお
り、クロック、アドレス信号あるいは補間用信号等の各
種制御信号を発生する。またCPU1と以下に述べる各
音源回路とのインターフェース回路も含み、この回路の
中にはデータのやり取りのためのバッファメモリを有す
る。
FIG. 2 is a block diagram showing the internal structure of the tone generation circuit 6 of FIG. The execution control circuit 20 incorporates a system counter that regulates the operation of the musical tone generating section 6 and generates various control signals such as a clock, an address signal, and an interpolation signal. It also includes an interface circuit between the CPU 1 and each tone generator circuit described below, and this circuit has a buffer memory for exchanging data.

【0016】高調波情報発生部21は、詳細は後述する
が、サイン合成方式の各高調波毎のエンベロープ情報、
位相偏移情報を発生し、つぎの波形計算部22に転送す
るために内蔵するバッファメモリ(後述する高調波メモ
リ36)に書き込む。
The harmonic information generator 21 will be described in detail later, but the envelope information for each harmonic of the sine synthesis method,
The phase shift information is generated and written in a built-in buffer memory (harmonic memory 36 described later) for transfer to the next waveform calculation unit 22.

【0017】波形計算部22は、やはり詳細は後述する
が、前記バッファメモリから各高調波のエンベロープ情
報、位相偏移情報を読み出し、各高調波毎の振幅情報を
求め、さらに該振幅情報を各楽音毎に累算して、各楽音
毎の波形情報を出力する。この波形の演算は実時間では
なく、例えば約8ミリ秒といった周期で波形メモリ23
の複数の波形データが更新される。
As will be described later in detail, the waveform calculator 22 reads envelope information and phase shift information of each harmonic from the buffer memory, obtains amplitude information for each harmonic, and further obtains the amplitude information. Accumulation is performed for each musical sound, and waveform information for each musical sound is output. The calculation of this waveform is not performed in real time, but at a cycle of, for example, about 8 milliseconds.
A plurality of waveform data of is updated.

【0018】波形メモリ23は、図15(d)に示すよ
うに、3つの領域A、B、Cから成る合成波形記憶用の
波形メモリであり、各領域は複数(例えば16チャネ
ル)の楽音発生チャネル用の領域に分かれている。各チ
ャネルの領域には、波形計算部22から1周期分の楽音
波形データ(例えば512サンプル点)が書き込まれ
る。
As shown in FIG. 15D, the waveform memory 23 is a waveform memory for storing a synthesized waveform composed of three areas A, B and C, and each area generates a plurality of (for example, 16 channels) musical tones. It is divided into areas for channels. In the area of each channel, one cycle of musical tone waveform data (for example, 512 sample points) is written from the waveform calculator 22.

【0019】A領域の各チャネル領域に波形計算部22
から波形データが書き込まれているときに、B、C領域
からは前々回、前回に書き込まれた波形データが読み出
される。2つの領域から波形を読み出すのは、波形切り
替え時に振幅値が急激に変化するのを防ぐために、後段
の波形補間回路26によって補間演算を行うためであ
る。
The waveform calculator 22 is provided in each channel region of the A region.
While the waveform data is being written in, the waveform data written in the previous time is read from the B and C areas two times before. The reason why the waveforms are read from the two regions is that the waveform interpolation circuit 26 in the subsequent stage performs interpolation calculation in order to prevent the amplitude value from changing rapidly when switching the waveforms.

【0020】A領域の波形書き込みが完了すると、書き
込みと読み出しの領域が切り替えられ、今度は波形デー
タがB領域に書き込まれ、C、A領域から読み出され
る。書き込み等の制御信号は実行制御回路20から供給
される。
When the waveform writing in the area A is completed, the writing and reading areas are switched, and this time the waveform data is written in the area B and read from the areas C and A. A control signal for writing or the like is supplied from the execution control circuit 20.

【0021】波形読み出し回路24は、通常の波形読み
出し方式の回路と同様の構成のものであり、押下された
キーに対応した、所望とする楽音周波数に応じたアドレ
ス間隔で波形メモリから波形データを読み出すためのア
ドレス信号を発生する。セレクタ25は、実行制御回路
20からの書き込みアドレスと波形読み出し回路24か
らの読み出しアドレスとを、実行制御回路20からの制
御信号により切り替え、波形メモリ23にアドレス信号
を供給する。
The waveform reading circuit 24 has a structure similar to that of a circuit of a normal waveform reading system, and waveform data is read from the waveform memory at an address interval corresponding to a desired tone frequency corresponding to a depressed key. An address signal for reading is generated. The selector 25 switches between the write address from the execution control circuit 20 and the read address from the waveform read circuit 24 by the control signal from the execution control circuit 20, and supplies the address signal to the waveform memory 23.

【0022】波形補間回路26は、前記したように、波
形データの切り替え時に波形値が急激に変化しないよう
に、波形メモリ23の現在書き込まれている領域以外の
2つの領域から同時に波形データを読み出し、補間演算
を行って波形データを出力する。
As described above, the waveform interpolation circuit 26 simultaneously reads the waveform data from two areas other than the area currently written in the waveform memory 23 so that the waveform value does not change abruptly when the waveform data is switched. , Performs interpolation calculation and outputs waveform data.

【0023】補間の仕方としては、例えば以下のような
方式が採用できる。まず波形の更新周期を16のタイム
スロットに分割する。今、領域Bの書き込みが終了し、
領域Cへの書き込みが開始されたものとすると、この時
点(最初のタイムスロット)での出力波形データDは、
D=(16/16)An+(0/16)Bn となる。
ここで、An、BnはそれぞれA、B領域から読み出さ
れた波形データである。
As a method of interpolation, for example, the following method can be adopted. First, the waveform update period is divided into 16 time slots. Now, the writing of the area B is completed,
Assuming that writing to the area C has started, the output waveform data D at this point (first time slot) is
D = (16/16) An + (0/16) Bn.
Here, An and Bn are waveform data read from the A and B areas, respectively.

【0024】そして、次のタイムスロットでは、D=
(15/16)An+(1/16)Bn というよう
に、徐々にA領域のデータの重みが減少し、B領域の波
形データの重みが増加していく。そして、最後のタイム
スロットでは、D=(1/16)An+(15/16)
Bn となる。
Then, in the next time slot, D =
As in (15/16) An + (1/16) Bn, the weight of the data in the A region gradually decreases and the weight of the waveform data in the B region increases. Then, in the last time slot, D = (1/16) An + (15/16)
Bn.

【0025】領域Cへの書き込みが終了し、領域の切り
替えが行われると、読み出し領域がB、Cとなり、最初
のタイムスロットの出力は、D=(0/16)Cn+
(16/16)Bnとなる。すると今度は、徐々にB領
域のデータの重みが減少し、C領域の波形データの重み
が増加していく。波形補間回路26は以上のような補間
演算を行い、徐々に変化する波形データを出力する。
When the writing to the area C is completed and the areas are switched, the read areas become B and C, and the output of the first time slot is D = (0/16) Cn +
(16/16) Bn. Then, the weight of the data in the B region gradually decreases, and the weight of the waveform data in the C region gradually increases. The waveform interpolation circuit 26 performs the above-described interpolation calculation and outputs gradually changing waveform data.

【0026】エンベロープ発生器27は、詳細は後述す
るが、音色、押鍵の強さ等に従ってCPU1がセットし
たデータに基づき、楽音波形のエンベロープ情報を発生
する。乗算器28は波形補間回路26から出力された波
形情報とエンベロープ発生器27から出力されるエンベ
ロープ情報とを乗算し、デジタル楽音信号を出力する。
The envelope generator 27, which will be described in detail later, generates musical tone waveform envelope information based on the data set by the CPU 1 according to the tone color, the strength of key depression, and the like. The multiplier 28 multiplies the waveform information output from the waveform interpolation circuit 26 and the envelope information output from the envelope generator 27, and outputs a digital tone signal.

【0027】楽音発生部6は波形メモリ23、波形読み
出し回路24、エンベロープ発生器27、乗算器28に
よって、通常の波形読み出し方式の楽音信号発生回路と
同様の機能を有しており、従って波形メモリの一部を、
波形データを記憶したROM等により構成することによ
り、チャネル毎にサイン合成方式の楽音信号発生と、P
CM波形読み出し方式の楽音信号発生とを選択すること
も可能である。
The tone generating section 6 has the same function as that of a tone signal generating circuit of a normal waveform reading system by the waveform memory 23, the waveform reading circuit 24, the envelope generator 27, and the multiplier 28. Part of
By using a ROM or the like that stores waveform data, tone signal generation by the sine synthesis method for each channel and P
It is also possible to select the tone signal generation of the CM waveform reading method.

【0028】なお、図2の各回路は時分割多重動作によ
って、複数チャネルの独立した楽音信号を発生するよう
に構成されており、以下の実施例においては、チャネル
数を16として説明する。また図示していないが、乗算
器28とD/A変換器7の間に、楽音信号を左右に分配
し、それぞれのレベルを制御する音像効果回路、あるい
は残響効果回路等を挿入してもよい。
Each circuit of FIG. 2 is configured to generate independent tone signals of a plurality of channels by time division multiplexing operation. In the following embodiments, the number of channels will be described as 16. Although not shown, a sound image effect circuit, a reverberation effect circuit, or the like may be inserted between the multiplier 28 and the D / A converter 7 to distribute the tone signals to the left and right and control their respective levels. .

【0029】<高調波情報発生部>。<Harmonic Information Generation Unit>

【0030】図3は、図2の高調波情報発生部21の内
部構成を示すブロック図である。位相偏移情報発生器3
0、および高調波係数発生器31は同じ回路構成になっ
ており、それぞれ実行制御回路20から出力される高調
波次数信号q(例えば第1次、つまり基本波から第16
次高調波まで)に従って、各高調波次数毎の位相偏移情
報P(後述するサイン波形メモリにおけるアドレスのオ
フセット量)、および音色に対応した高調波係数情報h
を出力する。
FIG. 3 is a block diagram showing the internal structure of the harmonic information generation unit 21 of FIG. Phase shift information generator 3
0 and the harmonic coefficient generator 31 have the same circuit configuration, and the harmonic order signal q (for example, the 1st order, that is, the fundamental wave to the 16th order) output from the execution control circuit 20.
(Up to the next harmonic), phase shift information P (address offset amount in the sine waveform memory described later) for each harmonic order, and harmonic coefficient information h corresponding to the tone color.
Is output.

【0031】なお詳細は後述するが、ROM2内には、
ある音色のある音域毎あるいはタッチ強度毎に基準とな
る位相偏移および高調波係数データを記憶しておき、各
発生器内での補間演算によって特定の音高あるいはタッ
チ強度に対応したデータを出力する構成になっている。
Although the details will be described later, in the ROM 2,
The reference phase shift and harmonic coefficient data are stored for each tone range or touch intensity of a certain tone color, and data corresponding to a specific pitch or touch intensity is output by interpolation calculation in each generator. It is configured to do.

【0032】フォルマント係数発生器32は、詳細は後
述するが、例えば音色および音高に対応して、高調波係
数hを補正するためのフォルマント係数FSを発生す
る。乗算器33は高調波係数hとフォルマント係数FS
とを乗算する。
The formant coefficient generator 32, which will be described in detail later, generates a formant coefficient FS for correcting the harmonic coefficient h in accordance with, for example, a tone color and a pitch. The multiplier 33 has a harmonic coefficient h and a formant coefficient FS.
And multiply.

【0033】高調波エンベロープ発生器34は、やはり
詳細は後述するが、各高調波毎のエンベロープを制御す
るための高調波エンベロープ信号Eを発生する。乗算器
35は、フォルマント係数FSによって補正された高調
波係数hと、高調波エンベロープ信号Eとを乗算する。
この回路により、各高調波毎の係数に独立して時間的変
化をつけることができ、発音中に楽音の音色を徐々に変
化させることが可能となる。
The harmonic envelope generator 34 generates a harmonic envelope signal E for controlling the envelope for each harmonic, as will be described later in detail. The multiplier 35 multiplies the harmonic coefficient h corrected by the formant coefficient FS by the harmonic envelope signal E.
With this circuit, the coefficient for each harmonic can be independently changed over time, and the tone color of a musical tone can be gradually changed during sound generation.

【0034】高調波係数発生器31から乗算器35まで
の回路により、フォルマント特性によって補正され、各
高調波毎に時間変化を付けた、例えば各チャネル毎の基
本波から第16次高調波までの高調波係数データHが得
られる。
The circuits from the harmonic coefficient generator 31 to the multiplier 35 correct the formant characteristics and change the time for each harmonic, for example, from the fundamental wave to the 16th harmonic of each channel. Harmonic coefficient data H is obtained.

【0035】高調波メモリ36は、図15(c)に示す
ように、2つの領域A、Bから成り、各領域は例えば1
チャネル分の1次から16次までの各高調波の領域に分
かれている。各高調波の領域には、各高調波毎の位相偏
移情報Pと高調波係数Hとが書き込まれる。
The harmonic memory 36 is composed of two areas A and B, as shown in FIG.
It is divided into first to sixteenth harmonic regions of the channel. Phase shift information P and harmonic coefficient H for each harmonic are written in the area of each harmonic.

【0036】A領域の各高調波領域に位相偏移および高
調波係数データが書き込まれているときに、B領域から
は前回書き込まれた1チャネル分のデータが波形計算部
22に読み出されており、一方の領域の書き込みが完了
すると、書き込みと読み出しの領域が切り替えられる。
セレクタ37は実行制御回路20からの書き込みアドレ
スWAおよび読み出しアドレスRAを、やはり実行制御
回路20からの制御信号によって切り替え、高調波メモ
リ36にアドレス信号を供給する。
When the phase shift and the harmonic coefficient data are written in the respective harmonic regions of the A region, the previously written data for one channel is read out from the B region to the waveform calculation section 22. Therefore, when the writing in one area is completed, the writing and reading areas are switched.
The selector 37 switches the write address WA and the read address RA from the execution control circuit 20 by the control signal from the execution control circuit 20, and supplies the address signal to the harmonic memory 36.

【0037】<波形計算部>図4は、図2の波形計算部
22の内部構成を示すブロック図である。アキュムレー
タ40は実行制御回路20からの制御信号に基づいて、
各高調波の位相情報を順次発生する。この位相情報は、
サイン波形メモリ42から各次数の高調波の各サンプル
点(位相点)の振幅値を読み出すためのアドレス信号と
なる。
<Waveform Calculation Unit> FIG. 4 is a block diagram showing the internal structure of the waveform calculation unit 22 of FIG. The accumulator 40 is based on the control signal from the execution control circuit 20,
Phase information of each harmonic is sequentially generated. This phase information is
It serves as an address signal for reading the amplitude value of each sampling point (phase point) of the harmonic of each order from the sine waveform memory 42.

【0038】図5(a)はアキュムレータ40の内部構
成を示すブロック図である。加算器401は実行制御回
路20から入力されるワード番号WN(基本波の位相情
報に相当する)と、アンドゲート403の出力とを加算
する。ラッチ402は、各高調波の計算周期毎に、ラッ
チパルスにより加算器401の出力をラッチする。アン
ドゲート403は、各ワード番号の計算期間の内の第1
高調波、つまり基本波の計算期間のみ0となり、他の期
間は1である制御信号と、ラッチ402の出力との論理
積を出力する。
FIG. 5A is a block diagram showing the internal structure of the accumulator 40. The adder 401 adds the word number WN (corresponding to the phase information of the fundamental wave) input from the execution control circuit 20 and the output of the AND gate 403. The latch 402 latches the output of the adder 401 with a latch pulse every calculation cycle of each harmonic. The AND gate 403 is the first in the calculation period of each word number.
It outputs a logical product of the control signal which is 0 only during the calculation period of the harmonic, that is, the fundamental wave, and is 1 during the other periods, and the output of the latch 402.

【0039】図5(b)はワード番号WNと高調波次数
qに対するラッチ402の出力信号を表す図である。例
えばワード番号2の計算期間においては、まず高調波次
数qが1の期間にはアンドゲート403からは0が出力
されているので、ラッチ402にはワード番号がそのま
まラッチされる。
FIG. 5B is a diagram showing the output signal of the latch 402 with respect to the word number WN and the harmonic order q. For example, in the calculation period of the word number 2, since the AND gate 403 outputs 0 in the period in which the harmonic order q is 1, the word number is latched in the latch 402 as it is.

【0040】つぎの高調波次数qが2の期間において
は、アンドゲート403の制御信号は1であり、アンド
ゲート403からはラッチ402の内容が出力されてい
る。従って加算器401の出力にはワード番号の2倍の
値が出力され、該値がラッチされる。このように、順次
ワード番号の2倍、3倍、4倍の値が出力される。これ
らの値は各高調波の位相情報に相当する。
During the next period in which the harmonic order q is 2, the control signal of the AND gate 403 is 1, and the content of the latch 402 is output from the AND gate 403. Therefore, a value twice the word number is output to the output of the adder 401, and the value is latched. In this way, the values twice, three times, and four times the word numbers are sequentially output. These values correspond to the phase information of each harmonic.

【0041】なお、後述するサイン波形メモリ42が、
例えば1周期分として512サンプル点(アドレス9ビ
ット)のデータを記憶している場合には、加算器40
1、およびラッチ402も9ビット分あればよく、オー
バーフローしたビットは無視される。また、ワード番号
WNは、後述するように半周期分の255まであればよ
い。
The sine waveform memory 42, which will be described later,
For example, when data of 512 sample points (address 9 bits) is stored as one cycle, the adder 40
1 and the latch 402 need only have 9 bits, and overflow bits are ignored. Further, the word number WN may be up to 255 for a half cycle as described later.

【0042】図4に戻って、加算器41は、各高調波毎
に位相情報であるアキュムレータ40の出力アドレス信
号と、高調波メモリ36から読み出された位相偏移情報
Pとを加算する。そして加算出力アドレス信号によっ
て、サイン波形メモリ42から各高調波に対応した振幅
情報を読み出す。
Returning to FIG. 4, the adder 41 adds the output address signal of the accumulator 40, which is phase information for each harmonic, and the phase shift information P read from the harmonic memory 36. Then, the amplitude information corresponding to each harmonic is read from the sine waveform memory 42 by the addition output address signal.

【0043】サイン波形メモリ42は、サイン波形の例
えば512のサンプル点毎の振幅値データを記憶してい
るメモリであり、1周期分のデータを記憶してもよい
が、波形の対称性を利用して、1/2あるいは1/4周
期分のデータを記憶しておき、アドレスおよび読み出し
データの処理により、1周期分のデータを得るようにす
ることもできる。
The sine waveform memory 42 is a memory that stores, for example, amplitude value data of 512 sample points of the sine waveform, and may store data for one period, but the symmetry of the waveform is used. Then, it is also possible to store data for 1/2 or 1/4 cycle and obtain data for one cycle by processing the address and read data.

【0044】乗算器43は、サイン波形メモリ42から
読み出された振幅値データと、高調波メモリ36から読
み出された高調波係数Hとを乗算する。従って、乗算器
43の出力には、あるサンプル点における、所望の音
色、及びフォルマントに対応した楽音の第1から第16
次高調波の振幅データが順に得られる。
The multiplier 43 multiplies the amplitude value data read from the sine waveform memory 42 by the harmonic coefficient H read from the harmonic memory 36. Therefore, at the output of the multiplier 43, the first to sixteenth musical tones corresponding to the desired tone color and formant at a certain sample point are output.
Amplitude data of the second harmonic is sequentially obtained.

【0045】加算器44からラッチE52までの回路は
高調波振幅値の累算器を形成しており、また1回の累算
によって半周期離れた2つのサンプル点の波形振幅値を
求めることができる構成になっている。そこで、まず1
回の累算によって半周期離れた2つのサンプル点の波形
振幅値を求める方法について説明する。
The circuit from the adder 44 to the latch E52 forms an accumulator of harmonic amplitude values, and it is possible to obtain the waveform amplitude values of two sample points separated by a half cycle by one accumulation. It can be configured. So, first 1
A method of obtaining the waveform amplitude values of two sample points separated by a half cycle by accumulating twice will be described.

【0046】図16は、位相のずれた奇偶それぞれの高
調波の、2サンプル点の振幅値の求め方を示す概念図で
ある。奇数高調波については、図16(a)に示すよう
に、ある点P1 の振幅値が得られた場合に、基本周期の
半周期先の点P2 の振幅値はP1 の振幅値の正負の符号
を反転したものになる。従って負の数を2の補数表示に
よって処理する場合には、入力データを2の補数に変換
する補数器を通すことによりP2 の振幅値が得られる。
FIG. 16 is a conceptual diagram showing how to obtain the amplitude values of two sampling points of the harmonics of each of the odd and even phases that are out of phase. For odd harmonics, as shown in FIG. 16 (a), when the amplitude value of a certain point P1 is obtained, the amplitude value of the point P2, which is a half cycle ahead of the fundamental period, is the positive or negative sign of the amplitude value of P1. Will be reversed. Therefore, when a negative number is processed by the two's complement notation, the amplitude value of P2 is obtained by passing it through a complementer which converts the input data into the two's complement.

【0047】偶数高調波については、図16(b)に示
すように、ある点P1 の振幅値が得られた場合に、基本
周期の半周期先の点P2 の振幅値はP1 の振幅値と等し
くなる。従って、2サンプル点における、1から16ま
での高調波の振幅の累算値を求めるためには、つぎのよ
うな演算を行う。
For even harmonics, as shown in FIG. 16B, when the amplitude value at a certain point P1 is obtained, the amplitude value at a point P2 which is a half cycle ahead of the fundamental cycle is equal to the amplitude value at P1. Will be equal. Therefore, in order to obtain the cumulative value of the amplitudes of the harmonics from 1 to 16 at the two sample points, the following calculation is performed.

【0048】まず、奇数高調波のみの累算値と偶数高調
波のみの累算値とを求める。つぎに、両累算値を加算す
ることにより、点P1 における累算値を求める。さらに
偶数高調波の累算値に奇数高調波累算値を補数変換した
ものを加算することにより、点P2 の累算値を得る。こ
のような演算処理を行うことにより、位相のずれた高調
波による波形データを半分のサンプル点の演算により求
めることができる。
First, a cumulative value of only odd harmonics and a cumulative value of only even harmonics are obtained. Next, the accumulated value at the point P1 is obtained by adding both accumulated values. Further, the cumulative value of the even harmonics is added with the complement of the cumulative value of the odd harmonics to obtain the cumulative value of the point P2. By performing such an arithmetic process, the waveform data of the phase-shifted higher harmonics can be obtained by the operation of half the sample points.

【0049】図4に戻って、加算器44はアンド・オア
回路45の出力と、乗算器43の出力とを加算すること
によって順次累算を行っていく。ラッチA46はラッチ
信号WGL1に従い、1、3、5…など奇数番目の高調
波振幅データ累算値を順次ラッチしていく。ラッチB4
7はラッチ信号WGL2に従い、2、4、6…など偶数
番目の高調波振幅データ累算値を順次ラッチしていく。
アンド・オア回路45は後述する制御信号WGG1、W
GG2に従ってラッチA46またはラッチB47の出力
信号を選択し、加算器44に供給する。
Returning to FIG. 4, the adder 44 successively performs accumulation by adding the output of the AND / OR circuit 45 and the output of the multiplier 43. The latch A46 sequentially latches the odd-numbered harmonic amplitude data accumulated values such as 1, 3, 5, ... In accordance with the latch signal WGL1. Latch B4
7 sequentially latches even-numbered harmonic amplitude data accumulated values such as 2, 4, 6, ... In accordance with the latch signal WGL2.
The AND / OR circuit 45 controls the control signals WGG1, W described later.
The output signal of the latch A46 or the latch B47 is selected according to GG2 and is supplied to the adder 44.

【0050】動作タイミングは後述するが、乗算器43
からあるチャネルの16高調波までの振幅値が出力され
た時点では、ラッチA46には1から15までの奇数番
目の高調波振幅データの累算値が保持されており、また
ラッチB47には2から16までの偶数番目の高調波振
幅データの累算値が保持されている。
The operation timing will be described later, but the multiplier 43
At the time when the amplitude values of up to 16 harmonics of a channel are output, the accumulated value of the odd-numbered harmonic amplitude data of 1 to 15 is held in the latch A46, and the latch B47 stores 2 The accumulated values of the even-numbered harmonic amplitude data from 1 to 16 are held.

【0051】ラッチC48、ラッチD49はそれぞれ、
上記奇数および偶数高調波の累算値をそれぞれのラッチ
信号WGL3、WGL4に従ってラッチする。2の補数
器50は制御信号CCSが0の場合には入力信号をその
まま通過させ、CCSが1の場合には入力信号を2の補
数表現に変換(0と1を反転して1を加算)して出力す
る。加算器51はラッチD49の出力と2の補数器50
の出力とを加算する。
Latch C48 and latch D49 are respectively
The accumulated values of the odd and even harmonics are latched according to the respective latch signals WGL3 and WGL4. When the control signal CCS is 0, the 2's complement device 50 passes the input signal as it is, and when the CCS is 1, the input signal is converted into a 2's complement representation (0 and 1 are inverted and 1 is added). And output. The adder 51 outputs the output of the latch D49 and the 2's complementer 50.
And the output of.

【0052】ラッチE52は、まずCCSが0の期間に
おいて、加算器51の出力をラッチ信号WGL5に従っ
てラッチし、その出力データが波形メモリに書き込まれ
る。次に、ラッチE52は、CCSが1の期間におい
て、加算器51の出力をラッチ信号WGL5に従ってラ
ッチし、その出力データは波形メモリの半周期離れたサ
ンプル点に対応するアドレスに書き込まれる。このよう
な構成により、例えば256回の振幅値演算により、5
12サンプル点を有する波形メモリへの書き込みが完了
する。
The latch E52 first latches the output of the adder 51 in accordance with the latch signal WGL5 while the CCS is 0, and the output data is written in the waveform memory. Next, the latch E52 latches the output of the adder 51 in accordance with the latch signal WGL5 during the period when CCS is 1, and the output data is written to the address corresponding to the sampling point which is a half cycle away from the waveform memory. With such a configuration, for example, by performing the amplitude value calculation 256 times, 5
Writing to the waveform memory having 12 sample points is completed.

【0053】<位相偏移情報発生器>。<Phase shift information generator>.

【0054】位相偏移情報発生器30、及び後述する高
調波係数発生器31は同じ回路構成を有しており、これ
らは、音域毎あるいはタッチ強度毎の基準データを基
に、必要とする音高あるいはタッチ強度の位相偏移およ
び高調波係数データを生成する補間回路を形成してい
る。
The phase shift information generator 30 and the harmonic coefficient generator 31, which will be described later, have the same circuit configuration, and these require a required sound based on reference data for each range or touch intensity. It forms an interpolator that produces high or touch intensity phase shifts and harmonic coefficient data.

【0055】図6は位相偏移情報発生器30の内部構成
を示すブロック図である。第1位相偏移情報メモリ30
1、及び第2位相偏移情報メモリ302は、共に図15
(b)に示すようなメモリマップを有している。第1位
相偏移情報メモリ301には、CPU1から実行制御回
路20を介して、押下されたキーを含む音域の、あるい
は押下されたキーの強度範囲の基準位相偏移データPa
が書き込まれる。
FIG. 6 is a block diagram showing the internal structure of the phase shift information generator 30. First phase shift information memory 30
Both the first and second phase shift information memories 302 are shown in FIG.
It has a memory map as shown in (b). In the first phase shift information memory 301, the reference phase shift data Pa of the range including the depressed key or the intensity range of the depressed key Pa from the CPU 1 via the execution control circuit 20.
Is written.

【0056】この基準データは、例えば該音域の中の最
も低い音高、あるいは該強度範囲の中の最も弱い強度に
対応するデータである。第2位相偏移情報メモリ302
には、一つ上の音域あるいは強度の基準位相偏移データ
Pbが書き込まれる。これらのデータは実行制御回路2
0からのチャネル番号C、高調波次数qをアドレスとし
て読み出される。
This reference data is, for example, data corresponding to the lowest pitch in the tone range or the weakest intensity in the intensity range. Second phase shift information memory 302
The reference phase shift data Pb of the next higher pitch range or intensity is written in. These data are stored in the execution control circuit 2
The channel number C starting from 0 and the harmonic order q are read as addresses.

【0057】乗算器303は第1位相偏移情報メモリ3
01の出力Paと、補数器305の出力とを乗算する。
乗算器304は第2位相偏移情報メモリ302の出力P
bとバランス信号BLとを乗算する。補数器305は、
バランス信号BLを2の補数表現に変換し、(1−B
L)を出力する回路である。加算器306は両乗算器3
03、304の出力を加算する。従って、出力位相偏移
情報Pは、下記のようになる。
The multiplier 303 is the first phase shift information memory 3
The output Pa of 01 and the output of the complementer 305 are multiplied.
The multiplier 304 outputs the output P of the second phase shift information memory 302.
b is multiplied by the balance signal BL. Complement unit 305
The balance signal BL is converted into a two's complement representation, and (1-B
This is a circuit for outputting L). The adder 306 is both multipliers 3
The outputs of 03 and 304 are added. Therefore, the output phase shift information P is as follows.

【0058】P=(1−BL)Pa+BL・Pb 。P = (1−BL) Pa + BL · Pb.

【0059】ここでバランス信号BLについて説明す
る。バランス信号BLは、位相偏移情報発生器30、お
よび高調波係数発生器31において補間演算を行う場合
の補間係数信号であり、図8は、例えば実行制御回路2
0内にある音高情報によるバランス信号発生回路の一例
を示すブロック図である。
Here, the balance signal BL will be described. The balance signal BL is an interpolation coefficient signal when interpolation calculation is performed in the phase shift information generator 30 and the harmonic coefficient generator 31, and FIG. 8 shows, for example, the execution control circuit 2
It is a block diagram which shows an example of the balance signal generation circuit by the pitch information in 0.

【0060】入力信号BKNoは図6の第1位相偏移情
報メモリ301あるいは図7の第1高調波係数メモリ3
11にセットされる位相偏移あるいは高調波係数情報に
対応するキーナンバーである。入力信号TKNoは図6
の第2位相偏移情報メモリ302あるいは図7の第2高
調波係数メモリ312にセットされる位相偏移あるいは
高調波係数情報に対応するキーナンバーである。CKN
oは現在押鍵されていて、波形を演算しようとする鍵の
キーナンバーである。
The input signal BKNo corresponds to the first phase shift information memory 301 of FIG. 6 or the first harmonic coefficient memory 3 of FIG.
It is a key number corresponding to the phase shift or harmonic coefficient information set to 11. The input signal TKNo is shown in FIG.
2 is a key number corresponding to the phase shift or harmonic coefficient information set in the second phase shift information memory 302 or the second harmonic coefficient memory 312 of FIG. CKN
o is the key number of the key that is currently pressed and is to calculate the waveform.

【0061】加算器70はCKNoからBKNoを減算
する。また加算器71はTKNoからBKNoを減算す
る。割算器72は乗算器70の出力を乗算器71の出力
で割算する。従って割算器72の出力には下記のような
出力PBLが得られる。
The adder 70 subtracts BKNo from CKNo. Further, the adder 71 subtracts BKNo from TKNo. The divider 72 divides the output of the multiplier 70 by the output of the multiplier 71. Therefore, the following output PBL is obtained at the output of the divider 72.

【0062】PBL=(CKNo−BKNo)/(TK
No−BKNo) 。
PBL = (CKNo-BKNo) / (TK
No-BKNo).

【0063】BKNoは押下された鍵を含む音域の基準
となるキーナンバーであり、TKNoはそれより1つ上
の音域の基準キーナンバーであるから、BKNo<CK
No<TKNoとなりPBLの範囲は、0≦PBL<1
となる。
Since BKNo is a key number that serves as a reference for the tone range including the depressed key, and TKNo is a reference key number for the tone range that is one level higher than it, BKNo <CK
No <TKNo and the range of PBL is 0 ≦ PBL <1
Becomes

【0064】アドレスデコーダ73はPBLを変換メモ
リ74のアドレスに変換する。変換メモリ74は複数の
メモリ741〜74nからなっており、各メモリには図
8に示すように0から1の範囲において、異なる変化カ
ーブを有するデータが記憶されており、選択された1つ
のメモリからバランス信号BLが出力される。デコーダ
75は、CPU1から音色に基づいて設定されるカーブ
選択信号に基づき、メモリ選択信号を出力する。
The address decoder 73 converts the PBL into an address in the conversion memory 74. The conversion memory 74 is composed of a plurality of memories 741 to 74n, each of which stores data having different change curves in the range of 0 to 1 as shown in FIG. Outputs a balance signal BL. The decoder 75 outputs a memory selection signal based on the curve selection signal set by the CPU 1 based on the tone color.

【0065】タッチ強度による補間を行う場合にも、回
路構成は図8のものでよく、入力信号がタッチ強度に替
わるだけである。図8の入力信号のCKTHは押下され
たキーのタッチ強度データであり、BKTHはCKTH
値を含む強度範囲の中の最も弱い強度に対応するデータ
であり、TKTHは一つ上の強度範囲の中の最も弱い強
度に対応するデータである。
In the case of performing the interpolation based on the touch strength, the circuit configuration shown in FIG. 8 may be used, and the input signal only changes to the touch strength. CKTH of the input signal in FIG. 8 is touch strength data of the pressed key, and BKTH is CKTH.
It is data corresponding to the weakest intensity in the intensity range including the value, and TKTH is data corresponding to the weakest intensity in the intensity range one level above.

【0066】<高調波係数発生器>図7は高調波係数発
生器31の内部構成を示すブロック図である。この回路
は前述したように位相偏移情報発生器30と同じ回路構
成を有しており、音域毎あるいはタッチ強度毎の基準デ
ータを基に、必要とする高調波係数データを生成する補
間回路を形成している。
<Harmonic Coefficient Generator> FIG. 7 is a block diagram showing the internal structure of the harmonic coefficient generator 31. This circuit has the same circuit configuration as that of the phase shift information generator 30 as described above, and includes an interpolation circuit that generates the required harmonic coefficient data based on the reference data for each range or touch intensity. Is forming.

【0067】第1高調波係数メモリ311、及び第2高
調波係数メモリ312は、共に図15(a)に示すよう
なメモリマップを有している。第1高調波係数メモリ3
11には、CPU1から実行制御回路20を介して、指
定された音色の、押下されたキーを含む音域あるいはタ
ッチ強度の基準高調波係数データが書き込まれ、第2高
調波係数メモリ312には、指定された音色の、一つ上
の音域あるいはタッチ強度の基準高調波係数データが書
き込まれる。
The first harmonic coefficient memory 311 and the second harmonic coefficient memory 312 both have a memory map as shown in FIG. 15 (a). First harmonic coefficient memory 3
The reference harmonic coefficient data of the specified tone color of the tone range including the pressed key or the touch intensity of the touch intensity is written in the CPU 11 from the CPU 1 via the execution control circuit 20, and in the second harmonic coefficient memory 312, The reference harmonic coefficient data of the tone range or touch intensity of the designated tone color is written.

【0068】313、314は乗算器、315はBLを
補数変換し、さらに(1−BL)を出力する補数器、3
16は加算器である。この回路の動作は前述した位相偏
移情報発生器と同じであり、バランス信号BLに基づき
補間された高調波係数データhを出力する。
313 and 314 are multipliers, 315 is a complementer which complement-converts BL and outputs (1-BL), 3
16 is an adder. The operation of this circuit is the same as that of the phase shift information generator described above, and outputs the harmonic coefficient data h interpolated based on the balance signal BL.

【0069】なお、上記位相偏移情報発生器30、およ
び高調波係数発生器31の使用法としては、上記したよ
うな補間の他に、効果付加回路として以下のような使用
法もある。
The phase shift information generator 30 and the harmonic coefficient generator 31 may be used in the following manner as an effect adding circuit in addition to the above interpolation.

【0070】例えば、位相偏移情報発生器30および高
調波係数発生器31の第1のメモリ301、311と第
2のメモリ302、312とにそれぞれ異なる音色のデ
ータをセットしておく。そして、BL信号として、例え
ば振幅が0.5を中心に最大0から1の間で変化する5
0Hz以下の正弦波データ(LFO信号)を用いれば、
いわゆるLFO効果をかけることができる。
For example, different tone color data are set in the first memories 301 and 311 and the second memories 302 and 312 of the phase shift information generator 30 and the harmonic coefficient generator 31, respectively. Then, as the BL signal, for example, the amplitude changes from 0 to 1 at the maximum around 0.5 and 5
If sine wave data (LFO signal) of 0 Hz or less is used,
A so-called LFO effect can be applied.

【0071】あるいは、パネル部にホィール(ボリュー
ム)を設け、これを手動で操作すると、0から1の範囲
のデジタル信号を発生するような回路を介して、BL信
号を供給するようにすれば、手動で連続的に音色を変化
させることができる。
Alternatively, if a wheel (volume) is provided on the panel section and is manually operated, the BL signal is supplied through a circuit that generates a digital signal in the range of 0 to 1. You can manually and continuously change the timbre.

【0072】従って、位相偏移情報発生器30および高
調波係数発生器31のBL信号入力部に、図8に示すよ
うなBL信号発生回路からの信号、LFO信号発生回路
からの信号、ホィールからの信号等を切り替える回路を
設けるようにしてもよい。
Therefore, in the BL signal input section of the phase shift information generator 30 and the harmonic coefficient generator 31, the signals from the BL signal generating circuit, the signal from the LFO signal generating circuit, and the wheel as shown in FIG. It is also possible to provide a circuit for switching the signal and the like.

【0073】<フォルマント係数発生器>図9は、図3
のフォルマント係数発生器32の内部構成を示すブロッ
ク図である。キーナンバー変換メモリ80は高調波次数
qをキーナンバーHKNoに変換するためのものであ
り、HKNoとqの関係は次式のようになっている。
<Formant Coefficient Generator> FIG. 9 is shown in FIG.
3 is a block diagram showing an internal configuration of a formant coefficient generator 32 of FIG. The key number conversion memory 80 is for converting the harmonic order q into the key number HKNo, and the relationship between HKNo and q is as shown in the following equation.

【0074】HKNo=12・Log2 (q) 。HKNo = 12 · Log 2 (q).

【0075】加算器81はキーナンバー変換メモリ80
の出力と、押下された鍵のキーナンバーKNoとを加算
する。フォルマントエンベロープ発生器82は、キーの
オン/オフ信号およびキーナンバーによって、経時変化
するエンベロープ信号を発生する。乗算器83はフォル
マントエンベロープ発生器82の出力と、CPU1から
設定されるデプス情報とを乗算する。このデプス(深
さ)情報は、フォルマントエンベロープ信号をフォルマ
ント係数メモリ86の読み出しアドレスにどれだけ作用
させるかを制御する深さ信号である。
The adder 81 is a key number conversion memory 80.
And the key number KNo of the pressed key are added. The formant envelope generator 82 generates an envelope signal that changes with time according to a key on / off signal and a key number. The multiplier 83 multiplies the output of the formant envelope generator 82 by the depth information set by the CPU 1. This depth information is a depth signal that controls how much the formant envelope signal acts on the read address of the formant coefficient memory 86.

【0076】加算器84は加算器81の出力と、乗算器
83の出力とを加算する。この出力の整数部Inはアド
レスデコーダ85に入力され、アドレスデコーダ85か
らは、フォルマント係数メモリ86の読み出しアドレス
として、Inおよび(In+1)が順次出力される。
The adder 84 adds the output of the adder 81 and the output of the multiplier 83. The integer part In of this output is input to the address decoder 85, and In and (In + 1) are sequentially output from the address decoder 85 as read addresses of the formant coefficient memory 86.

【0077】フォルマント係数メモリ86は、例えば図
12に示すように、キーナンバーに対応してフォルマン
ト係数を記憶しており、アドレスデコーダ85からのア
ドレス信号に従って、フォルマント係数値FnおよびF
n+1を順次出力する。なおこのメモリに複数のフォルマ
ント特性データを記憶しておき、音色、効果などによっ
て選択するようにしてもよい。
The formant coefficient memory 86 stores the formant coefficients corresponding to the key numbers as shown in FIG. 12, and according to the address signal from the address decoder 85, the formant coefficient values Fn and Fn.
n + 1 is sequentially output. It should be noted that a plurality of formant characteristic data may be stored in this memory so that the formant characteristic data can be selected according to the tone color, the effect and the like.

【0078】補間器87はフォルマント係数メモリ86
から出力されるフォルマント係数値Fn、Fn+1、およ
び加算器84から出力される小数部frに基づき、次式
のように補間されたフォルマント係数FSを出力する。
The interpolator 87 is a formant coefficient memory 86.
Based on the formant coefficient values Fn and Fn + 1 output from the above and the fractional part fr output from the adder 84, the formant coefficient FS interpolated as in the following equation is output.

【0079】FS=Fn+(Fn+1−Fn)・fr 。FS = Fn + (Fn + 1-Fn) .fr.

【0080】このフォルマント係数発生器32は、高調
波係数発生器31と同期して動作し、高調波係数発生器
31がある高調波次数の高調波係数hを出力するタイミ
ングに合わせて同じ高調波次数のフォルマント係数FS
を出力する。
The formant coefficient generator 32 operates in synchronization with the harmonic coefficient generator 31, and the same harmonic wave is generated at the timing when the harmonic coefficient generator 31 outputs the harmonic coefficient h of a certain harmonic order. Formant coefficient FS of order
Is output.

【0081】図12はフォルマント係数発生器32の動
作を説明するための概念図である。図12(a)におい
ては、押下されたキーナンバーがKで示されている。ま
たデプス値を乗算したフォルマントエンベロープが図の
ような波形を発生するように設定されており、現在値が
点Aであるものとする。
FIG. 12 is a conceptual diagram for explaining the operation of the formant coefficient generator 32. In FIG. 12A, the pressed key number is indicated by K. Further, it is assumed that the formant envelope multiplied by the depth value is set so as to generate a waveform as shown in the figure, and the current value is the point A.

【0082】この時、加算器84の出力には各高調波次
数qに対応するキーナンバー値が順次得られ、このキー
ナンバー値によって、図12(a)のフォルマント係数
メモリからフォルマント係数が読み出され、更に補間さ
れて図の右側に示すような、各高調波次数に対応したフ
ォルマント係数値FSが得られる。
At this time, a key number value corresponding to each harmonic order q is sequentially obtained at the output of the adder 84, and the formant coefficient is read from the formant coefficient memory of FIG. 12A by this key number value. And further interpolated to obtain a formant coefficient value FS corresponding to each harmonic order as shown on the right side of the figure.

【0083】時間が経過し、エンベロープ値が例えば図
12(b)の点Bに達すると、キーナンバー値も全体が
上部に移動し、出力されるフォルマント係数値FSも、
図12(b)右側に示すように変化する。デプス値を変
えるとフォルマントエンベロープのレベル(全体の変化
幅)が増減する。
When time passes and the envelope value reaches, for example, point B in FIG. 12 (b), the key number value as a whole moves upward, and the output formant coefficient value FS also becomes
It changes as shown in the right side of FIG. When the depth value is changed, the level of the formant envelope (overall change range) increases or decreases.

【0084】このように、フォルマントエンベロープ発
生器82のパラメータとデプス値を適当に設定すること
により、周波数軸上で動作する固定フォルマントフィル
ターの特性を経時変化させることができる。
By properly setting the parameters and depth value of the formant envelope generator 82, the characteristics of the fixed formant filter operating on the frequency axis can be changed with time.

【0085】<エンベロープ発生器>図10はエンベロ
ープ発生器の内部構成を示すブロック図である。このエ
ンベロープ発生器は、図2のエンベロープ発生器27、
図3の高調波エンベロープ発生器34、図9のフォルマ
ントエンベロープ発生器82に適用可能なものである。
<Envelope Generator> FIG. 10 is a block diagram showing the internal structure of the envelope generator. This envelope generator corresponds to the envelope generator 27 of FIG.
The harmonic envelope generator 34 of FIG. 3 and the formant envelope generator 82 of FIG. 9 are applicable.

【0086】このエンベロープ発生器は、4つのセグメ
ント(アタック、ディケイ等に対応する期間)を有して
おり、それぞれのセグメントの目標値および、スピード
データ、並びに後述するCN、RS、RTの各フラグを
制御装置(CPU1)から設定することにより、所望の
エンベロープを発生する。
This envelope generator has four segments (periods corresponding to attack, decay, etc.), target value and speed data of each segment, and CN, RS, and RT flags described later. Is set from the control device (CPU1), a desired envelope is generated.

【0087】パラメータ、データメモリ100は、エン
ベロープを発生させるためにCPU1から設定された各
種パラメータ、およびエンベロープ現在値、セグメント
値等を記憶している。ラッチF101は、各演算周期の
初めに、パラメータ、データメモリ100から読み出さ
れたエンベロープ現在値、現在のセグメントRSG1、
0、リピート要求状態RPTをラッチする。
The parameter / data memory 100 stores various parameters set by the CPU 1 for generating the envelope, the current envelope value, the segment value and the like. The latch F101 has a parameter, the current envelope value read from the data memory 100, the current segment RSG1,
0, latch the repeat request status RPT.

【0088】ラッチG102は、ラッチF101の出力
およびキーオン/オフデータに基づく現在のセグメント
状態ASG0、1に応じてパラメータデータメモリ10
0から読み出された目標値、スピード、コントロールフ
ラグからなるパラメータを保持する。ラッチH103
は、エンベロープリピート時のセグメント2からセグメ
ント1への移行時に使用される場合のために、セグメン
ト2のパラメータ(スピードデータ)を保持する。
The latch G102 is responsive to the current segment state ASG0,1 based on the output of the latch F101 and the key-on / off data, and the parameter data memory 10
It holds parameters consisting of the target value, speed, and control flag read from 0. Latch H103
Holds the parameter (speed data) of segment 2 in case it is used during the transition from segment 2 to segment 1 during envelope repeat.

【0089】ゲート104は入力されるゲート信号によ
って、演算回路への現在値の供給を阻止する。セレクタ
C105はゲート123からの信号に応じて、ラッチG
102からのセグメントmのスピードデータか、あるい
はラッチH103からのセグメント2のスピードデータ
を選択して演算回路106に供給する。
The gate 104 blocks the supply of the current value to the arithmetic circuit in response to the input gate signal. The selector C105 responds to the signal from the gate 123 by latching G
The speed data of the segment m from 102 or the speed data of the segment 2 from the latch H103 is selected and supplied to the arithmetic circuit 106.

【0090】演算回路106は、ゲート104から供給
されるエンベロープ現在値、ラッチG102から供給さ
れるセグメントmの目標値、セレクタCから供給される
スピードデータに基づいて、次の時点における新たなエ
ンベロープ値を計算し、セレクタD107に出力すると
共に、新たなエンベロープ値が目標値に到達したか、あ
るいは越えた時に到達信号を発生する。なお、このよう
な演算回路は従来から種々のものが提案されており、任
意のものが適用可能であるので、内部の説明は省略す
る。
The arithmetic circuit 106 uses the envelope current value supplied from the gate 104, the target value of the segment m supplied from the latch G102, and the speed data supplied from the selector C to generate a new envelope value at the next time point. Is output to the selector D107, and an arrival signal is generated when the new envelope value reaches or exceeds the target value. Various kinds of arithmetic circuits have been proposed in the past, and arbitrary ones can be applied. Therefore, the internal description will be omitted.

【0091】セレクタD107は到達信号に応じて、未
到達の場合には新たなエンベロープ値を、また到達時に
は目標値を出力する。この出力信号は外部に出力される
と共に、新たなエンベロープ現在値として、パラメー
タ、データメモリ100に書き込まれる。
In response to the arrival signal, the selector D107 outputs a new envelope value when it has not arrived and a target value when it has arrived. This output signal is output to the outside and is written in the parameter and data memory 100 as a new envelope current value.

【0092】以上の回路により、エンベロープ値の演算
が行われるが、つぎにセグメント等の制御回路について
説明する。NANDゲート108はRSG0、1が共に
1(つまりセグメント3:キーオフ状態)であり、かつ
キーオンになった場合に0を出力する。なお、図10に
おいてゲートの入力線と他の線の交点に丸印が付されて
いるものは、これらの線がNANDゲートに入力されて
いることを表している。
The envelope value is calculated by the above circuit. Next, the control circuit for the segment or the like will be described. The NAND gate 108 outputs 0 when RSG0 and 1 are both 1 (that is, segment 3: key-off state) and when the key is turned on. In FIG. 10, circles at the intersections of the gate input line and other lines indicate that these lines are input to the NAND gate.

【0093】ANDゲート109〜111はNANDゲ
ート108の出力により、キーオン時にセグメントおよ
びリピート要求状態信号を0にする。ANDゲート11
2はキーオフになった時にリピート要求状態信号を0に
する。ORゲート113、114はキーオン時にはAN
Dゲート110、111から出力されるセグメント信号
をそのまま通すが、キーオフ時にはNOT回路115の
出力が1になるため、双方とも出力が1となり、セグメ
ント3を示す。このセグメント信号ASG0、1はパラ
メータデータメモリ100にセグメント信号(アドレス
信号)として供給される。
The AND gates 109 to 111 set the segment and repeat request state signals to 0 at the time of key-on by the output of the NAND gate 108. AND gate 11
2 sets the repeat request status signal to 0 when the key is turned off. The OR gates 113 and 114 are AN when the key is on.
Although the segment signals output from the D gates 110 and 111 are passed through as they are, the output of the NOT circuit 115 becomes 1 at the time of key-off, so that the output becomes 1 in both cases, indicating the segment 3. The segment signals ASG0, 1 are supplied to the parameter data memory 100 as segment signals (address signals).

【0094】121、122はNOT回路である。AN
Dゲート119は、セグメントが2(ASG0=0、A
SG1=1)であり、リピートフラグRTが1であり、
さらに到達信号が1(到達した)である場合に1を出力
する。またANDゲート120は、セグメントが0か1
で到達信号が1である場合に1を出力する。
Reference numerals 121 and 122 denote NOT circuits. AN
The D-gate 119 has two segments (ASG0 = 0, A
SG1 = 1), the repeat flag RT is 1, and
Further, when the arrival signal is 1 (reached), 1 is output. The AND gate 120 has a segment of 0 or 1.
When the arrival signal is 1, the 1 is output.

【0095】ORゲート118はANDゲート119、
120の出力のいずれかが1である場合に1を出力す
る。ORゲート117はANDゲート112、119の
出力のいずれかが1である場合に1を出力する。加算器
125は、2つの入力A0、1およびB0、1から入力
される2ビットデータを加算し、2ビットの新たなセグ
メント出力WSG0、1を出力する。これらの出力WR
T、WSG0、1は新たなリピート要求状態信号、およ
びセグメント番号として、パラメータ、データメモリ1
00に書き込まれる。
The OR gate 118 is an AND gate 119,
If any of the outputs of 120 is 1, 1 is output. The OR gate 117 outputs 1 when either of the outputs of the AND gates 112 and 119 is 1. The adder 125 adds the 2-bit data input from the two inputs A0, 1 and B0, 1 and outputs a new 2-bit segment output WSG0, 1. These output WR
T, WSG0, 1 are new repeat request status signals, and as a segment number, parameters, data memory 1
00 is written.

【0096】NOT回路116はNANDゲート108
の出力を反転する。NANDゲート124はNOT回路
の出力と、ラッチG102に保持されるフラグCNが共
に1である場合に0を出力し、ゲート104の出力を0
にする。これは、CNが1の場合に、キーオン時のエン
ベロープ初期値を0にするためである。
The NOT circuit 116 is the NAND gate 108.
Invert the output of. The NAND gate 124 outputs 0 when both the output of the NOT circuit and the flag CN held in the latch G102 are 1, and the output of the gate 104 is 0.
To This is to set the envelope initial value at key-on to 0 when CN is 1.

【0097】ANDゲート123は、セグメントが1
(ASG0=1、ASG1=0)であり、フラグRSと
リピート要求状態信号が共に1である場合にセレクタC
105に1を出力し、セグメント1であるにもかかわら
ず、ラッチH103に保持されているセグメント2のス
ピードデータを演算回路106に供給する。
The AND gate 123 has one segment.
(ASG0 = 1, ASG1 = 0), and when the flag RS and the repeat request status signal are both 1, the selector C
1 is output to 105, and the speed data of segment 2 held in the latch H103 is supplied to the arithmetic circuit 106 even though it is segment 1.

【0098】次に、セグメント状態の遷移について説明
する。このエンベロープ発生器は3つのフラグCN、R
T、RSを備えている。CNはキーオフ(セグメント
3)からキーオンになった時のエンベロープ初期値を制
御する。RTはキーオンの間にセグメント1とセグメン
ト2を交互に繰り返すモードを選択する。RSはRTが
1の時、セグメント1のスピードデータとしてセグメン
ト2のものを用いるか否かを制御する。
Next, transition of segment states will be described. This envelope generator has three flags CN, R
Equipped with T and RS. The CN controls the initial value of the envelope when the key is turned on from the key off (segment 3). RT selects a mode in which segment 1 and segment 2 are alternately repeated during key-on. When the RT is 1, the RS controls whether or not the speed data of the segment 1 is used as the speed data of the segment 1.

【0099】図11は、各コントロールフラグの状態に
よるセグメントの遷移の仕方を示すエンベロープ波形図
である。まず、フラグCNについて説明する。エンベロ
ープ発生器は、発音動作終了時のセグメント3の目標値
をラッチF101に現在値として保持している。
FIG. 11 is an envelope waveform diagram showing how the segments transit according to the state of each control flag. First, the flag CN will be described. The envelope generator holds the target value of the segment 3 at the end of the sounding operation in the latch F101 as the current value.

【0100】フラグCNが0の場合には、キーオン時に
NANDゲート124の出力が1となるので、この値が
現在値として演算回路106に供給される。従って、エ
ンベロープ波形は図11(a)のように、キーオン時の
エンベロープ初期値は前回のセグメント3の目標値とな
る。なお、発音動作中に新たに割り当てた場合には、そ
のときの現在値が初期値となる。
When the flag CN is 0, the output of the NAND gate 124 becomes 1 when the key is turned on, so this value is supplied to the arithmetic circuit 106 as the current value. Therefore, as shown in FIG. 11A, the envelope waveform has the envelope initial value at the time of key-on being the target value of the previous segment 3. If a new allocation is made during the sounding operation, the current value at that time becomes the initial value.

【0101】フラグCNが1の場合には、キーオン時に
NANDゲート124の出力が0となるので、0が現在
値として演算回路106に供給される。従って、エンベ
ロープ波形は図11(b)のように0から開始される。
When the flag CN is 1, the output of the NAND gate 124 becomes 0 when the key is turned on, so 0 is supplied to the arithmetic circuit 106 as the current value. Therefore, the envelope waveform starts from 0 as shown in FIG.

【0102】つぎに、フラグRT、RSについて説明す
る。図11(c)はRT=0、CN=1の場合のエンベ
ロープ波形を示す。フラグRTが0の場合には、AND
ゲート119の出力は0のままである。キーオン時には
ANDゲート112、ORゲート113、114の出力
は全て0である。またANDゲート120の出力も0で
ある。従って加算器125の出力およびOR回路117
の出力は全て0となる。
Next, the flags RT and RS will be described. FIG. 11C shows an envelope waveform when RT = 0 and CN = 1. AND if the flag RT is 0
The output of gate 119 remains zero. When the key is turned on, the outputs of the AND gate 112 and the OR gates 113 and 114 are all 0. The output of the AND gate 120 is also 0. Therefore, the output of the adder 125 and the OR circuit 117
Will be all zero.

【0103】時間が経過し、演算回路106からの到達
信号が1になると、ANDゲート120の出力が1とな
り、ORゲート118の出力も1となる。従って加算器
の出力もWSG0=1、WSG1=0となり、セグメン
ト1に移行する。
When time passes and the arrival signal from the arithmetic circuit 106 becomes 1, the output of the AND gate 120 becomes 1 and the output of the OR gate 118 also becomes 1. Therefore, the output of the adder also becomes WSG0 = 1 and WSG1 = 0, and the process moves to segment 1.

【0104】セグメント信号が1になると、パラメー
タ、データメモリ100からセグメント1の目標値、ス
ピードデータ、フラグが読み出され、ラッチGに保持さ
れる。従って、演算回路は再び新たな目標値に向かって
演算を開始する。
When the segment signal becomes 1, the parameter, the target value of segment 1, the speed data and the flag are read from the data memory 100 and held in the latch G. Therefore, the arithmetic circuit again starts the arithmetic operation toward the new target value.

【0105】更に時間が経過し、演算回路106からの
到達信号が再び1になると、ANDゲート120の出力
が1となり、ORゲート118の出力も1となる。加算
器125のB0、1端子にはセグメント1の信号が入力
されているから、加算器出力はWSG0=0、WSG1
=1となり、セグメント2に移行する。
When a further time elapses and the arrival signal from the arithmetic circuit 106 becomes 1 again, the output of the AND gate 120 becomes 1 and the output of the OR gate 118 also becomes 1. Since the signal of segment 1 is input to the B0 and 1 terminals of the adder 125, the output of the adder is WSG0 = 0, WSG1.
= 1, and the process moves to segment 2.

【0106】この後は、演算回路から到達信号が発生し
てもANDゲート120が1にならないので、セグメン
ト2の状態が続き、現在値がセグメント2の目標値に達
すると、セレクタD107が切り替わり、目標値が継続
して出力される。キーオフになると、OR回路113、
114の出力が共に1になり、セグメント3に移行す
る。
After that, since the AND gate 120 does not become 1 even if the arrival signal is generated from the arithmetic circuit, the state of the segment 2 continues, and when the current value reaches the target value of the segment 2, the selector D107 switches, The target value is continuously output. When the key is turned off, the OR circuit 113,
The outputs of 114 both become 1, and the process moves to segment 3.

【0107】図11(d)は、RT=1、RS=0の場
合のエンベロープ波形を示す。RTが1の場合には、セ
グメント2まではRT=0の場合と同様であるが、現在
値がセグメント2の目標値に達した場合にANDゲート
119の出力が1になる。この出力はORゲート117
の出力WRTを1にすると共に、加算器125のA0、
1入力を共に1にする。
FIG. 11D shows the envelope waveform when RT = 1 and RS = 0. When RT is 1, it is the same as when RT = 0 until segment 2, but the output of the AND gate 119 becomes 1 when the current value reaches the target value of segment 2. This output is the OR gate 117
Output WRT of 1 and A0 of the adder 125,
Set both inputs to 1.

【0108】加算器のB0、1入力にはセグメント値2
が入力されているから、加算器の出力であるセグメント
値はWSG0=1、WSG1=0、つまりセグメント1
となる。(桁上げは無視する。)従って、エンベロープ
波形は図11(d)に示すように、キーオフまでセグメ
ント1とセグメント2を繰り返す。
A segment value of 2 is input to the B0 and 1 inputs of the adder.
, The segment value output from the adder is WSG0 = 1, WSG1 = 0, that is, segment 1
Becomes (Ignore carry.) Therefore, the envelope waveform repeats segment 1 and segment 2 until key-off, as shown in FIG. 11 (d).

【0109】図11(e)は、RT=1、RS=1の場
合のエンベロープ波形を示す。RSが1の場合には、や
はりセグメント1とセグメント2を繰り返すが、前記し
た例とはスピードデータが異なる。RTが1の場合に
は、セグメント2の目標値に達した場合に、リピート要
求状態信号RPTが1になり、かつRSが1であると、
ANDゲート123の出力が1になる。すると、セレク
タC105はラッチH103に保持されているセグメン
ト2のスピードデータを演算回路106に出力する。
FIG. 11 (e) shows the envelope waveform when RT = 1 and RS = 1. When RS is 1, segment 1 and segment 2 are also repeated, but the speed data is different from the above example. When RT is 1, when the target value of the segment 2 is reached, the repeat request status signal RPT is 1, and RS is 1,
The output of the AND gate 123 becomes 1. Then, the selector C105 outputs the speed data of the segment 2 held in the latch H103 to the arithmetic circuit 106.

【0110】従って、セグメント状態は前述の例と同様
に1に戻るが、演算回路にはセグメント2のスピードデ
ータが供給されることになる。よって、波形は図11
(e)のようにセグメント2と2回目以降のセグメント
1の波形の変化率(傾き)の絶対値が等しくなる。
Therefore, the segment state returns to 1 as in the above example, but the speed data of segment 2 is supplied to the arithmetic circuit. Therefore, the waveform is
As shown in (e), the absolute values of the change rates (gradients) of the waveforms of the segment 2 and the segment 1 after the second time become equal.

【0111】なお、CNフラグはセグメント0で、RS
フラグはセグメント1で、RTフラグはセグメント2で
それぞれ出力されればよいので、各フラグ別個のラッチ
および信号線を設ける必要はなく、1本の信号線を時分
割で用いればよい。またセグメントの数は5以上であっ
てもよい。
The CN flag is segment 0 and RS
Since the flag may be output in the segment 1 and the RT flag may be output in the segment 2, it is not necessary to provide a latch and a signal line separately for each flag, and one signal line may be used in a time division manner. The number of segments may be 5 or more.

【0112】<動作タイミング>図13(a)は、図2
の高調波情報発生部21および波形計算部22の動作タ
イミングの概略を示すタイムチャートである。図におい
て、チャネル番号は独立して楽音を発生するチャネルの
番号であり、この例では1から16まで存在する。また
Wは書き込み、Rは読み出しを意味する。
<Operation Timing> FIG. 13 (a) is shown in FIG.
5 is a time chart showing an outline of operation timings of the harmonic information generation unit 21 and the waveform calculation unit 22 of FIG. In the figure, the channel number is the number of a channel that independently generates a musical sound, and in this example, exists from 1 to 16. W means write and R means read.

【0113】チャネル1の演算期間においては、図3に
示すような高調波情報発生部21はCPU1から設定さ
れた、高調波係数、位相偏移など各種の情報に基づき、
チャネル1の楽音の各高調波の位相偏移情報Pと高調波
係数Hを計算し、図15(c)に示す高調波メモリ36
の例えばA領域に書き込む。
During the calculation period of the channel 1, the harmonic information generating unit 21 as shown in FIG. 3 is based on various information such as the harmonic coefficient and phase shift set by the CPU 1.
The phase shift information P and the harmonic coefficient H of each harmonic of the tone of channel 1 are calculated, and the harmonic memory 36 shown in FIG.
, For example, in area A.

【0114】チャネル2の演算期間においては、高調波
情報発生部21は高調波メモリのB領域にチャネル2の
データを書き込み、この間に波形計算部22は領域Aか
らチャネル1のデータを読み出し、前述したような方法
により、波形の各サンプル点の振幅値を求め、波形メモ
リ23に書き込んでいく。
During the calculation period of channel 2, the harmonic information generation unit 21 writes the data of channel 2 in the B area of the harmonic memory, while the waveform calculation unit 22 reads the data of channel 1 from the area A, By the method as described above, the amplitude value at each sample point of the waveform is obtained and written in the waveform memory 23.

【0115】このように、高調波メモリ36は2つの領
域を交互に使用して16チャネル分のデータを順次受け
渡していき、波形メモリ23は16チャネル分全ての波
形データが揃ったところで領域を切り替え、波形が更新
される。
As described above, the harmonic memory 36 alternately uses the two areas to sequentially transfer the data for 16 channels, and the waveform memory 23 switches the areas when all the waveform data for 16 channels are prepared. , The waveform is updated.

【0116】図13(b)は波形演算部22の動作タイ
ミングの概略を示すタイムチャートである。波形メモリ
23への書き込み周期はチャネル数(16)に分割され
ており、1つのチャネルの演算期間は256のサンプル
点演算期間に分かれている。なお、図におけるワード番
号とは、波形メモリ内に記憶される波形データの番号
(アドレス)である。さらに各サンプル点演算周期は、
16個の各高調波の振幅値演算期間に分かれている。
FIG. 13B is a time chart showing an outline of the operation timing of the waveform calculation section 22. The write cycle to the waveform memory 23 is divided into the number of channels (16), and the calculation period of one channel is divided into 256 sample point calculation periods. The word number in the figure is the number (address) of the waveform data stored in the waveform memory. Furthermore, the calculation cycle of each sample point is
It is divided into 16 harmonic amplitude calculation periods.

【0117】1つの高調波振幅値の演算時間が例えば1
25ナノ秒であるとすると、1つのサンプル点演算時間
(実際には2つのサンプル点データが得られる)は2マ
イクロ秒になり、1つのチャネルの波形データの演算時
間は512マイクロ秒となる。従って16チャネル全て
の波形を演算し波形を更新する周期は約8.2ミリ秒と
なる。
The calculation time for one harmonic amplitude value is, for example, 1
If it is 25 nanoseconds, one sample point calculation time (actually two sample point data can be obtained) is 2 microseconds, and one channel waveform data calculation time is 512 microseconds. Therefore, the period for calculating the waveforms of all 16 channels and updating the waveforms is about 8.2 milliseconds.

【0118】図14は、図4の波形計算部22の動作を
示すタイムチャートである。波形演算部22は、最も高
速の演算が必要な回路であり、図4の乗算器43からは
例えば図13(b)に示すように125マイクロ秒の周
期で、各高調波の振幅値が出力されてくる。
FIG. 14 is a time chart showing the operation of the waveform calculator 22 of FIG. The waveform calculation unit 22 is a circuit that requires the fastest calculation, and the multiplier 43 of FIG. 4 outputs the amplitude value of each harmonic at a period of 125 microseconds, for example, as shown in FIG. 13B. Is coming.

【0119】信号WGG1は奇数番目の高調波を累算す
るためのゲート信号であり、第1高調波以外の奇数高調
波のタイミングで1になる。またWGG2は偶数高調波
を累算するためのゲート信号であり、第2高調波以外の
偶数高調波のタイミングで1になる。WGL1、WGL
2はそれぞれ、奇数高調波累算値用ラッチA46、偶数
高調波累算値用ラッチB47のラッチパルスであり、各
ラッチ回路はラッチパルスの立ち上がりで入力信号をラ
ッチする。
The signal WGG1 is a gate signal for accumulating odd-numbered harmonics, and becomes 1 at the timing of odd-numbered harmonics other than the first harmonic. WGG2 is a gate signal for accumulating even harmonics, and becomes 1 at the timing of even harmonics other than the second harmonic. WGL1, WGL
Reference numerals 2 are latch pulses of the odd harmonic cumulative value latch A46 and the even harmonic cumulative value latch B47, respectively. Each latch circuit latches the input signal at the rising edge of the latch pulse.

【0120】従って、ラッチAおよびBには図のよう
に、奇数高調波および偶数高調波の累算値が順にラッチ
されていく。そしてnワードの演算期間の最後には、ラ
ッチAには1から15までの奇数高調波の累算値On
が、またラッチBには2から16までの偶数高調波の累
算値Enがラッチされる。
Therefore, the accumulated values of the odd harmonics and the even harmonics are sequentially latched in the latches A and B as shown in the figure. Then, at the end of the n-word operation period, the accumulated value On of the odd harmonics 1 to 15 is stored in the latch A.
However, the accumulated value En of even harmonics from 2 to 16 is latched in the latch B.

【0121】WGL3、WGL4は、図に示すようなタ
イミングでそれぞれラッチA、ラッチBの出力をラッチ
C、ラッチDにラッチするためのパルスである。ラッチ
C、Dの出力は、図のように奇数及び偶数高調波の累算
値を保持する。
WGL3 and WGL4 are pulses for latching the outputs of the latch A and the latch B in the latch C and the latch D at the timings shown in the figure. The outputs of the latches C and D hold the accumulated values of odd and even harmonics as shown.

【0122】信号CCSは補数器50の動作を制御する
ものであり、補数器50はCCSが0の場合には入力信
号をそのまま通過させ、CCSが1の場合には入力信号
を2の補数表現に変換(0と1を反転して1を加算)し
て出力する。従ってCCSが0の期間においては、ラッ
チCとラッチDの出力がそのまま加算器51によって加
算されて(On+En)が出力され、CCSが1の期間
においては(−On+En)が出力される。
The signal CCS controls the operation of the complementer 50. When the CCS is 0, the complementer 50 passes the input signal as it is, and when the CCS is 1, the input signal is represented by 2's complement. To 0 (invert 0 and 1 and add 1) and output. Therefore, during the period when CCS is 0, the outputs of the latch C and the latch D are directly added by the adder 51 to output (On + En), and during the period when CCS is 1, (-On + En) is output.

【0123】WGL5はCCSが変化する直前に加算器
51の出力をラッチEがラッチするためのパルスであ
る。ラッチEの出力には、図のように(On+En)と
(−On+En)とが順に現れる。この(−On+E
n)値は、図16に従って説明したように、波形メモリ
における基本周期の半周期(256番地)先のサンプル
点の値となる。
WGL5 is a pulse for the latch E to latch the output of the adder 51 immediately before CCS changes. In the output of the latch E, (On + En) and (-On + En) appear in order as shown in the figure. This (-On + E
As described with reference to FIG. 16, the n) value becomes the value of the sample point which is a half cycle (address 256) ahead of the basic cycle in the waveform memory.

【0124】従って、実行制御回路20から供給される
波形メモリの書き込みアドレスに従って(On+En)
値がn番地に書き込まれ、(−On+En)値が(n+
256)番地に書き込まれる。なお、図14の最下行の
Wは基本周期の半周期分のアドレス値であり、この例で
は256である。
Therefore, according to the write address of the waveform memory supplied from the execution control circuit 20, (On + En)
The value is written to address n, and the (-On + En) value is (n +
256) Address is written. Note that W in the bottom row of FIG. 14 is an address value for a half cycle of the basic cycle, which is 256 in this example.

【0125】<キーオン時の処理>最後に、キーオン時
のCPU1の動作について説明する。CPU1は、RO
M2に記憶されているプログラムに従って、常にキーボ
ード、パネルをスキャンしており、いずれかのキーが押
下されると、これを検出し、空いているチャネルを探し
て、該キーに対応する楽音を発生するチャネルを決定す
る。
<Processing at Key-On> Finally, the operation of the CPU 1 at key-on will be described. CPU1 is RO
The keyboard and panel are constantly scanned according to the program stored in M2, and when any key is pressed, this is detected, a vacant channel is searched for, and a tone corresponding to the key is generated. Determine the channel to use.

【0126】つぎに、CPU1は高調波発生部21の各
回路に各種データを設定する。まず、押下されたキーを
含む音域あるいはタッチ強度とその1つ上の音域あるい
はタッチ強度の位相偏移情報をROM2から読み出し、
位相偏移情報発生器30内の2つの位相偏移情報メモリ
301、302に設定する。
Next, the CPU 1 sets various data in each circuit of the harmonic generating section 21. First, the tone range or touch intensity including the pressed key and the phase shift information of the tone range or touch intensity one level above it are read from the ROM 2,
It is set in the two phase shift information memories 301 and 302 in the phase shift information generator 30.

【0127】次に、指定された音色に対応した、押下さ
れたキーを含む音域あるいはタッチ強度とその1つ上の
音域あるいはタッチ強度の高調波係数データをROM2
から読み出し、高調波係数発生器31内の2つの高調波
係数メモリ311、312に設定する。
Next, the tone range or touch intensity including the pressed key and the harmonic coefficient data of the tone range or touch intensity one level higher than the tone range corresponding to the designated tone color are stored in the ROM 2.
Read out from and set in the two harmonic coefficient memories 311 and 312 in the harmonic coefficient generator 31.

【0128】フォルマント係数発生器32には、キーナ
ンバー、デプス情報を設定し、さらにフォルマントエン
ベロープ発生器32には、各セグメントの目標値とスピ
ードデータ等が設定される。高調波エンベロープ発生器
34には、時間の経過による音色の変化を付けるために
各高調波毎のエンベロープ情報が設定される。
A key number and depth information are set in the formant coefficient generator 32, and a target value and speed data of each segment are set in the formant envelope generator 32. Envelope information for each harmonic is set in the harmonic envelope generator 34 in order to change the timbre with the passage of time.

【0129】更に実行制御回路20内のバランス信号発
生回路には、押下されたキーおよびその上下の基準キー
ナンバーあるいはタッチ強度が設定される。これらの設
定により、高調波情報発生部、および波形計算部は自動
的に波形を計算し、波形メモリに例えば約8.2ミリ周
期で波形を出力する。
Further, in the balance signal generating circuit in the execution control circuit 20, the pressed key and the reference key numbers above and below or the touch strength are set. With these settings, the harmonic information generator and the waveform calculator automatically calculate the waveform and output the waveform to the waveform memory at a period of, for example, about 8.2 mm.

【0130】CPU1は、また通常の波形読み出し方式
と同様に、波形読み出し回路24にキーナンバーをセッ
トし、またエンベロープ発生器27にエンベロープ情報
を設定する。これらの回路は周知の方法により、波形メ
モリからキーナンバーに対応したアドレス間隔で波形デ
ータを読み出し、エンベロープ信号を乗算して楽音信号
を発生する。
The CPU 1 also sets a key number in the waveform reading circuit 24 and sets envelope information in the envelope generator 27, as in the normal waveform reading method. These circuits read waveform data from the waveform memory at an address interval corresponding to the key number by a known method and multiply the envelope data by the envelope signal to generate a tone signal.

【0131】以上、実施例を説明したが、次のような変
形例も考えられる。位相偏移情報発生器と高調波係数発
生器とは回路構成が同じであるので、時分割多重処理を
行うことにより1つの回路で実現することも可能であ
る。
Although the embodiments have been described above, the following modifications are also possible. Since the phase shift information generator and the harmonic coefficient generator have the same circuit configuration, they can be realized by one circuit by performing time division multiplexing processing.

【0132】[0132]

【発明の効果】以上述べたように、本発明の電子楽器に
よれば、エンベロープ発生器において繰り返すセグメン
トのスピードデータを選択することができ、例えばセグ
メントの繰り返しにより、オルガンの音のような持続性
のある楽音にLFO的効果を付加した場合に、自然なエ
ンベロープの変化を得ることができるという効果があ
る。
As described above, according to the electronic musical instrument of the present invention, it is possible to select the speed data of the segment to be repeated in the envelope generator. When an LFO-like effect is added to a certain musical sound, there is an effect that a natural envelope change can be obtained.

【0133】また特定のセグメントのスピードデータを
用いるように構成されているので、メモリ量が増加する
こともない。さらに、繰り返しを行うか否か、あるいは
繰り返し時のスピードデータの選択はフラグのセット/
リセットによって制御できるので、制御が簡単になる。
Since the speed data of a specific segment is used, the memory amount does not increase. In addition, whether or not to repeat, or to select speed data at the time of repetition, sets a flag /
Since control can be performed by resetting, control becomes simple.

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

【図1】 電子楽器のハードウェア構成を表すブロック
図である。
FIG. 1 is a block diagram showing a hardware configuration of an electronic musical instrument.

【図2】 楽音発生回路6の内部構成を示すブロック図
である。
FIG. 2 is a block diagram showing an internal configuration of a tone generation circuit 6.

【図3】 高調波情報発生部21の内部構成を示すブロ
ック図である。
FIG. 3 is a block diagram showing an internal configuration of a harmonic information generation unit 21.

【図4】 波形計算部22の内部構成を示すブロック図
である。
FIG. 4 is a block diagram showing an internal configuration of a waveform calculation unit 22.

【図5】 アキュムレータ40の内部構成を示すブロッ
ク図である。
5 is a block diagram showing an internal configuration of an accumulator 40. FIG.

【図6】 位相偏移情報発生器30の内部構成を示すブ
ロック図である。
FIG. 6 is a block diagram showing an internal configuration of a phase shift information generator 30.

【図7】 高調波係数発生器31の内部構成を示すブロ
ック図である。
7 is a block diagram showing an internal configuration of a harmonic coefficient generator 31. FIG.

【図8】 バランス信号発生回路の一例を示すブロック
図である。
FIG. 8 is a block diagram showing an example of a balance signal generation circuit.

【図9】 フォルマント係数発生器32の構成を示すブ
ロック図である。
9 is a block diagram showing a configuration of a formant coefficient generator 32. FIG.

【図10】 エンベロープ発生器の内部構成を示すブロ
ック図である。
FIG. 10 is a block diagram showing an internal configuration of an envelope generator.

【図11】 エンベロープ波形を示す波形図である。FIG. 11 is a waveform diagram showing an envelope waveform.

【図12】 フォルマント係数発生器の動作説明のため
の概念図である。
FIG. 12 is a conceptual diagram for explaining the operation of the formant coefficient generator.

【図13】 楽音発生部の動作タイミングを示すタイム
チャートである。
FIG. 13 is a time chart showing the operation timing of the musical sound generating unit.

【図14】 波形計算部の動作タイミングを示すタイム
チャートである。
FIG. 14 is a time chart showing the operation timing of the waveform calculation unit.

【図15】 各種メモリのメモリマップの一例を示す説
明図である。
FIG. 15 is an explanatory diagram showing an example of a memory map of various memories.

【図16】 位相のずれた高調波の、2サンプル点の振
幅値の求め方を示す概念図である。
FIG. 16 is a conceptual diagram showing how to obtain amplitude values of two sampling points of a phase-shifted harmonic.

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

1…CPU、2…ROM、3…RAM、4…キーボード
部、5…パネル部、6…楽音発生部、7…D/A変換
器、8…アナログ信号処理部、9…アンプ、10…スピ
ーカ、11…バス、20…実行制御回路、21…高調波
情報発生部、22…波形計算部、23…波形メモリ、2
4…波形読み出し回路、25…セレクタ、26…波形補
間回路、27…エンベロープ発生器、28…乗算器
1 ... CPU, 2 ... ROM, 3 ... RAM, 4 ... Keyboard section, 5 ... Panel section, 6 ... Musical sound generating section, 7 ... D / A converter, 8 ... Analog signal processing section, 9 ... Amplifier, 10 ... Speaker , 11 ... Bus, 20 ... Execution control circuit, 21 ... Harmonic information generation section, 22 ... Waveform calculation section, 23 ... Waveform memory, 2
4 ... Waveform readout circuit, 25 ... Selector, 26 ... Waveform interpolation circuit, 27 ... Envelope generator, 28 ... Multiplier

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 エンベロープ発生器を有する電子楽器に
おいて、 前記エンベロープ発生器は、各セグメントのエンベロー
プ発生用データを記憶する記憶手段と、 前記記憶手段から読み出されたデータに基づき、エンベ
ロープ値および当セグメントの目標値に到達した場合に
出力される到達信号を順次計算し、外部および前記記憶
手段に出力する演算手段と、 前記記憶手段から読み出されたデータ、および前記到達
信号に基づき、特定の条件が成立した場合に、特定のセ
グメント間の移行を繰り返す制御手段と、 前記記憶手段から読み出されたデータに基づき、前記記
憶手段から読み出された複数のスピードデータの中から
特定のものを選択して前記演算手段に出力する選択手段
とを備えたことを特徴とする電子楽器。
1. An electronic musical instrument having an envelope generator, wherein the envelope generator stores an envelope generation data of each segment, and an envelope value and a corresponding value based on the data read from the storage unit. Arithmetic means for sequentially calculating the arrival signal output when the target value of the segment is reached and outputting to the external and the storage means, based on the data read from the storage means and the arrival signal, When the condition is satisfied, a control unit that repeats transition between specific segments, and a specific one of the plurality of speed data read from the storage unit based on the data read from the storage unit is selected. An electronic musical instrument, comprising: selecting means for selecting and outputting to the calculating means.
【請求項2】 前記選択手段は、特定のセグメントのス
ピードデータを保持する保持手段を含むことを特徴とす
る請求項1に記載の電子楽器。
2. The electronic musical instrument according to claim 1, wherein the selecting means includes a holding means for holding speed data of a specific segment.
JP05062460A 1993-03-01 1993-03-01 Electronic musical instrument Expired - Lifetime JP3091343B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05062460A JP3091343B2 (en) 1993-03-01 1993-03-01 Electronic musical instrument

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05062460A JP3091343B2 (en) 1993-03-01 1993-03-01 Electronic musical instrument

Publications (2)

Publication Number Publication Date
JPH06250654A true JPH06250654A (en) 1994-09-09
JP3091343B2 JP3091343B2 (en) 2000-09-25

Family

ID=13200846

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05062460A Expired - Lifetime JP3091343B2 (en) 1993-03-01 1993-03-01 Electronic musical instrument

Country Status (1)

Country Link
JP (1) JP3091343B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030080116A (en) * 2002-04-03 2003-10-11 송문규 Repetition remaking hour schedule theym the digital piano which prepares the repetition studying function due to acceleration
CN109493880A (en) * 2016-01-22 2019-03-19 大连民族大学 A kind of method of harmonic signal fundamental frequency preliminary screening

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030080116A (en) * 2002-04-03 2003-10-11 송문규 Repetition remaking hour schedule theym the digital piano which prepares the repetition studying function due to acceleration
CN109493880A (en) * 2016-01-22 2019-03-19 大连民族大学 A kind of method of harmonic signal fundamental frequency preliminary screening

Also Published As

Publication number Publication date
JP3091343B2 (en) 2000-09-25

Similar Documents

Publication Publication Date Title
EP0454047B1 (en) Tone waveform generation apparatus
JPS6223319B2 (en)
JP3091343B2 (en) Electronic musical instrument
JP2766662B2 (en) Waveform data reading device and waveform data reading method for musical sound generator
US5254805A (en) Electronic musical instrument capable of adding musical effect to musical tones
JPH0486795A (en) Musical tone generator
JP2898841B2 (en) Electronic musical instrument
JP2859073B2 (en) Electronic musical instrument
JP2912110B2 (en) Sine synthesizing method, musical tone waveform generator using the same, and electronic musical instrument
JP2802714B2 (en) Electronic musical instrument
JPS59168493A (en) Musical tone waveform generator
JP2671690B2 (en) Electronic musical instrument
JP3435702B2 (en) Music generator
JP2950456B2 (en) Electronic musical instrument
JP3094759B2 (en) Music signal distribution processor
JP3201553B2 (en) Electronic musical instrument
JP2736550B2 (en) Electronic musical instrument interpolation circuit
JP3221987B2 (en) Delay time modulation effect device
JP2591160B2 (en) Waveform selection and synthesis device
JP2970570B2 (en) Tone generator
JP3649906B2 (en) Electronic instrument key-on delay effect addition device
JP2546464B2 (en) Electronic musical instrument
JP3095323B2 (en) Electronic musical instrument
JPH03174592A (en) Sound source circuit for electronic musical instrument
JP3245411B2 (en) Electronic musical instrument

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070721

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20080721

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090721

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100721

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100721

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110721

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110721

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120721

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120721

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130721

Year of fee payment: 13

EXPY Cancellation because of completion of term