JP2000242489A - 信号処理装置の資源管理装置、プログラム転送方法、及び記録媒体 - Google Patents

信号処理装置の資源管理装置、プログラム転送方法、及び記録媒体

Info

Publication number
JP2000242489A
JP2000242489A JP11094605A JP9460599A JP2000242489A JP 2000242489 A JP2000242489 A JP 2000242489A JP 11094605 A JP11094605 A JP 11094605A JP 9460599 A JP9460599 A JP 9460599A JP 2000242489 A JP2000242489 A JP 2000242489A
Authority
JP
Japan
Prior art keywords
program
signal processing
processing device
dsp
instruction
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
JP11094605A
Other languages
English (en)
Inventor
Hirotake Sato
博毅 佐藤
Takeshi Imai
毅 今井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP11094605A priority Critical patent/JP2000242489A/ja
Priority to US09/459,870 priority patent/US6718545B1/en
Publication of JP2000242489A publication Critical patent/JP2000242489A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • G10H7/006Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof using two or more algorithms of different types to generate tones, e.g. according to tone color or to processor workload

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 高い汎用性を維持させつつ、信号処理装置が
使用可能な資源の利用効率を向上させる。 【解決手段】 CPU101は、楽音に付加させる音響
効果をユーザが新たに指定すると、ROM102から転
送すべきプログラムを命令単位で読み出してDSP10
4に転送する。ROM102から読み出した命令は、R
OM102に格納されているプログラム・アドレス・テ
ーブルを参照して内容を変更すべき命令か否か判定し、
内容を変更すべき命令と判定した場合には、ROM10
2に格納されているDSP・RAM・アドレス・テーブ
ル中のROM106のアドレスを用いて、その命令のア
ドレス部の内容を変更する。そのようにして命令のアド
レス部の内容を変更することにより、CPU101は、
DSP104が使用する資源の管理を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、DSP(デジタル
・シグナル・プロセサ)等のモジュール化されたプログ
ラムを受け取って実行する信号処理装置が使用する資源
を管理するための技術に関する。
【0002】
【従来の技術】DSP等の信号処理装置には、演算の繰
り返しを高速に処理する回路構成が採用されている。そ
れにより、汎用のマイクロプロセサ(CPU)に比べ
て、演算速度が大幅に向上されている。高速な演算速度
を有するという特長を生かして、通信処理や音声処理、
及び画像処理等の用途に幅広く用いられている。オーデ
ィオ(音楽)分野では、コンサート・ホールや劇場にい
るかのような雰囲気を反射音(残響音)により作り出す
といったことを含む各種音響効果や音源を実現させるた
めの装置として注目を集めている。
【0003】信号処理装置は、プログラムを実行するこ
とで処理を行う。そのプログラムは、用途が前もって決
まっているような場合、信号処理装置に搭載されたRO
M等に予め記憶させることもある。しかし、信号処理装
置の多くは、外部から転送されたプログラムを受け取っ
てRAM等に格納し実行するようになっている。これ
は、転送するプログラムを変えることによって、信号処
理装置に状況に応じた様々な処理を行わせられるように
するためである。
【0004】信号処理装置には、複数の機能を実現させ
る処理を行わせることも多い。信号処理装置を楽音への
音響効果の付加に用いる場合を例に挙げれば、コンプレ
ッサやディストーション、コーラス等の各種音響効果は
単独で楽音に付加させることもあるが、それらのうちの
幾つかを同時に楽音に付加させるようなことも多々行わ
れる。
【0005】そのような機能の組合せ(上記の例では音
響効果の組合わせ)も考慮しなければならないことか
ら、考えられる処理内容(音響効果の組合せ)毎にプロ
グラムを全て用意するとプログラム数が膨大となる。そ
れを回避する方法には、考えられる処理内容のなかから
抜粋した処理内容を行わせるプログラムを用意する、或
る特定の機能だけを実現できるようにモジュール化した
プログラムを用意する、の二通りの方法がある。しか
し、前者の方法では、予め用意したプログラムにより実
現できる機能の組合せが限定されることになって、ユー
ザの選択肢は狭くなる。このため、ユーザの選択肢をよ
り広くさせることを重要視した場合には、後者の方法が
採用されることが多くなっている。その後者の方法に
は、転送するプログラムの種類、その数を変えることに
より、信号処理装置に一つの機能だけでなく、様々な機
能(高い汎用性)を実現させられることから、用意する
プログラム数が少なくて済むという利点がある。
【0006】プログラムは、一般に、処理対象とするデ
ータを入力して何らかの操作を施し、それによって得ら
れたデータを処理結果として出力するようになってい
る。周知のように、処理対象とするデータの読出(入
力)先、及び処理結果であるデータの格納(出力)先と
いった実行時に使用する資源は、プログラム内に予め定
義されている。
【0007】実行させるプログラムの種類や、プログラ
ムの実行順序等(以降、便宜的に、これらをまとめて実
行形態と呼ぶことにする)は状況によって変化する。こ
れは、次に実行するプログラムが処理対象とするデータ
の格納場所が、その前に実行したプログラムによって変
化することを意味する。このことから、従来は、プログ
ラム間のデータの受け渡しを実現させるプログラム、即
ち或るプログラムを実行することでどこかの領域に書き
込まれたデータを、それの次に実行されるプログラムが
データを読み出す領域に移す処理を行うためのプログラ
ム(以降、便宜的に補助プログラムと呼ぶ。他のプログ
ラムについては機能プログラムと呼ぶことにする)を用
意していた。その補助プログラムを用意することで、従
来は、例えば以下のように信号処理装置へのプログラム
の転送を行っていた。
【0008】信号処理装置に転送するプログラムは、通
常、ROMや磁気ディスク等の不揮発性の記憶媒体に格
納されている。CPU等の信号処理装置にプログラムを
転送する制御装置は、信号処理装置に行わせる処理の内
容から転送すべき機能プログラムを特定するとともに、
実行順序が前後する機能プログラムの種類から、それら
の間でデータの受け渡しを実現させる補助プログラムを
特定する。そのようにして特定したプログラムを記憶媒
体から読み出し、機能プログラム間に対応する補助プロ
グラムを挿入した形で信号処理装置に転送していた。そ
れにより、信号処理装置に機能プログラムと補助プログ
ラムを交互に実行させて、機能プログラム間のデータの
受け渡しを行わせていた。
【0009】
【発明が解決しようとする課題】機能プログラムの実行
形態を事前に決めておくことができないことから、各機
能プログラムは、他の機能プログラムの処理結果を消去
するといったことがないように、その実行時に使用する
資源(領域)が定義されている。各機能プログラム毎
に、異なる資源を使用することが定義されている。従来
は、信号処理装置に使用可能な資源として大容量のメモ
リを用意することにより、使用する資源が異なる機能プ
ログラムを実行できるようにしていた。
【0010】しかし、機能プログラムの実行時に使用し
た資源(メモリ内の領域)は、その実行が終了すると、
通常、そこに書き込まれたデータを読み出した後は使用
されない。従って、従来の対処法では、一時的に使用さ
れる領域を確保するために、大容量のメモリを信号処理
装置に用意する形となっていた。このため、使用可能な
資源のなかで浪費される部分が多く、資源の利用効率が
低いという問題点があった。
【0011】従来では、機能プログラム間のデータの受
け渡しを実現させるために補助プログラムを用意してい
た。その補助プログラムは、信号処理装置に転送されて
メモリに格納される。このため、補助プログラムを格納
できるように、信号処理装置により大容量のメモリを用
意しなければならなかった。それは、信号処理装置の製
造コストをより上げるというだけでなく、その負荷をよ
り重くするということも意味する。このようなことから
も、高い汎用性を維持させようとした場合に生じる、上
記問題点を解決することが強く望まれていた。
【0012】本発明の課題は、高い汎用性を維持させつ
つ、信号処理装置が使用可能な資源の利用効率を向上さ
せることにある。
【0013】
【課題を解決するための手段】本発明の第1及び第2の
態様の資源管理装置は、共に、モジュール化されたプロ
グラムを受け取って実行する信号処理装置が使用する資
源を管理することを前提とし、以下の手段を備える。
【0014】第1の態様の資源管理装置は、プログラム
を記憶した記憶手段から信号処理装置に転送すべきプロ
グラムを読み出すプログラム読出手段と、プログラム読
出手段が読み出したプログラムを構成する命令の内容を
変更する命令変更手段と、命令変更手段により命令の内
容が変更されたプログラムを信号処理装置に転送する転
送手段と、を具備する。
【0015】なお、上記の構成において、命令変更手段
は、プログラム中で内容を変更すべき命令を検出し、該
検出した命令の内容として、データの読み出し先、或い
は該データの格納先を指定する該命令中のアドレス部の
内容を変更することにより、信号処理装置が使用する資
源を管理する、ことが望ましい。
【0016】また、信号処理装置に転送した全プログラ
ムのうちの一部のプログラムを他のプログラムに変える
場合、該一部のプログラムに割り当てた資源を該他のプ
ログラムに割り当てる命令の内容の変更を行って転送
し、該一部のプログラムと該他のプログラムの資源量が
一致していないときに、該一部のプログラムの資源に続
けて資源が割り当てられたプログラムを、該資源量の違
いに応じた命令の内容の変更を行って転送する、ことが
望ましい。
【0017】第2の態様の資源管理装置は、所定の記憶
手段に記憶されたプログラムのなかで信号処理装置に転
送させるプログラムを、該プログラムの実行に必要な資
源量、及び該信号処理装置の残りの資源量から選択する
プログラム選択手段と、プログラム選択手段が選択した
プログラムを記憶手段から読み出して信号処理装置に転
送する転送手段と、を具備する。
【0018】なお、上記の構成において、プログラム選
択手段は、転送すべきと指定されたプログラムの実行に
必要な資源量が残っている場合、該指定されたプログラ
ムを転送させるプログラムとして選択し、該資源量が残
っていない場合には、該指定されたプログラムの代替と
なり、且つ資源管理装置が資源不足とならないプログラ
ムを該転送させるプログラムとして選択する、ことが望
ましい。
【0019】本発明の第1および第2の態様のプログラ
ム転送方法は、モジュール化されたプログラムの信号処
理装置への転送に用いられることを前提とし、以下のよ
うにしてプログラムを転送する。
【0020】第1の態様のプログラム転送方法では、プ
ログラムを記憶した記憶手段から信号処理装置に転送す
べきプログラムを読み出し、記憶手段から読み出したプ
ログラムを構成する命令の内容を変更し、該命令の内容
を変更したプログラムを信号処理装置に転送する。
【0021】第2の態様のプログラム転送方法では、所
定の記憶手段に記憶されたプログラムのなかで信号処理
装置に転送させるプログラムを、該プログラムの実行に
必要な資源量、及び該信号処理装置の残りの資源量から
選択し、該選択したプログラムを記憶手段から読み出し
て信号処理装置に転送する。
【0022】本発明の第1の態様の記録媒体は、モジュ
ール化されたプログラムを記憶した記憶手段から信号処
理装置に転送すべきプログラムを読み出す手段と、読み
出す手段により読み出されたプログラムを構成する命令
の内容を変更する手段と、変更する手段により命令の内
容が変更されたプログラムを信号処理装置に転送する手
段と、を実現させるプログラムを格納している。
【0023】本発明の第2の態様の記録媒体は、所定の
記憶手段にモジュール化されて記憶されたプログラムの
なかで信号処理装置に転送させるプログラムを、該プロ
グラムの実行に必要な資源量、及び該信号処理装置の残
りの資源量から選択する手段と、選択する手段により選
択されたプログラムを記憶手段から読み出して信号処理
装置に転送する手段と、を実現させるプログラムを格納
している。
【0024】本発明では、信号処理装置に転送すべきプ
ログラムが判明すると、そのプログラムを構成する命令
の内容を変更して転送することにより、各プログラムの
実行時に信号処理装置が使用する資源を管理する。それ
により、プログラム間でのデータの受け渡し用を少なく
とも含めて、プログラム間で同じ資源を使用させる。そ
の結果、資源がより有効に利用されることになり、信号
処理装置はより少ない資源でプログラムを実行できるよ
うになる。
【0025】本発明では、プログラムに割り当てる信号
処理装置の資源が不足すると、信号処理装置が資源不足
となった際に代わりとして選択するプログラム間の予め
設定された関係を参照することにより、そのプログラム
の代替となり、且つ信号処理装置が資源不足とならない
プログラムを検索し選択して信号処理装置に転送する。
そのようにして転送するプログラムを自動的に選択する
ことにより、ユーザは面倒な操作を行わなくてすむよう
になって利便性が向上することになる。また、結果とし
て、信号処理装置のより多くの資源がより有効に利用さ
れることになる。
【0026】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を参照しながら詳細に説明する。 <第1の実施の形態>図1は、第1の実施の形態による
信号処理装置の資源管理装置を用いて構築されたシステ
ムの構成図である。
【0027】そのシステムは、図1に示すように、シス
テム全体の制御を行うCPU101と、CPU101が
実行するプログラムや転送するプログラム、更には各種
制御用データ等を格納したROM102と、CPU10
1がワーク用に用いるRAM103と、そのCPU10
1から転送されたプログラムを実行するDSP(信号処
理装置)104と、DSP104が参照するデータが格
納されたROM105と、DSP104がワーク用に用
いるRAM106と、を備えて構成されている。このシ
ステムにおいて、本実施の形態による資源管理装置は、
上記CPU101、ROM102、及びRAM103に
より実現される。ROM105、及びRAM106は、
DSP104がアクセスする外部メモリであるが、それ
らのメモリはDSP104と同一のパッケージ内に封止
されていても良い。
【0028】以上の構成において、動作を説明する。こ
こでは、便宜的に、図1に示すシステムが電子楽器の一
部であって、DSP104は特には図示しない音源LS
Iから出力された楽音の波形データをデジタル入力信号
として入力し、その波形データにユーザが指定した音響
効果を付加しデジタル出力信号として出力するものであ
るとの前提で説明することにする。
【0029】CPU101は、ROM102に格納され
たプログラムを読み出して実行することにより、システ
ム全体の制御を行う。そのCPU101には、特に図示
していないが、音響効果をユーザが指定するためのスイ
ッチを含む各種スイッチが接続されている。CPU10
1は、例えばその各種スイッチを所定の時間間隔毎に走
査(スキャン)し、その走査結果を解析することによ
り、その各種スイッチを介してユーザが指定した内容を
認識する。DSP104に対する音響効果の設定は、そ
の解析によってユーザが楽音に付加させる音響効果の変
更を指示したことを認識した場合に、それに新たに実行
させるべきプログラムをROM102から読み出して転
送することで行う。
【0030】図2は、そのROM102に格納されたプ
ログラムのデータ構成図である。図2中の「progr
am」に付加されている「[0]」〜「[n]」は、例
えばそれが対応している音響効果に合わせてプログラム
に割り当てた番号である。各プログラムは、それぞれが
1種類の音響効果を実現させるものであり、ヘッダ部と
データ部とからなる。ヘッダ部にはデータ部のデータ長
(命令数)や1命令のバイト数などの各種制御用データ
が格納されている。他方のデータ部には、プログラム本
体、即ちそれを構成する命令列が格納されている。図2
中で0〜kが付加されている「PROGRAM COD
E」は、それぞれが一つの命令を表している。枠外の0
〜kは、データ部における命令の格納場所を命令単位で
示すアドレスである。なお、以降は、CPU101が実
行するプログラムと区別するために、DSP104に転
送されるプログラムはDSPプログラムと呼ぶことにす
る。
【0031】ROM102に格納されたDSPプログラ
ムには、その実行時に使用する資源(ここではRAM1
06内の領域)が定義されている。その定義は、少なく
とも、入出力用に用いる資源がプログラム毎に異なるよ
うに行われており、それが資源を浪費させてその利用効
率を低下させる原因となる。
【0032】ROM102に格納されたDSPプログラ
ムのどれをどの順序で実行されるかといった実行形態
は、ユーザの指定によって決まる。その指定をユーザが
行った場合に、CPU101は実行させるべきDSPプ
ログラムをROM102から読み出してDSP104に
転送する。このことから、DSP104にプログラムを
転送する際に、判明した実行形態に基づき、そのプログ
ラムを構成する命令のなかで資源の使用に関わるものに
対する操作を行い、資源の浪費を抑えるようにしてい
る。その操作によってCPU101が行うDSP104
の資源管理について、図3及び図4を参照して詳細に説
明する。
【0033】特には図示していないが、命令は、その命
令(操作)の内容を示す識別子である命令符号が格納さ
れる命令部と、その命令符号で指示された操作の対象と
なるデータを指定する情報が格納されるアドレス部とか
らなる。
【0034】アドレス部に格納された情報によって指定
されるデータを読み出す命令(以降、ロード命令と呼
ぶ)や、そこに格納された情報によって指定される場所
にデータを格納する命令(以降、ストア命令と呼ぶ)
は、使用する資源の他に、DSPプログラム間でデータ
の受け渡しにも関わる命令である。このことから、本実
施の形態では、それらの命令(以降、便宜的に、それら
をまとめてアクセス命令と呼ぶ)のアドレス部の内容に
対する操作を行い、プログラム間のデータの受け渡しを
実現させつつ、全体で使用される資源を少なくさせてい
る。
【0035】アドレス部の操作を行うアクセス命令は、
それを行うべきアクセス命令が格納されたアドレスを格
納したテーブル(プログラム・アドレス・テーブル)を
参照して特定するようにしている。そのアドレスは、デ
ータ部の先頭を基準にして命令単位で格納場所を表すデ
ータである。そのアドレスを格納したテーブルは、制御
用データとしてROM102に格納されている。
【0036】DSPプログラム間のデータの受け渡しを
実現させる方法は、次に実行されるプログラムでデータ
を読み出す領域に合わせて、その前に実行されるプログ
ラムでデータを書き込む領域を変更する方法と、その逆
に、直前に実行されるプログラムでデータを書き込む領
域に合わせて、その次に実行されるプログラムでデータ
を読み出す領域を変更する方法と、の2つに大別するこ
とができる。
【0037】本実施の形態では、基本的に後者の方法を
採用している。このことから、上記プログラム・アドレ
ス・テーブルは、各プログラム毎に、直前に実行される
プログラムがないのも含め、直前に実行される可能性が
あるプログラム分、用意している。それにより、操作対
象とするプログラム、及びそれの直前に実行されるプロ
グラムから特定されるテーブルを参照している。なお、
当然のことながら、前者の方法を採用しても良く、或い
は、それらを組合せても良い。
【0038】図3は、上述したプログラム・アドレス・
テーブルのデータ構成図である。1つのDSPプログラ
ム用にROM102に用意されたテーブル(群)を概念
的に表したものである。
【0039】図3中のadrs・tbl[0]〜adr
s・tbl[m]は、例えば各DSPプログラム毎に用
意された配列変数であり、各要素には、それぞれが1個
のテーブルにアクセスするためのROM102内の先頭
アドレスが格納されている。枠外の0〜nは、テーブル
におけるアドレスを示し、各アドレスには、データ部の
先頭を基準にして、内容を変更すべき命令の格納場所を
表すアドレスが格納されている。CPU101は、例え
ば括弧内に、直前に実行されたDSPプログラムに割り
当てられた数字を代入することで、参照すべきテーブル
が格納されている領域の先頭アドレスを取得して参照す
る。それにより、プログラム・アドレス・テーブルで操
作すべきと定義されたアクセス命令のアドレス部に対す
る操作を行う。なお、プログラム・アドレス・テーブル
におけるアドレスについては、以降、他と区別するため
に、オフセットと呼ぶことにする。
【0040】そのアドレス部への操作は、その操作内容
を定義したテーブルを参照して行っている。そのテーブ
ルは、DSP104がデータを書き込める対象はRAM
106のみであることから、そのRAM106内のアド
レスを格納したものである。そのテーブルについては、
DSP・RAM・アドレス・テーブルと呼ぶことにす
る。
【0041】そのDSP・RAM・アドレス・テーブル
は、プログラム・アドレス・テーブルと同じく、各DS
Pプログラム毎に、次に実行される可能性があるプログ
ラム数分、ROM102に用意している。それにより、
操作対象とするプログラム、及びそれの直前に実行され
たプログラムから特定されるDSP・RAM・アドレス
・テーブルを参照している。
【0042】図4は、上述したDSP・RAM・アドレ
ス・テーブルのデータ構成図である。1つのプログラム
用にROM102に用意されたテーブル(群)を概念的
に表したものである。
【0043】図4中のdadrs・tbl[0]〜da
drs・tbl[m]は、上記adrs・tbl[0]
〜adrs・tbl[m]と同様に、例えば各DSPプ
ログラム毎に用意された配列変数であり、各要素には、
それぞれが1個のテーブルにアクセスするためのROM
102内の先頭アドレスが格納されている。枠外の0〜
nは、テーブルにおけるアドレスを示し、各アドレスに
は、RAM106内のアドレスが格納されている。CP
U101は、例えば括弧内に、直前に実行されたプログ
ラムに割り当てられた数字を代入することで、参照すべ
きテーブルが格納されている領域の先頭アドレスを取得
して参照する。それにより、プログラム・アドレス・テ
ーブルで操作すべきと定義されたアクセス命令のアドレ
ス部に格納されいるアドレスを、DSP・RAM・アド
レス・テーブル内で定義されたアドレスに書き換える操
作(変更)を行う。なお、DSP・RAM・アドレス・
テーブルでも、RAM106内のアドレスの格納場所を
示すアドレスをオフセットと呼ぶことにする。
【0044】上述したようにDSPプログラム自体を対
象に操作を行うことで、プログラム間のデータの受け渡
しを実現するプログラムをDSP104に実行させるこ
となく、その受け渡しを実現させている。DSP104
が使用する資源の管理をDSPプログラム単位で行い、
実行順序が前後するDSPプログラム間で、同じ資源を
使用させている。このため、全体として、プログラムの
実行で使用される資源(RAM106で実際に使用され
る領域)を低減でき、その利用効率を向上させることが
できる。それにより、RAM106に必要とされる容量
が小さくなるため、DSP104、更にはシステムのコ
ストを抑えることができる。
【0045】また、CPU101がDSP104にデー
タの受け渡しを実現するプログラムを転送しなくて済む
ことから、それによって使用可能な資源を増やしたり、
DSP104の負荷を低減するといった効果も得られ
る。それにより、DSP104が実現できる機能(ここ
では楽音に付加する音響効果)の数をより増やすことが
できる。
【0046】次に、上述したCPU101のプログラム
転送時の動作について、図5を参照して詳細に説明す
る。その図5は、プログラム転送処理の動作フローチャ
ートである。便宜的に、1つのDSPプログラムの転送
に注目して、その処理の流れを表したものである。
【0047】そのDSPプログラムの転送は、それの直
前に実行されるDSPプログラムの種類から特定される
プログラム・アドレス・テーブル、及びDSP・RAM
・アドレス・テーブルを参照して行われる。その転送の
対象は、データ部(図2参照)に格納されたプログラム
本体のみである。
【0048】楽音に付加させる音響効果の種類、或いは
その数等の変更をユーザが指示した場合に、DSPプロ
グラムをDSP104に転送する必要が生じる。プログ
ラム転送処理は、その場合に、CPU101がROM1
02に格納されているプログラムを実行することで実現
される。
【0049】先ず、ステップ501では、各種変数への
初期値の代入を行う。具体的には、DSP104に転送
するプログラム中の命令を管理するための変数pgpt
r、プログラム・アドレス・テーブル中で参照すべき個
所を管理するための変数arptr、及びDSP・RA
M・アドレス・テーブル中で参照すべき個所を管理する
ための変数ratptrに、それぞれ0を代入する。続
くステップ502では、変数plengthに、ヘッダ
部から転送すべきプログラムの総命令数を読み出して代
入する。その代入を終了すると、ステップ503に移行
する。
【0050】ステップ503以降では、変数pgptr
の値をインクリメントしながら、その値で指定される命
令をROM102から読み出してDSP104に転送す
るための処理が行われる。ROM102から読み出され
た命令のなかでプログラム・アドレス・テーブルにより
内容を変更すべき命令と判定された命令は、DSP・R
AM・アドレス・テーブルに格納されているアドレスを
用いた内容の変更が行われた後に転送される。
【0051】先ず、ステップ503では、変数pgpt
rの値が変数plengthの値より小さいか否か判定
する。転送対象のプログラムを構成する命令を全てDS
P104に転送した場合、それら変数の値は等しくな
る。このため、転送対象のプログラムの転送が完了した
場合、判定はNOとなり、ここで一連の処理を終了す
る。そうでない場合には、判定はYESとなってステッ
プ504に移行する。
【0052】ステップ504では、変数pgptrの値
で指定されるデータ部中の命令(コード)をROM10
2から読み出して変数progに代入する。その後、ス
テップ505に移行して、変数atptrの値で指定さ
れるプログラム・アドレス・テーブル中の個所に格納さ
れたアドレスの値が変数pgptrの値と等しいか否か
判定する。プログラム・アドレス・テーブル中で変更対
象と定義されている命令をステップ504で変数pro
gに代入していた場合、判定はYESとなってステップ
508に移行する。そうでない場合には、判定はNOと
なってステップ506に移行する。
【0053】ステップ506では、変数progに代入
された命令をDSP104に転送する。続くステップ5
07では、変数pgptrの値のインクリメントを行
う。そのインクリメントを行った後、上記ステップ50
3に戻る。
【0054】一方、ステップ505の判定がYESとな
った場合に移行するステップ508では、変数ratp
trの値で指定されるDSP・RAM・アドレス・テー
ブル中の個所に格納されたデータ(RAM106のアド
レス)をROM102から読み出して変数adrsに代
入する。続くステップ509では、変数prog中のア
ドレス部のアドレスを、その変数adrsに代入したア
ドレスに書き換える操作を行う。それにより、その変数
progに代入された命令を実行することでDSP10
4がRAM106からデータを読み出すアドレスを変更
する。それが終了すると、ステップ510で変数atp
tr、及びratptrの値をそれぞれインクリメント
した後、ステップ506に移行して、変数progに代
入されている内容を変更した命令をDSP104に転送
する。
【0055】このように、本実施の形態では、命令の内
容を変更しつつ、DSPプログラムの転送を行ってい
る。これを各DSPプログラム毎に行うことにより、D
SP104の使用可能な資源を有効に利用できるように
管理している。
【0056】なお、本実施の形態では、ロード命令の内
容を変更するようにしているが、ロード命令、及びスト
ア命令以外の命令の内容を変更するようにしても良い。
ロード命令のなかには、他の命令の実行結果を基にデー
タを読み出すようになっているものもありえる。そのよ
うなことから、例えばアクセス命令の実行に関係する命
令も変更の対象としても良い。 <第2の実施の形態>上記第1の実施の形態では、DS
Pプログラム中で内容を変更すべき命令(コード)の検
出を、それを検出するために用意したプログラム・アド
レス・テーブルを参照することで行っている。これに対
し、第2の実施の形態は、プログラム・アドレス・テー
ブル等を別に用意することなく、DSPプログラムを参
照するだけで内容を変更すべき命令を検出できるように
したものである。
【0057】この第2の実施の形態による資源管理装置
を用いて構築されたシステムの構成は、基本的に第1の
実施の形態におけるそれと同じである。このため、第1
の実施の形態の説明に用いた符号をそのまま用いて、そ
の第1の実施の形態から異なっている部分のみ説明す
る。
【0058】DSPプログラムは、図2に示すように、
ヘッダ部とデータ部とからなる。第2の実施の形態で
は、そのヘッダ部に、内容を変更すべき命令の命令符号
を格納している。それにより、その内容を変更すべき命
令を検出できるようにしている。なお、その命令は、例
えばロード命令である。
【0059】そのようにして内容を変更すべき命令を検
出できるようにした場合、その命令は命令符号を対比す
るだけで検出できることから、第1の実施の形態と比較
して、その検出がより容易に行えるようになる。また、
プログラム・アドレス・テーブルを用意しておく必要が
無くなることから、ROM102を他の用途に使える範
囲が増えて、より多くの機能等を実現できるようにな
る。
【0060】上記命令符号を命令部に持つ命令のアドレ
ス部には、それまでのアドレスに替えて、DSP・RA
M・アドレス・テーブルにおけるオフセット値、即ちD
SP・RAM・アドレス・テーブルのなかでそのアドレ
ス部に格納すべきRAM106のアドレスの格納個所を
示すデータを格納している。そのようにして、DSPプ
ログラムの中身を参照することにより、内容を変更すべ
き命令の他に、その変更内容を特定できるようにしてい
る。
【0061】なお、参照するDSP・RAM・アドレス
・テーブルは、第1の実施の形態と同様に、処理の対象
とするDSPプログラムの種類、及びそれの直前に実行
されるDSPプログラムの種類から特定している。
【0062】CPU101は、DSP104に転送すべ
きDSPプログラムを命令単位でROM102から順次
読み出して転送する。ROM102から読み出した命令
のなかで内容を変更すべき命令は、その命令部に格納さ
れた命令符号を、ヘッダ部に格納された命令符号と対比
することで検出(判定)する。そのようにして検出した
命令のアドレス部からは、アドレスの替わりに格納され
ているオフセット値を取り出し、その値で指定されるD
SP・RAM・アドレス・テーブル中のRAM106の
アドレスを、そのオフセット値の替わりにアドレス部に
格納する。そのようにして、命令の内容を変更したDS
Pプログラムを転送することにより、DSP104が使
用する資源の管理を、それに転送するDSPプログラム
に応じて行っている。
【0063】次に、上述したCPU101のプログラム
転送時の動作について、図6を参照して詳細に説明す
る。その図6は、プログラム転送処理の動作フローチャ
ートである。便宜的に、1つのDSPプログラムの転送
に注目して、その処理の流れを表したものである。
【0064】そのDSPプログラムの転送は、それの直
前に実行されるDSPプログラムの種類から特定したD
SP・RAM・アドレス・テーブルを参照して行われ
る。その転送の対象は、データ部(図2参照)に格納さ
れたプログラム本体のみである。
【0065】楽音に付加させる音響効果の種類、或いは
その数等の変更をユーザが指示した場合に、DSPプロ
グラムをDSP104に転送する必要が生じる。プログ
ラム転送処理は、その場合に、CPU101がROM1
02に格納されているプログラムを実行することで実現
される。
【0066】先ず、ステップ601では、DSP104
に転送するプログラム中の命令を管理するための変数p
gptrに0を代入する。続くステップ602では、変
数plengthに、ヘッダ部から転送すべきプログラ
ムの総命令数を読み出して代入する。更には、ヘッダ部
から内容を変更すべき命令の命令符号を読み出して変数
ICODEに代入する。それらの代入を終了すると、ス
テップ603に移行する。
【0067】ステップ603以降では、変数pgptr
の値をインクリメントしながら、その値で指定される命
令をROM102から読み出してDSP104に転送す
るための処理が行われる。ROM102から読み出され
た命令のなかで内容を変更すべき命令と判定された命令
は、DSP・RAM・アドレス・テーブルに格納されて
いるアドレスを用いた内容の変更が行われた後に転送さ
れる。
【0068】先ず、ステップ603では、変数pgpt
rの値が変数plengthの値より小さいか否か判定
する。転送対象のプログラムを構成する命令を全てDS
P104に転送した場合、それら変数の値は等しくな
る。このため、転送対象のプログラムの転送が完了した
場合、判定はNOとなり、ここで一連の処理を終了す
る。そうでない場合には、判定はYESとなってステッ
プ604に移行する。
【0069】ステップ604では、変数pgptrの値
で指定されるデータ部中の命令(コード)をROM10
2から読み出して変数progに代入する。その後、ス
テップ605に移行して、変数progに代入した命令
中の命令符号が、変数ICODEに代入されている命令
符号と等しいか否か判定する。ヘッダ部に格納されてい
る命令符号を有する命令をステップ604で変数pro
gに代入していた場合、判定はYESとなってステップ
608に移行する。そうでない場合には、判定はNOと
なってステップ606に移行する。
【0070】ステップ606では、変数progに代入
された命令をDSP104に転送する。続くステップ6
07では、変数pgptrの値のインクリメントを行
う。そのインクリメントを行った後、上記ステップ60
3に戻る。
【0071】一方、ステップ605の判定がYESとな
った場合に移行するステップ608では、変数prog
から、それに代入した命令を構成するアドレス部のオフ
セット値を取り出し、変数ratptrに代入する。続
くステップ609では、変数ratptrの値で指定さ
れるDSP・RAM・アドレス・テーブル中の個所に格
納されたデータ(アドレス)をROM102から読み出
して変数adrsに代入する。その後、ステップ609
に移行して、変数prog中のアドレス部のオフセット
値を、その変数adrsに代入したアドレスに書き換え
る操作を行う。それにより、その変数progに代入さ
れた命令を実行することでDSP104がRAM106
からデータを読み出すアドレスを変更する。それが終了
すると、ステップ606に移行して、変数progに代
入されている内容を変更した命令をDSP104に転送
する。
【0072】なお、第2の実施の形態では、第1の実施
の形態から、内容を変更すべき命令の検出方法、及びそ
の内容の特定方法を変更しているが、それらのうちの一
方のみを変更するようにしても良い。 <第3の実施の形態>上記第1、及び第2の実施の形態
では、プログラム間のデータの受け渡しに着目して命令
の内容を変更することにより、DSPの資源の浪費を低
減させている。第3の実施の形態は、その他に、資源不
足によって生じるユーザの満足度の低下も抑えられるよ
うにしたものである。
【0073】図7は、第3の実施の形態による信号処理
装置の資源管理装置を用いて構築されたシステムの構成
図である。そのシステムは、例えば、エレクトリック・
ギター等の電気楽器のアンプの一部を構成するものであ
り、図7に示すように、システム全体の制御を行うCP
U701と、CPU701が実行するプログラムや転送
するDSPプログラム、更には各種制御用データ等を格
納したROM702と、CPU701がワーク用に用い
るRAM703と、そのCPU701から転送されたD
SPプログラムを実行するDSP(信号処理装置)70
4と、CPU701から転送されたDSPプログラムを
格納するプログラムRAM705と、DSP704がワ
ーク用に用いるワークRAM706と、を備えて構成さ
れている。第3の実施の形態による資源管理装置は、上
記CPU701、ROM702、及びRAM703によ
り実現される。RAM705、706は、共にDSP7
04がアクセスする外部メモリであるが、それらのメモ
リはDSP704と同一のパッケージ内に封止されてい
ても良い。
【0074】上記DSP704は、アナログアンプ部7
07が増幅し、そのアンプ部707が出力したアナログ
の楽音信号をD/Aコンバータ708がD/A変換して
得られるデジタルの波形データに対し音響効果(エフェ
クト)を付加するためのエフェクターとして用いられて
いる。DSP704が音響効果を付加した波形データ
は、D/Aコンバータ709によってD/A変換されて
アナログの楽音信号(オーディオ信号)に変換され、更
にアナログアンプ部710で増幅された後、システムの
外部に出力される。
【0075】上記アナログアンプ部707、710、A
/Dコンバータ708、及びD/Aコンバータ709
は、それぞれ、2チャンネル(ステレオ)の信号に対応
しており、各チャンネルの信号毎に所定の処理を施す。
このことから、DSP704は、音響効果を2チャンネ
ルの波形データに対してそれぞれ付加するようになって
いる。なお、アナログアンプ部707が増幅の対象とす
る楽音信号は、例えば図示しないピックアップから出力
された電気信号である。
【0076】以上の構成において、図8〜図18の説明
図を参照しつつ、CPU701によるDSP704の資
源管理、即ちDSPプログラムの転送に関わる制御動作
について説明する。
【0077】図8は、DSP704の使用可能な資源を
説明する図である。図8に示すように、本実施の形態で
資源管理の対象とするDSP704は、プログラムRA
M705、ワークRAM706、及び自身が有するワー
クRAMを資源として使用する。なお、以降、DSP7
04自身が有するワークRAMは内部ワークRAM、ワ
ークRAM706は外部ワークRAMとも呼ぶことにす
る。
【0078】図9は、第3の実施の形態におけるDSP
704の資源の割当方法を説明する図である。上記3つ
のRAM内の領域がDSPプログラムに割り当てられ
る。その領域は、DSPプログラムの種類によって異な
る。このため、DSPプログラムに実際に割り当てる各
RAMの領域は、DSP704に転送する他のDSPプ
ログラムの数や種類によって変化する。DSP704に
一度に割り当てられるDSPプログラムの数は、その種
類によって変化する。このことから、本実施の形態で
は、DSP704の使用可能な資源を一つの枠として仮
想的に扱い、その枠内に、DSPプログラムの種類によ
って決まる大きさの枠を割り当てられるだけ割り当てる
方法を採用している。それにより、より多くの音響効果
を、選択の自由度を高く維持させつつ楽音に付加できる
ようにしている。ここでは、その方法をダイナミック・
ローディング、DSP704の使用可能な資源を表す枠
をリソースパート、DSPプログラムの種類によって大
きさが決まる枠をエフェクターパートと呼ぶことにす
る。
【0079】DSP704の資源の管理対象は3つのR
AMである。このため、上記リソースパートは、その3
つのRAMの各部分からなる枠である。CPU701
は、その3つのRAMの全てで資源が不足しないDSP
プログラムのみを、リソースパートに割り当てる。そう
でないDSPプログラムは、その割り当てを行わないこ
とで、資源不足の発生を回避する。
【0080】上述したように、DSP704は2チャン
ネルの波形データに対してそれぞれ音響効果を付加でき
るようになっている。各チャンネルに対して同じ音響効
果を付加するステレオエフェクターとして機能させるだ
けでなく、各チャンネル毎に独立に音響効果を付加する
モノラルエフェクターとしても機能させることができる
ようになっている。そのことに合わせて、本実施の形態
では、DSP704の資源をDSPプログラムに配分す
る形態、即ちリソースパートに割り当てるエフェクター
パートの組合せの基本的なパターンを定め、そのパター
ンに合わせてDSP704資源をDSPプログラムに割
り当てるようにしている。
【0081】図10〜図12は、DSP704の資源配
分形態を説明する図である。本実施の形態では、図10
〜図12に示すように、基本的な資源配分形態として3
つのパターンを用意している。それぞれのパターンはモ
ードで管理し、ユーザが選択したモードに対応するパタ
ーンで資源を配分するようにしている。各パターンは、
具体的には以下のようになっている。
【0082】図10に示すパターンは、DSP704を
ステレオエフェクターとして機能させることを指定する
モード1(ステレオモード)が選択された場合に有効と
なる。このモードを選択すると、ステレオで信号処理を
施すDSPプログラムを最大4つまで動作させることが
できる。
【0083】図11に示すパターンは、DSP704を
2チャンネル独立のモノラルエフェクターとして機能さ
せることを指定するモード2(モノラルモード)が選択
された場合に有効となる。このモードを選択すると、各
チャンネルでDSPプログラムを最大4つまで動作させ
ることができる。言い換えれば、資源全体を2つのリソ
ースパートで扱い、各リソースパートに最大4つのエフ
ェクターパートを収められるようになっている。それら
のDSPプログラムはモノラルで信号処理を行うので、
一方のチャンネルのDSPプログラムを変更しても他方
のチャンネルはその変更の影響を受けないという独立性
がある。
【0084】図12に示すパターンは、各チャンネル毎
に独立に音響効果を付加した後、混合してステレオで音
響効果を付加することを指定するモード3(混合モー
ド)が設定された場合に有効となる。このモードを選択
すると、モノラルで信号処理を施すDSPプログラムは
各チャンネルで最大2つ、ステレオで信号処理を施すD
SPプログラムは最大で2つ動作させることができる。
それらの間で信号の受け渡しを行うミキサは、2つの入
力を任意の比率で2つの出力に再分配するものである。
【0085】CPU701は、設定されたモードに対応
するパターンで、演奏者が選択した音響効果を付加する
DSPプログラムに資源を割り当てる。リソースパート
にエフェクターパートを割り当てる。それにより、モー
ドに応じた形で楽音に音響効果を付加させる。なお、図
10〜図12の各エフェクターパート内の数字は、その
パートに付けられたナンバーである。
【0086】ROM702に格納されているDSPプロ
グラムは、図13に示すように、大別して、資源情報、
初期データ、及びプログラムデータの3つの部分から構
成されている。資源情報は、DSPプログラム(図13
中のエフェクターに対応)の実行に必要な資源に関する
情報である。初期データは、DSPプログラムの実行時
に参照するデータであり、DSPプログラムの種類によ
っては随時、更新される。プログラムデータは、DSP
プログラムの本体であり、命令(プログラムコード)を
実行順序に従って並べた形で構成されている。
【0087】図14は、上記資源情報の内容の説明図で
ある。各DSPプログラム(エフェクター)の資源情報
の内容を表形式で表したものである。図14において、
「No.」の項目欄の内容はDSPプログラムに付けら
れた番号を示し、「FX名」の項目欄の内容はDSPプ
ログラムの名称を示している。その名称は、DSPプロ
グラムの実行によって楽音に付加できる音響効果の種類
を表している。「Mode1 Part」〜「Mode
3 Part」の各項目欄の内容は、そのモードの設定
時にDSPプログラムの割当て可能なエフェクターパー
ト(適合パート)のナンバー(の範囲)を示し、「代替
FX」の項目欄の内容は、そのDSPプログラムの代わ
りとなるDSPプログラムのナンバー(図中では便宜的
に名称としている)を示している。例えば、FX名が
「Comp2」のDSPプログラムの代替FXは「Co
mp1」であることを示している。その欄の内容は、そ
のDSPプログラムの実行に必要な資源が残っていない
場合に参照される。「Programサイズ」の項目欄
の内容は、DSPプログラムのサイズ、即ちそれをプロ
グラムRAM705に格納した際に消費される領域のサ
イズを示している。「内部データサイズ」、及び「外部
データサイズ」の各項目欄の内容は、それぞれ、DSP
704内のワークRAM、ワークRAM706でDSP
プログラムの実行に使用される領域のサイズを示してい
る。それらRAMの領域のサイズを示す数値は、所定の
単位で表現したものである。
【0088】各DSPプログラム(エフェクター)は、
例えば演奏者が指定した音響効果に応じてエフェクター
パートに割り当てられる。ナンバーが0で名称が「Th
ru」のDSPプログラム、及びナンバーが1で名称が
「St Thru」のDSPプログラムは、その指定が
されていないエフェクターパートに割り当てるために用
意したものである。
【0089】CPU701は、DSP704にプログラ
ムを転送する場合、転送するプログラムの資源情報を参
照して、各プログラムに資源を割り当てる。その割り当
ては、それまでに他のプログラムに割り当てた資源や残
りの資源についての情報を資源管理情報として保持して
おき、それも参照しつつ行う。そのような情報を保持す
るのは、DSP704に転送するプログラムの追加や入
れ替えをより迅速に行えるようにするためである。
【0090】本実施の形態では、資源全体をリソースパ
ートとして扱っている。このことから、上記資源管理情
報はリソースパート単位、DSPプログラム単位で保持
するようにしている。リソースパート用の資源管理情報
は、具体的には、例えばプログラムRAM705、ワー
クRAM706、及びDSP704の内部ワークRAM
に割り当てた各リソースパートの領域のサイズ等であ
り、これは固定的に用意したものである。他方のエフェ
クターパート用の資源管理情報は、例えばエフェクター
パート(プログラム)毎に保持した、プログラムRAM
705、ワークRAM706、及びDSP704の内部
ワークRAMに割り当てた領域のサイズ、その領域の先
頭アドレスである。それらの情報は、図17、或いは図
18に示す変数を用意することで扱っている。
【0091】なお、図17中の数値は、モード3が設定
されている場合に、各変数(配列変数)においてリソー
スパートのナンバーが代入される変数ResPrtの値
で指定される要素の具体的な値の例であり、プログラム
RAM705は480(=160+160+160)ワ
ード分、内部ワークRAMは252(=84+84+8
4)ワード分、ワークRAM706は4096(=80
0+800+2496)ワード分がリソースパートに割
り当てられていることを示している。図12を参照して
括弧内の数値の対応を述べれば、その先頭から、ナンバ
ーが1と2のエフェクターパートを持つリソースパー
ト、ナンバーが3と4のエフェクターパートを持つリソ
ースパート、ナンバーが5と6のエフェクターパートを
持つリソースパート、となっている。図18中の「Fx
Prt」は、エフェクターパートのナンバーが代入され
る変数である。配列変数については、混乱を避けるため
に、特に必要と思われない限り、その要素を指定する部
分は省略することにする。
【0092】CPU701は、資源管理情報、及び資源
情報を参照して、転送対象のDSPプログラムに資源を
割り当てられるか否か、即ちそれに割り当てるだけの資
源が残っているか否か判定する。その判定結果に応じ
て、以下の制御を行う。
【0093】先ず、DSPプログラムに資源を割り当て
られると判定した場合、CPU701は、それまでに他
のDSPプログラムに割り当てられている各RAMの領
域に続けて、転送の対象とするDSPプログラム用の領
域を割り当てる。それによって確保した領域に合わせ
て、内容変更の対象とする命令(プログラムコード)の
内容を変更しながら、DSPプログラムをDSP704
に転送する。変更の対象としている命令の種類は、例え
ば、上記第1及び第2の実施の形態と同じく、アクセス
命令である。
【0094】図15は、確保した資源に応じたプログラ
ムの変更方法を説明する図である。ワークRAM706
に確保した領域に応じてアクセス命令のをどのように変
更するかを示したものである。
【0095】図15において、「riaa]から始まる
3つの記号列は変更対象とするアクセス命令を便宜的に
示したものである。上段の記号列中の「0010」は、
その記号列で表した命令中で変更対象とする内容であ
り、それを変更しなければ10番地のデータにアクセス
することを意味している。その内容は、80番地から領
域を確保した場合には中段の記号列のように「090」
に変更され、100番地から領域を確保した場合には下
段の記号列のように「110」に変更されることを示し
ている。CPU701は、そのような内容変更を行いな
がら、DSPプログラムをDSP704に転送する。
【0096】その内容変更を行うために、本実施の形態
では、プログラムデータと初期データを共通のルールに
よって中間コード化させている。その中間コード化につ
いて、図16を参照して説明する。
【0097】プログラムデータを構成するコードは、図
16(a)に示すように、MSB側の1バイトが割り当
てられているinfoフィールドと、それ以外の部分で
あるDataフィールドとの2つの部分から構成されて
いる。Dataフィールドには、コードの本体が格納さ
れ、infoフィールドには、Dataフィールドに格
納されたコード本体に対する操作内容を指示する情報
(以降、便宜的に付加情報と呼ぶ)が格納される。
【0098】その付加情報の主なものは、Dataフィ
ールドのコード本体のアドレス値に演算を施さない、即
ちそのアドレス値の変更を行わないことを指示する情報
と、確保されたプログラムRAM705の領域(エリ
ア)の先頭アドレスの値をコード本体のアドレス値に加
算することを指示する情報と、確保された内部ワークR
AMの領域(エリア)の先頭アドレスの値をコード本体
のアドレス値に加算することを指示する情報と、確保さ
れたワークRAM706の領域(エリア)の先頭アドレ
スの値をコード本体のアドレス値に加算することを指示
する情報と、の4種類に大別される。それ以外には、D
SPプログラム間でデータの受け渡しを実現させるため
のものがある。なお、これらのことは、図16(b)に
示すように、初期データにおいても基本的に同じであ
る。
【0099】CPU701は、プログラムデータ、及び
初期データ共に、Dataフィールドのコード、或いは
データ本体のみを、infoフィールドの付加情報によ
って指示された操作を施した後にDSP704に転送す
る。DSPプログラム間でのデータの受け渡しを実現さ
せるための操作は、例えば上記第1の実施の形態と同様
の方法で行う。
【0100】ところで、DSPプログラムの転送は、そ
れ以降に続けて実行されるDSPプログラムが存在する
DSPプログラムの代わりとして転送する場合と、そう
でない場合とに分けることができる。演奏者が音響効果
を指定していないエフェクターパートにはダミーとして
ナンバーが0或いは1のDSPプログラムを割り当てて
いることから、図10のパターンを例にとれば、前者の
場合はナンバーが1〜3のエフェクターパートに新たに
DSPプログラムを割り当てることに対応し、後者の場
合はナンバーが4のエフェクターパートに新たにDSP
プログラムを割り当てることに対応する。なお、DSP
プログラムが割り当てられていなければパートのナンバ
ーに関わらず、後者の場合に対応する。
【0101】前者の場合、転送の前後でDSPプログラ
ムに割り当てた資源量が変化することがある。このこと
から、CPU701は、その場合には、DSPプログラ
ムの転送を終了した後、その転送によって生じた資源量
の変化を吸収するための制御を行う。より具体的には、
その資源量の変化が生じると、転送したDSPプログラ
ムよりも後方(アドレス値が大きくなる方向。本実施の
形態ではアドレス値が小さいほうから領域を順次割り当
てているのでこうなる)に領域が割り当てられているD
SPプログラムに対して、その領域の割り当てをやり直
す。
【0102】そのような再割り当てを行うことで、各D
SPプログラムに割り当てた領域の間に挟まれた形で未
使用の領域が生じてしまうようなことが回避される。未
使用の領域が分散してしまうようなことが回避される。
このため、未使用の領域の割り当てが容易に行えるよう
になり、制御が簡単化することになる。また、資源の再
割り当てを必要なプログラムに対してのみ行うので、そ
の再割り当てに伴うプログラムの転送がより短い時間で
完了することになる。
【0103】一方、DSPプログラムに資源を割り当て
られないと判定した場合には、CPU701は、資源情
報を参照して、それの代替となるDSPプログラムを探
す。その結果、代替のDSPプログラムが見つかれば、
それに割り当てられるだけの資源が残っているか否か再
度判定する。その代替のDSPプログラムに割り当てら
れる資源が残っていると判定すると、それに資源を割当
て、上述したようにしてDSPプログラムを転送する。
そうでないと判定すると、同様に、それの代替となるD
SPプログラムを探す。そのようにして、代替として割
り当てられるDSPプログラムを探し出してDSP70
4に転送する。代替となるDSPプログラムがない、或
いは代替となるDSPプログラムでも資源不足となるの
であれば、そのことが判明した時点でDSPプログラム
の転送を断念(放棄)する。
【0104】従来では、DSPプログラムに割り当てる
資源が足りなくなると、ユーザはそれによって実現され
る機能を用いることを諦めるか、或いは、カットアンド
トライで資源不足とならないDSPプログラムをリスト
アップし、そのなかから最適なものを探し出す、といっ
たようなことで対応するしかなかった。何れにしても、
所望する機能のうちのどれかは使うことができず、代替
機能を探すにしても大変な労力と時間が必要となってい
た。
【0105】これに対し、本実施の形態では、図14に
示すように、代替の対象となるDSPプログラムよりも
資源消費量が小さく、且つ、基本的に同じ機能を実現で
きるものを代替DSPプログラム(エフェクター)とし
て用意し、資源が足りない場合に、そのような代替DS
Pプログラムを自動的に探し出してDSP704に転送
している。このため、従来と比較して、所望する機能を
全く使うことができないという可能性を大きく低減させ
ることができる。それは、より多くの資源を有効に利用
することになって、資源の利用効率がより向上すること
を意味する。また、代替機能を自動的に探し出すため、
従来とは異なり、大変な労力と時間をかけるといったこ
とが回避されることになる。従って、高い利便性も得ら
れる結果となる。
【0106】なお、本実施の形態では、代替のDSPプ
ログラムを予め決定しているが、そのDSPプログラム
をユーザが設定できるようにしても良い。その場合に
は、幾つかの候補だけでなく、その優先度(エフェクタ
ーパート、或いはDSPプログラムも合わせて設定でき
るようにしても良い。その優先度については、(音響効
果)等に注目したものであっても良い。
【0107】次に、上述したCPU701のプログラム
転送時の動作について、図19を参照して詳細に説明す
る。その図19は、プログラム転送処理の動作フローチ
ャートであり、便宜的に、1つのDSPプログラムの転
送(ロード)に注目して、その処理の流れを表したもの
である。この処理は、ユーザが楽音に付加する音響効果
を変更した場合に、CPU701がROM702に格納
されているプログラムを実行することで実現される。こ
の処理を実行することで、音響効果の変更が指示された
エフェクターパートに、演奏者が指定した種類の音響効
果に対応するDSPプログラムが割り当てられる。
【0108】なお、音響効果の変更は、例えばエフェク
ターパートとそれに設定する音響効果(DSPプログラ
ムのナンバー)を指定することで行うようになってい
る。資源分配形態はモードによって変化させていること
から、そのモードが切り換えられると、それまでの音響
効果の設定はクリアさせている。
【0109】先ず、ステップ1901では、対象とする
DSPプログラム(エフェクター)を転送(ロード)す
るための指示情報を用意する。具体的には、例えば転送
する(指定された音響効果に対応する)DSPプログラ
ム(エフェクター)のナンバーを変数IFxに、それを
割り当てるリソースパートのナンバーを変数DRPに、
そのリソースパート中でそのプログラムを割り当てるエ
フェクターパートのナンバーを変数DFPにそれぞれ代
入する。続くステップ1902では、転送するDSPプ
ログラム(エフェクター)のナンバー、即ち変数IFx
の値から、それの資源情報を取得する。それにより、現
在設定中のモードで転送対象のDSPプログラムが適合
パートとなっているナンバーの範囲を取得する。それ以
外には、プログラムRAM705の使用サイズを変数P
rogSizに、内部ワークRAMの使用サイズを変数
IramSizに、外部ワークRAM706の使用サイ
ズを変数XramSizに、代替エフェクターのナンバ
ーを変数SubFxにそれぞれ代入することで取得す
る。ステップ1903にはその後に移行する。
【0110】そのステップ1903では、転送対象のD
SPプログラムがエフェクターパートに適合しているか
否か判定する。例えばステレオで信号処理を行うDSP
プログラムを前提としているエフェクターパートにモノ
ラルで信号処理を行うDSPプログラムを割り当てると
いったように、結果として演奏者が指定した音響効果
(DSPプログラム)がエフェクターパートに適合して
いない場合、判定はNOとなり、ここで一連の処理を終
了する。そうでない場合には、判定はYESとなってス
テップ1904に移行する。なお、その判定は、ステッ
プ1902で取得した適合パートのナンバーの範囲内に
演奏者が指定したエフェクターパートのナンバーが入っ
ているか否かから行われる。
【0111】ステップ1904では、DSPプログラム
の割り当てが指定されたエフェクターパートを有するリ
ソースパートの各RAMの空き領域を調査する。例えば
プログラムRAM705、内部ワークRAM、及びワー
クRAM706の未使用量、即ち変数ProSp[Re
sPrt]、IramSp[ResPrt]、及びXr
amSp[ResPrt]の各値を調査する。続くステ
ップ1905では、割り当ての対象としているエフェク
ターパートに現在割り当てられているDSPプログラム
の情報を取得する。その取得は、例えばそのパートに割
り当てられているDSPプログラムのナンバー(例えば
図18に示す変数FX[ResPrt][FxPrt]
の値)を変数CurFxに代入するとともに、そのプロ
グラムの資源情報を読み出し、プログラムRAM705
の使用サイズを変数CurProgSizに、内部ワー
クRAMの使用サイズを変数CurIramSizに、
外部ワークRAM706の使用サイズを変数CurXr
amSizに、それぞれ代入することで行う。それを行
った後、ステップ1906に移行する。
【0112】ステップ1906では、演奏者によって指
定されたDSPプログラムを転送できるか否か、即ちそ
れに割り当てるべき資源が残っているか否か判定する。
その資源として3種類のRAMがあり、エフェクターパ
ートにそれまで割り当てられていたDSPプログラムの
資源があることから、変数CurProgSizの値と
変数ProgSpの値の合計値が変数ProgSizの
値以上(CurProgSiz+ProgSp≧Pro
gSiz)であり、変数CurIramSizの値と変
数IramSpの値の合計値が変数IramSizの値
以上(CurIramSiz+IramSp≧Iram
Siz)であり、且つ変数CurXramSizの値と
変数XramSpの値の合計値が変数XramSizの
値以上(CurProgSiz+ProgSp≧Pro
gSiz)であった場合、資源不足とならない。このた
め、その場合、判定がYESとなり、ステップ1909
に移行する。そうでない場合には、判定はNOとなって
ステップ1907に移行する。
【0113】ステップ1907では、対象としているD
SPプログラム(エフェクター)の代替となるDSPプ
ログラムが存在するか否か判定する。上記変数SubF
xには、代替となるDSPプログラムが存在している
と、ステップ1902で3以上の値が代入される(図1
4参照)。このため、変数SubFxの値が3以上であ
った場合、判定はYESとなり、ステップ1908で変
数Fxに変数SubFxの値を代入した後、そのステッ
プ1902に戻る。それにより、対象とするDSPプロ
グラムを変えて、それ以降の処理ステップを同様に行
う。そうでない場合には、判定はNOとなり、演奏者が
望むような音響効果を付加できるDSPプログラムは存
在しないとして、そこで一連の処理を終了する。
【0114】上記ステップ1902〜1908で形成さ
れる処理ループを実行することにより、演奏者の要望に
沿った形で資源不足とならない代替のDSPプログラム
が自動的に検索されることになる。
【0115】一方、ステップ1906の判定がYESの
場合に移行するステップ1909では、DSPプログラ
ムの転送(ロード)に先だってミュート等により雑音を
防止するためのロード前処理を行う。その後、ステップ
1910に移行して、置き換えられるDSPプログラム
に割り当てていた各RAMの領域の先頭アドレスから、
DSPプログラムの初期データ、及びプログラムデータ
(図13参照)をDSP704に、それを構成するデー
タの内容に対してinfoフィールドの付加情報で指定
された操作を施しつつ転送するロード処理を実行する
(図15、図16参照)。その転送に合わせて、ワーク
RAM706の初期化をDSP704に指示する。それ
らを行った後、ステップ1911に移行する。図18に
示す各種変数(配列変数)は、そのロード処理時に参照
される。
【0116】転送したDSPプログラムに割り当てた資
源量がその転送によって置き換えられたDSPプログラ
ムに割り当てられていた資源量と異なる、即ちエフェク
ターパートの資源量が転送によって変化したということ
は、新たに未使用となった領域が生じたか、或いはその
転送によって他のDSPプログラムに割り当てた資源を
使用してしまったことを意味する。このことから、ステ
ップ1911〜1919では、プログラムRAM70
5、DSP704の内部ワークRAM、及びワークRA
M706の各RAM毎に、その資源量(領域)の変化を
判定し、その判定結果を示す値を予め用意した変数RC
P、RCI、RCXにそれぞれ代入する処理を行う。そ
れを行うことにより、各変数には、0或いは1が代入さ
れる。0は対応するRAMの資源量が変化したことを示
す値であり、1はその変化がなかったことを示す値であ
る。
【0117】ステップ1918、或いは1919の処理
ステップを終了すると、次にステップ1920に移行す
る。そのステップ1920では、転送対象のエフェクタ
ーパートより後ろ、即ちナンバーが大きいエフェクター
パートがあるか否か判定する。例えば図10のナンバー
が4のエフェクターパートにDSPプログラムを新たに
割り当てたような場合、判定はNOとなってステップ1
928に移行する。そうでない場合には、判定はYES
となってステップ1921に移行する。
【0118】ステップ1921では、転送対象のエフェ
クターパートより後ろのパートにDSPプログラムが割
り当てられているか否か判定する。モードの切り替え時
には、ダミー、或いは予め定めたDSPプログラムを各
エフェクターパートに割り当てるようになっている。従
って、その割り当てに伴うDSPプログラムの転送を行
っているような場合、判定はNOとなってステップ19
28に移行する。そうでない場合には、判定はYESと
なってステップ1922に移行する。
【0119】ステップ1921の判定のYESは、ステ
ップ1910でDSPプログラムを転送したことによっ
て資源量の変化が生じた可能性があることを意味する。
ステップ1922〜1927では、その変化に対応する
ための処理が行われる。
【0120】先ず、ステップ1922では、変数RCP
の値が1か否か判定する。プログラムRAM705にお
ける転送対象のエフェクターパート用の領域が転送によ
って変化しなかった場合、判定はYESとなってステッ
プ1924に移行する。そうでない場合には、判定はN
Oとなり、ステップ1923に移行して、後ろのパート
に割り当てたれたDSPプログラム(プログラムデー
タ)の再転送を行う。その再転送は、ステップ1910
で転送したDSPプログラム(プログラムデータ)のプ
ログラムRAM705内の領域に続ける形で、操作すべ
き命令の内容を操作しつつ行う。図18の変数Prog
Topはその再転送に応じて更新する。それらを行った
後、ステップ1924に移行する。
【0121】ステップ1924では、変数RCIの値が
1か否か判定する。DSP704の内部ワークRAMに
おける転送対象のエフェクターパート用の領域が転送に
よって変化しなかった場合、判定はYESとなってステ
ップ1926に移行する。そうでない場合には、判定は
NOとなり、ステップ1925に移行して、後ろのパー
トに割り当てたれたDSPプログラム(初期データ)の
再転送を行う。その再転送は、ステップ1910で転送
したDSPプログラム(初期データ)の内部ワークRA
M内の領域に続ける形で、操作すべきデータの内容を操
作しつつ行う。図18の変数IramTopはその再転
送に応じて更新する。それらを行った後、ステップ19
26に移行する。
【0122】ステップ1926では、変数RCXの値が
1か否か判定する。ワークRAM706における転送対
象のエフェクターパート用の領域が転送によって変化し
なかった場合、判定はYESとなってステップ1928
に移行する。そうでない場合には、判定はNOとなり、
ステップ1927に移行して、ワークRAM706の初
期化を行う。図18の変数XramTopもそのときに
更新する。それらを行った後、ステップ1928に移行
する。
【0123】上述したステップ1922〜1928の処
理を実行すると、多くの場合、各エフェクターパートに
割り当てた各RAMの領域は連続している形に再配置さ
れることになる。各RAMの未使用の領域が変化するこ
とになる。ステップ1928〜1933では、その変化
に対応するための処理が行われる。その処理の流れは、
基本的に上記ステップ1922〜1927と同じであ
り、未使用の領域が変化したRAMをそれに対応する変
数の値から判別し、その領域が変化したRAMに対し
て、その領域の初期化を行う。そのような初期化が完了
した後、ステップ1934に移行する。
【0124】ステップ1934では、転送対象とするD
SPプログラムの転送、及びその転送に関わる処理が完
了したとして、ミュートを解除するといったロード後処
理を行う。それを行った後、一連の処理を終了する。他
に転送対象とするDSPプログラムが存在する場合に
は、CPU701は、再度、図19のプログラム転送処
理を実行することになる。
【0125】なお、本実施の形態(第1〜第3の実施の
形態)では、電子楽器に搭載されたDSPを資源管理の
対象としているが、当然のことながら、それ以外の装置
に搭載されたDSPを資源管理の対象としても良い。そ
のDSPは複数であっても良い。DSPの資源について
は、RAM等のメモリではなく、発振器や演算装置、L
FO等の他の汎用的に使用できるハードウェアであって
も良い。単にプログラムの内容を変更する装置として実
現させても良い。また、既製のシステムであっても、C
PUの上述したような動作を実現させるためのプログラ
ム(プログラム・アドレス・テーブルやDSP・RAM
・アドレス・テーブルを含む)をロードすることで本発
明を適用させることができる。そのプログラムは、CD
−ROM、フロッピーディスク、或いは光磁気ディスク
等の記録媒体に記録させて配布しても良いが、公衆網等
の通信回線を用いて配信するようにしても良い。
【0126】
【発明の効果】以上、説明したように本発明は、信号処
理装置に転送すべきプログラムが判明すると、そのプロ
グラムを構成する命令の内容を変更して転送することに
より、各プログラムの実行時に信号処理装置が使用する
資源を管理する。このため、信号処理装置は資源をより
有効に使用することができる。それにより、信号処理装
置はより少ない資源でプログラムを実行できるようにな
ることから、その製造コストはより低減させることがで
きる。
【0127】また、本発明は、信号処理装置でプログラ
ムに割り当てる資源が不足すると、信号処理装置が資源
不足となった際に代わりとして選択するプログラム間の
予め設定された関係を参照することにより、そのプログ
ラムの代替となり、且つ信号処理装置が資源不足となら
ないプログラムを検索し選択して信号処理装置に転送す
る。それにより、ユーザは面倒な操作を行わなくてすむ
ようになるため、利便性を向上させることができる。ま
た、結果として、信号処理装置のより多くの資源をより
有効に利用することができる。
【図面の簡単な説明】
【図1】第1の実施の形態による信号処理装置の資源管
理装置を用いて構築されたシステムの構成図である。
【図2】ROMに格納されたプログラムのデータ構成図
である。
【図3】プログラム・アドレス・テーブルのデータ構成
図である。
【図4】DSP・RAM・アドレス・テーブルのデータ
構成図である。
【図5】プログラム転送処理の動作フローチャートであ
る。
【図6】プログラム転送処理の動作フローチャートであ
る(第2の実施の形態)。
【図7】第3の実施の形態による信号処理装置の資源管
理装置を用いて構築されたシステムの構成図である。
【図8】信号処理装置(DSP)の使用可能な資源を説
明する図である(第3の実施の形態)。
【図9】信号処理装置(DSP)の資源割当方法を説明
する図である(第3の実施の形態)。
【図10】信号処理装置(DSP)の資源配分形態を説
明する図である(その1:第3の実施の形態)。
【図11】信号処理装置(DSP)の資源配分形態を説
明する図である(その2:第3の実施の形態)。
【図12】信号処理装置(DSP)の資源配分形態を説
明する図である(その3:第3の実施の形態)。
【図13】信号処理装置(DSP)用プログラムのデー
タ構成を説明する図である(第3の実施の形態)。
【図14】資源情報の内容の説明図である(第3の実施
の形態)。
【図15】確保した資源に応じたプログラムの変更方法
を説明する図である(第3の実施の形態)。
【図16】プログラムデータ、初期データのデータ形式
を説明する図である(第3の実施の形態)。
【図17】信号処理装置(DSP)の資源管理用の変数
を説明する図である(その1:第3の実施の形態)。
【図18】信号処理装置(DSP)の資源管理用の変数
を説明する図である(その2:第3の実施の形態)。
【図19】プログラム転送処理の動作フローチャートで
ある(第3の実施の形態)。
【符号の説明】
101、701 CPU 102、105、702 ROM 103、106、703 RAM 104、704 DSP 705 プログラムRAM 706 ワークRAM

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 モジュール化されたプログラムを受け取
    って実行する信号処理装置が使用する資源を管理する装
    置であって、 前記プログラムを記憶した記憶手段から前記信号処理装
    置に転送すべきプログラムを読み出すプログラム読出手
    段と、 前記プログラム読出手段が読み出したプログラムを構成
    する命令の内容を変更する命令変更手段と、 前記命令変更手段により命令の内容が変更されたプログ
    ラムを前記信号処理装置に転送する転送手段と、 を具備したことを特徴とする信号処理装置の資源管理装
    置。
  2. 【請求項2】 前記命令変更手段は、前記プログラム中
    で内容を変更すべき命令を検出し、該検出した命令の内
    容として、データの読み出し先、或いは該データの格納
    先を指定する該命令中のアドレス部の内容を変更するこ
    とにより、前記信号処理装置が使用する資源を管理す
    る、 ことを特徴とする請求項1記載の信号処理装置の資源管
    理装置。
  3. 【請求項3】 前記信号処理装置に転送した全プログラ
    ムのうちの一部のプログラムを他のプログラムに変える
    場合、該一部のプログラムに割り当てた資源を該他のプ
    ログラムに割り当てる命令の内容の変更を行って転送
    し、該一部のプログラムと該他のプログラムの資源量が
    一致していないときに、該一部のプログラムの資源に続
    けて資源が割り当てられたプログラムを、該資源量の違
    いに応じた命令の内容の変更を行って転送する、 ことを特徴とする請求項1、または2記載の信号処理装
    置の資源管理装置。
  4. 【請求項4】 モジュール化されたプログラムを受け取
    って実行する信号処理装置が使用する資源を管理する装
    置であって、 所定の記憶手段に記憶されたプログラムのなかで前記信
    号処理装置に転送させるプログラムを、該プログラムの
    実行に必要な資源量、及び該信号処理装置の残りの資源
    量から選択するプログラム選択手段と、 前記プログラム選択手段が選択したプログラムを前記記
    憶手段から読み出して前記信号処理装置に転送する転送
    手段と、 を具備したことを特徴とする信号処理装置の資源管理装
    置。
  5. 【請求項5】 前記プログラム選択手段は、転送すべき
    と指定されたプログラムの実行に必要な資源量が残って
    いる場合、該指定されたプログラムを前記転送させるプ
    ログラムとして選択し、該資源量が残っていない場合に
    は、該指定されたプログラムの代替となり、且つ前記資
    源管理装置が資源不足とならないプログラムを該転送さ
    せるプログラムとして選択する、 ことを特徴とする請求項4記載の信号処理装置の資源管
    理装置。
  6. 【請求項6】 モジュール化されたプログラムの信号処
    理装置への転送に用いられる方法であって、 前記プログラムを記憶した記憶手段から前記信号処理装
    置に転送すべきプログラムを読み出し、 前記記憶手段から読み出したプログラムを構成する命令
    の内容を変更し、 該命令の内容を変更したプログラムを前記信号処理装置
    に転送する、 ことを特徴とするプログラム転送方法。
  7. 【請求項7】 モジュール化されたプログラムの信号処
    理装置への転送に用いられる方法であって、 所定の記憶手段に記憶されたプログラムのなかで前記信
    号処理装置に転送させるプログラムを、該プログラムの
    実行に必要な資源量、及び該信号処理装置の残りの資源
    量から選択し、 該選択したプログラムを前記記憶手段から読み出して前
    記信号処理装置に転送する、 ことを特徴とするプログラム転送方法。
  8. 【請求項8】 モジュール化されたプログラムを記憶し
    た記憶手段から信号処理装置に転送すべきプログラムを
    読み出す手段と、 前記読み出す手段により読み出されたプログラムを構成
    する命令の内容を変更する手段と、 前記変更する手段により命令の内容が変更されたプログ
    ラムを前記信号処理装置に転送する手段と、 を実現させるプログラムを格納した記録媒体。
  9. 【請求項9】 所定の記憶手段にモジュール化されて記
    憶されたプログラムのなかで信号処理装置に転送させる
    プログラムを、該プログラムの実行に必要な資源量、及
    び該信号処理装置の残りの資源量から選択する手段と、 前記選択する手段により選択されたプログラムを前記記
    憶手段から読み出して前記信号処理装置に転送する手段
    と、 を実現させるプログラムを格納した記録媒体。
JP11094605A 1998-12-21 1999-04-01 信号処理装置の資源管理装置、プログラム転送方法、及び記録媒体 Pending JP2000242489A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP11094605A JP2000242489A (ja) 1998-12-21 1999-04-01 信号処理装置の資源管理装置、プログラム転送方法、及び記録媒体
US09/459,870 US6718545B1 (en) 1998-12-21 1999-12-13 Apparatus for managing resources of a signal processor, a resource managing program transferring method and recording medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP10-363053 1998-12-21
JP36305398 1998-12-21
JP11094605A JP2000242489A (ja) 1998-12-21 1999-04-01 信号処理装置の資源管理装置、プログラム転送方法、及び記録媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007183789A Division JP2007299421A (ja) 1998-12-21 2007-07-13 信号処理装置の資源管理装置及び記録媒体

Publications (1)

Publication Number Publication Date
JP2000242489A true JP2000242489A (ja) 2000-09-08

Family

ID=26435885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11094605A Pending JP2000242489A (ja) 1998-12-21 1999-04-01 信号処理装置の資源管理装置、プログラム転送方法、及び記録媒体

Country Status (2)

Country Link
US (1) US6718545B1 (ja)
JP (1) JP2000242489A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008035252A (ja) * 2006-07-28 2008-02-14 Yamaha Corp スピーカ装置、およびオーディオシステム
WO2008026409A1 (en) * 2006-08-28 2008-03-06 Pioneer Corporation Resource management apparatus, resource management method, resource management program, and computer-readable recording medium
JP2008252655A (ja) * 2007-03-30 2008-10-16 Yamaha Corp 効果付与装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003167751A (ja) * 2001-04-24 2003-06-13 Ricoh Co Ltd プロセッサ処理方法およびプロセッサシステム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3631405A (en) * 1969-11-12 1971-12-28 Honeywell Inc Sharing of microprograms between processors
US3812470A (en) * 1972-07-31 1974-05-21 Westinghouse Electric Corp Programmable digital signal processor
US5239628A (en) * 1985-11-13 1993-08-24 Sony Corporation System for asynchronously generating data block processing start signal upon the occurrence of processing end signal block start signal
JP3194193B2 (ja) 1990-10-31 2001-07-30 カシオ計算機株式会社 信号処理装置
US5442125A (en) 1990-11-20 1995-08-15 Casio Computer Co., Ltd. Signal processing apparatus for repeatedly performing a same processing on respective output channels in time sharing manner
GB9419246D0 (en) * 1994-09-23 1994-11-09 Cambridge Consultants Data processing circuits and interfaces
GB2298295B (en) * 1995-02-23 2000-01-19 Sony Uk Ltd Data processing systems
EP0936539B1 (de) * 1998-02-12 2012-10-31 Infineon Technologies AG Vorrichtung und Verfahren zum Holen von Befehlen für eine programmgesteuerte Einheit
US6427236B1 (en) * 1999-03-03 2002-07-30 Microsoft Corporation Method for installing a patch based on patch criticality and software execution format
US6397385B1 (en) * 1999-07-16 2002-05-28 Excel Switching Corporation Method and apparatus for in service software upgrade for expandable telecommunications system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008035252A (ja) * 2006-07-28 2008-02-14 Yamaha Corp スピーカ装置、およびオーディオシステム
JP4561709B2 (ja) * 2006-07-28 2010-10-13 ヤマハ株式会社 オーディオシステム
WO2008026409A1 (en) * 2006-08-28 2008-03-06 Pioneer Corporation Resource management apparatus, resource management method, resource management program, and computer-readable recording medium
JP4838851B2 (ja) * 2006-08-28 2011-12-14 パイオニア株式会社 リソース管理装置、リソース管理方法、リソース管理プログラムおよびコンピュータに読み取り可能な記録媒体
JP2008252655A (ja) * 2007-03-30 2008-10-16 Yamaha Corp 効果付与装置

Also Published As

Publication number Publication date
US6718545B1 (en) 2004-04-06

Similar Documents

Publication Publication Date Title
US7046574B2 (en) Memory system
US10474387B2 (en) Musical sound generation device, musical sound generation method, storage medium, and electronic musical instrument
JP2000242489A (ja) 信号処理装置の資源管理装置、プログラム転送方法、及び記録媒体
JPH03192296A (ja) 電子楽器
US8175731B2 (en) Apparatus for editing configuration data of digital mixer
JP4771287B2 (ja) 信号処理装置に実行させる信号処理モジュール
JP2007299421A (ja) 信号処理装置の資源管理装置及び記録媒体
JP3552309B2 (ja) 楽音制御情報設定装置
US6031916A (en) Sound effect adding device using DSP
JP4164760B2 (ja) ディジタルミキサ、シーンデータ編集装置、ミキサ構成編集装置、およびシーンデータ記憶装置
US7024657B2 (en) Program generation apparatus for program execution system, replaces variable name in each class file by assigned offset number so that same offset numbers are assigned to non-dependent variables with same variable name
JP4164761B2 (ja) ディジタルミキサ、パラメータ編集装置、およびミキサ構成編集装置
JP3646823B2 (ja) 電子楽器
WO2024021096A1 (zh) 一种数据共享的方法及设备
US6457113B1 (en) Memory management apparatus in a multi-channel signal processor
JP4164818B2 (ja) ミキサ構成編集装置
JP4164819B2 (ja) ミキサ構成編集装置
JP3050779B2 (ja) 信号処理装置
US6772023B1 (en) Apparatus for tone control and recording medium of tone control program
JP2817521B2 (ja) 電子楽器
JP3228394B2 (ja) 電子楽器
JP4164820B2 (ja) ディジタルミキサシステム、ミキサ構成作成編集装置、およびミキサ制御プログラム
WO2010010646A1 (ja) アクセスモジュール、記憶モジュール、楽音生成システム、及びデータ書き込みモジュール
JPH01295332A (ja) プログラム配置方式
JP2513303B2 (ja) スプ―ルファイル分散方式

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070619

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070713

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070821