演算周期毎に、処理対象サンプル列を更新しつつ、処理対象サンプル列の各サンプルと係数とを乗算し、各乗算結果を加算した信号処理結果を生成する信号処理を繰り返すデジタル信号処理装置において、係数とサンプルとを乗算し、乗算結果と他のデータとの加算を行う乗加算処理を各々実行する複数の乗加算器と、各演算周期において、当該演算周期での信号処理結果を得るのに必要な乗加算処理の一部を前記複数の乗加算器のうちの1つの乗加算器に実行させ、残りの乗加算処理を当該演算周期の直前の1または複数の演算周期において前記複数の乗加算器のうちの他の乗加算器に実行させ、各演算周期において、前記複数の乗加算器に実行させる乗加算処理のうち共通のサンプルを対象とした複数の乗加算処理を実行するために当該共通のサンプルをメモリから読み出し、当該複数の乗加算処理を前記複数の乗加算器に実行させる制御手段とを具備することを特徴とするデジタル信号処理装置。コンピュータを、係数とサンプルとを乗算し、乗算結果と他のデータとの加算を行う乗加算処理を各々実行する複数の乗加算器と、各演算周期において、当該演算周期での信号処理結果を得るのに必要な乗加算処理の一部を前記複数の乗加算器のうちの1つの乗加算器に実行させ、残りの乗加算処理を当該演算周期の直前の1または複数の演算周期において前記複数の乗加算器のうちの他の乗加算器に実行させ、各演算周期において、前記複数の乗加算器に実行させる乗加算処理のうち共通のサンプルを対象とした複数の乗加算処理を実行するために当該共通のサンプルをメモリから読み出し、当該複数の乗加算処理を前記複数の乗加算器に実行させる制御手段として機能させることを特徴とするプログラム。ところで、DSPを利用した電子機器として高機能なものを実現しようとすると、DSPの実行対象である信号処理が大規模化し、1演算周期の間に実行すべき乗加算処理の回数が増加することとなる。しかしながら、乗加算器が1演算周期の間に実行可能な乗加算処理の回数には限界がある。従来技術の下では、この乗加算処理の実行回数の限界がDSPを利用した電子機器の高機能化の障害となっていた。この問題を解決するために、例えば2個の乗加算器をDSPに設けることが考えられる。この2個の乗加算器を利用して、2種類の乗加算処理を並列実行させることができれば、計算上は、1演算周期内に実行可能な乗加算処理の回数を2倍にすることができる。しかしながら、2個の乗加算器を利用した2種類の乗加算処理を並列実行するためには、それらの乗加算処理に使用する2個のサンプルをメモリから読み出さなくてはならない。現状の技術では、メモリのアクセス時間の制約があるため、乗加算器が乗加算処理を1回実行する1サイクルの間に2個のサンプルをメモリから読み出すことは困難である。このため、1演算周期内に実行可能な乗加算処理の回数を増加させることは困難である。この問題を解決するために、例えばメモリの1アドレスに対応した記憶領域内にサンプル2個を格納し、必要なサンプルを読み出すためのメモリアクセス回数を減らす方法を採ることも考えられる。すなわち、例えば前掲式1の演算に使用するサンプルXnおよびXn-1の組、サンプルXn-2およびXn-3の組、...を各々1アドレスに対応した各記憶領域に格納しておくのである。この場合、上述したサンプリング周期Tnでは、サンプルXnおよびXn-1の組を1回のメモリアクセスにより読み出して係数C0およびC1と各サンプルとの乗算および乗算結果の加算を実行し、後続のサンプルの組についても同様の演算を繰り返すことが可能である。しかしながら、次のサンプリング周期Tn1になると、前掲式2に示すように、係数C0およびC1との乗算に使用するサンプルは、サンプルXn1およびXnの組となる。これらのサンプルの組は、1アドレスに対応した記憶領域に格納されていないため、1回のメモリアクセスにより読み出すことはできない。このように1アドレスに対応した記憶領域に2個のサンプルを格納する方法を採ったとしても、複数の演算周期を通じてみると、メモリアクセス回数を減らすことができない。結局、この方法を採ったとしても、1演算周期内に実行可能な乗加算処理の回数を増加させることは困難である。本発明は以上説明した事情に鑑みてなされたものであり、1演算周期内に実行可能な乗加算処理の回数を増加させることが可能なDSPおよびそのプログラムを提供することを目的としている。この発明は、演算周期毎に、処理対象サンプル列を更新しつつ、処理対象サンプル列の各サンプルと係数とを乗算し、各乗算結果を加算した信号処理結果を生成する信号処理を繰り返すデジタル信号処理装置において、係数とサンプルとを乗算し、乗算結果と他のデータとの加算を行う乗加算処理を各々実行する複数の乗加算器と、各演算周期において、当該演算周期での信号処理結果を得るのに必要な乗加算処理の一部を前記複数の乗加算器のうちの1つの乗加算器に実行させ、残りの乗加算処理を当該演算周期の直前の1または複数の演算周期において前記複数の乗加算器のうちの他の乗加算器に実行させ、各演算周期において、前記複数の乗加算器に実行させる乗加算処理のうち共通のサンプルを対象とした複数の乗加算処理を実行するために当該共通のサンプルをメモリから読み出し、当該複数の乗加算処理を前記複数の乗加算器に実行させる制御手段とを具備することを特徴とするデジタル信号処理装置を提供する。また、この発明は、コンピュータを上記複数の乗加算器および制御手段として機能させるプログラムを提供する。かかる発明によれば、複数の連続した演算周期内において、共通のサンプルを対象とする複数の乗加算処理が1回のメモリからのサンプル読み出し後に同時に実行される。従って、1演算周期内に実行可能な乗加算処理の回数を増加させることができる。なお、DSPの高速化技術に関する文献として特許文献1がある。しかしながら、この特許文献1は、FIRフィルタ処理において、同一係数との乗算を行うサンプルを予め加算して加算結果を当該係数と乗算することにより乗算回数を減らす技術を開示するものであり、本願発明のようにサンプルのメモリからの読み出し回数を減らす手段を開示するものではない。以下、図面を参照し、この発明の実施形態について説明する。<第1実施形態>図1は、この発明の第1実施形態であるDSPの構成を示すブロック図である。図1に示すように、本実施形態によるDSPは、制御部1と、2個の乗加算器MAC0およびMAC1と、レジスタ部2と、データメモリ3とを有する。制御部1は、フィルタ処理を実行するためのプログラムを記憶したプログラムメモリと、このプログラムに記憶されたプログラムの各命令を順次読み出して解釈し、乗加算器MAC0およびMAC1の制御、レジスタ部2の制御等を行う命令デコーダと、フィルタ処理に使用される係数を記憶する係数メモリを含む。レジスタ部2は、各種のレジスタの集合体である。このレジスタ部2を構成する各レジスタには、乗加算器MAC0およびMAC1の各乗加算結果を記憶するためのアキュムレータACC0およびACC1や、フィルタ処理に使用する係数を記憶するためのレジスタ図示略が含まれる。データメモリ3は、信号処理に使用する処理対象サンプル列を記憶するためのメモリである。このデータメモリ3は、図示の例では、DSPに内蔵された要素であるが、DSPの外付けのメモリであってもよい。データメモリ3には、演算周期毎に新たに処理対象サンプル列に加わるサンプルが書き込まれる。制御部1は、プログラムメモリに記憶されたプログラムに従って乗加算器MAC0およびMAC1とレジスタ部2を制御し、現時点までにデータメモリ3に記憶された処理対象サンプル列を使用したフィルタ処理を実行する。本実施形態の特徴は、制御部1がフィルタ処理のために実行するプログラムの内容、特にフィルタ処理を構成する各種の乗加算処理を乗加算器MAC0およびMAC1に実行させる手順にある。さらに詳述すると、本実施形態において制御部1は、各演算周期において、当該演算周期での信号処理結果を得るのに必要な乗加算処理の一部を乗加算器MAC0に実行させ、残りの乗加算処理を当該演算周期の直前の演算周期において乗加算器MAC1に実行させ、各演算周期において、乗加算器MAC0およびMAC1に実行させる乗加算処理のうち共通のサンプルを対象とした複数の乗加算処理を実行するために当該サンプルをデータメモリ3から読み出し、当該複数の乗加算処理を乗加算器MAC0およびMAC1に実行させる。図2は、本実施形態によるDSPの実行対象の例である各種のフィルタ処理を示す図である。図2aは周知のFIRフィルタ処理、図2bは周知のIIRフィルタ処理、図2cは画像に対して実行される周知のフィルタ処理を各々示している。以下、これらの各例について、本実施形態において実行されるフィルタ処理の手順を説明する。図3は、本実施形態によるDSPの図2aのフィルタ処理の実行例を示す図である。仮に1個の乗加算器のみを使用するとした場合、図2aのフィルタ処理結果を得るために、演算周期Tnでは、次式の演算を1個の乗加算器に実行させる必要がある。ACC=C0XnACC=C1Xn-1ACC=C2Xn-2ACC=C3Xn-3......3この場合、サンプルXn~Xn-3を得るために、1演算周期内に4回のメモリアクセスを行う必要がある。また、1つ前の演算周期Tn-1では、次式の演算を1個の乗加算器に実行させる必要がある。ACC=C0Xn-1ACC=C1Xn-2ACC=C2Xn-3ACC=C3Xn-4......4この場合も、サンプルXn-1~Xn-4を得るために、1演算周期内に4回のメモリアクセスを行う必要がある。しかしながら、2つの演算周期Tn-1およびTnを通じて見ると、両演算周期において実行すべき乗加算処理群は、共通するサンプルXn-1、Xn-2、Xn-3を対象とした乗加算処理の組を含んでいる。そこで、制御部1は、演算周期Tnでは前掲式3の各乗加算処理の一部のみを乗加算器MAC0に実行させ、残りの乗加算処理を直前の演算周期Tn-1に乗加算器MAC1に実行させ、この演算周期Tn-1における乗加算器MAC1の乗加算処理の結果を演算周期Tnに乗加算器MAC0に引き継がせる。具体的には次の通りである。まず、制御部1は、演算周期Tn-1において次式の乗加算処理を乗加算器MAC1に実行させる。ACC1=C1Xn-1ACC1=C3Xn-3......5次に制御部1は、演算周期Tnにおいて次式の乗加算処理を乗加算器MAC0に実行させる。ACC0=ACC1ACC0=C0XnACC0=C2Xn-2......6この結果、演算周期Tnでは最終的に前掲式3の演算処理結果と同じものがアキュムレータACC0に格納されることとなる。以上の関係は演算周期Tnと演算周期Tn1との間でも成立する。1個の乗加算器MACのみが使用可能であるとすると、演算周期Tn1では、次式の演算を乗加算器MACに実行させる必要がある。ACC=C0Xn1ACC=C1XnACC=C2Xn-1ACC=C3Xn-2......7そして、1つ前の演算周期Tnでは、前掲式3の演算を1個の乗加算器MACに実行させる必要がある。そこで、制御部1は、演算周期Tnにおいて次式の乗加算処理を乗加算器MAC1に実行させる。ACC1=C1XnACC1=C3Xn-2......8次に制御部1は、演算周期Tn1において次式の乗加算処理を乗加算器MAC0に実行させる。ACC0=ACC1ACC0=C0Xn1ACC0=C2Xn-1......9この結果、演算周期Tn1では最終的に前掲式7の演算処理結果と同じものがアキュムレータACC0に格納されることとなる。ここで、演算周期Tnに着目すると、共通のサンプルXnを使用した2つの乗加算処理の組と、共通のサンプルXn-2を使用した2つの乗加算処理の組が実行対象となっている。そこで、演算周期Tnにおいて、制御部1は、サンプルXnをデータメモリ3から読み出して、次式の乗加算処理を乗加算器MAC0およびMAC1に同時に実行させる。ACC0=C0XnACC1=C1Xn......10次に、制御部1は、サンプルXn-2をデータメモリ3から読み出して、次式の乗加算処理を乗加算器MAC0およびMAC1に同時に実行させるのである。ACC0=C2Xn-2ACC1=C3Xn-2......11他の演算周期Tn-1およびTn1についても同様である。このように1個の乗加算器MACを使用したフィルタ処理では1演算周期内に4回のメモリアクセスが必要であったが、本実施形態における2個の乗加算器MAC0およびMAC1を使用したフィルタ処理では、1演算周期内に2回のメモリアクセスを行えば済む。図4は、本実施形態によるDSPの図2bのフィルタ処理の実行例を示す図である。仮に1個の乗加算器のみを使用するとした場合、図2bのフィルタ処理結果を得るために、演算周期Tnでは、次式の演算を1個の乗加算器MACに実行させる必要がある。ACC=C0XnACC=C1Xn-1ACC=C2Xn-2ACC=C3Yn-1ACC=C4Yn-2......12上記式13の各演算を実行することにより、最終的に演算周期TnにおけるIIRフィルタの出力信号YnがアキュムレータACCに格納される。この場合、1演算周期内に5回のメモリアクセスを行う必要がある。また、1つ前の演算周期Tn-1では、次式の演算を1個の乗加算器MACに実行させる必要がある。ACC=C0Xn-1ACC=C1Xn-2ACC=C2Xn-3ACC=C3Yn-2ACC=C4Yn-3......13この場合も、1演算周期内に5回のメモリアクセスを行う必要がある。そこで、制御部1は、演算周期Tnでは前掲式12の各乗加算処理の一部のみを乗加算器MAC0に実行させ、残りの乗加算処理を直前の演算周期Tn-1に乗加算器MAC1に実行させ、この演算周期Tn-1における乗加算器MAC1の乗加算処理の結果を演算周期Tnに乗加算器MAC0に引き継がせる。具体的には次の通りである。まず、制御部1は、演算周期Tn-1において次式の乗加算処理を乗加算器MAC1に実行させる。ACC1=C1Xn-1ACC1=C4Yn-2......14次に制御部1は、演算周期Tnにおいて次式の乗加算処理を乗加算器MAC0に実行させる。ACC0=ACC1ACC0=C0XnACC0=C2Xn-2ACC0=C3Yn-1......15この結果、演算周期Tnでは最終的に前掲式12の演算処理結果と同じものがアキュムレータACC0に格納されることとなる。以上の関係は演算周期Tnと演算周期Tn1との間でも成立する。このため、演算周期Tnにおいて乗加算器MAC0およびMAC1が実行する乗加算処理の内容は図4に示す通りとなる。そこで、演算周期Tnにおいて制御部1は、サンプルXnをデータメモリ3から読み出して、ACC0=C0Xnなる乗加算処理とACC1=C1Xnなる乗加算処理とを乗加算器MAC0およびMAC1に各々実行させる。次いでサンプルXn-2をデータメモリ3から読み出して、ACC0=C2Xn-2なる乗加算処理を乗加算器MAC0に実行させる。次いでサンプルYn-1をデータメモリ3から読み出して、ACC0=C3Yn-1なる乗加算処理とACC1=C4Yn-1なる乗加算処理とを乗加算器MAC0およびMAC1に各々実行させる。以上のように図2bのIIRフィルタ処理を1個の乗加算器を使用して実行する場合には1演算周期内に5回のメモリアクセスが必要であったが、本実施形態における2個の乗加算器MAC0およびMAC1を使用したIIRフィルタ処理では、1演算周期内に3回のメモリアクセスを行えば済む。図5は、本実施形態によるDSPの図2cのフィルタ処理の実行例を示す図である。図2cのフィルタ処理では、演算周期毎に3行3列の9個の画素PixΔx、iyΔyΔx=-1~1、Δy=-1~1に係数C0~C8を乗算して加算し、3行3列の画素行列の中心の画素Pix、iyについてのフィルタ処理結果を生成する。そして、演算周期毎に係数の乗算対象となる3行3列の画素を横方向に1画素シフトするix=ix1。図5に示すように、仮に1個の乗加算器を使用して図2cのフィルタ処理を行うとすると、データメモリ3からのサンプルの読み出しを1演算周期当たり9回行う必要がある。しかし、本実施形態によるDSPの図2cのフィルタ処理の実行例では、上述した図2aのフィルタ処理、図2bのフィルタ処理と同様、各演算周期においてフィルタ処理結果を得るために必要な乗加算処理の一部のみを乗加算器MAC0に実行させ、残りをその直前の演算周期において乗加算器MAC1に実行させる。これにより、図5に示すように、1演算周期当たりのデータメモリ3からのサンプル読み出し回数を6回に減らしている。<第2実施形態>この発明の第2実施形態であるDSPは、3個の乗加算器MAC0、MAC1およびMAC2を有している。図6は本実施形態によるDSPのFIRフィルタ処理の実行例を示す図である。仮に1個の乗加算器のみを使用するとした場合、演算周期Tn1では、5次のFIRフィルタ処理を実行するために、次式の演算を1個の乗加算器MACに実行させる必要がある。ACC=C0Xn1ACC=C1XnACC=C2Xn-1ACC=C3Xn-2ACC=C4Xn-3ACC=C5Xn-4......16この場合、1演算周期内に6回のメモリアクセスを行う必要がある。1つ前の演算周期Tn、さらに1つ前の演算周期Tn-1も同様である。しかし、3個の連続した演算周期Tn-1~Tn1に着目すると、それらの演算周期のフィルタ処理結果を得るための乗加算処理群は、共通のサンプルを対象にした3個の乗加算処理の組を複数組含んでいる。そこで、本実施形態では、上記第1実施形態の制御部1図1参照に相当する制御手段が、演算周期Tn1では前掲式16の各乗加算処理の一部のみを乗加算器MAC0に実行させ、残りの乗加算処理の一部を直前の演算周期Tnに乗加算器MAC1に実行させ、残った乗加算処理をさらに1つ前の演算周期Tn-1に乗加算器MAC2に実行させ、演算周期Tn-1における乗加算器MAC2の乗加算処理の結果を演算周期Tnにおいて乗加算器MAC1に引き継がせ、演算周期Tnにおける乗加算器MAC1の乗加算処理の結果を演算周期Tn1において乗加算器MAC0に引き継がせる。具体的には次の通りである。まず、演算周期Tn-1では、次式の乗加算処理を乗加算器MAC2に実行させる。ACC2=C2Xn-1ACC2=C5Xn-4......17次に演算周期Tnでは、次式の乗加算処理を乗加算器MAC1に実行させる。ACC1=ACC2ACC1=C1XnACC1=C4Xn-3......18次に演算周期Tn1では、次式の乗加算処理を乗加算器MAC0に実行させる。ACC0=ACC1ACC0=C0Xn1ACC0=C3Xn-2......19この結果、演算周期Tn1では最終的に前掲式16の演算処理結果と同じものがアキュムレータACC0に格納されることとなる。本実施形態では、他の演算周期においても、各演算周期でのフィルタ処理結果を得るために、以上と同様に、一部の乗加算処理の先行する演算周期への振り分けを行う。この結果、図6から明らかなように、各演算周期においてサンプルをデータメモリから読み出す回数は3回で済む。従って、本実施形態によれば、上記第1実施形態と比べ、1演算周期内に実行可能な乗加算処理の回数をさらに増加させることができる。<他の実施形態>以上、この発明の一実施形態について説明したが、これ以外にも、この発明には他の実施形態が考えられる。例えば次の通りである。1例えば上記第1実施形態では、各演算周期において、サンプルをメモリから読み出す回数が最小となるように、当該演算周期におけるフィルタ処理結果を得るための乗加算処理群の中の一部を先行する演算周期に振り分け、乗加算器MAC1に実行させた。しかし、サンプルのメモリからの読み出し回数を減らすために、先行する演算周期において乗加算器MAC1に実行させる乗加算処理を増やすと、乗加算器MAC1の空き時間が減り、却って好ましくない事態が発生する場合もあり得る。例えば乗加算器MAC0およびMAC1に実行させているフィルタ処理以外のフィルタ処理を乗加算器MAC1に実行させたいが、乗加算器MAC1の空き時間が少なくなると後者のフィルタ処理の実行が困難になるといった事態である。従って、必ずしも各演算周期においてサンプルをメモリから読み出す回数を最小とする必要はなく、他のフィルタ処理の実行等に支障が生じない範囲で、サンプルのメモリからの読み出し回数を減らせばよい。2上記各実施形態によれば、1演算周期内に実行可能な乗加算処理の回数を増やすことができるが、処理対象となるサンプルがDSPに与えられてからフィルタ処理結果が出力されるまでのレイテンシが長くなる。そこで、例えば次のようにフィルタ処理の内容に合わせて乗加算処理の実行方法を切り換えてもよい。a.各演算周期のフィルタ処理結果を得るための乗加算処理の回数が多く、かつ、レイテンシが大きくても構わないフィルタ処理については上記各実施形態を適用する。b.各演算周期のフィルタ処理結果を得るための乗加算処理の回数が少なく、かつ、レイテンシの小さいことが要求されるフィルタ処理については、1個の乗加算器を使用して実行する。