JPH02146096A - Electronic musical instrument - Google Patents
Electronic musical instrumentInfo
- Publication number
- JPH02146096A JPH02146096A JP63300416A JP30041688A JPH02146096A JP H02146096 A JPH02146096 A JP H02146096A JP 63300416 A JP63300416 A JP 63300416A JP 30041688 A JP30041688 A JP 30041688A JP H02146096 A JPH02146096 A JP H02146096A
- Authority
- JP
- Japan
- Prior art keywords
- pitch
- peak value
- time
- 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 claims abstract description 45
- 238000000605 extraction Methods 0.000 claims description 45
- 230000000630 rising effect Effects 0.000 claims description 12
- 238000000034 method Methods 0.000 abstract description 175
- 102100032366 C-C motif chemokine 7 Human genes 0.000 abstract description 25
- 101000797758 Homo sapiens C-C motif chemokine 7 Proteins 0.000 abstract description 25
- 230000000694 effects Effects 0.000 abstract description 12
- 239000000284 extract Substances 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 169
- 239000011295 pitch Substances 0.000 description 134
- 230000008859 change Effects 0.000 description 25
- 238000006243 chemical reaction Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 17
- 230000007704 transition Effects 0.000 description 9
- 230000000737 periodic effect Effects 0.000 description 5
- 230000012447 hatching Effects 0.000 description 4
- 230000002238 attenuated effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 239000002184 metal Substances 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
- 101000878457 Macrocallista nimbosa FMRFamide Proteins 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
- 230000005856 abnormality Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 102100022749 Aminopeptidase N Human genes 0.000 description 1
- 101710099461 Aminopeptidase N Proteins 0.000 description 1
- 101000684919 Homo sapiens Sodium- and chloride-dependent creatine transporter 1 Proteins 0.000 description 1
- 101150007441 MRL1 gene Proteins 0.000 description 1
- 101100496043 Monascus ruber citA gene Proteins 0.000 description 1
- 101100060081 Monascus ruber citB gene Proteins 0.000 description 1
- 102100023153 Sodium- and chloride-dependent creatine transporter 1 Human genes 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 241001233037 catfish Species 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- LSCYTCMNCWMCQE-UHFFFAOYSA-N n-methylpyridin-4-amine Chemical compound CNC1=CC=NC=C1 LSCYTCMNCWMCQE-UHFFFAOYSA-N 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000005236 sound signal 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 in particular to producing musical tones whose timbre etc. are changed depending on the playing method. Regarding electronic musical instruments that can be used.
ギター等を演奏操作することにより弦の振動等を電気信
号として検出し、その入力波形信号に従ってディジタル
回路等で構成された楽音発生回路を制御して、楽音を合
成し放音させるようにした電子楽器が開発されている。An electronic device that detects the vibrations of strings as electrical signals when you play a guitar, etc., and controls a musical sound generation circuit made up of digital circuits etc. according to the input waveform signal to synthesize musical sounds and emit them. Musical instruments are being developed.
特に、ピッチ抽出回路が入力波形信号からピッチ周期を
抽出し、楽音発生回路がそのピッチ周期に対応した音高
の楽音を発生するタイプのものは、楽音の音高等が入力
波形信号にダイレクトに応答するため、演奏者の演奏に
忠実な楽音合成を行うことができる。In particular, in a type in which the pitch extraction circuit extracts the pitch period from the input waveform signal and the musical tone generation circuit generates a musical tone with a pitch corresponding to the pitch period, the pitch of the musical tone directly responds to the input waveform signal. Therefore, it is possible to perform musical tone synthesis that is faithful to the performance of the performer.
上記のような電子楽器において、楽音の音量・音色等は
、従来、入力波形信号の立ち上がり時、すなわち、例え
ばギターにおいては弦をピッキングした時点における信
号強度を検出し、楽音発生回路がその信号強度に対応し
て音量及び音色等を変化させた楽音を発生していた。In electronic musical instruments such as those mentioned above, the volume and timbre of musical tones have conventionally been determined by detecting the signal strength at the rise of the input waveform signal, that is, for example, at the time of picking a string in the case of a guitar. It generated musical tones whose volume and timbre changed in response to the sound.
そして、上記のような従来例においては、入力波形信号
の信号強度という1つのパラメータのみで楽音の音量及
び音色等を変化させていたため、例えば入力波形信号が
変化して楽音の音量が大きくなると、同時に音色が硬い
感じの音色になる、というように常に相関をもって変化
していた。In the conventional example described above, the volume and timbre of a musical tone were changed using only one parameter, the signal strength of the input waveform signal. Therefore, for example, when the input waveform signal changes and the volume of the musical tone increases, At the same time, the timbre became harder, and so on, and so on, and so on, and so on, and so on, and so on, and so on, and so on, and so on.
〔発明が解決しようとする課題]
ところが、例えばアコースティックギター等を実際に弾
いて直接音を出した場合、弦を弾く強さが同じでも、荒
いピッキングをして弦振動が乱れるように弾くと硬い音
色になり、逆にソフトなピッキングをすると軟らかい音
色になる。[Problem to be solved by the invention] However, for example, when you actually play an acoustic guitar to produce a direct sound, even if the force with which you pluck the strings is the same, if you pick roughly and disrupt the string vibrations, the strings will become harder. On the other hand, if you pick softly, you will get a softer tone.
従って、前記従来例のように信号強度のみで音量と音色
を変化させるタイプの電子楽器では、ピンキングの荒さ
等により音量と音色を別々に制御することができず、豊
かな演奏効果を得ることができないという問題点を有し
ていた。Therefore, in electronic musical instruments of the type that change the volume and timbre only by signal strength, such as the conventional example, it is not possible to control the volume and timbre separately due to rough pinking, etc., and it is difficult to obtain rich performance effects. The problem was that it could not be done.
本発明の課題は、入力波形信号に基づいて、楽音の音量
、音色等の個別の制御を可能とすることにある。An object of the present invention is to enable individual control of the volume, timbre, etc. of musical tones based on input waveform signals.
(課題を解決するための手段〕
本発明は、例えば金属弦振動をピックアップによって入
力波形信号として検出し、これからピッチ情報を抽出し
、該ピッチ情報により楽音の音高を制御するタイプの電
子弦楽器(電子ギター)等として実現される電子楽器で
ある。(Means for Solving the Problems) The present invention detects, for example, metal string vibration as an input waveform signal with a pickup, extracts pitch information from this, and controls the pitch of a musical tone using the pitch information. It is an electronic musical instrument realized as an electronic guitar (electronic guitar), etc.
そして、まず、入力波形信号からピンチ情報を抽出する
ピッチ抽出手段を有する。同手段は、例えば予め求めた
入力波形信号をデジタル化し、そのデジタル波形から有
効なピーク値とその直後のゼロクロス時刻を順次検出し
、該有効なピーク値とその直後あるいはその直前のゼロ
クロス時刻の組を判定することにより、各ゼロクロス時
刻の間隔としてピッチ情報すなわちピッチ周期を抽出す
る手段である。或いは、各ピーク値の間隔とじてピンチ
周期を抽出する手段である。勿論これ以外のピッチ抽出
技術によってもよい。First, it has pitch extraction means for extracting pinch information from an input waveform signal. This means, for example, digitizes an input waveform signal obtained in advance, sequentially detects a valid peak value and a zero-crossing time immediately after it from the digital waveform, and sets a set of the valid peak value and a zero-crossing time immediately after or immediately before that. This is a means for extracting pitch information, that is, a pitch period, as an interval between each zero-crossing time by determining . Alternatively, it is a means for extracting the pinch period based on the interval between each peak value. Of course, other pitch extraction techniques may be used.
次に、前記入力波形信号の立ち上がり時点を検出する立
ち上がり検出手段を有する。同手段は、例えば楽音が消
音中に前記ピッチ抽出手段において検出される有効なピ
ーク値が最初に所定しきい値以上となった直後のゼロク
ロス時刻として入力波形信号の立ち上がり時点を検出す
る手段である。Next, it has a rising edge detecting means for detecting a rising point of the input waveform signal. The means detects the rising point of the input waveform signal as a zero-crossing time immediately after the effective peak value detected by the pitch extracting means first exceeds a predetermined threshold while the musical tone is muted, for example. .
また、前記立ち上がり検出手段で前記入力波形信号の立
ち上がり時点が検出されてから前記ピッチ抽出手段で有
効なピッチ情報が抽出され始める時点までの間隔を計測
する間隔計測手段を有する。The apparatus further includes an interval measuring means for measuring an interval from when the rise detecting means detects the rising point of the input waveform signal to when the pitch extracting means starts extracting effective pitch information.
同手段は、例えば前記立ち上がり検出手段で入力波形の
立ち上がりが検出された時点で計時をスタートシ、ピッ
チ情報抽出手段で有効なピッチ情報が抽出され始める最
初のゼロクロス時刻で計時をストップするタイマー手段
と、該タイマー手段による計時結果を、ピッチ情報抽出
手段で有効に検出された最初のピッチ周期(ピッチ情報
)で除算し、その結果を前記間隔として出力する手段で
ある。The means includes, for example, a timer means that starts timing when the rise detecting means detects a rising edge of the input waveform, and stops timing at the first zero cross time when the pitch information extracting means starts extracting valid pitch information. , is means for dividing the time measurement result by the timer means by the first pitch period (pitch information) effectively detected by the pitch information extraction means, and outputting the result as the interval.
更に、上記間隔計測手段により計測された前記間隔に従
って楽音の特性を可変制御しながら前記ピッチ抽出手段
で抽出されるピッチ情報に応じた音高で楽音を発生する
楽音発生制御手段を有する。The apparatus further includes musical tone generation control means for generating musical tones at a pitch according to the pitch information extracted by the pitch extraction means while variably controlling the characteristics of musical tones according to the intervals measured by the interval measuring means.
同手段は、例えば前記間隔の大きさに従って前記楽音の
音色を制御する手段である。The means is, for example, means for controlling the timbre of the musical tone according to the size of the interval.
〔作 用] 本発明の作用は次の通りである。[For production] The effects of the present invention are as follows.
入力波形信号が乱れた波形となると、前記立ち上がり検
出手段が入力波形の立ち上がりを検出した後も、前記ピ
ッチ抽出手段がなかなか有効なピッチ情報を検出しない
。これは入力波形が安定な波形でないため、ピッチ抽出
手段においてピッチ周期の抽出が開始されるための条件
をなかなか満たさないためである。When the input waveform signal has a distorted waveform, even after the rising edge detecting means detects the rising edge of the input waveform, the pitch extracting means does not detect effective pitch information. This is because the input waveform is not a stable waveform, so it is difficult to satisfy the conditions for the pitch extraction means to start extracting the pitch period.
従って、演奏法によって入力波形信号を意図的に乱すこ
とができれば、間隔計測手段によって計測される間隔を
可変させることができ、同手段で得られる間隔に従って
、楽音の特性例えば音色を変化させることで、より豊か
な演奏効果が得られる。この場合、楽音の音量は、例え
ば入力波形の信号強度に従って制御すれば、入力波形信
号によって楽音の音量と音色を独立して制?ffUでき
ることになる。Therefore, if the input waveform signal can be intentionally disturbed by the playing method, the interval measured by the interval measuring means can be varied, and the characteristics of the musical sound, such as the timbre, can be changed according to the interval obtained by the interval measuring means. , you can get richer performance effects. In this case, if the volume of the musical tone is controlled according to the signal strength of the input waveform, for example, the volume and timbre of the musical tone can be independently controlled by the input waveform signal. You will be able to do ffU.
例えばギターシンセサイザー等の電子弦楽器においては
、弦振動を乱すように荒くピンキングすることにより入
力波形信号が乱れ、前記入力波形の立ち上がり時におい
て、前記ピッチ抽出手段がなかなか有効なピッチ情報を
検出せず、前記間隔計測手段で計測される間隔が長くな
る。この状態で、弦を弾く強さを一定にすれば、例えば
楽音の音量は変化させずに音色のみを変化させることが
でき、大きな演奏効果が生まれる。For example, in an electronic string instrument such as a guitar synthesizer, the input waveform signal is disturbed by rough pinking that disturbs the string vibration, and the pitch extraction means has difficulty detecting effective pitch information at the rise of the input waveform. The interval measured by the interval measuring means becomes longer. In this state, if the force with which the strings are plucked is kept constant, for example, only the timbre of the musical tone can be changed without changing the volume, creating a great performance effect.
以下、本発明の実施例につき詳細に説明を行う。 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本の金属弦が張られ、該金
属弦の下部に設けられたフレット(指板)を指で押えな
がら、所望の弦をピッキングすることにより演奏を行う
電子ギターとして実現されている。なお、その外見は省
略する。In this example, six metal strings are strung on the body, and the player picks the desired string while pressing the frets (fingerboard) provided at the bottom of the metal strings with his or her fingers. It has been realized as an electronic guitar. 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 sometimes passes each output from a hex pickup that converts the vibration of each string into an electric signal through a low-pass filter (not shown). By removing harmonic components, each of the six types of waveform signals Wi (i=1
~6) is obtained.
更に、各波形信号Wiの振幅の符号が正又は負に変化す
る毎に、ハイレベル又はローレヘルとなるパルス状のゼ
ロクロス信号Zi (i=1〜6)を発生する。そし
て、これら6種類の波形信号wi及びゼロクロス信号Z
iを、各々特には図示しない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 wi and zero cross signal Z
i is converted into a time-division serial zero-cross signal ZCR and a digital output (time-division waveform signal) DI by an A/D converter or the like (not shown) and output.
ピンチ抽出ディジタル回路2は、第2図に示すようにピ
ーク検出回路201、時定数変換制御回路202、波高
値取込み回路203、ゼロクロス時刻取込回路204か
らなる。これら第2図の各回路は、前記ピッチ抽出アナ
ログ回路1(第1図)からの、6弦分を時分割したシリ
アルゼロクロス信号ZCR及びディジタル出力D1に基
づいて、6弦分を時分割処理する。以下の説明では説明
を容易にするため1弦分の処理について説明し、シリア
ルゼロクロス信号ZCR及びディジタル出力D1は1弦
分の信号のイメージで説明するが、特に言及しないとき
は6弦分について時分割処理が行われているものとする
。The pinch 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 in FIG. 2 time-divisionally processes the six strings based on the serial zero-cross signal ZCR and digital output D1, which are time-divided six strings, from the pitch extraction analog circuit 1 (FIG. 1). . In the following explanation, for ease of explanation, processing for one string will be explained, and the serial zero cross signal ZCR and digital output D1 will be explained using the image of a signal for one string, but unless otherwise mentioned, the processing for six strings will be explained. It is assumed that division processing is being performed.
第2図において、まず、ピーク検出回路201は、前記
シリアルゼロクロス信号ZCR及びディジタル出力DI
に基づいて、ディジタル出力D1の最大ピーク点及び最
小ピーク点を検出する。そのために、同回路201の内
部に、特には図示しないが、過去のピーク値の絶対値を
減算しく減衰させ)ながらホールドするピークホールド
回路を有している。そして、ピーク検出回路201は前
回のピーク値検出後、上記ピークホールド回路がら出力
されるピークホールド信号をしきい値として、次のシリ
アルゼロクロス信号ZCRが発生した後にディジタル出
力D1の絶対値がこのしきい値を越えた時点でピーク値
のタイミングを検出する。なお、ピーク値のタイミング
検出は、ディジタル出力D1が正符号の場合と負符号の
場合の各々について行われる。そして、上記ピーク値の
検出タイミングで、正符号の場合は最大ピーク値検出信
号MAX、負符号の場合は最小ピーク値検出信号MIN
を出力する。なお、これらの各信号も実際には当然6弦
分の時分割信号である。In FIG. 2, first, the peak detection circuit 201 detects the serial zero cross signal ZCR and the digital output DI.
Based on this, the maximum peak point and minimum peak point of the digital output D1 are detected. 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 the previous peak value detection, the peak detection circuit 201 uses the peak hold signal output from the peak hold circuit as a threshold value, and after the next serial zero cross signal ZCR is generated, the absolute value of the digital output D1 is set as the threshold value. The timing of the peak value is detected when the threshold is exceeded. 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, at the above peak value detection timing, if the sign is positive, the maximum peak value detection signal MAX is input, and if the sign is negative, the minimum peak value detection signal MIN is input.
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より時分割的に送出されてく
るディジタル出力D1を、各弦毎の波高値にデマルチプ
レクス(分解)処理し、前記ピーク検出回路201から
のピーク値検出信号MAX、MINに従って、ピーク値
をホールドする。そして、MCP3 (第1図)がアド
レスデコーダ4(第1図)を介してアクセスしてきた弦
についての最大ピーク値、もしくは最小ピーク値をバス
BUSを介してMCP3へ順次出力する。また、この波
高値取込回路203からは、上記ピーク値の他、各弦毎
の振動の瞬時値も出力可能になっている。Next, the peak value acquisition circuit 203 in FIG. 2 demultiplexes (decomposes) the digital output D1 sent from the peak extraction analog circuit 1 in a time-divisional manner 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. Then, the MCP 3 (FIG. 1) sequentially outputs the maximum peak value or minimum peak value of the string accessed via the address decoder 4 (FIG. 1) to the MCP 3 via the bus BUS. In addition to the above-mentioned peak value, the peak value acquisition circuit 203 can also output instantaneous values of vibration for each string.
ゼロクロス時刻取込回路204は、前記ピッチ抽出アナ
ログ回路1(第1図)からのシリアルゼロクロス信号Z
CRに従って、各弦共通のタイムベースカウンタ204
1の出力を、各弦のゼロクロス時点、厳密には、ピーク
検出回路201から出力される最大・最小ピーク値検出
信号MAX、MINで決定される最大ピーク点及び最小
ピーク点の通過タイミング直後のゼロクロス時点でラッ
チする。このラッチ動作が行われると、ゼロクロス時刻
取込回路204は続いて、第1図の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. Latch at point. When this latch operation is performed, the zero-crossing time acquisition circuit 204 subsequently outputs an interrupt signal INT to the MCP3 in FIG. 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 zero-cross time and positive/negative information (described later) corresponding to the latched string are sequentially output to the MCP3 via the 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.304を有する。ROM301は後述する各種楽
音制御用のプログラムを記憶している不揮発メモリであ
り、RAM302は該制御時の各種変数・データ用のワ
ーク領域として用いられる書き替え可能なメモリである
。また、タイマ303は、後述するノートオフ(消音)
処理のために用いられる。更に、タイマ304は、後述
する5TEP2の始まりから5TEP4の始まりまでの
時間を計測する。Next, returning to FIG. 1, the MCP3 has a memory such as RO.
It has M301 and RAM302, and also has timer 3.
03.304. The ROM 301 is a non-volatile memory that stores programs for controlling various musical tones, which will be described later, and the RAM 302 is a rewritable memory used as a work area for various variables and data during the control. The timer 303 also controls note-off (mute), which will be described later.
Used for processing. Further, the timer 304 measures the time from the start of 5TEP2 to the start of 5TEP4, which will be described later.
楽音発生部5は、楽音発生回路501とD/A変換器5
02、アンプ503及びスピーカ504からなり、MC
P3からの楽音制御情報に応じた楽音を放音する。なお
、楽音発生回路501の入力側に、インターフェイス(
Musical InstrumentDigital
Interface) M I D Iが設けられて
おり、楽音制御情報伝送用の専用バスMIDI−BUS
を介して、MCP3と接続される。なお、ギター本体内
に楽音発生部5を設けるときは、別の内部インターフェ
イスを介してもよい。The musical tone generating section 5 includes a musical tone generating circuit 501 and a D/A converter 5.
02, amplifier 503 and speaker 504, MC
A musical tone corresponding to the musical tone control information from P3 is emitted. Note that an interface (
Musical InstrumentDigital
A dedicated bus MIDI-BUS for transmitting musical tone control information is provided.
It is connected to MCP3 via. Note that when the musical tone generating section 5 is provided within the guitar body, it may be provided through another internal interface.
アドレスデコーダ4は、前記したゼロクロス時刻取込回
路204(第2図)からの割り込み信号INTの発生の
後、MCP3 (第1図)から発生するアドレス読み出
し信号ARに従って、ゼロクロス時刻取込回路204に
、弦番号読込み信号■4、続いて、時刻読込み信号丁子
TTVT(i−1〜6)を供給する。また、同様に、波
高値取込み回路203(第2図)に波形読込み信号RD
Aj (j=1〜18)を出力する。これらの動作の詳
細については後述する。After generation of the interrupt signal INT from the zero-cross time acquisition circuit 204 (FIG. 2), the address decoder 4 transmits the zero-cross time acquisition circuit 204 in accordance with the address read signal AR generated from the MCP 3 (FIG. 1). , string number reading signal 4, and then time reading signal TTVT (i-1 to i-6). Similarly, a waveform read signal RD is sent to the peak value acquisition circuit 203 (FIG. 2).
Aj (j=1 to 18) is output. Details of these operations will be described later.
の 手 以上の構成の実施例の動作につき、以下に説明を行う。hand 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
から出力されるディジタル出力DIの1弦分についてア
ナログ的に示したものである。この波形は、特には図示
しないギターの6弦のうち1弦をピッキングすることに
より、対応するピンクアップから検出される電気信号を
ディジタル信号として出力したものであり、当該弦を特
には図示しないフレット(指板)上で押さえる位置に従
って、第10図To=T5等に示すようなピッチ周期を
有する波形が発生する。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 DI output from the DI. This waveform is an electric signal detected from the corresponding pink-up by picking one of the six strings of a guitar (not shown) and output as a digital signal. Depending on the pressing position on the fingerboard, a waveform having a pitch period as shown in FIG. 10, To=T5, etc., is generated.
本実施例では、このピッチ周期T。−T5等をリアルタ
イムで抽出することにより、第1図のMCP3がそれに
対応する音高情報を生成し、第1図の楽音発生回路50
1でその音高の楽音を発音させる。従って、特には図示
しないトレモロアームによって、演奏中に演奏者が弦の
張力を変化させたような場合、それに従ってディジタル
出力DIのピッチ周期が変化するため、音高情報もそれ
に従ってリアルタイムで変化し、楽音に豊かな表現を付
加することができる。In this embodiment, this pitch period T. - By extracting T5 etc. in real time, the MCP3 in FIG. 1 generates pitch information corresponding to it, and the musical tone generation circuit 50 in FIG.
1 to produce a musical tone of that pitch. Therefore, if the performer changes the tension of the strings during a performance using a tremolo arm (not shown), the pitch period of the digital output DI will change accordingly, and the pitch information will also change in real time accordingly. , it is possible to add rich expression to musical tones.
また、本実施例では、第10図のディジタル出力D1の
ピーク値aQ#a3又はb0〜b3等を検出しており、
特に第1図のMCP3が立ち上がり時(弦のピッキング
時)の最大ピーク値aOに基づいて音量情報を作成して
楽音発生回路501に転送することにより、弦をピッキ
ングした強さに応じた音量の楽音を発音させることがで
きる。In addition, in this embodiment, the peak value aQ#a3 or b0 to b3 of the digital output D1 in FIG. 10 is detected,
In particular, by creating volume information based on the maximum peak value aO when the MCP 3 in FIG. Can produce musical tones.
次に、本実施例では、第10図のピッチ周期T0を抽出
した時点で、すぐに発音を開始するわけではなく、始め
のいくつかのピッチ周期を論理的に判定し、安定したピ
ッチ周期が抽出できるようになった時点で発音を開始す
る。これは、弦のピッキング時には、その開始部分でデ
ィジタル出力DIが乱れやすく、安定なピッチ周期を抽
出できず、そのままのピッチ周期に対応する音程で楽音
を発音させると、おかしな音程の楽音が発音されてしま
うためである。すなわち、ディジタル出力D1が乱れて
いれば乱れているほど、発音開始までの時間が長くなる
。Next, in this embodiment, the sound generation does not start immediately when the pitch period T0 shown in FIG. Start pronunciation as soon as it can be extracted. This is because when picking a string, the digital output DI is easily disturbed at the beginning, making it impossible to extract a stable pitch cycle, and if a musical note is played at a pitch corresponding to the pitch cycle as it is, a musical note with an odd pitch will be produced. This is because the That is, the more the digital output D1 is disturbed, the longer it takes to start sounding.
ここで、一般の化ギター(アコースティックギター)等
においては、演奏者が、弦をと・ソキングする強さは同
じにしても、弦を荒くピッキングすると硬い音色となり
、逆にソフトにピッキングすると軟らかい音色になる。In general acoustic guitars, etc., even if the performer picks the strings with the same force, picking the strings roughly will produce a hard tone, and conversely, picking the strings softly will produce a soft tone. become.
そして、本実施例においてこのような弦振動をピンクア
ップで拾うと、荒(ピッキングした場合はディジタル出
力DIの波形が乱れて発音開始までの時間が長くなり、
逆にソフトにピンキングした場合はきれいな波形となっ
て発音開始までの時間が短(なる。In this embodiment, if such string vibrations are picked up by pink-up, they will be rough (if picked, the waveform of the digital output DI will be disturbed, and the time until the sound starts will be longer).
On the other hand, if you use soft pinking, you will get a beautiful waveform and the time it takes to start producing sound will be short.
そこで、本実施例では、ディジタル出力DIの検出を開
始した時点で第1図のMCP a内のタイマ304をス
タートさせ、楽音の発音を開始する時点でストップさせ
る。そして、その計時結果を直前のピッチ周期で除算す
ることにより、波形の検出開始から発音開始までに何周
期分必要としたかを計測し、それを音色情報として第1
図の楽音発生回路501に転送する。これにより、楽音
発生回路501は上記音色情報の値が大きいときには、
例えば硬い音色になるように楽音のエンベロープ又は倍
音等を制御し、逆にその値が小さいときには、例えば軟
らかい音色になるように制御することにより、弦をピッ
キングする荒さに応じた音色の楽音を発音させることが
できる。そして、音量は前記したようにディジタル出力
D1の立ち上がり時の最大ピーク値a0に基づいて、上
記音色制御とは独立して制御されるため、結局、発音さ
れる音量と音色を独立して制御できることが、本実施例
の大きな特徴である。Therefore, in this embodiment, the timer 304 in the MCP a shown in FIG. 1 is started at the time when the detection of the digital output DI is started, and is stopped at the time when the sound generation of musical tones is started. Then, by dividing the timing result by the previous pitch cycle, it is possible to measure how many cycles are required from the start of waveform detection to the start of sound generation, and this is used as the tone information for the first pitch cycle.
It is transferred to the musical tone generation circuit 501 shown in the figure. As a result, when the value of the tone color information is large, the musical tone generation circuit 501
For example, by controlling the envelope or overtones of a musical sound so that it has a hard tone, and conversely, when the value is small, controlling it so that it has a soft tone, a musical tone with a tone that corresponds to the roughness of the string picking can be produced. can be done. As described above, the volume is controlled independently of the timbre control described above based on the maximum peak value a0 at the rise of the digital output D1, so the volume and timbre of the sound can be controlled independently. This is a major feature of this embodiment.
上記動作は、ギターの6弦分の時分割ディジタル出力D
1について時分割処理されるため、楽音発生回路501
からは6弦分の楽音を聴覚的に同時に発音させることが
できる。そして、これらの楽音は、自由な音量・音色に
設定でき、電子的に各種の効果を付加できるため、極め
て大きな演奏効果が得られる。The above operation is based on the time-division digital output D for the six strings of the guitar.
1 is time-divisionally processed, the musical tone generation circuit 501
It is possible to aurally produce six strings' worth of musical tones at the same time. 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.
ビ・・チ −゛イジル の
上記動作を実現するための本実施例の01作につき、以
下に詳細に説明を行ってゆく。The first work of this embodiment for realizing the above-mentioned operation of the Bi-Child will be explained in detail below.
」黴痘軌作y
まず、第1図又は第2図のピンチ抽出ディジタル回路2
の動作について説明を行う。なお、以下の説明において
も1弦分についてのみ説明し、シリアルゼロクロス信号
ZCR、ディジタル出力DI、最大・最小ピーク値検出
信号MAX、MINは1弦分のイメージで説明するが、
実際には6弦分について時分割処理されている。First, the pinch extraction digital circuit 2 shown in Figure 1 or Figure 2.
We will explain the operation of. In the following explanation, only one string will be explained, and the serial zero cross signal ZCR, digital output DI, maximum/minimum peak value detection signals MAX and MIN will be explained using the image of one string.
Actually, time-division processing is performed for six strings.
同回路2では、各弦毎に第10図のディジクル出力D1
から、ピーク値a。−aコ又はす。〜b3等を抽出し、
同時に各ピーク値の直後のゼロクロス時刻t、xt、等
を抽出し、更に、各ゼロクロス時刻の直前のピーク値が
正か負かにより1又は0を示す情報を抽出して、第1図
のMCP3に供給する。これに基づいて、MCP3は前
記ゼロクロス時刻の間隔から第10図の各ピッチ周期T
o ”−T s等を抽出して、また、その他前記各種
楽音情報を生成し、更に、後述するように必要に応じて
、エラー処理、ノートオフ(消音)処理、リラティブオ
ン・オフの処理等を行う。In the same circuit 2, the digital output D1 shown in FIG. 10 is generated for each string.
, the peak value a. -a Komasu. ~ Extract b3 etc.,
At the same time, the zero-crossing times t, xt, etc. immediately after each peak value are extracted, and information indicating that the peak value immediately before each zero-crossing time is 1 or 0 depending on whether it is positive or negative is extracted. supply to. Based on this, the MCP3 calculates each pitch period T in FIG. 10 from the interval of the zero crossing time.
o ”-Ts, etc., and generates the various other musical tone information, and further performs error processing, note-off processing, relative on/off processing, etc., as necessary, as will be described later. I do.
」庇星飲咋y
そのために、第2図のピーク検出回路201では、第1
0図のように入力してくるディジタル出力D1に対して
、まず、その値が負となる部分で、その絶対値が0を越
えたタイミングXoで、第10図に示すような最小ピー
ク値検出信号MINがハイレベルになる。Therefore, in the peak detection circuit 201 of FIG.
For the digital output D1 inputted as shown in Fig. 0, first, at the timing Xo when the absolute value exceeds 0 in the part where the value becomes negative, the minimum peak value is detected as shown in Fig. 10. The signal MIN becomes high level.
これにより、第2図の波高値取込回路203は、上記最
小ピーク値検出信号MINがハイレベルとなった直後の
タイミングX1で、別に入力するディジタル出力DIか
ら最小ピーク値(負側の波高値)bo(絶対値)を検出
して特には図示しないラッチにホールドし、これと共に
最小ピーク値検出信号MINをローレベルに戻す。As a result, the peak value acquisition circuit 203 in FIG. 2 obtains the minimum peak value (the negative peak value )bo (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 a 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 a signal that a comparator (not shown) in the pitch extraction analog circuit 1 determines whether the digital output D1 is positive or negative, and outputs from the comparator as a binary digital signal of high level or low level accordingly.
そして、ゼロクロス時刻取込回路204では、前記ピー
ク検出回路201から出力される最小ピーク値検出信号
MINがタイミングX。でハイレベルとなった直後に、
シリアルゼロクロス信号ZCRが変化するエツジタイミ
ング、すなわち、ディジタル出力D1のゼロクロス時点
で、第2図のタイムベースカウンタ2041で計時され
ている時刻to (第10図)をラッチする。なお、
このラッチデータの最上位ビットに、直前のピーク値が
正であるか負であるかを示すlまたはOの正負フラグ(
最小ピーク値boに対してはOとなる)が付加される。In the zero-cross time acquisition circuit 204, the minimum peak value detection signal MIN output from the peak detection circuit 201 is at timing X. Immediately after reaching a high level,
At the edge timing when the serial zero-crossing signal ZCR changes, that is, at the zero-crossing point of the digital output D1, 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 (I or O indicating whether the previous peak value is positive or negative).
O for the minimum peak value bo) is added.
更に、ゼロクロス時刻取込回路204は上記動作に連続
して第1図のMCP3に割り込み信号INTを出力する
。これにより、割り込み信号INTが発生した時点にお
いて、第2図の波高値取込回路203には最小ピーク値
bQ (絶対値)がホールドされ、ゼロクロス時刻取
込回路204には最小ピーク値b0の発生直後の前記正
負フラグを含むゼロクロス時刻がラッチされている。Furthermore, the zero-crossing time acquisition circuit 204 outputs an interrupt signal INT to the MCP3 in FIG. 1 following the above operation. As a result, at the time when the interrupt signal INT is generated, the minimum peak value bQ (absolute value) is held in the peak value acquisition circuit 203 in FIG. 2, and the minimum peak value b0 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.
が、バスBtJSを介してMCP3に転送される。is transferred to MCP3 via bus BtJS.
なお、以上の処理は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図の最小ピ
ーク値b0 (絶対値)をピークホールドし、第1O図
のピークホールド信号qaを出力する。これにより、ピ
ーク検出回路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 b0 (absolute value) of FIG. 10, and outputs the peak hold signal qa of FIG. Output. As a result, the peak detection circuit 201 uses the peak hold signal (absolute value) as a threshold value, and returns the minimum peak value detection signal again at timing X2 when the absolute value of the negative side of the digital output D1 exceeds the threshold value. Set MIN to high level.
これにより、前記と全く同様にして、第2図の波高値取
込回路203で、最小ピーク値検出信号MINがハイレ
ベルとなった直後のタイミングx3で次の最小ピーク値
bl (絶対値)がホールドされ、第2図のゼロクロ
ス時刻取込回路204で、上記最小ピーク値b1の発生
直後の正負フラグ(この場合も0)を含むゼロクロス時
刻t2がラッチされ、割り込み信号INTの送出後、M
CP3に転送される。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-cross time acquisition circuit 204 in FIG. 2 latches the zero-cross time t2 including the positive/negative flag (also 0 in this case) immediately after the occurrence of the minimum peak value b1, and after sending the interrupt signal INT, the M
Transferred to CP3.
上記に基づく、第10図のディジタル出力D1の負側に
対する最小ピーク値b@−b3 (絶対値)、ゼロクロ
ス時刻to、tz、 t4+ t6等の検出、及び
ピークホールド信号qO−92等の出力動作と全く同様
にして、ディジタル出力D1の正側に対して最大ピーク
値ao””33等の検出、ゼロクロス時刻”r t3
+ j5+ t、等の検出、及びピークホールド信
号PO”’P3等の出力動作が並列して行われる。なお
、この場合は、ピーク検出回路201から最大ピーク値
検出信号MAXが第10図に示すように出力され、第2
図の波高値取込回路203及びゼロクロス時刻取込回路
204においては、この信号MAXに基づいて最大ピー
ク値a6”−a3等、及び正負フラグ(この場合、正ピ
ークであるから1)を含むゼロクロス時刻t、+ t
3+ ts、 tフ等がラッチされる。Based on the above, detection of minimum peak value b@-b3 (absolute value), zero cross time to, tz, t4+t6, etc. for the negative side of digital output D1 in FIG. 10, and output operation of peak hold signal qO-92, etc. In exactly the same manner as above, the maximum peak value ao""33, etc. is detected on the positive side of the digital output D1, and the zero cross time "r t3 is detected.
+j5+t, etc., and the output operation of the peak hold signal PO'''P3, etc. are performed in parallel.In this case, the maximum peak value detection signal MAX from the peak detection circuit 201 is as shown in FIG. The second
In the peak value acquisition circuit 203 and zero cross time acquisition circuit 204 shown in the figure, based on this signal MAX, the maximum peak value a6''-a3, etc., and the zero cross including the positive/negative flag (in this case, 1 because it is a positive peak) Time t, +t
3+ts, tf, etc. are latched.
以上に示した動作により、第2図のゼロクロス時刻取込
回路204からは、第10図のゼロクロス時刻L0〜t
7の各時刻毎に割り込み信号INTが第1図のMCP3
に出力され、これに基づいた各時刻毎に、最小又は最大
ピーク値(wA対値)とゼロクロス時刻の組として、b
oとjo、a。Through the operations described above, the zero-crossing time acquisition circuit 204 in FIG. 2 outputs the zero-crossing times L0 to t in FIG.
7, the interrupt signal INT is sent to MCP3 in FIG.
b is output as a set of the minimum or maximum peak value (wA vs. value) and zero cross time for each time based on this
o and jo, a.
とt、 、b、とj2、alとL3+”’等が順次MC
P3へ出力される。ここでMCP3において、最小ピー
ク値(負側のピーク値)であるのか最大ピーク値(正側
のピーク値)であるのかの判定は、ゼロクロス時刻の最
上位ビットに付加されている前記正負フラグにより可能
である。and t, , b, and j2, al and L3+'', etc. are sequentially MC
Output to P3. Here, in MCP3, the determination as to whether it is the minimum peak value (peak value on the negative side) or the maximum peak value (peak value on the positive side) is based on the positive/negative flag added to the most significant bit of the zero cross time. It is possible.
なお、上記動作の他に、第2図の波高値取込回路203
はMCP3からのアクセスによりディジタル出力Diの
瞬時値を任意に出力できる。これについては後述する。In addition to the above operation, the peak value acquisition circuit 203 in FIG.
can arbitrarily output the instantaneous value of the digital output Di by accessing from the MCP3. This will be discussed later.
また、第2図のピーク検出回路201内のピークホール
ド回路で発生される第10図のピークホールド信号p0
〜P31 qO〜q3等の各減衰率(時定数)は、M
CP3の制御下で第20の時定数変換制御回路202に
よって随時変更される。Furthermore, the peak hold signal p0 in FIG. 10 generated by the peak hold circuit in the peak detection circuit 201 in FIG.
~P31 Each attenuation rate (time constant) of qO~q3 etc. is M
It is changed as needed by the 20th time constant conversion control circuit 202 under the control of CP3.
基本的には、ディジタル出力DIの例えば1ピッチ周期
時間が経過した後に、上記ピークホールド信号が急速に
減衰するようにその時定数を変更する。そして、このと
きのピンチ周期情報の設定は、第1図のMCP3が後述
する動作により、各ピッチ周期の抽出を行った後にバス
BUsを介して、時定数変換制御回路202内の時定数
変換レジスタCHTRR(後述する)にピンチ周期情報
をセットして行う。これにより、時定数変換制御回路2
02は、内部に設けられた特には図示しない各弦独立の
カウンタと、MCP3から時定数変換レジスタCRTR
Rに設定されたピッチ周期情報との一致比較を行い、ピ
ッチ周期時間が経過して一致出力が発生した時点で、時
定数チェンジ信号を前記ピーク検出回路201へ送出す
る。この動作により、ピークホールド信号は1ピッチ周
期の時間が経過すると、急速に減衰し、これにより次の
ピッチ周期のピークが適切に検出される。Basically, the time constant is changed so that the peak hold signal is rapidly attenuated after, for example, one pitch period of the digital output DI has elapsed. The setting of the pinch period information at this time is performed by the MCP3 in FIG. This is done by setting pinch cycle information in CHTRR (described later). As a result, the time constant conversion control circuit 2
02 is an internally provided counter independent of each string (not shown) and a time constant conversion register CRTR from MCP3.
A match comparison is made with the pitch cycle information set in R, and when a match output is generated after the pitch cycle time has elapsed, a time constant change signal is sent to the peak detection circuit 201. 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 timing of these signals, and the next peak hold signal is generated.
また、各弦の振動周期は、演奏者がフレット上で当該弦
を押さえる位置によって幅広く変化するため、ディジタ
ル出力D1の各弦に対応する波形の立ち上がり時には、
その波形の振動を速やかに検知すべく、各弦の最高音周
期時間経過にてピークホールド信号が急速減衰し、その
直後は、各ピ・ソチ周期の倍音を拾わないように、各弦
の開放弦周期(最低音周期)時間経過にて急速減衰する
ように設定が行われる。そして、ピッチ周期が有効に抽
出された後は、当該ピッチ周期時間経過にて急速減衰す
るように設定が行われ、演奏操作によるディジタル出力
D1の各弦のピッチ周期の変化に追従する。Furthermore, since the vibration period of each string varies widely depending on the position where the player presses the string on the fret, at the rise of the waveform corresponding to each string of the digital output D1,
In order to quickly detect the vibration of the waveform, the peak hold signal rapidly attenuates as the highest pitch period of each string elapses, and immediately after that, each string is opened so as not to pick up the overtones of each pisochi period. Settings are made so that the string period (lowest note period) rapidly attenuates over time. Then, after the pitch period is effectively extracted, settings are made so that the pitch period rapidly decays as time passes, and follows changes in the pitch period of each string of the digital output D1 caused by the performance operation.
更に、ピッチ検出回路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が、ピッチ抽出及び音量・音色に関するパラメ
ータの抽出を行うことにより、楽音発生回路501を制
御するための楽音制御情報を発生する。なお、MCP3
はROM301に記憶されたプログラムに従って、以下
に詳細に説明するように第3図〜第9図に示す動作フロ
ーチャートを実行する。Through the above-described operation of the MCP, the MCP 3 in FIG. 1 performs pitch extraction based on the maximum or minimum peak value, the zero-crossing time, and the positive/negative flag indicating the positive/negative of the peak value supplied from the pitch extraction circuit 2 in FIG. By extracting parameters related to the volume and timbre, musical tone control information for controlling the musical tone generating circuit 501 is generated. In addition, MCP3
In accordance with the program stored in the ROM 301, the operation flowcharts shown in FIGS. 3 to 9 are executed as described in detail below.
一〇L鯰91」L−
はじめに、後述する第3図〜第9図の動作フローチャー
トで示される制御プログラムにおいて用いられる各変数
について、以下に列挙しておく。10L Catfish 91''L- First, each variable used in the control program shown in the operation flowcharts of FIGS. 3 to 9, which will be described later, will be listed below.
AD・・・第1図のピッチ抽出ディジタル回路2への入
力波形D1を直接読ん
だ入力波高値(1時値)
AMP (0,1) ・・−正又は負の前回(old
)の波高値(ピーク値)
AMRLI・・・振幅レジスタで記憶されているリラテ
ィブ(relative)オフ(off )のチエツク
のための前回
の振幅値(ピーク値)である。こ
こで、前記リラティブオフとは波
高値が急激に減衰してきたことに
基づき消音することで、フレット
操作をやめて開放弦へ移ったとき
の消音処理に相当する。AD...Input wave height value (1 o'clock value) obtained by directly reading the input waveform D1 to the pitch extraction digital circuit 2 in Fig. 1 AMP (0,1)...-Positive or negative previous (old)
) AMRLI: This is the previous amplitude value (peak value) for checking relative off, which is stored in the amplitude register. Here, the above-mentioned relative off is to mute the sound based on the rapid attenuation of the peak value, and corresponds to the muting process when the fret operation is stopped and the string is moved 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.
CRTIM・・・最高音フレット(22フレツト目)に
対応する周期
CRTIO・・・開放弦フレットに対応する周期
CHTRR・・・時定数変換レジスタで、上述の時定数
変換制御回路202
(第2図)の内部に設けられてい
る。CRTIM...Period corresponding to the highest fret (22nd fret) CRTIO...Period corresponding to the open string fret CHTRR...Time constant conversion register, described above in the time constant conversion control circuit 202 (Fig. 2) is located inside.
DUB・・・波形が続けて同一方向にきたことを示すフ
ラグ、
FOFR・・・リラティブオフカウンタ、HNC・・・
波形ナンバーカウンタ
MT・・・これからピッチ抽出を行う側のフラグ(正=
1、負−0)
NCHLV・・・ノーチェンジレベル(定数)OFTI
M・・・オフタイム(例えば当言亥弦の開放弦周期に相
当)
OFPT・・・通常オフチエツク開始フラグONF・・
・ノートオンフラグ
RIV・・・後述のステップ(STEP)4での処理ル
ートの切替を行うため
のフラグ
ROFCT・・・リラティブオフのチエツク回数を定め
る定数
R3P・・・発音開始までに何周期分かかったかを設定
する変数
5TEP・・・MCP3のフロー動作を指定するレジス
タ(1〜5の値をとる)
TF・・・有効となった前回のゼロクロス時刻データ
TFN(0,1) ・・・正または負のピーク値直後
の前回のゼロクロス時刻デ
ータ
TFR・・・時刻記憶レジスタ
THLIM・・・周波数上限(定数)
TLLIM・・・周波数下限(定数)
TP (0,1) ・・・正または負の前回の周期デ
ータ
TRLAB (0,l) ・・・正または負の絶対ト
リガレベル(ノートオンしき
い値)
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, HNC...
Waveform number counter MT: Flag for the side from which pitch extraction will be performed (positive =
1, negative - 0) NCHLV...No change level (constant) OFTI
M...Off time (e.g. corresponds to the open string period of the current string) OFPT...Normal off-check start flag ONF...
・Note-on flag RIV...Flag ROFCT for switching the processing route in step 4 (described later)...Constant R3P that determines the number of relative off checks...How many cycles it takes to start sounding Variable 5TEP...Register that specifies the flow operation of MCP3 (takes a value of 1 to 5) TF...Previous zero-crossing time data that became valid TFN (0, 1)...Positive or Previous zero cross time data immediately after the negative peak value TFR...Time memory register THLIM...Frequency upper limit (constant) TLLIM...Frequency lower limit (constant) TP (0,1)...Previous positive or negative value Periodic data TRLAB (0, l)...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 TTP...Previously extracted cycle data TTR...Cycle 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), determined by the maximum peak value of the waveform at the start of sound generation.
X・・・異常または正常状態を示すフラグb・・・ワー
キングレジスタBに記憶されている今回正負フラグ(正
ピークの
次のゼロ点のとき1、負ピークツ
次のゼロ点のとき0)
C・・・ワーキングレジスタCに記憶されている今回波
高値(ピーク値)
e・・・ワーキングレジスタ已に記憶されている前々回
波高値(ピーク値)
h・・・ワーキングレジスタHに記憶されている前々回
抽出された周期データ
t・・・ワーキングレジスタTOに記憶されている今回
のゼロクロス時刻
11・・・ワーキングレジスタTOTOに記憶されてい
る今回の周期情報
′み ルーチンの
次に、第3図は、MCP3ヘピッチ抽出ディジタル回路
2内のゼロクロス時刻取込回路204(第2図)から、
割り込み信号INTにより割り込みがかけられたときの
処理を示す割り込み処理ルーチンの動作フローチャート
を示した図である。X: Flag indicating abnormality or normal status b: Current positive/negative flag stored in working register B (1 when the zero point follows the positive peak, 0 when the zero point follows the negative peak) C. ... Current wave height value (peak value) stored in working register C e... Wave height value (peak value) from the previous time stored in working register H... h... Extraction from the previous time stored in working register H The current cycle data t stored in the working register TO... Current cycle information stored in the working register TOTO Next to the routine, Fig. 3 shows the pitch to MCP3. From the zero cross time acquisition circuit 204 (FIG. 2) in the extraction digital circuit 2,
FIG. 3 is a diagram showing an operation flowchart of an interrupt processing routine showing processing when an interrupt is generated by an interrupt signal INT.
前記したように、ゼロクロス時刻取込回路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図の■lにおいて、アドレ
スデコーダ4に所定のアドレス読み出し信号ARをセッ
トし、第2図のゼロクロス時刻取込回路204に対して
、弦番号読み込み信号m■■を出力させる。これにより
同回路204からは、まずどの弦番号について上記割り
込みが発生したのかを示す弦番号が、バスBUSを介し
てMCP3に出力される。続いて、MCP3はアドレス
デコーダ4に別のアドレス読み出し信号ARをセットし
、ゼロクロス時刻取込回路204に対して、時刻読み込
み信号Ir7−丁丁TTV■のうち上記弦番号に対応す
る信号を出力させる。Therefore, the MCP 3 first sets a predetermined address read signal AR in the address decoder 4 at 1 in FIG. 3, and outputs a string number read signal m to the zero-cross time acquisition circuit 204 in FIG. let 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 in the address decoder 4, and causes the zero-crossing time acquisition circuit 204 to output a signal corresponding to the string number among the time read signals Ir7-DingTTV■.
これにより同回路204からは、上記時刻読み込み信号
RD IMi (i=1〜6のうちいずれか)で指
定される弦番号対応のラッチにセントされているゼロク
ロス時刻情報が、バスBUSを介してMCP3に出力さ
れる。これを第3図■1に示すように今回のゼロクロス
時刻むとする。As a result, the zero-crossing time information sent from the same circuit 204 to the latch corresponding to the string number specified by the time reading signal RD IMi (i=one of 1 to 6) is transmitted to the MCP3 via the bus BUS. is output to. Assume that this is the current zero cross time as shown in Figure 3 (1).
続いて、第3図の12において、前記「ピッチ抽出ディ
ジタル回路の動作」の項で説明したように、ゼロクロス
時刻情報の最上位ビットに付加されている正負フラグを
取り出しこれを今回正負フラグbとする。Next, at 12 in FIG. 3, as explained in the section "Operation of the pitch extraction digital circuit", the positive/negative flag added to the most significant bit of the zero-crossing time information is taken out and is designated as the current positive/negative flag b. do.
その後、第3図のI3において、MCP3は前記と同様
にアドレスデコーダ4を介して、第2図の波高値取込回
路203に対して、ピーク値読み込み信号■■W丁(j
=1〜12のうちいずれか)を出力させる。ここで、同
回路203内には、特には図示しないが、6弦分の最大
ピーク値及び最小ピーク値をホールドする12個のラッ
チがあるため、MCP3は前記弦番号及び正負フラグb
に基づいて、上記ピーク値読°み込み信号RDAjを選
択して出力させる。これにより同回路203からは、当
該ピーク値読み込み信号RDAjで指定されるラッチに
セットされている最大ピーク値または最小ピーク値(絶
対値)が、ハスBUSを介してMCP3に出力される。Thereafter, at I3 in FIG. 3, the MCP 3 sends a peak value reading signal ■■W ding (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 reading signal RDAj is selected and output. As a result, the circuit 203 outputs the maximum peak value or minimum peak value (absolute value) set in the latch specified by the peak value read signal RDAj to the MCP 3 via the Hass BUS.
これを第3図13に示すように、今回ピーク値Cとする
。This is set as the current peak value C, as shown in FIG. 3, 13.
以上の動作の後、第3図の■4において、上記のように
して得たt、C,bの値をMCPa内の特には図示しな
いレジスタTo、C,Bにセットする。このレジスタに
は、上記割込み処理がなされる都度、このようなゼロク
ロス時刻情報、ピーク値情報(絶対値)、ピークの種類
を示す正負フラグの情報がワンセットとして書込まれて
いき、後述するメインルーチンで、各弦毎にかかる情報
に対する処理がなされる。After the above operations, in step 4 of FIG. 3, the values of t, C, and b obtained as described above are set in registers To, C, 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, peak value information (absolute value), and positive/negative flag information indicating the type of peak. The routine processes this information for each string.
なお、上記レジスタTO,C,Bは、6弦に対応して6
個ずつあり、以下第4図〜第9図に説明する楽音制御の
処理は、6弦分について全て時分割で行われるが、これ
以後は簡単のため1弦分の処理について述べてゆく。Note that the above registers TO, C, and B correspond to the 6th string.
The musical tone control processing explained below in FIGS. 4 to 9 is performed in a time-division manner for all six strings, but from now on, for simplicity, the processing for one string will be described.
メインルーチンのΦ
第4図は、メインルーチンの処理を示す動作フローチャ
ートである。ここでは、パワーON後の初期化(イニシ
ャライズ)、楽音のノートオフ(消音)処理、及び5T
EPO−3TEP4 (又は5)の各処理の選択の処理
を行う。本実施例では、楽音制御の処理を後述するよう
にステップという処理概念で行っており、後述するよう
に、5TEPO→5TEPI→5TEP2→5TEP3
→5TEP4 (→5TEP5)→5TEPOという
順で楽音制御を行ってゆく。Φ of Main Routine FIG. 4 is an operation flowchart showing the processing of the main routine. Here, initialization after power-on, musical note-off processing, and 5T
EPO-3TEP4 (or 5) selection process is performed. In this embodiment, the musical tone control process is performed using the processing concept of steps, as described later.
Musical tone control is performed in the order of →5TEP4 (→5TEP5) →5TEPO.
1基本歎在Y
第4図において、まず、パワーオン(電源投入)するこ
とにより、Mlにおいて各種レジスタやフラグがイニシ
ャライズされ、レジスタ5TEPが0とされる。またこ
の場合、前記「ピッチ抽出ディジタル回路の動作」の項
の時定数変換制御回路202(第2図)の説明において
述べたように、初期状態において、ピーク検出回路20
1 (第2図)がディジタル出力D1の波形の立ち上が
り時の振動を速やかに検知できるように、MCP3がバ
スBUSを介して時定数変換制御回路202内の時定数
変換レジスタCRTRRに最高音フレット周期CHTr
Mをセントし、ピーク検出回路201内のピークホール
ド回路から出力されるピークホールド信号(第10図p
oまたはqo等)が、最高音周期時間経過にて象、速減
衰するように制御される。1 Basic Status In FIG. 4, first, by turning on the power, various registers and flags are initialized in M1, and register 5TEP is set to 0. Furthermore, in this case, as described in the explanation of the time constant conversion control circuit 202 (FIG. 2) in the section "Operation of pitch extraction digital circuit", in the initial state, the peak detection circuit 202
1 (Fig. 2), the MCP3 inputs the highest frequency fret period into the time constant conversion register CRTRR in the time constant conversion control circuit 202 via the bus BUS so that the vibration at the rise of the waveform of the digital output D1 can be quickly detected. CHTr
M, and the peak hold signal output from the peak hold circuit in the peak detection circuit 201 (Fig. 10, p.
o or qo, etc.) is controlled so that it decays rapidly as the highest sound period elapses.
続いて、第4図のM2で、前記「割り込み処理ルーチン
の動作」の項で説明したレジスタが空かどうかが判断さ
れ、ノー(以下、Noと称す)の場合にはM3に進み、
各レジスタB、C,TOの内容が読まれる。続いて、M
4において、レジスタ5TEPの値はいくつかが判断さ
れ、M5では5TEPO,M6では5TEPI、M7で
は5TEP2.M8では5TEP3、M9では5TEP
4の処理が順次実行される。なお、次のステップへの更
新は、後述するように各5TEPO〜5TEP4の処理
において行われる。Next, in M2 of FIG. 4, it is determined whether the register described in the section of "Operation of Interrupt Handling Routine" above is empty, and if the answer is No (hereinafter referred to as No), the process advances to M3.
The contents of each register B, C, TO are read. Next, M
4, several values of register 5TEP are determined: 5TEPO in M5, 5TEPI in M6, 5TEP2 in M7. 5TEP3 for M8, 5TEP for M9
Processes No. 4 are executed sequentially. Note that the update to the next step is performed in each of the processes of 5TEPO to 5TEP4, as described later.
ノートオフφ
前記M2でバッファが空の場合、すなわちイエス(以下
、YESと称する)の場合、M10〜M19への処理に
進み、ここで通常のノートオフのアルゴリズムの処理が
行われる。このノートオフのアルゴリズムは、ディジタ
ル出力DI(第1図)において、その波高値がオフ(O
FF)レベル以下の状態が所定のオフタイム時閲読いた
ら、ノートオフするアルゴリズムである。Note-off φ If the buffer is empty in M2, that is, in the case of YES (hereinafter referred to as YES), the process proceeds to M10 to M19, where normal note-off algorithm processing is performed. This note-off algorithm is used when the peak value of the digital output DI (Figure 1) is off (O
FF) This is an algorithm that notes off when a state below the level is read during a predetermined off time.
まず、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図)へピーク値読み込み信号W丁〜[丁のいずれ
かを与
えることにより、同回路203がディジタル出力D1の
現在の瞬時値を、バスBTJSを介してMCP3に出力
することで達成できる。そして、この値ADが、予め設
定したオフレベル以下かどうかが判断され、Noの場合
はノートオフする必要がないためM2に戻り、YESの
場合には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 because the MCP 3 uses the peak value acquisition circuit 203 via the address decoder 4.
This can be achieved by applying one of the peak value reading signals W to (Fig. 2) to cause the circuit 203 to output the current instantaneous value of the digital output D1 to the MCP3 via the bus BTJS. . Then, it is determined whether or not this value AD is below a preset off level. If NO, there is no need to note off, and the process returns to M2; if YES, the process proceeds to M12.
Ml2では、前回の入力波高値ADがオフレベル以下か
どうかが判断され、Noの場合には、Ml7に進みMC
P3内のタイマ303をスタートし、M2に戻る。そし
て、次に再びこの処理にきたときに、Ml2はYESと
なるため、Ml3に進み、ここでタイマ303の値がオ
フタイムOFTIMかどうかが判断される。オフタイム
OFTrMとしては例えば処理をしている弦の開放弦)
レット周期CHTIOがセットされており、M2SでN
Oの場合にはM2に戻って処理が繰り返され、YESと
なるとM14に進み、レジスタ5TEPにOを書き込み
、時定数変換レジスタCRTRRへ最高音フレット周期
CRTIMをセットした後、M、15を介して(後述す
る)、M2Sに進む。すなわち、ディジタル出力D1の
レベルが減衰してきた場合、オフレベル以下の人力波高
値ADがオフタイム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 Ml7 and the MC
Start the timer 303 in P3 and return to M2. Then, the next time this processing is started again, M12 becomes YES, so the process advances to M13, where it is determined whether the value of the timer 303 is the off time OFTIM. For example, the off-time OFTrM is the open string of the string being processed)
Let cycle CHTIO is set and N in M2S
If it is O, it returns to M2 and the process is repeated, and if it is YES, it proceeds to M14, writes O to register 5TEP, sets the highest fret period CRTIM to time constant conversion register CRTRR, and then (described later), proceed to M2S. That is, when the level of the digital output D1 is attenuated, if the human power wave peak value AD below the off level continues for a time corresponding to the off time OFTIM,
Since the digital output D1 is not input and it can be determined that the string is no longer played, the process advances to M2S and note-off processing is performed.
M2Sでは、MCP3が楽音発生回路501(第1図)
に対して、ノートオフの指示を送出し、これにより楽音
の発音が停止される。このようにノートオフされた場合
には、必ず5TEPOに戻る。In M2S, MCP3 is a musical tone generation circuit 501 (Fig. 1)
A note-off instruction is sent to the user, and the sound generation of the musical tone is thereby stopped. When the note is turned off in this way, the signal always returns to 5TEPO.
なお、ステップ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. By returning to M2 after processing M2S, it is initialized to 5TEPO.
5TEPOの几 重
次に、第4図のメインルーチンにおいて分岐して対応す
る処理を行う各ルーチンの詳細について説明を行う。5TEPO Process Next, details of each routine that branches from the main routine of FIG. 4 and performs corresponding processing will be explained.
まず、第5図は、第4図のメインルーチンのM5として
示すステップ0 (STEPO)の処理の動作フローチ
ャートである。この処理においては、ピッチ抽出処理等
のための初期設定、及び次の5TEP 1への移行処理
を行う。以下第11図の基本動作説明図を用いて説明を
行う。なお、第11図は第1O図と同一の波形である。First, FIG. 5 is an operational flowchart of the process of step 0 (STEPO) shown as M5 of the main routine of FIG. In this processing, initial settings for pitch extraction processing, etc., and transition processing to the next 5TEP 1 are performed. The explanation will be given below using the basic operation explanatory diagram of FIG. 11. Note that FIG. 11 has the same waveform as FIG. 1O.
1基土勤立Y
今、第4図のメインルーチンは、M2とMIOのループ
の繰り返しにより、前記「割り込み処理ルーチンの動作
」の項において説明したように、ピッチ抽出ディジタル
回路2(第1図)から割り込みが掛かって、レジスタT
o、C,Bにデータが入力するのを待っている。Now, the main routine shown in Fig. 4 executes the pitch extraction digital circuit 2 (Fig. 1) by repeating the loop of M2 and MIO. ), an interrupt is generated and the register T
Waiting for data to be input to o, C, and B.
そして、データが入力し、第4図のM2からM3を経て
上記各レジスタの内容が読み込まれると、M4を介して
M5、即ち第5図の5TEPOに移る。この状態におい
ては、例えば第11図に示すように、今回のゼロクロス
時刻1=1. 、今回正負フラグb=o、今回ピーク値
Cはb=oより最小ピーク値でc=bo(絶対値)であ
る。なお、第11図でbとす。−b3等は異なる記号で
ある。When data is input and the contents of each of the registers are read through M2 and M3 in FIG. 4, the process moves through M4 to M5, that is, 5TEPO in FIG. 5. In this state, for example, as shown in FIG. 11, the current zero cross time 1=1. , the current positive/negative flag b=o, and the current peak value C is the minimum peak value from b=o, which is c=bo (absolute value). In addition, it is designated as b in Fig. 11. -b3 etc. are different symbols.
まず、第5図の301において、今回ピーク値Cの値が
、絶対トリガレベル(ノートオンのための正の闇値)T
RLAB(b)より大きいか否かが判定される。なお、
この判定は、今回正負フラグbの値に基づき正と負の各
極性(最大ピーク値又は最小ピーク値)の各々について
実行され、正側の絶対トリガレベルTRLAB (1)
と負側の絶対トリガレベルTRLAB (0)は、ディ
ジタル出力DI(第1図)にオフセットが重畳された場
合等を考慮して、経験的に別々の値に設定することがで
きる。理想的なシステムでは同じ値でよい。First, at 301 in FIG. 5, the current peak value C is the absolute trigger level (positive dark value for note-on) T
It is determined whether it is larger than RLAB(b). In addition,
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 positive absolute trigger level TRLAB (1)
The absolute trigger level TRLAB (0) on the negative side 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.
第11図の例では、今回最小ピーク値c−b。In the example of FIG. 11, the current minimum peak value c-b.
(絶対値) とTRLAB (b)=TRLAB (0
)とが比較され、c = b o > T RL A
B (0) 、即ち判定はYESとなる。(absolute value) and TRLAB (b) = TRLAB (0
) are compared, and c = b o > T RL A
B (0), that is, the determination is YES.
次に、SO2を経た後(後述する)、SO3の処理が実
行される。ここでは、まず、今回正負フラグbがフラグ
MTに書き込まれ、レジスタ5TEPに1が書き込まれ
て次のステップへの移行準備がなされ、更に、今回のゼ
ロクロス時刻tが以降の処理のために前回のゼロクロス
時刻データTFN (b)として設定される。第11図
の例では、同図に示すようにMT=b=O1TFN (
b)=T F N (0) −t = t oとなる。Next, after passing through SO2 (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. 11, as shown in the figure, MT=b=O1TFN (
b) = T F N (0) -t = t o.
続いて、SO4において、[変数の説明Jの項に示した
上記フラグ以外のその他フラグ類(定数値を除く)が初
期化される。Subsequently, in SO4, other flags (excluding constant values) other than the above flags shown in the section ``Variable Description J'' are initialized.
更に、SO5においては、今回ピーク値Cが以降の処理
のために前回のピーク値AMP(b)(絶対値)として
セットされ、第4図のメインル−チンのM2の処理に戻
る。第11図の例では、同図に示すように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 in FIG. In the example of FIG. 11, AMP (b
)=AMP (0)=c=b6.
以上の処理により、第11図の例では、同図(STEP
O→1の間)に示すようにフラグMTにレジスタBの今
回正負フラグb=oが書き込まれ、負側の前回のゼロク
ロス時刻のデータTFN(0)にレジスタTOの今回の
ゼロクロス時刻データt ” t oが書き込まれ、負
側の前回のピーク4mAMP(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 to flag MT, and the current zero crossing time data t of register TO is written to data TFN (0) of the previous zero crossing time on the negative side. to is written, and the current minimum peak value c=b6 of register C is written to the previous peak 4mAMP(0) on the negative side.
1某五肱失■作Y
なお、第5図のSolにおいて、今回ピーク値Cの値が
絶対トリガレベルTRLAB (b)以下の場合は、発
音(ノートオン)の処理へは移行せず、SO5において
前回のピーク値AMP (b)に今回ピーク値Cの値を
セットするだけで、第4図のメインルーチンへ戻る。と
ころが、1本の弦をピッキングすることにより、他の弦
が共振を起こすような場合、当該他の弦については振動
のレベルが徐々に大きくなり、やがて第5図のSOIの
判定結果がYESとなり、S02の処理に移る。1 Loss of Five Elbows ■ Work Y Note that in Sol shown in Figure 5, if the current peak value C is below the absolute trigger level TRLAB (b), the process does not proceed to the sound generation (note-on) process and SO5 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 shown in FIG. However, when picking one string causes other strings to resonate, the vibration level of those other strings gradually increases, and eventually the SOI judgment result in Figure 5 becomes YES. , the process moves to S02.
しかし、このような場合、正規のピッキングを行った訳
ではないので、発音(ノートオン)の動作に移行するの
は妥当ではない。そこで、SO2の処理において上記共
振の除去を行う。即ち、上記のような場合、今回ピーク
値Cは前回のピーク値AMP (b)に比べてほとんど
大きくなっていないため、その差c−AMP (b)が
共振除去しきい値TRLR3より大きくない場合には、
上記共振状態が発生したと判定して、発音処理へは移行
せず、305において前回のピーク値AMP (b)に
今回ピーク値Cの値をセットするだけで、第4図のメイ
ンルーチンに戻る。一方、第11図のような正常なピッ
キングを行った場合に、波形が象、激に立上ることにな
り、前記ピーク値の差c−AMP (b)は共振除去閾
値T RL RSを越え、前記したようにSO2からS
O3の処理へ移行する。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, the current peak value C is hardly larger than the previous peak value AMP (b), so if the difference c-AMP (b) is not larger than the resonance removal threshold TRLR3. for,
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 process returns to the main routine of FIG. 4. . On the other hand, when normal picking as shown in FIG. 11 is performed, the waveform rises sharply, and the difference in the peak values c-AMP(b) exceeds the resonance removal threshold TRLRS. As mentioned above, from SO2 to S
Shift to O3 processing.
リーーイブオンのエントリ
第5図において、Aは後述するりラティブオン(再発音
開始)のエントリであり、後述する5TEP4のフロー
からこのSO6ヘジヤンプしてくる。そして、SO6で
は今まで出力している楽音を一度消去(ノートオフ)し
、再発音開始のためにSO3へ進行する。この再発音開
始のための処理は、通常の発音開始のときと同様であり
、前記したとおりである。ここでSO6のノートオフの
処理は、第4図の前記M16の処理と同じである。Leave-on entry In FIG. 5, A is an entry for leave-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 M16 in FIG. 4.
5TEPIの九 手
次に、第6図は、第4図のメインルーチンのM6として
示すステップ1 (STEPI)の処理の動作フローチ
ャートである。この処理においては、前記5TEPOに
続くピッチ抽出処理等のための初期設定とそれに続<5
TEP2への移行処理、又はおかしな波形が入力したと
きのダブり処理(エラー処理)等を行う。特に本発明に
関係する処理としては、第1図のMCPS内のタイマ3
04のスタート処理を行う。5.9 Steps of TEPI Next, FIG. 6 is an operational flowchart of the processing of step 1 (STEPI) shown as M6 of the main routine of FIG. 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. Particularly related to the present invention, the timer 3 in the MCPS in FIG.
04 start processing is performed.
」基本動作1
まず、前記5TEPOにより、最初のデータに対する初
期設定が行われた後、第4図のメインルーチンでは、M
2−M 10−M 11−M 2のループの繰り返し
により、前記ピンチ抽出デジタル回路2(第1図)から
再び割り込みがかかって、レジスタTo、C,Bに次の
データが入力するのを待っている。”Basic operation 1 First, after the initial setting for the first data is performed by the above-mentioned 5TEPO, in the main routine of FIG.
2-M 10-M 11-M By repeating the loop of 2, an interrupt is generated again from the pinch extraction digital circuit 2 (Fig. 1), and the system waits for the next data to be input to registers To, C, and B. ing.
そして、データが人力し、第4図のM2からM3を経て
上記各レジスタの内容が読み込まれると、M4を介して
M6、即ち第6図の5TEPIに移る。この状態におい
ては、例えば第11図に示すように、今回のゼロクロス
時刻1=1. 、今回正負フラグb=1、今回ピーク値
はb=1より最大ピーク値でC=a、である。Then, when the data is input manually and the contents of each of the above registers are read through M2 to M3 in FIG. 4, the process moves to M6 via M4, that is, 5TEPI in FIG. 6. In this state, for example, as shown in FIG. 11, the current zero cross time 1=1. , the current positive/negative flag b=1, and the current peak value is the maximum peak value since b=1, C=a.
まず、第6図の311を介して(後述する)、Si2に
おいて前記rsTEPoの処理動作」の項における第5
図のSolの説明で述べたのと全く同様に、今回ピーク
値Cの値が、絶対トリガレベルTRLAB (b)より
大きいか否かが判定される。第11図の例では、今回最
大ピーク値c−aoとTRLAB (b)=TRLAB
(1)とが比較され、C=ao >TRLAB (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 of Fig. 11, the current maximum peak value c-ao and TRLAB (b) = TRLAB
(1) and C=ao >TRLAB (1
), that is, the determination is YES.
次に、S13でレジスタ5TEPに2が書き込まれ次の
ステップへの移行準備がなされる。Next, in S13, 2 is written into the register 5TEP to prepare for transition to the next step.
その後、5132において、第1図のMCPa内のタイ
マ304をスタートさせる。このタイマ304は、後述
するように発音開始時までの時間を計測するためのもの
であり、ディジタル出力D1の状態を検出するための、
本発明に特に関係するものである(第11図参照)。Thereafter, at 5132, timer 304 in MCPa of FIG. 1 is started. This timer 304 is for measuring the time until the start of sound generation, as will be described later, and is for detecting the state of the digital output D1.
This is particularly relevant to the present invention (see Figure 11).
続いて、S14において、レジスタTOの今回のゼロク
ロス時刻もが以降の処理のために前回のゼロクロス時刻
データTFN (b)として設定される。更に、S15
において、レジスタCの今回ピーク値Cが以降の処理の
ために前回のピーク値AMP (b)としてセットされ
、第4図のメインルーチンのM2の処理に戻る。第11
図の例では、同図に示すようにTFN (1)=t=t
+ 、AMP (1)=C=aOとなる。なお、MTの
内容は書き替えられず0のままである。Subsequently, in S14, the current zero-crossing time of the register TO is also set as previous zero-crossing time data TFN (b) for subsequent processing. Furthermore, S15
At this point, 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 M2 of the main routine in FIG. 11th
In the example shown in the figure, TFN (1)=t=t
+, AMP (1)=C=aO. Note that the contents of MT are not rewritten and remain 0.
゛フ゛り几 のφ −
第11図のような正常なディジタル出力Diが入力して
いる場合には、前記5TEPOにおいて負(正)側の最
小(大)ピーク値(絶対値)が抽出された後は、5TE
P 1において反対に正(負)側の最大(小)ピーク値
が抽出される。従って、第6図のSllにおいては、今
回正負フラグb−1(0)は5TEPOでセットされた
フラグMT=O(1)と異なるため、前記したように3
12に進む。When the normal digital output Di as shown in Figure 11 is input, the minimum (large) peak value (absolute value) on the negative (positive) side is extracted in the 5 TEPO. After that, 5TE
On the contrary, the maximum (small) peak value on the positive (negative) side is extracted at P1. Therefore, in Sll of FIG. 6, the positive/negative flag b-1(0) this time is different from the flag MT=O(1) set in 5TEPO, so as mentioned above, 3
Proceed to step 12.
ところが、場合により、5TEPOO後に5TEP1で
第12図(a)又は(b)に示すような波形が入力する
ことがある。この場合、5TEPOで負側の最小ピーク
値boが抽出された後、5TEP 1で再び負側の最小
ピーク値す、がダブって抽出される。従って、第6図の
Sllにおいては、今回正負フラグはb=oとなり、5
TEPOでセットされたフラグMT=Oと一致する。こ
の場合は、第6図の316に進み、ダブり処理(エラー
処理)を行う。However, in some cases, a waveform as shown in FIG. 12(a) or (b) may be input at 5TEP1 after 5TEPOO. In this case, after the minimum peak value bo on the negative side is extracted at 5TEPO, the minimum peak value s on the negative side is extracted again at 5TEP1. Therefore, in Sll 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.
S16では、ピーク値Cの値が同じ符号の前回のピーク
値AMP (b)より大きいか否かが判定される。In S16, it is determined whether the value of the peak value C is larger than the previous peak value AMP (b) of the same sign.
今、第12図(a)のような場合、c = b + >
AMP (b)=AMP (0)=boは成立しない。Now, in the case as shown in Figure 12(a), c = b + >
AMP (b)=AMP (0)=bo does not hold.
このような場合は、今回の最小ピーク値b+ はおかし
な波形として無視しく斜線部)、5TEPは更新せずに
、第4図のメインルーチンのM2の処理に戻り、次の正
常なピークが入力されるのを待つ。In such a case, the current minimum peak value b+ is ignored as an abnormal waveform (the shaded part), 5TEP is not updated, and the process returns to M2 of the main routine in Figure 4, where the next normal peak is input. wait until
一方、第12図(b)のような場合、c=b1 >AP
M (b)=AMP (0)=b。は成立する。このよ
うな場合は、前回の5TEPOで抽出した最小ピーク値
b0の方をおかしな波形として無視しく斜線部)、5T
EPOにおいてセットされた負側の前回のゼロクロス時
刻データTFN (0)、及び負側の前回のピーク値A
MP (0)の内容を、第6図の314、S15により
今回のゼロクロス時刻む及び今回ピーク値Cと入れ替え
て変更する。On the other hand, in the case as shown in Fig. 12(b), c=b1 > AP
M(b)=AMP(0)=b. holds true. In such a case, ignore the minimum peak value b0 extracted in the previous 5TEPO as a strange waveform (hatched area), 5T
The previous zero-crossing time data TFN (0) on the negative side set in EPO and the previous peak value A on the negative side
The contents of MP (0) are changed by replacing them with the current zero cross time and current peak value C in step 314 and S15 in FIG.
即ち、第12図Φ)の例では、TFN (0)=t=t
+ 、AMP (0)=(=b、となる。このダブリ処
理の後、5TEPは更新せずに(第6図の313を通ら
ない)、第4図のメインルーチンのM2の処理に戻り、
次の正常なピークが入力されるのを待つ。That is, in the example of FIG. 12 Φ), TFN (0)=t=t
+, AMP (0)=(=b, then. After this double processing, 5TEP is not updated (does not pass through 313 in FIG. 6), and returns to the processing of M2 in the main routine in FIG. 4,
Wait for the next successful peak to be input.
上記動作の後、正常なピーク値が入力すると、第6図の
S11→S12→S13→S14→S15により前記し
た処理が行われ、例えば第11図に示すように1=1.
で、次のS T E、P 2の処理への移行が行われる
。After the above operation, when a normal peak value is input, the above-described processing is performed in steps S11→S12→S13→S14→S15 in FIG. 6, and for example, as shown in FIG. 11, 1=1.
Then, a transition to the next STE, P2 process is performed.
5TEP2の九 壬
次に、第7図は、第4図のメインルーチンのM7として
示すステップ2 (STEP2)の処理の動作フローチ
ャートである。この処理においては、ピッチ抽出のため
の第1回目のピッチ周期の検出、ベロシティ−の設定、
及び5TEP3への移行処理、又はおかしな波形が入力
したときのエラー処理(ダブり処理)等を行う。Next, FIG. 7 is an operational flowchart of the process of step 2 (STEP 2) shown as M7 of the main routine of FIG. 4. In this process, the first pitch cycle detection for pitch extraction, velocity setting,
and 5TEP3, or performs error processing (double processing) when a strange waveform is input.
1基本歎作[
まず、前記5TEPIによる処理が行われた後、第4図
のメインルーチンでは、M2→MIO−Mll−M2の
ループの繰り返しにより、前記ピッチ抽出デジタル回路
2(第1図)から再び割り込みがかかって、レジスタT
o、C,Bに次のデータが入力するのを待っている。1 Basic operation [First, after the processing by the 5 TEPI is performed, in the main routine of FIG. 4, the pitch extraction digital circuit 2 (FIG. 1) is When an interrupt occurs again, register T
Waiting for the next data to be input to o, C, and B.
そして、データが入力し、第4図のM2からM3を経て
上記各レジスタの内容が読み込まれると、M4を介して
M7、即ち第7図の5TEP2に移る。この状態におい
ては、例えば第11図に示すように、今回のゼロクロス
時刻t=t2、今回正負フラグb=o、今回ピーク値は
b=oより最小ピーク値でc=b、である。When data is input and the contents of the registers are read through M2 to M3 in FIG. 4, the process moves to M7 through M4, that is, 5TEP2 in FIG. 7. In this state, for example, as shown in FIG. 11, 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内の時定数変換レジスタCHTR
Rに現在処理をしている弦の開放弦フレット周期CHT
IOをセットする。First, in 321 after passing through 320 in FIG. 7 (described later), the MCP3 inputs the time constant conversion register CHTR 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 IO.
これは、前記「ピッチ抽出ディジタル回路の動作」の項
の時定数変換制御回路202の説明において述べたよう
に、ピーク検出回路201 (第2図)がデジタル出力
D1の波形の立ち上がり時の振動を検知した後は、各ピ
ッチ周期の倍音を拾わないように、ピーク検出回路20
1内のピークホールド回路から出力されるピークホール
ド信号(第10図P+ 、qz等)が各弦の開放弦周期
、即ち最低音周期CRT I Oの時間経過にて急速減
衰するようにしたものである。This is because the peak detection circuit 201 (Fig. 2) detects the vibration at the rise of the waveform of the digital output D1, as described in the explanation of the time constant conversion control circuit 202 in the section "Operation of the pitch extraction digital circuit". After detection, the peak detection circuit 20 is activated so as not to pick up overtones of each pitch period.
The peak hold signal (P+, qz, etc. in Figure 10) output from the peak hold circuit in 1 is designed to rapidly attenuate with the passage of time of the open string period of each string, that is, the lowest tone period CRTIO. be.
次に、S22において、今回ピーク値Cの値が同じ符号
の前回のピーク値AMP (b)の7/8倍より大きい
か否かが判定される。この処理については後に詳述する
が、通常は弦をピンキングした波形はなめらかに自然減
衰するためこの判定はYESとなり、次のS23を経て
(後述する)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 pinking the string normally attenuates smoothly and naturally, this determination is YES, and the process proceeds to S24 (described later) via the next S23.
S24では、((今回のゼロクロス時刻し)(同じ符号
の前回のゼロクロス時刻データTFN(b)))を演算
することにより、第1回目のピッチ周期を検出する。そ
してこの結果を、後述する5TEP3でのノートオン(
発音開始)の条件として使用するために、前回周期デー
タTP (b)として設定する。第11図の例では、同
図に示すようにTP (0)=t−TFN (0) −
tz −t。In S24, the first pitch period is detected by calculating ((current zero-crossing time)(previous zero-crossing 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. 11, as shown in the figure, TP (0)=t-TFN (0) −
tz-t.
となる。becomes.
また、324では、今回のゼロクロス時刻tが以降の処
理のために前回のゼロクロス時刻データTFN (b)
として設定される。第11図の例では、同図に示すよう
にTFN (0)=t=tzとなる。なお、5TEPO
で設定されたTFN (0)=toは、上記前回周期デ
ータTP (b)=TP(0)が演算できたため必要な
くなり消去される。In addition, in 324, the current zero-crossing time t is set to the previous zero-crossing time data TFN (b) for subsequent processing.
is set as In the example of FIG. 11, TFN (0)=t=tz as shown in the figure. In addition, 5TEPO
TFN (0)=to set in is no longer needed and is deleted because the previous cycle data TP (b)=TP (0) can be calculated.
同じく、324では、レジスタ5TEPに3が書き込ま
れて次のステップへの移行準備がなされる。Similarly, at 324, 3 is written in register 5TEP to prepare for transition to the next step.
更に、S24では、以降の処理のために、今回ピーク値
Cと、前回のピーク値AMP (0)、AMP(1)の
うち、最も大きい値をベロシティ■ELとして設定する
。なお、ベロシティVELは、5TEP3で後述するよ
うに楽音の音量を決定するための値として用いられる。Furthermore, in S24, for the subsequent processing, the largest value of the current peak value C and the previous peak values AMP(0) and AMP(1) is set as the velocity ■EL. 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
)として設定し、第4図のメインルーチンの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.
第11図の例では、VEL=may (c、AMP(0
)、AMP (1)) −ma x (b+ 、
bo 、ao) となり、A、M P (0) −c
= b + となる。In the example of FIG. 11, VEL=may (c, AMP(0
), AMP (1)) -max (b+,
bo , ao) and A, M P (0) −c
= b + .
なお、5TEPOで設定されたAMP (0)=boは
、上記ベロシティVELが演算できたため必要なくなり
消去される。Note that AMP (0)=bo set at 5TEPO is no longer needed and is deleted because the velocity VEL has been calculated.
」久ブユ処旦℃力j1
第11図のような正常なデジタル出力D1が入力してい
る場合には、前記5TEP 1において正(負)側の最
大(小)ピーク値が抽出された後は、5TEP2におい
て反対に負(正)側の最小(大)ピーク値が抽出される
。従って、この場合の5TEP2におけるピーク値の符
号は5TEPIのときと逆であり、更に、5TEPOの
ときと同じとなり、第7図の320においては、今回正
負フラグb=o (1)は5TEPOでセットされたフ
ラグMT=O(1)と一致し、前記したように321に
進む。”Kubuyu processing power j1 When the normal digital output D1 as shown in Fig. 11 is input, after the maximum (small) peak value on the positive (negative) side is extracted in the 5TEP 1, , 5TEP2, on the contrary, the minimum (large) peak value on the negative (positive) side is extracted. Therefore, the sign of the peak value at 5TEP2 in this case is opposite to that at 5TEPI, and is also the same as at 5TEPO, and at 320 in FIG. The flag MT=O(1) matches, and the process proceeds to 321 as described above.
ところが、前記rsTEPlの処理動作」の「ダブり処
理の動作」の項の説明において述べたのと同様に、場合
により波形がダブって、5TEP1の後に第13A図又
は第13B図に示すような波形が入力することがある。However, as described in the section "Double processing operation" in "Processing operation of rsTEP1", in some cases the waveforms are duplicated, and after 5TEP1, the waveform shown in FIG. 13A or 13B is generated. You may enter it.
この場合、5TEP1で正側の最大ピーク値a8が抽出
された後、5TEP2で再び正側の最大ピーク値alが
ダブって抽出される。従って、第7図の320において
は、今回正負フラグはb=1となり、5TEPOでセッ
トされたフラグMT=Oと一致する。この場合は、第7
図の325に進み、ダブり処理(エラー処理)を行う。In this case, after the maximum peak value a8 on the positive side is extracted at 5TEP1, the maximum peak value al 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.
なお、第13A図、第13B図において単純斜線のハツ
チを施したピークは、第2図のピーク検出回路201内
のピークホールド回路から発生される第13A図又は第
13B図のピークホールド信号pH%Pl、(to等に
ひっかからなかったため、ピークとして検出されなかっ
た部分である。Note that the peaks indicated by simple diagonal hatching in FIGS. 13A and 13B are the peak hold signal pH% in FIG. 13A or 13B 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 was not caught by Pl, (to, etc.).
S25では、まず、ダブリフラグDUBを1に設定した
後(後述する)、S26に進み、今回ピーク値Cの値が
同じ符号の前回のピーク値AMP(b)より大きいか否
かが判定される。In S25, after first setting the double flag DUB to 1 (described later), the process proceeds to S26, where it is determined whether the current peak value C is larger than the previous peak value AMP(b) of the same sign.
今、第13A図において、5TEPO(t、=し6 )
、5TEPI (t=t+ )の処理の後、L+==
j2において5TEP2が実行された場合、C:al
>AMP (b)=AMP (1)=aoは成立しない
。即ち、第7図の326の判定結果はNOとなる。この
ような場合は、今回の最大ピーク値a1はおかしな波形
として無視しく同図のクロス斜線のハツチを施した部分
)、5TEPは更新せずに、第4図のメインルーチンの
M2の処理に戻り、次の正常なピークが入力されるのを
待つ。Now, in Figure 13A, 5TEPO (t, = 6)
, 5TEPI (t=t+), L+==
If 5TEP2 is executed in j2, C:al
>AMP (b)=AMP (1)=ao does not hold. That is, the determination result at 326 in FIG. 7 is NO. In such a case, ignore the current maximum peak value a1 as a strange waveform (the cross-hatched area in the same figure), and return to the processing of M2 in the main routine in Figure 4 without updating 5TEP. , wait for the next successful peak to be input.
そして、t ” t 3において、最小ピーク値c=b
。Then, at t ” t 3, the minimum peak value c=b
.
が入力することにより、第7図の520がYESとなっ
て、第11図の場合と同様に、前記521−322−3
23−524の処理が行われ、第14A図のt = j
3で次の5TEP3の処理に進む。なお、第7図の3
24において設定される前回周期データTP (0)は
、第13A図に示すように、今回のゼロクロス時刻t3
と、5TEPOにおいて設定された前回のゼロクロス時
刻toの差になる。また、後述する5TEP3において
演算されるその次の周期データTxの起点は、同図に示
すようにクロス斜線のハツチを施したピーク(C−al
)が無視されるため、5TEP 1において設定された
前回のゼロクロス時刻T F N (1)=1.である
。As a result, 520 in FIG. 7 becomes YES, and as in the case of FIG. 11, the above 521-322-3
23-524 is performed, and t = j in FIG. 14A.
3, the process proceeds to the next 5TEP3. In addition, 3 in Figure 7
As shown in FIG. 13A, the previous cycle data TP (0) set in 24 is the current zero cross time t3.
and the previous zero-crossing time to set at 5TEPO. Furthermore, the starting point of the next periodic data Tx calculated in 5TEP3, which will be described later, is a peak (C-al
) is ignored, the previous zero-crossing time T F N (1) = 1. set in 5TEP 1 is ignored. It is.
一方、第13B図の場合、上記とは逆にC=a、>AM
P (b)=AMP (1) −aoは成立する。即ち
、第7図の326の判定結果はYESとなる。このよう
な場合は、前回の5TEP 1で抽出した最大ピーク値
a。の方をおかしな波形として無視しく同図のクロス斜
線のハツチを施した部分)、5TEPIにおいてセット
された前回のゼロクロス時刻データTFN(1)、及び
正側の前回のピーク値AMP(1)の内容を、第7図の
329により今回のゼロクロス時刻む及び今回のピーク
値Cと入れ替えて変更する。即ち、第13B図の例では
、同図に示すようにTFN (1)=t = t 2
、A M P (1) = c = a o となる。On the other hand, in the case of FIG. 13B, contrary to the above, C=a,>AM
P (b)=AMP (1) -ao holds true. That is, the determination result at 326 in FIG. 7 is YES. In such a case, the maximum peak value a extracted in the previous 5TEP 1. The cross hatched part in the same figure is ignored as a strange waveform), the contents of the previous zero cross time data TFN (1) set at 5TEPI, and the previous peak value AMP (1) on the positive side. is changed by replacing it with the current zero cross time and current peak value C by 329 in FIG. That is, in the example of FIG. 13B, as shown in the same figure, TFN (1) = t = t 2
, A M P (1) = c = a o.
このダブり処理の後、5TEPは更新せずに第4図のメ
インルーチンのM2の処理に戻り、次の正常なピーク値
が入力するのを待つ。以下、L=し、において最小ピー
ク値c=b、が入力した後の処理は、前記第13A図の
場合と同じである。ただし、5TEPIにおいて抽出さ
れたピーク(第13B図のクロス斜線のハツチを施した
ピークC=a、)が無視され、C=a、のピークに変更
されているため、後述する5TEP3において演算され
るTP(0)の次の周期データTyの起点は、5TEP
2の前記ダブり処理において設定された前回のゼロクロ
ス時刻TFN (1) −j2となり、第13A図の場
合と異なる。After this double processing, 5TEP is not updated and returns to the processing of M2 in the main routine of FIG. 4, waiting for the next normal peak value to be input. Hereinafter, the processing after the minimum peak value c=b is input at L=s is the same as in the case of FIG. 13A. However, since the peak extracted in 5TEPI (the peak C=a, which is hatched with cross hatching in Figure 13B) is ignored and changed to the peak C=a, it is calculated in 5TEP3, which will be described later. The starting point of the next cycle data Ty of TP(0) is 5TEP
The previous zero-crossing time TFN (1) −j2 set in the duplication process of No. 2 is different from the case of FIG. 13A.
以上、第13A図又は第13B図に示すように波形がダ
ブった場合は、ピーク値の小さい方のピークがおかしな
波形として無視され、エラー処理される。As described above, when the waveforms are duplicated as shown in FIG. 13A or 13B, the peak with the smaller peak value is ignored as an abnormal waveform and processed as an error.
次に、ダブり処理の他の場合の処理のための、第7図に
示したS22の分岐の処理について説明を行う。Next, the branch processing of S22 shown in FIG. 7 for processing in other cases of duplicate processing will be explained.
今、第7図の5TEP2の処理が実行される場合、弦を
ピッキングした正常な波形はなめらかに自然減衰するた
め、322において今回ピーク値の値は同じ符号の前回
のピーク値AMP (b)の7/8倍より大きい値とな
り、S22の処理における判定はYESとなって次の3
23の処理に進む。Now, when the process of 5TEP2 in Fig. 7 is executed, the normal waveform of string picking naturally attenuates smoothly, so the current peak value at 322 is equal to the previous peak value AMP (b) of the same sign. The value is larger than 7/8 times, and the judgment in the process of S22 is YES, and the next 3
Proceed to step 23.
ところが、場合によっては、c> (7/8)XAMP
(b)が成立しないことがあり得る。すなわち、第1
の場合としては、例えば弦をブリッジに近いところでピ
ッキングすることにより、波形は正常だがなめらかな減
衰波形とならず、S22の判定結果がNoとなることが
おこりうる。しかし、このような場合においても、前記
第7図の824の処理を正常に行う必要がある。そして
、この場合、波形が正常であるために、前記したような
ダブりは発生しておらず、それ以前に第7図の320か
ら325へ分岐していないため、ダブリフラグDUBの
値はOのままである。そこで、第7図の327において
、DUB=1が成立しない場合は、S22の判定結果に
かかわらず、再びS24の処理に戻り、前記「基本動作
」の項で述べた処理を行う。なお、ダブリフラグDUB
は、前記第5図の5TEPOのSO4の処理において、
その値が0に初期化されている。However, in some cases, c > (7/8)XAMP
(b) may not hold. That is, the first
In this case, for example, if the string is picked close to the bridge, the waveform may be normal but not smoothly attenuated, and the determination result in S22 may be No. However, even in such a case, it is necessary to perform the process 824 in FIG. 7 normally. In this case, since the waveform is normal, the above-mentioned duplication has not occurred, and since there has been no branching from 320 to 325 in FIG. 7 before, the value of the duplication flag DUB remains O. It is. Therefore, in 327 of FIG. 7, if DUB=1 is not established, regardless of the determination result in S22, the process returns to S24 again and the process described in the "basic operation" section is performed. In addition, the double flag DUB
In the processing of SO4 of 5TEPO in FIG. 5,
Its value is initialized to 0.
一方、第7図の322が成立しない第2の場合として、
波形に前記したようなダブリが発生した場合がある。こ
の場合について、第13C図を用いて以下に説明を行う
。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. 13C.
今、第13B図で説明したのと同様に、第13C図に示
すように、S T E P O(t = t o )
、5TEPI (t=t、)の処理の後に、t=t2に
おいて前記ダブり処理が行われ、C=aOのピーク(同
図のクロス斜線のハツチを施したピーク)が除去され、
c=a、のピーク(同図の縦線のハツチを施したピーク
)が残されたとする。なお、単純な斜線のハツチを施し
たピーク(c=a、)は、第13A図又は第13B図と
同様、元々検出されないピークである。Now, in the same way as explained in FIG. 13B, as shown in FIG. 13C, S T E P O (t = t o )
, 5TEPI (t=t,), the above-mentioned double processing is performed at t=t2, and the peak of C=aO (the peak with cross hatching in the figure) is removed,
Assume that the peak c=a (the peak hatched with vertical lines in the figure) remains. Note that the peaks with simple diagonal hatching (c=a,) are originally undetected peaks, as in FIG. 13A or 13B.
上記のようにダブリが発生すると、次のt=t3におい
ては第13C図に示すように正負フラグはb=oとなる
ため、5TEPOでセットされたフラグMT=0と一致
する。従って、第7図の320からS21を介してS2
2の処理に進む。When a double occurs as described above, at the next time t=t3, the positive/negative flag becomes b=o as shown in FIG. 13C, so it matches the flag MT=0 set at 5TEPO. Therefore, S2 is passed from 320 to S21 in FIG.
Proceed to step 2.
ところが、L = t ]において検出される今回の最
小ピーク値c=b、は、波形がダブったために同じ符号
の前回の最小ピーク値AMP (0)=b。However, the current minimum peak value c=b detected at [L=t] is the previous minimum peak value AMP (0)=b of the same sign because the waveform is doubled.
からかなり離れており、減衰も大きい。従って、第13
C図に示すように第7図の322の判定結果がNoとな
る場合がある。It is quite far from the center, and the attenuation is large. Therefore, the 13th
As shown in Figure C, the determination result at 322 in Figure 7 may be No.
上記のような場合は、それ以前のt =t 2において
ダブり処理を行っているため、ダブリフラグDUBの値
は1である。従って、第7図の327の判定結果はNO
となり、S28を介して(後述する)S29に進む。In the above case, the value of the duplication flag DUB is 1 because the duplication process is performed at t = t 2 before that. Therefore, the determination result of 327 in FIG. 7 is NO.
The process then proceeds to S29 (described later) via S28.
S29においては、第13C図のt=t3以後に正常な
波形を獲得して新たに処理をやり直すために、5TEP
Oにおいてセットされた前回のゼロクロス時刻データT
FN (0)、及び負側の前回のピーク値AMP (0
)の内容を、第7図のS29により今回のゼロクロス時
刻も及び今回のピーク値Cと入れ替えて変更する。即ち
、第13C図の例では、同図に示すようにTFN (0
) −t=t3 、AMP (0)=(=b、となり、
結局、同図の横線のハツチを施したピーク(c=bo
)が無視される。なお、以降の処理のために、第7図の
328でダブリフラグDUBは0にリセツトされる。こ
れらの動作の後、5TEPO値は更新せずに第4図のメ
インルーチンのM2の処理に戻り、次のビ°−りの入力
を待つ。In S29, in order to acquire a normal waveform after t=t3 in FIG. 13C and restart the process, 5TEP is applied.
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 in S29 of FIG. That is, in the example of FIG. 13C, TFN (0
) −t=t3, AMP (0)=(=b, and
In the end, the peak (c=bo
) are ignored. Note that for subsequent processing, the double flag DUB is reset to 0 at 328 in FIG. After these operations, the process returns to step M2 of the main routine in FIG. 4 without updating the 5TEPO value, and waits for the next beat input.
そして、上記の場合、第13C図に示すように1=1.
.1=1.において、第7図の5TEP2が繰り返され
た後、5TEP3に移行する。このような5TEP2の
繰り返し動作については様々なパターンがあるため、そ
の詳細な説明は省略するが、全体の流れとしては正常な
波形を獲得できるようになって、次の5TEP3におい
て用いるためのデータTFN (0)、AMP (0)
、及びTFN (IL AMP (1)が有効に決定さ
れるように動作した後に、5TEP3に移行する。In the above case, as shown in FIG. 13C, 1=1.
.. 1=1. 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)
, and TFN (IL AMP (1)) are operated to be validly determined, and then transition to 5TEP3.
なお、第13C図のケースでは、TP (0)=ts
t3、後述する5TEP3において演算されるその
次の周期データTiの起点は、TFN(1)=t4とな
る。In addition, in the case of FIG. 13C, TP (0)=ts
At t3, the starting point of the next periodic data Ti calculated in 5TEP3, which will be described later, is TFN(1)=t4.
5TEP3の几
次に、第8図は、第4図のメインルーチンのM8として
示すステップ3 (STEP3)の処理の動作フローチ
ャートである。この処理においては、ノートオン(発音
開始)処理、ノートオン時の音高設定のためのピッチ周
期の抽出、ベロシティの演算、特に本発明に係る音色設
定のためのパラメータの演算、5TEP4への移行処理
、及びおかしな波形が入力したときのエラー処理等を行
う。Next, FIG. 8 is an operation flowchart of the processing of step 3 (STEP3) shown as M8 of the main routine of FIG. 4. In this process, note-on (sound generation start) processing, extraction of pitch cycle for pitch setting at note-on, velocity calculation, especially parameter calculation for tone setting according to the present invention, transition to 5TEP4 processing, and error handling when strange waveforms are input.
1基本動立Y
まず、前記5TEP3による処理が行われた後、第4図
のメインルーチンでは、M2→MIO→Mll−M2の
ループの繰り返しにより、前記ピッチ抽出デジタル回路
2(第1図)から再び割り込みがかかって、レジスタT
O1C,Bに次のデータが入力するのを待っている。1 Basic motion Y First, after the processing by 5TEP3 is performed, in the main routine of FIG. 4, the pitch extraction digital circuit 2 (FIG. 1) is When an interrupt occurs again, register T
Waiting for the next data to be input to O1C,B.
そして、データが入力し、第4図のM2からM3を経て
上記各レジスタの内容が読み込まれると、M4を介して
M8、即ち第8図の5TEP3に移る。この状態におい
ては、例えば第11図に示すように、今回のゼロクロス
時刻t=t3、今回正負フラグb=i、今回ピーク値は
b=1より最大ピーク値でc=a、である。When data is input and the contents of the registers are read through M2 and M3 in FIG. 4, the process moves to M8 through M4, that is, 5TEP3 in FIG. 8. In this state, for example, as shown in FIG. 11, the current zero cross time t=t3, the current positive/negative flag b=i, and the current peak value is b=1, so the maximum peak value is c=a.
まず、第8図のS30、S31、S32を経た後(後述
する)、S33においてベロシティVELを演算する。First, after going through S30, S31, and S32 in FIG. 8 (described later), velocity VEL is calculated in S33.
今、前記rsTEP2の処理動作」の「基本動作」の項
で説明したように第7図の824において、過去3回の
ピーク値、第11図の例では、b6 % ao % b
lの各値(絶対値)のうち最大のものがベロシティVE
Lに格納されている。そこで、第8図の333において
、ベロシティVELと今回ピーク値Cのうち大きい方を
判定し、それを楽音発生回路501 (第1図)で楽音
を発生するときの新たなベロシティVELとする。Now, as explained in the "basic operation" section of "Processing operations of rsTEP2", at 824 in FIG. 7, the past three peak values, in the example of FIG. 11, b6 % ao % b
The maximum value (absolute value) of l is the velocity VE
It is stored in L. Therefore, at 333 in FIG. 8, the larger of the velocity VEL and the current peak value C is determined, and this is set as the new velocity VEL when the musical tone generation circuit 501 (FIG. 1) generates a musical tone.
第11図の例では、VEL=a、 、c=a、より、V
EL=ma x (aa 、a+ )=ao となる。In the example of FIG. 11, since VEL=a, , c=a, V
EL=max(aa, a+)=ao.
上記動作の後、第8図の同じくS33において、MT−
bとしだ後(後述する)、S34において、((今回の
ゼロクロス時刻し)−(同じ符号の前回のゼロクロス時
刻データTFN (b)))を演算することにより、ピ
ッチ周期を検出し、前回周期データTP (b)として
設定する。第11図の例では、同図に示すようにTP(
1)=tz t+となる。After the above operation, at S33 in FIG.
b (described later), in S34, the pitch period is detected by calculating ((current zero-crossing time) - (previous zero-crossing time data TFN (b))) of the same sign, and the previous period is calculated. Set as data TP (b). In the example of FIG. 11, as shown in the figure, TP (
1)=tz t+.
続いて、第8図の335〜33Bを経た後(後述する)
、S39において、上記S34で求まった前回周期デー
タTP (b)と、前記第7図の324において設定さ
れた、上記TP (b)とは異極性の前回周期データT
P (b)とが、はぼ同一であるか否かを判定する。そ
して、その判定結果がYESである場合には、ピッチ周
期が安定に抽出され始めたとして、5301を経た後(
後述する)、3305において音色設定のためのパラメ
ータの演算処理を行う。第11図の例では、負側の前回
周期データTP(1)=tz t+ と正側の前回
周期データTP (o)=tz−toが、はぼ同一であ
ると判定され、ノートオンの処理に移る。なお、判定結
果がNoの場合については後述する。Subsequently, after going through steps 335 to 33B in Figure 8 (described later)
, in S39, 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 (b) and P (b) 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 5301 (
(to be described later), in step 3305, parameters for tone setting are calculated. In the example of FIG. 11, it is determined that the previous cycle data TP (1) = tz t+ on the negative side and the previous cycle data TP (o) = tz-to on the positive side are almost the same, and note-on processing is performed. Move to. Note that the case where the determination result is No will be described later.
次の8305では、第1図のMCPS内のタイマ304
をストップさせ、その値を334で求まった前回周期デ
ータTP (b)で除算し、その整数部分を変数R3P
とする。なお、第8図3305でINT (A)は、値
Aの整数を求める演算である。この演算により、変数R
3Pには、5TEP1−2に変化する時点から5TEP
3−4に変化する時点すなわち発音開始時点までに、何
周量分かかったかが設定される。In the next step 8305, the timer 304 in the MCPS in FIG.
is stopped, the value is divided by the previous cycle data TP (b) found in 334, and the integer part is set as the variable R3P.
shall be. Note that INT (A) in FIG. 8 3305 is an operation for obtaining an integer of value A. By this operation, the variable R
For 3P, 5TEP from the point of change to 5TEP1-2
The number of laps it takes to change to 3-4, that is, to start sounding, is set.
続いて、5302においては、第8図の333で演算さ
れたベロシティVEL及び334で抽出された前回ピッ
チ周期TP (b)とに基づいて、対応する音量情報及
び音高情報が生成され、更に、5305で演算された変
数R3Pと上記へロシティVELに基づいて音色情報が
生成された後、第1図のMIDI−BUS及びインタフ
ェースMTDrを介して楽音発生回路501に出力され
る。Subsequently, in 5302, corresponding volume information and pitch information are generated based on the velocity VEL calculated in 333 of FIG. 8 and the previous pitch period TP (b) extracted in 334, and further, After timbre information is generated based on the variable R3P calculated in step 5305 and the above-mentioned helocity VEL, it is output to the musical tone generation circuit 501 via the MIDI-BUS and interface MTDr shown in FIG.
そして、同回路501では上記各情報に応じた音量、音
色及び音高の楽音がリアルタイムで発生される。このよ
うに、本実施例では音高情報、音量情報と共に、音色情
報を抽出するで、「本実施例の概略動作」の項で説明し
たように大きな演奏効果を得ることができる。The circuit 501 generates musical tones in real time with volume, timbre, and pitch according to the above information. In this way, in this embodiment, by extracting timbre information as well as pitch information and volume information, it is possible to obtain a great performance effect as explained in the section "General operation of this embodiment".
なお、第8図の処理は、ギターの6弦各々について行わ
れるため、上記処理も6弦各々について独立になされる
ことになる。Note that since the process shown in FIG. 8 is performed for each of the six strings of the guitar, the above process is also performed independently for each of the six strings.
上記ノートオンの処理と共に、第8図の338及び33
01において、次の5TEP4において用いられるパラ
メータの設定を行なった後、5305.5302を経て
第4図のメインルーチンのM2の処理に戻り、次の5T
EP4に移行する。In addition to the above note-on processing, 338 and 33 in FIG.
At 01, the parameters used in the next 5TEP4 are set, and then the process returns to M2 of the main routine in Figure 4 via 5305 and 5302, and the next 5TEP4 is set.
Move to EP4.
即ち、S38においてS34で抽出された前回の周期デ
ータTP(b)が前回抽出された周期データTTPとし
てセットされ、5301において第7図の5TEP2の
324において設定された前回のゼロクロス時刻データ
TFN (b)が時刻記憶レジスタTFRにセントされ
、今回のゼロクロス時刻データtが有効となった前回の
ゼロクロス時刻データTFとしてセットされ、波形ナン
バーカウンタHNCが0にクリアされ、レジスタ5TE
Pの値が4に更新され、ノートオンフラグONFが2(
発音状態)にセットされ、定数TTUが0(最低MIN
)にセットされ、定数TTWが最高MAXにセットされ
、リラティブオフチエツクのための前回の振幅値AMR
LIがOにクリアされる。これらの各パラメータについ
ては、5TEP4で後述する。That is, in S38, the previous cycle data TP(b) extracted in S34 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 sent to 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 0, and the register 5TE is set.
The value of P is updated to 4, and the note-on flag ONF is set to 2 (
sound generation state), and the constant TTU is set to 0 (minimum MIN
), the constant TTW is set to the highest MAX, and the previous amplitude value AMR for relative off-check is
LI is cleared to O. Each of these parameters will be described later in 5TEP4.
−U町]五通則μj論41■リー
前記第8図の334において、前回周期データTP (
b)が検出された場合、このピッチ周期は、対応する弦
を最高フレットで演奏したときの周期より大きい値を有
し、その弦の開放弦周期より小さい値を有するはずであ
る。- U town] Five general rules μj theory 41 ■ Lee 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.
そこで、周波数上限THLIMという定数として、現在
処理をしている弦の最高音フレットで定まる音高の2〜
3半音上の音高周期を設定し、周波数下限TTLIMと
いう定数として、同じ弦の開放弦状態で定まる音高の5
半音程度下の音高周期を設定し、第8図の336、S3
7において、S34で求まった前回周期データTP (
b)がTHLIMより大きく、かつ、TTLrMより小
さいか否かが判定される。そして、上記判定結果が共に
YESであれば、339に進んで前記した周期判定処理
を行う。Therefore, as a constant called the upper frequency limit THLIM, we set the pitch between 2 and 2 of the pitch determined by the highest fret of the string currently being processed.
Set the pitch period 3 semitones higher, and set the frequency lower limit TTLIM as a constant, and set the pitch period 5 semitones higher than the pitch determined by the open string condition of the same string.
Set the pitch period about a semitone lower, 336, S3 in Figure 8.
7, the previous cycle data TP (
It is determined whether b) is greater than THLIM and less than TTLrM. If both of the above judgment results are YES, the process advances to 339 and the above-described cycle judgment process is performed.
ここで336、S37の判定結果がNoの場合、S34
で抽出された前回周期データTP (b)は適切な値で
ないことになる。従って、このような場合は、336又
はS37から第4図のメインルーチンの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. 4 from 336 or S37 and repeats 5TEP3.
次に、第8図の339において、S34で求まった前回
周期データTP (b)と、これと異極性の前回周期デ
ータTP (b)とが離れた値である場合には、倍音等
を抽出してしまって正確なピッチ周期の抽出を誤った可
能性が高く、ピッチ周期が安定に抽出されていないこと
になる。従って、このような場合は、S39の判定結果
がNOとなり、第4図のメインルーチンの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. 4 and repeats 5TEP3.
ここで、上記動作により5TEP3を繰り返す場合、通
常の波形においては、第4図のM2、M3を介して新た
に検出されるピークは、その極性が交互に切り替わって
bの値が0と1で交互に反転し、また、第8図の333
においてフラグMTO値が交互に変更され、同じくS3
4においてTP (b)が新たに演算され、TFN (
b)の内容も書き替えられる。従って、336、S37
の判定は、最も新しく求まったピッチ周期に対して行わ
れ、更に、339における判定は、最も新しく求まった
ピッチ周期と、その1つ前(約半周期前)の異極性側の
ピッチ周期とに対して行われ、ピッチ周期が安定に抽出
できた時点で前記ノートオンの処理へ移行することにな
る。Here, when repeating 5TEP3 by the above operation, in the normal waveform, the polarity of the newly detected peaks via M2 and M3 in Fig. 4 is alternately switched, and the value of b is 0 and 1. 333 in Fig. 8.
The flag MTO value is changed alternately in S3.
4, TP (b) is newly calculated and TFN (
The contents of b) can also be rewritten. Therefore, 336, S37
The determination in step 339 is performed on the most recently determined pitch period, and the determination in 339 is performed on the most recently determined pitch period and the pitch period on the opposite polarity side immediately before it (approximately half a period before). When the pitch period can be stably extracted, the process moves to the note-on process.
また、その都度、第8図の833において、ベロシティ
VELが、新しく検出されたピークに対応するように更
新される。In addition, each time, at 833 in FIG. 8, the velocity VEL is updated to correspond to the newly detected peak.
ノイズ、 几 の重
第8図の331の処理は、波形の立ち上がり部分にノイ
ズが発生した場合に対処するための処理である。今、例
えば第14図に示すように、STEPO21,2におい
てノイズによるピークa0、b O% a 1等が検出
されてしまった場合、これらのノイズの周期を検出して
発音開始を指示すると、全くおかしな楽音を発音してし
まう。Processing at 331 in FIG. 8 is a process for dealing with the case where noise occurs in the rising portion of the waveform. Now, for example, as shown in Fig. 14, if peaks a0, b O% a 1, etc. due to noise are detected in STEPO21, 2, if the period of these noises is detected and the start of sound generation is instructed, there will be no sound at all. I end up pronouncing strange musical sounds.
そこで、第8図の331においては、連続するピーク値
が大きく変化した場合には、ノイズが発生していると判
断して異常検知フラグXを1にセットし、335におい
てNoの判定をさせることにより、ノイズ部分に基づい
てノートオンしないようにしている。Therefore, in 331 of FIG. 8, if the successive peak values change significantly, it is determined that noise has occurred, and the abnormality detection flag X is set to 1, and the determination of No is made in 335. This prevents note-ons from being triggered based on noise.
具体的には、今回ピーク値Cを1/8した値が、それと
同符号の前回ピーク値AMP (b)より小さければ正
常であると判断してX=0とし、そうでなければX=1
とする。そして、335においてX=0でないと判定さ
れた場合には、第4図のメインルーチンのM2の処理に
戻り5TEP3を繰り返す。この場合、第8図の532
において前回ピーク値AMP (b)が順次更新される
ため、S31における処理は、最も新しく検出されたピ
ーク値とその直前の同符号のピーク値とに対して行われ
、連続するピーク値が大きく変化しなくなった時点で前
記ノートオンの処理へ移行することになる。第14図の
例では、L−む3、L−を−共に331でX=1となっ
てまうためノートオンせず、t=t5において初めて正
常なピークが入力したと判断されるためX−0となり、
L−L5でノートオンする。そして、この場合は、連続
するピンチ周期TP (b)とTP (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 335 that X is not 0, the process returns to step M2 of the main routine in FIG. 4 and repeats 5TEP3. In this case, 532 in FIG.
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. 14, since both L-mu3 and L- are 331 and X=1, no note-on occurs, and it is determined that a normal peak has been input for the first time at t=t5, so X- becomes 0,
Note-on with L-L5. In this case, the consecutive pinch periods TP (b) and TP (b) have normal values.
ダフ゛り几 のφ
第8図の330の判定処理は、ダブり処理のための判定
である。今、第11図のような正常な波形D1が入力し
ている場合には、t=L3における今回正負フラグb=
iは、フラグMT=0と一致せず、前記したように33
1へ進む。The determination process at 330 in FIG. 8 is for the double process. Now, if a normal waveform D1 as shown in FIG. 11 is input, the current positive/negative flag b=
i does not match the flag MT=0 and is 33 as described above.
Go to 1.
ところが、前記rsTEP 1の処理動作」又はrST
EP2の処理動作」の「ダブり処理の動作Jの項の説明
において述べたのと同様に、波形がダブった場合、第8
図の330の判定結果はNOとなる。However, the processing operation of rsTEP 1" or rST
As described in the section ``Double processing operation J'' of ``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図の5303の判定結果がNOとなることにより
そのダブったピークを無視し、第4図のM2の処理に戻
った後5TEP3を繰り返す。これは、第13A図の場
合等と同様の考え方による。If the peak value C of the duplicated peak is smaller than the previous peak value AMP (b) of the same sign, the judgment result of 5303 in Fig. 8 is NO and the duplicated peak is ignored. After returning to the process of M2 in FIG. 4, 5TEP3 is repeated. This is based on the same concept as in the case of FIG. 13A.
これに対して、ダブったピークのピーク値Cの方が大き
かった場合は、3303の判定結果はYESとなり、5
304の処理へ進む。そして、5304では直前のピー
クの方を無視して、AMP(b)の内容を今回のピーク
値Cに設定し直し、ベロシティVELをその値を使って
計算し直した後、第4図のM2に戻って5TEP3を繰
り返す。これは、第13B図の場合等と同様の考え方に
よる。On the other hand, if the peak value C of the duplicated peak is larger, the determination result of 3303 is YES, and 5
The process advances to step 304. Then, 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 5TEP3 and repeat. This is based on the same concept as in the case of FIG. 13B.
以上の処理の後、正常なピークが入力することにより、
S30の判定結果がYESとなり、更に、S35.33
6、S3’?及び339等の各判定結果がYESとなる
ことにより、前記ノートオンの処理が行われ、楽音の発
音が開始されることになる。After the above processing, by inputting normal peaks,
The determination result of S30 is YES, and furthermore, S35.33
6.S3'? When the determination results such as 339 and 339 become YES, the note-on process is performed and the sound generation of musical tones is started.
5TEP4の八 便
次に、第9図は、第4図のメインルーチンのM9として
示すステップ4 (STEP4)の処理の動作フローチ
ャートである。この処理においては、ピッチ抽出・変更
処理、リラティブオン・リラティブオフの処理、ピッチ
周期不適時の処理、及びダブり処理等を行う。なお、こ
この処理は本発明には直接は関係しないが、楽音の音高
制御を行うために重要であるため、順次説明を行う。ま
ず、ピッチ抽出・変更処理においては、ピッチ抽出のみ
を行うルート■、実際にピッチ変更を行うルート■があ
り、通常は新たなピークが入力する毎に交互に繰り返す
。5TEP4-8 Next, FIG. 9 is an operational flowchart of the process of step 4 (STEP4) shown as M9 of the main routine in FIG. In this processing, pitch extraction/change processing, relative on/relative off processing, processing when the pitch period is inappropriate, and duplication processing are performed. Note that although this processing is not directly related to the present invention, it is important for controlling the pitch of musical tones, so it will be explained in order. First, in the pitch extraction/change process, there are two routes: route (2), which only performs pitch extraction, and route (2), which involves actually changing the pitch, and these routes are normally repeated alternately each time a new peak is input.
ルート の
先ず、540、S41、S42、S63〜367に示す
ルート■について説明する。340において、波形ナン
バーカウンタHNC>3が判断され、YESの場合には
341に進む。S41では、リラティブオンしきい値T
RLRL< (今回ピーク値C−同じ符号の前回のピー
ク値AMP(b))かどうかが判断が行われ、NOの場
合にはS42に進む(YESの場合は後述する)。First of all, route (2) shown in 540, S41, S42, and S63 to 367 will be explained. At 340, it is determined whether the waveform number counter HNC>3, and if YES, the process proceeds to 341. In S41, 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).
S42では今回正負フラグb=フラグMTつまりピッチ
変更側かどうかが判断され、YESの場合にはS43に
進む。In S42, it is determined whether the current positive/negative flag b=flag MT, that is, whether it is on the pitch change side, and if YES, the process advances to S43.
ところで、初期状態では、前記波形ナンバーカウンタH
NCは0である(第8図の3301参照)ので、340
ではNOの判断をしてS42へ進む。By the way, in the initial state, the waveform number counter H
Since NC is 0 (see 3301 in Figure 8), 340
Then, the determination is NO and the process proceeds to S42.
そして、例えば第11図のような波形入力の場合は、L
= t aにおいてb=oでMT=1(第8図の5T
EP3のS33で書き替えられている)であるから、3
42から363へ進む。For example, in the case of a waveform input as shown in Fig. 11, L
= t a, b=o and MT=1 (5T in Figure 8)
), so 3
Proceed from 42 to 363.
S63においては、同じ極性のピークが続けて入力され
てきているか(ダブりであるか)、否かチエツクするた
めに、レジスタRIV=1かどうかが判断され、YES
の場合(ピークがダブった場合)には368に進んでダ
ブり処理を行い(後述する)、また、Noの場合(ダブ
りでない場合)にはS64に進み、ここで以下の処理が
行われる。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 proceeds to 368 to perform a duplication process (described later), and in the case of No (if the peaks are not duplicated), the process proceeds to S64, where the following process is performed.
即ち、364では今回ピーク値Cが前回のピーク値AM
P (b)に入力され、リラティブオフ処理(後述する
)のために前回の振幅値AMRLIが前々回の振幅値A
MRL2に入力される。なお、始めはAMRLIの内容
は0である。(第8図の5TEP3の5301参照)。That is, in 364, 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 contents of AMRLI are 0. (See 5301 of 5TEP3 in FIG. 8).
更に、S64において、異符号の前回のピーク値AMP
(b)と今回ピーク値Cのうちいずれか大きい値が前
回振幅値AMRLIに入力される。Furthermore, in S64, the previous peak value AMP with the opposite sign
(b) 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とな
る。そして、S65もしくはS66の処理の後S67へ
進行する。Therefore, the upper limit of the waveform number counter HNC is 9. After processing S65 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は、第11図の例では周期情報
T T R= t T F R= t a t 2
を示す。In the example of FIG. 11, this period register TTR is period information TTR=tTFR=tat2
shows.
そして、今回のゼロクロス時刻tは、時刻記憶レジスタ
TFRへセーブされ、この後、第4図のメインルーチン
の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.
以上述べたようにルート■は、第11図の例によれば以
下のような処理がなされる。即ち、MT=1*b、RI
V=OSAMP (0)−c=bz、AMRL2←A
MRL1=0、AMRLI←max (AMP (1)
=a、 、c=b2 (のいずれか大きい方))、H
NC←(HNC+1)=1、RIV−1、TTR−(t
−TFR)= (ta −tz)、TFR←L = t
aとなる。従って、周期レジスタTTRに前回の同極
性のゼロクロス点t−tz (STEP2−3の変化
時点)から今回のゼロクロス点t=t4までの時刻情報
の差つまり、周期情報が求まったことになる。そして、
第4図のメインルーチンのM2の処理へ戻り、次のピー
クが入力するのを待つ。As described above, according to the example of FIG. 11, the following processing is performed for route (2). That is, MT=1*b, RI
V=OSAMP (0)-c=bz, AMRL2←A
MRL1=0, AMRLI←max (AMP (1)
=a, ,c=b2 (whichever is larger)), H
NC←(HNC+1)=1, RIV-1, TTR-(t
-TFR) = (ta -tz), TFR←L = t
It becomes a. Therefore, the difference in time information from the previous zero-crossing point ttz of the same polarity (the time of change in STEP 2-3) to the current zero-crossing point t=t4 in the period register TTR, that is, the periodic information is found. and,
Returning to the process M2 of the main routine in FIG. 4, the process waits for the next peak to be input.
ルート の゛
次に、340〜S62に示すルート■へ進んだ場合の説
明を行なう。いま、波形ナンバーカウンタHNC=1な
ので(S66参照)、S40からS42へ1l(340
については後述する)。Next, a description will be given of the case where the process proceeds to route (3) shown in 340 to S62. Now, since the waveform number counter HNC=1 (see S66), 1l (340
(will be discussed later).
S42では、例えば第11図のような場合、MT=i
b=1なのでYESとなり、343へ進む。In S42, for example, in the case shown in FIG. 11, MT=i
Since b=1, the answer is YES and the process proceeds to 343.
S43では、レジスタRIV=1かどうかが判断される
。既にルート■において、レジスタRIVは1とされて
いる(S67参照)ので、S43の判断はYESとなり
、S44へ進む。なお、S43の判定結果がNoとなる
場合のダブり処理については後述する。In S43, it is determined whether register RIV=1. Since the register RIV has already been set to 1 in route (2) (see S67), the determination in S43 is YES and the process advances to S44. Note that the duplication process when the determination result in S43 is No will be described later.
S44では、レジスタ5TEP=4かどうかが判断され
、YESの場合には345に進む(N。In S44, it is determined whether register 5TEP=4, and if YES, the process advances to 345 (N.
の場合については後述する)。S45では、今回ピーク
値c<60H()(は16進法表現を示す)かどうかが
判断され、値の大きなピーク値が入力した場合は、この
判定結果はNoとなり、347に進む。これに対して、
値が60Hより小さい場合は、YESとなりS46に進
む。The case will be discussed later). In S45, it is determined whether the current peak value c<60H() (indicates hexadecimal notation). If a large peak value is input, the determination result is No, and the process proceeds to 347. On the contrary,
If the value is smaller than 60H, the answer is YES and the process advances to S46.
S46では、前々回の振幅値(ピーク値)AMRL2−
前回の振幅値(ピーク値)AMRLI≦(1/32)X
前々回の振幅値(ピーク値)AMRL2かどうかが判断
され、YESの場合にはS47に進み、リラティブオフ
カウンタFOFRが0にセットされる。NOの場合には
、374に進みリラティブオフの処理が行われる。この
リラティブオフの処理については後述する。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. If NO, the process advances to 374 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, (the current zero-crossing time is the previous zero-crossing time data TF)
) is set in the register TOTO as the current cycle information 11. Then, proceed to 349.
349では、今回の周期情報11>周波数上限THL
IM (発音開始後の上限)かどうかが判断され、YE
Sの場合には350に進む(Noの場合は後述する)。349, current cycle information 11 > frequency upper limit THL
It is determined whether the IM (upper limit after the start of pronunciation) is reached, and YE
In the case of S, the process proceeds to 350 (in the case of No, it will be described later).
349の周波数上限THLIMは、第8図の5TEP3
の336で使用したトリガ時(発音開始時)の周波数の
許容範囲の上限(従って周期として最小で、最高音フレ
ットの2〜3半音上の音高周期に相当する)と同一のも
のである。The upper frequency limit THLIM of 349 is 5TEP3 in Figure 8.
This is the same as the upper limit of the permissible frequency range at the time of triggering (at the start of sound generation) used in 336 (therefore, it is the minimum period and corresponds to the pitch period 2 to 3 semitones above the highest fret).
次に、350では以下の処理が行われる。即ち、レジス
タRIVを0にし、今回のゼロクロス時刻むが前回のゼ
ロクロス時刻データTFとして入力され、また前回のピ
ーク値AMP (b)が前々回ピーク値eに人力され、
さらに今回ピーク値Cが前回のピーク値AMP (b)
に入力される。Next, at 350, the following processing is performed. That is, the register RIV is set to 0, the current zero-crossing time is input as the previous zero-crossing time data TF, and the previous peak value AMP (b) is manually input to the previous peak value e.
Furthermore, the current peak value C is the previous peak value AMP (b)
is input.
そして、S50の処理の後S51に進み、S51では、
周波数下限TLLTM>今回の周期情報11かどうかが
判断され、YESの場合即ち今回の周期がノートオン中
のピッチ抽出音域下限以下になった場合にはS52に進
む。この場合、周波数下限TLLIMは、例えば、開放
弦音階の1オクターブ下にセットされる。つまり、第8
図の5TEP3の周波数下限TTLIM(337参照)
に比較して、許容範囲を広くしている。このようにする
ことで、トレモロアームの操作などによる周波数変更に
対応し得るようになる。After the processing in S50, the process proceeds to S51, and in S51,
It is determined whether frequency lower limit TLLTM>current cycle information 11, and if YES, that is, if the current cycle is below the lower limit of pitch extraction range during note-on, the process advances to S52. In this case, the lower frequency limit TLLIM is set, for example, one octave below the open string scale. In other words, the 8th
Lower frequency limit TTLIM of 5TEP3 in the figure (see 337)
The permissible range is wider compared to . By doing this, it becomes possible to respond to frequency changes by operating the tremolo arm, etc.
上記動作により、周波数の上限、下限について許容範囲
に入る場合についてのみS52まで進み、そうでない場
合はS49.351より第4図のメインルーチンのM2
の処理に戻って次のピークの入力を待つ。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, the process proceeds from S49.351 to M2 of the main routine in Figure 4.
Return to processing and wait for the next peak 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で今回ピーク値CがベロシティVELに
書込まれ、354に進む。Then, in S53, the current peak value C is written to the velocity VEL, and the process proceeds to 354.
S54では、ノーチェンジレベルNCHLv〉(前々回
ピーク値e−今回ピーク値C)かどうかの判断が行われ
、YESの場合には355に進む。In S54, it is determined whether the no-change level NCHLv> (peak value e from the time before the previous time - peak value C this time), and if YES, the process proceeds to 355.
即ち、前回の同極性のピーク値(e=AMP (b)と
今回のピーク値Cとが大きく変化している場合は、その
差がNCHLVを越えることになり、そのようなときに
、抽出された周期情報に基づきピッチ変更を行なうと、
不自然な音高変化を呈することになる可能性が高い。そ
こで、S54でNOの判断がなされると、355以降の
処理をすることなく、第4図のメインルーチンのM2の
処理へ戻り、次のピークの入力を待つ。In other words, if the previous peak value of the same polarity (e = AMP (b) and the current peak value C have changed significantly, the difference will exceed NCHLV, and in such a case, the extracted When the pitch is changed based on the cycle information,
There is a high possibility that unnatural pitch changes will occur. Therefore, if a NO determination is made in S54, the process returns to process M2 of the main routine in FIG. 4 without performing the processes from 355 onwards, and waits for the input of the next peak.
次に、354でYESの場合は、リラティブオフカウン
タFOFR=Oか否かが判断される。後述するりラティ
ブオフ処理を行っているときは、リラティブオフカウン
タFOFRはOでなくなっており、そのような場合はピ
ッチ変更(S61を参照)の処理を行なうことなく、S
55でNOの判断をして第4図のメインルーチンのM2
の処理ヘリターンする。そして、S55にて、YESの
判断をしたときは、S56、S57へと順次進む。Next, if YES in 354, it is determined whether the relative off counter FOFR=O. When performing the relative off processing 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
After determining NO in step 55, proceed to M2 of the main routine in Figure 4.
Return to processing. If YES is determined in S55, the process proceeds to S56 and S57 in sequence.
S56.357では2波3値−敗条件が判断される。S
56では今回の周期情報ttX2−7>1今回の周期情
報11−前々回周期データh1が判断され、YESの場
合はS57に進み、またS57では今回の周期情報tt
x2−’>1今回の周期情報11−周期レジスタTTR
の内容1が判断され、YESの場合には358に進む。In S56.357, the 2-wave 3-value-defeat condition is determined. S
In step 56, it is determined that the current cycle information tt
x2-'>1 Current cycle information 11-Cycle register TTR
Content 1 is determined, and if YES, the process advances to 358.
即ち、356では、第11図の例の場合、今回の周期情
報tt=ts t3 (34B参照)が、前回の周期
データh = T T P = t 3 t I(S
52参照)の値とほぼ一致するか否かを判断し、S5
7では、今回の周期情報t t=t、−t3が、それに
重なる周期TTR=t4 tz (367参照)と
ほぼ一致するか否かを判断する。なお、その限界範囲は
、2−7・11として、周期情報に依存してその値が変
わるようになっている。勿論、これは固定の値としても
よいが、本実施例採用技術の方が良好な結果を得ること
ができる。That is, in 356, in the case of the example shown in FIG.
52) and determines whether or not the value almost matches the value of
In step 7, it is determined whether the current cycle information t t = t, -t3 substantially matches the overlapping cycle TTR = t4 tz (see 367). Note that the limit range is 2-7.11, and 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.
次の358では、今回の周期情報11>定数TTUかど
うかが判断され、YESならば359へ進み、ここで今
回の周期情報11<定数TTWかどうかが判断され、Y
ESならば360へ進む。In the next step 358, it is determined whether the current cycle information 11>constant TTU, and if YES, the process advances to 359, where it is determined whether the current cycle information 11<constant TTW, and Y
If it is ES, proceed to 360.
なお、358、S59でNOと判定される場合について
は後述する。Note that the case where NO is determined in S358 and S59 will be described later.
360では、レジスタ5TEP−4であるのかどうかの
判断が行われ、YESの場合には361に進む。At 360, it is determined whether it is the register 5TEP-4, and if YES, the process advances to 361.
361では、第1図のMCP3から楽音発生回路501
ヘピツチ変更(今回の周期情報11に基づく)が行われ
、S62に進む。361, the musical tone generation circuit 501 from the MCP3 in FIG.
A hepitch change (based on the current cycle information 11) is performed, and the process advances to S62.
S62では、今回の周期情報11に対応して時定数チェ
ンジをし、また定数TTUが(17/32)X今回の周
期情報11に書替えられ、さらに定数TTWが(31/
16)X今回の周期情報11に書き替えられる。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 current cycle information 11.
また、後述するように、リラティブオフの処理がなされ
たときに限り、5TEP=5となるが、そのときは36
0から362に直接進み、S61でピッチ変更を行なう
ことなく、362で時定数チェンジを行なう。Also, as described later, 5TEP=5 only when relative off processing is performed, but in that case, 36
The process directly proceeds from 0 to 362, and the time constant is changed in 362 without changing the pitch in S61.
上記時定数チェンジの処理とは、第2図の時定数変換制
御回路202内部の時定数変換レジスタCHTRRに今
回の周期情報11の値に基づく周期データを第1図のM
CP3がセットすることをいう、これは、前記「ピッチ
抽出デジタル回路の動作」の「詳細動作」の項で既に説
明したとおりである。The above-mentioned time constant change process means to transfer period data based on the current period information 11 value to the time constant conversion register CHTRR inside the time constant conversion control circuit 202 shown in FIG.
This means that CP3 is set, as already explained in the "Detailed Operation" section of "Operation of Pitch Extraction Digital Circuit" above.
そして、S62の処理の終了で第4図のメインルーチン
のM2の処理へ戻る。Then, upon completion of the process in S62, the process returns to the process in M2 of the main routine in FIG.
以上述べたようにルート■では、第11図の例では、次
の処理がなされる。即ち、HNC=1、MT=1=b、
RIV=1と判定され、FOFR’−0,tt←t
TF=ts t3、RIV←0、TF←t=t5 、
e=AMP (1)=al 、AMP (1)←c=a
z 、h−’r’rr’=’rp (1)=t3 tt
、TTP←t t=t5−tz 、VEL−c=a2
となり、更に、
■TTPζTTRζ11゜
■TTU<L t<TTW。As described above, in the route {circle around (2)}, the following processing is performed in the example of FIG. That is, HNC=1, MT=1=b,
It is determined that RIV=1, FOFR'-0, tt←t
TF=ts t3, RIV←0, TF←t=t5,
e=AMP (1)=al, AMP (1)←c=a
z, h-'r'rr'='rp (1)=t3 tt
, TTP←t t=t5-tz , VEL-c=a2
Then, ■TTPζTTRζ11゜■TTU<L t<TTW.
■AMP (0)−c<NCHLV
の3条件の満足で、11に従ったピッチ変更を行なう、
その後、TTU←(17/32)xtt、TTW←(3
1/16)xttの設定がなされる。■If the three conditions of AMP (0)-c<NCHLV are satisfied, change the pitch according to 11.
After that, TTU←(17/32)xtt, TTW←(3
1/16) xtt settings are made.
以上の動作によりルート■において、実際の楽音発生回
路501(第1図)に対するピッチ変更が行われ、続く
ゼロクロスインタラブド(次のピ一りの検出)でルート
■の処理、同様に、続くゼロクロスインタラブドで、ル
ート■の処理が行われる。このようにして、ルート■で
は、単に周期を抽出(S67を参照)し、ルート■では
実際のピッチ変更(S61参照)、時定数チェンジ処理
(S62参照)が行われることになる。As a result of the above operations, the pitch of the actual musical tone generation circuit 501 (Fig. 1) is changed in the route ■, and the process of the root ■ is performed at the subsequent zero cross interlapping (detection of the next single pitch), and similarly, the following zero cross The route ■ is processed in the interactive mode. In this way, in route (2), the period is simply extracted (see S67), and in route (2), actual pitch change (see S61) and time constant change processing (see S62) are performed.
−一イブオンの
第9図の5TEP4におけるルート■の366で、波形
ナンバーカウンタHNCが3を越えるようにカウントア
ツプされた後は、340においてYESの判断がなされ
、次に341へ行き、リラティブオンの条件を検出する
。- After the waveform number counter HNC is counted up to exceed 3 at 366 of the route (2) in 5TEP4 of FIG. Detect conditions.
これは、c−AMP (b)>TRLRLであり、前回
のピーク値AMP (b)に比べて今回のピーク値Cが
しきい値TRLRLを越えて増大したとき、つまり、こ
れは弦操作後に同じ弦を再度ピッキングしたとき(トレ
モロ奏法などによる)にこのようなことがおき、この場
合は341の判定結果がYESとなり、リラティブオン
の処理をすべくS41からS7Bへ進む。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 string is picked again (by tremolo playing, etc.), and in this case, the determination result in step 341 is YES, and the process advances from S41 to S7B to perform relative-on processing.
378では、時定数変換制御回路202(第2図)の時
定数変換レジスタCRTRRへ最高音フレット(例えば
22フレツト)の周期CRTIMをセットする。At step 378, the period CRTIM of the highest fret (for example, the 22nd fret) is set in the time constant conversion register CRTRR of the time constant conversion control circuit 202 (FIG. 2).
上記処理の後、第5図の5TEPOの506へ進み、当
該発音中の楽音をノートオフした後、再発音を開始する
。なお、通常の演奏操作によれば、第9図の5TEP4
の541ではNoの判断がなされ、342へ進み、上述
したルート■もしくはルート■へ進む。After the above processing, the process proceeds to step 506 of 5TEPO in FIG. 5, where the note-off is performed on the musical tone being generated, and then re-voice generation is started. In addition, according to normal performance operations, 5TEP4 in FIG.
In step 541, a negative determination is made, and the process proceeds to step 342, where the process proceeds to the above-mentioned route ■ or route ■.
リラティブオフの
次に、第15図を参照して、リラティブオフ処理を説明
する。リラティブオフとは、フレット操作をしている状
態から、ピッキングをしないで開放弦状態へ移行する操
作にともない消音動作を行うことをいう。Next to relative off, relative off processing will be explained with reference to FIG. 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図(7)STEP4(7)S
46がらS74へ進む。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
Figure 9 (7) STEP 4 (7) S
46, the process advances to S74.
そして、リラティブオフカウンタFOFRが定数ROF
CTを越えるまでカウントアツプするように374から
375へ進む。Then, relative off counter FOFR is constant ROF
The process proceeds from 374 to 375 so as to count up until the CT is exceeded.
続けて、S75からS48へ行きs49〜s55の処理
を行なうが、FOFR=Oでないので、S55の判定結
果はNOとなり、リラティブオフ処理に入る直前ではピ
ッチ変更を行なうことなく第4図のメインルーチンのM
2の処理へ戻る。Subsequently, the process goes from S75 to S48 and processes from s49 to s55 are performed, but since FOFR=O, the determination result in S55 is NO, and immediately before entering the relative off process, the main routine of FIG. 4 is performed without changing the pitch. M of
Return to step 2.
そして、リラティブオフ時のピークが次りに入力し、S
74でNOと判断すると、つまり第15図の例では、F
OFRの値が3となったとき(ROFCTは2である)
、S74から376へ移行する。Then, the peak at relative off is input next, and S
If it is determined NO in step 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.
ただし、S46の判断でYESの判断が一度でもあると
、S46から547へ進み、FOFRをリセットするよ
うに動作する。従って、ROFCTで指定される回数だ
け続けてS46の条件を満足しなければ、リラティブオ
フの処理はなされない。なお、ROFCTO値は、音高
が高い弦にっいて大きな値としておけば、はぼ一定の時
間経過で、いずれの弦についてもリラティブオフ処理が
できる。However, if the determination in S46 is YES even once, the process proceeds from S46 to 547 and operates 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 roughly constant period of time.
次に、374から376へ行くと、リラティブオフカウ
ンタFOFRをリセットし、レジスタ5TEPを5とし
、S77へ進んで楽音発生回路501(第1図)に対し
ノートオフを指示する。Next, when the process goes from 374 to 376, the relative off counter FOFR is reset, the register 5TEP is set to 5, and the process goes to S77 to instruct the tone generating circuit 501 (FIG. 1) to turn off the note.
この5TEPが5の状態では、ピッチ抽出処理を5TE
P4の時と同様に実行するが、360から361を介す
ることなくS62へ進むので、楽音発生回路501に対
しては、ピッチ変更は指示されない。ただし、S62に
おいて抽出した周期に従って時定数チェンジ処理を行な
う。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 step 360 to step S62 without going through steps 361, the musical tone generation circuit 501 is not instructed to change the pitch. However, the time constant change process is performed according to the period extracted in S62.
そして、5TEPが5の状態では、リラティブオンの処
理を受付けるが(341,378)、それ以外の場合で
は、第4図のメインルーチンの中で、振動レベルが減少
してきたことが検知されることによりM14で5TEP
が0となり、初期状態にもどる。Then, when 5TEP is 5, the relative-on process is accepted (341, 378), but in other cases, it is detected that the vibration level has decreased in the main routine shown in Figure 4. 5 TEP with M14 by
becomes 0 and returns to the initial state.
なお、346で使用するAMRLI、AMRL24;!
S64で作られており、1周期の中でレベルが大きい方
のピーク(最大ピークと最小ピークとのうちのいずれか
一方)がこの値とされ、第15図の最大ピークakが最
大ピークbk−1より必ず大である場合であって、an
+lとa n+2、an−+2とan+3、an+3と
an+4の差がいずれも所定値を越えるようになってい
る。In addition, AMRLI used in 346, AMRL24;!
S64, 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. 15 is the maximum peak bk- is always greater than 1, and an
The differences between +l and an+2, an-+2 and an+3, and an+3 and an+4 all exceed predetermined values.
また、このときルート■の処理においては、最小ピーク
bn+1、bn+2、bn+3が極端に減少してきてい
るので、354でNOの判断が成されて、第4図のメイ
ンルーチンのM2の処理へ戻り、ピッチ変更処理はなさ
れない。At this time, in the process of route (■), the minimum peaks bn+1, bn+2, and bn+3 have decreased extremely, so a NO judgment is made in 354, and the process returns to M2 of the main routine in FIG. No pitch change processing is performed.
ビ チ の
次に、ピッチ周期が不適切な場合、即ち、ピッチ抽出し
ている際に、358又はS59でオクターブ関係にある
倍音、つまりオクターブ高い周期やオクターブ低い周期
が続けて検出されたときの処理について説明を行う。Next to Bichi, when the pitch period is inappropriate, that is, when extracting the pitch, overtones in an octave relationship in 358 or S59, that is, periods an octave higher or an octave lower, are detected consecutively. The process will be explained.
今、第9図の5TEP4の358の定数TTUは、第8
図の5TEP3の5301にて最小の値0とされ、定数
TTWは同様に最大の値MAXとされており、はじめて
このフローを通るときは必ず35B、359でYESの
判断がなされるが、その後はS62において、定数TT
Uには、(17/32) ・11(はぼ1オクターブ
高音の周期情報)がセットされ、定数TTWには同様に
862にて(31/16) ・11(はぼ1オクター
ブ低音の周期情報)がセットされる。Now, the constant TTU of 358 of 5TEP4 in FIG.
The minimum value 0 is set at 5301 of 5TEP3 in the figure, and the constant TTW is also set at the maximum value MAX.When going through this flow for the first time, YES is always determined at 35B and 359, but after that In S62, constant TT
U is set to (17/32) ・11 (period information of one octave high note), and constant TTW is set to 862 (31/16) ・11 (period information of one octave low note) ) is set.
従って、急激にオクターブアップする場合(これは、振
動弦を指で振動を止めるようにミュート操作したときな
どに生ずる)、又はオクターブダウンする場合(これは
波形のピークを取り逃した時などに起る)が発生したと
きは、ピッチ変更をすると、不自然となるので、ピッチ
変更をしないように分岐する。Therefore, if you suddenly go up an octave (this happens when you mute a vibrating string with your finger to stop it vibrating) or down an octave (this happens when you miss the peak of the waveform, etc.) ) occurs, changing the pitch will result in an unnatural result, so the process branches to avoid changing the pitch.
即ち、358では11がTTUを越えなかったとき、つ
まり、前回抽出した周期の17/32倍した値TTUよ
り小になったとき、S76へ進む。That is, in 358, 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.
つまり、オクターブ高い音が抽出されたときは、ミュー
ト操作をした場合とみなし、オクターブ高い音を出力す
ることなく、S58から376へ行き、前記リラティブ
オフ時同様S76、S77の処理によって当該音の発音
を停止する。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 S58 to 376 without outputting the octave high note, and the sound is produced by the processing in S76 and S77 as in the case of relative off. stop.
また、359では、11がTTWを越えなかったとき、
つまり前回抽出した周期の31/16倍した値TTWよ
り大となったとき、S60へ進むことなく、第4図のメ
インルーチンの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 step M2 of the main routine in FIG. 4 without proceeding to S60.
この状態は第16図に示されている。通常ノートオフ近
辺の非常に波形が小さい場合は、他のピッキングによっ
てヘキサピックアップのクロストークやボディの共振に
よって波形が乗ってくる。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.
すると、例えば、第16図のような入力波形となり、1
オクターブ下の入力波形が続けて検出されてしまうこと
がある。Then, for example, the input waveform becomes as shown in Fig. 16, and 1
Input waveforms an octave lower may be detected continuously.
このような場合、同等処理を施さないと、急にオクター
ブ下の音を出力してしまい、掻めて不自然となる。その
ために、S56、S57でTan+2#Ta n+3#
Tbn+2が検出されても、Tan+3>Tan+1x
(31/16)となるので、ピッチ変更することなく
、359から第4図のメインルーチンのM2の処理へ戻
る。In such a case, if equivalent processing is not applied, the sound will suddenly be output an octave lower, resulting in a harsh and unnatural sound. Therefore, in S56 and S57, Tan+2#Ta n+3#
Even if Tbn+2 is detected, Tan+3>Tan+1x
(31/16), so the process returns from 359 to M2 of the main routine in FIG. 4 without changing the pitch.
゛フ゛1 几 の
次に、波形がダブって抽出される場合、即ち、同じ極性
のピークが続けて検出される場合の処理について説明を
行う。Next, a description will be given of processing when waveforms are extracted in duplicate, that is, when peaks of the same polarity are successively detected.
まず、第9図の5TEP4の342の判定結果がNoと
なるルート■において、S63でYESの場合は、36
8に進みダブり処理が行われる。First, in route ■ where the determination result of 342 of 5TEP4 in FIG. 9 is No, if YES in S63, 36
The process proceeds to step 8, where duplication processing is performed.
即ち、S63でYESの場合は36Bに進み、今回ピー
ク値C〉同じ符号の前回のピーク値AMP (b)かど
うかが判断され、YESの場合はS69に進む。That is, if YES in S63, the process advances to 36B, 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 S69.
S69では、今回ピーク値Cに前回のピーク値AMP
(b)が書き替えられ、S70に進む。In S69, the previous peak value AMP is added to the current peak value C.
(b) is rewritten and the process advances to S70.
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.
もし、368でNOの判断がなされるとすぐに、第4図
のメインルーチンのM2の処理に戻る。従って、新しい
人力波形のピークが大である場合についてのみ、倍音の
ピークをひろっていないと考えられるので、新しい波形
のピーク値が登録される。If a NO determination is made in step 368, the process immediately returns to step M2 of the main routine in FIG. Therefore, the peak value of the new waveform is registered only when the peak of the new manual waveform is large, since it is considered that the overtone peak has not been extracted.
また、S70でNOのときと、S71の処理の終了のと
きには、同様にメインルーチンへ戻る。Further, if NO in S70 or when the process in S71 ends, the process returns to the main routine in the same way.
第17図に、上記ダブり処理の例を示す。なお、この例
の場合はMT=0の状態を示している。FIG. 17 shows an example of the above-mentioned duplicate processing. Note that this example shows the state of MT=0.
般に、基本波周期と倍音成分の周期が非整数倍の関係に
あるので、倍音の位相がずれて行き、同じ極性のゼロク
ロスを検出をしてしまうことになり、そのために誤った
ピッチ変更をしないようにしないといけない。この図の
例の場合では、「ダブリ」と示しているところで、ダブ
リの状態が生じている。In general, since the fundamental wave period and the period of the overtone components are in a non-integer multiple relationship, the phase of the overtones will shift and zero crossings of the same polarity will be detected, which may result in incorrect pitch changes. I have to try not to do that. In the case of the example shown in this figure, a double state occurs where "double" is indicated.
このときは、S42から363へ行き、YESの判断を
して368へ行く。368では、この場合、(an+2
)と(an+3)との比較をして、(an+3)が(a
n+2)より大なときに限りS69へ行き、AMP(1
)を書替える。そして、更に前回の振幅値(ピーク値)
AMRLIと今回の振幅情報(ピーク値C)の比較を3
70で行っ°て、もしYESならば371へ進み、今回
のピーク値Cを前回の振幅値(ピーク値)AMRLIと
する。In this case, go to 363 from S42, make a YES determination, and go to 368. In this case, (an+2
) and (an+3), (an+3) is (a
Go to S69 only when the value is larger than AMP(1+2).
). Then, the previous amplitude value (peak value)
Comparison of AMRLI and current amplitude information (peak value C) 3
Go to step 70, and if YES, go to step 371 and set the current peak value C as the previous amplitude value (peak value) AMRLI.
次に、第9図の5TEP4の342の判定結果がYES
となるルート■において、次の343でNOとなる場合
は、S72に進み上記と同様にダブり処理が行われる。Next, the determination result of 342 of 5TEP4 in Fig. 9 is YES.
If the next step 343 is NO in route (3), the process advances to S72 and the duplication process is performed in the same manner as above.
即ち、S43でNoの場合はS72に進み、今回ピーク
値C〉同じ符号の前回のピーク値AMP(b)かどうか
が判断され、YESの場合はS73に進み、今回ピーク
値Cに前回のピーク値AMP (b)が書き替えられた
後、第4図のメインルーチンのM2の処理へ戻る。That is, if No in S43, the process advances to S72, 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 After the value AMP (b) has been rewritten, the process returns to M2 of the main routine in FIG.
もし、S72でNOの判断がなさるとすぐに、第4図の
メインルーチンのM2の処理に戻る。従って、この場合
も、新しい入力波形のピークが大である場合についての
み、新しい波形のピーク値が登録される。If a negative determination is made in S72, the process immediately returns to step M2 of the main routine in FIG. 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.
第18図に、その例を示す。この例ではMT−1の状態
を示している。この場合、図のダブリと書いであるゼロ
クロス時の5TEP4の処理では、342から343へ
行き、S43ではYESの判断をして372へ進む。こ
こで(an+3)と(an+2)の大きさが比較され、
もしくan+3)が(an+2)より大であれば、S7
2でYESの判断をし、AMP(1)に、(an+3)
の値をセットし、もし逆の場合は同等変更処理をしない
。An example is shown in FIG. This example shows the state of 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 after determining YES in S43, the process goes to 372. Here, the sizes of (an+3) and (an+2) are compared,
If an+3) is greater than (an+2), S7
Make a YES judgment on 2, and set it to AMP (1), (an+3)
Set the value of , and if the opposite is true, do not perform the equivalent change process.
ところで、上記のダブり処理の場合、抽出している時刻
データは同等使用しないので、周期情報Ta n+3は
何等変わらない。また、当然周期データに基づくピッチ
変更は行われない。By the way, in the case of the above-described duplication process, the extracted time data is not used in the same way, so the cycle information Tan+3 does not change at all. Also, of course, the pitch is not changed based on the periodic data.
Hの の
上記実施例において、音色を制御する変数R3Pは整数
値としたが、実数値によって制御するようにしてもよい
。In the above embodiment of H, the variable R3P that controls the timbre is an integer value, but it may be controlled using a real value.
また、本実施例においては、この発明を電子ギター(ギ
ターシンセサイザ)に適用したものであったが、それに
限らない。演奏操作を入力波形信号として検出し、それ
に基づいてオリジナルの信号とは別の音響信号を発生す
るタイプの楽音発生装置であれば、種々適用可能である
。Further, in this embodiment, the present invention is applied to an electronic guitar (guitar synthesizer), but the present invention is not limited thereto. Various types of musical sound generation devices can be applied as long as they detect a performance operation as an input waveform signal and generate an audio signal different from the original signal based on the detected performance operation.
また、本実施例では、波形立ち上がりから発音開始まで
の間隔により、楽音の音色を制御するようにしたが、そ
の他、様々な効果(エフェクト)等の制御を行うように
してもよい。Furthermore, in this embodiment, the timbre of the musical tone is controlled based on the interval from the rise of the waveform to the start of sound generation, but various other effects may also be controlled.
本発明によれば、入力波形信号に基づいて楽音発生部を
制御して人工的に対応する楽音を得るようにした電子楽
器において、演奏法によって入力波形信号を意図的に乱
すことにより、間隔計測手段によって計測される間隔を
可変させることができ、同手段で得られる間隔に従って
、楽音の特性例えば音色を変化させることで、より豊か
な演奏効果が得られる。この場合、楽音の音量は、例え
ば入力波形の信号強度に従って制御すれば、入力波形信
号によって楽音の音量と音色を独立して制御できること
になる。According to the present invention, in an electronic musical instrument in which a musical tone generator is controlled based on an input waveform signal to artificially obtain a corresponding musical tone, intervals can be measured by intentionally disturbing the input waveform signal depending on the playing method. The interval measured by the means can be varied, and by changing the characteristics of the musical tone, such as the timbre, according to the interval obtained by the means, a richer performance effect can be obtained. In this case, if the volume of the musical tone is controlled, for example, according to the signal strength of the input waveform, the volume and timbre of the musical tone can be independently controlled by the input waveform signal.
従って、例えばギターシンセサイザー等の電子弦楽器に
おいて、弦振動を乱すように荒くピッキングすることに
より人力波形信号が乱れ、入力波形の立ち上がり時にお
いて、ピッチ抽出手段がなかなか有効なピッチ情報を検
出せず、間隔計測手段で計測される間隔が長くなる。こ
の状態で、弦を弾く強さを一定にすれば、例えば楽音の
音量は変化させずに音色のみを変化させることができ、
大きな演奏効果が生じさせることが可能となる。Therefore, for example, in an electronic stringed instrument such as a guitar synthesizer, by picking roughly to disturb the string vibration, the human waveform signal is disturbed, and the pitch extraction means has difficulty detecting effective pitch information at the rise of the input waveform, resulting in The interval measured by the measuring means becomes longer. In this state, if you keep the force with which you pluck the strings constant, you can, for example, change only the timbre without changing the volume of the musical note.
It becomes possible to produce great performance effects.
第1図は、本発明による電子楽器の構成図、第2図は、
ピッチ抽出ディジタル回路の構成図、第3図は、割込み
処理ルーチンの動作フローチャートを示した図、
第4図は、メインルーチンの動作フローチャートを示し
た図、
第5図は、5TEPOの動作フローチャートを示した図
、
第6図は、5TEP 1の動作フローチャートを示した
図、
第7図は、5TEP2の動作フローチャートを示した図
、
第8図は、5TEP3の動作フローチャートを示した図
、
第9図は、5TEP4 (5)の動作フローチャート
を示した図、
第10図は、本実施例の概略動作説明図、第11図は、
本実施例の基本動作説明図、第12図(a)、働)は、
5TEP 1におけるダブり処理の動作説明図、
第13A図、第13B図、第13C図は、それぞれ5T
EP2におけるダブり処理の動作説明図、第14図は、
5TEP3におけるノイズ除去処理の動作説明図、
第15図は、5TEP4におけるリラティブオフ処理の
動作説明図、
第16図は、5TEP4におけるピッチ周期不適切時の
処理動作説明図、
第17図は、ルート■におけるダブり処理の動作説明図
、
第18図は、ルート■におけるダブり処理の動作説明図
である。
1・・・ピッチ抽出アナログ回路、
2・・・ピンチ抽出デジタル回路、
3・・・中央制御装置(MCP)、
4・・・アドレスデコーダ、
5・・・楽音発生部、
201・・・ピーク検出回路、
202・・・時定数変換制御回路、
203・・・波高値取込回路、
204・・・ゼロクロス時刻取込回路、303.304
・・・タイマ、
501・・・楽音発生回路、
Di・・・デジタル出力。
特許出願人 カシオ計算機株式会社5TEP O’
)勤4丁70−も一ト盲ホレ斥(2)第
図
TEP 1
の重カイ乍フローさ−ドf?1オ、LrCt21第
図
C>AMP(0) で・ζγい pそ68C>AMP
(0)て・ある場今
(b)
TEP
+=f−;’7ろ7°′フ゛ツメ&f¥メスカイ′F−
説B月口第12図FIG. 1 is a configuration diagram of an electronic musical instrument according to the present invention, and FIG.
The configuration diagram of the pitch extraction digital circuit, Figure 3 shows the operation flowchart of the interrupt processing routine, Figure 4 shows the operation flowchart of the main routine, and Figure 5 shows the operation flowchart of 5TEPO. Figure 6 is a diagram showing the operation flowchart of 5TEP 1, Figure 7 is a diagram showing the operation flowchart of 5TEP2, Figure 8 is a diagram showing the operation flowchart of 5TEP3, and Figure 9 is a diagram showing the operation flowchart of 5TEP3. , 5TEP4 (5), FIG. 10 is a diagram schematically explaining the operation of this embodiment, and FIG. 11 is
The basic operation explanatory diagram of this embodiment, FIG. 12(a), function) is as follows:
The operation explanatory diagrams of the duplication process in 5TEP 1, Figures 13A, 13B, and 13C are for 5T
FIG. 14 is an explanatory diagram of the operation of the duplication process in EP2.
Fig. 15 is an explanatory diagram of the operation of the noise removal process in 5TEP3, Fig. 15 is an explanatory diagram of the relative off processing in 5TEP4, Fig. 16 is an explanatory diagram of the processing operation when the pitch period is inappropriate in 5TEP4, Fig. 17 is the route ■ Fig. 18 is an explanatory diagram of the operation of the duplication process in route (2). DESCRIPTION OF SYMBOLS 1... Pitch extraction analog circuit, 2... Pinch extraction digital circuit, 3... Central control unit (MCP), 4... Address decoder, 5... Musical tone generation part, 201... Peak detection Circuit, 202... Time constant conversion control circuit, 203... Peak value acquisition circuit, 204... Zero cross time acquisition circuit, 303.304
...Timer, 501...Music tone generation circuit, Di...Digital output. Patent applicant Casio Computer Co., Ltd. 5TEP O'
) Tsutomu 4-cho 70-Motoblind Hole (2) Figure TEP 1's heavy flow rate f? 1 O, LrCt21 Figure C>AMP(0) and ζγ pso68C>AMP
(0) Te/aru place now (b) TEP +=f-;'7ro7°'fitsume&f\meskai'F-
Theory B Monthly Figure 12
Claims (1)
手段と、 前記入力波形信号の立ち上がり時点を検出する立ち上が
り検出手段と、 該立ち上がり検出手段で前記入力波形信号の立ち上がり
時点が検出されてから前記ピッチ抽出手段で有効なピッ
チ情報が抽出され始める時点までの間隔を計測する間隔
計測手段と、 該間隔計測手段により計測された前記間隔に従って楽音
の特性を可変制御しながら前記ピッチ抽出手段で抽出さ
れるピッチ情報に応じた音高で楽音を発生する楽音発生
制御手段と、 を有することを特徴とする電子楽器。 2)前記楽音発生制御手段は、前記間隔に従って前記楽
音の音色を制御することを特徴とする請求項1記載の電
子楽器。[Claims] 1) Pitch extraction means for extracting pitch information from an input waveform signal; rising detection means for detecting a rising point of the input waveform signal; and a rising point detecting means for detecting a rising point of the input waveform signal. an interval measuring means for measuring an interval from when the pitch is detected to a point at which valid pitch information starts to be extracted by the pitch extracting means; An electronic musical instrument comprising: musical sound generation control means for generating a musical sound at a pitch according to pitch information extracted by the extraction means. 2) The electronic musical instrument according to claim 1, wherein the musical tone generation control means controls the timbre of the musical tone according to the interval.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63300416A JP2615946B2 (en) | 1988-11-28 | 1988-11-28 | Music control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63300416A JP2615946B2 (en) | 1988-11-28 | 1988-11-28 | Music control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02146096A true JPH02146096A (en) | 1990-06-05 |
JP2615946B2 JP2615946B2 (en) | 1997-06-04 |
Family
ID=17884543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63300416A Expired - Lifetime JP2615946B2 (en) | 1988-11-28 | 1988-11-28 | Music control device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2615946B2 (en) |
-
1988
- 1988-11-28 JP JP63300416A patent/JP2615946B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2615946B2 (en) | 1997-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2615825B2 (en) | Electronic string instrument | |
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 | |
US4924746A (en) | Input apparatus of electronic device for extracting pitch from input waveform signal | |
JPH02146096A (en) | Electronic musical instrument | |
JP2722584B2 (en) | Music control device | |
JPH02171798A (en) | Electronic musical instrument | |
JPH02154298A (en) | Electronic musical instrument | |
JP2958778B2 (en) | Tone generator | |
JP2611263B2 (en) | Sound control device | |
JP2661481B2 (en) | Electronic musical instrument | |
JP6135312B2 (en) | Electronic stringed instrument, musical sound control method and program | |
JPH0372400A (en) | Electronic musical instrument | |
JPH01100597A (en) | Electronic musical instrument | |
JP2661066B2 (en) | Sound control device | |
JP2530928Y2 (en) | Electronic musical instrument level display | |
JPH01100596A (en) | Input controller for electronic musical instrument | |
JP2661065B2 (en) | Sound control device | |
JP2605773B2 (en) | Electronic string instrument | |
JP2591000B2 (en) | Electronic string instrument | |
JP2591001B2 (en) | Electronic string instrument | |
JPS63173096A (en) | Input controller for electronic musical instrument | |
JPH04274298A (en) | Automatic musical performance device |