JPH08166795A - ディジタルシグナルプロセッサ - Google Patents
ディジタルシグナルプロセッサInfo
- Publication number
- JPH08166795A JPH08166795A JP6309383A JP30938394A JPH08166795A JP H08166795 A JPH08166795 A JP H08166795A JP 6309383 A JP6309383 A JP 6309383A JP 30938394 A JP30938394 A JP 30938394A JP H08166795 A JPH08166795 A JP H08166795A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- pointer
- data
- area
- signal processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Reverberation, Karaoke And Other Acoustics (AREA)
- Electrophonic Musical Instruments (AREA)
- Complex Calculations (AREA)
Abstract
(57)【要約】
【目的】 エコーやリバーブ、及びキーコントロール等
の機能及び高速なPCM処理を実現可能とし、DSPの
トータル的な演算処理能力を向上させる。 【構成】 加算器5はオフセットメモリ1の出力とセレ
クタ4の出力とを加算し、その加算結果をラッチ回路
6,7に夫々出力する。加算器5はポインタメモリ3か
らのポインタデータをインクリメントし、インクリメン
トした次ポインタデータをラッチ回路6とアンド回路8
とセレクタ2とを介してポインタメモリ3にセットす
る。加算器5は次ポインタデータがアドレス空間の領域
を越えるか否かを判定するために所定演算を行い、その
所定演算の結果が“0”であればEQ信号をアンド回路
8に出力する。アンド回路8は加算器5から信号が入力
されると次ポインタデータをクリアし、ポインタメモリ
3にセレクタ2を介して領域の先頭ポインタデータを書
込む。
の機能及び高速なPCM処理を実現可能とし、DSPの
トータル的な演算処理能力を向上させる。 【構成】 加算器5はオフセットメモリ1の出力とセレ
クタ4の出力とを加算し、その加算結果をラッチ回路
6,7に夫々出力する。加算器5はポインタメモリ3か
らのポインタデータをインクリメントし、インクリメン
トした次ポインタデータをラッチ回路6とアンド回路8
とセレクタ2とを介してポインタメモリ3にセットす
る。加算器5は次ポインタデータがアドレス空間の領域
を越えるか否かを判定するために所定演算を行い、その
所定演算の結果が“0”であればEQ信号をアンド回路
8に出力する。アンド回路8は加算器5から信号が入力
されると次ポインタデータをクリアし、ポインタメモリ
3にセレクタ2を介して領域の先頭ポインタデータを書
込む。
Description
【0001】
【産業上の利用分野】本発明はディジタルシグナルプロ
セッサに関し、特に楽器の音を生成する音源生成動作を
行うためのPCM音源対応のディジタルシグナルプロセ
ッサに関する。
セッサに関し、特に楽器の音を生成する音源生成動作を
行うためのPCM音源対応のディジタルシグナルプロセ
ッサに関する。
【0002】
【従来の技術】パーソナルコンピュータ用にメディアボ
ード等で音声処理を行う場合、オーディオ用に特化され
たディジタルシグナルプロセッサ(以下、DSPとす
る)が使用される。
ード等で音声処理を行う場合、オーディオ用に特化され
たディジタルシグナルプロセッサ(以下、DSPとす
る)が使用される。
【0003】この種のDSPでは外部遅延用メモリを使
用し、エコーやリバーブ、及びキーコントロール等の動
作に適するように構成されている。しかしながら、メデ
ィアボードでは音源の機能も要求されている。
用し、エコーやリバーブ、及びキーコントロール等の動
作に適するように構成されている。しかしながら、メデ
ィアボードでは音源の機能も要求されている。
【0004】ここで、エコーは初期反射音で、壁に反射
された音を再現するものであり、外部遅延用メモリによ
って1回の反射効果を行う。また、リバーブは残響音
で、反射された音がまた反射されるような動作となり、
反射音を入力されたデータとともに演算して外部遅延用
メモリに再度書込む処理が必要となる。
された音を再現するものであり、外部遅延用メモリによ
って1回の反射効果を行う。また、リバーブは残響音
で、反射された音がまた反射されるような動作となり、
反射音を入力されたデータとともに演算して外部遅延用
メモリに再度書込む処理が必要となる。
【0005】従来、上記のDSPはエコーやリバーブな
どの機能をいかに効率よく実現するかを目的に作られて
いる。そのため、反射された音を作り出すことが必要と
なるので、反射音を作り出すためのデータを大容量のメ
モリに蓄えてからある時間が経過した後にそのデータを
メモリから読出すことで、反射音等の効果音が実現され
る。
どの機能をいかに効率よく実現するかを目的に作られて
いる。そのため、反射された音を作り出すことが必要と
なるので、反射音を作り出すためのデータを大容量のメ
モリに蓄えてからある時間が経過した後にそのデータを
メモリから読出すことで、反射音等の効果音が実現され
る。
【0006】上記の大容量のメモリには、図6に示すよ
うに、反射音を生成するためのエコー用エリアと、その
反射音を基に残響音を生成するためのリバーブ用エリア
A及びリバーブ用エリアBが配置されている。
うに、反射音を生成するためのエコー用エリアと、その
反射音を基に残響音を生成するためのリバーブ用エリア
A及びリバーブ用エリアBが配置されている。
【0007】エコー用エリアでは入力されたデータが書
込まれた後に、ある一定時間が経過してからそのデータ
が読出される。また、リバーブ用エリアA及びリバーブ
用エリアBではエコー用エリア及びリバーブ用エリアA
から夫々読出されて処理されたデータが書込まれ、ある
一定時間が経過してからそのデータが読出される。
込まれた後に、ある一定時間が経過してからそのデータ
が読出される。また、リバーブ用エリアA及びリバーブ
用エリアBではエコー用エリア及びリバーブ用エリアA
から夫々読出されて処理されたデータが書込まれ、ある
一定時間が経過してからそのデータが読出される。
【0008】この大容量のメモリはリングバッファのよ
うに構成され、ポインタをもとにあるオフセット値を示
すオフセットデータによって作られたアドレスを基に読
出される。図6においては、OF1はエコー用エリアの
オフセットデータを示し、OF2はリバーブ用エリアA
のオフセットデータを示し、OF3はリバーブ用エリア
Bのオフセットデータを示している。
うに構成され、ポインタをもとにあるオフセット値を示
すオフセットデータによって作られたアドレスを基に読
出される。図6においては、OF1はエコー用エリアの
オフセットデータを示し、OF2はリバーブ用エリアA
のオフセットデータを示し、OF3はリバーブ用エリア
Bのオフセットデータを示している。
【0009】また、大容量のメモリに対するアクセスア
ドレスを生成するオーディオ用DSPメモリアドレス生
成回路は、図4に示すように、オフセット(OF)メモ
リ11と、セレクタ12と、ポインタレジスタ13と、
加算器14とから構成されている。
ドレスを生成するオーディオ用DSPメモリアドレス生
成回路は、図4に示すように、オフセット(OF)メモ
リ11と、セレクタ12と、ポインタレジスタ13と、
加算器14とから構成されている。
【0010】オフセットメモリ11はエコー用エリア、
リバーブ用エリアA、リバーブ用エリアB各々のオフセ
ットデータOF1,OF2,OF3を格納するメモリで
あり、ポインタレジスタ13は上記のポインタデータを
格納するレジスタである。
リバーブ用エリアA、リバーブ用エリアB各々のオフセ
ットデータOF1,OF2,OF3を格納するメモリで
あり、ポインタレジスタ13は上記のポインタデータを
格納するレジスタである。
【0011】加算器14はポインタレジスタ13のポイ
ンタデータにオフセットメモリ11のオフセットデータ
OF1,OF2,OF3を加算し、その加算値を外部メ
モリアドレスとして出力する。これによって、エコーや
リバーブ等の機能が簡単に実現される。
ンタデータにオフセットメモリ11のオフセットデータ
OF1,OF2,OF3を加算し、その加算値を外部メ
モリアドレスとして出力する。これによって、エコーや
リバーブ等の機能が簡単に実現される。
【0012】このとき、上記のメモリアドレス生成回路
は、図5に示すような動作を行う。すなわち、メモリア
ドレス生成回路に外部メモリアクセスの命令があると、
オフセットメモリ11からオフセットデータ「OFn」
(nはオフセットデータのn番目のデータであることを
示す)が、ポインタレジスタ13からポインタデータ
「P」が夫々同時に読出され、加算器14で加算され
る。
は、図5に示すような動作を行う。すなわち、メモリア
ドレス生成回路に外部メモリアクセスの命令があると、
オフセットメモリ11からオフセットデータ「OFn」
(nはオフセットデータのn番目のデータであることを
示す)が、ポインタレジスタ13からポインタデータ
「P」が夫々同時に読出され、加算器14で加算され
る。
【0013】よって、加算器14の加算結果「OFn+
P」が外部メモリアドレスとして出力される。その後
に、加算器14はポインタレジスタ13からのポインタ
データ「P」をインクリメントし、インクリメントした
ポインタデータ「P+1」をセレクタ12を介してポイ
ンタレジスタ13にセットする。
P」が外部メモリアドレスとして出力される。その後
に、加算器14はポインタレジスタ13からのポインタ
データ「P」をインクリメントし、インクリメントした
ポインタデータ「P+1」をセレクタ12を介してポイ
ンタレジスタ13にセットする。
【0014】一方、PCM音源用LSIは、図7に示す
ように、命令メモリ21と、乗算器22と、ラッチ回路
23と、データメモリ24と、ACC(Accumul
ator)25と、ALU(Arithmetic a
nd Logical Unit)26とから構成され
ている。
ように、命令メモリ21と、乗算器22と、ラッチ回路
23と、データメモリ24と、ACC(Accumul
ator)25と、ALU(Arithmetic a
nd Logical Unit)26とから構成され
ている。
【0015】PCM音源用LSIではデータメモリ24
に上記のオフセットデータに相当するデータが蓄えられ
ており、乗算器22やALU26等によって大容量のメ
モリ(図示せず)のアドレスの計算が行われている。
尚、その計算手順等は命令メモリ21に蓄えられてい
る。
に上記のオフセットデータに相当するデータが蓄えられ
ており、乗算器22やALU26等によって大容量のメ
モリ(図示せず)のアドレスの計算が行われている。
尚、その計算手順等は命令メモリ21に蓄えられてい
る。
【0016】
【発明が解決しようとする課題】上述した従来のオーデ
ィオ用DSPでは、エコーやリバーブ等の機能を実現す
るために大容量のメモリをリングバッファのように構成
しているので、この大容量のメモリを固定的な場所から
データを読出すPCM音源の機能を実現するために用い
ることができない。
ィオ用DSPでは、エコーやリバーブ等の機能を実現す
るために大容量のメモリをリングバッファのように構成
しているので、この大容量のメモリを固定的な場所から
データを読出すPCM音源の機能を実現するために用い
ることができない。
【0017】また、PCM音源用LSIはPCM音源専
用に特化されているため、エコーやリバーブ、及びキー
コントロール等の機能を実現するのに適さない。さら
に、PCM音源用LSIではPCM音源用の大容量のメ
モリのアドレス計算に演算部を用いてしまうため、PC
M処理においてDSPをいかに高速に動作させるかが問
題となる本分野のDSPのトータル的な演算処理能力が
低下してしまう。
用に特化されているため、エコーやリバーブ、及びキー
コントロール等の機能を実現するのに適さない。さら
に、PCM音源用LSIではPCM音源用の大容量のメ
モリのアドレス計算に演算部を用いてしまうため、PC
M処理においてDSPをいかに高速に動作させるかが問
題となる本分野のDSPのトータル的な演算処理能力が
低下してしまう。
【0018】そこで、本発明の目的は上記の問題点を解
消し、エコーやリバーブ、及びキーコントロール等の機
能及び高速なPCM処理の実現を可能とし、DSPのト
ータル的な演算処理能力を向上させることができるDS
Pを提供することにある。
消し、エコーやリバーブ、及びキーコントロール等の機
能及び高速なPCM処理の実現を可能とし、DSPのト
ータル的な演算処理能力を向上させることができるDS
Pを提供することにある。
【0019】
【課題を解決するための手段】本発明によるディジタル
シグナルプロセッサは、音源発生用のメモリに対してP
CM音源のためのメモリアクセスを行うディジタルシグ
ナルプロセッサであって、前記メモリにおいて予め分割
された複数の領域各々を指定するオフセット値を格納す
る格納手段と、前記複数の領域各々におけるアクセス場
所を示すポインタ値を保持する保持手段と、前記オフセ
ット値と前記ポインタ値とを基に前記メモリに対するア
クセスアドレスを生成する生成手段と、前記領域におけ
る次アクセス場所を示す次ポインタ値が前記領域を越え
るか否かを判定する判定手段と、前記判定手段の判定結
果に応じて前記次ポインタ値を前記領域内における先頭
位置に戻す手段とを備えている。
シグナルプロセッサは、音源発生用のメモリに対してP
CM音源のためのメモリアクセスを行うディジタルシグ
ナルプロセッサであって、前記メモリにおいて予め分割
された複数の領域各々を指定するオフセット値を格納す
る格納手段と、前記複数の領域各々におけるアクセス場
所を示すポインタ値を保持する保持手段と、前記オフセ
ット値と前記ポインタ値とを基に前記メモリに対するア
クセスアドレスを生成する生成手段と、前記領域におけ
る次アクセス場所を示す次ポインタ値が前記領域を越え
るか否かを判定する判定手段と、前記判定手段の判定結
果に応じて前記次ポインタ値を前記領域内における先頭
位置に戻す手段とを備えている。
【0020】本発明による他のディジタルシグナルプロ
セッサは、上記の構成のほかに、前記判定手段の判定時
に前記保持手段の出力に代えて前記生成手段で生成され
たアクセスアドレスを前記生成手段に出力する選択手段
を具備している。
セッサは、上記の構成のほかに、前記判定手段の判定時
に前記保持手段の出力に代えて前記生成手段で生成され
たアクセスアドレスを前記生成手段に出力する選択手段
を具備している。
【0021】本発明による別のディジタルシグナルプロ
セッサは、音源発生用のメモリに対してPCM音源のた
めのメモリアクセスを行うディジタルシグナルプロセッ
サであって、前記メモリにおいて予め分割された複数の
領域各々を指定するオフセット値を格納する格納手段
と、前記複数の領域各々におけるアクセス場所を示すポ
インタ値を記憶する記憶手段と、前記オフセット値と前
記ポインタ値とを加算して前記メモリのアクセスアドレ
スを生成しかつ次ポインタ値が前記領域を越えるか否か
を判定するための所定演算を行う加算手段と、前記所定
演算の演算時に前記記憶手段の内容に代えて前記加算手
段の加算結果を前記加算手段に出力する選択手段と、前
記所定演算の結果に応じて前記領域の先頭アドレスを生
成する生成手段とを備えている。
セッサは、音源発生用のメモリに対してPCM音源のた
めのメモリアクセスを行うディジタルシグナルプロセッ
サであって、前記メモリにおいて予め分割された複数の
領域各々を指定するオフセット値を格納する格納手段
と、前記複数の領域各々におけるアクセス場所を示すポ
インタ値を記憶する記憶手段と、前記オフセット値と前
記ポインタ値とを加算して前記メモリのアクセスアドレ
スを生成しかつ次ポインタ値が前記領域を越えるか否か
を判定するための所定演算を行う加算手段と、前記所定
演算の演算時に前記記憶手段の内容に代えて前記加算手
段の加算結果を前記加算手段に出力する選択手段と、前
記所定演算の結果に応じて前記領域の先頭アドレスを生
成する生成手段とを備えている。
【0022】本発明によるさらに別のディジタルシグナ
ルプロセッサは、上記の構成のほかに、前記加算手段の
加算結果を保持しかつその保持内容を前記生成手段に出
力する第1の保持手段と、前記加算手段の加算結果を保
持しかつ保持内容をアクセスアドレスとして出力する第
2の保持手段とを具備している。
ルプロセッサは、上記の構成のほかに、前記加算手段の
加算結果を保持しかつその保持内容を前記生成手段に出
力する第1の保持手段と、前記加算手段の加算結果を保
持しかつ保持内容をアクセスアドレスとして出力する第
2の保持手段とを具備している。
【0023】
【作用】大容量のメモリにおいて予め分割された複数の
ブロック領域各々を指定するオフセットデータをオフセ
ットメモリに格納し、複数のブロック領域各々における
アクセス場所を示すポインタデータをポインタメモリに
保持する。
ブロック領域各々を指定するオフセットデータをオフセ
ットメモリに格納し、複数のブロック領域各々における
アクセス場所を示すポインタデータをポインタメモリに
保持する。
【0024】これらオフセットデータとポインタデータ
とを加算器で加算して外部メモリアドレスを生成すると
共に、ブロック領域における次アクセス場所を示す次ポ
インタデータがそのブロック領域を越えるときに次ポイ
ンタデータをクリアして各ブロック領域の先頭位置を示
すポインタデータをポインタメモリに保持する。
とを加算器で加算して外部メモリアドレスを生成すると
共に、ブロック領域における次アクセス場所を示す次ポ
インタデータがそのブロック領域を越えるときに次ポイ
ンタデータをクリアして各ブロック領域の先頭位置を示
すポインタデータをポインタメモリに保持する。
【0025】これによって、エコーやリバーブの機能等
によってサラウンド音を実現するためのメモリアドレス
生成回路に小さいハードウェアを追加することで、PC
M音源に必要なメモリに対するアドレス生成をエコーや
リバーブの機能におけるアドレス生成とともに行うこと
が可能となる。同時に、アドレス計算をハードウェアで
行ってしまうので、ソフトウェアで実現するのに比べて
設計者の負担を軽減し、DSPの演算処理能力の向上が
図れる。
によってサラウンド音を実現するためのメモリアドレス
生成回路に小さいハードウェアを追加することで、PC
M音源に必要なメモリに対するアドレス生成をエコーや
リバーブの機能におけるアドレス生成とともに行うこと
が可能となる。同時に、アドレス計算をハードウェアで
行ってしまうので、ソフトウェアで実現するのに比べて
設計者の負担を軽減し、DSPの演算処理能力の向上が
図れる。
【0026】
【実施例】次に、本発明の一実施例について図面を参照
して説明する。
して説明する。
【0027】図1は本発明の一実施例によるオーディオ
用DSPメモリアドレス生成回路の構成を示すブロック
図である。図において、本発明の一実施例によるオーデ
ィオ用DSPメモリアドレス生成回路(以下、メモリア
ドレス生成回路とする)はオフセット(OF)メモリ1
と、セレクタ2,4と、ポインタメモリ3と、加算器5
と、ラッチ回路6,7と、アンド回路8とから構成され
ている。
用DSPメモリアドレス生成回路の構成を示すブロック
図である。図において、本発明の一実施例によるオーデ
ィオ用DSPメモリアドレス生成回路(以下、メモリア
ドレス生成回路とする)はオフセット(OF)メモリ1
と、セレクタ2,4と、ポインタメモリ3と、加算器5
と、ラッチ回路6,7と、アンド回路8とから構成され
ている。
【0028】オフセットメモリ1には大容量のメモリ
(図示せず)のアドレス空間を分割する時のデータとな
るオフセットデータが格納されている。ポインタメモリ
3にはメモリのアドレス空間においてアクセスしている
場所を示すポインタデータが格納されている。
(図示せず)のアドレス空間を分割する時のデータとな
るオフセットデータが格納されている。ポインタメモリ
3にはメモリのアドレス空間においてアクセスしている
場所を示すポインタデータが格納されている。
【0029】セレクタ2は内部バス上のデータとアンド
回路8の出力とのうち一方を選択してポインタメモリ3
に出力する。通常、セレクタ2はアンド回路8の出力を
選択しており、上位装置(図示せず)が内部バスを介し
てポインタメモリ3にポインタデータをセットする時の
み内部バス上のデータを選択する。
回路8の出力とのうち一方を選択してポインタメモリ3
に出力する。通常、セレクタ2はアンド回路8の出力を
選択しており、上位装置(図示せず)が内部バスを介し
てポインタメモリ3にポインタデータをセットする時の
み内部バス上のデータを選択する。
【0030】セレクタ4はポインタメモリ3の出力とラ
ッチ回路7の出力とのうち一方を選択して加算器5に出
力する。通常、セレクタ4はポインタメモリ3の出力を
選択しており、加算器5で次ポインタデータがアドレス
空間を分割した領域を越えるか否かを判定するための所
定演算を行う時のみラッチ回路7の出力を選択する。
ッチ回路7の出力とのうち一方を選択して加算器5に出
力する。通常、セレクタ4はポインタメモリ3の出力を
選択しており、加算器5で次ポインタデータがアドレス
空間を分割した領域を越えるか否かを判定するための所
定演算を行う時のみラッチ回路7の出力を選択する。
【0031】加算器5はオフセットメモリ1の出力とセ
レクタ4の出力とを加算し、その加算結果をラッチ回路
6,7に夫々出力する。このとき、加算器5はポインタ
メモリ3からのポインタデータをインクリメントし、イ
ンクリメントした次ポインタデータをラッチ回路6とア
ンド回路8とセレクタ2とを介してポインタメモリ3に
セットする。
レクタ4の出力とを加算し、その加算結果をラッチ回路
6,7に夫々出力する。このとき、加算器5はポインタ
メモリ3からのポインタデータをインクリメントし、イ
ンクリメントした次ポインタデータをラッチ回路6とア
ンド回路8とセレクタ2とを介してポインタメモリ3に
セットする。
【0032】同時に、加算器5は次ポインタデータがア
ドレス空間の領域を越えるか否かを判定するために所定
演算を行い、その所定演算の結果が“0”であれば次ポ
インタデータがアドレス空間の領域を越えると判定し、
その旨を示すEQ信号(=0)をアンド回路8に出力す
る。
ドレス空間の領域を越えるか否かを判定するために所定
演算を行い、その所定演算の結果が“0”であれば次ポ
インタデータがアドレス空間の領域を越えると判定し、
その旨を示すEQ信号(=0)をアンド回路8に出力す
る。
【0033】ラッチ回路6は加算器5の加算結果を保持
し、その加算結果をアンド回路8に出力する。ラッチ回
路7は加算器5の加算結果を保持し、その加算結果を外
部メモリアドレスとして出力する。
し、その加算結果をアンド回路8に出力する。ラッチ回
路7は加算器5の加算結果を保持し、その加算結果を外
部メモリアドレスとして出力する。
【0034】アンド回路8は加算器5からのEQ信号と
ラッチ回路6の出力(次ポインタデータ)との論理積演
算を行い、その演算結果をセレクタ2に出力する。つま
り、アンド回路8は加算器5からEQ信号が入力されな
ければラッチ回路6に保持された次ポインタデータをそ
のままセレクタ2に出力し、加算器5からEQ信号が入
力されればその領域の先頭のポインタデータ(オール
“0”)をセレクタ2に出力する。
ラッチ回路6の出力(次ポインタデータ)との論理積演
算を行い、その演算結果をセレクタ2に出力する。つま
り、アンド回路8は加算器5からEQ信号が入力されな
ければラッチ回路6に保持された次ポインタデータをそ
のままセレクタ2に出力し、加算器5からEQ信号が入
力されればその領域の先頭のポインタデータ(オール
“0”)をセレクタ2に出力する。
【0035】図2は本発明の一実施例によるメモリアド
レス生成回路の動作を示すタイミングチャートである。
これら図1及び図2を用いて本発明の一実施例によるメ
モリアドレス生成回路の動作について説明する。
レス生成回路の動作を示すタイミングチャートである。
これら図1及び図2を用いて本発明の一実施例によるメ
モリアドレス生成回路の動作について説明する。
【0036】まず、内部の命令によってメモリアドレス
生成回路に外部メモリをアクセスする命令が発生する
と、オフセットメモリ1からオフセットデータ「OF
n」(nはオフセットデータのn番目のデータであるこ
とを示す)が、ポインタメモリ3からポインタデータ
「Pm」(mはポインタデータのm番目のデータである
ことを示す)が夫々読出される。
生成回路に外部メモリをアクセスする命令が発生する
と、オフセットメモリ1からオフセットデータ「OF
n」(nはオフセットデータのn番目のデータであるこ
とを示す)が、ポインタメモリ3からポインタデータ
「Pm」(mはポインタデータのm番目のデータである
ことを示す)が夫々読出される。
【0037】これらのデータは加算器5に入力されて加
算され、その加算結果「OFn+Pm」はラッチ回路7
に保持され、ラッチ回路7から外部メモリアドレスとし
て出力される。その後、加算器5はポインタレジスタ3
からのポインタデータ「Pm」をインクリメントし、イ
ンクリメントした次ポインタデータ「(Pm)+1」を
ラッチ回路6にラッチする。このとき、オフセットメモ
リ1から次のオフセットデータ「OF(n+1)」が読
出されて加算器5に出力される。
算され、その加算結果「OFn+Pm」はラッチ回路7
に保持され、ラッチ回路7から外部メモリアドレスとし
て出力される。その後、加算器5はポインタレジスタ3
からのポインタデータ「Pm」をインクリメントし、イ
ンクリメントした次ポインタデータ「(Pm)+1」を
ラッチ回路6にラッチする。このとき、オフセットメモ
リ1から次のオフセットデータ「OF(n+1)」が読
出されて加算器5に出力される。
【0038】3番目の演算サイクルでは加算器5で
{[OF(n+1)]−(OFn+Pm)−1}の所定
演算が行われ、次ポインタデータ「(Pm)+1」がア
ドレス空間の領域を越えるか否かの判定が行われる。次
ポインタデータ「(Pm)+1」がアドレス空間の領域
を越える場合には加算器5からアンド回路8にEQ信号
が出力されるので、アンド回路8はラッチ回路6からの
次ポインタデータ「(Pm)+1」をクリアし、その領
域の先頭のポインタデータ(オール“0”)をセレクタ
2に出力する。
{[OF(n+1)]−(OFn+Pm)−1}の所定
演算が行われ、次ポインタデータ「(Pm)+1」がア
ドレス空間の領域を越えるか否かの判定が行われる。次
ポインタデータ「(Pm)+1」がアドレス空間の領域
を越える場合には加算器5からアンド回路8にEQ信号
が出力されるので、アンド回路8はラッチ回路6からの
次ポインタデータ「(Pm)+1」をクリアし、その領
域の先頭のポインタデータ(オール“0”)をセレクタ
2に出力する。
【0039】その場合、オフセットメモリ1から次のオ
フセットデータ「OF(n+1)」が読出されたままで
あれば、大容量のメモリでは次の領域の先頭位置に対す
るアクセスが行われる。また、オフセットメモリ1から
前のオフセットデータ「OFn」が読出されるのであれ
ば、大容量のメモリでは前の領域の先頭位置に対するア
クセスが行われる。
フセットデータ「OF(n+1)」が読出されたままで
あれば、大容量のメモリでは次の領域の先頭位置に対す
るアクセスが行われる。また、オフセットメモリ1から
前のオフセットデータ「OFn」が読出されるのであれ
ば、大容量のメモリでは前の領域の先頭位置に対するア
クセスが行われる。
【0040】よって、大容量のメモリのアドレス空間に
予め設定されたPCM音源の領域に対するアクセスであ
れば、次ポインタデータ「(Pm)+1」が領域を越え
る時にオフセットメモリ1から次のオフセットデータ
「OF(n+1)」を読出すことで、PCM音源の領域
に対して連続的にアクセスすることができる。
予め設定されたPCM音源の領域に対するアクセスであ
れば、次ポインタデータ「(Pm)+1」が領域を越え
る時にオフセットメモリ1から次のオフセットデータ
「OF(n+1)」を読出すことで、PCM音源の領域
に対して連続的にアクセスすることができる。
【0041】一方、大容量のメモリのアドレス空間に予
め設定されたエコーやリバーブ機能に用いる領域に対す
るアクセスであれば、次ポインタデータ「(Pm)+
1」が領域を越える時にオフセットメモリ1から前のオ
フセットデータ「OFn」を読出すことで、エコーやリ
バーブの機能に用いる領域をリングバッファのように構
成することができる。
め設定されたエコーやリバーブ機能に用いる領域に対す
るアクセスであれば、次ポインタデータ「(Pm)+
1」が領域を越える時にオフセットメモリ1から前のオ
フセットデータ「OFn」を読出すことで、エコーやリ
バーブの機能に用いる領域をリングバッファのように構
成することができる。
【0042】図3は本発明の一実施例による大容量のメ
モリのメモリマップを示す図である。図において、本発
明の一実施例による大容量のメモリのアドレス空間は予
め複数のブロック領域、つまりエコー用エリアとリバー
ブ用エリアとPCM用エリアAとPCM用エリアBとに
分割されている。
モリのメモリマップを示す図である。図において、本発
明の一実施例による大容量のメモリのアドレス空間は予
め複数のブロック領域、つまりエコー用エリアとリバー
ブ用エリアとPCM用エリアAとPCM用エリアBとに
分割されている。
【0043】すなわち、従来の大容量のメモリのメモリ
マップではメモリをリングバッファのようにアクセスす
ることでエコーやリバーブの機能等に必要なディレイを
実現しているが、PCM音源の場合にはPCMデータを
決まった場所に書込まなければならないので、PCMデ
ータが蓄えられたメモリをリングバッファのようにアク
セスすることはできない。
マップではメモリをリングバッファのようにアクセスす
ることでエコーやリバーブの機能等に必要なディレイを
実現しているが、PCM音源の場合にはPCMデータを
決まった場所に書込まなければならないので、PCMデ
ータが蓄えられたメモリをリングバッファのようにアク
セスすることはできない。
【0044】そこで、本発明の一実施例では大容量のメ
モリをいくつかのブロック領域に分割してアクセスする
ようになっており、各ブロック領域を決定する値として
各ブロック領域の先頭位置を示すオフセットデータ、つ
まりエコー用エリアのオフセットデータOF0とリバー
ブ用エリアのオフセットデータOF1とPCM用エリア
AのオフセットデータOF2とPCM用エリアBのオフ
セットデータOF3とをオフセットメモリ1に格納して
いる。これらオフセットデータOF0,OF1,OF
2,OF3によってアドレス0からの各ブロック領域の
範囲が決まる。
モリをいくつかのブロック領域に分割してアクセスする
ようになっており、各ブロック領域を決定する値として
各ブロック領域の先頭位置を示すオフセットデータ、つ
まりエコー用エリアのオフセットデータOF0とリバー
ブ用エリアのオフセットデータOF1とPCM用エリア
AのオフセットデータOF2とPCM用エリアBのオフ
セットデータOF3とをオフセットメモリ1に格納して
いる。これらオフセットデータOF0,OF1,OF
2,OF3によってアドレス0からの各ブロック領域の
範囲が決まる。
【0045】また、各ブロック領域においてアクセスす
る位置を示すポインタデータ、つまりエコー用エリアの
ポインタデータP0とリバーブ用エリアのポインタデー
タP1とPCM用エリアAのポインタデータP2とPC
M用エリアBのポインタデータP3とをポインタメモリ
3に格納している。
る位置を示すポインタデータ、つまりエコー用エリアの
ポインタデータP0とリバーブ用エリアのポインタデー
タP1とPCM用エリアAのポインタデータP2とPC
M用エリアBのポインタデータP3とをポインタメモリ
3に格納している。
【0046】したがって、大容量のメモリのアドレス値
はオフセットデータとポインタデータとを加算すること
で得られる。また、ポインタデータはメモリアクセス後
にインクリメントして保管しておく必要がある。
はオフセットデータとポインタデータとを加算すること
で得られる。また、ポインタデータはメモリアクセス後
にインクリメントして保管しておく必要がある。
【0047】さらに、ポインタデータは予め設定された
ブロック領域から出てしまわないように、次のオフセッ
トデータからブロック領域の幅を求め、これを越えてし
まう場合にはポインタデータをクリアする必要がある。
一方、エコーの機能を実現するためには、書込み用及び
読出し用の複数のポインタデータを使用する必要があ
る。
ブロック領域から出てしまわないように、次のオフセッ
トデータからブロック領域の幅を求め、これを越えてし
まう場合にはポインタデータをクリアする必要がある。
一方、エコーの機能を実現するためには、書込み用及び
読出し用の複数のポインタデータを使用する必要があ
る。
【0048】このように、大容量のメモリにおいて予め
分割された複数のブロック領域各々を指定するオフセッ
トデータをオフセットメモリ1に格納し、複数のブロッ
ク領域各々におけるアクセス場所を示すポインタデータ
をポインタメモリ3に保持するとともに、オフセットデ
ータとポインタデータとを加算器5で加算して外部メモ
リアドレスを生成し、ブロック領域における次アクセス
場所を示す次ポインタデータがそのブロック領域を越え
るときに次ポインタデータをクリアして各ブロック領域
の先頭位置を示すポインタデータをポインタメモリ3に
保持することによって、エコーやリバーブの機能等によ
ってサラウンド音を実現するためのメモリアドレス生成
回路に小さいハードウェアを追加することで、PCM音
源に必要なメモリに対するアドレス生成をエコーやリバ
ーブの機能におけるアドレス生成とともに行うことが可
能となる。
分割された複数のブロック領域各々を指定するオフセッ
トデータをオフセットメモリ1に格納し、複数のブロッ
ク領域各々におけるアクセス場所を示すポインタデータ
をポインタメモリ3に保持するとともに、オフセットデ
ータとポインタデータとを加算器5で加算して外部メモ
リアドレスを生成し、ブロック領域における次アクセス
場所を示す次ポインタデータがそのブロック領域を越え
るときに次ポインタデータをクリアして各ブロック領域
の先頭位置を示すポインタデータをポインタメモリ3に
保持することによって、エコーやリバーブの機能等によ
ってサラウンド音を実現するためのメモリアドレス生成
回路に小さいハードウェアを追加することで、PCM音
源に必要なメモリに対するアドレス生成をエコーやリバ
ーブの機能におけるアドレス生成とともに行うことが可
能となる。
【0049】同時に、アドレス計算をハードウェアで行
ってしまうので、ソフトウェアで実現するのに比べて設
計者の負担を軽減することができるとともに、DSPの
演算処理能力の向上を図ることができる。よって、エコ
ーやリバーブ、及びキーコントロール等の機能及び高速
なPCM処理の実現を可能とし、DSPのトータル的な
演算処理能力を向上させることができる。
ってしまうので、ソフトウェアで実現するのに比べて設
計者の負担を軽減することができるとともに、DSPの
演算処理能力の向上を図ることができる。よって、エコ
ーやリバーブ、及びキーコントロール等の機能及び高速
なPCM処理の実現を可能とし、DSPのトータル的な
演算処理能力を向上させることができる。
【0050】
【発明の効果】以上説明したように本発明によれば、音
源発生用のメモリに対してPCM音源のためのメモリア
クセスを行うディジタルシグナルプロセッサにおいて、
メモリにおける予め設定された複数の領域各々を指定す
るオフセット値を格納し、複数の領域各々におけるアク
セス場所を示すポインタ値を保持するとともに、オフセ
ット値とポインタ値とを基にメモリに対するアクセスア
ドレスを生成し、次アクセス場所を示す次ポインタ値が
領域を越えると判定したときに次ポインタ値をクリアし
て次アクセス場所を領域内における先頭位置にすること
によって、エコーやリバーブ、及びキーコントロール等
の機能及び高速なPCM処理の実現を可能とし、DSP
のトータル的な演算処理能力を向上させることができる
という効果がある。
源発生用のメモリに対してPCM音源のためのメモリア
クセスを行うディジタルシグナルプロセッサにおいて、
メモリにおける予め設定された複数の領域各々を指定す
るオフセット値を格納し、複数の領域各々におけるアク
セス場所を示すポインタ値を保持するとともに、オフセ
ット値とポインタ値とを基にメモリに対するアクセスア
ドレスを生成し、次アクセス場所を示す次ポインタ値が
領域を越えると判定したときに次ポインタ値をクリアし
て次アクセス場所を領域内における先頭位置にすること
によって、エコーやリバーブ、及びキーコントロール等
の機能及び高速なPCM処理の実現を可能とし、DSP
のトータル的な演算処理能力を向上させることができる
という効果がある。
【図1】本発明の一実施例によるオーディオ用DSPメ
モリアドレス生成回路の構成を示すブロック図である。
モリアドレス生成回路の構成を示すブロック図である。
【図2】本発明の一実施例によるオーディオ用DSPメ
モリアドレス生成回路の動作を示すタイミングチャート
である。
モリアドレス生成回路の動作を示すタイミングチャート
である。
【図3】本発明の一実施例による大容量のメモリのメモ
リマップを示す図である。
リマップを示す図である。
【図4】従来例によるオーディオ用DSPメモリアドレ
ス生成回路の構成を示すブロック図である。
ス生成回路の構成を示すブロック図である。
【図5】従来例によるオーディオ用DSPメモリアドレ
ス生成回路の動作を示すタイミングチャートである。
ス生成回路の動作を示すタイミングチャートである。
【図6】従来例による大容量のメモリのメモリマップを
示す図である。
示す図である。
【図7】従来例のPCM音源用LSIの構成を示すブロ
ック図である。
ック図である。
1 オフセットメモリ 2,4 セレクタ 3 ポインタメモリ 5 加算器 6,7 ラッチ回路 8 アンド回路
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H03H 17/02 K 8842−5J G10H 7/00 521 K
Claims (4)
- 【請求項1】 音源発生用のメモリに対してPCM音源
のためのメモリアクセスを行うディジタルシグナルプロ
セッサであって、前記メモリにおいて予め分割された複
数の領域各々を指定するオフセット値を格納する格納手
段と、前記複数の領域各々におけるアクセス場所を示す
ポインタ値を保持する保持手段と、前記オフセット値と
前記ポインタ値とを基に前記メモリに対するアクセスア
ドレスを生成する生成手段と、前記領域における次アク
セス場所を示す次ポインタ値が前記領域を越えるか否か
を判定する判定手段と、前記判定手段の判定結果に応じ
て前記次ポインタ値を前記領域内における先頭位置に戻
す手段とを有することを特徴とするディジタルシグナル
プロセッサ。 - 【請求項2】 前記判定手段の判定時に前記保持手段の
出力に代えて前記生成手段で生成されたアクセスアドレ
スを前記生成手段に出力する選択手段を含むことを特徴
とする請求項1記載のディジタルシグナルプロセッサ。 - 【請求項3】 音源発生用のメモリに対してPCM音源
のためのメモリアクセスを行うディジタルシグナルプロ
セッサであって、前記メモリにおいて予め分割された複
数の領域各々を指定するオフセット値を格納する格納手
段と、前記複数の領域各々におけるアクセス場所を示す
ポインタ値を記憶する記憶手段と、前記オフセット値と
前記ポインタ値とを加算して前記メモリのアクセスアド
レスを生成しかつ次ポインタ値が前記領域を越えるか否
かを判定するための所定演算を行う加算手段と、前記所
定演算の演算時に前記記憶手段の内容に代えて前記加算
手段の加算結果を前記加算手段に出力する選択手段と、
前記所定演算の結果に応じて前記領域の先頭アドレスを
生成する生成手段とを有することを特徴とするディジタ
ルシグナルプロセッサ。 - 【請求項4】 前記加算手段の加算結果を保持しかつそ
の保持内容を前記生成手段に出力する第1の保持手段
と、前記加算手段の加算結果を保持しかつ保持内容をア
クセスアドレスとして出力する第2の保持手段とを含む
ことを特徴とする請求項3記載のディジタルシグナルプ
ロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6309383A JPH08166795A (ja) | 1994-12-14 | 1994-12-14 | ディジタルシグナルプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6309383A JPH08166795A (ja) | 1994-12-14 | 1994-12-14 | ディジタルシグナルプロセッサ |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08166795A true JPH08166795A (ja) | 1996-06-25 |
Family
ID=17992349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6309383A Pending JPH08166795A (ja) | 1994-12-14 | 1994-12-14 | ディジタルシグナルプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08166795A (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5875315A (ja) * | 1981-10-29 | 1983-05-07 | Sony Corp | 可変遅延回路 |
-
1994
- 1994-12-14 JP JP6309383A patent/JPH08166795A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5875315A (ja) * | 1981-10-29 | 1983-05-07 | Sony Corp | 可変遅延回路 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2976429B2 (ja) | アドレス制御回路 | |
JP3163984B2 (ja) | 楽音発生装置 | |
JPH09114457A (ja) | 楽音発生装置及び方法 | |
JPH0713561A (ja) | 楽音制御装置 | |
EP0995187B1 (en) | Tone generation device and method | |
JPH08166795A (ja) | ディジタルシグナルプロセッサ | |
JP3855711B2 (ja) | 音波形データ用ディジタル信号処理装置 | |
JPH07121181A (ja) | 音声情報処理装置 | |
JP2950461B2 (ja) | 楽音発生装置 | |
JP3978928B2 (ja) | 楽音生成装置 | |
JP3178036B2 (ja) | 信号処理装置 | |
JP3036417B2 (ja) | 信号処理装置 | |
JP2860655B2 (ja) | 並列命令実行型プロセッサ | |
JPH03204695A (ja) | 楽音合成装置 | |
JP2684820B2 (ja) | サラウンド回路 | |
JP3284949B2 (ja) | 記憶装置へのバストレース格納装置と方法および記録媒体 | |
JP2621493B2 (ja) | 電子楽器の音源装置 | |
JP3603849B2 (ja) | 楽音発生方法 | |
JP3531208B2 (ja) | ディジタル信号処理装置 | |
JP2542616Y2 (ja) | 残響付加装置 | |
JP3127492B2 (ja) | アドレッシング演算回路 | |
JP2576805Y2 (ja) | 楽音生成用lsi | |
JPH06149660A (ja) | メモリアクセス装置 | |
JP2002073016A (ja) | エフェクト処理装置 | |
JPH10198560A (ja) | 信号処理装置 |