JPS5960552A - 周辺デ−タ記憶システム - Google Patents

周辺デ−タ記憶システム

Info

Publication number
JPS5960552A
JPS5960552A JP58123539A JP12353983A JPS5960552A JP S5960552 A JPS5960552 A JP S5960552A JP 58123539 A JP58123539 A JP 58123539A JP 12353983 A JP12353983 A JP 12353983A JP S5960552 A JPS5960552 A JP S5960552A
Authority
JP
Japan
Prior art keywords
data
cache
command
storage
channel
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
JP58123539A
Other languages
English (en)
Other versions
JPH0727495B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS5960552A publication Critical patent/JPS5960552A/ja
Publication of JPH0727495B2 publication Critical patent/JPH0727495B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • 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/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/123Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
    • 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
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/31Providing disk cache in a specific location of a storage system
    • G06F2212/312In storage controller

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)
  • Bus Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は周辺記憶システムに係り、更に詳細に説明すれ
ばランダム・アクセス式データ・キャッシュが磁気記憶
ディスク・ファイルまたは磁気記憶テープ・ファイルの
如き、より低速のノくツクアップ用記憶装置に対する見
かけ上の記憶を与えるような記憶階層に係る。
〔発明の背景〕
データ処理は常に、大量のデータを記憶するのに磁気テ
ープ装置および磁気ディスク装置のような周辺記憶装置
に依存している。このような周辺記憶装置からのデータ
は、要求に応じてデータ処理ユニットの主記憶に転送さ
する(米国特許第6217298号および第32186
1 1号参照)その場合、データは主記憶の待行列に入
れらn、データを要求したコンピュータ・プログラムに
よって使用さ扛るのを待つ。データ・バッファの使用に
より周辺記憶装置の性能を向上させるという概念が米国
特許第29606B’.号に示されている。この特許で
は、周辺データ記録装置とデータ処理ユニットの主記憶
との間に先入先出(F’IFO)バッファを設け、この
バッファでデータを待行列化するようにしている。この
データ・バッファは周辺データ記録装置の機械的遅延を
データ処理ユニットからマスクするように作用する。し
かしながら、高い性能および大記憶容量に対する要求は
前記解決法のいずれによっても満足さnていない。
米国特許第3569938号では、データ処理ユニット
および大量のデータを記憶する大容量記憶装置とともに
動作する高速記憶すなわちキャッシュを有することを特
徴とする周辺記憶階層の概念が示さnている。高速記憶
と大容量記憶装置とに密接に連係する制御は、データ処
理ユニットからの要求に応答して、データ処理ユニット
によって次に使用さ汎ると予期さ扛るデータを高速記憶
に維持する。この制御は記憶マネージャと呼ばれ、大容
量記憶装置から高速記憶にデータをページ・インするこ
とに係るデータ・プロセッサからの要求に応答するとと
もに、所定のスペース割当および置換規則に従って逆方
向の要求にも応答する。
1つの実施レリでは、高速記憶は今日の半導体記憶に似
た磁気コアのランダム・アクセス記憶であった。大容量
記憶装置は磁気ディスク記憶または磁気テープ記憶であ
る。また、磁気ディスク記憶を磁気テープ記憶に対する
高速記憶として使用することもある。周辺記憶階層は接
続された複数のコンピュータとの間でデータを授受する
こともあつグと。米国特許第3670307号では、変
更さnたデータのみを高速記憶から大容量記憶装置に転
送することにより2レベル記憶階層のオペレーションを
改善する方法が示さnている。米国特許第667050
9号では、記憶階層の柔軟性の向上が示さ扛ている。す
なわち、複数のポート、つまりホスト接続機構が設けら
扛、各々のポートはそ扛自身の制御ヱ・よびアクセス要
求を待行列させる機能を有し、それによって2レベル記
憶階層の内部オペレーションを向上させるようにしてい
る。
米国特許第3699530号では、チャネル内にデータ
・バッファを置いて前記周辺記憶階層を更に改善してい
る。このデータ・バッファは先入先出バッファとして示
され、そこでデータは主記憶に割当てられろ前に待行列
に加えられる。米国特許第3 7 3 5.3 6 0
号では、チャネル内バツファの変更例が示され、各々の
プロセッサはそ扛自身のキャッシュを有する、すなわち
FIFOバツファというよりはむしろ、キャッシュ・デ
ータを真に管理するバッファが各々のチャネルに設けら
扛る。米国特許第3812475号では、周辺記憶シス
テムをホストに接続するホスト接続機構が示さnている
。米国特許第3839704号では、ディスク記憶装置
にキャッシュ・バッファを設け、データ処理ユニットの
入出力チャネルがこのキャツシュを介してディスク記憶
装置からのデータをアクセスするようにしている。米国
特許第4053752号では、更に精巧な記憶階層が示
され、複数のディスク記憶装置が自動テープ・ライブラ
リからデータを取込む。テープ・ライブラリと高速ディ
スク記憶装置との間のデータ転送は、両転送方向にデー
タを待行列させるFIFOバッファを介して行なわ牡る
。ホストの入出力チャネルと高速ディスク記憶装置の間
には小容量の直列化/非直列化バッファが接続さ扛る。
主記憶とプロセッサの間でキャッシュ転送を行なうとい
う発想もある。例えば、米国特許第4189770号で
は、一定のオペランド・データ転送中にキャッシュを選
択的にバイパスすることが示さ扛ている。米国特許第4
157586号では、主記憶のバックアップ記憶が更新
されるとき主記憶のキャッシュを更新するようにしてい
る。米国特許第4159517号では、プロセッサによ
ってキャッシュをアクセスする速度を測定し、主記憶の
データ転送を行なうようにタイムアウトをとりながら、
主記憶からキャッシュにデータを転送することが示さ扛
ている。米国特許第4142264号では、キャッシュ
は各々がディレクトリを有する複数のキャッシュで構成
さしている。米国特許第4084231号では、多重レ
ベル記憶階層ておけろコピーバック制御が示さ扛ている
。米国特許第4020466号は、上位記憶階層におけ
ろすべての変更を下位記憶階層にコビーノくツクするこ
とを示す。米国特許第3588859号では、変更され
たデータを記憶階層の上位から下位にできるだけ早く転
送するようにしている。
周辺システムは通常、複数の異なるタイプのコンピュー
タに接続さnろ。従って、各々のタイプ。
のコンピュータの接続機構を再設計するよりはむしろ、
各種のコンピュータを各種の周辺システムに結合する、
いわゆるチャネルが開発さ扛ている。
チャネルによ扛ば、1つの周辺システムを複数の異なる
タイプのコンピュータに同時に接続することが可能であ
る。しかしながら、チャネルを設けてもコンピュータの
タイプによっては■10またはチャネル・コマンドが異
なることがある。コマンドの各種のセットに適応するた
め周辺システムは各種の回路を有する。例えば、米国特
許第3721961号では、1つの周辺システムが異な
るコマンド・セットを有する各種のコンピュータに接続
さ扛る。開示さ扛た回路は、1つのコンピュータの回復
能力を別のコンピュータの回復能力にまで高めることに
よって、コンピュータの多様性に適応可能としている。
以上の技術のすべてをもってしても、より最適な動作を
行なう周辺記憶階層の発明が必要である。
データをより早くアクセスするとともにデータの保全性
(integrity)を高めるように、前記記憶階層
の内部オペレーションを改善することが今なお強く望ま
扛ている。よりすぐ扛た能力を有する周辺装置を旧式で
低速のホストとともに動作させることも要求さ扛ている
。特に、入出力、チャネルのデータ転送容量はデータ速
度に相当な変動を有する。例えば、いわゆるストリーミ
ング・チャネルは6メガバイト/秒の転送能力を得るこ
とができるのに対して、旧式のチャネルは15メガバイ
ト/秒以下の能力に過ぎないことがある。従って、新し
い装置が記憶階層に組込まれたとき、その記憶階層を高
速のチャネルだけではなく低速のチャネルにも接続可能
であることが望ましい。
そのような接続機構は効率的な記憶階層を与えるため種
々のデータ処理技術を必要とすることがある。
〔発明の概要〕
本発明の目的は、周辺記憶システムの内部データ処理能
力と接続チャネルのデータ転送能力との相対値に従って
、その内部オペレーションを自動的に調整するようにし
た周辺記憶システムを与えることである。
ある瞬間に周辺記憶システムよりも小さくないデータ転
送能力を有する経路、すなわちチャネルは、たとえホス
トと周辺装置の間のデータのキャッシュ転送が生じるこ
とがあっても、周辺装置を直接アクセスすることが望ま
しい。特定の局面においては、周辺装置に対する第1方
向のデータ転送は周辺装置に対し直接性なうことが望ま
しいのに対し、周辺装置からホストへの第2方向のデー
タ転送はキャッシュを介することが望ましい。周辺装置
のデータ転送速度よりも小さいデータ転送速度を有する
低速のチャネルを経由するデータ転送の場合は、すべて
の転送はキャッシュを介して行なわ扛る。内部オペレー
ションの選択はオペレーションごとに行なわn1データ
には関連しない。
更に、使用中のデータ処理ユニットは、キャッシュと周
辺装置の間に希望する動作関係を確立するため、周辺シ
ステムに意志表示信号を送る。この意志表示信号は高速
および低速のチャネルのために周辺システムによって異
なって解釈され、かくて効率および望ましい動作関係を
維持する。特に、選択的にキャッシュをバイパスするこ
とによって各種の内部制御が生じる。キャッシュの(記
憶)スペース管理のための内部制御は、前記具なるチャ
ネルを介するホストと周辺装置の間の信号転送によって
影響を受ける点を除き、高速および低速のチャネルに無
関係に行なわ扛る。
〔詳細説明〕
以下図面を参照して本発明の実施態様を説明するにあた
り、図面中の同じ参照番号は図面が異なっても同じ部分
および構造特性を示すことに注意さnたい。第1図およ
び第2図において、周辺記憶システム10は、ホスト(
または使用ユニット)11に接続さ牡、ホスト11およ
び周辺記憶ンステム10に使用するデータ信号の受取り
および供給を行なう。周辺記憶システム10の代表的な
適用例において、ホスト11は複数の中央処理ユニツ)
(CPU)から成る。ホスト11にはハードウェアのC
P、Uで走行する仮想計算機またはそのセットを含むこ
とができる。ホスト11はまたマルチ・プロセッサ、付
加処理装置を有する単一プロセッサ等である場合もある
。周辺記憶システム10は、一般的な使用においては通
常、複数のホスト11に接続されるのに対し、ベージン
グおよびスワツピングのための接続においては通常、1
つのホスト11に接続される。
ベージング周辺記憶システム1oとホスト11の間の通
信は、例えばIBM370シリーズのコンピュータの入
出力チャネルに従って構築される複数の入出力接続12
を介して行なわれる。このような入出力接続は一般にチ
ャネルまたはサブチャネルとも呼ばわるが、こnは当業
者には周知であるので詳細な説明は行なわない。ボスト
11はデータ転送速度を変更しうる能力を有するI /
 Oチャネルを備えている。高速チャネル16は例えば
6メガバイト/秒またはそn以上の一定の最高データ速
度でホスト11と周辺記憶システム1゜の間のデータ転
送を可能にする。低速チャネル14は例えば700キロ
バイト/秒、1.5メガバイト/秒等のより低速のデー
タ転送速度のデータ転送を可能にする。本発明にょnば
、周辺記憶システム10はこれらのチャネルの中のいず
nがのチャネルによって、高速または低速で効率的なデ
ータ転送を行なう。
周辺記憶システム10は低速の直接アクセス記憶装置、
すなわち複数のDASD(またはバンクアップ記憶)1
6を有する。そnぞれのDASD16はDOlDl、・
・・・と表記さ扛ている。周辺記憶システム10に関す
るホスト11からのすべてのデータのアクセスおよびデ
ータの記憶はDASD16をアドレス指定することによ
って行なわnる。このアドレス指定は既知の入出力接続
12のアーキテクチャを使用して行なわnる。ある瞬間
にはホスト11がDASD16とデータを直接に授受す
るのに対し、他の時刻ではシステム記憶30のキャッシ
ュ・バッファ40がホスト11とDAS、I)16の間
に接続さnる。(データ領域を迅速にアクセスする)性
能を高めろため、周辺Zステム制御61は周辺記憶ノス
テムIDf:管理することにより、キャッシュ40にホ
スト11によってアクセスさ扛る見込みが最も大きいデ
ータが記憶さnろようにする(このデータはDASD1
6に記憶されたデータの選択された部分的な写しである
)。キャッシュ40は、そのデータ転送速度が周辺記憶
システム10に接続さ牡ている最も高速なチャネルのホ
スト11に対するデータ転送速度よりも小さくならない
ように構成さ扛る。
DAS D 16のデータ転送速度はDASD i 6
によって使用可能な最低のチャネル・データ転送速度を
決定する。すなわち、所与のDASD 16についてデ
ータ転送が開始さnた後は、そのDAS、D1乙のデー
タ転送速度は接続されたすべてのユニットの非緩衝式デ
ータ転送の速度を決定する。
従って、高速チャネル16または低速14が、入出力接
続12を介して所与0DASDI乙に対し直接動作する
ためには、当該チャネルはこのDASD16のデータ転
送速度よりも小さくないデータ転送能力を持たなけnば
ならない。また、ホスト11の主記憶(図示せず)、ま
たは前記チャネルがDASD 16との間でデータを送
受するのに使用することがある他の記憶は、最小限の大
きさのデータ信号ブロックを転送する能力がなけnばな
らない。
新しいDASDが開発さ扛るのに従って、データ転送速
度は一般に増大する。また、転送速度の速いこnらの新
しいDASDが、各種のホスト−これらのホストの中に
あるものは新しいDASDよりも違いデータ転送速度を
有するI10チャネルを有することがある−に接続さn
ることが望ましい。前記I10チャネルは低速チャネル
14と呼ばれるものである。これに対し、高速チャネル
16はDASDのデータ転送速度よりも遅くはないデー
タ転送速度を有するものである。また、本発明のように
、周辺記憶システム10を高速および低速のチャネルに
接続してホスト11によって使用される見込みが最も大
きいデータをキャッシュ40に与えろとともに、ホスト
11、高速チャネル16およびDASD16の間の直接
データ転速を選択的に許容することが望ましい。また、
本発明はホストのプログラミング要件を緩和するが、こ
扛は一定のデータ転送を処理するチャネルに連結さ汎た
周辺装置の最大データ転送速度に従って一定のチャネル
・コマンドを解釈することによって可能となるものであ
る。キャッシュ40はDASDi6と低速チャネル14
の間の速度変更バッファとして作用する。本発明により
、周辺システム制御61の動作は高速せたは低速チャネ
ルのいずれが周辺記憶システム10とデータを現に授受
しているかによって変更さnる。チャネルの動作は混在
可能である。例えば、高速チャネル16がデータを周辺
記憶システム1Dに供給している間に、低速チャネル1
4は前記データを取吊すことができる。多重経路(mu
ltipathing)の環境においては、コマンドを
1つのチャネルを介して受取りながら、別のチャネルで
はデータ転送を行なうことができる。I10コマンドの
一定のチェーン(このようなコマンド・チェーンはIB
Mシリーズ370のコンピュータ等で使用される)の中
で転送さnるデータに関して周辺記憶システム10を現
在どのチャネルがアクセスしているかによって、周辺シ
ステム制御61の動作が自動的に調整さnる。このよう
に、周辺システム制御61およびホスト11は、周辺記
憶システム10をホスト11に接続するI10チャネル
の相対的なデータ転送能力に関する周辺記憶システム1
0の知識およびホスト11が供給した一定の意志表示信
号を除き、特定の制御構造を必要とせずに効率的に協同
動作を行なう。
周辺記憶システム10−の記憶階層は半導体のランダム
・アクセス式システム記憶30を含み、そしてこのシス
テム記憶30はDASD16のキャッシュとして指定さ
牡た部分40を有する。周辺システム制御61はホスト
11から周辺コマンドを受取り、DASD16のアドレ
スに基づいてDASDi6またはキャッシュ40をアク
セスする。
キャッシュ40とDASD1乙の間では周辺記憶システ
ム10によってデータが自動的に転送される。こnらの
転送では、ホスト11とDASD16の間の場合と同じ
既知の転送原理が使用される。
すなわち、ホスト11は(キャッシュ40をバイパスす
る)直接モードでDASD16をアクセスするが、この
アクセスばCAA、CAB、CACおよびCADと個々
に表記さ扛たチャネル・アダプタ62、DAC(直接ア
クセス制御)56を使用するバス70、データ・フロー
回路63、DAA(装置アダプタ接続機構)34および
DCA(装置制御接続機構)35を介して行なゎfL7
)。受取られた周辺コマンド(チャ坏ルφコマンド・ワ
ードCCWと呼は扛ることもある)は、このタイプの記
憶装置の制御として周知のように、周辺ソ/(テム制御
31 Kよって解釈さ扛、ホスト11とDASD16の
間のデータ・フローの方向および他の機能を決定する。
すなわち、ホスト11が1組の周辺コマンドによって制
御を行なっている間に、周辺システム制御31はccw
と同様な方法で構成される複数のICW(内部コマンド
・ワード)を使用することによって、キャッシュ4oと
DASD1乙の間のデータ転送を行なう。ccwに関し
てICWを変更することによって、一定のデータ転送効
率が得られる。Icwは、チャネル・アダプタ32を通
過する代りに、周辺システム制御31の(システム記憶
3oを操作する)キャッシュ・アクセス制御、すなわち
CAC61から経路66を介して直接DAC56に移動
する。DAC56はCCWに応答するのと同じ方法でI
CWに応答するのでその詳細は省略する。各々各々のI
CWはCCWのコマンド・バイトに相当するコマンド・
バイトを有する。若干のICWコマンドが追加されるこ
ともある。また、各々のICwはCCWのコマンド修飾
バイトと類似のコマンド修飾バイトを有する。更に、各
々のICWはチェーン制御ピッ)「cHAINJを有し
、通常ボスト11によってチャネル・アダプタ32を介
して周辺システム制御61に与えらnるチェーン表示に
取って代る。(ホスト11によるチェーン表示は最終ス
テータス・タイムにおけるタグ信号「サプレスアウト」
の供給である。)CAC61はタグ信号を使用しないか
ら、「チェーン」ビットを有するICWコマンド修飾バ
イトは前記タグ信号に取って代る。
キャッシュ40はチャネル・アダプタ32、バス41を
介してホスト11とのデータ信号を転送する。同様に、
DASD 16とのデータ信号の転送はデータ・フロー
回路66、バス42を介して行なわれろ。キャッシュ4
0とホスト11の間、寸たはDASD16の間の同時転
送が必要でないトキハ、バス41および42は1つのバ
スに統合さn、時分割でデータ転送に使用される。(数
メガバイトの)比較的大容量のキャッシュ40をアクセ
スするには、ホストが供給した装置アドレスをシリンダ
およびレコード・アドレスCHRとともにバス72を介
してシステム記憶30のハツシュ回路(図示せず)に転
送するCAC61が必要である。ハツシュ回路−マイク
ロコードで実現することがある−はDASDアドレスを
ハツシュ・クラス標識に変換する。キャッシュ40の記
憶容量はDASD16よりもずっと小さいから、DAS
D1乙のアドレス範囲はハツシュ・クラスと呼ばわる複
数のクラスに集中さ扛、こ扛によりキャッシュ40のア
クセスを容易にする。システム記憶30における5IT
(分散インデックス・テーブル)45はハツシュ・クラ
スの各々に対して1つのレジスタを有する。5IT45
のレジスタの内容は、DASD16をアクセスするのに
用いるアドレスDCHRを保持するDIR(ディレクト
リ)46に対するアドレス・ポインタである。
データがキャッシュ40に記憶される場合、DASD1
6のDCHRアドレスはキャッシュ40のアドレスとと
もにDIR43のエントリに記憶される。複数のDAS
D16のアドレスは1つのハラツユ・クラスに対応する
から、−重連結されたハツシュ・クラスのリストがDI
R43のエントリに与えら汎、従ってハツシュを使用し
てキャッシュ40を走査するには一定のハツシュ・クラ
ス内のエントリを走査することだけが必要である。
DIR43の内容に基づいて、キャッシュ40は既知の
方法を用いてアクセスされる。DIR43に関係エント
リが発見さ扛ない場合は、キャッシュ・ミスが生ずるの
でCAC61は、後に説明するように、キャッシュ40
にスペースを別画ててホスト11からデータを受取るか
、またはDASD16とキャッシュ40またはホスト1
1の間でデータを転送することが必要である。各々のD
ASD16の識別および動作ステータスはDCB(装置
制御ブロック)62のレジスタのそnぞれに保持さnる
周辺システム制御ろ1は周辺記憶システム10をホスト
11に接続する在来の制御ユニットの部分を有する。例
えば、ACE(アドレス/コマンド鑑定器)50はバス
51.52.56および54を介してチャネル・アダプ
タ32と交信し、ホスト11からコマンド信号を受取る
とともにホスト11にステータス信号を供給する。AC
E50は受取ったCCWを鑑定し、且つ周辺記憶システ
ム10にコマンドの機能を実行するように指令するとと
もに、チェーン状態を表示し且つ周辺記憶システム1D
の他の部分からステータス信号を受取ってこ扛をホスト
11に中継する。ACE50はDAC56またはCaC
61のいず汎かに前記コマンドを供給する。DAC56
はACE5Clに応答し、今日のDASD記憶装置の場
合のようにデータ・フロー回路66を制御する。CaC
61はDIR43を探索するか、またはICWを使用し
てDAC56を活性化する。
CaC61がDIR43のハツシュ・クラスのDASD
16からキャッシュ4oへのデータ転送要求がバス66
を介してDAC56に送ら汎ろ。
バス66の信号は前記要求をDAC56に知らせICW
を識別する。良好なマイクロコードの実施例では、後に
明らかになるように、バス66を介して行なわれる転送
はマイクロコード制御の転送である。DAC56はポス
ト11のccwに対する応答と同じ方法でICWに応答
する。CaC61が要求したデータ転送が完了すると、
DAC56はバス66を介してCaC61にステータス
信号を送る。その時点で、キャッシュ4oはポスト11
に使用可能なデータを有することになる。この手順の後
は、低速チャネル14を介して常にDASD 16から
のデータが低速チャネル14を介して転送さnる。こn
らのデータ転送を効率的に処理f7;yfcめ、1組の
Q(待行列)レジスタ67カc A C6i K ヨッ
テ要求すn−fcD A S D関係ノオペレーション
を待行列させる。このようにして、DAC56はDAS
 D 16に対する要求の待行列動作に関与することな
く、ポスト11またはCaC61のいずれについても同
じように動作可能である。従って、DAC56は記憶階
層に関連して使用できるだけでなく、キャッシュ4oが
バイパスすなわち非活性化さnたときにも同様に使用で
きる。
また、CaC61は追加の制御を有する。例えば、AD
EBレジスタ76はDIR43の1つのエントリ −こ
のエン) l)によってCaC21が現在動作している
−を有する。すなわち、DASD16のアドレスがキャ
ッシュ・ヒツトを生せしめた場合、云いかえればキャッ
シュ4Gの一部分がホスト11によって供給されるデー
タに割当てられた場合、ADEBレジスタ7乙に前記エ
ントリを置くことによって、CaC21のオペレーショ
ンが効率的に行なわnる。DIR43けシステム記憶3
0の一部分であり、ADEBレジスタ7乙にアクティブ
なエントリを置くことによってシステム記憶3oは解放
され、周辺7ステム制御31とは無関係にバス41およ
び42によってデータを転送できる。
第2図は周辺システム制御31にプログラム式妥イクロ
プロセッサ3iPを使用する場合の本発明の良好な実施
例のブロック図である。バス7゜はチャネル・アダプタ
62からデータ・フロー回路33に接続さn、第1図の
場合と同じように動作する。バス41および42はそゎ
ぞれチャネル・アダプタ32およびデータ・フロー回路
33からシステム記憶3oに接続される。バス41およ
び42を1つのバスに統合し、こ扛を時分割化してデー
タ転送を行なうようにしてもよい。データ・フロー回路
33およびシステム記憶3oの間のデータ転送を制御す
る際、プロセッサ31Pはバス71を介してデータ・フ
ロー回路3乙に制御信号を与え、バス72を介してシス
テム記憶6oにアドレスおよび制御信号を与える。
プロセッサ31PのオペレーションU、制御記憶76に
記憶さ′nたマイクロコード・プログラムに従って行な
わf′Lる。制御記憶73は書込可能であることが望ま
しいけtども、その一部が書込可能で特定のプログラム
を保持する他の部分が読取専用であるようにしてもよい
。バス74はプロセッサ31Pを制御記憶76に結合す
る。制御記憶76には、ACE50の機能を実現するA
CEプログラム50P、DAC56の機能を実現するD
ACプログラム56P、CAC6’1の機能を実現する
CACプログラム6IP、および周辺記憶システム10
のオペレーションに必要ナプログラムではあるが本発明
を理解するのには必要ではない他のプログラム、すなわ
ちOPプログラム75が含まれる。プログラム50P、
5+6Pおよび61Pを介して周辺記憶システム10を
制御するためにプロセッサ31Pによって使用されるレ
ジスタには、チャネル16および14との現在のデータ
転送に関するステータスおよび制御情報を保持する処の
CCB(チャネル制御ブロック)63、DCB62、Q
レジスタ67、ADEB76.5IT45、キャッシュ
40に固定されたデータをリストする処の固定リスト6
0およびどのDASD16が直接にアクセスさn(D=
 i Lそしてどわがキャッシュ40を介してアクセス
される(D=0)かを一定のコマンド・チェーンで表示
する装置D20が含ま扛る。DCB62および装置D2
0は本発明に特に関連する。キャッシュ40が非常に大
容量の場合には、5IT45をシステム記憶60に記憶
させろことができ−る。性能を高めるため、5IT45
のページを含む1組のレジスタを制御記憶76に予約し
ておくことができろ。
2つの記憶ディレクタ寸たは中央ユニットを有し、その
各々が別個の周辺システム制御31、周辺記憶システム
10およびデータ保全目的を有する周辺システムでは、
システム記憶60のような共通にアクセス可能な記憶装
置に一定の制御データ構造が記憶さ扛なけnばならない
。こnらの制御データ構造はDIR43,5IT45お
よび固定リスト60を含む。
第3図は第1図および第2図に示すンステムで本発明が
実施されろ環境を理解するのに役立つマシン・オペレー
ションの概要を示す。参照番号80〜87.90・およ
び91は周辺コマンドの1つのチェーン内の入出力オペ
レーションを参照する。
多くのコンピュータでハ、コマントノチェーンはf&R
ステータス報告時にホストから周辺システムへ与えら扛
る「サプレスアウト」と呼ばnるタグ信号によって指示
さ扛る。最終ステータスの時点における「サプレスアウ
ト」タグ信号の除去はステップ91で示すようにチェー
ンの終了を表わす。
各々のチェーンはステップ80に示すようにいわゆるモ
ードセット・コマンドによって開始される。
モードセット・コマンドはホスト11から周辺記憶シス
テム10に制御信号を供給することにより、実行すべき
オペレーションの種類と、コマンド・チェーン中のコマ
ンドの一部分をいかに解釈すべきかということを周辺記
憶7ステム10に指示する。モードセント・コマンドは
複数のチェーンにわたって延在するようなモードをセッ
トすることがある。従って、あらゆるコマンド・チェー
ンをモードセット・コマンドで開始する必要はない。
更に、一定の制限内では、モードセット・コマントヲコ
マンド・チェーン中の他のコマンドの間に点在させて周
辺記憶システム10のオペレーション・モードを変更す
ることができる。典型的なモードセット・コマンドにつ
いては第5図に関連して後述する。
DASD環境において、ホスト11はステップ81でシ
ーク・コマンドを送り、次のデータ転送コマンドを収容
するようにDASDの放射状ヘッド位置の調整を周辺記
憶システム10に指示する。
例えば、シーク・コマンドによって、DASDの記憶表
面の特定のシリンダ(放射状の1つの位置の全トラック
)に対するヘッドがシークされろ。
ステップ81のシーク・コマンドによってトラックのシ
リンダがアクセスさnると、ステップ83で、記録表面
の回転位置がセクタ・セット・コマンドによってセット
される。続いて、ステップ84で、ステップ83のセク
タ・セット・コマンドによって概略的に指示さ′nた一
定の回転位置のレコードを探索コマンドによって識別す
る。次にステップ85で、アクセス・コマンドによって
データ記憶領域のアクセスが行なわれる。アクセス・コ
マンドは読取コマンドまたは書込コマンドである場合が
ある。ステップ86.84および85の機能はまとめて
トラックに対する「参照」82と呼ばれる。このような
参照はステップ80のモードセット・コマンドの制御情
報およびステップ85のオペレーションの種類と共同し
て、後に明らかになるように、周辺記憶システム10の
内部オペレーションを制御する作用を有する。
本発明においては、キャッシュ40またはDASD16
のデータ記憶領域のいすnかに対するアクセスの制御は
、ステップ86で示す一定のプリアクセス・コマンドな
らびにステップ87で示すポストアクセス・コマンドの
実行を必要とする。
前記アクセス・コマンドについては後に第7図および第
8図のマシン・オペレーションに関連シて説明する。参
照番号90は一連の複数の読取およヒ書込コマンドが1
つのコマンド・チェーン内に存在することを表わす。ス
テップ91でチェーン終了が検出される。次に、本発明
に従って、一定のポストチェーン・オペレーションがス
テップ92で行なわ扛る。このオペレーションは第9図
に示さ扛ている。ポストチェーン・オペレーションとい
う用語は1つのコマンド・チェーンの終了と次のコマン
ド・チェーンの開始の間にオペレーションが開始さnる
ことを意味する。周辺記憶システム10における非同期
的なデータ転送(例えばキャッシュ40とDASD16
の間の転送)の数を減少させるために、ポストチェーン
・オペレーゾヨ/92は、次の入出力開始(sIO)命
令がホスト11から受取られるまで、しかも次のチェー
ンの最初のコマンドが実行される前まで、延期さnるこ
とがある。代替的に、ポストチェーン・オペレーション
92はステップ91におけるチェーン終了の検出直後に
行なわnることもある。ポストチェーン−オペレーショ
ン92はステップ96で非同期オペレーションをスケジ
ュールし、セットアツプする。前記非同期オペレーショ
ンには、次の読取コマンドをホスト11から受取る準備
としてDASD16からキャッシュ40ヘデータを転送
スるオペレーション、キャッシュ40のスペース管理に
関連して、またはホスト11から受取った一定の制御信
号に応答してキャッシュ40かもDASD 16へデー
タを転送するオペレーション、および後に明らかになる
その他のオペレーションが含ま扛る。
第4図は本発明によって使用されるD I R4,3お
よびDCB62のデータ構造を示す。DIR46には複
数のアドレス可能なレジスタ100が含″?in、こ扛
らのレジスタはンステム記憶30に存在するのが望まし
い。キャッシュ400割当可能部分ごとに1つのレジス
タ100がある。バックアップ記憶16がDASDを含
む場合、前記割当可能部分はDASDの1データ・トラ
ックの内容を記憶するのに必要な記憶領域の広さである
ことが望ましい。他の構成では、DASDの1データ・
トラックは複数のセグメントすなわちレコード領域に区
分されることがある。レコード領域が固定長である場合
、キャツ/ユ40の割当可能記憶スペースを前記レコー
ド領域の大きさに設定することができる。いかなる場合
でも、キャッシュ40の各々の割当可能記憶領域−これ
はまたアドレス可能単位であるーごとに1つのレジスタ
100がある。レジスタ100のHL(ハツシュ・クラ
ス連結リス))101は一重連結リストを構成し、ハツ
シュ・クラスすなわちバックアップ記憶16のアドレス
指定構造に基づくキャッシュ40のアドレス指定セグメ
ントを識別する。前記ハツシュ・アドレス指定は既知の
技術であるので詳細な説明は省略する。インデックス1
02はHLlolによるハツシュ・アドレスなしでDI
R4ろのレジスタ100を識別するのに有用である。
DADDR103はキャッシュ40に記憶さnたデータ
を含むバックアップ記憶16の装置アドレスを有する。
前記アドレスには、アドレスされているDASDの名称
、シリンダ・アドレスCC1ヘッドまたはレコード表面
アドレスHHおよびレコード番号が、必要に応じて含ま
nる。CADDR104には、そ扛ぞnのレジスタ10
0のエントリによって表わさ扛るデータを記憶する、キ
ャッシュ40におけるアドレスが含まれる。LRU10
5はキャッシュ40に記憶したデータ内容の置換を制御
する際に有用なレジスタ10Dの各々にあるエン) l
)を有する二重連結さf’L flリストの部分である
。二重連結さ、f′したりストの一方の端はキャッシュ
40の割当可能記憶領域のうちLRU(Least  
Recently Used)領域であり、二重連結リ
ストの他方の端はキャッシュ40の割当可能記憶領域の
うちMRU(Most  RecentlyUsed)
領域である。LRU二重連結リストの更新は既知の技術
であるので詳細な説明は省略する。
Mビット1D6は、キャッシュ40の指示されたデータ
内容が使用ユニット11から受取ったデータによって変
更さn且つDAS D 16における対応するコピーが
まだ更新されていないかどうかを表わす。このビットは
後述のDCB62におけるTAV(トラック活動ベクト
ル)122に対応する。Pピット107は部分トランク
すなわちレコードがキャッシュ40に記憶されているか
どうかを表わす。前記部分トラックは一定のセクタ(例
えば、ステップ83のセクタ・コマンドで指示さnた回
転位置)で開始するトラックからトラックの終了(イン
デックス)までデータを含むことがある。トラックの開
始すなわちフロント位置はキャッシュ40には存在しな
い。Bピッ)10Bは、レジスタ100によって指示さ
した記憶領域のデータ内容をキャツ/ユ40に維持(固
定ンすべきことを知らせる信号を使用ユニット11が周
辺記憶システム10に送ったことを表示する。既知の周
辺コマンド手順を使用してBビット108を消すための
後続信号を使用ユニット11を与えると、Bビット10
8を変更することができる。
Mピッ)106がリセットさ汎ろのは、バックアップ記
憶16にデータを降格(demotton)する場合の
ように、記憶さnた特定のデータに関して、キャッシュ
40とバックアップ記憶16の内容力等しくされる場合
である。
第4図のDCB62は制御記憶73におけるように、プ
ログラム式プロセッサ31P内に記憶される。ACE5
D、DAC56およびCAC61は記憶階層を制御する
際、DCB62をアクセスする。バックアップ記憶にお
けるアドレス可能なりASD 16の各々ごとに1つの
エントリまたはレジスタ・セット110がある。最初の
部分であるCCRi 11はそnぞtのレジスタ・セッ
ト11Dによって指示さnたDASD16に関連するオ
ペレーションについてCCRCfヤニ+ル・コマンド再
試行)がホスト11に送ら扛たかどうかを表わす。タリ
ー(tally) 112は、後述するようにアドレス
さnたDASD1乙に関連する現在のコマンド・チェー
ンの書込コマンドの記録を含む。コマンド/アドレス1
13はアドレスさnたDASD1乙に関連してチェーン
さ扛た現在の周辺オペレーションの間に使用ユニット1
1から受取った現コマンドを含む。代替的に、各々の使
用さnたC CJ(H探索用アドレスを使用ユニット1
1から現在のコマンド・チェーンの間に受取った最後の
コマンドの識別とともに記録してもよい。
チャネル114はどのチャネル・アダプタ62が現在コ
マンドを受取ったかを示すビット有意セクションである
。この制御は周辺オペレーションの間に高速および低速
のチャネルを識別するのに使用される。CC115は現
在アクセスされているトラックのシリンダのシリンダ・
アドレスを含む。
WR1i6は周辺オペレーションのチェーン中テ書込オ
ペレーションが行なわf′したかどうかを表わす。書込
オペレーションの種類は夕1) −112に表示さfL
7)。MTビット117は現在のコマンド・チェーンf
MT(多重1−ラック)オベレー・ノヨンが行なわ牡た
かどうかを表わす。すなわち、周辺コマンドは一定のシ
リンダ・アドレス(CC)で複数のレコード・トラック
からのデータ転送を要求することがあるからである。D
ビット118は、チェーンさ扛た周辺オペレーションの
間に、キャッシュ・ミスを原因とするようなりASD1
乙に対する直接モードのアクセスが行なわれたかどうか
を示す。すなわち、もしキャッシュ40が高速チャネル
16からの(読取または書込の)データ・アクセス要求
をサービスするために割当さnるスペースを持たないな
らば(キャラ・/ユ・ミス)、前記CCの範囲内でノく
ツクアップ記憶16のデータに対する直接アクセスは現
在の要求を満足させるとともに、シリンダ内およびチェ
ーンさ扛た周辺オペレーション内のすべての後続するア
クセスも満足させる。Cビット120はキャッシュ40
がアクセスさ扛たか又はアクセスさnようとしていたか
どうかを表わす(米国特許第4075686号で開示さ
れたようなキャッシュ・)(イパス・モードと反対のキ
ャッシュ・オペレーティング・モード)。Dビット11
8およびCビット120がともに1にセットさ扛ると、
キャッシュ・ミスが表示され、ミス・ビット127に記
録すわる。Fビット121は現在アクティブなチャネル
・アダプタ62が高速チャネル16に接続されているか
(F−1の場合)、又は低速チャネル14に接続さnて
いる(F=0の場合)ことを指示する。
TAV(トラック活動ベクトル)122は前記トラック
のシリンダ・セットにおけるレコード・トラックごとに
1つのビット位置を有する。このビットは現在のコマン
ド・チェーンの間にどのトラックが書込まれたかを表示
する。CC115iZ一定である限り、TAV122に
含ま牡ろビット・パターンは周辺記憶システム10に書
込まれているデータを受取ったのはDASI)16のど
のトラックかを示す。TAV122は各々の書込コマン
ドの実行によって通常の方法で更新さnろ。チャネルD
C123はチャネル・アダフリ62の各々に対して1ビ
ツトを有するフィールドである。
このビットはチェインが連続している間持続することが
ある。高速チャネル13についてチャネルDC123は
、チャネル・アダフリろ2によって示さ扛るような一定
のチャネルに関してアドレスさnたDASDl6に対す
るキャッシュ転送の非活性化を指示する。DASD 1
6に記憶さnたデータがキャッシュ40に昇格(pro
motion)さnないのは、このDASDl6に対し
てキャッシュ転送が非活性化されなければならないこと
(チャネルDC=1)が接続中のホスト11によって指
示さnた場合である。代案として、特定0DASD1乙
に対するキャッシュ転送が非活性化さtねばならないこ
とを示す信号が接続中のホスト11からすべてのチャネ
ル・アダプタ32に適用さ扛ろことがある。すなわち、
このような場合にはキャッシュ40はアドレス指定され
たDASD 16への参照のすべてに対して使用不可能
である。
後者の場合、キャッシュ転送の非活性化に関するチャネ
ル・マスクは不要である。低速チャネル14に対するキ
ャッシュ転送の非活性化は、低速チャネルに対するキャ
ッシュ40における参照のすべてがLRUにさnる、す
なわち最初に置換えられるという結果を導く。
同様に、チャネルIC124はDASDl乙に対するキ
ャッシュ転送の禁止を指示する。すなわち、現在のコマ
ンド・チェーンによって行なわれるDASD 16に対
するデータ・アクセス参照は、どのトラックをもキャッ
シュ40への昇格候補にしないのである。前記ホスト1
1の参照はキャッシュ40への単独参照であるか、また
はキャッシュ40を十分利用できないグループ参照のい
ずnかである。例えば、キャッシュ転送による利益を受
けない参照パターンは、大きい1組のトラックにわたっ
て無作為に拡がるようなアクセス参照である。すなわち
、周辺記憶システム10は性能を高めるため、どのデー
タをキャッシュ40に昇格させるべきか予測できない。
また、コマンド・チェーンがDASD 16の動作特注
に対して最適化されており、そして転送中のデータ量が
太きいときは(例えば、複数トラックを高速度で転送さ
せろようなメモリ・ダンプの場合)、キャッシュ転送に
よる利益を受けないであろう。キャッシュ・ローディン
グ禁止の間に行なわれろDASD参照が一連の書込オペ
レーションであり、そしてこ扛に続いてIC属性が適用
されろ前記のようなコマンド・チェーンが完了した場合
、キャッシュ40に現に記憶さ扛ているデータを、前記
コマンド・チェーンによって実行さ扛たDASDl 6
の更新に一致させることを除いて、DASD 16から
のデータがキャッシュ40に昇格されることはない。例
えば、Bビット108によってキャッシュ40に固定さ
扛たデータはどれも更新さnろので、キャッシュ40の
コピーとDASD16のコピーの間にはデータの一致関
係が存在する。もし現在のコマンド・チェーンが、参照
さ扛た最後のトラックのみを変更し且つそのトラックの
イメージが現在のDASD内容に一致していないならば
、次の2つの場合、すなわち順次データが処理さnてい
る場合、または現在のコマンド・チェーンで複数の書込
オペレーションが生じた場合を除き、キャッシュ40に
あるそのトラック・イメージはDASDi乙の内容によ
って更新される。
コマンド・チェーン実行の結果、DASD1乙のデータ
と一致しなくなったデータ・コピーはキャッシュ40か
ら降格される。IC属性は現在の参照パターンの特性で
あって、データそれ自体の特性ではない。従って、キャ
ッシュ40内にイメージを有するDASD)ラックに対
するIC属性を伴なうアクセスはその特定データがキャ
ッシュから降格さ扛なけnばならないという表示ではな
い。すなわち、他のある参照がそのデータ・イメージを
キャッシュ40に昇格させていることもある。また、I
C属性はそれ以前のデータ昇格が正しくなかったことを
表示するものでもない。従って、キャッシュ40のデー
タ・コピーは、あたかもIC属性の参照が生じなかった
かのように、置換アルゴリズムに従ってキャッシュ内に
存在し続けなけnばならない。そのため、キャッシュ4
0内のデータ・イメージに関するIC属性によって、L
RUIJスト中のそのデータの位置が調整さ扛ろことは
ない。前記はすべて高速チャネル16のオペレーション
に関連する。低速チャネル14の場合は、アクティブの
IC属性を有するコマンド・チェーンを実行している間
にキャッシュ40に到着するデータはL RU +、1
ストの最下部で識別さn、従ってこのデータは置換さ扛
る候補になる可能性が大きくなる。アドレスされたDA
SD16に関連するデータがキャッシュ40内にあった
としても、このデータが当該DASD i 6の現在の
参照の結果としてキャッシュ40に置かt″したもので
はなけ扛ば、このデータは前述の制御を受けない。
BCビット125は現在のコマンド・チェーンについて
キャッシュ40がバイパスさnなけ扛ばならないことを
表示する。BCビット125がモードセット・コマンド
で指定さ扛る場合、゛現在のコマンド・チェーンの間、
ホスト11は、あたかもキャッシュ40が存在しなかっ
たかのように、DASD1乙に直接働きかける。DIR
43の探索は行なわ扛ない。DASD16内のトラック
を参照した場合、そのデータのコピーが偶々キャッシュ
40にあることが判ったとしても、置換アルゴリズムL
RUリストの配列が調整さ扛ることはない。前記モード
では、アクティブなりC属性に従属してコマンド・チェ
ーン内のすべての書込コマンドを禁止することが望まし
い。その理由はデータの保全性である。BC属性の間、
書込コマンドによって、キャッシュ40を更新せずにデ
ータがDASDM)に記録されることがある。その結果
、周辺記憶システム10に不一致のデータ・コピーが存
在することになり、データの保全性が失わnろ。前記の
内容は高速チャネル16のオペレーションにも当てはま
る。常にキャッシュ40の使用を必要とする低速チャネ
ル14については、キャッシュ・バイパス属性に従属す
るすべてのデータはLRUデータとして識別さ扛、従っ
てかかるデータは置換されろ候補になる可能性が最も大
きくなる。前述のように、高速チャネル15のオペレー
ションでは、キャッシュ40の一定の使用に関する制御
は一定の効果、すなわち実際にキャッシュ40の使用を
回避しようとする効果を有する。周辺記憶システム10
が低速チャイ・ル14に接続さnる場合、前記キャッシ
ュ使用属性によって、関連データはLRU、すなわち最
善の置換候補にな7:l。
チャネルSEQフィールド126はビット有意フィール
ドであって、現在のコマンド・チェーン内でどのチャネ
ル・アダプタが逐次データを転送すべきかを指示する(
コマンド・チェーンが終了する毎にビットはリセットさ
扛る)。コマンド・チェーン内で高速チャネル13およ
び低速チャネル14によるオペレーションにおける逐次
データ制御の作用については後に説明する。第4図に示
す2つのデータ構造には、本発明の理解に無関係である
が、記憶階層を動作させるには望ましいことがある他の
制御も含まれている。
第5図は第3図のステップ80に示すように、コマンド
・チェーンの最初のコマンドとして受取ったモードセッ
ト・コマンドを示す。前記モードセント・コマンドはコ
マンド・チェーン内でいつでも受取ることができる。後
に明らかになるように、前記モードセット・コマンドが
周辺記憶システム10に及ぼす作用はコマンド・チェー
7 内(7)その位置に応じて変える。実際のモードセ
ット・コマンドの構造130には、アドレスさ扛ている
DASDI6を識別するDADDR131のフィールド
が含まnる。このフィールドはI10接続12を介して
送ら扛た最初のバイトである。このようなりADDR信
号は「アドレスアウト」タグ信号がホスト11によって
供給さnているとき供給される。前記信号はIBMシス
テム660または670の入出力インタフェースの一部
分を形成しており、この理由で図面には示さ牡ていない
コマンド・バイト132idコマンドがモードセット・
コマンドであることを識別する。複数のビット133〜
138は周辺記憶システム1oで使用されるコマンド修
飾バイトに含まれ、周辺記憶システム10のオペレーシ
ョン・モードを変更する。
こ扛らのビットが0を示すときは通常のオペレーション
・モードである。任意のビットが1にセットされると、
周辺記憶システム1oのオペレーションが下記に示すよ
うに変更される。Bビット13ろが1にセットされると
、エクステント・フィー/i、)”139で定義さ、f
′したデータのすべてをキャッシュ40に固定すること
が指示される。モードセット・コマンドの実行によって
、エクステント・フィールド139によって識別された
データが制御記憶76に含まnた固定リスト60 (第
2図)に入れら九るとともにDIR43(第4図)のB
ビット108をセットする。モードセット・コマンド実
行の一部分として、前記データがDASDI6からキャ
ッシュ40に昇格される。UBビット133Aはエクス
テント・フィールド169で定義されたデータをキャッ
シュ40かも解放することを指示する。Bピット108
は解放コマンドを表わすためにり゛セットさ扛る。Bビ
ット133とUBピッ)153Aは決して同時にはセッ
トされない。もし両者がリセットさ′nt″Lば、固定
も解放も行なわれない。SEQビット134は次のいく
つかのデータ転送が大部分逐次データであることを表示
する。このビットに応じて現在のコマンド・チェーンの
期間にチャネルSEQフィールド126が変更さ扛るが
、こnは現在のモードセット・コマンドを受取ったとき
に経由したチャネル・アダプタ32に従って行なわ扛る
。ICビット135は第4図のDCB62にあるチャネ
ルIC124の対応ビットをセットする。同様に、BC
ビット156およびDCビット137によって、BCビ
ット125およびチャネルDCビット12ろがそnぞ扛
のチャネル・アダプタ62に対してアクティブ状態にセ
ットさnる。DSS138はキャッシュ40を含むシス
テム記憶30を非活性化すべきことを指示する。周辺記
憶システム10は診断手順を使用することによって、シ
ステム記憶30を非活性化し、以てデータの保全性を失
わないようにする。参照番号140はアクセスの上限お
よび下限の確立、DASDI 6への書込みを制御する
ファイル・マスクの設定等のように、モードセット・コ
マンドに関連して他のフィールドが使用さ扛ることがあ
ることを示す。こ扛らのモードセット制御はすべて本発
明の理解には関係がない。
ホスト11によって供給さ扛たモードセット・コマンド
は通常の方法でチャネル・アダプタ52を介して周辺記
憶システム10に送ら扛る。ACE50はバス51〜5
4の1つを介して前記モードセット・コマンドを受取る
。前記コマンドは既知の方法を用いて解読さ扛、鑑定さ
れる。ACE50はモードセット・コマンドを識別する
と、受取ったコマンドおよびコマンド修飾データを、第
6図のマシン・オペレーション・チャートに示すように
実行するCACプログラム61Pに与える。
プロセッサ31P中のプログラムであるCAC61Pは
ステップ145でモードセット・コマンドを受取る。ス
テップ146で、Bビット133(第5図)が検査さ汎
る。Bビット166はエクステント・フィールド139
で定義さnたデータがキャッシュ40に固定されるべき
ことを周辺記憶システム10に指示する。もしBピット
133が口であnば、現在キャッシュ4oに固定されで
いろデータの解放が可能である。ステップ146Aで、
UBビット133Aが検査される。もし前記ビットがO
ならば、固定ステータスに変更はなく、プロセッサ31
Pは論理経路149に進む。もし前記ビットが1ならば
、ステップ147でプロセッサ31PはDI R43を
検査することによりエクステント・フィールド169で
指示さ扛たデータを解放すべきか否かを決定する。ステ
ップ147で、DIR43は(エクステント・フィール
ド1ろ9を使用して)検査される。この結果、エクステ
ント・フィールドで指示さnた1つ以上のトラックをア
ドレスして、そ扛ぞ扛のBビット108(第4図)を検
査することにより、現在DIR46にどのデータが固定
されているかを確認することができる。ステップ147
の走査によって識別さnたDIR43のデータのすべて
は、ステップ148でL RU l)ストに加えら扛る
。すなわち、キャッシュ40にデータを有するDASD
16のトラックの全部がLRUにされる(TRK=LR
U)。この動作は、エクステント・フィールド139で
指示されたトラックを、DIR43(第4図)のセクシ
ョン105にある二重連結さnたりストのLRU入力に
加えろことによって行なわれる。もしDIR43に固定
さ牡たデータがなけ扛ば、ステップ148は省略され、
プロセッサ61P(CAC61)は論理経路149を経
て後述の動作を実行することになる。
Bビット133が1のとき、ステップ150でエクステ
ント・フィールド139が走査さ扛る。
もしエクステント・フィールド139が0ならば、エラ
ー状態がステップ144で記録され、ホスト11に報告
さ牡る。モードセント・コマンドの実行でエラーを生じ
たとき、オプションとしてステップ144から抜は出る
ことが可能である。再びステップ150を参照するに、
エクステント・フィールド169の内容に基づいてDI
R43が走査され、かくてDIR45にエントリを有し
且つエクステント・フィールド169でも識別される各
トラックが探索される。プロセッサ31Pはステップ1
52でDIR43をアクセスし、エクステント・フィー
ルド169で表示さnたデータを識別するそれぞnのデ
ィレクトリ・エントリのBビット108をセットして該
データをDIR43に固定する。ステップ150の結果
がキャッシュ・ミスの場合、すなわち現在キャッシュ4
0に存在しないデータをキャッシュ40に固定すること
が要求さnた場合には、ステップ151で、プロセッサ
31Pはモードセット・コマンドによってアドレスさ扛
たDASD 16からのデータの昇格をスケジュールし
、DIR430Bビット108を1にセットして昇格さ
れたデータをキャッシュ40に固定できるようにする。
前記データ昇格はモードセット・コマンドの完了前に行
なうことが望ましい。というのは、このようにすnば、
所望の固定データが該コマンドの完了前にキャッシュ4
0に存在することをホスト11に対し保証することがで
きるからである。代案として、モードセット・コマンド
が存在する現在のコマンド・チェーンの完了時にデータ
昇格を非同期にスケジュールすることも可能である。従
って、ステップ151は、昇格されるデータをスケジュ
ールすることだけではなく、アドレスさf′したDAS
D16からキャッシュ40へのデータ信号の実際の転送
をも表わしている。
受取ったモードセット・コマンドの順次データを表わす
SEQビット134はステップ160で検査される。一
定のコマンド・チェーンに対する順次データが表示さ扛
る場合、ステップ161で、プロセッサ31PはDCB
62をアクセスし、モードセット・コマンドを受取った
際に経由したチャネル・アダプタ32に対応するチャネ
ル5EQ126をセットする。例えば、周辺記憶システ
ム10は4個のチャネル・アダゲタCAA〜CADを有
する(第2図)。この場合、チャネルICフィールド2
6は各チャネル・アダフリごとに1ビツト、計4ビット
を有する。チャネル・フィールド114は、そnぞnの
チャネル・アダプタCAA〜CADからコマンドを受取
る際にACE50によって前もって書込まれ、こnによ
ってたとえばバス51〜54のいずれが該コマンドを運
んだかを表示する。順次データの解析の後、プロセッサ
31Pは論理経路162を経て、ステップ166で、周
辺記憶システム1oに対しキャッシュ40のロード禁止
を選択的に指示するICビット165を検査する。この
ビットがアクティブならば、ステップ164で、プロセ
ッサ31 PidDCB62のチャネルICフィールド
124をアクセスし、モード・セット・コマンドを受取
るチャネル・アダプタに対応するICビットをセットす
る(このチャネル・アダプタはまたチャネル、およびモ
ードセット・コマンドを送るホストをも表わす)。キャ
ッシュ・ロード禁止の解析の後、プロセッサ31Pは論
理経路165を経由し、ステップ170で、BCビット
136を検査して、現在のコマンド・チェーンの間にキ
ャツンユ4Qがバイパスさnろべきかどうかを決定する
。BCビット136が1に等しければ、ステップ171
で、プロセッサ31PはDCB62のBCピット125
をアクセスし、そ扛を1にセットする。次に、プロセッ
サ31Pは論理経路172を経てステップ176で、D
Cビット137を検査する。キャツンユ4Dがアドレス
さ扛たDASD1乙に対して禁止されるべきときは、ス
テップ174で、プロセッサ31PはDCB62のチャ
イ・ルDCフィールド123をアクセスし、該コマンド
を送るチャネルに対応するDCピッ14−セットする。
DCビットは連続するコマンド・チェーンの間持続する
参照記号126.124および126で示す3フイール
ドでは、モードセット・コマンドのチャネル・ソースが
指示されろ。これらのビットは1コマンド・チェーン内
で保持さ扛ろ。このようにして、周辺記憶システム10
の多重オペレーションが与えらnる。参照記号136乃
至167で示すそれぞnのビットがOの場合、ステップ
180.181.182および183で示すように、D
CB62の対応するフィールドは0にリセットさ扛る。
一定のコマンド・チェーン内で複数のモードセット・コ
マンドが受取られる状況においては、一定のリセット機
能を禁示することかある。例えば、順次ビットはコマン
ド・チェーンの最初でのみリセット可能である。同様に
、キャッシュ・バイパスもチェーンの最初でのみリセッ
ト可能である。この制限を使用すると、周辺記憶システ
ム10のオペレーションにおける主要な変更の各々ごと
にホスト11は新しいコマンド・チェーンを生成しなけ
ればならないので、周辺記憶システム10の保全性を与
え満足させることができる。
意志表示信号133乃至167の記憶に続いて、プロセ
ッサ31Pは論理経路175を経由し、参照記号176
の筒所で、その他の各種のモードセット機能を実行する
。前記各種のモードセット機nヒには、ファイル・マス
クのセント、特定のコマンド・チェーンのアドレス範囲
の限定等を含むことがある。ACE50はステップ17
7でリターンし、モードセット・コマンドの実行が完了
したことをホスト11に報告する。
高速および低速チャネルのオペレーションの相違を適応
させることを含む第7図は、レコードをアクセスするマ
シン・オペレーションを示しており、その内容は第6図
のステップ85.86および87に和尚する。第6図の
ステップ83およびステップ84については、類似する
高速および低速チャイ・ルの適応化が行なわれるが、こ
nばそ汎ぞれの高速チャネル13または低速チャネル1
4についてコマンド・チェーンで実行されろ機能が適切
であることを保証するためのものであろ1、データ・ア
クセス動作は高速および低速のチャ4. ルに関する機
能のナベてを実行するので、データ・アクセスの適応に
ついてのみ詳細に説明する。受取らnたデータ・アクセ
ス・コマンドは、読取または書込のいずれかのタイプで
ある。ある実施例では、すべての読取オペレーションな
らびにすべての書取オベレー7ヨンのために別個の一7
シン・オベレーション・チャートが使用さ扛ることがあ
る。
説明を簡明にするためと、こ扛らの機能が読取または書
込において一定の相互関連を有するという理由で、本発
明の最良の実現例として最小限度のマイクロコード・ワ
ードを使用する1つのマシン・オペレーション・チャー
トを示す。
第7図の参照番号190で表わさ扛るように、プロセッ
サ31Pはコ、マントを受取ってACEプログラム50
Pのいくつかの機能を実行する。受取ったコマンドをA
CEプログラム50Pによって処理する際、プロセッサ
31PはDCB62をアクセスし、受取ったコマンドに
従ってレジスタ・セット110をセットする。この動作
には、コマンドおよびアドレス情報をコマンド/アドレ
ス・フィールド113(第4図)に挿入し、(チャネル
を介して)コマンドを供給した特定のチャネル・アダプ
タ32をチャネル・フィールド114で識別し、多重ト
ラック・コマンド(多重トラック・アクセスはイネーブ
ルさ扛ている)に応じてMTフィールド117をセット
し、且つFSマツプ77(第2図)およびチャネル・フ
ィールド114に従ってFビット121をセットする動
作が含まわる。こnらと同じステップが前に説明したモ
ードセット・コマンドを実行する際に実行さ扛ろ。
コマンド処理のうちACEプログラム50Pの部分が完
了すると、CAC61Pが活性化さ扛、第7図のマシン
・オペレーションを実行する。こ扛ものオペレーション
には本発明の理解には関係ない若干の準備ステップ19
2が含まれる。ステップ196で、プロセッサ31Pは
CAC6IPを介して活動し、制御記憶73の装置D2
0を検査して、前のコマンドがアドレスさ汎た装置を直
接モードDにセットしていたか、またはアドレスされた
装置が現在のデータ・アクセス・コマンドを受取ったチ
ャネル・アダプタ62に対しキヤツシユ・モードCにな
っているかを決定する。直接モードDでは、ステップ1
94で、プロセッサ31PはFビット121を検査し、
現在のコマンドが送らnたときに経由したチャネルが高
速チャネルか、または低速チャネルかを決定する。直接
モードDにおける低速チャネルの場合は、該チャネルは
DA、5D16からデータをボ分高速に受取ることがで
きないから、DASD16に対するオペレーションを直
接モードで行なうことはできない。書込オペレーション
においては、低速チャネルは十分高速に情報信号を供給
してDASD16の一定データ速度の要求を満足させる
ことはできない。従って、エラー、恐らくはACE50
Pにおけるエラーがステップ195で表示さ扛る。ホス
ト11が低速チャネルは十分高速に情報信号を供給して
DASDi6の一定データ速度の要求を満足させること
はできない。従って、エラー、恐らくはACE50Pに
おけるエラーがステップ195で表示さ牡る。ホスト1
1が低速チャネルに対する直接モード(キャッシュ・バ
イパス)を指示している場合、キャッシュ40は、依然
として後述するように使用さ扛ろ。直接モードDにおけ
る高速チャネルについては、プロセッサ61Pは論理経
路196を経て、ステップ197でBCビット125が
前のモードセット・コマンドによってセットさ扛たかど
うかを決定する。BCビット125がアクティブであり
且つDCB62のコマンド/アドレス・フィールド11
6に表示さf′したコマンドが書込コマンドである場合
、ステップ198でエラーカ表示される。キャッシュ・
バイパス状態の場合、キャッシュ4Dを除外してのDA
SD16への書込はデータの保全性に問題を生じること
がある。というのは、キャッシュ40が書込オペレーシ
ョンに関連するデータを有することがあるからである。
前記エラーは他のホストが代りのチャネル・アダプタ3
2を介してキャッシュ40をアクセスするのを阻止する
ので、こうすることによって現在正確ではないデータを
得るのを防止することができる。DASDへの書込は、
キャッシュ40の対応するデータが適切に無効化される
か、または更新されることを条件として許可される。
ステップ197でBC=0すなわち書込コマンドではな
い場合、ステップ85に従ってデータがアクセスさnる
。DASD 16の直接アクセスについては、ステップ
199で、DAC56PがCAC61Pから活性化さ汎
、アドレスされたDASD16′f:アクセスするとと
もに既知のDASDデータ転送技術を使用してデータを
転送する。直接データ転送経路には、データ・フロー回
路66、バス70および活性化しているチャネル・アダ
プタ62が含まnる。前記データ転送が完了すると、プ
ロセッサ31Pは論理経路214を経て、後に説明する
ようにポストアクセス処理87を行なう。
CAC6IPにおけるプリアクセス処理86のステップ
193に戻って説明を続けると、アドレスさnたDAS
D16に対するキャッシュ転送が指示される場合、プロ
セッサ31Pは論理経路200を経て参照記号201の
箇所でいくつかの予備キャッシュ検査ステップを実行す
る。キャッシュ40のステータスを検査する前記ステッ
プは本発明の理解には関係がないので細部は省略する。
ステップ202で、DCB62のFビット121が検査
さn、高速または低速チャネルのどちらが現在のコマン
ドを供給したかを決定する。低速チャネルの場合は、プ
ロセッサ31Pは論理経路203を進んでステップ20
4でDIR43を探索する。後にキャッシュ・オペレー
ションで説明するように、低速チャネルからキャッシュ
41をバイパスさせることによって、キャッシュ40の
データは無効化さ汎、そしてDASD16に記憶さnた
データのコピーはDA SDからキャッシュに昇格さn
ろ。ステップ202で、高速チャネルが表示さf′Lだ
場合、プロセッサ31Pはステップ2D5でDCB62
のBCビット125を検査し、現在のコマンド・チェー
ンについてキャッシュ40がバイパスされているかどう
かを決定する。キャッシュ40がバイパスさnていない
とキ、プロセッサ31Pは論理経路206を進んでステ
ップ204でDIR43を探索する。キャッシュのバイ
パスが表示さnた場合は、プロセッサ31Pはステップ
208で、アドレスさ牡たDASDi6の装置D 20
を1にセットする。プロセッサ61Pはステップ208
からステップ197を通過し、ステップ85のステップ
199(データ・アクセス・ステップ)に進む。
キャッシュ・オベレー/ヨ/では、論理経路206およ
び206からステップ204に進み、そしてこのステッ
プ204で行なわれるディレクトリ探索はキャッシュ・
ヒツトまたはキャッシュ・ミスを生じる。ディレクトリ
探索は装置、シリンダの番号およびトラック番号を含む
DASD1乙のアドレスに基づいて前記ハツシュ技術を
使用して行なわnる。前記ディレクトリ探索の結果によ
り、プロセッサ31Pはステップ210でキャッシュ・
ヒントまたはキャッシュ・ミスを決定する。
キャッシュ・ヒツトの場合、プロセッサ31Pはステッ
プ211で、DCB62のBCビット125および低速
チャネル14に関するチャネル・セクション114を検
査する。ステップ211でこ肛らの条件が満たさ扛ない
場合、ステップ212でCAC61Pの管理の下にデー
タ転送が生じ、キャッシュ40とチャネル・アダプタ6
2の間でデータが転送さ扛る。前記データ転送はキャッ
シュ40に向って、またはキャッシュ40から行なわれ
る。ステップ211で前記条件が満たさnる場合、前に
述べたように、低速チャネルはキャッシュを使用するこ
とが必要であり、且つキャッシュ・バイパス・ビットB
CはホストがDASDのデータ・コピーを欲しているこ
とを表示する。従って、ステップ216でキャッシュ4
0にあるデータ・コピーが無効化さt、チャネル・コマ
ンド再試行CCRがホストに送ら扛、そしてDASDに
あるデータ・コピーがキャッシュ40に昇格さ扛る。こ
のOCRを満足させるため、周辺記憶システL 101
d、m 7 図に示スフ7ン・オペレーションに従って
ホスト11に再接続さ扛、要求さ′n−たデータ転送を
行なう。この場合、ホスト11は追加コマンドを送るこ
とができる。また、データ・アクセス・ステップ85の
ステップ199またはステップ212を完了すると、論
理経路214を経由してプロセッサ31Pは後述のポス
トアクセス処理87に進む。
ステップ210でキャッシュ・ミスが検出さ扛る場合、
プロセッサ31Pは論理経路215を経由してステップ
216でホスト11にチャネル・コマンド再試行CCR
を送る。前記CCRはDCB62のCCRセクション1
11にも供給さn、コマンド/アドレス・セクション1
1ろに表示さnたコマンドに一致する、次に受取られた
コマンドがホスト11によってCCR応答として識別さ
れるようにする。ステップ217で、キャッシュ・ミス
はアドレスさnたDASD16のタリー・セクション1
12に記録さnる。ステップ220で、Fビット121
が検査さn1高速チヤネルまたは低速チャネルのいずn
が現在のコマンドを供給したかを決定する。高速チャネ
ルの場合、キャッシュ・ミスが生じたときはキャッシュ
40を除外してDASD 16を直接アクセスすること
が要求されろ。
従って、ステップ221で、アドレスされたDASD1
乙の装置D20は直接アクセスを指示する1にセットさ
れる。次回にデータ・アクセス・コマンドがOCRに応
答して周辺記憶システム10に供給される際には、直接
アクセスはステップ193.194および197を介し
て指示さnろ。
予期されるデータ・アクセス・コマンドの再送に備えて
、ステップ222で周辺記憶システム10はセクタ・セ
ット・コマンドをDASD 16に供給し、DASDの
回転関係を確立する。参照記号2190箇所では無関係
のマシン・オペレーションが介在することがある。セク
タ・セットの条件が満足さ扛ると、ステップ223で装
置終了(DE)がホスト11に供給さn1データ・アク
セス・コマンドが再送可能であることを知らせろ。デー
タ・アクセス・コマンドが再送されると、ACE50P
を介して動作するプロセッサ31Pによって再び解読さ
れ7)。次に、ステップ193で直接アクセスが検出さ
れ、ステップ199によって実際のアクセスが行なわn
る。ステップ199は、現在のコマンド・チェーン内の
後続データ・アクセス・コマンドのうち、前記アドレス
されたDASDの同一ンリンダにおけるすべてのトラッ
クを対象とする後続データ・アクセス・コマンドについ
て反復される。
他方、低速チャネルの場合は、キャッシュ40が依然と
して使用さ扛ねばならない。従って、ステップ224で
プロセッサろ1PはアドレスさnたDASD16からキ
ャッシュ40へのデータの昇格ヲスケジュールする。キ
ャッシュ40への非同期的なデータの昇格が完了すると
、ステップ223そ(本発明の理解に無関係な他の制御
データ構造に転送さnる)DCB62のCCRフィール
ド111は、装置終了をホスト11に送る必要があるこ
とをプロセッサ31Pに知らせる。ホスト11は該コマ
ンドを再送し、かくてステップ210でヒツトが生じる
ことを除き第7図の動作が再実行さnる。この動作はス
テップ224の再接続および転送として表示される。こ
の時点でデータ・アクセスに関する全機能が完了する。
プロセッサ31Pは論理経路214から論理経路225
を介して進み、ステップ226で本発明の理解に無関係
の機能を実行し、ステップ227で既知のコマンド終了
手順に従ってチェーンを検査し最終ステータスをホスト
11に報告する。
ステップ87のポストアクセス処理はステップ2ろ0で
開始さn、高速チャネル寸たは低速チャネルについてF
ビット121が再び検査される。
コマンドが低速チャネルによって受取られたときは、ス
テップ231でプロセッサろ1PはDCB62のチャネ
ルICフィールド123、BCフィールド125および
チャネルICフィールド124を検査し、DASDがア
ドレスしたキャッシュ40内のデータをLRUにする必
要があるかどうかを決定する。良好な本発明の実施例で
は、前記データはLRUデータそのものではないがそ汎
に近いものとして識別さnろ。例えば、1[IO[lセ
グメントのL RU 1.1ストにおいて、前記データ
はリストのLRU端に向って100セグメント分位置調
整さnろか、またはリストのLRU端から一定のエント
リ数(例えば15エントリ)になるように位置調整さ扛
ろ。すなわち、ホスト11からのキャッシュ禁止指示ま
たはキャッシュ・ノくイノシス指示により識別さtたチ
ャネルおよび装置に対するキャッシュ転送が非活性化さ
れるときはいつも、参照さ、n、 fvデデーは依然と
してキャッシュ4Dに記憶されており、キャッシュ40
から除去する必要がある。ステップ210でキャッシュ
・ヒツトがあった場合(キャッシュ・ミスはキャッシュ
40にデータがないことを表わす)、ステップ232で
DIR43がアクセスされ、そしてキャッシュ40に記
憶されているアドレスされたトラック・データはLRU
セクンヨン105の二重連結さ扛たLRUリストを調整
することによって、よりLRUに近いキャッシュ・デー
タになる。さもなければ、ステップ230またはステッ
プ261から、プロセッサ31Pは第8図のステップ2
35に進み、DIR43のBピッ)108を検査し、キ
ャッシュ40に記憶さ扛ているアドレスさnたデータが
固定されるかどうかを決定する。もし該データが固定さ
れ、そしてステップ211でプロセッサ31Pによって
セットさnたDCB62のWRフィールド116によっ
て指示さnるように書込オペレーションが行なわ:f−
’L、DASDi6およびキャッシュ40のデータ・コ
ピーがなお不一致状態にあれば、DASD16からのデ
ータはステップ236でキャッシュ40に昇格さ扛、か
くてキャッシュ40のコピーをDASD16のコピーと
一致させる。この動作は低速チャネルについては行なわ
れない。すなわち、バックアンプ用記憶に記憶さnたデ
ータはキャッシュ40で無矛盾のコピーとして保持さn
ろ。しかしながら、データ保全のため、データがキャッ
シュ40に固定さnる場合、そのデータはDASD1乙
のデータに一致するものとして扱わn、キャッシュ40
とDASD1乙のデータ内容は無矛盾の状態に維持され
る。ステップ265またはステップ266から、プロセ
ッサ31Pは論理経路267を経て、ステップ238で
本発明の理解には無関係の機能全実行する。次いで、ス
テップ240でWRビット116が再び検査さnる。も
し現在のコマンド・チェーンで書込が行なわAnば、該
1込はステップ241でタリー・セクション112に記
録さCる。該タリーは書込フォーマットの識別等を含む
。ステップ242で、DCB62が検査さ牡、トラック
活動ベクトルTAV122が更新される。
プログラム式プロセッサ31Pは論理経路244を進み
、ステップ248で4番目の検査が受取ら′I″したコ
マンド−装置関連コマンド−に対して行なわnる。この
タイプのコマンドには今日のDASDで使用さ扛るよう
な再較正コマンドが含まnる。コマンド実行後に検査が
実行されるとき、第7図のACE50Pのステップ19
2のようにコマンド前処理でステップ249が行なわn
、キャッシュ・ミス(DCB62のミス127)および
装置D−1(第1図の参照番号20)によって高速チャ
ネルのオペレーションに変化があったかどうかが決定さ
扛る。もしミスに応じてDASD16への直接アクセス
が行なわ扛たならば(高速チャネル1ろ)、前記直接ア
クセスはトラック・シリンダ・コマンド・チェーンすな
わち検査ステップ250によって検査されるアドレス・
エクステントに限定さ扛る。最終ステータスを使用ユニ
ット11に送るとき、または次の周辺コマンドを受取っ
た後で、しかも前記周辺コマンドを実行する前に、これ
らの検査ステップを各コマンドに対して実行することが
可能である。ステップ251で、最終ステータス時にサ
プレスアウトのタグ信号の不在によって検出されたチェ
ーン終了(EOCH)がプロセッサ31Pによって検査
される。
ステップ252の第2の検査はシリンダ終了(EOCY
L)について行なわnる。すなわち、シリンダ内のトラ
ックのセットのすべては所定のアドレス空間、例えばト
ラック1〜17を有する。トランク・アドレスの増加ま
たは減少方向に依存して、トラックへのアクセスが終了
したとき、次のトラックは隣接シリンダ内、または同じ
シリンダ内にある。もしアクセスされろ次のシリンダが
隣接シリンダ内にあると予期されれば、ステップ261
でプロセッサ31Pは装置D2Dを0にリセットし、キ
ャッシュ転送を再構成する。ステップ253の第6の検
査は境界外(OOB )について行なわnる。今日、D
ASD周辺システムはエクステント限定(モードセント
)コマンドヲ使用ユニット11から受取るのが通例であ
る。エクステント限定コマンドは可能なアクセスの境界
を定めろアドレスの範囲を設定する。従って、周辺コマ
ンドを処理するに当って、処理さ扛ろアドレスが定めら
れたエクステントの境界にあることをプロセッサ31P
が表示す扛ば、OOBの状態が生じる3、すなわち要求
された次のアクセスは前に定められたエクステントの外
側になる、つまりエクステントを拡張するエクステント
限定コマンドの介入なしに(次のアクセスを)試み扛ば
、データ領域への前記アクセスでオペレーションの変更
は拒絶される。
ステップ248〜253のすべてが分岐を伴なわないな
らば、プロセッサ31Pはステップ255のリターンに
よってACE50Pに戻り、別のコマンドを受領して周
辺記憶システム1D内で非同期オペレーションをスケジ
ュールする。ステップ250で示された条件のいずれか
1つが満たさnnば、プロセッサ31Pは論理経路26
0を通ってステップ261で、装置D20をアドレスさ
扛たD A S’D I 6のC(キャッシュ転送状態
)にリセットする。ステップ261または(キャラツユ
・ミスのない、すなわち低速チャネルによるオペレーシ
ョンの)ステップ249から、プロセッサ31Pはステ
ップ255のリターンを介してACE50Pに戻る。
第9図はステップ92のポストチェーン・オペレーショ
ンを示ス。ステツ7’270のチェーンさf′した周辺
オペレーションが完了すると、ステップ271で、最終
ステータスがホスト11に送ら扛た後にACE50Pに
よって検出さ扛た、DCB62のタリー・セクション1
12に記録さnている記録ステータス・ビットは分岐の
ステップ272を実行する分岐制御としてプロセッサ3
1Pによって検査される。ステップ272の分岐はプロ
セッサ31P内の通常の分岐命令である。ステップ27
3の最初の分岐命令では、ステップ270のチェーンさ
nた周辺オペレーションにおいて使用ユニット11から
受取らnた、DCB62のチャネル5EQ12乙の順次
ビットが検査さ扛、DCB62のWR116で示すよう
に、書込コマンドがそのチェーンで受取られたかどうか
が決定される。書込が高速チャネルを介して行なわれた
場合は・ステップ275で対応するDIR43のエント
リを消去することによって、DAsD16の変更さ扛た
データに対応するキャッシュ40のデータ内容が削除さ
れる。低速チャネルについては、キャッシュ40で参照
さnた全トラックが、参照された最後のトランクを除き
、キャッシュ4oがら削除される。最後に参照さnだト
ラックはLRUに近づけら扛る。同様に、ステップ27
4でフォーマット書込(FMT  WR)が実行される
(タリー112に記録)が、キャッシュ4oは更新さ扛
ない、すなわち全1.込がDAS])16に行なわ扛る
場合も、ステップ275が実行さnる9、ステップ27
6および274の分岐ステップがいずれも満足されない
場合、ステップ280でフォーマット書込コマンドが受
取られ、書込オペレージE7がCAC6IPを介してキ
ャッシュ4oに行なわAnば、論理経路283を経てス
テップ284で、キャッシュ40からDASDl 6に
、変更されたデータが移さ扛、該データはキャッシュ4
0から削除さ扛る。ステップ271でチェイン終了条件
であっても、コマンド・チェーンは周辺記憶システム1
0によって終了さ扛てはいない。すなわち、ホストの信
号「チェーン終了」に応答して、周辺記憶システム10
けチェーン終了を供給したが、「装置終了」はデータが
なおキャッシュ40からDASD 16に1込ま扛るべ
きことをホスト11に知らぜない。前記降格が終了する
と、周辺記憶システム10は後に「装置終了」を報告す
るため通常の方法を使用して「装置終了」を送る。同様
にステップ281で、順次データが表示さ扛ているとき
(SEQ126=1)にキャッシュ40への書込が生じ
たならば、前記更新さf′Lだトラックは、最後に参照
されたトラックを除き、キャッシュ40から除去されろ
。また、ステップ282で、キャッシュ40に記憶され
たトランクで更新さ、f′したレコード数が1よりも大
きいとき、これらのトラックはキャッシュ40から除去
される。ステップ273.274.280〜282およ
び285がいずnも満足されないならば、DCB62の
チャイ、ル5EQ126のビットで示さnた順次属性が
現在のコマンド・チェーンにおいて受取ら′t″したが
1:込は行なわnてはいない。順次データの場合、プロ
セッサ31Pは順次データ・セットのデータの昇格およ
び降格を決定しようとする。この昇格および降格は高速
チャネルおよび低速チャネルでは決定方法が異なる。従
って、ステップ290で、プロセッサ31Pは終了した
ばかりの現在のコマンド・チェーンのFビット121を
検査する。高速チャネルに関連するデータ昇格でFビッ
ト121が1にセットさ扛れば、ステップ291でプロ
セッサ31PはICビット124、BCビット125お
よびDCビット123がOであるかどうかと、周辺記憶
システム10からホスト11へのデータ転送エクステン
ト(該コマンド・チェーンには書込がないことを想起さ
扛たい)とを検査する。データ転送はトラック容量の一
定のパーセンテージ、例えばトラックの半分よりも犬で
あってはならない。コマンド・チェーンの期間中制御記
憶7ろに記憶さ′nだバイト・カウント(図示せず)を
含むステップ85のデータ・アクセス部分の間、データ
転送サイズがモニタさ扛ろ。
各々のDASD記憶トラックの容量は既知であるから、
コマンド・チェーン終了時、アクセスさnた各トラック
に対する現在のコマンド・チェーンの記録さ扛たバイト
・カウントは、前記トラック容量と比較され、ホスト1
1に転送さnたデータ量を決定する。こしらの条件がす
べて満足されたか、または低速チャネルがコマンド・チ
ェーンに関連した場合、ステップ292でプロセッサ6
1Pは、最後に参照さ、f″したトラック(LTR)に
続くトラックをDASD 16からキャッシュ40に転
送する。LTRはDCB62のコマンド/アドレス−セ
クション113でチェーンの最後のコマンドを識別する
。ステップ296でプロセッサ61PはLTRの直前の
トラックがキャッシュ40から降格さnろようにする。
ステップ275.284.285.291および296
から論理経路295を経てプロセッサ61Pは進み、ス
テップ296で、DIR43をアクセスしくADEB7
6はなおエントリを含んでいることがあり、従ってDI
R43に代ってアクセスさ扛ろことがある)、Pビット
107を読取る。Pビット107が1に等しければ、L
TRにあるデータの部分コピーが現在キャッシュ40に
存在している。その場合、ステップ297で、プロセッ
サ3iPはDAC56Pを走行させDASD16からデ
ータを昇格させてキャッシュ40の部分コピーを完全な
ものにする。一般に、部分コピーはトラックの最後の部
分、すなわちインデックス・マーク直前のデータ部分が
キャッシュ40の中に入るようにキャッシュ40にコピ
ーされる。
従って、トラック昇格の終了は、(キャッシュ40にお
いてコピーの最初をマークする)最初の参照点を介して
トラックの最初の部分をキャッシュ40に昇格させるの
に等しい。データ昇格時間を減少させるため、前記LT
Rの最初の部分の昇格は、前記昇格さ扛ない最初の部分
をアクセスする結果キャッシュ・ミスが生じるまで延期
される。
前記良好な構成例で、ステップ297は第7図のステッ
プ224に組込まnる。
プロセッサ31Pはステップ297またはステップ29
6から論理回路298を通り、更にデータ昇格解析を実
行する。ステップろ00で、高速チャネルが直前のコマ
ンド・チェーンにコマンドを供給したかどうかを検査し
、ステップ301でプロセッサ31PはDCB 62の
DC123、IC124、WR116およびキャッシュ
40の動作ステータス(SSNA/ステム記憶は使用不
可能)を検査し7、その使用可能性を決定する0、キャ
ッシュ40が使用可能ではないか、または他の基準のど
nかが1にセットさnていた場合、すべてのチェーン間
または非同期のデータ昇格が禁止さ扛、プロセッサ31
Pは終了ステップ602に直行する。ステップ302で
プロセッサ31Pはポストチェーン・オペl/−7ヨン
から抜は出る。他方、ステップ301でどの条件もaた
さ扛なけ汎ば、ステップ305で、プロセッサ31Pは
直前のコマンド・チェーンの装置アドレスに関してDC
B62のミス・ビット127を検査する。高速チャイ・
ルによるキャッシュ・ミスの場合、ステップ606でL
TRがキャッシュ40に選択的に昇格される。低速チャ
ネルにおいては、アクセスさ扛ろ次のトラックのデータ
内容がまだ昇格さ扛ていない順次データ処理の場合を除
き、すべての昇格が行なわ扛る。最後のデータ・アクセ
ス″!!たは(DASDi6を直接アクセスすることに
よって満足されていることがある)ミスからの参照がイ
ンデックス・マークの直前のトラックの最後の80係内
にあnば、その部分、すなわち参照点からインデックス
・マークまでの部分はキャッシュ40に昇格されろ。L
TRへの参照が該トラックの最初の20係内にあった場
合は、全トラックがキャッシュ40に昇格さnる。百分
比は最後の98俤から最後の40係まで変更できる。L
TRはDCB62のコマンド/アドレス・セクション1
16で再び識別される。キャッシュ・ミスが生じない場
合はデータ昇格はない、すなわちデータは既にキャッシ
ュ40内に存在している。
低速チャネルの場合、プロセッサ31Pは、ステップ5
08でホスト11がLTRのセクタ・セット・コマンド
を送ったかどうかを決定し、そうであnばステップ30
9で、該データ・トラック部分を前記セクタで識別さn
たセクタからインデックス・マークに昇格させろ、つま
り部分的なトラックの昇格を行なう。低速チャネルの場
合は、部分的なトラックの昇格は(I10オペレーショ
ンに同期して)第6図のステップ86で行なわnる。ス
テップ92は低速チャイ・ルの順次データにおける次の
トラックを昇格させる。ホストはセクタ・セット・コマ
ンドを送って、セクタ・セット・コマンドで識別さ扛た
セクタで始まるデータにホストが関心を有することを周
辺記憶ノステム10に知らせろ。従って、ホストが関心
を有するものとして表示されたデータのみが昇格される
。ステップ608でセクタ・セット・コマンドが検出さ
nない場合は、プロセッサ31Pはステップ610で、
シーク・コマンドにおけるようにホストが参照したトラ
ックの全トラック・データを昇格させる。プロセッサ3
1Pはステップ609.310から、本発明の理解に無
関係な終了ステップ302に進む。
ポストチェーン・オペレーションを終了した後、プロセ
ッサ3IPは新しい仕事を探す。例えば、ステップ61
5で新しいオペレーションすなわち新しいコマンドをホ
スト11から受取nば、プロセッサ31Pは論理経路3
16を経て新しいオペV −’/ E 7 全実行スル
。新シいオペレーションはまたDASD16から受取っ
た警報信号である場合もある。経路617を介して前記
オペレーンヨ/から戻った後、またはステップ315で
新しいオベレーンヨンが得うれなかった場合、プロセッ
サ31Pは経路318を経て、ステップ620で、アク
ティブ状態にセットされたM2O3のビットを有するキ
ャッシュ40で識別さf′したデータに関し、DIR4
3のLRU105(第4図)のリストを一定のしきい値
まで走査する。前記データはステップ621でキャッシ
ュ40からDASD 16に降格さnる。プロセッサ3
1Pは通常の方法で別の仕事を探し続けろ。
〔略語表〕
本明細書で使用される主要な略語を次に示す。
ACE  :  7ドレス/コマンド鑑定器BC: キ
ャッシュ・バイパス CAC:  キャッシュ・アクセス制御CC: シリン
ダ・アドレス CCB  :  チャネル制御ブロックCCR:  チ
ャネル・コマンド再試行CCW:  チャネル・コマン
ド・ワードCNL :  チャネル DAA:  装置アダプタ接続機構 DAC:  装置アクセス制御 DCA  :  装置制御接続機構 DC: キャッシュ非活性化 DCB  :  装置制御ブロック DIR:  ディレクトリ EOCH:  チェーン終了 EO8YL:  シリンダ終了 HL  : ハツシュ・クラス連結リストIC= キャ
ッシュ禁市 ICW:  内部コマンド・ワード LTR:  最後に参照されたトラックMT  : 多
重トラック 00B = 境界外 Q   : 待行列 SIO:  入出力開始 SIT  :  分散インデックス・テーブルTAV 
 :  トラック活動ベクトル
【図面の簡単な説明】
第1図は相対的に高速のチャネルおよび相対的に低速の
チャネルを介してホストに接続された本発明の周辺記憶
システムを示す論理ブロック図、第2図は第1図の内容
に基づく本発明の良好な実施例を示す論理ブロック図、 第6図は第1図および第2図のシステムのマシン・オペ
レーションを示す概略流r+[、第4図は第1図および
第2図のシステムで使用可能なキャッシュ・ディレクト
リおよ、び装置制御ブロックを示す図、 第5図は第1図および第2図のシステムを制御するモー
ドセット・コマンドを示す図、第6図は第5図のモード
セント・コマンドを第1図および第2図のシステムで実
行した場合のマシン−オペレーションk 示t 流A 
図、第7図および第8図は第1図および第2図のシステ
ムのf−夕転送中の動作を示す流n図、第9図は第1図
および第2図のシステムの非同期、すなわちいわゆるポ
スト・チェイニング・比−ベレーションを示す流n図で
ある。 10・・・・周辺記憶システム 11・・・・ホスト(
または使用ユニット)、12・・・・チャネル、16・
・・・高速チャネル、14・・・・低速チャネル、16
・・・・DASD (またはバックアップ記憶)、20
・・・・装置p、3o・・・・システム記憶、31・・
・・周辺システム制御、31P・・・・プロセッサ、ろ
2・・・・チャネル・アダプタ、6ろ・・・・データ・
フロー回路、34・・・・DAA、35・・・・DCA
、40・・・・キャッシュ、43・・・・DIR,45
・・・・SIT。 50・・・・ACE、、5DP・・・・ACEプログラ
ム56・・・・DAC,56P・・・・DACプログラ
ム、60・・・・固定リスト、61・・・・CAC,6
1P・・・・CACプログラム、62・・・・DCB、
63・・・・CCB、67・・・・Qレジスタ、73・
・・・制御記憶、76・・・・ADEB、75・・・・
OPプログラム、76・・・・ADEB、77・・・・
FSマツプ。 出願人  インターf−7#ル・ビジネス・マシーンズ
・コーポレー・ハン代理人 弁理士  頓  宮   
孝  −(外1名)

Claims (1)

  1. 【特許請求の範囲】 高速のフロント記憶(たとえば第1図の40)及び該フ
    ロント記憶とデータ信号を転送するように該フロント記
    憶へ結合さnftc−バッキング記憶(たとえば第1図
    の16)を有するデータ記憶階層を備え、前記バンキン
    グ記憶は所与のデータ転送速度を有し、さらに前記所与
    のデータ転送速度より小さい速度で前記データ記憶階層
    とデータ信号を転送するように該データ記憶階層へ接続
    さn fc低速のチャネル手段(たとえば第1図の14
    )と、前記所与のデータ転送速度を含む速度で前記デー
    タ記憶階層とデータ信号を転送するように該データ記憶
    階層へ接続された高速のチャネル手段(たとえば第1図
    の16)とを備え、前記フロント記憶は前記データ転送
    によって転送さ扛ているデータを記憶するためのアドレ
    ス可能な複数のデータ記憶領域を有するように構成さn
    ている周辺データ記憶システムであって、 前記フロント記憶又は前記バッキング記憶と前記高速の
    チャネル手段との間のデータ信号の転送を可能とし且つ
    前記フロント記憶と前記低速のチャネル手段との間のデ
    ータ信号の転送を可能とするように前記フロント記憶及
    び前記バッキング記憶並びに前記低速のチャネル手段及
    び前記高速のチャネル手段へ結合された第1の制御手段
    (たとえば第1図の5[1,56,61)を設けるとと
    もに、 前記フロント記憶と前記バッキング記憶との間のデータ
    信号を可能とし且つ前記低速のチャネル手段又は前記高
    速のチャネル手段とのデータ転送に応じて、前記フロン
    ト記憶のデータ記憶領域を管理するように前記フロント
    記憶、前記バッキング記憶及び前記第1の制御手段へ結
    合さ扛た置換制御手段(たとえば第1図の46及び61
    の一部)を設けることにより、 前記フロント記憶を介する前記バッキング記憶と前記低
    速のチャネル手段との間のデータ転送が前記高速のチャ
    ネル手段と前記データ記憶階層との間のデータ転送と実
    質的に独立に行なわれろようにしたことを特徴とする周
    辺データ記憶システム。
JP58123539A 1982-09-27 1983-07-08 データ転送方法 Expired - Lifetime JPH0727495B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/423,962 US4571674A (en) 1982-09-27 1982-09-27 Peripheral storage system having multiple data transfer rates
US423962 1982-09-27

Publications (2)

Publication Number Publication Date
JPS5960552A true JPS5960552A (ja) 1984-04-06
JPH0727495B2 JPH0727495B2 (ja) 1995-03-29

Family

ID=23680909

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58123539A Expired - Lifetime JPH0727495B2 (ja) 1982-09-27 1983-07-08 データ転送方法

Country Status (4)

Country Link
US (1) US4571674A (ja)
EP (1) EP0104588B1 (ja)
JP (1) JPH0727495B2 (ja)
DE (1) DE3380502D1 (ja)

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4819164A (en) * 1983-12-12 1989-04-04 Texas Instruments Incorporated Variable frequency microprocessor clock generator
JPH0792761B2 (ja) * 1985-07-31 1995-10-09 株式会社日立製作所 仮想計算機システムの入出力制御方法
US4742447A (en) * 1986-01-16 1988-05-03 International Business Machines Corporation Method to control I/O accesses in a multi-tasking virtual memory virtual machine type data processing system
US5008820A (en) * 1987-03-30 1991-04-16 International Business Machines Corporation Method of rapidly opening disk files identified by path names
US5081701A (en) * 1987-04-20 1992-01-14 Tandem Computers Incorporated System for controlling data transfer using transfer handshake protocol using transfer complete and transfer inhibit signals
JP2514208B2 (ja) * 1987-07-15 1996-07-10 富士通株式会社 ホットスタンドバイメモリ−コピ−方式
US5252899A (en) * 1988-03-09 1993-10-12 Fanuc Ltd Numerical control system
JPH01246656A (ja) * 1988-03-29 1989-10-02 Nec Corp プロセッサ間共有メモリ管理方式
US4992978A (en) * 1988-03-31 1991-02-12 Wiltron Company Cross-path optimization in multi-task processing
US4993030A (en) * 1988-04-22 1991-02-12 Amdahl Corporation File system for a plurality of storage classes
JP2567922B2 (ja) * 1988-08-30 1996-12-25 株式会社日立製作所 パス制御方式
JP2637788B2 (ja) * 1988-09-02 1997-08-06 株式会社日立製作所 ディスクキャッシュ制御方式および情報処理システム
JP2872251B2 (ja) * 1988-10-12 1999-03-17 株式会社日立製作所 情報処理システム
JPH07122868B2 (ja) * 1988-11-29 1995-12-25 日本電気株式会社 情報処理装置
US5257359A (en) * 1989-02-08 1993-10-26 Hitachi Microsystems, Inc. Instruction cache buffer with program-flow control
FR2645986B1 (fr) * 1989-04-13 1994-06-17 Bull Sa Procede pour accelerer les acces memoire d'un systeme informatique et systeme pour la mise en oeuvre du procede
FR2645987B1 (fr) * 1989-04-13 1991-06-07 Bull Sa Dispositif d'acceleration des acces memoire dans un systeme informatique
US5197146A (en) * 1989-06-21 1993-03-23 Hewlett-Packard Company Method for maintaining cache coherence in a multiprocessor computer system
US5347637A (en) * 1989-08-08 1994-09-13 Cray Research, Inc. Modular input/output system for supercomputers
US5353422A (en) * 1989-10-06 1994-10-04 Hitachi, Ltd. Method and system for storing and managing a plurality of information media used by recording/reproducing units
JP3018038B2 (ja) * 1990-01-18 2000-03-13 三菱電機株式会社 キャッシュを有するデータ処理装置
US5263145A (en) * 1990-05-24 1993-11-16 International Business Machines Corporation Method and means for accessing DASD arrays with tuned data transfer rate and concurrency
US5159678A (en) * 1990-06-11 1992-10-27 Supercomputer Systems Limited Partnership Method for efficient non-virtual main memory management
US5235692A (en) * 1990-08-31 1993-08-10 International Business Machines Corporation Disk rotational position controls for channel operations in a cached peripheral subsystem
US5235690A (en) * 1990-08-31 1993-08-10 International Business Machines Corporation Method for operating a cached peripheral data storage subsystem including a step of subsetting the data transfer into subsets of data records
US5146576A (en) * 1990-08-31 1992-09-08 International Business Machines Corporation Managing high speed slow access channel to slow speed cyclic system data transfer
US5155814A (en) * 1990-08-31 1992-10-13 International Business Machines Corporation Nonsynchronous channel/dasd communication system
US5301300A (en) * 1991-02-14 1994-04-05 Advanced Micro Devices, Inc. Floppy disk drive controller with improved density select
AU2476192A (en) * 1991-08-16 1993-03-16 Multichip Technology High-performance dynamic memory system
US5280587A (en) * 1992-03-31 1994-01-18 Vlsi Technology, Inc. Computer system in which a bus controller varies data transfer rate over a bus based on a value of a subset of address bits and on a stored value
US5420984A (en) * 1992-06-30 1995-05-30 Genroco, Inc. Apparatus and method for rapid switching between control of first and second DMA circuitry to effect rapid switching beween DMA communications
US5991775A (en) * 1992-09-23 1999-11-23 International Business Machines Corporation Method and system for dynamic cache allocation between record and track entries
US5867695A (en) * 1992-10-16 1999-02-02 International Business Machines Corp. Method and system for reduced metastability between devices which communicate and operate at different clock frequencies
US5584007A (en) * 1994-02-09 1996-12-10 Ballard Synergy Corporation Apparatus and method for discriminating among data to be stored in cache
US5588129A (en) * 1994-02-09 1996-12-24 Ballard; Clinton L. Cache for optical storage device and method for implementing same
US5491810A (en) * 1994-03-01 1996-02-13 International Business Machines Corporation Method and system for automated data storage system space allocation utilizing prioritized data set parameters
JP3030229B2 (ja) * 1994-06-20 2000-04-10 インターナショナル・ビジネス・マシーンズ・コーポレイション データを転送する方法及びデータ記憶システム
US5659799A (en) * 1995-10-11 1997-08-19 Creative Technology, Ltd. System for controlling disk drive by varying disk rotation speed when buffered data is above high or below low threshold for predetermined damping period
US5835970A (en) * 1995-12-21 1998-11-10 Cypress Semiconductor Corp. Burst address generator having two modes of operation employing a linear/nonlinear counter using decoded addresses
WO1997027589A1 (en) * 1996-01-26 1997-07-31 Exabyte Corporation Handling defective frames on hard sectored magnetic tape
US6098155A (en) * 1996-10-28 2000-08-01 Sun Microsystems, Inc. Apparatus and method for streamlining data transfer with existing interconnect bandwidth
US6065100A (en) * 1996-11-12 2000-05-16 Micro-Design International Caching apparatus and method for enhancing retrieval of data from an optical storage device
DE19731116A1 (de) * 1997-07-19 1999-01-28 Bosch Gmbh Robert Steuergerät für ein System und Verfahren zum Betrieb eines Steuergerätes
US6381677B1 (en) * 1998-08-19 2002-04-30 International Business Machines Corporation Method and system for staging data into cache
AU1444601A (en) * 1999-10-28 2001-05-08 Ramot University Authority For Applied Research And Industrial Development Ltd. Caching techniques for improving system performance in raid applications
US6615318B2 (en) 2002-01-22 2003-09-02 International Business Machines Corporation Cache management system with multiple cache lists employing roving removal and priority-based addition of cache entries
US7562202B2 (en) * 2004-07-30 2009-07-14 United Parcel Service Of America, Inc. Systems, methods, computer readable medium and apparatus for memory management using NVRAM
US20060294313A1 (en) * 2005-06-23 2006-12-28 International Business Machines Corporation System and method of remote media cache optimization for use with multiple processing units
US7580465B2 (en) * 2005-06-30 2009-08-25 Intel Corporation Low speed access to DRAM
US8489817B2 (en) 2007-12-06 2013-07-16 Fusion-Io, Inc. Apparatus, system, and method for caching data
US8706968B2 (en) * 2007-12-06 2014-04-22 Fusion-Io, Inc. Apparatus, system, and method for redundant write caching
US8443134B2 (en) * 2006-12-06 2013-05-14 Fusion-Io, Inc. Apparatus, system, and method for graceful cache device degradation
US8935302B2 (en) 2006-12-06 2015-01-13 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume
KR20090102789A (ko) 2006-12-06 2009-09-30 퓨전 멀티시스템즈, 인크.(디비에이 퓨전-아이오) 프로그레시브 raid를 이용한 데이터 저장 장치, 시스템 및 방법
US9104599B2 (en) 2007-12-06 2015-08-11 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for destaging cached data
US7443629B1 (en) * 2007-04-09 2008-10-28 International Business Machines Corporation Apparatus, system, and method for optimizing fast access data storage on segmented tape media
US7836226B2 (en) 2007-12-06 2010-11-16 Fusion-Io, Inc. Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
US9519540B2 (en) 2007-12-06 2016-12-13 Sandisk Technologies Llc Apparatus, system, and method for destaging cached data
KR20100085564A (ko) * 2009-01-21 2010-07-29 삼성전자주식회사 데이터 처리 시스템과 데이터 처리 방법
US8095738B2 (en) 2009-06-15 2012-01-10 International Business Machines Corporation Differential caching mechanism based on media I/O speed
JP5999645B2 (ja) 2009-09-08 2016-10-05 ロンギチュード エンタープライズ フラッシュ エスエイアールエル ソリッドステート記憶デバイス上にデータをキャッシングするための装置、システム、および方法
EP2476079A4 (en) * 2009-09-09 2013-07-03 Fusion Io Inc APPARATUS, SYSTEM, AND METHOD FOR STORAGE ALLOCATION
US9122579B2 (en) 2010-01-06 2015-09-01 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for a storage layer
US9213628B2 (en) 2010-07-14 2015-12-15 Nimble Storage, Inc. Methods and systems for reducing churn in flash-based cache
WO2012083308A2 (en) 2010-12-17 2012-06-21 Fusion-Io, Inc. Apparatus, system, and method for persistent data management on a non-volatile storage media
US8966184B2 (en) 2011-01-31 2015-02-24 Intelligent Intellectual Property Holdings 2, LLC. Apparatus, system, and method for managing eviction of data
US9201677B2 (en) 2011-05-23 2015-12-01 Intelligent Intellectual Property Holdings 2 Llc Managing data input/output operations
US9003104B2 (en) 2011-02-15 2015-04-07 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a file-level cache
US8874823B2 (en) 2011-02-15 2014-10-28 Intellectual Property Holdings 2 Llc Systems and methods for managing data input/output operations
WO2012116369A2 (en) 2011-02-25 2012-08-30 Fusion-Io, Inc. Apparatus, system, and method for managing contents of a cache
WO2012129191A2 (en) 2011-03-18 2012-09-27 Fusion-Io, Inc. Logical interfaces for contextual storage
US9563555B2 (en) 2011-03-18 2017-02-07 Sandisk Technologies Llc Systems and methods for storage allocation
US9274937B2 (en) 2011-12-22 2016-03-01 Longitude Enterprise Flash S.A.R.L. Systems, methods, and interfaces for vector input/output operations
US9767032B2 (en) 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
US9251052B2 (en) 2012-01-12 2016-02-02 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer
US10102117B2 (en) 2012-01-12 2018-10-16 Sandisk Technologies Llc Systems and methods for cache and storage device coordination
US9251086B2 (en) 2012-01-24 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for managing a cache
US9116812B2 (en) 2012-01-27 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a de-duplication cache
US10359972B2 (en) 2012-08-31 2019-07-23 Sandisk Technologies Llc Systems, methods, and interfaces for adaptive persistence
US10019353B2 (en) 2012-03-02 2018-07-10 Longitude Enterprise Flash S.A.R.L. Systems and methods for referencing data on a storage medium
US9612966B2 (en) 2012-07-03 2017-04-04 Sandisk Technologies Llc Systems, methods and apparatus for a virtual machine cache
US10339056B2 (en) 2012-07-03 2019-07-02 Sandisk Technologies Llc Systems, methods and apparatus for cache transfers
US10318495B2 (en) 2012-09-24 2019-06-11 Sandisk Technologies Llc Snapshots for a non-volatile device
US10509776B2 (en) 2012-09-24 2019-12-17 Sandisk Technologies Llc Time sequence data management
US9842053B2 (en) 2013-03-15 2017-12-12 Sandisk Technologies Llc Systems and methods for persistent cache logging
US10102144B2 (en) 2013-04-16 2018-10-16 Sandisk Technologies Llc Systems, methods and interfaces for data virtualization
US10558561B2 (en) 2013-04-16 2020-02-11 Sandisk Technologies Llc Systems and methods for storage metadata management
US9842128B2 (en) 2013-08-01 2017-12-12 Sandisk Technologies Llc Systems and methods for atomic storage operations
US10019320B2 (en) 2013-10-18 2018-07-10 Sandisk Technologies Llc Systems and methods for distributed atomic storage operations
US10073630B2 (en) 2013-11-08 2018-09-11 Sandisk Technologies Llc Systems and methods for log coordination
US9946607B2 (en) 2015-03-04 2018-04-17 Sandisk Technologies Llc Systems and methods for storage error management
US11829636B2 (en) * 2021-09-01 2023-11-28 Micron Technology, Inc. Cold data identification

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53126828A (en) * 1977-04-13 1978-11-06 Hitachi Ltd Storage control unit
JPS55154648A (en) * 1979-05-22 1980-12-02 Nec Corp Disc cash control system
JPS55157055A (en) * 1979-05-25 1980-12-06 Nec Corp Disc cash control unit
JPS564857A (en) * 1979-06-25 1981-01-19 Hitachi Ltd Access system for memory unit
JPS56124961A (en) * 1980-03-05 1981-09-30 Hitachi Ltd Information processing equipment
JPS5713562A (en) * 1980-06-27 1982-01-23 Toshiba Corp Control system of external memory

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3812475A (en) * 1957-12-26 1974-05-21 Ibm Data synchronizer
US3569938A (en) * 1967-12-20 1971-03-09 Ibm Storage manager
US3588839A (en) * 1969-01-15 1971-06-28 Ibm Hierarchical memory updating system
US3670309A (en) * 1969-12-23 1972-06-13 Ibm Storage control system
US3670307A (en) * 1969-12-23 1972-06-13 Ibm Interstorage transfer mechanism
US3699530A (en) * 1970-12-30 1972-10-17 Ibm Input/output system with dedicated channel buffering
US3721961A (en) * 1971-08-11 1973-03-20 Ibm Data processing subsystems
US3735360A (en) * 1971-08-25 1973-05-22 Ibm High speed buffer operation in a multi-processing system
US3839704A (en) * 1972-12-06 1974-10-01 Ibm Control for channel access to storage hierarchy system
US4020466A (en) * 1974-07-05 1977-04-26 Ibm Corporation Memory hierarchy system with journaling and copy back
US4053752A (en) * 1975-09-15 1977-10-11 International Business Machines Corporation Error recovery and control in a mass storage system
US4084231A (en) * 1975-12-18 1978-04-11 International Business Machines Corporation System for facilitating the copying back of data in disc and tape units of a memory hierarchial system
GB1505603A (en) * 1976-07-07 1978-03-30 Ibm Data processing systems
US4075686A (en) * 1976-12-30 1978-02-21 Honeywell Information Systems Inc. Input/output cache system including bypass capability
US4157586A (en) * 1977-05-05 1979-06-05 International Business Machines Corporation Technique for performing partial stores in store-thru memory configuration
US4142234A (en) * 1977-11-28 1979-02-27 International Business Machines Corporation Bias filter memory for filtering out unnecessary interrogations of cache directories in a multiprocessor system
US4189770A (en) * 1978-03-16 1980-02-19 International Business Machines Corporation Cache bypass control for operand fetches
GB2052118A (en) * 1979-06-04 1981-01-21 Memorex Corp Disc Cache Subsystem

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53126828A (en) * 1977-04-13 1978-11-06 Hitachi Ltd Storage control unit
JPS55154648A (en) * 1979-05-22 1980-12-02 Nec Corp Disc cash control system
JPS55157055A (en) * 1979-05-25 1980-12-06 Nec Corp Disc cash control unit
JPS564857A (en) * 1979-06-25 1981-01-19 Hitachi Ltd Access system for memory unit
JPS56124961A (en) * 1980-03-05 1981-09-30 Hitachi Ltd Information processing equipment
JPS5713562A (en) * 1980-06-27 1982-01-23 Toshiba Corp Control system of external memory

Also Published As

Publication number Publication date
US4571674A (en) 1986-02-18
EP0104588A2 (en) 1984-04-04
JPH0727495B2 (ja) 1995-03-29
EP0104588A3 (en) 1987-04-29
DE3380502D1 (en) 1989-10-05
EP0104588B1 (en) 1989-08-30

Similar Documents

Publication Publication Date Title
JPS5960552A (ja) 周辺デ−タ記憶システム
EP0071719B1 (en) Data processing apparatus including a paging storage subsystem
EP0077452B1 (en) Data promotion in storage subsystems
US5418929A (en) Controller for storage unit and method of controlling storage unit
EP0072108B1 (en) A multiple operating mode storage subsystem
US4875155A (en) Peripheral subsystem having read/write cache with record access
EP0073330B1 (en) Hierarchical storage systems adapted for error handling
US4499539A (en) Method and apparatus for limiting allocated data-storage space in a data-storage unit
US4779189A (en) Peripheral subsystem initialization method and apparatus
EP0086886B1 (en) Hierarchical data storage system for digital computers
US4466059A (en) Method and apparatus for limiting data occupancy in a cache
US5809560A (en) Adaptive read-ahead disk cache
EP0106212B1 (en) Roll mode for cached data storage
EP0114190B1 (en) Data storage hierarchy
US6457102B1 (en) Cache using multiple LRU's
JPS5876956A (ja) バッファ記憶付きディスク・システム
US5696931A (en) Disc drive controller with apparatus and method for automatic transfer of cache data
JPS60207943A (ja) 階層記憶システムにおける1次記憶の内容の保護方法
JPH0460730A (ja) キャッシュ制御方式
JPH0728701A (ja) 計算機システム
JPS63120349A (ja) フアイル多重制御方式
JPS61231641A (ja) キヤツシユ制御方式