JPH05181668A - デジタル信号処理プロセッサ - Google Patents
デジタル信号処理プロセッサInfo
- Publication number
- JPH05181668A JPH05181668A JP3358157A JP35815791A JPH05181668A JP H05181668 A JPH05181668 A JP H05181668A JP 3358157 A JP3358157 A JP 3358157A JP 35815791 A JP35815791 A JP 35815791A JP H05181668 A JPH05181668 A JP H05181668A
- Authority
- JP
- Japan
- Prior art keywords
- flag
- signal
- microprogram
- coefficient
- dsp
- 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.)
- Granted
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
- Complex Calculations (AREA)
- Reverberation, Karaoke And Other Acoustics (AREA)
Abstract
グラムとがDSP内部のフラグレジスタのフラグのセッ
ト及びリセットを互いに競合することなく確実に行うこ
とができるようにする。 【構成】 マイクロプログラム記憶手段はDSPの機
能、すなわちアルゴリズムを規定するマイクロプログラ
ムを格納する。係数記憶手段はマイクロプログラムの実
行時に利用される係数を格納する。フラグ記憶手段はマ
イクロプログラムの分岐等を指示するフラグを格納す
る。従って、係数利用手段はマイクロプログラムによっ
て規定されるアルゴリズム及びフラグに応じたデジタル
信号演算処理を係数を利用しながら行う。フラグ制御手
段は、外部のプロセッサから入力されるフラグのセット
信号又はリセット信号と、デジタル信号演算処理の途中
で係数利用手段から出力されるフラグのセット信号又は
リセット信号とが互いに競合しないように両者のセット
信号又はリセット信号がフラグ記憶手段に入力するタイ
ミングを調整する。
Description
等をデジタル化して処理するのに適したデジタル信号処
理プロセッサに関する。
Digital Signal Processor)
は、オーディオ分野では、リバーブレータ(残響付加装
置)、イコライザ、ミキサ等に使用されたり、再帰型
(IIR:Infinite Impulse Res
ponse)フィルタ、非再帰型(FIR:Finit
eImpulse Response)フィルタ等の各
種デジタルフィルタを構成するのに使用されている。ま
た、DSPは電子楽器の音源、エンベロープ発生回路又
は残響(リバーブ)効果装置等にも用いられている。ま
た、この他にも精密制御装置、高品位TV又はデジタル
VTRなどの多岐の分野で利用されている。
びデジタル技術の急速な発展に伴ってその性能を大幅に
向上しつつあり、「電子楽器は自然楽器に比べて音色が
もの足りない」という欠点も克服し、さらに進歩発展し
ている。その中でも特に、デジタル信号処理プロセッサ
(DSP)の出現及びその処理速度の高速性能等によっ
て、電子楽器は、より表現力が豊かになり、多彩な楽音
を合成することができるようになってきた。
マイクロプログラムを格納するマイクロプログラムレジ
スタと、積和演算を高速で実行するための乗算器、アキ
ュムレータ(累算器)、シフトレジスタ、データRA
M、上記乗算器などに所定の係数を供給するための係数
レジスタ及びマイクロプログラムの分岐等を指示するフ
ラグを格納するフラグレジスタとから構成される。
ンベロープ発生回路や残響効果装置等として機能させる
場合には、マイクロプログラムレジスタ内のマイクロプ
ログラムや係数レジスタ内の係数の内容をそれぞれの機
能に応じたものに設定し、さらにその特性を時間的に変
化させるために、係数やフラグレジスタの内容を順次変
化させる必要があった。
て機能させ、図5のようなエンベロープ信号を発生させ
ようとした場合、マイクロプログラムレジスタ内のマイ
クロプログラムや係数レジスタ内の係数の内容をエンベ
ロープ発生器の機能に応じたものに設定し、図6のよう
なフラグレジスタの内容を順次書換える必要がある。こ
のフラグレジスタはDSP内部のマイクロプログラムを
分岐又はジャンプさせるためのフラグF0〜F5を格納
するものである。
1は外部の上位プロセッサによってセットされるフラグ
であり、DSP内部のマイクロプログラムによってセッ
トされることはない。すなわち、フラグF0はノートオ
ン信号NOTE ONの出力を検出した外部の上位プロ
セッサによってセットされ、フラグF1はノートオフ信
号NOTE OFFの出力を検出した外部の上位プロセ
ッサによってセットされるだけである。但し、DSP内
部のマイクロプログラムはこのフラグF0及びF1の内
容を読み出し、これに応じた処理を行った後にリセット
を行う。
プログラムの現在の演算状態に応じて、マイクロプログ
ラム自身によってセット及びリセットされるフラグであ
り、外部の上位プロセッサによってセット及びリセット
されることはない。すなわち、フラグF2は、フラグF
0がセットされた後(すなわちノートオン信号NOTE
ONが出力した後)に、そのフラグF0の内容を読み
出したDSP内部のマイクロプログラムによってセット
され、DSPの演算状態がアタックタイムattack
におけるンベロープ信号波形の演算状態にあることを示
すものである。フラグF3はアタックタイムattac
kの演算が終了した後にDSP内部のマイクロプログラ
ムによってセットされ、DSPの演算状態が次のディケ
ィタイムdecayにおけるエンベロープ信号波形の演
算状態にあることを示すものである。
演算が終了した後にDSP内部のマイクロプログラムに
よってセットされ、DSPの演算状態が次のサスティン
タイムsustainにおけるエンベロープ信号波形の
演算状態にあることを示すものである。フラグF5はフ
ラグF1がセットされた後(すなわちノートオフ信号N
OTE OFFが出力した後)に、そのフラグF1の内
容を読み出したDSP内部のマイクロプログラムによっ
てセットされ、DSPの演算状態が次のリリースタイム
releaseにおけるエンベロープ信号波形の演算状
態にあることを示すものである。
SP内部のマイクロプログラムがフラグレジスタの各フ
ラグF0〜F5の内容を読み出し、セットされているフ
ラグF0〜F5の内容に応じて各種の演算を行ってい
る。そして、フラグF0,F1のセット処理について
は、外部プロセッサが行い、フラグF2〜F5のセット
及びリセット処理についてはDSP内部のマイクロプロ
グラム自身が行っている。
フラグF3がセット(フラグF2がリセット)されるま
での時間(アタックタイムattack)、フラグF3
がセットされてからフラグF4がセット(フラグF3が
リセット)されるまでの時間(ディケィタイムdeca
y)、及びフラグF5がセットされてからリセットされ
るまでの時間(リリースタイムrelease)はエン
ベロープ波形の種類によって特定された所定値である。
一方、フラグF0及びF1がセット及びリセットされる
タイミング、フラグF2及びF5がセットされるタイミ
ング、及びフラグF4がリセットされるタイミングは、
演奏者の鍵操作、すなわちノートオン信号NOTE O
N及びノートオフ信号NOTE OFFの出力に依存
し、任意(ランダム)である。
フラグF2〜F5のセット及びリセットはDSP内部の
マイクロプログラムによって実効されるので、これらの
フラグF0,F1のリセット及びフラグF2〜F5のセ
ット及びリセットのタイミングが競合することはない
が、フラグF0及びF1のセットはDSP内部のマイク
ロプログラムとは別個に独立した外部プロセッサによっ
て行われるため、フラグF2〜F5のセット及びリセッ
トのタイミングとフラグF0及びF1のセットのタイミ
ングとが競合することがある。すなわち、フラグレジス
タのアクセスが競合することがある。
時点が近づきDSP内部のマイクロプログラムがフラグ
F3をリセットし、フラグF4をセットしようとしてい
る時に、ほぼ同時に外部プロセッサがフラグF1をセッ
トしようした場合、DSP内部のマイクロプログラム及
び外部の上位プロセッサの処理に支障が生じ、セット又
はリセットが行えなくなり、DSPの処理に支障をきた
し、DSPの高速処理性能が低下するという問題を有し
ていた。
であり、外部の上位プロセッサと内部のマイクロプログ
ラムとがDSP内部のフラグレジスタのフラグのセット
及びリセットを互いに競合することなく確実に行うこと
のできるデジタル信号処理プロセッサを提供することを
目的とする。
信号処理プロセッサは、アルゴリズムを規定するマイク
ロプログラムを格納するマイクロプログラム記憶手段
と、係数を格納する係数記憶手段と、前記マイクロプロ
グラムの分岐等を指示するフラグを格納するフラグ記憶
手段と、前記マイクロプログラムによって規定されるア
ルゴリズム及び前記フラグに応じたデジタル信号演算処
理を前記係数を利用しながら行う係数利用手段と、外部
のプロセッサから入力される前記フラグのセット信号又
はリセット信号と、前記デジタル信号演算処理の途中で
前記係数利用手段から出力される前記フラグのセット信
号又はリセット信号とが互いに競合しないように両者の
前記セット信号又は前記リセット信号が前記フラグ記憶
手段に入力するタイミングを調整するフラグ制御手段と
を有することを特徴とするものである。
DSPの機能、すなわちアルゴリズムを規定するマイク
ロプログラムを格納する。係数記憶手段はマイクロプロ
グラムの実行時に利用される係数を格納する。フラグ記
憶手段はマイクロプログラムの分岐等を指示するフラグ
を格納する。従って、係数利用手段はマイクロプログラ
ムによって規定されるアルゴリズム及びフラグに応じた
デジタル信号演算処理を係数を利用しながら行う。
セット及びリセットは、外部のプロセッサとデジタル信
号演算処理を行っている係数利用部とが互いに独立して
行うことができるので、両者のセット信号及びリセット
信号が競合することがあり得る。そこで、本発明では、
フラグ制御手段を設け、両者のフラグのセット信号及び
リセット信号が互いに競合しないようにセット信号及び
リセット信号がフラグ記憶手段に入力するタイミングを
調整している。フラグのセット信号及びリセット信号が
競合するのは、これらの信号がフラグ記憶手段に同時に
入力するからである。従って、本発明のように両者のフ
ラグのセット信号及びリセット信号のタイミングを調
整、すなわち異ならせることによって、競合をさけるこ
とができる。
ムによって規定されるアルゴリズムに従ってフラグのセ
ット信号及びリセット信号を規則正しく出力し、外部プ
ロセッサはフラグのセット信号及びリセット信号をラン
ダムに出力する。そこで、本発明の推奨される実施の態
様では、フラグ制御手段は、外部プロセッサからランダ
ムに出力されるセット信号及びリセット信号を一時的に
記憶し、そのセット信号及びリセット信号を係数利用部
がセット信号及びリセット信号を出力しない所定のタイ
ミングまで遅延させてからフラグ記憶手段に出力する。
すなわち、フラグ制御手段は、外部プロセッサからラン
ダムに出力されるセット信号及びリセット信号を係数利
用部から出力されるセット信号及びリセット信号と同じ
ように規則正しく出力するようにその出力タイミングを
変更し、両者のフラグのセット信号又はリセット信号が
競合することのないようにする。
詳細に説明する。図2はこの発明に係るデジタル信号処
理プロセッサを音源として使用した場合の電子楽器のハ
ードウェア構成を示すブロック図である。この実施例に
おいて、電子楽器全体の制御は、マイクロプロセッサユ
ニット(MPU)20と、システムプログラムや各種パ
ラメータ等を格納するプログラムメモリ(ROM)21
と、各種データを一時的に格納し、ワーキングエリアと
して用いられるワーキングメモリ(RAM)22とを含
むマイクロコンピュータシステムによって行われる。こ
のマイクロコンピュータシステムには、データ及びアド
レスバス28を介して、鍵スイッチ回路24、鍵タッチ
検出回路25、音色等選択スイッチ回路26及び音源2
7等の各種装置が接続されており、これらの各装置はマ
イクロコンピュータによって制御される。
るための複数の鍵を備えたものであり、各鍵に対応して
鍵スイッチ回路24及び鍵タッチ検出回路25が接続さ
れる。鍵スイッチ回路24は発生すべき楽音の音高を指
定する鍵盤23のそれぞれの鍵に対応して設けられた複
数のキースイッチからなり、鍵盤23の押鍵又は離鍵状
態を検出し、離鍵から押鍵への変化に対応してキーオン
イベント信号を出力し、押鍵から離鍵への変化に対応し
てキーオフイベント信号を出力し、かつ各キーイベント
に対応する鍵を示すキーコード信号を出力する。この鍵
スイッチ回路24の各出力に基づき押圧鍵検出処理及び
押圧鍵を複数の発音チャンネルのいずれかに割り当てる
ための発音割当て処理がマイクロコンピュータシステム
によって行われ、必要に応じて押し下げ時の押鍵操作速
度を判別してイニシャルタッチデータ等を生成する処理
も行われる。
関連して、鍵押圧持続時における押圧力を検出してアフ
タタッチデータを出力するアフタタッチセンサを内蔵し
ている。音色等選択スイッチ回路26は、音色、音量、
音高、効果等を選択・設定・制御するための各種操作子
を含む操作パネル上に設けられており、ピアノ、オルガ
ン、バイオリン、金管楽器、ギター等の各種自然楽器に
対応する音色やその他各種の音色を選択するものであ
り、音色選択信号を出力する。
の同時発生が可能であり、データ及びアドレスバス28
を経由して与えられる各チャンネルに割り当てられた鍵
のキーコード、キーオン信号、キーオフ信号、イニシア
ルタッチデータ、アフタタッチデータ、音色選択信号及
びその他のデータを入力し、これらの各種データに基づ
き楽音信号を発生する。
号はサウンドシステム35内のデジタル/アナログ変換
器(図示せず)によって、アナログの楽音信号に変換さ
れる。サウンドシステム35はスピーカ及び増幅器等で
構成され、音源27からのデジタルの楽音信号に応じた
楽音を発生する。
処理プロセッサ(DSP)で構成されている。以下、音
源27を音源用DSP27とする。音源用DSP27は
インターフェイス回路31、マイクロプログラム記憶手
段32、係数利用部33及び係数記憶手段34から構成
される。
セッサシステムと音源用DSP27との間のデータ入出
力用のインターフェイスであり、第1及び第2の転送バ
ッファで構成される。マイクロプログラム記憶手段32
は音源用のマイクロプログラムを格納するものであり、
多段構成のシフトレジスタから構成される。マイクロプ
ログラムはデータ及びアドレスバス28及びインターフ
ェイス回路31を介して外部のMPU(外部プロセッ
サ)20によって書き込まれる。係数利用部33は、積
和演算を高速で実行するための乗算器、アキュムレータ
(累算器)、シフトレジスタ、データRAM、フラグレ
ジスタ及び乱数発生器等から構成される。係数利用部3
3の構成は従来のものと同じなので、その説明は省略す
る。係数記憶手段34は、音源用の係数を格納するもの
であり、マイクロプログラム記憶手段32と同様に多段
構成のシフトレジスタから構成される。なお、マイクロ
プログラム記憶手段32及び係数記憶手段34はRAM
から構成される場合もある。
32及び係数利用部33の一部の詳細構成を示す図であ
る。マイクロプログラム記憶用シフトレジスタ12は、
128段のシフトレジスタで構成されおり、各シフトレ
ジスタにはプログラムデータPDとして128ステップ
(A000〜A127)のプログラムデータが格納され
ている。このマイクロプログラム記憶用シフトレジスタ
12内のプログラムデータA000〜A127はシフト
パルス発生回路14の発生するシフトパルスSPによっ
て随時読み出され、プログラムデコーダ13及びセレク
タ回路11の入力端子Aに出力される。
記憶用シフトレジスタ12の最下段(0段目)から出力
されるマイクロプログラムデータを入力端子Aに、外部
プロセッサ20から出力されるプログラム書き換えデー
タDT1をインターフェイス31、データ及びアドレス
バス28を介して入力端子Bに、また外部プロセッサ2
0から出力されるプログラム書き換え信号SEを選択端
子SBにそれぞれ入力し、プログラム書き換え信号SE
がローレベル“0”の場合に入力端子Aのプログラムデ
ータA000〜A127を、ハイレベル“1”の場合に
入力端子Bのプログラム書き換えデータDT1をマイク
ロプログラム記憶用シフトレジスタ12の最上段(12
8段目)に供給する。
“0”のプログラム書き換え信号SEが入力している場
合には、マイクロプログラム記憶用シフトレジスタ12
はプログラムデータA000〜A127を次々と巡回さ
せ、ハイレベル“1”のプログラム書き換え信号SEが
入力している場合には、マイクロプログラム記憶用シフ
トレジスタ12のプログラムデータA000〜A127
は順番に新しいマイクロプログラムに書き換えられる。
ログラム記憶用シフトレジスタ12を順次シフトさせる
ためのシフトパルスSPを発生するものである。シフト
パルス発生回路14の発生するシフトパルスの周期がD
SPの動作速度を決定する。また、このシフトパルスS
Pによってマイクロプログラム記憶用シフトレジスタ1
2がプログラムデータA000からプログラムデータA
127までを出力するのに要する時間が、DSPの一サ
ンプリング周期に相当する。
ラム記憶用シフトレジスタ12からのプログラムデータ
A000〜A127、係数記憶手段34からの係数及び
フラグ制御回路19からフラグレジスタ10のフラグの
状態(セットされているか、リセットされているか)を
入力し、プログラムデータA000〜A127を解釈
し、各係数及びフラグの状態を参照して、DSP内の各
部分に制御信号を出力する。なお、この制御信号の一部
は、後述するフローチャートで示されるとおり、フラグ
制御回路19にも出力され、フラグ制御回路19はこの
制御信号に基づいてフラグレジスタ10のフラグをセッ
トしたり、リセットしたりして、その状態を書き換え
る。
からのシフトパルスSPを入力し、それを分周して、マ
イクロプログラム記憶用シフトレジスタ12がプログラ
ムデータA000を出力し始めてからプログラムデータ
A127を出力し終わるまでの一周期と同じ周期で出力
されるタイミング信号SYNCをラッチ回路16及びゲ
ート回路17に出力する。
のフラグのセットを要求するフラグセット信号FSと、
フラグのリセットを要求するフラグリセット信号FR
と、フラグレジスタ10内のどのフラグをセット又はリ
セットするのかを指示するフラグ番号FNとを入力し、
入力時点におけるそれらの信号(フラグセット信号FS
又はフラグリセット信号FR及びフラグ番号FN)をラ
ッチする。そして、ラッチ回路16は、分周器15から
のタイミング信号SYNCの入力に応じて、ラッチして
いたデータをリセットする。なお、オア回路18は、フ
ラグセット信号FS又はフラグリセット信号FRの入力
を検出し、それに基づいたラッチ信号をラッチ回路16
に出力するゲートとして機能する。
ミング信号SYNCに応じてラッチ回路16にラッチさ
れているフラグセット信号FS又はフラグリセット信号
FR及びフラグ番号FNをフラグ制御回路19に出力す
る。
ダ13、ゲート回路17及びフラグレジスタ10に接続
されており、プログラムデコーダ13からの制御信号に
基づいてフラグレジスタ10内のフラグをセット又はリ
セットしたり、フラグの状態をプログラムデコーダ13
に出力したりする。また、フラグ制御回路19は、タイ
ミング信号SYNCの出力に同期してゲート回路17か
ら出力されるフラグセット信号FS又はフラグリセット
信号FR及びフラグ番号FNに応じて、フラグ番号FN
で指示されるフラグのセット又はリセットを行う。
に、各フラグF0〜F5がレジスタの1ビットに対応付
けられている。各フラグは、そのビットがハイレベル
“1”の時にセットされた状態であり、ローレベル
“0”の時にリセットされた状態である。なお、図6の
フラグ数は一例であり、この他にもいくつかの制御状態
を示すフラグが存在する。
ート図を用いて説明する。まず、DSPが通常のエンベ
ロープ発生器として動作している場合には、セレクタ回
路11には、ローレベル“0”のプログラム書き換え信
号SEが入力しており、マイクロプログラム記憶用シフ
トレジスタ12のプログラムデータPDはシフトパルス
発生回路14のシフトパルスに同期して次々とセレクタ
回路11を介して巡回している。例えば、図3に示すよ
うに、時刻t1でマイクロプログラム記憶用シフトレジ
スタ12はプログラムデータA000をプログラムデコ
ーダ13及びセレクタ回路11の入力端子Aに出力し、
以後シフトパルスSPの立下りに同期した形で順番にプ
ログラムデータA001〜A127を出力する。そし
て、マイクロプログラム記憶用シフトレジスタ12は時
刻t4で再びプログラムデータA000を出力するよう
になる。
回路14のシフトパルスSPを分周し、タイミング信号
SYNCを出力する。このタイミング信号SYNCは、
マイクロプログラム記憶用シフトレジスタ12がプログ
ラムデータA000〜A127を一巡して出力するのに
要する時間を一周期とする信号であり、時刻t1及び時
刻t4の一個前のシフトパルス、すなわちプログラムデ
ータA127の出力時点に同期している。
ラグリセット信号FR及びフラグ番号FNが時刻t2で
ラッチ回路16に入力すると、ラッチ回路16はその時
点におけるフラグセット信号FS又はフラグリセット信
号FR及びフラグ番号FNをラッチする。図示していな
いが、ラッチ回路16は、フラグセット信号FS又はフ
ラグリセット信号FR及びフラグ番号FNを入力してか
ら次のタイミング信号SYNCの立下り時刻t4でリセ
ットされるまでの間、ラッチしているフラグセット信号
FS及びフラグリセット信号FRの論理和信号をセット
/リセットBUSY信号FBとして外部プロセッサ20
に帰還している。
セット/リセットBUSY信号FBがハイレベル“1”
の場合には、ラッチ回路16に対して外部プロセッサ2
0からフラグセット信号FS又はフラグリセット信号F
Rが既に出力されているということなので、外部プロセ
ッサ20はフラグレジスタ10を再びアクセスすること
はない。逆にセット/リセットBUSY信号FBがロー
レベル“0”の場合は、外部プロセッサ20はフラグレ
ジスタ10をアクセスすることができる。
ト信号FS又はフラグリセット信号FR及びフラグ番号
FNをラッチした後はタイミング信号SYNCの立下り
時刻t4までその値を保持し続け、タイミング信号SY
NCの立下りに同期してラッチしていた値をリセットす
る。このとき、ゲート回路17は、タイミング信号SY
NCの立上りに同期してゲートを開き、ラッチ回路16
にラッチされているフラグセット信号FS又はフラグリ
セット信号FR及びフラグ番号FNをフラグセット信号
DFS又はフラグリセット信号DFR及びフラグ番号D
FNとしてフラグ制御回路19に出力する。すなわち、
分周器15、ラッチ回路16及びゲート回路17は、外
部プロセッサ20からDSPに入力されたフラグセット
信号FS又はフラグリセット信号FR及びフラグ番号F
Nをタイミング信号SYNCの出力時点まで遅延させる
働きをする。
ログラムデコーダ13からの制御信号とゲート回路17
からのフラグ制御信号(フラグセット信号DFS又はフ
ラグリセット信号DFR及びフラグ番号DFN)との間
には特に優先順位を設けてないので、両方の信号が競合
する場合があり得る。しかしながら、マイクロプログラ
ム記憶用シフトレジスタ12内のマイクロプログラムの
プログラミング時にタイミング信号SYNCの出力時
点、すなわちプログラムデータA127の出力時点でフ
ラグレジスタ10をアクセスしないようにプログラムを
組み込んであるので、アクセス競合することはない。す
なわち、時刻t1から時刻t3までの間は、フラグ制御
回路19はプログラムデコーダ13からの制御信号によ
ってのみ制御され、時刻t3から時刻t4までの間は、
ラッチ回路16及びゲート回路17によって遅延された
フラグセット信号DFS又はフラグリセット信号DFR
及びフラグ番号DFNによってのみ制御されるようにな
っている。
ンベロープ信号を形成する場合の各ステップの処理内容
を図4のフローチャートを用いて説明する。 ステップ40:フラグレジスタ10のフラグF0がハイ
レベル“1”にセットされているかどうかを判定し、セ
ットされている(YES)場合は、ステップ41に進
み、セットされていない(NO)場合はステップ42に
進む。すなわち、このステップ40では、MPU20か
らDSPに対してノートオン信号NOTEONが出力さ
れたかどうかを検出する。
がセットされていたので、次のノートオン信号NOTE
ONの入力に備えて、まずフラグF0をリセットす
る。そして、フラグF2だけをセットし、他のフラグF
3,F4,F5をリセットし、これ以降のDSPの処理
を図5のエンベロープ信号のアタックタイムattac
kの波形作成処理に変更して、次のステップ42に進
む。
グF1がハイレベル“1”にセットされているかどうか
を判定し、セットされている(YES)場合は、ステッ
プ43に進み、セットされていない(NO)場合はステ
ップ44に進む。すなわち、このステップ42では、M
PU20からDSPに対してノートオフ信号NOTEO
FFが出力されたかどうかを検出する。
がセットされていたので、次のノートオフ信号NOTE
OFFの入力に備えて、まずフラグF1をリセットす
る。そして、フラグF5だけをハイレベル“1”にセッ
トし、他のフラグF2,F3,F4をリセットし、これ
以降のDSPの処理を図5のエンベロープ信号のリリー
スタイムreleaseの波形作成処理に変更して、つ
ぎのステップ44に進む。
グF2がハイレベル“1”にセットされているかどうか
を判定し、セットされている(YES)場合は、ステッ
プ45に進み、セットされていない(NO)場合はステ
ップ48に進む。すなわち、このステップ44は、ステ
ップ41を通過したかどうかを判定するステップであ
る。
タENVの値にアタックレートARを加算する。すなわ
ち、アタックレートARは図5のようなアタックタイム
attackの波形を形成するためのデータであり、係
数記憶手段34からエンベロープ波形の種類に応じたも
のが与えられる。
た後のエンベロープ演算用レジスタENVの値が目標値
の1以上であるかどうかを判定し、1以上(YES)の
場合はステップ47に進み、1よりも小さい(NO)場
合はステップ56に進む。この目標値もエンベロープ波
形の種類に応じて係数記憶手段34から与えられるもの
である。
NVの値が目標値1に達したということは、アタックタ
イムattackの波形演算が終了したことを意味す
る。 ステップ47:ステップ46でエンベロープ演算用レジ
スタENVが1以上であると判定されたということは、
アタックタイムattackの波形演算が終了したこと
を意味するので、このステップではフラグレジスタ10
のフラグF2をリセットし、次のエンベロープ波形のデ
ィケィタイムdecayの処理に備えてフラグF3をハ
イレベル“1”にセットし、ステップ56に進む。
グF3がハイレベル“1”にセットされているかどうか
を判定し、セットされている(YES)場合は、ステッ
プ49に進み、セットされていない(NO)場合はステ
ップ52に進む。すなわち、このステップ48は、ステ
ップ45〜47のアタックタイムattackの波形演
算処理が終了したかどうかを判定するステップである。
タENVにディケィレートDRを乗算する。すなわち、
ディケィレートDRは図5のようなディケィタイムde
cayの波形を形成するためのデータであり、係数記憶
手段34からエンベロープ波形の種類に応じたものが与
えられる。
た後のエンベロープ演算用レジスタENVの値がサステ
ィンレベルSL以下であるかどうかを判定し、サスティ
ンレベルSL以下(YES)の場合はステップ51に進
み、それよりも大きい(NO)場合はステップ56に進
む。このサスティンレベルSLもエンベロープ波形の種
類に応じて係数記憶手段34から与えられる。 ステップ51:ステップ50でエンベロープ演算用レジ
スタENVがサスティンレベルSL以下であると判定さ
れたということは、ディケイタイムdecayの波形演
算が終了したことを意味するので、このステップでは、
フラグレジスタ10のフラグF3をリセットし、次のサ
スティンタイムsustainのエンベロープ波形の処
理に備えてフラグF4をハイレベル“1”にセットし、
ステップ56に進む。
グF4がハイレベル“1”にセットされているかどうか
を判定し、セットされている(YES)場合は、ステッ
プ53に進み、セットされていない(NO)場合はステ
ップ54に進む。すなわち、このステップ52は、ステ
ップ49〜51のディケィタイムdecayの波形演算
処理が終了したかどうかを判定するステップである。 ステップ53:エンベロープ演算用レジスタENVの値
をサスティンレベルSLとし、ノートオフ信号NOTE
OFFが出力されるまでの間、図5のようなサスティ
ンタイムsustainの波形を形成する。
グF5がハイレベル“1”にセットされているかどうか
を判定し、セットされている(YES)場合は、ステッ
プ55に進み、セットされていない(NO)場合はステ
ップ56に進む。すなわち、このステップ54は、ステ
ップ43を通過したかどうかを判定するステップでもあ
る。 ステップ55:エンベロープ演算用レジスタENVの値
にリリースレートRRを乗算する。すなわち、リリース
レートRRは図5のようなリリースタイムreleas
eの波形を形成するためのデータであり、エンベロープ
波形の種類に応じて係数記憶手段34から与えられる。
のいずれかの処理を経たエンブロープ演算用レジスタE
NVの値をサウンドシステム35に出力する。この値を
受けたサウンドシステムは、図5のようなエンベロープ
波形の楽音信号を発音処理する。
ップの処理によって図5のようなエンベロープ波形が出
力される。また、DSPはステップ56の処理中にはフ
ラグレジスタ10のフラグF0〜F5をセット/リセッ
トしたりしないので、この時に外部プロセッサ20がフ
ラグレジスタ10のフラグF0又はF1をセットする。
これによって、DSPと外部プロセッサとの間でフラグ
レジスタ10を同時にアクセスするというようなアクセ
ス競合が起こることはなくなり、DSPはその演算処理
を支障なく行うことができるようになる。
が6つのフラグF0〜F5を有する場合を例に説明した
が、フラグF0及びF1を省略し、フラグF2及びF5
のセットを外部プロセッサが直接行ない、リセットをD
SP内部で行うようにしてもよい。この場合でも、両者
のアクセスが競合することはない。
エンベロープ波形発生器として動作させる場合を例に説
明したが、オーディオ用、各種デジタルフィルタ用、電
子楽器のエンベロープ発生回路用、精密制御装置用、高
品位TV用又はデジタルVTR用などの多岐の分野で利
用されているDSPに応用できることはいうまでもな
い。
レジスタ内のフラグの書換えをDSPの処理に支障をき
たすことなく確実に行うことができるという効果があ
る。
用部の一部との詳細構成を示す図である。
を音源として使用した場合の電子楽器の一実施例のハー
ドウェア構成を示すブロック図である。
ート図である。
号を形成する場合の処理内容を示すフローチャート図で
ある。
た場合にそのエンベロープ発生器の発生するエンベロー
プ信号を示す図である。
の内容を示す図である。
イクロプログラム記憶用シフトレジスタ、13…プログ
ラムデコーダ、14…シフトパルス発生回路、15…分
周器、16…ラッチ回路、17…ゲート回路、18…オ
ア回路、19…フラグ制御回路、20…マイクロプロセ
ッサユニット、21…プログラムメモリ(ROM)、2
2…ワーキングメモリ(RAM)、23…鍵盤、24…
鍵スイッチ回路、25…鍵タッチ検出回路、26…音色
等選択スイッチ回路、27…音源用DSP、28…デー
タ及びアドレスバス、31…インターフェイス回路、3
2…マイクロプログラム記憶手段、33…係数利用部、
34…係数記憶手段、35…サウンドシステム
Claims (1)
- 【請求項1】 アルゴリズムを規定するマイクロプログ
ラムを格納するマイクロプログラム記憶手段と、 係数を格納する係数記憶手段と、 前記マイクロプログラムの分岐等を指示するフラグを格
納するフラグ記憶手段と、 前記マイクロプログラムによって規定されるアルゴリズ
ム及び前記フラグに応じたデジタル信号演算処理を前記
係数を利用しながら行う係数利用手段と、 外部のプロセッサから入力される前記フラグのセット信
号又はリセット信号と、前記デジタル信号演算処理の途
中で前記係数利用手段から出力される前記フラグのセッ
ト信号又はリセット信号とが互いに競合しないように両
者の前記セット信号又は前記リセット信号が前記フラグ
記憶手段に入力するタイミングを調整するフラグ制御手
段とを有することを特徴とするデジタル信号処理プロセ
ッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35815791A JP3508139B2 (ja) | 1991-12-27 | 1991-12-27 | デジタル信号処理プロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP35815791A JP3508139B2 (ja) | 1991-12-27 | 1991-12-27 | デジタル信号処理プロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05181668A true JPH05181668A (ja) | 1993-07-23 |
JP3508139B2 JP3508139B2 (ja) | 2004-03-22 |
Family
ID=18457841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP35815791A Expired - Lifetime JP3508139B2 (ja) | 1991-12-27 | 1991-12-27 | デジタル信号処理プロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3508139B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5951673A (en) * | 1994-01-25 | 1999-09-14 | Yamaha Corporation | Digital signal processing device capable of selectively imparting effects to input data |
-
1991
- 1991-12-27 JP JP35815791A patent/JP3508139B2/ja not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5951673A (en) * | 1994-01-25 | 1999-09-14 | Yamaha Corporation | Digital signal processing device capable of selectively imparting effects to input data |
US6189085B1 (en) | 1994-01-25 | 2001-02-13 | Yamaha Corporation | Digital signal processing device |
Also Published As
Publication number | Publication date |
---|---|
JP3508139B2 (ja) | 2004-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH04306697A (ja) | ステレオ方式 | |
US5074183A (en) | Musical-tone-signal-generating apparatus having mixed tone color designation states | |
JP3508139B2 (ja) | デジタル信号処理プロセッサ | |
JP2001265352A (ja) | 楽音信号処理装置 | |
JP2698942B2 (ja) | 楽音発生装置 | |
JP2932841B2 (ja) | 電子楽器 | |
JPS6248239B2 (ja) | ||
JP2701177B2 (ja) | 楽音発生装置 | |
JP3436806B2 (ja) | 楽音信号のエンベロープ制御装置 | |
JP2715795B2 (ja) | 発音割当手段を有する楽音合成装置 | |
JP3660125B2 (ja) | 電子楽器の音像定位感制御装置 | |
JP3094759B2 (ja) | 楽音信号分配処理装置 | |
JPH10198369A (ja) | 電子楽器 | |
JP2953217B2 (ja) | 電子楽器 | |
JP3241832B2 (ja) | 楽音生成装置 | |
JP3649906B2 (ja) | 電子楽器のキーオンディレイ効果付加装置 | |
JP3652504B2 (ja) | 電子楽器の残響効果付加装置 | |
JP2666762B2 (ja) | 電子楽器 | |
JP3190103B2 (ja) | 楽音合成装置 | |
JP4124434B2 (ja) | デジタル音源付き電子楽器 | |
JP4306138B2 (ja) | 楽音発生装置及び楽音発生処理のプログラム | |
JP2666764B2 (ja) | 電子楽器 | |
JPH0926787A (ja) | 音色制御装置 | |
JPS63293596A (ja) | 楽音信号発生装置 | |
JP2606459B2 (ja) | 電子楽器のタッチレスポンス装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20031215 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080109 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080109 Year of fee payment: 4 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090109 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100109 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110109 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120109 Year of fee payment: 8 |
|
EXPY | Cancellation because of completion of term |