JP3982077B2 - マルチプロセッサシステム - Google Patents

マルチプロセッサシステム Download PDF

Info

Publication number
JP3982077B2
JP3982077B2 JP23931498A JP23931498A JP3982077B2 JP 3982077 B2 JP3982077 B2 JP 3982077B2 JP 23931498 A JP23931498 A JP 23931498A JP 23931498 A JP23931498 A JP 23931498A JP 3982077 B2 JP3982077 B2 JP 3982077B2
Authority
JP
Japan
Prior art keywords
data
processor
processors
input
multiprocessor system
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.)
Expired - Fee Related
Application number
JP23931498A
Other languages
English (en)
Other versions
JP2000067008A (ja
JP2000067008A5 (ja
Inventor
誠 中原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP23931498A priority Critical patent/JP3982077B2/ja
Priority to US09/304,842 priority patent/US6571301B1/en
Publication of JP2000067008A publication Critical patent/JP2000067008A/ja
Publication of JP2000067008A5 publication Critical patent/JP2000067008A5/ja
Application granted granted Critical
Publication of JP3982077B2 publication Critical patent/JP3982077B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、複数のプロセッサを備えたコンピュータシステムであるマルチプロセッサシステムに関する。
【0002】
コンピュータには常に高速・高性能が要求されており、それを実現するための手法として、命令の並列実行などの手法がとられているが、命令の並列実行の代表的な手法には、シングルプロセッサにおいて並列実行できる命令を増やす手法と、複数のプロセッサを使用して並列実行できる命令を増やす手法がある。
【0003】
複数のプロセッサを備えるマルチプロセッサシステムは、スーパコンピュータや大型コンピュータなどで実現されている技術であるが、プロセッサ数を増やすことで性能を向上させることに主眼が置かれており、容易にプロセッサ数を増やせるシステム形態が主流となっている。
【0004】
【従来の技術】
図6は従来のマルチプロセッサシステムの一例の要部を示すブロック回路図である。図6中、1−1、1−2、1−nはプロセッサ、2はバス、3は共有メモリであり、このマルチプロセッサシステムは、バス2に、複数のプロセッサ1−1〜1−nと、これら複数のプロセッサ1−1〜1−nに共有される共有メモリ3とを接続してなるマルチプロセッサシステムである。
【0005】
図7は従来のマルチプロセッサシステムの他の例の要部を示すブロック回路図である。図7中、4−1、4−2、4−nはプロセッサ、5はクロスバネットワークであり、このマルチプロセッサシステムは、クロスバネットワーク5内のクロスバスイッチを介してプロセッサ間を接続するというマルチプロセッサシステムである。
【0006】
【発明が解決しようとする課題】
図6に示す従来のマルチプロセッサシステムにおいては、2組のプロセッサ間でデータの受け渡しが行われる時に、他の2組のプロセッサ間でも同時にデータの受け渡し要求が発生した場合、どちらかのデータの受け渡しは待たされるように調停され、このため、データ処理の高速化を図ることができないという問題点があった。
【0007】
また、データ伝送路に着目した場合、必ず、バス2を経由する構成とされているので、バス権を獲得してからデータの転送を行うというバストランザクションの時間が必要となり、この点からも、データ処理の高速化を図ることができないという問題点があった。
【0008】
図7に示す従来のマルチプロセッサシステムにおいては、プロセッサ間を接続するクロスバスイッチが競合しない限り、図6に示す従来のマルチプロセッサシステムで発生するようなデータ転送のウエイトは生じないが、接続先のクロスバスイッチが競合した場合は、やはり、どちらかが待たされることになり、これがデータ処理の高速化を妨げるという問題点があった。
【0009】
また、クロスバネットワーク5内に多くのクロスバスイッチを設ける必要があるため、回路構成が複雑になると共に、データ伝送路に着目した場合、必ずクロスバスイッチを経由する構成とされているため、この点からも、データ処理の高速化を図ることができないという問題点があった。
【0010】
本発明は、かかる点に鑑み、データ処理の高速化を図ることができ、しかも、回路の簡略化を図ることができるようにしたマルチプロセッサシステムを提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明中、第1の発明のマルチプロセッサシステムは、データ入力端子とデータ出力端子とを有し、入力ポートを介して逐次入力される入力データの受け渡し先を判断し、各入力データを所定の受け渡し先に受け渡すようにプログラミングされる第1のプロセッサと、データ入力端子とデータ出力端子とを有し、第1のプロセッサから受け渡される入力データについて所定の処理を行うようにプログラミングされる第2〜第n(但し、nは3以上の整数)のプロセッサとを備えているというものである。
【0012】
本発明中、第1の発明のマルチプロセッサシステムにおいては、第2〜第nのプロセッサで命令の並列実行を行うことができるが、入力データを第1のプロセッサから第2〜第nのプロセッサに受け渡すように構成されているので、図6に示す従来のマルチプロセッサシステムが必要としている複数のプロセッサに共有されるバスを設ける必要がなく、また、図7に示す従来のマルチプロセッサシステムが必要としているクロスバネットワークを設ける必要もない。
【0013】
この結果、図6に示す従来のマルチプロセッサシステムの場合のようなデータ転送のウエイトという事態が発生することがなくなり、また、バス権を獲得するという手順も不要となり、更に、図7に示す従来のマルチプロセッサシステムの場合のようなクロスバスイッチが競合することによるデータ転送のウエイトという事態が発生することもなくなる。
【0014】
本発明中、第2の発明のマルチプロセッサシステムは、第1の発明のマルチプロセッサシステムにおいて、第1のプロセッサは、所定の入力データについてはデータメモリに受け渡すようにプログラミングされ、第2〜第nのプロセッサは、第1のプロセッサから受け渡された入力データについて所定の処理を行う場合、必要に応じて、データメモリに記憶された入力データを参照するようにプログラミングされるものであるというものである。
【0015】
本発明中、第3の発明のマルチプロセッサシステムは、第1又は第2の発明のマルチプロセッサシステムにおいて、データ入力端子とデータ出力端子とを有する第n+1のプロセッサと、第2〜第nのプロセッサの出力データ又は第n+1のプロセッサの出力データを出力ポートに転送する出力データ転送手段とを備え、第n+1のプロセッサは、第2〜第nのプロセッサの出力データについて所定の処理を行い、その処理結果に基づいて、出力ポートに転送すべき出力データを出力データ転送手段に指示するようにプログラミングされるものであるというものである。
【0016】
本発明中、第4の発明のマルチプロセッサシステムは、第3の発明のマルチプロセッサシステムにおいて、第1のプロセッサの前段に設けられ、入力ポートを介して逐次入力される入力データを格納する第1のFIFO回路と、第2〜第nのプロセッサの前段に設けられ、第1のプロセッサから第2〜第nのプロセッサに受け渡される入力データを格納する第2〜第nのFIFO回路と、第2〜第nのプロセッサの後段に設けられ、第2〜第nのプロセッサの出力データを格納する第n+1〜第2n−1のFIFO回路と、第n+1のプロセッサの後段に設けられ、第n+1のプロセッサの出力データを格納する第2nのFIFO回路とを備えているというものである。
【0017】
本発明中、第5の発明のマルチプロセッサシステムは、第4の発明のマルチプロセッサシステムにおいて、第n+1〜第2n−1のFIFO回路は、ライトポインタと、第1、第2のリードポインタとを有し、ライトポインタは、前段のプロセッサに割り当てられ、第1のリードポインタは、第n+1のプロセッサに割り当てられ、第2のリードポインタは、出力データ転送手段に割り当てられているというものである。
【0018】
本発明中、第6の発明のマルチプロセッサシステムは、第5の発明のマルチプロセッサシステムにおいて、第1〜第n+1のプロセッサは、前段のFIFO回路のカウンタを更新する命令と、前段のFIFO回路がエンプティのときは、後続する命令を停止する命令と、後段のFIFO回路のカウンタを更新する命令と、後段のFIFO回路がフルのときは、後続する命令の実行を停止する命令とを有しているというものである。
【0019】
本発明中、第7の発明のマルチプロセッサシステムは、第3、第4、第5又は第6の発明のマルチプロセッサシステムにおいて、出力データ転送手段は、DMA(Direct Memory Access)コントローラであるというものである。
【0020】
【発明の実施の形態】
以下、図1〜図5を参照して、本発明の第1実施形態及び第2実施形態について説明する。
【0021】
第1実施形態・・図1
図1は本発明の第1実施形態の要部を示すブロック回路図である。図1中、7はデータ入力端子とデータ出力端子とを有し、入力ポートを介して逐次入力されるパケット形式の入力データに含まれるコマンドをデコードして受け渡し先を判断し、各入力データを所定の受け渡し先(この例では、後述するデータメモリ9及びプロセッサ10〜13のいずれか)に受け渡すようにプログラミングされたプロセッサである。
【0022】
また、8は入力データの受け渡しのためにプロセッサ7によって専用される専用バス、9はデータメモリであり、プロセッサ7は、入力データが所定のデータ(この例では、後述するプロセッサ10〜13がプロセッサ7から受け渡される入力データの処理のために参照すべきデータ)の場合には、入力データをデータメモリ9に受け渡すようにプログラミングされている。
【0023】
また、10〜13はデータ入力端子とデータ出力端子とを有し、データ入力端子を専用バス8に接続され、必要に応じて、データメモリ9に記憶されたデータを参照し、プロセッサ7から受け渡される入力データについて所定の処理を行うようにプログラミングされたプロセッサであり、これらプロセッサ10〜13は、処理結果である出力データを保持するバッファメモリを備えている。
【0024】
また、14は後述するプロセッサ15に制御され、プロセッサ10〜13のいずれかの出力データを選択するセレクタ、15はデータ入力端子とデータ出力端子とを有し、セレクタ14を制御し、プロセッサ10〜13の出力データについて所定の処理を行い、その処理結果に基づいて、プロセッサ10〜13、15の出力データのどれを出力ポートに転送するかを後述するDMAコントローラ17に指示するようにプログラミングされたプロセッサである。
【0025】
また、16は後述するDMAコントローラ17に制御され、プロセッサ10〜13、15の出力データを選択するセレクタ、17はセレクタ16を制御し、プロセッサ15から指示されたプロセッサの出力データを出力ポートに転送するDMAコントローラである。
【0026】
このように構成された本発明の第1実施形態においては、プロセッサ7は、逐次入力される入力データに含まれるコマンドをデコードして受け渡し先を判断し、各入力データをデータメモリ9又はプロセッサ10〜13のいずれかに受け渡し、プロセッサ10〜13は、プロセッサ7から入力データを受け渡されると、必要に応じて、データバッファ9に記憶されたデータを参照し、入力データについて所定の処理を行うことになる。
【0027】
そして、プロセッサ15は、プロセッサ10〜13の出力データについて所定の処理を行い、その処理結果に基づいて、プロセッサ10〜13、15の出力データのどれを出力ポートに転送するかをDMAコントローラ17に指示し、DMAコントローラ17は、プロセッサ15から指示されたプロセッサの出力データを出力ポートに転送することになる。
【0028】
ここに、本発明の第1実施形態においては、プロセッサ10〜13で命令の並列実行を行うことができるが、入力データをプロセッサ7から専用バス8を介してプロセッサ10〜13に受け渡すように構成されているので、図6に示す従来のマルチプロセッサシステムが必要としている複数のプロセッサに共有されるバスを設ける必要がなく、また、図7に示す従来のマルチプロセッサシステムが必要としているクロスバネットワークを設ける必要もない。
【0029】
この結果、図6に示す従来のマルチプロセッサシステムの場合のようなデータ転送のウエイトという事態が発生することがなくなり、また、バス権を獲得するという手順も不要となり、更に、図7に示す従来のマルチプロセッサシステムの場合のようなクロスバスイッチが競合することによるデータ転送のウエイトという事態が発生することもなくなる。
【0030】
したがって、本発明の第1実施形態によれば、データ転送に要する時間を短縮し、データ処理の高速化を図ることができ、しかも、回路の簡略化を図ることができる。
【0031】
なお、本発明の第1実施形態においては、プロセッサ10〜13、15の出力データを出力ポートに転送する出力データ転送手段として、DMAコントローラ17を設けた場合について説明したが、この代わりに、プロセッサを設けるように構成しても良い。
【0032】
第2実施形態・・図2〜図5
図2は本発明の第2実施形態の要部を示すブロック回路図であり、図2中、19は入力ポートを介して逐次入力されるパケット形式の入力データを格納するFIFO(First In First Out)回路である。
【0033】
また、20はデータ入力端子とデータ出力端子とを有し、FIFO回路19に格納された入力データに含まれるコマンドをデコードして受け渡し先を判断し、各入力データを所定の受け渡し先(この例では、後述するデータメモリ22及びプロセッサ27〜30のいずれか)に受け渡すようにプログラミングされたプロセッサである。
【0034】
また、21は入力データの受け渡しのためにプロセッサ20により専用される専用バス、22はデータメモリであり、プロセッサ20は、入力データが所定のデータ(この例では、後述するプロセッサ27〜30がプロセッサ20から受け渡される入力データの処理のために参照すべきデータ)の場合には、入力データをデータメモリ22に受け渡すようにプログラミングされている。
【0035】
また、23〜26はプロセッサ20から後述するプロセッサ27〜30に受け渡される入力データを格納するFIFO回路、27〜30はデータ入力端子とデータ出力端子とを有し、データ入力端子を専用バス21に接続され、必要に応じて、データメモリ22に記憶されたデータを参照し、FIFO回路23〜26に格納された入力データについて所定の処理を行うようにプログラミングされたプロセッサである。
【0036】
また、31〜34はプロセッサ27〜30の出力データを格納するFIFO回路、35は後述するプロセッサ36に制御され、FIFO回路31〜34に格納されているプロセッサ27〜30の出力データを選択するセレクタである。
【0037】
また、36はデータ入力端子とデータ出力端子とを有し、セレクタ35を制御し、FIFO回路31〜34に格納されているプロセッサ27〜30の出力データについて所定の処理を行い、その処理結果に基づいて、プロセッサ27〜30、36の出力データのどれを出力ポートに転送するかを後述するDMAコントローラ39に指示するようにプログラミングされたプロセッサである。
【0038】
また、37はプロセッサ36の出力データを格納するFIFO回路、38は後述するDMAコントローラ39に制御され、FIFO回路31〜34、37の出力データを選択するセレクタ、39はセレクタ38を制御し、プロセッサ36から指示されたプロセッサの出力データを出力ポートに転送するDMAコントローラである。
【0039】
図3はFIFO回路31の概念図であり、FIFO回路32〜34、37も同様に構成されている。図3中、41はメモリ部、42−0、42−1、・・・42−nはアドレス(ADD)として、0番地、1番地、・・・n番地を割り当てられたデータ格納領域である。
【0040】
また、43はライトアクセスするアドレスを指定するライトポインタ、44、45はリードアクセスするアドレスを指定するリードポインタであり、ライトポインタ43はプロセッサ27に割り当てられ、リードポインタ44はプロセッサ36に割り当てられ、リードポインタ45はDMAコントローラ39に割り当てられている。
【0041】
即ち、この例では、FIFO回路31〜34は、1個のライトポインタと、2個のリードポインタとを有し、FIFO回路31〜34のライトポインタは、それぞれ、FIFO回路31〜34に出力データのライトを行うプロセッサ27〜30に割り当てられ、FIFO回路31〜34の一方のリードポインタは、FIFO回路31〜34から出力データのリードを行うプロセッサ36に割り当てられ、FIFO回路31〜34の他方のリードポインタは、FIFO回路31〜34から出力データのリードを行うDMAコントローラ39に割り当てられている。
【0042】
このように構成された本発明の第2実施形態においては、入力ポートを介して逐次入力される入力データはFIFO回路19に格納され、プロセッサ20は、FIFO回路19から入力データをリードし、入力データに含まれるコマンドをデコードして受け渡し先を判断し、各入力データをデータメモリ22及びFIFO回路23〜26のいずれかに受け渡すことになる。
【0043】
そして、プロセッサ27〜30は、FIFO回路23〜26から入力データをリードし、必要に応じて、データメモリ22に記憶されたデータを参照し、入力データについて所定の処理を行い、出力データをFIFO回路31〜34に格納することになる。
【0044】
更に、プロセッサ36は、FIFO回路31〜34に格納されたプロセッサ27〜30の出力データについて所定の処理を行い、DMAコントローラ39に対して、プロセッサ27〜30、36の出力データのどれを出力ポートに出力するかを指示し、DMAコントローラ39は、プロセッサ36の指示に従い、FIFO回路31〜34、37に格納されているプロセッサ27〜30、36の出力データのいずれかを出力ポートに転送することになる。
【0045】
ここに、たとえば、FIFO回路31にプロセッサ27の出力データがライトされる場合には、プロセッサ27においては、ライトポインタ43にアドレス0、1、・・・nを順に指定させ、プロセッサ27の出力データをアドレス0、1、・・・nのデータ格納領域42−0、42−1、・・・42−nに順に格納させる。
【0046】
そして、プロセッサ36においては、FIFO回路31にプロセッサ27の出力データが格納されると、リードポインタ44にアドレス0、1、・・・nを順に指定させ、アドレス0、1、・・・nのデータ格納領域42−0、42−1、・・・42−nから順にプロセッサ27の出力データをリードすることになる。
【0047】
そして、たとえば、プロセッサ36からDMAコントローラ39に対してプロセッサ27の出力データを出力ポートに転送する旨の指示があると、DMAコントローラ39は、リードポインタ44にアドレス0、1、・・・nを順に指定させ、FIFO回路31のアドレス0、1、・・・nのデータ格納領域42−0、42−1、・・・42−nから順にプロセッサ27の出力データをリードし、これを出力ポートに転送することになる。
【0048】
これに対して、プロセッサ36からDMAコントローラ39に対してプロセッサ36の出力データを出力ポートに転送する旨の指示があると、DMAコントローラ39は、FIFO回路37のリードポインタにアドレス0、1、・・・nを順に指定させ、FIFO回路37のアドレス0、1、・・・nのデータ格納領域から順にプロセッサ36の出力データをリードし、これを出力ポートに転送することになる。
【0049】
このように、FIFO回路31は、入力されたデータから順に出力するというFIFO回路の機能を損なうことなく、FIFO回路に格納されたデータの再利用を行うことができるようにしたものである。FIFO回路32〜34も同様である。
【0050】
また、図4は本発明の第2実施形態におけるプログラム例を示す図であり、図4中、“SYNCff”はデータ受け渡し先のFIFO回路がフルの時には後続の命令の実行を停止する命令、“SYNCfe”はデータを受け取り元のFIFO回路がエンプティの時には後続の命令の実行を停止する命令、“FIFOup”はFIFO回路のFIFOカウンタをカウントアップする命令、“FIFOdn”はFIFO回路のFIFOカウンタをカウントダウンする命令である。
【0051】
また、“mov r0,ofifo ・・・”は、プロセッサ20のレジスタr0・・・のデータを受け渡し先のFIFO回路に受け渡す命令、“add ififo,r15 ・・・”は、FIFO回路23のデータをプロセッサ27のレジスタr15・・・に加える命令を示している。
【0052】
したがって、この例では、プロセッサ20は、データ受け渡し先のFIFO回路がフルの時は、後続の命令の実行を停止し、データ受け渡し先のFIFO回路がフルでない時は、レジスタr0、r1、r2・・・の内容を受け渡し先のFIFO回路に転送し、転送が終了した時は、転送先のFIFO回路が備えるFIFOカウンタをカウントアップするというようにプログラミングされていることになる。
【0053】
また、プロセッサ27は、データ受け取り元のFIFO回路がエンプティの時は、後続の命令の実行を停止し、データ受け取り元のFIFO回路がエンプティでない時は、FIFO回路23の内容をレジスタr15、r14、r13・・・に加え、これを終了したときは、FIFO回路23が備えるFIFOカウンタをカウントダウンするようにプログラミングされていることになる。
【0054】
また、図5は本発明の第2実施形態における動作例を示す図であり、図4に示すプログラム例に基づく動作を示している。即ち、この例では、プロセッサ20はFIFO回路23のフル解除待ちをしており、プロセッサ27でFIFO回路23のFIFOカウンタのカウントダウン命令が実行されると、プロセッサ20においてはデータ転送のウエイトが解除され、レジスタr0、r1、r2・・・の内容のFIFO回路23への転送が行われると共に、プロセッサ27においては、FIFO回路23のエンプティ解除待ちの状態となる。
【0055】
そして、プロセッサ20において、FIFO回路23のカウントアップ命令が実行されると、プロセッサ27においては、ウエイトが解除され、FIFO回路23の内容をレジスタr15、r14、r13・・・に加える命令が実行されている。
【0056】
ここに、本発明の第2実施形態においては、プロセッサ27〜30で命令の並列実行を行うことができるが、入力データをプロセッサ20から専用バス21を介してプロセッサ27〜30に受け渡すように構成されているので、図6に示す従来のマルチプロセッサシステムが必要としている複数のプロセッサに共有されるバスを設ける必要がなく、また、図7に示す従来のマルチプロセッサシステムが必要としているクロスバネットワークを設ける必要もない。
【0057】
この結果、図6に示す従来のマルチプロセッサシステムの場合のようなデータ転送のウエイトという事態が発生することがなくなり、また、バス権を獲得するという手順も不要となり、更に、図7に示す従来のマルチプロセッサシステムの場合のようなクロスバスイッチが競合することによるデータ転送のウエイトという事態が発生することもなくなる。
【0058】
したがって、本発明の第2実施形態によれば、データ転送に要する時間を短縮し、データ処理の高速化を図ることができ、しかも、回路の簡略化を図ることができる。
【0059】
また、データ受け渡し先のFIFO回路がフルの時には後続の命令の実行を停止する命令“SYNCff”と、データ受け取り元のFIFO回路がエンプティの時には後続の命令の実行を停止する命令“SYNCfe”と、FIFO回路のFIFOカウンタをカウントアップする命令“FIFOup”と、FIFO回路のFIFOカウンタをカウントダウンする命令“FIFOdn”とを備えるとしたことにより、データ転送における同期取りを容易に行うことができるという格別の効果を得ることができる。なお、FIFOフル/エンプティを条件に分岐命令を実行するようにしても良い。
【0060】
また、本発明の第2実施形態においては、プロセッサ27〜30、36の出力データを出力ポートに転送する出力データ転送手段として、DMAコントローラ39を設けた場合について説明したが、この代わりに、プロセッサを設けるように構成しても良い。
【0061】
【発明の効果】
以上のように、本発明によれば、第2〜第nのプロセッサで命令の並列実行を行うことができるが、入力データを第1のプロセッサから第2〜第nのプロセッサに受け渡すことができるように構成したことにより、図6に示す従来のマルチプロセッサシステムの場合のようなデータ転送のウエイトという事態が発生することがなくなり、また、バス権を獲得するという手順も不要となり、更に、図7に示す従来のマルチプロセッサシステムの場合のようなクロスバスイッチが競合することによるデータ転送のウエイトという事態が発生することもなくなるので、データ転送に要する時間を短縮し、データ処理の高速化を図ることができ、しかも、回路の簡略化を図ることができる。
【図面の簡単な説明】
【図1】本発明の第1実施形態の要部を示すブロック回路図である。
【図2】本発明の第2実施形態の要部を示すブロック回路図である。
【図3】本発明の第2実施形態が備えるFIFO回路の概念図である。
【図4】本発明の第2実施形態におけるプログラム例を示す図である。
【図5】本発明の第2実施形態における動作例を示す図である。
【図6】従来のマルチプロセッサシステムの一例の要部を示すブロック回路図である。
【図7】従来のマルチプロセッサシステムの他の例の要部を示すブロック回路図である。
【符号の説明】
(図1)
7、10〜13、15 プロセッサ
8 専用バス
9 データメモリ
14、16 セレクタ
17 DMAコントローラ
(図2)
19、23〜26、31〜34、37 FIFO回路
20、27〜30、36 プロセッサ
21 専用バス
22 データメモリ
35、38 セレクタ
39 DMAコントローラ

Claims (7)

  1. データ入力端子とデータ出力端子とを有し、データメモリに接続され、入力ポートを介して逐次入力される入力データの受け渡し先を判断し、各入力データを所定の受け渡し先に受け渡すようにプログラミングされる第1のプロセッサと、
    データ入力端子とデータ出力端子とを有し、前記データメモリに接続され、前記第1のプロセッサから受け渡される入力データについて所定の処理を行うようにプログラミングされる第2〜第n(但し、nは3以上の整数)のプロセッサと、
    データ入力端子とデータ出力端子とを有し、データ入力端子を前記第2〜第nのプロセッサに接続される第n+1のプロセッサと、
    前記第2〜第n+1のプロセッサの出力データのいずれかを出力ポートに転送する出力データ転送手段とを備え、
    前記第n+1のプロセッサは、前記第2〜第nのプロセッサの出力データについて所定の処理を行い、その処理結果に基づいて、前記第2〜第n+1のプロセッサの出力データのどれを前記出力ポートに転送するかを前記出力データ転送手段に指示するようにプログラミングされるものである
    ことを特徴とするマルチプロセッサシステム。
  2. 前記第1のプロセッサは、所定の入力データについては前記データメモリに受け渡すようにプログラミングされ、
    前記第2〜第nのプロセッサは、前記第1のプロセッサから受け渡された入力データについて所定の処理を行う場合、必要に応じて、前記データメモリに記憶された入力データを参照するようにプログラミングされるものである
    ことを特徴とする請求項1記載のマルチプロセッサシステム。
  3. 前記第1のプロセッサの前段に設けられ、前記入力ポートを介して逐次入力される入力データを格納する第1のFIFO回路と、
    前記第2〜第nのプロセッサの前段に設けられ、前記第1のプロセッサから前記第2〜第nのプロセッサに受け渡される入力データを格納する第2〜第nのFIFO回路と、
    前記第2〜第nのプロセッサの後段に設けられ、前記第2〜第nのプロセッサの出力データを格納する第n+1〜第2n−1のFIFO回路と、
    前記第n+1のプロセッサの後段に設けられ、前記第n+1のプロセッサの出力データを格納する第2nのFIFO回路とを備えている
    ことを特徴とする請求項1又は2記載のマルチプロセッサシステム。
  4. 前記第n+1〜第2n−1のFIFO回路は、ライトポインタと、第1、第2のリードポインタとを有し、
    前記ライトポインタは、前段のプロセッサに割り当てられ、前記第1のリードポインタは、前記第n+1のプロセッサに割り当てられ、前記第2のリードポインタは、前記出力データ転送手段に割り当てられている
    ことを特徴とする請求項3記載のマルチプロセッサシステム。
  5. 前記第1〜第n+1のプロセッサは、前段のFIFO回路のカウンタを更新する命令と、前段のFIFO回路がエンプティのときは、後続する命令を停止する命令と、後段のFIFO回路のカウンタを更新する命令と、後段のFIFO回路がフルのときは、後続する命令の実行を停止する命令とを有している
    ことを特徴とする請求項4記載のマルチプロセッサシステム。
  6. 前記出力データ転送手段は、DMAコントローラである
    ことを特徴とする請求項1〜5のいずれか一項に記載のマルチプロセッサシステム。
  7. 前記出力データ転送手段は、プロセッサである
    ことを特徴とする請求項1〜5のいずれか一項に記載のマルチプロセッサシステム。
JP23931498A 1998-08-26 1998-08-26 マルチプロセッサシステム Expired - Fee Related JP3982077B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP23931498A JP3982077B2 (ja) 1998-08-26 1998-08-26 マルチプロセッサシステム
US09/304,842 US6571301B1 (en) 1998-08-26 1999-05-05 Multi processor system and FIFO circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23931498A JP3982077B2 (ja) 1998-08-26 1998-08-26 マルチプロセッサシステム

Publications (3)

Publication Number Publication Date
JP2000067008A JP2000067008A (ja) 2000-03-03
JP2000067008A5 JP2000067008A5 (ja) 2005-11-04
JP3982077B2 true JP3982077B2 (ja) 2007-09-26

Family

ID=17042882

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23931498A Expired - Fee Related JP3982077B2 (ja) 1998-08-26 1998-08-26 マルチプロセッサシステム

Country Status (1)

Country Link
JP (1) JP3982077B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1647894A3 (en) 2004-10-12 2007-11-21 NEC Electronics Corporation Information processing apparatus with parallel DMA processes
JP5402698B2 (ja) * 2010-02-10 2014-01-29 富士通株式会社 記憶装置への情報蓄積制御方法

Also Published As

Publication number Publication date
JP2000067008A (ja) 2000-03-03

Similar Documents

Publication Publication Date Title
US5093920A (en) Programmable processing elements interconnected by a communication network including field operation unit for performing field operations
US5210828A (en) Multiprocessing system with interprocessor communications facility
JPS58151655A (ja) 情報処理装置
JPH06103494B2 (ja) ベクトル処理装置の制御方式
US7688815B2 (en) Method and system for a multi-stage interconnect switch
US6571301B1 (en) Multi processor system and FIFO circuit
JP3982077B2 (ja) マルチプロセッサシステム
JP2001067298A (ja) ハブ及びポート・アーキテクチャーを有する転送制御装置における低速ポートについての障害を防止するための書込み要求キューの使用
EP0376003A2 (en) Multiprocessing system with interprocessor communications facility
JP3726092B2 (ja) ベクトル処理装置およびベクトルロード方法
JP2853652B2 (ja) プロセッサ間通信におけるパケット送信方法およびその装置
JP3704367B2 (ja) スイッチ回路
JP3115801B2 (ja) 並列計算機システム
JP3609908B2 (ja) 計算機接続装置
JPH0340169A (ja) 多重プロセツサシステムおよび複数の処理装置を制御する方法
JP2856709B2 (ja) バス間結合システム
EP0803824B1 (en) Data processing system and method therefor
JPH056333A (ja) マルチプロセサシステム
JP2976700B2 (ja) プロセッサ間同期制御方式
JP2878160B2 (ja) 競合調停装置
JPS60105050A (ja) パイプライン制御方式
JP2663417B2 (ja) 記憶回路
JP3126129B2 (ja) プライオリティ制御装置
JPH1091589A (ja) プロセッサ間同期制御装置
JPS63196903A (ja) プログラマブルコントロ−ラ

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050805

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061205

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070202

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070612

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070625

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100713

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100713

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100713

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110713

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120713

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130713

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees