JP2000076841A - Fifo回路及びマルチプロセッサシステム - Google Patents

Fifo回路及びマルチプロセッサシステム

Info

Publication number
JP2000076841A
JP2000076841A JP10240792A JP24079298A JP2000076841A JP 2000076841 A JP2000076841 A JP 2000076841A JP 10240792 A JP10240792 A JP 10240792A JP 24079298 A JP24079298 A JP 24079298A JP 2000076841 A JP2000076841 A JP 2000076841A
Authority
JP
Japan
Prior art keywords
master
fifo
request
count
count value
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.)
Granted
Application number
JP10240792A
Other languages
English (en)
Other versions
JP4292598B2 (ja
Inventor
Makoto Nakahara
誠 中原
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 JP24079298A priority Critical patent/JP4292598B2/ja
Priority to US09/304,842 priority patent/US6571301B1/en
Publication of JP2000076841A publication Critical patent/JP2000076841A/ja
Application granted granted Critical
Publication of JP4292598B2 publication Critical patent/JP4292598B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】ライトポインタとリードポインタとを含めて構
成されるFIFO回路にに関し、FIFO回路の機能を
損なうことなく、格納したデータの再利用を容易に行う
ことができるようにする。 【解決手段】メモリ部12と、マスタM14に割り当て
られるライトポインタ14と、マスタM15、M16に
割り当てられるリードポインタ15、16と、メモリ部
12がフルとなった時は、マスタM14にFIFOフル
フラグを出力し、マスタM15にとってメモリ部12が
エンプティとなった時は、マスタM15にFIFOエン
プティフラグF15を出力し、マスタM16にとってメ
モリ部12がエンプティとなった時は、マスタM16に
FIFOエンプティフラグF16を出力するFIFOフ
ル/エンプティフラグ生成部17を設ける。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ライトアクセスす
るアドレスを指定するライトポインタと、リードアクセ
スするアドレスを指定するリードポインタとを含めて構
成されるFIFO(First In First Out)回路、及び、
マルチプロセッサシステムに関する。
【0002】マルチプロセッサシステムにおいては、各
プロセッサ間のデータ受け渡し手段としてFIFO回路
が良く使用されるが、FIFO回路の利点は、データの
受け渡しが順番通りに行われるというルールから、FI
FO回路内の状態、つまり、フル(満杯)又はエンプテ
ィ(空)の状態のみの情報でデータのライト/リードの
同期取りが可能な点にある。
【0003】また、各プロセッサ間で受け渡されるデー
タが入力データとして利用された後、再利用されないよ
うなケースでは、データを順次転送するだけでよく、F
IFO回路が使用されることが多い。その反面、受け渡
されるデータが再利用されるようなケースでは、データ
を一時的にしか保持することができないFIFO回路で
はなく、共有メモリが使用されることになる。
【0004】しかし、共有メモリ形式のシステムにおい
ては、プロセッサのアクセス競合が発生すると、自身の
データ転送とは無関係な場合であっても、データ転送を
待たされるケースもあり、ポイント・ツー・ポイントの
FIFO形式のシステムに比べ性能が劣化するという問
題をはらんでいる。そこで、従来のFIFO形式と共有
メモリ形式の中間的なデータ受け渡し手段が求められ
る。
【0005】
【従来の技術】図11は従来のFIFO回路の一例の概
念図であり、図11中、1はシフトレジスタ、2−0、
2−1、・・・2−nはそれぞれ初段目、2段目、・・
・最終段目のレジスタである。
【0006】図11に示す従来のFIFO回路において
は、順に与えられるデータD0、D1、D2・・・は、
レジスタ2−0に順に入力され、レジスタ2−0からレ
ジスタ2−nに向かって順にシフトされ、入力された順
に出力されることになる。
【0007】図12は従来のFIFO回路の他の例の概
念図であり、図12中、4はデータが格納されるメモリ
部、5−0、5−1、・・・5−nはアドレス(AD
D)を0番地、1番地、・・・n番地とするワード格納
領域である。
【0008】また、6はライトアクセスするアドレスを
指定するライトポインタ、7はリードアクセスするアド
レスを指定するリードポインタであり、ライトポインタ
6はメモリ部4にライトアクセスできるマスタに割り当
てられ、リードポインタ7はメモリ部4にリードアクセ
スできるマスタに割り当てられる。
【0009】また、8はメモリ部4がフルとなった時
は、ライトポインタ6が割り当てられたマスタにFIF
Oフルフラグを出力し、メモリ部4がエンプティとなっ
た時は、リードポインタ7が割り当てられたマスタにF
IFOエンプティフラグを出力するFIFOフル/エン
プティフラグ生成部である。
【0010】また、9はメモリ部4に格納することがで
きる最大のワード数を設定する最大ワード数設定レジス
タ、10はライトポインタ6が割り当てられたマスタか
らのカウントアップ要求及びリードポインタ7が割り当
てられたマスタからのカウントダウン要求を入力し、カ
ウント値が最大ワード数となった時は、ライトポインタ
6が割り当てられたマスタにFIFOフルフラグを出力
し、カウント値がゼロとなった時は、リードポインタ7
が割り当てられたマスタにFIFOエンプティフラグを
出力するFIFOカウンタである。
【0011】図12に示す従来のFIFO回路において
は、ライトポインタ6は、アドレス0、1、・・・nを
順に指定し、リードポインタ7は、ライトポインタ6に
遅れてアドレス0、1、・・・nを順に指定することに
なる。この結果、順に与えられるデータD0、D1、D
2・・・は、ライトポインタ6が順に指定するアドレス
0、1、・・・nに順に格納され、格納されたデータD
0、D1、D2・・・は、リードポインタ7が順に指定
するアドレス0、1、・・・nから順にリードされるこ
とになる。
【0012】
【発明が解決しようとする課題】ここに、FIFO回路
に格納されたデータD0、D1、D2・・・の再利用を
考えた場合、図11に示す従来のFIFO回路において
は、データが常に上書きされるため、データの再利用は
不可能であるが、図12に示す従来のFIFO回路の場
合には、ライトポインタがアドレスを一巡して上書きさ
れるまで、データが保存されているので、再利用の道を
残している。
【0013】しかし、図12に示す従来のFIFO回路
は、データのライト/リードをライトポインタ、リード
ポインタ及びFIFOカウンタの各1個で管理する構成
とされているため、このままでは、格納されたデータの
再利用を行うことができないという問題点があった。
【0014】本発明は、かかる点に鑑み、入力したデー
タの順に出力するというFIFO回路の機能を損なうこ
となく、格納したデータの再利用を容易に行うことがで
きるようにしたFIFO回路を提供することを第1の目
的とし、データ処理の高速化を図ることができるように
したマルチプロセッサシステムを提供することを第2の
目的とする。
【0015】
【課題を解決するための手段】本発明中、第1の発明
は、FIFO回路の発明であり、メモリ部と、第1のマ
スタに割り当てられるライトポインタと、第2〜第n+
1(但し、nは2以上の整数)のマスタに割り当てられ
る第1〜第nのリードポインタとを備えているというも
のである。
【0016】本発明中、第1の発明のFIFO回路にお
いては、第1のマスタによるライトポインタを介したア
ドレスの指定が、第2〜第n+1のマスタのうち、リー
ドアクセスを最後に行っているマスタによるリードポイ
ンタを介したアドレスの指定を追い越さないように制御
する場合には、第2〜第n+1のマスタにおいて同一の
データを利用することができる。したがって、入力した
データの順に出力するというFIFO回路の機能を損な
わずに、格納したデータの再利用を図ることができる。
【0017】本発明中、第2の発明は、第1の発明にお
いて、初期値をゼロとされ、第1のマスタからのカウン
トアップ要求によりカウント値をインクリメントし、第
2〜第n+1のマスタのうち、同一のデータについて最
後にリードアクセスを行っているマスタからのカウント
ダウン要求によりカウント値をデクリメントし、カウン
ト値が最大値となった時は、第1のマスタにFIFOフ
ルフラグを出力する第1のFIFOカウンタと、初期値
をゼロとされ、第1のマスタからのカウントアップ要求
によりカウント値をインクリメントし、第i(但し、i
=2〜n+1)のマスタからのカウントダウン要求によ
りカウント値をデクリメントし、カウント値がゼロとな
った時は、第iのマスタに第i−1のFIFOエンプテ
ィフラグを出力する第i−1のFIFOカウンタとを備
えているというものである。
【0018】本発明中、第3の発明は、第1の発明にお
いて、初期値をゼロとされ、第1のマスタからのカウン
トアップ要求によりカウント値をインクリメントし、同
一のデータについて最後にリードアクセスを行うように
設定された第n+1のマスタからのカウントダウン要求
によりカウント値をデクリメントし、カウント値が最大
値となった時は、第1のマスタにFIFOフルフラグを
発生し、カウント値がゼロとなった時は、第n+1のマ
スタに第nのFIFOエンプティフラグを出力する第1
のFIFOカウンタと、初期値をゼロとされ、第1のマ
スタからのカウントアップ要求によりカウント値をイン
クリメントし、第j(但し、j=2〜n)のマスタから
のカウントダウン要求によりカウント値をデクリメント
し、カウント値がゼロとなった時は、第jのマスタに第
j−1のFIFOエンプティフラグを生成する第j−1
のFIFOカウンタとを備えているというものである。
【0019】本発明中、第4の発明は、第1の発明にお
いて、初期値を最大値とされ、第1のマスタからのカウ
ントダウン要求によりカウント値をデクリメントし、第
2〜第n+1のマスタのうち、同一のデータについて最
後にリードアクセスを行っているマスタからのカウント
アップ要求によりカウント値をインクリメントし、カウ
ント値がゼロとなった時は、第1のマスタにFIFOフ
ルフラグを出力する第1のFIFOカウンタと、初期値
を最大値とされ、第1のマスタからのカウントダウン要
求によりカウント値をデクリメントし、第i(但し、i
=2〜n+1)のマスタからのカウントアップ要求によ
りカウント値をインクリメントし、カウント値が最大値
となった時は、第iのマスタに第i−1のFIFOエン
プティフラグを出力する第i−1のFIFOカウンタと
を備えているというものである。
【0020】本発明中、第5の発明は、第1の発明にお
いて、初期値を最大値とされ、第1のマスタからのカウ
ントダウン要求によりカウント値をデクリメントし、同
一のデータについて最後にリードアクセスを行うように
設定された第n+1のマスタからのカウントアップ要求
によりカウント値をインクリメントし、カウント値がゼ
ロとなった時は、第1のマスタにFIFOフルフラグを
発生し、カウント値が最大値となった時は、第n+1の
マスタに第nのFIFOエンプティフラグを出力する第
1のFIFOカウンタと、初期値を最大値とされ、第1
のマスタからのカウントダウン要求によりカウント値を
デクリメントし、第j(但し、j=2〜n)のマスタか
らのカウントアップ要求によりカウント値をインクリメ
ントし、カウント値が最大値となった時は、第jのマス
タに第j−1のFIFOエンプティフラグを生成する第
j−1のFIFOカウンタとを備えているというもので
ある。
【0021】本発明中、第6の発明は、第2、第3、第
4又は第5の発明において、カウントアップ要求及びカ
ウントダウン要求をワード単位で行うマスタに使用され
るものであり、メモリ部に格納することができる最大ワ
ード数を設定する最大ワード数設定手段を有し、前記最
大値は、最大ワード数設定手段に設定された最大ワード
数とされるというものである。
【0022】本発明中、第7の発明は、第2、第3、第
4又は第5の発明において、カウントアップ要求及びカ
ウントダウン要求をパケット単位で行うマスタに使用さ
れるものであり、メモリ部に格納することができる最大
パケット数を設定する最大パケット数設定手段を有し、
前記最大値は、最大パケット数設定手段に設定した最大
パケット数とされるというものである。
【0023】本発明中、第8の発明は、第1、第2、第
3、第4、第5、第6又は第7の発明において、メモリ
部のリードポートの数がnよりも少なく、第2〜第n+
1のマスタのメモリ部に対するリードアクセスを調整す
るアービタを備えているというものである。
【0024】本発明中、第9の発明は、マルチプロセッ
サシステムの発明であり、第1、第2、第3、第4、第
5、第6、第7又は第8の発明のFIFO回路を備えて
いるというものである。
【0025】本発明中、第9の発明のマルチプロセッサ
システムにおいては、FIFO回路に格納された同一デ
ータを複数のマスタで使用することができるので、共有
メモリを設ける必要がない。したがって、データ転送の
高速化を図り、データ処理の高速化を図ることができ
る。
【0026】本発明中、第10の発明は、第9の発明に
おいて、FIFO回路として、第1〜第m(但し、mは
2以上の整数)のFIFO回路を備えると共に、第1〜
第m+n(但し、nは2以上の整数)のマスタを備え、
第k(但し、k=1〜m)のマスタは、第kのFIFO
回路のライトポインタが割り当てられ、第m+i(但
し、i=1〜n)のマスタは、第1〜第mのFIFO回
路の第iのリードポインタが割り当てられているという
ものである。
【0027】本発明中、第11の発明は、第10の発明
において、第kのマスタは、第kのFIFO回路がフル
の時は、後続する命令の実行を停止する命令を備え、第
m+iのマスタは、第kのFIFO回路が第m+iのマ
スタにとってエンプティの時は、後続する命令の実行を
停止する命令を備えているというものである。
【0028】本発明中、第12の発明は、第11の発明
において、nは2、第1〜m+1のマスタはプロセッ
サ、第m+2のマスタはDMAコントローラであり、第
m+1のマスタは、第kのFIFO回路に格納されてい
るデータについて所定の処理を行い、その処理結果に基
づいて、第kのFIFO回路に格納されている第kのマ
スタの出力データ又は第m+1のマスタの出力データの
うち、いずれの出力データを出力ポートに転送するかの
リクエストを行うようにプログラムされるというもので
ある。
【0029】
【発明の実施の形態】以下、図1〜図10を参照して、
本発明のFIFO回路の第1実施形態〜第8実施形態、
並びに、本発明のマルチプロセッサシステムの第1実施
形態及び第2実施形態について説明する。
【0030】 本発明のFIFO回路の第1実施形態・・図1 図1は本発明のFIFO回路の第1実施形態の概念図で
ある。本発明のFIFO回路の第1実施形態は、FIF
Oカウンタの更新を1ワード単位で行うものであり、図
1中、12は1個のライトポートと2個のリードポート
とを有するメモリ部、13−0、13−1、・・・13
−nは、それぞれ、アドレスを0番地、1番地、・・・
n番地とするワード格納領域である。
【0031】また、14はライトアクセスするアドレス
を指定するライトポインタ、15、16はリードアクセ
スするアドレスを指定するリードポインタであり、ライ
トポインタ14はメモリ部12にライトアクセスできる
マスタM14(図示せず)に割り当てられ、リードポイ
ンタ15、16は、それぞれ、メモリ部12にリードア
クセスできるマスタM15、M16(図示せず)に割り
当てられる。
【0032】また、17はメモリ部12がフルとなった
時は、ライトポインタが割り当てられたマスタM14に
FIFOフルフラグを出力し、リードポインタ15が割
り当てられたマスタM15にとってメモリ部12がエン
プティとなった時は、リードポインタ15が割り当てら
れたマスタM15にFIFOエンプティフラグF15を
出力し、リードポインタ16が割り当てられたマスタM
16にとってメモリ部12がエンプティとなった時は、
リードポインタ16が割り当てられたマスタM16にF
IFOエンプティフラグF16を出力するFIFOフル
/エンプティフラグ生成部である。
【0033】また、18はメモリ部12に格納すること
ができる最大ワード数を設定する最大ワード数設定手段
をなす最大ワード数設定レジスタ、19は初期値をゼロ
とされ、ライトポインタ14が割り当てられたマスタM
14からのカウントアップ要求及びリードポインタ1
5、16が割り当てられたマスタM15、M16のう
ち、同一のデータを後からリードアクセスしているマス
タからのカウントダウン要求D15又はD16を入力
し、カウント値が最大値となった時、即ち、ライトポイ
ンタ14が割り当てられたマスタM14にとってメモリ
部12がフルとなった時は、ライトポインタ14が割り
当てられたマスタM14にFIFOフルフラグを出力す
るFIFOカウンタである。
【0034】また、20は初期値をゼロとされ、ライト
ポインタ14が割り当てられたマスタM14からのカウ
ントアップ要求及びリードポインタ15が割り当てられ
たマスタM15からのカウントダウン要求D15を入力
し、カウント値がゼロとなった時、即ち、リードポイン
タ15が割り当てられたマスタM15にとってメモリ部
12がエンプティとなった時は、リードポインタ15が
割り当てられたマスタM15にFIFOエンプティフラ
グF15を出力するFIFOカウンタである。
【0035】また、21は初期値をゼロとされ、ライト
ポインタ14が割り当てられたマスタM14からのカウ
ントアップ要求及びリードポインタ16が割り当てられ
たマスタM16からのカウントダウン要求D16を入力
し、カウント値がゼロとなった時、即ち、リードポイン
タ16が割り当てられたマスタM16にとってメモリ部
12がエンプティとなった時は、リードポインタ16が
割り当てられたマスタM16にFIFOエンプティフラ
グF16を出力するFIFOカウンタである。
【0036】このように構成された本発明のFIFO回
路の第1実施形態においては、ライトポインタ14が割
り当てられたマスタM14によるライトポインタ14を
介したアドレスの指定が、リードポインタ15、16が
割り当てられたマスタM15、M16のうち、同一のデ
ータを後からリードアクセスしているマスタによるリー
ドポインタを介したアドレスの指定を追い越さないよう
に制御する場合には、リードポインタ15、16が割り
当てられたマスタM15、M16において同一のデータ
を利用することができる。
【0037】したがって、本発明のFIFO回路の第1
実施形態によれば、メモリ部12に入力したデータの順
に出力するというFIFO回路の機能を損なわずに、ワ
ード単位で格納したデータの再利用を図ることができ
る。
【0038】 本発明のFIFO回路の第2実施形態・・図2 図2は本発明のFIFO回路の第2実施形態の概念図で
あり、本発明のFIFO回路の第2実施形態は、図1に
示す本発明のFIFO回路の第1実施形態が備える1個
のライトポートと2個のリードポートとを有するメモリ
部12の代わりに、1個のライトポートと1個のリード
ポートとを有するメモリ部23を設けると共に、リード
ポインタ15、16とメモリ部23との間に、リードポ
インタ15が割り当てられたマスタM15によるリード
アクセスと、リードポインタ16が割り当てられたマス
タM16によるリードアクセスとを調整するアービタ2
4を設け、その他については、本発明のFIFO回路の
第1実施形態と同様に構成したものである。
【0039】このように構成された本発明のFIFO回
路の第2実施形態においては、メモリ部23のリードポ
ート数がリードポインタ数よりも少ないが、アービタ2
4を備えているので、ライトポインタ14が割り当てら
れたマスタM14によるライトポインタ14を介したア
ドレスの指定が、リードポインタ15、16が割り当て
られたマスタM15、M16のうち、同一のデータを後
からリードアクセスしているマスタによるリードポイン
タを介したアドレスの指定を追い越さないように制御す
る場合には、リードポインタ15、16が割り当てられ
たマスタM15、M16において同一のデータを利用す
ることができる。
【0040】したがって、本発明のFIFO回路の第2
実施形態によれば、メモリ部23に入力したデータの順
に出力するというFIFO回路の機能を損なわずに、ワ
ード単位で格納したデータの再利用を図ることができ
る。
【0041】なお、本発明のFIFO回路の第1実施形
態及び第2実施形態においては、FIFOカウンタ1
9、20、21の初期値をゼロとすることを前提として
いるが、この代わりに、FIFOカウンタ19、20、
21の初期値を最大ワード数設定レジスタ18に設定し
た最大ワード数とすることもできる。
【0042】この場合、FIFOカウンタ19は、ライ
トポインタ14が割り当てられたマスタM14からのカ
ウントダウン要求及びリードポインタ15、16が割り
当てられたマスタM15、M16のうち、同一のデータ
を後からリードアクセスしているマスタからのカウント
アップ要求を入力し、カウント値がゼロとなった時、即
ち、ライトポインタ14が割り当てられたマスタM14
にとってメモリ部12又はメモリ部23がフルとなった
時は、ライトポインタ14が割り当てられたマスタM1
4にFIFOフルフラグを出力するように構成する。
【0043】また、FIFOカウンタ20は、ライトポ
インタ14が割り当てられたマスタM14からのカウン
トダウン要求及びリードポインタ15が割り当てられた
マスタM15からのカウントアップ要求を入力し、カウ
ント値が最大ワード数となった時、即ち、リードポイン
タ15が割り当てられたマスタM15にとってメモリ部
12又はメモリ部23がエンプティとなった時は、リー
ドポインタ15が割り当てられたマスタM15にFIF
OエンプティフラグF15を出力するように構成する。
【0044】また、FIFOカウンタ21は、ライトポ
インタ14が割り当てられたマスタM14からのカウン
トダウン要求及びリードポインタ16が割り当てられた
マスタM16からのカウントアップ要求を入力し、カウ
ント値が最大ワード数となった時、即ち、リードポイン
タ16が割り当てられたマスタM16にとってメモリ部
12又はメモリ部23がエンプティとなった時は、リー
ドポインタ16が割り当てられたマスタM16にFIF
OエンプティフラグF16を出力するように構成する。
【0045】 本発明のFIFO回路の第3実施形態・・図3 図3は本発明のFIFO回路の第3実施形態の概念図で
あり、本発明のFIFO回路の第3実施形態は、メモリ
部12に対するリードアクセスは、リードポインタ15
が割り当てられたマスタM15が必ず先行することを前
提とし、図1に示す本発明のFIFO回路の第1実施形
態が備えるFIFOフル/エンプティフラグ生成部17
と構成の異なるFIFOフル/エンプティフラグ生成部
26を備え、その他については、本発明のFIFO回路
の第1実施形態と同様に構成したものである。
【0046】FIFOフル/エンプティフラグ生成部2
6は、FIFOフル/エンプティフラグ生成部17が備
えるFIFOカウンタ19の代わりに、FIFOカウン
タ27を備えると共に、FIFOフル/エンプティフラ
グ生成部17が備えるFIFOカウンタ21を備えない
ようにし、その他については、FIFOフル/エンプテ
ィフラグ生成部17と同様に構成したものである。
【0047】FIFOカウンタ27は、初期値をゼロと
され、ライトポインタ14が割り当てられたマスタM1
4からのカウントアップ要求及びリードポインタ16が
割り当てられたマスタM16からのカウントダウン要求
D16を入力し、カウント値が最大ワード数となった
時、即ち、ライトポインタ14が割り当てられたマスタ
M14にとってメモリ部12がフルとなった時は、ライ
トポインタ14が割り当てられたマスタM14にFIF
Oフルフラグを出力し、カウント値がゼロとなった時、
即ち、リードポインタ16が割り当てられたマスタM1
6にとってメモリ部12がエンプティとなった時は、リ
ードポインタ16が割り当てられたマスタM16にFI
FOエンプティフラグF16を出力するものである。
【0048】このように構成された本発明のFIFO回
路の第3実施形態においては、ライトポインタ14が割
り当てられたマスタM14によるライトポインタ14を
介したアドレスの指定が、同一のデータを後からリード
アクセスするように設定されているマスタM16による
リードポインタを介したアドレスの指定を追い越さない
ように制御する場合には、リードポインタ15、16が
割り当てられたマスタM15、M16において同一のデ
ータを利用することができる。
【0049】したがって、本発明のFIFO回路の第3
実施形態によれば、メモリ部12に入力したデータの順
に出力するというFIFO回路の機能を損なわずに、ワ
ード単位で格納したデータの再利用を図ることができ
る。
【0050】 本発明のFIFO回路の第4実施形態・・図4 図4は本発明のFIFO回路の第4実施形態の概念図で
あり、本発明のFIFO回路の第4実施形態は、図3に
示す本発明のFIFO回路の第3実施形態が備える1個
のライトポートと2個のリードポートとを有するメモリ
部12の代わりに、1個のライトポートと1個のリード
ポートとを有するメモリ部23を設けると共に、リード
ポインタ15、16とメモリ部23との間に、リードポ
インタ15が割り当てられたマスタM15によるリード
アクセスと、リードポインタ16が割り当てられたマス
タM16によるリードアクセスとを調整するアービタ2
4を設け、その他については、本発明のFIFO回路の
第3実施形態と同様に構成したものである。
【0051】このように構成された本発明のFIFO回
路の第4実施形態においては、メモリ部23のリードポ
ート数がリードポインタ数よりも少ないが、アービタ2
4を備えているので、ライトポインタ14が割り当てら
れたマスタM14によるライトポインタ14を介したア
ドレスの指定が、同一のデータを後からリードアクセス
するように設定されているマスタM16によるリードポ
インタを介したアドレスの指定を追い越さないように制
御する場合には、リードポインタ15、16が割り当て
られたマスタM15、M16において同一のデータを利
用することができる。
【0052】したがって、本発明のFIFO回路の第4
実施形態によれば、メモリ部23に入力したデータの順
に出力するというFIFO回路の機能を損なわずに、ワ
ード単位で格納したデータの再利用を図ることができ
る。
【0053】なお、本発明のFIFO回路の第3実施形
態及び第4実施形態においては、FIFOカウンタ2
7、20の初期値をゼロとすることを前提としている
が、この代わりに、FIFOカウンタ27、20の初期
値を最大ワード数設定レジスタ18に設定した最大ワー
ド数とすることもできる。
【0054】この場合、FIFOカウンタ27は、ライ
トポインタ14が割り当てられたマスタM14からのカ
ウントダウン要求及びリードポインタ16が割り当てら
れたマスタM16からのカウントアップ要求を入力し、
カウント値がゼロとなった時、即ち、ライトポインタ1
4が割り当てられたマスタM14にとってメモリ部12
又はメモリ部23がフルとなった時は、ライトポインタ
14が割り当てられたマスタM14にFIFOフルフラ
グを出力し、カウント値が最大ワード数となった時、即
ち、リードポインタ16が割り当てられたマスタM16
にとってメモリ部12又はメモリ部23がエンプティと
なった時は、リードポインタ16が割り当てられたマス
タM16にFIFOエンプティフラグF16を出力する
ように構成する。
【0055】また、FIFOカウンタ20は、ライトポ
インタ14が割り当てられたマスタM14からのカウン
トダウン要求及びリードポインタ15が割り当てられた
マスタM15からのカウントアップ要求を入力し、カウ
ント値が最大ワード数となった時、即ち、リードポイン
タ15が割り当てられたマスタM15にとってメモリ部
12又はメモリ部23がエンプティとなった時は、リー
ドポインタ15が割り当てられたマスタM15にFIF
OエンプティフラグF15を出力するように構成する。
【0056】 本発明のFIFO回路の第5実施形態・・図5 図5は本発明のFIFO回路の第5実施形態の概念図で
ある。本発明のFIFO回路の第5実施形態は、FIF
Oカウンタの更新を1パケット単位で行うものであり、
図5中、29は1個のライトポートと2個のリードポー
トとを有するメモリ部、30−0、30−1、・・・3
0−nはパケット格納領域、31−0、31−1、31
−2・・・は、それぞれ、アドレスを0番地、1番地、
2番地・・・とするワード格納領域である。
【0057】また、32はライトアクセスするアドレス
を指定するライトポインタ、33、34はリードアクセ
スするアドレスを指定するリードポインタであり、ライ
トポインタ32はメモリ部29にライトアクセスできる
マスタM32(図示せず)に割り当てられ、リードポイ
ンタ33、34はそれぞれメモリ部29をリードアクセ
スできるマスタM33、M34(図示せず)に割り当て
られる。
【0058】また、35はメモリ部29がフルとなった
時は、ライトポインタが割り当てられたマスタM32に
FIFOフルフラグを出力し、リードポインタ33が割
り当てられたマスタM33にとってメモリ部29がエン
プティとなった時は、リードポインタ33が割り当てら
れたマスタM33にFIFOエンプティフラグF33を
出力し、リードポインタ34が割り当てられたマスタM
34にとってメモリ部29がエンプティとなった時は、
リードポインタ34が割り当てられたマスタM34にF
IFOエンプティフラグF34を出力するFIFOフル
/エンプティフラグ生成部である。
【0059】また、36はメモリ部29に格納すること
ができる最大パケット数を設定する最大パケット数設定
手段をなす最大パケット数設定レジスタ、37は初期値
をゼロとされ、ライトポインタ32が割り当てられたマ
スタM32からのカウントアップ要求及びリードポイン
タ33、34が割り当てられたマスタM33、M34の
うち、同一のデータを後からリードアクセスしているマ
スタからのカウントダウン要求D33又はD34を入力
し、カウント値が最大パケット数となった時、即ち、ラ
イトポインタ32が割り当てられたマスタM32にとっ
てメモリ部29がフルとなった時は、ライトポインタ3
2が割り当てられたマスタM32にFIFOフルフラグ
を出力するFIFOカウンタである。
【0060】また、38は初期値をゼロとされ、ライト
ポインタ32が割り当てられたマスタM32からのカウ
ントアップ要求及びリードポインタ33が割り当てられ
たマスタM33からのカウントダウン要求D33を入力
し、カウント値がゼロとなった時、即ち、リードポイン
タ33が割り当てられたマスタM33にとってメモリ部
29がエンプティとなった時は、リードポインタ33が
割り当てられたマスタM33にFIFOエンプティフラ
グF33を出力するFIFOカウンタである。
【0061】また、39は初期値をゼロとされ、ライト
ポインタ32が割り当てられたマスタM32からのカウ
ントアップ要求及びリードポインタ34が割り当てられ
たマスタM34からのカウントダウン要求D34を入力
し、カウント値がゼロとなった時、即ち、リードポイン
タ34が割り当てられたマスタM34にとってメモリ部
29がエンプティとなった時は、リードポインタ34が
割り当てられたマスタM34にFIFOエンプティフラ
グF34を出力するFIFOカウンタである。
【0062】このように構成された本発明のFIFO回
路の第5実施形態においては、ライトポインタ32が割
り当てられたマスタM32によるライトポインタ32を
介したアドレスの指定が、リードポインタ33、34が
割り当てられたマスタM33、M34のうち、同一のデ
ータを後からリードアクセスしているマスタによるリー
ドポインタを介したアドレスの指定を追い越さないよう
に制御する場合には、リードポインタ33、34が割り
当てられたマスタM33、M34において同一のデータ
を利用することができる。
【0063】したがって、本発明のFIFO回路の第5
実施形態によれば、メモリ部29に入力したデータの順
に出力するというFIFO回路の機能を損なわずに、パ
ケット単位で格納したデータの再利用を図ることができ
る。なお、パケット領域内のワード格納領域のリードア
クセスは、順不同で行うとしても、FIFO回路の機能
を損なうことがないので、自由に行うことができる。
【0064】 本発明のFIFO回路の第6実施形態・・図6 図6は本発明のFIFO回路の第6実施形態の概念図で
あり、本発明のFIFO回路の第6実施形態は、図5に
示す本発明のFIFO回路の第5実施形態が備える1個
のライトポートと2個のリードポートとを有するメモリ
部29の代わりに、1個のライトポートと1個のリード
ポートとを有するメモリ部41を設けると共に、リード
ポインタ33、34とメモリ部41との間に、リードポ
インタ33が割り当てられたマスタM33によるリード
アクセスと、リードポインタ34が割り当てられたマス
タM34によるリードアクセスとを調整するアービタ4
2を設け、その他については、本発明のFIFO回路の
第5実施形態と同様に構成したものである。
【0065】このように構成された本発明のFIFO回
路の第6実施形態においては、メモリ部41のリードポ
ート数がリードポインタ数よりも少ないが、アービタ4
2を備えているので、ライトポインタ32が割り当てら
れたマスタM32によるライトポインタ32を介したア
ドレスの指定が、リードポインタ33、34が割り当て
られたマスタM33、M34のうち、同一のデータを後
からリードアクセスしているマスタによるリードポイン
タを介したアドレスの指定を追い越さないように制御す
る場合には、リードポインタ33、34が割り当てられ
たマスタM33、M34において同一のデータを利用す
ることができる。
【0066】したがって、本発明のFIFO回路の第6
実施形態によれば、メモリ部41に入力したデータの順
に出力するというFIFO回路の機能を損なわずに、パ
ケット単位で格納したデータの再利用を図ることができ
る。なお、パケット領域内のワード格納領域のリードア
クセスは、順不同で行うとしても、FIFO回路の機能
を損なうことがないので、自由に行うことができる。
【0067】また、本発明のFIFO回路の第5実施形
態及び第6実施形態においては、FIFOカウンタ3
7、38、39の初期値をゼロとすることを前提として
いるが、この代わりに、FIFOカウンタ37、38、
39の初期値を最大パケット数設定レジスタ36に設定
した最大パケット数とすることもできる。
【0068】この場合、FIFOカウンタ37は、ライ
トポインタ32が割り当てられたマスタM32からのカ
ウントダウン要求及びリードポインタ33、34が割り
当てられたマスタM33、M34のうち、同一のデータ
を後からリードアクセスしているマスタからのカウント
アップ要求を入力し、カウント値がゼロとなった時、即
ち、ライトポインタ32が割り当てられたマスタM32
にとってメモリ部29又はメモリ部41がフルとなった
時は、ライトポインタ32が割り当てられたマスタM3
2にFIFOフルフラグを出力するように構成する。
【0069】また、FIFOカウンタ38は、ライトポ
インタ32が割り当てられたマスタM32からのカウン
トダウン要求及びリードポインタ34が割り当てられた
マスタM34からのカウントアップ要求を入力し、カウ
ント値が最大パケット数となった時、即ち、リードポイ
ンタ33が割り当てられたマスタM33にとってメモリ
部29又はメモリ部41がエンプティとなった時は、リ
ードポインタ33が割り当てられたマスタM33にFI
FOエンプティフラグF33を出力するように構成す
る。
【0070】また、FIFOカウンタ39は、ライトポ
インタ32が割り当てられたマスタM32からのカウン
トダウン要求及びリードポインタ34が割り当てられた
マスタM34からのカウントアップ要求を入力し、カウ
ント値が最大パケット数となった時、即ち、リードポイ
ンタ34が割り当てられたマスタM34にとってメモリ
部29又はメモリ部41がエンプティとなった時は、リ
ードポインタ34が割り当てられたマスタM34にFI
FOエンプティフラグF34を出力するように構成す
る。
【0071】 本発明のFIFO回路の第7実施形態・・図7 図7は本発明のFIFO回路の第7実施形態の概念図で
あり、本発明のFIFO回路の第7実施形態は、メモリ
部29に対するリードアクセスは、リードポインタ33
が割り当てられたマスタM33が必ず先行することを前
提とし、図5に示す本発明のFIFO回路の第5実施形
態が備えるFIFOフル/エンプティフラグ生成部35
と構成の異なるFIFOフル/エンプティフラグ生成部
44を備え、その他については、本発明のFIFO回路
の第5実施形態と同様に構成したものである。
【0072】FIFOフル/エンプティフラグ生成部4
4は、FIFOフル/エンプティフラグ生成部35が備
えるFIFOカウンタ37の代わりに、FIFOカウン
タ45を備えると共に、FIFOフル/エンプティフラ
グ生成部35が備えるFIFOカウンタ39を備えない
ようにし、その他については、FIFOフル/エンプテ
ィフラグ生成部35と同様に構成したものである。
【0073】FIFOカウンタ45は、初期値をゼロと
され、ライトポインタ32が割り当てられたマスタM3
2からのカウントアップ要求及びリードポインタ34が
割り当てられたマスタM34からのカウントダウン要求
D34を入力し、カウント値が最大パケット数となった
時、即ち、ライトポインタ32が割り当てられたマスタ
M32にとってメモリ部29がフルとなった時は、ライ
トポインタ32が割り当てられたマスタM32にFIF
Oフルフラグを出力し、カウント値がゼロとなった時、
即ち、リードポインタ34が割り当てられたマスタM3
4にとってメモリ部29がエンプティとなった時は、リ
ードポインタ34が割り当てられたマスタM34にFI
FOエンプティフラグF34を出力するものである。
【0074】このように構成された本発明のFIFO回
路の第7実施形態においては、ライトポインタ32が割
り当てられたマスタM32によるライトポインタ32を
介したアドレスの指定が、同一のデータを後からリード
アクセスするように設定されているマスタM34による
リードポインタを介したアドレスの指定を追い越さない
ように制御する場合には、リードポインタ33、34が
割り当てられたマスタM33、M34において同一のデ
ータを利用することができる。
【0075】したがって、本発明のFIFO回路の第7
実施形態によれば、メモリ部29に入力したデータの順
に出力するというFIFO回路の機能を損なわずに、パ
ケット単位で格納したデータの再利用を図ることができ
る。なお、パケット領域内のワード格納領域のリードア
クセスは、順不同で行うとしても、FIFO回路の機能
を損なうことがないので、自由に行うことができる。
【0076】 本発明のFIFO回路の第8実施形態・・図8 図8は本発明のFIFO回路の第8実施形態の概念図で
あり、本発明のFIFO回路の第8実施形態は、図7に
示す本発明のFIFO回路の第7実施形態が備える1個
のライトポートと2個のリードポートとを有するメモリ
部29の代わりに、1個のライトポートと1個のリード
ポートとを有するメモリ部41を設けると共に、リード
ポインタ33、34とメモリ部41との間に、リードポ
インタ33が割り当てられたマスタM33によるードア
クセスと、リードポインタ34が割り当てられたマスタ
M34によるリードアクセスを調整するアービタ42を
設け、その他については、本発明のFIFO回路の第7
実施形態と同様に構成したものである。
【0077】このように構成された本発明のFIFO回
路の第8実施形態においては、メモリ部41のリードポ
ート数がリードポインタ数よりも少ないが、アービタ4
2を備えているので、ライトポインタ32が割り当てら
れたマスタM32によるライトポインタ32を介したア
ドレスの指定が、同一のデータを後からリードアクセス
するように設定されたマスタM34によるリードポイン
タ34を介したアドレスの指定を追い越さないように制
御する場合には、リードポインタ33、34が割り当て
られたマスタM33、M34において同一のデータを利
用することができる。
【0078】したがって、本発明のFIFO回路の第8
実施形態によれば、メモリ部41に入力したデータの順
に出力するというFIFO回路の機能を損なわずに、パ
ケット単位で格納したデータの再利用を図ることができ
る。なお、パケット領域内のワード格納領域のリードア
クセスは、順不同で行うとしても、FIFO回路の機能
を損なうことがないので、自由に行うことができる。
【0079】また、本発明のFIFO回路の第7実施形
態及び第8実施形態においては、FIFOカウンタ4
5、38の初期値をゼロとすることを前提としている
が、この代わりに、FIFOカウンタ45、38の初期
値を最大パケット数設定レジスタ36に設定した最大パ
ケット数とすることもできる。
【0080】この場合、FIFOカウンタ45は、ライ
トポインタ32が割り当てられたマスタM32からのカ
ウントダウン要求及びリードポインタ34が割り当てら
れたマスタM34からのカウントアップ要求を入力し、
カウント値がゼロとなった時、即ち、ライトポインタ3
2が割り当てられたマスタM32にとってメモリ部29
又はメモリ部41がフルとなった時は、ライトポインタ
32が割り当てられたマスタM32にFIFOフルフラ
グを出力し、カウント値が最大パケット数となった時、
即ち、リードポインタ34が割り当てられたマスタM3
4にとってメモリ部29又はメモリ部41がエンプティ
となった時は、リードポインタ34が割り当てられたマ
スタM34にFIFOエンプティフラグF34を出力す
るように構成する。
【0081】また、FIFOカウンタ38は、ライトポ
インタ32が割り当てられたマスタM32からのカウン
トダウン要求及びリードポインタ33が割り当てられた
マスタM33からのカウントアップ要求を入力し、カウ
ント値が最大パケット数となった時、即ち、リードポイ
ンタ33が割り当てられたマスタM33にとってメモリ
部29又はメモリ部41がエンプティとなった時は、リ
ードポインタ33が割り当てられたマスタM33にFI
FOエンプティフラグF33を出力するように構成す
る。
【0082】また、本発明の第1実施形態〜第8実施形
態においては、2個のリードポインタを設けるようにし
た場合について説明したが、この代わりに、3個以上の
リードポインタを設けるようにしても良い。
【0083】本発明のマルチプロセッサシステムの第1
実施形態・・図9 図9は本発明のマルチプロセッサシステムの第1実施形
態の要部を示すブロック回路図である。図9中、47−
1、47−mはプロセッサであり、プロセッサ47−
1、47−mの間に存在するプロセッサ47−2〜47
−(m−1)は図示を省略している。これらプロセッサ
47−1〜47−mは、命令の並列実行を行うものであ
る。
【0084】また、48−1、48−mは、それぞれ、
プロセッサ47−1、47−mの出力データが格納され
るFIFO回路であり、プロセッサ47−2〜47−
(m−1)の出力データを格納するFIFO回路48−
2〜48−(m−1)は図示を省略している。
【0085】なお、本発明のマルチプロセッサシステム
の第1実施形態においては、FIFO回路48−1〜4
8−mとして、本発明のFIFO回路の第1実施形態、
第3実施形態、第5実施形態又は第7実施形態が使用さ
れる。
【0086】また、49−1、49−2はFIFO回路
48−1〜48−mに格納されたプロセッサ47−1〜
47−mの出力データについて所定の処理を行うプロセ
ッサである。
【0087】また、50−1、50−mはプロセッサ4
9−1、49−2から出力されるアドレス Address_1
1、Address_12を選択してFIFO回路48−1、48
−mに出力するセレクタ、51−1、51−2はFIF
O回路48−1〜48−mの出力を選択してプロセッサ
49−1、49−2に出力するセレクタである。
【0088】また、Write_1、Address_1、Data_1はプロ
セッサ47−1からFIFO回路48−1に与えられる
ライト制御信号、アドレス、データであり、FIFO Full_
1はFIFO回路48−1からプロセッサ47−1に出
力されるFIFOフルフラグである。
【0089】また、Read_11はプロセッサ49−1から
FIFO回路48−1に与えられるリード制御信号、FI
FO Empty_11はFIFO回路48−1からプロセッサ4
9−1に出力されるFIFOエンプティフラグである。
【0090】また、Read_12はプロセッサ49−2から
FIFO回路48−1に与えられるリード制御信号、FI
FO Empty_12はFIFO回路48−1からプロセッサ4
9−2に出力されるFIFOエンプティフラグである。
【0091】また、Write_m、Adress_m、Data_mはプロ
セッサ47−mからFIFO回路48−mに与えられる
ライト制御信号、アドレス、データであり、FIFO Full_
mはFIFO回路48−mからプロセッサ47−mに出
力されるFIFOフルフラグである。
【0092】また、Read_m1はプロセッサ49−1から
FIFO回路48−mに与えられるリード制御信号であ
り、FIFO Empty_m1はFIFO回路48−mからプロセ
ッサ49−1に出力されるFIFOエンプティフラグで
ある。
【0093】また、Read_m2はプロセッサ49−2から
FIFO回路48−mに与えられるリード制御信号であ
り、FIFO Empty_m2はFIFO回路48−mからプロセ
ッサ49−2に出力されるFIFOエンプティフラグで
ある。
【0094】なお、プロセッサ47−k(但し、k=1
〜m)は、FIFO回路48−kからFIFOフルフラ
グFIFO Full_kが出力されている場合には、後続する命
令の実行を停止する命令を備えている。
【0095】また、プロセッサ49−1、49−2は、
FIFO回路48−k(k=1、2、・・・m)からF
IFOエンプティフラグが出力されている場合には、後
続する命令の実行を停止する命令を備えている。
【0096】このように構成された本発明のマルチプロ
セッサシステムの第1実施形態においては、たとえば、
プロセッサ47−1は、FIFO回路48−1からFI
FOフルフラグFIFO Full_1が出力されていない場合に
は、命令を実行して、ライト制御信号Write_1、アドレ
スAddress_1及び出力データData_1をFIFO回路48
−1に転送する。
【0097】そして、FIFO回路48−1がフルとな
った時は、FIFO回路48−1からプロセッサ47−
1にFIFOフルフラグFIFO Full_1が出力され、この
場合には、プロセッサ47−1は、後続する命令の実行
を停止し、FIFOフルフラグFIFO Full_1の解除を待
つことになる。
【0098】また、プロセッサ49−1は、FIFO回
路48−1からFIFOエンプティフラグFIFO Empty_1
1が出力されていない場合において、FIFO回路48
−1に格納されたプロセッサ47−1の出力データを利
用する場合には、リード制御信号Read_11及びアドレスA
ddress_11をFIFO回路48−1に転送し、FIFO
回路48−1からデータをリードする。
【0099】そして、FIFO回路48−1がエンプテ
ィとなった時は、FIFO回路48−1からプロセッサ
49−1にFIFOエンプティフラグFIFO Empty_11が出
力され、この場合には、プロセッサ49−1は、後続す
る命令の実行を停止し、FIFOエンプティフラグ FIF
O Empty_11 の解除を待つことになる。
【0100】他方、プロセッサ49−2は、FIFO回
路48−1に格納されているプロセッサ49−1が利用
したプロセッサ47−1の出力データを再利用する場合
には、リード制御信号Read_12及びアドレスAddress_12
をFIFO回路48−1に転送し、FIFO回路48−
1からデータをリードする。
【0101】そして、FIFO回路48−1がエンプテ
ィとなった時は、FIFO回路48−1からプロセッサ
49−2にFIFOエンプティフラグFIFO Empty_12が出
力され、この場合には、プロセッサ49−2は、後続す
る命令の実行を停止し、FIFOエンプティフラグ FIF
O Empty_12の解除を待つことになる。
【0102】なお、プロセッサ49−2がFIFO回路
48−1からのリードを先行して行う場合にも、FIF
O48−1に格納されたプロセッサ47−1の出力デー
タのプロセッサ49−1による再利用は可能であり、以
上のことは、他のFIFO回路48−2〜48−mとの
関係においても同様である。
【0103】このように、本発明のマルチプロセッサシ
ステムの第1実施形態によれば、FIFO回路48−1
〜48−mとして、本発明のFIFO回路の第1実施形
態、第3実施形態、第5実施形態又は第7実施形態を使
用するとしたことにより、FIFO回路48−1〜48
−mのそれぞれに格納されたデータをプロセッサ49−
1、49−2で利用することができるので、同一のデー
タをプロセッサ49−1、49−2で使用する必要があ
る場合においても、共有メモリを備える必要がなく、そ
の結果、データ転送の高速化を図り、データ処理の高速
化を図ることができる。
【0104】本発明のマルチプロセッサシステムの第2
実施形態・・図10 図10は本発明のマルチプロセッサシステムの第2実施
形態の要部を示すブロック回路図であり、本発明のマル
チプロセッサシステムの第2実施形態は、本発明のマル
チプロセッサシステムの第1実施形態が備えるプロセッ
サ49−2及びセレクタ51−2の代わりに、DMAコ
ントローラ53及びセレクタ54を設け、その他につい
ては、本発明のマルチプロセッサシステムの第1実施形
態と同様に構成したものである。
【0105】なお、セレクタ54は、FIFO回路48
−1〜48−m及びプロセッサ49−1のデータ出力端
子のうち、DMAコントローラ53が指示するデータ出
力端子を選択するためのものである。
【0106】また、RequestはFIFO回路48−1〜
48−mが格納するプロセッサ47−1〜47−mの出
力データ及びプロセッサ49−1の出力データのうち、
いずれの出力データを出力ポートに転送するかをリクエ
ストするリクエスト信号であり、Acknowledgeはリクエ
スト信号Requestを認識した旨のアクノリッジ信号であ
る。
【0107】なお、本発明のマルチプロセッサシステム
においては、FIFO回路48−1〜48−mとして、
本発明のFIFO回路の第2実施形態、第4実施形態、
第6実施形態又は第8実施形態が使用される。
【0108】このように構成された本発明のマルチプロ
セッサシステムにおいては、プロセッサ49−1は、F
IFO回路48−kに格納されたプロセッサ47−kの
出力データについて所定の処理を行い、その処理結果に
基づいて、DMAコントローラ53に対して、FIFO
回路48−kに格納されているプロセッサ47−kの出
力データ及びプロセッサ49−1の出力データのうち、
いずれの出力データを出力ポートに転送するかをDMA
コントローラ53にリクエストし、DMAコントローラ
53は、プロセッサ49−1がリクエストした出力デー
タを出力ポートに転送することになる。
【0109】このように、本発明のマルチプロセッサシ
ステムの第2実施形態によれば、FIFO回路48−1
〜48−mとして、本発明のFIFO回路の第2実施形
態、第4実施形態、第6実施形態又は第8実施形態を使
用するとしたことにより、プロセッサ49−1で使用さ
れたプロセッサ47−1〜47−mの出力データをDM
Aコントローラ53が再利用する必要がある場合におい
ても、共有メモリを備える必要がないので、データ転送
の高速化を図り、データ処理の高速化を図ることができ
る。
【0110】
【発明の効果】以上のように、本発明のFIFO回路に
よれば、複数のリードポインタを備えるとしたことによ
り、入力したデータの順に出力するというFIFO回路
の機能を損なわずに、格納されたデータの再利用を図る
ことができる。
【0111】また、本発明のマルチプロセッサシステム
によれば、本発明のFIFO回路を備えるとしたことに
より、FIFO回路に格納された同一データを複数のマ
スタで使用することができるので、同一のデータを複数
のマスタで使用する必要がある場合においても、共有メ
モリを設ける必要がなく、この結果、データの転送の高
速化を図り、データ処理の高速化を図ることができる。
【図面の簡単な説明】
【図1】本発明のFIFO回路の第1実施形態の概念図
である。
【図2】本発明のFIFO回路の第2実施形態の概念図
である。
【図3】本発明のFIFO回路の第3実施形態の概念図
である。
【図4】本発明のFIFO回路の第4実施形態の概念図
である。
【図5】本発明のFIFO回路の第5実施形態の概念図
である。
【図6】本発明のFIFO回路の第6実施形態の概念図
である。
【図7】本発明のFIFO回路の第7実施形態の概念図
である。
【図8】本発明のFIFO回路の第8実施形態の概念図
である。
【図9】本発明のマルチプロセッサシステムの第1実施
形態の要部を示すブロック回路図である。
【図10】本発明のマルチプロセッサシステムの第2実
施形態の要部を示すブロック回路図である。
【図11】従来のFIFO回路の一例の概念図である。
【図12】従来のFIFO回路の他の例の概念図であ
る。
【符号の説明】
(図1〜図4) 13−0、13−1、13−2、13−n ワード格納
領域 (図5〜図8) 30−0、30−1 パケット格納領域 31−0、31−1、31−2 ワード格納領域

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】メモリ部と、 第1のマスタに割り当てられるライトポインタと、 第2〜第n+1(但し、nは2以上の整数)のマスタに
    割り当てられる第1〜第nのリードポインタとを備えて
    いることを特徴とするFIFO回路。
  2. 【請求項2】初期値をゼロとされ、前記第1のマスタか
    らのカウントアップ要求によりカウント値をインクリメ
    ントし、前記第2〜第n+1のマスタのうち、同一のデ
    ータについて最後にリードアクセスを行っているマスタ
    からのカウントダウン要求によりカウント値をデクリメ
    ントし、カウント値が最大値となった時は、前記第1の
    マスタにFIFOフルフラグを出力する第1のFIFO
    カウンタと、 初期値をゼロとされ、前記第1のマスタからのカウント
    アップ要求によりカウント値をインクリメントし、前記
    第i(但し、i=2〜n+1)のマスタからのカウント
    ダウン要求によりカウント値をデクリメントし、カウン
    ト値がゼロとなった時は、前記第iのマスタに第i−1
    のFIFOエンプティフラグを出力する第i−1のFI
    FOカウンタとを備えていることを特徴とする請求項1
    記載のFIFO回路。
  3. 【請求項3】初期値をゼロとされ、前記第1のマスタか
    らのカウントアップ要求によりカウント値をインクリメ
    ントし、同一のデータについて最後にリードアクセスを
    行うように設定された第n+1のマスタからのカウント
    ダウン要求によりカウント値をデクリメントし、カウン
    ト値が最大値となった時は、前記第1のマスタにFIF
    Oフルフラグを発生し、カウント値がゼロとなった時
    は、前記第n+1のマスタに第nのFIFOエンプティ
    フラグを出力する第1のFIFOカウンタと、 初期値をゼロとされ、前記第1のマスタからのカウント
    アップ要求によりカウント値をインクリメントし、前記
    第j(但し、j=2〜n)のマスタからのカウントダウ
    ン要求によりカウント値をデクリメントし、カウント値
    がゼロとなった時は、前記第jのマスタに第j−1のF
    IFOエンプティフラグを生成する第j−1のFIFO
    カウンタとを備えていることを特徴とする請求項1記載
    のFIFO回路。
  4. 【請求項4】初期値を最大値とされ、前記第1のマスタ
    からのカウントダウン要求によりカウント値をデクリメ
    ントし、前記第2〜第n+1のマスタのうち、同一のデ
    ータについて最後にリードアクセスを行っているマスタ
    からのカウントアップ要求によりカウント値をインクリ
    メントし、カウント値がゼロとなった時は、前記第1の
    マスタにFIFOフルフラグを出力する第1のFIFO
    カウンタと、 初期値を最大値とされ、前記第1のマスタからのカウン
    トダウン要求によりカウント値をデクリメントし、前記
    第i(但し、i=2〜n+1)のマスタからのカウント
    アップ要求によりカウント値をインクリメントし、カウ
    ント値が最大値となった時は、前記第iのマスタに第i
    −1のFIFOエンプティフラグを出力する第i−1の
    FIFOカウンタとを備えていることを特徴とする請求
    項1記載のFIFO回路。
  5. 【請求項5】初期値を最大値とされ、前記第1のマスタ
    からのカウントダウン要求によりカウント値をデクリメ
    ントし、同一のデータについて最後にリードアクセスを
    行うように設定された第n+1のマスタからのカウント
    アップ要求によりカウント値をインクリメントし、カウ
    ント値がゼロとなった時は、前記第1のマスタにFIF
    Oフルフラグを発生し、カウント値が最大値となった時
    は、前記第n+1のマスタに第nのFIFOエンプティ
    フラグを出力する第1のFIFOカウンタと、 初期値を最大値とされ、前記第1のマスタからのカウン
    トダウン要求によりカウント値をデクリメントし、前記
    第j(但し、j=2〜n)のマスタからのカウントアッ
    プ要求によりカウント値をインクリメントし、カウント
    値が最大値となった時は、前記第jのマスタに第j−1
    のFIFOエンプティフラグを生成する第j−1のFI
    FOカウンタとを備えていることを特徴とする請求項1
    記載のFIFO回路。
  6. 【請求項6】前記カウントアップ要求及び前記カウント
    ダウン要求をワード単位で行うマスタに使用されるもの
    であり、 前記メモリ部に格納することができる最大ワード数を設
    定する最大ワード数設定手段を有し、 前記最大値は、前記最大ワード数設定手段に設定された
    最大ワード数とされることを特徴とする請求項2、3、
    4又は5記載のFIFO回路。
  7. 【請求項7】前記カウントアップ要求及び前記カウント
    ダウン要求をパケット単位で行うマスタに使用されるも
    のであり、 前記メモリ部に格納することができる最大パケット数を
    設定する最大パケット数設定手段を有し、 前記最大値は、前記最大パケット数設定手段に設定した
    最大パケット数とされることを特徴とする請求項2、
    3、4又は5記載のFIFO回路。
  8. 【請求項8】前記メモリ部のリードポートの数が前記n
    よりも少なく、 前記第2〜第n+1のマスタの前記メモリ部に対するリ
    ードアクセスを調整するアービタを備えていることを特
    徴とする請求項1、2、3、4、5、6又は7記載のF
    IFO回路。
  9. 【請求項9】請求項1、2、3、4、5、6、7又は8
    記載のFIFO回路を備えていることを特徴とするマル
    チプロセッサシステム。
  10. 【請求項10】前記FIFO回路として、第1〜第m
    (但し、mは2以上の整数)のFIFO回路を備えると
    共に、第1〜第m+n(但し、nは2以上の整数)のマ
    スタを備え、 第k(但し、k=1〜m)のマスタは、第kのFIFO
    回路のライトポインタが割り当てられ、 第m+i(但し、i=1〜n)のマスタは、前記第1〜
    第mのFIFO回路の第iのリードポインタが割り当て
    られていることを特徴とする請求項9記載のマルチプロ
    セッサシステム。
  11. 【請求項11】第kのマスタは、第kのFIFO回路が
    フルの時は、後続する命令の実行を停止する命令を備
    え、 前記第m+iのマスタは、第kのFIFO回路が前記第
    m+iのマスタにとってエンプティの時は、後続する命
    令の実行を停止する命令を備えていることを特徴とする
    請求項10記載のマルチプロセッサシステム。
  12. 【請求項12】前記nは2、前記第1〜m+1のマスタ
    はプロセッサ、前記第m+2のマスタはDMAコントロ
    ーラであり、 前記第m+1のマスタは、第kのFIFO回路に格納さ
    れているデータについて所定の処理を行い、その処理結
    果に基づいて、第kのFIFO回路に格納されている第
    kのマスタの出力データ又は前記第m+1のマスタの出
    力データのうち、いずれの出力データを出力ポートに転
    送するかのリクエストを行うようにプログラムされるこ
    とを特徴とする請求項11記載のマルチプロセッサシス
    テム。
JP24079298A 1998-08-26 1998-08-26 Fifo回路及びマルチプロセッサシステム Expired - Fee Related JP4292598B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP24079298A JP4292598B2 (ja) 1998-08-26 1998-08-26 Fifo回路及びマルチプロセッサシステム
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
JP24079298A JP4292598B2 (ja) 1998-08-26 1998-08-26 Fifo回路及びマルチプロセッサシステム

Publications (2)

Publication Number Publication Date
JP2000076841A true JP2000076841A (ja) 2000-03-14
JP4292598B2 JP4292598B2 (ja) 2009-07-08

Family

ID=17064766

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24079298A Expired - Fee Related JP4292598B2 (ja) 1998-08-26 1998-08-26 Fifo回路及びマルチプロセッサシステム

Country Status (1)

Country Link
JP (1) JP4292598B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006012235A (ja) * 2004-06-23 2006-01-12 Fuji Xerox Co Ltd 記憶装置
US9727504B2 (en) 2012-02-29 2017-08-08 Mitsubishi Electric Corporation Data transfer apparatus, data transfer method, and data transfer program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006012235A (ja) * 2004-06-23 2006-01-12 Fuji Xerox Co Ltd 記憶装置
JP4517741B2 (ja) * 2004-06-23 2010-08-04 富士ゼロックス株式会社 記憶装置
US9727504B2 (en) 2012-02-29 2017-08-08 Mitsubishi Electric Corporation Data transfer apparatus, data transfer method, and data transfer program

Also Published As

Publication number Publication date
JP4292598B2 (ja) 2009-07-08

Similar Documents

Publication Publication Date Title
US5627968A (en) Data transfer apparatus which allows data to be transferred between data devices without accessing a shared memory
JP2591502B2 (ja) 情報処理システムおよびそのバス調停方式
US8478946B2 (en) Method and system for local data sharing
JP2000076841A (ja) Fifo回路及びマルチプロセッサシステム
JP3505728B2 (ja) 記憶制御装置
JP2636088B2 (ja) 情報処理装置
KR920002830B1 (ko) 다이렉트 메모리 액세스 제어장치
US20080209085A1 (en) Semiconductor device and dma transfer method
JP2731768B2 (ja) メモリ制御装置
JP3357243B2 (ja) 画像処理装置における設定データ変更装置
KR970008189B1 (ko) 메모리 공간 제어방법 및 메모리 장치
JPS6120906B2 (ja)
JPH0330175B2 (ja)
JP3526773B2 (ja) マルチプロセッサ装置およびその制御方法
JP2621793B2 (ja) バスサイクルのマルチプレクス方式
US20050060475A1 (en) Data transfer apparatus and data transfer method
JPS6031647A (ja) デ−タ処理装置
JPH1185673A (ja) 共有バスの制御方法とその装置
JP2509524B2 (ja) 記憶ロック方式
JPS6391756A (ja) 記憶装置の部分書き込み命令処理方式
JPH02173844A (ja) 記憶制御方式
JP2000067008A (ja) マルチプロセッサシステム
JPH02294867A (ja) マルチプロセッサシステム
JPH04326439A (ja) キャッシュフラッシュ制御装置
JPH03152657A (ja) マルチプロセッサシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050816

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080909

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081110

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: 20090317

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090330

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

Free format text: PAYMENT UNTIL: 20120417

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120417

Year of fee payment: 3

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: 20120417

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: 20130417

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130417

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140417

Year of fee payment: 5

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