JPH0724042B2 - 入出力制御装置 - Google Patents

入出力制御装置

Info

Publication number
JPH0724042B2
JPH0724042B2 JP60027674A JP2767485A JPH0724042B2 JP H0724042 B2 JPH0724042 B2 JP H0724042B2 JP 60027674 A JP60027674 A JP 60027674A JP 2767485 A JP2767485 A JP 2767485A JP H0724042 B2 JPH0724042 B2 JP H0724042B2
Authority
JP
Japan
Prior art keywords
data
adapter
cache memory
channel
common bus
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 - Fee Related
Application number
JP60027674A
Other languages
English (en)
Other versions
JPS61187060A (ja
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 JP60027674A priority Critical patent/JPH0724042B2/ja
Publication of JPS61187060A publication Critical patent/JPS61187060A/ja
Publication of JPH0724042B2 publication Critical patent/JPH0724042B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔目次〕 以下の順序で本発明を説明する。
産業上の利用分野 従来の技術 発明が解決しようとする問題点 問題点を解決するための手段(第1図) 実施例 (A) 入出力制御装置の第1の実施例の構成の説明
(第2図、第3図、第4図、第5図) (B) 入出力制御装置の全体の動作の説明(第6図) (C) DA及びデバイス選択動作の説明(第7図) (D) ステージング動作の説明(第8図) (E) ヒット選択動作の説明(第9図) (F) キャッシュ動作の説明(第10図、第11図) (G) 通常のリード/ライト動作の説明(第12図) (H) 入出力制御装置の第2の実施例の説明(第13
図) 発明の効果 〔産業上の利用分野〕 本発明はCPU等の上位側とDASD(Direct Access Storage
Device)等の複数の入出力装置との間に設けられ、上
位側からの要求に応じて入出力装置のデータを転送する
入出力制御装置に関し、特に、キャッシュメモリを有
し、入出力装置を直接アクセスせずにキャッシュメモリ
から入出力装置のデータを上位側に転送する入出力制御
装置に関する。
コンピュータシステムにおいては、中央処理装置(以下
CPUと称す)が必要となるデータは入出力装置に保有さ
れており、CPUは必要に応じて入出力装置からデータを
得るようにしている。このようなデータのやりとりは入
出力装置とCPUとの間に設けられた入出力制御装置によ
って行なわれ、CPUのアクセス要求に対し、入出力制御
装置が入出力装置からデータを得て、CPUへ転送するよ
うにしている。このような入出力システムとしては、DA
SD(Direct Access Storage Device)サブシステムが広
く用いられており、DASDサブシステムでは、入出力装置
として磁気ディスク装置が複数設けられている。
近年係る入出力システムにおいて、入出力制御装置にキ
ャッシュメモリを設け、アクセスの高速化を計るものが
提供されている。
〔従来の技術〕
第14図は従来のDASDサブシステムの構成図であり、入出
力制御装置(以下コントローラと称す)CTとDASD9とが
接続されている。コントローラCTは、各々CPUのチャネ
ルCHLに接続される一対のディレクタ(制御部)DIR0、D
IR1と、キャッシュメモリCMを有するキャッシュメモリ
部CAとで構成されており、各ディレクタDIR0、DIR1には
上位側(CPU/CHL)とDASD9及びキャッシュメモリ部CAと
の間でデータ転送を行う自動転送機構ADT0、ADT1が各々
設けられている。一方、DASD9は、各々ディレクタDIR
0、DIR1に接続されるアダプタAP0、AP1と、両アダプタA
P0、AP1にデータ線l1、l2によって接続されたnヶの磁
気ディスク装置(以下デバイスと称す)90〜9nとで構成
され、各アダプタAP0、AP1はアダプタ制御部CONT0、CON
T1と、排他制御用メモリMEM0、MEM1とで構成され、更に
各デバイス90〜9nと制御線l3,l4によってアダプタAP0、
AP1に割込み等の制御信号のやりとりを行うように構成
されている。
従って、各デバイス90〜9nは両アダプタAP0、AP1、即ち
ディレクタADT0、ADT1によっていわゆるクロスコールさ
れるように構成され、デバイス90〜9nは、ディレクタDI
R0−アダプタAP0のパスと、ディレクタDIR1−アダプタA
P1のパスとの2つのパスによってアクセスされる。
このような従来のDASDサブシステムでは、上位側がディ
レクタDIR0(又はDIR1)にアクセス要求を発すると、デ
ィレクタDIR0(又はDIR1)はキャッシュメモリ部CAに要
求されたデバイスの要求レコードが格納されているかを
調べ、又、要求されたデバイスが他の上位側が使用で使
用禁止されていないかをアダプタAP0、AP1の排他制御メ
モリMEM0、MEM1を参照して調べ、使用禁止でなく、キャ
ッシュメモリ部CAに要求レコードが存在すれば、矢印Y
の如くディレクタDIR1の自動転送機構ADT1がキャッシュ
メモリ部CAのキャッシュメモリCMより当該要求レコード
を上位側へ転送するいわゆるキャッシュメモリ動作を行
う。逆に、キャッシュメモリ部CAに要求レコードが存在
せず、使用禁止でもない時には、例えば、ディレクタDI
R0の自動転送機構ADT0はアダプタAP0を介し要求デバイ
ス(例えば90)を選択し、要求レコードを含む1トラッ
ク分のデータを図の矢印Xの如く読出し、キャッシュメ
モリ部CAに転送し、キャッシュメモリCMに1トラック分
のデータを格納せしめるとともに、必要な要求レコード
のみを上位側に図の矢印X′の如く転送する。いわゆる
ステージング動作を行う。従って、以降当該キャッシュ
メモリCMに格納されたトラックに含まれるレコードは前
述のキャッシュ動作によって上位側へ与えられる。この
キャッシュメモリCMは一般に高速の半導体メモリで構成
されており、その容量は例えば4Mバイト〜32バイトと大
容量としておけば、上位側からのアクセス要求の大半
(例えば80%)程度はキャッシュ動作によって行なわ
れ、高速動作が可能となる。
〔発明が解決しようとする問題点〕
このようなキャッシュメモリCMを有する入出力システム
においては、各ディレクタDIR0、DIR1の自動転送機構AD
T0、ADT1の各々は、キャッシュメモリCMと上位側との上
位側転送と、DASD9とキャッシュメモリCMとの下位側転
送を行うが、上位側とキャッシュメモリCMとの転送中に
は、DASD9とキャッシュメモリCMとの転送ができず、同
様にDASD9とキャッシュメモリCMとの転送終了までは、
上位側とキャッシュメモリCMとの転送ができず高速動作
が困難であるという問題があった。又、上位側からのア
クセス要求毎にDASD9のアダプタの排他制御メモリMEM
0、MEM1を参照するため、DASD9との下位側パスが空いて
いないときには(即ちステージング動作中)、キャッシ
ュメモリCMにデータがあっても上位側への転送ができ
ず、一層高速動作が困難であるという問題があった。
これを解決するため、転送機構を上位側と下位側に分
け、上位側と下位側とをキャッシュメモリ部に接続し、
上位側とキャッシュメモリの転送と、下位側とキャッシ
ュメモリ部との転送を非同期できるものが提案されてい
る(例えば、特開昭60-19260号公報等)。
このようにしても、次の問題があった。
キャッシュメモリに対する上位側の転送と、下位側
の転送とが非同期であるため、下位側のディスクの位置
決め中、又は回転待ち中に、上位側がキャッシュメモリ
をアクセスできるのみであり、下位側のキャッシュメモ
リへの情報転送中に、上位側がキャッシュメモリをアク
セスできず、ステージング終了まで待たされる。
上位側転送部がマスターとなるため、複数の上位側
転送部を設けた場合には、上位側転送部のみでは、デバ
イス選択のための排他制御が複雑となる。
従って、本発明は、上位側パスと下位側パスとが独立し
てデータ転送できるようにしても、上位側と下位側がキ
ャッシュメモリを並行アクセスすることができる入出力
制御装置を提供することを目的とする。
〔問題点を解決するための手段〕
第1図は、本発明に原理説明図である。
第1図(A)中、第14図で示したものと同一のものは同
一に記号で示してあり、1a、1bは各々上位側転送部であ
り、上位側(CPU/CHL)と接続され、又後述するキャッ
シュメモリ部、下位側転送部及びテーブルストレッジと
接続され、上位側のアクセス要求に従って上位側へ要求
データを転送するもの、2a、2bは各々下位側転送部であ
り、DASD9(のアダプタAP0、AP1)及び上位側転送部1
a、1b、後述するキャッシュメモリ部3と接続され、DAS
D9及びキャッシュメモリ部3とのステージング動作によ
る転送及び上位側転送部1a、1bへのデータ転送を行うも
の、3はキャッシュメモリ部であり、4はキャッシュメ
モリであり、上位側転送部1a、1b又は下位側転送部2a、
2bの指示により、キャッシュメモリ部3がキャッシュメ
モリ4のデータ読出し、格納を制御するもの、5はテー
ブルストレッジであり、上位側転送部1a、1bに接続さ
れ、前述のアダプタAP0、AP1の排他制御メモリMEM0、ME
M1に格納された排他制御用テーブルを格納しておくもの
である。
即ち、本発明は、上位側からのアクセス要求に応じて、
該上位側との間でデータ転送を行う上位側転送部と、複
数の入出力装置に接続され、該入出力装置との間でデー
タ転送を行う下位側転送部と、該入出力装置のデータを
格納しておくためのキャッシュメモリ部とを有し、該上
位側転送部と該下位側転送部とを該キャッシュメモリ部
に接続し、該上位側転送部が、該上位側のアクセス要求
に応じて、該キャッシュメモリ部の該データ、又は該下
位側転送部を介して該入出力装置を選択して得たデータ
を該上位側に転送する入出力制御装置において、該上位
側転送部と該下位側転送部を複数設けるとともに、該上
位側転送部の要求に応じて、該キャッシュメモリ部に該
要求するデータが存在するかを判定し、且つ該上位側転
送部と該下位側転送部との該キャッシュメモリのアクセ
スを制御する制御部と、該上位側転送部の入出力装置選
択要求に応じて、該入出力装置の選択排他制御を行う選
択排他制御部とを設け、該制御部の制御の元に、該上位
側転送部と該下位側転送部とが該キャッシュメモリ部を
時分割多重アクセスすることを特徴とする。
〔作用〕
本発明では、上位側転送部(以下チャネルアダプタCAと
称す)1a、1bと下位側転送部(以下デバイスアダプタDA
と称す)2a、2bとが独立に転送動作できるので、例え
ば、第1図(B)の原理動作説明図の如く、CPU/CHLの
アクセス要求に対しチャネルアダプタCAがキャッシュメ
モリ部3を参照して、キャッシュメモリ4に要求データ
有り(ヒットという)と判定し、キャッシュメモリ4と
CPU/CHLとのデータ転送中には、デバイスアダプタDAは
図のt0の間DASD9との間で他の処理ができ、又、CPU/CHL
のアクセス要求に対し、チャネルアダプタCAがキャッシ
ュメモリ部3を参照して、キャッシュメモリ4に要求デ
ータ無し(ミスという)と判定し、デバイスアダプタDA
を介しデバイスを選択し、デバイスアダプタDAがステー
ジング動作によって1トラック分のデータをキャッシュ
メモリ4へ転送し、その内の要求データをCPU/CHLへ転
送後の図のt1の間はフリーとなり、他の処理(例えば、
キャッシュメモリ4とCPU/CHLとのキャッシュ動作)を
行うことができ、従って上位側パスと下位側パスとを独
立に並列動作を行うことができる。
しかも、このように、上位側パスと下位側パスとを独立
に動作しても、複数の上位側転送部に対し、デバイス選
択の排他制御と、キャッシュメモリ部のアクセス制御と
を一元管理でき、容易に排他制御とキャッシュメモリの
制御が可能となる。
〔実施例〕
以下、本発明を実施例により詳細に説明する。
(A) 入出力制御装置の第1の実施例の構成の説明。
第2図は、本発明の第1の実施例全体ブロック図であ
る。
図中、第1図で示したものと同一のものは同一の記号で
示してあり、6は共通バスであり、第3図にて構成を詳
述するチャネルアダプタ1a、1b、第4図にて構成を詳述
するデバイスアダプタ2a、2b、第5図にて構成を詳述す
るキャッシュメモリ部(以下、キャッシュプロセッサCP
と称す)3、キャッシュメモリ4及びテーブルストレッ
ジ5を接続し、これらによって共通バス6を時分割的に
使用され、データのやりとりが行われるものである。40
はドライバ/レシーバであり、キャッシュメモリ4から
データを共通バス6へ送出するためのドライバと、共通
バス6からのデータを受けるためのレシーバとであり、
41はシェアードストレッジコントロール部であり、後述
するトラックバッファを共通バス6を介する他ユニット
からのアクセス要求に応じて時分割的にマルチアクセス
するための制御部であり、ポート部41aと、レジスタ群4
1bとを有するもの、42はトラックバッファであり、高速
大容量のICメモリで構成され、その容量は例えば4メガ
バイトから32メガバイトの間であり、後述するステージ
ング動作によってDASD9のデバイスから読出されたデー
タをトラック単位で格納しておくものであり、例えば1
トラック分をHA(ホームアドレス)、R0−C(レコード
0のカウント部)、R0−D(レコード0のデータ部)、
以下同様にしてRn−C、Rn−Dと格納しておくものであ
る。50はドライバ/レシーバであり、テーブルストレッ
ジ5が共通バス6へデータを送出するドライバと共通バ
ス6からデータを受けるレシーバとであり、51はテーブ
ルストレッジコントロール部であり、他ユニットから共
通バス6を介するメモリアクセス要求により後述するシ
ェアードテーブルのアクセス制御を行い、テーブルの読
出し書込みを行うもの、52はECC回路であり、シェアー
ドテーブルへのデータ、シェアードテーブルからのデー
タのエラーチェック(パリティチェック)を行うもの、
53はシェアードテーブルであり、共用する制御情報を格
納するメモリで構成され、選択排他制御のため選択テー
ブル53a、53bと、各部の動作の進行状況を格納しておく
進行状況テーブル53cと、実行中コマンドエリア53dとを
有しており、選択排他制御テーブルは、各デバイスアダ
プタ2a、2bが使用中であるか否か及びそのデバイスアダ
プタ2a、2bの制御情報を格納するモジュール選択テーブ
ル53aとDASD9の各デバイス90〜9nが使用中であるか否か
及びリザーブされているか、ヒット選択中かを示すデバ
イス選択テーブル53bとで構成されている。従って、こ
の実施例では、両チャネルアダプタ1a、1bはいずれのデ
バイスアダプタ2a、2bをも選択してDASD9のデバイスを
アクセスでき且つ各チャネルアダプタ1a、1bはデバイス
アダプタ2a、2bの介在なしに共通バス6を介しキャッシ
ュプロセッサ3の制御の元にキャッシュメモリ4との間
でデータ転送でき、同様に各デバイスアダプタ2a、2bも
チャネルアダプタ1a、1bの介在なしに共通バス6を介し
キャッシュプロセッサ3の制御の元にキャッシュメモリ
4との間でデータ転送できる。又、共通バス6は時分割
的に使用され、チャネルアダプタ1a、1b、デバイスアダ
プタ2a、2bは各々キャッシュメモリ4とのデータ転送を
独立に且つ時分割的に行うことができる。
次に、チャネルアダプタ(CA)1a、1bの構成について説
明する。
第3図は第2図構成のチャネルアダプタ(上位側転送
部)の一実施例ブロック図である。図中、10、15はドラ
イバ/レシーバであり、ドライバ/レシーバ10は共通バ
ス6とのコマンド/データのやりとりのためのもの、ド
ライバ/レシーバ15はCPU/CHLとのコマンド/データの
やりとりのためのものであり、11はバス制御部であり、
必要に応じて共通バス6の支配権を獲得し共通バス6と
の応答の制御のためのもの、12はデータバッファであ
り、ドライバ/レシーバ10、15からのコマンド/データ
を一時格納しておくもの、13はデータバッファコントロ
ール部であり、バッファリングを含むデータ転送を行
い、データバッファ12を制御するもの、14はチャネルイ
ンターフェイス制御部であり、CPUのチャネル(CHL)と
コマンドデータのやりとりのためのチャネルインターフ
ェイスの応答制御のためのもの、16はマイクロプロセッ
サ(以下MPUと称す)であり、CPU/CHLからのコマンド/
データに応じて後述するキャッシュ動作、デバイスアダ
プタ選択動作等をプログラムによって実行するもの、17
はコントロールストレッジであり、MPU16の動作のため
必要な制御プログラム(マイクロインストラクショ
ン)、パラメータ等を格納しておくもの、18はMPUバス
であり、MPU16がコントロールストレッジ17、チャネル
インターフェイスコントロール部14、データバッファコ
ントロール部13及びバス制御部11とコマンド/データの
やりとりを行うものであり、19a、19b、19cは内部バス
であり、各々ドライバ/レシーバ15とチャネルインター
フェイスコントロール部14、チャネルインターフェイス
コントロール部14とデータバッファコントロール部13、
ドライバレシーバ10とデータバッファコントロール部13
及びバス制御部11を接続するためのものである。
第3図構成の基本的動作を説明すると、CPU/CHLからの
コマンド/データはドライバ/レシーバ15を介し内部バ
ス19aよりチャネルインターフェイスコントロール部14
へ与えられ、MPUバス18を介しMPU16へ通知されるととも
に内部バス19bを介しデータバッファコントロール部13
よりデータバッファ12に格納される。又、共通バス6か
らのコマンド/データはドライバ/レシーバ10を介し内
部バス19cよりバス制御部11及びデータバッファコント
ロール部13へ与えられ、バス制御部11よりMPUバス18を
介し、MPU16へ通知されるとともにデータバッファ12に
格納される。MPU16はMPUバス18を介しデータバッファコ
ントロール部13よりデータバッファ12に格納されたCPU/
CHL及び共通バス6から与えられたコマンド/データを
読出し、解析を行い必要な処理を実行する。
一方、CPU/CHLへコマンド/データを送出するには、MPU
16がチャネルインターフェイスコントロール部14にMPU
バス18を介しコマンド/データを送り、又はデータバッ
ファコントロール部13をMPUバス18を介し起動してデー
タバッファ12内のコマンドデータをチャネルインターフ
ェイスコントロール部14に送って、内部バス19aを介し
ドライバ/レシーバ15よりCPU/CHLへ送出する。又、共
通バス6へコマンド/データを送出するにはMPU16がMPU
バス18を介しバス制御部11にバス支配権獲得を命じ、バ
ス制御部11が共通バス6の支配権を獲得すると、コマン
ド/データをデータバッファコントロール部13がMPU16
の指示でデータバッファ12より読出しドライバ/レシー
バ10より共通バス6へ送出する。
以上を組合せると、CPU/CHLからのデータを共通バスに
送出すること或いはその逆も可能となる。
次に、デバイスアダプタ(DA)2a、2bの構成について説
明する。
第4図は第2図構成のデバイスアダプタ(下位側転送
部)の一実施例ブロック図である。図中、20、25はドラ
イバ/レシーバであり、ドライバ/レシーバ20は共通バ
ス6とのコマンド/データのやりとりのためのもの、ド
ライバ/レシーバ25はDASD9のアダプタとのコマンド/
データのやりとりのためのものであり、21はバス制御部
であり、共通バス6の支配権を獲得し、共通バス6との
応答の制御のためのもの、22はデータバッファであり、
ドライバ/レシーバ20、25からのコマンド/データを一
時格納しておくもの、23はデータバッファコントロール
部であり、バッファリングを含むデータ転送を行い、デ
ータバッファ22を制御するもの、24はアダプタインター
フェイス制御部であり、DASD9のアダプタとコマンドデ
ータのやりとりのためのアダプタインターフェイスの応
答制御のためのもの、26はマイクロプロセッサ(以下MP
Uと称す)であり、チャネルアダプタ1a、1bの選択動作
に応じてデバイスを制御し、ステージング動作及びライ
トキャッシュ動作等をプログラムによって実行するも
の、27はコントロールストレッジであり、MPU26の動作
のため必要な制御プログラム(マイクロインストラクシ
ョン)、パラメータ等を格納しておくもの、26はMPUバ
スであり、MPU26がコントロールストレッジ27、アダプ
タインターフェイスコントロール部24、データバッファ
コントロール部23及びバス制御部21とコマンド/データ
のやりとりを行うものであり、29a、29b、29cは内部バ
スであり、各々ドライバ/レシーバ25とアダプタインタ
ーフェイスコントロール部24、アダプタインターフェイ
スコントロール部24とデータバッファコントロール部2
3、ドライバレシーバ20とデータバッファコントロール
部23及びバス制御部21を接続するためのものである。
第4図構成の基本的動作を説明すると、DASD9(のアダ
プタ)からのコマンド/データはドライバ/レシーバ25
を介し内部バス29aよりアダプタインターフェイスコン
トロール部24へ与えられ、MPUバス28を介しMPU26へ通知
されるとともに内部バス29bを介しデータバッファコン
トロール部23よりデータバッファ22に格納される。又、
共通バス6からコマンド/データはドライバ/レシーバ
20を介し内部バス29cよりバス制御部21及びデータバッ
ファコントロール部23へ与えられ、バス制御部21よりMP
Uバス28を介し、MPU26へ通知されるとともにデータバッ
ファ22に格納される。MPU26はMPUバス28を介しデータバ
ッファコントロール部23よりデータバッファ22に格納さ
れたコマンド/データ及び共通バス6から与えられたコ
マンド/データを読出し、解析を行い必要な処理を実行
する。
一方、DASD9(のアダプタ)へコマンド/データを送出
するには、MPU26がアダプタインターフェイスコントロ
ール部24にMPUバス28を介しコマンド/データを送り、
又はデータバッファコントロール部23をMPUバス28を介
し起動してデータバッファ22内のコマンドデータをアダ
プタインターフェイスコントロール部24に送って、内部
バス29aを介しドライバ/レシーバ25よりDASD9(のアダ
プタ)へ送出する。又、共通バス6へコマンド/データ
を送出するにはMPU26がMPUバス28を介しバス制御部21に
バス支配権獲得を命じ、バス制御部21が共通バス6の支
配権を獲得すると、コマンド/データをデータバッファ
コントロール部23がMPU26の指示でデータバッファ22よ
り読出しドライバ/レシーバ20より共通バス6へ送出す
る。
次に、キャッシュプロセッサ3の構成について説明す
る。
第5図は、第2図構成におけるキャッシュプロセッサ3
の一実施例ブロック図である。
図中、30はドライバ/レシーバであり、共通バス6との
コマンド/データのやりとりのためのもの、31はバス制
御部であり、共通バス6の支配権を獲得し、共通バス6
との応答制御のためのもの、32はキャッシュコントロー
ルテーブルであり、キャッシュメモリ制御のための情報
を格納するメモリで構成され、キャッシュメモリ4に格
納されているデータのデバイス名、トラック名を格納す
るハッシュテーブル32aと、キャッシュメモリ4に格納
を禁止された(これをno cacheという)デバイス名及び
トラック名を格納するエクステントテーブル32c及びト
ラックバッファ42のスペースを割当てるためのLRUテー
ブル32bとを有するもの、33はキャッシュコントロール
アクセレータ部であり、キャッシュコントロールテーブ
ル32のハッシュテーブル32a及びエクステントテーブル3
2cの捜索を高速化するためのハードウェア、34はマイク
ロプロセッサ(以下MPUと称す)であり、ハッシュテー
ブル32a及びエクステントテーブル32cの捜索、更新処理
や、キャッシュメモリ4のポート割当て、アロケート
(キャッシュメモリ4のスペース割当て)制御を行うも
の、35はコントロールストレッジであり、MPU34の動作
のための制御プログラム(マイクロインストラクショ
ン)、パラメータ等を格納しておくもの、36はMPUバス
でありMPU36がバス制御部31、キャッシュコントロール
アクセレータ部33、キャッシュコントロールテーブル32
及びコントロールストレッジ35とコマンド/データのや
りとりを行うもの、37a、37bは内部バスであり、各々キ
ャッシュコントロールアクセレータ部33とキャッシュコ
ントロールテーブル32、ドライバ/レシーバ30とバス制
御部31とを接続するためのものである。
第5図構成の基本的動作を説明すると、共通バス6から
のコマンド/データ(チャネルアダプタCAからの判定要
求、ポート要求、キャッシュアロケート要求、デバイス
アダプタDAからの終了通知)は、バス制御部31の内部バ
ス37bを介し与えられ、更にMPUバス36を介し、MPU34へ
与えられる。MPU34は、与えられたコマンド/データを
解析し、ハッシュテーブル32a及びエクステントテーブ
ル32cの捜索(アクセレータ部33に命じてハーシュテー
ブル32a及びエクステントテーブル32cを高速捜索)処理
や、ハーシュテーブル32aの更新処理、キャッシュメモ
リ4のポート、レジスタ割当て処理、LRUテーブル32bを
用いたアロケート処理を行い、その結果をMPUバス36を
介しバス制御部31へ与え、内部バス37bを介しドライバ
/レシーバ30より共通バス6へ送出する。
(B) 入出力制御装置の全体の動作説明。
次に、第2図乃至第5図実施例構成の全体動作について
第6図の全体動作図により説明する。
先づ、CPUから発行されるコマンドチェインを次のよう
に仮定する。
CPUからチャネルCHLを介しチャネルアダプタCAに
“Seek"、“Set FM"、“Set Sector"が発行され、チャ
ネルアダプタCAではデータバッファ12に格納される。
チャネルアダプタCAは“Set Sector"コマンドまで
受けると、そのMPU16の判定により、共通バス6を介し
キャッシュプロセッサ(CP)3へ受取ったコマンドに含
まれるアクセス要求トラックがキャッシュメモリ4上に
存在するか否かの判定要求を発する。キャッシュプロセ
ッサ3では、MPU34が判定要求を解読するとキャッシュ
コントロールアクセレータ部33に命じてキャッシュコン
トロールテーブル32のハーシュテーブル32a及びエクス
テントテーブル32cを高速捜索し、アクセス要求トラッ
クがキャッシュメモリ4のトラックバッファ42に存在す
るか(これを「Hit、ヒット」という)存在しないか
(これを「Miss、ミス」という)又は前述の「ノーキャ
ッシュ」(no cache)かを調べ、MPU34に通知し、MPU34
は共通バス6よりチャネルアダプタCAにこれを通知す
る。
チャネルアダプタCAでは、MPU16が通知された判定
結果を調べ、「ヒット」ならステップへ、「ミス」な
らステップへ、「ノーキャッシュ」ならステップへ
進む。
「ミス」の場合には、チャネルアダプタCAのMPU16
はチャネルインターフェイスコントロール部14を介しド
ライバ/レシーバ15よりチャネルCHLにチャネルエンド
(CE)ステータスを報告する。
次にチャネルアダプタCAは、第7図にて後述する空
きデバイスアダプタDA及び要求デバイスを選択するDA及
びデバイス選択を行う。
更に空きデバイスアダプタDA及び要求デバイスの選択が
成功すると、第8図にて後述するステージング動作を行
い、終了する。ステージング動作は要求デバイスから要
求レコードを含む1トラック分のデータをキャッシュメ
モリ4に転送することと、要求レコードを要求したチャ
ネルアダプタCAで転送するものである。
一方、「ヒット」の場合には、デバイスアダプタDA
及びデバイスの選択は必要ないので、チャネルアダプタ
CAのMPU16は、チャネルインターフェイスコントロール
部14を介しドライバ/レシーバ15よりチャネルCHLにチ
ャネルエンド(CE)ステータスと、デバイスエンド(D
E)ステータスとを報告する。
次に、チャネルアダプタCAは、第9図にて後述する
要求デバイスがリザーブ(Reserve)中かを調べるヒッ
ト選択動作を行う。リザーブとは、他のCPUがそのデバ
イスのアクセスを禁止するものである。
更に、要求デバイスがリザーブ中でなくヒット選択が成
功すると、第10図にて後述するライトキャッシュ動作又
は第11図にて後述するリードキャッシュ動作を行い、終
了する。ライトキャッシュ動作は、キャッシュメモリ4
の要求レコードの内容を書替えるとともに当該レコード
を格納しているデバイスを選択し、そのレコードの内容
も書替えるものであり、リードキャッシュ動作は、キャ
ッシュメモリ4の要求レコードの内容を読出すものであ
る。
「ノーキャッシュ」の場合には、チャネルアダプタ
CAのMPU16は、「ミス」の場合と同様チャネルインター
フェイスコントロール部14を介しドライバ/レシーバ15
よりチャネルCHLにチャネルエンド(CE)ステータスを
報告する。
次に、チャネルアダプタCAは、ステップと同様に
第7図にて後述するDA及びデバイス選択を行う。
更に空きデバイスアダプタDA及び要求デバイスの選択が
成功すると第12図にて後述する通常のリード又はライト
動作を行い、終了する。
次に、DA/デバイス選択動作、ステージング動作、ヒッ
ト選択動作、ライト又はリードキャッシュ動作、通常の
リード/ライト動作について説明する。
(C) DA及びデバイス選択動作の説明。
第7図はDA及びデバイス選択動作の説明図である。
(C−1) チャネルアダプタCAは、そのMPU16の指示
によって共通バス6を介しテーブルストレッジ5のモジ
ュールテーブル53aを読出す。モジュールテーブル53aに
は、各デバイスアダプタ2a、2bが使用中かのフラグが格
納されている。モジュールテーブル53aの内容は、共通
バス6を介しドライバ/レシーバ50よりチャネルアダプ
タCAより与えられた指示に従ってテーブルストレッジコ
ントロール部51によって読出され、ドライバ/レシーバ
50を介し共通バス6からチャネルアダプタCAに与えられ
る。
(C−2) チャネルアダプタCAでは、そのMPU16がモ
ジュールテーブル53aの内容を調べ空きデバイスアダプ
タDAがあるかを調べる。空きデバイスアダプタDAがなけ
れば、デバイスアダプタDAが空きとなるまでビジー(bu
sy)解除待ちとなる。
(C−3) 空きデバイスアダプタDAがあると、チャネ
ルアダプタCAは、そのMPU16の指示によって共通バス6
を介しテーブルストレッジ5のデバイステーブル53bを
読出す。デバイステーブル53bには、DASD9の各デバイス
90〜9n(第14図参照)が使用中か否かのフラグと、リザ
ーブ中か否かのフラグと、ヒット選択中か否かのフラグ
とが格納されている。デバイステーブル53bの内容は、
共通バス6を介しドライバ/レシーバ50よりチャネルア
ダプタCAより与えられた指示に従ってテーブルストレッ
ジコントロール部51によって読出され、ドライバ/レシ
ーバ50を介し共通バス6からチャネルアダプタCAに与え
られる。
(C−4) チャネルアダプタCAでは、そのMPU16がデ
バイステーブル53bの内容を調べ、CPU/CHLが要求したデ
バイスがリザーブ中か否か及び他のチャネルアダプタに
よって選択中(使用中)かを調べる。
要求したデバイスがリザーブ中又は選択中なら、リザー
ブが解除又は選択が解除されるまでそのアクセス要求を
ビジー解除待ち状態となる。
(C−5) 要求したデバイスがリザーブされてなくそ
して選択されてないと、チャネルアダプタCAでは、MPU1
6が共通バス6を介しコントロールストレッジ5のモジ
ュールテーブル53a及びデバイステーブル53bの使用フラ
グの更新登録を行う。即ち、モジュールテーブル53aの
選択したデバイスアダプタDAの使用フラグを立て、且つ
デバイステーブル53bの要求したデバイスの使用フラグ
を立てる。
(C−6) 次に、チャネルアダプタCAは、共通バス6
を介し選択したデバイスアダプタDAに指示して要求した
デバイス90〜9nに動作中かの問い合せを行う。各デバイ
ス90〜9nは一定期間使用されないと、磁気ディスクと磁
気ヘッドがくっついてしまい動作が良好に行われなくな
るため、デバイス90〜9n自体の制御でシーク動作を行う
パトロールシーケンス等を行う場合がある。このパトロ
ールシーケンス中か否かを調べ、デバイス動作中なら、
デバイス動作が解除されるまでビジー解除待ちとなる。
(C−7) デバイスが動作中でないと又はなくなる
と、チャネルアダプタCAは選択したデバイスアダプタDA
及び要求デバイスへのパスを獲得し、実選択が成功し、
DA及びデバイス選択を終了する。
(D) ステージング動作の説明。
第8図はステージング動作の説明図である。
(D−1) 前述の如く、チャネルアダプタCAはデバイ
スアダプタDA及び要求デバイスの選択が成功すると、チ
ャネルアダプタCAでは、そのMPU16が共通バス6を介し
てキャッシュプロセッサ(CP)3に対し、キャッシュメ
モリ4、即ち、トラックバッファ42のスペース割当であ
るキャッシュアロケート要求を発行する。
(D−2) キャッシュプロセッサ(CP)3では、MPU3
4がこれを解読し、アロケート処理を行い、キャッシュ
コントロールテーブル32のLRUテーブル32aの内容を調
べ、LRUアルゴリズムによってトラックバッファ42のス
ペースを確保し、そのスペースを示すアロケート情報を
共通バス6を介しテーブルストレッジ5へ与える。
テーブルストレッジ5では、ドライバ/レシーバ50を介
しテーブルストレッジコントロール部51がこれを受け、
シェアードテーブル53の進行状況テーブル53cに格納し
ておく。
(D−3) 次に、チャネルアダプタCAは、そのMPU16
が共通バス6を介しテーブルストレッジ5にステージン
グ動作の内容を示す動作情報ICWを与える。動作情報ICW
はステージングコマンド、コマンド発行パス(チャネル
アダプタ)、シークアドレス、セクター情報等で構成さ
れ、テーブルストレッジ5では、ドライバ/レシーバ50
を介しテーブルストレッジコントロール部51がこれを受
け、シェアードテーブル53のコマンドエリア53dに格納
する。
(D−4) 次に、チャネルアダプタCAは、そのMPU16
が共通バス6を介し選択したデバイスアダプタDAにテー
ブルストレッジ5の動作情報ICWのアドレスを含む動作
開始指示を発する。
(D−5) これによって、デバイスアダプタDAは共通
バス6を介しテーブルストレッジ5のシェアードテーブ
ル53の当該アドレスの動作情報ICWを読出し、DASD9の前
述の要求デバイスにSeek,Set Sector(セクタ値“0")
の指示を出す。
チャネルアダプタCAはステップ(D−4)の指示を行っ
た点で解放され、他の動作が可能となり、デバイスアダ
プタDAもデバイスへ指示を出した時点で解放される。
(D−6) デバイスはこれによって動作を開始し、指
示されたセクタ“0"に近づいたことによってデバイスア
ダプタDAに割込みを上げる。これによってデバイスアダ
プタDAは、共通バス6を介しテーブルストレッジ5のシ
ェアードテーブル53内の動作情報ICWを読出す。このデ
バイスアダプタDAは先のデバイスに指示を行ったデバイ
スアダプタDAと同じである必要はない。
更に、デバイスアダプタDAはテーブルストレッジ5のシ
ェアードテーブル53内の進行状況テーブル53cのアロケ
ート情報を読取り、トラックバッファ42の割当てスペー
スを知り、デバイスから送られるホームアドレス(HA)
からステージングを開始する。即ち、デバイスアダプタ
DAはデバイスから与えられるホームアドレスHA以下順次
RO−C、RO−D……を共通バス6を介しキャッシュメモ
リ4に与え、トラックバッファ42の割当てられたスペー
スに書込んでいく。これとともにデバイスアダプタDAは
共通バス6を介しテーブルストレッジ5のシェアードテ
ーブル53内の進行状況テーブル53cにステージング進行
状況を書込んでいく。
このようにしてステージングを行っていくうちに、デバ
イスアダプタDAがコマンド指定セクタ値に近づくと、先
づ、共通バス6を介しテーブルストレッジ5のシェアー
ドテーブル53内のモジュールテーブル53aに割込み理由
(指定セクタに近づいた)をセットし、次に、共通バス
6を介し空いているチャネルアダプタCAにチャネル再結
合のための割込みを上げる。
(D−7) 割込まれたチャネルアダプタCAは、共通バ
ス6を介しテーブルストレッジ5のシェアードテーブル
53内のモジュールテーブル53aの割込み理由を読出し、
指定セクタに近づいたことを知ると、チャネルCHLに再
結合要求Req In及びデバイスエンド(DE)ステータスを
通知する。
(D−8) チャネルCHLはこれによって次のコマンド
であるSearch ID Eqコマンドを発し、チャネルアダプタ
CAがこれを受けとると、共通バス6を介しテーブルスト
レッジ5のシェアードテーブル53内の進行状況テーブル
53cの進行状況を読出して、チェックし、ステージング
の同期をとって、コマンド転送モードを共通バス6を介
し当該進行状況テーブル53cに書込む。
(D−9) デバイスアダプタDAは、この進行状況テー
ブル53cの内容を共通バス6を介し読出し、FORKモード
の同期型転送を行う。
即ち、デバイスからのデータを共通バス6を介しキャッ
シュメモリ4に転送するとともにチャネルアダプタCAに
も転送する。
(D−10) 一方,チャネルアダプタCAは、チャネルCH
LからのデータCCHHR(シリンダアドレス、ヘッドアドレ
ス、レコード番号)を受け、デバイスアダプタDAからの
データ(ここでは、レコード2のカウント部R2−C)と
比較する。この比較によって不一致なら要求したレコー
ドでないので、チャネルアダプタCAはチャネルエンド
(CE)及びデバイスエンド(DE)ステータスをチャネル
CHLへ返し、再度Search ID Eqコマンドを受取る。
(D−11) デバイスアダプタDAは再び共通バス6を介
し進行状況テーブル53cの内容を読出すと、コマンド転
送モードは変更ないので、FORKモードの同期型転送を続
け、R2−Cに続くデバイスからのレコード2のデータ部
R2−Dを共通バス6を介しキャッシュメモリ4及びチャ
ネルアダプタCAに転送する。レコード2は要求レコード
でないのでチャネルアダプタCAでは、R2−Dは読み捨て
られる。そしてデバイスアダプタDAは、デバイスからの
次のカウント部R3−Cを共通バス6を介しキャッシュメ
モリ4及びチャネルアダプタCAに転送する。チャネルア
ダプタCAでは、ステップ(D−10)と同様チャネルCHL
からCCHHRと次のカウント部を比較し、一致と判定する
と要求レコードと判定し、ステータスモディファイアST
M、チャネルエンド(CE)ステータスをチャネルCHLに返
し、チャネルCHLより次のコマンドを受ける。
(D−12) 次のコマンドがライトコマンド(Write DA
TA)であると、チャネルアダプタCAは共通バス6を介し
テーブルストレッジ5の進行状況テーブル53cにコマン
ド転送モード(Write)をセットする。
デバイスアダプタDAはこの進行状況テーブル53cの内容
を読出し、ライトであることを知ると、ライトモードに
変わる。そしてチャネルCHLからのレコード3のライト
データR3−DがチャネルアダプタCAより共通バス6を介
して転送されると、デバイスアダプタDAが当該デバイス
にライトデータR3−Dを書込む。同時にライトデータR3
−Dがトラックバッファ42にも書込まれる。
一方、次のコマンドが図のカッコ内の如くリードコマン
ド(Read Data)であると、同様にチャネルアダプタCA
は共通バス6を介し進行状況テーブル53cにコマンド転
送モード(Raed)をセットし、デバイスアダプタDAが共
通バス6を介しこれを読出すと、デバイスからのレコー
ド3のデータ部R3−Dを図の点線矢印の如く共通バス6
を介しキャッシュメモリ4及びチャネルアダプタCAへ転
送し、チャネルアダプタCAよりチャネルCHLへ更に転送
せしめる。
そして、チャネルアダプタCAはコマンドチェインの終了
(Write DATA又はRead Dataで終了)によって共通バス
6を介しテーブルストレッジ5の進行状況テーブル53c
のコマンド転送モードをリセットする。これによってチ
ャネルアダプタCAはフリーとなり、他の処理が可能とな
る。
(D−13) 一方、デバイスアダプタDAは共通バス6を
介しテーブルストレッジ5の進行状況テーブル53cの内
容を読出し、コマンド転送モードのチェックを行い、コ
マンド転送モードがリセットされたことを知る。更に、
デバイスアダプタDAは、当該デバイスの読出しトラック
の残りに更にレコードがある場合には、キャッシュメモ
リ4へのステージングによるデータ転送が続けられ、ト
ラック上の最終レコードのステージングが終了すると、
デバイスアダプタDAはキャッシュプロセッサ3に共通バ
ス6を介しステージング終了を通知する。これによって
キャッシュプロセッサ3はハッシュテーブル32aにトラ
ックバッファ42にステージング済トラックの登録を行
う。
このようにしてステージング動作が終了すると、キャッ
シュメモリ4のトラックバッファ42には、CPU/CHLが要
求したレコードを含む1トラック分のデータが格納さ
れ、以降は当該トラックのレコードへのアクセスはキャ
ッシュメモリ4に対して行われる。一方、CPU/CHLは、
リードコマンドならステージング中に要求レコードを得
ることができ、ライトコマンドなら、デバイス内(及び
キャッシュメモリ4内)の要求レコードを書替えること
ができる。
(E) ヒット選択動作の説明 第9図は、ヒット選択動作の説明図である。
(E−1) チャネルアダプタCAは、そのMPU16の指示
によって共通バス6を介しテーブルストレッジ5のデバ
イステーブル53bを読出す。デバイステーブル53bには、
前述の如くDASD9の各デバイス90〜9n(第14図参照)が
使用中か否かのフラグと、リザーブ中か否かのフラグ
と、ヒット選択中か否かのフラグとが格納されている。
デバイステーブル53bの内容は、共通バス6を介しドラ
イバ/レシーバ50よりチャネルアダプタCAより与えられ
た指示に従ってテーブルストレッジコントロール部51に
よって読出され、ドライバ/レシーバ50を介し共通バス
6からチャネルアダプタCAに与えられる。
(E−2) チャネルアダプタCAでは、そのMPU16がデ
バイステーブル53bの内容を調べ、CPU/CHLが要求したデ
バイスがリザーブ中か否かヒット選択中か否かを調べ
る。ヒット選択中動作は、デバイスの実選択をしないの
で、そのデバイスのデータへのアクセスが禁止されてい
るか否かのリザーブ中か否か及びヒット選択中か否かを
調べればよく、リザーブ中又はヒット選択中ならリザー
ブ又はヒット選択解除までビジー解除待ちとなる。又、
他のCAからの使用状況をチェックして同一シリンダのア
クセスがあるかどうかを調べる。有れば待ちとなる。
(E−3) 要求したデバイスはリザーブ及びヒット選
択されてなければチャネルアダプタCAでは、MPU16が共
通バス6を介しテーブルストレッジ5のデバイステーブ
ル53bの更新登録を行う。即ち、デバイステーブル53bの
要求デバイスのヒット選択欄に「ヒット選択」の旨書込
み、シリンダアドレスを登録しておく。
これによってヒット選択は成功し、ヒット動作は終了す
る。
(F) キャッシュ動作の説明。
キャッシュ動作はリードの場合には、単にキャッシュメ
モリ4の内容を読込むだけで済むが、ライトの場合に
は、キャッシュメモリ4の内容を書替える他にデバイス
自体の内容も書替える必要がある。
先づ、ライトキャッシュ動作について第10図動作説明図
により説明する。
(F−1) 前述の如くヒット選択が成功し、CPU/CHL
よりSearch ID EqをチャネルアダプタCAが受けると、そ
のMPU16が共通バス6を介し、キャッシュプロセッサ3
にキャッシュメモリ4のポート要求を発する。
これによってキャッシュプロセッサ3は、MPU34がこれ
を解読し、キャッシュメモリ4のシェアードストレッジ
コントロール部41のポート部41aの一部のポートとレジ
スタ群41bのレジスタをチャネルアダプタCAの使用のた
め割当て、これを共通バス6を介しキャッシュメモリ4
に送り、シェアードストレッジコントロール部41のポー
ト部41aのポート割当てと、レジスタ群41bのレジスタセ
ットアップを行わしめる。
これによってチャネルアダプタCAはキャッシュメモリ4
のポートとレジスタを獲得し、共通バス6を介した多重
転送が可能となる。
即ち、ステージング動作中でも時分割的にキャッシュメ
モリ4へのアクセスが可能となる。
(F−2) 次に、チャネルアダプタCAは、そのMPU16
が共通バス6を介しキャッシュメモリ4へデータ転送要
求を発する、データ転送要求はトラックバッファ42にお
ける要求レコードの先頭アドレスとバイト数を含んでい
る。
キャッシュメモリ4では、シェアードストレッジコント
ロール部41がデータ転送要求をレジスタ群41bの割当て
られたレジスタにセットし、トラックバッファ42をアク
セスする。これによってトラックバッファ42からは、先
づ、要求レコードのカウント部、例えばR3−Cが読出さ
れ、ポート部41aの割当てポートにセットされた後、ド
ライバ/レシーバ40から共通バス6を介し、チャネルア
ダプタCAに転送される。
(F−3) チャネルアダプタCAでは、チャネルCHLか
らのCCHHRと転送されたカウント部R3−Cを比較し、一
致と判定すると要求レコードと判定し、ステータスモデ
ィファイアSTM、チャンネルエンド(CE)及びデバイス
エンド(DE)ステータスをチャネルCHLに返し、チャネ
ルCHLより次のコマンドを受ける。
(F−4) チャネルCHLからの次のコマンドがライト
コマンド(Write D)であると、チャネルアダプタCAは
リトライステータス(Retry Status)をチャネルCHLへ
返送したのち、DA及びデバイス選択動作を行う。即ち、
ライトの場合には、デバイス内のレコードの書替えも必
要のため、DA及びデバイス選択が行われ、この動作は
(C)項で説明したDA及びデバイス選択動作と同一のた
め説明は省略する。
(F−5) 次に、チャネルアダプタCAは、そのMPU16
が共通バス6を介しテーブルストレッジ5にライトスル
ー動作の内容を示す動作情報ICWを与える。動作情報ICW
はライトスルーコマンド、コマンド発行パス(チャネル
アダプタ)、シークアドレス、セクター情報等で構成さ
れ、テーブルストレッジ5では、ドライバ/レシーバ50
を介しテーブルストレッジコントロール部51がこれを受
け、シェアードテーブル53のコマンドエリア53dに格納
する。
(F−6) 次に、チャネルアダプタCAは、そのMPU16
が共通バス6を介し選択したデバイスアダプタDAにテー
ブルストレッジ5の動作情報ICWのアドレスを含む動作
開始指示を発する。
(F−7) これによって、デバイスアダプタDAは共通
バス6を介しテーブルストレッジ5のシェアードテーブ
ル53の当該アドレスの動作情報ICWを読出し、DASD9の前
述の要求デバイスにSeek,Set Sector(セクタ値はR3の
もの)の指示を出す。
チャネルアダプタCAはステップ(F−6)の指示を行っ
た点で解放され、他の動作が可能となり、デバイスアダ
プタDAもデバイスへ指示を出した時点で解放される。
(F−8) デバイスはこれによって動作を開始し、指
示されたセクタR3のセクタ値に近づいたことによってデ
バイスアダプタDAに割込みを上げる。これによってデバ
イスアダプタDAは、共通バス6を介しテーブルストレッ
ジ5のシェアードテーブル53内の動作情報ICWを読出
す。このデバイスアダプタDAは先のデバイスに指示を行
ったデバイスアダプタDAと同じである必要はない。
そして、デバイスアダプタDAは共通バス6を介しテーブ
ルストレッジ5のシェアードテーブル53内のモジュール
テーブル53aに割込み理由(指定セクタに近づいた)を
セットし、次に、共通バス6を介し空いているチャネル
アダプタCAにチャネル再結合のための割込みを上げる。
(F−9) 割込まれたチャネルアダプタCAは、共通バ
ス6を介しテーブルストレッジ5のシェアードテーブル
53内のモジュールテーブル53aの割込み理由を読出し、
指定セクタに近づいたことを知ると、チャネルCHLに再
結合要求Req In及びデバイスエンド(DE)ステータスを
通知する。
(F−10) チャネルCHLはこれによって次のコマンド
であるWrite Dを発行する。
次のコマンドがライトコマンド(Write D)であると、
チャネルアダプタCAは共通バス6を介しテーブルストレ
ッジ5の進行状況テーブル53cにコマンド転送モード(W
rite)をセットした後、同期コマンドをデバイスアダプ
タDAに共通バス6を介し与える。
これによって、デバイスアダプタDAでは、デバイスから
のデータカウント部と指定されたレコードR3とを比較し
て内部サーチする。一方、チャネルアダプタCAでは。ス
テップ(F−1)と同様にポート要求を発し、キャッシ
ュプロセッサ3によってキャッシュメモリのポート割当
て、レジスタセットアップを行わしめ、ポートとレジス
タを獲得する。
(F−11) デバイスアダプタDAの内部サーチで指定レ
コードR3とデバイスからのカウント部R3−Cとの一致が
得られると、デバイスアダプタDAは、共通バス6を介し
チャネルアダプタCAに同期コマンドを発する。これによ
ってチャネルアダプタCAはチャネルCHLからのライトデ
ータR3−Dを共通バス6を介しキャッシュメモリ4とデ
バイスアダプタDAに転送し、キャッシュメモリ4のトラ
ックバッファ42の内容を書き替えるとともにデバイスア
ダプタDAより当該デバイスの内容も書き替える。
そして、チャネルアダプタCAはコマンドチェインの終了
(Write D終了)によって共通バス6を介しチェイン終
了通知をデバイスアダプタDAに送り、更にテーブルスト
レッジ5の進行状況テーブル53cのコマンド転送モード
をリセットする。これによってチャネルアダプタCAはフ
リーとなり、他の処理が可能となる。又、デバイスアダ
プタDAはチェイン終了通知に対しライトスルー終了を共
通バス6を介しキャッシュプロセッサ3に通知し、LRU
テーブル32aの更新を行わしめ、ライトのキャッシュ動
作を終了せしめる。
次に、リードキャッシュ動作について第11図動作説明図
により説明する。
(F−20) ステップ(F−1)と同様に、前述の如く
ヒット選択が成功し、CPU/CHLよりSearch ID Eqをチャ
ネルアダプタCAが受けると、そのMPU16が共通バス6を
介しキャッシュプロセッサ3にキャッシュメモリ4のポ
ート要求を発する。
これによってキャッシュプロセッサ3は、MPU34がこれ
を解読し、キャッシュメモリ4のシェアードストレッジ
コントロール部41のポート部41aの一部のポートとレジ
スタ群41bのレジスタをチャネルアダプタCAの使用のた
め割当て、これを共通バス6を介しキャッシュメモリ4
に送り、シェアードストレッジコントロール部41のポー
ト部41aのポート割当てと、レジスタ群41bのレジスタセ
ットアップを行わしめる。
これによってチャネルアダプタCAはキャッシュメモリ4
のポートとレジスタを獲得し、共通バス6を介した多重
転送が可能となる。
即ち、ステージング動作中でも時分割的にキャッシュメ
モリ4へのアクセスが可能となる。
(F−21) 次に、チャネルアダプタCAは、そのMPU16
が共通バス6を介しキャッシュメモリ4へデータ転送要
求を発する、データ転送要求はトラックバッファ42にお
ける要求レコードのカウント部の先頭アドレスとバイト
数を含んでいる。
キャッシュメモリ4では、シェアードストレッジコント
ロール部41がデータ転送要求をレジスタ群41bの割当て
られたレジスタにセットし、トラックバッファ42をアク
セスする。これによってトラックバッファ42からは、先
づ、要求レコードのカウント部、例えばR3−Cが読出さ
れ、ポート部41aの割当てポートにセットされた後、ド
ライバ/レシーバ40から共通バス6を介し、チャネルア
ダプタCAに転送される。
(F−22) チャネルアダプタCAでは、チャネルCHLか
らのCCHHRと転送されたカウント部R3−Cを比較し、一
致と判定すると要求レコードと判定し、ステータスモデ
ィファイアSTM、チャネルエンド(CE)及びデバイスエ
ンド(DE)ステータスをチャネルCHLに返し、チャネルC
HLより次のコマンドを受ける。
(F−23) チャネルCHLからの次コマンドがリードコ
マンド(Read D)であると、チャネルアダプタCAは,そ
のMPU16が共通バス6を介しキャッシュメモリ4へデー
タ転送要求を発する、データ転送要求はトラックバッフ
ァ42における要求レコードのデータ部の先頭アドレスと
バイト数を含んでいる。
キャッシュメモリ4では、シェアードストレッジコント
ロール部41がデータ転送要求をレジスタ群41bの割当て
られたレジスタにセットし、トラックバッファ42をアク
セスする。これによってトラックバッファ42からは、要
求レコードのデータ部、例えばR3−Dが読出され、ポー
ト部41aの割当てポートにセットされた後、ドライバ/
レシーバ40から共通バス6を介し、チャネルアダプタCA
に転送される。
(F−24) そして、チャネルアダプタCAは更にこのデ
ータ部R3−DをチャネルCHLへ転送した後、コマンドチ
ェイン終了を検知し、チャネルエンド(CE)及びデバイ
スエンド(DE)ステータスをチャネルCHLに送り、チャ
ネルCHLとの結合を解放後、テーブルストレッジ5のデ
バイス選択テーブル53bの当該デバイスのヒット欄の選
択フラグを解除して、リードキャッシュ動作を終了す
る。
(G) 通常のリード/ライト動作の説明。
第12図は通常のリード/ライト動作の説明図である。
(G−1) 前述の如く、チャネルアダプタCAはデバイ
スアダプタDA及び要求デバイスの選択が成功すると、チ
ャネルアダプタCAは、そのMPU16が共通バス6を介しテ
ーブルストレッジ5に通常動作の内容を示す動作情報IC
Wを与える。動作情報ICWは通常動作コマンド、コマンド
発行パス(チャネルアダプタ)、シークアドレス、セク
ター情報等で構成され、テーブルストレッジ5では、ド
ライバ/レシーバ50を介しテーブルストレッジコントロ
ール部51がこれを受け、シェアードテーブル53のコマン
ドエリア53dに格納する。
次に、チャネルアダプタCAは、そのMPU16が共通バス6
を介し選択したデバイスアダプタDAにテーブルストレッ
ジ5の動作情報ICWのアドレスを含む動作開始指示を発
する。
(G−2) これによって、デバイスアダプタDAは共通
バス6を介しテーブルストレッジ5のシェアードテーブ
ル53の当該アドレスの動作情報ICWを読出し、DASD9の前
述の要求デバイスにSeek,Set Sector(指示セクタ値)
の指示を出す。
チャネルアダプタCAはステップ(G−1)の指示を行っ
た点で解放され、他の動作が可能となり、デバイスアダ
プタDAもデバイスへ指示を出した時点で解放される。
(G−3) デバイスはこれによって動作を開始し、指
示されたセクタに近づいたことによってデバイスアダプ
タDAに割込みを上げる。これによってデバイスアダプタ
DAは共通バス6を介しテーブルストレッジ5のシェアー
ドテーブル53内の動作情報ICWを読出す。このデバイス
アダプタDAは先のデバイスに指示を行ったデバイスアダ
プタDAと同じである必要はない。
そして、デバイスアダプタDAはICWを解析し、共通バス
6を介しテーブルストレッジ5のシェアードテーブル53
内のモジュールテーブル53aに割込み理由(指定セクタ
に近づいた)をセットし、次に、共通バス6を介し空い
ているチャネルアダプタCAにチャネル再結合のための割
込みを上げる。
(G−4) 割込まれたチャネルアダプタCAは、共通バ
ス6を介しテーブルストレッジ5のシェアードテーブル
53内のモジュールテーブル53aの割込み理由を読出し、
指定セクタに近づいたことを知ると、チャネルCHLに再
結合要求Req In及びデバイスエンド(DE)ステータスを
通知する。
チャネルCHLはこれによって次のコマンドであるSearch
ID Eqコマンドを発し、チャネルアダプタCAはこれを受
けた後、コマンド転送モードを共通バス6を介し当該進
行状況テーブル53cに書込む。
デバイスアダプタDAは、この進行状況テーブル53cの内
容を共通バス6を介し読出し、同期型転送を行う。
即ち、デバイスからのデータを共通バス6を介しチャネ
ルアダプタCAに転送する。
(G−5) 一方、チャネルアダプタCAは、チャネルCH
LからのデータCCHHR(シリンダアドレス、ヘッドアドレ
ス、レコード番号)を受け、デバイスアダプタDAからの
データ(ここでは、レコード2のカウント部R2−C)と
比較する。この比較によって不一致なら要求したレコー
ドでないので、チャネルアダプタCAは、チャネルエンド
(CE)及びデバイスエンド(DE)ステータスをチャネル
CHLへ返し、再度Search ID Eqコマンドを受取る。
(G−6) デバイスアダプタDAは再び共通バス6を介
し進行状況テーブル53cの内容を読出すと、コマンド転
送モードは変更ないのでR2−Cに続くデバイスからのレ
コード2のデータ部R2−Dは転送せず、クロッキングす
る。
そしてデバイスアダプタDAは、デバイスからの次のカウ
ント部R3−Cを共通バス6を介しキャッシュメモリ4及
びチャネルアダプタCAに転送する。チャネルアダプタCA
では、ステップ(G−5)と同様チャネルCHLからCCHHR
と次のカウント部を比較し、一致と判定すると要求レコ
ードと判定し、ステータスモディファイアSTM、チャネ
ルエンド(CE)及びデバイスエンド(DE)ステータスを
チャネルCHLに返し、チャネルCHLより次のコマンドを受
ける。
(G−7) 次のコマンドがライトコマンド(Write K
D)であると、チャネルアダプタCAは共通バス6を介し
テーブルストレッジ5の進行状況テーブル53cにコマン
ド転送モード(Write)をセットする。
デバイスアダプタDAはこの進行状況テーブル53cの内容
を読出し、ライトであることを知ると、ライトモードに
変わる。そしてチャネルCHLからのレコード3のライト
データR3−DがチャネルアダプタCAより共通バス6を介
して転送されると、デバイスアダプタDAは当該デバイス
にライトデータR3−Dを書込む。
一方、次のコマンドが図のカッコ内の如くリードコマン
ド(Read Data)であると、同様にチャネルアダプタCA
は共通バス6を介し進行状況テーブル53cにコマンド転
送モード(Read)をセットし、デバイスアダプタDAが共
通バス6を介しこれを読出すと、デバイスからのレコー
ド3のデータ部R3−Dを図の点線矢印の如く共通バス6
を介しキャッシュメモリ4及びチャネルアダプタCAへ転
送し、チャネルアダプタCAよりチャネルCHLへ更に転送
せしめる。
そして、チャネルアダプタCAはコマンドチェインの終了
(Write KD又はRead Dateで終了)によって共通バス6
を介しテーブルストレッジ5の進行状況テーブル53cの
コマンド転送モードをリセットする。これによってチャ
ネルアダプタCAはフリーとなり、他の処理が可能とな
る。
又、デバイスアダプタDAは共通バス6を介しテーブルス
トレッジ5の進行状況テーブル53cのコマンド転送モー
ドのチェックを行い、リセットされたことを検出して、
終了する。
(H) 入出力制御装置の第2の実施例の構成の説明。
第13図は、本発明の第2の実施例ブロック図である。
図中、第2図で示したものと同一のものは同一の記号で
示してあり、1c、1dは各々チャネルアダプタであり、チ
ャネルアダプタ1a、1bと同一の構成のもの、2c、2dは各
々デバイスアダプタであり、デバイスアダプタ2a、2bと
同一の構成のもの、9aは第1のDASDであり、9bは第2の
DASDであり、各々DASD9と同一の構成のものである。
第2図の第1の実施例に比し、DASDを1個増設し、これ
に応じてデバイスアダプタ2c、2dを設け、更にチャネル
アダプタ1c、1dも増設したものである。このため上位側
のパスはチャネルアダプタ1a〜1d分の4パスとなり、下
位側のパスも4パスとなる。このように共通バス6を用
いているので、チャネルアダプタ、デバイスアダプタの
増設が容易であり、しかもいずれのチャネルアダプタと
デバイスアダプタとのデータ転送ができる。又、チャネ
ルアダプタもいずれのDASD9a、9bへもアクセスでき、極
めて便利である。尚、第2の実施例の詳細構成及び動作
は第2図のものと同一であるので説明は省略する。
チャネルアダプタやデバイスアダプタの増設数は任意に
でき、システム構成に応じて増設数が決定される。
以上本発明を実施例により説明したが、本発明は本発明
の主旨に従い種々の変形が可能であり、本発明からこれ
らを排除するものではない。
〔発明の効果〕
以上説明した様に、本発明によれば、次の効果を奏す
る。
キャッシュメモリに対する上位側と下位側のアクセ
スを制御する制御部を設け、上位側と下位側とのキャッ
シュメモリへのアクセスを時分割多重制御するので、下
位側のステージング転送中に、上位側がキャッシュメモ
リをアクセスできる等、入出力制御動作をより高速にで
きる。
選択排他制御部を上位側転送部の管理の元に別途設
けたので、上位側パスと下位側パスを独立動作させるよ
うにしても、複数の上位側転送部に対し、選択排他制御
の一元管理ができ、容易に選択排他制御が可能となり、
しかも上位側転送部の負荷も軽減できる。
キャッシュメモリ部を制御する制御部を別途設けた
ので、上位側パスと下位側パスを独立動作させるように
しても、複数の上位側転送部に対し、キャッシュメモリ
部の制御を一元管理でき、容易にキャッシュメモリ部の
制御が可能となり、しかも上位側転送部の負荷も軽減で
きる。
【図面の簡単な説明】
第1図は本発明の原理説明図、 第2図は本発明の第1の実施例構成図、 第3図は第2図構成におけるチャネルアダプタの内部ブ
ロック図、 第4図は第2図構成におけるデバイスアダプタの内部ブ
ロック図、 第5図は第2図構成におけるキャッシュプロセッサの内
部ブロック図、 第6図は第2図構成における全体動作説明図、 第7図は第6図におけるDA/デバイス選択動作説明図、 第8図は第6図におけるステージング動作説明図、 第9図は第6図におけるヒット選択動作説明図、 第10図は第6図におけるライトキャッシュ動作説明図、 第11図は第6図におけるリードキャッシュ動作説明図、 第12図は第6図における通常のリード/ライト動作説明
図、 第13図は本発明の第2の実施例構成図、 第14図は従来の入出力システムの構成図である。 図中、CT……入出力制御装置、1a、1b、1c、1d、CA……
チャネルアダプタ(上位側転送部)、2a、2b、2c、2d、
DA……デバイスアダプタ(下位側転送部)、3、4……
キャッシュメモリ部、5……テーブルストレッジ(選択
排他制御部)、9……DASD(入出力装置)。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】上位側からのアクセス要求に応じて、該上
    位側との間でデータ転送を行う上位側転送部と、 複数の入出力装置に接続され、該入出力装置との間でデ
    ータ転送を行う下位側転送部と、 該入出力装置のデータを格納しておくためのキャッシュ
    メモリ部とを有し、 該上位側転送部と該下位側転送部とを該キャッシュメモ
    リ部に接続し、 該上位側転送部が、該上位側のアクセス要求に応じて、
    該キャッシュメモリ部の該データ、又は該下位側転送部
    を介して該入出力装置を選択して得たデータを該上位側
    に転送する入出力制御装置において、 該上位側転送部と該下位側転送部を複数設けるととも
    に、 該上位側転送部の要求に応じて、該キャッシュメモリ部
    に該要求するデータが存在するかを判定し、且つ該上位
    側転送部と該下位側転送部との該キャッシュメモリのア
    クセスを制御する制御部と、 該上位側転送部の入出力装置選択要求に応じて、該入出
    力装置の選択排他制御を行う選択排他制御部とを設け、 該制御部の制御の元に、該上位側転送部と該下位側転送
    部とが該キャッシュメモリ部を時分割多重アクセスする
    ことを特徴とする入出力制御装置。
  2. 【請求項2】前記上位側転送部と、前記下位側転送部
    と、前記キャッシュメモリ部と、前記制御部と、前記選
    択排他制御部とを共通バスにより接続したことを特徴と
    する特許請求の範囲第(1)項記載の入出力制御装置。
JP60027674A 1985-02-15 1985-02-15 入出力制御装置 Expired - Fee Related JPH0724042B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60027674A JPH0724042B2 (ja) 1985-02-15 1985-02-15 入出力制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60027674A JPH0724042B2 (ja) 1985-02-15 1985-02-15 入出力制御装置

Publications (2)

Publication Number Publication Date
JPS61187060A JPS61187060A (ja) 1986-08-20
JPH0724042B2 true JPH0724042B2 (ja) 1995-03-15

Family

ID=12227497

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60027674A Expired - Fee Related JPH0724042B2 (ja) 1985-02-15 1985-02-15 入出力制御装置

Country Status (1)

Country Link
JP (1) JPH0724042B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003323261A (ja) * 2002-04-26 2003-11-14 Hitachi Ltd ディスク制御システム、ディスク制御装置、ディスクシステム、及びその制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4468730A (en) * 1981-11-27 1984-08-28 Storage Technology Corporation Detection of sequential data stream for improvements in cache data storage
JPS6019260A (ja) * 1983-07-13 1985-01-31 Mitsubishi Electric Corp デイスクキヤツシユ方式

Also Published As

Publication number Publication date
JPS61187060A (ja) 1986-08-20

Similar Documents

Publication Publication Date Title
US6148367A (en) Controller limiting modification of cache based upon amount of dirty lines in the cache
CA1315890C (en) Method and apparatus for increasing system throughput via an input/output bus and enhancing address capability of a computer system during dma read/write operations between a common memory and an input/output device
US8041909B2 (en) Disk array system and method for migrating from one storage system to another
JP3944449B2 (ja) 計算機システム、磁気ディスク装置、および、ディスクキャッシュ制御方法
JP3188071B2 (ja) ディスクキャッシュ装置
JPH07152491A (ja) 仮想ディスクシステム
JPH11338641A (ja) ディスク制御装置及びその制御方法
JP2004171437A (ja) ストレージ制御装置及びその制御方法
JP4100256B2 (ja) 通信方法および情報処理装置
JP3690295B2 (ja) ディスクアレイ制御装置
JP2550311B2 (ja) 磁気デイスクの多重制御方式
JP2742186B2 (ja) ディスクドライバ,ディスクアレイ装置,データ記憶システム及びディスクアレイシステムのデータバックアップ方法
JPH0724042B2 (ja) 入出力制御装置
JP3684902B2 (ja) ディスクアレイ制御装置
JP2733189B2 (ja) ディスクアレイ装置の入出力制御方法
JPH035625B2 (ja)
JPH0916474A (ja) 入出力制御装置及び方法
JPS6319856Y2 (ja)
JPS6319857Y2 (ja)
JPH0122656B2 (ja)
JP2599373B2 (ja) Cdrom高速読出装置
JP2002358495A (ja) Cf/ataカード
JP2001344188A (ja) ディスクアレイ装置
JPS6230108Y2 (ja)
JP2000311112A (ja) 情報システム

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees