JPH09292879A - Digital signal processor - Google Patents

Digital signal processor

Info

Publication number
JPH09292879A
JPH09292879A JP8129350A JP12935096A JPH09292879A JP H09292879 A JPH09292879 A JP H09292879A JP 8129350 A JP8129350 A JP 8129350A JP 12935096 A JP12935096 A JP 12935096A JP H09292879 A JPH09292879 A JP H09292879A
Authority
JP
Japan
Prior art keywords
program
coefficient
memory
data
signal processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8129350A
Other languages
Japanese (ja)
Inventor
Tsutomu Saito
勉 斉藤
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.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing 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 Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP8129350A priority Critical patent/JPH09292879A/en
Publication of JPH09292879A publication Critical patent/JPH09292879A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an acoustic effect adder capable of speeding up program switching when plural acoustic effects are added. SOLUTION: A program to be stored in a command ROM 2a is constituted so that plural sets of a main routine and an acoustic effect addition routine are stored, address data stored in a coefficient RAM 2c is latched when effects are switched from the outside, and further start address data is set to a program counter 20.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、複数の音響効果を
付加する音響効果付加装置に用いられるデジタルシグナ
ルプロセッサに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a digital signal processor used in a sound effect adding device for adding a plurality of sound effects.

【0002】[0002]

【従来の技術】所謂DSP(デジタル・シグナル・プロ
セッサ)を用いた音響効果付加装置としては、特開昭5
8−50595号に示されるように、1つのDSPで複
数の音響効果を時分割で付加するものがあった。
2. Description of the Related Art A sound effect adding apparatus using a so-called DSP (digital signal processor) is disclosed in Japanese Patent Laid-Open No.
As shown in No. 8-50595, some DSPs add a plurality of acoustic effects in a time division manner.

【0003】[0003]

【発明が解決しようとする課題】もともと上記構成で
は、付加する音響効果毎にCPU等の主演算回路からD
SPに対し、それに対応するプログラムを転送し、該プ
ログラムの全てをそっくりそのまま切り換えており、し
かもプログラムの転送はハンドシェイクによるシリアル
転送であるため、転送スピードが遅く、結果的に転送時
間が長くなる。またシステムにおける他の構成の制御と
の兼ね合いから、転送スピードがあまりに遅いという場
合には、同時に利用できるDSPの数が自ずと制限を受
けるため、付加できる音響効果の数に限界を来たし、こ
のような技術的限界に基づいて音楽的表現が制限されて
しまうといった問題もあった。
Originally, in the above-mentioned configuration, the main operation circuit such as the CPU is operated by D
The corresponding program is transferred to the SP, and all of the programs are switched as they are. Moreover, since the transfer of the program is serial transfer by handshake, the transfer speed is slow and the transfer time becomes long as a result. . Further, in consideration of control of other configurations in the system, if the transfer speed is too slow, the number of DSPs that can be simultaneously used is naturally limited, and thus the number of acoustic effects that can be added is limited. There was also a problem that musical expressions were limited based on technical limits.

【0004】本発明は従来技術の上記の問題を解決する
ため創案されたもので、複数の音響効果を付加する時の
プログラムの切替のスピードアップを達成できる音響効
果付加装置を提供せんとするものである。
The present invention was devised to solve the above-mentioned problems of the prior art, and an object of the present invention is to provide a sound effect adding device capable of speeding up program switching when a plurality of sound effects are added. Is.

【0005】[0005]

【課題を解決するための手段】そのため本発明のデジタ
ルシグナルプロセッサは、複数の異なる完結した処理プ
ログラムを内部に個別に記憶した不揮発性のプログラム
メモリと、前記処理プログラムが利用する係数データを
記憶可能な揮発性の係数メモリと、プリセット可能なプ
ログラムカウンタと、前記プログラムカウンタにプリセ
ットアドレスを供給するアドレスレジスタとを有し、前
記アドレスレジスタはリセット処理によって特定値に設
定されると共に、外部より変更可能であることを基本的
特徴としている。
Therefore, the digital signal processor of the present invention can store a non-volatile program memory in which a plurality of different completed processing programs are individually stored, and coefficient data used by the processing programs. Has a volatile coefficient memory, a presettable program counter, and an address register for supplying a preset address to the program counter. The address register is set to a specific value by a reset process and can be changed externally. Is a basic feature.

【0006】該構成においては、基本的な効果処理プロ
グラムをマスクROM化して命令プログラム(不揮発性
のプログラムメモリ)とすることにより、効果切り替え
時に外部の主演算回路から転送する情報は従来に比べて
格段に少なくなる。なお、前記プログラムカウンタにプ
リセットアドレスを供給するアドレスレジスタにつき、
リセット処理によって特定値に設定されるようにし、ま
た外部より変更可能な構成としたのは、マスクROM化
した全ての効果プログラムに対して、ランダムにアクセ
スできるようにして、音響効果の付加の態様の制限を少
なくして、所望の効果処理の選択ができるようにするた
めである。
In this configuration, the basic effect processing program is converted into a mask ROM and used as an instruction program (nonvolatile program memory), so that the information transferred from the external main arithmetic circuit at the time of effect switching is smaller than that in the prior art. Remarkably less. Regarding the address register that supplies the preset address to the program counter,
A specific value is set by the reset process, and the configuration that can be changed from the outside is such that all effect programs stored in the mask ROM can be randomly accessed to add an acoustic effect. This is because the desired effect treatment can be selected by reducing the limitation of.

【0007】また上記構成において、アドレスレジスタ
につき、係数メモリの内容を転送できる構成とすると良
い。このような構成とすることにより、クロスフェード
エンベロープ処理も効果の1つとみなし、特別な外部回
路を設けることなく、プログラム上で処理することがで
きるようになり、それによって効果切り替え時のノイズ
を削減しながらも、部品点数を増加せしめないで済むこ
とになる。
Further, in the above structure, it is preferable that the address register can transfer the contents of the coefficient memory. With this configuration, crossfade envelope processing can be regarded as one of the effects and can be processed by a program without providing a special external circuit, thereby reducing noise at the time of effect switching. However, it is not necessary to increase the number of parts.

【0008】請求項3記載のデジタルシグナルプロセッ
サは、複数の異なる完結した処理プログラムを内部に個
別に記憶した不揮発性の第1のプログラムメモリと、外
部から書き換え可能な第2プログラムメモリと、これら
の第1及び第2プログラムメモリを共通してアドレス制
御するプログラムカウンタとを有し、前記プログラムカ
ウンタはリセット処理にて最初に第2プログラムメモリ
を起動することを特徴としている。
According to another aspect of the digital signal processor of the present invention, a nonvolatile first program memory internally storing a plurality of different processing programs, a second program memory rewritable from the outside, and these It is characterized in that it has a program counter for controlling the addresses of the first and second program memories in common, and the program counter first activates the second program memory in a reset process.

【0009】上記構成では、基本的な効果処理プログラ
ムをマスクROM化して命令プログラムの一部(不揮発
性の第1のプログラムメモリ)とする(プログラムメモ
リを外部から書き換え可能なRAMと固定的なROMと
を用いたサブプログラム方式とした)ことにより、効果
切り替え時に外部の主演算回路から転送する情報は(主
に第2のプログラムメモリへの転送情報になるため)従
来に比べて格段に少なくなる。なお、プログラムカウン
タが、RAMとROMで構成されるプログラムメモリを
同列に処理しながらも、リセット処理にて最初に第2プ
ログラムメモリを起動させる構成としたのは、第2プロ
グラムメモリに書き込んで使用する効果プログラムが、
汎用的に使用されるものではなく付加しようとする音響
効果の種類によって選択されるもの(後述するサブプロ
グラム方式のメインルーチンとサブルーチンのうちメイ
ンルーチン等)であるため、使用時の優先順位を高くす
る必要があるからである。
In the above configuration, the basic effect processing program is masked into a ROM and used as a part of the instruction program (nonvolatile first program memory) (the program memory is externally rewritable RAM and fixed ROM). The information transferred from the external main arithmetic circuit at the time of effect switching is much smaller than the conventional one (because mainly transferred information to the second program memory). . Note that the program counter is configured to activate the second program memory first in the reset process while processing the program memory composed of the RAM and the ROM in the same row. The effect program to
Since it is not a general-purpose one but is selected according to the type of acoustic effect to be added (main routine of subprogram method and sub-routine to be described later, etc.), it has a high priority when used. It is necessary to do so.

【0010】また上記第2プログラムメモリにつき、そ
の容量が、入力信号のサンプリング周波数で処理可能な
ステップ数よりも格段に少ない構成とするのが普通であ
る。後記の図3に示すように、DSPのメインルーチン
の処理は、2つのエフェクト(効果)プログラムに対し
て入力楽音信号をどのように通過させるかを制御するこ
とのみであり、例えばDSPの1サンプリング内に処理
可能なステップ数を500ステップとした場合には、メ
インルーチン:60ステップ、音響効果付加ルーチンf
1:220ステップ、音響効果付加ルーチンf2:22
0ステップで、合計500ステップ程度の割合になる。
もちろん効果の種類の中には上記220ステップほど必
要なく100ステップ程度で処理が完了するものもある
が、後述のL/R入出力タイミングを保持するために約
200ステップになるように待たせてリターンするよう
にしている。
Further, it is usual that the capacity of the second program memory is significantly smaller than the number of steps that can be processed at the sampling frequency of the input signal. As shown in FIG. 3 described later, the processing of the DSP main routine is only to control how to pass the input musical tone signal to two effect programs, and for example, one sampling of the DSP. If the number of steps that can be processed is 500, the main routine is 60 steps, and the sound effect addition routine f
1: 220 step, sound effect addition routine f2: 22
With 0 steps, the total is about 500 steps.
Of course, there are some types of effects that require about 220 steps and the processing is completed in about 100 steps. However, in order to hold the L / R input / output timing, which will be described later, wait about 200 steps. I try to return.

【0011】請求項5記載のデジタルシグナルプロセッ
サは、複数の異なる完結した処理プログラムを内部に個
別に記憶した不揮発性のプログラムメモリと、前記処理
プログラムが固定的に利用する係数データを個別に記憶
した不揮発性の第1係数メモリと、前記処理プログラム
が利用する書き換え可能な係数データを共同して記憶す
る揮発性の第2係数メモリとを有し、前記第2係数メモ
リはリセット処理中またはそれ以前に外部から書き込ま
れることを特徴としている。
According to another aspect of the digital signal processor of the present invention, a non-volatile program memory internally storing a plurality of different completed processing programs and coefficient data fixedly used by the processing programs are individually stored. It has a non-volatile first coefficient memory and a volatile second coefficient memory which jointly stores rewritable coefficient data used by the processing program, and the second coefficient memory is under reset processing or before reset processing. It is characterized by being written from the outside.

【0012】上記構成では、基本的な効果処理プログラ
ムをマスクROM化して命令プログラム(不揮発性のプ
ログラムメモリ)とするだけでなく、処理プログラムが
固定的に利用する係数データを不揮発性の第1係数メモ
リに個別に記憶せしめたことにより、効果切り替え時に
外部の主演算回路から転送する情報は(主に第2の計数
メモリへの転送情報になるため)従来に比べて格段に少
なくなる。
In the above structure, not only the basic effect processing program is converted into the mask ROM to be used as the instruction program (nonvolatile program memory), but also the coefficient data fixedly used by the processing program is stored in the nonvolatile first coefficient. Since they are individually stored in the memory, the information transferred from the external main arithmetic circuit at the time of effect switching (being mainly transferred information to the second counting memory) is much smaller than in the conventional case.

【0013】請求項6記載のデジタルシグナルプロセッ
サは、複数の異なる完結した処理プログラムを内部に個
別に記憶した不揮発性の第1のプログラムメモリと、外
部から書き換え可能な第2プログラムメモリと、前記処
理プログラムが固定的に利用する係数データを個別に記
憶した不揮発性の第1係数メモリと、前記処理プログラ
ムが利用する書き換え可能な係数データを共同して記憶
する揮発性の第2係数メモリと、前記第1及び第2プロ
グラムメモリを共通してアドレス制御するプログラムカ
ウンタとを有し、該プログラムカウンタはリセット処理
にて最初に第2プログラムメモリを起動すると共に、前
記第2係数メモリはリセット処理中またはそれ以前に外
部から書き込まれることを特徴としている。これは前述
の請求項5の構成のうち、処理プログラム部分の構成を
請求項3の処理プログラム部分の構成と同一にしたもの
である。
According to a sixth aspect of the present invention, there is provided a digital signal processor in which a plurality of different and completed processing programs are individually stored in a nonvolatile first program memory, an externally rewritable second program memory, and the processing. A non-volatile first coefficient memory that individually stores coefficient data that is fixedly used by a program; and a volatile second coefficient memory that jointly stores rewritable coefficient data that is used by the processing program; And a program counter that controls the addresses of the first and second program memories in common, the program counter first starts the second program memory in the reset process, and the second coefficient memory is in the reset process or It is characterized by being written from the outside before that. This is the same as the configuration of the processing program portion of claim 3 in the configuration of the processing program portion of the configuration of claim 5 described above.

【0014】前記各処理プログラムの出力段にて処理さ
れた値にエンベロープを付加するための係数データを、
前記係数メモリに記憶し、処理プログラムが切り換えら
れる時には一度そのエンベロープを下げるようにすると
良い。このような構成とすることにより、切り換え時の
不正確な値が出力されないようになる。
Coefficient data for adding an envelope to the value processed at the output stage of each processing program is
It is preferable to store the coefficient in the coefficient memory and lower the envelope once when the processing program is switched. With such a configuration, an incorrect value at the time of switching will not be output.

【0015】[0015]

【発明の実施の形態】図1は、本発明のデジタルシグナ
ルプロセッサを使用して構成された音響効果付加装置の
1実施形態構成を備えた電子楽器のブロック図を示して
いる。同図において、100はパネル操作子・パネル操
作表示ブロックを示しており、電子楽器のパネルにてユ
ーザ(演奏者)が操作した内容を取り込むと同時に、後
述するマスタCPU10の指令に基づいてその時の電子
楽器の状態(例えばエフェクト結線の状態)を表示す
る。鍵スイッチブロック101は、キースイッチのオン
オフ情報をキーベロシティと共に取り込み、マスタCP
U10に送る。MIDI入出力ブロック102は、マス
タCPU10が処理した内容(キーオン・オフ、音色ナ
ンバ変更やエフェクト変更等の各種情報)を出力すると
共に、MIDI入力された情報をマスタCPU10に送
る。FD入出力ブロック103は、マスタCPU10の
所有する各種情報(演奏情報、パネルレジスト情報、エ
フェクト情報等)を、フレキシブルディスク等の外部記
憶媒体に保存したり、そこから読み出したりする。RA
M104は、マスタCPU10のワーキングRAMであ
ると同時に、自動演奏パターンや自動伴奏パターンの格
納エリアでもある。ROM105は、マスタCPU10
のプログラムを格納しておくと同時に、請求項3の実施
形態の構成の場合は、後述するDSPのプログラムを記
憶しておく(もちろんDSPのプログラムは外部記憶媒
体から読み込まれてRAM104に記憶しておくことも
可能である)。他方DSPの各種効果プログラムに用い
られる係数データも、該ROM105に格納される。な
お、このROM105は、フラッシュメモリ等で代用さ
せることもできる。マスタCPU10は、同実施形態構
成においては電子楽器の全てを統括する本発明の主演算
回路を構成しており、電源投入後のパネル初期設定、R
AM104の初期設定、後述するDSP1の初期設定
(イニシャルローダ)も行う。またパネルにて音色が変
更されれば、対応するパラメータを後述する音源回路1
06に送り、キーオンオフがあれば、そのアサイン結果
に基づき該音源回路106の対応するCHの状態を更新
させる。更にパネルにて新たな効果が選択され又は新た
な効果の連結が選択された時も、ROM105に記憶さ
れている対応するプログラム(但し後述するように連結
変更の場合には係数データのみ)や係数データをDSP
1へ転送する。音源回路106は、前記マスタCPU1
0の制御下におかれて、同時に32DCO(デジタル・
コントロールド・オシレータ)の発音が可能であり、波
形生成方法に特に限定はないが、例えばPCM波形読み
出しによる方法やサイン合成法で発音が行われる。ここ
で作られた32音は2つの出力系列に対し、夫々独立し
たミキシングレートで乗算された後、系列毎に32DC
O分加算されて、OUT1及びOUT2から出力され
る。このOUT1及びOUT2の出力は、シリアルのス
テレオ出力であり、一般的にCD(コンパクトディス
ク)で使用されているCDFフォーマットに準じてい
る。従ってこれら出力OUT1及びOUT2は、DSP
1を介さずに、ミキシングさえされれば、DAC(デジ
タル・アナログ・コンバータ)107a乃至107bの
入力フォーマットと同じなので、DAC107a乃至1
07bに直接接続することができる。
FIG. 1 is a block diagram of an electronic musical instrument having an embodiment of a sound effect adding apparatus constructed using the digital signal processor of the present invention. In the figure, reference numeral 100 designates a panel operator / panel operation display block, which captures the contents operated by the user (player) on the panel of the electronic musical instrument, and at the same time, based on a command from a master CPU 10 described later. The state of the electronic musical instrument (for example, the state of effect connection) is displayed. The key switch block 101 takes in the on / off information of the key switch together with the key velocity, and outputs the master CP.
Send to U10. The MIDI input / output block 102 outputs the contents processed by the master CPU 10 (various kinds of information such as key-on / off, tone color number change, effect change, etc.), and sends the MIDI input information to the master CPU 10. The FD input / output block 103 stores various types of information (performance information, panel registration information, effect information, etc.) possessed by the master CPU 10 in an external storage medium such as a flexible disk or reads it from there. RA
M104 is a working RAM of the master CPU 10 and at the same time a storage area for automatic performance patterns and automatic accompaniment patterns. The ROM 105 is the master CPU 10
At the same time as storing the above program, in the case of the configuration of the embodiment of claim 3, a DSP program to be described later is stored (of course, the DSP program is read from an external storage medium and stored in the RAM 104). It is possible to put it). On the other hand, the coefficient data used for various effect programs of the DSP are also stored in the ROM 105. The ROM 105 can be replaced with a flash memory or the like. In the configuration of the embodiment, the master CPU 10 constitutes the main arithmetic circuit of the present invention that controls all of the electronic musical instruments, and performs panel initialization after power-on, R
Initial setting of AM 104 and initial setting of DSP 1 (initial loader) described later are also performed. When the tone color is changed on the panel, the corresponding parameter is set to the tone generator circuit 1 described later.
If the key is turned on and off, the state of the corresponding CH of the tone generator circuit 106 is updated based on the assignment result. Furthermore, when a new effect is selected or a new effect connection is selected on the panel, the corresponding program stored in the ROM 105 (however, only the coefficient data in the case of connection change as described later) and the coefficient Data to DSP
Transfer to 1. The tone generator circuit 106 is the master CPU 1
32DCO (digital
Controlled oscillator) can be produced, and the waveform generation method is not particularly limited. For example, the PCM waveform readout method or the sine synthesis method is used. The 32 sounds created here are multiplied by independent mix rates for the two output sequences, and then 32DC for each sequence.
O is added and output from OUT1 and OUT2. The outputs of OUT1 and OUT2 are serial stereo outputs and conform to the CDF format generally used for CDs (compact discs). Therefore, these outputs OUT1 and OUT2 are
The input format of the DAC (digital-analog converter) 107a or 107b is the same as that of the DAC 107a to 107b as long as the data is mixed without going through 1.
It can be directly connected to 07b.

【0016】DSP1は、外部RAM(例えば1Mbi
tDRAM×2)を制御下において、楽音信号に種々の
音響効果を付加する。該DSP1は2入力2出力からな
り、それぞれがステレオ信号である。このDSPの内部
構成は、請求項1の一実施形態構成として図2に示すよ
うになっており、内部の命令記憶部に相当する命令RO
M2aに格納されるプログラム及びマスタCPU10か
ら転送され、係数RAM2bに格納される係数データに
基づき、データRAM2c内に格納された楽音信号に対
し、1サンプルタイム(約44.1KHz)内に複数の
効果付加プログラムを時分割処理する。即ち命令ROM
2aに記憶されるプログラムは、図に示すようにメイン
ルーチンと音響効果付加ルーチンのセットが複数格納さ
れて構成されており、外部から効果を切り替える時には
係数RAM2c(その他データRAMであっても良い)
に格納されたアドレスデータがスタートアドレスデータ
としてラッチされる(マスタCPU10がいきなりスタ
ートアドレスデータへ書き込んでも良い)。DSP1は
現在のプログラムの最後に到達すると、そこでベクター
ジャンプを行う命令を出す。デコーダはそのベクタージ
ャンプを受けると、そのタイミングで係数RAM2cの
対応アドレスをCバスに出し、その次のタイミングでス
タートアドレスデータにロードされる。そのアドレスは
そのままプログラムカウンタにロードされて、更に次の
タイミングにて命令ROM2aをそのアドレスでアクセ
スし、新たな効果プログラムに移ることになる。このよ
うに効果プログラムはデコーダで解読されて、DSP内
の制御を行なうことになる。他方音源回路106から入
力された楽音信号は、データRAM2c内に格納され、
前述のように、マスタCPU10から転送された係数デ
ータは係数RAM2bに格納される。そして前記制御命
令により、係数データがCレジスタ3aに、楽音信号の
データがDレジスタ3bに順次格納され、乗算器4で両
レジスタ内の積が求められ、一旦Pレジスタ5に格納さ
れる。該乗算値は、Yレジスタ7に格納されゲート8を
介して戻された従前の加算値と共に、加算器6で加算さ
れ、Yレジスタ7内に格納され、これらが必要な回数繰
り返される。これらの乗算・加算処理の終了した信号
は、選択器9から上位24bitだけ(倍精度の場合だ
け下位24bitも使用される)データRAM2cに格
納され、格納された信号に対し再び別の音響効果の付加
処理が行われるか、格納された信号とは別に他の楽音信
号に対し別の音響効果の付加処理が行われるか、更には
SIO1、SIO2のSout1乃至Sout2から出
力されることになる。このDSP1への楽音信号の入力
は、SIO1乃至2を使用し、DSPからの効果付加信
号の出力はSIO1乃至2を使用して行われる。
The DSP 1 is an external RAM (for example, 1 Mbi).
Under control of tDRAM × 2), various sound effects are added to the tone signal. The DSP 1 has two inputs and two outputs, each of which is a stereo signal. The internal configuration of the DSP is as shown in FIG. 2 as the configuration of one embodiment of claim 1, and the instruction RO corresponding to the internal instruction storage unit is provided.
Based on the program stored in the M2a and the coefficient data transferred from the master CPU 10 and stored in the coefficient RAM 2b, a plurality of effects can be obtained within one sample time (about 44.1 KHz) for the tone signal stored in the data RAM 2c. The additional program is time-shared. That is, instruction ROM
As shown in the figure, the program stored in 2a is configured by storing a plurality of sets of a main routine and a sound effect addition routine, and a coefficient RAM 2c (may be other data RAM) when switching the effect from the outside.
The address data stored in the start address data is latched as the start address data (the master CPU 10 may immediately write the start address data). When DSP1 reaches the end of the current program, it issues an instruction to perform a vector jump there. When the decoder receives the vector jump, it outputs the corresponding address of the coefficient RAM 2c to the C bus at that timing, and the start address data is loaded at the next timing. The address is loaded as it is into the program counter, and at the next timing, the instruction ROM 2a is accessed by the address to shift to a new effect program. In this way, the effect program is decoded by the decoder and the control in the DSP is performed. On the other hand, the tone signal input from the tone generator circuit 106 is stored in the data RAM 2c,
As described above, the coefficient data transferred from the master CPU 10 is stored in the coefficient RAM 2b. Then, the coefficient data is sequentially stored in the C register 3a and the data of the tone signal is sequentially stored in the D register 3b by the control command, and the product of both registers is obtained by the multiplier 4 and temporarily stored in the P register 5. The multiplication value is added by the adder 6 together with the previous addition value stored in the Y register 7 and returned through the gate 8 and stored in the Y register 7, and these are repeated as many times as necessary. The signals for which the multiplication / addition processing has been completed are stored in the data RAM 2c from the selector 9 only in the upper 24 bits (the lower 24 bits are also used only in the case of double precision), and the stored signals are processed by another acoustic effect again. Whether additional processing is performed, or another acoustic effect is added to another musical tone signal separately from the stored signal, and further, it is output from Sout1 and Sout2 of SIO1 and SIO2. Input of the tone signal to the DSP 1 is performed using SIO 1 and 2, and output of the effect addition signal from the DSP is performed using SIO 1 and 2.

【0017】DAC107a乃至107bは、汎用のデ
ジタルアナログ変換器であり、その出力信号はアンプを
通してスピーカから出力される。
The DACs 107a and 107b are general-purpose digital-analog converters, and their output signals are output from speakers through an amplifier.

【0018】本実施形態では、入力される楽音信号に付
加される音響効果は、そのままであれば命令ROM2a
内に格納されている複数の効果プログラムのシーケンス
に限定されてしまって、本来その変更は不可能になって
しまうが、図2に示すように、上記構成以外にプリセッ
ト可能なプログラムカウンタ20と、前記プログラムカ
ウンタ20にプリセットアドレスを供給するアドレスレ
ジスタ21とを有しており、前記アドレスレジスタ21
はリセット処理によって特定値をスタートアドレスとし
て設定すると共に、外部より変更できるようにしてある
ため、マスクROM化した効果プログラムを自由に組み
合わせることができるようになり、所望の効果処理の選
択ができることになる。このように基本的な効果処理プ
ログラムを命令ROM2aに格納することにより、音響
効果切り替え時に外部のマスタCPU10から転送する
情報は従来に比べて格段に少なくなる。また付加しよう
とする効果プログラムを直列的に処理するか並列的に処
理するかの変更は、係数データに基づいて行っているた
め、係数RAM2bに格納される転送データの変更を行
うことで、種々の音響効果の付加を重畳的に行うか、又
は複数の音響効果の付加を同時並行して行うかの選択が
できるようになる。その場合は次に示すように、DSP
1内における係数データ変更による結線変更を行うこと
によって、更にデータ転送量を少ないものにしている。
In the present embodiment, if the acoustic effect added to the input musical tone signal remains unchanged, the instruction ROM 2a.
Since it is limited to a sequence of a plurality of effect programs stored in it, and the change is essentially impossible, as shown in FIG. 2, a presettable program counter 20 other than the above configuration, And an address register 21 for supplying a preset address to the program counter 20.
Since a specific value is set as a start address by a reset process and can be changed from the outside, it is possible to freely combine the effect programs in the mask ROM and to select a desired effect process. Become. By storing the basic effect processing program in the instruction ROM 2a as described above, the information transferred from the external master CPU 10 at the time of sound effect switching is significantly smaller than that in the conventional case. Further, since the change of whether the effect program to be added is processed serially or in parallel is made based on the coefficient data, various changes can be made by changing the transfer data stored in the coefficient RAM 2b. It is possible to select whether to add the sound effect of (1) in a superimposed manner or to add a plurality of sound effects simultaneously in parallel. In that case, as shown below, DSP
The amount of data transfer is further reduced by changing the connection by changing the coefficient data within 1.

【0019】図3は、音源回路106の出力OUT1及
び2がDSP1を経由してDAC107a乃至107b
へ到達するまでのDSP内のメインルーチンのシグナル
フローを示している。図中f1とf2は、DSP1で処
理される2つの音響効果付加ルーチン(処理)を示し、
この2つの音響効果付加ルーチンは直列に結線されるか
或いは並列に結線されるかのいずれかになる。
In FIG. 3, the outputs OUT1 and 2 of the tone generator circuit 106 are routed through the DSP1 to the DACs 107a and 107b.
7 shows the signal flow of the main routine in the DSP until the signal reaches the. In the figure, f1 and f2 represent two acoustic effect addition routines (processes) processed by the DSP1,
These two sound effect adding routines are either connected in series or in parallel.

【0020】これらの結線の変更は、DSP内のメイン
フローの係数データを変更(例えば0H←→7FFF
H)することで行われる。この係数データは、16bi
t2進数にて形成され、2の補数として扱われるため、
その取り得る値は、下記表1に示す通りである。同表に
示すように、その最大値は7FFFHであり、その値を
用いて乗算をした場合には、DSP内部にて、3276
7/32768=0.99996948…という値を乗
算したことになる。この値は略1であるため、本実施形
態では7FFFHをもってスルーとしている。
To change these connections, change the main flow coefficient data in the DSP (for example, 0H ← → 7FFF).
H). This coefficient data is 16 bi
It is formed by t binary number and is treated as two's complement.
The possible values are as shown in Table 1 below. As shown in the table, the maximum value is 7FFFH, and when multiplication is performed using that value, 3276 is set inside the DSP.
It means that the value of 7/32768 = 0.999969948 ... Is multiplied. Since this value is approximately 1, 7FFFH is used as the through in this embodiment.

【0021】[0021]

【表1】 [Table 1]

【0022】図3に示すように、このDSPでは、2入
力(Sin1、Sin2)を得て、2つの効果付加(f
1とf2)を通して2出力(Sout1〜Sout2)
する。このフローに示されたように、DSPは、直列乃
至並列の結線パターンのいずれもが、係数データ(右向
き矢視の△で示す)の調整のみで行えるように汎用化し
たものが用いられている(DSP1内のf1とf2の夫
々で係数データの調整により行われる)。
As shown in FIG. 3, this DSP obtains two inputs (Sin1, Sin2) and adds two effects (f
2 outputs (Sout1 and Sout2) through 1 and f2)
I do. As shown in this flow, a general-purpose DSP is used so that any of serial or parallel connection patterns can be adjusted only by adjusting coefficient data (shown by Δ in the right-pointing arrow). (Performed by adjusting coefficient data in each of f1 and f2 in DSP1).

【0023】直列に結線される場合は、Sin1から入
力され、f1で所定の効果が付加された信号は、係数C
11を7FFFHとすることでスルーせしめられ、係数
C41及びC51を0Hと係数C21を7FFFHとす
ることで、f2の入力側に流れる。ここでSin2か
ら、係数C22を7FFFHとすることで入力されてき
た信号を、加算器で加算して、f2で更に音響効果を付
加する。次に係数C31と、係数C42か又は係数C5
2を、7FFFHとすると、Sout1又はSout2
から信号が出力される(但し係数C52又は係数C42
は0Hに変更される)。
In the case of serial connection, the signal input from Sin1 and added with the predetermined effect at f1 is the coefficient C.
By setting 11 to 7FFFH, it is possible to pass through. By setting the coefficients C41 and C51 to 0H and the coefficient C21 to 7FFFH, the current flows to the input side of f2. Here, the signal input from Sin2 by setting the coefficient C22 to 7FFFH is added by the adder, and the acoustic effect is further added at f2. Next, coefficient C31 and coefficient C42 or coefficient C5
If 2 is 7FFFH, Sout1 or Sout2
The signal is output from (however, coefficient C52 or coefficient C42
Is changed to 0H).

【0024】他方並列に結線される場合は、係数C22
を7FFFH、係数C21を0Hとして、Sin1及び
Sin2から別個に入力された信号にf1及びf2の効
果をかけ、係数C11、C31、C51、C52(C1
1、C31、C41、C42)を7FFFHとし、係数
C41、C42(C51、C52)を0Hとすること
で、Sout2(Sout1)から信号が出力される。
On the other hand, when the wires are connected in parallel, the coefficient C22
Is 7FFFH and the coefficient C21 is 0H, the effects of f1 and f2 are applied to the signals separately input from Sin1 and Sin2, and the coefficients C11, C31, C51, C52 (C1
1, C31, C41, C42) is set to 7FFFH and the coefficients C41, C42 (C51, C52) are set to 0H, so that a signal is output from Sout2 (Sout1).

【0025】もちろん各音響効果処理をスルーさせるこ
ともできるが、その場合f1側の処理では係数C11を
0H、C12を7FFFHとすることで、またf2側の
処理では係数C31を0H、C32を7FFFHとする
ことで可能となる。本構成では、アドレスレジスタ21
により、係数メモリ2bの内容を転送できる構成として
おり、クロスフェードエンベロープ処理も効果の1つと
みなし、特別な外部回路を設けることなく、プログラム
上で処理することができるようにした。この時係数C1
1とC12との間、係数C31とC32との間で相補的
に係数データの増減を緩やかに行えば、音響効果処理の
かけられた信号と該処理のかけられていない信号とを、
クロスフェードさせることが可能となる(同様にスルー
状態から新たな音響効果が付加された楽音信号を出力す
る状態に変更する時も、以上のようなクロスフェードを
行うことが可能である)。
Of course, each sound effect process can be passed through, but in that case, the coefficient C11 is 0H and C12 is 7FFFH in the process on the f1 side, and the coefficient C31 is 0H and C32 is 7FFFH in the process on the f2 side. It becomes possible by In this configuration, the address register 21
Thus, the contents of the coefficient memory 2b can be transferred, the crossfade envelope processing is regarded as one of the effects, and the processing can be performed on a program without providing a special external circuit. Coefficient C1 at this time
If the coefficient data is gradually increased or decreased complementarily between 1 and C12 and between the coefficients C31 and C32, the sound effect processed signal and the unprocessed signal are
It is possible to cross-fade (also, when changing from the through state to the state of outputting a musical tone signal to which a new acoustic effect is added, the above-described cross-fade can be performed).

【0026】また係数C11、C12、C31、C32
にてクロスフェードさせる場合、従来はマスタCPU1
0が係数C11、C12、C31、C32へ直接何度も
値を送出することで行っていたが、DSPの処理能力が
増すにつれ、次のようにDSP自体の演算によって係数
値をクロスフェードさせることも可能である。その場合
には、マスタCPU10は、上記各係数をどのくらい加
算値(または減算値)でクロスフェード演算させたいか
の値を係数としてDSPへ送出することになる。例えば
マスタCPU10がC'11=0001H(+1)、C'
12=FFFFH(−1)という係数データを送出する
と、DSPは、C11←C'11+C11、C12←C'
12+C12という演算をmax(7FFFH)または
min(000H)になるまで繰り返し演算して、その
演算結果を係数RAM2bに戻しておく。更に係数C2
1、C22の間やC41、C42の間、C51、C52
の間でも択一の場合は、上記クロスフェードを実行させ
ると良い。尚図3の中のt1〜t6は、DSPが演算結
果を一時的に格納するテンポラリレジスタを示してい
る。
Further, the coefficients C11, C12, C31, C32
If you want to crossfade with the master CPU1
0 has sent the value directly to the coefficients C11, C12, C31, C32 many times, but as the processing capability of the DSP increases, the coefficient value is cross-faded by the operation of the DSP itself as follows. Is also possible. In that case, the master CPU 10 sends to the DSP, as a coefficient, a value indicating how much the above coefficients should be added (or subtracted) for the crossfade operation. For example, if the master CPU 10 has C'11 = 0001H (+1), C '
When the coefficient data 12 = FFFFH (-1) is transmitted, the DSP causes C11 ← C'11 + C11, C12 ← C '.
The calculation of 12 + C12 is repeatedly calculated until max (7FFFH) or min (000H), and the calculation result is returned to the coefficient RAM 2b. Further coefficient C2
Between C1 and C22, between C41 and C42, C51 and C52
If there is an alternative between the two, it is advisable to execute the crossfade. Note that t1 to t6 in FIG. 3 indicate temporary registers in which the DSP temporarily stores the calculation result.

【0027】図4はDSPのメインフローをフローチャ
ート形式で表現したものである。ポーリング110は、
音源回路106の送出するWS(ワードセレクト)信号
の立ち上がりエッヂを検出し、楽音信号の1周期が始ま
ることを検出している。
FIG. 4 is a flow chart showing the main flow of the DSP. Poll 110
The rising edge of the WS (word select) signal sent from the tone generator circuit 106 is detected to detect the start of one cycle of the tone signal.

【0028】Rch入力120は、図3におけるSin
1及びSin2からの信号を、レジスタin1及びin
2へ、in1R+1、in2R+1として取り込み、R
ch出力130は、図3におけるSout1、Sout
2へ、出力側のテンポラリレジスタot1及びot2か
ら、ot1R−1、ot2R−1の信号データを出力す
る。
The Rch input 120 is the Sin in FIG.
The signals from 1 and Sin2 are transferred to registers in1 and in
2 is taken in as in1R + 1, in2R + 1 and R
The ch output 130 is Sout1, Sout in FIG.
The signal data of ot1R-1 and ot2R-1 are output from the temporary registers ot1 and ot2 on the output side to 2.

【0029】F1スルー140は、効果プログラムのフ
ローを通常通り通過させる(効果付加の処理を行わせ
る)か、又は音響効果の変更による事前処理のため、該
音響効果プログラムをスルーさせるか否かをチェックす
る。音響効果の変更があった場合、係数RAM2bやデ
ータRAM2cのクリア等の事前処理がなされるため、
効果プログラムの処理を行うと、該処理が暴走するかま
たは大きな雑音を発生する危険性があるからである。こ
のスルーさせるか否かを知らせる情報は、マスタCPU
10が係数RAM2bのあるアドレスの値を変更して行
っても良いし、マスタCPU10からダイレクトにDS
Pの汎用入力ポート(図示せず)へ信号を送っても良
い。
The F1 through 140 indicates whether the flow of the effect program is passed through normally (effect addition processing is performed) or whether the sound effect program is passed through due to pre-processing by changing the sound effect. To check. When the acoustic effect is changed, pre-processing such as clearing the coefficient RAM 2b and the data RAM 2c is performed.
This is because if the processing of the effect program is performed, the processing may run away or generate a large amount of noise. The information that informs whether or not to allow this through is the master CPU.
10 may change the value of a certain address in the coefficient RAM 2b, or the master CPU 10 may directly change the DS value.
Signals may be sent to the P general purpose input port (not shown).

【0030】F1スルーでない通常の時は、callF
1(141)に進み、ここから効果プログラムをコールす
る。この効果プログラムのコールは、命令ROM2aの
格納エリアに複数記憶されたメインルーチンと音響効果
付加ルーチンのセットの中から、プログラムカウンタ2
0により選択される。選択可能な音響効果プログラム
は、全合計で前記命令ROM2aの所定格納エリア内に
納まるものでなければならない。そして音響効果付加ル
ーチンf1処理後の信号データの流れは、図3に示すよ
うに、右入力については、テンポラリレジスタt1に記
憶された右信号データt1Rに係数C12のデータを乗
算し、またテンポラリレジスタt2に記憶された右信号
データt2Rに係数C11のデータを乗算して、両値を
加算し、それをテンポラリレジスタt3の右信号データ
t3Rとして記憶させる(t3R←t1R×C12+t
2R×C11)。左入力についても同様である(t3L
←t1L×C12+t2L×C11)。他方テンポラリ
レジスタt3に記憶された信号データt3R、t3L
は、更に係数C21のデータが乗算され、また前記レジ
スタin2に記憶された信号データin2R、in2L
に係数C22のデータを乗算して、両値を加算し、それ
をテンポラリレジスタt4の信号データt4R、t4L
として記憶させる(t4R←t3R×C21+in2R
×C22、t4L←t3L×C21+in2L×C2
2)。
In normal times, which is not F1 through, callF
Go to 1 (141) and call the effect program from here. This effect program is called by calling the program counter 2 from the set of the main routine and the sound effect adding routine which are stored in the storage area of the instruction ROM 2a.
Selected by 0. The total sound effect programs that can be selected must be stored in a predetermined storage area of the instruction ROM 2a. The flow of the signal data after the processing of the sound effect adding routine f1 is, as shown in FIG. 3, for the right input, the right signal data t1R stored in the temporary register t1 is multiplied by the data of the coefficient C12. The right signal data t2R stored at t2 is multiplied by the data of the coefficient C11, both values are added and stored as the right signal data t3R of the temporary register t3 (t3R ← t1R × C12 + t
2RxC11). The same applies to the left input (t3L
← t1L × C12 + t2L × C11). On the other hand, the signal data t3R and t3L stored in the temporary register t3
Is further multiplied by the data of the coefficient C21 and the signal data in2R, in2L stored in the register in2.
Is multiplied by the data of the coefficient C22, both values are added, and the resulting values are added to the signal data t4R, t4L
Memorize as (t4R ← t3R × C21 + in2R
× C22, t4L ← t3L × C21 + in2L × C2
2).

【0031】またF1スルーの場合は、音響効果プログ
ラムをスルーする前に、F1と同程度のステップ数だけ
ウェイトをかけるために、F1相当delay142に
進む。ここでは、例えばDSPに内蔵されたループ命令
を用いて必要なステップ数だけループさせる(係数RA
M2bに書かれているF1のステップ数をロードし、そ
の数だけディレイさせる)。このループは、ここで使用
したDSPでは冗長な機能が省略されていて、R信号と
L信号の入出力は同じポートにて、図5のDSP入出力
タイミングを表したタイムチャートに示されるように、
WS信号の立ち上がり(又は立ち下がり)から所定時間
(シリアルデータR0、L0処理時間相当)内に行わな
ければならないことに起因する。そして前述のように、
音響効果付加処理の行われていない楽音信号との間で、
クロスフェード処理を行い、更に該楽音信号と新たな音
響効果が付加された楽音信号との間でクロスフェード処
理を行って、音響効果の変更処理を終了する。
In the case of F1 through, before the audio effect program is passed through, in order to apply a weight by the same number of steps as F1, the process proceeds to the F1 equivalent delay 142. Here, for example, a loop instruction built in the DSP is used to loop for a required number of steps (coefficient RA
Load the number of steps of F1 written in M2b and delay by that number). In this loop, the redundant function is omitted in the DSP used here, and the input and output of the R signal and the L signal are at the same port, as shown in the time chart of the DSP input / output timing of FIG. ,
This is because it must be performed within a predetermined time (corresponding to the serial data R0 and L0 processing time) from the rise (or fall) of the WS signal. And as mentioned above,
Between music signals that have not undergone sound effect addition processing,
The crossfade process is performed, and further the crossfade process is performed between the musical tone signal and the musical tone signal to which the new acoustic effect is added, and the acoustic effect changing process is ended.

【0032】次のF2スルー150とcallF2(1
51)、F2相当delay152については、F1の
それと同じなので、細かい部分は省略する。但し該効果
プログラム処理後の信号データの流れは、テンポラリレ
ジスタt4に格納された信号データt4R、t4Lに係
数C32を乗算し、テンポラリレジスタt5に格納され
た信号データt5R、t5Lに係数C31を乗算して、
両値を加算し、それをテンポラリレジスタt6に、信号
データt6R、t6Lとして記憶させる(t6R←t4
R×C32+t5R×C31、t6L←t4L×C32
+t5L×C31)。
Next, F2 through 150 and callF2 (1
51) and the F2-equivalent delay 152 are the same as those of F1, so detailed parts are omitted. However, the flow of the signal data after the effect program processing is as follows: the signal data t4R, t4L stored in the temporary register t4 is multiplied by the coefficient C32, and the signal data t5R, t5L stored in the temporary register t5 is multiplied by the coefficient C31. hand,
Both values are added and stored in the temporary register t6 as signal data t6R and t6L (t6R ← t4
R × C32 + t5R × C31, t6L ← t4L × C32
+ T5L × C31).

【0033】テンポラリレジスタt3とt6に格納され
た信号データt3R、t6R、t3L、t6Lは、更に
所定の係数データが乗算されて、出力側のテンポラリレ
ジスタot1乃至ot2に格納されることになる。その
うち、最終的にSout1側出力となる分は、テンポラ
リレジスタt3に格納された信号データt3R、t3L
に係数C41を乗算し、テンポラリレジスタt6に格納
された信号データt6R、t6Lに係数C42を乗算し
て、両値を加算し、それを出力側のテンポラリレジスタ
ot1に、信号データot1R、ot1Lとして格納す
る(ot1R←t3R×C41+t6R×C42、ot
1L←t3L×C41+t6L×C42)。またSou
t2側出力となる分は、テンポラリレジスタt3に格納
された信号データt3R、t3Lに係数C51を乗算
し、テンポラリレジスタt6に格納された信号データt
6R、t6Lに係数C52を乗算して、両値を加算し、
それを出力側のテンポラリレジスタot2に、信号デー
タot2R、ot2Lとして格納する(ot2R←t3
R×C51+t6R×C52、ot2L←t3L×C5
1+t6L×C52)。
The signal data t3R, t6R, t3L, t6L stored in the temporary registers t3 and t6 are further multiplied by predetermined coefficient data and stored in the temporary registers ot1 and ot2 on the output side. Of these, the portion that finally becomes the Sout1 side output is the signal data t3R, t3L stored in the temporary register t3.
Is multiplied by a coefficient C41, the signal data t6R, t6L stored in the temporary register t6 is multiplied by a coefficient C42, both values are added, and the result is stored in the temporary register ot1 on the output side as the signal data ot1R, ot1L. Yes (ot1R ← t3R × C41 + t6R × C42, ot
1L ← t3L × C41 + t6L × C42). See you Sou
The signal to be output on the t2 side is obtained by multiplying the signal data t3R and t3L stored in the temporary register t3 by a coefficient C51, and the signal data t stored in the temporary register t6.
6R, t6L are multiplied by a coefficient C52, and both values are added,
It is stored in the temporary register ot2 on the output side as signal data ot2R and ot2L (ot2R ← t3
R × C51 + t6R × C52, ot2L ← t3L × C5
1 + t6L × C52).

【0034】次に、Lch入力160を行い、図3にお
けるSin1及びSin2からの信号を、レジスタin
1及びin2へ、in1L+1、in2L+1として取
り込み、Lch出力170は、図3におけるSout
1、Sout2へ、出力側のテンポラリレジスタot1
及びot2から、ot1L−1、ot2L−1の信号デ
ータを出力する。
Next, Lch input 160 is performed, and the signals from Sin1 and Sin2 in FIG.
1 and in2 are taken in as in1L + 1 and in2L + 1, and the Lch output 170 is Sout in FIG.
1, to Sout2, output side temporary register ot1
And ot2 output signal data of ot1L-1 and ot2L-1.

【0035】最後にデータRAMポインタ(DRP)の
値を+1してスタートに戻る。これは、次回のサンプリ
ングに基づくプログラムで、同じデータRAMアドレス
を指定しても、実際には自動的に+1のアドレスをアク
セスするためである。これにより前回(in1R/L+
1、in2R/L+1)に格納した入力データは、今回
(in1R/L、in2R/L)として読み出すことに
なり、また今回(ot1R/L、ot2R/L)として
格納された出力データは、次回サンプリングタイムに
(ot1R/L−1、ot2R/L−1)として読み出
すことになる。
Finally, the value of the data RAM pointer (DRP) is incremented by 1 to return to the start. This is because even if the same data RAM address is specified in the program based on the next sampling, the address of +1 is actually automatically accessed. As a result, the last time (in1R / L +
The input data stored in (1, 1 in2R / L + 1) will be read out this time (in1R / L, in2R / L), and the output data stored this time (ot1R / L, ot2R / L) will be sampled next time. At time, it is read as (ot1R / L-1, ot2R / L-1).

【0036】上記図4のDSPプログラムは、1サンプ
リングタイム(44.1KHz)の間に前処理を済まし
て、またポーリング状態となり、次のWS信号の立ち上
がりを待つものである。この一連のプログラムは、相前
後する3つのサンプリングタイムを用いて、下記表2に
示すようにパイプライン処理している。即ちT−1時間
に、in1R+1←Sin1、in2R+1←Sin2
の処理と、in1L+1←Sin1、in2L+1←S
in2の処理を行う。次のT時間に、F1スルー?、c
allF1、F1相当delay、(t3R←t1R×
C12+t2R×C11、t3L←t1L×C12+t
2L×C11)、(t4R←t3R×C21+in2R
×C22、t4L←t3L×C21+in2L×C2
2)、F2スルー?、callF2、F2相当dela
y、(t6R←t4R×C32+t5R×C31、t6
L←t4L×C32+t5L×C31)、(ot1R←
t3R×C41+t6R×C42、ot1L←t3L×
C41+t6L×C42)、(ot2R←t3R×C5
1+t6R×C52、ot2L←t3L×C51+t6
L×C52)の各処理を行う。更にT+1時間に、So
ut1←ot1R−1、Sout2←ot2R−1の処
理と、Sout1←ot1L−1、Sout2←ot2
L−1の処理を行う。
The DSP program shown in FIG. 4 completes the preprocessing during one sampling time (44.1 KHz), enters the polling state, and waits for the next rise of the WS signal. This series of programs performs pipeline processing as shown in Table 2 below using three successive sampling times. That is, in T-1 time, in1R + 1 ← Sin1, in2R + 1 ← Sin2
Processing and in1L + 1 ← Sin1, in2L + 1 ← S
Perform in2 processing. F1 through at the next T time? , C
allF1, delay equivalent to F1, (t3R ← t1R ×
C12 + t2R × C11, t3L ← t1L × C12 + t
2L × C11), (t4R ← t3R × C21 + in2R
× C22, t4L ← t3L × C21 + in2L × C2
2), F2 through? , CallF2, F2 equivalent dela
y, (t6R ← t4R × C32 + t5R × C31, t6
L ← t4L × C32 + t5L × C31), (ot1R ←
t3R × C41 + t6R × C42, ot1L ← t3L ×
C41 + t6L × C42), (ot2R ← t3R × C5
1 + t6R × C52, ot2L ← t3L × C51 + t6
Each process of L × C52) is performed. Furthermore, at T + 1 hour, So
ut1 ← ot1R-1, Sout2 ← ot2R-1, and Sout1 ← ot1L-1, Sout2 ← ot2
The process of L-1 is performed.

【0037】[0037]

【表2】 [Table 2]

【0038】本実施形態の電子楽器は、次のようにして
使用される。まず、該電子楽器のスイッチをONとする
ことで、マスタCPU10は、パネル初期設定・RAM
104の初期設定・DSPの初期設定等を行う。そして
FD入出力ブロック103から必要な情報をRAM10
4に読み出す。演奏者のパネル操作により、マスタCP
U10は、RAM104及び/又はROM105から、
選択された音響効果に対応した係数データをDSP1の
係数RAM2bに転送する。この時パネル操作で既にD
SP内の結線パターンが決定されていることになる。
The electronic musical instrument of this embodiment is used as follows. First, by turning on the switch of the electronic musical instrument, the master CPU 10 sets the panel initial setting / RAM.
Initial settings of 104 and DSP are performed. Then, necessary information is input from the FD input / output block 103 to the RAM 10
Read to 4. Master CP by the player's panel operation
U10 is from RAM 104 and / or ROM 105
The coefficient data corresponding to the selected acoustic effect is transferred to the coefficient RAM 2b of the DSP 1. At this time, it is already D by the panel operation
This means that the connection pattern within the SP has been determined.

【0039】次に演奏者の操作により、鍵スイッチブロ
ック101のキースイッチON・OFF情報を、キーベ
ロシティと共に、マスタCPU10に送ったり、MID
I入出力ブロック102から、或いはRAM104・R
OM105から演奏情報をマスタCPU10に送り、更
にマスタCPU10は、該演奏情報に基づき、対応する
音色のパラメータとキーON・OFFのアサイン結果
を、音源回路106に送り、該音源回路106のOUT
1及びOUT2から発音データが出力される。
Next, by the player's operation, the key switch ON / OFF information of the key switch block 101 is sent to the master CPU 10 together with the key velocity, and the MID is sent.
From the I / O block 102 or RAM 104 / R
The OM 105 sends performance information to the master CPU 10, and based on the performance information, the master CPU 10 sends the corresponding tone color parameter and key ON / OFF assignment result to the tone generator circuit 106, and the OUT of the tone generator circuit 106.
Tone data is output from 1 and OUT2.

【0040】この発音データは、DSPのSIO1乃至
2を経由してデータRAM2cに送られ、その結果直列
乃至並列の結線パターンのいずれかに基づく音響効果付
加処理がなされる(エフェクトがかけられる)。この時
のメインルーチンと音響効果付加ルーチンfnとは各セ
ットになって、命令ROM2aにマッピングされてお
り、パネルにて新たな効果が選択された場合、係数RA
M2bからアドレスレジスタ21にアドレスデータを送
り、プログラムカウンタ20にスタートアドレスデータ
として設定して、そのアドレス指定により各効果プログ
ラムが呼び出し・実行されることになる。DSP1は現
在のプログラムの最後に到達すると、前述のようにそこ
でベクタージャンプを行う命令を出す。デコーダはその
ベクタージャンプを受けると、そのタイミングで係数R
AM2cの対応アドレスをCバスに出し、その次のタイ
ミングでスタートアドレスデータにロードされる。その
アドレスはそのままプログラムカウンタ20にロードさ
れて、更に次のタイミングにて命令ROM2aをそのア
ドレスでアクセスし、新たな効果プログラムに移ること
になる。このように効果プログラムはデコーダで解読さ
れて、DSP内の制御を行なうことになる。またDSP
1内の結線の仕方は、前述のように係数データにより決
定され、従って該係数データの変更のみで直列か並列か
の結線パターンの変更が可能となる。そして所望の音響
効果が付加された楽音信号は、DAC107a及び10
7bにより出力されてアンプを介してスピーカから出力
される。
The sound data is sent to the data RAM 2c via the SIOs 1 and 2 of the DSP, and as a result, the sound effect adding process is performed (effect is applied) based on either the serial or parallel connection pattern. At this time, the main routine and the sound effect adding routine fn are set as a set and are mapped in the instruction ROM 2a. When a new effect is selected on the panel, the coefficient RA
Address data is sent from the M2b to the address register 21, is set as start address data in the program counter 20, and each effect program is called and executed by the address designation. When DSP 1 reaches the end of the current program, it issues an instruction to vector jump there as described above. When the decoder receives the vector jump, the coefficient R
The corresponding address of AM2c is output to the C bus, and the start address data is loaded at the next timing. That address is loaded into the program counter 20 as it is, and at the next timing, the instruction ROM 2a is accessed at that address and a new effect program is started. In this way, the effect program is decoded by the decoder and the control in the DSP is performed. Also DSP
The connection method within 1 is determined by the coefficient data as described above, and therefore the connection pattern can be changed between series and parallel only by changing the coefficient data. The musical tone signal to which the desired acoustic effect is added is the DAC 107a and 10
It is output by 7b and is output from the speaker via the amplifier.

【0041】なお、マスタCPU10は、RAM104
・ROM105からそれに対応する係数データを、DS
P1に転送する。またその際音響効果プログラムFをス
ルーさせることになるが、このスルーの時と該スルー状
態から新たな音響効果が付加された楽音信号を出力する
状態に変更する時に、前述のように、DSP内の係数C
11とC12との間、係数C31とC32との間で相補
的に該係数データの増減を行うことで、音響効果処理の
かけられた信号と該処理のかけられていない信号とを、
クロスフェードさせることが可能となる。
The master CPU 10 has a RAM 104.
-The coefficient data corresponding to it from ROM 105
Transfer to P1. Further, at that time, the sound effect program F is passed through. As described above, during this through and when changing from the through state to the state of outputting the musical tone signal to which the new sound effect is added, as described above, Coefficient C
11 and C12 and between the coefficients C31 and C32 complementarily increase / decrease the coefficient data, whereby the signal subjected to the acoustic effect processing and the signal not subjected to the processing are
It is possible to crossfade.

【0042】即ち、マスタCPU10は、DSP1のC
11、C31を7FFFH→0Hへ、C12、C32を
0H→7FFFHへクロスフェードさせる。これによっ
て音響効果付加ルーチンf1、f2とも、効果が付加さ
れずスルーとなる。マスタCPU10はDSP1にジャ
ンプ(f1及びf2スルー)するように命じる。この命
令伝達方法は、前述のように、係数RAMの1つを書き
替えて行っても良いし、DSP1の汎用入力ポートに信
号を送っても良い。DSPは、この信号を受けている間
は命令ROM2aの効果プログラムエリアをアクセスし
ないことになる。マスタCPU10は、DSP1内の係
数RAM2bの書き替えに必要な係数データのみを転送
する。この転送中もDSP1は音源回路106からシリ
アルで送られてくる楽音信号を、音響効果の付加なし
に、各サンプリング毎に出力している。その後マスタC
PU10は、DSP1にジャンプ(f1スルーf2スル
ー)を解除(中止)するように命じる。DSPはこのジ
ャンプ解除で通常の処理フローに戻り、音響効果付加ル
ーチンf1、f2のプログラムもアクセスするようにな
る。但しまだC11とC31は0H、C12とC32は
7FFFHであるため、楽音信号はスルーの時と全く同
じである。更にマスタCPU10は、DSP1に新たな
音響効果付加ルーチンの係数データを転送する。この期
間はDSPが新たな係数データに対応した演算が軌道に
のるまで必要となる。一般的に外部RAMデータが書き
替えられる時間まで考慮すると、1msec〜50ms
ecほど必要となる。その時間は外部RAMの容量に比
例する。新たな音響効果付加ルーチンが新たな係数デー
タに基づいて正常に処理されるようになった時に、マス
タCPU10は、DSP1のC11、C31を0H→7
FFFHへ、C12、C32を7FFFH→0Hへクロ
スフェードさせる。これによって新たな音響効果の付加
が可能となる。
That is, the master CPU 10 is the C of the DSP 1.
Crossfades 11 and C31 from 7FFFH to 0H and C12 and C32 from 0H to 7FFFH. As a result, no effect is added to both the sound effect adding routines f1 and f2, and the routine goes through. The master CPU 10 commands the DSP 1 to jump (through f1 and f2). This command transmission method may be performed by rewriting one of the coefficient RAMs as described above, or by sending a signal to the general-purpose input port of the DSP 1. The DSP will not access the effect program area of the instruction ROM 2a while receiving this signal. The master CPU 10 transfers only coefficient data required for rewriting the coefficient RAM 2b in the DSP 1. Even during this transfer, the DSP 1 outputs the tone signal serially sent from the tone generator circuit 106 for each sampling without adding a sound effect. Then master C
The PU 10 commands the DSP 1 to cancel (stop) the jump (f1 through f2 through). Upon canceling this jump, the DSP returns to the normal processing flow and also accesses the programs of the sound effect adding routines f1 and f2. However, since C11 and C31 are still 0H and C12 and C32 are 7FFFH, the tone signal is exactly the same as the through signal. Further, the master CPU 10 transfers the coefficient data of the new sound effect addition routine to the DSP 1. This period is required until the DSP reaches the orbit for the calculation corresponding to the new coefficient data. Generally considering the time to rewrite external RAM data, 1 msec to 50 ms
ec is needed. The time is proportional to the capacity of the external RAM. When the new sound effect adding routine is normally processed based on the new coefficient data, the master CPU 10 sets C11 and C31 of the DSP 1 to 0H → 7.
Crossfade C12 and C32 to 7FFFH → 0H to FFFH. This makes it possible to add new acoustic effects.

【0043】図6は請求項3記載の発明の一実施形態に
係るDSP内部構成を示すブロック図である。該図面で
は図2の請求項1の構成と違う部分の構成のみ示してあ
る。
FIG. 6 is a block diagram showing the internal structure of the DSP according to an embodiment of the present invention. In the drawing, only the structure of the part different from the structure of claim 1 of FIG. 2 is shown.

【0044】該構成では、効果処理を行うサブプログラ
ム(音響効果付加ルーチンfn)のみマスクROM化
(I−ROM22a)し、メインルーチンは外部から書
き換え可能なRAM(I−RAM23a)を用いたサブ
プログラム方式の命令メモリ構造を有している。上記I
−RAM23aの内容は、汎用DSPの構成と同様リセ
ット中に書き込まれ、該リセット後にプログラムカウン
タ20はゼロにクリアされて、I−RAM23aの先頭
アドレスをアクセスし、そこから処理が始まる。I−R
AM23a中のサブルーチンコールになると、今度はI
−ROM22aのいずれかがアクセスされることにな
る。このような構成によって、音響効果切り替え時に
は、外部のマスタCPU10は効果プログラムのメイン
ルーチンの一部(即ち音響効果付加ルーチンfnのコー
ル先)を変更するだけで可能となり、高速化が達成され
る。本構成では、一般的なマイクロプログラムとは異な
り、I−RAM23a及びI−ROM22aの命令は同
じレベルで処理されるので、DSP1の構成が複雑にな
ってしまうことはない。
In this configuration, only the subprogram (acoustic effect addition routine fn) for effect processing is masked into a ROM (I-ROM 22a), and the main routine is a subprogram using an externally rewritable RAM (I-RAM 23a). The method has an instruction memory structure. I above
-The contents of the RAM 23a are written during the reset as in the configuration of the general-purpose DSP, the program counter 20 is cleared to zero after the reset, the top address of the I-RAM 23a is accessed, and the process starts from there. I-R
When it comes to the subroutine call in AM23a, this time I
-Any of the ROMs 22a will be accessed. With such a configuration, at the time of sound effect switching, the external master CPU 10 can change the sound program by changing only a part of the main routine of the effect program (that is, the call destination of the sound effect adding routine fn), and the speedup is achieved. In this configuration, unlike a general microprogram, the instructions of the I-RAM 23a and the I-ROM 22a are processed at the same level, so the configuration of the DSP 1 does not become complicated.

【0045】図7は請求項6記載の発明の一実施形態に
係るDSP内部構成を示すブロック図である。上記と同
様に、本図面では図2の請求項1の構成と違う部分の構
成のみ示してある。
FIG. 7 is a block diagram showing the internal structure of the DSP according to the embodiment of the invention described in claim 6. Similar to the above, only the configuration of the part different from the configuration of claim 1 of FIG. 2 is shown in this drawing.

【0046】該構成では、命令メモリ構造を上記第2実
施形態構成と同様なサブプログラム化した方式とすると
共に、係数メモリ構造につき、各音響効果付加ルーチン
fnが固定値として使用する係数データをマスクROM
化して係数ROM(C−ROM24b)とし、メインル
ーチンの係数データ並びに各音響効果付加ルーチンfn
が外部から変更を必要とする係数データのみ集めて係数
RAM(C−RAM25b)とした。このような構造に
より音響効果変更時に外部のマスタCPU10がDSP
1へ転送しなければならない処理プログラム及び係数デ
ータの量が格段に減少することになる。
In this configuration, the instruction memory structure is a sub-programmed system similar to that of the second embodiment, and the coefficient data used by each acoustic effect addition routine fn is masked. ROM
Into a coefficient ROM (C-ROM 24b), and the coefficient data of the main routine and each acoustic effect addition routine fn
Collects only the coefficient data that needs to be changed from the outside to form a coefficient RAM (C-RAM 25b). With such a structure, when the sound effect is changed, the external master CPU 10 makes the DSP
The amount of processing programs and coefficient data that must be transferred to 1 is significantly reduced.

【0047】[0047]

【発明の効果】以上詳述した本発明の構成を有する装置
によれば、DSP内の命令メモリの一部乃至全部、係数
メモリの一部等、音響効果付加に関与するプログラム・
データのうち固定的に使用されるものの記憶領域の構成
をマスクROM化し、その部分の転送量を軽減したた
め、複数の音響効果を付加する時のプログラムの切替の
スピードアップが図れるようになる。またクロスフェー
ドエンベロープ処理も効果の一つとみなしして処理する
ことで、クロスフェード回路等のディスクリート部品の
削減ができるようになる。
According to the device having the configuration of the present invention described in detail above, a part or all of the instruction memory in the DSP, a part of the coefficient memory, etc.
Since the structure of the storage area of the data that is used fixedly is made into a mask ROM and the transfer amount of that portion is reduced, it is possible to speed up the switching of the program when a plurality of acoustic effects are added. Further, by treating the crossfade envelope processing as one of the effects, the number of discrete components such as the crossfade circuit can be reduced.

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

【図1】請求項1に係るDSPの一実施形態構成が使用
された音響効果付加装置を備えた電子楽器をブロック図
である。
FIG. 1 is a block diagram of an electronic musical instrument including a sound effect adding device in which a DSP according to an embodiment of the present invention is used.

【図2】DSPの内部構成を示すブロック図である。FIG. 2 is a block diagram showing an internal configuration of a DSP.

【図3】DSPにおけるメインルーチンのシグナルフロ
ーを示す説明図である。
FIG. 3 is an explanatory diagram showing a signal flow of a main routine in the DSP.

【図4】DSPのメインフローを示すフローチャートで
ある。
FIG. 4 is a flowchart showing a main flow of the DSP.

【図5】DSP入出力タイミングを表したタイムチャー
トである。
FIG. 5 is a time chart showing DSP input / output timing.

【図6】請求項3の一実施形態に係るDSPの内部構成
を示すブロック図である。
FIG. 6 is a block diagram showing an internal configuration of a DSP according to an embodiment of claim 3;

【図7】請求項6の一実施形態に係るDSPの内部構成
を示すブロック図である。
FIG. 7 is a block diagram showing an internal configuration of a DSP according to an embodiment of claim 6;

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

1 DSP 2a 命令ROM 22a I−ROM 23a I−RAM 2b 係数RAM 24b C−ROM 25b C−RAM 2c データRAM 3a Cレジスタ 3b Dレジスタ 4 乗算器 5 Pレジスタ 6 加算器 7 Yレジスタ 8 ゲート 9 選択器 10 マスタCPU 20 プログラムカウンタ 21 アドレスレジスタ 106 音源回路 107a、107b DAC 1 DSP 2a Instruction ROM 22a I-ROM 23a I-RAM 2b Coefficient RAM 24b C-ROM 25b C-RAM 2c Data RAM 3a C register 3b D register 4 Multiplier 5 P register 6 Adder 7 Y register 8 Gate 9 Selector 10 master CPU 20 program counter 21 address register 106 tone generator circuits 107a, 107b DAC

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 複数の異なる完結した処理プログラムを
内部に個別に記憶した不揮発性のプログラムメモリと、
前記処理プログラムが利用する係数データを記憶可能な
揮発性の係数メモリと、プリセット可能なプログラムカ
ウンタと、前記プログラムカウンタにプリセットアドレ
スを供給するアドレスレジスタとを有し、前記アドレス
レジスタはリセット処理によって特定値に設定されると
共に、外部より変更可能であることを特徴とするデジタ
ルシグナルプロセッサ。
1. A non-volatile program memory internally storing a plurality of different completed processing programs,
It has a volatile coefficient memory capable of storing coefficient data used by the processing program, a presettable program counter, and an address register for supplying a preset address to the program counter, and the address register is specified by a reset process. A digital signal processor characterized by being set to a value and being changeable externally.
【請求項2】 請求項1記載のデジタルシグナルプロセ
ッサにおいて、前記アドレスレジスタは係数メモリの内
容を転送可能であることを特徴とする請求項1記載のデ
ジタルシグナルプロセッサ。
2. The digital signal processor according to claim 1, wherein the address register is capable of transferring the contents of a coefficient memory.
【請求項3】 複数の異なる完結した処理プログラムを
内部に個別に記憶した不揮発性の第1のプログラムメモ
リと、外部から書き換え可能な第2プログラムメモリ
と、これらの第1及び第2プログラムメモリを共通して
アドレス制御するプログラムカウンタとを有し、前記プ
ログラムカウンタはリセット処理にて最初に第2プログ
ラムメモリを起動することを特徴とするデジタルシグナ
ルプロセッサ。
3. A non-volatile first program memory in which a plurality of different completed processing programs are individually stored inside, a second program memory rewritable from outside, and these first and second program memories. A digital signal processor having a program counter for address control in common, wherein the program counter first activates the second program memory in a reset process.
【請求項4】 請求項3記載のデジタルシグナルプロセ
ッサにおいて、前記第2プログラムメモリはその容量
が、入力信号のサンプリング周波数で処理可能なステッ
プ数よりも少ないことを特徴とする請求項3記載のデジ
タルシグナルプロセッサ。
4. The digital signal processor according to claim 3, wherein the second program memory has a capacity smaller than the number of steps that can be processed at the sampling frequency of the input signal. Signal processor.
【請求項5】 複数の異なる完結した処理プログラムを
内部に個別に記憶した不揮発性のプログラムメモリと、
前記処理プログラムが固定的に利用する係数データを個
別に記憶した不揮発性の第1係数メモリと、前記処理プ
ログラムが利用する書き換え可能な係数データを共同し
て記憶する揮発性の第2係数メモリとを有し、前記第2
係数メモリはリセット処理中またはそれ以前に外部から
書き込まれることを特徴とするデジタルシグナルプロセ
ッサ。
5. A non-volatile program memory internally storing a plurality of different completed processing programs,
A non-volatile first coefficient memory that individually stores coefficient data that is fixedly used by the processing program; and a volatile second coefficient memory that jointly stores rewritable coefficient data that is used by the processing program. And has the second
A digital signal processor characterized in that the coefficient memory is externally written during or before the reset process.
【請求項6】 複数の異なる完結した処理プログラムを
内部に個別に記憶した不揮発性の第1のプログラムメモ
リと、外部から書き換え可能な第2プログラムメモリ
と、前記処理プログラムが固定的に利用する係数データ
を個別に記憶した不揮発性の第1係数メモリと、前記処
理プログラムが利用する書き換え可能な係数データを共
同して記憶する揮発性の第2係数メモリと、前記第1及
び第2プログラムメモリを共通してアドレス制御するプ
ログラムカウンタとを有し、該プログラムカウンタはリ
セット処理にて最初に第2プログラムメモリを起動する
と共に、前記第2係数メモリはリセット処理中またはそ
れ以前に外部から書き込まれることを特徴とするデジタ
ルシグナルプロセッサ。
6. A non-volatile first program memory in which a plurality of different completed processing programs are individually stored inside, a second program memory rewritable from the outside, and a coefficient fixedly used by the processing program. A non-volatile first coefficient memory storing data individually, a volatile second coefficient memory storing jointly rewritable coefficient data used by the processing program, and the first and second program memories. A program counter for address control in common, which program counter first activates a second program memory in a reset process, and the second coefficient memory is externally written during or before the reset process. Digital signal processor characterized by.
【請求項7】 請求項5乃至6記載のデジタルシグナル
プロセッサにおいて、前記各処理プログラムの出力段に
て処理された値にエンベロープを付加するための係数デ
ータを、前記係数メモリに記憶し、処理プログラムが切
り換えられる時には一度そのエンベロープを下げるよう
にしたことを特徴とする請求項5乃至6記載のデジタル
シグナルプロセッサ。
7. The digital signal processor according to claim 5, wherein coefficient data for adding an envelope to a value processed at an output stage of each processing program is stored in the coefficient memory, and the processing program is stored. 7. The digital signal processor according to claim 5, wherein the envelope is lowered once when is switched.
JP8129350A 1996-04-26 1996-04-26 Digital signal processor Pending JPH09292879A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8129350A JPH09292879A (en) 1996-04-26 1996-04-26 Digital signal processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8129350A JPH09292879A (en) 1996-04-26 1996-04-26 Digital signal processor

Publications (1)

Publication Number Publication Date
JPH09292879A true JPH09292879A (en) 1997-11-11

Family

ID=15007438

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8129350A Pending JPH09292879A (en) 1996-04-26 1996-04-26 Digital signal processor

Country Status (1)

Country Link
JP (1) JPH09292879A (en)

Similar Documents

Publication Publication Date Title
US5319151A (en) Data processing apparatus outputting waveform data in a certain interval
US5065433A (en) Audio signal data processing system
US6031916A (en) Sound effect adding device using DSP
JPH096350A (en) Effect adding device and electronic musical instrument using the same
JPH09292879A (en) Digital signal processor
JP3305562B2 (en) Sound effect adding device using DSP
JP3179333B2 (en) Sound effect adding device using DSP
US8383924B2 (en) Musical tone signal generating apparatus
JP2001265352A (en) Musical sound signal processor
US5442125A (en) Signal processing apparatus for repeatedly performing a same processing on respective output channels in time sharing manner
JPH09237090A (en) Sound effect adding device using dsp
EP0529273B1 (en) Effect adding apparatus
JP3050779B2 (en) Signal processing device
JP2002351460A (en) Sound effect adding device using dsp
JP3036417B2 (en) Signal processing device
JP3116447B2 (en) Digital signal processor
JP3223827B2 (en) Sound source waveform data generation method and apparatus
JP3508139B2 (en) Digital signal processor
JP3843996B2 (en) Signal processing device
JP3991475B2 (en) Audio data processing apparatus and computer system
JP3918309B2 (en) Effect device
JP5732769B2 (en) Music generator
JP3000828B2 (en) Music effect device and music signal generator
JP3392451B2 (en) Electronic musical instrument tone control device
JP2000172262A (en) Musical tone processor

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20031209