JP2001067328A - 情報処理装置およびそのアクセス制御方法 - Google Patents

情報処理装置およびそのアクセス制御方法

Info

Publication number
JP2001067328A
JP2001067328A JP24401099A JP24401099A JP2001067328A JP 2001067328 A JP2001067328 A JP 2001067328A JP 24401099 A JP24401099 A JP 24401099A JP 24401099 A JP24401099 A JP 24401099A JP 2001067328 A JP2001067328 A JP 2001067328A
Authority
JP
Japan
Prior art keywords
access
word
cpu
shared memory
double word
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
JP24401099A
Other languages
English (en)
Other versions
JP3995370B2 (ja
Inventor
Masashi Ueki
正史 植木
Takayuki Tsuzuki
貴之 都築
Junji Yamamoto
順司 山本
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.)
Mitsubishi Electric Engineering Co Ltd
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Engineering Co Ltd
Mitsubishi Electric Corp
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 Mitsubishi Electric Engineering Co Ltd, Mitsubishi Electric Corp filed Critical Mitsubishi Electric Engineering Co Ltd
Priority to JP24401099A priority Critical patent/JP3995370B2/ja
Publication of JP2001067328A publication Critical patent/JP2001067328A/ja
Application granted granted Critical
Publication of JP3995370B2 publication Critical patent/JP3995370B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 共有メモリに対するダブルワードアクセスを
行う場合に共有メモリのメモリ領域を有効利用し、ダブ
ルワードアクセス時のアドレス指定を簡易かつ柔軟に行
うこと。 【解決手段】 泣別れ防止制御回路20は、ダブルワー
ドアクセス設定レジスタ11a,11bにダブルワード
アクセスの設定がある場合、昇順/降順設定レジスタ1
2a,12bが示す昇順あるいは降順で共有メモリ4に
対するアクセスをワード単位で行うとともに、共有メモ
リ4からダブルワードを読み出す場合、該ダブルワード
を共有メモリ4からワード単位で連続して読み出してバ
ッファ14a,14bに格納し、共有メモリ4にダブル
ワードを書き込む場合、該ダブルワードをバッファ14
a,14bに格納し、その後該ダブルワードの残りワー
ドのアクセス要求時に該バッファに格納されたダブルワ
ードを連続して共有メモリ4に書き込む制御を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、第一のCPU
と、第二のCPUと、前記第一および第二のCPUが共
有し、ワード単位でデータを格納する共有メモリと、前
記第一および第二のCPUによる前記共有メモリに対す
るアクセスを制御するバスコントロール回路とを有した
情報処理装置およびそのアクセス制御方法に関し、特
に、前記第一のCPU、前記第二のCPUおよび前記共
有メモリと、前記バスコントロール回路とが16ビット
データバスで接続され、16ビットのワード単位でデー
タ転送され、前記第一のCPUおよび前記第二のCPU
が前記共有メモリに対して32ビットのデータセットで
アクセス(ダブルワードアクセス)を行う情報処理装置
およびそのアクセス制御方法に関するものである。
【0002】
【従来の技術】図21は、二つのCPUがバスコントロ
ール回路を介して一つの共有メモリを共有する情報処理
装置の概要構成を示す図である。図21において、CP
U101とCPU102とは、バスコントロール回路1
03と16ビットデータバスで接続され、共有メモリ1
04は、バスコントロール回路103と16ビットデー
タバスで接続される。CPU101,102は、共有メ
モリ104に対して16ビット単位でデータを転送し、
共有メモリ104は、16ビット単位でデータを格納す
る。すなわち、CPU101,102は、ワード(16
ビット)単位で共有メモリ104をアクセスすることが
できる。
【0003】ところで、CPU101,102は、共有
メモリ104に対して、連続する32ビットを一つのデ
ータセット(ダブルワード)としてアクセスを行う場合
がある。CPU101,102が共有メモリ104に対
してダブルワードアクセスを行う場合、転送単位は16
ビットであることから、共有メモリに対して2回のアク
セスを行う必要がある。この場合、共有メモリ104
は、CPU101,102によって共有されるため、ア
クセスの競合によっては、所望のダブルワードアクセス
が行われない、いわゆる「データの泣別れ」が生じるこ
とになる。
【0004】図22は、この「データの泣別れ」が生じ
る場合を説明する図である。図22において、共有メモ
リは、データを16ビットのワード単位で格納し、ワー
ド単位の連続するデータ「A」,「B」からなるダブル
ワードは、アドレス「4n」,「4n+2」に連続して
格納される。この場合におけるアドレスは、バイトアド
レスで表され、アドレス「4n」および「4n+2」に
示す「n」は、バイト(8ビット)数を表す。なお、ア
ドレス「4n」,「4n+2」の順序で格納しているの
は、アクセスの回路構成が単純になるからである。すな
わち、4の倍数(4n)は、CPUが出力するアドレス
信号の下位2ビットを「00」として判別することがで
き、4の倍数+2(4n+2)は、アドレス信号の下位
2ビットを「10」として判別することができ、これら
の判別は、インバータ回路とアンド回路のみによって簡
単に回路構成できるからである。
【0005】図22は、CPU102がデータ「A」,
「B」からなるダブルワードを読み出す際に、CPU1
01がデータ「X」を書き込む処理が競合し、データの
泣別れが生ずる場合を示している。図22(a)におい
て、CPU102は、アドレス「4n」からデータ
「A」を読み出し(リード)し(S101)、その後デ
ータ「B」を連続して読み出そうとするが、図22
(b)に示すように、このデータ「B」のリード前に、
CPU101がデータ「X」をアドレス「4n+2」に
書き込み(ライトし)(S102)、その後、図22
(c)に示すように、CPU102が、アドレス「4n
+2」のデータ「X」を読み出して(S103)しまっ
ている。CPU102は、アドレス「4n」,「4n+
2」をアクセスして、データ「A」,「B」をリードす
るはずであったが、CPU101によってアドレス「4
n+2」にデータ「X」がライトされて更新されてしま
ったため、データ「A」,「X」をリードしてしまって
いる。このような「データの泣別れ」の発生によって、
データのリード/ライトの整合性がとれなくなるという
問題が生じる。
【0006】このような「データの泣別れ」を防止する
ため、図23に示すように、バスコントロール回路10
3内には、泣別れ防止回路110のハードウェアを設け
ている。すなわち、バスコントロール回路103には、
ダブルワードアクセスを行う旨が設定されるダブルワー
ドアクセス設定レジスタ111a,111bが設けられ
るとともに、泣別れ防止回路110には、ダブルワード
アクセスが行われた際に、ダブルワードを構成する各ワ
ードを一時格納するバッファ114a,114bが設け
られ、ダブルワードアクセス時における「データの泣別
れ」を防止するようにしている。
【0007】図24および図25は、共有メモリ104
からダブルワードをリードする際の泣別れ防止回路11
0の動作を示す図である。図24において、まず、CP
U101は、ダブルワードアクセスの前に、ダブルワー
ドアクセス設定レジスタ111aに対して、ダブルワー
ドアクセスであることを設定しておく。そして、CPU
101は、アドレス「4n」に対するリードアクセス要
求を泣別れ防止回路110に発行する(S201)と、
泣別れ防止回路110は、このアクセスがダブルワード
アクセスであることをダブルワードアクセス設定レジス
タ111aの設定によって知っているので、共有メモリ
104のアドレス「4n」からデータ「A」をリードし
(S202)、さらに連続してアドレス「4n+2」か
らデータ「B」をリードする(S203)。そして、泣
別れ防止回路110は、リードしたデータ「A」は、そ
のままCPU101に出力し(S204)、2回目にリ
ードしたデータ「B」は、バッファ114aに一時格納
する(S205)。なお、この泣別れ防止回路110に
よるデータ「A」,「B」のリードアクセス時には、他
のCPU102に対して、ウェイト信号を送出し、CP
U102をウェイト状態にし(S206)、他のCPU
102による共有メモリ104に対するアクセスを許可
しない。
【0008】図25において、データ「B」がバッファ
114aに一時格納されると、泣別れ防止回路110
は、他のCPU102に対するウェイト状態を解除し
(S207)、他のCPU102による共有メモリ10
4に対するアクセスを許容する。この場合、他のCPU
102は、通常のワードアクセスのほか、ダブルワード
アクセスであっても、アクセスが可能である。その後、
CPU101からアドレス「4n+2」に対するリード
アクセス要求が泣別れ防止回路110に発行される(S
208)と、泣別れ防止回路110は、共有メモリ10
4にリードアクセスすることなく、バッファ114aに
一時格納されていたデータ「B」をCPU101に出力
する(S209,S210)。
【0009】一方、図26および図27は、共有メモリ
104にダブルワードをライトする際の泣別れ防止回路
110の動作を示す図である。図26において、まず、
CPU101は、ダブルワードアクセスの前に、ダブル
ワードアクセス設定レジスタ111aに対して、ダブル
ワードアクセスであることを設定しておく。そして、C
PU101は、アドレス「4n」に対するライトアクセ
スを泣別れ防止回路110に対して発行し(S30
1)、データ「A」を泣別れ防止回路110に送出す
る。泣別れ防止回路110は、このライトアクセスがダ
ブルワードアクセスであることをダブルワードアクセス
設定レジスタ111aの設定によって知っているので、
共有メモリ104のアドレス「4n」に対するデータ
「A」のライトアクセス要求時には、共有メモリ104
に対してはライトアクセスを行わずに、データ「A」を
バッファ114aに一時格納する(S303)。なお、
この泣別れ防止回路110によるデータ「A」のライト
アクセス要求時には、他のCPU102に対してウェイ
ト解除状態に設定し(S304)、他のCPU102に
よるアクセスを許可する。
【0010】その後、図27において、CPU101か
らアドレス「4n+2」に対するライトアクセス要求が
泣別れ防止回路110に発行され(S305)、データ
「B」が泣別れ防止回路110に送出される(S30
6)と、泣別れ防止回路110は、バッファ114aに
一時格納されていたデータ「A」を共有メモリ104の
アドレス「4n」に対してライトアクセスし(S30
7,S308)、その後、入力されたデータ「B」をそ
のまま、共有メモリ104のアドレス「4n+2」にラ
イトアクセスする(S309)。なお、泣別れ防止回路
110は、データ「A」,「B」を共有メモリ104に
ライトアクセスしている際には、他のCPU102をウ
ェイト状態にし(S310)、他のCPU102からの
アクセスを許可しない。
【0011】このようにして、泣別れ防止回路110
は、ダブルワードアクセス時におけるデータの整合性を
維持できるようにしている。なお、泣別れ防止回路11
0内に、調停回路を設けておくことによって、CPU1
01,102がほぼ同時あるいは全く同時に共有メモリ
104に対して、通常のワードアクセスあるいはダブル
ワードアクセスを発行した場合のアクセス権を調停する
ようにしている。たとえば、CPU101,102がほ
ぼ同時に共有メモリ104に対してアクセスを発行した
場合には、早くアクセスを発行したCPU側にアクセス
権を与え、全く同時に共有メモリ104に対してアクセ
スを発行した場合には、予め設定されている優先順位の
高いCPU側にアクセス権を与え、アクセス権が与えら
れなかったCPU側をウェイト状態に設定してアクセス
を許可しないようにしている。
【0012】
【発明が解決しようとする課題】しかしながら、上述し
た泣別れ防止回路110を有する情報処理装置では、C
PU101,102による共有メモリ104に対するダ
ブルワードアクセスの回路構成を簡単にするため、アド
レスを4の倍数(4n)と4の倍数+2(4n+2)と
いう順序で格納あるいはアクセスさせるようにしていた
ため、共有メモリ104にダブルワードを格納する場
合、ダブルワードの先頭アドレスが常に4の倍数(4
n)となり、共有メモリ104上の4の倍数±2(4n
±2)アドレスのメモリ領域に空きがある場合であって
も、このメモリ領域を有効利用することができないとい
う問題点があった。
【0013】また、共有メモリ104に対するダブルワ
ードアクセスのアドレス指定は、1回目が4の倍数(4
n)とし、2回目が4の倍数+2(4n+2)とする制
約を受けているため、メモリのアドレスが大きいメモリ
領域からアドレスが小さいメモリ領域となるアクセス順
でダブルワードアクセスを行う場合、たとえば、1回
目:4n→2回目:4n+2→3回目:4n−4→4回
目:4n−2というように、アドレス指定処理が複雑と
なり、アドレス指定にかかる負荷と労力がかかるという
問題点もあった。
【0014】一方、従来の泣別れ防止回路110を有す
る情報処理装置では、一方のCPU101が共有メモリ
104に対してアクセスしている場合には、他のCPU
102のアクセスをウェイト状態にしており、他のCP
U102の待ち時間が長くなり、情報処理装置全体の動
作処理速度が低下するという問題点があった。
【0015】この発明は上記に鑑みてなされたもので、
ワード単位でデータ転送を行い、複数のCPUが共有メ
モリを共有する場合におけるダブルワードアクセスをメ
モリ領域の有効利用を図りつつデータの泣別れを防止
し、さらにダブルワードアクセス時のアドレス指定を簡
易かつ柔軟に行うことができる情報処理装置およびその
アクセス制御方法を得ることを目的とする。また、ダブ
ルワードアクセスが競合する場合が生じても、情報処理
装置全体の動作処理速度の低下を防止することができる
情報処理装置およびそのアクセス制御方法を得ることを
目的とする。
【0016】
【課題を解決するための手段】上記目的を達成するた
め、この発明にかかる情報処理装置は、第一のCPU
と、第二のCPUと、前記第一および第二のCPUが共
有し、ワード単位でデータを格納する共有メモリと、前
記第一および第二のCPUによる前記共有メモリに対す
るアクセスを制御するバスコントロール回路とを有した
情報処理装置において、前記バスコントロール回路は、
前記共有メモリに対して書き込むべきあるいは読み出し
たダブルワードのうちの少なくとも一つのワードを一時
格納するバッファと、ダブルワードアクセスである旨を
示すダブルワードアクセス設定レジスタと、ダブルワー
ドアクセスを昇順あるいは降順のいずれで行うかを示す
昇順/降順設定レジスタと、前記ダブルワードアクセス
設定レジスタにダブルワードアクセスを行う設定がなさ
れた場合、前記昇順/降順設定レジスタによって設定さ
れた昇順あるいは降順で前記共有メモリに対するアクセ
スをワード単位で行うとともに、前記共有メモリからダ
ブルワードを読み出す場合、該ダブルワードを前記共有
メモリからワード単位で連続して読み出して前記バッフ
ァに格納し、前記共有メモリにダブルワードを書き込む
場合、該ダブルワードを前記バッファに格納し、その後
該ダブルワードの残りワードのアクセス要求時に該バッ
ファに格納されたダブルワードを連続して前記共有メモ
リに書き込む制御を行うアクセスコントロール回路と、
を備えたことを特徴とする。
【0017】この発明によれば、前記バスコントロール
回路のアクセスコントロール回路は、ダブルワードアク
セス設定レジスタにダブルワードアクセスを行う設定が
なされた場合、昇順/降順設定レジスタによって設定さ
れた昇順あるいは降順で共有メモリに対するアクセスを
ワード単位で行うとともに、前記共有メモリからダブル
ワードを読み出す場合、該ダブルワードを前記共有メモ
リからワード単位で連続して読み出してバッファに格納
し、前記共有メモリにダブルワードを書き込む場合、該
ダブルワードを前記バッファに格納し、その後該ダブル
ワードの残りワードのアクセス要求時に該バッファに格
納されたダブルワードを連続して前記共有メモリに書き
込む制御を行うようにしている。
【0018】つぎの発明にかかる情報処理装置は、上記
の発明において、ダブルワードアクセス時における最初
のワードアクセスか残りのワードアクセスかを示すフラ
グを設定する回数フラグをさらに備え、前記アクセスコ
ントロール回路は、前記回数フラグに設定されたフラグ
をもとに前記共有メモリに対するダブルワードアクセス
時における他のCPUの待機あるいは待機解除を制御す
ることを特徴とする。
【0019】この発明によれば、回数フラグが、ダブル
ワードアクセス時における最初のワードアクセスか残り
のワードアクセスかを示すフラグを設定し、アクセスコ
ントロール回路が、前記回数フラグに設定されたフラグ
をもとに共有メモリに対するダブルワードアクセス時に
おける他のCPUの待機あるいは待機解除を制御するよ
うにしている。
【0020】つぎの発明にかかる情報処理装置は、第一
のCPUと、第二のCPUと、前記第一および第二のC
PUが共有し、ワード単位でデータを格納する共有メモ
リと、前記第一および第二のCPUによる前記共有メモ
リに対するアクセスを制御するバスコントロール回路と
を有した情報処理装置において、前記バスコントロール
回路は、前記共有メモリに対して書き込むべきあるいは
読み出したダブルワードを一時格納するバッファと、所
定クロックを発生するクロック発生手段と、前記共有メ
モリに対するダブルワードの格納順序およびアクセス順
序を偶数ワードアドレスから開始させるとともに、ダブ
ルワードのデータを前記バッファに一時格納し、前記第
一のCPUおよび前記第二のCPUによる前記共有メモ
リに対する前記ダブルワードのアクセス要求が競合した
場合、前記所定クロックに対応させて前記第一のCPU
および前記第二のCPUに対するアクセス権をワード単
位で交互に割り当てるアクセス制御手段と、を備えたこ
とを特徴とする。
【0021】この発明によれば、バスコントロール回路
のアクセス制御手段が、共有メモリに対するダブルワー
ドの格納順序およびアクセス順序を偶数ワードアドレス
から開始させるとともに、ダブルワードのデータを前記
バッファに一時格納し、第一のCPUおよび第二のCP
Uによる前記共有メモリに対する前記ダブルワードのア
クセス要求が競合した場合、所定クロックに対応させて
前記第一のCPUおよび前記第二のCPUに対するアク
セス権をワード単位で交互に割り当て、ダブルワードア
クセスが競合した場合でも確実にデータの整合性を保持
できるようにしている。
【0022】つぎの発明にかかる情報処理装置は、上記
の発明において、前記アクセス制御手段は、前記所定ク
ロックの前縁および後縁を前記第一のCPUおよび前記
第二のCPUに割り当てて制御することを特徴とする。
【0023】この発明によれば、アクセス制御手段が、
所定クロックの前縁および後縁を第一のCPUおよび第
二のCPUに割り当てて制御するようにしている。
【0024】つぎの発明にかかる情報処理装置のアクセ
ス制御方法は、第一のCPUと、第二のCPUと、前記
第一および第二のCPUが共有し、ワード単位でデータ
を格納する共有メモリと、前記第一および第二のCPU
による前記共有メモリに対するアクセスを制御するバス
コントロール回路とを有した情報処理装置のアクセス制
御方法において、前記第一のCPUおよび前記第二のC
PUが前記共有メモリに対してダブルワードアクセスを
行う場合にダブルワードアクセスを昇順で行うか降順で
行うかを設定する昇順/降順設定工程と、前記昇順/降
順設定レジスタによって設定された昇順あるいは降順で
前記共有メモリに対するアクセスをワード単位で行うア
クセス工程と、を含むことを特徴とする。
【0025】この発明によれば、昇順/降順設定工程に
よって、第一のCPUおよび第二のCPUが共有メモリ
に対してダブルワードアクセスを行う場合にダブルワー
ドアクセスを昇順で行うか降順で行うかを設定し、アク
セス工程によって、前記昇順/降順設定レジスタによっ
て設定された昇順あるいは降順で前記共有メモリに対す
るアクセスをワード単位で行うようにしている。
【0026】つぎの発明にかかる情報処理装置のアクセ
ス制御方法は、上記の発明において、前記アクセス工程
は、前記共有メモリからダブルワードを読み出す場合、
該ダブルワードを前記共有メモリからワード単位で連続
して読み出してバッファに格納し、前記共有メモリにダ
ブルワードを書き込む場合、該ダブルワードをバッファ
に格納し、その後該ダブルワードの残りワードのアクセ
ス要求時に該バッファに格納されたダブルワードを連続
して前記共有メモリに書き込む制御を行うことを特徴と
する。
【0027】この発明によれば、前記アクセス工程は、
共有メモリからダブルワードを読み出す場合、該ダブル
ワードを前記共有メモリからワード単位で連続して読み
出してバッファに格納し、前記共有メモリにダブルワー
ドを書き込む場合、該ダブルワードをバッファに格納
し、その後該ダブルワードの残りワードのアクセス要求
時に該バッファに格納されたダブルワードを連続して前
記共有メモリに書き込む制御を行うようにしている。
【0028】つぎの発明にかかる情報処理装置のアクセ
ス制御方法は、上記の発明において、ダブルワードアク
セス時における最初のワードアクセスか残りのワードア
クセスかを示すフラグを設定する回数フラグ設定工程を
さらに含み、前記アクセス工程は、前記回数フラグに設
定されたフラグをもとに前記共有メモリに対するダブル
ワードアクセス時における他のCPUの待機あるいは待
機解除を制御することを特徴とする。
【0029】この発明によれば、回数フラグ設定工程
が、ダブルワードアクセス時における最初のワードアク
セスか残りのワードアクセスかを示すフラグを設定し、
前記アクセス工程が、前記回数フラグに設定されたフラ
グをもとに前記共有メモリに対するダブルワードアクセ
ス時における他のCPUの待機あるいは待機解除を制御
するようにしている。
【0030】つぎの発明にかかる情報処理装置のアクセ
ス制御方法は、第一のCPUと、第二のCPUと、前記
第一および第二のCPUが共有し、ワード単位でデータ
を格納する共有メモリと、前記第一および第二のCPU
による前記共有メモリに対するアクセスを制御するバス
コントロール回路とを有した情報処理装置のアクセス制
御方法において、前記共有メモリに対するダブルワード
の格納順序およびアクセス順序を偶数ワードアドレスか
ら開始させる設定を予め行う設定工程と、前記共有メモ
リに対するダブルワードのデータをバッファに一時格納
する格納工程と、前記第一のCPUおよび前記第二のC
PUによる前記共有メモリに対する前記ダブルワードの
アクセス要求が競合した場合、所定クロックに対応させ
て前記第一のCPUおよび前記第二のCPUに対するア
クセス権をワード単位で交互に割り当てるアクセス制御
工程と、を含むことを特徴とする。
【0031】この発明によれば、設定工程によって、共
有メモリに対するダブルワードの格納順序およびアクセ
ス順序を偶数ワードアドレスから開始させる設定を予め
行い、格納工程によって、前記共有メモリに対するダブ
ルワードのデータをバッファに一時格納し、アクセス制
御工程によって、第一のCPUおよび第二のCPUによ
る前記共有メモリに対する前記ダブルワードのアクセス
要求が競合した場合、所定クロックに対応させて前記第
一のCPUおよび前記第二のCPUに対するアクセス権
をワード単位で交互に割り当てるようにしている。
【0032】つぎの発明にかかる情報処理装置のアクセ
ス制御方法は、上記の発明において、前記アクセス制御
工程は、前記所定クロックの前縁および後縁を前記第一
のCPUおよび前記第二のCPUに割り当てて制御する
ことを特徴とする。
【0033】この発明によれば、前記アクセス制御工程
が、所定クロックの前縁および後縁を第一のCPUおよ
び第二のCPUに割り当てて制御するようにしている。
【0034】
【発明の実施の形態】以下に添付図面を参照して、この
発明にかかる情報処理装置およびそのアクセス制御方法
の好適な実施の形態を詳細に説明する。
【0035】実施の形態1.まず、この発明の実施の形
態1について説明する。図1は、この発明の実施の形態
1である情報処理装置の構成を示すブロック図である。
図1において、この情報処理装置は、二つのCPU1,
2と、バスコントロール回路3と、共有メモリ4とを有
する。CPU1,2とバスコントロール回路3との間
と、共有メモリ4とバスコントロール回路3との間と
は、それぞれ16ビットデータバスB1,B2,B4に
よって接続され、CPU1,2は、共有メモリ4に対し
て16ビット(ワード)単位でアクセスが可能である。
共有メモリ4は、ワード単位でデータを格納する。バス
コントロール回路3は、32ビットが連続して意味をも
つダブルワードのアクセス制御も行い、各CPU1,2
に対するデータの整合性をとるようにしている。
【0036】バスコントロール回路3は、泣別れ防止回
路10を有し、泣別れ防止回路10は、CPU1,2に
よる共有メモリ4へのアクセスがダブルワードアクセス
か否かを設定するダブルワードアクセス設定レジスタ1
1a,11b、CPU1,2によるダブルワードアクセ
ス時のアドレス指定が昇順か降順かを設定する昇順/降
順設定レジスタ12a,12b、CPU1,2によるダ
ブルワードアクセス時のアクセスが1回目か2回目かを
判別する回数フラグ13a,13b、CPU1,2によ
るダブルワードアクセス時における1回分の16ビット
データを一時格納するバッファ14a,14b、および
泣別れ防止制御回路20を有する。
【0037】つぎに、図2〜図4を参照して、CPU1
による昇順のダブルワードリードアクセスについて泣別
れ防止制御回路20の動作処理を中心に説明する。図2
は、CPU1がダブルワードリードアクセスを行う場合
の前処理を説明する図である。図2において、CPU1
は、ダブルワードリードアクセスを行う場合、まずI/
Oライト(S1)によってダブルワードアクセス設定レ
ジスタ11aの内容を「1」に設定し、ダブルワードア
クセスを行うことを設定する。また、I/Oライト(S
2)によって、昇順/降順設定レジスタ12aの内容を
「1」に設定し、アドレス指定を昇順によって行うこと
を設定する。
【0038】図3において、その後、CPU1は、ダブ
ルワードリードアクセスのうちの1回目のアクセス要
求、すなわち、アドレス「2n」(nはバイト数)のデ
ータ「A」に対するリードアクセス要求が発行される
(S11)と、泣別れ防止制御回路20は、アドレス
「2n」のデータ「A」をリードし(S12)、そのま
まCPU1に出力する(S13)。ダブルワードアクセ
ス設定レジスタ11aが「1」に設定されていることか
ら、残りのワードアクセスがあることを認識し、昇順/
降順設定レジスタ12aが「1」に設定されていること
から、昇順であることを認識し、アドレス「2n」に
「2」を付加したアドレス「2n+2」に格納されたデ
ータ「B」をリードする(S14)。このリードされた
データ「B」は、バッファ14aに格納される(S1
5)。また、この時点で、回数フラグ13aは、「0」
から「1」に設定される(S16)。なお、この間、C
PU2に対しては、ウェイト状態に設定される(S1
7)、回数フラグが「1」に設定された時点で、ウェイ
ト解除状態に移行する(S22)。
【0039】図4において、その後、CPU1は、アド
レス「2n+2」のデータ「B」に対するリードアクセ
ス要求が発行される(S18)と、泣別れ防止回路20
は、バッファ14aに一時格納されたデータ「B」を読
み出し(S19)、CPU1に、この読み出したデータ
「B」を出力する(S20)。さらに、このデータ
「B」がCPU1に出力された時点で、回数フラグ13
aは、「1」から「0」に設定される。また、ダブルワ
ードアクセス設定レジスタ11aを「0」にリセットす
る。
【0040】なお、図2〜図4において、昇順のダブル
ワードリードアクセスについて説明したが、降順のダブ
ルワードリードアクセスについても同様である。ただ
し、図2に示す前処理において、昇順/降順設定レジス
タ12aは、「0」に設定され、降順であることが設定
される。また、2回目のアドレス指定はアドレス「2n
+2」ではなく、アドレス「2n−2」となる。また、
CPU2によるダブルワードリードアクセスについて
も、CPU1によるダブルワードリードアクセスと同様
にして行うことができる。
【0041】つぎに、図5および図6を参照して、CP
U1による降順のダブルワードライトアクセスについて
泣別れ防止制御回路20の動作処理を中心に説明する。
まず、CPU1は、ダブルワードライトアクセスを行う
場合、まずI/Oライト(S1)によってダブルワード
アクセス設定レジスタ11aの内容を「1」に設定し、
ダブルワードアクセスを行うことを設定する。また、I
/Oライト(S2)によって、昇順/降順設定レジスタ
12aの内容を「0」に設定し、アドレス指定を降順に
よって行うことを設定する。
【0042】図5において、その後、CPU1は、ダブ
ルワードライトアクセスのうちの1回目のアクセス要
求、すなわち、アドレス「2n」(nはバイト数)に対
するデータ「B」に対するライトアクセス要求が発行さ
れる(S31)と、泣別れ防止制御回路20は、アドレ
ス「2n」のデータ「B」をバッファ14aに一時格納
し(S32)、回数フラグ13aを「0」から「1」に
設定される(S33)。なお、この場合、他のCPU2
に対しては、そのままウェイト解除状態が維持される。
すなわち、この状態では、泣別れ防止制御回路20は、
共有メモリ4に対してアクセスを行っておらず、CPU
2は、共有メモリ4に対してアクセスが可能となる。
【0043】図6において、その後、CPU1は、アド
レス「2n」の降順であるアドレス「2n−2」に対す
るデータ「A」のライトアクセス要求が発行される(S
3418)と、泣別れ防止回路20は、CPU2をウェ
イト状態に設定し(S38)、バッファ14aに一時格
納されたデータ「B」を読み出し(S37)、アドレス
「2n」に対してデータ「B」をライトし(S35)、
その後、ライトアクセス要求したデータ「A」をそのま
まアドレス「2n−2」にライトする(S36)。そし
て、回数フラグ13aを「1」から「0」に戻し(S3
9)、CPU2をウェイト解除状態に設定する。
【0044】なお、図5および図6において、降順のダ
ブルワードライトアクセスについて説明したが、昇順の
ダブルワードライトアクセスについても同様である。た
だし、図2に示す前処理において、昇順/降順設定レジ
スタ12aは、「1」に設定され、昇順であることが設
定される。また、2回目のアドレス指定はアドレス「2
n−2」ではなく、アドレス「2n+2」となる。ま
た、CPU2によるダブルワードライトアクセスについ
ても、CPU1と同様にしてダブルワードライトアクセ
スを行うことができる。
【0045】ここで、あるブロック単位でCPU1がダ
ブルワードでライトし、このライトしたメモリ領域をC
PU2によるダブルワードでリードする場合について考
える。すなわち、CPU2が昇順でダブルワードライト
を行ったときに、CPU2が昇順でダブルワードリード
を行うと、先頭のメモリ領域において、CPU1がライ
トした後に、CPU2がリードすれば最新のデータをリ
ードすることができるが、ブロックの後半において、何
らかの原因、たとえばCPU1とCPU2との処理速度
の違いによってCPU1によるライトとCPU2による
リードとが逆転した場合、CPU2がリードするデータ
が最新のものではなくなってしまう。
【0046】CPU1が昇順でダブルワードライトを行
ったときに、CPU2が降順でメモリの最後尾からダブ
ルワードリードを行うと、最後尾が最新になっていれ
ば、他のメモリ領域も最新になっており、古いデータを
使ってしまうことはなくなる。従来のアクセス制御方法
では、昇順のアクセスしか行うことができなかったた
め、1回目:4n→2回目:4n+2→3回目:4n−
4→4回目:4n−2というようなアドレス指定しかで
きず、アドレス指定のソフトウェアが複雑なものとなっ
ていたが、この実施の形態1によれば、1回目:2n→
2回目:2n−2→3回目:2n−4→4回目:2n−
6となり、単にアドレスをデクリメントする処理のみで
アドレス指定を行うことができる。
【0047】この実施の形態1によれば、回数フラグ1
3a,13bにフラグ設定をもとに、ダブルワードアク
セスの1回目のアクセスか2回目のアクセスかを判別す
ることができるので、ダブルワードアクセスの場合にも
ワード(「2n」)単位で共有メモリに格納あるいはア
クセスを行うことができ、共有メモリの有効利用を図る
ことができる。また、昇順/降順設定レジスタ12a,
12bを設けて、昇順/降順のダブルワードアクセスを
可能とし、柔軟なダブルワードアクセスが実現され、し
かもワード単位で単にアドレスをインクリメントあるい
はデクリメントするのみでアドレス指定を行うことがで
き、アドレス指定にかかるソフトウェアの負荷を軽減す
ることができる。
【0048】実施の形態2.つぎに、この発明の実施の
形態2について説明する。実施の形態1では、ワード
(「2n」)単位で昇順/降順のダブルワードアクセス
を可能とし、しかもメモリの有効利用を図ることができ
るものであったが、この実施の形態2では、ダブルワー
ドアクセスが競合した場合に交互にアクセスさせる調停
を行って、ダブルワードアクセス時における一方のCP
Uのウェイト時間が長くなることによる情報処理装置全
体の処理速度の低下を防止するようにしている。
【0049】図7は、この発明の実施の形態2である情
報処理装置の構成を示すブロック図である。図7におい
て、この情報処理装置は、図1に示した情報処理装置と
同様に、二つのCPU1,2と、バスコントロール回路
3と、共有メモリ4とを有する。CPU1,2とバスコ
ントロール回路3との間と、共有メモリ4とバスコント
ロール回路3との間とは、それぞれ16ビットデータバ
スB1,B2,B4によって接続され、CPU1,2
は、共有メモリ4に対して16ビット(ワード)単位で
アクセスが可能である。共有メモリ4は、ワード単位で
データを格納する。バスコントロール回路3は、32ビ
ットが連続して意味をもつダブルワードのアクセス制御
も行い、各CPU1,2に対するデータの整合性をとる
ようにしている。
【0050】バスコントロール回路3は、各CPU1,
2からのアクセス要求S51,S52が競合した場合
に、CPU1,2による共有メモリ4に対するアクセス
を交互に行うようにする調停部30と、クロック発生部
40とを有する。調停部30のタイミング調停部31
は、CPU1,2からのアクセス要求S51,S52を
クロックCKをもとに交互に検出し、検出結果をメモリ
アクセス信号S53,S54としてオア回路32に出力
する。オア回路32は、メモリアクセス信号S53,S
54の論理和をとり、その論理和結果を共有メモリ4に
対する最終的なメモリアクセス信号として出力し、これ
によって、CPU1,2によるアクセスが競合した場合
に、各CPU1,2による共有メモリ4に対するアクセ
スを交互に行うようにしている。
【0051】なお、この実施の形態2は、実施の形態1
と同様にダブルワードアクセス設定レジスタ11a,1
1bおよびバッファ14a,14bに対応するダブルワ
ードアクセス設定レジスタおよびバッファを有してい
る。この場合、バッファは、少なくとも1つのダブルワ
ードを一時格納する領域を有する。また、この実施の形
態2では、ダブルワードの共有メモリの格納開始あるい
はアクセス開始のアドレスは、ワードアドレスであり、
偶数「2m」のワードアドレスから開始し、奇数「2m
+1」のワードアドレスで終了するという固定的な制御
が行われる。
【0052】ここで、図8に示すタイミングチャートを
参照して、調停部30によるアクセス調停処理について
説明する。まず、クロック発生部40が発生するクロッ
クCKの立ち上がりは、CPU1による動作タイミング
として用い、クロックCKの立ち下がりは、CPU2に
よる動作タイミングとして用いられる。なお、共有メモ
リ4に対するアクセスは、クロックCKの1周期内に終
了するものとする。図8では、CPU1からのアクセス
要求S51の後に、CPU2からのアクセス要求S52
があった場合を示している。図8において、クロックC
Kの立ち上がりP1では、CPU1によるアクセス要求
S51がなされており、アクセス要求S51がオン状態
となっている。また、CPU2によるアクセス要求S5
2がなされており、アクセス要求S52がオン状態とな
っている。ここで、CPU2によるメモリアクセス信号
S54はオフ状態であるため、CPU1によるメモリア
クセス信号S53をオン状態にし、最終的にCPU1に
よるメモリアクセス信号S53をメモリアクセス信号S
55として共有メモリ4に出力する。なお、上述したオ
ン/オフ状態は、各信号S51〜S55のH/Lに対応
する。
【0053】その後、クロックCKの立ち下がりP2で
は、CPU2によるアクセス要求S52がなされている
が、CPU1によるメモリアクセス信号S53がオン状
態でメモリアクセス中であるため、この時点P2では、
CPU2によるメモリアクセスを行うことができない。
さらに、クロックCKの立ち上がりP3では、メモリア
クセス信号S53のオン状態が1周期分経過したので、
メモリアクセス信号S53をオフ状態にする。
【0054】その後、クロックCKの立ち下がりP4で
は、CPU1,2によるアクセス要求S51,S52が
ともにオン状態であり、しかもCPU1によるメモリア
クセス信号S53がオフ状態であるので、CPU2によ
るメモリアクセス信号S54をオン状態にする。クロッ
クCKの立ち上がりP5では、CPU1,2によるアク
セス要求S51,S52がともにオン状態であるが、C
PU2によるメモリアクセス信号S53がオン状態であ
るため、CPU1によるメモリアクセスを行うことがで
きない。
【0055】その後、クロックCKの立ち下がりP6で
は、メモリアクセス信号S54のオン状態が1周期分経
過したので、メモリアクセス信号S54をオフ状態にす
る。クロックCKの立ち下がりP7では、CPU1,2
によるアクセス要求S51,S52がともにオン状態で
あり、しかもCPU2によるメモリアクセス信号S54
がオフ状態であるので、CPU1によるメモリアクセス
信号S53をオン状態にする。
【0056】その後、クロックCKの立ち下がりP8で
は、CPU1,2によるアクセス要求S51,S52が
ともにオン状態であるが、CPU1によるメモリアクセ
ス信号S53がオン状態であるため、CPU2によるメ
モリアクセスは行うことができない。さらに、クロック
CKの立ち上がりP9では、CPU1による2回目のメ
モリアクセスが終了し、これにより、CPU1のアクセ
ス要求S51をオフ状態にする。
【0057】その後、クロックCKの立ち下がりP10
では、CPU2によるアクセス要求S52がオン状態で
あるが、CPU1によるアクセス要求S51およびメモ
リアクセス信号S52がともにオフ状態であるため、C
PU2によるメモリアクセス信号S54をオン状態にす
る。その後、クロックCKの立ち下がりP11では、C
PU2によるメモリアクセスが終了し、これにより、C
PU2によるアクセス要求S2をオフ状態にする。
【0058】このように調停部30は、CPU1,2か
らのメモリアクセスが競合した場合、クロックCKの立
ち上がりおよび立ち下がりをそれぞれ各CPU1,2の
動作タイミングに設定して、交互にメモリアクセスを行
わせているので、CPU1あるいはCPU2が長いウェ
イト時間をとることによる情報処理装置全体の処理速度
低下を防止することができる。
【0059】ここで、CPU1,2による共有メモリ4
へのアクセスが競合する場合に、データの整合性を維持
しつつ、アクセスが交互に行われ、ウェイト時間が各C
PU1,2に分散される具体例を説明する。図9〜図1
2は、CPU2によるダブルワードリードアクセスが先
に行われ、このダブルワードリードアクセスとCPU1
によるダブルワードライトアクセスとが競合する場合の
処理を示す図である。
【0060】図9において、共有メモリ4のアドレス
「2m」,「2m+1」には、それぞれデータ「A」,
「B」が格納されている。CPU2は、このデータ
「A」,「B」をリードするアクセスを行い、CPU1
は、アドレス「2m」,「2m+1」にデータ「C」,
「D」をライトするアクセスを行う。まず、CPU2
は、共有メモリ4のアドレス「2m」からデータ「A」
をリードする。その後、図10において、CPU1は、
共有メモリ4のアドレス「2m」にデータ「C」をライ
トする。その後、図11において、CPU2は、アドレ
ス「2m+1」のデータ「B」をリードする。その後、
図12において、CPU1は、アドレス「2m+1」に
データ「D」をライトする。このようにして、CPU2
は、データ「A」,「B」をリードすることができ、C
PU1は、データ「C」,「D」をライトすることがで
き、最終的にデータの整合性は保たれたことになる。
【0061】同様にして、図13〜16は、CPU1に
よるダブルワードライトアクセスが先に行われ、このダ
ブルワードライトアクセスとCPU2によるダブルリー
ドライトアクセスとが競合する場合の処理を示す図であ
る。共有メモリ4のアドレス「2m」,「2m+1」に
は、それぞれデータ「A」,「B」が格納されており、
CPU1は、このアドレス「2m」,「2m+1」にデ
ータ「C」,「D」をライトするアクセスを行い、CP
U2は、アドレス「2m」,「2m+1」のデータをダ
ブルワードリードする。図13において、まず、CPU
1は、共有メモリ4のアドレス「2m」にデータ「C」
をライトする。その後、図14において、CPU2は、
アドレス「2m」にライトされたデータ「C」を読み込
む。その後、図15において、CPU1は、共有メモリ
4のアドレス「2m+1」にデータ「D」をライトす
る。その後、図16において、CPU2は、アドレス
「2m+1」にライトされたデータ「D」をリードす
る。このようにして、CPU1は、データ「C」,
「D」をライトすることができ、CPU2は、アドレス
「2m」,「2m+1」における最新のデータであるデ
ータ「C」,「D」をリードすることができ、最終的に
データの整合性は保たれたことになる。
【0062】同様にして、図17〜図20は、CPU1
によるダブルワードライトアクセスが先に行われ、この
ダブルワードライトアクセスとCPU2によるダブルワ
ードライトアクセスとが競合する場合の処理を示す図で
ある。共有メモリ4のアドレス「2m」,「2m+1」
には、それぞれデータ「A」,「B」が格納されてお
り、CPU1は、このアドレス「2m」,「2m+1」
にデータ「C」,「D」をライトするアクセスを行い、
CPU2は、このアドレス「2m」,「2m+1」にデ
ータ「E」,「D」をライトするアクセスを行う。図1
7において、まず、CPU1は、共有メモリ4のアドレ
ス「2m」にデータ「C」をライトする。その後、図1
8において、CPU2は、アドレス「2m」にデータ
「E」をライトする。その後、図19において、CPU
1は、アドレス「2m+1」にデータ「D」をライトす
る。その後、図20において、CPU2は、アドレス
「2m+1」にデータ「F」をライトする。このように
して、CPU1は、データ「C」,「D」をライトする
ことができ、CPU2は、データ「E」,「F」をライ
トし、最終的に共有メモリ4には、データ「E」,
「F」がライトされ、データの整合性は保たれたことに
なる。なお、図9〜図20に示した例を実施の形態1に
当てはめた場合、各CPU1,2によるダブルワードア
クセスのワード単位のアクセスは、連続して行われるこ
とになる。
【0063】この実施の形態2によれば、各CPU1,
2によるダブルワードアクセスが競合した場合でも、調
停部30が各CPU1,2による共有メモリ4に対する
ワード単位のアクセスを交互に行わせるようにしている
ので、一方のCPUの待ち時間が長くなることがなく、
情報処理装置全体の処理速度を低下を防ぐことができ
る。
【0064】なお、上述した実施の形態1,2では、共
有メモリ4がワード単位でデータを格納し、CPU1,
2とバスコントロール回路3との間のデータバスおよび
共有メモリ4とバスコントロール回路3とのデータバス
は、16ビット幅でワード単位でデータ転送することが
できる場合におけるCPU1,2による共有メモリ4に
対するダブルワードアクセスを行う情報処理装置をそれ
ぞれ一実施形態として述べたが、これに限らず、16ビ
ット以外のデータバスのビット幅の2倍のビット幅で意
味をもつデータをアクセスする場合にも適用できるの
は、明らかである。
【0065】
【発明の効果】以上説明したように、この発明によれ
ば、前記バスコントロール回路のアクセスコントロール
回路は、ダブルワードアクセス設定レジスタにダブルワ
ードアクセスを行う設定がなされた場合、昇順/降順設
定レジスタによって設定された昇順あるいは降順で共有
メモリに対するアクセスをワード単位で行うとともに、
前記共有メモリからダブルワードを読み出す場合、該ダ
ブルワードを前記共有メモリからワード単位で連続して
読み出してバッファに格納し、前記共有メモリにダブル
ワードを書き込む場合、該ダブルワードを前記バッファ
に格納し、その後該ダブルワードの残りワードのアクセ
ス要求時に該バッファに格納されたダブルワードを連続
して前記共有メモリに書き込む制御を行うようにしてい
るので、共有メモリ上の任意のワードアドレスからダブ
ルワードアクセスすることができ、共有メモリのメモリ
領域を有効利用することができるという効果を奏する。
また、昇順のみならず降順にワード単位でアクセスする
ことができるので、ワードアドレスのインクリメントあ
るいはデクリメントのみという単純なアドレス指定処理
によって柔軟なアドレス指定を行うことができ、ダブル
ワードアドレス指定にかかる負荷が軽減されるという効
果を奏する。
【0066】つぎの発明によれば、回数フラグが、ダブ
ルワードアクセス時における最初のワードアクセスか残
りのワードアクセスかを示すフラグを設定し、アクセス
コントロール回路が、前記回数フラグに設定されたフラ
グをもとに共有メモリに対するダブルワードアクセス時
における他のCPUの待機あるいは待機解除を制御する
ようにしているので、ダブルワードアクセスが競合した
場合でも確実にデータの整合性を保持することができる
という効果を奏する。
【0067】つぎの発明によれば、バスコントロール回
路のアクセス制御手段が、共有メモリに対するダブルワ
ードの格納順序およびアクセス順序を偶数ワードアドレ
スから開始させるとともに、ダブルワードのデータを前
記バッファに一時格納し、第一のCPUおよび第二のC
PUによる前記共有メモリに対する前記ダブルワードの
アクセス要求が競合した場合、所定クロックに対応させ
て前記第一のCPUおよび前記第二のCPUに対するア
クセス権をワード単位で交互に割り当て、ダブルワード
アクセスが競合した場合でも確実にデータの整合性を保
持できるようにしているので、ダブルワードアクセスが
競合した場合であっても、各CPUは、常に交互にアク
セス権が与えられるため、一方のCPUの待機時間が極
端に長くなることがなく、各CPUに待機時間が分散さ
れ、情報処理装置全体の処理速度を低下させないという
効果を奏する。
【0068】つぎの発明によれば、アクセス制御手段
が、所定クロックの前縁および後縁を第一のCPUおよ
び第二のCPUに割り当てて制御するようにしているの
で、アクセス権の交互割り当てを簡易に行うことができ
るという効果を奏する。
【0069】つぎの発明によれば、昇順/降順設定工程
によって、第一のCPUおよび第二のCPUが共有メモ
リに対してダブルワードアクセスを行う場合にダブルワ
ードアクセスを昇順で行うか降順で行うかを設定し、ア
クセス工程によって、前記昇順/降順設定レジスタによ
って設定された昇順あるいは降順で前記共有メモリに対
するアクセスをワード単位で行うようにしているので、
共有メモリ上の任意のワードアドレスからダブルワード
アクセスすることができ、共有メモリのメモリ領域を有
効利用することができるという効果を奏する。また、昇
順のみならず降順にワード単位でアクセスすることがで
きるので、ワードアドレスのインクリメントあるいはデ
クリメントのみという単純なアドレス指定処理によって
柔軟なアドレス指定を行うことができ、ダブルワードア
ドレス指定にかかる負荷が軽減されるという効果を奏す
る。
【0070】つぎの発明によれば、前記アクセス工程
は、共有メモリからダブルワードを読み出す場合、該ダ
ブルワードを前記共有メモリからワード単位で連続して
読み出してバッファに格納し、前記共有メモリにダブル
ワードを書き込む場合、該ダブルワードをバッファに格
納し、その後該ダブルワードの残りワードのアクセス要
求時に該バッファに格納されたダブルワードを連続して
前記共有メモリに書き込む制御を行うようにしているの
で、ダブルワードアクセスが競合した場合に各CPUの
待ち時間を短縮することができるという効果を奏する。
【0071】つぎの発明によれば、回数フラグ設定工程
が、ダブルワードアクセス時における最初のワードアク
セスか残りのワードアクセスかを示すフラグを設定し、
前記アクセス工程が、前記回数フラグに設定されたフラ
グをもとに前記共有メモリに対するダブルワードアクセ
ス時における他のCPUの待機あるいは待機解除を制御
するようにしているので、ダブルワードアクセスが競合
した場合でも確実にデータの整合性を保持することがで
きるという効果を奏する。
【0072】つぎの発明によれば、設定工程によって、
共有メモリに対するダブルワードの格納順序およびアク
セス順序を偶数ワードアドレスから開始させる設定を予
め行い、格納工程によって、前記共有メモリに対するダ
ブルワードのデータをバッファに一時格納し、アクセス
制御工程によって、第一のCPUおよび第二のCPUに
よる前記共有メモリに対する前記ダブルワードのアクセ
ス要求が競合した場合、所定クロックに対応させて前記
第一のCPUおよび前記第二のCPUに対するアクセス
権をワード単位で交互に割り当てるようにしているの
で、ダブルワードアクセスが競合した場合であっても、
各CPUは、常に交互にアクセス権が与えられるため、
一方のCPUの待機時間が極端に長くなることがなく、
各CPUに待機時間が分散され、情報処理装置全体の処
理速度を低下させないという効果を奏する。
【0073】つぎの発明によれば、前記アクセス制御工
程が、所定クロックの前縁および後縁を第一のCPUお
よび第二のCPUに割り当てて制御するようにしている
ので、アクセス権の交互割り当てを簡易に行うことがで
きるという効果を奏する。
【図面の簡単な説明】
【図1】 この発明の実施の形態1である情報処理装置
の構成を示すブロック図である。
【図2】 図1に示したCPU1がダブルワードリード
アクセスを行う場合の前処理を説明する図である。
【図3】 図1に示したCPU1による昇順のダブルワ
ードリードアクセス時における泣別れ防止制御回路20
の動作処理を説明する図である。
【図4】 図1に示したCPU1による昇順のダブルワ
ードリードアクセス時における泣別れ防止制御回路20
の動作処理を説明する図である。
【図5】 図1に示したCPU1による降順のダブルワ
ードライトアクセス時における泣別れ防止制御回路20
の動作処理を説明する図である。
【図6】 図1に示したCPU1による降順のダブルワ
ードライトアクセス時における泣別れ防止制御回路20
の動作処理を説明する図である。
【図7】 この発明の実施の形態2である情報処理装置
の構成を示すブロック図である。
【図8】 図7に示した調停部30の動作処理を示すタ
イミングチャートである。
【図9】 図7に示したCPU2によるダブルワードリ
ードアクセスが先に行われ、このダブルワードリードア
クセスとCPU1によるダブルワードライトアクセスと
が競合する場合の処理を示す図である。
【図10】 図7に示したCPU2によるダブルワード
リードアクセスが先に行われ、このダブルワードリード
アクセスとCPU1によるダブルワードライトアクセス
とが競合する場合の処理を示す図である。
【図11】 図7に示したCPU2によるダブルワード
リードアクセスが先に行われ、このダブルワードリード
アクセスとCPU1によるダブルワードライトアクセス
とが競合する場合の処理を示す図である。
【図12】 図7に示したCPU2によるダブルワード
リードアクセスが先に行われ、このダブルワードリード
アクセスとCPU1によるダブルワードライトアクセス
とが競合する場合の処理を示す図である。
【図13】 図7に示したCPU1によるダブルワード
ライトアクセスが先に行われ、このダブルワードライト
アクセスとCPU2によるダブルリードライトアクセス
とが競合する場合の処理を示す図である。
【図14】 図7に示したCPU1によるダブルワード
ライトアクセスが先に行われ、このダブルワードライト
アクセスとCPU2によるダブルリードライトアクセス
とが競合する場合の処理を示す図である。
【図15】 図7に示したCPU1によるダブルワード
ライトアクセスが先に行われ、このダブルワードライト
アクセスとCPU2によるダブルリードライトアクセス
とが競合する場合の処理を示す図である。
【図16】 図7に示したCPU1によるダブルワード
ライトアクセスが先に行われ、このダブルワードライト
アクセスとCPU2によるダブルリードライトアクセス
とが競合する場合の処理を示す図である。
【図17】 図7に示したCPU1によるダブルワード
ライトアクセスが先に行われ、このダブルワードライト
アクセスとCPU2によるダブルワードライトアクセス
とが競合する場合の処理を示す図である。
【図18】 図7に示したCPU1によるダブルワード
ライトアクセスが先に行われ、このダブルワードライト
アクセスとCPU2によるダブルワードライトアクセス
とが競合する場合の処理を示す図である。
【図19】 図7に示したCPU1によるダブルワード
ライトアクセスが先に行われ、このダブルワードライト
アクセスとCPU2によるダブルワードライトアクセス
とが競合する場合の処理を示す図である。
【図20】 図7に示したCPU1によるダブルワード
ライトアクセスが先に行われ、このダブルワードライト
アクセスとCPU2によるダブルワードライトアクセス
とが競合する場合の処理を示す図である。
【図21】 二つのCPUがバスコントロール回路を介
して一つの共有メモリを共有する情報処理装置の概要構
成を示す図である。
【図22】 データの泣別れが生じる場合を説明する図
である。
【図23】 従来の情報処理装置の構成を示すブロック
図である。
【図24】 共有メモリ104からダブルワードをリー
ドする際の泣別れ防止回路110の動作を示す図であ
る。
【図25】 共有メモリ104からダブルワードをリー
ドする際の泣別れ防止回路110の動作を示す図であ
る。
【図26】 共有メモリ104にダブルワードをライト
する際の泣別れ防止回路110の動作を示す図である。
【図27】 共有メモリ104にダブルワードをライト
する際の泣別れ防止回路110の動作を示す図である。
【符号の説明】
1,2 CPU、3 バスコントロール回路、4 共有
メモリ、10 泣別れ防止回路、11a,11b ダブ
ルワードアクセス設定レジスタ、12a,12b 昇順
/降順設定レジスタ、13a,13b 回数フラグ、1
4a,14bバッファ、20 泣別れ防止制御回路、3
0 調停部、31 タイミング調停部、32 オア回
路、40 クロック発生部、B1,B2,B4 16ビ
ットデータバス。
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 15/173 G06F 15/173 A (72)発明者 都築 貴之 東京都千代田区丸の内二丁目2番3号 三 菱電機株式会社内 (72)発明者 山本 順司 東京都千代田区大手町二丁目6番2号 三 菱電機エンジニアリング株式会社内 Fターム(参考) 5B045 BB12 BB28 BB29 DD01 5B060 AB18 CA08 CB01 CB05 CB10 CD17 DA00 KA02 KA04 5B061 BC02 GG01 GG11 RR03

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 第一のCPUと、第二のCPUと、前記
    第一および第二のCPUが共有し、ワード単位でデータ
    を格納する共有メモリと、前記第一および第二のCPU
    による前記共有メモリに対するアクセスを制御するバス
    コントロール回路とを有した情報処理装置において、 前記バスコントロール回路は、 前記共有メモリに対して書き込むべきあるいは読み出し
    たダブルワードのうちの少なくとも一つのワードを一時
    格納するバッファと、 ダブルワードアクセスである旨を示すダブルワードアク
    セス設定レジスタと、 ダブルワードアクセスを昇順あるいは降順のいずれで行
    うかを示す昇順/降順設定レジスタと、 前記ダブルワードアクセス設定レジスタにダブルワード
    アクセスを行う設定がなされた場合、前記昇順/降順設
    定レジスタによって設定された昇順あるいは降順で前記
    共有メモリに対するアクセスをワード単位で行うととも
    に、前記共有メモリからダブルワードを読み出す場合、
    該ダブルワードを前記共有メモリからワード単位で連続
    して読み出して前記バッファに格納し、前記共有メモリ
    にダブルワードを書き込む場合、該ダブルワードを前記
    バッファに格納し、その後該ダブルワードの残りワード
    のアクセス要求時に該バッファに格納されたダブルワー
    ドを連続して前記共有メモリに書き込む制御を行うアク
    セスコントロール回路と、 を備えたことを特徴とする情報処理装置。
  2. 【請求項2】 ダブルワードアクセス時における最初の
    ワードアクセスか残りのワードアクセスかを示すフラグ
    を設定する回数フラグをさらに備え、 前記アクセスコントロール回路は、前記回数フラグに設
    定されたフラグをもとに前記共有メモリに対するダブル
    ワードアクセス時における他のCPUの待機あるいは待
    機解除を制御することを特徴とする請求項1に記載の情
    報処理装置。
  3. 【請求項3】 第一のCPUと、第二のCPUと、前記
    第一および第二のCPUが共有し、ワード単位でデータ
    を格納する共有メモリと、前記第一および第二のCPU
    による前記共有メモリに対するアクセスを制御するバス
    コントロール回路とを有した情報処理装置において、 前記バスコントロール回路は、 前記共有メモリに対して書き込むべきあるいは読み出し
    たダブルワードを一時格納するバッファと、 所定クロックを発生するクロック発生手段と、 前記共有メモリに対するダブルワードの格納順序および
    アクセス順序を偶数ワードアドレスから開始させるとと
    もに、ダブルワードのデータを前記バッファに一時格納
    し、前記第一のCPUおよび前記第二のCPUによる前
    記共有メモリに対する前記ダブルワードのアクセス要求
    が競合した場合、前記所定クロックに対応させて前記第
    一のCPUおよび前記第二のCPUに対するアクセス権
    をワード単位で交互に割り当てるアクセス制御手段と、 を備えたことを特徴とする情報処理装置。
  4. 【請求項4】 前記アクセス制御手段は、前記所定クロ
    ックの前縁および後縁を前記第一のCPUおよび前記第
    二のCPUに割り当てて制御することを特徴とする請求
    項3に記載の情報処理装置。
  5. 【請求項5】 第一のCPUと、第二のCPUと、前記
    第一および第二のCPUが共有し、ワード単位でデータ
    を格納する共有メモリと、前記第一および第二のCPU
    による前記共有メモリに対するアクセスを制御するバス
    コントロール回路とを有した情報処理装置のアクセス制
    御方法において、 前記第一のCPUおよび前記第二のCPUが前記共有メ
    モリに対してダブルワードアクセスを行う場合にダブル
    ワードアクセスを昇順で行うか降順で行うかを設定する
    昇順/降順設定工程と、 前記昇順/降順設定レジスタによって設定された昇順あ
    るいは降順で前記共有メモリに対するアクセスをワード
    単位で行うアクセス工程と、 を含むことを特徴とする情報処理装置のアクセス制御方
    法。
  6. 【請求項6】 前記アクセス工程は、 前記共有メモリからダブルワードを読み出す場合、該ダ
    ブルワードを前記共有メモリからワード単位で連続して
    読み出してバッファに格納し、前記共有メモリにダブル
    ワードを書き込む場合、該ダブルワードをバッファに格
    納し、その後該ダブルワードの残りワードのアクセス要
    求時に該バッファに格納されたダブルワードを連続して
    前記共有メモリに書き込む制御を行うことを特徴とする
    請求項5に記載の情報処理装置のアクセス制御方法。
  7. 【請求項7】 ダブルワードアクセス時における最初の
    ワードアクセスか残りのワードアクセスかを示すフラグ
    を設定する回数フラグ設定工程をさらに含み、 前記アクセス工程は、前記回数フラグに設定されたフラ
    グをもとに前記共有メモリに対するダブルワードアクセ
    ス時における他のCPUの待機あるいは待機解除を制御
    することを特徴とする請求項5または6に記載の情報処
    理装置のアクセス制御方法。
  8. 【請求項8】 第一のCPUと、第二のCPUと、前記
    第一および第二のCPUが共有し、ワード単位でデータ
    を格納する共有メモリと、前記第一および第二のCPU
    による前記共有メモリに対するアクセスを制御するバス
    コントロール回路とを有した情報処理装置のアクセス制
    御方法において、 前記共有メモリに対するダブルワードの格納順序および
    アクセス順序を偶数ワードアドレスから開始させる設定
    を予め行う設定工程と、 前記共有メモリに対するダブルワードのデータをバッフ
    ァに一時格納する格納工程と、 前記第一のCPUおよび前記第二のCPUによる前記共
    有メモリに対する前記ダブルワードのアクセス要求が競
    合した場合、所定クロックに対応させて前記第一のCP
    Uおよび前記第二のCPUに対するアクセス権をワード
    単位で交互に割り当てるアクセス制御工程と、 を含むことを特徴とする情報処理装置のアクセス制御方
    法。
  9. 【請求項9】 前記アクセス制御工程は、前記所定クロ
    ックの前縁および後縁を前記第一のCPUおよび前記第
    二のCPUに割り当てて制御することを特徴とする請求
    項8に記載の情報処理装置のアクセス制御方法。
JP24401099A 1999-08-30 1999-08-30 情報処理装置およびそのアクセス制御方法 Expired - Fee Related JP3995370B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24401099A JP3995370B2 (ja) 1999-08-30 1999-08-30 情報処理装置およびそのアクセス制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24401099A JP3995370B2 (ja) 1999-08-30 1999-08-30 情報処理装置およびそのアクセス制御方法

Publications (2)

Publication Number Publication Date
JP2001067328A true JP2001067328A (ja) 2001-03-16
JP3995370B2 JP3995370B2 (ja) 2007-10-24

Family

ID=17112381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24401099A Expired - Fee Related JP3995370B2 (ja) 1999-08-30 1999-08-30 情報処理装置およびそのアクセス制御方法

Country Status (1)

Country Link
JP (1) JP3995370B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117002A (ja) * 2006-10-31 2008-05-22 Matsushita Electric Works Ltd 共有メモリインターフェイス

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117002A (ja) * 2006-10-31 2008-05-22 Matsushita Electric Works Ltd 共有メモリインターフェイス

Also Published As

Publication number Publication date
JP3995370B2 (ja) 2007-10-24

Similar Documents

Publication Publication Date Title
JP3598321B2 (ja) 異なる周波数で動作するバス間でやりとりされるバッファリングデータ
JP3579461B2 (ja) データ処理システム及びデータ処理装置
JP3181515B2 (ja) データ転送方法及びその方法を用いたデータ転送装置
JPS6356754A (ja) 入出力チヤネル
US5371857A (en) Input/output interruption control system for a virtual machine
JP4531223B2 (ja) 集合的メモリを共有する複数のプロセッサを備えたデータ処理装置
JPS60117327A (ja) ディスプレイ装置
JP3153078B2 (ja) データ処理装置
JP2001067328A (ja) 情報処理装置およびそのアクセス制御方法
JP4536189B2 (ja) Dma転送装置及びdma転送システム
JP4610961B2 (ja) アクセス制御装置
JP2002132577A (ja) データ処理システム
KR950013116B1 (ko) 타이콤(ticom) 시스템의 록킹 장치와 록킹 제어 방법
JPH09186836A (ja) ディジタル複写機
JP2847863B2 (ja) マイクロプロセッサ割込み制御方式
JPH0212358A (ja) データ転送方式
JPH07271575A (ja) レジスタ拡張回路
KR950003883B1 (ko) 메모리제어논리장치
JP2870285B2 (ja) レジスタ
JPH0561769A (ja) メモリ・アクセス方法
JPH08123725A (ja) ライトバック式キャッシュシステム
JPH0728990A (ja) グラフィックスメモリアクセス回路
JPH1083344A (ja) 情報処理装置
JPH1063565A (ja) データ処理装置
JP2002123423A (ja) データ処理システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040305

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040427

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070426

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070731

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

Free format text: PAYMENT UNTIL: 20100810

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3995370

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100810

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110810

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110810

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120810

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120810

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130810

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees