JPH0372400A - Electronic musical instrument - Google Patents
Electronic musical instrumentInfo
- Publication number
- JPH0372400A JPH0372400A JP1208644A JP20864489A JPH0372400A JP H0372400 A JPH0372400 A JP H0372400A JP 1208644 A JP1208644 A JP 1208644A JP 20864489 A JP20864489 A JP 20864489A JP H0372400 A JPH0372400 A JP H0372400A
- Authority
- JP
- Japan
- Prior art keywords
- envelope
- peak value
- signal
- value
- peak
- 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.)
- Pending
Links
- 238000002156 mixing Methods 0.000 claims abstract description 23
- 238000001514 detection method Methods 0.000 claims description 47
- 238000000605 extraction Methods 0.000 claims description 40
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 5
- 239000011369 resultant mixture Substances 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 13
- 230000005236 sound signal Effects 0.000 abstract description 4
- 239000000203 mixture Substances 0.000 abstract 1
- 238000000034 method Methods 0.000 description 171
- 239000011295 pitch Substances 0.000 description 108
- 102100032366 C-C motif chemokine 7 Human genes 0.000 description 33
- 101000797758 Homo sapiens C-C motif chemokine 7 Proteins 0.000 description 33
- 238000010586 diagram Methods 0.000 description 23
- 238000006243 chemical reaction Methods 0.000 description 20
- 230000007704 transition Effects 0.000 description 9
- 230000002238 attenuated effect Effects 0.000 description 7
- 239000000284 extract Substances 0.000 description 4
- 230000012447 hatching Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000003860 storage Methods 0.000 description 3
- WBMKMLWMIQUJDP-STHHAXOLSA-N (4R,4aS,7aR,12bS)-4a,9-dihydroxy-3-prop-2-ynyl-2,4,5,6,7a,13-hexahydro-1H-4,12-methanobenzofuro[3,2-e]isoquinolin-7-one hydrochloride Chemical compound Cl.Oc1ccc2C[C@H]3N(CC#C)CC[C@@]45[C@@H](Oc1c24)C(=O)CC[C@@]35O WBMKMLWMIQUJDP-STHHAXOLSA-N 0.000 description 2
- MZZINWWGSYUHGU-UHFFFAOYSA-J ToTo-1 Chemical compound [I-].[I-].[I-].[I-].C12=CC=CC=C2C(C=C2N(C3=CC=CC=C3S2)C)=CC=[N+]1CCC[N+](C)(C)CCC[N+](C)(C)CCC[N+](C1=CC=CC=C11)=CC=C1C=C1N(C)C2=CC=CC=C2S1 MZZINWWGSYUHGU-UHFFFAOYSA-J 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 241001455214 Acinonyx jubatus Species 0.000 description 1
- 206010011224 Cough Diseases 0.000 description 1
- 240000005708 Eugenia stipitata Species 0.000 description 1
- 235000006149 Eugenia stipitata Nutrition 0.000 description 1
- 101001087045 Homo sapiens Phosphatidylinositol 3,4,5-trisphosphate 3-phosphatase and dual-specificity protein phosphatase PTEN Proteins 0.000 description 1
- 101000626112 Homo sapiens Telomerase protein component 1 Proteins 0.000 description 1
- 101000878457 Macrocallista nimbosa FMRFamide Proteins 0.000 description 1
- 101100060081 Monascus ruber citB gene Proteins 0.000 description 1
- 101000831623 Rattus norvegicus Protein timeless homolog Proteins 0.000 description 1
- 102100024553 Telomerase protein component 1 Human genes 0.000 description 1
- 210000001015 abdomen Anatomy 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 239000002253 acid Substances 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000035622 drinking Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000002689 soil Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、電子ギター等の電子弦楽器をはじめとするシ
ンセサイザータイプの電子楽器に係り、特に発音される
楽音のエンベロープ制御技術に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to synthesizer-type electronic musical instruments such as electronic stringed instruments such as electronic guitars, and particularly to envelope control technology for musical tones to be produced.
ギター等を演奏操作することにより弦の振動等を電気信
号として検出し、その入力波形信号に従ってデジタル回
路等で構成された楽音発生回路を制御して、楽音を合威
し放音させるようにした電子楽器が開発されている。When a guitar or the like is played, the vibrations of the strings are detected as electrical signals, and a musical tone generation circuit made up of digital circuits is controlled according to the input waveform signal, so that musical tones are combined and emitted. Electronic musical instruments are being developed.
上記のような電子楽器においては、入力波形信号から例
えばピッチ周期を抽出し、楽音発生回路がそのピッチ周
期に対応した音高の楽音を発生させている。In the above electronic musical instrument, for example, a pitch period is extracted from an input waveform signal, and a musical tone generating circuit generates a musical tone with a pitch corresponding to the pitch period.
一方、楽音に付加する音量等のエンベロープ制御につい
ては、第1の従来例として、入力波形信号の立ち上がり
時、すなわち、例えばギターにおいては弦をピッキング
した時点における信号強度を検出し、楽音発生回路がそ
の信号強度に対応して音量及び音色等を変化させた楽音
を発生するものがある。すなわち、発音される楽音の例
えば音量エンベロープは楽音発生回路において楽音の種
類(音色)毎に予め設定されており、入力波形信号の立
ち上がり時の振幅の大小によりエンベロープ全体のレベ
ルが変化する以外は、入力波形信号のエンベロープとは
無関係である。On the other hand, regarding envelope control of the volume etc. added to musical sounds, the first conventional example is to detect the signal strength at the rise of the input waveform signal, that is, for example, at the time when a string is picked in the case of a guitar, and to control the sound generation circuit. There are some that generate musical tones whose volume, tone color, etc. are changed in response to the signal strength. That is, for example, the volume envelope of the musical tone to be produced is preset for each type of musical tone (timbre) in the musical tone generation circuit, and the overall level of the envelope changes depending on the amplitude of the rising edge of the input waveform signal. It is independent of the envelope of the input waveform signal.
エンベロープ制御の第2の従来例として、エンベロープ
抽出手段によって抽出される入力波形信号のエンベロー
プに基づいて、楽音発生手段から出力される楽音のエン
ベロープを制御することにより、予め定まっている楽音
独自のエンベロープの効果に、入力波形信号のエンベロ
ープの効果を付加するものがある。As a second conventional example of envelope control, by controlling the envelope of the musical tone output from the musical tone generating means based on the envelope of the input waveform signal extracted by the envelope extracting means, a predetermined envelope unique to the musical tone is generated. There is a method that adds the effect of the envelope of the input waveform signal to the effect of .
この従来例では、例えば電子ギターにおいて、演奏者が
弦のピッキング操作をした後に弦振動を強制的に停止さ
せるミュート奏法を行って、入力波形信号の全体的なエ
ンベロープの変化が第21図の已に示すように減衰の速
い特性になる。そして、楽音発生回路から出力される楽
音のエンベロープの変化は第21図のFに示す特性であ
ったとしても、この特性に同図Eの特性が乗算されるた
め、楽音発生回路から発音される楽音のエンベロープの
変化を第21図のGに示すように急激に減衰する特性に
することができる。従って、ごニート奏法等による演奏
効果を容易に付加することができ、演奏者は楽音のエン
ベロープを奏法に応じて期待した通りに変化させること
が可能となる。In this conventional example, for example, in an electronic guitar, when a performer performs a mute playing technique in which the string vibration is forcibly stopped after picking the strings, the change in the overall envelope of the input waveform signal changes as shown in Fig. 21. As shown in the figure, it has a fast attenuation characteristic. Even if the change in the envelope of the musical tone output from the musical tone generating circuit has the characteristic shown in F in FIG. 21, this characteristic is multiplied by the characteristic shown in E in the same figure, so that the musical tone is generated from the musical tone generating circuit. The change in the envelope of the musical tone can be made to have a characteristic of rapidly attenuating as shown in G in FIG. Therefore, it is possible to easily add a performance effect based on a neat playing style, and the player can change the envelope of a musical tone as expected depending on the playing style.
しかし、第1の従来例の場合、例えば電子ギター等にお
いて弦振動のエンベロープの急激な変化を伴うようなギ
ター奏法を行っても、それとは無関係に楽音発生回路に
おいて楽音のエンベロープが定まってしまうため、演奏
者の期待した演奏効果が得られないだけではなく、非常
に耳障りに聞こえる場合が生ずるという問題点を有して
いる。However, in the case of the first conventional example, even if the guitar is played in a manner that involves sudden changes in the envelope of string vibrations, such as on an electronic guitar, the envelope of the musical sound is fixed in the musical sound generation circuit regardless of this. However, there are problems in that not only the performance effect expected by the performer cannot be obtained, but also the sound may be extremely harsh.
例えば、演奏者が通常に弦をピッキングした状態で、弦
振動のエンベロープは例えば第20図(a)のAに示す
ような特性を有し、一方、発音される楽音のエンベロー
プは同図(a)のBに示すような特性を有するとする。For example, when a performer normally picks a string, the envelope of string vibration has the characteristics shown in A in Figure 20(a), while the envelope of the musical tone being produced has the characteristics shown in Figure 20(a). ) has the characteristics shown in B.
なお、図中の記号ONは、同図Aの弦振動のレベルが所
定値以上になることにより楽音の発音が開始されるタイ
くングを示し、同じく記号OFFは、同図Aの弦振動の
レベルが所定値以下になることにより発音の終了指示が
なされるタイミングを示す。すなわち、発音される楽音
のエンベロープはOFFタイ旦ングの後は除々に減衰す
る。このような場合に、演奏者が弦をピッキングした後
、弦振動が充分に減衰しきらないうちに弦を手のひら等
で抑え、弦振動を強制的に停止させる旦ニート奏法を行
うと、弦振動のエンベロープは同図(ロ)のCに示すよ
うに、強いアタックの直後に急激に減衰する特性となる
。この−方、発音される楽音のエンベロープは同図(b
)(7)Dに示すように、OFFタイミングの後も減衰
音が大きな音量で長く残り、聴感上も音のはぎれが悪く
、ミュート奏法特有のニュアンスが失われてしまうとい
う問題点を有している。Note that the symbol ON in the figure indicates a timing in which the sound generation of a musical tone starts when the level of the string vibration in A in the figure exceeds a predetermined value, and the symbol OFF in the figure indicates a timing in which the sound generation of a musical tone starts when the level of the string vibration in A in the figure becomes higher than a predetermined value. This indicates the timing at which an instruction to end the sound generation is given when the level falls below a predetermined value. That is, the envelope of the musical tone to be sounded gradually attenuates after the OFF timing. In such a case, if the performer picks the string and then presses the string with the palm of the hand before the string vibration is sufficiently damped to forcibly stop the string vibration, the player performs the neat playing technique, which will cause the string vibration to stop. The envelope has a characteristic of rapidly attenuating immediately after a strong attack, as shown in C in FIG. In this case, the envelope of the musical tones produced is shown in the same figure (b
) (7) As shown in D, the attenuated sound remains at a high volume for a long time even after the OFF timing, and the sound is difficult to hear, and the nuances unique to the mute playing method are lost. There is.
これに対して、第2の従来例の場合、第21図のG等と
して示したように、入力波形信号のエンベロープを楽音
のエンベロープに反映させることができる。しかし、同
図Eの入力波形信号のエンベロープを楽音信号のエンベ
ロープGへ反映させる場合、入力波形信号から抽出した
エンベロープデータを一定の割合で楽音信号に乗算等し
ている。On the other hand, in the case of the second conventional example, the envelope of the input waveform signal can be reflected in the envelope of the musical tone, as shown as G in FIG. However, when the envelope of the input waveform signal shown in FIG.
従って、例えば入力波形信号のエンベロープの影響が強
すぎて、楽音信号のエンベロープが急峻になりすぎたり
、逆に、入力波形信号のエンベロープがほとんど反映さ
れなかったりというように、演奏者は入力波形信号に基
づくエンベロープの効果のかかり方を自由に制御するこ
とができず、なかなか好みの楽音を得られないという問
題点を有している。Therefore, if the influence of the envelope of the input waveform signal is too strong and the envelope of the musical sound signal becomes too steep, or conversely, the envelope of the input waveform signal is hardly reflected, the performer may The problem is that it is not possible to freely control how the envelope effect is applied, making it difficult to obtain a desired musical tone.
本発明の課題は、楽音信号に対する入力波形信号のエン
ベロープの効果のかかり方を自由に制御可能とし、演奏
者が期待した通りの演奏効果を得られるようにすること
にある。An object of the present invention is to make it possible to freely control how the envelope effect of an input waveform signal is applied to a musical tone signal, so that a performer can obtain the desired performance effect.
本発明は、例えば弦振動をピックアップによって入力波
形信号として検出し、これにより楽音を制御するタイプ
の電子ギター等として実現される電子楽器である。The present invention is an electronic musical instrument realized as an electronic guitar or the like of a type in which, for example, string vibration is detected as an input waveform signal by a pickup and musical tones are controlled thereby.
そして、まず、入力波形信号のエンベロープ信号を抽出
するエンベロープ抽出手段を有する。同手段は例えば、
入力波形信号をデジタル化することにより得られるデジ
タル波形信号の立ち上がり時の最大ピーク値を検出する
最大ピーク値検出手段と、デジタル波形信号の立ち上が
り後の有効なピーク値を順次検出する有効ピーク値検出
手段と、該有効なピーク値と前回の有効なピーク値との
平均値と、最大ピーク値検出手段から検出されている最
大ピーク値との比を順次演算しエンベロープ信号として
順次出力するエンベロープ信号演算手段とによって実現
される。First, it includes envelope extraction means for extracting an envelope signal of an input waveform signal. For example, the same means:
Maximum peak value detection means detects the maximum peak value at the rise of a digital waveform signal obtained by digitizing the input waveform signal, and effective peak value detection means sequentially detects valid peak values after the rise of the digital waveform signal. means, and an envelope signal calculation for sequentially calculating the ratio between the average value of the valid peak value and the previous valid peak value and the maximum peak value detected by the maximum peak value detection means and sequentially outputting the ratio as an envelope signal. It is realized by means.
次に、楽音は楽音発生手段から発音される。同手段はデ
ジタル音源手段、アナログ音源手段等各種方式のものが
採用できる。例えば、デジタル回路による場合、デジタ
ル楽音波形を記憶するメモリと、特には図示しない制御
手段からの発音開始の指示及び音高制御に基づいて、咳
音高に対応するアドレス間隔で前記メモリからデジタル
楽音波形を読み出す波形読み出し手段と、読み出された
デジタル楽音波形をアナログ波形に変換し増幅した後放
音する手段等によって実現される。このほか、各種演算
により、例えば正弦波合成、周波数変調、位相変調など
によって波形生成を行ってもよい。Next, a musical tone is generated by the musical tone generating means. The means can be of various types, such as digital sound source means or analog sound source means. For example, in the case of a digital circuit, there is a memory that stores digital musical sound waveforms, and a digital musical tone is output from the memory at address intervals corresponding to the cough pitch based on a sound generation start instruction and pitch control from a control means (not shown). This is realized by a waveform reading means for reading out a waveform, a means for converting the read digital musical sound waveform into an analog waveform, amplifying it, and emitting sound. In addition, waveform generation may be performed by various calculations, such as sine wave synthesis, frequency modulation, and phase modulation.
また、予め設定されたエンベロープ信号を生成するエン
ベロープ信号生成手段を有する。同手段は、例えば所定
のアタック、サスティーン、デイケイ、リリース等の各
エンベロープ特性を有するエンベロープ信号を生成する
エンベロープ発生回路である。It also includes envelope signal generation means for generating a preset envelope signal. The means is an envelope generating circuit that generates an envelope signal having predetermined envelope characteristics such as attack, sustain, decay, and release.
更に、エンベロープ抽出手段から抽出される入力波形信
号のエンベロープ信号と、エンベロープ信号生成手段か
ら生成される前記予め設定されたエンベロープ信号とを
、任意の混合比で混合する混合手段を有する。同手段は
、例えばエンベロープ抽出手段から抽出される入力波形
信号のエンベロープ信号に予め設定された任意の第1の
係数を乗算する第1の乗算手段と、エンベロープ信号生
成手段から生成される予め設定されたエンベロープ信号
に予め設定された任意の第2の係数を乗算する第2の乗
算手段と、第1及び第2の乗算手段の各出力を加算して
混合エンベロープ信号として出力する加算手段とによっ
て実現される。この混合比をユーザがマニュアルセット
できるようにしてもよく、音色等の選択によって自動的
にセットできるようにしてもよい。また、この混合比を
、音高や音域等に依存して変更するようにしてもよく、
更に、時間とともに混合比を変更してもよく、種々の形
態で実現し得る。Furthermore, it has a mixing means for mixing the envelope signal of the input waveform signal extracted from the envelope extraction means and the preset envelope signal generated from the envelope signal generation means at an arbitrary mixing ratio. The means includes, for example, a first multiplication means that multiplies the envelope signal of the input waveform signal extracted from the envelope extraction means by a preset arbitrary first coefficient, and a preset coefficient generated from the envelope signal generation means. This is realized by a second multiplier that multiplies the preset envelope signal by an arbitrary second coefficient set in advance, and an adder that adds the outputs of the first and second multipliers and outputs the result as a mixed envelope signal. be done. The mixing ratio may be set manually by the user, or may be set automatically by selecting a tone color or the like. Also, this mixing ratio may be changed depending on the pitch, range, etc.
Furthermore, the mixing ratio may be changed over time and can be realized in various forms.
そして、混合手段で混合された混合エンベロープ信号に
対応するように楽音発生手段から発生される楽音信号の
エンベロープを制御するエンベロープ制御手段を有する
。同手段は、例えば楽音発生手段から発生される楽音信
号に混合エンベロープ信号を乗算する乗算手段によって
実現される。The apparatus further includes envelope control means for controlling the envelope of the musical tone signal generated by the musical tone generating means so as to correspond to the mixed envelope signal mixed by the mixing means. This means is realized, for example, by a multiplication means that multiplies a musical tone signal generated from a musical tone generating means by a mixed envelope signal.
〔作 用] 本発明の作用は次の通りである。[For production] The effects of the present invention are as follows.
まず、エンベロープ抽出手段から抽出されるエンベロー
プ信号は、例えば電子弦楽器の場合、演奏者がピッキン
グした弦の弦振動波形としてリアルタイムに変化する入
力波形信号のエンベロープ特性に直接対応している。First, the envelope signal extracted by the envelope extraction means, in the case of an electronic stringed instrument, for example, directly corresponds to the envelope characteristics of an input waveform signal that changes in real time as a string vibration waveform of a string picked by a player.
一方、エンベロープ信号生成手段から生成される予め設
定されたエンベロープ信号は、予めいわゆるシンセサイ
ザ音等の特性として設定されるエンベロープデータであ
り、合成音的な特性を有する。On the other hand, the preset envelope signal generated by the envelope signal generation means is envelope data that is set in advance as a characteristic of a so-called synthesizer sound, and has characteristics similar to a synthesized sound.
混合手段は、上記2種類のエンベロープ信号を任意の混
合比で混合し、混合エンベロープ信号を生成する。The mixing means mixes the two types of envelope signals at an arbitrary mixing ratio to generate a mixed envelope signal.
そして、エンベロープ制御手段において、上記の如く生
成された混合エンベロープ信号ニ基づいて、楽音発生手
段から発生される楽音信号のエンベロープが制御される
。Then, in the envelope control means, the envelope of the musical tone signal generated from the musical tone generating means is controlled based on the mixed envelope signal generated as described above.
従って、演奏者は混合手段における上記2種類のエンベ
ロープ信号の混合比を、例えば演奏前等において予め設
定しておくことにより、発音される楽音のエンベロープ
を、例えばシンセサイザ固有のエンベロープからギター
の弦振動に直接対応するエンベロープまで段階的に変化
させることができる。Therefore, by setting the mixing ratio of the above two types of envelope signals in the mixing means in advance, for example before playing, the performer can change the envelope of the musical tone to be produced from the envelope unique to the synthesizer to the guitar string vibration. can be changed in steps up to an envelope that directly corresponds to
以下、本発明の実施例につき詳細に説明を行う。 Hereinafter, embodiments of the present invention will be described in detail.
なお、以下の説明においては、記号()、()、(〉で
囲まれ、アンダーラインを付した見出しの順に、順次項
目分けを行う。In the following description, the items will be divided into items in the order of the underlined headings surrounded by the symbols (), (), and (>.
(の の )
本実施例は、ボディー上に6本の金属弦が張られ、該金
属弦の下部に設けられたフレット(指板)を指で押えな
がら、所望の弦をピッキングすることにより演奏を行う
電子ギターとして実現されている。なお、その外見は省
略する。(No) In this example, six metal strings are strung on the body, and the player can play by picking the desired string while pressing the frets (fingerboard) provided at the bottom of the metal strings with the fingers. It has been realized as an electronic guitar that performs. Note that its appearance will be omitted.
第1図は、本実施例の全体の構成図である。FIG. 1 is an overall configuration diagram of this embodiment.
まず、ピッチ抽出アナログ回路1は、特には図示しない
前記6本の弦毎にそれぞれ設けられ、各弦の振動を電気
信号に変換するヘキサピックアップからの各出力を、特
には図示しないローパスフィルタに通して高調波成分を
除去することにより、6種類の各波形信号Wi(i=1
〜6)を得る。First, the pitch extraction analog circuit 1 is provided for each of the six strings (not shown), and passes each output from the hex pickup that converts the vibration of each string into an electric signal through a low-pass filter (not shown). By removing the harmonic components, six types of waveform signals Wi (i=1
~6) is obtained.
更に、各波形信号Wiの振幅の符号が正又は負に変化す
る毎に、ハイレベル又はローレベルとなるパルス状のゼ
ロクロス信号Zi (i=1〜6)を発生する。そして
、これら6種類の波形信号Wl及びゼロクロス信号Zi
を、各々特には図示しないA/D変換器等により、時分
割のシリアルゼロクロス信号ZCR及びデジタル出力(
時分割波形信号)DIに変換し、出力する。Further, each time the sign of the amplitude of each waveform signal Wi changes to positive or negative, a pulse-like zero-cross signal Zi (i=1 to 6) that becomes high level or low level is generated. These six types of waveform signals Wl and zero cross signal Zi
A time-division serial zero-cross signal ZCR and a digital output (
time-division waveform signal) is converted to DI and output.
ピッチ抽出デジタル回路2は、第2図に示すようにピー
ク検出回路201、時定数変換制御回路202、波高値
取込み回路203、ゼロクロス時刻取込回路204から
なる。これら第2図の各回路は、前記ピッチ抽出アナロ
グ回81 (第1図)からの、6弦分を時分割したシリ
アルゼロクロス信号ZCR及びデジタル出力DIに基づ
いて、6弦分を時分割処理する。以下の説明では説明を
容易にするため1弦分の処理について説明し、シリアル
ゼロクロス信号ZCR及びデジタル出力D1は1弦分の
信号のイメージで説明するが、特に言及しないときは6
弦分について時分割処理が行われているものとする。The pitch extraction digital circuit 2 includes a peak detection circuit 201, a time constant conversion control circuit 202, a peak value acquisition circuit 203, and a zero-cross time acquisition circuit 204, as shown in FIG. Each of these circuits shown in FIG. 2 time-divisionally processes six strings based on the serial zero-cross signal ZCR and digital output DI, which are time-divided six strings, from the pitch extraction analog circuit 81 (FIG. 1). . In the following explanation, in order to simplify the explanation, processing for one string will be explained, and the serial zero cross signal ZCR and digital output D1 will be explained with the image of a signal for one string, but unless otherwise mentioned, processing for one string will be explained.
It is assumed that time-division processing is performed for chord minutes.
第2図において、まず、ピーク検出回路201は、前記
シリアルゼロクロス信号ZCR及びデジタル出力D1に
基づいて、デジタル出力D1の最大ピーク点及び最小ピ
ーク点を検出する。そのために、同回路201の内部に
、特には図示しないが、過去のピーク値の絶対値を減算
しく減衰させ)ながらホールドするピークホールド回路
を有している。そして、ピーク検出回路201は前回の
ピーク値検出後、上記ピークホールド回路から出力され
るピークホールド信号をしきい値として、次のシリアル
ゼロクロス信号ZCRが発生した後にデジタル出力D1
の絶対値がこのしきい値を越えた時点でピーク値のタイ
ミングを検出する。なお、ピーク値のタイミング検出は
、デジタル出力D1が正符号の場合と負符号の場合の各
々について行われる。そして、上記ピーク値の検出タイ
累ングで、正符号の場合は最大ピーク値検出信号MAX
、負符号の場合は最小ピーク値検出信号MINを出力す
る。なお、これらの各信号も実際には当然6弦分の時分
割信号である。In FIG. 2, the peak detection circuit 201 first detects the maximum peak point and minimum peak point of the digital output D1 based on the serial zero cross signal ZCR and the digital output D1. To this end, the circuit 201 includes a peak hold circuit (not specifically shown) that holds the absolute value of the past peak value while subtractively attenuating it. Then, after detecting the previous peak value, the peak detection circuit 201 uses the peak hold signal outputted from the peak hold circuit as a threshold value, and outputs the digital output D1 after the next serial zero cross signal ZCR is generated.
The timing of the peak value is detected when the absolute value of exceeds this threshold. Note that the timing detection of the peak value is performed respectively when the digital output D1 has a positive sign and when the digital output D1 has a negative sign. Then, in the above peak value detection tie accumulation, if the sign is positive, the maximum peak value detection signal MAX
, in the case of a negative sign, a minimum peak value detection signal MIN is output. Incidentally, each of these signals is actually a time-division signal for six strings.
次に、時定数変換制御回路202は、上記ピーク検出回
路201内のピークホールド回路の減衰率を変更する回
路であり、ピーク検出回路201からの最大・最小ピー
ク値検出信号MAX、MIN、及び第1図の中央制御装
置(MCP、以下同じ)3からの制御により動作する。Next, the time constant conversion control circuit 202 is a circuit that changes the attenuation rate of the peak hold circuit in the peak detection circuit 201, and is a circuit that changes the attenuation rate of the peak hold circuit in the peak detection circuit 201. It operates under control from a central control device (MCP, hereinafter the same) 3 shown in FIG.
これについては後述する。This will be discussed later.
続いて、第2図における波高値取込回路203は、前記
ピーク抽出アナログ回路1より時分割的に送出されてく
るデジタル出力DIを、各弦毎の波高値にデマルチプレ
クス(分解)処理し、前記ピーク検出回路201からの
ピーク値検出信号MAX、MINに従って、ピーク値を
ホールドする。Subsequently, the peak value acquisition circuit 203 in FIG. 2 demultiplexes (decomposes) the digital output DI sent out in a time-division manner from the peak extraction analog circuit 1 into peak values for each string. , the peak value is held according to the peak value detection signals MAX and MIN from the peak detection circuit 201.
そして、MCP3 (第1図)がアドレスデコーダ4(
第1図)を介してアクセスしてきた弦についての最大ピ
ーク値、もしくは最小ピーク値をバスBUSを介してM
CP3へ順次出力する。また、この波高値取込回路20
3からは、上記ピーク値の他、各弦毎の振動の瞬時値も
出力可能になっている。Then, the MCP3 (Fig. 1) is connected to the address decoder 4 (
The maximum peak value or minimum peak value of the string accessed via the
Sequentially output to CP3. In addition, this wave peak value acquisition circuit 20
From 3 onwards, in addition to the above-mentioned peak value, it is also possible to output the instantaneous value of vibration for each string.
ゼロクロス時刻取込回路204は、前記ピッチ抽出アナ
ログ回路1(第1図)からのシリアルゼロクロス信号Z
CRに従って、各弦共通のタイムベースカウンタ204
1の出力を、各弦のゼロクロス時点、厳密には、ピーク
検出回路201から出力される最大・最小ピーク値検出
信号MAX、MINで決定される最大ピーク点及び最小
ピーク点の通過タイミング直後のゼロクロス時点でう・
ンチする。このラッチ動作が行われると、ゼロクロス時
刻取込回路204は続いて、第工図のMCP3に割り込
み信号INTを出力する。これにより、MCP3からア
ドレスデコーダ4(第1図)を介して出力される制御信
号(後述する)に従って、ゼロクロスが発生した弦番号
、ラッチした当該弦に対応するゼロクロス時刻及び正負
情報(後述する)を、バスBUSを介してMCP3へ順
次出力する。The zero cross time acquisition circuit 204 receives the serial zero cross signal Z from the pitch extraction analog circuit 1 (FIG. 1).
According to CR, time base counter 204 common to each string
1 output at the zero cross point of each string, more precisely, the zero cross point immediately after the passing timing of the maximum peak point and minimum peak point determined by the maximum and minimum peak value detection signals MAX and MIN output from the peak detection circuit 201. At that point...
pinch. When this latch operation is performed, the zero-crossing time acquisition circuit 204 subsequently outputs an interrupt signal INT to the MCP3 in the drawing. As a result, according to the control signal (described later) output from the MCP 3 via the address decoder 4 (FIG. 1), the string number where the zero cross occurred, the latched zero cross time corresponding to the string, and positive/negative information (described later) are sequentially output to MCP3 via bus BUS.
また、第2図のタイミングジェネレータ205からは、
第1図及び第2図に示す各回路の処理動作のためのタイ
ミング信号が出力される。Furthermore, from the timing generator 205 in FIG.
Timing signals for processing operations of each circuit shown in FIGS. 1 and 2 are output.
次に、第1図に戻って、MCP3は、メモリ例えばRO
M301及びRAM302を有するとともに、タイマ3
03を有する。ROM301は後述する各種楽音制御用
のプログラムを記憶している不揮発メモリであり、RA
M302は該制御時の各種変数・データ用のワーク領域
として用いられる書き替え可能なメモリである。また、
タイマ303は、後述するノートオフ(消音)処理のた
めに用いられる。Next, returning to FIG. 1, the MCP3 has a memory such as RO.
It has M301 and RAM302, and also has timer 3.
It has 03. The ROM 301 is a nonvolatile memory that stores programs for controlling various musical tones, which will be described later.
M302 is a rewritable memory used as a work area for various variables and data during the control. Also,
The timer 303 is used for note-off (mute) processing, which will be described later.
第1図のアドレスデコーダ4は、前記したゼロクロス時
刻取込回路204(第2図)からの割り込み信号INT
の発生の後、MCP3 (第1図)から発生するアドレ
ス読み出し信号ARに従って、ゼロクロス時刻取込回路
204に、弦番号読込み信号rπ■、続いて、時刻読込
み信号RDTTTT(i=1〜6)を供給する。また、
同様に、波高値取込み回路203(第2図)に波形読込
み信号IIW丁(j =l〜l 8)を出力する。これ
らの動作の詳細については後述する。The address decoder 4 in FIG. 1 receives an interrupt signal INT from the zero-cross time acquisition circuit 204 (FIG. 2).
After the generation of the string number read signal rπ■, and then the time read signal RDTTTT (i=1 to 6) to the zero cross time capture circuit 204, according to the address read signal AR generated from the MCP3 (Fig. 1). supply Also,
Similarly, a waveform reading signal IIW (j=l to l8) is output to the peak value capturing circuit 203 (FIG. 2). Details of these operations will be described later.
楽音発生回路5は、入力側にインターフェース(Mus
ical Instrument Digital I
nterface) M IDIが設けられており、楽
音制御情報伝送用の専用バスMIDI−BUSを介して
MCP3と接続され、時分割処理により複数の楽音を並
列して発音可能である。The musical tone generation circuit 5 has an interface (Music) on the input side.
ical Instrument Digital I
interface) MIDI is connected to the MCP3 via a dedicated bus MIDI-BUS for transmitting musical tone control information, and can generate a plurality of musical tones in parallel through time-sharing processing.
上記楽音発生回路5の動作と同期して、エンベロープデ
ータ(以下、これをシンセ・エンベロープ・データ5E
NVと呼ぶ)を発生するエンベロープ発生回路11を有
する。このデータ5ENVは、乗算器13において、予
めMCP3からMIDI−BUSを介してセットされて
いる係数と乗算される。In synchronization with the operation of the musical tone generation circuit 5, envelope data (hereinafter referred to as synth envelope data 5E) is generated.
It has an envelope generation circuit 11 that generates a signal (referred to as NV). This data 5ENV is multiplied in the multiplier 13 by a coefficient set in advance from the MCP 3 via the MIDI-BUS.
一方、弦エンベロープラッチ12には、楽音の発音開始
後、MCP3からMIDI−BUSを介して、弦エンベ
ロープ・データGENVが順次ラッチされる。このデー
タGENVは、乗算器14において、予めMCP3から
MIDI−BUSを介してセットされている係数と乗算
される。On the other hand, string envelope data GENV is sequentially latched into the string envelope latch 12 from the MCP 3 via the MIDI-BUS after the start of sound generation. This data GENV is multiplied in the multiplier 14 by a coefficient set in advance from the MCP 3 via the MIDI-BUS.
乗算器13及び14の各出力は、加算器7で加算され、
混合エンベロープ・データKENVが生成される。同デ
ータKENVは、乗算器6において、楽音発生回路5か
ら出力される楽音信号と乗算され、混合エンベロープ・
データKENVに基づくエンベロープ特性が付加される
。The respective outputs of multipliers 13 and 14 are added by adder 7,
Mixed envelope data KENV is generated. The data KENV is multiplied by the musical tone signal output from the musical tone generating circuit 5 in the multiplier 6, and the mixed envelope
An envelope characteristic based on the data KENV is added.
乗算器6の出力は、D/A変換器8においてアナログ楽
音信号に変換され、アンプ9で増幅された後、スピーカ
10から放音される。The output of the multiplier 6 is converted into an analog musical tone signal by a D/A converter 8, amplified by an amplifier 9, and then emitted from a speaker 10.
(の ) 以上の構成の実施例の動作につき、以下に説明を行う。(of ) The operation of the embodiment having the above configuration will be explained below.
まず、楽音発生までの本実施例の概略動作について説明
を行う。First, the general operation of this embodiment up to the generation of musical tones will be explained.
第10図のDlは、第1図のピッチ抽出アナログ回路1
から出力されるデジタル出力D1の1弦分についてアナ
ログ的に示したものである。この波形は、特には図示し
ないギターの6弦のうち1弦をピッキングすることによ
り、対応するピックアップから検出される電気信号をデ
ジタル信号として出力したものであり、当該弦を特には
図示しないフレット(指板)上で押さえる位置に従って
、第10図T o = T s等に示すようなピッチ周
期を有する波形が発生する。Dl in FIG. 10 is the pitch extraction analog circuit 1 in FIG.
This is an analog representation of one string of the digital output D1 outputted from. This waveform is obtained by picking one of the six strings of a guitar (not shown) and outputting the electric signal detected from the corresponding pickup as a digital signal. Depending on the pressing position on the fingerboard, a waveform having a pitch period as shown in FIG. 10, T o = T s, etc., is generated.
本実施例では、このピッチ周期T o = 75等をリ
アルタイムで抽出することにより、第1図のMCP3が
それに対応する音高情報を生威し、第1図の楽音発生回
路501でその音高の楽音を発音させる。従って、特に
は図示しないトレモロアームによって、演奏中に演奏者
が弦の張力を変化させたような場合、それに従ってデジ
タル出力D1のピッチ周期が変化するため、音高情報も
それに従ってリアルタイムで変化し、楽音に豊かな表現
を付加することができる。In this embodiment, by extracting this pitch period T o = 75, etc. in real time, the MCP3 in FIG. 1 generates pitch information corresponding to it, and the musical tone generation circuit 501 in FIG. pronounce the musical tone. Therefore, if the performer changes the tension of the strings during performance, particularly by using a tremolo arm (not shown), the pitch period of the digital output D1 will change accordingly, and the pitch information will also change accordingly in real time. , it is possible to add rich expression to musical tones.
また、本実施例では、第10図のデジタル出力DIのピ
ーク値ao”−a3又はbO〜b3等を検出しており、
特に、第1図のMCP3が立ち上がり時(弦のピッキン
グ時)の最大ピーク値a、Hに基づいて音量情報を作成
して楽音発生回路5に転送することにより、弦をピッキ
ングした強さに応じた音量の楽音を発音させることがで
きる。In addition, in this embodiment, the peak value ao"-a3 or bO~b3 of the digital output DI shown in FIG. 10 is detected,
In particular, the MCP 3 shown in FIG. 1 creates volume information based on the maximum peak values a and H at the time of rise (when picking a string) and transmits it to the musical sound generation circuit 5, so that the MCP 3 in FIG. It is possible to produce musical tones at a certain volume.
一方、本発明に最も関連するが、発音される楽音のエン
ベロープについてみると、第1図の各楽音発生回路5か
ら発生される各楽音信号には、乗算器6において、加算
器7からの混合エンベロープ・データKENVが乗算さ
れ、エンベロープ特性が付加される。この混合エンベロ
ープ・データKENVは、エンベロープ発生回路11で
発生されるシンセ・エンベロープ・データ5ENVと、
MCP3から弦エンベロープラッチ12にセットされる
弦エンベロープ・データGENVとを混合したエンベロ
ープデータである。ここで、シンセ・エンベロープ・デ
ータ5ENVは、予めシン全音の特性として設定される
エンベロープデータであり、合成音的な特性を有する。On the other hand, regarding the envelope of the musical tones to be produced, which is most relevant to the present invention, each musical tone signal generated from each musical tone generating circuit 5 in FIG. The envelope data KENV is multiplied and envelope characteristics are added. This mixed envelope data KENV includes the synthesizer envelope data 5ENV generated by the envelope generation circuit 11,
This is envelope data mixed with the string envelope data GENV set in the string envelope latch 12 from the MCP3. Here, the synth envelope data 5ENV is envelope data set in advance as a characteristic of a whole tone, and has characteristics similar to a synthetic tone.
これに対して、弦エンベロープラッチ12に順次セット
される弦エンベロープ・データGENVは、MCP3が
ピッチ抽出デジタル回路2を介してデジタル出力D1(
第10図参照)から順次抽出するエンベロープデータで
あり、リアルタイムで変化する弦振動のエンベロープ特
性に直接対応している。On the other hand, the string envelope data GENV sequentially set in the string envelope latch 12 is output by the MCP 3 via the pitch extraction digital circuit 2 to the digital output D1 (
This is envelope data that is sequentially extracted from the following data (see Figure 10), and directly corresponds to the envelope characteristics of string vibrations that change in real time.
そして、本実施例では、乗算器13と14及びそれらの
各出力を加算する加算器7によって、上記シンセ・エン
ベロープ・データ5ENVと弦エンベロープ・データG
ENVを任意の割合で混合することができる。このとき
の混合割合は、MCP3から乗算器13及び14に予め
セットされる係数により決定される。その係数の組の例
を第11B図に示す。演奏者は、演奏前に特には図示し
ない設定スイッチによって、設定値をO〜5の何れかに
設定する。このような設定動作により、各設定値に対応
してMCP3から各乗算器13及び14には、同図に示
されるような係数の組合わせが設定される。In this embodiment, the synthesizer envelope data 5ENV and the string envelope data G
ENVs can be mixed in any proportion. The mixing ratio at this time is determined by coefficients set in advance in the multipliers 13 and 14 from the MCP 3. An example of such a set of coefficients is shown in FIG. 11B. Before performing, the performer sets the set value to any one of O to 5 using a setting switch (not shown). Through such a setting operation, a combination of coefficients as shown in the figure is set from the MCP 3 to each multiplier 13 and 14 corresponding to each set value.
例えば、第■図のエンベロープ発生回路11から発生さ
れるシンセ・エンベロープ・チー タS ENVが第1
1A図(a)のような特性を有しく横軸は時間、縦軸は
振幅である)、一方、第1図のピッチ抽出デジタル回路
2からMCP3を介して検出され弦エンベロープラッチ
12に順次セットされる弦エンベロープ・データGEN
Vが第11A図(ロ)のような特性を有するとし、演奏
者が前述の設定値として「3」を選択したとすれば、第
11B図より、乗算器13及び14には各々係数0.4
及び0.6がセットされる。これにより、第1図の加算
器7からは、シンセ・エンベロープ・チー タ5ENV
と弦エンベロープ・データGENVとが、0.4対0.
6の割合で混合された混合エンベロープ・データKEN
Vが、第11A図(C)の如く得られる。このエンベロ
ープ特性が、楽音発生回路5から出力される楽音信号に
乗算器6を介して付加される。For example, the synthesizer envelope cheetah S ENV generated from the envelope generating circuit 11 shown in FIG.
(The horizontal axis is time and the vertical axis is amplitude.) On the other hand, the pitch extraction digital circuit 2 in FIG. string envelope data GEN
Assuming that V has the characteristics as shown in FIG. 11A (b), and the performer selects "3" as the above-mentioned setting value, then from FIG. 11B, multipliers 13 and 14 each have a coefficient of 0. .4
and 0.6 are set. As a result, from the adder 7 in FIG.
and the string envelope data GENV are 0.4 to 0.
Mixed envelope data KEN mixed in a ratio of 6
V is obtained as shown in FIG. 11A (C). This envelope characteristic is added to the musical tone signal output from the musical tone generating circuit 5 via the multiplier 6.
以上のことかられかるように、演奏者は設定値を予め設
定することにより、発音される楽音のエンベロープを、
シンセサイザ固有のエンベロープからギターの弦振動の
エンベロープまで段階的に変化させることができる。第
11B図の例では、演奏者はシン受音的な音色を得たけ
れば設定値をOに、完全に弦振動のエンベロープに基づ
いて発音させたければ設定値を5にすればよく、その間
の設定値1〜4でその特性の混合割合を可変できる。As can be seen from the above, by setting the setting values in advance, the performer can control the envelope of the musical tone being sounded.
You can change the envelope in stages from the envelope unique to a synthesizer to the envelope of guitar string vibration. In the example shown in Figure 11B, if the performer wants to obtain a timbre with a thin tone, he can set the value to O, and if he wants the sound to be produced completely based on the envelope of the string vibration, he can set the value to 5, and between The mixing ratio of the characteristics can be varied by setting values 1 to 4.
なお、上記動作は、ギターの6弦分の時分割デジタル出
力D1について時分割処理され、第1図の楽音発生回路
5、エンベロープ発生回路11、弦エンベロープラッチ
12、乗算器6.13.14及び加算器7等も時分割動
作するため、第1図のスピーカ10からは6弦分の楽音
を聴覚的に同時に発音させることができる。そして、こ
れらの楽音は、自由な音量・音色に設定でき、電子的に
各種の効果を付加できるため、極めて大きな演奏効果が
得られる。The above operation is time-divisionally processed for the time-division digital output D1 for six strings of the guitar, and includes the musical tone generation circuit 5, envelope generation circuit 11, string envelope latch 12, multiplier 6, 13, 14, and Since the adder 7 and the like operate in a time-division manner, musical tones for six strings can be aurally produced simultaneously from the speaker 10 in FIG. These musical tones can be set to any desired volume and timbre, and various effects can be added electronically, so extremely great performance effects can be obtained.
(ピッチ デジ ル の )
上記動作を実現するための本実施例の動作につき、以下
に詳細に説明を行ってゆく。(Pitch digital) The operation of this embodiment for realizing the above operation will be explained in detail below.
(盟盟豊立)
まず、第1図又は第2図のピッチ抽出デジタル回路2の
動作について説明を行う。なお、以下の説明においては
1弦分についてのみ説明し、シリアルゼロクロス信号Z
CR,デジタル出力D1、最大・最小ピーク値検出信号
MAX、MINは1弦分のイメージで説明するが、実際
には6弦分について時分割処理されている。(Toyachi Meimei) First, the operation of the pitch extraction digital circuit 2 shown in FIG. 1 or 2 will be explained. In the following explanation, only one string will be explained, and the serial zero cross signal Z
CR, digital output D1, maximum/minimum peak value detection signals MAX, MIN will be explained using the image of one string, but in reality, time-division processing is performed for six strings.
同回路2では、各弦毎に第10図のデジタル出力DIか
ら、ピーク値aQ”−83又はbO−b3等を抽出し、
同時に各ピーク値の直後のゼロクロス時刻to””t7
等を抽出し、更に、各ゼロクロス時刻の直前のピーク値
が正か負かによって1又はOを示す情報を抽出して、第
1図のMCP3に供給する。これに基づいて、MCP3
は前記ゼロクロス時刻の間隔から第10図の各ピッチ周
期T。In the same circuit 2, the peak value aQ"-83 or bO-b3, etc. is extracted from the digital output DI shown in FIG. 10 for each string,
At the same time, the zero cross time immediately after each peak value to""t7
Further, information indicating 1 or O depending on whether the peak value immediately before each zero-crossing time is positive or negative is extracted and supplied to the MCP 3 in FIG. Based on this, MCP3
is each pitch period T in FIG. 10 from the interval of the zero crossing times.
〜T3等を抽出して、また、その他前記各種楽音情報を
生威し、更に、後述するように必要に応じて、エラー処
理、ノートオフ(消音)処理、リラティブオン・オフの
処理等を行う。~T3 etc. are extracted, and the various other musical tone information mentioned above are used.Furthermore, error processing, note-off (mute) processing, relative on/off processing, etc. are performed as necessary, as will be described later. .
(毘槻軌在)
そのために、第2図のピーク検出回路201では、第1
0図のように入力してくるデジタル出力DIに対して、
まず、その値が負となる部分で、その絶対値が0を越え
たタイ旦ングχ。で、第1O図に示すような最小ピーク
値検出信号MINがハイレベルになる。(Bitsuki Kiyoshi) For this reason, in the peak detection circuit 201 of FIG.
For the digital output DI input as shown in Figure 0,
First, the tie χ whose absolute value exceeds 0 in the portion where the value is negative. Then, the minimum peak value detection signal MIN as shown in FIG. 1O becomes high level.
これにより、第2図の波高値取込回路203は、上記最
小ピーク値検出信号MINがハイレベルとなった直後の
タイミングX、で、別に入力するデジタル出力D1から
最小ピーク値(負側の波高値)b、(絶対値)を検出し
て特には図示しないラッチにホールドし、これと共に最
小ピーク値検出信号MINをローレベルに戻す。As a result, the peak value acquisition circuit 203 in FIG. 2 receives the minimum peak value (the negative wave The high value)b, (absolute value) is detected and held in a latch (not shown), and at the same time, the minimum peak value detection signal MIN is returned to the low level.
一方、第1図のピッチ抽出アナログ回路1から第2図の
ゼロクロス時刻取込回路204には、第10図に示すよ
うなシリアルゼロクロス信号ZCRが入力している。こ
の信号は、ピッチ抽出アナログ回路1内の特には図示し
ないコンパレータがデジタル出力D1の正負を判定し、
それに従って同コンパレータからハイレベル又はローレ
ベルの2値ディジタル信号として出力される信号である
。On the other hand, a serial zero-cross signal ZCR as shown in FIG. 10 is input from the pitch extraction analog circuit 1 in FIG. 1 to the zero-cross time acquisition circuit 204 in FIG. 2. This signal is determined by a comparator (not shown) in the pitch extraction analog circuit 1 to determine whether the digital output D1 is positive or negative.
This is a signal that is output from the comparator as a high-level or low-level binary digital signal accordingly.
そして、ゼロクロス時刻取込回路204では、前記ピー
ク検出回路201から出力される最小ピーク値検出信号
MINがタイミングX2でノ\イレベルとなった直後に
、シリアルゼロクロス信号ZCRが変化するエツジタイ
ミング、すなわち、デジタル出力DIのゼロクロス時点
で、第2図のタイムベースカウンタ2041で計時され
ている時刻to (第10図)をラッチする。なお、
このラッチデータの最上位ビットに、直前のピーク値が
正であるか負であるかを示す1または0の正負フラグ(
最小ピーク値bOに対しては0となる)が付加される。Then, in the zero cross time acquisition circuit 204, immediately after the minimum peak value detection signal MIN outputted from the peak detection circuit 201 reaches the noise level at timing X2, the edge timing at which the serial zero cross signal ZCR changes, that is, At the zero-cross point of the digital output DI, the time to (FIG. 10) measured by the time base counter 2041 in FIG. 2 is latched. In addition,
The most significant bit of this latch data is a positive/negative flag (1 or 0) indicating whether the previous peak value is positive or negative.
0 for the minimum peak value bO) is added.
更に、ゼロクロス時刻取込回路204は上記動作に連続
して、第1図のMCP3に割り込み信号INTを出力す
る。これにより、割り込み信号INTが発生した時点に
おいて、第2図の波高値取込回路203には最小ピーク
値bo (絶対値)がホールドされ、ゼロクロス時刻
取込回路204には最小ピーク値bOの発生直後の前記
正負フラグを含むゼロクロス時刻がラッチされている。Further, following the above operation, the zero-crossing time acquisition circuit 204 outputs an interrupt signal INT to the MCP3 in FIG. As a result, at the time when the interrupt signal INT is generated, the minimum peak value bo (absolute value) is held in the peak value acquisition circuit 203 in FIG. 2, and the minimum peak value bO is held in the zero-cross time acquisition circuit 204. The immediately following zero-crossing time including the positive/negative flag is latched.
そして、割り込み信号INTの出力の後、第1図のMC
P3からアドレスデコーダ4を介して行われるアクセス
(後述する)により、上記正負フラグを含むゼロクロス
時刻及び最小ピーク値す。After outputting the interrupt signal INT, the MC of FIG.
By accessing from P3 via the address decoder 4 (described later), the zero-cross time and minimum peak value including the positive/negative flag are determined.
が、バスBUSを介してMCP3に転送される。is transferred to MCP3 via bus BUS.
なお、以上の処理は6弦分について時分割処理されてい
るため、後述するように、上記各情報の出力の前に、ど
の弦番号について上記割り込みが発生したのかを示す情
報を、ゼロクロス時刻取込回路204からMCP3に出
力する。Note that the above processing is time-divisionally processed for six strings, so as described later, before outputting each of the above information, information indicating which string number the above interrupt has occurred is sent to the zero-crossing time output from the input circuit 204 to the MCP3.
次に、第2図のピーク検出回路201では、内部の特に
は図示しないピークホールド回路が、第10図の最小ピ
ーク値bo (絶対値)をピークホールドし、第10
図のピークホールド信号qoを出力する。これにより、
ピーク検出回路201は上記ピークホールド信号(絶対
値)をしきい値として、デジタル出力D1の負側につい
てその絶対値が上記しきい値を越えたタイミングX2で
、再び最小ピーク値検出信号MINをノ\イレベルにす
る。Next, in the peak detection circuit 201 of FIG. 2, an internal peak hold circuit (not particularly shown) peak-holds the minimum peak value bo (absolute value) of FIG.
The peak hold signal qo shown in the figure is output. This results in
The peak detection circuit 201 uses the peak hold signal (absolute value) as a threshold value, and again detects the minimum peak value detection signal MIN at timing X2 when the absolute value of the negative side of the digital output D1 exceeds the threshold value. \Make it level.
これにより、前記と全く同様にして、第2図の波高値取
込回路203で、最小ピーク値検出信号MINがハイレ
ベルとなった直後のタイミングX3で次の最小ピーク値
bl (絶対値)がホールドされ、第2図のゼロクロ
ス時刻取込回路204で、上述の最小ピーク値blの発
生直後の正負フラグ(この場合も0)を含むゼロクロス
時刻t2がラッチされ、割り込み信号INTの送出後、
MCP3に転送される。As a result, in exactly the same manner as described above, the next minimum peak value bl (absolute value) is determined in the peak value acquisition circuit 203 of FIG. 2 at timing X3 immediately after the minimum peak value detection signal MIN becomes high level. The zero-crossing time t2 including the positive/negative flag (also 0 in this case) immediately after the generation of the above-mentioned minimum peak value bl is latched by the zero-crossing time acquisition circuit 204 in FIG. 2, and after sending the interrupt signal INT,
Transferred to MCP3.
上記に基づく、第10図のデジタル出力D1の負側に対
する最小ピーク値bo=bz(絶対(Iり、ゼロクロス
時刻to% j2、t4、j6等の検出、及びピークホ
ールド信号(IG−(13等の出力動作と全く同様にし
て、デジタル出力DIの正側に対して最大ピーク値a、
−”−a3等の検出、ゼロクロス時刻t1、t3、t5
、t7等の検出、及びピークホールド信号Po’=P3
等の出力動作が並列して行われる。なお、この場合は、
ピーク検出回路201から最大ピーク値検出信号MAX
が第10図に示すように出力され、第2図の波高値取込
回路203及びゼロクロス時刻取込回路204において
は、この信号MAXに基づいて最大ピーク値ao%83
等、及び正負フラグ(この場合、正ピークであるから1
)を含むゼロクロス時刻t1、t3、t5、t7等がラ
ッチされる。Based on the above, the minimum peak value bo=bz (absolute) for the negative side of the digital output D1 in FIG. In exactly the same way as the output operation, the maximum peak value a,
-”-Detection of a3, etc., zero cross times t1, t3, t5
, t7, etc., and peak hold signal Po'=P3
These output operations are performed in parallel. In this case,
Maximum peak value detection signal MAX from the peak detection circuit 201
is output as shown in FIG. 10, and in the peak value acquisition circuit 203 and zero cross time acquisition circuit 204 of FIG. 2, the maximum peak value ao%83 is output based on this signal MAX.
etc., and the positive/negative flag (in this case, it is a positive peak, so 1
), zero-crossing times t1, t3, t5, t7, etc. are latched.
以上に示した動作により、第2図のゼロクロス時刻取込
回路204からは、第10図のゼロクロス時刻to x
j、の各時刻毎に割り込み信号INTが第1図のMCP
3に出力され、これに基づいた各時刻毎に、最小又は最
大ピーク値(絶対値)とゼロクロス時刻の組として、b
oとf−0、aQとt、、b、とj2、al とt3、
・・・等が順次MCP3へ出力される。ここでMCP3
において、最小ピーク値(負側のピーク値)であるのか
最大ピーク値(正側のピーク値)であるのかの判定は、
ゼロクロス時刻の最上位ビットに付加されている前記正
負フラグにより可能である。Through the operations described above, the zero-crossing time acquisition circuit 204 in FIG. 2 outputs the zero-crossing time to x in FIG.
j, the interrupt signal INT is transmitted to the MCP of FIG.
3, and for each time based on this, as a set of the minimum or maximum peak value (absolute value) and zero cross time, b
o and f-0, aQ and t, , b, and j2, al and t3,
. . . etc. are sequentially output to the MCP3. Here MCP3
To determine whether it is the minimum peak value (peak value on the negative side) or the maximum peak value (peak value on the positive side),
This is possible due to the positive/negative flag added to the most significant bit of the zero-crossing time.
なお、上記動作の他に、第2図の波高値取込回路203
はMCP3からのアクセスによりデジタル出力D1の瞬
時値を任意に出力できる。これについては後述する。In addition to the above operation, the peak value acquisition circuit 203 in FIG.
can arbitrarily output the instantaneous value of the digital output D1 by accessing from the MCP3. This will be discussed later.
また、第2図のピーク検出回路201内のピークホール
ド回路で発生される第10図のピークホールド信号Po
’=P3、(io−qx等の各減衰率(時定数)は、
MCP3の制御下で第2図の時定数変換制御回路202
によって随時変更される。Also, the peak hold signal Po in FIG. 10 generated by the peak hold circuit in the peak detection circuit 201 in FIG.
'=P3, each attenuation rate (time constant) such as (io-qx) is
Under the control of MCP3, the time constant conversion control circuit 202 of FIG.
Changes may be made from time to time.
基本的には、デジタル出力D1の例えば1ピッチ周期時
間が経過した後に、上記ピークホールド信号が急速に減
衰するようにその時定数を変更する。そして、このとき
のピッチ周期情報の設定は、第1図のMCP3が後述す
る動作により、各ピッチ周期の抽出を行った後にバスB
USを介して、時定数変換制御回路202内の時定数変
換レジスタCHTRR(後述する)にピッチ周期情報を
セットして行う。これにより、時定数変換制御回路20
2は、内部に設けられた特には図示しない各弦独立のカ
ウンタと、MCP3から時定数変換レジスタCRTRR
に設定されたピッチ周期情報との一致比較を行い、ピッ
チ周期時間が経過して一致出力が発生した時点で、時定
数チェンジ信号を前記ピーク検出回路201へ送出する
。この動作により、ピークホールド信号は1ピッチ周期
の時間が経過すると、急速に減衰し、これにより次のピ
ッチ周期のピークが適切に検出される。Basically, after the elapse of, for example, one pitch cycle time of the digital output D1, the time constant is changed so that the peak hold signal is rapidly attenuated. The setting of the pitch period information at this time is performed by the MCP3 in FIG. 1, which will be described later, after extracting each pitch period,
This is done by setting pitch period information in a time constant conversion register CHTRR (described later) in the time constant conversion control circuit 202 via the US. As a result, the time constant conversion control circuit 20
2 is an internally provided counter independent of each string (not shown) and a time constant conversion register CRTRR from MCP3.
A time constant change signal is sent to the peak detection circuit 201 when a match output is generated after the pitch period time has elapsed. Due to this operation, the peak hold signal rapidly attenuates after one pitch period has elapsed, so that the peak of the next pitch period can be appropriately detected.
なお、1ピッチ周期が経過する前に、ピーク検出回路2
01において次の最大又は最小ピーク値検出信号MAX
又はMINが検出された場合は、これらの信号の立ち下
がりのタイごングで上記カウンタをリセットし、次のピ
ークホールド信号を生成するようにしている。Note that before one pitch period has elapsed, the peak detection circuit 2
At 01, the next maximum or minimum peak value detection signal MAX
Or, if MIN is detected, the counter is reset at the falling edge of these signals, and the next peak hold signal is generated.
また、各弦の振動周期は、演奏者がフレット上で当該弦
を押さえる位置によって幅広く変化するため、デジタル
出力DIの各弦に対応する波形の立ち上がり時には、そ
の波形の振動を速やかに検知すべく、各弦の最高音周期
時間経過にてピークホールド信号が急速減衰し、その直
後は、各ピッチ周期の倍音を拾わないように、各弦の開
放弦周期(最低音用yIJ4)時間経過にて急速減衰す
るように設定が行われる。そして、ピッチ周期が有効に
抽出された後は、当該ピッチ周期時間経過にて急速減衰
するように設定が行われ、演奏操作によるデジタル出力
DIの各弦のピッチ周期の変化に追従する。In addition, since the vibration period of each string varies widely depending on the position where the player presses the string on the fret, when the waveform corresponding to each string of the digital output DI rises, it is necessary to quickly detect the vibration of that waveform. , the peak hold signal rapidly attenuates as the highest pitch period of each string elapses, and immediately after that, the open string period (yIJ4 for the lowest pitch) of each string is set as the time elapses to avoid picking up overtones of each pitch period. Settings are made for rapid decay. After the pitch period has been effectively extracted, settings are made to rapidly attenuate as the pitch period elapses, following changes in the pitch period of each string of the digital output DI due to performance operations.
更に、ピッチ検出回路201において、正負どちらのピ
ーク値に対して上記ピークホールドの制御を行うかは、
シリアルゼロクロス信号ZCRがハイレベルであるかロ
ーレベルであるかによって判定するようにしている(第
10図参照)。Furthermore, in the pitch detection circuit 201, whether the peak value is positive or negative is determined by the following:
The determination is made based on whether the serial zero cross signal ZCR is at a high level or a low level (see FIG. 10).
(’ MCP の )以上の動作に
より、第1図のピッチ抽出回路2から供給される最大又
は−最小ピーク値、ゼロクロス時刻、およびピーク値の
正負を示す正負フラグに基づいて、第1図のMCP3が
、ピッチ抽出及び音量・音色に関するパラメータの抽出
を行うことにより、楽音発生回路5を制御するための楽
音制御情報を発生する。なお、MCP3はROM301
に記憶されたプログラムに従って、以下に詳細に説明す
るように第3図〜第9図に示す動作フローチャートを実
行する。('MCP's) By the above-described operation, the MCP 3 of FIG. generates musical tone control information for controlling the musical tone generating circuit 5 by extracting pitch and parameters related to volume and timbre. In addition, MCP3 is ROM301
According to the program stored in the computer, the operational flowcharts shown in FIGS. 3 to 9 are executed as described in detail below.
(変致坐豆里)
はじめに、後述する第3図〜第9C図の動作フローチャ
ートで示される制御プログラムにおいて用いられる各変
数について、以下に列挙しておく。(Kenchizazu-ri) First, each variable used in the control program shown in the operation flowcharts of FIGS. 3 to 9C, which will be described later, will be listed below.
AD・・・第1.図のピッチ抽出デジタル回路2への入
力波形Dlを直接読んだ
入力波高値(瞬時値)
AMP (0,1)・・・正又は負の前回(01dの波
高値(ピーク値)
AMRLI・・・振幅レジスタで記憶されているリラテ
ィブ(relative)オフ(off )のチエツク
のための前回
の振幅値(ピーク値)である。こ
こで、前記リラティブオフとは波
高値が急激に減衰してきたことに
基づき消音することで、フレット
操作をやめて開放弦へ移ったとき
の消音処理に相当する。AD... 1st. Input wave height value (instantaneous value) obtained by directly reading the input waveform Dl to the pitch extraction digital circuit 2 shown in the figure AMP (0, 1)...Positive or negative previous wave height value (peak value) of 01d AMRLI... This is the previous amplitude value (peak value) for checking the relative off (off) stored in the amplitude register. Here, the relative off is based on the fact that the peak value has rapidly attenuated. Muting the sound corresponds to the process of muting the sound when you stop playing the frets and move to an open string.
AMRL2・・・振幅レジスタで記憶されている前記リ
ラティブオフのための
前々回の振幅値(ピーク値)で、
これにはAMRLIの値が入力さ
れる。AMRL2: Amplitude value (peak value) of the previous relative off stored in the amplitude register, into which the value of AMRLI is input.
CHTIM・・・最高音フレット(22フレツト目)に
対応する周期
CRTI○・・・開放弦フレットに対応する周期
CRTRR・・・時定数変換レジスタで、上述の時定数
変換制御回路202
(第2図)の内部に設けられてい
る。CHTIM...Period corresponding to the highest fret (22nd fret) CRTI○...Period corresponding to the open string fret CRTRR...Time constant conversion register, the above-mentioned time constant conversion control circuit 202 (Fig. 2) ) is provided inside.
DUB・・・波形が続けて同一方向にきたことを示すフ
ラグ、
FOFR・・・リラティブオフカウンタ、GENV・・
・弦エンベロープデータ
HNC・・・波形ナンバーカウンタ
KENV・・・混合エンベロープ・データMT・・・こ
れからピッチ抽出を行う側のフラグ(正=1、負=0)
NCHLV・・・ノーチェンジレベル(定数)○FTI
M・・・オフタイム(例えば当該弦の開放弦周期に相当
)
○FPT・・・通常オフチエツク開始フラグONF・・
・ノートオンフラグ
RIV・・・後述のステップ(STEP)4での処理ル
ートの切替を行うため
のフラグ
ROFCT・・・リラティブオフのチエツク回数を定め
る定数
5ENV・・・シンセ・エンベロープ・データ
5TEP・・・MCP3のフロー動作を指定するレジス
タ(1〜5の値をとる)
TF・・・有効となった前回のゼロクロス時刻データ
TFN (0,1)・・・正または負のピーク値直後の
前回のゼロクロス時刻デ
ータ
TFR・・・時刻記憶レジスタ
THL IM・・・周波数上限(定数)TLLTM・・
・周波数下限(定数)
TP (0,1)・・・正または負の前回の周期データ
TRLAB (0,1)・・・正または負の絶対トリガ
レベル(ノートオンしき
い値)
TRLRL・・・リラティブオン(再発音開始)のしき
い値
TRLR3・・・共振除去しきい値
TTLIM・・・トリガ時の周波数下限TTP・・・前
回抽出された周期データTTR・・・周期レジスタ、
TTU・・・定数(17/32と今回の周期情報11の
積)
TTW・・・定数(31/16と今回の周期情報11の
積)
VEL・・・速度(ベロシティ)を定める情報で、発音
開始時の波形の最大ピ
ーク値にて定まる。DUB...Flag indicating that the waveform has come in the same direction continuously, FOFR...Relative off counter, GENV...
・String envelope data HNC...Waveform number counter KENV...Mixed envelope data MT...Flag for the side from which pitch will be extracted (positive = 1, negative = 0) NCHLV...No change level (constant) ○FTI
M...Off time (e.g. corresponds to the open string period of the string) ○FPT...Normal off-check start flag ONF...
・Note-on flag RIV...Flag for switching the processing route in step 4 (described later) ROFCT...Constant 5ENV that determines the number of relative off checks...Synth envelope data 5TEP...・Register that specifies the flow operation of MCP3 (takes a value from 1 to 5) TF...Previous zero-crossing time data that became valid TFN (0,1)...Previous time immediately after the positive or negative peak value Zero cross time data TFR...Time storage register THL IM...Frequency upper limit (constant) TLLTM...
・Frequency lower limit (constant) TP (0,1)...Positive or negative previous cycle data TRLAB (0,1)...Positive or negative absolute trigger level (note-on threshold) TRLRL... Relative on (start of re-sounding) threshold TRLR3...Resonance removal threshold TTLIM...Frequency lower limit at trigger time TTP...Previously extracted period data TTR...Period register, TTU... Constant (product of 17/32 and current cycle information 11) TTW...Constant (product of 31/16 and current cycle information 11) VEL...Information that determines velocity (velocity), waveform at the start of sound generation Determined by the maximum peak value of
X・・・異常または正常状態を示すフラグb・・・ワー
キングレジスタBに記憶されている今回正負フラグ(正
ピークの
次のゼロ点のとき1、負ピークの
次のゼロ点のとき0)
C・・・ワーキングレジスタCに記憶されている今回波
高値(ピーク値)
e・・・ワーキングレジスタ已に記憶されている前々回
波高値(ピーク値)
h・・・ワーキングレジスタHに記憶されている前々回
抽出された周期データ
t・・・ワーキングレジスタToに記憶されている今回
のゼロクロス時刻
11・・・ワーキングレジスタTOTOに記憶されてい
る今回の周期情報
(゛ ルーチンの )
次に、第3図は、MCP3へピッチ抽出デジタル回路2
内のゼロクロス時刻取込回路204(第2図)から、割
り込み信号INTに基づいて割り込みがかけられたとき
の処理を示した割り込み処理ルーチンの動作フローチャ
ートを示した図である。X: Flag indicating abnormal or normal state b: Current positive/negative flag stored in working register B (1 when the zero point is next to the positive peak, 0 when the zero point is next to the negative peak) C ... Current wave height value (peak value) stored in working register C e... Wave height value (peak value) from the time before the previous time stored in the working register H... h... Wave height value (peak value) from the time before the previous time stored in the working register H Extracted cycle data t...Current zero-crossing time 11 stored in working register To...Current cycle information (of routine) stored in working register TOTO Next, FIG. Pitch extraction digital circuit 2 to MCP3
2 is a diagram showing an operation flowchart of an interrupt processing routine showing processing when an interrupt is issued based on an interrupt signal INT from the zero-crossing time acquisition circuit 204 (FIG. 2) in the internal memory. FIG.
前記したように、ゼロクロス時刻取込回路204から割
り込み信号INTが出力される時点においては、第2図
の波高値取込回路203には最大又は最小ピーク値(絶
対値)がホールドされ、ゼロクロス時刻取込回路204
には当該ピーク値発生直後のゼロクロス時刻、及び直前
のピーク値が最大(正の)ピーク値である場合1、最小
(負の)ピーク値である場合Oを示す正負フラグがラッ
チされている。As described above, at the time when the interrupt signal INT is output from the zero-cross time acquisition circuit 204, the maximum or minimum peak value (absolute value) is held in the peak value acquisition circuit 203 in FIG. Intake circuit 204
A positive/negative flag indicating the zero-crossing time immediately after the occurrence of the peak value and a positive/negative flag indicating 1 if the immediately preceding peak value is the maximum (positive) peak value and O if the immediately preceding peak value is the minimum (negative) peak value is latched.
そこで、MCP3は、まず、第3図の11において、ア
ドレスデコーダ4に所定のアドレス読み出し信号ARを
セットし、第2図のゼロクロス時刻取込回路204に対
して、弦番号読み込み信号rを出力させる。これにより
同回路204からは、まずどの弦番号について上記割り
込みが発生したのかを示す弦番号が、バスBUSを介し
てMCP3に出力される。続いて、MCP3はアドレス
デコーダ4に別のアドレス読み出し信号ARをセットし
、ゼロクロス時刻取込回路204に対して、時刻読み込
み信号−m−丁羽]−〜■TTTHのうち上記弦番号に
対応する信号を出力させる。これにより同回路204か
らは、上記時刻読み込み信号−W117丁薊]−(i
= 1〜6のうちいずれか)で指定される弦番号対応の
ラッチにセットされているゼロクロス時刻情報が、バス
BUSを介してMCP3に出力される。これを第3図■
1に示すように今回のゼロクロス時刻tとする。Therefore, the MCP 3 first sets a predetermined address read signal AR in the address decoder 4 at 11 in FIG. 3, and outputs a string number read signal r to the zero-cross time capture circuit 204 in FIG. . As a result, the circuit 204 first outputs a string number indicating which string number the above-mentioned interrupt has occurred to the MCP 3 via the bus BUS. Subsequently, the MCP 3 sets another address read signal AR to the address decoder 4, and sends a time read signal to the zero-crossing time acquisition circuit 204 corresponding to the above string number among -m-chou]-~■TTTH. Output a signal. As a result, the circuit 204 outputs the above-mentioned time reading signal -
The zero-crossing time information set in the latch corresponding to the string number specified by (any one of = 1 to 6) is output to the MCP3 via the bus BUS. This is shown in Figure 3■
As shown in 1, the current zero crossing time is t.
続いて、第3図のI2において、前記「ピッチ抽出デジ
タル回路の動作」の項で説明したように、ゼロクロス時
刻情報の最上位ビットに付加されている正負フラグを取
り出しこれを今回正負フラグbとする。Next, at I2 in FIG. 3, as explained in the above section "Operation of pitch extraction digital circuit", the positive/negative flag added to the most significant bit of the zero-crossing time information is extracted and this flag is designated as the current positive/negative flag b. do.
その後、第3図のI3において、MCP3は前記と同様
にアドレスデコーダ4を介して、第2図の波高値取込回
路203に対して、ピーク値読み込み信号■rW丁(j
=1〜12のうちいずれか)を出力させる。ここで、同
回路203内には、特には図示しないが、6弦分の最大
ピーク値及び最小ピーク値をホールドする12個のラッ
チがあるため、MCP3は前記弦番号及び正負フラグb
に基づいて、上記ピーク値読み込み信号m丁を選択して
出力させる。これにより同回路203からは、当該ピー
ク値読み込み信号−R]「K]−で指定されるラッチに
セットされている最大ピーク値または最小ピーク値(絶
対(iF)が、バスBUSを介してMCP3に出力され
る。これを第3図■3に示すように、今回ピーク値Cと
する。Thereafter, at I3 in FIG. 3, the MCP 3 sends a peak value reading signal ■rW(j
= any one of 1 to 12) is output. Here, although not particularly shown in the circuit 203, there are 12 latches that hold the maximum peak value and minimum peak value for 6 strings, so the MCP3 has the string number and the positive/negative flag b.
Based on this, the peak value read signal m is selected and output. As a result, the circuit 203 transmits the maximum peak value or minimum peak value (absolute (iF) set in the latch specified by the peak value read signal -R] "K") to the MCP3 via the bus BUS. This is set as the current peak value C, as shown in Figure 3 (3).
以上の動作の後、第3図のI4において、上記のように
して得たt、c、bの値をMCPa内の特には図示しな
いレジスタTO1C,Bにセットする。このレジスタに
は、上記割込み処理がなされる都度、このようなゼロク
ロス時刻情報、ビーり値情報(絶対値)、ピークの種類
を示す正負フラグの情報がワンセットとして書込まれて
いき、後述するメインルーチンで、各弦毎にかかる情報
に対する処理がなされる。After the above operation, at I4 in FIG. 3, the values of t, c, and b obtained as described above are set in registers TO1C and B (not shown) in MCPa. Each time the above-mentioned interrupt processing is performed, this register is written with a set of zero-crossing time information, beat value information (absolute value), and positive/negative flag information indicating the type of peak. In the main routine, such information is processed for each string.
なお、上記レジスタTo、C,Bは、6弦に対応して6
個ずつあり、第1図のMCP3は、楽音発生回路5等が
どの弦に対応して発音動作及びエンベロープ制御動作(
後述する)を行っているかという情報を、RAM302
に保持しており、以下第4A図〜第9図で説明する楽音
制御及びエンベロープ制御の処理は、6弦分について全
て時分割処理で行われ、前記レジスタのうちどの弦に対
応するものに割込みがかかったかによって、楽音発生回
路5等に対する処理を行う。以下、特に言及しない限り
上記動作を行っているものとする。Note that the above registers To, C, and B correspond to 6 strings.
In the MCP3 shown in FIG. 1, the musical tone generation circuit 5 etc. performs sound generation operation and envelope control operation (
(described later) is being performed in the RAM 302.
The musical tone control and envelope control processing described below in FIGS. 4A to 9 are performed by time-sharing processing for all six strings, and which string of the registers corresponds to the interrupt Depending on whether the tone is applied or not, processing is performed on the musical tone generation circuit 5 and the like. In the following, it is assumed that the above operations are performed unless otherwise specified.
(メインルーチンの )
第4A図は、メインルーチンの処理を示す動作フローチ
ャートである。ここでは、パワーON後の初期化(イニ
シャライズ)、楽音のノートオフ(消音)処理、及び5
TEPO−3TEP4 (又は5)の各処理の選択の処
理、及び演奏者が特には図示しない各種キーを操作した
ときのキー制御処理を行う。本実施例では、楽音制御の
処理を後述するようにステップという処理概念で行って
おり、後述するように、5TEPO−3TEPI→5T
EP2→5TEP3→5TEP4 (−3TEP5)−
3TEPOという順で楽音制御を行ってゆく。(Main Routine) FIG. 4A is an operation flowchart showing the processing of the main routine. Here, initialization after power-on, musical note-off processing, and 5.
TEPO-3TEP4 (or 5) selection processing and key control processing when the performer operates various keys (not shown) are performed. In this embodiment, the musical tone control process is performed using the processing concept of steps as described later, and as described later, 5TEPO-3TEPI → 5T
EP2→5TEP3→5TEP4 (-3TEP5)-
Musical tone control is performed in the order of 3TEPO.
(基j1弘住)
第4A図において、まずパワーオン(電源投入)するこ
とにより、Mlにおいて各種レジスタやフラグがイニシ
ャライズされ、レジスタ5TEPが0とされる。またこ
の場合、前記「ピッチ抽出デジタル回路の動作」の項の
時定数変換#御回路202(第2図)の説明において述
べたように、初期状態において、ピーク検出回路201
(第2図)がデジタル出力DIの波形の立ち上がり時の
振動を速やかに検知できるように、MCP3がバスBU
Sを介して時定数変換制御回路202内の時定数変換レ
ジスタ5TEPに最高音フレット周期CRTIMをセッ
トし、ピーク検出回路201内のピークホールド回路か
ら出力されるピークホールド信号(第10図Paまたは
qo等)が、最高音周期時間経過にて急速減衰するよう
に制御される。(Basic j1 Hirosumi) In FIG. 4A, by first turning on the power, various registers and flags are initialized in M1, and register 5TEP is set to 0. In addition, in this case, as described in the explanation of the time constant conversion # control circuit 202 (FIG. 2) in the section "Operation of the pitch extraction digital circuit", in the initial state, the peak detection circuit 201
(Fig. 2), the MCP3 connects the bus BU so that the vibration at the rise of the waveform of the digital output DI can be quickly detected.
The highest fret period CRTIM is set in the time constant conversion register 5TEP in the time constant conversion control circuit 202 via S, and the peak hold signal (Pa or qo in FIG. 10) output from the peak hold circuit in the peak detection circuit 201 is set. etc.) is controlled so that it rapidly attenuates as the highest sound period elapses.
次に、第4A図のM2で、キー制御処理が実行される。Next, at M2 in FIG. 4A, key control processing is executed.
この処理は、本発明に関連する処理であり、これを更に
第4B図に示す。This process is related to the present invention, and is further illustrated in FIG. 4B.
まず、第1図のMCP3は、特には図示しない各種設定
キーの切替状態を走査(キー・スキャン)する(第48
図M21)。First, the MCP3 in FIG. 1 scans (key scan) the switching states of various setting keys (not shown) (key scan).
Figure M21).
この結果、「本発明の実施例の概略動作」の項で説明し
た弦エンベロープ・データ5ENVとシンセ・エンベロ
ープ・データ5ENVの混合比を設定するためのキーが
切り替えられたことが検出された場合、)J 22の判
定がYESとなる。これにより、第1図のMCP3は、
乗算器13及び14の係数を第11B図の組合わせに従
って設定する(第48図M23)。As a result, if it is detected that the key for setting the mixing ratio of the string envelope data 5ENV and the synth envelope data 5ENV explained in the section "General operation of the embodiment of the present invention" has been switched, ) J 22 becomes YES. As a result, MCP3 in FIG.
The coefficients of multipliers 13 and 14 are set according to the combination shown in FIG. 11B (M23 in FIG. 48).
その後、特には詳述しないが、他のキーに対する処理が
行われ(第4B図M24)、キー制御処理を終了する。Thereafter, although not described in detail, processing for other keys is performed (M24 in FIG. 4B), and the key control processing ends.
なお、M22の判定がノーの場合は、直接この処理が実
行される。Note that if the determination in M22 is NO, this process is directly executed.
続いて第4A図に戻り、M2O1において、前記「割り
込み処理ルーチンの動作」の項で説明したレジスタが空
かどうかが判断され、ノー(以下、Noと称す)の場合
にはM3に進み、各レジスタB、C,TOの内容が読ま
れる。続いて、M4において、レジスタ5TEPの値は
いくつかが判断され、M5では5TEPO,M6では5
TEP1、M7では5TEP2、M8では5TEP3、
M9では5TEP4の処理が順次実行される。なお、次
のステップへの更新は、後述するように各5TEPO〜
5TEP4の処理において行われる。Next, returning to FIG. 4A, in M2O1, it is determined whether the register explained in the section of "Operation of Interrupt Processing Routine" is empty. If the answer is NO (hereinafter referred to as No), the process advances to M3, and each The contents of registers B, C, and TO are read. Next, in M4, several values of the register 5TEP are determined, 5TEPO in M5 and 5TEPO in M6.
TEP1, 5TEP2 for M7, 5TEP3 for M8,
In M9, the processes of 5TEP4 are sequentially executed. In addition, the update to the next step is performed after each 5 TEPO ~ as described later.
This is done in the process of 5TEP4.
(L二上土ヱ歎在)
前記M2O1でバッファが空の場合、すなわちイエス(
以下、YESと称する)の場合、MIO〜M16への処
理に進み、ここで通常のノートオフのアルゴリズムの処
理が行われる。このノートオフのアルゴリズムは、デジ
タル出力Di(第1図)において、その波高値がオフ(
OFF)レベル以下の状態が所定のオフタイム時間続い
たら、ノートオフするアルゴリズムである。(L2 upper soil is present) If the buffer is empty in M2O1, that is, yes (
If the answer is YES (hereinafter referred to as YES), the process proceeds to MIO to M16, where normal note-off algorithm processing is performed. In this note-off algorithm, the peak value of the digital output Di (Figure 1) is off (
OFF) level or below continues for a predetermined off time period, the algorithm performs note-off.
まず、MIOで5TEP=Oかどうかが判断され、YE
Sの場合には、楽音を発生していない初期状態のため、
ノートオフはする必要がなく、M2に戻る。一方、No
の場合には、Mllに進む。First, MIO determines whether 5TEP=O or not, and then
In the case of S, due to the initial state in which musical tones are not generated,
There is no need to note off, return to M2. On the other hand, No.
If so, proceed to Mll.
Mllでは、その時点のデジタル出力D1の入力波高値
(瞬時値)ADが直接読まれる。これは、MCP3がア
ドレスデコーダ4を介して、波高値取込み回路203(
第2図)へピーク値読み込み信号IrWT丁〜[のいず
れかを与えることにより、同回路203がデジタル出力
D1の現在の瞬時値を、バスBUSを介してMCP3に
出力することで達成できる。そして、この値ADが、予
め設定したオフレベル以下かどうかが判断され、NOの
場合はノートオフする必要がないためM2に戻り、YE
Sの場合にはMl2に進む。In Mll, the input peak value (instantaneous value) AD of the digital output D1 at that point in time is directly read. This is done by the MCP 3 via the address decoder 4 and the peak value acquisition circuit 203 (
This can be achieved by applying one of the peak value reading signals IrWT to the circuit 203 (FIG. 2) to cause the circuit 203 to output the current instantaneous value of the digital output D1 to the MCP3 via the bus BUS. Then, it is determined whether this value AD is less than the preset off level, and if NO, there is no need to note off, so the process returns to M2 and YE.
In the case of S, proceed to Ml2.
Ml2では、前回の入力波高値ADがオフレベル以下か
どうかが判断され、Noの場合には、M17に進みMC
P3内のタイマ303をスタートし、M2に戻る。そし
て、次に再びこの処理にきたときに、M12はYESと
なるため、M2Sに進み、ここでタイマ303の値がオ
フタイムOFTIMかどうかが判断される。オフタイム
○FTIMとしては例えば処理をしている弦の開放弦フ
レット周期CRTI○がセットされており、M2SでN
oの場合にはM2に戻って処理が繰り返され、YESと
なるとM14に進み、レジスタ5TEPにOを書き込み
、時定数変換レジスタ5TEPへ最高音フレット周期C
)rTIMをセットした後、M2Sを介して(後述する
)、M2Sに進む。すなわち、デジタル出力DIのレベ
ルが減衰してきた場合、オフレベル以下の入力波高値A
DがオフタイムOFTIMに相当する時間続くと、デジ
タル出力D1が入力せず弦が弾かれなくなったと判断で
きるため、M2Sに進んでノートオフの処理がされる。In Ml2, it is determined whether the previous input wave height value AD is below the off level, and if No, the process advances to M17 and the MC
Start the timer 303 in P3 and return to M2. Then, the next time this processing is performed again, M12 becomes YES, so the process advances to M2S, where it is determined whether the value of the timer 303 is the off time OFTIM. For example, the open string fret period CRTI○ of the string being processed is set as the off time ○FTIM, and the N
If o, the process returns to M2 and the process is repeated; if YES, the process proceeds to M14, writes O to register 5TEP, and writes the highest fret period C to time constant conversion register 5TEP.
) After setting rTIM, proceed to M2S via M2S (described later). In other words, when the level of the digital output DI is attenuated, the input peak value A below the off level
When D continues for a time corresponding to the off time OFTIM, it can be determined that the digital output D1 is not input and the string is no longer played, so the process proceeds to M2S and note-off processing is performed.
M2Sでは、MCP3が楽音発生回路5に対して、ノー
トオフの指示を送出し、これにより楽音の発音が停止さ
れる。このようにノートオフされた場合には、必ず5T
EPOに戻る。In M2S, the MCP 3 sends a note-off instruction to the musical tone generation circuit 5, thereby stopping the generation of musical tones. When note-off is performed in this way, the 5T
Return to EPO.
なお、ステップM15において、通常の状態ではYES
の判断がなされるが、後述するような処理によって、楽
音の発音を指示していない場合でもレジスタ5TEPは
O以外の値をとっていることがあり(例えばノイズの入
力による)、そのようなときには、M14、M2Sの処
理後M2へ戻ることで、5TEPOへ初期設定される。Note that in step M15, YES is selected in the normal state.
However, due to the processing described below, register 5TEP may take a value other than O even when the sound generation is not instructed (for example, due to noise input), and in such a case, , M14, and M2S and then return to M2 to initialize to 5TEPO.
(STEPOの几 )
次に、第4A図のメインルーチンにおいて分岐して対応
する処理を行う各ルーチンの詳細について説明を行う。(STEPO Process) Next, details of each routine that branches in the main routine of FIG. 4A and performs corresponding processing will be explained.
まず第5図は、第4A図のメインルーチンのM5として
示すステップ0 (STEPO)の処理の動作フローチ
ャートである。この処理においては、ピッチ抽出処理等
のための初期設定、及び次の5TEPIへの移行処理を
行う。以下第12図の基本動作説明図を用いて説明を行
う。なお、第12図は第10図と同一の波形である。First, FIG. 5 is an operational flowchart of the processing of step 0 (STEPO) shown as M5 of the main routine of FIG. 4A. In this processing, initial settings for pitch extraction processing, etc., and transition processing to the next 5 TEPI are performed. The explanation will be given below using the basic operation explanatory diagram of FIG. 12. Note that FIG. 12 has the same waveform as FIG. 10.
(基」」か庄〉
今、第4A図のメインルーチンは、M2とMloのルー
プの繰り返しにより、前記「割り込み処理ルーチンの動
作Jの項において説明したように、ピンチ抽出デジタル
回路2(第1図)から割り込みが掛かって、レジスタT
o、C,Bにデータが入力するのを待っている。Now, the main routine of FIG. 4A is performed by repeating the loop of M2 and Mlo, as described in the section of "Operation J of the interrupt processing routine", the pinch extraction digital circuit 2 (the first When an interrupt occurs from register T
Waiting for data to be input to o, C, and B.
そしてデータが入力し、第4A図のM2からM2O1、
M3を経て上記各レジスタの内容が読み込まれると、M
4を介してM5、即ち第5図の5TEPOに移る。この
状態においては、例えば第12図に示すように、今回の
ゼロクロス時刻1−to、今回正負フラグb=o、今回
ピーク値Cはb−oより最小ピーク値でc=b6 (
絶対値)である。なお、第12図でbとbo=b3等は
異なる記号である。Then, data is input, from M2 to M2O1 in Figure 4A,
When the contents of each register above are read through M3, M
4 to M5, that is, 5TEPO in FIG. In this state, for example, as shown in FIG. 12, the current zero cross time 1-to, the current positive/negative flag b=o, and the current peak value C is the minimum peak value from b-o, c=b6 (
absolute value). Note that in FIG. 12, b and bo=b3, etc. are different symbols.
まず、第5図のSolにおいて、今回ピーク値Cの値が
、絶対トリガレベル(ノートオンのための正の閾値)T
RLAB (b)より大きいか否かが判定される。、な
お、この判定は、今回正負フラグbの値に基づいて正と
負の各極性(最大ピーク値又は最小ピーク値)の各々に
ついて実行され、正側の絶対トリガレベルTRLAB
(1)と負側の絶対トリガレベルTRLAB (0)は
、デジタル出力DI(第1図)にオフセットが重畳され
た場合等を考慮して、経験的に別々の値に設定すること
ができる。理想的なシステムでは同じ値でよい。第12
図の例では、今回最小ピーク値c=b@(絶対値)とT
RLAB (b)=TRLAB (0)とが比較され、
c −be >TRLAB (0) 、即ち判定はYE
Sとなる。First, in Sol in FIG. 5, the current peak value C is the absolute trigger level (positive threshold for note-on) T
It is determined whether it is larger than RLAB (b). This determination is performed for each of the positive and negative polarities (maximum peak value or minimum peak value) based on the value of the positive/negative flag b this time, and the absolute trigger level TRLAB on the positive side is
(1) and the negative-side absolute trigger level TRLAB (0) can be empirically set to different values, taking into consideration the case where an offset is superimposed on the digital output DI (FIG. 1). In an ideal system, the values should be the same. 12th
In the example in the figure, the current minimum peak value c=b@(absolute value) and T
RLAB (b) = TRLAB (0) is compared,
c -be >TRLAB (0), that is, the judgment is YE
It becomes S.
次に、302を経た後(後述する)、SO3の処理が実
行される。ここでは、まず、今回正負フラグbがフラグ
MTに書き込まれ、レジスタ5TEPに1が書き込まれ
て次のステップへの移行準備がなされ、更に、今回のゼ
ロクロス時Rtが以降の処理のために前回のゼロクロス
時刻データTFN (b)として設定される。第12図
の例では、同図に示すようにMT=b=0.TFN (
b)=T F N (0) = t −t oとなる。Next, after passing through 302 (described later), the process of SO3 is executed. Here, first, the current positive/negative flag b is written to the flag MT, and 1 is written to the register 5TEP to prepare for transition to the next step. It is set as zero cross time data TFN (b). In the example of FIG. 12, as shown in the figure, MT=b=0. TFN (
b) = T F N (0) = t - t o.
続いて、304において、「変数の説明」の項に示した
上記フラグ以外のその他フラグ類(定数値を除く)が初
期化される。Subsequently, in step 304, flags other than the above flags (excluding constant values) shown in the "Variable Description" section are initialized.
更に、SO5においては、今回ピーク値Cが以降の処理
のために前回のピーク値AMP (b)(絶対値)とし
てセットされ、第4A図のメインルーチンのM2の処理
に戻る。第12図の例では、同図に示すようにAMP
(b)=AMP (0)=c=b6 となる。Further, at SO5, the current peak value C is set as the previous peak value AMP (b) (absolute value) for subsequent processing, and the process returns to M2 of the main routine of FIG. 4A. In the example of FIG. 12, the AMP
(b)=AMP (0)=c=b6.
以上の処理により、第12図の例では、同図(STEP
O−1の間)に示すようにフラグMTにレジスタBの今
回正負フラグb=oが書き込まれ、負側の前回のゼロク
ロス時刻のデータTFN(0)にレジスタToの今回の
ゼロクロス時刻データt ” t oが書き込まれ、負
側の前回のピーク値AMP (0)にレジスタCの今回
最小ピーク値c=b6が書き込まれる。As a result of the above processing, in the example of FIG.
As shown in (between O-1), the current positive/negative flag b=o of register B is written in the flag MT, and the current zero-crossing time data t'' of register To is written in the previous zero-crossing time data TFN (0) on the negative side. t o is written, and the current minimum peak value c=b6 of the register C is written to the previous peak value AMP (0) on the negative side.
(共髪腹去軌佳)
なお、第5図のSOlにおいて、今回ピーク値Cの値が
絶対トリガレベルTRLAB (b)以下の場合は、発
音(ノートオン)の処理へは移行せず、305において
前回のピーク値AMP(b)に今回ピーク値Cの値をセ
ットするだけで第4A図のメインルーチンへ戻る。とこ
ろが、1本の弦をピッキングすることにより、他の弦が
共振を起こすような場合、当該他の弦については振動の
レベルが徐々に大きくなり、やがて第5図の301の判
定結果がYESとなり、SO2の処理に移る。(Join hair belly leaving) In addition, in SOl of FIG. 5, if the current peak value C is less than or equal to the absolute trigger level TRLAB (b), the process does not proceed to the sound generation (note-on) process, and 305 In this step, the current peak value C is simply set to the previous peak value AMP(b), and the process returns to the main routine of FIG. 4A. However, when picking one string causes other strings to resonate, the vibration level of those other strings gradually increases, and eventually the determination result in 301 in Figure 5 becomes YES. , proceed to SO2 processing.
しかし、このような場合、正規のピッキングを行った訳
ではないので、発音(ノートオン)の動作に移行するの
は妥当ではない。そこで、SO2の処理において上記共
振の除去を行う。即ち、上記のような場合、今回ピーク
値Cは前回のピーク値AMP(b)に比べてほとんど大
きくなっていないため、その差c−AMP (b)が共
振除去しきい値TRLR3より大きくない場合には、上
記共振状態が発生したと判定して、発音処理へは移行せ
ず、305において前回のピーク値AMP(b)に今回
ピーク値Cの値をセットするだけで第4A図のメインル
ーチンに戻る。一方、第12図のような正常なピッキン
グを行った場合に、波形が急激に立上ることになり、前
記ピーク値の差c −AMP (b)は共振除去閾値T
RLR3を越え、前記したように302からSO3の処
理へ移行する。However, in such a case, since regular picking has not been performed, it is not appropriate to shift to a note-on operation. Therefore, the above resonance is removed in the SO2 process. That is, in the above case, since the current peak value C is hardly larger than the previous peak value AMP(b), the difference c-AMP(b) is not larger than the resonance removal threshold TRLR3. In this case, it is determined that the above-mentioned resonance state has occurred, and without proceeding to the sound generation process, the current peak value C is simply set to the previous peak value AMP(b) in step 305, and the main routine of FIG. 4A is executed. Return to On the other hand, when normal picking is performed as shown in FIG.
After passing through RLR3, the process moves from 302 to SO3 processing as described above.
(1−−プオンのエントリ )
第5図において、Aは後述するりラテイブオン(再発音
開始)のエントリであり、後述する5TEP4のフロー
からこのSO6ヘジヤンブしてくる。そして、SO6で
は今まで出力している楽音を一度消去(ノートオフ)し
、再発音開始のためにSO3へ進行する。この再発音開
始のための処理は、通常の発音開始のときと同様であり
、前記したとおりである。ここでSO6のノートオフの
処理は、第4A図の前記M2Sでの処理と同じである。(1--Entry of P-ON) In FIG. 5, A is an entry for late-on (start of re-sounding), which will be described later, and jumps to SO6 from the flow of 5TEP4, which will be described later. Then, at SO6, the musical tones that have been output so far are erased (note-off), and the process advances to SO3 to start sounding again. The process for starting the sound again is the same as that for starting the normal sound, and is as described above. Note-off processing at SO6 is the same as the processing at M2S shown in FIG. 4A.
(STEPIの )
次に第6図は、第4A図のメインルーチンのM6として
示すステップl (STEPI)の処理の動作フローチ
ャートである。この処理においては、前記5TEPOに
続くピッチ抽出処理等のための初期設定とそれに続<5
TEP2への移行処理、又はおかしな波形が入力したと
きのダブり処理(エラー処理)等を行う。(STEPI) Next, FIG. 6 is an operational flowchart of the processing of step l (STEPI) shown as M6 of the main routine of FIG. 4A. In this process, the initial settings for the pitch extraction process, etc. following the 5 TEPO, and the subsequent
Performs transition processing to TEP2, or double processing (error processing) when a strange waveform is input.
(藍主軌立〉
まず、前記5TEPOにより、最初のデータに対する初
期設定が行われた後、第4A図のメインルーチンでは、
M2O1→MIO−Mll→M2→M2O1のループの
繰り返しにより、前記ピッチ抽出デジタル回路2(第1
図)から再び割り込みがかかって、レジスタTo、CS
Bに次のデータが入力するのを待っている。(Blue Main Orbit) First, after the initial setting for the first data is performed by the 5TEPO, in the main routine of Fig. 4A,
By repeating the loop of M2O1→MIO-Mll→M2→M2O1, the pitch extraction digital circuit 2 (first
An interrupt occurs again from the register To and CS.
Waiting for the next data to be input to B.
そして、データが入力し、第4A図のM2からM2O1
、M3を経て上記各レジスタの内容が読み込まれると、
M4を介してM6、即ち第6図の5TEP 1に移る。Then, data is input from M2 to M2O1 in Figure 4A.
, M3, and the contents of each of the above registers are read,
The process moves to M6 via M4, that is, 5TEP 1 in FIG.
この状態においては、例えば第12図に示すように、今
回のゼロクロス時刻t=t1、今回正負フラグb=1、
今回ピーク値はb=1より最大ピーク値でC=aOであ
る。In this state, for example, as shown in FIG. 12, the current zero cross time t=t1, the current positive/negative flag b=1,
The peak value this time is the maximum peak value from b=1, and C=aO.
まず、第6図の311を介して(後述する)、Si2に
おいて前記rsTEPOの処理動作」の項における第5
図のSolの説明で述べたのと全く同様に、今回ピーク
値Cの値が、絶対トリガレベルTRLAB (b)より
大きいか否かが判定される。第12図の例では、今回最
大ピーク値C=aOとTRLAB (b)=TRLAB
(1)とが比較され、c = a o > T RL
A B (1) 、即ち判定はYESとなる。First, through 311 in FIG. 6 (described later), the fifth
Just as described in the explanation of Sol in the figure, it is determined whether the current peak value C is greater than the absolute trigger level TRLAB (b). In the example in Figure 12, the current maximum peak value C = aO and TRLAB (b) = TRLAB
(1) is compared, c = a o > T RL
A B (1), that is, the determination is YES.
次に、S13において、レジスタ5TEPに2が書き込
まれて次のステップへの移行準備がなされ、また、S1
4において、レジスタTOの今回のゼロクロス時刻tが
以降の処理のために前回のゼロクロス時刻データTFN
(b)として設定される。更に、315において、レ
ジスタCの今回ピーク値Cが以降の処理のために前回の
ピーク値AMP (b)としてセットされ、第4A図の
メインルーチンのM2の処理に戻る。第12図の例では
、同図に示すようにTFN (1)=t=t、、A M
P (1) = c = a oとなる。なお、MT
の内容は書き替えられず0のままである。Next, in S13, 2 is written to the register 5TEP to prepare for transition to the next step, and in S1
4, the current zero-crossing time t of the register TO is set to the previous zero-crossing time data TFN for subsequent processing.
(b). Furthermore, in step 315, the current peak value C of register C is set as the previous peak value AMP (b) for subsequent processing, and the process returns to step M2 of the main routine of FIG. 4A. In the example of FIG. 12, as shown in the figure, TFN (1)=t=t,, A M
P (1) = c = ao. In addition, MT
The content of is not rewritten and remains 0.
(を工1処理生国立)
第12図のような正常なデジタル出力D1が入力してい
る場合には、前記5TEPOにおいて負(正)側の最小
(大)ピーク値(絶対値)が抽出された後は、5TEP
1において反対に正(負)側の最大(小)ピーク値が
抽出される。従って、第6図の311においては、今回
正負フラグb=1(O)は5TEPOでセットされたフ
ラグMT=O(1)と異なるため、前記したように31
2に進む。(When the normal digital output D1 as shown in Figure 12 is input, the minimum (large) peak value (absolute value) on the negative (positive) side is extracted in the 5 TEPO. After that, 5TEP
1, on the contrary, the maximum (small) peak value on the positive (negative) side is extracted. Therefore, in 311 of FIG. 6, the current positive/negative flag b=1(O) is different from the flag MT=O(1) set in 5TEPO, so as described above, 31
Proceed to step 2.
ところが、場合により、5TEPOO後に5TEPIで
第13図(a)又は(ロ)に示すような波形が入力する
ことがある。この場合、5TEPOで負側の最小ピーク
値bOが抽出された後、5TEP 1で再び負側の最小
ピーク値b1がダブって抽出される。従って、第6図の
S11においては、今回正負フラグはb=oとなり、5
TEPOでセットされたフラグMT=Oと一致する。こ
の場合は、第6図の316に進み、ダブり処理(エラー
処理)を行う。However, in some cases, a waveform as shown in FIG. 13(a) or (b) may be input at 5TEPI after 5TEPOO. In this case, after the minimum peak value bO on the negative side is extracted at 5TEPO, the minimum peak value b1 on the negative side is extracted again at 5TEP1. Therefore, in S11 of FIG. 6, the positive/negative flag this time is b=o, and 5
Matches flag MT=O set in TEPO. In this case, the process advances to 316 in FIG. 6, and duplicate processing (error processing) is performed.
316では、ピーク値Cの値が同じ符号の前回のピーク
値AMP (b)より大きいか否かが判定される。In 316, it is determined whether the value of the peak value C is larger than the previous peak value AMP(b) of the same sign.
今、第13図(a)のような場合、c=b、>AMP
(b)=AMP (0)=bo は成立しない。このよ
うな場合は、今回の最小ピーク値b1はおかしな波形と
して無視しく斜線部)、5TEPは更新せずに、第4A
図のメインルーチンのM2からM2O1の処理に戻り、
次の正常なピークが入力されるのを待つ。Now, in the case as shown in Figure 13(a), c=b,>AMP
(b)=AMP (0)=bo does not hold. In such a case, ignore the current minimum peak value b1 as a strange waveform (the shaded part), do not update 5TEP, and update the 4th A.
Returning from M2 to M2O1 processing in the main routine in the figure,
Wait for the next successful peak to be input.
一方、第13囲い)のような場合、c=bl >APM
(b)=AMP (0)=bOは成立する。このよう
な場合は、前回の5TEPOで抽出した最小ピーク値b
oの方をおかしな波形として無視しく斜線部)、5TE
POにおいてセットされた負側の前回のゼロクロス時刻
データTFN (0)、及び負側の前回のピーク値AM
P (0)の内容を、第6図の314、S15により今
回のゼロクロス時刻を及び今回ピーク値Cと入れ替えて
変更する。On the other hand, in the case like (13th box), c=bl > APM
(b)=AMP (0)=bO holds true. In such a case, the minimum peak value b extracted in the previous 5TEPO
5TE
The previous zero cross time data TFN (0) on the negative side set in PO and the previous peak value AM on the negative side
The contents of P (0) are changed by replacing the current zero cross time and the current peak value C at step 314 and S15 in FIG.
即ち、第13図(ロ)の例では、TFN (0)=t=
t+ 、AMP (0)=c=b+ となる。このダブ
リ処理の後、5TEPは更新せずに(第6図の513を
通らない)、第4A図のメインルーチンのM2からM2
O1の処理に戻り、次の正常なピークが入力されるのを
待つ。That is, in the example of FIG. 13 (b), TFN (0)=t=
t+, AMP (0)=c=b+. After this double processing, 5TEP is not updated (does not pass through 513 in Figure 6), and M2 to M2 in the main routine in Figure 4A is updated.
Return to the process of O1 and wait for the next normal peak to be input.
上記動作の後、正常なピーク値が入力すると、第6図の
5ll−512−313→S 14−515により前記
した処理が行われ、例えば第12図に示すようにt=t
lで、次の5TEP2の処理への移行が行われる。After the above operation, when a normal peak value is input, the above-described processing is performed by 5ll-512-313→S14-515 in FIG. 6, and for example, as shown in FIG. 12, t=t
At step 1, a transition to the next 5TEP2 process is performed.
(STEP2の几 )
次に、第7図は、第4A図のメインルーチンのMTとし
て示すステップ2 (STEP2)の処理の動作フロー
チャートである。この処理においては、ピッチ抽出のた
めの第1回目のピッチ周期の検出、ベロシティ−の設定
、及び5TEP3への移行処理、又はおかしな波形が入
力したときのエラー処理(ダブり処理)等を行う。(STEP 2) Next, FIG. 7 is an operation flowchart of the process of step 2 (STEP 2) shown as MT of the main routine of FIG. 4A. In this process, detection of the first pitch period for pitch extraction, velocity setting, transition processing to 5TEP3, error processing (double processing) when a strange waveform is input, etc. are performed.
(基主軌在)
まず、前記5TEP 1による処理が行われた後、第4
A図のメインルーチンでは、M2O1−Ml0−M1l
→M2−M2O1のループの繰り返しにより、前記ピッ
チ抽出デジタル回路2(第1図)から再び割り込みがか
かって、レジスタTo、C1Bに次のデータが入力する
のを待っている。(Basic main orbit) First, after the processing according to 5TEP 1 is performed, the 4th
In the main routine of figure A, M2O1-Ml0-M1l
By repeating the loop of →M2-M2O1, an interrupt is generated again from the pitch extraction digital circuit 2 (FIG. 1), and the next data is input to the registers To and C1B.
そして、データが入力し、第4A図のM2からM2O1
、M3を経て上記各レジスタの内容が読み込まれると、
M4を介してM7、即ち第7図の5TEP2に移る。こ
の状態においては、例えば第12図に示すように、今回
のゼロクロス時刻t=t2、今回正負フラグb=o、今
回ピーク値はb=oより最小ピーク値でc=b、である
。Then, data is input from M2 to M2O1 in Figure 4A.
, M3, and the contents of each of the above registers are read,
The process moves to M7 via M4, that is, 5TEP2 in FIG. In this state, for example, as shown in FIG. 12, the current zero cross time t=t2, the current positive/negative flag b=o, and the current peak value is the minimum peak value from b=o, which is c=b.
まず、第7図の320を経た後(後述する)の321に
おいては、MCP3がバスBUSを介して第2図の時定
数変換制御回路202内の時定数変換レジスタCH↑R
Rに現在処理をしている弦の開放弦フレット周期CHT
I○をセットする。First, in 321 after passing through 320 in FIG. 7 (described later), the MCP3 connects the time constant conversion register CH↑R in the time constant conversion control circuit 202 in FIG. 2 via the bus BUS.
Open string fret period CHT of the string currently being processed in R
Set I○.
これは、前記「ピッチ抽出デジタル回路の動作」の項の
時定数変換制御回路202の説明において述べたように
、ピーク検出回路201 (第2図)がデジタル出力D
1の波形の立ち上がり時の振動を検知した後は、各ピッ
チ周期の倍音を拾わないヨウに、ピーク検出回路201
内のピークホールド回路から出力されるピークホールド
信号(第10図P+ 、92等)が各弦の開放弦周期、
即ち最低音周期CRTIOの時間経過にて急速減衰する
ようにしたものである。As mentioned in the explanation of the time constant conversion control circuit 202 in the section "Operation of pitch extraction digital circuit", this is because the peak detection circuit 201 (Fig. 2)
After detecting the vibration at the rise of the waveform 1, the peak detection circuit 201 detects the overtones of each pitch period.
The peak hold signal (P+, 92, etc. in Fig. 10) output from the peak hold circuit inside is the open string period of each string,
That is, it is designed to rapidly attenuate as the lowest tone period CRTIO elapses.
次に、S22において、今回ピーク値Cの値が同じ符号
の前回のピーク値AMP (b)の7/8倍より大きい
か否かが判定される。この処理については後に詳述する
が、通常は弦をピッキングした波形はなめらかに自然減
衰するためこの判定はYESとなり、次の323を経て
(後述する)S24に進む。Next, in S22, it is determined whether the current peak value C is larger than 7/8 times the previous peak value AMP (b) of the same sign. This process will be described in detail later, but since the waveform obtained by picking a string normally decays smoothly and naturally, this determination is YES, and the process proceeds to S24 (described later) via the next step 323.
S24では、((今回のゼロクロス時刻t)(同じ符号
の前回のゼロクロス時刻データTFN(b)))を演算
することにより、第1回目のピッチ周期を検出する。そ
してこの結果を、後述する5TEP3でのノートオン(
発音開始)の条件として使用するために、前回周期デー
タTP (b)として設定する。第12図の例では、同
図に示すようにTP (0)=t−TFN (0)=t
z −t。In S24, the first pitch period is detected by calculating ((current zero-cross time t) (previous zero-cross time data TFN(b) of the same sign)). This result is then used as a note-on at 5TEP3 (described later)
This is set as the previous cycle data TP (b) in order to be used as a condition for the start of sound generation. In the example of FIG. 12, as shown in the figure, TP (0)=t-TFN (0)=t
z-t.
となる。becomes.
また、324では、今回のゼロクロス時11 tが以降
の処理のために前回のゼロクロス時刻データTFN (
b)として設定される。第12図の例では、同図に示す
ようにT F N (0) = t = t zとなる
。なお、5TEPOで設定されたTFN (0)=to
は、上記前回周期データTP (b)=TP(0)が演
算できたため必要なくなり消去される。In addition, in 324, the current zero cross time 11 t is the previous zero cross time data TFN (
b). In the example of FIG. 12, T F N (0) = t = tz as shown in the figure. In addition, TFN (0) = to
is no longer needed and is deleted because the previous cycle data TP (b) = TP (0) has been calculated.
同じく、S24では、レジスタ5TEPに3が書き込ま
れて次のステップへの移行準備がなされる。Similarly, in S24, 3 is written in the register 5TEP to prepare for transition to the next step.
更に、324では、以降の処理のために、今回ピーク値
Cと、前回のピーク値AMP (0)、AMP(1)の
うち、最も大きい値をベロシティVELとして設定する
。なお、ベロシティVELは、5TEP3で後述するよ
うに楽音の音量を決定するための値として用いられる。Furthermore, in step 324, the largest value of the current peak value C and the previous peak values AMP(0) and AMP(1) is set as the velocity VEL for subsequent processing. Note that the velocity VEL is used as a value for determining the volume of musical tones, as will be described later in 5TEP3.
同様に、今回ピーク値Cを前回のピーク値AMP (b
)として設定し第4A図のメインルーチンのM2の処理
に戻る。Similarly, the current peak value C is the previous peak value AMP (b
), and the process returns to M2 of the main routine in FIG. 4A.
第12図の例では、VEL=ma x (c、AMP(
0)、AMP (1))=max (b+ 、b
o 、ao)となり、AMP (0)=c=b、 とな
る。In the example of FIG. 12, VEL=max (c, AMP(
0), AMP (1))=max (b+ , b
o, ao), and AMP (0)=c=b.
なお、5TEPOで設定されたAMP(0)=boは、
上記ベロシティVELが演算できたため必要なくなり消
去される。In addition, AMP (0) = bo set in 5TEPO is
Since the velocity VEL has been calculated, it is no longer needed and is deleted.
(l工1処理夏飲止)
第12図のような正常なデジタル出力DIが入力してい
る場合には、前記5TEPIにおいて正(負)側の最大
(小)ピーク値が抽出された後は、5TEP2において
反対に負(正)側の最小(大)ピーク値が抽出される。(1 process 1 processing summer drinking stop) When a normal digital output DI as shown in Figure 12 is input, after the maximum (small) peak value on the positive (negative) side is extracted in the 5 TEPI, , 5TEP2, on the contrary, the minimum (large) peak value on the negative (positive) side is extracted.
従って、この場合の5TEP2におけるピーク値の符号
は5TEP1のときと逆であり、更に、5TEPOのと
きと同じとなり、第7図の320においては、今回正負
フラグb=0 (1)は5TEPOでセットされたフラ
グMT=O(1)と一致し、前記したように321に進
む。Therefore, the sign of the peak value at 5TEP2 in this case is opposite to that at 5TEP1, and is also the same as at 5TEPO, and in 320 of FIG. The flag MT=O(1) matches, and the process proceeds to 321 as described above.
ところが、前記rsTEPlの処理動作」の「ダブり処
理の動作」の項の説明において述べたのと同様に、場合
により波形がダブって、5TEP1の後に第14A図又
は第14B図に示すような波形が入力することがある。However, as described in the section "Duplicate processing operation" in "Processing operation of rsTEPl", in some cases the waveforms are duplicated, and after 5TEP1, the waveform shown in FIG. 14A or 14B is generated. You may enter it.
この場合、5TEP1で正側の最大ピーク値a0が抽出
された後、5TEP2で再び正側の最大ピーク値a、が
ダブって抽出される。従って、第7図の320において
は、今回正負フラグはb=1となり、5TEPOでセッ
トされたフラグMT=Oと一致する。この場合は、第7
図の325に進み、ダブり処理(エラー処理)を行う。In this case, after the maximum peak value a0 on the positive side is extracted at 5TEP1, the maximum peak value a on the positive side is extracted again in duplicate at 5TEP2. Therefore, at 320 in FIG. 7, the positive/negative flag this time is b=1, which matches the flag MT=O set at 5TEPO. In this case, the seventh
Proceeding to 325 in the figure, duplicate processing (error processing) is performed.
なお、第14A図、第14B図において単純斜線のハツ
チを施したピークは、第2図のピーク検出回路201内
のピークホールド回路から発生される第14A図又は第
14B図のピークホールド信号po s pI、qo等
にひっかからなかったため、ピークとして検出されなか
った部分である。Note that the peaks indicated by simple diagonal hatching in FIGS. 14A and 14B are the peak hold signals pos in FIG. 14A or 14B generated from the peak hold circuit in the peak detection circuit 201 in FIG. This is a portion that was not detected as a peak because it did not match pI, qo, etc.
325では、まず、ダブリフラグDUBを1に設定した
後(後述する)、526に進み、今回ピーク値Cの値が
同じ符号の前回のピーク値AMP(b)より大きいか否
かが判定される。In step 325, the double flag DUB is first set to 1 (described later), and then the process proceeds to step 526, where it is determined whether the current peak value C is larger than the previous peak value AMP(b) of the same sign.
今、第14A図において、5TEPO(t=to )、
5TEP 1 (t=t+ )の処理の後、t=t2に
おいて5TEP2が実行された場合、C−J >AMP
(b)=AMP (1)=aoは成立しない。即ち、
第7図の326の判定結果はNOとなる。このような場
合は、今回の最大ピーク値a1はおかしな波形として無
視しく同図のクロス斜線のハツチを施した部分)、5T
EPは更新せ剪に第4A図のメインルーチンのM2から
M2O1の処理に戻り、次の正常なピークが入力される
のを待つ。そして、t=t3において、最小ピーク値c
=b、が入力することにより、第7図の320がYES
となって、第12図の場合と同様に、前記521−→S
22−323−324の処理が行われ、第14A図の
t = t 3で次の5TEP3の処理に進む。なお、
第7図の324において設定される前回周期データTP
(0)は、第14A図に示すように、今回のゼロクロ
ス時刻t3と、5TEPOにおいて設定された前回のゼ
ロクロス時刻toの差になる。また、後述する5TEP
3において演算されるその次の周期データTxの起点は
、同図に示すようにクロス斜線のハツチを施したピーク
(C=a、)が無視されるため、5TEPIにおいて設
定された前回のゼロクロス時刻TFN (1)=t+で
ある。Now, in Figure 14A, 5TEPO (t=to),
After processing 5TEP 1 (t=t+), if 5TEP2 is executed at t=t2, C-J > AMP
(b)=AMP (1)=ao does not hold. That is,
The determination result at 326 in FIG. 7 is NO. In such a case, the current maximum peak value a1 should be ignored as a strange waveform (the cross-hatched area in the same figure), 5T.
The EP returns to the processing from M2 to M2O1 in the main routine of FIG. 4A in order to update, and waits for the next normal peak to be input. Then, at t=t3, the minimum peak value c
By inputting =b, 320 in Fig. 7 becomes YES.
As in the case of FIG. 12, the above 521-→S
22-323-324 are performed, and the process proceeds to the next 5TEP3 at t=t3 in FIG. 14A. In addition,
Previous cycle data TP set at 324 in FIG.
As shown in FIG. 14A, (0) is the difference between the current zero-crossing time t3 and the previous zero-crossing time to set at 5TEPO. In addition, 5TEP described later
The starting point of the next periodic data Tx calculated in step 3 is the previous zero-crossing time set in step 5TEPI, since the peak (C=a,) marked with cross hatching is ignored as shown in the figure. TFN (1)=t+.
一方、第14B図の場合、上記とは逆にc=a。On the other hand, in the case of FIG. 14B, c=a, contrary to the above.
>AMP (b)=AMP (1)=aoは成立する。>AMP (b) = AMP (1) = ao holds true.
即ち、第7図の326の判定結果はYESとなる。That is, the determination result at 326 in FIG. 7 is YES.
このような場合は、前回の5TEP 1で抽出した最大
ピーク値a6の方をおかしな波形として無視しく同図の
クロス斜線のハツチを施した部分)、5TEP 1にお
いてセットされた前回のゼロクロス時刻データTFN(
1)、及び正側の前回のピーク値AMP(1)の内容を
、第7図の529により今回のゼロクロス時刻を及び今
回のピーク値Cと入れ替えて変更する。即ち、第14B
図の例では、同図に示すようにTFN (1)−t−t
2、AMP (1)=c=aoとなる。このダブり処理
の後5TEPは更新せずに第4A図のメインルーチンの
M2からM2O1の処理に戻り、次の正常なピーク値が
入力するのを待つ。以下、t=t3において最小ピーク
値c=b、が入力した後の処理は、前記第14A図の場
合と同じである。ただし、5TEPIにおいて抽出され
たピーク(第14B図のクロス斜線のハツチを施したピ
ークC=ao)が無視され、C=a、のピークに変更さ
れているため、後述する5TEP3において演算される
TP (0)の次の周期データT、の起点は、5TEP
2の前記ダブり処理において設定された前回のゼロクロ
ス時刻TFN(1)=tzとなり、第14A図の場合と
異なる。In such a case, ignore the maximum peak value a6 extracted in the previous 5TEP 1 as a strange waveform (the cross hatched part in the same figure), and use the previous zero cross time data TFN set in 5TEP 1. (
1) and the contents of the previous peak value AMP(1) on the positive side are changed by replacing the current zero cross time and the current peak value C with 529 in FIG. That is, the 14th B
In the example shown in the figure, TFN (1)-t-t
2, AMP (1)=c=ao. After this double processing, 5TEP is not updated and returns to the processing from M2 to M2O1 in the main routine of FIG. 4A, and waits for the next normal peak value to be input. Hereinafter, the processing after the minimum peak value c=b is input at t=t3 is the same as in the case of FIG. 14A. However, since the peak extracted in 5TEPI (peak C = ao with cross hatching in Figure 14B) is ignored and changed to the peak of C = a, the TP calculated in 5TEP3, which will be described later, is ignored. The starting point of the next cycle data T of (0) is 5TEP
The previous zero-cross time TFN(1) set in the duplication process of No. 2 is equal to tz, which is different from the case of FIG. 14A.
以上、第14A図又は第14B図に示すように波形がダ
ブった場合は、ピーク値の小さい方のピークがおかしな
波形として無視され、エラー処理される。As described above, when the waveforms are duplicated as shown in FIG. 14A or 14B, the peak with the smaller peak value is ignored as an abnormal waveform and processed as an error.
次に、ダブり処理の他の場合の処理のための、第7図の
322の分岐について説明を行う。Next, a description will be given of branch 322 in FIG. 7 for processing in other cases of duplicate processing.
今、第7図の5TEP2の処理が実行される場合、弦を
ピッキングした正常な波形はなめらかに自然減衰するた
め、S22において今回ピーク値の値は同じ符号の前回
のピーク値AMP (b)の7/8倍より大きい値とな
り、322の判定はYESとなって次の323に進む。Now, when the process of 5TEP2 in Fig. 7 is executed, the normal waveform of string picking naturally decays smoothly, so the current peak value in S22 is equal to the previous peak value AMP (b) of the same sign. Since the value is larger than 7/8 times, the determination in step 322 is YES and the process proceeds to step 323.
ところが、場合によりc> (7/8)XAMP(b)
が成立しないことがある。第1の場合として、例えば弦
をブリッジに近いところでピンキングすることにより、
立ち上がり時直後のピークとその次のピークの振幅が極
端に変わる場合がある。However, in some cases c> (7/8)XAMP(b)
may not hold true. In the first case, for example, by pinking the strings close to the bridge,
The amplitude of the peak immediately after the rise and the next peak may vary drastically.
このような場合には、波形は正常だがなめらかな減衰波
形とならず、S22の判定結果がNoとなることがおこ
りうる。しかし、このような場合においても、前記第7
図の324の処理を正常に行う必要がある。そして、こ
の場合、波形が正常であるため、前記したようなダブり
は発生しておらず、それ以前に第7図の320から52
5へ分岐していないため、ダブリフラグDUBの値は0
のままである。そこで、第7図の327において、DU
B=1が成立しない場合は、S22の判定結果にかかわ
らず、再びS24の処理に戻り、前記「基本動作」の項
で述べた処理を行う。なお、ダブリフラグDUBは、前
記第5図の5TEPOの304の処理において、その値
がOに初期化されている。In such a case, the waveform may be normal but not smoothly attenuated, and the determination result in S22 may be No. However, even in such a case, the seventh
It is necessary to perform the process 324 in the figure normally. In this case, since the waveform is normal, the above-mentioned duplication does not occur, and before that, from 320 to 52 in FIG.
Since there is no branch to 5, the value of the double flag DUB is 0.
It remains as it is. Therefore, at 327 in FIG.
If B=1 does not hold, regardless of the determination result in S22, the process returns to S24 and the process described in the "basic operation" section is performed. Note that the value of the double flag DUB is initialized to O in the process 304 of 5TEPO in FIG. 5 above.
一方、第7図の322が成立しない第2の場合として、
波形に前記したようなダブリが発生した場合がある。こ
の場合について、第14C図を用いて以下に説明を行う
。On the other hand, as a second case in which 322 in FIG. 7 does not hold,
In some cases, the waveform has the above-mentioned duplication. This case will be explained below using FIG. 14C.
今、第14B図で説明したのと同様に、第14C図に示
すように、S T E P O(t = t o )
、5TEP 1 (t=t+ )の処理の後に、t=t
zにおいて前記ダブり処理が行われ、C=aQのピーク
(同図のクロス斜線のハツチを施したピーク)が除去さ
れ、C=alのピーク(同図の縦線のハツチを施したピ
ーク)が残されたとする。なお、単純な斜線のハツチを
施したピーク(C=a、)は、第14A図又は第14B
図と同様、元々検出されないピークである。Now, in the same way as explained in FIG. 14B, as shown in FIG. 14C, S T E P O (t = t o )
, 5TEP 1 (t=t+), t=t
The above-mentioned duplication process is performed at z, the peak of C=aQ (the peak with hatched cross lines in the same figure) is removed, and the peak of C=al (the peak with hatched vertical lines in the same figure) is removed. Suppose it is left behind. Note that peaks with simple diagonal hatching (C=a) are shown in Figure 14A or 14B.
As in the figure, this is a peak that was originally not detected.
上記のようにダブリが発生すると、次のt = t 3
においては第14C図に示すように正負フラグはb=o
となるため、5TEPOでセットされたフラグMT=O
と一致する。従って、第7図の320から321を介し
て322の処理に進む。ところが、1=13において検
出される今回の最小ピーク値c=b、は、波形がダブっ
たために同じ符号の前回の最小ピーク4aAM P (
0) = b oからかなり離れており、減衰も大きい
。従って、第14図(C)に示すように第7図の322
の判定結果がNOとなる場合がある。When a double occurs as described above, the next t = t 3
As shown in FIG. 14C, the positive/negative flag is b=o
Therefore, the flag MT=O set in 5TEPO
matches. Therefore, the process proceeds to step 322 from step 320 to step 321 in FIG. However, the current minimum peak value c=b detected at 1=13 is the same as the previous minimum peak 4aAM P (
0) = bo It is quite far from o, and the attenuation is large. Therefore, as shown in FIG. 14(C), 322 in FIG.
The determination result may be NO.
上記のような場合は、それ以前のt=tzにおいてダブ
り処理を行っているため、ダブリフラグDUBの値は1
である。従って、第7図の527の判定結果はNOとな
り、528を介して(後述する)S29に進む。In the above case, the duplication flag DUB value is 1 because the duplication process is performed at t=tz before that.
It is. Therefore, the determination result at 527 in FIG. 7 is NO, and the process proceeds to S29 (described later) via 528.
329においては、第14C図のt=t2以後に正常な
波形を獲格して新たに処理をやり直すために、5TBP
Oにおいてセットされた前回のゼロクロス時刻データT
FN (0)、及び負側の前回のピーク値AMP (0
)の内容を、第7図の329により今回のゼロクロス時
刻を及び今回のピーク値Cと入れ替えて変更する。即ち
、第14C図の例では、同図に示すようにTFN (0
)=t−t3.AMP (0)=c=b+ となり、結
局、同図の横線のハツチを施したピーク(c=bo)が
無視される。なお、以降の処理のために、第7図の32
8でダブリフラグDUBはOにリセットされる。これら
の動作の後、5TEPの値は更新せずに第4A図のメイ
ンルーチンのM2からM2O1の処理に戻り、次のピー
クの入力を待つ。In 329, in order to capture a normal waveform after t=t2 in FIG. 14C and start the process again, 5TBP is added.
Previous zero cross time data T set at O
FN (0), and the previous peak value AMP (0) on the negative side
) is changed by replacing the current zero cross time and the current peak value C with 329 in FIG. That is, in the example of FIG. 14C, TFN (0
)=t−t3. AMP (0)=c=b+, and as a result, the peak (c=bo) indicated by the hatched horizontal line in the figure is ignored. In addition, for the subsequent processing, 32 in FIG.
At step 8, the double flag DUB is reset to O. After these operations, the value of 5TEP is not updated and the process returns from M2 to M2O1 in the main routine of FIG. 4A to wait for the next peak input.
そして、上記の場合、第14C図に示すようにt=t4
、t=t5において、第7図の5TEP2が繰り返され
た後、5TEP3に移行する。このような5TEP2の
繰り返し動作については様々なパターンがあるため、そ
の詳細な説明は省略するが、全体の流れとしては正常な
波形を獲得できるようになって、次の5TEP3におい
て用いるためのデータTFN (0)、AMP (0)
、及びTFN (1)、AMP (1)が有効に決定さ
れるように動作した後に、5TEP3に移行する。In the above case, t=t4 as shown in FIG. 14C.
, t=t5, after 5TEP2 in FIG. 7 is repeated, the process moves to 5TEP3. There are various patterns for the repeated operation of 5TEP2, so a detailed explanation will be omitted, but the overall flow is that a normal waveform can be obtained and the data TFN to be used in the next 5TEP3. (0), AMP (0)
, TFN (1), AMP (1) are operated to be validly determined, and then the process moves to 5TEP3.
なお、第14C図のケースでは、TP(0)=j5
L3 、後述する5TEP3において演算されるその次
の周期データ下2の起点は、TFN(1)=t4となる
。In addition, in the case of FIG. 14C, TP(0)=j5
L3, the starting point of the next cycle data lower 2 calculated in 5TEP3, which will be described later, is TFN(1)=t4.
(STEP3の几 )
次に第8図は、第4A図のメインルーチンのM8として
示すステップ3 (STEP3)の処理の動作フローチ
ャートである。この処理においては、ノートオン(発音
開始)処理、ノートオン時の音高設定のためのピッチ周
期の抽出、ベロシティの演算、5TEP4への移行処理
、及びおかしな波形が入力したときのエラー処理等を行
う。なお、本発明に特に関連する処理として、5301
において、弦エンベロープ・データGENVを1にプリ
セットする処理が行われる。(STEP 3) Next, FIG. 8 is an operation flowchart of the process of step 3 (STEP 3) shown as M8 of the main routine of FIG. 4A. This processing includes note-on processing, pitch cycle extraction for pitch setting at note-on, velocity calculation, transition processing to 5TEP4, and error processing when a strange waveform is input. conduct. Note that 5301 is a process particularly related to the present invention.
At , processing for presetting string envelope data GENV to 1 is performed.
(基圭勉在)
まず、前記5TEP3による処理が行われた後、第4A
図のメインルーチンでは、M2O1→M10→Mll→
M2→M2O1のループの繰り返しにより、前記ピッチ
抽出デジタル回路2(第1図)から再び割り込みがかか
って、レジスタTo、C1Bに次のデータが入力するの
を待っている。(Studied by Moto Kei) First, after the processing by the 5TEP3 is performed, the 4A
In the main routine in the figure, M2O1 → M10 → Mll →
By repeating the loop M2→M2O1, an interrupt is generated again from the pitch extraction digital circuit 2 (FIG. 1), and the next data is waited for to be input to the registers To and C1B.
そしてデータが入力し、第4A図のM2からM2O1、
M3を経て上記各レジスタの内容が読み込まれると、M
4を介してM8、即ち第8図の5TEP3に移る。この
状態では、例えば第12図に示すように、今回のゼロク
ロス時刻t=t3、今回正負フラグb=1、今回ピーク
値はb=1より最大ピーク値でc”a、である。Then, data is input, from M2 to M2O1 in Figure 4A,
When the contents of each register above are read through M3, M
4 to M8, that is, 5TEP3 in FIG. In this state, for example, as shown in FIG. 12, the current zero cross time t=t3, the current positive/negative flag b=1, and the current peak value is c''a, which is the maximum peak value from b=1.
まず、第8図の330,331.332を経た後(後述
する)、S33において音量パラメータVELを演算す
る。今、前記rsTEP2の処理動作」の「基本動作」
の項で説明したように、第7図のS24において、過去
3回のピーク値、第12図の例では、ba % ao
% bl の多値(絶対値)のうち最大のものがベロシ
ティVELに格納されている。そこで、第8図の333
において、ベロシティVELと今回ピーク値Cのうち大
きい方を判定し、それを楽音発生回路5で楽音を発生す
るときの新たな音量パラメータVELとする。First, after passing through steps 330, 331, and 332 in FIG. 8 (described later), the volume parameter VEL is calculated in S33. Now, the ``basic operation'' of the rsTEP2 processing operation''
As explained in the section, in S24 of Fig. 7, the past three peak values, in the example of Fig. 12, ba % ao
The maximum value among the multiple values (absolute value) of % bl is stored in the velocity VEL. Therefore, 333 in Figure 8
In this step, the larger of the velocity VEL and the current peak value C is determined, and this is set as the new volume parameter VEL when the musical tone generating circuit 5 generates musical tones.
第12図の例では、V E L = a o 、 c
= a + より、VEL=ma X (ao、a+
〕=ao どなる。In the example of FIG. 12, V E L = a o , c
= a + , VEL=ma X (ao, a+
] = ao yell.
上記動作の後、第8図の同じくS33において、MT−
bとした後(後述する)、S34において、((今回の
ゼロクロス時刻1)−(同じ符号の前回のゼロクロス時
刻データTFN (b)))を演算することにより、ピ
ンチ周期を検出し、前回周期データTP (b)として
設定する。第12図の例では、同図に示すようにTP(
1)=t3 tlとなる。After the above operation, at S33 in FIG.
b (described later), in S34, the pinch period is detected by calculating ((current zero cross time 1) - (previous zero cross time data TFN (b))) of the same sign, and the previous period is Set as data TP (b). In the example of FIG. 12, as shown in the figure, TP (
1)=t3 tl.
続いて、第8図の335〜338を経た後(後述する)
、339において、上記S34で求まった前回周期デー
タTP (b)と、前記第7図の324において設定さ
れた、上記TP (b)とは異極性の前回周期データT
P(T)とが、はぼ同一であるか否かを判定する。そし
て、その判定結果がYESである場合には、ピッチ周期
が安定に抽出され始めたとして、3301を経た後(後
述する)、3302においてノートオンの処理を行う。Subsequently, after going through steps 335 to 338 in Figure 8 (described later)
, 339, the previous cycle data TP (b) obtained in S34 and the previous cycle data T set in 324 of FIG.
It is determined whether P(T) and P(T) are substantially the same. If the determination result is YES, it is assumed that the pitch period has started to be extracted stably, and after 3301 (described later), note-on processing is performed in 3302.
第12図の例では、負側の前回周期データTP(1)=
tz −tl と正側の前回周期データTP(0)=t
z toが、はぼ同一であると判定され、ノートオ
ンの処理に移る。なお、判定結果がNOの場合について
は後述する。In the example of FIG. 12, negative previous period data TP(1)=
tz −tl and positive previous cycle data TP(0)=t
It is determined that z to is almost the same, and the process moves to note-on processing. Note that the case where the determination result is NO will be described later.
5302においては、第8図の333で演算された音量
パラメータVEL及び334で抽出された前回ピッチ周
期TP (b)とに基づいて、対応する音量情報及び音
高情報が生成され、第1図のMIDI−BUS及びイン
タフェースMIDIを介して楽音発生回路5に出力され
る。そして、同回路5では上記各情報に応じた音量及び
音高の楽音がリアルタイムで発生される。このように、
本実施例では第12図のt=t3に示すように波形が立
ち上がってから約1.5周期程度でノートオンするため
、弦の振動波形に良く追従した楽音の発音を行わせるこ
とができる。At 5302, corresponding volume information and pitch information are generated based on the volume parameter VEL calculated at 333 in FIG. 8 and the previous pitch period TP (b) extracted at 334, and The signal is output to the tone generation circuit 5 via the MIDI-BUS and the MIDI interface. Then, the circuit 5 generates musical tones in real time with volume and pitch corresponding to each of the above information. in this way,
In this embodiment, note-on occurs approximately 1.5 cycles after the waveform rises, as shown at t=t3 in FIG. 12, so that musical tones that closely follow the vibration waveform of the string can be generated.
上記ノートオンの処理と共に、第8図のS38及び53
01において、次の5TEP4において用いられるパラ
メータの設定を行った後、3306を経て第4A図のメ
インルーチンのM2の処理に戻り、次の5TEP 4に
移行する。即ち、338において334で抽出された前
回の周期データTP (b)が前回抽出された周期デー
タTTPとしてセットされ、5301において第7図の
5TEP2の324で設定された前回のゼロクロス時刻
データTFN (b)が時刻記憶レジスタTFRにセッ
トされ、今回のゼロクロス時刻データtが有効となった
前回のゼロクロス時刻データTFとしてセットされ、波
形ナンバーカウンクHNCがOにクリアされ、レジスタ
5TEPの値が4に更新され、ノートオンフラグONF
が2(発音状M)にセットされ、定数TTUがO(最低
MIN)にセットされ、定数TTWが最高MAXにセッ
トされ、リラティブオフチエツクのための前回の振幅値
AMRLIがOにクリアされる。また、弦エンベロープ
・データGENVに最大値1をセットする。これらの各
パラメータについては、5TEP4で後述する。Along with the above note-on processing, S38 and 53 in FIG.
After setting the parameters to be used in the next 5TEP4 at step 01, the process returns to step M2 of the main routine in FIG. 4A via step 3306, and moves on to the next 5TEP4. That is, in 338, the previous cycle data TP (b) extracted in 334 is set as the previously extracted cycle data TTP, and in 5301, the previous zero cross time data TFN (b) set in 324 of 5TEP2 in FIG. ) is set in the time memory register TFR, the current zero-crossing time data t is set as the valid previous zero-crossing time data TF, the waveform number counter HNC is cleared to O, and the value of register 5TEP is updated to 4. and the note-on flag is ON.
is set to 2 (voice shape M), constant TTU is set to O (minimum MIN), constant TTW is set to maximum MAX, and the previous amplitude value AMRLI for relative off-check is cleared to O. Also, the string envelope data GENV is set to the maximum value 1. Each of these parameters will be described later in 5TEP4.
(@貨 \゛ の6人の )
前記第8図の334において、前回周期データTP (
b)が検出された場合、このピッチ周期は、対応する弦
を最高フレットで演奏したときの周期より大きい値を有
し、その弦の開放弦周期より小さい値を有するはずであ
る。(6 people of @coin \゛) At 334 in Figure 8 above, the previous cycle data TP (
If b) is detected, this pitch period should have a value greater than the period when the corresponding string is played at the highest fret and less than the open string period of that string.
そこで、周波数上限THL IMという定数として、現
在処理をしている弦の最高音フレットで定まる音高の2
〜3半音上の音高周期を設定し、周波数下限TTLIM
という定数として、同じ弦の開放弦状態で定まる音高の
5半音程度下の音高周期を設定し、第8図の336、S
37において、S34で求まった前回周期データTP
(b)がTHLIMより大きく、かつ、TTLIMより
小さいか否かが判定される。そして、上記判定結果が共
にYESであれば、S39に進んで前記した周期判定処
理を行う。Therefore, we set the frequency upper limit THL IM as a constant, which is 2 of the pitch determined by the highest fret of the string currently being processed.
~ Set the pitch period 3 semitones higher, lower frequency limit TTLIM
As a constant, we set the pitch period about 5 semitones below the pitch determined by the open string condition of the same string, and set it as 336, S in Figure 8.
37, the previous cycle data TP obtained in S34
It is determined whether (b) is larger than THLIM and smaller than TTLIM. If both of the above determination results are YES, the process advances to S39 and the cycle determination process described above is performed.
ここで336、S37の判定結果がNoの場合、S34
で抽出された前回周期データTP (b)は適切な値で
ないことになる。従って、このような場合は、S36又
は337から第4A図のメインルーチンのM2の処理に
戻り5TEP3を繰り返す。Here, if the determination results of 336 and S37 are No, S34
The previous cycle data TP (b) extracted in step 2 is not an appropriate value. Therefore, in such a case, the process returns to step M2 of the main routine in FIG. 4A from S36 or 337 and repeats 5TEP3.
次に、第8図の339において、S34で求まった前回
周期データTP (b)と、これと異極性の前回周期デ
ータTP (b)とが離れた値である場合には、倍音等
を抽出してしまって正確なピッチ周期の抽出を誤った可
能性が高く、ピッチ周期が安定に抽出されていないこと
になる。従って、このような場合は、S39の判定結果
がNoとなり、第4A図のメインルーチンのM2の処理
に戻り5TEP3を繰り返す。Next, at 339 in FIG. 8, if the previous cycle data TP (b) obtained in S34 and the previous cycle data TP (b) of a different polarity are different values, overtones etc. are extracted. There is a high possibility that the accurate pitch period was extracted incorrectly, and the pitch period was not extracted stably. Therefore, in such a case, the determination result in S39 becomes No, and the process returns to M2 of the main routine in FIG. 4A and repeats 5TEP3.
ここで、上記動作により5TEP3を繰り返す場合、通
常の波形においては第4A図のM2、M2O1、M3を
介して新たに検出されるピークは、その極性が交互に切
り替わってbの値が0と1で交互に反転し、また、第8
図の333においてフラグMTの値が交互に変更され、
同じくS34においてTP (b)が新たに演算され、
TFN (b)の内容も書き替えられる。従って、S3
6、S37の判定は、最も新しく求まったピッチ周期に
対して行われ、更に、S39における判定は、最も新し
く求まったピッチ周期と、その1つ前(約半周期前)の
異極性側のピッチ周期とに対して行われ、ピッチ周期が
安定に抽出できた時点で前記ノートオンの処理へ移行す
ることになる。Here, when 5TEP3 is repeated by the above operation, in the normal waveform, the newly detected peaks through M2, M2O1, and M3 in FIG. The 8th
At 333 in the figure, the value of the flag MT is changed alternately,
Similarly, in S34, TP (b) is newly calculated,
The contents of TFN (b) are also rewritten. Therefore, S3
6. The determination in S37 is performed on the most recently determined pitch period, and the determination in S39 is performed on the most recently determined pitch period and the pitch on the opposite polarity side one period before it (approximately half a period before). When the pitch period can be stably extracted, the process moves to the note-on process.
また、その都度、第8図の333において、ベロシティ
VELが新しく検出されたピークに対応するように更新
される。Each time, the velocity VEL is updated at 333 in FIG. 8 to correspond to the newly detected peak.
(ノイズ、 几 の重 〉
第8図のS31の処理は、波形の立ち上がり部分にノイ
ズが発生した場合に対処するための処理である。今、例
えば第15図に示すように、5TEPO11,2におい
てノイズによるピークaO2bOsa1等が検出されて
しまった場合、これらのノイズの周期を検出して発音開
始を指示すると、全くおかしな楽音を発音してしまう。(Noise, weight of noise) The process of S31 in Figure 8 is a process to deal with the case where noise occurs in the rising part of the waveform.Now, for example, as shown in Figure 15, in 5TEPO11,2 If peaks aO2bOsa1 etc. due to noise are detected, if the period of these noises is detected and an instruction is given to start sound generation, a completely strange musical tone will be produced.
そこで、第8図の331においては、連続するピーク値
が大きく変化した場合には、ノイズが発生していると判
断して異常検知フラグXを1にセットし、S35におい
てNOの判定をさせることにより、ノイズ部分に基づい
てノートオンしないようにしている。Therefore, in step 331 of FIG. 8, if the successive peak values change significantly, it is determined that noise has occurred, the abnormality detection flag X is set to 1, and a NO determination is made in S35. This prevents note-ons from being triggered based on noise.
具体的には、今回ピーク値Cを1/8した値が、それと
同符号の前回ピーク値AMP (b)より小さければ正
常であると判断してX=0とし、そうでなければX=1
とする。そして、S35においてX=0でないと判定さ
れた場合は、第4A図のメインルーチンのM2の処理に
戻り5TEP3を繰り返す。この場合、第8図の332
において前回ピーク値AMP (b)が順次更新される
ため、S31における処理は、最も新しく検出されたピ
ーク値とその直前の同符号のピーク値とに対して行われ
、連続するピーク値が大きく変化しなくなった時点で前
記ノートオンの処理へ移行することになる。第15図の
例では、t ” t、 3 、、 t = t a共に
S31でX=1となってまうためノートオンせず、t=
t5において初めて正常なピークが入力したと判断され
るためX=0となり、t=t5でノートオンする。そし
て、この場合は、連続するビソチ周期TP (b)とT
P (b)は正常な値となっている。Specifically, if the value obtained by dividing the current peak value C by 1/8 is smaller than the previous peak value AMP (b) of the same sign, it is determined to be normal and X = 0; otherwise, X = 1.
shall be. If it is determined in S35 that X is not 0, the process returns to step M2 of the main routine in FIG. 4A and repeats 5TEP3. In this case, 332 in Figure 8
Since the previous peak value AMP (b) is updated sequentially in S31, the process in S31 is performed on the most recently detected peak value and the immediately preceding peak value with the same sign. When the note-on process is no longer performed, the process shifts to the note-on process. In the example of FIG. 15, since t '' t, 3,, t = t a both become X = 1 in S31, no note-on is performed, and t = t.
Since it is determined that a normal peak has been input for the first time at t5, X=0, and note-on occurs at t=t5. In this case, consecutive bisochi periods TP (b) and T
P (b) is a normal value.
<11]411彰肱毘〉
第8図の330の判定処理は、ダブり処理のための判定
である。今、第12図のような正常な波形Dlが入力し
ている場合には、t =t 3における今回正負フラグ
b=iは、フラグMT=Oと一致せず、前記したように
331へ進む。<11] 411 正肱Bi> The determination process 330 in FIG. 8 is a determination for duplicate processing. Now, if a normal waveform Dl as shown in FIG. 12 is input, the current positive/negative flag b=i at t=t3 does not match the flag MT=O, and the process proceeds to 331 as described above. .
ところが、前記rsTEP 1の処理動作」又はrST
EP2の処理動作」の「ダブり処理の動作」の項の説明
において述べたのと同様に、波形がダブった場合、第8
図の330の判定結果はNoとなる。However, the processing operation of rsTEP 1" or rST
Similarly to the explanation in the section "Double processing operation" in "Processing operation of EP2", if the waveform is duplicated, the 8th
The determination result at 330 in the figure is No.
そして、ダブったピークのピーク値Cの方が、それと同
符号の直前のピーク値AMP (b)より小さい場合は
、第8図の3303の判定結果がNOとなることにより
そのダブったピークを無視し、第4A図のM2の処理に
戻った後5TEP3を繰り返す。これは、第14A図の
場合等と同様の考え方による。If the peak value C of the double peak is smaller than the previous peak value AMP (b) of the same sign, the determination result of 3303 in Figure 8 is NO and the double peak is ignored. After returning to the process of M2 in FIG. 4A, 5TEP3 is repeated. This is based on the same concept as in the case of FIG. 14A.
これに対して、ダブったピークのピーク値Cの方が大き
かった場合は、5303の判定結果はYESとなり、5
304の処理へ進む、そして、5304では直前のピー
クの方を無視して、AMP (b)の内容を今回のピー
ク値Cに設定し直し、ベロシティVELをその値を使っ
て計算し直した後、第4A図のM2に戻って5TEP3
を繰り返す。これは、第14B図の場合等と同様の考え
方による。On the other hand, if the peak value C of the duplicated peak is larger, the determination result of 5303 is YES, and 5
Proceed to the process in 304, and in 5304, ignore the previous peak, reset the contents of AMP (b) to the current peak value C, and recalculate the velocity VEL using that value. , return to M2 in Figure 4A and 5TEP3
repeat. This is based on the same concept as in the case of FIG. 14B.
以上の処理の後、正常なピークが入力することにより、
S30の判定結果がYESとなり、更に、335、S3
6、S37及びS39等の各判定結果がYESとなるこ
とにより、前記ノートオンの処理が行われ、楽音の発音
が開始されることになる。After the above processing, by inputting normal peaks,
The determination result of S30 is YES, and further, 335, S3
6, S37, S39, etc. are YES, the note-on process is performed and the sound generation of musical tones is started.
(STEP4の几 )
次に、第9図は、第4A図のメインルーチンのM9とし
て示すステップ4 (STEP4)の処理の動作フロー
チャートである。この処理においては、ピッチ抽出・変
更処理、本発明に直接関連するエンベロープ制御処理、
リラティブオン・リラティブオフの処理、ピッチ周期不
適時の処理、及びダブり処理等を行う。まず、ピッチ抽
出・変更処理及びエンベロープデータの抽出処理におい
ては、ピッチ抽出のみを行うルート■、実際にピッチ変
更を行うと共にエンベロープデータの抽出を行うルート
■があり、通常は新たなピークが入力する毎に交互に繰
り返す。(STEP 4) Next, FIG. 9 is an operation flowchart of the process of step 4 (STEP 4) shown as M9 of the main routine of FIG. 4A. In this processing, pitch extraction/change processing, envelope control processing directly related to the present invention,
Performs relative-on/relative-off processing, processing when the pitch cycle is inappropriate, and duplication processing. First, in pitch extraction/change processing and envelope data extraction processing, there are two routes: one that only extracts the pitch, and one that actually changes the pitch and extracts envelope data. Usually, a new peak is input. Repeat each time alternately.
(止二上史生軌在)
先ず、340、S41.342、S63〜S67に示す
ルートのについて説明する。S40において、波形ナン
バーカウンタHNC>3が判断され、YESの場合には
341に進む、S41では、リラティブオンしきい値T
RLRL< (今回ピーク値C−同じ符号の前回のピー
ク値AMP(b))かどうかが判断が行われ、NOの場
合にはS42に進む(YESの場合は後述する)。(Shoji Kamisho's trajectory) First, the routes shown in 340, S41, 342, and S63 to S67 will be explained. In S40, it is determined that the waveform number counter HNC>3. If YES, the process proceeds to 341. In S41, the relative on threshold T
It is determined whether RLRL<(current peak value C - previous peak value AMP(b) of the same sign). If NO, the process advances to S42 (if YES, this will be described later).
342では今回正負フラグb=フラグMTつまりピッチ
変更側かどうかが判断され、YESの場合にはS43に
進む。At 342, it is determined whether the current positive/negative flag b=flag MT, that is, whether it is the pitch change side, and if YES, the process advances to S43.
ところで、初期状態では、前記波形ナンバーカウンタH
NCはOである(第8図の3301参照)ので、S40
ではNoの判断をしてS42へ進む。By the way, in the initial state, the waveform number counter H
Since NC is O (see 3301 in Figure 8), S40
Then, the determination is No and the process proceeds to S42.
そして、例えば第12図のような波形入力の場合は、t
”” t aにおいてb=oでMT=1(第8図の5
TEP3の333で書き替えられている)であるから、
342から363へ進む。For example, in the case of a waveform input as shown in Fig. 12, t
"" t a, b=o and MT=1 (5 in Figure 8)
(rewritten in 333 of TEP3), so
Proceed from 342 to 363.
S63においては、同じ極性のピークが続けて入力され
てきているか(ダブりであるか)、否かチエツクするた
めに、レジスタRIV=1かどうかが判断され、YES
の場合(ピークがダブった場合)には36Bに進んでダ
ブり処理を行い(後述する)、また、Noの場合(ダブ
りでない場合)には364に進み、ここで以下の処理が
行われる。In S63, in order to check whether peaks of the same polarity are being input consecutively (duplicate), it is determined whether register RIV=1, and YES is determined.
In the case of No (if the peaks are duplicated), the process advances to 36B and double processing is performed (described later), and in the case of No (in the case of no duplication), the process advances to 364, where the following processing is performed.
即ち、S64では今回ピーク値Cが前回のピーク値AM
P (b)に入力され、リラティブオフ処理(後述する
)のために前回の振幅値AMRLIが前々回の振幅値A
MRL2に入力される。なお、始めはAMRLIの内容
はOである。、(第8図の5TEP3の5301参照)
。That is, in S64, the current peak value C is the previous peak value AM.
P (b), and the previous amplitude value AMRLI is input to the previous amplitude value A for relative off processing (described later).
Input to MRL2. Note that initially, the content of AMRLI is O. , (see 5301 of 5TEP3 in Figure 8)
.
更に、S64において、異符号の前回のピーク値AMP
Cb)と今回ピーク値Cのうちいずれか大きい値が前
回振幅値AMRLIに入力される。Furthermore, in S64, the previous peak value AMP with the opposite sign
Cb) and the current peak value C, whichever is larger is input to the previous amplitude value AMRLI.
つまり、周期の中で2つある正、負のピーク値について
大きい値のピーク値が振幅値AMRLIにセットされる
。That is, among the two positive and negative peak values in the cycle, the larger peak value is set to the amplitude value AMRLI.
そして、S65で波形ナンバンーカウンタHNC>8か
どうかが判断され、ここで波形ナンバーカウンタ(ピッ
チ変更側でないゼロクロスカウンタ)HNCが+1され
、カンウドアップされる。Then, in S65, it is determined whether the waveform number counter HNC>8, and here the waveform number counter (zero cross counter not on the pitch change side) HNC is incremented by +1.
従って、波形ナンバーカウンタHNCは、上限が9とな
る。そして、365もしくはS66の処理の後S67へ
進行する。Therefore, the upper limit of the waveform number counter HNC is 9. After processing 365 or S66, the process advances to S67.
S67では、レジスタRIVを1とし、今回のゼロクロ
ス時刻tから時刻記憶レジスタTFRの内容を引算して
、周期レジスタTTRへ入力する。In S67, the register RIV is set to 1, the contents of the time storage register TFR are subtracted from the current zero-crossing time t, and the result is input to the period register TTR.
この周期レジスタTTRは、第12図の例では周期情報
T T R= t T F R= t 4 t
zを示す。In the example of FIG. 12, this period register TTR is period information TTR=tTFR=t4t
Indicates z.
そして、今回のゼロクロス時刻tは、時刻記憶レジスタ
TFRへセーブされ、この後、第4A図のメインルーチ
ンのM2の処理に戻る。The current zero-crossing time t is then saved in the time storage register TFR, and then the process returns to M2 of the main routine in FIG. 4A.
以上述べたようにルートのは、第12図の例によれば以
下のような処理がなされる。即ち、MT=1≠b、RI
V=O1A M P (0) −c = b z、AM
RL 2→AMRL1=0、AMRLI4−max (
AMP (1)=3. 、c=bz (のいずれか大
きい方)) 、HNC−(HNC+1)=1、RIV−
1、T T R4−(t T F R) −(t a
−tz ) 、TFR−t=t4となる。従って、
周期レジスタTTRに前回の同極性のゼロクロス点t=
t2 (STEP2−3の変化時点)から今回のゼロク
ロス点t =t aまでの時刻情報の差つまり、周期情
報が求まったことになる。そして、第4A図のメインル
ーチンのM2からM2O1の処理へ戻り、次のピークが
入力するのを待つ。As described above, according to the example of FIG. 12, the following processing is performed for the root. That is, MT=1≠b, RI
V=O1A M P (0) −c = b z, AM
RL 2→AMRL1=0, AMRLI4-max (
AMP (1)=3. , c=bz (whichever is larger)), HNC-(HNC+1)=1, RIV-
1, T T R4-(t T F R) -(t a
-tz), TFR-t=t4. Therefore,
The previous zero-crossing point of the same polarity t= in the period register TTR
The difference in time information from t2 (the time of change in STEP 2-3) to the current zero crossing point t = t a, that is, the period information has been found. Then, the process returns from M2 to M2O1 in the main routine of FIG. 4A, and waits for the next peak to be input.
(土二上Q公軌在〉
次に、540−362に示すルート■へ進んだ場合の説
明を行なう、いま、波形ナンバーカウンタHNC−1な
ので(366参照)、S40から342へ進む(S40
については後述する)。(Tsuchifugami Q public orbit) Next, we will explain what happens when you proceed to route ■ shown in 540-362. Since the waveform number counter is HNC-1 (see 366), proceed from S40 to 342 (S40
(will be discussed later).
342では、例えば第12図のような場合、MT冨L
b=1なのでYESとなり、343へ進む。342, for example in the case shown in FIG.
Since b=1, the answer is YES and the process proceeds to 343.
S43では、レジスタRIV=1かどうかが判断される
。既にルートのにおいて、レジスタRIVは1とされて
いる(S67参照)ので、S43の判断はYESとなり
、344へ進む。なお、S43の判定結果がNOとなる
場合のダブり処理については後述する。In S43, it is determined whether register RIV=1. Since the register RIV has already been set to 1 in the root (see S67), the determination in S43 is YES and the process advances to 344. Note that the duplication process when the determination result in S43 is NO will be described later.
344では、レジスタ5TEP=4かどうかが判断され
、YESの場合には345に進む(NOの場合について
は後述する)。S45では、今回ピーク値c<60H(
Hは16進法表現を示す)かどうかが判断され、値の大
きなピーク値が入力した場合は、この判定結果はNoと
なり、347に進む。これに対して、値が60f(より
小さい場合は、YESとなりS46に進む。At 344, it is determined whether the register 5TEP=4, and if YES, the process advances to 345 (the case of NO will be described later). In S45, the current peak value c<60H (
H indicates a hexadecimal representation), and if a large peak value is input, the result of this determination is No, and the process proceeds to 347. On the other hand, if the value is smaller than 60f, the answer is YES and the process proceeds to S46.
S46では、前々回の振幅値(ピーク値)AMRL2−
前回の振幅値(ピーク値)AMRLI≦(1/32)x
前々回の振幅値(ピーク値)AMRL2かどうかが判断
され、YESの場合にはS47に進み、リラティブオフ
カウンタFOFRが0にセットされる。NOの場合には
、5−74に進みリラティブオフの処理が行われる。こ
のリラテイブオフの処理については後述する。In S46, the amplitude value (peak value) AMRL2-
Previous amplitude value (peak value) AMRLI≦(1/32)x
It is determined whether the amplitude value (peak value) AMRL2 from the time before the previous time is reached, and if YES, the process proceeds to S47, where the relative off counter FOFR is set to 0. In the case of NO, the process advances to 5-74 and relative off processing is performed. This relative-off processing will be described later.
348では周期計算が行われる。具体的には、(今回の
ゼロクロス時刻を一部面のゼロクロス時刻データTF)
が今回の周期情報11としてレジスタTOTOにセット
される。そして、349に進む。At 348, period calculation is performed. Specifically, (this zero cross time is one part of the zero cross time data TF)
is set in the register TOTO as the current cycle information 11. Then, proceed to 349.
S49では、今回の周期情報11>周波数上限THLI
M(発音開始後の上限)かどうかが判断され、YESの
場合はS50に進む(NOの場合は後述する)。349
の周波数上限THLIMは、第8図の5TEP3の53
6で使用したトリガ時(発音開始時)の周波数の許容範
囲の上限(従って周期として最小で、最高音フレットの
2〜3半音上の音高周期に相当する)と同一のものであ
る。In S49, current cycle information 11 > frequency upper limit THLI
It is determined whether it is M (the upper limit after the start of sound generation), and if YES, the process advances to S50 (if NO, this will be described later). 349
The upper frequency limit THLIM is 53 of 5TEP3 in Figure 8.
This is the same as the upper limit of the permissible range of the frequency at the time of trigger (at the start of sound generation) used in No. 6 (therefore, it is the minimum period and corresponds to the pitch period 2 to 3 semitones above the highest fret).
次に、S50では以下の処理が行われる。即ち、レジス
タRIVをOにし、今回のゼロクロス時刻計が前回のゼ
ロクロス時刻データTFとして入力され、また前回のピ
ーク値AMP (b)が前々回ピーク値eに入力され、
さらに今回ピーク値Cが前回のピーク値AMP (b)
に入力される。Next, in S50, the following processing is performed. That is, the register RIV is set to O, the current zero cross time meter is input as the previous zero cross time data TF, and the previous peak value AMP (b) is input as the peak value e from the time before the previous one.
Furthermore, the current peak value C is the previous peak value AMP (b)
is input.
そして、S50の処理の後551に進み、S51では、
周波数下111TLLIM>今回の周期情報11かどう
かが判断され、YESの場合即ち今回の周期がノートオ
ン中のピッチ抽出音域下限以下になった場合にはS52
に進む。この場合、周波数下限TLLIMは、例えば、
開放弦音階の1オクターブ下にセットされる。つまり、
第8図の5TEP3の周波数下限TTLIM(337参
照)に比較して、許容範囲を広くしている。このように
することで、トレモロアームの操作などによる周波数変
更に対応し得るようになる。After the processing in S50, the process proceeds to 551, and in S51,
It is determined whether the frequency lower 111 TLLIM > current cycle information 11, and if YES, that is, if the current cycle is below the lower limit of the pitch extraction range during note-on, S52
Proceed to. In this case, the frequency lower limit TLLIM is, for example,
It is set one octave below the open string scale. In other words,
The allowable range is wider than the frequency lower limit TTLIM (see 337) of 5TEP3 in FIG. By doing this, it becomes possible to respond to frequency changes by operating the tremolo arm, etc.
上記動作により、周波数の上限、下限について許容範囲
に入る場合についてのみS52まで進み、そうでない場
合は349.351より第4A図のメインルーチンのM
2からM2O1の処理に戻って次のピークの入力を待つ
。As a result of the above operation, the process proceeds to S52 only if the upper and lower limits of the frequency fall within the permissible range, and if not, proceed to step S52 of the main routine of FIG.
2 returns to the M2O1 process and waits for the next peak to be input.
次に、S52では周期データTTPが前々回抽出された
周期データhに入力され、また、今回の周期情報11が
前回抽出された周期データTTPに入力される。Next, in S52, the cycle data TTP is input to the cycle data h extracted two times before, and the current cycle information 11 is input to the cycle data TTP extracted last time.
S53、S54では2波3値一致条件が判断される。3
53では、今回の周期情報ttX2−7>今回の周期情
報11−前々同周期データh1が判断され、YESの場
合には354に進み、また354では、今回の周期情報
ttX2−7>1今回の周期情報11−周期レジスタT
TRの内容1が判断され、YESの場合には355に進
む。即ち、S53では、第12図の例の場合、今回の周
期情報tt=ts t:+ (348参照)が、前
回の周期データh = T T P = t 3
t I(S 52参照)の値とほぼ一致するか否かを判
断し、354では、今回の周期情報tt”’ts L
xが、それに重なる周期TTR=t4 tz (S
67参照)とほぼ一致するか否かを判断する。なお、そ
の限界範囲は、2−?・11として、周期情報に依存し
てその値が変わるようになっている。勿論、これは固定
の値としてもよいが、本実施例採用技術の方が良好な結
果を得ることができる。In S53 and S54, two-wave three-value matching conditions are determined. 3
In 53, it is determined that current cycle information ttX2-7>current cycle information 11-same cycle data h1 before the previous one, and if YES, the process advances to 354, and in 354, current cycle information ttX2-7>1 this time period information 11-period register T
Content 1 of the TR is determined, and if YES, the process proceeds to 355. That is, in S53, in the case of the example shown in FIG. 12, the current cycle information tt=ts t:+ (see 348) is changed from the previous cycle data h = T T P = t 3
It is determined whether or not it almost matches the value of t I (see S52), and in 354, the current cycle information tt"'ts L
The period over which x overlaps TTR=t4 tz (S
67)). In addition, the limit range is 2-? - As 11, the value changes depending on the period information. Of course, this may be a fixed value, but better results can be obtained with the technique adopted in this embodiment.
355では、エンベロープ制御処理が行われる。At 355, envelope control processing is performed.
この部分は、本実施例の最も特徴とする処理である。す
なわち、まず、現在のピーク値と前回のピーク値の平均
値を演算し、その値とベロシティ■ELとの比を演算し
て、弦エンベロープ・データGENVc!:する。すな
わち、GENV= (AMP(0)+AMP (1))
/(2−VEL)が演算される。今、第12図の例の場
合、AMP (0)は最小ピーク値b2であり、AMP
(1)は最小ピーク値aZ (共に絶対値)である。This part is the most characteristic process of this embodiment. That is, first, the average value of the current peak value and the previous peak value is calculated, and the ratio between that value and the velocity ■EL is calculated, and the string envelope data GENVc! :do. That is, GENV= (AMP(0)+AMP(1))
/(2-VEL) is calculated. Now, in the case of the example in FIG. 12, AMP (0) is the minimum peak value b2, and AMP
(1) is the minimum peak value aZ (both absolute values).
従って、これら2つの値の平均値のベロシティVELに
対する比は、現在のデジタル出力DIが立ち上がり当初
に比較してどの程度減衰しているかという弦振動のエン
ベロープ情報を表している。そして、本実施例では、こ
のようにして求めた弦エンベロープ・データGENVに
基づいて、以下に示す楽音のエンベロープ制御を行う。Therefore, the ratio of the average value of these two values to the velocity VEL represents envelope information of the string vibration, which indicates how much the current digital output DI is attenuated compared to when it started. In this embodiment, the following musical tone envelope control is performed based on the string envelope data GENV obtained in this manner.
すなわち、上記のようにして弦エンベロープ・データG
ENVが演算されたら、このデータは第1図のMCP3
から弦エンベロープラッチ12にセットされる。そして
、この処理は、第9図S40〜S62のルート■の処理
が繰り返されてS55の処理が繰り返される毎に実行さ
れ、その結果、新たに演算された上記弦エンベロープ・
データGENVが演算され、順次弦エンベロープラッチ
12にラッチされる。That is, as described above, the string envelope data G
Once ENV is calculated, this data is converted to MCP3 in Figure 1.
and is set to the string envelope latch 12. This process is executed each time the process of route (2) of S40 to S62 in FIG. 9 is repeated and the process of S55 is repeated, and as a result, the newly calculated string envelope
Data GENV is calculated and sequentially latched into the string envelope latch 12.
更に、上記処理と並行して、エンベロープ発生向111
1でもシンセ・エンベロープ・データ5ENVが生成さ
れる。Furthermore, in parallel with the above processing, the envelope generation direction 111
1, synth envelope data 5ENV is generated.
以上のように、まず、第9図のルート■及びルート■の
処理が繰り返されることにより、楽音の発音動作が進行
するが、そのときに第1図の楽音発生回路5から乗算器
6を介して発音される楽音のエンベロープについてみる
と、上記弦エンベロープラッチ12に順次セットされる
弦エンベロープ・データGENVとエンベロープ発生回
路11で生成されるシンセ・エンベロープ・データ5E
NVとに対して、それぞれ乗算器13及び14において
予め設定された係数が乗算され、加算器7で混合されて
混合エンベロープ・データKENVが生成される。この
とき、乗算器13及び14で乗算される各係数は、前述
の如く第4A図M2のキー制御処理において予め設定さ
れる(第48図M23)。これにより、例えば、第11
A図(a)のようなシンセ・エンベロープ・データ5E
NVと、第1図のピッチ抽出デジタル回路2からMCP
3を介して検出され弦エンベロープラッチ12に順次セ
ットされる第11A図(b)のような弦エンベロープ・
データGENVとに対し、演奏者が予め設定した設定値
に基づく各係数が乗算器13及び14で乗算され、その
割合で混合された混合エンベロープ・データKENVが
、加算器7から第11A図(C)の如く得られる。As described above, first, by repeating the processes of route ■ and route ■ in FIG. 9, the musical tone generation operation proceeds. Regarding the envelope of the musical tone produced by the above string envelope latch 12, the string envelope data GENV is sequentially set in the string envelope latch 12, and the synth envelope data 5E generated by the envelope generation circuit 11.
NV are multiplied by preset coefficients in multipliers 13 and 14, respectively, and mixed in adder 7 to generate mixed envelope data KENV. At this time, each coefficient to be multiplied by the multipliers 13 and 14 is set in advance in the key control process of M2 in FIG. 4A as described above (M23 in FIG. 48). This allows, for example, the 11th
Synth envelope data 5E as shown in Figure A (a)
NV and MCP from the pitch extraction digital circuit 2 in FIG.
11A (b), which are detected through the string envelope latch 12 and sequentially set in the string envelope latch 12.
The data GENV is multiplied in multipliers 13 and 14 by each coefficient based on a set value preset by the performer, and the mixed envelope data KENV mixed at that ratio is sent from the adder 7 to the mixed envelope data KENV shown in FIG. 11A (C ) can be obtained as follows.
上記エンベロープ特性が、楽音発生回路5から出力され
る楽音信号に、乗算器6を介して付加されるため、演奏
者は設定値を予め設定することにより、発音される楽音
のエンベロープを、シンセサイザ固有のエンベロープか
らギターの弦振動のエンベロープまで段階的に変化させ
ることができる。The above-mentioned envelope characteristics are added to the musical tone signal output from the musical tone generating circuit 5 via the multiplier 6, so the performer can adjust the envelope of the musical tone to be generated by setting the setting value in advance, which is unique to the synthesizer. The envelope can be changed in stages from the envelope of the guitar string vibration.
次に、第9図に戻りS56では、ノーチェンジレベルN
CHLV> (前々回ピーク値e−今回ピーり値C)か
どうかの判断が行われ、YESの場合には357に進む
。即ち、前回の同極性のピーク値(e=AMP (b)
)と今回のピーク値Cとが大きく変化している場合は、
その差がNCHLVを越えることになり、そのようなと
きに、抽出された周期情報に基づきピッチ変更を行なう
と、不自然な音高変化を呈することになる可能性が高い
。そこで、S56でNoの判断がなされると、S57以
降の処理をすることなく、第4A図のメインルーチンの
M2からM2O1の処理へ戻り、次のピークの入力を待
つ。Next, returning to FIG. 9, in S56, the no-change level N
CHLV> (Peak value e from the previous time - Peak value C this time) is determined, and if YES, the process proceeds to 357. That is, the previous peak value of the same polarity (e=AMP (b)
) and the current peak value C have changed significantly,
The difference exceeds NCHLV, and in such a case, if the pitch is changed based on the extracted period information, there is a high possibility that an unnatural pitch change will occur. Therefore, if a negative determination is made in S56, the process returns from M2 to M2O1 in the main routine of FIG. 4A without performing the processes from S57 onwards, and waits for the input of the next peak.
次に、S56でYESの場合は、リラティブオフカウン
タFOFR=Oか否かが判断される。後述するりラティ
ブオフ処理を行っているときは、リラティブオフカウン
タFOFRはOでなくなっており、そのような場合はピ
ッチ変更(S61を参照)の処理を行なうことなく、3
57でNOの判断をして第4A図のメインルーチンのM
2の処理ヘリターンする。そして、357にて、YES
の判断をしたときは、S58へと進む。Next, if YES in S56, it is determined whether the relative off counter FOFR=O. When performing relative off processing, which will be described later, the relative off counter FOFR is no longer O, and in such a case, the pitch change (see S61) is not performed and the relative off counter FOFR is 0.
After determining NO in step 57, proceed to M of the main routine in Figure 4A.
Return to step 2. And at 357, YES
When the determination is made, the process advances to S58.
次の358では、今回の周期情報11>定数TTUかど
うかが判断され、YESならばS59へ進み、ここで今
回の周期情報11<定数TTWかどうかが判断され、Y
ESならばS60へ進む。In the next step 358, it is determined whether the current cycle information 11>constant TTU, and if YES, the process advances to S59, where it is determined whether the current cycle information 11<constant TTW, and Y
If it is ES, proceed to S60.
なお、S58、S59でNoと判定される場合について
は後述する。Note that the case where the determination is No in S58 and S59 will be described later.
S60では、レジスタ5TEP=4であるのかどうかの
判断が行われ、YESの場合にはS61に進む。In S60, it is determined whether register 5TEP=4, and if YES, the process advances to S61.
561では、第1図のMCP3から楽音発生回路5ヘピ
ツチ変更(今回の周期情報11に基づく)が行われ、S
62に進む。561, the pitch is changed from MCP3 in FIG. 1 to musical tone generation circuit 5 (based on the current cycle information 11), and S
Proceed to step 62.
S62では、今回の周期情報11に対応して時定数チェ
ンジをし、また定数TTUが(17/32)X今回の周
期情報11に書替えられ、さらに定数TTWが(31/
16)X今回の周期情報tLに書き替えられる。In S62, the time constant is changed corresponding to the current cycle information 11, and the constant TTU is rewritten to (17/32) x the current cycle information 11, and the constant TTW is changed to (31/32).
16)X is rewritten to the current cycle information tL.
また、後述するように、リラティブオフの処理がなされ
たときに限り、5TEP=5となるが、そのときはS6
0から362に直接進み、361でピッチ変更を行なう
ことなく、S62で時定数チェンジを行なう。In addition, as will be described later, 5TEP=5 only when relative off processing is performed, but in that case, S6
Proceeding directly from 0 to 362, the time constant is changed in S62 without changing the pitch in 361.
上記時定数チェンジの処理とは、第2図の時定数変換制
御回路202内部の時定数変換レジスタCRTRRに今
回の周期情報11の値に基づく周期データを第1図のM
CP3がセットすることをいう。これは、前記「ピッチ
抽出デジタル回路の動作」の「詳細動作」の項で既に説
明したとおりである。The above-mentioned time constant change processing means that period data based on the value of the current period information 11 is transferred to the time constant conversion register CRTRR inside the time constant conversion control circuit 202 shown in FIG.
This means that CP3 is set. This is as already explained in the "Detailed Operation" section of "Operation of Pitch Extraction Digital Circuit" above.
そして、362の処理の終了で第4A図のメインルーチ
ンのM2の処理へ戻る。Then, at the end of the process at 362, the process returns to the process at M2 of the main routine of FIG. 4A.
以上述べたようにルート■でぼ、第12図の例では、次
の処理がなされる。即ち、HNC=1、MT=1=b、
tV=1と判定され、FOFR←0、t tlt T
F=ts tl、RI V−0゜T F4−t、
= t5 、e+−AMP (1) =a、 、AMP
(1)=c=az 、h−TTP=TP (1)=t
3−tl 、TTP’−t t=t5−tl となる。As described above, in the example of FIG. 12, the following processing is performed in the case of the route ■. That is, HNC=1, MT=1=b,
It is determined that tV=1, FOFR←0, t tlt T
F=ts tl, RI V-0°T F4-t,
= t5 , e+-AMP (1) = a, , AMP
(1)=c=az, h-TTP=TP (1)=t
3-tl, TTP'-t t=t5-tl.
更に、 ■TTPξTTRξ11゜ ■TTU<t t<TTW。Furthermore, ■TTPξTTRξ11゜ ■TTU<t t<TTW.
■AMP (0)−c<NCHLV の3条件の満足で、11に従ったピッチ変更を行なう。■AMP (0)-c<NCHLV When the following three conditions are satisfied, the pitch is changed according to 11.
その後、TTU 4−(17/32)xt t。After that, TTU 4-(17/32)xtt.
TTW 4−(31/16)Xt tの設定がなされる
。TTW 4-(31/16)Xt t is set.
以上の動作によりルート■において、実際の楽音発生回
路5に対するピッチ変更及び乗算器6等を介した前記エ
ンベロープ制御が行われ、続くゼロクロスインクラブド
(次のピークの検出)でルート■の処理、同様に、続く
ゼロクロスインクラブドで、ルート■の処理が行われる
。このようにして、ルートのにおいては、単に周期を抽
出(S67を参照)し、ルート■においては実際のピッ
チ変更(S61参照)、エンベロープ制?I(S55参
照)及び時定数チェンジ処理(S62参照)が行われる
ことになる。As a result of the above operations, in the route ■, the pitch change for the actual musical tone generation circuit 5 and the envelope control via the multiplier 6 etc. are performed, and the subsequent zero cross included (detection of the next peak) processes the root ■. Similarly, in the subsequent zero cross included, the process for route (2) is performed. In this way, in the root, we simply extract the period (see S67), and in the root ■, we actually change the pitch (see S61), using the envelope system? I (see S55) and time constant change processing (see S62) will be performed.
(リラティブオンの九 Φ )
第9図の5TEP4におけるルート■のS66で、波形
ナンバーカウンタHNCが3を越えるようにカウントア
ツプされた後は、340においてYESの判断がなされ
、次に341へ行き、リラティブオンの条件を検出する
。(Nine Φ of Relative On) After the waveform number counter HNC is counted up to exceed 3 in S66 of route ■ in 5TEP4 in FIG. Detects relative-on conditions.
これは、c−AMP (b)>TRLRLであり、前回
のピーク値AMP(b)に比べて今回のピーク値Cがし
きい値TRLRLを越えて増大したとき、つまり、これ
は弦操作後に同じ弦を再度ピッキングしたとき(トレモ
ロ奏法などによる)にこのようなことがおき、この場合
は541の判定結果がYESとなり、リラティブオンの
処理をすべくS41からS78へ進む。This is c-AMP (b) > TRLRL, and when the current peak value C increases by more than the threshold TRLRL compared to the previous peak value AMP (b), that is, this is the same after the string operation. This happens when the strings are picked again (by tremolo playing, etc.), and in this case, the determination result in step 541 is YES, and the process advances from S41 to S78 to perform relative-on processing.
378では、時定数変換制御回路202(第2図)の時
定数変換レジスタCHTRRへ最高音フレット(例えば
22フレツト)の周期CHTIMをセットする。At step 378, the period CHTIM of the highest fret (for example, the 22nd fret) is set in the time constant conversion register CHTRR of the time constant conversion control circuit 202 (FIG. 2).
上記処理の後、第5図の5TEPOのSO6へ進み、当
該発音中の楽音をノートオフした後、再発音を開始する
。なお、通常の演奏操作によれば、第9図の5TEP4
の341ではNoの判断がなされ、342へ進み、上述
したルートのもしくはルート■へ進む。After the above processing, the process proceeds to SO6 of 5TEPO in FIG. 5, and after note-off of the musical tone being sounded, re-sounding is started. In addition, according to normal performance operations, 5TEP4 in FIG.
In step 341, a negative determination is made, and the process proceeds to step 342, where the process proceeds to the above-mentioned route or route ■.
(リーティフ゛オフの几 )
次に、第16図を参照して、リラティブオフ処理を説明
する。リラティブオフとは、フレット操作をしている状
態から、ピッキングをしないで開放弦状態へ移行する操
作にともない消音動作を行うことをいう。(Relative Off Process) Next, the relative off process will be explained with reference to FIG. 16. Relative off refers to performing a muffling operation in conjunction with the transition from a fret operation state to an open string state without picking.
この場合、波形の振幅レベルは急激に落ちてきて、前々
回の波高値(ピーク値)AMRL2と前回の波高値(ピ
ーク値)AMRLIとの差が(1/32)・AMRL2
を越えるようになり、第9図の5TEP4の346から
374へ進む。In this case, the amplitude level of the waveform drops rapidly, and the difference between the previous wave height value (peak value) AMRL2 and the previous wave height value (peak value) AMRLI is (1/32)・AMRL2
, and progresses from 346 to 374 of 5TEP4 in FIG.
そして、リラティブオフカウンタFOFRが定数ROF
CTを越えるまでカウントアツプするように574から
375へ進む。Then, relative off counter FOFR is constant ROF
The count continues from 574 to 375 until the CT is exceeded.
続けて、S75からS48へ行きS49〜S57の処理
を行なうが、FOFR=0でないので、357の判定結
果はNoとなり、リラティブオフ処理に入る直前ではピ
ッチ変更を行なうことなく第4A図のメインルーチンの
M2の処理へ戻る。Subsequently, the process goes from S75 to S48 and processes S49 to S57 are performed, but since FOFR=0, the determination result of 357 is No, and immediately before entering the relative off process, the main routine of FIG. 4A is performed without changing the pitch. Return to the process of M2.
なお、上記ルートにおいては、S55のエンベロープ制
御処理は行われる。これにより、リラティブオフの途中
においてデジタル出力D1のエンベロープが急激に減衰
している場合においても、上記エンベロープに基づく弦
エンベロープ・データGENVO値が第1図の弦エンベ
ロープラッチ12にラッチされ、それに基づいて前述の
楽音のエンベロープ制御が行われることにより、リラテ
ィブオフに応じて楽音にエンベロープの変化を付加する
ことができる。Note that in the above route, the envelope control process of S55 is performed. As a result, even if the envelope of the digital output D1 is rapidly attenuated during relative off, the string envelope data GENVO value based on the above-mentioned envelope is latched in the string envelope latch 12 in FIG. By performing the above-mentioned envelope control of musical tones, envelope changes can be added to musical tones in response to relative off.
そして、リラティブオフ時のピークが次々に入力し、S
74でNoと判断すると、つまり第16図の例では、F
OFRの値が3となったとき(ROFCTは2である)
、S74から376へ移行する。Then, the relative off peaks are input one after another, and S
If it is determined No in 74, that is, in the example of FIG.
When the value of OFR is 3 (ROFCT is 2)
, the process moves from S74 to 376.
ただし、346の判断でYESの判断が一度でもあると
、S46から347へ進み、FOFRをリセットするよ
うに動作する。従って、ROFCTで指定される回数だ
け続けてS46の条件を満足しなければ、リラティブオ
フの処理はなされない。なお、ROFCTO値は、音高
が高い弦について大きな値としておけば、はぼ一定の時
間経過で、いずれの弦についてもリラティブオフ処理が
できる。However, if the determination in step 346 is YES even once, the process proceeds from step S46 to step 347, and an operation is performed to reset the FOFR. Therefore, the relative off process is not performed unless the condition of S46 is satisfied the number of times specified by ROFCT. Note that if the ROFCTO value is set to a large value for strings with high pitches, relative off processing can be performed for any string in a fairly constant amount of time.
次に、S74から376へ行くと、リラティブオフカウ
ンタFOFRをリセットし、レジスタ5TEPを5とし
、377へ進んで楽音発生回路5に対しノート、オフを
指示する。Next, when the process goes from S74 to 376, the relative off counter FOFR is reset, the register 5TEP is set to 5, and the process goes to 377, where the tone generating circuit 5 is instructed to turn off the note.
この5TEPが5の状態では、ピッチ抽出処理を5TE
P4の時と同様に実行するが、S60から361を介す
ることなくS62へ進むので、楽音発生回路5に対して
は、ピッチ変更は指示されない。ただし、362におい
て抽出した周期に従って時定数チェンジ処理を行なう。When this 5TEP is 5, the pitch extraction process is
The process is executed in the same manner as in P4, but since the process proceeds from S60 to S62 without going through 361, the musical tone generating circuit 5 is not instructed to change the pitch. However, the time constant change process is performed according to the period extracted in step 362.
また、5TEPが5の状態では、リラティブオンの処理
を受付けるが(S41.378)、それ以外の場合では
、第4A図のメインルーチンの中で、振動レベルが減少
してきたことが検知されることによりM14で5TEP
がOとなり、初期状態にもどる。In addition, when 5TEP is 5, the relative-on process is accepted (S41.378), but in other cases, it is detected that the vibration level has decreased in the main routine of FIG. 4A. 5 TEP with M14 by
becomes O and returns to the initial state.
なお、346で使用するAMRLI、AMRL2はS6
4で作られており、1周期の中でレベルが大きい方のピ
ーク(最大ピークと最小ピークとのうちのいずれか一方
)がこの値とされ、第16図の最大ピークakが最大ビ
ークbk −1より必ず大である場合であって、an+
1とan+2、an+2とan+3、an+3とan+
4の差がいずれも所定値を越えるようになっている。In addition, AMRLI and AMRL2 used in 346 are S6
4, and the peak with a higher level in one cycle (either the maximum peak or the minimum peak) is taken as this value, and the maximum peak ak in Fig. 16 is the maximum peak bk - is always greater than 1, and an+
1 and an+2, an+2 and an+3, an+3 and an+
All the differences between 4 exceed a predetermined value.
また、このときルート■の処理においては、最小ピーク
bn+l、bn+2、bn+3が極端に減少してきてい
るので、S54でNoの判断が威されて、第4A図のメ
インルーチンのM2の処理へ戻り、ピッチ変更処理はな
されない。At this time, in the process of route (■), the minimum peaks bn+l, bn+2, and bn+3 have decreased extremely, so a negative determination is made in S54, and the process returns to M2 of the main routine in FIG. 4A. No pitch change processing is performed.
(ピ チ の )次に、
ピッチ周期が不適切な場合、即ち、ピッチ抽出している
際に、358又はS59でオクターブ関係にある倍音、
つまりオクターブ高い周期やオクターブ低い周期が続け
て検出されたときの処理について説明を行う。(Pichi) Next,
If the pitch period is inappropriate, that is, when extracting the pitch, overtones in an octave relationship at 358 or S59,
In other words, a description will be given of the processing when a cycle higher in octave or a cycle lower in octave is detected consecutively.
今、第9図の5TEP4のS58の定数TTUは、第8
図の5TEP3の5301にて最小の値0とされ、定数
TTWは同様に最大の値MAXとされており、はじめて
このフローを通るときは必ず358、S59でYESの
判断がなされるが、その後は362において、定数TT
Uには、(17/32)tt (はぼ1オクターブ高音
の周期情報)がセットされ、定数TTWには同様に56
2にて(31/16)tt (はぼ1オクターブ低音の
周期情報)がセットされる。Now, the constant TTU of S58 of 5TEP4 in FIG.
The minimum value is set to 0 at 5301 of 5TEP3 in the figure, and the constant TTW is also set to the maximum value MAX.When going through this flow for the first time, YES is always determined at 358 and S59, but after that In 362, the constant TT
U is set to (17/32)tt (period information for a one-octave treble), and the constant TTW is similarly set to 56.
At step 2, (31/16) tt (period information of a one-octave bass tone) is set.
従って、急激にオクターブアップする場合(これは、振
動弦を指で振動を止めるようにミュート奏法を行ったと
きなどに生ずる)、又はオクターブダウンする場合(こ
れは波形のピークを取り逃した時などに起る)が発生し
たときは、ピッチ変更をすると、不自然となるので、ピ
ッチ変更をしないように分岐する。Therefore, if you suddenly go up an octave (this happens when you mute the vibrating string by stopping it with your finger) or down an octave (this happens when you miss the peak of the waveform, etc.) ) occurs, it would be unnatural to change the pitch, so the branch is made so as not to change the pitch.
即ち、S58では11がTTUを越えなかったとき、つ
まり、前回抽出した周期の17/32倍した値TTUよ
り小になったとき、S76へ進む。That is, in S58, when 11 does not exceed TTU, that is, when it becomes smaller than the value TTU multiplied by 17/32 of the previously extracted period, the process advances to S76.
つまり、オクターブ高い音が抽出されたときは、ミュー
ト操作をした場合とみなし、オクターブ高い音を出力す
ることなく、358から376へ行き、前記リラティブ
オフ時同様376.377の処理によって当該音の発音
を停止する。In other words, when an octave high note is extracted, it is assumed that a mute operation has been performed, and the process goes from 358 to 376 without outputting the octave high note, and the process of 376 and 377 is used to produce the sound. stop.
また、359では、11がTTWを越えなかったとき、
つまり前回抽出した周期の31/16倍した値TTWよ
り大となったとき、360へ進むことなく、第4A図の
メインルーチンのM2の処理へ戻る。Also, in 359, when 11 does not exceed TTW,
That is, when the value TTW is greater than the value TTW which is 31/16 times the previously extracted period, the process returns to M2 of the main routine of FIG. 4A without proceeding to 360.
この状態は第17図に示されている。通常ノートオフ近
辺の非常に波形が小さい場合は、他のピッキングによっ
てヘキサピックアップのクロストークやボディの共振に
よって波形が乗ってくる。This state is shown in FIG. Normally, if the waveform is very small near note-off, the waveform will be superimposed by other picking due to crosstalk of the hex pickup or resonance of the body.
すると、例えば、第17図のような入力波形となり、1
オクターブ下の入力波形が続けて検出されてしまうこと
がある。Then, for example, the input waveform becomes as shown in Fig. 17, and 1
Input waveforms an octave lower may be detected continuously.
このような場合、回答処理を施さないと、急にオクター
ブ下の音を出力してしまい、極めて不自然となる。・そ
のために、356.357でTan+2#Tan+3!
qTbn+2が検出されても、Tan+3>Tan+I
X (31/16)となるbで、ピッチ変更することな
く、S59から第4A図のメインルーチンのM2の処理
へ戻る。In such a case, if response processing is not performed, the sound will suddenly be output an octave lower, which will be extremely unnatural.・For that reason, 356.357 is Tan+2#Tan+3!
Even if qTbn+2 is detected, Tan+3>Tan+I
When b becomes X (31/16), the process returns from S59 to M2 of the main routine of FIG. 4A without changing the pitch.
(Lヱ丈処凰旦軌血)
次に、波形がダブって抽出される場合、即ち、同じ極性
のピークが続けて検出される場合の処理について説明を
行う。(L ヱ上工凰dan语blood) Next, a description will be given of a process when waveforms are extracted in duplicate, that is, when peaks of the same polarity are successively detected.
まず、第9図の5TEP4のS42の判定結果がNOと
なるルート■において、S63でYESの場合は、36
8に進みダブり処理が行われる。First, in route ■ where the determination result in S42 of 5TEP4 in FIG. 9 is NO, if YES in S63, 36
Proceeding to step 8, duplicate processing is performed.
即ち、S63でYESの場合は568に進み、今回ピー
ク値C〉同じ符号の前回のピーク値AMP (b)かど
うかが判断され、YESの場合はS69に進む。That is, if YES in S63, the process proceeds to 568, where it is determined whether the current peak value C>the previous peak value AMP (b) with the same sign. If YES, the process proceeds to S69.
369では、今回ピーク値Cに前回のピーク値AMP
(b)が書き替えられ、370に進む。369, the previous peak value AMP is added to the current peak value C.
(b) is rewritten and the process proceeds to 370.
S70では今回ピーク値C〉前回の振幅値(ピーク値)
AMRLIかどうかが判断され、YESの場合にはS7
1に進み、ここで今回ピーク値Cが前回の振幅値(ピー
ク値)AMRLIとされる。In S70, current peak value C>previous amplitude value (peak value)
It is determined whether it is AMRLI, and if YES, S7
1, where the current peak value C is set as the previous amplitude value (peak value) AMRLI.
もし、36BでNoの判断がなされるとすぐに、第4A
図のメインルーチンのM2の処理に戻る。As soon as a No decision is made in 36B, the 4th A.
The process returns to M2 of the main routine in the figure.
従って、新しい入力波形のピークが大である場合につい
てのみ、倍音のピークをひろっていないと考えられるの
で、新しい波形のピーク値が登録される。Therefore, only when the peak of the new input waveform is large, the peak value of the new waveform is registered because it is considered that the overtone peak has not been extracted.
また、570でNOのときと、371の処理の終了のと
きには、同様にメインルーチンへ戻る。Further, when the answer is NO at 570 and when the process at 371 ends, the process returns to the main routine in the same way.
第・18図に、上記ダブり処理の例を示す。なお、この
例の場合はMT=Oの状態を示している。−般に、基本
波周期と倍音酸分の周期が非整数倍の関係にあるので、
倍音の位相がずれて行き、同じ極性のゼロクロスを検出
をしてしまうことになり、そのために誤ったピッチ変更
をしないようにしないといけない。この図の例の場合、
「ダブリ」と示しているところで、ダブリの状態が生じ
ている。FIG. 18 shows an example of the above-mentioned duplicate processing. Note that this example shows the state of MT=O. -Generally, the fundamental wave period and the harmonic acid period are in a non-integer multiple relationship, so
The phase of the overtones will shift and you will end up detecting zero crosses of the same polarity, so you have to be careful not to make incorrect pitch changes. For the example in this diagram,
A double state occurs where "double" is indicated.
このときは、S42から363へ行き、YESの判断を
して368へ行く。368では、この場合、(a n+
2)と(an+3)との比較をして、(an+3)が(
an+2)より大なときに限り369へ行き、AMP(
1)を書替える。そして、更に前回の振幅値(ピーク値
)AMRLIと今回の振幅情報(ピーク値C)の比較を
370で行って、もしYESならば371へ進み、今回
のピーク値Cを前回の振幅値(ピーク値)AMRLIと
する。In this case, go to 363 from S42, make a YES determination, and go to 368. In this case, (a n+
2) and (an+3), (an+3) is (
go to 369 only when it is larger than an+2), and AMP(
Rewrite 1). Then, the previous amplitude value (peak value) AMRLI is compared with the current amplitude information (peak value C) at 370, and if YES, the process proceeds to 371, where the current peak value C is compared with the previous amplitude value (peak value C). value) AMRLI.
次に、第9図の5TEP4の342の判定結果がYES
となるルート■において、次の343でNOとなる場合
は、372に進み上記と同様にダブり処理が行われる。Next, the determination result of 342 of 5TEP4 in Fig. 9 is YES.
If the next step 343 is NO in the route {circle around (2)}, the process advances to 372 and the duplication process is performed in the same manner as above.
即ち、S43でNoの場合は372に進み、今回ピーク
値C〉同じ符号の前回のピーク値AMP(b)かどうか
が判断され、YESの場合はS73に進み、今回ピーク
値Cに前回のピーク値AMP (b)が書き替えられた
後、第4A図のメインルーチンのM2の処理へ戻る。That is, if No in S43, the process advances to 372, where it is determined whether the current peak value C>the previous peak value AMP(b) with the same sign. If YES, the process advances to S73, where the current peak value C is set to the previous peak value. After the value AMP (b) has been rewritten, the process returns to step M2 of the main routine in FIG. 4A.
もし、S72でNoの判断がなさるとすぐに、第4A図
のメインルーチンのM2の処理に戻る。If a negative determination is made in S72, the process immediately returns to step M2 of the main routine in FIG. 4A.
従って、この場合も、新しい入力波形のピークが大であ
る場合についてのみ、新しい波形のピーク値が登録され
る。Therefore, in this case as well, the peak value of the new waveform is registered only when the peak of the new input waveform is large.
第19図に、その例を示す。この例ではMT=1の状態
を示している。この場合、図のダブリと書いであるゼロ
クロス時の5TEP4の処理では、342から343へ
行き、343ではYESの判断をしてS72へ進む。こ
こで(an+3)と(an+2)の大きさが比較され、
もしくa n+3)が(an+2)より大であれば、3
72でYESの判断をし、AMP(1)に、(an+3
)の値をセットし、もし逆の場合は回答変更処理をしな
い。An example is shown in FIG. This example shows a state where MT=1. In this case, in the process of 5TEP4 at the time of zero crossing, which is written as double in the figure, the process goes from 342 to 343, and in 343, it is determined YES and the process goes to S72. Here, the sizes of (an+3) and (an+2) are compared,
If a n+3) is greater than (an+2), then 3
Make a YES judgment at 72, and add (an+3) to AMP(1).
), and if the opposite is true, do not change the answer.
ところで、上記のダブり処理の場合、抽出している時刻
データは回答使用しないので、周期情報Ta n+3は
何等変わらない。また、当然周期データに基づくピッチ
変更は行われない。By the way, in the case of the above-mentioned duplication process, the extracted time data is not used as a response, so the cycle information Tan+3 does not change in any way. Also, of course, the pitch is not changed based on the periodic data.
(生11じIIγL搬桝)
以上に示したように、本実施例では、各タイミング毎の
ピーク値と前回のピーク値との平均値の、ベロシティV
ELに対する比を弦エンベロープ・データ5ENVとし
てシンセ・エンベロープ・データ5ENVと混合してお
り、それにより、ピーク値の変動(ゆらぎ)等で不自然
にエンベロープが変化すること、及び正側のピークと負
側のピークとのレベル差を矯正化するようにしているが
、それに限られるものではなく、各タイミング毎のピー
ク値をそのまま用いるようにしてもよい。この場合は、
第9図のステップS55では、GENV−AMP(1)
、又はGENV−AMP (0)としてもよい。更には
、3以上のピーク値の移動平均やヒステリシスをもつ平
均をとってもよい。(Raw 11th IIγL transport box) As shown above, in this embodiment, the velocity V of the average value of the peak value at each timing and the previous peak value
The ratio to EL is string envelope data 5ENV, which is mixed with synth envelope data 5ENV. As a result, the envelope may change unnaturally due to peak value fluctuations, and the positive peak and negative peak may change. Although the level difference with the side peak is corrected, the present invention is not limited to this, and the peak value at each timing may be used as is. in this case,
In step S55 of FIG. 9, GENV-AMP(1)
, or GENV-AMP (0). Furthermore, a moving average of three or more peak values or an average with hysteresis may be taken.
また、楽音発生口B5から出力される楽音信号に対して
乗算器6を用いて乗算を行うことにより、楽音のエンベ
ロープ制御を行っているが、エンベロープ乗算はデジタ
ル乗算によるものでも、アナログ乗算によるものでも、
採用し得る。Furthermore, the envelope of the musical tone is controlled by using the multiplier 6 to multiply the musical tone signal output from the musical tone generating port B5, but the envelope multiplication may be performed by digital multiplication or analog multiplication. but,
Can be adopted.
一方、本実施例では、弦の振動波形からピッチ抽出を行
って楽音を制御する電子ギターに適用した例について示
したが、そのようなものに限られるものではなく、入力
波形信号からエンベロープを抽出して楽音を制御するよ
うなタイプの電子楽器であればどのようなものでもよく
、また、入力波形信号からピッチ抽出を行うタイプのも
のに限られるものでもない。On the other hand, in this example, an example is shown in which the application is applied to an electronic guitar that controls musical tones by extracting pitch from the vibration waveform of a string. Any type of electronic musical instrument may be used as long as it controls musical tones by using the input waveform signal, and it is not limited to a type that extracts pitch from an input waveform signal.
更に、楽音の音量のエンベロープだけではなく、音色変
化のエンベロープ等を制御するようにしてもよい。この
場合は、各スペクトル成分毎のエンベロープを抽出する
ようにして、このエンベロープに従って各成分毎のレベ
ルを上述した実施例と同様に、可変制御してゆけばよい
。Furthermore, not only the envelope of the volume of musical tones, but also the envelope of timbre changes, etc. may be controlled. In this case, the envelope of each spectral component may be extracted, and the level of each component may be variably controlled in accordance with this envelope, as in the embodiment described above.
本発明によれば、例えば電子弦楽器等の弦の弦振動波形
のリアルタイム変化等に直接対応する入力波形信号のエ
ンベロープ特性と、予めいわゆるシンセサイザ音等の特
性として設定される合成音的特性を有するエンベロープ
特性とを、混合手段により任意の混合比で混合し、楽音
信号のエンベロープ特性とすることが可能となる。According to the present invention, an envelope characteristic of an input waveform signal that directly corresponds to a real-time change in the string vibration waveform of a string such as an electronic stringed instrument, and an envelope having synthesized sound characteristics that are set in advance as characteristics of a so-called synthesizer sound, etc. It is possible to mix the characteristics at an arbitrary mixing ratio by a mixing means to obtain the envelope characteristics of the musical tone signal.
従って、演奏者は混合手段における上記2種類のエンベ
ロープ信号の混合比を予め設定しておくことにより、発
音される楽音のエンベロープを、例えばシンセサイザ固
有のエンベロープからギターの弦振動に直接対応するエ
ンベロープまで段階的に変化させることができ、演奏者
にとって演奏がし易く、かつ、表現力豊かな演奏を行う
ことが可能な電子楽器を実現することができる。Therefore, by setting the mixing ratio of the above two types of envelope signals in the mixing means in advance, the performer can change the envelope of the musical sound to be produced, for example, from the envelope unique to a synthesizer to the envelope directly corresponding to the guitar string vibration. It is possible to realize an electronic musical instrument that can be changed in stages, is easy for the player to play, and can perform with rich expressiveness.
第1図は、本発明による電子楽器の全体構成図、第2図
は、ピッチ抽出デジタル回路の構成図、第3図は、割込
み処理ルーチンの動作フローチャートを示した図、
第4A図は、メインルーチンの動作フローチャートを示
した図、
第4B図は、キー制御処理の動作フローチャートを示し
た図、
第5図は、5TEPOの動作フローチャートを示した図
、
第6図は、5TEP 1の動作フローチャートを示した
図、
第7図は、5TEP2の動作フローチャートを示した図
、
第8図は、5TEP3の動作フローチャートを示した図
、
第9図は、5TEP4 (5)の動作フローチャートを
示した図、
第10図は、本実施例の概略動作説明図、第11A図は
、本実施例の動作説明図、第118IliUは、MCP
3での設定値と乗算器13.14の係数の関係を示した
図、
第12図は、本実施例の基本動作説明図、第13図(a
)、(ロ)は、5TEPIにおけるダブリ処理の動作説
明図、
第14A図、第14B図、第14C図は、それぞれ5T
EP2におけるダブり処理の動作説明図、第15図は、
5TEP3におけるノイズ除去処理の動作説明図、
第16図は、5TEP4におけるリラティブオフ処理の
動作説明図、
第17図は、5TEP4におけるピッチ周期不適切時の
処理動作説明図、
第18図は、ルートのにおけるダブり処理の動作説明図
、
第19図は、ルート■における゛ダブリ処理の動作説明
図、
第20図(a)、い)は、第1の従来例の説明図、第2
1図は、第2の従来例の説明図である。
1・・・ピッチ抽出アナログ回路、
2・・・ピッチ抽出デジタル回路、
3・・・中央制御装置(MCP)、
4・・・アドレスデコーダ、
5・・・楽音発生回路、
6.13.14・・・乗算器、
7・・・加算器、
8・・・D/A変換器、
9・・・アンプ、
10・・・スピーカ、
11・・・エンベロープ発生回路、
12・・・弦エンベロープラッチ、
Dl・・・デジタル出力、
GENV・・・弦エンベロープデータ、KENV・・・
混合エンベロープ
・データ、
5ENV・・・シンセ・エンベロープ
・データ。FIG. 1 is an overall configuration diagram of an electronic musical instrument according to the present invention, FIG. 2 is a configuration diagram of a pitch extraction digital circuit, FIG. 3 is an operation flowchart of an interrupt processing routine, and FIG. 4A is a main FIG. 4B is a diagram showing the operation flowchart of the routine; FIG. 4B is a diagram showing the operation flowchart of key control processing; FIG. 5 is a diagram showing the operation flowchart of 5TEPO; FIG. 6 is a diagram showing the operation flowchart of 5TEP 1. 7 is a diagram showing the operation flowchart of 5TEP2, FIG. 8 is a diagram showing the operation flowchart of 5TEP3, FIG. 9 is a diagram showing the operation flowchart of 5TEP4 (5), 10 is a schematic explanatory diagram of the operation of this embodiment, FIG. 11A is an explanatory diagram of the operation of this embodiment, and 118th IliU is an MCP
12 is a diagram showing the relationship between the set value in step 3 and the coefficients of multipliers 13 and 14, and FIG. 12 is a diagram explaining the basic operation of this embodiment, and FIG.
), (b) are operation explanatory diagrams of double processing in 5TEPI, and Figures 14A, 14B, and 14C are for 5T
FIG. 15 is an explanatory diagram of the operation of the duplication process in EP2.
Fig. 16 is an explanatory diagram of the operation of the relative off processing in 5TEP3. Fig. 17 is an explanatory diagram of the processing operation when the pitch period is inappropriate in 5TEP4. FIG. 19 is an explanatory diagram of the operation of the double processing in route ■. FIGS.
FIG. 1 is an explanatory diagram of a second conventional example. 1... Pitch extraction analog circuit, 2... Pitch extraction digital circuit, 3... Central control unit (MCP), 4... Address decoder, 5... Musical tone generation circuit, 6.13.14. ... Multiplier, 7... Adder, 8... D/A converter, 9... Amplifier, 10... Speaker, 11... Envelope generation circuit, 12... String envelope latch, Dl...Digital output, GENV...String envelope data, KENV...
Mixed envelope data, 5ENV...Synth envelope data.
Claims (1)
ロープ抽出手段と、 楽音信号を発生する楽音発生手段と、 予め設定されたエンベロープ信号を生成するエンベロー
プ信号生成手段と、 前記エンベロープ抽出手段から抽出される前記入力波形
信号のエンベロープ信号と、前記エンベロープ信号生成
手段から生成される前記予め設定されたエンベロープ信
号とを、任意の混合比で混合する混合手段と、 該混合手段で混合された混合エンベロープ信号に対応す
るように前記楽音発生手段から発生される楽音信号のエ
ンベロープを制御するエンベロープ制御手段と、 を有することを特徴とする電子楽器。 2)前記エンベロープ抽出手段は、 前記入力波形信号をデジタル化することにより得られる
デジタル波形信号の立ち上がり時の最大ピーク値を検出
する最大ピーク値検出手段と、前記デジタル波形信号の
立ち上がり後の有効なピーク値を順次検出する有効ピー
ク値検出手段と、該有効ピーク値検出手段から順次検出
される有効なピーク値と前回の有効なピーク値との平均
値と、前記最大ピーク値検出手段から検出されている前
記最大ピーク値との比を順次演算し前記エンベロープ信
号として順次出力するエンベロープ信号演算手段と、 によって構成され、 前記混合手段は、 前記エンベロープ抽出手段から抽出される前記入力波形
信号のエンベロープ信号に予め設定された第1の係数を
乗算する第1の乗算手段と、前記エンベロープ信号生成
手段から生成される前記予め設定されたエンベロープ信
号に予め設定された第2の係数を乗算する第2の乗算手
段と、前記第1及び第2の乗算手段の各出力を加算して
前記混合エンベロープ信号として出力する加算手段と、 によって構成され、 前記エンベロープ制御手段は、 前記楽音発生手段から発生される前記楽音信号に前記混
合エンベロープ信号を乗算する乗算手段、によって構成
される、 ことを特徴とする請求項1記載の電子楽器。[Scope of Claims] 1) Envelope extraction means for extracting an envelope signal of an input waveform signal; musical tone generation means for generating a musical tone signal; envelope signal generation means for generating a preset envelope signal; and the envelope extraction. mixing means for mixing an envelope signal of the input waveform signal extracted from the means and the preset envelope signal generated from the envelope signal generating means at an arbitrary mixing ratio; An electronic musical instrument comprising: envelope control means for controlling an envelope of a musical tone signal generated from the musical tone generating means so as to correspond to a mixed envelope signal generated by the musical tone generating means. 2) The envelope extraction means includes maximum peak value detection means for detecting the maximum peak value at the rise of the digital waveform signal obtained by digitizing the input waveform signal, and maximum peak value detection means for detecting the maximum peak value at the rise of the digital waveform signal obtained by digitizing the input waveform signal, and a maximum peak value detection means for detecting the maximum peak value at the rise of the digital waveform signal obtained by digitizing the input waveform signal, effective peak value detection means for sequentially detecting peak values; an average value of the effective peak values sequentially detected from the effective peak value detection means and the previous effective peak value; envelope signal calculation means for sequentially calculating the ratio of the input waveform signal to the maximum peak value and sequentially outputting the ratio as the envelope signal; a first multiplier for multiplying a first coefficient set in advance by a first coefficient set in advance; and a second multiplier for multiplying the preset envelope signal generated from the envelope signal generating means by a second coefficient set in advance. a multiplication means; and an addition means for adding the respective outputs of the first and second multiplication means and outputting the resultant mixture as the mixed envelope signal; The electronic musical instrument according to claim 1, further comprising a multiplier for multiplying a musical tone signal by the mixed envelope signal.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1208644A JPH0372400A (en) | 1989-08-11 | 1989-08-11 | Electronic musical instrument |
US07/558,818 US5147970A (en) | 1989-08-11 | 1990-07-27 | Electronic musical instrument for generating musical tones on the basis of characteristics of input waveform signal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1208644A JPH0372400A (en) | 1989-08-11 | 1989-08-11 | Electronic musical instrument |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0372400A true JPH0372400A (en) | 1991-03-27 |
Family
ID=16559659
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1208644A Pending JPH0372400A (en) | 1989-08-11 | 1989-08-11 | Electronic musical instrument |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0372400A (en) |
-
1989
- 1989-08-11 JP JP1208644A patent/JPH0372400A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2615825B2 (en) | Electronic string instrument | |
US7750230B2 (en) | Automatic rendition style determining apparatus and method | |
CA2345316A1 (en) | Automatic music generation procedure and system | |
JP2734521B2 (en) | Music control device | |
JP2722795B2 (en) | Music synthesizer | |
US5048391A (en) | Electronic musical instrument for generating musical tones on the basis of characteristics of input waveform signal | |
US5147970A (en) | Electronic musical instrument for generating musical tones on the basis of characteristics of input waveform signal | |
CA2437691C (en) | Rendition style determination apparatus | |
JPH0371718B2 (en) | ||
JPH0372400A (en) | Electronic musical instrument | |
JP2722584B2 (en) | Music control device | |
JP2775633B2 (en) | Music control device | |
JP2958778B2 (en) | Tone generator | |
JP2615946B2 (en) | Music control device | |
JP2661481B2 (en) | Electronic musical instrument | |
JP2858313B2 (en) | Pitch information generation device | |
JPH0822282A (en) | Automatic accompaniment device for guitar | |
JP2929498B2 (en) | Electronic musical instrument | |
JPH0394297A (en) | Musical sound data processor | |
JP2591000B2 (en) | Electronic string instrument | |
Friend | An integrated guitar synthesizer for live performance | |
JPH04274298A (en) | Automatic musical performance device | |
JPH01100597A (en) | Electronic musical instrument | |
JPS63173096A (en) | Input controller for electronic musical instrument | |
JPH01100598A (en) | Electronic musical instrument |