JPH0727488B2 - メモリアクセス制御方式 - Google Patents
メモリアクセス制御方式Info
- Publication number
- JPH0727488B2 JPH0727488B2 JP1156169A JP15616989A JPH0727488B2 JP H0727488 B2 JPH0727488 B2 JP H0727488B2 JP 1156169 A JP1156169 A JP 1156169A JP 15616989 A JP15616989 A JP 15616989A JP H0727488 B2 JPH0727488 B2 JP H0727488B2
- Authority
- JP
- Japan
- Prior art keywords
- request
- input
- memory access
- access control
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
- Multi Processors (AREA)
Description
【発明の詳細な説明】 本発明はメモリアクセス制御方式に関し、特に、入出力
プロセッサ(IOP)が最大スループットでデータ転送時
には命令プロセッサ(IP)リクエストの処理を制限し
て、チャネル・オーバーランの発生を防止することがで
きるメモリアクセス制御方式に関する。
プロセッサ(IOP)が最大スループットでデータ転送時
には命令プロセッサ(IP)リクエストの処理を制限し
て、チャネル・オーバーランの発生を防止することがで
きるメモリアクセス制御方式に関する。
従来のメモリアクセス制御方式においては、チャネル・
オーバーラン対策として、特開昭57−205882号公報に記
載のように、IOPリクエスト処理に対してその制御を工
夫したものがある。
オーバーラン対策として、特開昭57−205882号公報に記
載のように、IOPリクエスト処理に対してその制御を工
夫したものがある。
この制御方式の場合、たとえば入出力チャネルからの特
定条件時のフェッチ動作ではバッファメモリ上に所要の
データが存在しない時、バッファメモリに書き込むが、
それ以外は直接主メモリをアクセスしている。
定条件時のフェッチ動作ではバッファメモリ上に所要の
データが存在しない時、バッファメモリに書き込むが、
それ以外は直接主メモリをアクセスしている。
〔発明が解決しようとする課題〕 ところが、上記従来技術は、IOPが最大スループットで
データ転送時のIPのリクエストの扱いについて考慮され
ておらず、マルチプロセッサシステムで、システムコン
トロールユニット(SCU)のリクエスト処理能力が高く
なり、IPOが最大スループットでデータ転送時にもIPリ
クエストが受け付けられてしまい、その結果、IOPのス
ループットが低下するという問題があった。特に、SCU
内にキャッシュメモリを有するシステムでは、IPリクエ
ストによりキャッシュメモリに無いデータをアクセスさ
れると、リクエスト処理に長いサイクルが占有され、ス
ループット低下の問題が顕著になっている。
データ転送時のIPのリクエストの扱いについて考慮され
ておらず、マルチプロセッサシステムで、システムコン
トロールユニット(SCU)のリクエスト処理能力が高く
なり、IPOが最大スループットでデータ転送時にもIPリ
クエストが受け付けられてしまい、その結果、IOPのス
ループットが低下するという問題があった。特に、SCU
内にキャッシュメモリを有するシステムでは、IPリクエ
ストによりキャッシュメモリに無いデータをアクセスさ
れると、リクエスト処理に長いサイクルが占有され、ス
ループット低下の問題が顕著になっている。
本発明の1つの目的は、チャネル・オーバーランの発生
を防止できるメモリアクセス制御方式を提供することに
ある。
を防止できるメモリアクセス制御方式を提供することに
ある。
本発明の他の1つの目的は、不要な命令プロセッサリク
エスト処理の増加を防止し、スループットの低下を防止
できるメモリアクセス制御方式を提供することにある。
エスト処理の増加を防止し、スループットの低下を防止
できるメモリアクセス制御方式を提供することにある。
本発明の他の1つの目的は、システムの使用チャネル数
に応じた制御が可能なメモリアクセス制御方式を提供す
ることにある。
に応じた制御が可能なメモリアクセス制御方式を提供す
ることにある。
本発明のさらに他の1つの目的は、キャッシュメモリを
持つシステムにおいても、リクエストデータの存在しな
いキャッシュメモリへのアクセスを阻止し、スループッ
トの低下を防止できるメモリアクセス制御方式を提供す
ることにある。
持つシステムにおいても、リクエストデータの存在しな
いキャッシュメモリへのアクセスを阻止し、スループッ
トの低下を防止できるメモリアクセス制御方式を提供す
ることにある。
本発明の前記ならびにその他の目的と新規な特徴は、本
明細書の記述および添付図面から明らかになるであろ
う。
明細書の記述および添付図面から明らかになるであろ
う。
本願において開示される発明のうち、代表的なものの概
要を簡単に説明すれば、以下のとおりである すなわち、本発明によるメモリアクセス制御方式は、1
つまたは複数の命令プロセッサと、1つまたは複数の入
出力プロセッサとが主メモリを共有するシステムであっ
て、前記入出力プロセッサからのリクエスト用のリクエ
ストバッファをメモリ制御部に複数個持つデータ処理装
置において、前記リクエストバッファに所定量のリクエ
ストが待たされていることを検知する手段と、この検知
結果に基づいて、命令プロセッサリクエストの主メモリ
アクセスの一部または全部を抑止する命令プロセッサリ
クエスト処理抑止手段と、前記入出力プロセッサからの
リクエストピッチが設定値より長いことを検知して、前
記命令プロセッサリクエストの抑止を解除する手段とを
備えてなるものである。
要を簡単に説明すれば、以下のとおりである すなわち、本発明によるメモリアクセス制御方式は、1
つまたは複数の命令プロセッサと、1つまたは複数の入
出力プロセッサとが主メモリを共有するシステムであっ
て、前記入出力プロセッサからのリクエスト用のリクエ
ストバッファをメモリ制御部に複数個持つデータ処理装
置において、前記リクエストバッファに所定量のリクエ
ストが待たされていることを検知する手段と、この検知
結果に基づいて、命令プロセッサリクエストの主メモリ
アクセスの一部または全部を抑止する命令プロセッサリ
クエスト処理抑止手段と、前記入出力プロセッサからの
リクエストピッチが設定値より長いことを検知して、前
記命令プロセッサリクエストの抑止を解除する手段とを
備えてなるものである。
また、本発明においては、前記検知手段は、前記リクエ
ストバッファの全てにリクエストが満杯である状態にお
いて前記入出力プロセッサのリクエスト制御部が次のリ
クエストを発行し、そのリクエストが待たされている状
態を検知するものとすることができる。
ストバッファの全てにリクエストが満杯である状態にお
いて前記入出力プロセッサのリクエスト制御部が次のリ
クエストを発行し、そのリクエストが待たされている状
態を検知するものとすることができる。
さらに、本発明のメモリアクセス制御方式は、前記入出
力プロセッサのリクエストピッチをシステムに応じて任
意に設定可能な手段を有するものとすることができる。
力プロセッサのリクエストピッチをシステムに応じて任
意に設定可能な手段を有するものとすることができる。
また、前記検知手段で検知された情報を、前記入出力プ
ロセッサが最大スループットでデータ転送している間保
持する手段を有するものとすることができる。
ロセッサが最大スループットでデータ転送している間保
持する手段を有するものとすることができる。
また、前記命令プロセッサリクエスト処理抑止手段は、
命令プロセッサリクエストを無条件に抑止する手段より
なることができる。
命令プロセッサリクエストを無条件に抑止する手段より
なることができる。
さらに、前記命令プロセッサリクエスト処理抑止手段
は、命令プロセッサリクエストを、処理を抑止されるグ
ループと、受け付けられるグループとに分けて処理する
手段よりなることができる。
は、命令プロセッサリクエストを、処理を抑止されるグ
ループと、受け付けられるグループとに分けて処理する
手段よりなることができる。
さらに、本発明による他の1つのメモリアクセス制御方
式は、1つまたは複数の命令プロセッサと、1つまたは
複数の入出力プロセッサとが、主メモリと該主メモリの
データの一部を格納するキッシュメモリを共有するシス
テムで、入出力プロセッサのリクエスト用のリクエスト
バッファに所定量のリクエストが待たされていることを
検知する手段と、この検知結果に基づいて、命令プロセ
ッサリクエストの主メモリアクセスのうち、リクエスト
データが前記キャッシュメモリに存在する場合のみ該キ
ャッシュへのアクセスを許可し、該キャッシュメモリに
存在しない場合には、前記主メモリへのアクセスを抑止
してキャッシュメモリの入口で待たせて前記入出力プロ
セッサのリクエストを優先処理させる手段とを備えてな
るものである。
式は、1つまたは複数の命令プロセッサと、1つまたは
複数の入出力プロセッサとが、主メモリと該主メモリの
データの一部を格納するキッシュメモリを共有するシス
テムで、入出力プロセッサのリクエスト用のリクエスト
バッファに所定量のリクエストが待たされていることを
検知する手段と、この検知結果に基づいて、命令プロセ
ッサリクエストの主メモリアクセスのうち、リクエスト
データが前記キャッシュメモリに存在する場合のみ該キ
ャッシュへのアクセスを許可し、該キャッシュメモリに
存在しない場合には、前記主メモリへのアクセスを抑止
してキャッシュメモリの入口で待たせて前記入出力プロ
セッサのリクエストを優先処理させる手段とを備えてな
るものである。
本発明のメモリアクセス制御方式によれば、入出力プロ
セッサからのリクエストがリクエストバッファに待たさ
れている場合、命令プロセッサのリクエストがチャネル
スループットの確保に悪影響を及ぼさないよう制限でき
るので、スループットの確保が可能であり、チャネル・
オーバーランの発生を防止できる。
セッサからのリクエストがリクエストバッファに待たさ
れている場合、命令プロセッサのリクエストがチャネル
スループットの確保に悪影響を及ぼさないよう制限でき
るので、スループットの確保が可能であり、チャネル・
オーバーランの発生を防止できる。
また、本発明においては、入出力プロセッサからのリク
エストピッチを監視できるので、命令プロセッサリクエ
ストの処理を本当に必要な時にのみ制限することがで
き、不要な命令プロセッサリクエスト処理の増加を抑制
できる。
エストピッチを監視できるので、命令プロセッサリクエ
ストの処理を本当に必要な時にのみ制限することがで
き、不要な命令プロセッサリクエスト処理の増加を抑制
できる。
さらに、本発明では、入出力プロセッサのリクエストピ
ッチをシステムに応じて任意に設定できることにより、
入出力プロセッサの最大スループットに悪影響を与える
ことなく、システムの使用チャネル数に応じた制御が可
能である。
ッチをシステムに応じて任意に設定できることにより、
入出力プロセッサの最大スループットに悪影響を与える
ことなく、システムの使用チャネル数に応じた制御が可
能である。
また、本発明においては、キャッシュメモリを持つシス
テムにおいても、リクエストデータの存在しないキャッ
シュメモリへのアクセスが行われないので、それに起因
してリクエスト処理がなされず、スループットの低下を
来すことがなくなる。
テムにおいても、リクエストデータの存在しないキャッ
シュメモリへのアクセスが行われないので、それに起因
してリクエスト処理がなされず、スループットの低下を
来すことがなくなる。
以下、本発明を図面に示す実施例に関して説明する。
第1図は本発明の一実施例によるメモリアクセス制御方
式を適用できるシステムの一例を示すブロック図、第2
図は本発明におけるシステム構成の一例を示す図、第3
図は本発明における他のシステム構成を示す図、第4図
は本発明における入出力プロセッサ優先処理判定回路の
詳細を示す図、第5図は本発明における命令プロセッサ
リクエスト処理抑止手段の一例を示す図、第6図は同じ
く本発明における命令プロセッサリクエスト処理抑止手
段の他の例を示す図、第7図は本発明におけるキャッシ
ュメモリを持つシステム例での命令プロセッサのリクエ
スト受付制限手段の一例を示す図である。
式を適用できるシステムの一例を示すブロック図、第2
図は本発明におけるシステム構成の一例を示す図、第3
図は本発明における他のシステム構成を示す図、第4図
は本発明における入出力プロセッサ優先処理判定回路の
詳細を示す図、第5図は本発明における命令プロセッサ
リクエスト処理抑止手段の一例を示す図、第6図は同じ
く本発明における命令プロセッサリクエスト処理抑止手
段の他の例を示す図、第7図は本発明におけるキャッシ
ュメモリを持つシステム例での命令プロセッサのリクエ
スト受付制限手段の一例を示す図である。
本発明を適用できるシステムは、第2図の如き主メモリ
あるいは第3図の如きキャッシュメモリを共有する複数
の命令プロセッサ(IP)と、入出力プロセッサ(IOP)
とからなるシステムが例示されるが、説明を簡単にする
ため、各1台の命令プロセッサおよび入出力プロセッサ
が主メモリのコピーデータを有するキャッシュメモリを
共有するシステムを例として説明する。
あるいは第3図の如きキャッシュメモリを共有する複数
の命令プロセッサ(IP)と、入出力プロセッサ(IOP)
とからなるシステムが例示されるが、説明を簡単にする
ため、各1台の命令プロセッサおよび入出力プロセッサ
が主メモリのコピーデータを有するキャッシュメモリを
共有するシステムを例として説明する。
このようなシステムは第1図に示されている。
第1図のシステムは、上記の如く、1台の命令プロセッ
サ(IP)1と、1台の入出力プロセッサ(IOP)2とを
備えている。これらのIP1およびIOP2の各々はそれぞれ
のIPリクエスト制御部3とIOPリクエスト制御部4とを
有している。
サ(IP)1と、1台の入出力プロセッサ(IOP)2とを
備えている。これらのIP1およびIOP2の各々はそれぞれ
のIPリクエスト制御部3とIOPリクエスト制御部4とを
有している。
また、第1図のシステムは、システムコントロールユニ
ット(SCU)5と、主メモリ(MS)6とを有している。
ット(SCU)5と、主メモリ(MS)6とを有している。
前記SCU5は、入出力プロセッサ(IOP)2からのリクエ
ストを受け付けるための3個のIOPリクエストバッファ
7,8,9を有し、これらのIOPリクエストバッファ7,8,9は
セレクタ10でいずれか1個を選択するようになってい
る。
ストを受け付けるための3個のIOPリクエストバッファ
7,8,9を有し、これらのIOPリクエストバッファ7,8,9は
セレクタ10でいずれか1個を選択するようになってい
る。
また、IOPリクエストバッファ7,8,9はIOPリクエストの
優先処理を判定する手段、すなわちIOP優先処理判定回
路11に接続されている。このIOP優先処理判定回路11に
は、前記IOPリクエスト制御部4も接続されている。
優先処理を判定する手段、すなわちIOP優先処理判定回
路11に接続されている。このIOP優先処理判定回路11に
は、前記IOPリクエスト制御部4も接続されている。
一方、SCU5内には、前記IPリクエスト制御部3に接続さ
れ、命令プロセッサ(IP)1からのリクエストを受け付
けるためのIPリクエストバッファ12が設けられている。
このIPリクエストバッファ12は、IPリクエスト処理制限
回路13(IPすなわち命令プロセッサリクエスト処理抑止
手段)に接続されている。
れ、命令プロセッサ(IP)1からのリクエストを受け付
けるためのIPリクエストバッファ12が設けられている。
このIPリクエストバッファ12は、IPリクエスト処理制限
回路13(IPすなわち命令プロセッサリクエスト処理抑止
手段)に接続されている。
このIPリクエスト処理制限回路13は、前記IOP優先処理
判定回路11の出力信号100に従ってIP1からのリクエスト
(IPリクエスト)の処理を制限ないし抑止する手段とし
て機能するものである。
判定回路11の出力信号100に従ってIP1からのリクエスト
(IPリクエスト)の処理を制限ないし抑止する手段とし
て機能するものである。
また、前記IPリクエスト処理制限回路13は、SCU5のプラ
イオリティ回路14に接続され、該プライオリティ回路14
は、メモリアクセス制御部15、およびキャッシュメモリ
(BS)16に接続されている。プライオリティ回路14は、
IPリクエストとIOPリクエストとが競合した場合、IOPリ
クエストが常に優先されるよう構成されている。
イオリティ回路14に接続され、該プライオリティ回路14
は、メモリアクセス制御部15、およびキャッシュメモリ
(BS)16に接続されている。プライオリティ回路14は、
IPリクエストとIOPリクエストとが競合した場合、IOPリ
クエストが常に優先されるよう構成されている。
前記IOP優先処理判定回路11は、IOPリクエストバッファ
7,8,9の3個全てにリクエストが滞留し、すなわち各バ
ッファ7,8,9からの信号103,104,105が全て“1"で、さら
にIOPリクエスト制御部4が次のリクエストを発行して
いる状態(すなわちIOPリクエスト制御部4からの信号1
02が“1"の状態)で、該回路11からの出力信号100を
“1"にし、IPリクエストの処理を制限する。これは、出
力信号100をIPリクエスト処理制限回路13,メモリアクセ
ス制御部15へ送出し、それぞれの制御部でIOPリクエス
トの優先処理を実施することにより行われる。
7,8,9の3個全てにリクエストが滞留し、すなわち各バ
ッファ7,8,9からの信号103,104,105が全て“1"で、さら
にIOPリクエスト制御部4が次のリクエストを発行して
いる状態(すなわちIOPリクエスト制御部4からの信号1
02が“1"の状態)で、該回路11からの出力信号100を
“1"にし、IPリクエストの処理を制限する。これは、出
力信号100をIPリクエスト処理制限回路13,メモリアクセ
ス制御部15へ送出し、それぞれの制御部でIOPリクエス
トの優先処理を実施することにより行われる。
ここで、IOP優先処理判定回路11の詳細な説明を第4図
に基づいて行う。本実施例ではIOPリクエストバッファ
7,8,9が全て満杯で、IOP2の内部には次のリクエストが
待たされている状態は、IOP2が最大スループットを要求
してメモリアクセスリクエストを発行している状態であ
るものとする。
に基づいて行う。本実施例ではIOPリクエストバッファ
7,8,9が全て満杯で、IOP2の内部には次のリクエストが
待たされている状態は、IOP2が最大スループットを要求
してメモリアクセスリクエストを発行している状態であ
るものとする。
通常、IOP2のリクエスト処理は、最大スループットを出
力する時でも、用意されたバッファでメモリアクセスオ
ーバー・ヘッドを吸収するように設計される。
力する時でも、用意されたバッファでメモリアクセスオ
ーバー・ヘッドを吸収するように設計される。
しかし、SCU5のメモリスループットがIOP2のデータ転送
要求最大スループットに対して十分大きくないシステム
では、IOPが最大スループットを要求している時にIP1の
リクエストがSCU5で処理されると、IOP2のIOPリクエス
トバッファ7,8,9で吸収できずに、IOP2のIOPリクエスト
制御部4が次のリクエストをSCU5側で受け取ってもらえ
ずに待たされて、上記状態となる。つまり、信号102〜1
05が全て“1"となり、ANDゲート401の出力信号402も
“1"となり、IOP優先処理指示用フリップフロップ(F
F)400は“1"にセットされる。
要求最大スループットに対して十分大きくないシステム
では、IOPが最大スループットを要求している時にIP1の
リクエストがSCU5で処理されると、IOP2のIOPリクエス
トバッファ7,8,9で吸収できずに、IOP2のIOPリクエスト
制御部4が次のリクエストをSCU5側で受け取ってもらえ
ずに待たされて、上記状態となる。つまり、信号102〜1
05が全て“1"となり、ANDゲート401の出力信号402も
“1"となり、IOP優先処理指示用フリップフロップ(F
F)400は“1"にセットされる。
この状態で、IP1のリクエストがSCU5で処理されると、I
OP2は最大スループットを確保できずにチャネル・オー
バーランとなる危険がある。したがって、IP処理を抑止
あるいは制限する必要が生じる。
OP2は最大スループットを確保できずにチャネル・オー
バーランとなる危険がある。したがって、IP処理を抑止
あるいは制限する必要が生じる。
ここでは、その実施例の説明の前に前記FF400のリセッ
ト条件検出論理について説明する。すなわち、第4図に
おいては、符号410の部分がリセット条件検出回路であ
る。予め初期設定時に、IOP2の最大スループットを出力
時のIOPリクエスト受け付けピッチ(マシンサイクル数:
P)をリセット条件検出回路410のレジスタ410aへ設定し
ておく。FF400が“1"に設定された時点以降、IOP2から
のリクエストをリクエストバッファ7,8,9に受け付ける
ピッチをカウントし、該カウント値>PならばFF400を
リセットする。
ト条件検出論理について説明する。すなわち、第4図に
おいては、符号410の部分がリセット条件検出回路であ
る。予め初期設定時に、IOP2の最大スループットを出力
時のIOPリクエスト受け付けピッチ(マシンサイクル数:
P)をリセット条件検出回路410のレジスタ410aへ設定し
ておく。FF400が“1"に設定された時点以降、IOP2から
のリクエストをリクエストバッファ7,8,9に受け付ける
ピッチをカウントし、該カウント値>PならばFF400を
リセットする。
また、第4図における信号404は、IOP2のリクエストを
リクエストバッファ7,8,9に受け付けたことを示すパル
ス信号である。405はセレクタで、信号404が“1"の時、
all“0"が選択されて、レジスタ406にセットされる。40
7はプラス1回路で、出力結果が無条件にレジスタ408に
セットされる。409はレジスタ408の内容がall“1"か否
かを判定する回路で、all“1"になるまで、レジスタ406
と407は毎サイクル、カウントアップされる。
リクエストバッファ7,8,9に受け付けたことを示すパル
ス信号である。405はセレクタで、信号404が“1"の時、
all“0"が選択されて、レジスタ406にセットされる。40
7はプラス1回路で、出力結果が無条件にレジスタ408に
セットされる。409はレジスタ408の内容がall“1"か否
かを判定する回路で、all“1"になるまで、レジスタ406
と407は毎サイクル、カウントアップされる。
次回のリクエストで信号404が“1"になると、レジスタ4
08と410aの内容がコンペア回路411で比較され、 408の内容>410aの内容 の時、信号415は“1"となり、信号404とANDゲート413で
論理積をとられ、FF400のセット条件を表す信号402が同
時に“1"でない時、信号403でFF400をリセットする。
08と410aの内容がコンペア回路411で比較され、 408の内容>410aの内容 の時、信号415は“1"となり、信号404とANDゲート413で
論理積をとられ、FF400のセット条件を表す信号402が同
時に“1"でない時、信号403でFF400をリセットする。
さらに、第4図の符号412,416はORゲート、414はANDゲ
ートである。信号402が“1"となると、ゲート416,412を
経由してレジスタ406は“0"にクリアされる。一方、フ
リップフロップ(FF)417がセットされるため、ANDゲー
ト414は抑止されて、レジスタ406〜407のカウントアッ
プは、パルス信号404が発生して、FF417がリセットされ
るまで、ホールドされる。
ートである。信号402が“1"となると、ゲート416,412を
経由してレジスタ406は“0"にクリアされる。一方、フ
リップフロップ(FF)417がセットされるため、ANDゲー
ト414は抑止されて、レジスタ406〜407のカウントアッ
プは、パルス信号404が発生して、FF417がリセットされ
るまで、ホールドされる。
次に、前記IPリクエスト処理制限回路13(IPリクエスト
処理抑止手段)、すなわちIOP優先処理指示用FF400の出
力信号100を入力して、IPリクエスト処理を制限ないし
抑止する回路の実施例について、第5図および第6図に
基づいて説明する。
処理抑止手段)、すなわちIOP優先処理指示用FF400の出
力信号100を入力して、IPリクエスト処理を制限ないし
抑止する回路の実施例について、第5図および第6図に
基づいて説明する。
第5図はIP1のリクエストを無条件に抑止する例であ
る。この場合、IPリクエスト処理制限回路13はANDゲー
ト501を有し、このANDゲート501には、FF400からの信号
100と、IPリクエストバッファ12からの信号108が入力さ
れる。
る。この場合、IPリクエスト処理制限回路13はANDゲー
ト501を有し、このANDゲート501には、FF400からの信号
100と、IPリクエストバッファ12からの信号108が入力さ
れる。
信号100と108との論理積信号は信号106としてプライオ
リティ回路14に送出される。また、プライオリティ回路
14には、セレクタ10からの信号107も入力される。
リティ回路14に送出される。また、プライオリティ回路
14には、セレクタ10からの信号107も入力される。
第6図は、IPリクエストを2つのグループに分け、処理
を抑制するグループのリクエスト602と受け付けるグル
ープのリクエスト603とに分けて処理する例である。
を抑制するグループのリクエスト602と受け付けるグル
ープのリクエスト603とに分けて処理する例である。
本実施例のIPリクエスト処理制限回路13は、信号600を
入力されるリクエスト・デコーダ601、ANDゲート604,60
5およびORゲート606よりなる。
入力されるリクエスト・デコーダ601、ANDゲート604,60
5およびORゲート606よりなる。
リクエスト602と603の分類の基準は、IOP2のリクエスト
処理の間に入れても、最大スループットの低下を発生さ
せない短サイクル処理のリクエストを602、それ以外を6
03とするものとする。
処理の間に入れても、最大スループットの低下を発生さ
せない短サイクル処理のリクエストを602、それ以外を6
03とするものとする。
次に、第7図に基づき、本発明によりキャッシュ・メモ
リを持つシステムでのIPリクエストの受け付け制限ない
し抑止処理について説明する。
リを持つシステムでのIPリクエストの受け付け制限ない
し抑止処理について説明する。
第6図で説明した例では、短サイクルで処理できるIPリ
クエストはFF400が“1"の時でも受け付ける処理を実施
するとした。しかし、キャッシュメモリ(BS)16を持つ
システムでは、短サイクルリクエストでもキャッシュメ
モリ16にリクエストデータが無い場合(以下、Not in B
Sと呼ぶ)、主メモリ6からのブロック転送で、長時間S
CU5を占有してしまう。したがって、FF400が“1"の間に
受け付けて処理するIPリクエストは、in BSについての
み実施し、Not in BSケースはIP1のリクエストバッフ
ァ12で待たせる制御を行う必要がある。
クエストはFF400が“1"の時でも受け付ける処理を実施
するとした。しかし、キャッシュメモリ(BS)16を持つ
システムでは、短サイクルリクエストでもキャッシュメ
モリ16にリクエストデータが無い場合(以下、Not in B
Sと呼ぶ)、主メモリ6からのブロック転送で、長時間S
CU5を占有してしまう。したがって、FF400が“1"の間に
受け付けて処理するIPリクエストは、in BSについての
み実施し、Not in BSケースはIP1のリクエストバッフ
ァ12で待たせる制御を行う必要がある。
第7図の例では、キャッシュは2ロー(ROW)構成とし
ている。750はIPリクエスト,751はIOPリクエスト、752
はIPリクエストアドレスレジスタ、753はIOPリクエスト
アドレスレジスタである。SCU5のプライオリティ回路14
を通過したリクエストアドレスはアドレスレジスタ701
にセットされる。アドレスレジスタ701はキャッシュの
カラムアドレス713とエントリアドレス714とに分かれ
る。702はROW0キャッシュアドレスタグ部分、703はROW1
キャッシュアドレスタグ部分である。
ている。750はIPリクエスト,751はIOPリクエスト、752
はIPリクエストアドレスレジスタ、753はIOPリクエスト
アドレスレジスタである。SCU5のプライオリティ回路14
を通過したリクエストアドレスはアドレスレジスタ701
にセットされる。アドレスレジスタ701はキャッシュの
カラムアドレス713とエントリアドレス714とに分かれ
る。702はROW0キャッシュアドレスタグ部分、703はROW1
キャッシュアドレスタグ部分である。
キャッシュアドレスタグ部の出力とエントリアドレス部
分714が、コンペア回路704,705で比較され、一致してい
れば“1"が出される。アクセスした領域がキャッシュに
存在すれば、704,705の出力のいずれかが“1"になる。
したがって、in BSであれば、ORゲート706の出力は
“1"になる。一方、メモリアクセス制御部15からは制御
ステージ信号715と実行中のリクエストがIPリクエスト
であることを示す信号716が出力される。
分714が、コンペア回路704,705で比較され、一致してい
れば“1"が出される。アクセスした領域がキャッシュに
存在すれば、704,705の出力のいずれかが“1"になる。
したがって、in BSであれば、ORゲート706の出力は
“1"になる。一方、メモリアクセス制御部15からは制御
ステージ信号715と実行中のリクエストがIPリクエスト
であることを示す信号716が出力される。
IPリクエストがin BSであれば、in BSの処理起動(76
0)がなされる。Not in BSケースで、(716)AND(10
0)の時はNot in BS処理起動(761)は抑止される。代
わりに、FF711が点灯し、IPリクエストがSCU5のプライ
オリティ回路14へ進むのをANDゲート754で抑止する。こ
の場合、FF400が“1"の場合、キャッシュメモリ16にリ
クエストデータが存在するか否か判定するまで、IPリク
エスト751のスタックの更新は待たせる制御とする。
0)がなされる。Not in BSケースで、(716)AND(10
0)の時はNot in BS処理起動(761)は抑止される。代
わりに、FF711が点灯し、IPリクエストがSCU5のプライ
オリティ回路14へ進むのをANDゲート754で抑止する。こ
の場合、FF400が“1"の場合、キャッシュメモリ16にリ
クエストデータが存在するか否か判定するまで、IPリク
エスト751のスタックの更新は待たせる制御とする。
なお、第7図の例において、符号707,708,709,720,754
はANDゲートである。符号710はインバータである。
はANDゲートである。符号710はインバータである。
本実施例によれば、IOP2が最大スループットでデータ転
送中は、IP1のリクエストを抑止することができるた
め、スループットの低下を防止できる。
送中は、IP1のリクエストを抑止することができるた
め、スループットの低下を防止できる。
また、最大スループット時のメモリアクセスピッチを予
め指定しておくことにより、実際のメモリピッチと比較
して、本当に必要な時のみIPリクエスト処理を制限する
ことが可能となる。
め指定しておくことにより、実際のメモリピッチと比較
して、本当に必要な時のみIPリクエスト処理を制限する
ことが可能となる。
以上、本発明者によってなされた発明を実施例に基づき
具体的に説明したが、本発明は前記実施例に限定される
ものではなく、その要旨を逸脱しない範囲で種々変更可
能であることはいうまでもない。
具体的に説明したが、本発明は前記実施例に限定される
ものではなく、その要旨を逸脱しない範囲で種々変更可
能であることはいうまでもない。
本願において開示される発明のうち、代表的なものによ
って得られる効果を簡単に説明すれば、下記のとおりで
ある。
って得られる効果を簡単に説明すれば、下記のとおりで
ある。
(1).入出力プロセッサからのリクエストがリクエス
トバッファに待たされている場合、命令プロセッサのリ
クエストがチャネルスループットの確保に悪影響を及ぼ
さないように制限できるので、チャネル・オーバーラン
の発生を防止できる。
トバッファに待たされている場合、命令プロセッサのリ
クエストがチャネルスループットの確保に悪影響を及ぼ
さないように制限できるので、チャネル・オーバーラン
の発生を防止できる。
(2).入出力プロセッサからのリクエストピッチを監
視できるので、命令プロセッサリクエストは本当に必要
の時にのみ処理を制限され、不要な命令プロセッサリク
エスト処理の増加を防止できる。
視できるので、命令プロセッサリクエストは本当に必要
の時にのみ処理を制限され、不要な命令プロセッサリク
エスト処理の増加を防止できる。
(3).前記(1),(2)により、システムのトータ
ル性能を低下させることなく、システムの有効利用が図
られる。
ル性能を低下させることなく、システムの有効利用が図
られる。
(4).入出力プロセッサのリクエストピッチをシステ
ムに応じて任意に設定できることにより、入出力プロセ
ッサの最大スループットに悪影響を及ぼすことなく、シ
ステムの使用チャネル数に応じたメモリアクセス制御が
可能となる。
ムに応じて任意に設定できることにより、入出力プロセ
ッサの最大スループットに悪影響を及ぼすことなく、シ
ステムの使用チャネル数に応じたメモリアクセス制御が
可能となる。
(5).キャッシュメモリを持つシステムにおいても、
キャッシュメモリにリクエストデータがある場合にのみ
命令プロセッサリクエストを処理するので、リクエスト
データの存在しないキャッシュメモリにアクセスするこ
とに起因してリクエスト処理がなされることがなく、ス
ループットの低下を防止することができる。
キャッシュメモリにリクエストデータがある場合にのみ
命令プロセッサリクエストを処理するので、リクエスト
データの存在しないキャッシュメモリにアクセスするこ
とに起因してリクエスト処理がなされることがなく、ス
ループットの低下を防止することができる。
第1図は本発明の一実施例によるメモリアクセス制御方
式を適用できるシステムの一例を示すブロック図、 第2図は本発明におけるシステム構成の一例を示す図、 第3図は本発明における他のシステム構成を示す図、 第4図は本発明における入出力プロセッサ優先処理判定
回路の詳細を示す図、 第5図は本発明における命令プロセッサリクエスト処理
抑止手段の一例を示す図、 第6図は同じく本発明における命令プロセッサリクエス
ト処理抑止手段の他の例を示す図、 第7図は本発明におけるキャッシュメモリを持つシステ
ム例での命令プロセッサのリクエスト受付制限手段の一
例を示す図である。 1……命令プロセッサ(IP)、2……入出力プロセッサ
(IOP)、3……IPリクエスト制御部、4……IOPリクエ
スト制御部、5……システムコントロールユニット(SC
U)、6……主メモリ(MS)、7,8,9……IOPリクエスト
バッファ、10……セレクタ、11……IOP優先処理判定回
路、12……IPリクエストバッファ、13……IPリクエスト
処理制限回路(IPリクエスト処理抑止手段)、14……プ
ライオリティ回路、15……メモリアクセス制御部、16…
…キャッシュメモリ(BS)、100……出力信号、102〜10
5……信号、400……IOP優先処理指示用フリップフロッ
プ(FF)、401……ANDゲート、406,408,410a……レジス
タ、412,416……ORゲート、414……ANDゲート、417……
フリップフロップ(FF)、501……ANDゲート、601……
リクエスト・デコーダ、604,605……ANDゲート、606…
…ORゲート、750……IPリクエスト、751……IOPリクエ
スト。
式を適用できるシステムの一例を示すブロック図、 第2図は本発明におけるシステム構成の一例を示す図、 第3図は本発明における他のシステム構成を示す図、 第4図は本発明における入出力プロセッサ優先処理判定
回路の詳細を示す図、 第5図は本発明における命令プロセッサリクエスト処理
抑止手段の一例を示す図、 第6図は同じく本発明における命令プロセッサリクエス
ト処理抑止手段の他の例を示す図、 第7図は本発明におけるキャッシュメモリを持つシステ
ム例での命令プロセッサのリクエスト受付制限手段の一
例を示す図である。 1……命令プロセッサ(IP)、2……入出力プロセッサ
(IOP)、3……IPリクエスト制御部、4……IOPリクエ
スト制御部、5……システムコントロールユニット(SC
U)、6……主メモリ(MS)、7,8,9……IOPリクエスト
バッファ、10……セレクタ、11……IOP優先処理判定回
路、12……IPリクエストバッファ、13……IPリクエスト
処理制限回路(IPリクエスト処理抑止手段)、14……プ
ライオリティ回路、15……メモリアクセス制御部、16…
…キャッシュメモリ(BS)、100……出力信号、102〜10
5……信号、400……IOP優先処理指示用フリップフロッ
プ(FF)、401……ANDゲート、406,408,410a……レジス
タ、412,416……ORゲート、414……ANDゲート、417……
フリップフロップ(FF)、501……ANDゲート、601……
リクエスト・デコーダ、604,605……ANDゲート、606…
…ORゲート、750……IPリクエスト、751……IOPリクエ
スト。
Claims (10)
- 【請求項1】1つまたは複数の命令プロセッサと、1つ
または複数の入出力プロセッサとが主メモリを共有する
システムであって、前記入出力プロセッサからのリクエ
スト用のリクエストバッファをメモリ制御部に複数個持
つデータ処理装置において、前記リクエストバッファに
所定量のリクエストが待たされていることを検知する手
段と、この検知結果に基づいて、命令プロセッサリクエ
ストの主メモリアクセスの一部または全部を抑止する命
令プロセッサリクエスト処理抑止手段と、前記入出力プ
ロセッサからのリクエストピッチが設定値より長いこと
を検知して、前記命令プロセッサリクエストの抑止を解
除する手段とを備えてなることを特徴とするメモリアク
セス制御方式。 - 【請求項2】前記検知手段は、前記リクエストバッファ
の全てにリクエストが満杯である状態において前記入出
力プロセッサのリクエスト制御部が次のリクエストを発
行し、そのリクエストが待たされている状態を検知する
ことを特徴とする請求項1記載のメモリアクセス制御方
式。 - 【請求項3】前記入出力プロセッサのリクエストピッチ
をシステムに応じて任意に設定可能な手段を有すること
を特徴とする請求項1または2記載のメモリアクセス制
御方式。 - 【請求項4】前記検知手段で検知された情報を、前記入
出力プロセッサが最大スループットでデータ転送してい
る間保持する手段を有することを特徴とする請求項1,2,
または3記載のメモリアクセス制御方式。 - 【請求項5】前記命令プロセッサリクエスト処理抑止手
段は、命令プロセッサリクエストを無条件に抑止する手
段よりなることを特徴とする請求項1,2,3,または4記載
のメモリアクセス制御方式。 - 【請求項6】前記命令プロセッサリクエスト処理抑止手
段は、命令プロセッサリクエストを、処理を抑止される
グループと、受け付けられるグループとに分けて処理す
る手段よりなることを特徴とする請求項1,2,3,または4
記載のメモリアクセス制御方式。 - 【請求項7】1つまたは複数の命令プロセッサと、1つ
または複数の入出力プロセッサとが、主メモリと該主メ
モリのデータの一部を格納するキッシュメモリを共有す
るシステムで、入出力プロセッサのリクエスト用のリク
エストバッファに所定量のリクエストが待たされている
ことを検知する手段と、この検知結果に基づいて、命令
プロセッサリクエストの主メモリアクセスのうち、リク
エストデータが前記キャッシュメモリに存在する場合の
み該キャッシュへのアクセスを許可し、該キャッシュメ
モリに存在しない場合には、前記主メモリへのアクセス
を抑止してキャッシュメモリの入口で待たせて前記入出
力プロセッサのリクエストを優先処理させる手段とを備
えてなることを特徴とするメモリアクセス制御方式。 - 【請求項8】前記検知手段は、前記リクエストバッファ
の全てにリクエストが満杯である状態において前記入出
力プロセッサのリクエスト制御部が次のリクエストを発
行し、そのリクエストが待たされている状態を検知する
ことを特徴とする請求項7記載のメモリアクセス制御方
式。 - 【請求項9】前記入出力プロセッサのリクエストピッチ
をシステムに応じて任意に設定可能な手段を有すること
を特徴とする請求項7または8記載のメモリアクセス制
御方式。 - 【請求項10】前記検知手段で検知された情報を、前記
入出力プロセッサが最大スループットでデータ転送して
いる間保持する手段を有することを特徴とする請求項7,
8,または9記載のメモリアクセス制御方式。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1156169A JPH0727488B2 (ja) | 1989-06-19 | 1989-06-19 | メモリアクセス制御方式 |
US07/532,446 US5235688A (en) | 1989-06-19 | 1990-06-04 | Memory access control unit for allowing maximum throughput of an i/o processor and an i/o request buffer full state |
DE4019546A DE4019546A1 (de) | 1989-06-19 | 1990-06-19 | Speicherzugriffssteuereinheit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1156169A JPH0727488B2 (ja) | 1989-06-19 | 1989-06-19 | メモリアクセス制御方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0320845A JPH0320845A (ja) | 1991-01-29 |
JPH0727488B2 true JPH0727488B2 (ja) | 1995-03-29 |
Family
ID=15621860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1156169A Expired - Lifetime JPH0727488B2 (ja) | 1989-06-19 | 1989-06-19 | メモリアクセス制御方式 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5235688A (ja) |
JP (1) | JPH0727488B2 (ja) |
DE (1) | DE4019546A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5832304A (en) * | 1995-03-15 | 1998-11-03 | Unisys Corporation | Memory queue with adjustable priority and conflict detection |
US5765190A (en) * | 1996-04-12 | 1998-06-09 | Motorola Inc. | Cache memory in a data processing system |
US5915262A (en) * | 1996-07-22 | 1999-06-22 | Advanced Micro Devices, Inc. | Cache system and method using tagged cache lines for matching cache strategy to I/O application |
US5909561A (en) * | 1997-04-14 | 1999-06-01 | International Business Machines Corporation | Apparatus and method for separately layering cache and architectural specific functions in different operational controllers to facilitate design extension |
US6061755A (en) * | 1997-04-14 | 2000-05-09 | International Business Machines Corporation | Method of layering cache and architectural specific functions to promote operation symmetry |
JP5614341B2 (ja) * | 2011-03-16 | 2014-10-29 | 富士通株式会社 | データ処理装置、システムおよびデータ処理装置の動作方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3648252A (en) * | 1969-11-03 | 1972-03-07 | Honeywell Inc | Multiprogrammable, multiprocessor computer system |
US3954948A (en) * | 1973-03-12 | 1976-05-04 | Olin Corporation | Process for manufacture of calcium hypochlorite |
US4152761A (en) * | 1976-07-28 | 1979-05-01 | Intel Corporation | Multi-task digital processor employing a priority |
JPS6049946B2 (ja) * | 1981-06-10 | 1985-11-06 | 富士通株式会社 | バッファメモリ制御方式 |
DE3228788C2 (de) * | 1982-08-02 | 1984-06-20 | Siemens AG, 1000 Berlin und 8000 München | Anforderungsauswahlsteuerung in einem Prozessor-Speicher-Verbindungssytem |
IT1206331B (it) * | 1983-10-25 | 1989-04-14 | Honeywell Inf Systems | Architettura di sistema di elaborazione dati. |
US4835672A (en) * | 1984-04-02 | 1989-05-30 | Unisys Corporation | Access lock apparatus for use with a high performance storage unit of a digital data processing system |
US4646233A (en) * | 1984-06-20 | 1987-02-24 | Weatherford James R | Physical cache unit for computer |
US4942518A (en) * | 1984-06-20 | 1990-07-17 | Convex Computer Corporation | Cache store bypass for computer |
US4873629A (en) * | 1984-06-20 | 1989-10-10 | Convex Computer Corporation | Instruction processing unit for computer |
US4648065A (en) * | 1984-07-12 | 1987-03-03 | Sperry Corporation | Modified snapshot priority enabling two requestors to share a single memory port |
JP2761506B2 (ja) * | 1988-07-08 | 1998-06-04 | 株式会社日立製作所 | 主記憶制御装置 |
-
1989
- 1989-06-19 JP JP1156169A patent/JPH0727488B2/ja not_active Expired - Lifetime
-
1990
- 1990-06-04 US US07/532,446 patent/US5235688A/en not_active Expired - Fee Related
- 1990-06-19 DE DE4019546A patent/DE4019546A1/de active Granted
Also Published As
Publication number | Publication date |
---|---|
JPH0320845A (ja) | 1991-01-29 |
DE4019546A1 (de) | 1990-12-20 |
DE4019546C2 (ja) | 1992-11-05 |
US5235688A (en) | 1993-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2761506B2 (ja) | 主記憶制御装置 | |
JP3632766B2 (ja) | プロセッサ・システム | |
EP0348076B1 (en) | Data processing device | |
EP2377026B1 (en) | Resolving contention between data bursts | |
US7350005B2 (en) | Handling interrupts in a system having multiple data processing units | |
KR100293594B1 (ko) | 공유메모리로의배타적액세스를실행하는멀티프로세서시스템 | |
US4162529A (en) | Interruption control system in a multiprocessing system | |
US4800490A (en) | Buffer storage control system having a priority circuit | |
JPH0727488B2 (ja) | メモリアクセス制御方式 | |
KR100266883B1 (ko) | 데이타 버퍼가 부착된 smp 메모리 제어기에 있어서의 대기시간이 짧은 제1 데이타 억세스 | |
JPH06161873A (ja) | 主記憶に対する複数のアクセスポイントのハングアップ処理方式 | |
JPH02133842A (ja) | 中間バッファプリフェッチ制御方式 | |
JPH04140860A (ja) | マルチプロセッサにおけるバス制御方法 | |
JPS5839343B2 (ja) | マルチプロセツサシステム ノ ユウセンセイギヨホウシキ | |
JPS6145348A (ja) | バス優先権制御方式 | |
JPS6028022B2 (ja) | 入出力処理装置 | |
JPH04302352A (ja) | マルチプロセッサシステム | |
JP2634834B2 (ja) | 記憶制御方式 | |
JPH01280858A (ja) | 主記憶装置のロック制御方式 | |
JPS6126104B2 (ja) | ||
JPS6398049A (ja) | バツフア無効化処理時のバス制御方式 | |
JP3063501B2 (ja) | メモリアクセス制御方式 | |
JPH07334455A (ja) | データバス転送方法 | |
JPH04280344A (ja) | メモリ装置 | |
JPS61165172A (ja) | メモリアクセス制御方式 |