信号処理装置及び信号処理方法
【課題】 信号処理の処理内容に応じて、効率的に信号処理モジュール間のデータ転送を行う信号処理装置を提供する。
【解決手段】 信号処理を行なうための複数の信号処理モジュール1〜nと、信号処理モジュール間のデータ転送のための汎用バス21と、信号処理モジュール1〜n間におけるデータ転送を行なうための信号処理バス20とを備え、信号処理モジュール1〜nは、汎用バス21または信号処理バス20の選択回路11,15を有し、信号処理モジュール1〜nでの処理に応じて使用するバス20,21を選択して信号処理モジュール1〜n間の接続を行なう。
【解決手段】 信号処理を行なうための複数の信号処理モジュール1〜nと、信号処理モジュール間のデータ転送のための汎用バス21と、信号処理モジュール1〜n間におけるデータ転送を行なうための信号処理バス20とを備え、信号処理モジュール1〜nは、汎用バス21または信号処理バス20の選択回路11,15を有し、信号処理モジュール1〜nでの処理に応じて使用するバス20,21を選択して信号処理モジュール1〜n間の接続を行なう。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の汎用CPUや信号処理デバイスにより信号処理を行なう信号処理装置および信号処理方法に関する。
【背景技術】
【0002】
画像処理や信号処理は大量のデータを高速かつリアルタイムで処理する必要があるため、複数の信号処理デバイスや信号処理モジュールを用いた並列処理やパイプライン処理を行なったり、複数のデータバスを用いてデータ転送の並列化を行なうことで処理の高速化を図っている(例えば、特許文献1参照)。
【0003】
また、画像処理や信号処理は大量データの単純な処理を繰り返し行なうという特徴を持ち、汎用CPUを用いたソフトウェア処理では処理の効率が悪く、画像処理や信号処理には適さないため、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)を用いた専用ハードウェアにより処理が行なわれている。
【特許文献1】特開昭58−064562号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
複数の信号処理モジュールからなる信号処理装置において高速信号処理を実現するには、図23に示すように、異なる信号処理の特性であるパイプライン処理(図23(a))や並列処理(図23(b))に最適なモジュール間の接続を行なう必要がある。
【0005】
図24に示すように、汎用バス(例えばPCI等)に複数の信号処理モジュールを接続した信号処理装置では、図24(a)(b)に示すように、バスインタフェース回路により入出力データが一時的にバッファされるため、図24(c)に示すようにパイプライン処理においてはバッファによる遅延の蓄積により、処理時間が長くなってしまう。
【0006】
一方、図25(a)(b)に示すように、バスインタフェース回路を介さず直接信号処理モジュール間を接続してなる信号処理装置では、図25(c)に示すように、信号処理バスを設けることにより処理の遅延を抑えることが可能になるが、専用ハードウェア処理によって複数の機能を実現するためには、より多くのハードウェアリソースが必要となり、装置の大型化や消費電力の増大につながる。また、機能の追加や変更を容易に行なうことはできないといった問題が生じていた。
【0007】
本発明は、上述した問題点を解決するためになされたものであり、信号処理の処理内容に応じて、効率的に信号処理モジュール間のデータ転送を行うことができる信号処理装置および信号処理方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決するため、この信号処理装置は、信号処理を行なうための複数の信号処理モジュールと、前記信号処理モジュール間のデータ転送のための汎用バスと、前記信号処理モジュール間におけるデータ転送を行なうための信号処理バスとを備え、前記信号処理モジュールは、前記汎用バスまたは前記信号処理バスの選択回路を有し、前記信号処理モジュールでの処理に応じて使用するバスを選択して前記信号処理モジュール間の接続を行なうことを特徴とする。
【0009】
また、信号処理装置は、CPUモジュールと、前記CPUモジュールからの指示に基づいて信号処理を行なうための複数の信号処理モジュールと、前記CPUモジュールと前記信号処理モジュールの間、又は前記信号処理モジュールの間でデータ転送を行うための汎用バスと、前記信号処理モジュール間におけるデータ転送を行なうための信号処理バスとを備え、前記信号処理モジュールは、前記CPUモジュールからの指示に基づいて、前記汎用バスまたは前記信号処理バスを選択して前記信号処理モジュール間の接続を行なう選択回路を有することを特徴とする。
【0010】
また、信号処理方法は、信号処理を行なうための複数の信号処理モジュールを汎用バスで接続するとともに、信号処理バスで接続し、前記信号処理モジュールで行われる処理に応じて、前記汎用バスと信号処理バスを切り替えて複数の信号処理モジュール間でデータを転送し、データが転送される信号処理モジュールを用いて信号処理を行うようにしたことを特徴とする。
【発明の効果】
【0011】
本発明によれば、信号処理の処理内容に応じて、効率的に信号処理モジュール間のデータ転送を行うことができる。
実施の形態によれば、複数の信号処理モジュールを用いて信号処理を行なうに際して、通常のデータ転送を行なうための汎用バスに加え、バスインタフェース回路を介さずモジュール間を接続可能な信号処理バスを設けることにより、パイプライン処理や並列処理といった異なる特性の信号処理を行なうことが可能となり、また、信号処理モジュールに汎用バスと信号処理バスのどちらを使用するか選択するための選択回路を信号処理デバイスの入出力部に設けることにより処理の内容に適したバスを選択することができ、処理の変更に対して容易に装置の内部構成を変更可能な信号処理装置を提供することができる。
【発明を実施するための最良の形態】
【0012】
以下、本発明の実施の形態を図を用いて説明する。
(基本概念)
FPGAのうち、SRAM型FPGAは内部の回路情報(コンフィグレーションデータ)は外部のROM等に保存されており、電源投入時にFPGA内部に読み込まれ回路が構成される。FPGAと類似のデバイスであるDRP(Dynamic Reconfigurable Processor)はコンフィグレーションデータを電源投入後においても動的に変更することができるという特長を持っている。
【0013】
これらのデバイスを実装した複数の信号処理モジュールとCPUモジュールを汎用バスで接続し、各信号処理モジュール上のコンフィグレーションデータ(構成情報データ)はCPUモジュールから信号処理モジュール上のメモリにロードされ、信号処理デバイスに読み込まれる。コンフィグレーションデータは処理内容により適宜変更することが可能となる。処理内容が複数モジュールにまたがるような回路規模を必要とする場合、信号処理バスを用いてダイレクトに信号処理モジュール間のデータ転送を行なうことでパイプライン的に処理が行なわれる。
【0014】
信号処理デバイスの入出力データは、信号処理モジュール上のバス選択回路により汎用バスまたは信号処理バスのどちらかが選択される。CPUモジュールは信号処理モジュールで実行される処理のコンフィグレーションデータに加えて、入出力データが接続されるバスの選択情報を持ち、その処理が実行されるときに信号処理モジュールにロードされ、回路情報とモジュール間の接続が再構成される。
【0015】
図1は本発明の実施の形態における信号処理装置の基本概念を示すブロック構成図である。この信号処理装置は、CPUモジュール100、複数の信号処理モジュール1〜n、CPUモジュール100及び複数の信号処理モジュールに接続された汎用バス21、複数の信号処理モジュール1〜nを順次接続する信号処理バス20を備えている。
【0016】
以上の構成において、信号処理モジュール1〜nのそれぞれは、汎用バス21に接続されたバスインタフェース10、バスインターフェース10と信号処理バス20の入力側に接続された選択回路11、バスインターフェース10と信号処理バス20の出力側に接続された選択回路15、信号処理モジュール1〜nの制御回路13、信号処理デバイス12、信号処理デバイス12及び制御回路13に接続されたメモリ14を備えている。
【0017】
選択回路11,15は、CPUモジュール100から送られるコンフィグレーションデータに基づいて、入出力ライン20(信号処理バス),21(汎用バス)を適宜切り替え接続するとともに、コンフィグレーションデータに基づいて、制御回路13は、メモリ14、信号処理デバイス12の処理形態をプログラマブルに構築し、信号処理装置全体構成を変更する。
【0018】
一例として、図2は、信号処理バス20を用いてハードウェアパイプライン処理を行うようにした場合を示している。図3はこれに対応する処理フローを示している。この場合、各信号処理モジュール内ではクロックサイクルごとに演算を行い、演算結果を次の演算のために送出するようにすることができる。
【0019】
すなわち、本実施の形態では、信号処理モジュールを処理回路の構成要素の一つと考え、信号処理デバイスのみの構成を変更するだけでなくモジュール同士の接続形態を変更することにより装置内のハードウェア構成を変更し、特性の異なる処理(並列処理やパイプライン処理)への対応を行なうことができる。
【0020】
ここでいうパイプライン処理は、ある機能単位を1処理として複数処理を直列に接続し、特定の処理周期ごとに結果を後段に渡すといったソフトウェアパイプラインではなく、論理/算術演算を1処理として、クロックサイクルごとに処理結果を後段に渡すハードウェアパイプラインを意味しており、ソフトウェアパイプライン処理では1つの処理でまとまったデータを処理されるため、すべての処理が終了しなければ後段にデータを渡すことはできないのに対し、ハードウェアパイプラインでは1クロックサイクルごとに処理結果(演算結果)が出力されて後段に渡されるため処理のレイテンシを小さくでき高速処理を実現することができるという特徴を持つ。
【0021】
なお、本実施の形態によれば、図4に示すようにソフトウェアパイプラインを構築することもできる。この場合、各信号処理モジュール内では特定処理周期ごとにまとまったデータを転送することができる。
【0022】
また、他の例として、図5は、例えば汎用バス21を用いて並列処理を行うようにした場合を示している。この構成によれば、各信号処理モジュールがCPUモジュール100からの指示に基づいて、それぞれの演算を行ってCPUモジュール100に処理結果を返送する。
以下、より具体的に説明する。
【0023】
実施の形態1.
図6〜図8は本発明の実施の形態1における全体構成を示すブロック図である。CPUモジュール100と信号処理モジュール1〜nは汎用バス21(例えばPCI等)で接続される。また、信号処理モジュール1〜nは信号処理バス20により隣り合ったモジュール間が接続される。
【0024】
各信号処理モジュール1〜nは、図1を参照して、信号処理を行なうための信号処理デバイス(例えばFPGA:Field Programmable Gate ArrayやDRP:Dynamic Reconfigurable Processor等)12、汎用バス21を用いて他のモジュールとのデータ転送を行なうためのバスインタフェース10、汎用バス20と信号処理バス21の選択を行なうための選択回路11、信号処理デバイス12のコンフィグレーション情報や処理の一時データ等を格納するためのメモリ14、信号処理デバイス12に対して処理内容の変更や選択回路11,15の制御を行なうための制御回路13により構成されている。
【0025】
信号処理モジュール1〜nでは処理1〜nの信号処理が行なわれ、それぞれの処理の特性に応じて汎用バス21または信号処理バス20のいずれのバスを使用するか選択回路11,15によって選択される。
【0026】
CPUモジュール100は信号処理モジュール1〜n上で動作する処理内容の変更やバスの選択、信号処理結果の加工や信号処理デバイスに適さない処理(例えば複雑な算術演算等)を行なう。
【0027】
より具体的に説明する。
CPUモジュールは信号処理モジュールの構成情報として以下の情報を持つ。
(1)機能名
(2)モジュール数
(3)信号処理モジュール情報(信号処理モジュール番号、信号処理デバイスの回路構成情報、入力データ用バス情報(バス選択情報(信号処理バス or 汎用バス)、転送元アドレス(汎用バスを選択する場合)、転送先アドレス(汎用バスを選択する場合)、データ転送サイズ)
(4)出力データ用バス情報(バス選択情報(信号処理バス or 汎用バス)、転送元アドレス(汎用バスを選択する場合)、転送先アドレス(汎用バスを選択する場合)、データ転送サイズ)
【0028】
上記の情報を構成情報とし、信号処理モジュール上で実行される機能ごとに管理される。複数の信号処理モジュールにわたるパイプライン処理の場合、複数の信号処理モジュール情報を持つ。
【0029】
CPUモジュールはこの情報をもとに、信号処理モジュールを設定し処理の起動を信号処理モジュールに指示することにより処理が実行される。設定例を図6〜図8を参照しつつ以下に示す。
【0030】
上記の設定例では信号処理モジュール1(a)と、信号処理モジュール2(h)を用いて機能1というパイプライン処理を行なう例である。
【0031】
機能1で行なわれる処理として信号処理デバイス1に構成情報1(a)、信号処理デバイス2に構成情報2(i)を割り当て、モジュール間を信号処理バスで接続する(f)(j)。
【0032】
信号処理デバイス1へ入力される処理データはCPUモジュールのメモリ上にあり(d)(g)、汎用バス経由(c)で信号処理モジュール1に入力される(e)。
【0033】
入力されたデータは信号処理デバイス1→信号処理バス→信号処理デバイス2によって処理され、信号処理モジュール2から汎用バス経由(k)でCPUモジュール上のメモリ(m)(n)に格納される。
【0034】
このように機能ごとに装置構成情報として管理することでさまざまな形態に装置を構成することができる。
【0035】
例えば、アドレス情報を変更し別の信号処理モジュールに割り当てて同時実行することで同一機能の並列処理が可能となり、さらに信号処理デバイスの構成情報を変更すれば異なる機能の並列動作が可能となる。
【0036】
また、一部の信号処理モジュールが故障した場合でも、信号処理モジュールとアドレス情報を変更し再割り当てを行なうことで運用の継続が可能となる。
【0037】
図9、図10は、上述した機能を二つ並列接続し、同一機能の並列処理例を行う場合の一例を示している。図9はその場合のブロック図であり、図10は、装置構成情報(コンフィグレーションデータ)の例を示している。
【0038】
機能〔1〕を並列処理する場合、それぞれの機能を機能〔1−1〕、機能〔1−2〕とすると信号処理モジュール1および信号処理モジュール2を機能〔1−1〕、信号処理モジュール3および信号処理モジュール4を機能〔1−2〕として割り当てることとする。
【0039】
回路構成情報としては構成情報1を信号処理モジュール1、信号処理モジュール3に割り当て、構成情報2を信号処理モジュール2、信号処理モジュール4に割り当てる。
【0040】
処理に使用するデータは処理1のデータを機能〔1−1〕によって処理し、処理2のデータを機能〔1−2〕によって処理するものとする。
【0041】
実施の形態2.
次に、信号処理装置の他の構築方法を実施の形態2として、図11〜図15を用いて説明する。
図11は、図15に示される回路構成における信号処理モジュールのアドレス情報の例を示すテーブルである。なお、図15においては、図11に示される出力アドレス12、入力アドレス21については、図示を省略している。
図12は、図15に示される回路構成における機能情報の例を示すテーブルである。
図13は、図15に示される回路構成における処理用データのアドレス情報の例である。
図14は、図15に示される回路構成における複数機能の並列処理を行う場合の装置構成情報を示すテーブルである。
図15は、これらの情報を元に構成された回路ブロックを示す図である。
【0042】
図15に示されるように、複数機能の並列処理の例において、機能1〜3の並列処理する場合、信号処理モジュール1および信号処理モジュール2を機能〔1〕、信号処理モジュール3を機能〔2〕、信号処理モジュール4を機能〔3〕として割り当てることとする。
【0043】
回路構成情報としては構成情報1を信号処理モジュール1、構成情報2を信号処理モジュール2、構成情報3を信号処理モジュール3、構成情報4を信号処理モジュール4に割り当てる。
【0044】
処理に使用するデータは処理1のデータを機能〔1〕によって処理し、処理2のデータを機能〔2〕、処理3のデータを機能〔3〕によって処理するものとする。
【0045】
実施の形態3.
上述してきた実施の形態では、信号処理バスは隣り合ったモジュール間を接続しているが、本実施の形態で説明するように、任意のモジュール間で接続してもよい。選択回路でのバスの選択は制御回路により行なっているが、転送データ中にバスの選択情報を付加し、選択情報により動的に選択してもよい。CPUモジュールも複数使用するようにしてもよい。
【0046】
図16は、信号処理バスを任意のモジュール間で接続する場合のブロック図を示している。図16では、信号処理バスに複数の系統(信号処理バス1〜信号処理バスn)を設け、各信号処理モジュールの入力および出力はいずれの系統の信号処理バスに接続されるかを選択するための選択回路に接続される。
それぞれの選択回路はCPUモジュールからアクセス可能な信号処理バス制御回路によって設定が行なわれる。
信号処理バスの接続情報は装置構成情報に付加される。
【0047】
図17は、任意の信号処理モジュールを接続して信号処理装置を構成する一例のブロック図を示している。信号処理バスを任意のモジュールで接続する場合の処理例を以下に示す。機能〔1−1〕を信号処理モジュール1と信号処理モジュール4に割り当て、機能〔1−2〕を信号処理モジュール2と信号処理モジュール3に割り当てる場合、信号処理モジュール1の出力バスおよび信号処理モジュール4の入力バスは信号処理バス1が接続され、信号処理モジュール2の出力バスと信号処理モジュール3の入力バスは信号処理バス2が接続される。
【0048】
図18は、図17のブロック構成に対応する同装置構成情報の例を示している。信号処理バスを任意のモジュールで接続する場合、信号処理バスの接続系統についての情報を付加する必要がある。図18の例では、入力バスまたは出力バスが信号処理バスであった場合、転送元アドレス格納領域を信号処理バス系統を表す情報として扱い、信号処理モジュール1の出力バスおよび信号処理モジュール4の入力バスの転送元アドレス領域には信号処理バス1が格納され、信号処理モジュール2の出力バスおよび信号処理モジュール3の入力バスの転送元アドレス領域には信号処理バス2が格納される。
【0049】
この実施の形態によれば、信号処理バスを任意のモジュールで接続可能な構造とすることにより、特定モジュールの故障等により装置の再構成を行なうような場合、装置全体を再構成する必要はなく、動作中の処理は継続することができ、信号処理モジュールへの機能割り当ての組み合わせを柔軟に変更することができる。
【0050】
図19は、上位アプリケーションプログラムの動作フローを示すフローチャートである。上位アプリケーションは、初期情報に従って装置の再構成を行ない処理の開始を指示する。ユーザの要求等によって装置再構成の変更要求があった場合、装置構成情報を再生成し、動作中の処理停止後装置再構成を実施し処理を再開させる。
【0051】
図19を詳述すれば、まず、装置構成基本情報を読み込み(S1)、初期装置構成情報を読み込む(S2)。次に装置再構成を実施し(S3)、処理開始を指示して(S4)イベントを待ち(S5)、装置構成変更要求があるか否かを判断する(S6)。要求があった場合は(S6,Y)、装置構成情報を生成し(S7)、機能未割り当てモジュール情報を更新し(S8)、処理停止を指示し(S9)、ステップ(S3)に戻る。ステップ(S6)で装置構成変更要求が無かった場合は(S6,N)、イベント待ち(S5)に戻る。
【0052】
図20は、装置構成情報生成処理を示すフローチャートである。
まず、処理を行う機能を選択し(S11)、機能名を設定し(S12)、回路構成情報数を読み込み(S13)、モジュール数として回路構成情報数を設定する(S14)。次に処理を行う信号処理モジュール名を設定し(S15)、処理に使用する回路構成情報を設定し(S16)、処理対象データのアドレス情報を読み込み(S17)、前段の処理があるか否かを判断する(S18)。処理があった場合は(S18,Y)、入力バスとして信号処理バスを設定し(S19)、後段の処理があるか否かを判断する(S20)。処理があった場合は(S20,Y)、入力バスとして信号処理バスを設定し(S21)、ステップ(S15)に戻る。
【0053】
ステップ(S18)において、前段の処理が無いと判断された場合は(S18,N)、入力バスとして汎用バスを設定し(S22)、転送元アドレスとして処理データのアドレスを設定し(S23)、転送先アドレスとして信号処理モジュールの入力アドレスを設定し(S24)、データサイズとして処理データサイズを設定して(S25)、処理(S20)に進む。
【0054】
また、ステップ(S20)において、後段の処理が無いと判断された場合は(S20,N)、出力バスとして汎用バスを設定し(S26)、転送元アドレスとして信号処理モジュールの出力アドレスを設定し(S27)、転送先アドレスとして処理結果格納アドレスを設定し(S28)、データサイズとして処理結果データサイズを設定する(S29)。そして、全機能設定完了するまでステップ(S11)に戻る(S30)。
【0055】
実施の形態4.
本実施の形態によれば、故障発生時は、機能が割り当てられていないモジュールを検索し割り当て可能であれば装置構成情報を再生成する。割り当てができない場合、停止可能な処理があれば停止して装置構成情報を生成することもできる。
【0056】
例えば図21は故障時の装置再構成例を示すブロック図である。図21(a)に示すように機能〔1〕の信号処理モジュール1が故障した場合、図21(b)のように故障したモジュールを取り外し、他の信号処理モジュールを用いて再構築することができる。この故障発生時の処理フローの一例を図22に示す。
【0057】
まず、未割り当てモジュールを確認し(S41)、未割り当てモジュールがあるか否かを判断する(S42)。未割り当てモジュールがある場合は(S42,Y)、装置構成情報を生成し(S43)、機能未割り当てモジュール情報を更新し(S44)、処理停止を指示する(S45)。そして装置再構成を実施し(S46)、処理開始を指示する(S47)。
【0058】
一方、処理(S42)において、未割り当てモジュールが無いと判断された場合は(S42,N)、停止可能な処理があるか否かを確認し(S48)、停止可能な処理があれば処理(43)に移る(S49,Y)。一方停止可能処理がない場合はエラー処理を行って(S49,N)処理を終了する。
【0059】
本実施の形態によれば、コンフィグレーション情報を適宜ロードすることで、必要な機能をすべてハードウェアとして持つ必要はなく、装置の小型、軽量化が可能となる。信号処理バスにより信号処理モジュール間を接続することで大規模な処理の実現が可能となる。信号処理バスと汎用バスを選択することで信号処理モジュール内の再構成だけでなく、装置全体の再構成が可能となる。特定の信号処理モジュールが故障した場合、その処理を別の信号処理モジュールで再構成することで、運用を継続することが可能となる。
【0060】
以上、本実施の形態によれば、信号処理モジュールに汎用バスと信号処理バスの選択回路を設け、信号処理デバイスの入出力データが接続されるバスを選択することにより、低遅延が要求されるパイプライン処理を行なう場合は信号処理バスを使用し、まとまったデータを蓄積して並列処理を行なう場合は汎用バスを使用することで異なる特性の信号処理に対応可能な信号処理装置が実現可能となる。
【図面の簡単な説明】
【0061】
【図1】本発明の実施の形態の基本構成を示すブロック図である。
【図2】信号処理バスによるパイプライン処理の例を示す図である。
【図3】ハードウェアパイプラインを示すフロー図である。
【図4】ソフトウェアパイプラインを示すフロー図である。
【図5】汎用バスによる並列処理の例を示す図である。
【図6】実施の形態1における装置構成情報を示す図である。
【図7】図6による装置構成情報の対応箇所を示す図である。
【図8】実施の形態1におけるデータの流れを示す図である。
【図9】実施の形態1における同一機能の並列処理例を示す図である。
【図10】実施の形態1における同一機能の並列処理を行う場合の装置構成情報の例を示す図である。
【図11】実施の形態2における信号処理モジュールのアドレス情報の例を示す図である。
【図12】実施の形態2における機能情報の例を示す図である。
【図13】実施の形態2における処理用データのアドレス情報の例を示す図である。
【図14】実施の形態2における複数機能の並列処理を行う場合の装置構成情報の例を示す図である。
【図15】実施の形態2における複数機能の並列処理例を示す図である。
【図16】実施の形態3における信号処理バスを任意のモジュール間で接続する場合の例を示す図である。
【図17】実施の形態3における信号処理バスを任意のモジュールで接続する場合の処理例を示す図である。
【図18】実施の形態3における信号処理バスを任意のモジュールで接続する場合の装置構成情報の例として、同一機能の並列処理を行う場合を示す図である。
【図19】実施の形態3における上位アプリケーションプログラムの動作を示すフローチャートである。
【図20】実施の形態3における装置構成情報の生成処理を示すフローチャートである。
【図21】実施の形態4における信号処理モジュールが故障した場合の装置再構成例を示す図である。
【図22】実施の形態4における故障発生時の処理フローを示すフローチャートである。
【図23】従来の技術を示すパイプライン処理と並列処理を示す図である。
【図24】従来の汎用バスを用いた信号処理装置を示す図である。
【図25】従来の信号処理バスを用いた信号処理装置を示す図である。
【符号の説明】
【0062】
1〜n 複数の信号処理モジュール、10 バスインタフェース、11,15 選択回路、12 信号処理デバイス、13 制御回路、14 メモリ、21 汎用バス、20 信号処理バス、100 CPUモジュール。
【技術分野】
【0001】
本発明は、複数の汎用CPUや信号処理デバイスにより信号処理を行なう信号処理装置および信号処理方法に関する。
【背景技術】
【0002】
画像処理や信号処理は大量のデータを高速かつリアルタイムで処理する必要があるため、複数の信号処理デバイスや信号処理モジュールを用いた並列処理やパイプライン処理を行なったり、複数のデータバスを用いてデータ転送の並列化を行なうことで処理の高速化を図っている(例えば、特許文献1参照)。
【0003】
また、画像処理や信号処理は大量データの単純な処理を繰り返し行なうという特徴を持ち、汎用CPUを用いたソフトウェア処理では処理の効率が悪く、画像処理や信号処理には適さないため、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)を用いた専用ハードウェアにより処理が行なわれている。
【特許文献1】特開昭58−064562号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
複数の信号処理モジュールからなる信号処理装置において高速信号処理を実現するには、図23に示すように、異なる信号処理の特性であるパイプライン処理(図23(a))や並列処理(図23(b))に最適なモジュール間の接続を行なう必要がある。
【0005】
図24に示すように、汎用バス(例えばPCI等)に複数の信号処理モジュールを接続した信号処理装置では、図24(a)(b)に示すように、バスインタフェース回路により入出力データが一時的にバッファされるため、図24(c)に示すようにパイプライン処理においてはバッファによる遅延の蓄積により、処理時間が長くなってしまう。
【0006】
一方、図25(a)(b)に示すように、バスインタフェース回路を介さず直接信号処理モジュール間を接続してなる信号処理装置では、図25(c)に示すように、信号処理バスを設けることにより処理の遅延を抑えることが可能になるが、専用ハードウェア処理によって複数の機能を実現するためには、より多くのハードウェアリソースが必要となり、装置の大型化や消費電力の増大につながる。また、機能の追加や変更を容易に行なうことはできないといった問題が生じていた。
【0007】
本発明は、上述した問題点を解決するためになされたものであり、信号処理の処理内容に応じて、効率的に信号処理モジュール間のデータ転送を行うことができる信号処理装置および信号処理方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決するため、この信号処理装置は、信号処理を行なうための複数の信号処理モジュールと、前記信号処理モジュール間のデータ転送のための汎用バスと、前記信号処理モジュール間におけるデータ転送を行なうための信号処理バスとを備え、前記信号処理モジュールは、前記汎用バスまたは前記信号処理バスの選択回路を有し、前記信号処理モジュールでの処理に応じて使用するバスを選択して前記信号処理モジュール間の接続を行なうことを特徴とする。
【0009】
また、信号処理装置は、CPUモジュールと、前記CPUモジュールからの指示に基づいて信号処理を行なうための複数の信号処理モジュールと、前記CPUモジュールと前記信号処理モジュールの間、又は前記信号処理モジュールの間でデータ転送を行うための汎用バスと、前記信号処理モジュール間におけるデータ転送を行なうための信号処理バスとを備え、前記信号処理モジュールは、前記CPUモジュールからの指示に基づいて、前記汎用バスまたは前記信号処理バスを選択して前記信号処理モジュール間の接続を行なう選択回路を有することを特徴とする。
【0010】
また、信号処理方法は、信号処理を行なうための複数の信号処理モジュールを汎用バスで接続するとともに、信号処理バスで接続し、前記信号処理モジュールで行われる処理に応じて、前記汎用バスと信号処理バスを切り替えて複数の信号処理モジュール間でデータを転送し、データが転送される信号処理モジュールを用いて信号処理を行うようにしたことを特徴とする。
【発明の効果】
【0011】
本発明によれば、信号処理の処理内容に応じて、効率的に信号処理モジュール間のデータ転送を行うことができる。
実施の形態によれば、複数の信号処理モジュールを用いて信号処理を行なうに際して、通常のデータ転送を行なうための汎用バスに加え、バスインタフェース回路を介さずモジュール間を接続可能な信号処理バスを設けることにより、パイプライン処理や並列処理といった異なる特性の信号処理を行なうことが可能となり、また、信号処理モジュールに汎用バスと信号処理バスのどちらを使用するか選択するための選択回路を信号処理デバイスの入出力部に設けることにより処理の内容に適したバスを選択することができ、処理の変更に対して容易に装置の内部構成を変更可能な信号処理装置を提供することができる。
【発明を実施するための最良の形態】
【0012】
以下、本発明の実施の形態を図を用いて説明する。
(基本概念)
FPGAのうち、SRAM型FPGAは内部の回路情報(コンフィグレーションデータ)は外部のROM等に保存されており、電源投入時にFPGA内部に読み込まれ回路が構成される。FPGAと類似のデバイスであるDRP(Dynamic Reconfigurable Processor)はコンフィグレーションデータを電源投入後においても動的に変更することができるという特長を持っている。
【0013】
これらのデバイスを実装した複数の信号処理モジュールとCPUモジュールを汎用バスで接続し、各信号処理モジュール上のコンフィグレーションデータ(構成情報データ)はCPUモジュールから信号処理モジュール上のメモリにロードされ、信号処理デバイスに読み込まれる。コンフィグレーションデータは処理内容により適宜変更することが可能となる。処理内容が複数モジュールにまたがるような回路規模を必要とする場合、信号処理バスを用いてダイレクトに信号処理モジュール間のデータ転送を行なうことでパイプライン的に処理が行なわれる。
【0014】
信号処理デバイスの入出力データは、信号処理モジュール上のバス選択回路により汎用バスまたは信号処理バスのどちらかが選択される。CPUモジュールは信号処理モジュールで実行される処理のコンフィグレーションデータに加えて、入出力データが接続されるバスの選択情報を持ち、その処理が実行されるときに信号処理モジュールにロードされ、回路情報とモジュール間の接続が再構成される。
【0015】
図1は本発明の実施の形態における信号処理装置の基本概念を示すブロック構成図である。この信号処理装置は、CPUモジュール100、複数の信号処理モジュール1〜n、CPUモジュール100及び複数の信号処理モジュールに接続された汎用バス21、複数の信号処理モジュール1〜nを順次接続する信号処理バス20を備えている。
【0016】
以上の構成において、信号処理モジュール1〜nのそれぞれは、汎用バス21に接続されたバスインタフェース10、バスインターフェース10と信号処理バス20の入力側に接続された選択回路11、バスインターフェース10と信号処理バス20の出力側に接続された選択回路15、信号処理モジュール1〜nの制御回路13、信号処理デバイス12、信号処理デバイス12及び制御回路13に接続されたメモリ14を備えている。
【0017】
選択回路11,15は、CPUモジュール100から送られるコンフィグレーションデータに基づいて、入出力ライン20(信号処理バス),21(汎用バス)を適宜切り替え接続するとともに、コンフィグレーションデータに基づいて、制御回路13は、メモリ14、信号処理デバイス12の処理形態をプログラマブルに構築し、信号処理装置全体構成を変更する。
【0018】
一例として、図2は、信号処理バス20を用いてハードウェアパイプライン処理を行うようにした場合を示している。図3はこれに対応する処理フローを示している。この場合、各信号処理モジュール内ではクロックサイクルごとに演算を行い、演算結果を次の演算のために送出するようにすることができる。
【0019】
すなわち、本実施の形態では、信号処理モジュールを処理回路の構成要素の一つと考え、信号処理デバイスのみの構成を変更するだけでなくモジュール同士の接続形態を変更することにより装置内のハードウェア構成を変更し、特性の異なる処理(並列処理やパイプライン処理)への対応を行なうことができる。
【0020】
ここでいうパイプライン処理は、ある機能単位を1処理として複数処理を直列に接続し、特定の処理周期ごとに結果を後段に渡すといったソフトウェアパイプラインではなく、論理/算術演算を1処理として、クロックサイクルごとに処理結果を後段に渡すハードウェアパイプラインを意味しており、ソフトウェアパイプライン処理では1つの処理でまとまったデータを処理されるため、すべての処理が終了しなければ後段にデータを渡すことはできないのに対し、ハードウェアパイプラインでは1クロックサイクルごとに処理結果(演算結果)が出力されて後段に渡されるため処理のレイテンシを小さくでき高速処理を実現することができるという特徴を持つ。
【0021】
なお、本実施の形態によれば、図4に示すようにソフトウェアパイプラインを構築することもできる。この場合、各信号処理モジュール内では特定処理周期ごとにまとまったデータを転送することができる。
【0022】
また、他の例として、図5は、例えば汎用バス21を用いて並列処理を行うようにした場合を示している。この構成によれば、各信号処理モジュールがCPUモジュール100からの指示に基づいて、それぞれの演算を行ってCPUモジュール100に処理結果を返送する。
以下、より具体的に説明する。
【0023】
実施の形態1.
図6〜図8は本発明の実施の形態1における全体構成を示すブロック図である。CPUモジュール100と信号処理モジュール1〜nは汎用バス21(例えばPCI等)で接続される。また、信号処理モジュール1〜nは信号処理バス20により隣り合ったモジュール間が接続される。
【0024】
各信号処理モジュール1〜nは、図1を参照して、信号処理を行なうための信号処理デバイス(例えばFPGA:Field Programmable Gate ArrayやDRP:Dynamic Reconfigurable Processor等)12、汎用バス21を用いて他のモジュールとのデータ転送を行なうためのバスインタフェース10、汎用バス20と信号処理バス21の選択を行なうための選択回路11、信号処理デバイス12のコンフィグレーション情報や処理の一時データ等を格納するためのメモリ14、信号処理デバイス12に対して処理内容の変更や選択回路11,15の制御を行なうための制御回路13により構成されている。
【0025】
信号処理モジュール1〜nでは処理1〜nの信号処理が行なわれ、それぞれの処理の特性に応じて汎用バス21または信号処理バス20のいずれのバスを使用するか選択回路11,15によって選択される。
【0026】
CPUモジュール100は信号処理モジュール1〜n上で動作する処理内容の変更やバスの選択、信号処理結果の加工や信号処理デバイスに適さない処理(例えば複雑な算術演算等)を行なう。
【0027】
より具体的に説明する。
CPUモジュールは信号処理モジュールの構成情報として以下の情報を持つ。
(1)機能名
(2)モジュール数
(3)信号処理モジュール情報(信号処理モジュール番号、信号処理デバイスの回路構成情報、入力データ用バス情報(バス選択情報(信号処理バス or 汎用バス)、転送元アドレス(汎用バスを選択する場合)、転送先アドレス(汎用バスを選択する場合)、データ転送サイズ)
(4)出力データ用バス情報(バス選択情報(信号処理バス or 汎用バス)、転送元アドレス(汎用バスを選択する場合)、転送先アドレス(汎用バスを選択する場合)、データ転送サイズ)
【0028】
上記の情報を構成情報とし、信号処理モジュール上で実行される機能ごとに管理される。複数の信号処理モジュールにわたるパイプライン処理の場合、複数の信号処理モジュール情報を持つ。
【0029】
CPUモジュールはこの情報をもとに、信号処理モジュールを設定し処理の起動を信号処理モジュールに指示することにより処理が実行される。設定例を図6〜図8を参照しつつ以下に示す。
【0030】
上記の設定例では信号処理モジュール1(a)と、信号処理モジュール2(h)を用いて機能1というパイプライン処理を行なう例である。
【0031】
機能1で行なわれる処理として信号処理デバイス1に構成情報1(a)、信号処理デバイス2に構成情報2(i)を割り当て、モジュール間を信号処理バスで接続する(f)(j)。
【0032】
信号処理デバイス1へ入力される処理データはCPUモジュールのメモリ上にあり(d)(g)、汎用バス経由(c)で信号処理モジュール1に入力される(e)。
【0033】
入力されたデータは信号処理デバイス1→信号処理バス→信号処理デバイス2によって処理され、信号処理モジュール2から汎用バス経由(k)でCPUモジュール上のメモリ(m)(n)に格納される。
【0034】
このように機能ごとに装置構成情報として管理することでさまざまな形態に装置を構成することができる。
【0035】
例えば、アドレス情報を変更し別の信号処理モジュールに割り当てて同時実行することで同一機能の並列処理が可能となり、さらに信号処理デバイスの構成情報を変更すれば異なる機能の並列動作が可能となる。
【0036】
また、一部の信号処理モジュールが故障した場合でも、信号処理モジュールとアドレス情報を変更し再割り当てを行なうことで運用の継続が可能となる。
【0037】
図9、図10は、上述した機能を二つ並列接続し、同一機能の並列処理例を行う場合の一例を示している。図9はその場合のブロック図であり、図10は、装置構成情報(コンフィグレーションデータ)の例を示している。
【0038】
機能〔1〕を並列処理する場合、それぞれの機能を機能〔1−1〕、機能〔1−2〕とすると信号処理モジュール1および信号処理モジュール2を機能〔1−1〕、信号処理モジュール3および信号処理モジュール4を機能〔1−2〕として割り当てることとする。
【0039】
回路構成情報としては構成情報1を信号処理モジュール1、信号処理モジュール3に割り当て、構成情報2を信号処理モジュール2、信号処理モジュール4に割り当てる。
【0040】
処理に使用するデータは処理1のデータを機能〔1−1〕によって処理し、処理2のデータを機能〔1−2〕によって処理するものとする。
【0041】
実施の形態2.
次に、信号処理装置の他の構築方法を実施の形態2として、図11〜図15を用いて説明する。
図11は、図15に示される回路構成における信号処理モジュールのアドレス情報の例を示すテーブルである。なお、図15においては、図11に示される出力アドレス12、入力アドレス21については、図示を省略している。
図12は、図15に示される回路構成における機能情報の例を示すテーブルである。
図13は、図15に示される回路構成における処理用データのアドレス情報の例である。
図14は、図15に示される回路構成における複数機能の並列処理を行う場合の装置構成情報を示すテーブルである。
図15は、これらの情報を元に構成された回路ブロックを示す図である。
【0042】
図15に示されるように、複数機能の並列処理の例において、機能1〜3の並列処理する場合、信号処理モジュール1および信号処理モジュール2を機能〔1〕、信号処理モジュール3を機能〔2〕、信号処理モジュール4を機能〔3〕として割り当てることとする。
【0043】
回路構成情報としては構成情報1を信号処理モジュール1、構成情報2を信号処理モジュール2、構成情報3を信号処理モジュール3、構成情報4を信号処理モジュール4に割り当てる。
【0044】
処理に使用するデータは処理1のデータを機能〔1〕によって処理し、処理2のデータを機能〔2〕、処理3のデータを機能〔3〕によって処理するものとする。
【0045】
実施の形態3.
上述してきた実施の形態では、信号処理バスは隣り合ったモジュール間を接続しているが、本実施の形態で説明するように、任意のモジュール間で接続してもよい。選択回路でのバスの選択は制御回路により行なっているが、転送データ中にバスの選択情報を付加し、選択情報により動的に選択してもよい。CPUモジュールも複数使用するようにしてもよい。
【0046】
図16は、信号処理バスを任意のモジュール間で接続する場合のブロック図を示している。図16では、信号処理バスに複数の系統(信号処理バス1〜信号処理バスn)を設け、各信号処理モジュールの入力および出力はいずれの系統の信号処理バスに接続されるかを選択するための選択回路に接続される。
それぞれの選択回路はCPUモジュールからアクセス可能な信号処理バス制御回路によって設定が行なわれる。
信号処理バスの接続情報は装置構成情報に付加される。
【0047】
図17は、任意の信号処理モジュールを接続して信号処理装置を構成する一例のブロック図を示している。信号処理バスを任意のモジュールで接続する場合の処理例を以下に示す。機能〔1−1〕を信号処理モジュール1と信号処理モジュール4に割り当て、機能〔1−2〕を信号処理モジュール2と信号処理モジュール3に割り当てる場合、信号処理モジュール1の出力バスおよび信号処理モジュール4の入力バスは信号処理バス1が接続され、信号処理モジュール2の出力バスと信号処理モジュール3の入力バスは信号処理バス2が接続される。
【0048】
図18は、図17のブロック構成に対応する同装置構成情報の例を示している。信号処理バスを任意のモジュールで接続する場合、信号処理バスの接続系統についての情報を付加する必要がある。図18の例では、入力バスまたは出力バスが信号処理バスであった場合、転送元アドレス格納領域を信号処理バス系統を表す情報として扱い、信号処理モジュール1の出力バスおよび信号処理モジュール4の入力バスの転送元アドレス領域には信号処理バス1が格納され、信号処理モジュール2の出力バスおよび信号処理モジュール3の入力バスの転送元アドレス領域には信号処理バス2が格納される。
【0049】
この実施の形態によれば、信号処理バスを任意のモジュールで接続可能な構造とすることにより、特定モジュールの故障等により装置の再構成を行なうような場合、装置全体を再構成する必要はなく、動作中の処理は継続することができ、信号処理モジュールへの機能割り当ての組み合わせを柔軟に変更することができる。
【0050】
図19は、上位アプリケーションプログラムの動作フローを示すフローチャートである。上位アプリケーションは、初期情報に従って装置の再構成を行ない処理の開始を指示する。ユーザの要求等によって装置再構成の変更要求があった場合、装置構成情報を再生成し、動作中の処理停止後装置再構成を実施し処理を再開させる。
【0051】
図19を詳述すれば、まず、装置構成基本情報を読み込み(S1)、初期装置構成情報を読み込む(S2)。次に装置再構成を実施し(S3)、処理開始を指示して(S4)イベントを待ち(S5)、装置構成変更要求があるか否かを判断する(S6)。要求があった場合は(S6,Y)、装置構成情報を生成し(S7)、機能未割り当てモジュール情報を更新し(S8)、処理停止を指示し(S9)、ステップ(S3)に戻る。ステップ(S6)で装置構成変更要求が無かった場合は(S6,N)、イベント待ち(S5)に戻る。
【0052】
図20は、装置構成情報生成処理を示すフローチャートである。
まず、処理を行う機能を選択し(S11)、機能名を設定し(S12)、回路構成情報数を読み込み(S13)、モジュール数として回路構成情報数を設定する(S14)。次に処理を行う信号処理モジュール名を設定し(S15)、処理に使用する回路構成情報を設定し(S16)、処理対象データのアドレス情報を読み込み(S17)、前段の処理があるか否かを判断する(S18)。処理があった場合は(S18,Y)、入力バスとして信号処理バスを設定し(S19)、後段の処理があるか否かを判断する(S20)。処理があった場合は(S20,Y)、入力バスとして信号処理バスを設定し(S21)、ステップ(S15)に戻る。
【0053】
ステップ(S18)において、前段の処理が無いと判断された場合は(S18,N)、入力バスとして汎用バスを設定し(S22)、転送元アドレスとして処理データのアドレスを設定し(S23)、転送先アドレスとして信号処理モジュールの入力アドレスを設定し(S24)、データサイズとして処理データサイズを設定して(S25)、処理(S20)に進む。
【0054】
また、ステップ(S20)において、後段の処理が無いと判断された場合は(S20,N)、出力バスとして汎用バスを設定し(S26)、転送元アドレスとして信号処理モジュールの出力アドレスを設定し(S27)、転送先アドレスとして処理結果格納アドレスを設定し(S28)、データサイズとして処理結果データサイズを設定する(S29)。そして、全機能設定完了するまでステップ(S11)に戻る(S30)。
【0055】
実施の形態4.
本実施の形態によれば、故障発生時は、機能が割り当てられていないモジュールを検索し割り当て可能であれば装置構成情報を再生成する。割り当てができない場合、停止可能な処理があれば停止して装置構成情報を生成することもできる。
【0056】
例えば図21は故障時の装置再構成例を示すブロック図である。図21(a)に示すように機能〔1〕の信号処理モジュール1が故障した場合、図21(b)のように故障したモジュールを取り外し、他の信号処理モジュールを用いて再構築することができる。この故障発生時の処理フローの一例を図22に示す。
【0057】
まず、未割り当てモジュールを確認し(S41)、未割り当てモジュールがあるか否かを判断する(S42)。未割り当てモジュールがある場合は(S42,Y)、装置構成情報を生成し(S43)、機能未割り当てモジュール情報を更新し(S44)、処理停止を指示する(S45)。そして装置再構成を実施し(S46)、処理開始を指示する(S47)。
【0058】
一方、処理(S42)において、未割り当てモジュールが無いと判断された場合は(S42,N)、停止可能な処理があるか否かを確認し(S48)、停止可能な処理があれば処理(43)に移る(S49,Y)。一方停止可能処理がない場合はエラー処理を行って(S49,N)処理を終了する。
【0059】
本実施の形態によれば、コンフィグレーション情報を適宜ロードすることで、必要な機能をすべてハードウェアとして持つ必要はなく、装置の小型、軽量化が可能となる。信号処理バスにより信号処理モジュール間を接続することで大規模な処理の実現が可能となる。信号処理バスと汎用バスを選択することで信号処理モジュール内の再構成だけでなく、装置全体の再構成が可能となる。特定の信号処理モジュールが故障した場合、その処理を別の信号処理モジュールで再構成することで、運用を継続することが可能となる。
【0060】
以上、本実施の形態によれば、信号処理モジュールに汎用バスと信号処理バスの選択回路を設け、信号処理デバイスの入出力データが接続されるバスを選択することにより、低遅延が要求されるパイプライン処理を行なう場合は信号処理バスを使用し、まとまったデータを蓄積して並列処理を行なう場合は汎用バスを使用することで異なる特性の信号処理に対応可能な信号処理装置が実現可能となる。
【図面の簡単な説明】
【0061】
【図1】本発明の実施の形態の基本構成を示すブロック図である。
【図2】信号処理バスによるパイプライン処理の例を示す図である。
【図3】ハードウェアパイプラインを示すフロー図である。
【図4】ソフトウェアパイプラインを示すフロー図である。
【図5】汎用バスによる並列処理の例を示す図である。
【図6】実施の形態1における装置構成情報を示す図である。
【図7】図6による装置構成情報の対応箇所を示す図である。
【図8】実施の形態1におけるデータの流れを示す図である。
【図9】実施の形態1における同一機能の並列処理例を示す図である。
【図10】実施の形態1における同一機能の並列処理を行う場合の装置構成情報の例を示す図である。
【図11】実施の形態2における信号処理モジュールのアドレス情報の例を示す図である。
【図12】実施の形態2における機能情報の例を示す図である。
【図13】実施の形態2における処理用データのアドレス情報の例を示す図である。
【図14】実施の形態2における複数機能の並列処理を行う場合の装置構成情報の例を示す図である。
【図15】実施の形態2における複数機能の並列処理例を示す図である。
【図16】実施の形態3における信号処理バスを任意のモジュール間で接続する場合の例を示す図である。
【図17】実施の形態3における信号処理バスを任意のモジュールで接続する場合の処理例を示す図である。
【図18】実施の形態3における信号処理バスを任意のモジュールで接続する場合の装置構成情報の例として、同一機能の並列処理を行う場合を示す図である。
【図19】実施の形態3における上位アプリケーションプログラムの動作を示すフローチャートである。
【図20】実施の形態3における装置構成情報の生成処理を示すフローチャートである。
【図21】実施の形態4における信号処理モジュールが故障した場合の装置再構成例を示す図である。
【図22】実施の形態4における故障発生時の処理フローを示すフローチャートである。
【図23】従来の技術を示すパイプライン処理と並列処理を示す図である。
【図24】従来の汎用バスを用いた信号処理装置を示す図である。
【図25】従来の信号処理バスを用いた信号処理装置を示す図である。
【符号の説明】
【0062】
1〜n 複数の信号処理モジュール、10 バスインタフェース、11,15 選択回路、12 信号処理デバイス、13 制御回路、14 メモリ、21 汎用バス、20 信号処理バス、100 CPUモジュール。
【特許請求の範囲】
【請求項1】
信号処理を行なうための複数の信号処理モジュールと、
前記信号処理モジュール間のデータ転送のための汎用バスと、
前記信号処理モジュール間におけるデータ転送を行なうための信号処理バスとを備え、
前記信号処理モジュールは、前記汎用バスまたは前記信号処理バスの選択回路を有し、前記信号処理モジュールでの処理に応じて使用するバスを選択して前記信号処理モジュール間の接続を行なうことを特徴とする信号処理装置。
【請求項2】
請求項1に記載の信号処理装置において、
前記信号処理モジュールはCPUモジュールから前記汎用バスを介して構成情報を受信し、該構成情報に基づいて前記選択回路を動作させる制御回路を備えることを特徴とする信号処理装置。
【請求項3】
CPUモジュールと、
前記CPUモジュールからの指示に基づいて信号処理を行なうための複数の信号処理モジュールと、
前記CPUモジュールと前記信号処理モジュールの間、又は前記信号処理モジュールの間でデータ転送を行うための汎用バスと、
前記信号処理モジュール間におけるデータ転送を行なうための信号処理バスとを備え、
前記信号処理モジュールは、前記CPUモジュールからの指示に基づいて、前記汎用バスまたは前記信号処理バスを選択して前記信号処理モジュール間の接続を行なう選択回路を有することを特徴とする信号処理装置。
【請求項4】
信号処理を行なうための複数の信号処理モジュールを汎用バスで接続するとともに、信号処理バスで接続し、
前記信号処理モジュールで行われる処理に応じて、前記汎用バスと信号処理バスを切り替えて複数の信号処理モジュール間でデータを転送し、
データが転送される信号処理モジュールを用いて信号処理を行うようにしたことを特徴とする信号処理方法。
【請求項1】
信号処理を行なうための複数の信号処理モジュールと、
前記信号処理モジュール間のデータ転送のための汎用バスと、
前記信号処理モジュール間におけるデータ転送を行なうための信号処理バスとを備え、
前記信号処理モジュールは、前記汎用バスまたは前記信号処理バスの選択回路を有し、前記信号処理モジュールでの処理に応じて使用するバスを選択して前記信号処理モジュール間の接続を行なうことを特徴とする信号処理装置。
【請求項2】
請求項1に記載の信号処理装置において、
前記信号処理モジュールはCPUモジュールから前記汎用バスを介して構成情報を受信し、該構成情報に基づいて前記選択回路を動作させる制御回路を備えることを特徴とする信号処理装置。
【請求項3】
CPUモジュールと、
前記CPUモジュールからの指示に基づいて信号処理を行なうための複数の信号処理モジュールと、
前記CPUモジュールと前記信号処理モジュールの間、又は前記信号処理モジュールの間でデータ転送を行うための汎用バスと、
前記信号処理モジュール間におけるデータ転送を行なうための信号処理バスとを備え、
前記信号処理モジュールは、前記CPUモジュールからの指示に基づいて、前記汎用バスまたは前記信号処理バスを選択して前記信号処理モジュール間の接続を行なう選択回路を有することを特徴とする信号処理装置。
【請求項4】
信号処理を行なうための複数の信号処理モジュールを汎用バスで接続するとともに、信号処理バスで接続し、
前記信号処理モジュールで行われる処理に応じて、前記汎用バスと信号処理バスを切り替えて複数の信号処理モジュール間でデータを転送し、
データが転送される信号処理モジュールを用いて信号処理を行うようにしたことを特徴とする信号処理方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【公開番号】特開2010−33336(P2010−33336A)
【公開日】平成22年2月12日(2010.2.12)
【国際特許分類】
【出願番号】特願2008−194967(P2008−194967)
【出願日】平成20年7月29日(2008.7.29)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
【公開日】平成22年2月12日(2010.2.12)
【国際特許分類】
【出願日】平成20年7月29日(2008.7.29)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】
[ Back to top ]