JP2508692B2 - Input waveform signal controller - Google Patents
Input waveform signal controllerInfo
- Publication number
- JP2508692B2 JP2508692B2 JP62050380A JP5038087A JP2508692B2 JP 2508692 B2 JP2508692 B2 JP 2508692B2 JP 62050380 A JP62050380 A JP 62050380A JP 5038087 A JP5038087 A JP 5038087A JP 2508692 B2 JP2508692 B2 JP 2508692B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- value
- peak
- frequency
- point
- 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.)
- Expired - Lifetime
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の詳細な説明】 [発明の技術分野] この発明は例えば電子ギター等における入力波形信号
制御装置に関し、特にピッチ(基本周波数)の抽出を入
力波形信号が所定レベル以下になったときに打ち切るよ
うにしたものに関する。Description: TECHNICAL FIELD OF THE INVENTION The present invention relates to an input waveform signal control device in, for example, an electronic guitar, and in particular, stops the extraction of pitch (fundamental frequency) when the input waveform signal falls below a predetermined level. About what you did.
[発明の背景] 従来より、自然楽器の演奏操作によって発生する波形
信号からピッチ(基本周波数)を抽出し、電子回路で構
成された音源装置を制御して、人工的に楽音等の音響を
得るようにいたものが種々開発されている。BACKGROUND OF THE INVENTION Conventionally, a pitch (fundamental frequency) is extracted from a waveform signal generated by a performance operation of a natural musical instrument, and a sound source device composed of an electronic circuit is controlled to artificially obtain a sound such as a musical sound. There have been various developments.
この種の電子楽器では、入力波形信号のレベルの大小
にかかわらず、ピッチを抽出し、当該ピッチに対応する
音階音を発生するよう指示するのが一般的である。In this type of electronic musical instrument, it is general to extract a pitch and instruct to generate a scale tone corresponding to the pitch regardless of the level of the input waveform signal.
ところで、入力波形信号は消音した後もノイズの影響
で小さな波形レベルで振動しており、従来は、このよう
な場合でもピッチ抽出が続行されているため、消音後に
不必要な処理が行われているという問題点があり、また
この消音後のピッチ抽出処理により、即時性が要求され
る次の新たな楽音の発音処理及びピッチ抽出処理が遅れ
てしまう原因ともなっていた。By the way, the input waveform signal oscillates at a small waveform level due to the influence of noise even after the sound is muted.In the past, since pitch extraction is continued even in such a case, unnecessary processing is performed after the sound is muted. In addition, the pitch extraction processing after the muffling causes a delay in the sound generation processing and pitch extraction processing of the next new musical tone that requires immediacy.
[発明の目的] この発明は上述した事情に鑑みてなされたもので、そ
の目的とするところは、消音開始後の無駄な処理をなく
し、次の新たな楽音の発音処理及びピッチ抽出処理の開
始の応答性を向上させた入力波形信号制御装置を提供す
ることにある。[Object of the Invention] The present invention has been made in view of the above-mentioned circumstances, and an object of the present invention is to eliminate wasteful processing after the start of mute, and to start the next new tone generation processing and pitch extraction processing. To provide an input waveform signal control device with improved responsiveness.
[発明の要点] この発明は上述した目的を達成するために、入力波形
信号の周波数を測定する周波数測定手段と、この周波数
測定手段で測定された周波数に応じた音響信号の発生を
指示する発音指示手段と、上記入力波形信号のレベルが
所定時間、第1の所定値以下になったとき、音響信号の
消音を指示する消音指示手段と、上記入力波形信号のレ
ベルが上記消音のための上記第1の所定値より小さい第
2の所定値以下であるとき、上記周波数測定手段が前記
周波数の測定を行わないように制御する測定停止手段と
を有することを要点とするものである。SUMMARY OF THE INVENTION In order to achieve the above-mentioned object, the present invention has a frequency measuring means for measuring the frequency of an input waveform signal and a sound generating instruction for generating an acoustic signal according to the frequency measured by the frequency measuring means. An instructing means, a muffling instructing means for instructing to mute the acoustic signal when the level of the input waveform signal becomes equal to or lower than a first predetermined value for a predetermined time, and the level of the input waveform signal for muffling the sound. The main point is to have a measurement stopping means for controlling the frequency measuring means so as not to measure the frequency when the value is smaller than the second predetermined value and smaller than the first predetermined value.
[発明の作用] 即ち、本発明は、第2の所定値を設けたことによっ
て、従来、ノイズ信号であってもピッチ抽出のための処
理を行わねばならなかったことが解消できる。そしてま
た第2の所定値が第1の所定値より小の値をとることに
よって、第1の所定値の検出による消音開始後も、第2
の所定値以下にピーク値がなるまでのある期間はピッチ
抽出をして音高変更の処理が行え、重要な演奏効果が実
現できる。[Operation of the Invention] That is, according to the present invention, by providing the second predetermined value, it is possible to solve the problem that the processing for pitch extraction has conventionally been required even for a noise signal. Further, the second predetermined value is smaller than the first predetermined value, so that the second second value is maintained even after the muffling by the detection of the first predetermined value.
During a certain period until the peak value becomes equal to or less than the predetermined value, the pitch is extracted and the pitch change processing can be performed, so that an important performance effect can be realized.
また、一度波高値が第1の所定値以下となって所定時
間の測定開始後に波形信号のレベルが第1の所定値を瞬
間的に越えることもよくあり、そのような場合は、再度
上記所定時間を測定しなおさねばならないが、そのよう
に消音指示を出すまでの期間がのびれば、常にピッチ抽
出をしなければならないならば、ピッチ抽出処理のため
の負担が大なものとなるが、本発明では、その点も解消
できる。In addition, once the crest value becomes equal to or lower than the first predetermined value, the level of the waveform signal may momentarily exceed the first predetermined value after the start of the measurement for a predetermined time. Although it is necessary to re-measure the time, if the period until such a mute instruction is issued is extended, and if pitch extraction is always required, the load for the pitch extraction process becomes heavy. In the present invention, that point can also be eliminated.
[実施例] 以下、本発明を電子ギターに適用した一実施例につい
て図面を参照して詳述する。Hereinafter, an embodiment in which the present invention is applied to an electronic guitar will be described in detail with reference to the drawings.
下記の実施例では、以下に説明するとおり最大ピーク
検出回路4、最小ピーク検出回路5、ゼロクロス点検出
回路6、フリップフロップ14、15、カウンタ7が周波数
測定手段に、ステップS25〜S29を実行するCPU100が発
音指示手段に、ステップS31〜S37を実行するCPU100が
消音指示手段に、ステップP6、S1を実行するCPU100が
測定停止手段に夫々対応する。In the following examples, the maximum peak detector 4 as described below, the minimum peak detection circuit 5, the zero-cross point detection circuit 6, a flip-flop 15, counter 7 to the frequency measuring means, the steps S 25 to S 29 The CPU 100 to execute corresponds to the sounding instructing means, the CPU 100 to execute steps S 31 to S 37 corresponds to the mute instructing means, and the CPU 100 to execute steps P 6 and S 1 corresponds to the measurement stopping means.
全体回路構成 第1図は、同実施例の全体回路構成を示しており、6
つの入力端子1の信号は、電子ギターボディ上に張設さ
れた6つの弦の夫々に設けられた、弦の振動を電気信号
に変換するピックアップからの信号である。Overall Circuit Configuration FIG. 1 shows the overall circuit configuration of this embodiment.
The signal of one input terminal 1 is a signal from a pickup provided on each of the six strings stretched on the electronic guitar body and converting the vibration of the strings into an electric signal.
入力端子1……からの楽音信号は、ピッチ抽出回路P1
〜P6(図では第1弦のP1についてのみその内部構成を示
している。)内部の夫々のアンプ2……で増幅され、ロ
ーパスフィルタ(LPF)3……で高周波成分がカットさ
れて基本波形が抽出され、最大ピーク検出回路(MAX)
4……、最小ピーク検出回路(MIN)5……及びゼロク
ロス点検出回路(Zero)6……に与えられる。ローパス
フィルタ3……は、各弦の開放弦の振動音周波数fの4
倍の4fにカットオフ周波数が設定されている。これは、
各弦の出力音の周波数が2オクターブ以内であることに
基づくものである。最大ピーク検出回路4……では、楽
音信号の最大ピーク点が検出され、その検出パルス信号
の立上りで後段に接続されているフリップフロップ14…
…のQ出力はHighレベルとなり、このフリップフロップ
14……の出力とゼロクロス点検出回路6……のインバー
タ30……の反転出力とのアンド出力がアンドゲート24…
…を介して割り込み指令信号INTa1〜INTa6としてCPU100
に与えられ、同様に最小ピーク検出回路5……でも、楽
音信号の最小ピーク点が検出され、その検出パルス信号
の立上りで後段に接続されているフリップフロップ15…
…のQ出力がHighレベルとなり、このフリップフロップ
15……の出力とゼロクロス点検出回路6……の出力とア
ンド出力がアンドゲート25……を介して割り込み指令信
号INTb1〜INTb6としてCPU100に与えられる。The tone signal from input terminal 1 ... is the pitch extraction circuit P1.
~ P6 (In the figure, the internal structure is shown only for P1 of the first string.) It is amplified by each internal amplifier 2 ……, and the high-frequency component is cut by the low pass filter (LPF) 3 ……, and the basic waveform Is extracted and maximum peak detection circuit (MAX)
4 ..., minimum peak detection circuit (MIN) 5 ... and zero-cross point detection circuit (Zero) 6 ... The low-pass filter 3 ... is 4 of the vibration sound frequency f of the open string of each string.
The cutoff frequency is set to 4f. this is,
This is based on that the frequency of the output sound of each string is within 2 octaves. The maximum peak detecting circuit 4 detects the maximum peak point of the tone signal, and the flip-flops 14 connected at the subsequent stage at the rise of the detected pulse signal.
The Q output of ... becomes High level, and this flip-flop
The AND output of the output of 14... And the inverted output of the inverter 30 of the zero-crossing point detection circuit 6.
… Via CPU 100 as interrupt command signals INT a1 to INT a6
Similarly, the minimum peak detection circuit 5 also detects the minimum peak point of the tone signal, and the flip-flop 15 connected to the subsequent stage at the rise of the detected pulse signal.
The Q output of ... becomes High level, and this flip-flop
The output of 15 ... And the output of the zero-cross point detection circuit 6 ... And the AND output are given to the CPU 100 as interrupt command signals INT b1 to INT b6 via the AND gate 25.
即ち、最大ピーク点が検出されてフリップフロップ14
がHighレベルになっているときに、波形が正から負へ横
切ったとき割り込み指令信号INTa1〜INTa6がCPU100に与
えられ、逆に最小ピーク点が検出されてフリップロップ
15がHighレベルになっているときに、波形が負から正に
変化したとき割り込み指令信号INTb1〜INTb6がCPU100に
入力する。That is, the maximum peak point is detected and the flip-flop 14
When the waveform is crossing from positive to negative when is at High level, the interrupt command signals INT a1 to INT a6 are given to the CPU100, and conversely the minimum peak point is detected and the flip-flop is detected.
Interrupt command signals INT b1 to INT b6 are input to the CPU 100 when the waveform changes from negative to positive while 15 is at the high level.
そして、CPU100は、これらの割り込み指令信号を受付
けた直後に、対応するフリップフロップ14……、15……
に対しクリア信号CLa1〜CLa6、CLb1〜CLb6を発生してリ
セットする。従って、次に最大ピーク点あるいは最小ピ
ーク点を検出するまで何度ゼロクロス点を通過しても対
応するフリップフロップ14……、15……はリセット状態
であるので、CPU100には割り込みがかからないことにな
る。Immediately after the CPU 100 receives these interrupt command signals, the corresponding flip-flops 14 ..., 15 ...
On the other hand, clear signals CL a1 to CL a6 and CL b1 to CL b6 are generated and reset. Therefore, no matter how many times the zero-cross point is detected until the next maximum peak point or minimum peak point is detected, the corresponding flip-flops 14..., 15. Become.
そして、CPU100では、当該弦の振動出力により割り込
み指令信号INTa1〜INTa6もしくはINTb1〜INTb6が与えら
れて、夫々の時間間隔の少なくとも一方の時間間隔に従
った音階音を発生する。尚、発音開始時においては開放
弦の音階音を発生開始してピッチ抽出の後で正しい周波
数に修正してもよい。この発音開始時の動作については
後述する。Then, the CPU 100, and an interrupt command signal INT a1 to INT a6 or INT b1 to INT b6 given by the vibration output of the strings, to generate a chromatic note in accordance with at least one of the time intervals of the respective time interval. At the start of the sound generation, an open string scale sound may be started to be generated, and the frequency may be corrected to a correct frequency after the pitch extraction. The operation at the start of sound generation will be described later.
そして、上記時間間隔は、後述するようにカウンタ7
と、ワークメモリ101とを用いて求める。即ち、このワ
ークメモリ101には、最大ピーク点あるいは最小ピーク
点直後のゼロクロス点時のカウンタ7のカウント値など
各種データが記憶される。Then, the above-mentioned time interval is set by the counter 7 as described later.
And the work memory 101. That is, the work memory 101 stores various data such as the count value of the counter 7 at the time of the zero crossing point immediately after the maximum peak point or the minimum peak point.
そして、発音開始後は、順次求まる時間間隔データに
従って、発生中の楽音の周波数を可変制御してゆく。即
ちCPU100より音階を指定するデータを周波数ROM8へ送出
し、その結果対応する周波数を示す周波数データが読み
出され、音源回路9に送られて楽音信号が生成され、サ
ウンドシステム10より放音出力される。After the start of sound generation, the frequency of the musical tone being generated is variably controlled according to the time interval data that is sequentially obtained. That is, the CPU 100 sends the data designating the scale to the frequency ROM 8, and as a result, the frequency data showing the corresponding frequency is read and sent to the tone generator circuit 9 to generate a musical tone signal, which is emitted from the sound system 10. It
また、上記ローパスフィルタ3……からの楽音信号
は、A/Dコンバータ11……に与えられ、その波形レベル
に応じたデジタルデータに変換される。The tone signals from the low pass filters 3 ... Are given to the A / D converters 11 ... And converted into digital data corresponding to the waveform level.
そして、このA/Dコンバータ11……の出力はラッチ12
……にラッチされる。このラッチ12……に対するラッチ
信号は、フリップフロップ14……の出力又はフリップフ
ロップ15……の出力がオアゲート16……、17……を介し
て与えられる信号か、あるいはアンドゲート26……及び
オアゲート17……を介して与えられるクロック信号CLが
用いられ、波形の最大、最小ピーク値もしくはその時々
の入力波形信号のレベルを示すデータが記憶される。な
お、上記アンドゲート26……は、CPU100からのラッチ指
示信号L1〜L6によって開成され、このラッチ指示信号L1
〜L6は、上記ゼロクロス点通過時に割り込み指令信号IN
Ta1〜INTa6が与えられることによってHighレベルとな
り、最大ピーク点又は最小ピーク点通過時にフリップフ
ロップ14……、15……からのオアゲート16を介したピー
ク時信号P1〜P6が与えられることによってLowレベル
となる。従ってアンドゲート24……、アンドゲート25…
…を介して割り込み指令信号INTa1〜INTa6、INTb1〜INT
b6が与えられる期間においては、正弦波のような波形入
力の場合、波形の山と谷の前半部分すなわちゼロクロス
点から最大ピーク点又は最小ピーク点まで、その時々の
波高値がラッチされ、最大ピーク点又は最小ピーク点か
ら次のゼロクロス点までは、波形のピーク値が保持され
ることになる。And the output of this A / D converter 11 ... Latch 12
... is latched on. The latch signal for the latch 12 ... is the signal of which the output of the flip-flop 14 ... or the output of the flip-flop 15 ... Is given through the OR gates 16. The clock signal CL given via 17 ... Is used to store data indicating the maximum and minimum peak values of the waveform or the level of the input waveform signal at each time. The AND gate 26 ... Is opened by the latch instruction signals L1 to L6 from the CPU 100, and the latch instruction signal L1
~ L6 is the interrupt command signal IN when the above zero cross point is passed
When T a1 to INT a6 is given, it becomes a high level, and when passing through the maximum peak point or the minimum peak point, the peak time signals P 1 to P 6 from the flip-flops 14 ... It goes low. Therefore, Andgate 24 ……, Andgate 25…
Interrupt command signals INT a1 to INT a6 , INT b1 to INT via
In the period when b6 is given, in the case of a waveform input such as a sine wave, the peak value at each time is latched from the first half of the peaks and valleys of the waveform, that is, the zero cross point to the maximum peak point or the minimum peak point, and the maximum peak value is latched. From the point or the minimum peak point to the next zero cross point, the peak value of the waveform is held.
そして、ラッチ12……出力はCPU100へ与えられ、発音
開始、発音停止、ピッチ抽出開始、ピッチ抽出停止、更
には出力音の放音レベル(音量)等の制御がこのデータ
に従ってなされる。なお、このラッチ12……に上記ラッ
チ指示信号L1〜L6の出力停止前に記憶されるピーク値で
ある波高値は、ワークメモリ101に順次書込まれる。Then, the output of the latch 12 ... Is given to the CPU 100, and sound generation start, sound generation stop, pitch extraction start, pitch extraction stop, and control of the output sound emission level (volume) are performed according to this data. The peak value, which is the peak value stored in the latch 12 ... Before the output of the latch instruction signals L1 to L6 is stopped, is sequentially written in the work memory 101.
即ち、CPU100では、A/Dコンバータ11……より与えら
れる波形レベルを示すデータの絶対値が、予め決められ
た一定値以上になった時には、楽音の発音を開始させる
とともにピッチ(基本周波数)抽出も開始させ、このデ
ータが第7図に示す消音レベル値OFFLEV以下になった時
には、音量レベル急速減衰して放音を終了するよう指示
し、さらに上記データが第7図に示す一段低いピッチ抽
出停止レベル値PITLEV以下になった時には、ピッチ(基
本周波数)抽出も終了させる。その動作の詳細は後述す
るとおりである。That is, in the CPU 100, when the absolute value of the data indicating the waveform level given by the A / D converter 11 ... becomes equal to or higher than a predetermined constant value, the tone generation is started and the pitch (fundamental frequency) is extracted. When the data becomes less than the mute level value OFFLEV shown in FIG. 7, the volume level is rapidly attenuated to instruct the end of the sound emission. When the stop level value falls below PITLEV, the pitch (fundamental frequency) extraction is also terminated. The details of the operation are as described later.
なお、第1図には、A/Dコンバータ11が、ピッチ抽出
回路P1〜P6に対して夫々独立に設けてあるが、一個のA/
Dコンバータを時分割的に使用するこも勿論可能であ
る。In FIG. 1, the A / D converter 11 is provided independently of each of the pitch extraction circuits P1 to P6, but one A / D converter is provided.
Of course, it is also possible to use the D converter in a time division manner.
そして、周波数ROM8、音源回路9は時分割処理により
少なくとも6チャンネルの楽音生成系が形成されてい
る。The frequency ROM 8 and the tone generator circuit 9 form a tone generation system of at least 6 channels by time division processing.
なお、第2図は、ピッチ抽出回路P1内の各部の信号波
形のタイムチャートを表わしており、図のは、ローパ
ルフィルタ3の出力、は最大ピーク検出回路4の出
力、は最小ピーク検出回路5の出力、はゼロクロス
点検出回路6の出力、は割り込み指令信号INTa1〜INT
a6、は割り込み指令信号INTb1〜INTb6、はラッチ指
示信号L1〜L6である。Note that FIG. 2 shows a time chart of the signal waveform of each part in the pitch extraction circuit P1, in which the output of the low-pal filter 3 is, the output of the maximum peak detection circuit 4 is, and the output of the minimum peak detection circuit is shown. 5 is the output of the zero-cross point detection circuit 6, is the interrupt command signal INT a1 to INT
a6, the interrupt command signal INT b1 ~INT b6, is latch instruction signal L 1 ~L 6.
動作 次に本実施例の動作について説明する。第3図はCPU1
00の割り込みルーチンのフローであり、第4図はメイン
フローである。なお、この第3図及び第4図はひとつの
弦についての処理しか示してないが、全ての弦の処理は
全く同じなので、CPU100が夫々の弦についての処理を時
分割的に実行すると考えれば良い。Operation Next, the operation of this embodiment will be described. Figure 3 shows CPU1
FIG. 4 is a flow of an interrupt routine of 00, and FIG. 4 is a main flow. Although FIG. 3 and FIG. 4 only show the processing for one string, the processing for all strings is exactly the same, so if the CPU 100 executes the processing for each string in a time-division manner. good.
ワークメモリ101内のレジスタ さて、CPU100の具体的な動作の説明の前に、ワークメ
モリ101の中の主なレジスタについて説明する。Registers in Work Memory 101 Now, before describing specific operations of the CPU 100, main registers in the work memory 101 will be described.
STEPレジスタは、0、1、2、3の4段階をとり、弦
振動がなされる(第5図(a)もしくは第6図(a)参
照)につれて、第5図(b)あるいは第6図(b)に示
すようにその内容は変化する。このSTEPレジスタが0の
ときは、ノートオフ(消音)状態を表わしている。The STEP register takes four stages of 0, 1, 2, and 3, and as string vibration is made (see FIG. 5 (a) or FIG. 6 (a)), FIG. 5 (b) or FIG. The contents change as shown in (b). When this STEP register is 0, it indicates a note-off (silence) state.
SIGNレジスタは、周期計測のためのゼロクロス点が最
大ピーク(MAX)点の次のゼロクロス点なのか、最小ピ
ーク(MIN)点の次のゼロクロス点なのかを示すもの
で、1のとき前者、2のとき後者である。The SIGN register indicates whether the zero-cross point for period measurement is the next zero-cross point after the maximum peak (MAX) point or the next zero-cross point after the minimum peak (MIN) point. When is the latter.
REVERSEレジスタは、上記SIGNレジスタで表わされた
ゼロクロス点と反対側のピーク点経過後のゼロクロス点
の到来による割り込み処理がなされたか否かをチェック
するデータを記憶するレジスタであり、一周期ごとのピ
ッチ(基本周波数)抽出制御のチェックに用いられる。The REVERSE register is a register that stores data that checks whether or not interrupt processing has been performed due to the arrival of the zero-cross point after the peak point on the side opposite to the zero-cross point represented by the SIGN register has elapsed. Used to check pitch (fundamental frequency) extraction control.
Tレジスタは、入力波形の周期を計測するための特定
点のカウンタ7の値を記憶する。なお、カウンタ7は所
定のクロックでカウントするフリーランニング動作をし
ている。The T register stores the value of the counter 7 at a specific point for measuring the cycle of the input waveform. The counter 7 is performing a free running operation of counting with a predetermined clock.
AMP(i)レジスタは、A/Dコンバータ11からラッチ12
にラッチされた最大もしくは最小ピーク値(実際には絶
対値)を記憶するレジスタで、AMP(1)が最大ピーク
用、AMP(2)が最小ピーク用のレジスタである。The AMP (i) register is latched from the A / D converter 11 to the latch 12
A register for storing the maximum or minimum peak value (actually, an absolute value) latched by the AMP (1) is for the maximum peak, and AMP (2) is for the minimum peak.
PERIODレジスタは、計測した周期をあらわすデータが
入力され、このレジスタの内容を基に、CPU100は、周波
数ROM8、音源回路9に対し周波数制御を行うものであ
る。Data representing the measured period is input to the PERIOD register, and the CPU 100 controls the frequency of the frequency ROM 8 and the tone generator circuit 9 based on the contents of this register.
OFレジスタはラッチ12にラッチされる入力波形のレベ
ルデータが第7図に示す消音レベル値OFFLEV以下になっ
た時に「1」となり、発音中のOFFLEV以上である時に
「0」となるレジスタである。The OF register is a register which becomes "1" when the level data of the input waveform latched by the latch 12 becomes equal to or lower than the mute level value OFFLEV shown in FIG. 7, and becomes "0" when it is equal to or higher than the OFFLEV being sounded. .
OFTレジスタは、上記OFレジスタに「1」が立てられ
た時のカウンタ7のカウント値がセットされるレジスタ
で、このカウント値に基づき、上記OFレジスタの値が
「1」となっている時間が所定時間、例えば当接弦の開
放弦の周期の時間、具体的には例えば第6弦では12ミリ
秒間以上あると消音(ノートOFF)処理が実行される。The OFT register is a register in which the count value of the counter 7 is set when "1" is set in the OF register. Based on this count value, the time when the value of the OF register is "1" is set. The mute (note-off) processing is executed when a predetermined time, for example, the time of the open string cycle of the contact string, more specifically, the sixth string for 12 milliseconds or more.
更に、後述するように本実施例は各種判断のために、
3つの定数(スレッシュホールドレベル)がCPU100内に
設定されている。Further, as will be described later, in this embodiment, for various judgments,
Three constants (threshold levels) are set in the CPU100.
先ず最初のものはONLEFIであり、第5図(a)、第6
図(a)に示すように、いまノートオフの状態であり、
このONLEVIの値よりも大きなピーク値が検出されたと
き、弦がピッキング等されたとして、周期測定のための
動作をCPU100は実行開始する。The first one is ONLEFI, which is shown in FIG.
As shown in Figure (a), note-off is now in progress,
When a peak value larger than this ONLEVI value is detected, the CPU 100 starts the operation for period measurement, assuming that the string has been picked.
ONLEVIIは、ノートオン(発音中)状態であって、前
回の検出レベルと今回の検出レベルとの差がこの値以上
であれば、トレモロ奏法等による操作があったとして、
再度発音開始(リラティブオン、relative on)処理を
行うためのものである。ONLEVII is in the note-on state (while sounding), and if the difference between the previous detection level and the current detection level is more than this value, it is determined that there was an operation by the tremolo playing method, etc.
This is for performing the pronunciation start (relative on) process again.
OFFLEVは、第7図(a)に示してあるように、ノート
オン(発音中)状態であって、この値以下の波形レベル
値が所定時間(例えば開放弦音高の一周期時間)検知さ
れると、ノートオフ(消音)処理をする。As shown in FIG. 7 (a), OFFLEV is in a note-on state (while sounding), and a waveform level value below this value is detected for a predetermined time (for example, one cycle time of open string pitch). And note-off (silence) processing.
PITLEVは、第7図(a)に示してあるように、OFFLEV
より1段小さく設定され、入力波形のピーク値がこの値
以下になると、ピッチ(基本周波数)抽出処理を行わな
い。PITLEV is OFFLEV as shown in Fig. 7 (a).
If the peak value of the input waveform is set to a value one step smaller than this value and the peak value is less than this value, the pitch (fundamental frequency) extraction processing is not performed.
以上の説明から、以下に述べる割り込みルーチン、メ
インルーチンの動作の理解は容易となろう。From the above description, it will be easy to understand the operation of the interrupt routine and the main routine described below.
ゼロクロス点での割り込み処理 さて、アンドゲート24もしくはアンドゲート25の出力
である割り込み指令信号INTa、INTbのCPU100への到来に
よって、第3図の割り込み処理を行う。Interrupt processing Well at the zero-crossing point, the interrupt command signal INT a, which is the output of the AND gate 24 or AND gate 25, the advent of the CPU100 of INT b, performs interrupt processing of FIG. 3.
即ち、割り込み指令信号INTaの入力時には、先ずステ
ップP1の処理をし、CPU100内のaレジスタを1にし、
割り込み指令信号INTbの入力時には、先ずステップP2
の処理によって上記aレジスタに2をセットする。That is, the interrupt command signal INT a On input, first the process in step P 1, the a register in the CPU100 to 1,
At the time of inputting the interrupt command signal INT b , first, the step P 2
2 is set in the a register by the processing of.
そして次にステップP3において、CPU100内のtレジ
スタに、カウンタ7の値をプリセットする。続いて実行
するステップP4では入力波形のレベルデータをラッチ
1から読込み、CPU100内のbレジスタに設定する。Then, at step P 3 , the value of the counter 7 is preset in the t register in the CPU 100. In the subsequent step P 4 , the level data of the input waveform is read from the latch 1 and set in the b register in the CPU 100.
この場合、割り込み指令信号INTa1〜INTa6、INTb1〜I
NTb6が与えられるのは、最大ピーク点、最小ピーク点を
通過直後のゼロクロス点の到来時であり、このゼロクロ
ス点通過までは、ラッチ12にはそのすぐ前の最大ピーク
点又は最小ピーク点のピークレベルデータが保持されて
いるので、bレジスタには入力波形のピークレベルデー
タがセットされることになる。In this case, interrupt command signals INT a1 to INT a6 , INT b1 to I
NT b6 is given at the arrival of the zero-cross point immediately after passing through the maximum peak point and the minimum peak point, and until this zero-cross point is passed, the latch 12 has the maximum peak point or the minimum peak point immediately before it. Since the peak level data is held, the peak level data of the input waveform is set in the b register.
そして、ステップP5において、フリップフロップ14
もしくはフリップフロップ15をクリアする。Then, in step P 5 , the flip-flop 14
Or clear flip-flop 15.
続くステップP6にて、上記bレジスタのピークレベ
ルデータがピッチ抽出停止レベル値PITLEV以下となった
か否かを判別し、以下となっていなければ、ステップP
7にて、上記a、b、tレジスタの内容をワークメモリ1
01に転送記憶し割り込み処理を終了する。In the following step P 6 , it is determined whether or not the peak level data of the b register has become equal to or less than the pitch extraction stop level value PITLEV.
At 7 , the contents of the above a, b and t registers are stored in the work memory 1
Transfer to 01 and store, and interrupt processing ends.
このようにして、ゼロクロス点通過のたびに、このゼ
ロクロス点が最大ピーク点経過後のものか、最小ピーク
点経過後のものかを示すデータ(aレジスタ)、この最
大ピーク点又は最小ピーク点のピークレベルデータ(b
レジスタ)、入力波形の周期(ピッチ)計測のためのこ
のゼロクロス点におけるカウンタ7のカウントデータ
(tレジスタ)のセットが行われていく。Thus, every time the zero cross point is passed, data (a register) indicating whether the zero cross point is after the maximum peak point has passed or after the minimum peak point has passed, the maximum peak point or the minimum peak point, Peak level data (b
Register), and the count data (t register) of the counter 7 at this zero-cross point for measuring the cycle (pitch) of the input waveform is set.
もし、上記ステップP6で、ピークレベルデータがピ
ッチ抽出停止レベル値PITELEV以下となっていれば、ス
テップP7の新たなデータをワークメモリ101にセットす
る処理が行われなくなるため、後述するメインルーチン
のステップS1でNOと判断されて、ステップS30〜S38
の消音処理が行われるのみで、ステップS26〜S29のピ
ッチ抽出処理が行われなくなる。If, in the above Step P 6, if the peak level data has become less pitch extraction stop level value PITELEV, for the new data in step P 7 become process of setting the work memory 101 is performed, which will be described later main routine in step S 1 is judged as NO in step S 30 to S 38
Only mute processing is executed, the pitch extraction process of step S 26 to S 29 is not performed.
こうして、楽音の消音後に無駄なピッチ抽出処理が行
われることがなくなる。In this way, it is possible to prevent unnecessary pitch extraction processing from being performed after the tone is muted.
メイン処理 メインルーチン(第4図)では、ステップS1にて、
上述したような割り込み処理によってワークメモリ101
にa′、b′、t′の内容(上記a、b、tと同じで前
回記録されたということでa′、b′、t′と示す。)
が書込まれているか否かをジャッジし、何ら割り込み処
理はされていないときはNOの判断をして、後述するステ
ップS30〜S38の消音処理のフローを経由し、このステ
ップS1を繰返し実行する。Main Processing In the main routine (FIG. 4), in step S 1 ,
By the interrupt processing as described above, the work memory 101
The contents of a ', b', and t '(the same as a, b, and t are shown as a', b ', and t'because they were recorded previously).
Is judged whether or not it has been written, and if no interrupt processing has been carried out, a NO judgment is made, and this step S 1 is executed through the mute processing flow of steps S 30 to S 38 described later. Execute repeatedly.
そして、上記ステップS1でYESの判断をすれば、次の
ステップS2に進んでその内容a′、b′、t′を読出
す。次にステップS3において、上記AMP(a′)レジス
タに記憶してある同じ種類(つまり最大か最小)のピー
ク点のピーク値をCPU100内のcレジスタに読出し、今回
抽出したピーク値b′を上記AMP(a′)レジスタに設
定する。Then, if YES is determined in the step S 1 , the process proceeds to the next step S 2 and the contents a ', b', t'are read out. Next, in step S 3 , the peak value of the peak point of the same type (that is, maximum or minimum) stored in the AMP (a ′) register is read into the c register in the CPU 100, and the peak value b ′ extracted this time is read. Set in the AMP (a ') register.
さて、次にステップS4〜S6において、STEPレジスタ
の内容が夫々3、2、1であるか否かジャッジする。い
ま、最初の状態であるとしたら、STEPレジスタは0なの
で、ステップS4、S5、S6ともNOの判断がされる。そ
して、次にステップS7で、今回検知したピーク値b′
がONLEVIより大か否かジャッジする。Now, next step S 4 to S 6, the contents of the STEP register is judge whether each 3,2,1. Now, if it is the first state, since the STEP register is 0, it is judged NO in steps S 4 , S 5 , and S 6 . Then, in step S 7 , the peak value b ′ detected this time is next.
Judge whether is larger than ONLEVI.
もし、上記ピーク値b′がONLEVIより小であれば、ま
だ発音開始の処理をしないのでステップS1へもどる。
仮に、第5図(a)、第6図(a)のようにONLEVIより
大きな入力が得られたとすると、ステップS7の判断はY
ESとなり、ステップS8へ進む。If the peak value b'is smaller than ONLEVI, the tone generation start process is not performed yet, and the process returns to step S 1 .
If, FIG. 5 (a), when a large input from ONLEVI as FIG. 6 (a) is obtained, the determination in step S 7 is Y
It becomes ES, and proceeds to step S 8 .
そしてステップS8でSTEPレジスタに1をセットし、
次にステップS9でREVERSEレジスタに0をセットし、続
けてステップS10で、a′(つまり最大ピーク点直後の
ゼロクロス点のとき1、最小ピーク点直後のゼロクロス
点のとき2)の値をSIGNレジスタに入力する。Then, in step S 8 , 1 is set in the STEP register,
Next, in step S 9 , 0 is set in the REVERSE register, and in step S 10 , the value of a ′ (that is, 1 at the zero-cross point immediately after the maximum peak point and 2 at the zero-cross point immediately after the minimum peak point) is set. Input to SIGN register.
そして、ステップS11にて、t′の値をTレジスタに
セットする。その結果、a′の内容はSIGNレジスタに
(第5図(a)、第6図(a)の場合にはSIGNは1とな
る)、b′の内容はAMPレジスタに、t′の内容はTレ
ジスタにセットされたことになる。そして再びステップ
S1にもどる。Then, in step S 11 , the value of t ′ is set in the T register. As a result, the contents of a'are stored in the SIGN register (FIG. 5 (a), SIGN is 1 in the case of FIG. 6 (a)), b'is stored in the AMP register, and t'is stored. It has been set in the T register. Then, the process returns to step S 1 .
さて、以上の説明で第5図(a)、第6図(a)のゼ
ロクロス点Zero1の直後のメインルーチンの処理を完了
することになる。By the above description, the processing of the main routine immediately after the zero cross point Zero1 in FIGS. 5 (a) and 6 (a) is completed.
さて、次に、ゼロクロス点Zero2の直後のメインルー
チンでの処理を説明する。そのときは上記ステップS1
→S2→S3→S4→S5→S6のデータセット処理と発音
段階判別処理とを実行し、このステップS6にてYESの判
断がされ、次にステップS12にゆく。Now, the process in the main routine immediately after the zero-cross point Zero2 will be described. In that case, the above step S 1
→ S 2 → S 3 → S 4 → S 5 → S 6 The data set process and the sounding stage discrimination process are executed, and YES is determined in this step S 6 , and then the process proceeds to step S 12 .
いま、第5図(a)、第6図(a)のように波形が入
力時に正方向に変化したときは、SIGNレジスタは1であ
り、今回負方向のピークを経過しているからa′レジス
タは2なので、NOの判断をする。尚、もし同じ極性のピ
ーク値直後のゼロクロス点到来時には、このステップS
12でYESの判断をして何ら続けて動作せずにステップS1
へもどる。When the waveform changes in the positive direction at the time of input as shown in FIGS. 5 (a) and 6 (a), the SIGN register is 1, and since the peak in the negative direction has passed this time, a ' Since the register is 2, judge NO. If the zero-cross point is reached immediately after the peak value of the same polarity, this step S
If YES is determined in step 12 and no operation is continuously performed, step S 1
Go back.
さて、いまこのステップS12ではNOのジャッジがされ
てステップS13へゆき、STEPレジスタを2とする。(第
5図(b)、第6図(b)参照)。Well, now snow to step S 13 is the judge of step S 12 in NO, the STEP register and 2. (See FIG. 5 (b) and FIG. 6 (b)).
そしてステップS13に続けてステップS14を実行し、
前回のピーク値(AMP(SIGN))と今回のピーク値
(b′)を比較する。いま、第5図(a)のように前回
の値x0が今回の値より小(x1>x0)ならば、YESとな
り、今回の時刻t′を周期の計測開始点とすべく(第5
図(c)参照)ステップS14からステップS10、S11を
実行し、SIGNレジスタを2とすると共にt′レジスタの
内容をTレジスタへ転送する。Then, step S 14 is executed after step S 13 ,
Compare the previous peak value (AMP (SIGN)) with the current peak value (b '). Now, as shown in FIG. 5A, if the previous value x 0 is smaller than the current value (x 1 > x 0 ), the determination result is YES, and the current time t ′ should be set as the measurement start point of the cycle ( Fifth
(See FIG. 6C) Steps S 14 to S 10 and S 11 are executed to set the SIGN register to 2 and transfer the contents of the t ′ register to the T register.
逆に、前回のピーク値が今回のピーク値よりも大きけ
れば、つまり第6図(a)のようにx1<x0ならば、ス
テップS14でNOのジャッジをしステップS15にてREVERS
Eレジスタを1とする。なお、SIGNレジスタはいま前の
値1を保つことになる。従って、この場合は前のゼロク
ロス点(Zero1)が周期計測の開始点となっている(第
6図(c)参照)。REVERS Conversely, larger the previous peak value than current peak value, i.e. if x 1 <x 0 as FIG. 6 (a), in step S 15 the judgment NO at Step S 14
Set the E register to 1. The SIGN register retains the previous value of 1. Therefore, in this case, the preceding zero cross point (Zero1) is the start point of the cycle measurement (see FIG. 6 (c)).
そして、次のゼロクロス点(Zero3)の通過後、はじ
めてメインフローを実行するときは、ステップS5でYES
のジャッジがされてステップS16へ進む。今回a′は1
であり、第5図の場合は、SIGNが2、第6図の場合はSI
GNが1なので、第5図の場合にあっては、ステップS16
でNOのジャッジがされて、。ステップS15へゆきステッ
プS1へもどる。つまり、周期計測を開始し始めてから
ひと目のピーク(振幅x2)を通過したことをCPU100は
認識する。Then, after passing through the next zero cross point (Zero3), first when performing the main flow, YES in step S 5
Is judged and the process proceeds to step S 16 . This time a'is 1
And SIGN is 2 in the case of FIG. 5 and SI in the case of FIG.
Since GN is 1, in the case of FIG. 5, step S 16
And NO judgment was done. Return to step S 15 and return to step S 1 . That is, the CPU 100 recognizes that the first peak (amplitude x 2 ) has passed since the start of the period measurement.
また第6図の場合にあっては、ステップS16ではYES
の判断がされて、ステップS17へゆきREVERSEレジスタ
が1か否かジャッジする。もし1でなければNOの判断を
しステップS1へもどるが、上述したようにステップS
15の実行によってこのレジスタは1となっており、ステ
ップS17からステップS18へゆきSTEPレジスタを3とし
(第6図(b)参照)、続けてステップS19にて、t′
レジスタにある今回の割り込みで受け付けたカウンタ7
の値からTレジスタにある値つまりゼロクロス点Zero1
の時刻を減算し、PERIODレジスタにストアする。Further, in the case of FIG. 6, YES in step S 16.
Is is determined, snow REVERSE register is judge whether 1 to step S 17. If it is not 1, the determination is NO and the process returns to step S 1 , but as described above, step S
This register is set to 1 by the execution of 15. Then, the process proceeds from step S 17 to step S 18 and the STEP register is set to 3 (see FIG. 6 (b)). Then, at step S 19 , t '
Counter 7 received in the register for this interrupt
The value in the T register from the value of, that is, the zero-cross point Zero1
Subtract the time and store it in the PERIOD register.
つまり第6図(c)に示す大きさが一周期の長さとな
り、続くステップS20でt′の内容をTレジスタに転送
して新たな周期計測の開始をする。That is, the size shown in FIG. 6 (c) becomes the length of one cycle, and in the subsequent step S 20 , the content of t ′ is transferred to the T register and a new cycle measurement is started.
そしてステップS21において、上述のPERIODレジスタ
の内容をもってCPU100は周波数ROM8、音源回路9に発音
指令を出す。しがってこの時点から楽音の発生がなされ
る。In step S 21, with the contents of the above PERIOD register CPU100 frequency ROM 8, issues a sound command to the tone generator 9. Therefore, a musical sound is generated from this point.
さて、上述した第5図の場合にあっては、再び次のゼ
ロクロス点(Zero4)後のメインフローの処理で、ステ
ップS5からステップS16へジャンプする。いま、SIGN
レジスタは2なので、ステップS16ではYESの判断を
し、続けて上記同様にステップS17→S18→S19→S20
→S21の発音開始処理を実行し、今回は第5図(c)に
示すゼロクロス点Zero2からZero4までを一周期としてCP
U100は認識し、この長さに基づく周波数の楽音を発音開
始する(第5図(d)参照)。Now, in the case of FIG. 5 described above, again in the processing of the main flow after the next zero cross point (ZERO4), it jumps from step S 5 to step S 16. SIGN now
Register is 2, a determination of YES in step S 16, continues in the same manner as described above Step S 17 and → S 18 → S 19 → S 20
→ Perform sounding start processing of S 21, this time CP until Zero4 from zero-cross point Zero2 shown in FIG. 5 (c) as one cycle
The U100 recognizes and starts to produce a musical tone having a frequency based on this length (see FIG. 5 (d)).
このようにして、値の大きいピーク点の次のゼロクロ
ス点から周期計測の処理を開始し、そのピーク点と同じ
側のピーク点の次のゼロクロス点でその計測を終了する
ようにして、ローパスフィルタ3出力の波形の一周期を
抽出している。In this way, the process of periodic measurement is started from the zero cross point next to the peak point with a large value, and the measurement is finished at the zero cross point next to the peak point on the same side as that peak point. One cycle of a 3-output waveform is extracted.
そして、この発音開始処理の後、メインルーチンにお
いては、ステップS4からステップS23へ進み、リラテ
ィブオン(relative on)の処理をするのか否かジャッ
ジするようにする。即ち具体的には今回のピーク値
(b′)が前のピーク値(c)よりONLEVIIだけ大きい
か、つまり発音中に急激に抽出ピーク値が大きくなった
か否かジャッジする。After the sound generation start process, in the main routine, the process proceeds from step S 4 to step S 23 , and it is judged whether or not the relative on process is performed. That is, specifically, it is judged whether or not the current peak value (b ') is larger than the previous peak value (c) by ONLEVII, that is, whether or not the extracted peak value suddenly increases during sound generation.
通常弦を振動すれば、自然減衰を行うので、このステ
ップS23はNOの判断となるが、もしトレモロ奏法などに
よって、前の弦振動が減衰し終わらないうちに、再び弦
が操作されて、このステップS23の判断がYESとなるこ
とがある。If vibration normal strings, since the natural attenuation, this step S 23 is the determination NO, the the like if tremolo, while the previous string vibrations Finished attenuated, are operated string again, determination of step S 23 is sometimes is YES.
その場合は、ステップS23はYESのジャッジをしステ
ップS8へジャンプし、ステップS9〜ステップS11の発
音開始の準備処理を実行する。その結果、STEPレジスタ
は1となり、上述した発音開始時の動作と全く同じ動作
をそれ以降実行する。つまり、再びステップS16〜S21
の発音開始処理をその後実行して再発音開始の処理をす
ることになる。In that case, step S 23 jumps to step S 8 the judge YES, it executes the preparation process of the start of sounding of steps S 9 ~ step S 11. As a result, the STEP register becomes 1, and the operation exactly the same as the operation at the start of sounding is executed thereafter. In other words, Step S 16 to S 21 again
After that, the sound generation start process is executed to start the sound reproduction again.
さて、通常状態では上述した如くステップS23に続け
てステップS24を行って、a′の内容とSIGNレジスタの
内容の一致比較をし、一致しなければS15へ進み次のゼ
ロクロス点の割り込み処理にそなえ、一致すれば、既に
逆の特性をもったピーク(正/負のピーク)を夫々通過
してきたので、ステップS25へ進み、REVERSEレジスタ
が1か否かジャッジし、もしNOならば何ら処理をするこ
となくステップS1へもどるが、もしこのステップS25
でYESの判断がなされたならば、ステップS25からステ
ップS26へ進み新たな周期(ピッチ)を求めるべくt′
レジスタの内容からTレジスタの内容を引いて、PERIOD
レジスタにセットする。Now, in the normal state by performing the steps S 24 following the step S 23 as described above, the coincidence comparison of the contents of content and SIGN register a ', the matched unless the process proceeds to S 15 following the zero-crossing point interrupt provided to the process, if they match, so has already peak (positive / negative peaks) each pass having opposite characteristics, the process proceeds to step S 25, rEVERSE register whether to judge 1, if if NO The process returns to step S 1 without any processing, but if this step S 25
If in a determination of YES is made, a new cycle proceeds from step S 25 to step S 26 (pitch) to determine the t '
Subtract the T register contents from the register contents and
Set in register.
そして、ステップS27においてt′レジスタの内容を
Tレジスタへ転送し、続くステップS28にて求まったPE
RIODレジスタの値を基に周波数(ピッチ)制御をCPU100
は周波数ROM8、音源回路9に対して行う。Then, in step S 27 , the contents of the t ′ register are transferred to the T register, and in the subsequent step S 28 , PE
Frequency (pitch) control based on the value of the RIOD register CPU100
Is performed on the frequency ROM 8 and the tone generator circuit 9.
つまり、本実施例にあっては、弦の振動周波数の変化
を時々刻々とらえて、それに応じた周波数制御をリアル
タイムで行うようになる。That is, in the present embodiment, the change in the vibration frequency of the string is captured every moment, and the frequency control according to the change is performed in real time.
そして、ステップS28からステップS29へ進んでREVE
RSEレジスタの内容を0として次の周期計測を行う。Then, from step S 28 to step S 29 , proceed to REVE
The next cycle is measured with the contents of the RSE register set to 0.
そして、弦振動が減衰しててきて、ピーク値がOFFLEV
を下まわるようになってくると、ステップS30で現在の
STEPレジスタの値が「3」であることを判別した後、第
7図(c)に示すように、A/Dコンバータ11からラッチ1
2にラッチされる波形レベル値が、消音レベル値OFFLEV
以下となったことが検出されて(ステップS31)、それ
まで「0」だったOFレジスタに「1」をセットするとと
もに、OFTレジスタにカウンタ7のカウント値をセット
してステップS1に戻る(ステップS32〜S34)。Then, the string vibration attenuates and the peak value becomes OFFLEV.
And come so falls below, in step S 30 of the current
After determining that the value of the STEP register is “3”, the A / D converter 11 outputs the latch 1 as shown in FIG. 7 (c).
The waveform level value latched in 2 is the mute level value OFFLEV
When the following is detected (step S 31 ), “1” is set in the OF register which was “0” until then, the count value of the counter 7 is set in the OFT register, and the process returns to step S 1 . (step S 32 ~S 34).
そして、ピーク値もOFFLEVを下まわるので、入力波形
がピークとなる時でも、A/Dコンバータ11からラッチ12
にラッチされる波形レベル値がOFFLEVを越えることはな
いため、ステップS30、S31からステップS38に進むこ
とがなく、OFレジスタが「1」となった状態が維持され
る。OFFLEVを越えない状態が当該弦の開放弦音高の一波
長の長さ、例えば上述したように第6弦の場合は、12ミ
リ秒間以上続くと、CPU100は第7図(d)に示すように
ステップS35で、OFTレジスタにセットしておいたカウ
ント値とカウンタ7の現在のカウント値の差よりこのこ
とを判別し、ステップS36でSTEPレジスタとOFレジスタ
をクリアして、ステップS37でノートオフ処理(消音処
理)を行い、これまで発音していた楽音を消音すべくCP
U100は音源回路9へ指示するようになる。Since the peak value also falls below OFFLEV, even when the input waveform reaches its peak, the A / D converter 11 will
Waveform level value to be latched in that order does not exceed OFFLEV, without proceeds from step S 30, S 31 to step S 38, the state where OF register becomes "1" is maintained. If the OFF string does not exceed OFFLEV, the length of one wavelength of the open string pitch of the relevant string, for example, in the case of the sixth string as described above, if it continues for 12 milliseconds or longer, the CPU 100 will display as shown in FIG. 7 (d). In step S 35 , this is discriminated from the difference between the count value set in the OFT register and the current count value of the counter 7, and in step S 36 the STEP register and OF register are cleared, and in step S 37 CP to perform note-off processing (silence processing) to mute the musical tones that have been produced so far
U100 will give instructions to the tone generator circuit 9.
この場合、ピッチ抽出停止レベル値PITLEVは消音レベ
ル値OFFLEVより小さい値に設定されているので、第7図
(a)に示すように、ピーク値は上記12ミリ秒間の間で
OFFLEV以下でもPITLEV以上のことがあり、第7図(e)
に示すように、この12ミリ秒間の間でも引き続きステッ
プS26〜S29のピッチ抽出処理が行われ、消音までの間
でも正確な周波数で楽音が放音される。むろん、急激な
減衰があれば、上記12ミリ秒間の間でもすでにピッチ抽
出処理は行われなくなる。In this case, since the pitch extraction stop level value PITLEV is set to a value smaller than the muffling level value OFFLEV, as shown in FIG. 7 (a), the peak value is within the above 12 milliseconds.
Even if it is OFFLEV or less, it may be more than PITLEV, and Fig. 7 (e)
As shown in, subsequently the pitch extraction process of step S 26 to S 29 in between the 12 msec is performed, the tone is sounded at precise frequencies in until mute. Of course, if there is a sharp decay, the pitch extraction process will not be performed even during the above 12 ms.
もし、減衰が一時的なもので、再び波高値がOFFLEVを
越えれば、CPU100はステップS31でこのことを判別し
て、ステップS38でOFレジスタをクリアし、消音処理は
行わない。If attenuation is only temporary, it again peak value exceeds the OFFLEV, CPU 100 is to determine this in step S 31, the OF register is cleared in step S 38, the silencing processing is not performed.
本実施例によれば、仮にミュート奏法によって、急速
に波高値が減衰して割り込み信号INTa、INTbが発生しな
いとしても、ラッチ12にはクロック信号CLが常時与えら
れて、つまり第2図のに示すラッチ指令信号LがHigh
レベルを維持するので、A/Dコンバータ11の出力が、ラ
ッチ12を介してスルーでCPU100へ与えられ、この与えら
れる波高値に従って処理するので、消音の応答性がよく
なる。According to this embodiment, by temporarily mute playing, fast interrupt peak value is attenuated signal INT a, even INT b is not generated, the latch 12 is given a clock signal CL at all times, i.e. Figure 2 Latch command signal L shown in is High
Since the level is maintained, the output of the A / D converter 11 is passed through to the CPU 100 via the latch 12 and processed according to the given peak value, so that the mute response is improved.
尚、上記実施例では、波形レベルが第6弦については
12ミリ秒間OFFLEV以下なら消音するようにしたが、電子
ギターで発生する音高の周期かあるいはそれより長い時
間で消音してもよい。また、上記実施例であっては、各
ピーク点直後のゼロクロス点でCPU100が割り込み処理を
して、発音開始、周期計算、リラティブオン、消音開始
等の処理を行うようにしたが、各ピーク点検出時に直接
これらの処理を行ってもよい。その場合も全く同じ結果
を得ることができる。その他、例えばピーク点の直線の
ゼロクロス点の検出によって、上記同様の処理を行って
もよい。その他、基準となる点のとり方は種々変更でき
る。In the above embodiment, the waveform level of the sixth string is
Although the sound is muted if it is less than OFFLEV for 12 milliseconds, it may be muted at the pitch period generated by the electronic guitar or at a longer time. Further, in the above embodiment, the CPU 100 performs interrupt processing at the zero-cross point immediately after each peak point to perform processing such as sound generation start, period calculation, relative on, and mute start. You may perform these processing directly at the time of leaving. In that case, the exact same result can be obtained. In addition, the same processing as described above may be performed, for example, by detecting the zero cross point of the straight line of the peak point. In addition, the way of taking a reference point can be variously changed.
また、上記実施例では、メインフローのなかで各処理
を実行するようにしたが、割り込み処理のなかで同様の
処理を実行するようにしてもよい。Further, in the above embodiment, each process is executed in the main flow, but the same process may be executed in the interrupt process.
更に、上記実施例においては、本発明を電子ギターに
適用したものであったが、必ずしもそれに限られるもの
でなく、マイクロフォン等から入力される音声信号ある
いは電気的振動信号からピッチ抽出を行って、原音声信
号とは別の音響信号を、対応するピッチもしくは音階周
波数にて発生するシステムであれば、どのような形態の
ものであってもよい。具体的には、鍵盤を有するもの例
えば電子ピアノ、管楽器を電子化したもの、弦楽器、例
えばバイオリンや琴などを電子化したものにも同様に適
用できる。Furthermore, in the above embodiment, the present invention was applied to an electronic guitar, but the present invention is not necessarily limited thereto, and pitch extraction is performed from a voice signal or an electric vibration signal input from a microphone or the like, Any form may be used as long as it is a system that generates an acoustic signal different from the original voice signal at a corresponding pitch or scale frequency. Specifically, the present invention can be similarly applied to those having a keyboard, for example, an electronic piano, an electronic wind instrument, and a stringed instrument, for example, an electronic version of a violin or a koto.
[発明の効果] この発明は、以上詳述したように、消音処理を開始し
て出力音を急速に減衰している所定時間内でも第2の所
定値より大のレベルをもつ波形入力についてはピッチ抽
出が行われて正確な周波数で音響信号が放音されるし、
入力波形レベルの減衰が急激であれば、速やかにピッチ
抽出が打ち切られるので、消音指示後の無駄な処理をな
くし、次の新たな楽音の発音処理及びピッチ抽出処理の
開始の応答性が向上してより円滑な演奏を行うことがで
きるという効果を奏する。[Effects of the Invention] As described in detail above, the present invention can be applied to a waveform input having a level larger than the second predetermined value even within a predetermined time during which the silencing process is started and the output sound is rapidly attenuated. Pitch extraction is performed and the acoustic signal is emitted at the correct frequency.
If the attenuation of the input waveform level is abrupt, pitch extraction will be discontinued promptly, eliminating wasteful processing after the mute instruction and improving the responsiveness of the next new musical sound generation processing and the start of pitch extraction processing. As a result, a smoother performance can be achieved.
第1図は、本発明を適用した一実施例の電子楽器の入力
制御装置の全体回路構成を示す図、第2図は、第1図中
の各部に表われる波形を示すタイムチャート図、第3図
はCPUの割り込みルーチンのフローチャートを示す図、
第4図はCPUのメインルーチンのフローチャートを示す
図、第5図、第6図は発音開始時の各部の動作を示すタ
イムチャート図、第7図は、消音開始時の動作を示すタ
イムチャート図である。 1……入力端子、4……最大ピーク検出回路、5……最
小ピーク検出回路、6……ゼロクロス点検出回路、7…
…カウンタ、9……音源回路、12……ラッチ、14、15…
…フリップフロップ、100……CPU、101……ワークメモ
リ、P1〜P6……ピッチ抽出回路。FIG. 1 is a diagram showing an overall circuit configuration of an input control device for an electronic musical instrument of an embodiment to which the invention is applied, and FIG. 2 is a time chart diagram showing waveforms appearing in respective parts in FIG. Figure 3 is a diagram showing a flowchart of the CPU interrupt routine,
FIG. 4 is a view showing a flow chart of the main routine of the CPU, FIGS. 5 and 6 are time charts showing the operation of each part at the start of sound generation, and FIG. 7 is a time chart showing the operation at the start of muffling. Is. 1 ... Input terminal, 4 ... Maximum peak detection circuit, 5 ... Minimum peak detection circuit, 6 ... Zero-cross point detection circuit, 7 ...
… Counter, 9 …… Sound source circuit, 12 …… Latch, 14,15…
… Flip-flop, 100… CPU, 101… Work memory, P1 to P6… Pitch extraction circuit.
Claims (1)
定手段と、 この周波数測定手段で測定された周波数に応じた音響信
号の発生を指示する発音指示手段と、 上記入力波形信号のレベルが所定時間、第1の所定値以
下になったとき、音響信号の消音を指示する消音指示手
段と、 上記入力波形信号のレベルが上記消音のための上記第1
の所定値より小さい第2の所定値以下であるとき、上記
周波数測定手段が前記周波数の測定を行わないように制
御する測定停止手段と、 を有することを特徴とする入力波形信号制御装置。1. A frequency measuring means for measuring the frequency of an input waveform signal, a sounding instructing means for instructing generation of an acoustic signal according to the frequency measured by the frequency measuring means, and a level of the input waveform signal is predetermined. When the time becomes equal to or less than a first predetermined value, a muffling instruction means for instructing muffling of an acoustic signal, and the level of the input waveform signal is the first for muffling.
And a second predetermined value smaller than the predetermined value, the measurement means for controlling the frequency measurement means to stop the measurement of the frequency.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62050380A JP2508692B2 (en) | 1987-03-06 | 1987-03-06 | Input waveform signal controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62050380A JP2508692B2 (en) | 1987-03-06 | 1987-03-06 | Input waveform signal controller |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS63217396A JPS63217396A (en) | 1988-09-09 |
JP2508692B2 true JP2508692B2 (en) | 1996-06-19 |
Family
ID=12857268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62050380A Expired - Lifetime JP2508692B2 (en) | 1987-03-06 | 1987-03-06 | Input waveform signal controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2508692B2 (en) |
-
1987
- 1987-03-06 JP JP62050380A patent/JP2508692B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPS63217396A (en) | 1988-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5710387A (en) | Method for recognition of the start of a note in the case of percussion or plucked musical instruments | |
JP2712346B2 (en) | Frequency control device | |
JP3653854B2 (en) | Stringed electronic musical instrument | |
JP2532424B2 (en) | Waveform signal input controller | |
JP2508692B2 (en) | Input waveform signal controller | |
JP2581068B2 (en) | Waveform signal controller | |
JPH0727512Y2 (en) | Input control device for electronic musical instruments | |
JP2508044B2 (en) | Electronic musical instrument input control device | |
JP2792022B2 (en) | Electronic musical instrument input control device | |
JP2605667B2 (en) | Electronic musical instrument input control device | |
JP4198046B2 (en) | Electronic stringed instruments | |
JPH0782320B2 (en) | Music control device | |
JPH0648556Y2 (en) | Input control device for electronic musical instruments | |
JP2765578B2 (en) | Waveform signal controller | |
JPH07104666B2 (en) | Pitch extractor | |
JP2555553B2 (en) | Input waveform signal controller | |
JPH041358B2 (en) | ||
JPH0431599B2 (en) | ||
JPH083711B2 (en) | Input waveform signal controller | |
JPH0431598B2 (en) | ||
JP2759149B2 (en) | Music control device | |
JP2961675B2 (en) | Electronic musical instrument | |
JPS63141099A (en) | Input controller for electronic musical instrument | |
JPH05346782A (en) | Electronic stringed instrument | |
JPH02219095A (en) | Input controller for electronic musical instrument |