JP2722463B2 - Address control device - Google Patents

Address control device

Info

Publication number
JP2722463B2
JP2722463B2 JP62259048A JP25904887A JP2722463B2 JP 2722463 B2 JP2722463 B2 JP 2722463B2 JP 62259048 A JP62259048 A JP 62259048A JP 25904887 A JP25904887 A JP 25904887A JP 2722463 B2 JP2722463 B2 JP 2722463B2
Authority
JP
Japan
Prior art keywords
address
output
read
predetermined
register
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
Application number
JP62259048A
Other languages
Japanese (ja)
Other versions
JPH01101595A (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.)
KASHIO KEISANKI KK
Original Assignee
KASHIO KEISANKI KK
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=17328608&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2722463(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by KASHIO KEISANKI KK filed Critical KASHIO KEISANKI KK
Priority to JP62259048A priority Critical patent/JP2722463B2/en
Publication of JPH01101595A publication Critical patent/JPH01101595A/en
Application granted granted Critical
Publication of JP2722463B2 publication Critical patent/JP2722463B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はアドレス制御装置に関する。 〔従来の技術〕 従来、電子楽器等に用いられるアドレス制御装置は、
波形の振幅データを記憶しているメモリの読出しアドレ
スを出力するとともに、その読出しアドレスが所定の最
終アドレスに達したかどうかを判断し、最終アドレスに
達したときには、次の読出しアドレスとして所定の開始
アドレスあるいはそのときの読出しアドレスを繰り返し
出力することにより、ループ再生あるいは通常の楽音の
読出しなどを行うものであった。 第2図はこのような従来のアドレス制御装置の回路構
成を示す回路ブロック図である。 同図において、ループエンドアドレスレジスタ1は例
えば8音ポリホニックに対応して8チャンネル分のデー
タを記憶する8段のシフトレジスタで構成され、各シフ
トレジスタで構成され、各シフトレジスタは各チャンネ
ルの複数ビットから成るループエンドアドレスを記憶す
る。そして図示しないCPUなどから供給されるアドレス
データがそれぞれのチャンネルのシフトレジスタに書込
まれ、その書込まれたデータが対応するチャンネルのタ
イミングに同期して出力される。また、このループエン
ドアドレスレジスタ1のループエンドアドレスはセレク
タ3のA入力端子に出力される。 以下、後述する他のレジスタも同様に8段のシフトレ
ジスタで構成され、各シフトレジスタは書込まれるデー
タのビット線分の記憶容量を有し、書込まれたデータは
対応するチャンネルのタイミングに同期して出力され
る。 エンドアドレスレジスタ2は通常の楽音の読出しのエ
ンドアドレスを記憶するレジスタであり、書込まれたエ
ンドアドレスはセレクタ3のB入力端子に出力される。
セレクタ3はエンドフラグレジスタ4から力されるエン
ドフラグの内容に応じ、A入力、B入力の一方を選択し
比較器5のB入力端子に出力する。 比較器5はA入力端子に供給されるカレントアドレス
レジスタ16からの現在の読出しアドレスと、B入力端子
に供給されるセレクタ3の出力とを比較し、比較結果を
アンドゲート6および7に出力する。またアンドゲート
6および7の他方の入力端子にはエンドフラグレジスタ
4のデータが供給されている。 セレクタ8はアンドゲート6から出力される制御信号
に従って、A入力端子に供給されるカレントアドレスレ
ジスタ16の出力と、B入力端子に供給されるループスタ
ートアドレスレジスタ9の出力との一方を選択し全加算
器15のA入力端子に出力する。またアンドゲート7の出
力はインバータ10、アンドゲート11を介し再生フラグレ
ジスタ12に入力している。 また、ピッチデータレジスタ13に書まれている読出し
アドレスのアドレスピッチデータと再生フラグレジスタ
12の内容はアンドゲート群14を介し全加算器15のB入力
端子に供給される。 全加算器15はAとBとの入力を加算し、加算結果をカ
レントアドレスレジスタ16に出力する。カレントアドレ
スレジスタ16はその加算結果を記憶し、半加算器17およ
びセレクタ18に出力する。セレクタ18は、B入力端子に
供給されるカレントアドレスとそのカレントアドレスを
+1した半加算器17の出力を選択信号CHに同期したタイ
ミングで、それぞれ図示しない波形メモリ、補間回路な
どに出力する。 次に以上のような構成のアドレス制御回路の動作を説
明する。 以下、1つのチャンネルを例にとり動作を説明する。
あるチャンネルのエンドフラグレジスタ4の内容が
「0」、すなわちループ再生を行う場合には、セレクタ
3ではA入力のループエンドアドレスが選択され、比較
器5のB入力端子に出力される。また、比較器5のA入
力端子にはカレントアドレスレジスタ16から出力される
カレントアドレスすなわち現在の読出しアドレスが供給
されるので、両者を比較し、A<Bの場合には「0」を
出力する。従ってアンドゲート6および7の出力は
「0」となり、セレクタ8はA入力のカレントアドレス
を選択し全加算器15に出力する。そしてそのカレントア
ドレスは全加算器15によりピッチデータレジスタ13から
のピッチデータと加算され、その加算結果が次の読出し
アドレスとしてカレントアドレスレジスタ16に書込まれ
る。そして、その書込まれたアドレスとそのアドレスを
+1したアドレスがセレクタ18により選択され、対応す
るチャンネルの前半のタイミングでその書込まれたアド
レスが出力され、後半のタイミングでそのアドレスを+
1したアドレスが波形メモリ、補間回路などに出力され
る。その後補間回路によりそのアドレスとその次のアド
レスの間の振幅データの補間が行われる。 一方、比較器5による比較の結果が、A≧Bの場合、
すなわち現在の読出しアドレスがループエンドアドレス
に達したときには、比較器5から「1」が出力され、ア
ンドゲート6の出力が「1」となる。従って、セレクタ
8はB入力のループスタートアドレスを選択し全加算器
15に出力する。そして上記と同様にループスタートアド
レスにピッチデータが加算され、次の読出しアドレスと
してカレントレジスタに書込まれる。 また、エンドフラグレジスタ4の内容が「1」、すな
わち通常の楽音の読出しの場合には、セレクタ3のB入
力のエンドアドレスが選択され、比較器5に出力され
る。比較器5はこのエンドアドレスとカレントアドレス
を比較し、カレントアドレスがエンドアドレスに達して
いなければ「0」を出力する。そして前述のループ再生
の場合と同様に、ピッチデータを加算したアドレスが、
次の読出しアドレスとしてカレントアドレスレジスタ16
に書込まれる。 一方、カレントアドレスがエンドアドレスに達したき
には、比較器5から「1」が出力され、エンドフラグが
「1」であるとこから、アンドゲート6の出力が
「0」、アンドゲート7の出力が「1」となる。そし
て、アンドゲート7の出力を反転した信号「0」が再生
フラグレジスタ12に書込まれる。その結果アンドゲート
群14が閉じ、全加算器15にはピッチデータが供給されな
くなり、エンドアドレスに達したカレントアドレスが再
びカレントアドレスレジスタ16に書込まれる。 以上のように、このアドレス制御回路は実際に出力さ
れる読出しアドレスとループエンドアドレスあるいはエ
ンドアドレスとの比較を行い、読出しアドレスが最終ア
ドレスに達すると、ループスタートアドレスなどを次の
読出しアドレスとして出力するものであった。 従って、第3図に示すような「0〜8番地」の振幅デ
ータがメモリに記憶されていて、その間の振幅データを
読出す場合、エンドアドレスとして「8番地」をエンド
アドレスレジスタ2に設定しても、カレントアドレスレ
ジスタ16から出力される読出しアドレスがエンドアドレ
スの「8番地」に達したときには、各アドレス間の振幅
データの補間の為に、例えば+1した「9番地」のアド
レスが出力されるので、本来読出す必要のないデータが
読出され、そのデータが楽音として出力されてしまうと
いう問題点があった。 〔発明が解決しようとする問題点〕 以上述べた如く、従来のアドレス制御装置はメモリに
出力する読出しアドレスが波形メモリの最終アドレスと
一致したとき、補間を行うために通常その読出しアドレ
スの次のアドレスの振幅データを読出しているが、最終
アドレスを越えたアドレスは存在していないためアドレ
スの指定ができなくなるという問題点があった。 更に、読出しアドレスが波形メモリの最終アドレスを
越えた場合、存在しないアドレスを指定するという不都
合が生じる。又、読出しアドレスがループエンドアドレ
スを越えた場合、不必要な振幅データが指定されてしま
うという問題点があった。 本発明の課題は所定の最終アドレスを越えないように
アドレスを制御することである。 〔問題点を解決するための手段〕 本発明は、所定周期でサンプリングされた波形の振幅
データを読み出すための読出しアドレスを記憶する記憶
手段と、該記憶手段に記憶された読出しアドレスに基づ
いて所定の読出しアドレスを演算する演算手段と、該演
算手段から出力される所定の読出しアドレスと所定の最
終アドレスとを比較し、該演算手段にて演算された所定
の読出しアドレスが前記所定の最終アドレスに達してい
ないときには、当該演算された所定の読み出しアドレス
を次のアドレスとして前記記憶手段に記憶させ、当該演
算された所定の読み出しアドレスが前記所定の最終アド
レスに達したときには所定の開始アドレスを次の読出し
アドレスとして前記記憶手段に記憶させるアドレス制御
手段とを備えるものである。 〔作用〕 本発明の作用は次のとおりである。所定周期でサンプ
リングされた波形の振幅データは、記憶手段に記憶され
た読出しアドレスにより読み出される。この記憶手段に
記憶された読出しアドレスに基づいて、演算手段は所定
の読出しアドレスを演算する。そしてこの所定の読み出
しアドレスと所定の最終アドレスとを比較し、演算され
た所定の読出しアドレスが所定の最終アドレスに達して
いないときには、当該演算された所定の読み出しアドレ
スを次のアドレスとして記憶手段に記憶させ、当該演算
された所定の読み出しアドレスが所定の最終アドレスに
達したときには所定の開始アドレスを次の読出しアドレ
スとして前記記憶手段に記憶させる、という動作を繰り
返すのである。 このように所定の最終アドレスと比較して次の読出し
アドレスを求める際に、実際波形の振幅データを読み出
すために用いている記憶手に記憶された読出しアドレス
を直接用いるのではなく、演算手段により求められた読
出しアドレスを用いているため、所定の最終アドレスを
越えないように読出しアドレスを制御することができ
る。 〔実施例〕 以下、本発明の一実施例を第1図を参照して説明す
る。 第1図は電子楽器のアドレス制御装置の回路ブロック
図である。同図において、第2図の従来のアドレス制御
回路と同一の構成、および動作をするものについては同
一の符号を付して詳細な説明を省略する。 ピッチデータレジスタ21は図示しない波形メモリなど
からの読出しアドレスピッチを記憶するレジスタであ
り、8段のシフトレジスタで構成されており、各シフト
レジスタは波形メモリ上のアドレスに対応する整数部デ
ータとその間のアドレスを指定する小数部データとから
成り、小数部データにより波形メモリのアドレスピッチ
より細かいアドレスピッチを指定することができる。 全加算器22はB入力端子に与えられるアンドゲート群
14から出力されるピッチデータの整数部データおよび小
数部データと、A入力端子に与えられるカレントアドレ
スレジスタ25から帰還されるカレントアドレスとを加算
し、加算結果をセレクタ23および比較器5のA入力端子
に出力する。セレクタ23は、アンドゲート7からの出力
に従って、その拡散結果とB入力端子に与えられるカレ
ントアドレスレジスタ25の出力の一方を選択しセレクタ
24のA入力端子に出力する。そしてセレクタ24はアンド
ゲート6からの出力に従って、セレクタ23からの出力と
B入力端子に与えられるループスタートアドレスレジス
タ9の出力の一方を選択し、次の読出しアドレスとしカ
レントアドレスレジスタ25に出力する。カレントアドレ
スレジスタ25は各チャンネルのカレントアドレスの整数
部データと小数部データとを記憶するレジスタであり、
そのカレントアドレスはセレクタ27のB入力端子に出力
されるとともに、半加算器26に出力される。半加算器26
はそのカレントアドレスを+1としてセレクタ27のA入
力端子に出力する。セレクタ27は選択信号CHによりA、
Bの入力の一方を選択し、それぞれのチャンネルの前半
のタイミングに同期してB入力のカレントアドレスを出
力し、後半のタイミングに同期してA入力のカレントア
ドレスを+1したアドレスを波形メモリ、補間回路など
に出力する。 次に以上の様な構成のアドレス制御回路の動作を説明
する。説明を簡単にするため1チャンネル分の動作につ
いて説明する。 エンドフラグレジスタ2のあるチャンネルのエンドフ
ラグの内容が「0」、すなわちループ再生を行う場合に
は、全加算器22から出力される、ピッチデータと現在の
カレントアドレスとの加算結果と、セレクタ3から出力
されるループアンドエドレスとが、比較器5で比較され
る。そして、加算結果がループエンドアドレスに達して
いないときには、比較器5から「0」が出力され、アン
ドゲート6および7の出力が「0」となる。従ってセレ
クタ23、24はともにA入力を選択し、現在のカレントア
ドレスにピッチデータを加算した全加算器22の加算結果
が次の読出しアドレスとしてカレントアドレスレジスタ
25に出力され、書込まれる。 一方、比較器5の比較において、全加算器22の加算結
果がループエンドアドレスに達したときは、比較器5か
ら「1」が出力される。この場合エンドプラグが「0」
であるので、アンドゲート7の出力は「0」まま変ら
ず、アンドゲート6の出力が「1」となる。その結果、
セレクタ24はB入力を選択し、ループエンドアドレスを
次の読出しアドレスとしてカレントアドレス25に出力
し、そのループスタートアドレスがレジスタに書込まれ
る。 従って、カレントアドレスレジスタ25からは最大でも
ループエンドアドレスより1アドレス分前のアドレスし
か出力されないので、セレクタ27から補間の為そのアド
レスに「1」を加算したアドレスが出力されても、ルー
プエンドアドレスを越えることがなく、不要な振幅デー
タが読出されることがない。 また、エンドフラグレジスタ2の内容が「1」、すな
わち通常の楽音の読出しを行う場合には、現在のカレン
トアドレスとピッチデータの加算結果と、エンドアドレ
スが比較器5で比較される。そして、加算結果がエンド
アドレスに達していないときには、前述と同様にセレク
タ23および24はA入力を選択し、現在のカレントアドレ
スにピッチデータを加算した結果が、次の読出しアドレ
スとしてカレントアドレスレジスタに書込まれる。 一方、全加算器22の加算結果がエンドアドレスに達す
ると、比較器5は「1」を出力する。この場合エンドフ
ラグが「1」であるので、アンドゲート6の出力は
「0」のまま変らず、アンドゲート7の出力が「1」と
なる。その結果、セレクタ23はB入力を選択し、セレク
タ24はA入力を選択するので、現在のカレントアドレス
すなわちエンドアドレスから1ピッチデータ分前のアド
レスが、カレントアドレスレジスタ25に再び書込まれア
ドレスの進歩が中止される。 従って補間の為に、カレントアドレスレジスタ25から
出力されるカレントアドレスの整数部データに「1」を
加算したアドレスを出力しても、エンドアドレスを越え
たアドレスが読出しアドレスとして出力されることがな
い。 以上のような動作をレジスタの各チャンネルについて
行うことにより、所定の最終アドレスを越えないように
読出しアドレスを制御することができる。 以上のように、各チャンネルの読出しアドレスピッチ
を決めるピッチデータと現在の読出しアドレスとの演算
結果が所定のループエンドアドレスあるいはエンドアド
レスに達しているかを判断し、所定の最終アドレスに達
すると、ループスタートアドレスを次の読出しアドレス
として出力するか、あるいはアドレスの演算を中止する
ので、実際に波形メモリ、補間回路などに出力される読
出しアドレスが所定のループエンドアドレスあるいはエ
ンドアドレスを越えないようにアドレスを制御すること
ができる。 〔発明の効果〕 以上述べた如く、本発明によれば、次の読出しアドレ
スを求めるために所定の最終アドレスと比較する際に、
実際波形の振幅データを読み出すために用いている記憶
手段に記憶された読出しアドレスを直接用いるのではな
く、演算手段手段により求められた読出しアドレスを用
いているので、メモリなどに出力される読出しアドレス
とそのアドレスを進歩させたアドレスとの間で補間を行
う場合でも、実際の読出しアドレスが所定の最終アドレ
スを越えないようにアドレスを制御することができ、不
要なデータが出力されるのを防ぐことができる。
The present invention relates to an address control device. [Prior art] Conventionally, address control devices used for electronic musical instruments and the like are:
A read address of the memory storing the amplitude data of the waveform is output, and it is determined whether or not the read address has reached a predetermined final address. When the read address has reached the final address, a predetermined start address is determined as the next read address. By repeatedly outputting the address or the read address at that time, loop reproduction or reading of a normal tone is performed. FIG. 2 is a circuit block diagram showing a circuit configuration of such a conventional address control device. In FIG. 1, a loop end address register 1 is composed of eight stages of shift registers for storing data of eight channels corresponding to, for example, eight tone polyphonics, and is composed of each shift register. Stores a loop end address consisting of bits. Then, address data supplied from a CPU (not shown) or the like is written into the shift register of each channel, and the written data is output in synchronization with the timing of the corresponding channel. The loop end address of the loop end address register 1 is output to the A input terminal of the selector 3. Hereinafter, other registers to be described later are similarly constituted by eight stages of shift registers. Each shift register has a storage capacity corresponding to the bit line of data to be written, and the written data is stored at the timing of the corresponding channel. Output synchronously. The end address register 2 is a register for storing a normal read end address of a musical tone, and the written end address is output to the B input terminal of the selector 3.
The selector 3 selects one of the A input and the B input according to the content of the end flag output from the end flag register 4 and outputs the selected input to the B input terminal of the comparator 5. The comparator 5 compares the current read address from the current address register 16 supplied to the A input terminal with the output of the selector 3 supplied to the B input terminal, and outputs the comparison result to AND gates 6 and 7. . The data of the end flag register 4 is supplied to the other input terminals of the AND gates 6 and 7. The selector 8 selects one of the output of the current address register 16 supplied to the A input terminal and the output of the loop start address register 9 supplied to the B input terminal in accordance with the control signal output from the AND gate 6, and Output to the A input terminal of the adder 15. The output of the AND gate 7 is input to the reproduction flag register 12 via the inverter 10 and the AND gate 11. Also, the address pitch data of the read address written in the pitch data register 13 and the reproduction flag register
The contents of 12 are supplied to the B input terminal of the full adder 15 via the group of AND gates 14. The full adder 15 adds the inputs of A and B, and outputs the addition result to the current address register 16. The current address register 16 stores the result of the addition and outputs the result to the half adder 17 and the selector 18. The selector 18 outputs the current address supplied to the B input terminal and the output of the half adder 17 obtained by adding the current address to +1 to a waveform memory, an interpolation circuit, etc. (not shown) at the timing synchronized with the selection signal CH. Next, the operation of the address control circuit having the above configuration will be described. Hereinafter, the operation will be described using one channel as an example.
When the content of the end flag register 4 of a certain channel is “0”, that is, when loop reproduction is performed, the selector 3 selects the loop end address of the A input and outputs it to the B input terminal of the comparator 5. Further, the current address output from the current address register 16, that is, the current read address is supplied to the A input terminal of the comparator 5, so that the two are compared, and if A <B, "0" is output. . Therefore, the outputs of the AND gates 6 and 7 become "0", and the selector 8 selects the current address of the A input and outputs it to the full adder 15. The current address is added to the pitch data from the pitch data register 13 by the full adder 15, and the addition result is written to the current address register 16 as the next read address. Then, the written address and the address obtained by adding +1 to the written address are selected by the selector 18, the written address is output at the first half timing of the corresponding channel, and the address is added to the +2 timing at the second half timing.
The set address is output to a waveform memory, an interpolation circuit, and the like. Thereafter, the interpolation circuit interpolates the amplitude data between the address and the next address. On the other hand, if the result of the comparison by the comparator 5 is A ≧ B,
That is, when the current read address reaches the loop end address, "1" is output from the comparator 5, and the output of the AND gate 6 becomes "1". Therefore, the selector 8 selects the loop start address of the B input and selects the full adder
Output to 15. Then, pitch data is added to the loop start address in the same manner as described above, and is written to the current register as the next read address. When the content of the end flag register 4 is “1”, that is, when a normal tone is read, the end address of the B input of the selector 3 is selected and output to the comparator 5. The comparator 5 compares the end address with the current address, and outputs “0” if the current address has not reached the end address. And, as in the case of the above-described loop reproduction, the address obtained by adding the pitch data is
Current address register 16 as next read address
Is written to. On the other hand, when the current address reaches the end address, "1" is output from the comparator 5, and since the end flag is "1", the output of the AND gate 6 becomes "0" and the output of the AND gate 7 becomes "0". The output becomes "1". Then, a signal “0” obtained by inverting the output of the AND gate 7 is written in the reproduction flag register 12. As a result, the AND gate group 14 closes, no pitch data is supplied to the full adder 15, and the current address reaching the end address is written into the current address register 16 again. As described above, this address control circuit compares the actually output read address with the loop end address or end address, and when the read address reaches the final address, outputs the loop start address and the like as the next read address. Was to do. Therefore, when the amplitude data of "0 to 8" as shown in FIG. 3 is stored in the memory and the amplitude data during that period is read, "8" is set in the end address register 2 as the end address. However, when the read address output from the current address register 16 reaches the end address “8”, for example, an address of “9” which is incremented by 1 is output for interpolation of amplitude data between the addresses. As a result, there is a problem that data that does not need to be read is read and the data is output as a musical tone. [Problems to be Solved by the Invention] As described above, when the read address output to the memory coincides with the last address of the waveform memory, the conventional address control device usually performs interpolation to perform interpolation. Although the amplitude data of the address is read, there is a problem that the address cannot be specified because no address exceeding the final address exists. Further, when the read address exceeds the last address of the waveform memory, there is a disadvantage that an address that does not exist is specified. Further, when the read address exceeds the loop end address, there is a problem that unnecessary amplitude data is specified. An object of the present invention is to control an address so as not to exceed a predetermined final address. [Means for Solving the Problems] The present invention provides a storage means for storing a read address for reading amplitude data of a waveform sampled at a predetermined cycle, and a predetermined address based on the read address stored in the storage means. And a predetermined read address output from the calculation means is compared with a predetermined final address, and the predetermined read address calculated by the calculation means is stored in the predetermined final address. If not reached, the calculated predetermined read address is stored in the storage means as the next address, and when the calculated predetermined read address reaches the predetermined final address, a predetermined start address is changed to the next address. Address control means for storing the read address in the storage means. [Operation] The operation of the present invention is as follows. The amplitude data of the waveform sampled at a predetermined cycle is read by the read address stored in the storage means. The calculating means calculates a predetermined read address based on the read address stored in the storage means. The predetermined read address is compared with a predetermined final address. If the calculated predetermined read address does not reach the predetermined final address, the calculated predetermined read address is stored in the storage means as the next address. When the calculated predetermined read address reaches the predetermined final address, the operation of storing the predetermined start address as the next read address in the storage means is repeated. Thus, when determining the next read address by comparing with the predetermined final address, the read address stored in the memory used for reading the amplitude data of the actual waveform is not directly used, but is calculated by the arithmetic means. Since the obtained read address is used, the read address can be controlled so as not to exceed a predetermined final address. Embodiment An embodiment of the present invention will be described below with reference to FIG. FIG. 1 is a circuit block diagram of an address control device of an electronic musical instrument. In the figure, components having the same configuration and operation as those of the conventional address control circuit of FIG. 2 are denoted by the same reference numerals, and detailed description is omitted. The pitch data register 21 is a register for storing an address pitch read from a waveform memory or the like (not shown), and is composed of eight stages of shift registers. Each shift register has an integer part data corresponding to an address on the waveform memory and a space between them. And the decimal part data for designating the address of the waveform memory. The decimal part data can specify an address pitch finer than the address pitch of the waveform memory. The full adder 22 is an AND gate group applied to the B input terminal.
The integer part data and the decimal part data of the pitch data output from 14 are added to the current address fed back from the current address register 25 supplied to the A input terminal, and the addition result is input to the selector 23 and the A input of the comparator 5. Output to terminal. The selector 23 selects one of the diffusion result and the output of the current address register 25 given to the B input terminal according to the output from the AND gate 7, and
Output to 24 A input terminals. Then, the selector 24 selects one of the output from the selector 23 and the output of the loop start address register 9 given to the B input terminal according to the output from the AND gate 6, and outputs it to the current address register 25 as the next read address. The current address register 25 is a register that stores integer part data and decimal part data of the current address of each channel,
The current address is output to the B input terminal of the selector 27 and is also output to the half adder 26. Half adder 26
Outputs the current address as +1 to the A input terminal of the selector 27. The selector 27 outputs A,
One of the inputs of B is selected, the current address of B input is output in synchronization with the first half timing of each channel, and the address obtained by adding +1 to the current address of A input in synchronization with the second half timing is stored in the waveform memory and interpolation. Output to circuit etc. Next, the operation of the address control circuit having the above configuration will be described. The operation for one channel will be described for simplicity. When the content of the end flag of a certain channel in the end flag register 2 is "0", that is, when loop reproduction is performed, the result of addition of the pitch data and the current address output from the full adder 22 and the selector 3 Are compared by the comparator 5 with the loop and address output from the. When the addition result has not reached the loop end address, "0" is output from the comparator 5, and the outputs of the AND gates 6 and 7 become "0". Therefore, both the selectors 23 and 24 select the A input, and the addition result of the full adder 22 which added the pitch data to the current current address is used as the next read address in the current address register.
Output to 25 and written. On the other hand, in the comparison by the comparator 5, when the addition result of the full adder 22 reaches the loop end address, the comparator 5 outputs “1”. In this case, the end plug is "0"
Therefore, the output of the AND gate 7 remains “0” and the output of the AND gate 6 becomes “1”. as a result,
The selector 24 selects the B input, outputs the loop end address to the current address 25 as the next read address, and the loop start address is written into the register. Therefore, since the current address register 25 outputs at most only one address before the loop end address, even if the selector 27 outputs an address obtained by adding "1" to the address for interpolation, the loop end address is output. And unnecessary amplitude data is not read out. When the content of the end flag register 2 is "1", that is, when a normal tone is read out, the comparator 5 compares the result of adding the current current address with the pitch data and the end address. When the addition result has not reached the end address, the selectors 23 and 24 select the A input as described above, and the result of adding the pitch data to the current current address is stored in the current address register as the next read address. Written. On the other hand, when the addition result of the full adder 22 reaches the end address, the comparator 5 outputs “1”. In this case, since the end flag is “1”, the output of the AND gate 6 remains “0”, and the output of the AND gate 7 becomes “1”. As a result, the selector 23 selects the B input and the selector 24 selects the A input. Therefore, the current current address, that is, the address one pitch data before the end address is written into the current address register 25 again, and Progress is stopped. Therefore, even if an address obtained by adding "1" to the integer part data of the current address output from the current address register 25 for interpolation is output, an address exceeding the end address is not output as a read address. . By performing the above operation for each channel of the register, the read address can be controlled so as not to exceed the predetermined final address. As described above, it is determined whether or not the operation result of the pitch data for determining the read address pitch of each channel and the current read address has reached a predetermined loop end address or end address. The start address is output as the next read address, or the calculation of the address is stopped, so that the read address actually output to the waveform memory, interpolation circuit, etc. does not exceed the predetermined loop end address or end address. Can be controlled. [Effects of the Invention] As described above, according to the present invention, when comparing with a predetermined final address to obtain the next read address,
Since the read address stored in the storage means used for reading the actual waveform amplitude data is not directly used but the read address obtained by the arithmetic means means is used, the read address output to the memory or the like is used. Address can be controlled so that the actual read address does not exceed a predetermined final address even when interpolation is performed between the address and an address obtained by advancing that address, thereby preventing unnecessary data from being output. be able to.

【図面の簡単な説明】 第1図は本発明の一実施例のアドレス制御装置の回路ブ
ロック図、 第2図は従来のアドレス制御装置の回路ブロック図、 第3図は楽音波形の一例を示す図である。 1……ループエンドアドレスレジスタ、 3,8,18,23,24,27……セレクタ、 5……比較器、 9……ループスタートアドレスレジスタ、 13,21……ピッチデータレジスタ、 15,22……全加算器、 16、25……カレントアドレスレジスタ、 17,26……半加算器.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a circuit block diagram of an address control device according to an embodiment of the present invention, FIG. 2 is a circuit block diagram of a conventional address control device, and FIG. FIG. 1 ... Loop end address register, 3,8,18,23,24,27 ... Selector, 5 ... Comparator, 9 ... Loop start address register, 13,21 ... Pitch data register, 15,22 ... ... full adder, 16, 25 ... current address register, 17, 26 ... half adder.

Claims (1)

(57)【特許請求の範囲】 1.所定周期でサンプリングされた波形の振幅データを
読み出すための読出しアドレスを記憶する記憶手段と、 該記憶手段に記憶された読出しアドレスに基づいて所定
の読出しアドレスを演算する演算手段と、 該演算手段から出力される所定の読出しアドレスと所定
の最終アドレスとを比較し、該演算手段にて演算された
所定の読出しアドレスが前記所定の最終アドレスに達し
ていないときには、当該演算された所定の読み出しアド
レスを次のアドレスとして前記記憶手段に記憶させ、当
該演算された所定の読み出しアドレスが前記所定の最終
アドレスに達したときには所定の開始アドレスを次の読
出しアドレスとして前記記憶手段に記憶させるアドレス
制御手段と、 を有するアドレス制御装置。
(57) [Claims] Storage means for storing a read address for reading amplitude data of a waveform sampled in a predetermined cycle; calculating means for calculating a predetermined read address based on the read address stored in the storage means; A predetermined read address to be output is compared with a predetermined final address, and when the predetermined read address calculated by the calculating means does not reach the predetermined final address, the calculated predetermined read address is compared with the predetermined read address. Address control means for storing in the storage means as a next address, and when the calculated predetermined read address reaches the predetermined final address, storing a predetermined start address in the storage means as a next read address; Address control device having:
JP62259048A 1987-10-14 1987-10-14 Address control device Expired - Lifetime JP2722463B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62259048A JP2722463B2 (en) 1987-10-14 1987-10-14 Address control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62259048A JP2722463B2 (en) 1987-10-14 1987-10-14 Address control device

Publications (2)

Publication Number Publication Date
JPH01101595A JPH01101595A (en) 1989-04-19
JP2722463B2 true JP2722463B2 (en) 1998-03-04

Family

ID=17328608

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62259048A Expired - Lifetime JP2722463B2 (en) 1987-10-14 1987-10-14 Address control device

Country Status (1)

Country Link
JP (1) JP2722463B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS623299A (en) * 1985-06-28 1987-01-09 ヤマハ株式会社 Tone signal generation
JPS6261096A (en) * 1985-09-11 1987-03-17 カシオ計算機株式会社 Waveform reader
JPS62173498A (en) * 1986-01-27 1987-07-30 松下電器産業株式会社 Voice recognition equipment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS623299A (en) * 1985-06-28 1987-01-09 ヤマハ株式会社 Tone signal generation
JPS6261096A (en) * 1985-09-11 1987-03-17 カシオ計算機株式会社 Waveform reader
JPS62173498A (en) * 1986-01-27 1987-07-30 松下電器産業株式会社 Voice recognition equipment

Also Published As

Publication number Publication date
JPH01101595A (en) 1989-04-19

Similar Documents

Publication Publication Date Title
JP2599363B2 (en) Loop region automatic determination device
JP2722463B2 (en) Address control device
JPS6356557B2 (en)
US5689079A (en) Musical tone generator
JP2536493B2 (en) Waveform reading device
JP3252296B2 (en) Waveform data output device
JPH0331273B2 (en)
JP2530695Y2 (en) Electronic musical instrument address controller
JPS6048760B2 (en) Note clock generator for electronic musical instruments
JP2605903B2 (en) Music synthesizer
JP3009300B2 (en) Arbitrary waveform generator
JP2940384B2 (en) Electronic musical instrument
JP2769690B2 (en) Delay device
KR940011874B1 (en) Tone generator of electrophonic musical instruments
JPH0544040B2 (en)
JPS6278599A (en) Musical tone signal generator
US4903564A (en) Musical tone waveform producing apparatus for electronic musical instrument
JP2716131B2 (en) Tone generator
JP2727931B2 (en) Waveform memory sound source
JP2790093B2 (en) Sound source device
KR920004968A (en) CD-ROM erasing bit storage method and circuit
JPH02179693A (en) Processor for electronic musical instrument
JPH0636028A (en) Histogram generating device
KR830000426B1 (en) Electronic musical instruments
KR960010268Y1 (en) Musical instrument tone waveform interpolating circuit

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term