JP3305562B2 - Dspを用いた音響効果付加装置 - Google Patents
Dspを用いた音響効果付加装置Info
- Publication number
- JP3305562B2 JP3305562B2 JP08049096A JP8049096A JP3305562B2 JP 3305562 B2 JP3305562 B2 JP 3305562B2 JP 08049096 A JP08049096 A JP 08049096A JP 8049096 A JP8049096 A JP 8049096A JP 3305562 B2 JP3305562 B2 JP 3305562B2
- Authority
- JP
- Japan
- Prior art keywords
- sound effect
- dsp
- output
- signal
- coefficient
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】
【発明の属する技術分野】本発明は、複数の音響効果を
付加できるDSPを用いた音響効果付加装置に関する。
付加できるDSPを用いた音響効果付加装置に関する。
【0002】
【従来の技術】所謂DSP(デジタル・シグナル・プロ
セッサ)を用いた音響効果付加装置としては、特開昭5
8−50595号に示されるように、1つのDSPで複
数の音響効果を時分割で付加するものがあった。
セッサ)を用いた音響効果付加装置としては、特開昭5
8−50595号に示されるように、1つのDSPで複
数の音響効果を時分割で付加するものがあった。
【0003】
【発明が解決しようとする課題】もともと上記構成で
は、付加する音響効果毎にCPU等の主演算回路からD
SPに対し、それに対応するプログラムを転送し、該プ
ログラムの全てをそっくりそのまま切り換えており、し
かもプログラムの転送はハンドシェイクによるシリアル
転送であるため、転送スピードが遅く、結果的に転送時
間が長くなる。またシステムにおける他の構成の制御と
の兼ね合いから、転送スピードがあまりに遅いという場
合には、付加できる音響効果の数に限界を来たし、この
ような技術的限界に基づいて音楽的表現が制限されてし
まうといった問題もあった。
は、付加する音響効果毎にCPU等の主演算回路からD
SPに対し、それに対応するプログラムを転送し、該プ
ログラムの全てをそっくりそのまま切り換えており、し
かもプログラムの転送はハンドシェイクによるシリアル
転送であるため、転送スピードが遅く、結果的に転送時
間が長くなる。またシステムにおける他の構成の制御と
の兼ね合いから、転送スピードがあまりに遅いという場
合には、付加できる音響効果の数に限界を来たし、この
ような技術的限界に基づいて音楽的表現が制限されてし
まうといった問題もあった。
【0004】本発明は従来技術の上記の問題を解決する
ため創案されたもので、複数の音響効果を付加する時の
プログラムの切替のスピードアップを達成できる音響効
果付加装置を提供せんとするものである。
ため創案されたもので、複数の音響効果を付加する時の
プログラムの切替のスピードアップを達成できる音響効
果付加装置を提供せんとするものである。
【0005】
【課題を解決するための手段】そのため本発明は、主演
算回路の制御下で作動し、1つのDSPで複数の音響効
果が同時に選択処理可能な音響効果付加装置において、
楽音信号の入出力を制御するプログラムを含むメインル
ーチンと、必要な時に主演算回路により転送されて前記
メインルーチンからアクセスされることで作動する複数
の選択可能な音響効果付加ルーチンとを記憶する命令記
憶部を前記DSP内に有しており、音響効果切り換え時
には、新たな音響効果付加ルーチンのみを前記命令記憶
部に転送すると共に、その間は転送されている命令記憶
部の音響効果付加ルーチンをアクセスしないようにジャ
ンプする(スルーさせる)ことを基本的特徴としてい
る。
算回路の制御下で作動し、1つのDSPで複数の音響効
果が同時に選択処理可能な音響効果付加装置において、
楽音信号の入出力を制御するプログラムを含むメインル
ーチンと、必要な時に主演算回路により転送されて前記
メインルーチンからアクセスされることで作動する複数
の選択可能な音響効果付加ルーチンとを記憶する命令記
憶部を前記DSP内に有しており、音響効果切り換え時
には、新たな音響効果付加ルーチンのみを前記命令記憶
部に転送すると共に、その間は転送されている命令記憶
部の音響効果付加ルーチンをアクセスしないようにジャ
ンプする(スルーさせる)ことを基本的特徴としてい
る。
【0006】該構成においては、一旦命令記憶部に記憶
されたメインルーチンは、音響効果切り換え時に変更さ
れることなくそのまま残り、新たな音響効果付加ルーチ
ンのみ転送がなされるため、従前よりその分転送量が少
なくなり、スピードアップにつながる。そればかりか汎
用的なDSPの構成では、通常分岐命令を有しておら
ず、音響効果付加ルーチンの切り換え時にDSPがその
処理を行うことになれば、処理が暴走するか又は大きな
雑音を発生してしまう危険があったが、本願構成では、
該音響効果付加ルーチンをアクセスしないようにジャン
プ(スルー)させているため、そのような危険もなくな
る。
されたメインルーチンは、音響効果切り換え時に変更さ
れることなくそのまま残り、新たな音響効果付加ルーチ
ンのみ転送がなされるため、従前よりその分転送量が少
なくなり、スピードアップにつながる。そればかりか汎
用的なDSPの構成では、通常分岐命令を有しておら
ず、音響効果付加ルーチンの切り換え時にDSPがその
処理を行うことになれば、処理が暴走するか又は大きな
雑音を発生してしまう危険があったが、本願構成では、
該音響効果付加ルーチンをアクセスしないようにジャン
プ(スルー)させているため、そのような危険もなくな
る。
【0007】また上記構成において、前記複数の音響効
果付加ルーチンは、その付加される効果に関係なく前記
命令記憶部の特定エリアに格納されており、且つ選択可
能な音響効果付加ルーチンは、全てを合わせて前記命令
記憶部の特定エリア内に納まるものでなければならな
い。DSP内の命令記憶部エリアが限られたものである
と同時に、音響効果付加ルーチンに使用できる演算ステ
ップ数も限られているからである。
果付加ルーチンは、その付加される効果に関係なく前記
命令記憶部の特定エリアに格納されており、且つ選択可
能な音響効果付加ルーチンは、全てを合わせて前記命令
記憶部の特定エリア内に納まるものでなければならな
い。DSP内の命令記憶部エリアが限られたものである
と同時に、音響効果付加ルーチンに使用できる演算ステ
ップ数も限られているからである。
【0008】更に命令記憶部の音響効果付加ルーチンの
格納エリアを、複数の該音響効果付加ルーチンのうちの
最大ステップ数単位に分けてアドレスすれば、新たな音
響効果付加ルーチンを記憶させる時に、アドレスに飛び
を生ぜず、前記命令記憶部にシリアルな状態で記憶され
ることになる。
格納エリアを、複数の該音響効果付加ルーチンのうちの
最大ステップ数単位に分けてアドレスすれば、新たな音
響効果付加ルーチンを記憶させる時に、アドレスに飛び
を生ぜず、前記命令記憶部にシリアルな状態で記憶され
ることになる。
【0009】
【発明の実施の形態】図1は、本発明に係る音響効果付
加装置の1実施形態構成を備えた電子楽器のブロック図
を示している。同図において、100はパネル操作子・
パネル操作表示ブロックを示しており、電子楽器のパネ
ルにてユーザ(演奏者)が操作した内容を取り込むと同
時に、後述するマスタCPU10の指令に基づいてその
時の電子楽器の状態(例えば図3に示すようなエフェク
ト結線の状態)を表示する。鍵スイッチブロック101
は、キースイッチのオンオフ情報をキーベロシティと共
に取り込み、マスタCPU10に送る。MIDI入出力
ブロック102は、マスタCPU10が処理した内容
(キーオン・オフ、音色ナンバ変更やエフェクト変更等
の各種情報)を出力すると共に、MIDI入力された情
報をマスタCPU10に送る。FD入出力ブロック10
3は、マスタCPU10の所有する各種情報(演奏情
報、パネルレジスト情報、エフェクト情報等)を、フレ
キシブルディスク等の外部記憶媒体に保存したり、そこ
から読み出したりする。RAM104は、マスタCPU
10のワーキングRAMであると同時に、自動演奏パタ
ーンや自動伴奏パターンの格納エリアでもある。ROM
105は、マスタCPU10のプログラムを格納してお
くと同時に、後述するDSPのプログラムを記憶してお
く(もちろんDSPのプログラムは外部記憶媒体から読
み込まれてRAM104に記憶しておくことも可能であ
る)。他方DSPの各種効果プログラムに用いられる係
数データも、該ROM105に格納される。なお、この
ROM105は、フラッシュメモリ等で代用させること
もできる。マスタCPU10は、同実施形態構成におい
ては電子楽器の全てを統括する本発明の主演算回路を構
成しており、電源投入後のパネル初期設定、RAM10
4の初期設定、後述するDSP1a及び1bの初期設定
(イニシャルローダ)も行う。またパネルにて音色が変
更されれば、対応するパラメータを後述する音源回路1
06に送り、キーオンオフがあれば、そのアサイン結果
に基づき該音源回路106の対応するCHの状態を更新
させる。更にパネルにて新たな効果が選択され又は図3
に示されるような新たな効果の連結が選択された時も、
ROM105に記憶されている対応するプログラム(但
し後述するように連結変更の場合には係数データのみ)
や係数データをDSP1a及び1bへ転送する。音源回
路106は、前記マスタCPU10の制御下におかれ
て、同時に32DCO(デジタル・コントロールド・オ
シレータ)の発音が可能であり、波形生成方法に特に限
定はないが、例えばPCM波形読み出しによる方法やサ
イン合成法で発音が行われる。ここで作られた32音は
4つの出力系列に対し、夫々独立したミキシングレート
で乗算された後、系列毎に32DCO分加算されて、O
UT1〜OUT4から出力される。このOUT1〜OU
T4の出力は、シリアルのステレオ出力であり、一般的
にCD(コンパクトディスク)で使用されているCDF
フォーマットに準じている。従ってこれら出力OUT1
〜OUT4は、DSP1a乃至1bを介さずに、ミキシ
ングさえされれば、DAC(デジタル・アナログ・コン
バータ)107の入力フォーマットと同じなので、DA
C107に直接接続することができる。
加装置の1実施形態構成を備えた電子楽器のブロック図
を示している。同図において、100はパネル操作子・
パネル操作表示ブロックを示しており、電子楽器のパネ
ルにてユーザ(演奏者)が操作した内容を取り込むと同
時に、後述するマスタCPU10の指令に基づいてその
時の電子楽器の状態(例えば図3に示すようなエフェク
ト結線の状態)を表示する。鍵スイッチブロック101
は、キースイッチのオンオフ情報をキーベロシティと共
に取り込み、マスタCPU10に送る。MIDI入出力
ブロック102は、マスタCPU10が処理した内容
(キーオン・オフ、音色ナンバ変更やエフェクト変更等
の各種情報)を出力すると共に、MIDI入力された情
報をマスタCPU10に送る。FD入出力ブロック10
3は、マスタCPU10の所有する各種情報(演奏情
報、パネルレジスト情報、エフェクト情報等)を、フレ
キシブルディスク等の外部記憶媒体に保存したり、そこ
から読み出したりする。RAM104は、マスタCPU
10のワーキングRAMであると同時に、自動演奏パタ
ーンや自動伴奏パターンの格納エリアでもある。ROM
105は、マスタCPU10のプログラムを格納してお
くと同時に、後述するDSPのプログラムを記憶してお
く(もちろんDSPのプログラムは外部記憶媒体から読
み込まれてRAM104に記憶しておくことも可能であ
る)。他方DSPの各種効果プログラムに用いられる係
数データも、該ROM105に格納される。なお、この
ROM105は、フラッシュメモリ等で代用させること
もできる。マスタCPU10は、同実施形態構成におい
ては電子楽器の全てを統括する本発明の主演算回路を構
成しており、電源投入後のパネル初期設定、RAM10
4の初期設定、後述するDSP1a及び1bの初期設定
(イニシャルローダ)も行う。またパネルにて音色が変
更されれば、対応するパラメータを後述する音源回路1
06に送り、キーオンオフがあれば、そのアサイン結果
に基づき該音源回路106の対応するCHの状態を更新
させる。更にパネルにて新たな効果が選択され又は図3
に示されるような新たな効果の連結が選択された時も、
ROM105に記憶されている対応するプログラム(但
し後述するように連結変更の場合には係数データのみ)
や係数データをDSP1a及び1bへ転送する。音源回
路106は、前記マスタCPU10の制御下におかれ
て、同時に32DCO(デジタル・コントロールド・オ
シレータ)の発音が可能であり、波形生成方法に特に限
定はないが、例えばPCM波形読み出しによる方法やサ
イン合成法で発音が行われる。ここで作られた32音は
4つの出力系列に対し、夫々独立したミキシングレート
で乗算された後、系列毎に32DCO分加算されて、O
UT1〜OUT4から出力される。このOUT1〜OU
T4の出力は、シリアルのステレオ出力であり、一般的
にCD(コンパクトディスク)で使用されているCDF
フォーマットに準じている。従ってこれら出力OUT1
〜OUT4は、DSP1a乃至1bを介さずに、ミキシ
ングさえされれば、DAC(デジタル・アナログ・コン
バータ)107の入力フォーマットと同じなので、DA
C107に直接接続することができる。
【0010】DSP1a乃至1bは、同じ汎用のDSP
であり、外部RAM(例えば1MbitDRAM×2)
を制御下において、楽音信号に種々の音響効果を付加す
る。これらDSP1a乃至1bは2入力2出力からな
り、それぞれがステレオ信号である。このうちDSP1
bのSout1は外部出力につながっていない。これら
のDSPの内部構成は、一例として図2に示すようにな
っており、マスタCPU10から転送され、内部の命令
記憶部に相当する命令RAM2aに格納されるプログラ
ム及び係数RAM2bに格納される係数データに基づ
き、データRAM2c内に格納された楽音信号に対し、
1サンプルタイム(約44.1KHz)内に複数の効果
付加プログラムを時分割処理する。即ち命令RAM2a
に記憶されたプログラムは、デコーダで解読されて、D
SP内の制御が行なわれ、音源回路106から入力され
た楽音信号は、データRAM2c内に格納され、前述の
ように、マスタCPU10から転送された係数データは
係数RAM2bに格納される。そして前記制御命令によ
り、係数データがCレジスタ3aに、楽音信号のデータ
がDレジスタ3bに順次格納され、乗算器4で両レジス
タ内の積が求められ、一旦Pレジスタ5に格納される。
該乗算値は、Yレジスタ7に格納されゲート8を介して
戻された従前の加算値と共に、加算器6で加算され、Y
レジスタ7内に格納され、これらが必要な回数繰り返さ
れる。これらの乗算・加算処理の終了した信号は、選択
器9から上位24bitだけ(倍精度の場合だけ下位2
4bitも使用される)データRAM2cに格納され、
格納された信号に対し再び別の音響効果の付加処理が行
われるか、格納された信号とは別に他の楽音信号に対し
別の音響効果の付加処理が行われるか、更にはSIO
1、SIO2のSout1乃至Sout2から出力され
ることになる。このDSP1a乃至1bへの楽音信号の
入力は、SIO1乃至2を使用し、DSPからの効果付
加信号の出力はSIO1乃至2を使用して行われる。但
し、前述のようにDSP1bのSout1は外部出力に
つながっていない。なお、これらのDSP1a乃至1b
の出力段側にある○囲みの+は、加算器を意味してお
り、実際にはCDFフォーマットによりL/R時分割の
シリアル信号がくるので、加算器手前で一度シリアル−
パラレル変換し、加算を行った後、パラレル−シリアル
変換して再びシリアル信号にして出力することになる。
であり、外部RAM(例えば1MbitDRAM×2)
を制御下において、楽音信号に種々の音響効果を付加す
る。これらDSP1a乃至1bは2入力2出力からな
り、それぞれがステレオ信号である。このうちDSP1
bのSout1は外部出力につながっていない。これら
のDSPの内部構成は、一例として図2に示すようにな
っており、マスタCPU10から転送され、内部の命令
記憶部に相当する命令RAM2aに格納されるプログラ
ム及び係数RAM2bに格納される係数データに基づ
き、データRAM2c内に格納された楽音信号に対し、
1サンプルタイム(約44.1KHz)内に複数の効果
付加プログラムを時分割処理する。即ち命令RAM2a
に記憶されたプログラムは、デコーダで解読されて、D
SP内の制御が行なわれ、音源回路106から入力され
た楽音信号は、データRAM2c内に格納され、前述の
ように、マスタCPU10から転送された係数データは
係数RAM2bに格納される。そして前記制御命令によ
り、係数データがCレジスタ3aに、楽音信号のデータ
がDレジスタ3bに順次格納され、乗算器4で両レジス
タ内の積が求められ、一旦Pレジスタ5に格納される。
該乗算値は、Yレジスタ7に格納されゲート8を介して
戻された従前の加算値と共に、加算器6で加算され、Y
レジスタ7内に格納され、これらが必要な回数繰り返さ
れる。これらの乗算・加算処理の終了した信号は、選択
器9から上位24bitだけ(倍精度の場合だけ下位2
4bitも使用される)データRAM2cに格納され、
格納された信号に対し再び別の音響効果の付加処理が行
われるか、格納された信号とは別に他の楽音信号に対し
別の音響効果の付加処理が行われるか、更にはSIO
1、SIO2のSout1乃至Sout2から出力され
ることになる。このDSP1a乃至1bへの楽音信号の
入力は、SIO1乃至2を使用し、DSPからの効果付
加信号の出力はSIO1乃至2を使用して行われる。但
し、前述のようにDSP1bのSout1は外部出力に
つながっていない。なお、これらのDSP1a乃至1b
の出力段側にある○囲みの+は、加算器を意味してお
り、実際にはCDFフォーマットによりL/R時分割の
シリアル信号がくるので、加算器手前で一度シリアル−
パラレル変換し、加算を行った後、パラレル−シリアル
変換して再びシリアル信号にして出力することになる。
【0011】DAC107は、汎用のデジタルアナログ
変換器であり、その出力信号はアンプを通してスピーカ
から出力される。
変換器であり、その出力信号はアンプを通してスピーカ
から出力される。
【0012】本実施形態では、入力される楽音信号に付
加される音響効果に変更がある場合に、マスタCPU1
0からは新たな音響効果付加ルーチン(及び必要な係数
データ)を命令RAM2aに転送し、メインルーチンの
変更は行われないようにしており、全体の転送量を少な
くしている。また付加しようとする音響効果に変更を必
要としない場合であって、複数の音響効果の付加の組み
合わせを変更しようとする場合には、次に示すように、
DSP1a及び1b内における係数データ変更による結
線変更を行うことによって、更にデータ転送量を少ない
ものにしている(係数データの転送のみ)。
加される音響効果に変更がある場合に、マスタCPU1
0からは新たな音響効果付加ルーチン(及び必要な係数
データ)を命令RAM2aに転送し、メインルーチンの
変更は行われないようにしており、全体の転送量を少な
くしている。また付加しようとする音響効果に変更を必
要としない場合であって、複数の音響効果の付加の組み
合わせを変更しようとする場合には、次に示すように、
DSP1a及び1b内における係数データ変更による結
線変更を行うことによって、更にデータ転送量を少ない
ものにしている(係数データの転送のみ)。
【0013】図3は、音源回路106の出力OUT1〜
4が2つのDSP1a乃至1bを経由してDAC107
へ到達するまでの結線経路を示している。図中f1とf
2は、DSP1aで処理される2つの音響効果付加ルー
チン(処理)を示し、f3とf4は、DSP1bで処理
される2つの音響効果付加ルーチンを示している。結線
のパターンは、M1〜M5の5種類ある。
4が2つのDSP1a乃至1bを経由してDAC107
へ到達するまでの結線経路を示している。図中f1とf
2は、DSP1aで処理される2つの音響効果付加ルー
チン(処理)を示し、f3とf4は、DSP1bで処理
される2つの音響効果付加ルーチンを示している。結線
のパターンは、M1〜M5の5種類ある。
【0014】そのうちM1の結線パターンでは、例えば
音源回路106のOUT1から出力された楽音信号に対
しf1でトレモロ効果をかけ、これに同OUT2からの
楽音信号を加算して、f2でコーラス効果をかけると共
に、それから出力された信号にOUT3から出力された
楽音信号を加算して、f3でそれにディレイ効果をか
け、更にOUT4から出力された楽音信号を加算して、
f4でリバーブ効果をかけて出力する。これらの結線の
変更は、後述する図4に示されるように、各DSP内の
メインフローの係数データを変更(例えば0H←→7F
FFH)することで行われる。またDSP1aとDSP
1bとを直列に結線するか並列に結線するかは、DSP
1aの出力をSout1にするかSout2にするかで
決定され、結局はDSP内の係数データ変更によるもの
となる。この係数データは、16bit2進数にて形成
され、2の補数として扱われるため、その取り得る値
は、下記表1に示す通りである。同表に示すように、そ
の最大値は7FFFHであり、その値を用いて乗算をし
た場合には、DSP内部にて、32767/32768
=0.99996948…という値を乗算したことにな
る。この値は略1であるため、本実施形態では7FFF
Hをもってスルーとしている。
音源回路106のOUT1から出力された楽音信号に対
しf1でトレモロ効果をかけ、これに同OUT2からの
楽音信号を加算して、f2でコーラス効果をかけると共
に、それから出力された信号にOUT3から出力された
楽音信号を加算して、f3でそれにディレイ効果をか
け、更にOUT4から出力された楽音信号を加算して、
f4でリバーブ効果をかけて出力する。これらの結線の
変更は、後述する図4に示されるように、各DSP内の
メインフローの係数データを変更(例えば0H←→7F
FFH)することで行われる。またDSP1aとDSP
1bとを直列に結線するか並列に結線するかは、DSP
1aの出力をSout1にするかSout2にするかで
決定され、結局はDSP内の係数データ変更によるもの
となる。この係数データは、16bit2進数にて形成
され、2の補数として扱われるため、その取り得る値
は、下記表1に示す通りである。同表に示すように、そ
の最大値は7FFFHであり、その値を用いて乗算をし
た場合には、DSP内部にて、32767/32768
=0.99996948…という値を乗算したことにな
る。この値は略1であるため、本実施形態では7FFF
Hをもってスルーとしている。
【0015】
【表1】
【0016】またM2の結線パターンでは、音源回路1
06のOUT1から出力された楽音信号に対し音響効果
f1をかけ、また同OUT2から出力された楽音信号に
対し音響効果f2をかけ、これらの音響効果の付与され
た信号を加算すると共に、それから出力された信号にO
UT3から出力された楽音信号を加算して、音響効果f
3をかけ、更にOUT4から出力された楽音信号を加算
して、音響効果f4をかけて出力する。
06のOUT1から出力された楽音信号に対し音響効果
f1をかけ、また同OUT2から出力された楽音信号に
対し音響効果f2をかけ、これらの音響効果の付与され
た信号を加算すると共に、それから出力された信号にO
UT3から出力された楽音信号を加算して、音響効果f
3をかけ、更にOUT4から出力された楽音信号を加算
して、音響効果f4をかけて出力する。
【0017】M3の結線パターンでは、音源回路106
のOUT1から出力された楽音信号に対し音響効果f1
をかけ、また同OUT2から出力された楽音信号に対し
音響効果f2をかけ、これらの音響効果の付与された信
号を加算すると共に、それから出力された信号にOUT
3から出力された楽音信号を加算して、音響効果f3を
かけ、他方OUT4から出力された楽音信号に対し音響
効果f4をかけた後、最後にこれらの信号を加算して出
力する。
のOUT1から出力された楽音信号に対し音響効果f1
をかけ、また同OUT2から出力された楽音信号に対し
音響効果f2をかけ、これらの音響効果の付与された信
号を加算すると共に、それから出力された信号にOUT
3から出力された楽音信号を加算して、音響効果f3を
かけ、他方OUT4から出力された楽音信号に対し音響
効果f4をかけた後、最後にこれらの信号を加算して出
力する。
【0018】M4の結線パターンでは、音源回路106
のOUT1から出力された楽音信号に対し音響効果f1
をかけ、それに同OUT2から出力された楽音信号を加
算して、更に音響効果f2をかけると共に、OUT3か
ら出力された楽音信号に対し音響効果f3をかけ、更に
OUT4から出力された楽音信号を加算して、音響効果
f4をかけ、最後に音響効果f2及びf4の付与された
信号を加算して出力する。
のOUT1から出力された楽音信号に対し音響効果f1
をかけ、それに同OUT2から出力された楽音信号を加
算して、更に音響効果f2をかけると共に、OUT3か
ら出力された楽音信号に対し音響効果f3をかけ、更に
OUT4から出力された楽音信号を加算して、音響効果
f4をかけ、最後に音響効果f2及びf4の付与された
信号を加算して出力する。
【0019】M5の結線パターンでは、音源回路106
のOUT1から出力された楽音信号に対し音響効果f1
をかけ、また同OUT2から出力された楽音信号に対し
音響効果f2をかけ、これらの音響効果の付与された信
号を加算すると共に、OUT3から出力された楽音信号
に対し音響効果f3をかけ、また同OUT4から出力さ
れた楽音信号に対し音響効果f4をかけた後、最後に音
響効果f1及びf2の加算値と音響効果f3及びf4の
加算値を更に加算して出力する。
のOUT1から出力された楽音信号に対し音響効果f1
をかけ、また同OUT2から出力された楽音信号に対し
音響効果f2をかけ、これらの音響効果の付与された信
号を加算すると共に、OUT3から出力された楽音信号
に対し音響効果f3をかけ、また同OUT4から出力さ
れた楽音信号に対し音響効果f4をかけた後、最後に音
響効果f1及びf2の加算値と音響効果f3及びf4の
加算値を更に加算して出力する。
【0020】図4は各DSPの後述するメインルーチン
のシグナルフローである。これらのDSPでは、2入力
(Sin1、Sin2)を得て、2つの効果付加(f1
とf2、又はf3とf4)を通して2出力(Sout1
〜Sout2)するものである。このフローに示された
ように、各DSPは、図3のM1〜M5の結線パターン
のいずれもが、係数データ(右向き矢視の△で示す)の
調整のみで行えるように汎用化したものが用いられてい
る(M1乃至M5では、DSP1a内のf1とf2、D
SP1b内のf3とf4内の夫々で係数データの調整に
より行われる)。図3で示された各DSP内の結線パタ
ーンは、2つのエフェクトファンクション(f1とf
2、f3とf4)が直列に結線されるか並列的に結線さ
れるかのいずれかになる。
のシグナルフローである。これらのDSPでは、2入力
(Sin1、Sin2)を得て、2つの効果付加(f1
とf2、又はf3とf4)を通して2出力(Sout1
〜Sout2)するものである。このフローに示された
ように、各DSPは、図3のM1〜M5の結線パターン
のいずれもが、係数データ(右向き矢視の△で示す)の
調整のみで行えるように汎用化したものが用いられてい
る(M1乃至M5では、DSP1a内のf1とf2、D
SP1b内のf3とf4内の夫々で係数データの調整に
より行われる)。図3で示された各DSP内の結線パタ
ーンは、2つのエフェクトファンクション(f1とf
2、f3とf4)が直列に結線されるか並列的に結線さ
れるかのいずれかになる。
【0021】直列に結線される場合は、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に変更される)。
力され、f1で所定の効果が付加された信号は、係数C
11を7FFFHとすることでスルーせしめられ、係数
C41及びC51を0Hと係数C21を7FFFHとす
ることで、f2の入力側に流れる。ここでSin2か
ら、係数C22を7FFFHとすることで入力されてき
た信号を、加算器で加算して、f2で更に音響効果を付
加する。次に係数C31と、係数C42か又は係数C5
2を、7FFFHとすると、Sout1又はSout2
から信号が出力される(但し係数C52又は係数C42
は0Hに変更される)。
【0022】他方並列に結線される場合は、係数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)から信号が出力される。
を7FFFH、係数C21を0Hとして、Sin1及び
Sin2から別個に入力された信号にf1及びf2の効
果をかけ、係数C11、C31、C51、C52(C1
1、C31、C41、C42)を7FFFHとし、係数
C41、C42(C51、C52)を0Hとすること
で、Sout2(Sout1)から信号が出力される。
【0023】もちろん各音響効果処理をスルーさせるこ
ともできるが、その場合f1側の処理では係数C11を
0H、C12を7FFFHとすることで、またf2側の
処理では係数C31を0H、C32を7FFFHとする
ことで可能となる。この時係数C11とC12との間、
係数C31とC32との間で相補的に係数データの増減
を緩やかに行えば、音響効果処理のかけられた信号と該
処理のかけられていない信号とを、クロスフェードさせ
ることが可能となる(同様にスルー状態から新たな音響
効果が付加された楽音信号を出力する状態に変更する時
も、以上のようなクロスフェードを行うことが可能であ
る)。
ともできるが、その場合f1側の処理では係数C11を
0H、C12を7FFFHとすることで、またf2側の
処理では係数C31を0H、C32を7FFFHとする
ことで可能となる。この時係数C11とC12との間、
係数C31とC32との間で相補的に係数データの増減
を緩やかに行えば、音響効果処理のかけられた信号と該
処理のかけられていない信号とを、クロスフェードさせ
ることが可能となる(同様にスルー状態から新たな音響
効果が付加された楽音信号を出力する状態に変更する時
も、以上のようなクロスフェードを行うことが可能であ
る)。
【0024】また係数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
の間でも択一の場合は、上記クロスフェードを実行させ
ると良い。尚図4の中のt1〜t6は、DSPが演算結
果を一時的に格納するテンポラリレジスタを示してい
る。
にてクロスフェードさせる場合、従来はマスタ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
の間でも択一の場合は、上記クロスフェードを実行させ
ると良い。尚図4の中のt1〜t6は、DSPが演算結
果を一時的に格納するテンポラリレジスタを示してい
る。
【0025】図5は各DSPのメインフローをフローチ
ャート形式で表現したものである。ポーリング110
は、音源回路106の送出するWS(ワードセレクト)
信号の立ち上がりエッヂを検出し、楽音信号の1周期が
始まることを検出している。
ャート形式で表現したものである。ポーリング110
は、音源回路106の送出するWS(ワードセレクト)
信号の立ち上がりエッヂを検出し、楽音信号の1周期が
始まることを検出している。
【0026】Rch入力120は、図4におけるSin
1及びSin2からの信号を、レジスタin1及びin
2へ、in1R+1、in2R+1として取り込み、R
ch出力130は、図4におけるSout1、Sout
2へ、出力側のテンポラリレジスタot1及びot2か
ら、ot1R−1、ot2R−1の信号データを出力す
る。
1及びSin2からの信号を、レジスタin1及びin
2へ、in1R+1、in2R+1として取り込み、R
ch出力130は、図4におけるSout1、Sout
2へ、出力側のテンポラリレジスタot1及びot2か
ら、ot1R−1、ot2R−1の信号データを出力す
る。
【0027】f1スルー140は、音響効果付加ルーチ
ンf1のフローを通常通り通過させる(効果付加の処理
を行わせる)か、又は音響効果の変更がありたまたま効
果プログラムの転送中(例えばパネル切り替えによりト
レモロ効果からディストーション効果のプログラムへの
切替のため該プログラムを転送する)のため、該音響効
果付加ルーチンf1をスルーさせるか否かをチェックす
る。音響効果の変更による効果プログラムの転送中に
は、命令RAM2aやデータRAM2cのクリア等の事
前処理がなされるため、音響効果付加ルーチンf1の処
理を行うと、該処理が暴走するかまたは大きな雑音を発
生する危険性があるからである。このスルーさせるか否
かを知らせる情報は、マスタCPU10が係数RAM2
bのあるアドレスの値を変更して行っても良いし、マス
タCPU10からダイレクトに各DSPの汎用入力ポー
ト(図示せず)へ信号を送っても良い。
ンf1のフローを通常通り通過させる(効果付加の処理
を行わせる)か、又は音響効果の変更がありたまたま効
果プログラムの転送中(例えばパネル切り替えによりト
レモロ効果からディストーション効果のプログラムへの
切替のため該プログラムを転送する)のため、該音響効
果付加ルーチンf1をスルーさせるか否かをチェックす
る。音響効果の変更による効果プログラムの転送中に
は、命令RAM2aやデータRAM2cのクリア等の事
前処理がなされるため、音響効果付加ルーチンf1の処
理を行うと、該処理が暴走するかまたは大きな雑音を発
生する危険性があるからである。このスルーさせるか否
かを知らせる情報は、マスタCPU10が係数RAM2
bのあるアドレスの値を変更して行っても良いし、マス
タCPU10からダイレクトに各DSPの汎用入力ポー
ト(図示せず)へ信号を送っても良い。
【0028】f1スルーでない通常の時は、callf
1(141)に進み、ここから音響効果付加ルーチンf1
をコールする。該音響効果付加ルーチンf1及び後記の
f2は、後述する図7のDSPの命令RAMのマップに
示されるように、命令RAM2aの後半の格納エリアに
記憶されている。そして選択可能な音響効果付加ルーチ
ンf1とf2は、両方合わせて前記命令RAM2aの所
定格納エリア内に納まるものでなければならない。命令
RAM2aの音響効果付加ルーチンf1及びf2の格納
エリアを、選択可能な複数の該音響効果付加ルーチンの
うちの最大ステップ数単位に分けてアドレスすれば、新
たな音響効果付加ルーチンを記憶させる時に、アドレス
に飛びを生ぜず、前記命令RAM2aにシリアルな状態
で記憶されることになる。この音響効果付加ルーチンf
1処理後の信号データの流れは、図4に示すように、右
入力については、テンポラリレジスタt1に記憶された
右信号データt1Rに係数C12のデータを乗算し、ま
たテンポラリレジスタt2に記憶された右信号データt
2Rに係数C11のデータを乗算して、両値を加算し、
それをテンポラリレジスタt3の右信号データt3Rと
して記憶させる(t3R←t1R×C12+t2R×C
11)。左入力についても同様である(t3L←t1L
×C12+t2L×C11)。他方テンポラリレジスタ
t3に記憶された信号データt3R、t3Lは、更に係
数C21のデータが乗算され、また前記レジスタin2
に記憶された信号データin2R、in2Lに係数C2
2のデータを乗算して、両値を加算し、それをテンポラ
リレジスタt4の信号データt4R、t4Lとして記憶
させる(t4R←t3R×C21+in2R×C22、
t4L←t3L×C21+in2L×C22)。
1(141)に進み、ここから音響効果付加ルーチンf1
をコールする。該音響効果付加ルーチンf1及び後記の
f2は、後述する図7のDSPの命令RAMのマップに
示されるように、命令RAM2aの後半の格納エリアに
記憶されている。そして選択可能な音響効果付加ルーチ
ンf1とf2は、両方合わせて前記命令RAM2aの所
定格納エリア内に納まるものでなければならない。命令
RAM2aの音響効果付加ルーチンf1及びf2の格納
エリアを、選択可能な複数の該音響効果付加ルーチンの
うちの最大ステップ数単位に分けてアドレスすれば、新
たな音響効果付加ルーチンを記憶させる時に、アドレス
に飛びを生ぜず、前記命令RAM2aにシリアルな状態
で記憶されることになる。この音響効果付加ルーチンf
1処理後の信号データの流れは、図4に示すように、右
入力については、テンポラリレジスタt1に記憶された
右信号データt1Rに係数C12のデータを乗算し、ま
たテンポラリレジスタt2に記憶された右信号データt
2Rに係数C11のデータを乗算して、両値を加算し、
それをテンポラリレジスタt3の右信号データt3Rと
して記憶させる(t3R←t1R×C12+t2R×C
11)。左入力についても同様である(t3L←t1L
×C12+t2L×C11)。他方テンポラリレジスタ
t3に記憶された信号データt3R、t3Lは、更に係
数C21のデータが乗算され、また前記レジスタin2
に記憶された信号データin2R、in2Lに係数C2
2のデータを乗算して、両値を加算し、それをテンポラ
リレジスタt4の信号データt4R、t4Lとして記憶
させる(t4R←t3R×C21+in2R×C22、
t4L←t3L×C21+in2L×C22)。
【0029】またf1スルーの場合は、音響効果付加ル
ーチンf1をスルーする前に、f1と同程度のステップ
数だけウェイトをかけるために、f1相当delay1
42に進む。ここでは、例えばDSPに内蔵されたルー
プ命令を用いて必要なステップ数だけループさせる(係
数RAM2bに書かれているf1のステップ数をロード
し、その数だけディレイさせる)。このループはここで
使用したDSPが汎用であり、そのため冗長な機能が省
略されていて、R信号とL信号の入出力は同じポートに
て、図6のDSP入出力タイミングを表したタイムチャ
ートに示されるように、WS信号の立ち上がり(又は立
ち下がり)から所定時間(シリアルデータR0、L0処
理時間相当)内に行わなければならないことに起因す
る。
ーチンf1をスルーする前に、f1と同程度のステップ
数だけウェイトをかけるために、f1相当delay1
42に進む。ここでは、例えばDSPに内蔵されたルー
プ命令を用いて必要なステップ数だけループさせる(係
数RAM2bに書かれているf1のステップ数をロード
し、その数だけディレイさせる)。このループはここで
使用したDSPが汎用であり、そのため冗長な機能が省
略されていて、R信号とL信号の入出力は同じポートに
て、図6のDSP入出力タイミングを表したタイムチャ
ートに示されるように、WS信号の立ち上がり(又は立
ち下がり)から所定時間(シリアルデータR0、L0処
理時間相当)内に行わなければならないことに起因す
る。
【0030】次のf2スルー150とcallf2(1
51)、f2相当delay152については、f1の
それと同じなので、細かい部分は省略する。但し音響効
果付加ルーチンf2処理後の信号データの流れは、テン
ポラリレジスタt4に格納された信号データt4R、t
4Lに係数C32を乗算し、テンポラリレジスタt5に
格納された信号データt5R、t5Lに係数C31を乗
算して、両値を加算し、それをテンポラリレジスタt6
に、信号データt6R、t6Lとして記憶させる(t6
R←t4R×C32+t5R×C31、t6L←t4L
×C32+t5L×C31)。
51)、f2相当delay152については、f1の
それと同じなので、細かい部分は省略する。但し音響効
果付加ルーチンf2処理後の信号データの流れは、テン
ポラリレジスタt4に格納された信号データt4R、t
4Lに係数C32を乗算し、テンポラリレジスタt5に
格納された信号データt5R、t5Lに係数C31を乗
算して、両値を加算し、それをテンポラリレジスタt6
に、信号データt6R、t6Lとして記憶させる(t6
R←t4R×C32+t5R×C31、t6L←t4L
×C32+t5L×C31)。
【0031】テンポラリレジスタ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)。
た信号データ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)。
【0032】次に、Lch入力160を行い、図4にお
けるSin1及びSin2からの信号を、レジスタin
1及びin2へ、in1L+1、in2L+1として取
り込み、Lch出力170は、図4におけるSout
1、Sout2へ、出力側のテンポラリレジスタot1
及びot2から、ot1L−1、ot2L−1の信号デ
ータを出力する。
けるSin1及びSin2からの信号を、レジスタin
1及びin2へ、in1L+1、in2L+1として取
り込み、Lch出力170は、図4におけるSout
1、Sout2へ、出力側のテンポラリレジスタot1
及びot2から、ot1L−1、ot2L−1の信号デ
ータを出力する。
【0033】最後にデータ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)として読み出
すことになる。
値を+1してスタートに戻る。これは、次回のサンプリ
ングに基づくプログラムで、同じデータRAMアドレス
を指定しても、実際には自動的に+1のアドレスをアク
セスするためである。これにより前回(in1R/L+
1、in2R/L+1)に、格納した入力データは、今
回(in1R/L、in2R/L)として読み出すこと
になり、また今回(ot1R/L、ot2R/L)とし
て格納された出力データは、次回サンプリングタイムに
(ot1R/L−1、ot2R/L−1)として読み出
すことになる。
【0034】上記図5の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の処理を行う。
リングタイム(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の処理を行う。
【0035】
【表2】
【0036】なお前述した図7のDSPの命令RAMの
マッピングについて説明する。同命令RAM2aの前半
は、楽音信号の入出力を制御するプログラム[Rch入
出力(in1R+1←Sin1、in2R+1←Sin
2、Sout1←ot1R−1、Sout2←ot2R
−1)、Lch入出力用(in1L+1←Sin1、i
n2L+1←Sin2、Sout1←ot1L−1、S
out2←ot2L−1)]を含むメインルーチンが、
またその後半には、前記メインルーチンからアクセスさ
れることによって作動する選択可能な音響効果付加ルー
チンf1及びf2が記憶されている。前述のように、こ
の音響効果付加ルーチンf1及びf2は、エフェクトフ
ァンクション切替時にマスタCPU10によって転送さ
れるが、その際メインルーチンの書き換えは行われな
い。更に前記メインルーチンは、入力信号(L&R入力
信号)を選択された音響効果付加ルーチンf1又はf2
に分配する(callf1乃至callf2)と共に、
これらの音響効果付加ルーチンf1及びf2から出力さ
れる効果付加信号を収集(t3R←t1R×C12+t
2R×C11、t3L←t1L×C12+t2L×C1
1、t4R←t3R×C21+in2R×C22、t4
L←t3L×C21+in2L×C22、t6R←t4
R×C32+t5R×C31、t6L←t4L×C32
+t5L×C31、ot1R←t3R×C41+t6R
×C42、ot1L←t3L×C41+t6L×C4
2、ot2R←t3R×C51+t6R×C52、ot
2L←t3L×C51+t6L×C52)して、出力信
号(L&R出力信号)とする機能を有している。その他
該メインルーチンには、前述のように、f1乃至f2ス
ルーの分岐によって、これらのスルー時に、f1相当d
elay、f2相当delay処理を行う命令を含んで
いる。
マッピングについて説明する。同命令RAM2aの前半
は、楽音信号の入出力を制御するプログラム[Rch入
出力(in1R+1←Sin1、in2R+1←Sin
2、Sout1←ot1R−1、Sout2←ot2R
−1)、Lch入出力用(in1L+1←Sin1、i
n2L+1←Sin2、Sout1←ot1L−1、S
out2←ot2L−1)]を含むメインルーチンが、
またその後半には、前記メインルーチンからアクセスさ
れることによって作動する選択可能な音響効果付加ルー
チンf1及びf2が記憶されている。前述のように、こ
の音響効果付加ルーチンf1及びf2は、エフェクトフ
ァンクション切替時にマスタCPU10によって転送さ
れるが、その際メインルーチンの書き換えは行われな
い。更に前記メインルーチンは、入力信号(L&R入力
信号)を選択された音響効果付加ルーチンf1又はf2
に分配する(callf1乃至callf2)と共に、
これらの音響効果付加ルーチンf1及びf2から出力さ
れる効果付加信号を収集(t3R←t1R×C12+t
2R×C11、t3L←t1L×C12+t2L×C1
1、t4R←t3R×C21+in2R×C22、t4
L←t3L×C21+in2L×C22、t6R←t4
R×C32+t5R×C31、t6L←t4L×C32
+t5L×C31、ot1R←t3R×C41+t6R
×C42、ot1L←t3L×C41+t6L×C4
2、ot2R←t3R×C51+t6R×C52、ot
2L←t3L×C51+t6L×C52)して、出力信
号(L&R出力信号)とする機能を有している。その他
該メインルーチンには、前述のように、f1乃至f2ス
ルーの分岐によって、これらのスルー時に、f1相当d
elay、f2相当delay処理を行う命令を含んで
いる。
【0037】本実施形態の電子楽器は、次のようにして
使用される。まず、該電子楽器のスイッチをONとする
ことで、マスタCPU10は、パネル初期設定・RAM
104の初期設定・DSPの初期設定等を行う。そして
FD入出力ブロック103から必要な情報をRAM10
4に読み出す。演奏者のパネル操作により、マスタCP
U10は、RAM104及び/又はROM105から、
メインルーチン及び音響効果付加ルーチンをDSP1a
及びDSP1bの命令RAM2aに転送する。この時音
響効果付加ルーチンは、パネルで選択された音響効果の
種類により、それに対応したものが送られることにな
る。また同時に選択された音響効果の種類に対応した係
数データも、DSP内の係数RAM2bに転送される。
この時パネル操作で既に両DSP内及びDSP間の結線
パターンM1〜M5が決定されていることになる。
使用される。まず、該電子楽器のスイッチをONとする
ことで、マスタCPU10は、パネル初期設定・RAM
104の初期設定・DSPの初期設定等を行う。そして
FD入出力ブロック103から必要な情報をRAM10
4に読み出す。演奏者のパネル操作により、マスタCP
U10は、RAM104及び/又はROM105から、
メインルーチン及び音響効果付加ルーチンをDSP1a
及びDSP1bの命令RAM2aに転送する。この時音
響効果付加ルーチンは、パネルで選択された音響効果の
種類により、それに対応したものが送られることにな
る。また同時に選択された音響効果の種類に対応した係
数データも、DSP内の係数RAM2bに転送される。
この時パネル操作で既に両DSP内及びDSP間の結線
パターンM1〜M5が決定されていることになる。
【0038】次に演奏者の操作により、鍵スイッチブロ
ック101のキースイッチON・OFF情報を、キーベ
ロシティと共に、マスタCPU10に送ったり、MID
I入出力ブロック102から、或いはRAM104・R
OM105から演奏情報をマスタCPU10に送り、更
にマスタCPU10は、該演奏情報に基づき、対応する
音色のパラメータとキーON・OFFのアサイン結果
を、音源回路106に送り、該音源回路106のOUT
1〜OUT4から発音データが出力される。
ック101のキースイッチON・OFF情報を、キーベ
ロシティと共に、マスタCPU10に送ったり、MID
I入出力ブロック102から、或いはRAM104・R
OM105から演奏情報をマスタCPU10に送り、更
にマスタCPU10は、該演奏情報に基づき、対応する
音色のパラメータとキーON・OFFのアサイン結果
を、音源回路106に送り、該音源回路106のOUT
1〜OUT4から発音データが出力される。
【0039】この発音データは、各DSPのSIO1乃
至2を経由してデータRAM2cに送られ、その結果前
記結線パターンM1〜M5のいずれかに基づく音響効果
付加処理がなされる(エフェクトがかけられる)。そし
て所望の音響効果が付加された楽音信号は、DAC10
7により出力されてアンプを介してスピーカから出力さ
れる。音響効果付加ルーチンfnは、命令RAM2aの
後半にマッピングされており、メインルーチンによりコ
ールされて実行されることになる。途中でパネルにて新
たな効果が選択された場合、マスタCPU10は、RA
M104・ROM105からそれに対応する新たな音響
効果付加ルーチンや係数データを、DSP1a及び1b
に転送する。またその際音響効果付加ルーチンfnをス
ルーさせることになるが、このスルーの時と該スルー状
態から新たな音響効果が付加された楽音信号を出力する
状態に変更する時に、前述のように、各DSP内の係数
C11とC12との間、係数C31とC32との間で相
補的に該係数データの増減を行うことで、音響効果処理
のかけられた信号と該処理のかけられていない信号と
を、クロスフェードさせることが可能となる。
至2を経由してデータRAM2cに送られ、その結果前
記結線パターンM1〜M5のいずれかに基づく音響効果
付加処理がなされる(エフェクトがかけられる)。そし
て所望の音響効果が付加された楽音信号は、DAC10
7により出力されてアンプを介してスピーカから出力さ
れる。音響効果付加ルーチンfnは、命令RAM2aの
後半にマッピングされており、メインルーチンによりコ
ールされて実行されることになる。途中でパネルにて新
たな効果が選択された場合、マスタCPU10は、RA
M104・ROM105からそれに対応する新たな音響
効果付加ルーチンや係数データを、DSP1a及び1b
に転送する。またその際音響効果付加ルーチンfnをス
ルーさせることになるが、このスルーの時と該スルー状
態から新たな音響効果が付加された楽音信号を出力する
状態に変更する時に、前述のように、各DSP内の係数
C11とC12との間、係数C31とC32との間で相
補的に該係数データの増減を行うことで、音響効果処理
のかけられた信号と該処理のかけられていない信号と
を、クロスフェードさせることが可能となる。
【0040】即ち、マスタCPU10は、DSP1a及
びDSP1bのC11、C31を7FFFH→0Hへ、
C12、C32を0H→7FFFHへクロスフェードさ
せる。これによって音響効果付加ルーチンf1、f2と
も、効果が付加されずスルーとなる。マスタCPU10
はDSP1a及びDSP1bにジャンプ(f1及びf2
スルー)するように命じる。この命令伝達方法は、前述
のように、係数RAMの1つを書き替えて行っても良い
し、DSP1a及びDSP1bの汎用入力ポートに信号
を送っても良い。DSPは、この信号を受けている間は
命令RAM2aのf1及びf2プログラムエリアをアク
セスしないことになる。マスタCPU10は、DSP1
a及び1bの書き替えに必要な効果付加ルーチンのプロ
グラムのみを転送する。この転送中もDSP1a及び1
bは音源回路106からシリアルで送られてくる楽音信
号を、音響効果の付加なしに、各サンプリング毎に出力
している。その後マスタCPU10は、DSP1a及び
1bにジャンプ(f1スルーf2スルー)を解除(中
止)するように命じる。DSPはこのジャンプ解除で通
常の処理フローに戻り、音響効果付加ルーチンf1、f
2のプログラムもアクセスするようになる。但しまだC
11とC31は0H、C12とC32は7FFFHであ
るため、楽音信号はスルーの時と全く同じである。更に
マスタCPU10は、DSP1a及び1bに新たな音響
効果付加ルーチンの係数データを転送する。この期間は
各DSPが新たな係数データに対応した演算が軌道にの
るまで必要となる。一般的に外部RAMデータが書き替
えられる時間まで考慮すると、1msec〜50mse
cほど必要となる。その時間は外部RAMの容量に比例
する。新たな音響効果付加ルーチンが新たな係数データ
に基づいて正常に処理されるようになった時に、マスタ
CPU10は、DSP1a及び1bのC11、C31を
0H→7FFFHへ、C12、C32を7FFFH→0
Hへクロスフェードさせる。これによって新たな音響効
果の付加が可能となる。またクロスフェード処理につい
ても特別なクロスフェード回路や加算器などのディスク
リート部品は不要となる。
びDSP1bのC11、C31を7FFFH→0Hへ、
C12、C32を0H→7FFFHへクロスフェードさ
せる。これによって音響効果付加ルーチンf1、f2と
も、効果が付加されずスルーとなる。マスタCPU10
はDSP1a及びDSP1bにジャンプ(f1及びf2
スルー)するように命じる。この命令伝達方法は、前述
のように、係数RAMの1つを書き替えて行っても良い
し、DSP1a及びDSP1bの汎用入力ポートに信号
を送っても良い。DSPは、この信号を受けている間は
命令RAM2aのf1及びf2プログラムエリアをアク
セスしないことになる。マスタCPU10は、DSP1
a及び1bの書き替えに必要な効果付加ルーチンのプロ
グラムのみを転送する。この転送中もDSP1a及び1
bは音源回路106からシリアルで送られてくる楽音信
号を、音響効果の付加なしに、各サンプリング毎に出力
している。その後マスタCPU10は、DSP1a及び
1bにジャンプ(f1スルーf2スルー)を解除(中
止)するように命じる。DSPはこのジャンプ解除で通
常の処理フローに戻り、音響効果付加ルーチンf1、f
2のプログラムもアクセスするようになる。但しまだC
11とC31は0H、C12とC32は7FFFHであ
るため、楽音信号はスルーの時と全く同じである。更に
マスタCPU10は、DSP1a及び1bに新たな音響
効果付加ルーチンの係数データを転送する。この期間は
各DSPが新たな係数データに対応した演算が軌道にの
るまで必要となる。一般的に外部RAMデータが書き替
えられる時間まで考慮すると、1msec〜50mse
cほど必要となる。その時間は外部RAMの容量に比例
する。新たな音響効果付加ルーチンが新たな係数データ
に基づいて正常に処理されるようになった時に、マスタ
CPU10は、DSP1a及び1bのC11、C31を
0H→7FFFHへ、C12、C32を7FFFH→0
Hへクロスフェードさせる。これによって新たな音響効
果の付加が可能となる。またクロスフェード処理につい
ても特別なクロスフェード回路や加算器などのディスク
リート部品は不要となる。
【0041】上記の例では、C11及びC31と、C1
2及びC32とを常にペアーでクロスフェードさせた
が、もし音響効果付加ルーチンf1のみを転送する場合
は、f2側はその効果が付加されたままで良いため、C
31とC32はクロスフェードさせる必要はない。また
上記のようにプログラムを転送する場合は、マスタCP
U10の処理が多少複雑になるが、係数データを転送す
る場合は、ただ単にマスタCPU10はその係数データ
を送ればよいことになる。
2及びC32とを常にペアーでクロスフェードさせた
が、もし音響効果付加ルーチンf1のみを転送する場合
は、f2側はその効果が付加されたままで良いため、C
31とC32はクロスフェードさせる必要はない。また
上記のようにプログラムを転送する場合は、マスタCP
U10の処理が多少複雑になるが、係数データを転送す
る場合は、ただ単にマスタCPU10はその係数データ
を送ればよいことになる。
【0042】即ち、音響効果の種類の変更は行わずに、
命令RAM2a上にある音響効果付加ルーチンのかけ方
を変更する場合は、上述した結線パターンの変更によ
る。結線パターンM1〜M5の結線の仕方は、前述のよ
うに係数データにより決定され、従って該係数データの
変更のみで結線パターンの変更が可能となる。
命令RAM2a上にある音響効果付加ルーチンのかけ方
を変更する場合は、上述した結線パターンの変更によ
る。結線パターンM1〜M5の結線の仕方は、前述のよ
うに係数データにより決定され、従って該係数データの
変更のみで結線パターンの変更が可能となる。
【0043】
【発明の効果】以上詳述した本発明の構成を有する装置
によれば、一旦命令記憶部に記憶されたメインルーチン
は、音響効果切り換え時に変更されることなくそのまま
残り、新たな音響効果付加ルーチンのみ転送されるた
め、従前よりその分転送量が少なくなって、スピードア
ップにつながる。従って複数の音響効果を付加する時の
プログラムの切替のスピードアップを図ることができる
ようになり、付加できる音響効果の数もDSP内の命令
記憶部の容量が許す限り増やすことができ、音楽的表現
の自由度が増すことになる。さらに汎用的なDSPの構
成では、通常分岐命令を有しておらず、音響効果付加ル
ーチンの切り換え時にDSPがその処理を行うことにな
れば、処理が暴走するか又は大きな雑音を発生してしま
う危険があったが、本願構成では、該音響効果付加ルー
チンをアクセスしないようにジャンプ(スルー)させて
いるため、そのような危険もなくなる。
によれば、一旦命令記憶部に記憶されたメインルーチン
は、音響効果切り換え時に変更されることなくそのまま
残り、新たな音響効果付加ルーチンのみ転送されるた
め、従前よりその分転送量が少なくなって、スピードア
ップにつながる。従って複数の音響効果を付加する時の
プログラムの切替のスピードアップを図ることができる
ようになり、付加できる音響効果の数もDSP内の命令
記憶部の容量が許す限り増やすことができ、音楽的表現
の自由度が増すことになる。さらに汎用的なDSPの構
成では、通常分岐命令を有しておらず、音響効果付加ル
ーチンの切り換え時にDSPがその処理を行うことにな
れば、処理が暴走するか又は大きな雑音を発生してしま
う危険があったが、本願構成では、該音響効果付加ルー
チンをアクセスしないようにジャンプ(スルー)させて
いるため、そのような危険もなくなる。
【図1】本発明に係る音響効果付加装置の1実施形態構
成を備えた電子楽器をブロック図である。
成を備えた電子楽器をブロック図である。
【図2】DSPの内部構成を示すブロック図である。
【図3】DSP部分のエフェクトファンクションfnの
結線図である。
結線図である。
【図4】各DSPにおけるメインルーチンのシグナルフ
ローを示す説明図である。
ローを示す説明図である。
【図5】各DSPのメインフローを示すフローチャート
である。
である。
【図6】DSP入出力タイミングを表したタイムチャー
トである。
トである。
【図7】DSPの命令RAMのマッピング状態を示す説
明図である。
明図である。
1a、1b DSP 2a 命令RAM 2b 係数RAM 2c データRAM 3a Cレジスタ 3b Dレジスタ 4 乗算器 5 Pレジスタ 6 加算器 7 Yレジスタ 8 ゲート 9 選択器 10 マスタCPU 106 音源回路
フロントページの続き (56)参考文献 特開 平6−289871(JP,A) 特開 平7−140978(JP,A) 特開 平7−181969(JP,A) 特開 平4−167131(JP,A) 特開 平5−289666(JP,A) 特開 平6−259249(JP,A) 特開 平5−53572(JP,A) 特開 平5−27760(JP,A) 特開 平6−186972(JP,A) (58)調査した分野(Int.Cl.7,DB名) G10H 1/00 - 7/12
Claims (2)
- 【請求項1】 主演算回路の制御下で作動し、1つのD
SPで複数の音響効果が同時に選択処理可能な音響効果
付加装置において、楽音信号の入出力を制御するプログ
ラムを含むメインルーチンと、必要な時に主演算回路に
より転送されて前記メインルーチンからアクセスされる
ことで作動する複数の選択可能な音響効果付加ルーチン
とを記憶する命令記憶部を前記DSP内に有しており、
音響効果切り換え時には、新たな音響効果付加ルーチン
のみを前記命令記憶部に転送すると共に、その間は転送
されている命令記憶部の音響効果付加ルーチンをアクセ
スしないようにジャンプすることを特徴とするDSPを
用いた音響効果付加装置。 - 【請求項2】 請求項1記載のDSPを用いた音響効果
付加装置において、前記複数の音響効果付加ルーチン
は、その付加される効果に関係なく前記命令記憶部の特
定エリアに格納されており、且つ選択可能な音響効果付
加ルーチンは、全てを合わせて前記命令記憶部の特定エ
リア内に納まるものであることを特徴とする請求項1記
載のDSPを用いた音響効果付加装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08049096A JP3305562B2 (ja) | 1996-03-11 | 1996-03-11 | Dspを用いた音響効果付加装置 |
US08/806,920 US6031916A (en) | 1996-02-28 | 1997-02-26 | Sound effect adding device using DSP |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08049096A JP3305562B2 (ja) | 1996-03-11 | 1996-03-11 | Dspを用いた音響効果付加装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09244651A JPH09244651A (ja) | 1997-09-19 |
JP3305562B2 true JP3305562B2 (ja) | 2002-07-22 |
Family
ID=13719746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP08049096A Expired - Fee Related JP3305562B2 (ja) | 1996-02-28 | 1996-03-11 | Dspを用いた音響効果付加装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3305562B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6391991B2 (ja) * | 2014-05-26 | 2018-09-19 | 株式会社河合楽器製作所 | 効果付与装置 |
-
1996
- 1996-03-11 JP JP08049096A patent/JP3305562B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09244651A (ja) | 1997-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5502277A (en) | Filter device and electronic musical instrument using the filter device | |
EP0698875B1 (en) | Acoustic signal producing apparatus | |
JP4702392B2 (ja) | 共鳴音発生装置および電子楽器 | |
EP0568789B1 (en) | Digital signal processing apparatus employed in electronic musical instruments | |
JP3358324B2 (ja) | 電子楽器 | |
JPH096350A (ja) | 効果付与装置およびこの効果付与装置を用いた電子楽器 | |
US6031916A (en) | Sound effect adding device using DSP | |
JP3305562B2 (ja) | Dspを用いた音響効果付加装置 | |
US20220199057A1 (en) | Sound Signal Generation Method, Sound Signal Generation Device, Non-transitory Computer Readable Medium Storing Sound Signal Generation Program and Electronic Musical Apparatus | |
JP3179333B2 (ja) | Dspを用いた音響効果付加装置 | |
JP2001265352A (ja) | 楽音信号処理装置 | |
JP2002351460A (ja) | Dspを用いた音響効果付加装置 | |
JPH09237090A (ja) | Dspを用いた音響効果付加装置 | |
JP2022038902A (ja) | 音響処理装置、方法、およびプログラム | |
JP3141789B2 (ja) | コンピュータソフトウェアを用いた音源システム | |
JPH09292879A (ja) | デジタルシグナルプロセッサ | |
JPH08234759A (ja) | 楽音信号発生装置 | |
JP3223827B2 (ja) | 音源波形データ生成方法および装置 | |
WO2020195041A1 (ja) | フィルタ効果付与装置、電子楽器及び電子楽器の制御方法 | |
JP3918309B2 (ja) | エフェクト装置 | |
JP3000828B2 (ja) | 楽音効果装置および楽音信号発生装置 | |
JP3324409B2 (ja) | 楽音処理方法及び装置 | |
JP3991475B2 (ja) | 音声データ処理装置およびコンピュータシステム | |
Ciesla | More Effects and Digital Audio Workstations | |
JP3508139B2 (ja) | デジタル信号処理プロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20020423 |
|
LAPS | Cancellation because of no payment of annual fees |