Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3298193B2 - Effect adding device - Google Patents
[go: Go Back, main page]

JP3298193B2 - Effect adding device - Google Patents

Effect adding device

Info

Publication number
JP3298193B2
JP3298193B2 JP34285392A JP34285392A JP3298193B2 JP 3298193 B2 JP3298193 B2 JP 3298193B2 JP 34285392 A JP34285392 A JP 34285392A JP 34285392 A JP34285392 A JP 34285392A JP 3298193 B2 JP3298193 B2 JP 3298193B2
Authority
JP
Japan
Prior art keywords
address
read
value
register
data
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 - Fee Related
Application number
JP34285392A
Other languages
Japanese (ja)
Other versions
JPH06186968A (en
Inventor
達也 飯島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP34285392A priority Critical patent/JP3298193B2/en
Publication of JPH06186968A publication Critical patent/JPH06186968A/en
Application granted granted Critical
Publication of JP3298193B2 publication Critical patent/JP3298193B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Reverberation, Karaoke And Other Acoustics (AREA)
  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、入力されるデジタル信
号を所定のタイミングで遅延させて出力したり、任意の
タイミングで振幅の大きな波形が入力されたときその波
形を一定時間遅延させて出力する効果付加装置に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for delaying an input digital signal at a predetermined timing and outputting the delayed signal, or when a waveform having a large amplitude is input at an arbitrary timing and delaying the waveform for a predetermined time. And an effect adding device.

【0002】[0002]

【従来の技術】従来より、効果付加装置において、その
入力音にかけるディレイ等のエフェクトを自動伴奏等の
テンポの変化等に従って変化させることは一般に行われ
てれいる。また、電子楽器等から、一定振幅以上の楽音
波形データが入力されたとき、その楽音波形データをR
AM(Random Access Memory)等に書き込んでおき、書き
込み終了後RAMから読み出し、入力タイミングとは異
なるタイミング、例えば一定時間間隔で出力するものも
知られている。
2. Description of the Related Art Conventionally, in an effect adding device, an effect such as a delay applied to an input sound is generally changed according to a change in a tempo such as an automatic accompaniment. When musical sound waveform data having a certain amplitude or more is input from an electronic musical instrument or the like, the musical sound waveform data is
It is also known that data is written in an AM (Random Access Memory) or the like, read from the RAM after the writing is completed, and output at a timing different from the input timing, for example, at fixed time intervals.

【0003】しかし、上記自動伴奏等のテンポの変化に
従って単にディレイ等のエフェクトを変化させるもの
は、変化したテンポがその後一定であれば、テンポの変
化に従って一旦変化したディレイタイムもその後一定で
ある。このため、自動伴奏のタイミングと一致して入力
された楽音のディレイ音は自動伴奏に同期したディレイ
タイムをもって発音されるが、自動伴奏のタイミングと
一致しないタイミングで入力された楽音のディレイ音
も、決められたディレイタイム分遅らせたままで発音さ
れてしまう。このため、自動伴奏に同期せず演奏効果を
高める目的で付加したはずのディレイ音が、かえって演
奏の雰囲気を損ねて全体として演奏に悪影響を与えてし
まう。
[0003] However, when the effect such as a delay is simply changed in accordance with a change in tempo such as the above-mentioned automatic accompaniment, if the changed tempo is constant thereafter, the delay time once changed in accordance with the change in tempo is also constant thereafter. For this reason, the delay sound of a musical tone input at the same timing as the automatic accompaniment is sounded with a delay time synchronized with the automatic accompaniment. It is sounded with a delay of the determined delay time. For this reason, the delay sound which should be added for the purpose of enhancing the performance effect without synchronizing with the automatic accompaniment actually deteriorates the performance atmosphere and adversely affects the performance as a whole.

【0004】また、書き込み終了後に楽音波形データを
読み出して入力時と異なるタイミングで出力するもの
は、リアルタイムでないため、まるで面白味に欠けると
いう点で不満が残るものである。
[0004] Further, those which read out the musical tone waveform data after completion of the writing and output it at a timing different from that at the time of inputting are not real-time, so that they remain unsatisfactory in that they lack interest.

【0005】これらの問題を解決すものとして、任意の
タイミングで入力された楽音、音声等のデジタル入力デ
ータを所定の間隔または伴奏メロディの拍等に合わせた
一定タイミングで、リアルタイムでディレイ出力できる
効果付加装置が提案されている。この提案では、ディレ
イ出力する信号の検出にエンベロープ値を用いている。
そして、エンベロープ値が所定以上になったときの信号
記憶アドレスをスタートアドレス、エンベロープ値が所
定値以下になったときの信号記憶アドレスをエンドアド
レスとする信号をディレイ出力するようにいている。
[0005] To solve these problems, there is an effect that digital input data such as musical sounds and voices input at an arbitrary timing can be delayed and output in real time at a predetermined interval or at a constant timing corresponding to the beat of an accompaniment melody. Additional devices have been proposed. In this proposal, an envelope value is used to detect a signal to be output as a delay.
Then, a signal having a signal storage address when the envelope value is equal to or more than a predetermined value as a start address and a signal having an end address using the signal storage address when the envelope value is equal to or less than a predetermined value is output with delay.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、上記信
号のスタートアドレスとエンドアドレスを記憶してリア
ルタイムでディレイをかけるものは、出力タイミングで
は、出力信号が0の状態からいきなりスタートアドレス
の信号が出力されるため出力信号が滑らかに立ち上がら
ずにノイズの発生する可能性があり、同様に、出力信号
が鳴り終わるエンドアドレス付近でも、出力信号がいき
なり0の状態になるため、やはりノイズの原因になる可
能性があって問題があると考えられる。
However, in the case of storing the start address and end address of the signal and delaying the signal in real time, the signal of the start address is output immediately from the state where the output signal is 0 at the output timing. Therefore, the output signal may not rise smoothly and noise may be generated. Similarly, even near the end address where the output signal stops sounding, the output signal suddenly becomes 0, which may also cause noise. It is considered that there is a problem.

【0007】本発明の課題は、上記の実情に鑑み、任意
のタイミングで入力された楽音、音声等のディジタル入
力データを所定の間隔又は伴奏メロディの拍等に合わせ
た一定タイミングでリアルタイムでディレイ出力できる
ばかりでなく、出力信号の立ち上がり・立ち下がりにお
いて滑らかに信号が変化するようなリアルタイムのディ
レイ出力ができる効果付加装置を提供することである。
SUMMARY OF THE INVENTION In view of the above circumstances, it is an object of the present invention to provide real-time delay output of digital input data such as musical sound and voice input at an arbitrary timing at a predetermined interval or at a constant timing in accordance with the beat of an accompaniment melody. It is an object of the present invention to provide an effect adding device capable of real-time delay output in which a signal changes smoothly at the rise and fall of an output signal.

【0008】[0008]

【課題を解決するための手段】本発明の手段は次の通り
である。先ず、本発明は、一定周期毎にアドレスを歩進
することにより、入力される信号を記憶する信号記憶手
段を有する。同手段は、例えば、RAM(Random Acce
ss Memory)等からなる。
The means of the present invention are as follows. First, according to the present invention , the address is incremented at regular intervals.
Thus, a signal storage means for storing an input signal is provided. The means is, for example, a RAM (Random Acce
ss Memory) and the like.

【0009】次に、本発明は、上記入力される信号のエ
ンベロープ値が所定値に増加していることを検出する第
1の検出手段と、上記入力される信号のエンベロープ値
上記所定値から減少していることを検出する第2の検
出手段とを有する。両手段は共に、例えば、CPU(Ce
ntral Processing Unit)、レジスタ等からなる。
Next, a first aspect of the present invention is a first detecting means for detecting that the envelope value of the input signal has increased to a predetermined value, and wherein the envelope value of the input signal is calculated from the predetermined value. Second detecting means for detecting the decrease . Both means are, for example, CPU (Ce
ntral Processing Unit), registers, etc.

【0010】さらに、本発明は、第1の検出手段により
上記入力されるエンロープ値が上記所定値に増加して
いることが検出されたとき上記信号の記憶されている信
号記憶手段の先頭アドレスを記憶する第1のアドレス記
憶手段と、第2の検出手段により上記入力されるエンベ
ロープ値が上記所定値から減少していることが検出され
たとき上記信号の記憶されている信号記憶手段の終了ア
ドレスを記憶する第2のアドレス記憶手段とを有する。
両手段は共に、例えば、DSP(Digital Signal Pro
cessor)内に設けられたレジスタ等からなる。
Furthermore, the present invention provides ene base rope values the input by the first detecting means is increased to the predetermined value
Envelope value the input decreases from the predetermined value and the first address storage unit that stores a start address of the signal storage means stored in said signal when it is detected that there, by the second detecting means it has has a second address storage means for storing an end address of the signal storage means stored in said signal when it is detected.
Both means are, for example, DSP (Digital Signal Pro)
cess o r) consisting of provided the register or the like in the.

【0011】そして、本発明は、 第1のアドレス記憶
手段に記憶されている先頭アドレスから所定アドレス前
の立ち上げ開始アドレスを記憶する第3のアドレス記憶
手段を有する。同手段は、例えば、DSP内に設けられ
たレジスタ等からなる。
The present invention provides a first address storage device.
A predetermined address before the start address stored in the means
Address storage for storing the start address of the memory
Having means. The means includes , for example, a register provided in the DSP.

【0012】さらにまた、本発明は、前記一定周期毎に
計数を行い、拍タイミングを検出する計数手段を有す
る。同手段は、例えば、クロックカウンタ等からなる。
次に、本発明は、第1の検出手段により上記入力される
信号のエンベロープ値が所定値に増加していることを検
出した後でかつ上記計数手段が拍タイミングの検出より
前記所定アドレスを歩進する期間前から、信号記憶手段
の前記第3のアドレス記憶手段に記憶された立ち上げ開
始アドレスから第2のアドレス記憶手段に記憶された終
了アドレスから所定アドレス後の立ち下げ終了アドレス
まで、上記信号を順次読み出す読出手段を有する。同手
段は、例えば、CPU等からなる。
Still further, the present invention provides the method of
It has counting means for performing counting and detecting beat timing . The means comprises, for example, a clock counter or the like.
Next, in the present invention, the above-mentioned input is made by the first detecting means.
Check that the signal envelope value has increased to the specified value.
And after the counting means detects the beat timing
From before the period in which the predetermined address is incremented, from the start-up address stored in the third address storage means of the signal storage means to the end stored in the second address storage means.
Reading means for sequentially reading the signals from an end address to a fall end address after a predetermined address . The means comprises, for example, a CPU or the like.

【0013】最後に、本発明は、読出手段において、第
3のアドレス記憶手段に記憶された立ち上げ開始アドレ
スから第1のアドレス記憶手段に記憶された先頭アドレ
スまでを読み出す際、立ち上がりのエンベロープを付加
する第1のエンベロープ手段と、 読出手段において、
第2のアドレス記憶手段に記憶された終了アドレスから
立ち上げ終了アドレスまでを読み出す際、立ち下がりの
エンベロープを付加する第2のエンベロープ手段とを有
する。両手段は共に、例えば、DSP等からなる。
Finally, according to the present invention, when the read means reads from the start address stored in the third address storage means to the head address stored in the first address storage means, the rising envelope is read. In the first envelope means to be added and the reading means,
From the end address stored in the second address storage means
A second envelope means for adding a falling envelope when reading up to the rising end address . Both means consist of, for example, a DSP or the like.

【0014】[0014]

【作用】本発明の作用は次の通りである。信号記憶手段
は、一定周期毎にアドレスを歩進することにより、入力
される信号を記憶する。第1の検出手段は、上記入力さ
れる信号のエンベロープ値が所定値に増加していること
を検出する。第2の検出手段は、上記入力される信号の
エンベロープ値が上記所定値から減少していることを検
出する。第1のアドレス記憶手段は、第1の検出手段に
より上記入力されるエンベロープ値が上記所定値に増加
していることが検出されたとき上記信号の記憶されてい
る信号記憶手段の先頭アドレスを記憶する。第2のアド
レス記憶手段は、第2の検出手段により上記入力される
エンベロープ値が上記所定値から減少していることが検
出されたとき上記信号の記憶されている信号記憶手段の
終了アドレスを記憶する。第3のアドレス記憶手段は、
第1のアドレス記憶手段に記憶されている先頭アドレス
から所定アドレス前の立ち上げ開始アドレスを記憶す
る。計数手段は、上記一定周期毎に計数を行い、拍タイ
ミングを検出する。読出手段は、第1の検出手段により
上記入力される信号のエンベロープ値が所定値に増加し
ていることを検出した後でかつ計数手段が拍タイミング
の検出より上記所定アドレスを歩進する期間前から、
号記憶手段の第3のアドレス記憶手段に記憶された立ち
上げ開始アドレスから第2のアドレス記憶手段に記憶さ
れた終了アドレスから所定アドレス後の立ち下げ終了ア
ドレスまで、上記信号を順次読み出す。第1のエンベロ
ープ手段は、読出手段において、第3のアドレス記憶手
段に記憶された立ち上げ開始アドレスから第1のアドレ
ス記憶手段に記憶された先頭アドレスまでを読み出す
際、立ち上がりのエンベロープを付加する。第2のエン
ベロープ手段は、読出手段において第2のアドレス記憶
手段に記憶された終了アドレスから上記上げ終了アドレ
までを読み出す際、立ち下がりのエンベロープを付加
する。
The operation of the present invention is as follows. The signal storage means stores the input signal by incrementing the address at regular intervals . The first detecting means detects that the envelope value of the input signal has increased to a predetermined value . The second detecting means detects that the envelope value of the input signal has decreased from the predetermined value . The first address storage means increases the envelope value input by the first detection means to the predetermined value.
When it is detected that the signal has been read, the head address of the signal storage means in which the signal is stored is stored. The second address storage means stores an end address of the signal storage means in which the signal is stored when the second detection means detects that the input envelope value has decreased from the predetermined value. I do. The third address storage means includes:
Start address stored in the first address storage means
Stores the start address before the specified address from
You. The counting means performs counting at the above-mentioned fixed period, and
Ming is detected. The reading means is provided by the first detecting means.
The envelope value of the input signal increases to a predetermined value.
Count is detected and the counting means
From the start-up start address stored in the third address storage means of the signal storage means from the start of the period before the predetermined address is incremented from the detection of the first address.
The above signals are sequentially read out from the input end address to the falling end address after a predetermined address . The first envelope means adds a rising envelope when the reading means reads from the start address stored in the third address storage means to the start address stored in the first address storage means. The second envelope means reads from the end address stored in the second address storage means the read end address by the read end means.
When reading until the vinegar, adding the envelope of falling.

【0015】[0015]

【実施例】以下、図面を参照しながら本発明の実施例に
つき詳細に説明する。図1は、本発明の一実施例に係わ
る効果付加装置内蔵の電子鍵盤楽器の全体構成図であ
る。
Embodiments of the present invention will be described below in detail with reference to the drawings. FIG. 1 is an overall configuration diagram of an electronic keyboard instrument incorporating an effect adding device according to an embodiment of the present invention.

【0016】同図において、鍵盤101は、演奏用操作
部であり、ユーザが押鍵を行うことによってメロディを
演奏することができる。CPU102は、鍵盤101の
押鍵状態を取り込み、各押鍵動作に基づいて音源103
に対してメロディ音の発音を指示するためのディジタル
音源データを生成し、別に生成したエンベロープデータ
と共に音源103に出力する。
In FIG. 1, a keyboard 101 is a performance operation unit, and a user can play a melody by pressing a key. The CPU 102 captures the key depression state of the keyboard 101 and generates a sound source 103 based on each key depression operation.
, And generates digital sound source data for instructing the melody sound to be generated, and outputs the generated digital sound source data to the sound source 103 together with the separately generated envelope data.

【0017】この音源データは、発音チャネル、発音フ
ラグ、波形スタートアドレスと波形エンドアドレスと波
形ループアドレスとからなる波形データ、及び周波数デ
ータで構成される。上記発音チャネルは、音源103に
おいて複数の楽音を並列して処理可能とするための時分
割処理のタイミングを指示する。発音フラグは、楽音の
発音か消音かを指示する。波形スタートアドレス及び波
形エンドアドレスは、音源103が波形メモリ104か
ら波形データを読み出すための先頭アドレスと最終アド
レスを指示する。波形ループアドレスは、音源103が
波形メモリ104から一定のアドレス範囲の波形データ
を繰り返し読み出すための繰り返しアドレスを指示す
る。これにより、楽音を長時間発音させることが可能と
なる。そして、周波数データは、音源103が波形メモ
リ104から波形データを読み出すときの歩進幅を指示
する。これにより発音される楽音の音高が確定する。
The sound source data includes a sounding channel, a sounding flag, waveform data including a waveform start address, a waveform end address, and a waveform loop address, and frequency data. The tone generation channel indicates the timing of time division processing for enabling the tone generator 103 to process a plurality of musical tones in parallel. The pronunciation flag indicates whether to sound or mute a musical tone. The waveform start address and the waveform end address indicate a start address and an end address for the sound source 103 to read waveform data from the waveform memory 104. The waveform loop address indicates a repetition address for the sound source 103 to repeatedly read waveform data in a certain address range from the waveform memory 104. This makes it possible to produce a musical tone for a long time. The frequency data indicates a step width when the sound source 103 reads the waveform data from the waveform memory 104. Thereby, the pitch of the musical tone to be generated is determined.

【0018】音源103は、音源データに基づいて波形
メモリ104から楽音波形データを読み出し、そのデー
タにエンベロープデータに基づくエンベロープ特性を付
加して楽音データを生成し、エフェクト付加処理を行う
DSP105に出力する。
The tone generator 103 reads out the tone waveform data from the waveform memory 104 based on the tone generator data, adds the envelope characteristics based on the envelope data to the data, generates tone data, and outputs the tone data to the DSP 105 which performs an effect adding process. .

【0019】DSP105は、音源103から入力され
る各楽音データの1サイクル毎の処理を実行する。この
とき、DSP105は、入力された楽音データ(以下、
入力された楽音データを入力データと言う)を入力デー
タメモリ115に一時的に書き込み、その書き込んだ楽
音データ(以下、メモリに書き込まれた入力データを楽
音データと言う)を、後述する一定の読み出し間隔時間
に基づいて読み出してD/Aコンバータ107に出力す
る。
The DSP 105 performs a process for each cycle of each tone data input from the sound source 103. At this time, the DSP 105 receives the input musical sound data (hereinafter referred to as
The input tone data is referred to as input data, and the input tone data is temporarily written into the input data memory 115, and the written tone data (hereinafter, the input data written to the memory is referred to as tone data) is read out in a certain manner described later. The data is read out based on the interval time and output to the D / A converter 107.

【0020】なお、DSP105におけるディジタル入
力データの処理は、上述した押鍵に基づいて音源103
において生成された入力データのみではなく、マイクロ
ホンを具えたアナログ入力回路113から入力され、A
/Dコンバータ114でディジタル変換されて入力され
るディジタル楽音信号(又はディジタル音声信号)に対
しても同様に処理される。
The processing of digital input data in the DSP 105 is based on the above-mentioned key depression.
Is input from the analog input circuit 113 having a microphone,
The same applies to digital tone signals (or digital audio signals) that are digitally converted by the / D converter 114 and input.

【0021】これにより、鍵盤101及びアナログ入力
回路113から入力される2系統の入力データがDSP
105でエフェクト処理、例えばディレイ処理されて、
D/A変換器107でアナログ楽音信号に変換された
後、アンプ108を介してスピーカ109から放音され
る。
As a result, two systems of input data input from the keyboard 101 and the analog input circuit 113
At 105, effect processing, for example, delay processing,
After being converted into an analog tone signal by the D / A converter 107, the signal is emitted from the speaker 109 via the amplifier 108.

【0022】続いて、図2に、上記DSP105が有す
る内部レジスタを示す。同図に示す現在書込アドレスレ
ジスタ301は、入力データメモリ115の入力データ
書き込みアドレスを記憶し、そのアドレスは1サイクル
毎にインクリメントされる。
FIG. 2 shows the internal registers of the DSP 105. The current write address register 301 shown in the figure stores the input data write address of the input data memory 115, and the address is incremented every cycle.

【0023】前回エンベロープ値レジスタ310は、前
回の入力データの振幅が所定値以上のとき「1」を記憶
し、所定値未満のとき「0」を記憶する。現在エンベロ
ープ値レジスタ302は、今回の入力データの振幅が所
定値以上のとき「1」を記憶し、所定値未満のとき
「0」を記憶する。
The previous envelope value register 310 stores "1" when the amplitude of the previous input data is equal to or larger than a predetermined value, and stores "0" when the amplitude is smaller than the predetermined value. The current envelope value register 302 stores “1” when the amplitude of the current input data is equal to or larger than a predetermined value, and stores “0” when the amplitude of the input data is smaller than the predetermined value.

【0024】次回読出し先頭アドレスレジスタ303
は、前回エンベロープ値レジスタ310の値が「0」で
且つ現在エンベロープ値レジスタ302の値が「1」の
とき、すなわち楽音波形が立ち上がったとき、現在書込
アドレスレジスタ301の入力データ書き込みアドレス
を記憶する。
Next read start address register 303
When the value of the previous envelope value register 310 is “0” and the value of the current envelope value register 302 is “1”, that is, when the tone waveform rises, the input data write address of the current write address register 301 is stored. I do.

【0025】次回読出し終了アドレスレジスタ304
は、前回エンベロープ値レジスタ310の値が「1」で
且つ現在エンベロープ値レジスタ302の値が「0」の
とき、すなわち入力データの波形が立ち下がったとき、
現在書込アドレスレジスタ301の入力データ書き込み
アドレスの1つ前のアドレスを記憶する。
Next read end address register 304
When the value of the previous envelope value register 310 is “1” and the value of the current envelope value register 302 is “0”, that is, when the waveform of the input data falls,
The address immediately before the input data write address of the current write address register 301 is stored.

【0026】読出し間隔レジスタ311は、予め設定さ
れた読出し間隔時間データを記憶する。読出し間隔カウ
ンタ305は、減算カウンタであり、読出し間隔レジス
タ311に設定された読出し間隔時間の経過を計測す
る。
The read interval register 311 stores read interval time data set in advance. The read interval counter 305 is a subtraction counter, and measures the elapse of the read interval time set in the read interval register 311.

【0027】現在読出アドレスレジスタ306は、次回
読出し先頭アドレスレジスタ303から転送されるアド
レスを記憶し、そのアドレスはデータ読み出し毎にイン
クリメントされる。
The current read address register 306 stores an address transferred from the next read start address register 303, and the address is incremented each time data is read.

【0028】読出終了アドレスレジスタ307は、次回
読出し終了アドレスレジスタ304から転送されるアド
レスを記憶する。入力有FLAGレジスタ308は、フ
ラグを記憶するレジスタであり、データ読み出しタイミ
ングで、読み出すべきデータが有るときは「1」を記憶
し、無いとき、又はデータ読み出しが開始されたときは
「0」を記憶する。
The read end address register 307 stores the address transferred from the next read end address register 304. The input FLAG register 308 is a register that stores a flag, and stores “1” when there is data to be read at the data read timing, and stores “0” when there is no data to be read or when data read is started. Remember.

【0029】読出中FLAGレジスタ309は、これも
フラグレジスタであり、現在読出アドレスレジスタ30
6に記憶されているアドレスから読出終了アドレスレジ
スタ307に記憶されているアドレスまでデータ読み出
し行われる間「1」を記憶し、他のときは「0」を記憶
する。
The FLAG register 309 during reading is also a flag register, and the current reading address register 30
"1" is stored while data is read from the address stored in No. 6 to the address stored in the read end address register 307; otherwise, "0" is stored.

【0030】立ち上がりFLAGレジスタ312は、読
出し間隔カウンタ305が「0」になる前、即ち楽音デ
ータの読み出しタイミングになる前の、数サンプル分の
期間、「1」を記憶する。この立ち上がりFLAGレジ
スタ312が記憶する内容、即ちフラグが、「1」であ
る期間、DSP105内部では、出力が徐々に立ち上が
るように楽音データにエンベロープがかけられる。
The rising FLAG register 312 stores "1" for a period of several samples before the reading interval counter 305 becomes "0", that is, before the timing for reading the tone data. During the period in which the content stored in the rising FLAG register 312, that is, the flag is “1”, in the DSP 105, the tone data is enveloped so that the output gradually rises.

【0031】立下がりFLAGレジスタ313は、現在
読出しアドレスレジスタ306のアドレスが、読出し終
了アドレスレジスタ307のアドレスに一致した後、数
サンプル分の期間、「1」を記憶する。このフラグが
「1」である期間、DSP105内部では、出力が徐々
に立ち下がるように楽音データにエンベロープがかけら
れる。
The falling FLAG register 313 stores "1" for a period of several samples after the address of the current read address register 306 matches the address of the read end address register 307. While this flag is “1”, the tone data is enveloped in the DSP 105 so that the output gradually falls.

【0032】立下がりカウンタ314は、上記の立下が
りFLAGレジスタ313のフラグが「1」であるとき
に、出力が完全に「0」(無音)になるまでのサンプル
数を計数するカウンタである。
The falling counter 314 is a counter for counting the number of samples until the output completely becomes "0" (silence) when the flag of the falling FLAG register 313 is "1".

【0033】LFOカウンタ312は、読出し間隔レジ
スタ311に設定される読出し間隔の変更を行う周期を
計数する。このLFOカウンタ312の値は、DSPが
1処理行う毎にデクリメントされる。
The LFO counter 312 counts the period for changing the read interval set in the read interval register 311. The value of the LFO counter 312 is decremented each time the DSP performs one process.

【0034】読出し間隔MAX値レジスタ313′は、
読出し間隔の最大値を記憶する。読出し間隔レジスタ3
11の値が、読出し間隔MAX値レジスタ313′の値
に達すると、後述するLFO増減FLAGレジスタ31
5′の値が変更され、以降、読出し間隔レジスタ311
の値が順次減少される。
The read interval MAX value register 313 '
The maximum value of the read interval is stored. Read interval register 3
11 reaches the value of the read interval MAX value register 313 ', the LFO increase / decrease FLAG register 31 described later.
5 'is changed, and thereafter, the read interval register 311
Are sequentially reduced.

【0035】読出し間隔MIN値レジスタ314′は、
読出し間隔の最小値を記憶する。読出し間隔レジスタ3
11の値が、読出し間隔MIN値レジスタ314′の値
に達すると、LFO増減FLAGレジスタ315′の値
が変更され、以降、読出し間隔レジスタ311の値を順
次増加される。
The read interval MIN value register 314 '
The minimum value of the read interval is stored. Read interval register 3
When the value of 11 reaches the value of the read interval MIN value register 314 ', the value of the LFO increase / decrease FLAG register 315' is changed, and thereafter, the value of the read interval register 311 is sequentially increased.

【0036】LFO増減FLAG315′は、読出し間
隔レジスタ311の値を増加させるときは「1」を記憶
し、読出し間隔レジスタ311の値を減少させるときは
「0」を記憶する。
The LFO increase / decrease FLAG 315 'stores "1" when increasing the value of the read interval register 311 and stores "0" when decreasing the value of the read interval register 311.

【0037】LFO設定値レジスタ316′は、読出し
間隔レジスタ311の値の変更を行う周期を設定してお
くレジスタであり、LFOカウンタ312′の値が
「0」になったとき、LFO設定値レジスタ316′の
値がLFOカウンタ312′に再セットされる。
The LFO set value register 316 'is a register for setting a cycle for changing the value of the read interval register 311. When the value of the LFO counter 312' becomes "0", the LFO set value register 316 'is set. The value of 316 'is reset to the LFO counter 312'.

【0038】次に、図3に、DSP105が上述した各
内部レジスタを用いて行う動作の概略を模式的に示す。
尚この例では、8処理サイクルを一定間隔時間として設
定している。そして、その一定間隔時間の計測のスター
トを時刻T0で示し、その一定間隔時間の経過毎の時刻
をT1、T2、・・・で示す。
Next, FIG. 3 schematically shows the outline of the operation performed by the DSP 105 using each of the above-described internal registers.
In this example, eight processing cycles are set as the fixed interval time. The start of the measurement of the fixed interval time is indicated by time T0, and the times at which the fixed interval time elapses are indicated by T1, T2,.

【0039】同図の(a) は入力データメモリ115に書
き込まれた入力データ(楽音データ)、(b) はその書き
込みアドレス、(c) は現在エンベロープ値レジスタ30
2の値(“1”又は“0”)、(d) は読出中FLAGレ
ジスタ309のオン/オフ(“1”/“0”)、(e) は
読み出された出力データ(楽音データ)及びその楽音デ
ータに加えられる立上がりエンベロープと立下がりエン
ベロープ、(f) はその読み出しアドレス、(g) は立上が
りFLAGレジスタ312のオン/オフ(“1”/
“0”)、(h) は立下がりFLAGレジスタ313のオ
ン/オフ(“1”/“0”)、(i) は立下がりカウンタ
314のカウント値、(j) は読出し間隔カウンタ305
のカウント値、そして(k) は入力有FLAG309のオ
ン/オフを、それぞれ表している。
9A shows the input data (tone data) written in the input data memory 115, FIG. 9B shows the write address thereof, and FIG. 9C shows the current envelope value register 30.
2 (“1” or “0”), (d) is ON / OFF (“1” / “0”) of the FLAG register 309 during reading, and (e) is read output data (tone data). And the rising and falling envelopes added to the tone data, (f) is the read address thereof, and (g) is the on / off of the rising FLAG register 312 ("1" /
“(0)”, (h) is the on / off (“1” / “0”) of the falling FLAG register 313, (i) is the count value of the falling counter 314, and (j) is the read interval counter 305.
And (k) indicate ON / OFF of the input FLAG 309.

【0040】同図において、先ず、一定時間すなわち1
0処理サイクル時間の計測が時刻T0で開始されると共
に、DSP105に入力されるディジタル入力データ
が、入力データメモリ115のアドレス「0」から、処
理サイクル毎に順次書き込まれる(同図(a) 参照)。
Referring to FIG.
The measurement of the 0 processing cycle time starts at time T0, and the digital input data input to the DSP 105 is sequentially written from the address “0” of the input data memory 115 for each processing cycle (see FIG. 3A). ).

【0041】そして、4処理サイクル目には、現在書込
アドレスレジスタ301の値である書き込みアドレスが
「3」となり、一定時間である10処理サイクルを減算
計測する読出し間隔カウンタ305の値が「7」とな
る。このとき、入力データのエンベロープ値は一定値未
満すなわち「0」である(図3(a),(j) 参照)。
In the fourth processing cycle, the write address, which is the value of the current write address register 301, becomes "3", and the value of the read interval counter 305, which subtracts and measures 10 processing cycles, which is a fixed time, becomes "7". ". At this time, the envelope value of the input data is less than a certain value, that is, “0” (see FIGS. 3A and 3J).

【0042】そして、次の処理サイクルで、アドレス
「4」に、入力データ31のように一定以上の振幅値で
波形データが入力されると(同図(a) 参照)、その波形
立ち上がりが検出され、その検出された波形立ち上がり
に同期して現在エンベロープ値レジスタ302の値が
「1」にセットされると共に(同図(c) 参照)、入力有
FLAG308が「1」にセットされ(同図(k) 参
照)、そしてさらに、次回読出し先頭アドレスレジスタ
303に、波形立ち上がりのアドレス「4」が読出先頭
アドレスとしてセットされる。
Then, in the next processing cycle, when the waveform data is inputted to the address "4" with an amplitude value exceeding a certain value like the input data 31 (see FIG. 7A), the rising of the waveform is detected. The value of the current envelope value register 302 is set to "1" in synchronization with the detected rising edge of the waveform (see FIG. 3C), and the input FLAG 308 is set to "1" (see FIG. 4C). (See (k)), and the address “4” at the rising edge of the waveform is set in the next read start address register 303 as the read start address.

【0043】引き続き、エンベロープ値の一定以上の入
力データがアドレス「5」、「6」と順次書き込まれ、
現在エンベロープ値レジスタ302の値は「1」となる
(同図(a),(b),(c) 参照)。
Subsequently, input data having an envelope value equal to or greater than a certain value is sequentially written to addresses "5" and "6",
The value of the current envelope value register 302 is "1" (see FIGS. 3A, 3B, and 3C).

【0044】次の処理サイクルで、アドレス「7」の入
力データのエンベロープ値が一定値未満となって波形の
立ち下がりが検出されると(同図(b) 参照)、その検出
された波形立ち下がりに同期して現在エンベロープ値レ
ジスタ302の値が「0」にセットされると共に(同図
(c) 参照)、波形立ち下がり直前のアドレス「6」が読
出終了アドレスとして、次回読出し終了アドレスレジス
タ304にセットされる。
In the next processing cycle, when the envelope value of the input data at address "7" becomes less than a predetermined value and a falling edge of the waveform is detected (see FIG. 3B), the detected waveform rising edge is detected. The value of the current envelope value register 302 is set to “0” in synchronization with the fall (see FIG.
(See (c)), the address “6” immediately before the falling edge of the waveform is set in the next read end address register 304 as the read end address.

【0045】やがて、一定間隔時間の経過時刻T1の2
処理サイクル前の時刻(読出し間隔カウンタ305の値
が「2」)になると、上記入力有FLAG308が
「1」であることにより読出中FLAGレジスタ309
が「1」にセットされ、入力有FLAG308が「0」
にリセットされる(図3(d),(k) 参照)。また、これと
共に、次回読出し先頭アドレスレジスタ303のアドレ
ス「4」から2アドレス減算されたアドレス、即ち2つ
手前のアドレス「2」が実際の読出先頭アドレスとして
現在読出しアドレスレジスタ306にセットされ(同図
(f) 参照)、また、次回読出し終了アドレスレジスタ3
04のアドレスが読出終了アドレスレジスタ307に転
送される。そして、その読出先頭アドレスから読出終了
アドレスまで、入力データメモリ115に書き込まれて
いた楽音波形データ31が出力データとして読み出され
る。
Eventually, the time T1 of the lapse of the fixed interval time T2
When the time before the processing cycle is reached (the value of the read interval counter 305 is “2”), the input FLAG 308 is “1” and the reading FLAG register 309 is set.
Is set to “1” and the input FLAG 308 is set to “0”
(See FIGS. 3 (d) and 3 (k)). At the same time, an address obtained by subtracting two addresses from the address “4” of the next read head address register 303, that is, the address “2” two immediately before is set in the current read address register 306 as the actual read head address (see FIG. Figure
(See (f)), and the next read end address register 3
04 is transferred to the read end address register 307. Then, from the read start address to the read end address, the tone waveform data 31 written in the input data memory 115 is read as output data.

【0046】この読み出される楽音波形データには、読
み出し開始から2処理分の期間では立上がりフラグが
「1」であることにより立上がりエンベロープが付加さ
れる。また、読出終了アドレスから2処理分の期間、立
下がりフラグが「1」であることにより、さらに2アド
レスの楽音波形データが読み出され、立下がりエンベロ
ープが付加される(図3(a),(b),(e),(f) 参照)。
A rising envelope is added to the read musical tone waveform data because the rising flag is "1" for a period of two processes from the start of reading. Further, since the falling flag is "1" for a period of two processes from the reading end address, the musical tone waveform data of two addresses is further read, and a falling envelope is added (FIG. 3A, (See (b), (e) and (f)).

【0047】同図(a) に示す入力データ32の場合も、
波形立ち上がりアドレスが「F」、したがって、読み出
しアドレスが「D」となり、波形立ち下がりアドレスが
「11」、したがって、終了アドレスが「12」となる
点が異なり、他の処理は同様である。
In the case of the input data 32 shown in FIG.
The difference is that the waveform rising address is "F", therefore, the read address is "D", the waveform falling address is "11", and thus the end address is "12", and the other processing is the same.

【0048】なお、上記において、一定時間の経過内、
例えば時刻T2とT3の間において、入力データの立ち
上がりが無い場合は、次の読み出しタイミング時刻にお
ける楽音データの読み出しはなされない。次に、上述し
たように処理を行うDSP105の処理動作を図4乃至
図6のフローチャートを用いてさらに説明する。
In the above, within a certain period of time,
For example, if there is no rising of the input data between times T2 and T3, the tone data is not read at the next read timing. Next, the processing operation of the DSP 105 that performs the above-described processing will be further described with reference to the flowcharts of FIGS.

【0049】なお、この処理では、電源がオンされる
と、読出間隔レジスタ311には所定の読出し間隔時間
データ(この例では「9」)が設定され、その読出し間
隔時間データ「9」が読出間隔カウンタ305に転送さ
れてセットされた後、その他のレジスタには「0」が設
定されて各レジスタが初期化される。そして、CPU1
02からの制御信号に基づいて、一定周期で以下に説明
する処理が行われる。
In this processing, when the power is turned on, predetermined read interval time data (“9” in this example) is set in the read interval register 311, and the read interval time data “9” is read. After being transferred to the interval counter 305 and set, "0" is set in the other registers, and each register is initialized. And CPU1
On the basis of the control signal from 02, the processing described below is performed at a constant cycle.

【0050】まず、DSP105は、音源103から出
力された楽音データを入力データとして取り込む(ステ
ップ401)。続いて、現在書込アドレスレジスタ30
1を「1」インクリメントする(ステップ402)。こ
れにより、上記取り込んだ入力データ(以下、音源10
3又はアナログ入力回路113から直接取り込んだもの
を入力データと言い、それを入力データメモリ115に
書き込んだ以後のものを楽音データと言う)の書き込み
アドレスが設定される。
First, the DSP 105 takes in tone data output from the sound source 103 as input data (step 401). Subsequently, the current write address register 30
1 is incremented by "1" (step 402). Thereby, the acquired input data (hereinafter referred to as the sound source 10
3 or the data directly taken from the analog input circuit 113 is referred to as input data, and the data after the data is written to the input data memory 115 is referred to as musical sound data).

【0051】次に、入力データメモリ115の現在書込
アドレスレジスタ301に設定されたアドレスに、上記
取り込んだ入力データを楽音データとして書き込む(ス
テップ403)。これにより、例えば図3(a),(b) に示
すように、入力データメモリ115に入力楽音波形デー
タがアドレス順に書き込まれる。
Next, the fetched input data is written as musical tone data to the address set in the current write address register 301 of the input data memory 115 (step 403). Thus, as shown in FIGS. 3A and 3B, the input tone waveform data is written in the input data memory 115 in the order of addresses.

【0052】上記に続いて、読出し間隔カウンタ305
の値を「1」デクリメントし(ステップ404)、次に
その読出し間隔カウンタ305を参照し、その値が
「2」になったか否か判別する(ステップ405)。こ
れにより、所定の一定間隔の経過時刻(図3の例では時
刻T1、T2、・・・)の2処理分前の時刻になったか
否かが判別される。
Following the above, the read interval counter 305
Is decremented by "1" (step 404), and the read interval counter 305 is referred to to determine whether the value has become "2" (step 405). As a result, it is determined whether or not the time is two processes before the elapsed time (time T1, T2,... In the example of FIG. 3) at a predetermined constant interval.

【0053】ここまでの処理は、入力データを順次入力
データメモリ115に楽音データとして書き込みながら
(ステップ401〜403)、一方では、これら書き込
んだ楽音データの読み出し開始時間を計時して(ステッ
プ404)、その読み出し開始時間になったか否かを判
別している(ステップ405)。
In the processing so far, the input data is sequentially written into the input data memory 115 as musical sound data (steps 401 to 403), while the read start time of the written musical sound data is counted (step 404). It is determined whether or not the read start time has come (step 405).

【0054】そして、この判別で、読出し間隔カウンタ
305が「2」でない場合は、さらに読出し間隔カウン
タ305が「0」であるか否か判別する(ステップ41
1)。これにより、電源オン直後又は一定間隔時間の経
過直後の処理タイミングであるか、又は一定間隔期間中
の処理タイミングであるか、いずれの処理タイミングで
あるかが判別される。
If the read interval counter 305 is not "2", it is further determined whether the read interval counter 305 is "0" (step 41).
1). Thereby, it is determined whether the processing timing is immediately after the power is turned on or immediately after the elapse of the certain interval time, or during the certain interval period.

【0055】上記判別で、読出し間隔カウンタ305が
「0」であれば、電源オン直後又は一定間隔時間の経過
直後の処理タイミングであると判別し、この場合は、読
出し間隔カウンタ305に読出し間隔レジスタ311の
値をセットする(ステップ412)。これにより、図3
に示す例では、読出し間隔カウンタ305に読出し間隔
時間データ「9」がセットされ、次回からの処理タイミ
ング毎にカウント値「8」〜「0」で示される一定間隔
時間が計時される。
In the above determination, if the read interval counter 305 is "0", it is determined that the processing timing is immediately after the power is turned on or immediately after the elapse of a predetermined interval time. The value of 311 is set (step 412). As a result, FIG.
In the example shown in (1), the read interval time data "9" is set in the read interval counter 305, and the fixed interval time indicated by the count values "8" to "0" is measured at each processing timing from the next time.

【0056】続いて、立上がりFLAGレジスタ312
に「0」をセットする(ステップ413)。これによ
り、後述する楽音データの読み出しが開始されていた場
合においては、DSP105による立上がりエンベロー
プの付加が停止され、音源103による通常のエンベロ
ープ処理された楽音が発生される。
Subsequently, the rising FLAG register 312
Is set to "0" (step 413). As a result, when the reading of the tone data, which will be described later, has been started, the addition of the rising envelope by the DSP 105 is stopped, and the tone generated by the sound source 103 is subjected to normal envelope processing.

【0057】上記に続いて、現在読出アドレスレジスタ
306のアドレスを「1」インクリメントする(ステッ
プ414)。この処理は、楽音データの読み出しが開始
されていた場合には、後段のステップ416で楽音デー
タを順次読み出すための処理である。
Following the above, the address of the current read address register 306 is incremented by "1" (step 414). This process is a process for sequentially reading out the tone data in the subsequent step 416 when the reading of the tone data has been started.

【0058】次に、読出中FLAGレジスタ309が
「1」であるか否か判別する(ステップ415)。この
判別で、例えば、スタート直後のように読出中FLAG
レジスタ309が「0」であれば、楽音データの読み出
し中ではないと判別し、この場合は、楽音データを
「0」(無音)に設定する(ステップ417)。そし
て、立上がりFLAGレジスタ312が「0」であるこ
とを確認し(ステップ418)、さらに立下がりFLA
Gレジスタ313も「0」であることを確認して(ステ
ップ420)、上記「0」(無音)に設定した楽音デー
タをD/Aコンバータ107に出力する(ステップ42
3)。これにより、楽音データ読み出し中でなければ、
楽音は発音されない。
Next, it is determined whether or not the reading FLAG register 309 is "1" (step 415). In this discrimination, for example, FLAG being read out immediately after the start
If the register 309 is "0", it is determined that the tone data is not being read, and in this case, the tone data is set to "0" (silence) (step 417). Then, it is confirmed that the rising FLAG register 312 is "0" (step 418), and the falling FLA is further checked.
After confirming that the G register 313 is also "0" (step 420), the tone data set to "0" (silence) is output to the D / A converter 107 (step 42).
3). As a result, unless the tone data is being read out,
Musical notes are not pronounced.

【0059】次に、上記ステップ401で取り込んだ入
力データのエンベロープ値を抽出し、その抽出したエン
ベロープ値が予め設定されている一定値以上なら現在エ
ンベロープ値レジスタ302を「1」に設定し、一方、
一定値未満の場合は「0」に設定する(ステップ42
4)。
Next, the envelope value of the input data fetched in step 401 is extracted, and if the extracted envelope value is equal to or larger than a predetermined value, the current envelope value register 302 is set to "1". ,
If it is less than the certain value, it is set to "0" (step 42).
4).

【0060】続いて、前回エンベロープ値レジスタ31
0の値が「0」で且つ上記ステップ424で設定した現
在エンベロープ値レジスタ302の値が「1」か否か、
すなわち入力データが立ち上がっているか否か判別する
(ステップ425)(図3(a) のアドレス「4」、また
はアドレス「F」参照)。
Subsequently, the previous envelope value register 31
Whether the value of “0” is “0” and the value of the current envelope value register 302 set in step 424 is “1”;
That is, it is determined whether or not the input data has risen (step 425) (see address "4" or address "F" in FIG. 3A).

【0061】そして、入力データが立ち上がっていると
判別した場合は、まず現在書込アドレスレジスタ301
のアドレスを次回読出し先頭アドレスレジスタ303に
セットする(ステップ426)。これにより、例えば図
3(a) に示す入力データ31の立ち上がりのアドレスで
ある「4」が、次のタイミングで読み出すための読出し
先頭アドレスとして設定される。
If it is determined that the input data has risen, first, the current write address register 301
Is set in the next read start address register 303 (step 426). Thereby, for example, "4", which is the rising address of the input data 31 shown in FIG. 3A, is set as the read head address for reading at the next timing.

【0062】次に、次回読出終了アドレスレジスタ30
4を「−1」にセットする(同じくステップ426)。
これにより、次のタイミングで読み出す楽音データの読
み出し終了アドレスが未定であることが示される。
Next, the next read end address register 30
4 is set to "-1" (also step 426).
This indicates that the read end address of the musical tone data to be read at the next timing is undecided.

【0063】続いて、入力有FLAGレジスタ308を
「1」にセットする(ステップ427)。これにより、
CPU102の読出信号に基づいて読出し処理すべき楽
音データのあることが、以後の処理のために示される。
Subsequently, the input FLAG register 308 is set to "1" (step 427). This allows
The presence of musical tone data to be read out based on the read signal from the CPU 102 is indicated for the subsequent processing.

【0064】そして次に、現在エンベロープ値レジスタ
302の値を前回エンベロープ値レジスタ310にセッ
トする(ステップ432)。これにより、今回の入力デ
ータのエンベロープ値を前回エンベロープ値とし、一方
次回入力される入力データのエンベロープ値を現在エン
ベロープ値として、次回の処理において、再び入力デー
タのエンベロープの変化を判別することができる。
Then, the value of the current envelope value register 302 is set in the previous envelope value register 310 (step 432). Accordingly, the envelope value of the input data can be determined again in the next process by setting the envelope value of the current input data as the previous envelope value and the envelope value of the next input data as the current envelope value. .

【0065】上記ステップ425の判別で、入力データ
が立ち上がっていないときは、次には更に、前回エンベ
ロープ値レジスタ310の値が「1」で且つ現在エンベ
ロープ値レジスタ302の値が「0」か否か、すなわち
入力データが立ち下がっているか否か判別し(ステップ
428)、まだ入力データが立ち下がっていないと判別
した場合は、直ちにステップ432の処理に移行すると
いうことを繰り返す。これにより、例えば図3(a) の入
力データ31が、アドレス「4」からアドレス「7」ま
で順次、前のデータのエンベロープ値と後のデータのエ
ンベロープ値とが比較される。
If the input data has not risen in step 425, it is determined whether the value of the previous envelope value register 310 is "1" and the value of the current envelope value register 302 is "0". That is, it is determined whether or not the input data has fallen (step 428). If it is determined that the input data has not yet fallen, the process immediately proceeds to step 432. Thus, for example, the input data 31 of FIG. 3A is sequentially compared with the envelope value of the preceding data and the envelope value of the succeeding data from address “4” to address “7”.

【0066】そして、ステップ428で、入力データの
立ち下がりを判別したならば(図3(a) のアドレス
「7」の波形データ参照)、現在書込アドレスレジスタ
301のアドレスを「1」減算して前回書込みアドレス
を算出し、その算出した前回書込みアドレスを次回読出
し終了アドレスレジスタ304にセットする(ステップ
429)。これにより、例えば図3(a) に示す入力デー
タ31の立ち下がりのアドレスであるアドレス「6」
が、次のタイミングで読み出す楽音データの読出し終了
アドレスとして設定される。
If it is determined in step 428 that the input data has fallen (see the waveform data at address "7" in FIG. 3A), the address of the current write address register 301 is subtracted by "1". To calculate the previous write address, and set the calculated previous write address in the next read end address register 304 (step 429). Thus, for example, the address “6” which is the falling address of the input data 31 shown in FIG.
Is set as the read end address of the tone data to be read at the next timing.

【0067】続く、ステップ430及びステップ431
の処理については後述するが、上述のようにして、楽音
データを入力データメモリ115に順次書き込み、その
波形データの立ち上がりと立ち下がりのアドレスを次回
読出し先頭アドレスレジスタ303と次回読出し終了ア
ドレスレジスタ304にそれぞれセットした後、前述の
ステップ405で、読出し間隔カウンタ305の値が
「2」になったことを判別して、さらに、入力有FLA
Gレジスタ308の値が「1」となっているか否か判別
し(ステップ406)、その値が「1」であることによ
り前回の拍(例えば図3に示す時刻T0)から今回の拍
(例えば図3に示す時刻T2)までの間に入力データが
あったことを確認して(図3(a) の波形データ31を参
照)、次回読出し先頭アドレスレジスタ303のアドレ
スを「2」減算して、これを現在読出アドレスレジスタ
306にセットすると共に、次回読出し終了アドレスレ
ジスタ304のアドレスを読出終了アドレスレジスタ3
07にセットする(ステップ407)。これにより、例
えば図3(a) に示す書き込アドレスの「2」と「6」
が、それぞれ読み出し開始アドレス及び読み出し終了ア
ドレスとして設定される。 続いて、読出中FLAGレ
ジスタ309を「1」にセットする(ステップ40
8)。これにより、楽音データの読み出し中であること
が設定される。
Subsequently, steps 430 and 431
As described above, the tone data is sequentially written to the input data memory 115, and the rising and falling addresses of the waveform data are stored in the next read start address register 303 and the next read end address register 304, as described above. After each setting, in step 405 described above, it is determined that the value of the read interval counter 305 has become "2".
It is determined whether or not the value of the G register 308 is "1" (step 406), and since the value is "1", the value of the G register 308 is changed from the previous beat (for example, time T0 shown in FIG. 3) to the current beat (for example, It is confirmed that there is input data before the time T2 shown in FIG. 3 (see the waveform data 31 in FIG. 3A), and the address of the next read head address register 303 is subtracted by "2". This is set in the current read address register 306, and the address of the next read end address register 304 is set in the read end address register 3.
07 (step 407). Thus, for example, the write addresses “2” and “6” shown in FIG.
Are set as a read start address and a read end address, respectively. Subsequently, the FLAG register 309 during reading is set to "1" (step 40).
8). Thus, it is set that the tone data is being read.

【0068】次に、立上りFLAGレジスタ312を
「1」にセットする(ステップ4090)。これによ
り、楽音データの立上り中であることを設定される。さ
らに、入力有FLAGレジスタ308を「0」にセット
する(ステップ410)。これにより、次回入力データ
の検出準備がなされる。
Next, the rising FLAG register 312 is set to "1" (step 4090). Thus, it is set that the tone data is rising. Further, the input FLAG register 308 is set to "0" (step 410). As a result, preparation for detecting the next input data is made.

【0069】なお、上記ステップ406で、入力有FL
AGレジスタ308が「0」の場合は、直ちに上記ステ
ップ410に移行する。そして、上記読出中FLAGレ
ジスタ309が「1」であることを確認したうえで(ス
テップ415)、入力データメモリ115の現在読出ア
ドレスレジスタ306のアドレスから楽音データを読み
出す(ステップ416)。
In the above step 406, the input FL
If the AG register 308 is “0”, the process immediately proceeds to step 410. After confirming that the reading FLAG register 309 is "1" (step 415), the tone data is read from the address of the current reading address register 306 of the input data memory 115 (step 416).

【0070】これにより、現在読出アドレスレジスタ3
06のアドレスから読出終了アドレスレジスタ307の
アドレスまで、例えば図3(a) に示すアドレス「2」か
ら「6」まで、楽音データ31が順次読み出される。
Thus, the current read address register 3
The tone data 31 is sequentially read from the address 06 to the address of the read end address register 307, for example, from the addresses "2" to "6" shown in FIG.

【0071】続いて、立上がりFLAGレジスタ312
が「1」であるか否か判別し(ステップ418)、その
立上がりFLAGレジスタ312が「1」であれば、立
上がり処理期間であると判別して、立上がりエンベロー
プ処理を行う(ステップ419)。これにより、楽音読
み出し開始直後の数処理期間(図3に示す例では2処理
期間)、出力が徐々に立ち上がるように楽音データに立
上がりエンベロープが付加される。
Subsequently, the rising FLAG register 312
Is determined (step 418). If the rising FLAG register 312 is "1", it is determined that the processing is in the rising processing period, and the rising envelope processing is performed (step 419). As a result, a rising envelope is added to the musical sound data so that the output gradually rises during several processing periods (two processing periods in the example shown in FIG. 3) immediately after the start of musical sound reading.

【0072】そして、その楽音データを、D/Aコンバ
ータ107に出力する(ステップ423)。これによ
り、楽音データ読み出しの立上りであれば、上記のよう
に徐々に立ち上がるように立上がりエンベロープが付加
された楽音が発音される。
Then, the tone data is output to the D / A converter 107 (step 423). As a result, if the tone data reading rises, a tone with a rising envelope added so as to gradually rise as described above is generated.

【0073】上記ステップ418で、立上がりFLAG
レジスタ312が「0」の場合は、続いて、立下がりF
LAGレジスタ313が「1」であるか否か判別し(ス
テップ420)、立下がりFLAGレジスタ313も
「0」であれば、現在読出しアドレス及び読出し終了ア
ドレス間の楽音データであると判別し、直ちに上記ステ
ップ423の処理を行う。これにより、音源によりエン
ベロープの付加された通常の楽音が発音される。
At step 418, the rising FLAG
If the register 312 is “0”, the falling F
It is determined whether or not the LAG register 313 is "1" (step 420). If the falling FLAG register 313 is also "0", it is determined that the tone data is between the current read address and the read end address, and immediately. The process of step 423 is performed. As a result, a normal tone to which an envelope is added is generated by the sound source.

【0074】また、上記ステップ420の判別で、立下
がりFLAGレジスタ313が「1」である場合は、立
下がり処理期間であると判別して、立下がりエンベロー
プ処理を行って(ステップ421)、続いて、立下がり
カウンタ314の値を「1」デクリメントした後(ステ
ップ422)、上記ステップ423の処理を行う。
If it is determined in step 420 that the falling FLAG register 313 is "1", it is determined that a falling processing period is in progress, and falling envelope processing is performed (step 421). Then, after the value of the falling counter 314 is decremented by "1" (step 422), the processing of step 423 is performed.

【0075】これにより、立下がりFLAGレジスタ3
13が「1」であるときは、立下がりカウンタ314に
設定されている立下がり処理を行う期間が計時され、こ
の間、読出終了アドレスレジスタ307のアドレスに続
くアドレスの楽音データが読み出され、その楽音データ
に、出力が徐々に立ち下がるように立下がりエンベロー
プが付加されて発音される。
Thus, falling FLAG register 3
When 13 is "1", a period during which the falling process set in the falling counter 314 is performed is counted. During this time, the tone data at the address following the address of the reading end address register 307 is read out. A falling envelope is added to the tone data so that the output gradually falls, and the tone data is generated.

【0076】上述した立上がりエンベロープ処理、及び
立下がりエンベロープ処理は、音源における通常のエン
ベロープ処理とは異なり、ステップ416で読み出した
楽音データに、例えば、単純に0.0から1.0までの
乗数を掛けるような処理である。
The rising envelope processing and the falling envelope processing described above are different from the normal envelope processing in the sound source, in that, for example, a multiplier from 0.0 to 1.0 is simply added to the tone data read in step 416. It is processing like multiplying.

【0077】ここで、上述のステップ429に続くステ
ップ430以降の説明に戻る。ステップ430におい
て、読出終了アドレスレジスタ307の値を参照し、
「−1」であれば、上述したステップ408において読
出中フラグが設定されて読み出し開始状態となった楽音
データの立ち下がりがまだ検出されておらず、ステップ
426で設定され、ステップ407で読出終了アドレス
レジスタ307に転送された読み出し終了アドレスが未
定のままである、すなわち、いま立ち下がった入力デー
タは、今読み出し中の楽音データであると判別し、この
場合は、再び現在書込アドレスレジスタ301のアドレ
スを「1」減算して、今読み出し中の楽音データである
入力データの、立ち下がりアドレスである前回書込みア
ドレスを算出し、その算出した立ち下がりアドレスを読
出終了アドレスレジスタ307にセットする(ステップ
431)。これにより、入力中に読み出された楽音デー
タの読み出し終了アドレスが設定される。
Here, the description returns to step 430 and subsequent steps following step 429 described above. In step 430, referring to the value of the read end address register 307,
If the value is "-1", the falling of the musical tone data which has been set in the reading start state in step 408 and is in the reading start state has not been detected yet, is set in step 426, and the reading ends in step 407. It is determined that the read end address transferred to the address register 307 is undecided, that is, the input data that has just fallen is the tone data that is currently being read out. Is subtracted by "1" to calculate the previous write address which is the falling address of the input data which is the tone data currently being read, and sets the calculated falling address in the read end address register 307 ( Step 431). As a result, the read end address of the tone data read during the input is set.

【0078】上記ステップ430の判別で「−1」でな
ければ、今回の読み出しタイミングで設定された読出し
終了アドレスであり、新たな読み出し終了アドレスの指
定は、次回の読み出しタイミングまで必要ないと判別し
て、直ちに前述のステップ432に移行する。
If the determination in step 430 is not "-1", it is the read end address set at the current read timing, and it is determined that it is not necessary to specify a new read end address until the next read timing. Then, the process immediately proceeds to step 432 described above.

【0079】上記ステップ432に続いて、次に、現在
読出アドレスレジスタ306のアドレスと読出終了アド
レスレジスタ307のアドレスとが一致するか否か判別
する(ステップ433)。これにより、楽音データ読み
出し中である場合には、前述のステップ414で順次
「1」インクリメントされる現在読出アドレスレジスタ
306のアドレスが読出終了アドレスに達したか否かが
判別される。
Subsequent to step 432, it is next determined whether or not the address of the current read address register 306 matches the address of the read end address register 307 (step 433). As a result, if the tone data is being read, it is determined whether or not the address of the current read address register 306, which is sequentially incremented by "1" in the above-described step 414, has reached the read end address.

【0080】この判別で、両アドレスが一致しない場
合、即ち、引続き読み出すべき楽音データがある場合は
(図3(a) のアドレス「2」〜「6」参照)、立下がり
FLAGレジスタ313が「1」になっているか否か判
別し(ステップ436)、そして、「1」でなければ、
読み出中の楽音データの立下がりになってはいないと判
別し、この場合は、次に、LFOカウンタ312′が
「0」であるか否か判別し(ステップ527)、「0」
でなければ、その値を「1」デクリメントする(ステッ
プ528)。これにより、前述のステップ405、又は
ステップ411において時間経過が判別される読出間隔
の、間隔時間の変更周期が計時される。
If the two addresses do not match, that is, if there is music data to be continuously read out (see addresses "2" to "6" in FIG. 3A), the falling FLAG register 313 sets "1". It is determined whether or not it is "1" (step 436).
It is determined that the tone data being read is not falling, and in this case, it is next determined whether or not the LFO counter 312 'is "0" (step 527).
If not, the value is decremented by "1" (step 528). As a result, a change period of the interval time of the reading interval at which the elapsed time is determined in step 405 or step 411 described above is measured.

【0081】上記ステップ433で、現在読出アドレス
レジスタ306のアドレスが読出終了アドレスになった
と判別したときは、立下がりFLAGレジスタ313を
「1」にセットする(ステップ434)。これにより、
楽音データの立下がり処理であることが設定される。
If it is determined in step 433 that the address of the current read address register 306 has become the read end address, the falling FLAG register 313 is set to "1" (step 434). This allows
It is set that the tone data falls.

【0082】続いて、立下がりカウンタ314に「2」
をセットする(ステップ435)。これにより、2処理
タイミング分の立下がり処理時間が設定される。そし
て、次にステップ436の判別においては、上記立下が
りFLAGレジスタ313が「1」になっていることに
より、立下がり処理であると判別し、この場合は、さら
に立下がりカウンタ314が「0」であるか否か判別す
る(ステップ437)。そして、「0」でなければ、ス
テップ537に移行する。これにより、続く次の2処理
タイミングのステップ414において、上記読出終了ア
ドレスからさらに2アドレスの楽音データが読み出され
て、立下がりエンベロープ処理がなされる。
Subsequently, "2" is set in the falling counter 314.
Is set (step 435). Thereby, the fall processing time for two processing timings is set. Then, in the determination of step 436, since the falling FLAG register 313 is set to "1", it is determined that the falling process is to be performed. In this case, the falling counter 314 is further set to "0". Is determined (step 437). If it is not "0", the flow shifts to step 537. As a result, at step 414 of the next next two processing timings, the musical tone data of two more addresses are read from the read end address, and the falling envelope processing is performed.

【0083】そして、その2処理タイミングの立下がり
エンベロープ処理の後、上記ステップ437で、立下が
りカウンタ314が「0」になったことを確認して、立
下がりFLAGレジスタ313に「0」をセットする
(ステップ438)。これにより、立下がり処理の終了
が設定される。
After the falling envelope processing at the two processing timings, it is confirmed in step 437 that the falling counter 314 has become "0", and "0" is set in the falling FLAG register 313. (Step 438). Thereby, the end of the fall processing is set.

【0084】続いて、読出し中FLAGレジスタ309
に「0」をセットする(ステップ439)。これによ
り、読み出し終了が設定される。上記ステップ527
で、LFOカウンタ312′が「0」であるときは、L
FOカウンタ312′に設定値をセットする(ステップ
529)。これにより、予め入力等により設定されてい
る設定値、即ち間隔時間の変更周期が、LFOカウンタ
312′に再び設定される。
Subsequently, during reading, the FLAG register 309 is read.
Is set to "0" (step 439). Thereby, the end of reading is set. Step 527 above
When the LFO counter 312 'is "0", L
The set value is set to the FO counter 312 '(step 529). As a result, a set value set in advance by input or the like, that is, a change cycle of the interval time is set again in the LFO counter 312 '.

【0085】そして、次に、LFO増減FLAGレジス
タ315′が「1」であるか否か判別し(ステップ53
0)、「1」であれば、読出し間隔レジスタ311の値
を「1」インクリメントする(ステップ531)。これ
により、LFO増減FLAGレジスタ315′が「1」
であるときは、LFOカウンタ312′により計時され
る変更周期毎に、読出し間隔が延長される。
Then, it is determined whether or not the LFO increase / decrease FLAG register 315 'is "1" (step 53).
0), if it is "1", the value of the read interval register 311 is incremented by "1" (step 531). As a result, the LFO increase / decrease FLAG register 315 'becomes "1".
In the case of, the read interval is extended for each change cycle measured by the LFO counter 312 '.

【0086】そして、上記延長された読出し間隔が、読
出し間隔MAX値レジスタ313′に設定されている読
出し間隔と一致または越えたか否か判別し(ステップ5
32)、一致または越えていなければ直ちに処理を終了
し、一方、一致または越えていれば、この場合は、LF
O増減FLAGレジスタ315′に「0」をセットする
(ステップ533)。これにより、変更周期毎に順次延
長された読出し間隔が、予め入力等により読出し間隔M
AX値レジスタ313′に設定されている読出し間隔と
一致または越えた場合には、次回の処理タイミングから
は、変更周期毎に読出し間隔が順次短縮される。
Then, it is determined whether or not the extended read interval matches or exceeds the read interval set in the read interval MAX value register 313 '(step 5).
32) If the value does not match or exceed, the process ends immediately. If the value matches or exceeds, the LF
"0" is set in the O increase / decrease FLAG register 315 '(step 533). As a result, the read interval sequentially extended in each change cycle becomes the read interval M
If the read interval set in the AX value register 313 'coincides with or exceeds the read interval, the read interval is sequentially reduced from the next processing timing for each change cycle.

【0087】即ち、上記ステップ530において、LF
O増減FLAGレジスタ315′が「0」である場合に
は、読出し間隔レジスタ311の値を「1」デクリメン
トする(ステップ534)。これにより、LFO増減F
LAGレジスタ315′が「0」であるときは、LFO
カウンタ312′により計時される変更周期毎に、読出
し間隔が短縮される。
That is, in the above step 530, LF
If the O increase / decrease FLAG register 315 'is "0", the value of the read interval register 311 is decremented by "1" (step 534). As a result, the LFO increase / decrease F
When the LAG register 315 'is "0", the LFO
The read interval is shortened for each change period counted by the counter 312 '.

【0088】そして、上記短縮された読出し間隔が、読
出し間隔MIN値レジスタ314′に設定されている読
出し間隔と一致または短いか否かを判別し(ステップ5
35)、一致または短かくなければ直ちに処理を終了
し、一方、一致または短ければ、この場合は、LFO増
減FLAGレジスタ315′に「1」をセットする(ス
テップ536)。これにより、変更周期毎に順次短縮さ
れた読出し間隔が、予め入力等により読出し間隔MIN
値レジスタ314′に設定されている読出し間隔と一致
または短かくなった場合には、次回の処理タイミングか
らは、ふたたび変更周期毎に読出し間隔が順次延長され
る。
Then, it is determined whether or not the shortened read interval matches or is shorter than the read interval set in the read interval MIN value register 314 '(step 5).
35) If not coincident or short, the process is immediately terminated, while if coincident or short, in this case, "1" is set to the LFO increase / decrease FLAG register 315 '(step 536). As a result, the read interval that is sequentially shortened for each change cycle is changed to the read interval
When the read interval set in the value register 314 'coincides with or becomes shorter than the read interval, the read interval is sequentially extended again at every change cycle from the next processing timing.

【0089】上述したように、本実施例においては、楽
音データや音声データ等の入力ディジタル信号にエフェ
クトをかけるばかりでなく、そのエフェクトをかけた入
力ディジタル信号を、入力のタイミングに係わらず、所
定の一定間隔時間毎のタイミングでディレイ出力させる
ことができ、あるいは、自動伴奏メロディ等の自動発生
されたディジタルデータをそのまま又はエフェクトを掛
けて、その自動発生の拍等のタイミング毎に、エフェク
トをかけた入力ディジタル信号をディレイ出力させるこ
とができる。
As described above, in the present embodiment, not only an effect is applied to an input digital signal such as tone data or audio data, but also the effected input digital signal is transmitted to a predetermined signal regardless of the input timing. The delay can be output at a certain interval of time, or an automatically applied digital data such as an automatic accompaniment melody can be applied as it is or by applying an effect, and an effect can be applied at each timing of the automatically generated beat. Input digital signal can be output as a delay.

【0090】また、入力データメモリの楽音データを出
力する際に、楽音データの前後において出力が滑らかに
変化するように、DSP内部でエンベロープをかけるよ
うにしたので、より綺麗で一層効果の高いディレイ効果
を得ることができる。
Also, when the tone data in the input data memory is output, an envelope is applied inside the DSP so that the output changes smoothly before and after the tone data, so that a more beautiful and more effective delay is provided. The effect can be obtained.

【0091】さらに、LFO等によって、予め任意に設
定される変更周期毎に、これも予め任意に設定される最
高時間と最低時間の間を上記の一定間隔時間を伸縮させ
ることにより、ディレイ効果音の出力を規則正しいタイ
ミングから微妙にずらすようにしたので、単調にならず
に一層効果の高い効果音を付加できるようになる。
Further, the LFO or the like expands or contracts the above-mentioned fixed time interval between the maximum time and the minimum time which are arbitrarily set in advance, thereby providing a delay sound effect. Is slightly shifted from the regular timing, so that a more effective sound effect can be added without becoming monotonous.

【0092】なお、上記実施例では、読み出し間隔の変
更を行う際、単純に1を加減算したが(三角波)、正弦
波等他の波形により変更を行ってもよい。正弦波等の周
期を一般に言われている“1/fの揺らぎ”に合わせる
ことにより、更に人間にとって心地良い音響効果を得る
ことができる。
In the above embodiment, when changing the readout interval, 1 is simply added or subtracted (triangular wave), but the change may be made by another waveform such as a sine wave. By adjusting the period of a sine wave or the like to the generally known "1 / f fluctuation", a sound effect that is more comfortable for humans can be obtained.

【0093】[0093]

【発明の効果】以上説明したように、本発明によれば、
任意のタイミングで入力された楽音、音声等の入力信号
を所定の間隔又は伴奏メロディの拍等に合わせた一定タ
イミングでリアルタイムでディレイ出力できるので、例
えば自動伴奏等に同期しない誤ったタイミングの入力で
も自動伴奏等に同期したディレイがかけられて出力さ
れ、したがって、演奏の雰囲気を損ねるこもなく、充分
に演奏効果を高めることができる。また、メモリの楽音
データを出力する際に、楽音データの前後にエンベロー
プをかけるようにしたので、出力が滑らかに変化し、歪
みのない、綺麗で一層効果の高いディレイ効果を得るこ
とができる。さらに、上記の一定タイミングを、ある変
更周期毎に、ある最高時間とある最低時間の間で変更し
ているので、ディレイ効果音の出力が、規則正しいタイ
ミングから微妙にずれ、したがって、単調にならずに一
層効果の高い効果音を付加できるようになる。
As described above, according to the present invention,
Input signals such as musical sounds and voices input at arbitrary timing can be output in real time at a predetermined interval or at a constant timing in accordance with the beat of an accompaniment melody. The output is output after being delayed in synchronization with automatic accompaniment and the like, so that the performance effect can be sufficiently enhanced without impairing the atmosphere of the performance. Also, when the musical sound data is output from the memory, an envelope is applied before and after the musical sound data, so that the output changes smoothly, and a beautiful and more effective delay effect without distortion can be obtained. Further, since the above-mentioned constant timing is changed between a certain maximum time and a certain minimum time at every certain change period, the output of the delay sound effect slightly deviates from the regular timing, and therefore does not become monotonous. Sound effects that are even more effective.

【0094】そして、これらのエフェクトがリアルタイ
ムで付加されるので、極めて面白味のある演奏を楽しむ
ことが可能となる。
Since these effects are added in real time, it is possible to enjoy a very interesting performance.

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

【図1】第1実施例の効果付加装置を内蔵した電子鍵盤
楽器の全体構成図である。
FIG. 1 is an overall configuration diagram of an electronic keyboard instrument incorporating an effect adding device according to a first embodiment.

【図2】DSP内部レジスタの構成図である。FIG. 2 is a configuration diagram of a DSP internal register.

【図3】DSPの概略動作を説明する図である。FIG. 3 is a diagram illustrating a schematic operation of a DSP.

【図4】DSPの動作を説明するフローチャート(その
1)である。
FIG. 4 is a flowchart (part 1) for explaining the operation of the DSP;

【図5】DSPの動作を説明するフローチャート(その
2)である。
FIG. 5 is a flowchart (part 2) for explaining the operation of the DSP;

【図6】DSPの動作を説明するフローチャート(その
3)である。
FIG. 6 is a flowchart (part 3) for explaining the operation of the DSP;

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

101 鍵盤 102 CPU 103 音源 104 波形メモリ 105 DSP 106 ミキサ回路 107 D/A変換器 108 アンプ 109 スピーカ 113 アナログ入力回路 114 A/D変換器 115 入力データメモリ 301 現在書込アドレスレジスタ 310 前回エンベロープ値レジスタ 302 現在エンベロープ値レジスタ 303 次回読出し先頭アドレスレジスタ 304 次回読出し終了アドレスレジスタ 311 読出し間隔レジスタ 305 読出し間隔カウンタ 306 現在読出アドレスレジスタ 307 読出終了アドレスレジスタ 308 入力有FLAGレジスタ 309 読出中FLAGレジスタ 312 立上がりFLAGレジスタ 313 立下がりFLAGレジスタ 314 立下がりカウンタ 312′ LFOカウンタ 313′ 読出し間隔MAX値レジスタ 314′ 読出し間隔MIN値レジスタ 315′ LFO増減FLAGレジスタ 316′ LFO設定値レジスタ 101 Keyboard 102 CPU 103 Sound Source 104 Waveform Memory 105 DSP 106 Mixer Circuit 107 D / A Converter 108 Amplifier 109 Speaker 113 Analog Input Circuit 114 A / D Converter 115 Input Data Memory 301 Current Write Address Register 310 Previous Envelope Value Register 302 Current envelope value register 303 Next read start address register 304 Next read end address register 311 Read interval register 305 Read interval counter 306 Current read address register 307 Read end address register 308 Input FLAG register 309 Reading FLAG register 312 Rising FLAG register 313 Standing Falling FLAG register 314 Falling counter 312 'LFO counter 313' Read Interval MAX value register 314 'Read interval MIN value register 315' LFO increase / decrease FLAG register 316 'LFO setting value register

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 一定周期毎にアドレスを歩進することに
より、入力される信号を記憶する信号記憶手段と、 前記入力される信号のエンベロープ値が所定値に増加し
ていることを検出する第1の検出手段と、 前記入力される信号のエンベロープ値が前記所定値から
減少していることを検出する第2の検出手段と、 前記第1の検出手段により前記入力されるエンベロープ
値が前記所定値に増加していることが検出されたとき前
記信号の記憶されている前記信号記憶手段の先頭アドレ
スを記憶する第1のアドレス記憶手段と、 前記第2の検出手段により前記入力されるエンベロープ
値が前記所定値から減少していることが検出されたとき
前記信号の記憶されている前記信号記憶手段の終了アド
レスを記憶する第2のアドレス記憶手段と、前記第1のアドレス記憶手段に記憶されている 先頭アド
レスから所定アドレス前の立ち上げ開始アドレスを記憶
する第3のアドレス記憶手段と、前記一定周期毎に計数を行い、拍タイミングを検出する
計数手段と、前記第1の検出手段により前記入力される信号のエンベ
ロープ値が所定値に増加していることを検出した後でか
つ前記計数手段が拍タイミングの検出より前記所定アド
レスを歩進する期間前から、 前記信号記憶手段の前記第
3のアドレス記憶手段に記憶された立ち上げ開始アドレ
スから前記第2のアドレス記憶手段に記憶された終了ア
ドレスから所定アドレス後の立ち下げ終了アドレスま
で、前記信号を順次読み出す読出手段と、 該読出手段において、前記第3のアドレス記憶手段に記
憶された立ち上げ開始アドレスから前記第1のアドレス
記憶手段に記憶された先頭アドレスまでを読み出す際、
立ち上がりのエンベロープを付加する第1のエンベロー
プ手段と、 前記読出手段において、前記第2のアドレス記憶手段に
記憶された終了アドレスから前記立ち上げ終了アドレス
までを読み出す際、立ち下がりのエンベロープを付加す
る第2のエンベロープ手段と、 を有することを特徴とする効果付加装置。
An address is incremented at regular intervals.
More, a signal storage means for storing a signal input, the envelope value of the signal to be the input is increased to a predetermined value
First detecting means for detecting that have envelope value of the signal to be the input from the predetermined value
A second detecting means for detecting that the signal is decreasing, and the signal is stored when the input envelope value is detected to be increasing to the predetermined value by the first detecting means. First address storage means for storing a head address of the signal storage means; and storage of the signal when the second detection means detects that the input envelope value has decreased from the predetermined value. A second address storage means for storing an end address of the signal storage means, and a third start-up address for storing a start-up address a predetermined address before the head address stored in the first address storage means . Address storage means, counting means for performing counting at the constant period, and detecting a beat timing, and embedding of the signal inputted by the first detecting means.
After detecting that the rope value is increasing to the specified value
When the counting means detects the beat timing, the predetermined
From the start-up start address stored in the third address storage means of the signal storage means before the end address stored in the second address storage means, before the period of stepping up the address.
Reading means for sequentially reading the signals from a dress to a falling end address after a predetermined address; and in the reading means, the starting address stored in the third address storing means is stored in the first address storing means. When reading up to the stored top address,
First envelope means for adding a rising envelope, and the reading means for reading from the end address stored in the second address storage means to the rising end address , And a second envelope means for adding an effect.
JP34285392A 1992-12-22 1992-12-22 Effect adding device Expired - Fee Related JP3298193B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP34285392A JP3298193B2 (en) 1992-12-22 1992-12-22 Effect adding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34285392A JP3298193B2 (en) 1992-12-22 1992-12-22 Effect adding device

Publications (2)

Publication Number Publication Date
JPH06186968A JPH06186968A (en) 1994-07-08
JP3298193B2 true JP3298193B2 (en) 2002-07-02

Family

ID=18357006

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34285392A Expired - Fee Related JP3298193B2 (en) 1992-12-22 1992-12-22 Effect adding device

Country Status (1)

Country Link
JP (1) JP3298193B2 (en)

Also Published As

Publication number Publication date
JPH06186968A (en) 1994-07-08

Similar Documents

Publication Publication Date Title
CN111009228B (en) Electronic musical instrument and method for executing the same
US20230402026A1 (en) Audio processing method and apparatus, and device and medium
US6881890B2 (en) Musical tone generating apparatus and method for generating musical tone on the basis of detection of pitch of input vibration signal
JP2800465B2 (en) Electronic musical instrument
JPH1063265A (en) Automatic performance device
JP2756877B2 (en) Phrase playing device
JP3298193B2 (en) Effect adding device
JP4170524B2 (en) Waveform playback device
JP7285175B2 (en) Musical tone processing device and musical tone processing method
JP3298157B2 (en) Effect adding device
JP2518742B2 (en) Automatic playing device
JP3346699B2 (en) Electronic musical instrument
JP2745824B2 (en) Electronic musical instrument
JP2734797B2 (en) Electronic musical instrument
JPH06161440A (en) Automatic playing device
JP2526122Y2 (en) Electronic musical instrument
JP2882028B2 (en) MIDI code generator
JP2006284796A (en) Musical sound signal transmitting terminal and musical sound signal receiving terminal
JP2768064B2 (en) Music synthesizer
JP2508035B2 (en) Input waveform signal controller
JP2011197235A (en) Sound signal control device and karaoke device
JP2792022B2 (en) Electronic musical instrument input control device
JPH11352981A (en) Sound device and toy incorporating the same
JPH047520B2 (en)
JP3593767B2 (en) Karaoke equipment

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020319

LAPS Cancellation because of no payment of annual fees