(57)【要約】【課題】  本発明は、オーディオ信号処理で頻繁に行われる巡回アドレシングを伴なう処理から、剰余演算を省くことができる演算装置を提供する。【解決手段】  Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータを格納するために少なくともＮ＋ｉ個（ｉは１以上）の領域を備えたメモリに、前記Ｔ（０）からＴ（Ｎ−１）までのデータとその続きの領域にＴ（０）からＴ（ｉ−１）までのデータを順次格納し、データを読み出す開始アドレスを逐次制御する。【選択図】        図１
2006106837.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも（Ｎ＋ｉ）個（Ｎは２以上，ｉは１以上）の連続する領域に、Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータと、Ｔ（０）からＴ（ｉ−１）までのデータと同じ値または実質的に同じ値のデータとを、一部重複して保持するメモリと、
前記メモリから前記Ｎ種類のデータを順次読み出すデータ読み出し手段と、
前記データ読み出し手段が前記メモリから順次読み出す前記Ｎ種類のデータの開始アドレスを制御する制御手段と、
前記読み出されたデータを用いて演算する演算手段と
を備えることを特徴とする演算装置。
【請求項２】
Ｔ（０）からＴ（Ｍ−１）までのＭ種類のデータを保持する第１のメモリと、
前記Ｍ種類のデータの中の少なくともｊ個（ｊは１以上）のデータと同じ値または実質的に同じ値のデータを保持する第２のメモリと、
前記第１および前記第２のメモリのいずれかから前記データを順次読み出すデータ読み出し手段と、
前記データ読み出し手段がデータを読み出す開始アドレスを制御する制御手段と、
前記読み出されたデータを用いて演算する演算手段とを備え、
前記第２のメモリには、前記第１のメモリの奇数アドレスに格納されているデータが前記第２のメモリの偶数アドレスに格納されるように前記Ｍ種類のデータの中の少なくともｊ個のデータが格納されており、
前記制御手段は、データ読み出し手段が、データを偶数アドレスから順次読み出せるようにするために読み出しの開始アドレスを制御する
ことを特徴とする演算装置。
【請求項３】
少なくとも（Ｎ＋ｉ）個（Ｎは２以上、ｉは１以上）の連続する領域に、Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータと、Ｔ（０）からＴ（ｉ−１）までのデータと同じ値または実質的に同じ値のデータとを、一部重複して保持する第１のメモリと、
少なくともｊ個（ｊは１以上）の連続する領域に、前記（Ｎ＋ｉ）個のデータの中のｊ個のデータと同じ値或いは実質的に同じ値のデータを保持する第２のメモリと、
前記第１および第２のメモリのいずれかから前記データを順次読み出すデータ読み出し手段と、
前記データ読み出し手段が前記第１および第２のメモリのいずれかから順次読み出すデータの開始アドレスを制御する制御手段と、
前記読み出されたデータを用いて演算する演算手段とを備え、
前記第１のメモリの奇数アドレスに格納されているデータに対応するデータは前記第２のメモリの偶数アドレスに格納されており、
前記制御手段は、データ読み出し手段が、前記第１および第２のメモリのいずれかの偶数アドレスからデータを順次読み出せるようにするために読み出しの開始アドレスを制御する
ことを特徴とする演算装置。
【請求項４】
前記データ読み出し手段は、偶数アドレスから始まる複数のデータを同時に読み出す
ことを特徴とする請求項２または３記載の演算装置。
【請求項５】
前記演算手段は、複数のデータに同時に演算する演算命令を有する
ことを特徴とする請求項２〜４のいずれか１項記載の演算装置。
【請求項６】
少なくとも（Ｎ＋ｉ）個（Ｎは２以上，ｉは１以上）の連続する領域に、Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータと、Ｔ（０）からＴ（ｉ−１）までのデータと同じ値または実質的に同じ値のデータとを、一部重複して保持するメモリを備える演算装置に用いられる演算方法であって、
前記メモリから前記Ｎ種類のデータを順次読み出すデータ読み出しステップと、
前記データ読み出しステップで前記メモリから順次読み出す前記Ｎ種類のデータの開始アドレスを制御する制御ステップと、
前記読み出されたデータを用いて演算する演算ステップと
を含むことを特徴とする演算装置。
【請求項７】
少なくとも（Ｎ＋ｉ）個（Ｎは２以上，ｉは１以上）の連続する領域に、Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータと、Ｔ（０）からＴ（ｉ−１）までのデータと同じ値または実質的に同じ値のデータとを、一部重複して保持するメモリを備える演算装置に用いられるプログラムであって、
前記メモリから前記Ｎ種類のデータを順次読み出すデータ読み出しステップと、
前記データ読み出しステップで前記メモリから順次読み出す前記Ｎ種類のデータの開始アドレスを制御する制御ステップと、
前記読み出されたデータを用いて演算する演算ステップと
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オーディオのデジタル信号処理を行うための演算装置に関し、特に巡回アドレシングを伴なう演算を、効率的に行う演算装置に関する。さらに、１つの命令で複数のデータに対し演算するＳＩＭＤ（Ｓｉｎｇｌｅ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｍｕｌｔｉ  Ｄａｔａ）命令を用いて、巡回アドレシングを伴なう演算を、効率的に行う演算装置に関する。
【背景技術】
【０００２】
近年ＭＰＥＧオーディオ方式などでＱＭＦフィルタバンクといわれるフィルタ処理が行われている（ＩＳＯ／ＩＥＣ１１１７２−３、ＩＳＯ／ＩＥＣ１４４９６−３等）。
【０００３】
この処理は、データを逐次シフトした後、窓処理する等の膨大な演算量を必要とするので、従来からその効率的な演算方式の研究開発が行われている（例えば、特許文献１参照）。それらの従来の演算方式では巡回アドレシングといわれる方法が用いられている。
【０００４】
以下、巡回アドレシングを伴なう信号処理について説明する。
下記式（１）、式（２）は巡回アドレシングを伴なう信号処理の一例である。
【０００５】
【数１】
2006106837.tif 000003
【０００６】
【数２】
2006106837.tif 000004
【０００７】
ここで、Ｄ［］はデータ領域、Ｓ［］は出力領域、Ｔｃ［］はテーブルデータを示し、Ｎは巡回の幅を示し、ｉは配列番号（０，１，２，…）を示している。また、演算子％は、剰余演算子である。
【０００８】
ｐ番目の入力データは、式（１）で示されるように、データ領域Ｄのｐ％Ｎ番目のアドレスに格納され、ｐ番目の出力データＳ［ｐ］は、式（２）の積和演算で求められる。
【０００９】
この時、式（２）におけるテーブルデータＴｃ［］へのアドレシングが剰余演算を伴なう。このアドレシングを巡回アドレシングといい、その様子を示したものが、図９である。
【００１０】
図９では、Ｎ＝５の場合が示されており、テーブルＴｃ［］の要素は、ａ，ｂ，ｃ，ｄ，ｅである。
【００１１】
ここで、ｐ＝０の場合、すなわち１巡目の巡回アドレシングでは、ｂ，ｃ，ｄ，ｅ，ａの順でテーブルデータか読み出され、順次、データＤ［ｉ］（ｉ＝０，１，・・４）と、積和演算が行われる。
【００１２】
２巡目の巡回アドレシングでは、ｃ，ｄ，ｅ，ａ，ｂとなり、以下同様に、テーブルデータは巡回しながらアクセスされる。
【特許文献１】特開平１１−０３１９７２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記のような方法では、巡回させるサイズが、「８」とか、「１６」とかのように、２の冪乗数の場合は、剰余演算が容易に行えるので通常のＤＳＰでは問題なく実施できるが、巡回させるサイズが２の冪乗数でない場合、すなわち上記のようにＮ＝５のような場合は、剰余演算が容易に行えないので、巡回アドレシングの方法が効率的に実施できないという問題がある。
【００１４】
本発明は、このような従来の問題点に鑑みてなされたものであって、本来巡回アドレシングを必要とする処理において、剰余演算を用いないでアドレシングを効率的に処理できるような演算装置を提供することを第１の目的とするものである。
【００１５】
また、近年のプロセッサでは、偶数アドレスから始まる隣接するデータを同時にアクセスすることが可能であるので、アドレシングの開始点は常に偶数アドレスであることが望ましいが、上記のような方法では、アドレシングの開始点が、偶数アドレスになる場合と、奇数アドレスになる場合が交互に生じるので、データのアクセスの効率が悪くなるという問題がある。
【００１６】
本発明は、このような従来の問題点に鑑みてなされたものであって、本来巡回アドレシングを必要とする処理において、剰余演算を用いないでアドレシングを効率的に処理できる演算装置を提供することを第１の目的とする。
【００１７】
さらに、データのアクセスの効率を向上することができる演算装置を提供することを第２の目的とする。
【課題を解決するための手段】
【００１８】
上記第１の目的を達成するために、本発明に係る演算装置においては、少なくとも（Ｎ＋ｉ）個（Ｎは２以上，ｉは１以上）の連続する領域に、Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータと、Ｔ（０）からＴ（ｉ−１）までのデータと同じ値または実質的に同じ値のデータとを、一部重複して保持するメモリと、前記メモリから前記Ｎ種類のデータを順次読み出すデータ読み出し手段と、前記データ読み出し手段が前記メモリから順次読み出す前記Ｎ種類のデータの開始アドレスを制御する制御手段と、前記読み出されたデータを用いて演算する演算手段とを備えることを特徴とする。
【００１９】
これにより、本来巡回アドレシングを必要とする処理において、剰余演算を用いないでアドレシングを効率的に処理できることとなる。
【００２０】
また、本発明に係る演算装置においては、Ｔ（０）からＴ（Ｍ−１）までのＭ種類のデータを保持する第１のメモリと、前記Ｍ種類のデータの中の少なくともｊ個（ｊは１以上）のデータと同じ値または実質的に同じ値のデータを保持する第２のメモリと、前記第１および前記第２のメモリのいずれかから前記データを順次読み出すデータ読み出し手段と、前記データ読み出し手段がデータを読み出す開始アドレスを制御する制御手段と、前記読み出されたデータを用いて演算する演算手段とを備え、前記第２のメモリには、前記第１のメモリの奇数アドレスに格納されているデータが前記第２のメモリの偶数アドレスに格納されるように前記Ｍ種類のデータの中の少なくともｊ個のデータが格納されており、前記制御手段は、データ読み出し手段が、データを偶数アドレスから順次読み出せるようにするために読み出しの開始アドレスを制御することを特徴とする。
【００２１】
これにより、アドレシングの開始点が、常に偶数になるようにすることができることとなる。したがって、データを高速にアドレシングすることができる。
【００２２】
また、上記第２の目的を達成するために、本発明に係る演算装置においては、少なくとも（Ｎ＋ｉ）個（Ｎは２以上、ｉは１以上）の連続する領域に、Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータと、Ｔ（０）からＴ（ｉ−１）までのデータと同じ値または実質的に同じ値のデータとを、一部重複して保持する第１のメモリと、少なくともｊ個（ｊは１以上）の連続する領域に、前記（Ｎ＋ｉ）個のデータの中のｊ個のデータと同じ値或いは実質的に同じ値のデータを保持する第２のメモリと、前記第１および第２のメモリのいずれかから前記データを順次読み出すデータ読み出し手段と、前記データ読み出し手段が前記第１および第２のメモリのいずれかから順次読み出すデータの開始アドレスを制御する制御手段と、前記読み出されたデータを用いて演算する演算手段とを備え、前記第１のメモリの奇数アドレスに格納されているデータに対応するデータは前記第２のメモリの偶数アドレスに格納されており、前記制御手段は、データ読み出し手段が、前記第１および第２のメモリのいずれかの偶数アドレスからデータを順次読み出せるようにするために読み出しの開始アドレスを制御することを特徴とする。
【００２３】
これにより、本来巡回アドレシングを必要とする処理において、剰余演算を用いないでアドレシングを効率的に処理でき、さらにアドレシングの開始点が、常に偶数になるようにすることができることとなる。
【００２４】
また、本発明に係る演算装置においては、前記データ読み出し手段は、偶数アドレスから始まる複数のデータを同時に読み出すことを特徴とすることもできる。
【００２５】
これにより、本来巡回アドレシングを必要とする処理において、複数のデータを同時にアクセスすることができることとなる。
【００２６】
また、本発明に係る演算装置においては、前記演算手段は、複数のデータに同時に演算する演算命令を有することを特徴とすることもできる。
【００２７】
これにより、本来巡回アドレシングを必要とする処理において、複数のデータに同時に演算を実施することができることとなる。
【発明の効果】
【００２８】
以上の説明から明らかなように、本来巡回アドレシングを必要とする処理において、剰余演算を用いないでアドレシングを効率的に処理できることとなる。
【００２９】
また、アドレシングの開始点が、常に偶数になるようにすることができることとなる。
また、本来巡回アドレシングを必要とする処理において、剰余演算を用いないでアドレシングを効率的に処理でき、さらにアドレシングの開始点が、常に偶数になるようにすることができることとなる。
【００３０】
よって、本発明により、剰余演算を用いないでアドレシングを効率的に処理でき、アドレシングの開始点が、常に偶数になるようにすることができることとなり、ＡＡＣＳＢＲが普及してきた今日における本願発明の実用的価値は極めて高い。
【００３１】
なお、本発明は、このような演算装置として実現することができるだけでなく、このような演算装置が備える特徴的な手段をステップとする演算方法として実現したり、それらのステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ等の記録媒体やインターネット等の伝送媒体を介して配信することができるのはいうまでもない。
【発明を実施するための最良の形態】
【００３２】
（実施の形態１）
以下本発明の実施の形態１における演算装置について図面を参照しながら説明する。なお、本実施の形態１では、上記背景技術で挙げた、式（１）と同様の演算を行う演算装置に関して説明するが、下記式（３）のように変形した式によって、剰余演算を用いずにアドレシングが行えるような演算装置に関して説明する。
【００３３】
【数３】
2006106837.tif 000005
【００３４】
図１は、本実施の形態１に係る演算装置の構成を示す図である。
図１に示されるように、演算装置１は、Ｔ（０）からＴ（Ｎ−１）までの実質的にＮ種類のデータを格納するために２＊Ｎ−１個の領域を備えたメモリ１１と、メモリ１１からデータを順次読み出すデータ読み出し部１３と、データ読み出し部１３がデータを読み出す開始アドレスを制御する制御部１４と、読み出されたデータを用いて演算する演算部１５等とから構成される。
【００３５】
以上のように構成された演算装置１の動作について以下説明する。
まず、メモリ１１には、Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータが、２＊Ｎ−１個の領域に格納されている。このメモリ１１は、上記式（３）におけるＴｒと対応している。ここで、例えばＮを「５」とした場合、図２に示されるように、ａからｅまでの５個のデータが９個の領域に格納されている。ここでは、アドレスの下位側からｅ，ｄ，ｃ，ｂ，ａの順にデータが格納されており、その続きの領域に、ｅ，ｄ，ｃ，ｂが、再び格納されている。ここで、データの並びは、上位側のアドレスからであってもよいことはいうまでもない。また、あえて２回格納されているデータｅ，ｄ，ｃ，ｂは、必ずしも完全に同じ値が２回格納されている必要はなく、実質的に同じ意味合いの値を格納しておいてもよい。
【００３６】
データ読み出し部１３は、メモリ１１からデータを順次読み出すが、制御部１４によって指示される開始アドレスからデータを順次読み出す。
【００３７】
ここで、制御部１４は、データ読み出し部１３がＮ種類のデータを一定間隔のアドレス位置から順次読み出せるようにするために、読み出しの開始アドレスを制御する。すなわち、図３に示されるように、１巡目の処理では、読み出しの開始アドレスは、メモリ１１の先頭アドレスを指すようにし、結果として順次読み出されるデータは、ｂ，ｃ，ｄ，ｅ，ａとなる。２巡目の処理では、読み出しの開始アドレスは、メモリ１１の２番目のアドレスを指すようにし、結果として順次読み出されるデータは、ｃ，ｄ，ｅ，ａ，ｂとなる。以下同様に、図３に示すような順序でアドレシングが行われる。つまり、５巡目までは、開始アドレスは、メモリ１１の先頭アドレスから１アドレスずつ下方に移動し、以降Ｃ巡目では、Ｃを５で割った余りが同じになる場合と同様の処理となる。
【００３８】
演算部１５では、上記のように読み出されたデータを用いて演算する。本実施の形態１では、式（３）に示される積和演算が行われる。
【００３９】
以上のように、本実施の形態１では、図９で示した５個の要素からなるテーブルに対して巡回アドレシングを行ないながらデータを読み出すことと同じことが、巡回アドレシングを行なわず直線的な（一定間隔の）アドレシングによって行うことができ、巡回アドレシングのための剰余演算を省くことができる。したがって、演算量を大幅に削減できることとなる。
【００４０】
なお、本実施の形態１ではＮ＝５としたが、勿論他の値であってもよいことはいうまでもない。
【００４１】
（実施の形態２）
以下本発明の実施の形態２に係る演算装置について図面を参照しながら説明する。なお、本実施の形態２では、上記背景技術で挙げた、式（１）と同様の演算を行う演算装置に関して説明するが、下記式（３）、式（４）のように変形した式によって、剰余演算を用いず、しかもアドレシングの開始アドレスが常に偶数アドレスになるような演算装置に関して説明する。
【００４２】
【数４】
2006106837.tif 000006
【００４３】
【数５】
2006106837.tif 000007
【００４４】
図４は本実施の形態２に係る演算装置の構成を示す図である。
図４に示されるように、演算装置２は、Ｔ（０）からＴ（Ｎ−１）までの実質的にＮ種類のデータを格納するために２＊Ｎ−１個の領域を備えた第１のメモリ２１と、第１のメモリ２１に格納されたデータと実質的に同じ値のデータが格納された第２のメモリ２２と、第１のメモリ２１或いは第２のメモリ２２からデータを順次読み出すデータ読み出し部２３と、データ読み出し部２３がデータを読み出す開始アドレスを制御する制御部２４と、読み出されたデータを用いて演算を行う演算部２５等とから構成される。なお、ここでは、第１のメモリ２１および第２のメモリ２２の各領域のデータ長を例えば３２ビット、アドレスバス２６におけるデータバスのバス幅を６４ビットであるものとして説明する。
【００４５】
以上のように構成された演算装置２の動作について以下説明する。
まず、第１のメモリ２１には、Ｔ（０）からＴ（Ｎ−１）までのＮ種類のデータが、２＊Ｎ−１個の領域に格納されている。この第１のメモリ２１は上記式（４）におけるＴｒと対応している。ここで、例えばＮを「５」とした場合、図５のように、ａからｅまでの５個のデータが９個の領域に格納されている。ここでは、アドレスの下位側からｅ，ｄ，ｃ，ｂ，ａの順にデータが格納されており、その続きの領域に、ｅ，ｄ，ｃ，ｂが、再び格納されている。ここで、データの並びは、上位側のアドレスからであってもよいことはいうまでもない。また、あえて２回格納されているデータｅ，ｄ，ｃ，ｂは、必ずしも完全に同じ値が２回格納されている必要はなく、実質的に同じ意味合いの値を格納しておいてもよい。
【００４６】
第２のメモリ２２には、第１のメモリ２１に格納されたデータと実質的に同じ値のデータが格納されており、上記式（５）におけるＴｓと対応している。本実施の形態２では、図６に示されるように、ａからｅまでの５個のデータが７個の領域に格納されている。ここでは、アドレスの下位側からｄ，ｃ，ｂ，ａ，ｅ，ｄ，ｃの順にデータが格納されているが、データの配置は、第１のメモリ２１の偶数アドレスに格納されているデータが第２のメモリ２２の奇数アドレスに格納されており、第１のメモリ２１の奇数アドレスに格納されているデータが第２のメモリ２２の偶数アドレスに格納されている。また、あえて２回格納されているデータｄ、ｃは、必ずしも完全に同じ値が２回格納されている必要はなく、実質的に同じ意味合いの値を格納しておいてもよい。
【００４７】
データ読み出し部２３は、第１のメモリ２１或いは第２のメモリ２２からデータを順次読み出すが、制御部２４によって指示される開始アドレスからデータを順次読み出す。
【００４８】
ここで、制御部２４は、データ読み出し部２３が、データを偶数アドレスから始まり、かつ一定間隔のアドレス位置から順次読み出せるようにするために、読み出しの開始アドレスを制御する。
【００４９】
すなわち、図７に示すように、１巡目の処理では、読み出しの開始アドレスは、第１のメモリ２１の先頭アドレス（アドレス「０」）を指すようにし、結果として順次読み出されるデータは、ｂ，ｃ，ｄ，ｅ，ａとなる。２巡目の処理では、読み出しの開始アドレスは、第２のメモリ２２の先頭アドレス（アドレス「０」）を指すようにし、結果として順次読み出されるデータは、ｃ，ｄ，ｅ，ａ，ｂとなる。３巡目の処理では、読み出しの開始アドレスは、第１のメモリ２１のアドレス「２」を指すようにし、結果として順次読み出されるデータは、ｄ，ｅ，ａ，ｂ，ｃとなる。４巡目の処理では、読み出しの開始アドレスは、第２のメモリ２２のアドレス「２」を指すようにし、結果として順次読み出されるデータは、ｅ，ａ，ｂ，ｃ，ｄとなる。５巡目の処理では、読み出しの開始アドレスは、第１のメモリ２１のアドレス４を指すようにし、結果として順次読み出されるデータは、ａ，ｂ，ｃ，ｄ，ｅとなる。
【００５０】
６巡目の処理では、読み出しの開始アドレスは、１巡目の処理と同様の処理にもどり、第１のメモリ２１の先頭アドレス（アドレス「０」）を指すようにし、結果として順次読み出されるデータは、ｂ，ｃ，ｄ，ｅ，ａとなる。
【００５１】
つまり、制御部２４は、データ読み出し部２３が、必要なデータを偶数アドレスから始まりかつ一定間隔のアドレス位置から順次読み出せるようにするために読み出しの開始アドレスを制御するが、５巡目までは、図７に示したような順序で処理が行われ、以降Ｃ巡目では、Ｃを５で割った余りが同じになる場合と同様の処理となる。
【００５２】
演算部２５では、上記のように読み出されたデータを用いて演算を行う。本実施の形態２では、式（３）、式（４）に示した積和演算が行われる。
【００５３】
さて、本実施の形態２では、データ読み出し部２３は、偶数アドレスから始まる複数のデータを同時に読み出すことができるものとする。そうすると、制御部２４は、必ず読み出しの開始アドレスが偶数アドレスとなるように制御しているので、データ読み出し部２３は、常に２つのデータを同時に読み出すことができ、メモリアクセスの効率が向上することになる。
【００５４】
さらにまた、本実施の形態２では、演算部２５は、複数のデータに同時に演算を行うことができる演算命令を有しているものとする。それは、いわゆるＳＩＭＤ命令（Ｓｉｎｇｌｅ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｍｕｌｔｉ  Ｄａｔａ）といわれる命令で、例えば図８に示されるように、独立した２つのデータが独立したビットフィールドに格納された第１のレジスタ２５１と、同様の構成を持った第２のレジスタ２５２とに対し、それぞれのビットフィールドごとに独立に積和演算を行う命令を演算部２５が有しているとする。
【００５５】
その場合、例えば式（３）における、Ｄ［０］と、Ｄ［１］とを、１つのレジスタ（例えば、第１のレジスタ２５１）に置き、Ｔｒ［ｐ］と、Ｔｒ［ｐ＋１］とをもう１つのレジスタ（第２のレジスタ２５２）に置き、乗算器２５３，２５４、加算器２５６，２５７およびレジスタ２５５を用いて当該ＳＩＭＤの積和演算を行えば、同時の２つの演算が行えるので、演算速度が向上することとなる。ここで、式（４）の場合、ｐが偶数であるという条件があるので、Ｔｒ［ｐ］とＴｒ［ｐ＋１］とは、偶数アドレスから始まる隣接したデータであるので、本実施の形態２では、データ読み出し部２３によって同時に読み出せ、さらに効率的である。式（５）の場合は、ｐが奇数であるので、Ｔｓ［ｐ−１］とＴｓ［ｐ］とは偶数アドレスから始まる隣接したデータであるので、本実施の形態２では、データ読み出し部２３によってこの場合も同時に読み出せることとなる。
【００５６】
以上のように、本実施の形態２では、図９で示した５個の要素からなるテーブルに対して巡回アドレシングを行ないながらデータを読み出すことと同じことが、巡回アドレシングを行なわず直線的な（一定間隔の）アドレシングによって行うことができ、巡回アドレシングのための剰余演算を省くことができる。したがって、演算量を大幅に削減できることとなる。
【００５７】
さらに、本実施の形態２では、アドレシングの開始アドレスが必ず偶数になり、しかも、偶数アドレスから隣接の２つのデータを同時に読み出せるようなデータ読み出し部２３を備えているので、データの読み出しが効率的となる。
【００５８】
さらに、隣接する２つのデータ同士に対し同時に演算を行える命令を備えているので、上記のように読み出したデータに対し、同時に２つの演算が行えさらに効率的となる。
【００５９】
なお、本実施の形態２ではＮ＝５としたが、勿論他の値でもよいことはいうまでもない。
【産業上の利用可能性】
【００６０】
本発明に係る演算装置は、本来巡回アドレシングを必要とする演算から剰余演算を省くことのできる演算装置に関し、特にオーディオ圧縮技術を用いたオーディオ機器の低演算量化が必要な機器に応用できる。
【図面の簡単な説明】
【００６１】
【図１】本実施の形態１における演算装置の構成を示す図
【図２】巡回アドレシングを回避するためのデータの持ち方を示す図
【図３】巡回アドレシングを回避するためのアドレシングの様子を示す図
【図４】本実施の形態２における演算装置の構成を示す図
【図５】偶数回目のアドレシングの時に、偶数アドレスからのデータアクセスを可能とするためのデータの持ち方を示す図
【図６】奇数回目のアドレシングの時に、偶数アドレスからのデータアクセスを可能とするためのデータの持ち方を示す図
【図７】偶数アドレスからデータアクセスを行うためのアドレシングの様子を示す図
【図８】演算部２５の内部構成例を示すブロック図である。
【図９】従来の巡回アドレシングの様子を示す図
【符号の説明】
【００６２】
１，２  演算装置
１１  メモリ
１３，２３  データ読み出し部
１４，２４  制御部
１５，１６  演算部
２１  第１のメモリ
２２  第２のメモリ
【図１】
2006106837.tif 000008
【図２】
2006106837.tif 000009
【図３】
2006106837.tif 000010
【図４】
2006106837.tif 000011
【図５】
2006106837.tif 000012
【図６】
2006106837.tif 000013
【図７】
2006106837.tif 000014
【図８】
2006106837.tif 000015
【図９】
2006106837.tif 000016