JPS5939767B2 - デ−タ処理システム - Google Patents

デ−タ処理システム

Info

Publication number
JPS5939767B2
JPS5939767B2 JP55134578A JP13457880A JPS5939767B2 JP S5939767 B2 JPS5939767 B2 JP S5939767B2 JP 55134578 A JP55134578 A JP 55134578A JP 13457880 A JP13457880 A JP 13457880A JP S5939767 B2 JPS5939767 B2 JP S5939767B2
Authority
JP
Japan
Prior art keywords
channel
data
address
global buffer
block
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
Application number
JP55134578A
Other languages
English (en)
Other versions
JPS5759219A (en
Inventor
幹雄 伊藤
啓一郎 内田
智 古賀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP55134578A priority Critical patent/JPS5939767B2/ja
Publication of JPS5759219A publication Critical patent/JPS5759219A/ja
Publication of JPS5939767B2 publication Critical patent/JPS5939767B2/ja
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明は、メモリ制御ユニツトにチャネル専用のチャネ
ル・グローバル・バツフアを設けたデータ処理システム
に関するものである。
チヤネル、中央処理装置およびベクトル・プロセツサが
主記憶ユニツトを共用するデータ処理システムは既に公
知であるが、ベクトル・プロセツサは大量のデータを連
続的にアクセスするので、チヤネルのアクセスが断片的
に人り込むと、性能上好ましくない。
即ち、チヤネルの主記憶ユニツトのアクセスのためにベ
クトル・プロセツサの主記憶ユニツト・アクセスを中断
すると、ベクトル・プロセツサの処理が阻害され、ベク
トル・プロセツサの主記憶ユニツト・アクセスが終了す
るまでチャネルの主記憶ユニツト・アクセスを待たせる
と、チヤネル側にオーバランが生ずるおそれがある。本
発明は、上記の考察に基づくものであつて、チヤネルか
らの主記憶ユニツト・アクセス回数を減らし、且つチャ
ネルの転送性能を向上できるようにしたデータ処理シス
テムを提供することを目的としている。
そしてそのため、本発明のデータ処理システムは、主記
憶ユニツト、チヤネルを制御するチヤネル制御装置、ベ
クトル・プロセツサおよび中央処理装置を含む複数のメ
モリ・アクセス要求元装置、並びに上記主記憶ユニツト
と上記各メモリ・アクセス要求元装置間の通信を行う記
憶制御ユニツトを備えるデータ処理システムにおいて、
それぞれが所定長のプロツク・データを格納し得る複数
のプロツク域を有するデータ部、並びにそれぞれが上記
各プロツク域と1対1の対応をなし、且つ対応するプロ
ツク・データのアドレス情報およびその他の管理情報が
書込まれる複数のエントリを有するタグ部を備えるチヤ
ネル一主記憶ユニツト間のデータ転送専用のチャネル・
グローバル・バツフアを上記記憶制御ユニツトに設ける
と共に、上記チヤネル・グローバル・バツフアと上記主
記憶ユニツトとの間のデータ転送をプロツク単位で行い
、上記チヤネルからのメモリ・アクセス要求があつたと
きには、先ず上記チヤネル・グローバル・バツフアに該
当するアドレスのデータが存在するかを調べ、要求アド
レスで指定されるデータが上記チヤネル・グローバル・
バツフアに存在する場合には、上記チヤネル・グローバ
ル・バツフアとチヤネルの間でデータのリード/ライト
を行(・、上記チヤネル・グローバル・バツフアに要求
アドレスで指定されるデータが存在しない場合には、フ
エツチ時は上記主記憶ユニツトから要求アドレスで指定
されるプロツク・データを読出して上記チヤネル・グロ
ーバル・バツフアにムーブ・インし、ストア時は要求ア
ドレスで定まる上記タグ・エントリに要求アドレスのプ
ロツク・アドレス部分を書込むと共に、当該タグ・エン
トリのバリッド・ビツトをオンとし、要求アドレスで定
まる上記プロツク域にチヤネルから送られて来るデータ
をストアすることを特徴とするものである。以下、本発
明を図面を参照しつつ説明する。第1図は本発明が適用
されるデータ処理システムの構成の1例を示す図、第2
図はチヤネル・グローバル・バツフアの1実施例のプロ
ツク図、第3図はチヤネル・グローバル・バツフアのタ
グ部およびデータ部の内容を説明する図、第4図はIP
L時における主記憶ユニツトのO番地附近のデータ内容
を説明する図である。
第1図において、MSUは主記憶ユニツト、MCUは記
憶制御ユニツト、CHPlとCHP2はチヤネル制御装
置、CPUは中央処理装置(スカラー・ユニツトとも言
う)、VPUはベクトル・プロセツサをそれぞれ示して
℃・る。
チヤネル制御装置CHPlおよびCHP2のそれぞれは
、図示しない複数のチャネルを制御する。
中央処理装置CPUは内部にバツフア・メモリを有して
いる。ベクトル・プロセツサVPUは、ベクトル・デー
タを処理するものであつて、内部に加算器や乗算器、除
算器などを有している。また、ベクトル・プロセツサP
Uと主記憶ユニツト間のデータ転送は、例えば64バイ
ト単位で行われる。チヤネル・グローバル・バツフアC
GBは、1プロツクが64バノ1卜であるプロツクを3
2個もしくは64個有しており、チャネル・グローバル
・バツフアCGBと主記憶ユニツトMSU間のデータ転
送はプロツク単位で行われる。チヤネルからのデータを
主記憶ユニツトMSUにストアする場合には、チヤネル
・グローバル・バツフアCGBにデータを書込んで行き
、大きなプロツク単位になつたとき主記憶ユニツトMS
Uにストアを行う。主記憶ユニツトのデータをチヤネル
に送る場合には、大きなプロツク単位でデータを主記憶
ユニツトMSUからチヤネル・グローバル・バツフアC
GBにムーブ・インしておき、チヤネル・グローバル・
バツフアCGBからチヤネルにデータを転送する。第2
図はチヤネル・グローバル・バツフアCGBの1実施例
のプロツク図である。
第2図において、1と2はチヤネル制御装置のアドレス
・ポート、3は中央処理装置のアドレス・ポート、4は
セレクタ、5はタグ部およびデータ部をアクセスするア
ドレスがセツトされるレジスタ、6はタグ部の書込レジ
スタ、7はタグ部の読出レジスタ、8はタグ部のメモリ
、9はデータ部のメモリ、10はデータ部の書込レジス
タ、11は読出レジスタ、12と13はチヤネル制御装
置のデータ・ポート、14は主記憶ユニツトのデータ・
ポート、15はセレクタ、16はアクセスされたアドレ
スを記憶しておくレジスタ、17と18はチャネルの主
記憶のユニツトに対するフエツチ要求が不成功になつた
ときアドレスを記憶して置くためのウエイト・ポート、
19と20はチヤネル制御装置へのデータ出力レジスタ
、21は主記憶ユニツトへのデータ出力レジスタ、22
と23は主記憶ユニツトへのフエツチ・アクセスを行つ
た時のアドレスを記憶しておくレジスタ、24はセレク
タ、25はタグ・マツチを得る比較回路、26と27は
主記憶フエツチ・アクセス中のアドレスと後続アドレス
を比較する比較回路、28は主記憶アクセス・アドレス
・レジスタ、29はインクリメン夕、30はセレクタ、
31は中央処理装置のウエイト・ポート、32はインク
リメンタをそれぞれ示している。次に、第2図のチヤネ
ル・グローバル・バツフアの動作について説明する。
最初にチヤネル制御装置CHPlがフエツチ要求を発し
たときの動作について説明する。チヤネル制御装置CH
Plの制御下にあるチヤネルがデータをフエツチする場
合には、チヤネルからのフエツチ要求およびアドレスが
ポート1にセツトされる。ポート1のアドレスはセレク
タ4を介してレジスタ5にセツトされ、その下位ビツト
によつてタグ部8およびデータ部9をセツト・アソシア
テイブ方式でアクセスする。これと同時に、このアドレ
スはレジスタ16,17,18に送られる。タグ部8か
ら読出されたデータはレジスタ7にセツトされ、データ
部9より読出されたデータはレジスタ11にセツトされ
る・。レジスタ7のアドレスとレジスタ16のアドレス
は比較回路25で比較される。両者が一致し且つタグ部
8から読出されたバリツド・フラグが論理「1」のとき
には、フエツチすべきデータがグローバル・バツフアC
GBに存在したことになり、レジスタ11のデータはデ
ータ出力レジスタ19を介してチヤネル制御装置CHP
lへ送られる。比較回路25が一致を出力しなかつたり
、バリツド・ピットが論理「O」の場合には、求めるデ
ータがチヤネル・グローバル・バツフアCGBには存在
しない。
このときにはレジスタ16のアドレスは主記憶アクセス
・アドレス・レジスタ28に送られ、プロツク・フエツ
チの主記憶アクセス要求が起動される。この主記憶アク
セス・アドレスはレジスタ22に保持され、プロツク・
フエツチ終了時にはセレクタ24および4を介してレジ
スタ5および6に送られる。そして、レジスタ5の下位
ビツトでタグ部8およびデータ部9がアクセスされ、レ
ジスタ6の内容がタグ部8に書込まれ、該当するバリツ
ド・ピットが論理「1」とされる。データ部9に書込む
べきデータは、レジスタ14からレジスタ10に送られ
、タグ書込みと同じタイミングでデータ部9に書込まれ
る。もしも何らかの事情、例えばプロツク・アドレス・
ビジーやプロツク・アドレス・マツチなどにより主記憶
アクセス要求が起動できなかつた場合には、ウエイト・
ポート17にあるアドレスをセレクタ4を介してレジス
タ5にセツトし、チヤネル・グローバル・バツフアのア
クセスを行う。
このタイミングは、ウエイトさせた条件が解除された時
である。比較回路26と27は、同じアドレスに対して
2個のプロツク・フエツチを起動しないように監視して
いる。なお、チヤネル制御装置2からのフエツチ要求に
対する動作は、チヤネル制御装置のそれと同じである。
次に、チヤネル制御装置からのストア要求に対する動作
について説明する。
チヤネル制御装置CHPlがストア要求を発したとする
と、アドレスおよびストア要求信号はポート1にセツト
され、また、データはレジスタ12にセツトされる。ポ
ート1のアドレスはセレクタ4を介してレジスタ5にセ
ツトされ、前記したフエツチの場合と同様に、タグ・マ
ツチのチエツクおよびプロツク・アドレス・マツチのチ
エツクが行われる。タグ・マツチが得られると、ウエイ
ト・ボート17からセレクタ30および4を介してレジ
スタ5および6にアドレスがセツトされ、ポート12の
データはセレクタ15を介してレジスタ10にセツトさ
れ、タグ部8の該当するモデイフアイ・ピットが論理「
1」とされると共に、データ部9にデータおよびバイト
・マークを書込む。
タグ・アンマツチの場合の動作は、タグ・マツチの場合
と同様であるが、タグ書込時にアドレス論理「1」のバ
リッド・ビツトおよび論理「1」のモデイフアイ・ビツ
トが書込まれ、タグ部8の該当するプロツクが有効化さ
れる。
もしもデータを書込まれようとして〜・るプロツクがイ
ンバリツドでなかつた場合にはモデイフアイ・ビツトを
調べ、モデイフアイされていなかつたら、そのまX更新
してしまう。モデイフアイされていた場合には、そのプ
ロツクを主記憶ユニットヘスドアしてから更新する。主
記憶ユニツトへのストアが完了したならば、ウエイト・
ポート17のアドレスをセレクタ30および4を介して
レジスタ5および6にセツトし、チヤネル・グローバル
・バツフアCGBにストアを行う。なお、チヤネル制御
装置CHP2がストア要求を発した場合の動作は、チャ
ネル制御装置CHPlのそれと同様である。次に、中央
処理装置がストア要求を発した場合の動作について説明
する。中央処理装置がストア要求を発すると、アドレス
およびストア要求信号がポート3にセツトされ、ボート
3のアドレスがセレクタ4を介してレジスタ5にセツト
され、タグ部8がアクセスされる。タグ・アンマツチの
ときには主記憶ユニツトに対する中央処理装置のストア
を実行する。タグ・マツチで且つモデイフアイ・ピツト
が論理「0」の場合には、ポート31にセツトされてい
るアドレスをセレクタ30および4を介して再びレジス
タ5にセツトし、該当するバリツド・ビツトを論理「0
」にする。
これと同時に、主記憶ユニツトに対する中央処理装置の
ストアを実行する。タグ・マツチで且つモデイフアイ・
ビツトが論理「1」の場合には、データ部9から該当す
るブロツクのデータを読出し、バイト・マークが論理「
1」であるバイトのデータを主記憶ユニツトに書込み、
しかる後にそのプロツクのバリツド・フラグを論理「O
」にすると共に、主記憶ユニツトに対する中央処理装置
のストアを実行する。
次に、チヤネル・グローバル・バツフアのデータの主記
憶ユニツトへの吐き出し処理について説明する。後述す
るように、或る特定の事象が発生すると、チャネル・グ
ローバル・バツフアCGBと主記憶ユニツトMSUの内
容と同じくする必要がある。特定の事象が発生すると、
チヤネル・グローバル・バツフアのモデイフアイされた
データは全て主記憶ユニツトMSUにストアされる。チ
ヤネル・グローバル・バツフアのモデイフアイされたデ
ータを主記憶ユニツトにストアする場合、インクリメン
タ29によつてアドレスを“O゛からフロツク数だけイ
ンクリメントさせながら順次にタグ部8およびデータ部
9がアクセスされる。先ず、インクリメンタ29に“0
”がセツトされ、タグ部8がチエツクされる。タグ部8
から読出されたモデイフアイ・ビツトおよびバリツド・
ビツトが共に論理「1」の場合には、データ部9から読
出されたデータは主記憶ユニツトMSUヘスドアされる
。そして、インクリメンタ29は次プロツクのアドレス
を示すようにインクリメントされる。タグ部8から読出
されたモデイフアイ・ピツトが論理「0」の場合には、
何もしないで、インクリメンタ29をインクリメントす
る。この動作を最後のプロツクまで行えば、チヤネル・
グローバル・バツフアのデータの吐き出しは完了する。
たKし、このときのストアもデータ部9のバイト・マー
クが論理「1」のバイト・データについてのみ行う。チ
ヤネル・グローバル・バツフアCGBを設けた場合には
、主記憶ユニツトMSUを介しての中央処理装置CPU
と主記憶ユニツトMSUとの通信が必要となる。
例えば、中央処理装置CPUがチヤネル・コマンドを主
記憶ユニツトにストアした後にスタートI/O命令を発
信した場合に、チヤネル側にとつて書換えられたチヤネ
ル・コマンドが正しく見えなければならない。この場合
、チヤネル・グローバル・バツフアに古いチヤネル・コ
マンドが取込まれていたなら、古いチヤネル・コマンド
が使用されないようにするため、チヤネルが古いチヤネ
ル・コマンドを使用する前に書換えを行つたり、或は無
効化を行つたりして新しいチヤネル・コマンドを主記憶
ユニツトから持つて来させる必要がある。また、チヤネ
ルによつてチヤネル・グローバル・バツフアCGBにス
トアされたデータが何時までも中央処理装置に見えなけ
れば、プログラムをローデイングしても正しく実行され
なかつたり、チヤネルのステータスが中央処理装置に正
しく通知されないという事態が発生する。一般に、中央
処理装置と入出力装置との間には歴然なるスピードの差
があり、プログラマは入出力装置のスピードを期待して
プログラムを作成してはならないとされている。
したがつて、チヤネルと中央処理装置間の通信を行う場
合には、特別の工夫が必要である。これをSerial
izatiOn(シリアライゼーシヨン)という。シリ
アライゼーシヨンとは、或る中央処理装置からのストア
の実行時点が他の中央処理装置もしくはチヤネルから見
て正しく見えることを保証することを言う。この機能が
行われるのは命令および中央処理装置の状態によつて決
まつている。例えば、IBM37OPrinciple
sOfOperatiOn(GA22−7000)によ
れば、(1)全ての割込み発生時 (2)全てのI/O命令発信時 (3)下記の命令発信時 LOADPSWC Ompare&Swap COmpareDauble& SwapTeSt&
Set SetPrefixP urgeTLBSi gnalPrOcessOrSup ervisOrCall その他 にシリアライゼーシヨンを行うと記載されている。
こXで注目すべきことは、I/O割込み発生時およびI
/0命令発信時にシリアライゼーシヨン機能を実行する
ことである。いま、チャネル・グローバル・バツフアC
GBの存在しないデータ処理システムにおけるチヤネル
の中央処理装置の主記憶ユニツトを介して通信を考えて
みる。
中央処理装置がチヤネル・コマンドを主記憶ユニツトに
ストアしてスタートI/0命令を発信したとすると、中
央処理装置はI/0命令でシリアライゼーシヨン機能を
行い、チヤネルから見て以前に行われたチヤネル・コマ
ンドのストアと後続するI/O命令との間の順序を正し
く認識でき、新しいチヤネル・コマンドが正しくチヤネ
ルに云達される。逆に、チヤネルからチヤネルのオペレ
ーシヨン終了を告げる信号が中央処理装置に云えられ、
中央処理装置がI/0割込みを発生したときもシリアラ
イゼーシヨンが行われ、正しいデータを中央処理装置が
受取ることが可能である。チヤネル・グローバル・バツ
フアを持つデータ処理システムの場合には、シリアライ
ゼーシヨンの信号によつてチヤネル・グローバル・バツ
フアの内容と主記憶ユニツトの内容を一致させればデー
タ処理装置の動作は正しく行われる。
チヤネル・グローバル・バツフアの内容と主記憶ユニツ
トの内容とを一致させるためには、チャネル・グローバ
ル・バツフアの内容を主記憶ユニツトに吐き出してやつ
て、チヤネル・グローバル・バツフアのプロツクを全て
無効化すれば良い。この方法は最も簡単であるが、前記
したようにシリアライゼーシヨン機能を実行する要因が
多くあり、全てのシリアライゼーシヨン時にチヤネル・
グローバル・バツフアCGBの吐き出しを行うと、デー
タ処理システムの性能低下を惹起するので、チヤネル・
グローバル・バツフアCGBに関するシリアライゼーシ
ヨン機能の実行は、原則的にはI/O命令茫信時、それ
に対するチヤネルからの応答時、おLびチヤネルからの
I/O割込み要求時のみで良4・。したがつて、チヤネ
ル・グローバル・バツフアの吐き出しを下記の時点で行
うようにすれば、生能の向上が計れる。1)中央処理装
置がI/O命令を発信したときこのときの/O命令は記
憶制御ユニツトMCUを経由してチヤネルに畝達される
として、記憶制御ユニツトMCUでその情報を保持し、
チヤネル・グローバル・バツフアの吐き出し完了後にこ
の保持していた情報をチヤネルへ云達する。
2)チヤネルがI/O割込み要求をあげたときこのとき
も要求信号を記憶制御ユニツトMCUで一時保留し、チ
ャネル・グローバル・バツフアCGBの吐き出し後に、
中央処理装置へI/O割込み要求を広達する。
3)チャネルからのストアがチヤネル・グローバル・バ
ツフアのブロツクを越えたときチヤネルのストア・デー
タ転送は、アドレス順に連続して(・る。
チヤネル・グローバル・バツフアCGBの1プロツク(
64バイトする)分を越えたストアがあつたら、既にス
トアされたプロツクは主記憶ユニツトMSUへ吐き出し
て良(・。これは、チヤネル・グローバル・バツフアの
効率の良い利用のためである。4)チャネルが受信した
スタートI/O命令に対してコンデイシヨン・コードを
中央処理装置へ送つたときチヤネルが状況情報を主記憶
ユニツトを介して中央処理装置に送る場合がある。
したがつて、記憶制御ユニツトMCUは、チヤネル・グ
ローバル・バツフアの内容を吐き出した後にチャネルの
返信信号を云える。5)チヤネルが書込んだチヤネル・
グローバル・バツフアCGBのプロツクをチヤネルが再
びフエツチしたときこのときはバイト・マークをチエツ
クしてバイト・マークがオンの部分のフエツチであれば
そのまXチヤネルに送つても良(・が、バイト・マーク
がオフのバイト.データであれば主記憶ユニツトから該
当するデータを持つて来る必要がある。
制御の簡単化を考えて、チヤネル・グローバル・バツフ
アの内容を主記憶ユニツトMSUにいつたん吐き出して
、再びチヤネル・グローバル・バツフアにデータをムー
ブ・インしても良い。(6)コンソール・コマンドによ
る場合 チヤネル・グローバル・バツフアの初期化およびクリア
機能をコンソールが持つ。
このため、“AbandOnCGB゛および“Rele
aseCGB゛と(・う2種類のコマンドを用意する。
“AbandOnCGB゛というコマンドは、チヤネル
・グローバル・バツフアCGBの全てのバリツド・ビツ
トを論理「旧にするものであるIRealeaseCG
B゛というコマンドは、モデイフアイされたプロツクを
主記憶ユニツトMSUにストアした後に、チヤネル・グ
ローバル・バツフアの全プロツクを無効化するものであ
る。(7)チヤネル・グローバル・バツフアのプロのリ
プレイス時プロツク・フエツチ又はストア時に新しいフ
ロツクをチヤネル・グローバル・バツフアに開設しよう
とするとき、バリツド・ビツトが論理「1」で且つモデ
イフアイ・ビツトが論理「1」のプロツクの全てを主記
憶ユニツトMSUヘムーブ・アウトする。
チヤネル・グローバル・バツフアCGBのプリ・フエツ
チを行うことは、有効である。
この場合のプリ・フエツチは、現在フエツチされた次の
プロツクのアドレスがチヤネル・グローバル・バツフア
内にあるか否かを調べ、もし次のプロツクのアドレスが
存在しなかつたならば、該当するプロツクをチヤネル・
グローバル・バツフアCGBに前以て取込んでおく方法
である。プリ・フエツチを行うため、第2図において本
来のフエツチが完了した時、ウエイト・ポート17,1
8又は31のアドレスがセレクタ30を介してインクリ
メンタ31へ送られ、インクリメンタ31で次プロツク
のアドレスが生成されてタグ部8がアクセスされる。タ
グ・マツチであれば何も行われないがタグ・アンマツチ
であれば、プロツク・フエツチを起動する。また、第2
図には示されていないが、チヤネル・コマンドがフエツ
チされたら記憶制御ユニツトMSU内で解読し、フエツ
チ・コマンドであつたならば、チヤネル・コマンド語の
示すデータ・アドレスがチヤネル・グローバル・バツフ
ア内に存在するか否かを調べ、もし存在しなければその
データ・アドレスで指定されるデータをチヤネル・グロ
ーバル・バツフアCGBに前以て取込んでおく。上述し
た方式は、主記憶ユニツトMSUを介してチヤネルと中
央処理装置との間で通信を行う場合には、チヤネル・グ
ローバル・バツフアCGBの内容を全て吐き出して無効
化してやる方式であつた。しかし、チヤネル・グローバ
ル・バツフアCGBは1台のチヤネルのみで使用されて
いるわけでなく、他のチヤネルで使用されて(・るプロ
ツクもある。したがつて、吐き出す必要はなく、また吐
き出しによつて性能低下を惹起するようなプロツクまで
吐き出されてしまう事態が発生する。このような幣害を
防ぐ方法として下記のような方法が考えられる。第1の
方法は、中央処理装置のストアをチヤネル・グローバル
・バツフアCGBに反映させる方法である。
中央処理装置のストア要求が発生したら、要求アドレス
がチヤネル・グローバル・バツフアCGBのタグ部8内
に存在するかをチエツクする。存在しなければ何もしな
い。存在した場合は、そのプロツクがバリツドであり且
つモデイフアイ・ビツトが論理「1」であつたら、その
プロツクを主記憶ユニツトMSUに吐き出し、吐き出し
後にバリツド・ビツトを論理[0」にし、しかる後に主
記憶ユニツトMSUに対する中央処理装置のストアを行
う。モデイフアイ・ビツトが論理「O」の場合は、その
プロツクの無効化のみを行う。この方法を採用すれば、
中央処理装置のストアが常にチヤネルに見えるため、I
/O命令発信時に中央処理装置のストアが完了したこと
を前以てI/O命令をチヤネルに阪えることにすれば、
チヤネル・グローバル・バツフアCGBの吐き出しは不
要となる。この方式の長所は、I/O命令発信後にチヤ
ネル・コマンドを中央処理装置が書き替えるようなプロ
グラムがあつても、充分に対処できることである。中央
処理装置がバツフア記憶を有しており且つストア・スル
ー方式を採用していると、中央処理装置のストア頻度は
少なくなく、したがつて、チヤネル・グローバル・バツ
フアCGBに対するアクセス頻度が増加するものと予測
される。中央処理装置のストアに基づくチヤネル・グロ
ーバル・バツフアCGBに対するアクセスが増加すると
、チヤネル・グローバル・バツフアCGBの本来の処理
が阻害されるが、これを防ぐためには、例えばタグ部8
を2個設ければ良い第2の方法は、中央処理装置が主記
憶ユニツトMSUのデータをフエツチする際に、チヤネ
ル・グローバル・バツフアCGBのタグ部を調べ、該当
するプロツクがチヤネル・グローバル・バツフアCGB
に取込まれており、そのプロツクのモデイフアイ・ビツ
トが論理「1」の場合には、そのプロツクを主記憶ユニ
ツトに吐き出した後に中央処理装置のプロツク・フエツ
チを行う方法である。
この方法を採用すれば、第1の方法とは逆にチヤネル制
御装置のストアが中央処理装置に常に見えることになり
、I/0命令受信に対するチャネルからの応答時に、チ
ヤネル・グローバル・バツファCGBの吐き出しを必要
としない。また、チヤネルからの割込み要求時にチャネ
ル・グローバル・バツフアCGBの内容を吐き出さなく
ても、中央処理装置はチヤネルによつてストアされた正
しいチヤネル・ステータスを得ることが出来る。この方
法を採用する場合、中央処理装置がバツフア記憶を持つ
ておればプロツク・フエツチの頻度はストアの頻度より
はるかに少ないので、中央処理装置のプロツク・フエツ
チに基因するチヤネル・グローバル・バツフアCGBに
対するアクセス頻度はそれほど増加しない。しかし、こ
の方法は、大きな欠点を有している。即ち、この欠点と
は、ベクトル・プロセツサVPUに対してチヤネルから
ストアされたデータがチヤネル・グローバル・バツフア
CGB内に留まつて見えない可能性があることである。
したがつて、ベクトル・プロセツサが主記憶ユニツトM
SUを共用する場合には、1/0割込み要求によつて、
チヤネル・グローバル・バツフアの内容の吐き出しを行
わねばならずこの場合の効率はそれ程は良くない。第3
の方法は、チヤネルNO(番号)をチヤネル・グローバ
ル・バツフアCGBのタグ部8内に記憶しておく方法で
ある。
第3図イ,口はそれぞれタグ部8およびデータ部9の内
容を示すものであつて、vフラグはバリツド・フラグ、
Mフラグはモデイフアイ・フラグ、チヤネルNOはチヤ
ネル番号をそれぞれ示している。二重フラグについては
後述する。この方式を採用すると、I/O命令の受信に
対するチヤネルからの応答時およびチヤネルからのI/
O割込み要求時に、該当するチヤネルが使用したプロツ
クのみを吐き出して無効化すれば良い。複数のチヤネル
が同一プロツクを使用した場合には、その旨を二重フラ
グでタグ部8内に記憶しておき、吐き出しの際に、二重
フラグが論理「1」のプロツクに関してはチヤネル番号
が一致したと見做せば良い。次に、チヤネル・グローバ
ル・バツフアのバイパス・モードについて説明する。
チヤネル・グローバル・バツフアのバイパス・モードと
は、チヤネル・グローバル・バツフアを使用しないモー
ドであり、IPL時にこのモードにされる。IBM37
O(1)PrinciplesOfOperatiOn
に基づくIPL手順を下記に示す。第4図はIPL時の
主記憶ユニツトMSUf)O番地付近を図示しており、
同図において、アドレスは10進数で表現されている。
(1)コンソールはO番地にCCWを用意し、チヤネル
に対してIPLモードを云える。
このときのCCWは、コマンド・チエイニングのフラグ
付となつている。(2)コンソールは、中央処理装置の
命令制御部に対して、指定された機番でスタートI/O
命令を実行させる。
この命令は主記憶ユニツトMSUから持つて来るのでは
なく、コンソール−中央処理装置間のバスを経由してコ
ンソールから命令制御部に与えられる。
(3)スタートI/O命令を受信したチヤネルは、IP
Lモード指定により、CAWをオール゜“0”と見做し
、O番地からCCWを取出す。
このときは、フロセクション・チエツクは行われない。
(4)取り出されたCCWによつて第4図に示された2
4バイトが磁気デイスク装置より取出されて主記憶ユニ
ツトMSUに格納される。CCWはコマンド・チエイニ
ング指示により8番地からのCCWl,CCW2にチエ
イニングされ、それらのローデイングが完了するとIP
Lは完了し、その旨をコンソールに通知する。(5)
IPL完了をコンソールが認識すると、コンソールはO
番地からの8バイトを中央処理装置のPSWにセツトし
、中央処理装置を起動する。
また、IPLモードをりセツトする。上記1PL手順を
実行する場合に、通常のチャネル動作と異なつた影響を
チヤネル・グローバル・バツフアに与える。
主たる相違点は下記の2点である。(1)チャネルが自
分自身で磁気デイスク装置から取出して来たデータをチ
ヤネル・コマンドとして使用する。
(2) CCW2の実行後に、通常の動作と同様に、チ
ヤネルがI/O動作完了を云える1/O割込み要求を中
央処理装置へ送出すると、中央処理装置はI/0割込み
処理のための新PSWを主記憶ユニツトMSUの120
番地よりフエツチし、この結果、O番地のIPL新PS
Wが現PSWにセツトされない。
これを防ぐために、IPLモード時にはチヤネルはI/
O割込要求を中央処理装置へは送らずに、IPL完了を
コンソールに通知する。IPL完了時にはI/O割込み
要求が中央処理装置に対して送られないと、チヤネル・
グローバル・バツフアのCGBの内容の吐き出しが行わ
れずチヤネルのストアが中央処理装置から見えない可能
性がある。
したがつて、IPLモード時にはチヤネル・グローバル
・バツフアCGBを使用しないので、直接に主記憶ユニ
ツトMSUに対してアクセスを行えば上記の問題は解決
する。チヤネル.グローバル.バッフアのバイパス.モ
ード時には、第2図の装置は下記のように動作する。
バイパス・モード時においては、チヤネルからのフエツ
チ・アクセスがあつたとき、比較回路25はアンマツチ
に強制され、主記憶ユニツトMSUから送られて来たデ
ータはレジスタ14およびセレクタ15を経由して直接
レジスタ19又は20にセツトされてチヤネルに送られ
る。また、バイパス・モードにおけるストア・アクセス
においては、データはレジスタ12もしくは13、セレ
クタ15およびレジスタ21を経由して主記憶ユニツト
MSUに送られる。チヤネル・グローバル・バツフアC
GBにエラー(マシン・チエツク)が生じたときのため
に、チヤネル・グローバル・バツフアCGBを使用しな
いモードを生成することも可能である。以上の説明から
明らかなように、本発明によれば、チヤネルからの主記
憶ユニツト・アクセス回数を減らし、且つチヤネルの転
送性能を向土させることが出来る。
【図面の簡単な説明】
第1図は本発明が適用されるデータ処理システムの構成
の1例を示す図、第2図はチヤネル・グローバル・バツ
フアの1実施例のプロツク図、第3図はチヤネル・グロ
ーバル・バツフアのタグ部およびデータ部の内容を説明
する図、第4図はIPL時における主記憶ユニツトのO
番地附近のデータ内容を説明する図である。 MSU・・・・・・主記憶ユニツト、MCU・・・・・
・記憶制御ユニツト、CHPlとCHP2・・・・・・
チヤネル制御装置、CPU・・・・・・中央処理装置(
スヤラ一・ユニツトとも言う)、VPU・・・・・・ベ
クトル・プロセツサ、1と2・・・・・・チヤネル制御
装置のアドレス・ポート、3・・・・・・中央処理装置
のアドレス・ポート、4・・・・・・セレクタ、5・・
・・・・タグ部およびデータ部をアクセスするアドレス
がセツトされるレジスタ、6・・・・・・タグ部の書込
レジスタ、7・・・・・・タグ部の読出レジスタ、8・
・・・・・タグ部のメモリ、9・・・・・・データ部の
メモリ、10・・・・・・データ部の書込レジスタ、1
1・・・・・・読出レジスタ、12と13・・・・・・
チヤネル制御装置のデータ・ポート、14・・・・・・
主記憶ユニツトのデータ・ポート、15・・・・・・セ
レクタ、16・・・・・・アクセスされたアドレスを記
憶しておくレジスタ、17と18・・・・・・チヤネル
の主記憶ユニツトに対するフエツチ要求が不成功になつ
たときにアドレスを記憶して置くためのウエイト・ポー
ト、19と20・・・・・・チヤネル制御装置へのデー
タ出力レジスタ、21・・・・・・主記憶ユニツトへの
データ出力レジスタ、22と23・・・・・・主記憶ユ
ニツトへのフエツチ・アクセスを行つた時のアドレスを
記憶しておくレジスタ、24・・・・・・セレクタ、2
5・・・・・・タグ・マツチを得る比較回路、26と2
7・・・・・・主記憶フエツチ・アクセス中のアドレス
と後続アドレスを比較する比較回路、28・・・・・・
主記憶アクセス●アドレス●レジスタ、29・・・・・
・インクリメンタ、30・・・・・・セレクタ、31・
・・・・・中央処理装置のウエイト・ポート、32・・
・・・・インクリメンタ。

Claims (1)

  1. 【特許請求の範囲】 1 主記憶ユニット、チャネルを制御するチャネル制御
    装置、ベクトル・プロセッサおよび中央処理装置を含む
    複数のメモリ・アクセス要求元装置、並びに上記主記憶
    ユニットと上記各メモリ・アクセス要求元装置間の通信
    を行う記憶制御ユニットを備えるデータ処理システムに
    おいて、それぞれが所定長のブロック・データを格納し
    得る複数のブロック域を有するデータ部、並びにそれぞ
    れが上記各ブロック域と1対1の対応をなし、且つ対応
    するブロック・データのアドレス情報およびその他の管
    理情報が書込まれる複数のエントリを有するタグ部を備
    えるチャネル−主記憶ユニット間のデータ転送専用のチ
    ャネル・グローバル・バッファを上記記憶制御ユニット
    に設けると共に、上記チャネル・グローバル・バッファ
    と上記主記憶ユニットとの間のデータ転送をブロック単
    位で行い、上記チャネルからのメモリ・アクセス要求が
    あつたときには、先ず上記チャネル・グローバル・バッ
    ファに該当するアドレスのデータが存在するかを調べ、
    要求アドレスで指定されるデータが上記チャネル・グロ
    ーバル・バッファに存在する場合には、上記チャネル・
    グローバル・バッファとチャネルの間でデータのリード
    /ライトを行い、上記チャネル・グローバル・バッファ
    に要求アドレスで指定されるデータが存在しない場合に
    は、フェッチ時は上記主記憶ユニットから要求アドレス
    で指定されるブロック・データを読出して上記チャネル
    ・グローバル・バッファにムーブ・インし、ストア時は
    要求アドレスで定まる上記タグ・エントリに要求アドレ
    スのブロック・アドレス部分を書込むと共に、当該タグ
    ・エントリのバリッド・ビットをオンとし、要求アドレ
    スで定まる上記ブロック域にチャネルから送られて来る
    データをストアすることを特徴とするデータ処理システ
    ム。 2 データ部の各ブロック域にバイト・マーク・フィー
    ルドを設け、チャネルから送られて来るデータを該当す
    るブロック域に書込む度に該当するバイト・マークをオ
    ンとし、上記チャネル・グローバル・バッファのデータ
    を上記主記憶ユニツトへ転送して格納する場合には、バ
    イト・マークがオンとされているバイト・データのみを
    主記憶ユニットにストアすることを特徴とする特許請求
    の範囲第1項記載のデータ処理システム。 3 中央処理装置がI/O命令を発信した時、チャネル
    が受信したI/O命令に対して状況コードを中央処理装
    置に送つた時、チャネルが中央処理装置に対してI/O
    割込み要求を送つた時、チャネルからのストアがチャネ
    ル・グローバル・バッファのブロック長を越えた時、チ
    ャネルがストアしたチャネル・グローバル・バッファ内
    のブロツクをチャネルが再びフエツチした時、コンソー
    ルから特定のコマンドが発信された時、又はチャネル・
    グローバル・バッファのブロックの置換え時に、上記チ
    ャネル・グローバル・バッファ内のデータの上記主記憶
    ユニツトへの格納およびチャネル・グローバル・バッフ
    ァの無効果を行うことを特徴とする特許請求の範囲第1
    項又は第2項記載のデータ処理システム。 4 チャネルからのデータ・フェッチ要求があつたとき
    、要求されたデータを用意してチャネルに転送すると共
    に、フェッチ要求アドレスのブロック・アドレス部分を
    +1して作成された次ブロック・アドレスが上記タグ部
    に存在するかを調べ、次ブロック・アドレスが存在しな
    い場合には、当該次ブロック・アドレスで指定されるブ
    ロック・データを上記主記憶ユニットから読出して上記
    チャネル・グローバル・バッファに前以てムーブ・イン
    しておくことを特徴とする特許請求の範囲第1項、第2
    項又は第3項記載のデータ処理システム。 5 上記チャネルがチャネル・コマンド語のフェッチを
    行うとき、チャネル・コマンド語をチヤネルへ転送する
    と共に、上記記憶制御ユニット側で当該チャネル・コマ
    ンド語を調べ、フェッチ・コマンドであれば当該チャネ
    ル・コマンド語で指定されるデータ・アドレスが上記タ
    グ部に存在するかを調べ、存在しないときには上記デー
    タ・アドレスで指定されるブロック・データを上記主記
    憶ユニットから読出して上記チャネル・グローバル・バ
    ッファに前以つて取込んでおくことを特徴とする特許請
    求の範囲第1項、第2項、第3項又は第4項記載のデー
    タ処理システム。 6 中央処理装置が主記憶ユニットに対するストア・ア
    クセスを行う際に、中央処理装置の送出したストア・ア
    ドレスが上記タグ部内に存在するかを調べ、タグ部内に
    上記ストア・アドレスが有効に存在し且つ当該ストア・
    アドレスで指定されるタグ・エントリのモディファイ・
    フラグがオンであつたならば、上記データ部内における
    上記ストア・アドレスで指定されるブロック・データを
    上記主記憶ユニットに格納し、上記タグ・エントリのバ
    リッド・フラグをオフとした後で上記主記憶ユニットに
    対する上記中央処理装置のストアを行い、上記タグ・エ
    ントリのモディファイ・フラグがオフであれば、当該タ
    グ・エントリのバリッド・フラグをオフした後に上記主
    記憶ユニットに対する中央処理装置のストアを行うこと
    を特徴とする特許請求の範囲第1項、第2項、第3項、
    第4項又は第5項記載のデータ処理システム。 7 上記タグ部の各タグ・エントリに、チャネル番号記
    入フィールドを設け、チャネルがメモリ・アクセス要求
    を発したときに、該当するタグ・エントリのチャネル番
    号記入フィールドに当該チャネルのチャネル番号を記入
    することを特徴とする特許請求の範囲第1項、第2項、
    第3項、第4項、第5項又は第6項記載のデータ処理シ
    ステム。 8 上記チャネル・グローバル・バッファをバイパスす
    るモードを設けることを特徴とする特許請求の範囲第1
    項記載のデータ処理システム。
JP55134578A 1980-09-26 1980-09-26 デ−タ処理システム Expired JPS5939767B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP55134578A JPS5939767B2 (ja) 1980-09-26 1980-09-26 デ−タ処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55134578A JPS5939767B2 (ja) 1980-09-26 1980-09-26 デ−タ処理システム

Publications (2)

Publication Number Publication Date
JPS5759219A JPS5759219A (en) 1982-04-09
JPS5939767B2 true JPS5939767B2 (ja) 1984-09-26

Family

ID=15131626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55134578A Expired JPS5939767B2 (ja) 1980-09-26 1980-09-26 デ−タ処理システム

Country Status (1)

Country Link
JP (1) JPS5939767B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6039265A (ja) * 1983-08-12 1985-03-01 Fujitsu Ltd デ−タ転送方式

Also Published As

Publication number Publication date
JPS5759219A (en) 1982-04-09

Similar Documents

Publication Publication Date Title
US4831520A (en) Bus interface circuit for digital data processor
JP3218317B2 (ja) 集積キャッシュユニットおよびその構成方法
JP3509067B2 (ja) ストア命令転送方法およびプロセッサ
US5375216A (en) Apparatus and method for optimizing performance of a cache memory in a data processing system
JP3431626B2 (ja) データ処理装置
JP4045062B2 (ja) ロード命令を実行する方法、プロセッサ、およびシステム
US4851991A (en) Central processor unit for digital data processing system including write buffer management mechanism
US4831581A (en) Central processor unit for digital data processing system including cache management mechanism
US5091845A (en) System for controlling the storage of information in a cache memory
US5119484A (en) Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction
US5226170A (en) Interface between processor and special instruction processor in digital data processing system
JPH03225542A (ja) データ記憶方法及びビットエンコードデータの処理回路
JP3218316B2 (ja) 集積キャッシュユニットおよびその内部でキャッシュ機能を実現するための方法
US6507894B1 (en) Information processing apparatus and process
US6738837B1 (en) Digital system with split transaction memory access
JPH0410102B2 (ja)
AU606083B2 (en) Interface between processor and special instruction processor in digital data processing system
US6516343B1 (en) Computer system and method for enhancing memory-to-memory copy transactions by utilizing multiple system control units
US5276892A (en) Destination control logic for arithmetic and logic unit for digital data processor
JPS5939767B2 (ja) デ−タ処理システム
EP0302926B1 (en) Control signal generation circuit for arithmetic and logic unit for digital processor
EP0418220B1 (en) Destination control logic for arithmetic and logic unit for digital data processor
JP2680293B2 (ja) データ処理装置及びキャッシュメモリ制御方法
JP3219810B2 (ja) データ処理装置
JP2001229074A (ja) メモリ制御装置と情報処理装置及びメモリ制御チップ