JP2000047994A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JP2000047994A
JP2000047994A JP10210729A JP21072998A JP2000047994A JP 2000047994 A JP2000047994 A JP 2000047994A JP 10210729 A JP10210729 A JP 10210729A JP 21072998 A JP21072998 A JP 21072998A JP 2000047994 A JP2000047994 A JP 2000047994A
Authority
JP
Japan
Prior art keywords
signal
bus
processor module
processor
memory
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.)
Withdrawn
Application number
JP10210729A
Other languages
English (en)
Inventor
Akio Shinohara
昭夫 篠原
Hideo Abe
秀朗 阿部
Katsuichi Ohara
克一 大原
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 JP10210729A priority Critical patent/JP2000047994A/ja
Priority to US09/268,426 priority patent/US6321284B1/en
Publication of JP2000047994A publication Critical patent/JP2000047994A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory

Abstract

(57)【要約】 【課題】 1以上のプロセッサモジュールを有する情報
処理装置の処理速度を向上させる。 【解決手段】 プロセッサモジュール10−1,10−
2がメモリ12−1〜12−3または制御モジュール1
3にアクセスする場合には、バス調停処理部14に対し
てバスの使用を要求する。例えば、プロセッサモジュー
ル10−1がメモリ12−1を、また、プロセッサモジ
ュール10−2がメモリ12−2にアクセスしようとす
る場合には、バス調停処理部14は、メモリ12−1と
メモリ12−2が接続されているバス11−1,11−
2が未使用であることを確認し、プロセッサモジュール
10−1,10−2に対してバスの使用を許可する。そ
の結果、プロセッサモジュール10−1,10−2は、
バス11−1,11−2を占有し、これらに接続されて
いるメモリ12−1,12−2に対してアクセスするこ
とができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は情報処理装置に関
し、特に、1以上のプロセッサモジュールを有する情報
処理装置に関する。
【0002】
【従来の技術】複数のプロセッサモジュール(例えば、
CPU(Central Processing Unit )等からなるモジュ
ール)を有する情報処理装置は、その方式によって大き
く2つに分類される。
【0003】1つは、複数のプロセッサモジュールがメ
モリを共有して情報を交換する「対称型」であり、もう
1つは、複数のプロセッサモジュールがそれぞれ個別の
メモリを有する「非対称型」である。現在では、前者の
対称型が主流である。
【0004】
【発明が解決しようとする課題】ところで、対称型で
は、複数のプロセッサモジュールが1つのバスに接続さ
れていることから、2以上のプロセッサモジュールが同
時にバスを占有することができない。従って、各プロセ
ッサモジュールは、限られた時間しかバスを占有するこ
とができないため、プロセッサモジュールの数の割には
装置全体のパフォーマンスを向上させることが困難であ
るという問題点があった。
【0005】また、対称型では、複数のプロセッサモジ
ュールに対してバスの使用を割り当てるバス調停処理が
必須となる。ところで、脱着可能なプロセッサモジュー
ルが使用されている場合において、実装されているプロ
セッサモジュールが1つだけであるときにも、前述のよ
うなバス調停処理が実行されるため、この処理に必要な
時間だけ処理が遅延されるという問題点もあった。
【0006】本発明はこのような点に鑑みてなされたも
のであり、1以上のプロセッサモジュールを有する情報
処理装置において、バスの負荷を低減することにより、
装置全体のパフォーマンスを向上させた情報処理装置を
提供することを目的とする。
【0007】また、本発明は、1以上のプロセッサモジ
ュールを有する情報処理装置において、プロセッサモジ
ュールが1だけしか実装されていない場合には、バス調
停処理を停止させ、もって装置全体のパフォーマンスを
向上させることを可能とする情報処理装置を提供するこ
とを目的とする。
【0008】
【課題を解決するための手段】本発明では上記課題を解
決するために、図1に示す、1以上のプロセッサモジュ
ール10−1,10−2と、メモリ空間上の複数の領域
に対してそれぞれ実装された複数のメモリ12−1〜1
2−3と、少なくとも1以上の前記メモリに対してアク
セス可能な複数のバス11−1,11−2と、前記プロ
セッサモジュール10−1,10−2から、前記メモリ
12−1〜12−3の何れかに対するアクセスの要求が
なされた場合には、そのメモリにアクセス可能なバスが
未使用状態であることを確認し、そのバスの使用を許可
するバス調停処理部14と、を有することを特徴とする
情報処理装置が提供される。
【0009】ここで、プロセッサモジュール10−1,
10−2は、所定の演算処理を実行するとともに、装置
の各部を制御する。メモリ12−1〜12−3は、メモ
リ空間上の複数の領域に対してそれぞれ実装されてお
り、プロセッサモジュール10−1,10−2が実行す
るプログラムを格納するとともに、プロセッサモジュー
ル10−1,10−2が所定の演算処理を実行する際に
処理途中のデータやプログラムを格納する。バス11−
1,11−2は、少なくとも1以上のメモリに対してア
クセス可能である。バス調停処理部14は、プロセッサ
モジュール10−1,10−2から、メモリ12−1〜
12−3の何れかに対するアクセスの要求がなされた場
合には、そのメモリにアクセス可能なバスが未使用状態
であることを確認し、そのバスの使用を許可する。
【0010】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。図1は、本発明の情報処理装置の
動作原理を説明する原理図である。
【0011】この図において、プロセッサモジュール1
0−1,10−2は、例えば、CPU(Central Proces
sing Unit )等から構成され、装置の各部を制御すると
ともに各種演算処理を実行する。
【0012】バス11−1,11−2は、プロセッサモ
ジュール10−1,10−2と、メモリ12−1〜12
−3を接続し、これらの間でデータの授受を可能とす
る。メモリ12−1〜12−3は、ROM(Read Only
Memory)またはRAM(Random Access Memory)等によ
って構成され、プロセッサモジュール10−1,10−
2が実行する基本的なプログラムを格納するとともに、
プロセッサモジュール10−1,10−2が演算処理を
行う際に、演算途中のデータや実行中のプログラムを一
時的に格納する。
【0013】図2は、図1に示す情報処理装置のメモリ
空間の一例を示す図である。この図に示すように、メモ
リ空間(仮想的な空間)は、アドレス0000〜FFF
F(16進数)によって構成されている。このような仮
想的なアドレス空間において、アドレス0000〜40
00、6000〜A000、および、A000〜E00
0には、メモリが実装されている。即ち、アドレス00
00〜4000にはメモリ12−1が実装されている。
また、アドレス6000〜A000およびアドレスA0
00〜E000には、メモリ12−2および12−3が
それぞれ実装されている。
【0014】なお、アドレス4000〜6000、およ
び、アドレスE000〜FFFFは未実装領域である。
制御モジュール13は、制御対象のモジュールである。
なお、この制御モジュール13は、メモリ12−3の一
部の領域をI/Oポート(メモリマップドI/O)とし
て使用しており、この領域を介してプロセッサモジュー
ル10−1,10−2とデータを授受する。
【0015】バス調停処理部14は、プロセッサモジュ
ール10−1,10−2が、バス11−1,11−2の
使用権を要求した場合には、所定の規則に基づいて、バ
スの使用を許可する。
【0016】なお、バス調停処理部14は、プロセッサ
モジュール10−1,10−2をそれぞれ独立に管理し
ているので、これらのプロセッサモジュールが同時にバ
スの占有権を主張した場合においても、待ち時間なしに
調停処理を実行することができる。
【0017】次に、以上の原理図の動作について説明す
る。例えば、プロセッサモジュール10−1がメモリ1
2−1にアクセスする場合には、先ず、プロセッサモジ
ュール10−1が、メモリ12−1が接続されているバ
ス11−1の占有権をバス調停処理部14に対して要求
する。このとき、バス11−1が未使用である場合に
は、バス調停処理部14は、プロセッサモジュール10
−1に対してバス11−1の占有を許可する。
【0018】その結果、プロセッサモジュール10−1
は、バス11−1を介してメモリ12−1にアクセスす
ることが可能となる。また、プロセッサモジュール10
−2がメモリ12−2にアクセスする場合には、先ず、
プロセッサモジュール10−2が、メモリ12−2が接
続されているバス11−2の占有権をバス調停処理部1
4に対して要求する。このとき、バス11−2が未使用
である場合には、バス調停処理部14は、プロセッサモ
ジュール10−2に対してバス11−2の占有を許可す
る。
【0019】その結果、プロセッサモジュール10−2
は、バス11−2を介してメモリ12−2にアクセスす
ることが可能となる。ところで、バス調停処理部14
は、プロセッサモジュール10−1,10−2をそれぞ
れ独立に管理しているので、これらのプロセッサモジュ
ールが同時にバスの占有権を主張した場合においても、
調停処理を同時に実行することができる。
【0020】いま、例えば、プロセッサモジュール10
−1がバス11−1に対する占有権を主張した場合に、
同時に、プロセッサモジュール10−2がバス11−2
に対する占有権を主張した場合には、バス調停処理部1
4は、プロセッサモジュール10−1,10−2に対し
て即座に占有権を供与する。その結果、プロセッサモジ
ュール10−1,10−2は、ほぼ同時に(待ち時間な
しに)、メモリ12−1およびメモリ12−2(または
メモリ12−3)にそれぞれアクセスすることが可能と
なる。
【0021】なお、プロセッサモジュール10−1,1
0−2が同一のバスに対する占有権を主張した場合に
は、先に主張を行ったプロセッサモジュールに対して占
有権が供与され、その間、他のプロセッサモジュールは
待機状態となる。また、同一のバスに対して占有権の主
張が同時になされた場合には、各プロセッサモジュール
に予め付与されている優先順位に従って占有権が順次供
与される。
【0022】以上に説明したように、本発明によれば、
1以上のプロセッサモジュールと、メモリ空間上の複数
の領域に対してそれぞれ実装された複数のメモリと、少
なくとも1以上のメモリに対してアクセス可能な複数の
バスを設け、各プロセッサモジュールからメモリへのア
クセス要求がなされた場合には、バス調停処理部が、そ
のメモリにアクセス可能なバスが未使用状態であること
を確認したうえで、メモリへのアクセスを許可するよう
にしたので、バスの負荷を分散させることが可能とな
り、その結果、装置全体の処理のパフォーマンスを向上
させることが可能となる。
【0023】次に、図3を参照して本発明の実施の形態
の構成例について説明する。なお、この図において、図
1の場合と対応する部分には同一の符号を付してあるの
でその部分の説明は省略する。
【0024】この図において、監視部15は、プロセッ
サモジュール10−1,10−2の実装状況(プロセッ
サモジュールが基板に装着されているか否か)を監視
し、実装されていない場合には、停止部16および実装
されている側のプロセッサモジュールに通知する。
【0025】なお、プロセッサモジュール10−1,1
0−2の実装状況を検出する方法としては、例えば、プ
ロセッサモジュール10−1,10−2が装着されるソ
ケットに対してメカニカルスイッチを具備しておく。そ
して、プロセッサモジュールが実装されている場合には
それぞれのメカニカルスイッチの状態が変化する(例え
ば、ONの状態となる)ことを利用して、実装状況を検
出するようにすればよい。
【0026】停止部16は、何れかのプロセッサモジュ
ールが実装されていない場合には、バス調停処理部14
に対してバス調停処理を停止させる。なお、プロセッサ
モジュール10−1から出力されるreq11信号は、
プロセッサモジュール10−1がバス11−1の占有権
をバス調停処理部14に要求する場合にアクティブにさ
れる。また、req12信号は、プロセッサモジュール
10−1がバス11−2の占有権をバス調停処理部14
に要求する場合にアクティブにされる。
【0027】同様に、プロセッサモジュール10−2か
ら出力されるreq21信号は、プロセッサモジュール
10−2がバス11−1の占有権をバス調停処理部14
に要求する場合にアクティブにされる。また、req2
2信号は、プロセッサモジュール10−2がバス11−
2の占有権をバス調停処理部14に要求する場合にアク
ティブにされる。
【0028】バス調停処理部14からプロセッサモジュ
ール10−1に対して出力されるgnt1信号は、re
q11信号またはreq12信号によって要求されたバ
スの占有権が認められた場合にアクティブにされる。
【0029】同様に、バス調停処理部14からプロセッ
サモジュール10−2に対して出力されるgnt2信号
は、req21信号またはreq22信号によって要求
されたバスの占有権が認められた場合にアクティブにさ
れる。
【0030】プロセッサモジュール10−1,10−2
から、バス調停処理部14に対して出力されるbusy
1信号およびbusy2信号は、それぞれバス11−1
またはバス11−2が使用中である場合にアクティブに
される。
【0031】次に、図4を参照して図3に示す実施の形
態の動作について説明する。図4は、図3に示す実施の
形態の主要部分の信号の時間的変化を示すタイミングチ
ャートである。
【0032】いま、時刻t1において、プロセッサモジ
ュール10−1が、図4(A)に示すreq11信号を
アクティブにし、バス11−1の占有権を主張したとす
る。すると、バス調停処理部14は、バス11−1が未
使用状態であり、また、プロセッサモジュール10−2
が同バスに対する要求を行っていないことから、時刻t
2において、図4(C)に示すgnt1信号をアクティ
ブにする。
【0033】その結果、プロセッサモジュール10−1
は、時刻t3において、busy1信号(図4(G))
をアクティブにした後、バス11−1を介してメモリ1
2−1にアクセスする(図4(I)参照)。
【0034】そして、プロセッサモジュール10−1が
バス11−1を占有している時刻t4において、プロセ
ッサモジュール10−2がバス11−1に対する占有権
を主張した場合には、バス調停処理部14は、プロセッ
サモジュール10−1によるバス11−1の占有が終了
するまでプロセッサモジュール10−2を待機させる。
【0035】プロセッサモジュール10−1がバス11
−1の使用を終了すると、バス調停処理部14は、時刻
t5においてgnt2信号をアクティブにする(図4
(F)参照)。その結果、プロセッサモジュール10−
2がバス11−1に対する占有権を獲得し、busy1
信号をアクティブにした後、メモリ12−1に対してア
クセスする(図4(I)参照)。
【0036】次に、時刻t7において、プロセッサモジ
ュール10−2が、図4(E)に示すreq22信号を
アクティブにし、バス11−2の占有権を主張すると、
バス調停処理部14は、バス11−2が未使用であり、
また、プロセッサモジュール10−1が同バスに対する
要求を行っていないことから、時刻t8において、図4
(F)に示すgnt2信号をアクティブにする。
【0037】その結果、プロセッサモジュール10−2
は、時刻t9において、busy2信号(図4(H))
をアクティブにした後、バス11−2を介してメモリ1
2−2(またはメモリ12−3)にアクセスする(図4
(J)参照)。
【0038】そして、プロセッサモジュール10−2が
バス11−2を占有している時刻t10において、プロ
セッサモジュール10−1がバス11−2に対する占有
権を主張した場合には、バス調停処理部14は、プロセ
ッサモジュール10−2によるバス11−2の占有が終
了するまでプロセッサモジュール10−1を待機させ
る。
【0039】プロセッサモジュール10−2がバス11
−2の使用を終了すると、バス調停処理部14は、時刻
t11においてgnt1信号をアクティブにする(図4
(C)参照)。その結果、プロセッサモジュール10−
1がバス11−2に対する占有権を獲得し、busy2
信号をアクティブにした後、メモリ12−2(またはメ
モリ12−3)に対してアクセスする(図4(J)参
照)。
【0040】続いて、時刻t13において、プロセッサ
モジュール10−1,10−2がそれぞれバス11−
2,11−1に対する占有権を同時に要求したとすると
(図4(B),(D)参照)、バス調停処理部14はこ
れらの要求がバッティングしていないことから、gnt
1信号およびgnt2信号をアクティブにし、プロセッ
サモジュール10−1,10−2に対してバスの占有権
を供与する。
【0041】その結果、時刻t15において、プロセッ
サモジュール10−1,10−2は、busy2信号お
よびbusy1信号をそれぞれアクティブにし、バス1
1−2およびバス11−1の占有権を獲得する。そし
て、プロセッサモジュール10−1は、バス11−2を
介してメモリ12−2またはメモリ12−3にアクセス
し、また、プロセッサモジュール10−2は、バス11
−1を介してメモリ12−1にアクセスする。
【0042】次に、何れかのプロセッサモジュールが取
り外され、プロセッサモジュールが1つだけになった場
合の処理について説明する。いま、プロセッサモジュー
ル10−2が取り外されたとすると、監視部15はこれ
を検出し、停止部16およびプロセッサモジュール10
−1に通知する。
【0043】その結果、停止部16はバス調停処理部1
4の調停処理を停止させる。また、プロセッサモジュー
ル10−1は、バス調停処理部14との間の処理を全て
停止する。
【0044】従って、プロセッサモジュール10−1
は、バス調停処理部14を介さずにバス11−1および
バス11−2を自由に占有してメモリ12−1〜12−
3にアクセスすることができるので、バスの取得のため
に必要な手続きを省略し、もって処理の高速化を図るこ
とが可能となる。
【0045】以上の実施の形態によれば、メモリ空間を
分割してそれぞれの空間に対してバスを具備させ、プロ
セッサモジュールのアクセスを分散させるようにしたの
で、装置全体としてのパフォーマンスを向上させること
が可能となる。
【0046】また、プロセッサモジュールが1つだけし
か実装されていない場合には、これを検出してバス調停
処理を停止させるようにしたので、装置の処理速度を向
上させることが可能となる。
【0047】次に、図5を参照して本発明の第2の実施
の形態の構成例について説明する。この実施の形態で
は、4個のプロセッサモジュール(以下では、プロセッ
サモジュール1〜4と呼ぶ)が実装され、また、4本の
バス(以下では、バス1〜4と呼ぶ)が設けられている
ものとする。
【0048】なお、図面上には、プロセッサモジュール
4のバス1に関する調停処理部のみが図示してある。そ
の他のバス2〜4に関する調停処理部の構成も図5の場
合と同様である。また、プロセッサモジュール4には、
図2に示すバス調停処理部14、監視部15、および、
停止部16が、プロセッサモジュール4に内蔵されてい
るものとする。
【0049】この図において、req生成部20は、プ
ロセッサモジュール4がバス1に対してアクセス要求を
行った場合には、req4信号をアクティブにするよう
に構成されている。なお、監視部15によって他のプロ
セッサモジュール1〜3が実装されていないことが検出
された場合には、req生成部20はその動作を停止す
る。
【0050】reqマスク部21は、4個のプロセッサ
モジュール1〜4から出力されるreq信号を入力し、
その中でFIFOメモリ23に取り込みが既に完了した
req信号、または、gnt信号発行部28によってg
nt信号が既に発行されたreq信号を、マスク信号生
成部22から供給されるマスク信号によってマスクし、
同じ信号がFIFOメモリ23に繰り返し取り込まない
ようにする。
【0051】マスク信号生成部22は、req格納有無
判定部26から出力される信号b(FIFOメモリ23
のうち、データが格納済みのアドレスを示す信号)と、
FIFOメモリ23から出力される信号g(FIFOメ
モリ23に格納されている全てのデータ)とを参照し
て、FIFOメモリ23に格納済みのreq信号をマス
クするためのマスク信号を発生する。また、マスク信号
生成部22は、gnt信号発行部28からgnt信号が
既に発行されたreq信号に対してもマスク信号を発生
する。
【0052】FIFOメモリ23は、図6に示すよう
に、1から4までのアドレスを有しており、各アドレス
には4ビットの情報が記憶可能である。reqマスク部
21から出力されたreq1信号〜req4信号は、ビ
ット1〜ビット4にそれぞれ対応され、書き込みアドレ
ス発生部24が指定するアドレスに記憶される。従っ
て、FIFOメモリ23に記憶されるデータは、アクテ
ィブであるreq信号に対応するビットが“1”にされ
ている。
【0053】また、FIFOメモリ23の全てのアドレ
スに格納されているデータは、セレクタ27およびマス
ク信号生成部22に供給される。書き込みアドレス発生
部24は、FIFOメモリ23にデータを書き込む際の
書き込みアドレスを発生する。なお、書き込みアドレス
発生部24が発生するアドレスは、reqマスク部21
から出力されるreq信号が立ち上がるタイミングで1
だけインクリメントされ、5に達した場合には再び1に
循環する。従って、書き込みアドレスは1から4までを
循環する値となる。
【0054】読み出しアドレス発生部25は、セレクタ
27がgnt信号発行部28に供給するデータを選択す
るためのアドレスを発生する。なお、読み出しアドレス
発生部25が発生するアドレスは、gnt信号発行部2
8がgnt信号をアクティブにするタイミングで1だけ
インクリメントされ、5に達した場合には再び1に循環
する。従って、読み出しアドレスもまた1から4までを
循環する値となる。
【0055】req格納有無判定部26は、FIFOメ
モリ23の各アドレスに対応する4つの信号(b)をマ
スク信号生成部22に対して出力しており、データが格
納されているアドレスに対応する信号がアクティブにさ
れる。また、req格納有無判定部26は、FIFOメ
モリ23に対してデータが1つも格納されていない場合
には、その値が“0”となる判定信号(j)をgnt信
号発行部28に対して供給する。
【0056】セレクタ27は、FIFOメモリ23に格
納されているデータのうち、読み出しアドレスによって
指定されるデータを選択してgnt信号発行部28に供
給する。
【0057】gnt信号発行部28は、req格納有無
判定部26から供給される判定信号(j)が“0”の状
態である場合(FIFOメモリ23にデータが1つも格
納されていない場合)において、1つのreq信号がア
クティブにされた場合には、そのreq信号に対するg
nt信号を直ちに発行する。
【0058】また、req格納有無判定部26から供給
される判定信号(j)が“0”の状態である場合におい
て、複数のreq信号が同時にアクティブにされた場合
には、その値が最も小さいreq信号に対してのみgn
t信号を発行する。例えば、req1、req2、およ
び、req3が同時にアクティブにされた場合には、r
eq1に対してのみgnt信号(gnt1信号)が発行
される。
【0059】更に、FIFOメモリ23にデータが格納
されている場合に、セレクタ27から単一のビットがア
クティブ(“1”)にされたデータ(req1〜req
4の何れかがアクティブにされたデータ)が供給された
場合には、gnt信号発行部28は、そのビットに対応
するgnt信号を発行する。
【0060】更にまた、FIFOメモリ23にデータが
格納されている場合に、セレクタ27から複数のビット
がアクティブ(“1”)にされたデータが供給された場
合には、gnt信号発行部28は、LSB側から順にg
nt信号を発行する。
【0061】なお、gnt信号発行部28は、gnt信
号を発行する際に、gnt信号の発行の対象となってい
るreq信号がまだアクティブであるか否かを確認し、
アクティブではない場合にはgnt信号の発行を停止す
る。
【0062】セレクタ29は、監視部15によってプロ
セッサモジュール1〜3の少なくとも1つが実装されて
いることが検出された場合には、gnt信号発行部28
から出力されるgnt4信号(req4に対するgnt
信号)を選択し、それ以外の場合にはプロセッサモジュ
ール4からのアクセス要求を選択して、busy発生部
30に供給する。
【0063】busy発生部30は、セレクタ29から
供給されるgnt4信号またはアクセス要求信号がアク
ティブになった場合には、busy信号(自モジュール
(プロセッサモジュール4)のbusy信号)をアクテ
ィブにする。
【0064】論理和回路31は、busy発生部30か
ら出力されたbusy信号と他のプロセッサモジュール
1〜3から出力されたbusy信号の論理和を演算し、
得られた結果をgnt信号発行部28に供給する。
【0065】次に、以上の実施の形態の動作を図7を参
照して説明する。いま、時刻t1において、プロセッサ
モジュール1からのreq1信号(図7(a1)参照)
およびプロセッサモジュール4からのreq4信号(図
7(a4)参照)が同時にアクティブにされたとする。
なお、このとき、FIFOメモリ23にはデータは格納
されていないものとする。
【0066】すると、gnt信号発行部28は、req
格納有無判定部26から出力される判定信号(j)が
“0”であり(FIFOメモリ23が空であり)、ま
た、req1信号とreq4信号とがアクティブにされ
ていることから、その値が小さい方のreq1信号に対
するgnt1信号だけを先に発行する(図7(h1)参
照)。
【0067】gnt1信号が発行されると、図示せぬプ
ロセッサモジュール1は、busy信号(図7(i)参
照)を時刻t3においてアクティブにし、バス1(図示
せず)を占有して処理を行う。
【0068】このgnt1信号はマスク信号生成部22
にも供給されるので、マスク信号生成部22は、req
1信号に対するマスク信号(図7(c1)参照)を発生
し、reqマスク部21に供給する。その結果、req
マスク部21から出力されるreq1信号は、reqマ
スク部21に入力されるreq1信号がアクティブであ
るにも拘わらず、ノンアクティブの状態を保つ(図7
(d1)参照)。
【0069】一方、req4信号はマスクされないこと
から、req4信号に対応するビット(ビット4)のみ
がアクティブにされた信号は、FIFOメモリ23に供
給され、書き込みアドレス発生部24から供給される書
き込みアドレス(この場合は“1”:図7(e)参照)
に記憶される(図7(g1)参照)。なお、書き込みア
ドレス発生部24は、reqマスク部21から出力され
るreq4信号がノンアクティブに復元されるタイミン
グ(時刻t2)で、書き込みアドレスの値を1だけイン
クリメントする(図7(e)参照)。
【0070】このとき、読み出しアドレス発生部25か
ら出力される読み出しアドレスは“1”であるので、セ
レクタ27は、FIFOメモリ23のアドレス“1”に
格納されているデータ(req4に対応するビット4が
アクティブにされたデータ)を選択してgnt信号発行
部28に供給する。
【0071】図示せぬプロセッサモジュール1によるバ
スの占有が終了し、busy信号がノンアクティブに復
元されると、gnt信号発行部28はこれを検知し、セ
レクタ27によって選択されたデータにおいてアクティ
ブにされているビット4に対応するgnt4信号を時刻
t7においてアクティブにする。
【0072】その結果、プロセッサモジュール4が時刻
t8において、busy信号をアクティブにし、バス1
の占有を開始する。なお、gnt4信号がアクティブに
されると、読み出しアドレス発生部25が発生するアド
レスが1だけインクリメントされるので読み出しアドレ
スの値が“2”となる(図7(f)参照)。
【0073】説明が前後するが、時刻t2では、req
3信号がアクティブにされており、このとき、FIFO
メモリ23にはデータ(req4に対応するデータ)が
格納されていることから、req3信号はreqマスク
部21を介してFIFOメモリ23に供給され、FIF
Oメモリ23のアドレス2に格納される(図7(g2)
参照)。
【0074】このようにして格納されたデータは、時刻
t7においてgnt信号発行部28に供給される。gn
t信号発行部28は、プロセッサモジュール4によるバ
ス1の占有が終了するタイミング(時刻t11の直後)
において、プロセッサモジュール3に対するgnt3信
号を発行しようとするが、このとき、req3信号はノ
ンアクティブになっていることから、req3信号に対
するgnt3信号は発行されず、プロセッサモジュール
3のバス1に対するアクセスは許可されない。
【0075】また、時刻t5および時刻t10において
は、req2信号およびreq1信号がそれぞれアクテ
ィブにされており、これらに対応するgnt2信号およ
びgnt1信号は、時刻t13および時刻t16におい
てそれぞれ発行されている。その結果、プロセッサモジ
ュール2およびプロセッサモジュール1は、時刻t14
および時刻t17においてbusy信号をそれぞれアク
ティブにし、バス1を占有して処理を行う。
【0076】なお、以上のタイミングチャートには示し
ていないが、FIFOメモリ23にデータが格納されて
いる場合に、複数のプロセッサモジュールが同時にre
q信号をアクティブにした場合には、対応する複数のビ
ットがアクティブにされたデータがFIFOメモリ23
に格納される。そして、gnt信号発行部28は、セレ
クタ27から供給された、複数のビットがアクティブに
されたデータを読み込み、LSB側のビットに対応する
プロセッサモジュールから順にgnt信号を発行する。
【0077】例えば、FIFOメモリ23にデータが格
納されている場合に、req1信号、req2信号、お
よび、req4信号が同時にアクティブにされた場合に
は、ビット1,2,4がアクティブにされたデータがF
IFOメモリ23に書き込まれ、gnt信号発行部28
がこのデータをセレクタ27から受け取ると、先ず、g
nt1信号を出力し、次に、gnt2信号およびgnt
4信号を順に出力する。
【0078】また、FIFOメモリ23にデータが格納
されていない場合に、3つ以上のreq信号が同時にア
クティブにされたときには、その値が最も小さいreq
信号に対してgnt信号が先ず発行される。そのとき、
gnt信号が発行されたreq信号は、reqマスク部
21によってマスクされるので、その他のreq信号に
対応するビットのみがアクティブにされたデータがFI
FOメモリ23に格納される。
【0079】そして、FIFOメモリ23に格納された
2つ以上のビットがアクティブにされたデータは、gn
t信号発行部28によって読み出され、前述の場合と同
様にLSB側から順にgnt信号が発行されることにな
る。
【0080】例えば、FIFOメモリ23にデータが格
納されていない場合に、req1信号、req2信号、
および、req4信号が同時にアクティブにされた場合
には、req1信号に対するgnt信号が直ちに発行さ
れ、reqマスク部21は、req1信号をマスクする
ので、FIFOメモリ23にはビット2,4のみがアク
ティブにされたデータが書き込まれる。
【0081】gnt信号発行部28がこのデータをセレ
クタ27から受け取ると、先ず、gnt2信号を出力
し、次に、gnt4信号を順に出力する。次に、図8お
よび図9を参照して、図5に示す監視部15の動作につ
いて説明する。
【0082】図8は、図5に示す実施の形態において、
プロセッサモジュール1〜4が全て実装されている場合
の動作を説明するタイミングチャートである。この図に
示すように、プロセッサモジュール1〜3が全て実装さ
れている場合には、プロセッサモジュール4に内蔵され
ている監視部15へ入力されるrmv1〜3信号は全て
ノンアクティブ(“0”)になる(図8(k1)〜(k
3)参照)。
【0083】監視部15は、プロセッサモジュール1〜
3の少なくとも1つが実装されている場合には、その出
力であるallrmv信号をノンアクティブ(“0”)
にする(図8(p)参照)。
【0084】allrmv信号がノンアクティブである
場合には、セレクタ29はgnt信号発行部28から出
力されるgnt4信号を選択してbusy発生部30に
供給する。その結果、busy発生部30はgnt4信
号がアクティブにされた場合にプロセッサモジュール4
に対してbusy信号を出力する。
【0085】また、req生成部20は、allrmv
信号がノンアクティブである場合には、通常通りの動作
を行うので、プロセッサモジュール4からアクセス要求
がなされた場合には、req4信号をアクティブにす
る。
【0086】従って、プロセッサモジュール4がアクセ
ス要求を行った場合には(図8(q)参照)、req生
成部20がreq4信号をアクティブにする(図8(a
1)参照)。
【0087】すると、前述の場合と同様にバスの調停処
理が実行され、他のプロセッサモジュール1〜3がバス
1に対する要求を行っていない場合には、gnt信号発
行部28によってgnt1信号が発行され(図8(h
1)参照)、busy発生部30がbusy信号をアク
ティブにする(図8(i)参照)。その結果、プロセッ
サモジュール4がバス1を占有して処理を行うことが可
能となる。
【0088】次に、図9を参照してプロセッサモジュー
ル1〜3が未実装の場合の動作について説明する。図9
は、図5に示す実施の形態において、プロセッサモジュ
ール4以外の全てのモジュールが未実装である場合の動
作を説明するタイミングチャートである。
【0089】この図に示すように、プロセッサモジュー
ル1〜3が未実装の場合には、プロセッサモジュール4
に内蔵されている監視部15へ入力されるrmv1〜3
信号は全てアクティブ(“1”)になる(図9(k1)
〜(k3)参照)。
【0090】監視部15は、プロセッサモジュール1〜
3が1つも実装されていないので、その出力であるal
lrmv信号をアクティブ(“1”)にする(図9
(p)参照)。
【0091】allrmv信号がアクティブにされる
と、セレクタ29はプロセッサモジュール4からのアク
セス要求を選択してbusy発生部30に供給する。そ
の結果、busy発生部30はアクセス要求がアクティ
ブにされた場合にプロセッサモジュール4に対してbu
sy信号を出力する。
【0092】また、req生成部20は、allrmv
信号がアクティブにされた場合には、その動作を停止す
る。従って、プロセッサモジュール4がアクセス要求を
行った場合には(図9(q)参照)、図8の場合とは異
なり、バス調停処理が実行されずに、busy発生部3
0がbusy信号を直ちにアクティブにする(図8
(i)参照)。
【0093】その結果、バス調停処理を行うことなくプ
ロセッサモジュール4がバス1を直ちに占有することが
可能となる。以上の実施の形態によれば、監視部15に
よりプロセッサモジュール1〜3の実装状態を監視し、
プロセッサモジュール4以外が未実装である場合には、
アクセス要求に応えて直ちにbusy信号を発行するの
で、実装されているプロセッサモジュールが1つだけで
ある場合には、バス調停処理を省略して処理を迅速に行
うことができる。
【0094】なお、以上の実施の形態においては、説明
を簡明にするためにプロセッサモジュールが4つ実装さ
れている場合について説明したが、2または3、あるい
は、5以上の場合でも本発明を適用可能であることは言
うまでもない。
【0095】
【発明の効果】以上説明したように本発明では、1以上
のプロセッサモジュールと、メモリ空間上の複数の領域
に対してそれぞれ実装された複数のメモリと、少なくと
も1以上のメモリに対してアクセス可能な複数のバス
と、プロセッサモジュールから、メモリの何れかに対す
るアクセスの要求がなされた場合には、そのメモリにア
クセス可能なバスが未使用状態であることを確認し、そ
のバスの使用を許可するバス調停処理部と、を有するよ
うにしたので、単一のバスにかかる負担を複数のバスに
分散させることができ、もって、装置全体のパフォーマ
ンスを向上させることが可能となる。
【図面の簡単な説明】
【図1】本発明の動作原理を説明する原理図である。
【図2】図1に示すメモリのメモリ空間上における実装
状態の一例を示す図である。
【図3】本発明の実施の形態の構成例を示すブロック図
である。
【図4】図3に示す実施の形態の主要部分の信号の時間
的変化を示すタイミングチャートである。
【図5】本発明の第2の実施の形態の構成例を示すブロ
ック図である。
【図6】図5に示すFIFOメモリのアドレスと格納さ
れるデータとの関係を示す図である。
【図7】図5に示す実施の形態の主要部分の信号の時間
的変化を示すタイミングチャートである。
【図8】図5に示す実施の形態の監視部の動作を説明す
るためのタイミングチャートである。
【図9】図5に示す実施の形態の監視部の動作を説明す
るためのタイミングチャートである。
【符号の説明】
10−1,10−2 プロセッサモジュール 11−1,11−2 バス 12−1〜12−3 メモリ 13 制御モジュール 14 バス調停処理部 15 監視部 16 停止部 20 req生成部 21 reqマスク部 22 マスク信号生成部 23 FIFOメモリ 24 書き込みアドレス発生部 25 読み出しアドレス発生部 26 req格納有無判定部 27 セレクタ 28 gnt信号発行部 29 セレクタ 30 busy発生部 31 論理和回路
【手続補正書】
【提出日】平成11年2月19日(1999.2.1
9)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0087
【補正方法】変更
【補正内容】
【0087】すると、前述の場合と同様にバスの調停処
理が実行され、他のプロセッサモジュール1〜3がバス
1に対する要求を行っていない場合には、gnt信号発
行部28によってgnt信号が発行され(図8(h
1)参照)、busy発生部30がbusy信号をアク
ティブにする(図8(i)参照)。その結果、プロセッ
サモジュール4がバス1を占有して処理を行うことが可
能となる。
【手続補正2】
【補正対象書類名】図面
【補正対象項目名】図8
【補正方法】変更
【補正内容】
【図8】
【手続補正3】
【補正対象書類名】図面
【補正対象項目名】図9
【補正方法】変更
【補正内容】
【図9】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 阿部 秀朗 神奈川県横浜市港北区新横浜2丁目3番9 号 富士通ディジタル・テクノロジ株式会 社内 (72)発明者 大原 克一 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 Fターム(参考) 5B045 BB14 EE17

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 1以上のプロセッサモジュールと、 メモリ空間上の複数の領域に対してそれぞれ実装された
    複数のメモリと、 少なくとも1以上の前記メモリに対してアクセス可能な
    複数のバスと、 前記プロセッサモジュールから、前記メモリの何れかに
    対するアクセスの要求がなされた場合には、そのメモリ
    にアクセス可能なバスが未使用状態であることを確認
    し、そのバスの使用を許可するバス調停処理部と、 を有することを特徴とする情報処理装置。
  2. 【請求項2】 前記メモリは、制御モジュールに対して
    データを入出力するためのメモリマップドI/Oを有す
    ることを特徴とする請求項1記載の情報処理装置。
  3. 【請求項3】 前記バス調停処理部は、複数の前記プロ
    セッサモジュールから同一のバスに対するアクセス要求
    がなされた場合には、先着順に前記バスの使用を許可す
    ることを特徴とする請求項1記載の情報処理装置。
  4. 【請求項4】 前記プロセッサモジュールの実装状況を
    監視する監視部と、 前記監視部によって前記プロセッサモジュールが1つだ
    け実装されていることが検知された場合には、前記バス
    調停処理部の動作を停止させる停止部と、 を更に有することを特徴とする請求項1記載の情報処理
    装置。
JP10210729A 1998-07-27 1998-07-27 情報処理装置 Withdrawn JP2000047994A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP10210729A JP2000047994A (ja) 1998-07-27 1998-07-27 情報処理装置
US09/268,426 US6321284B1 (en) 1998-07-27 1999-03-12 Multiprocessor system with multiple memory buses for access to shared memories

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10210729A JP2000047994A (ja) 1998-07-27 1998-07-27 情報処理装置

Publications (1)

Publication Number Publication Date
JP2000047994A true JP2000047994A (ja) 2000-02-18

Family

ID=16594150

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10210729A Withdrawn JP2000047994A (ja) 1998-07-27 1998-07-27 情報処理装置

Country Status (2)

Country Link
US (1) US6321284B1 (ja)
JP (1) JP2000047994A (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001043180A (ja) * 1999-08-03 2001-02-16 Mitsubishi Electric Corp マイクロプロセッサおよびそのための記憶装置
US6681283B1 (en) 1999-08-12 2004-01-20 Mips Technologies, Inc. Coherent data apparatus for an on-chip split transaction system bus
US6493776B1 (en) 1999-08-12 2002-12-10 Mips Technologies, Inc. Scalable on-chip system bus
US6604159B1 (en) * 1999-08-12 2003-08-05 Mips Technologies, Inc. Data release to reduce latency in on-chip system bus
US6490642B1 (en) 1999-08-12 2002-12-03 Mips Technologies, Inc. Locked read/write on separate address/data bus using write barrier
US6584531B1 (en) * 2000-04-27 2003-06-24 Lsi Logic Corporation Arbitration circuit with plural arbitration processors using memory bank history
CN1318993C (zh) * 2001-10-16 2007-05-30 皇家飞利浦电子股份有限公司 计算机系统和操作计算机系统的方法
JP3447725B2 (ja) * 2001-10-23 2003-09-16 沖電気工業株式会社 競合調停装置
US7206904B2 (en) * 2002-03-20 2007-04-17 Hewlett-Packard Development Company, L.P. Method and system for buffering multiple requests from multiple devices to a memory
KR20040029254A (ko) * 2002-09-30 2004-04-06 마츠시타 덴끼 산교 가부시키가이샤 자원관리장치
US7343436B2 (en) * 2002-10-29 2008-03-11 Kabushiki Kaisha Forks Synchronous electronic control system and system control method
KR20070012308A (ko) 2003-09-02 2007-01-25 서프 테크놀러지, 인코포레이티드 위성 위치 신호를 위한 신호 처리 시스템
US7822105B2 (en) * 2003-09-02 2010-10-26 Sirf Technology, Inc. Cross-correlation removal of carrier wave jamming signals
US7917706B1 (en) * 2003-12-15 2011-03-29 Altera Corporation SDRAM controller
FR2884629B1 (fr) * 2005-04-15 2007-06-22 Atmel Corp Dispositif d'amelioration de la bande passante pour des circuits munis de controleurs memoires multiples
KR100813256B1 (ko) * 2006-06-23 2008-03-13 삼성전자주식회사 버스 중재 장치 및 방법
US7945740B2 (en) * 2007-09-24 2011-05-17 International Business Machines Corporation Structure for a memory switching data processing system
US7937537B2 (en) * 2007-09-24 2011-05-03 International Business Machines Corporation Memory switching data processing system
US9069912B2 (en) * 2012-03-31 2015-06-30 Qualcomm Technologies, Inc. System and method of distributed initiator-local reorder buffers

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58176762A (ja) 1982-04-09 1983-10-17 Omron Tateisi Electronics Co 並列処理システム
CA2011807C (en) * 1989-03-20 1999-02-23 Katsumi Hayashi Data base processing system using multiprocessor system
US5202973A (en) * 1990-06-29 1993-04-13 Digital Equipment Corporation Method of controlling a shared memory bus in a multiprocessor system for preventing bus collisions and for ensuring a full bus
JP3144794B2 (ja) * 1990-11-09 2001-03-12 株式会社日立製作所 マルチプロセッサシステム
US5367678A (en) * 1990-12-06 1994-11-22 The Regents Of The University Of California Multiprocessor system having statically determining resource allocation schedule at compile time and the using of static schedule with processor signals to control the execution time dynamically
JPH04250553A (ja) 1991-01-28 1992-09-07 Matsushita Electric Works Ltd プログラマブルコントローラ
JP2993795B2 (ja) 1992-03-26 1999-12-27 アンリツ株式会社 バス調停回路
JPH06250916A (ja) * 1993-02-26 1994-09-09 Fujitsu Ltd 共有メモリの排他制御方法
JPH10507023A (ja) * 1994-10-06 1998-07-07 ヴァーク・インコーポレイテッド 共用メモリシステム
JP3661235B2 (ja) * 1995-08-28 2005-06-15 株式会社日立製作所 共有メモリシステム、並列型処理装置並びにメモリlsi

Also Published As

Publication number Publication date
US6321284B1 (en) 2001-11-20

Similar Documents

Publication Publication Date Title
JP2000047994A (ja) 情報処理装置
JP3899142B2 (ja) パイプライン分散バス・アービトレーション・システム
US5263169A (en) Bus arbitration and resource management for concurrent vector signal processor architecture
EP0450233B1 (en) Bus access for digital computer system
KR100420707B1 (ko) 가변폭버스의동시적인액세스를이용하는다중프로세서시스템에서버스중재를위한방법및시스템
KR100420706B1 (ko) 가변폭버스의동시적인액세스를이용하는다중프로세서시스템에서i/o제어를위한방법및시스템
JP4266619B2 (ja) 調停回路
US20060282588A1 (en) Processor system that allows for simultaneous access by multiple requestors to a target with multiple ports
US7581054B2 (en) Data processing system
KR100296718B1 (ko) 다중프로세서 시스템에서 가변폭 버스를 동시에 액세스하기 위한 방법 및 시스템
JPH028948A (ja) コンピュータ装置において資源へのアクセスを制御する方法および装置
KR20070114179A (ko) 고주파수 중재자를 통해 사이클마다 복수의 버스 중재를수행하는 스위치 매트릭스 시스템
KR970049655A (ko) 직접메모리접근(dma) 제어장치
US5649209A (en) Bus coupling information processing system for multiple access to system bus
WO1996013774A1 (en) Multiprocessor system bus protocol for optimized accessing of interleaved storage modules
KR100347473B1 (ko) 버스시스템
KR100708096B1 (ko) 버스 시스템 및 그 실행 순서 조정방법
US6959354B2 (en) Effective bus utilization using multiple bus interface circuits and arbitration logic circuit
JPH0728758A (ja) ダイナミックタイムループ調停及び装置
US5627968A (en) Data transfer apparatus which allows data to be transferred between data devices without accessing a shared memory
JP2591502B2 (ja) 情報処理システムおよびそのバス調停方式
EP0507954B1 (en) Device for controlling bus
US20050120147A1 (en) Direct memory access controller enabling cycle stealing among channels
JPH1125036A (ja) 調停システム、およびアクセスを調停する方法
JP2001273248A (ja) バス制御装置及びその制御方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20051004