(57)【特許請求の範囲】
【請求項１】
１つをマスターとし残りをスレーブとする複数のプロセッサ、および複数の周辺装置を含む構成とし、デバイス（プロセッサ，周辺装置）間で個別にデータ転送を行うためのマルチプロセッサシステムにおいて、
前記マスターとして動作するプロセッサに一方の端子を接続し、当該プロセッサとスレーブとして動作するその他のプロセッサとの間で転送されるデータを一時的に蓄える、１つのプロセッサ用ＦＩＦＯと、
前記周辺装置毎にそれぞれ一方の端子を接続し、当該周辺装置と前記プロセッサとの間で転送されるデータを前記周辺装置毎に一時的に蓄える、周辺装置数分の周辺装置用ＦＩＦＯと、
前記プロセッサ用ＦＩＦＯの他方の端子、前記各周辺装置用ＦＩＦＯの他方の端子および前記複数のプロセッサに接続され、前記デバイス間毎に規定されたアドレスに応じて入出力ポートの接続を切り替える切り替え手段と、
を備え、
前記プロセッサと前記複数の周辺装置の中のいずれか一つの周辺装置との間でデータ転送を行う場合は、当該周辺装置に接続された１つの周辺装置用ＦＩＦＯおよび前記切り替え手段を経由した経路でデータ転送を行い、前記マスターとして動作するプロセッサと前記スレーブとして動作するプロセッサとの間でデータ転送を行う場合は、前記プロセッサ用ＦＩＦＯおよび前記切り替え手段を経由した経路でデータ転送を行うことを特徴とするマルチプロセッサシステム。
【請求項２】
複数のプロセッサおよび複数の周辺装置を含む構成とし、デバイス（プロセッサ，周辺装置）間で個別にデータ転送を行うためのマルチプロセッサシステムにおいて、
プロセッサ間で転送されるデータを一時的に蓄える、一つのプロセッサ用ＦＩＦＯと、
前記周辺装置毎にそれぞれ一方の端子を接続し、当該周辺装置と前記プロセッサとの間で転送されるデータを前記周辺装置毎に一時的に蓄える、周辺装置数分の周辺装置用ＦＩＦＯと、
前記プロセッサ用ＦＩＦＯの両端子、前記各周辺装置用ＦＩＦＯの他方の端子および前記複数のプロセッサに接続され、前記デバイス間毎に規定されたアドレスに応じて入出力ポートの接続を切り替える切り替え手段と、
を備え、
前記プロセッサと前記複数の周辺装置の中のいずれか一つの周辺装置との間でデータ転送を行う場合は、当該周辺装置に接続された一つの周辺装置用ＦＩＦＯおよび前記切り替え手段を経由した経路でデータ転送を行い、前記プロセッサ間でデータ転送を行う場合は、データを出力するプロセッサ、前記切り替え手段、前記プロセッサ用ＦＩＦＯ、前記切り替え手段、データを入力するプロセッサ、の経路でデータ転送を行うことを特徴とするマルチプロセッサシステム。
【請求項３】
前記切り替え手段としてクロスバースイッチを用いることを特徴とする請求項１または２に記載のマルチプロセッサシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、リアルタイム性を要求されるマルチプロセッサシステムに関するものであり、特に、ディジタル無線機を実現するためのハードウェア構成として好適なマルチプロセッサシステム、および当該マルチプロセッサシステムにて実現されるデータ転送方法に関するものである。
【０００２】
【従来の技術】
以下、従来のデータ転送方法について説明する。ディジタル無線機などリアルタイム性が要求されるデータ処理装置では、高速，大容量のデータ演算が必要とされる。これを実現するための構成としては、たとえば、複数のＤＳＰ（Digital Signal Processor）を用いてディジタル信号処理を行う構成がある。なお、この構成では、大容量のリアルタイムデータを複数のＤＳＰに転送する。
【０００３】
図１０は、データ転送を実現するための従来のデータ処理装置（第１の従来技術）の構成を示す図であり、１００，１０１，１０２はＤＳＰであり、１１０は入出力ペリフェラル（Peripheral）である。ここでは、複数のＤＳＰ（１００〜１０２）をバス上に配置した状態でデータ転送を行う。入出力ペリフェラル１１０，各ＤＳＰに対してバス上のアドレスを付与することにより、任意のペリフェラルとＤＳＰとの間でデータ転送を行う。
【０００４】
図１１は、データ転送を実現するための従来のデータ処理装置（第２の従来技術）の構成を示す図である。ここでは、入出力ペリフェラル１１０と各ＤＳＰ（１００〜１０２）との間を双方向ＦＩＦＯ（ＢＩ−ＦＩＦＯ）１２０で接続する。ＦＩＦＯで接続されたデバイス間のデータ転送は他のデバイスとは独立に動作するため、高速なデータ転送が実現できる。また、ＦＩＦＯによりデバイス間のデータ転送が分離されるため、ＤＳＰバスの利用効率を向上させることができる。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記第１の従来技術に記載のデータ転送方法では、バスがデバイス間のデータ転送に占有されるため、すなわち、バスの占有により他のデバイスがデータ転送を行えなくなるため、全体として高速なデータ転送を実現できない、という問題があった。また、上記データ転送方法では、デバイス間で直接データ転送を行うため、両方に対して同時にデータ転送処理を行う必要がある。したがって、ＤＳＰバスの利用制約が増加し、パフォーマンスが低下する、という問題があった。
【０００６】
また、上記第２の従来技術に記載のデータ転送方法では、任意のデバイス間のデータ転送が不可能となり、直接ＦＩＦＯで接続されていないデバイス間のデータ転送については、途中のデバイスを中継する必要がある。したがって、データ転送速度および処理効率が低下する、という問題があった。また、上記データ転送方法では、デバイス数分のＦＩＦＯが必要であるため、コストがかかる、という問題があった。
【０００７】
本発明は、上記に鑑みてなされたものであって、任意のデバイス間のデータ転送、高速なデータ転送、およびコスト抑圧（高額部品点数の削減）、を実現可能なマルチプロセッサシステムおよびデータ転送方法を得ることを目的とする。
【０００８】
【課題を解決するための手段】
上述した課題を解決し、目的を達成するために、本発明にかかるマルチプロセッサシステムにあっては、複数のプロセッサおよび複数の周辺装置を含む構成とし、デバイス（プロセッサ，周辺装置）間で個別にデータ転送を行うために、前記デバイス間で転送されるデータを一時的に蓄えるデータ蓄積手段と、前記デバイス間毎に規定されたアドレスに応じて入出力ポートの接続を切り替える切り替え手段と、を備えることを特徴とする。
【０００９】
つぎの発明にかかるマルチプロセッサシステムにあっては、前記複数のプロセッサの１つをマスターとし、残りをスレーブとし、前記プロセッサと前記周辺装置との間、および前記マスターとして動作するプロセッサと前記スレーブとして動作するプロセッサとの間、で前記データ蓄積手段および前記切り替え手段を経由したデータ転送を行うことを特徴とする。
【００１０】
つぎの発明にかかるマルチプロセッサシステムにあっては、前記データ蓄積手段を、マスターとして動作するプロセッサとスレーブとして動作するその他のプロセッサとの間で転送されるデータを一時的に蓄えるプロセッサ用ＦＩＦＯと、前記周辺機器と前記プロセッサとの間で転送されるデータを前記周辺機器毎に一時的に蓄える複数の周辺装置用ＦＩＦＯと、で構成することを特徴とする。
【００１１】
つぎの発明にかかるマルチプロセッサシステムにあっては、前記プロセッサと前記周辺装置との間、および前記プロセッサ間、で前記データ蓄積手段および前記切り替え手段を経由したデータ転送を行うことを特徴とする。
【００１２】
つぎの発明にかかるマルチプロセッサシステムにあっては、前記データ蓄積手段を、プロセッサ間で転送されるデータを一時的に蓄えるプロセッサ用ＦＩＦＯと、前記周辺機器と前記プロセッサとの間で転送されるデータを前記周辺機器毎に一時的に蓄える複数の周辺装置用ＦＩＦＯと、で構成することを特徴とする。
【００１３】
つぎの発明にかかるマルチプロセッサシステムにあっては、切り替え手段としてクロスバースイッチを用いることを特徴とする。
【００１４】
つぎの発明にかかるデータ転送方法にあっては、マスターとして動作するプロセッサが、すべてのプロセッサで共有可能なプロセッサ用ＦＩＦＯおよびデバイス間毎に規定されたアドレスに応じて入出力ポートの接続を切り替える切り替え装置経由で、スレーブとして動作するプロセッサに対してデータを転送する第１の工程と、スレーブとして動作するプロセッサが、前記プロセッサ用ＦＩＦＯおよび前記切り替え装置経由で、マスターとして動作するプロセッサに対してデータを転送する第２の工程と、前記プロセッサが、周辺装置個別の周辺装置用ＦＩＦＯおよび前記切り替え装置経由で、所望の周辺装置に対してデータを転送する第３の工程と、前記周辺装置が、前記周辺装置用ＦＩＦＯおよび前記切り替え装置経由で、所望のプロセッサに対してデータを転送する第４の工程と、を含むことを特徴とする。
【００１５】
つぎの発明にかかるデータ転送方法にあっては、所定のプロセッサが、すべてのプロセッサで共有可能なプロセッサ用ＦＩＦＯおよびデバイス間毎に規定されたアドレスに応じて入出力ポートの接続を切り替える切り替え装置経由で、所望のプロセッサに対してデータを転送する第１の工程と、前記プロセッサが、周辺装置個別の周辺装置用ＦＩＦＯおよび前記切り替え装置経由で、所望の周辺装置に対してデータを転送する第２の工程と、前記周辺装置が、前記周辺装置用ＦＩＦＯおよび前記切り替え装置経由で、所望のプロセッサに対してデータを転送する第３の工程と、を含むことを特徴とする。
【００１６】
【発明の実施の形態】
以下に、本発明にかかるマルチプロセッサシステムおよびデータ転送方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１７】
実施の形態１．
図１は、本発明にかかるマルチプロセッサシステムの実施の形態１の構成を示す図である。１はマスターＤＳＰ（ｍａｓｔｅｒＤＳＰ）であり、２，３はスレーブＤＳＰ（ｓｌａｖｅＤＳＰ）であり、１１，１２は入出力となるペリフェラル（Ｐｅｒｉｐｈｅｒａｌ）であり、２１はそれぞれの入力端子を任意に接続可能なクロスバースイッチ（Ｃｒｏｓｓ  ｂａｒ）であり、３１，３２，３３は双方向にデータを転送可能なＦＩＦＯ（ＢＩ−ＦＩＦＯ：Ｂｉ−ｄｒｅｃｔｉｏｎａｌ ＦＩＦＯ）である。
【００１８】
上記マルチプロセッサシステムでは、マスターＤＳＰ１とＦＩＦＯ３１，各ＤＳＰ（１，２，３）とクロスバースイッチ２１が、各ＤＳＰ（１，２，３）のローカルバスを経由して接続されており、それぞれの接続に個別にバスアドレスを割り当てる。 具体的にいうと、マスターＤＳＰ１のローカルバスには、ＦＩＦＯ３１とクロスバースイッチ２１が接続されており、それぞれのアドレスを用いてアクセスする。
【００１９】
なお、本実施の形態では、本発明にかかるマルチプロセッサシステムをディジタル無線機に適用した場合の一例を説明する。この場合、ペリフェラル１１は、たとえば、受信信号をサンプリングするＡ／Ｄ変換器、すなわち、入力ペリフェラルとして動作する。各ＤＳＰでは、ペリフェラル１１を経由して受信したデータを復調し、その復調結果を得る。また、この場合、ペリフェラル１２は、たとえば、送信信号を連続化するＤ／Ａ変換器、すなわち、出力ペリフェラルとして動作する。
【００２０】
ここで、本実施の形態のマルチプロセッサシステムのデータ転送経路について説明する。図２，図３，図４，図５は、データ転送経路の一例を示す図である。
【００２１】
たとえば、ペリフェラル１１により変換された受信データは、ＦＩＦＯ３２に蓄えられる。マスターＤＳＰ１，スレーブＤＳＰ２，３では、ＦＩＦＯ３２に蓄えられ受信データを、図２に示す経路で読み出す。
【００２２】
また、ＤＳＰ間のデータ転送は、図３および図４に示す経路で実現できる。たとえば、マスターＤＳＰ１では、ＦＩＦＯ３１を経由して、スレーブＤＳＰ２，３にデータを転送する（図３参照）。また、スレーブＤＳＰ２，３では、ＦＩＦＯ３１を経由して、マスターＤＳＰ１にデータを転送する（図４参照）。
【００２３】
また、データを出力する場合、マスターＤＳＰ１，スレーブＤＳＰ２，３では、送信データをＦＩＦＯ３３に蓄える。そして、ペリフェラル１２では、ＦＩＦＯ３３からデータを受け取り、変換後のデータを出力する（図５参照）。
【００２４】
なお、本実施の形態では、ペリフェラル１１，１２として、リアルタイムに動作するＡＤ変換器，ＤＡ変換器を想定したため、各ペリフェラルに対してそれぞれＦＩＦＯ３２，３３を接続したが、たとえば、ペリフェラル１１，１２をマスターＤＳＰ１だけで制御する場合には、ＦＩＦＯ３２，３２を省略できる。
【００２５】
このように、本実施の形態では、マスターとして動作するＤＳＰとスレーブとして動作する複数のＤＳＰとを備える構成とし、さらに、ＦＩＦＯおよびクロスバースイッチを経由してデバイス間を接続している。これにより、スレーブＤＳＰ間以外の任意のデバイス間でデータ転送を実現できる。また、ＦＩＦＯを経由した高速なデータ転送を実現できる。また、クロスバースイッチを用いることによって、従来と比較して高額なＦＩＦＯ数を削減できるため、コストを低減できる。
【００２６】
実施の形態２．
図６は、本発明にかかるマルチプロセッサシステムの実施の形態２の構成を示す図であり、４，５，６はＤＳＰである。実施の形態１では、ＦＩＦＯ３１の両端子がそれぞれマスターＤＳＰ１とクロスバースイッチ２１に接続されているが、実施の形態２では、たとえば、ＦＩＦＯ３１の両端子がクロスバースイッチに接続されている。これにより、ＤＳＰ４，５，６がすべて同一の扱いとなり、マスター，スレーブという機能分担がなくなる。なお、ＤＳＰ以外のデバイスについては、前述した実施の形態１と同様であるためその説明を省略する。
【００２７】
以下、実施の形態１と同様に、マルチプロセッサシステムをディジタル無線機に適用した場合を一例として説明する。したがって、ペリフェラル１１を入力ペリフェラルとし、ペリフェラル１２を出力ペリフェラルとする。
【００２８】
ここで、本実施の形態のマルチプロセッサシステムのデータ転送経路について説明する。図７，図８，図９は、データ転送経路の一例を示す図である。
【００２９】
たとえば、ペリフェラル１１により変換された受信データは、ＦＩＦＯ３２に蓄えられる。ＤＳＰ４，５，６では、ＦＩＦＯ３２に蓄えられ受信データを、図７に示す経路で読み出す。
【００３０】
また、ＤＳＰ間のデータ転送は、図８に示す経路で実現できる。たとえば、ＤＳＰ４では、ＦＩＦＯ３１を経由して、ＤＳＰ５，６にデータを転送する（図８参照）。また、ＤＳＰ５では、ＦＩＦＯ３１を経由して、ＤＳＰ４，６にデータを転送する（図８参照）。ＤＳＰ６では、ＦＩＦＯ３１を経由して、ＤＳＰ４，５にデータを転送する（図８参照）。このように、任意のＤＳＰ間においてＦＩＦＯを用いた高速転送を実現できる。
【００３１】
また、データを出力する場合、ＤＳＰ４，５，６では、送信データをＦＩＦＯ３３に蓄える。そして、ペリフェラル１２では、ＦＩＦＯ３３からデータを受け取り、変換後のデータを出力する（図９参照）。
【００３２】
このように、本実施の形態では、ＦＩＦＯおよびクロスバースイッチを経由してすべてのデバイスを接続しているため、任意のデバイス間でデータ転送を実現できる。また、マスター，スレーブという関係に機能を分担することなく、ＦＩＦＯを経由した高速なデータ転送を実現できる。また、クロスバースイッチを用いることによって、従来と比較して高額なＦＩＦＯ数を削減できるため、コストを低減できる。
【００３３】
なお、上記実施の形態１および２では、ＦＩＦＯを用いたデータ転送について説明したが、これに限らず、たとえば、ＦＩＦＯをＤＰ（Dual Port）−ＲＡＭに置き換えてもよい。
【００３４】
【発明の効果】
以上、説明したとおり、本発明によれば、データ蓄積手段および切り替え手段を経由してデバイス間を接続している。これにより、任意のデバイス間のデータ転送を実現できる、という効果を奏する。
【００３５】
つぎの発明によれば、マスターとして動作するプロセッサとスレーブとして動作する複数のプロセッサとを備える構成とし、さらに、データ蓄積手段および切り替え手段を経由してデバイス間を接続している。これにより、スレーブとして動作するプロセッサ間以外の任意のデバイス間でデータ転送を実現できる、という効果を奏する。また、データ蓄積手段を共有できるため、従来と比較してデータ蓄積手段を削減できる、という効果を奏する。
【００３６】
つぎの発明によれば、データ蓄積手段を、マスターとして動作するプロセッサとスレーブとして動作するその他のプロセッサとの間で転送されるデータを一時的に蓄えるプロセッサ用ＦＩＦＯと、周辺機器とプロセッサとの間で転送されるデータを周辺機器毎に一時的に蓄える複数の周辺装置用ＦＩＦＯと、で構成する。これにより、ＦＩＦＯを経由した高速なデータ転送を実現できる、という効果を奏する。
【００３７】
つぎの発明によれば、プロセッサと周辺装置との間、およびプロセッサ間、でデータ蓄積手段および切り替え手段を経由したデータ転送を行うため、すなわち、データ蓄積手段および切り替え手段を経由してすべてのデバイスを接続しているため、任意のデバイス間でデータ転送を実現できる、という効果を奏する。また、データ蓄積手段を共有できるため、従来と比較してデータ蓄積手段を削減できる、という効果を奏する。
【００３８】
つぎの発明によれば、データ蓄積手段を、プロセッサ間で転送されるデータを一時的に蓄えるプロセッサ用ＦＩＦＯと、周辺機器とプロセッサとの間で転送されるデータを周辺機器毎に一時的に蓄える複数の周辺装置用ＦＩＦＯと、で構成する。これにより、マスター，スレーブという関係に機能を分担することなく、ＦＩＦＯを経由した高速なデータ転送を実現できる、という効果を奏する。
【００３９】
つぎの発明によれば、切り替え手段としてクロスバースイッチを用いることによって、従来と比較して高額なＦＩＦＯ数を削減できるため、コストを低減できる、という効果を奏する。
【００４０】
つぎの発明によれば、プロセッサと周辺装置との間、およびマスターとして動作するプロセッサとスレーブとして動作するプロセッサとの間、でＦＩＦＯおよび切り替え装置を経由したデータ転送を行う。これにより、スレーブとして動作するプロセッサ間以外の任意のデバイス間でデータ転送を実現できる、という効果を奏する。また、ＦＩＦＯを経由した高速なデータ転送を実現できる、という効果を奏する。
【００４１】
つぎの発明によれば、プロセッサと周辺装置との間、およびプロセッサ間、でＦＩＦＯおよび切り替え装置を経由したデータ転送を行う。これにより、任意のデバイス間でデータ転送を実現できる、という効果を奏する。また、マスター，スレーブという関係に機能を分担することなく、ＦＩＦＯを経由した高速なデータ転送を実現できる、という効果を奏する。
【図面の簡単な説明】
【図１】  本発明にかかるマルチプロセッサシステムの実施の形態１の構成を示す図である。
【図２】  データ転送経路の一例を示す図である。
【図３】  データ転送経路の一例を示す図である。
【図４】  データ転送経路の一例を示す図である。
【図５】  データ転送経路の一例を示す図である。
【図６】  本発明にかかるマルチプロセッサシステムの実施の形態２の構成を示す図である。
【図７】  データ転送経路の一例を示す図である。
【図８】  データ転送経路の一例を示す図である。
【図９】  データ転送経路の一例を示す図である。
【図１０】  従来のデータ処理装置の構成を示す図である。
【図１１】  従来のデータ処理装置の構成を示す図である。
【符号の説明】
１  マスターＤＳＰ（ｍａｓｔｅｒＤＳＰ）、２，３  スレーブＤＳＰ（ｓｌａｖｅＤＳＰ）、４，５，６  ＤＳＰ、１１，１２  ペリフェラル（Ｐｅｒｉｐｈｅｒａｌ）、２１  クロスバースイッチ（Ｃｒｏｓｓ  ｂａｒ）、３１，３２，３３  ＦＩＦＯ。
【図１】
0004108371.tif 000002
【図２】
0004108371.tif 000003
【図３】
0004108371.tif 000004
【図４】
0004108371.tif 000005
【図５】
0004108371.tif 000006
【図６】
0004108371.tif 000007
【図７】
0004108371.tif 000008
【図８】
0004108371.tif 000009
【図９】
0004108371.tif 000010
【図１０】
0004108371.tif 000011
【図１１】
0004108371.tif 000012