JPH05502315A - Methods for transferring data between data storage subsystems and host data processing systems - Google Patents

Methods for transferring data between data storage subsystems and host data processing systems

Info

Publication number
JPH05502315A
JPH05502315A JP3504263A JP50426391A JPH05502315A JP H05502315 A JPH05502315 A JP H05502315A JP 3504263 A JP3504263 A JP 3504263A JP 50426391 A JP50426391 A JP 50426391A JP H05502315 A JPH05502315 A JP H05502315A
Authority
JP
Japan
Prior art keywords
data
host
controller
command
read
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
JP3504263A
Other languages
Japanese (ja)
Other versions
JPH06105425B2 (en
Inventor
ジャッド、イアン、デビッド
キャス、ロジャー、ゴードウイン
コックバーン、ゴードン、ジョン
ショート、ウイリアム、アンソニイ
バックランド、パトリック、アレン
Original Assignee
インターナショナル・ビジネス・マシーンズ・コーポレーション
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 インターナショナル・ビジネス・マシーンズ・コーポレーション filed Critical インターナショナル・ビジネス・マシーンズ・コーポレーション
Priority claimed from PCT/GB1991/000256 external-priority patent/WO1992015054A1/en
Publication of JPH05502315A publication Critical patent/JPH05502315A/en
Publication of JPH06105425B2 publication Critical patent/JPH06105425B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Communication Control (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。 (57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 データ記憶サブシステムと ホスト・システムとの間のデータ転送 [技術分野] 本発明は、データ記憶サブシステムと、接続されたホスト・データ処理システム との間のデータ転送の分野に関する。[Detailed description of the invention] data storage subsystem and Transferring data to and from host systems [Technical field] The present invention provides a data storage subsystem and a connected host data processing system. Concerning the field of data transfer to and from.

[背景技術] データ処理システム内で使用されるデータ記憶サブシステムは、通常、顧客デー タを保持する1つまたは複数の記憶装置に接続された装置制御装置を備える。こ のようなサブシステムの重要な要件は、大量のデータを記憶でき、それと同時に ホスト・データ処理システムによって高速でアクセス可能なことである。記憶さ れたデータをますます高速に転送できるサブシステムを開発するための努力が続 けられている。[Background technology] Data storage subsystems used within data processing systems typically store customer data. a device controller connected to one or more storage devices holding data. child An important requirement for subsystems such as It should be accessible at high speed by a host data processing system. remember Efforts continue to develop subsystems that can transfer data at increasingly faster speeds. I'm being kicked.

ホストを装置制御装置に接続し、また制御装置を装置に接続するためのい(つか のインターフェースが開発されている。Connect the host to the device controller, and the controller to the device. interface has been developed.

このようなインターフェースの1つが、米国規格協会(ANSI)によって標準 規格として採用された小型コンピュータ・システム・インターフェース(SC3 I)である。SC3Iバスを使って制御装置を装置に接続するデータ記憶サブシ ステムが知られている。One such interface has been standardized by the American National Standards Institute (ANSI). Small computer system interface (SC3) adopted as a standard I). A data storage subsystem that connects the controller to the device using the SC3I bus. The stem is known.

サブシステムからホストにデータを転送するためのいくつかの技法が記載されて いる。既知の1技法では、データ転送動作のたびに、データが、装置に転送され る前に、エラーの有無を検査される。各データ・セクタを、装置から読み取り、 データ・バッファ内に保持して、接続されたホスト・データ処理システムまで送 る前に、データ・バッファ内でエラーを検査する。この技法には、良好なデータ だけがホストに転送されるという利点がある。ただし、すべてのデータを転送す るのに要する時間が増加するという固有の性能損失もある。Several techniques are described for transferring data from the subsystem to the host. There is. In one known technique, for each data transfer operation, data is transferred to the device. It is checked for errors before it is executed. Read each data sector from the device, held in a data buffer and sent to an attached host data processing system. Check for errors in the data buffer before This technique requires good data The advantage is that only the However, if all data is transferred There is also an inherent performance loss in the amount of time it takes to complete the process.

IBM System/370では、データを、検査なしで装置からホストに直 接に送る、別の技法が使用されている。IBM System/370 transfers data directly from the device to the host without inspection. Another technique is used, which is direct communication.

こうして「生」データを送ると、前述の方法に比べて、伝送の前にセクタをデー タ・バッファに保持する必要がないという性能上の利益がある。ただし、Sys tem/370に使用されているこの技法には、伝送されたデータにエラーが存 在する時に顕在化する欠点がある。これが発住する時には、最初にホストによっ て要求されたデータの大きな部分を再伝送する必要がある。Sending ``raw'' data in this way is more advantageous than the previous method by data-sending sectors before transmission. There is a performance benefit in that it does not need to be held in a data buffer. However, Sys This technique used in tem/370 does not allow errors in the transmitted data. There are shortcomings that become apparent when you are present. When this occurs, it is first detected by the host. large portions of the requested data must be retransmitted.

装置とホスト間のデータ伝送を高速化するため、いくつかの性能を向上させる技 法が開発されてきた。その1つが、データが要求された時に要求されたデータが ヘッドの下にない時に生じる待ち時間を減少させる、分割転送である。米国特許 第4494157号明細書には、分割転送を使用して、データを2バーストでバ ッファに転送する方法が記載されている。データの2つのバーストは、ホスト・ システムに送られる前に、バッファで受け取られる。Several performance-enhancing techniques are available to speed up data transmission between the device and the host. laws have been developed. One of them is that when data is requested, the requested data is It is a split transfer that reduces the latency that occurs when it is not under the head. US patent No. 4,494,157 uses split transfer to transfer data in two bursts. It describes how to transfer to buffer. Two bursts of data are sent to the host It is received in a buffer before being sent to the system.

[発明の開示コ 本発明は、データ記憶サブシステムと、接続されたホスト・データ処理システム との間での高速データ転送を達成することを目的とする。[Invention disclosure code] The present invention provides a data storage subsystem and a connected host data processing system. The purpose is to achieve high-speed data transfer between

したがって、本発明は、データを記憶する直接アクセス記憶装置に通信のために 接続された装置制御装置を備えるデータ記憶サブシステムから、接続されたホス ト・データ処理システムにデータを転送する方法を提供する。この方法は、転送 しようとするデータ・ブロックのシーケンスとデータ・シーケンスの第1ブロツ クの転送先のホスト・メモリ内の開始アドレスとを指定するデータ転送コマンド を、システムから装置制御装置に送ってデータ転送を開始するステップと、コマ ンドに応答してサブシステムからシステムへデータのシーケンスを転送するステ ップとを含み、制御装置はホスト・メモリ内の開始アドレスを再指定する能力を 有する。Accordingly, the present invention provides a direct access storage device for storing data for communication. From a data storage subsystem with an attached device controller to an attached host provides a method for transferring data to a client data processing system. This method transfers The sequence of data blocks to be executed and the first blot of the data sequence A data transfer command that specifies the starting address in host memory to which the data will be transferred. from the system to the device controller to start data transfer, and A step that transfers a sequence of data from a subsystem to a system in response to a command. The controller has the ability to respecify the starting address in host memory. have

したがって、制御装置は、コマンドで指定された範囲でホスト・メモリ内の開始 アドレスを再指定することができる。Therefore, the control unit starts in host memory in the range specified by the command. Addresses can be respecified.

実際には、この制御装置は、ホスト・メモリに対するランダム・アクセス権を有 する。これは、多くの形で有用な機能である。In reality, this controller has random access to host memory. do. This is a useful feature in many ways.

好ましい方法では、制御装置は、装置からの前記データ・シーケンスの非逐次式 順序での転送を要求し、ホストによって指定された開始アドレスを使用して、非 逐次式データの第1ブロツクを送る先のホスト・メモリ内の修正済み開始アドレ スを計算し、制御装置が、非逐次式順序でデータをホストに転送し、データの第 1ブロツクが、修正済み開始アドレスに送られる。In a preferred method, the control device non-sequentially controls said data sequence from the device. Request a transfer in order and use the starting address specified by the host to Modified starting address in host memory to which to send the first block of sequential data. The controller transfers the data to the host in non-sequential order and 1 block is sent to the modified starting address.

したがって、分割読取り転送では、制御装置が、データの第2バーストを送る先 のホスト内のアドレスを再指定することができる。このようにして、第1バース トをホストに送る前に、データの第2バーストを制御装置が受け取るのを待つ必 要がなくなる。これによって、装置から「順序外れ」のデータを受け取るが、そ のデータを正しい順序でホストに転送しなければならなかった従来のシステムに 比べて、性能上の利益がもたらされる。Therefore, in a split read transfer, the controller sends the second burst of data to address within the host can be respecified. In this way, the first berth The controller must wait for the second burst of data to be received before sending the burst to the host. It becomes unnecessary. This will cause you to receive "out of order" data from the device, but traditional systems that required data to be transferred to the host in the correct order. There are performance benefits in comparison.

また、制御装置は、コマンドで指定されたのと同じ順序での装置からのデータの 転送を要求し、制御装置が、前記データ・シーケンスの第1ブロツクを、ホスト によって指定されたアドレスに送る。これは、データがブロックの昇順でホスト まで転送される「通常の」読取り動作である。The control unit also processes data from the devices in the same order as specified in the command. requesting a transfer, the controller transfers the first block of said data sequence to the host Send to the address specified by. This means that the data is hosted on blocks in ascending order. It is a "normal" read operation that is transferred up to .

好ましい方法では、データ・シーケンスの一部分でエラーを検出した時、制御装 置が、前記部分を再伝送するよう装置に要求し、ホストからのコマンドで指定さ れたアドレスを使用して、再試行部分を送る先のホスト・メモリ内のアドレスを 計算する。In a preferred method, when an error is detected in a portion of the data sequence, the control request the device to retransmit said portion, as specified in the command from the host. the address in host memory to send the retry portion to. calculate.

したがって、データ転送中にエラーが発生した場合、制御装置が、データの一部 分をホストまで再伝送する。ホスト・メモリに対してランダム・アクセスを行う と、原コマンドで指定されたデータの全体を送り直す必要がなくなる。Therefore, if an error occurs during data transfer, the control unit retransmit the minutes to the host. Perform random access to host memory , there is no need to resend the entire data specified in the original command.

本発明の別の態様では、制御装置が、データ転送先のホスト・メモリ内の開始ア ドレスを指定する能力を有することを特徴とする、直接アクセス記憶装置に通信 のために接続された装置制御装置を備え、動作の際に、データが、装置から制御 装置を介してデータ処理システム内のメモリに転送される、接続されたホスト・ データ処理システムによってアクセス可能なデータを記憶するためのデータ記憶 サブシステムが提供される。In another aspect of the present invention, the controller includes a starting address in host memory to which data is to be transferred. communication to a direct access storage device, characterized in that it has the ability to specify an address; During operation, the data is controlled by the device. connected host data that is transferred through the device to memory within the data processing system. data storage for storing data accessible by a data processing system A subsystem is provided.

本発明の好ましい実施例を、添付図面を参照して例として記述する。本発明を実 施するためには、以下の記述に含まれる特徴のすべてが必要というわけではない ことに留意されたい。Preferred embodiments of the invention will now be described by way of example with reference to the accompanying drawings, in which: FIG. Carrying out the invention Not all of the features included in the description below are necessary for implementation. Please note that.

口図面の簡単な説明] 第1図は、本発明によるデータ記憶サブシステムの主要な機能ユニットのブロッ ク図である。Brief explanation of the drawing] FIG. 1 shows a block diagram of the main functional units of a data storage subsystem according to the present invention. This is a diagram.

第2図は、第1図のアダプタの主要構成要素を示すブロック図である。FIG. 2 is a block diagram showing the main components of the adapter of FIG. 1.

第3図は、第2図のアダプタ・リンク・チップの構造を示す図である。FIG. 3 is a diagram showing the structure of the adapter link chip of FIG. 2.

第4図は、第1図の制御装置の主要構成要素を示すブロック図である。FIG. 4 is a block diagram showing the main components of the control device of FIG. 1.

第5図は、第4図の制御装置リンク・チップの構造を示すブロック図である。FIG. 5 is a block diagram illustrating the structure of the controller link chip of FIG. 4.

第6図は、制御装置マイクロプロセッサ内で定義されるタスク間の通信を示すブ ロック図である。FIG. 6 is a block diagram showing the communication between tasks defined within the control unit microprocessor. It is a lock diagram.

第7図は、インバウンド直列リンクとアウトバウンド直列リンクを示すブロック 図である。Figure 7 is a block showing inbound serial links and outbound serial links. It is a diagram.

口発明の詳細な説明コ データ処理システムへの接続に適し、ホスト・システムが高速にアクセスできる 大容量の記憶域を提供する、データ記憶サブシステムについて記述する。第1図 に示したこのサブシステムの主な機能ユニットは、(1)ホスト・アダプタ、( 2)装置制御装置および(3)直接アクセス記憶装置(DASD)である。これ らの機能ユニットは、7地点間全二重直列リンクによって相互接続される。第1 図は、このサブシステムの基本構成を示す図であるが、同図では、1個のアダプ タ10が、専用直列リンクISを介して1台の制御装置20に接続され、制御装 置2oは、4本の直列リンク25〜28によって4台のDA3つ 30に接続さ れている。以下の記述の大半は、この基本構成に関するものである。ただし、こ のサブシステムのアーキテクチャ(以下で詳細に述べる)は、各アダプタを最高 4台の制御装置に接続でき、各制御装置を最高4台の装置に接続できるように設 計されている。このサブシステムの好ましい実施例では、ホス)・・アダプタは 、ホスト・システム内に格納され、直列リンクを介してハウジング(たとえばラ ックに装着した引出しまたは自立型ユニット)に接続される。このハウジングは 、1台の制御装置と4台のDASDを備え、付随の電源と冷却システム(図示せ ず)を有する。Detailed explanation of the invention Suitable for connection to data processing systems and provides fast access by host systems Describes a data storage subsystem that provides large amounts of storage. Figure 1 The main functional units of this subsystem, shown in Figure 1, are: (1) host adapter; 2) a device controller; and (3) a direct access storage device (DASD). this These functional units are interconnected by a 7 point full duplex series link. 1st The figure shows the basic configuration of this subsystem. The controller 10 is connected to one control device 20 via a dedicated serial link IS, and Station 2o is connected to four DAs 30 by four series links 25 to 28. It is. Most of the following description is related to this basic configuration. However, this The subsystem architecture (detailed below) allows each adapter to Can be connected to 4 control devices, each control device can be connected to up to 4 devices. It is measured. In the preferred embodiment of this subsystem, the host adapter is , housed within the host system and connected to the housing (e.g. rack) via a serial link. connected to a drawer or freestanding unit attached to a rack. This housing is , one control unit, four DASDs, and associated power and cooling systems (not shown). ).

まず、アダプタ、制御装置およびDASDの主な機能について手短に述べる。First, the main functions of the adapter, control unit, and DASD will be briefly described.

1、アダプタ アダプタは、本質的には、直列リンクを介してホスト・システムを制御装置に接 続する汎用マルチブIノクサである。アダプタは、IBMのマイクロ・チャネル ・アーキテクチャ(マイクロ・チャネルは、インターナショナル・ビジネス・マ シーンズ・コーホ1/イシヨンの登録商標)など様々な既存インターフェースを 介してホスト・システムに接続するよう設計することができる。1. Adapter An adapter essentially connects a host system to a control unit through a serial link. This is a general-purpose multi-tub I node that follows. The adapter is IBM's Micro Channel ・Architecture (micro channels are Various existing interfaces such as Scenes Coho 1/Ishiyon registered trademark) can be designed to connect to a host system via

アダプタの主要機能は次の通りである。The main functions of the adapter are as follows.

1)アダプタは、5C3I (小型コンピュータ・システム・インターフェース )コマンドをシステム・メモリから直接メモリ・アクセス(DMA)によって取 り出し、直列リンクを介してこれらのコマンドを制御装置に転送する。1) The adapter is 5C3I (small computer system interface ) commands from system memory using direct memory access (DMA). and transfer these commands to the controller via a serial link.

2)アダプタは、DMAチャネルのプールを管理し、要求に応じて読取りデータ または書込みデータの転送のためにこれらのチャネルを制御装置に割り振る。2) The adapter manages a pool of DMA channels and reads data on demand. or allocate these channels to the control unit for transfer of write data.

3)アダプタは、DMAによってホスト・メモリから書込みデータのパケットを 取り出し、直列リンクを介してこれらを制御装置に伝送する。3) The adapter writes packets of write data from host memory via DMA. and transmit these to the control device via a serial link.

4)アダプタは、直列リンクから読取りデータのパケットを受け取り、DMAに よってこれらをシステム・メモリに記憶する。4) The adapter receives packets of read data from the serial link and transfers them to DMA. Therefore, these are stored in the system memory.

5)アダプタは、各コマンドの終了状況を組み立て、システムに提示する。一時 に最高4台の装置に関して良好な状況を提示することができる。5) The adapter assembles and presents the exit status of each command to the system. temporary can present good conditions for up to four devices.

6)アダプタは、前のSC3Iコマンドを打ち切る手段を提供する。6) The adapter provides a means to abort previous SC3I commands.

2、制御装置 制御装置は、接続されるDASD用のSC3Iコマンド・セット(その要素のう ちで本明細書に関連するものは、別途定義する)を実施する。主要機能は次の通 りである。2. Control device The control unit uses the SC3I command set for the attached DASD (its elements Those related to this specification will be defined separately). The main functions are as follows. It is.

1)制御装置は、各DASD用のコマンド待ち行列を維持管理する。1) The controller maintains a command queue for each DASD.

2)制御装置は、ホスト・システムから書込みデータを事前取出しし、読取りデ ータを訂正し、DASDから読取りデータを事前取出しするためのデータ・バッ ファ(DASD間で共用される)を有する。2) The controller prefetches the write data from the host system and prefetches the read data. data buffer for correcting data and prefetching read data from DASD. (shared among DASDs).

3)制御装置は、5C8I状況を生成する。3) The controller generates a 5C8I status.

3、DASD DASDの主要機能は、次の通りである。3.DASD The main functions of DASD are as follows.

1)DASDは、指定されたシリンダおよびヘッドまでシークする。1) DASD seeks to specified cylinder and head.

2)DASDは、制御装置が供給する開始論理ブロック・アドレス(LBA)を 探索し、その後、必要に応じて次トラツクまでシークしながら、指定された数の ブロックを読み取りまたは書き込む。欠陥ブロックが発見された場合、DASD は、それらを自動的にスキップする。2) The DASD receives the starting logical block address (LBA) provided by the controller. the specified number of tracks, seeking to the next track if necessary. Read or write blocks. If a defective block is found, the DASD will automatically skip them.

3)DASDは、各ブロックに付加されるECCバイトを生成し、検査する。D ASD内にFCCハードウェアが含まれ、制御装置が、異なるECCアルゴリズ ムを有する可能性もある、ある範囲のDASDをサポートできるようになってい る。3) DASD generates and checks ECC bytes appended to each block. D FCC hardware is included in the ASD, and the controller uses different ECC algorithms. It is designed to support a range of DASDs, which may also have Ru.

DASDがデータ・エラーを検出した場合、制御装置が、DASDに、エラーの パターンと変位を供給するよう要求する。その後、制御装置は、そのバッファ内 のデータを訂正し、アダプタへの転送を再開する。If the DASD detects a data error, the controller informs the DASD of the error. Request to supply pattern and displacement. The controller then uses the correct the data and restart the transfer to the adapter.

4)DASDは、読取りデータと書込みデータ兼用の記録チャネルを有する。書 込みデータは、符号化され直列化された後にヘッドに供給される。ヘッドからの 読取り信号は、検出され非直列化され復号される。4) DASD has a recording channel for both read data and write data. book The embedded data is encoded and serialized before being provided to the head. from the head The read signal is detected, deserialized, and decoded.

直列リンク 直列リンクは、このサブシステムの2つのノードの間、すなわち、アダプタと制 御装置の間ならびに制−装置とDASDの間の、7地点間通信を提供する。series link A serial link is between two nodes of this subsystem: the adapter and the controller. Provides seven point-to-point communications between controllers and between controllers and DASD.

データ転送の単位は、パケットである。パケットのフォーマットは、下に示すよ うに、制御フィールド(CONTROL) 、アドレス・フィールド(ADDR ESS) 、可変長データ・フィールド(DATA)およびCRCフィールド( C:RC)を含む。The unit of data transfer is a packet. The format of the packet is shown below. uni, control field (CONTROL), address field (ADDR) ESS), variable length data field (DATA) and CRC field ( C: RC).

−一一下−−−−7−−−−下−7−−下−7−−コl FLAGI C0NT R0L IADDRESS IDATAjCRCI CRCIFLAIL−一工 −−−−二−−−−工−−上一一工−−工−−」パケットを直列リンク上で多重 化して、異なるDASDに関する複数のコマンドを同時に実行することができる 。-11 lower----7-----lower-7--lower-7--col FLAGI C0NT R0L IADDRESS IDATAjCRCI CRCIFLAIL-Ichiko --- 2-- can be used to execute multiple commands related to different DASDs at the same time. .

全二重データ伝送では、読取りデータと書込みデータの同時転送がサポートされ る。実際には、各直列リンクは、2つの反対方向でのデータ転送を提供する2本 のリンクをそれぞれ備える。これを第7図に示す。第7図によれば、各ノードは 、入力データおよびメツセージを受信するインバウンド・リンクと、データおよ びメツセージを送信するアウトバウンド・リンクを有する。Full-duplex data transmission supports simultaneous transfer of read and write data. Ru. In reality, each serial link consists of two links providing data transfer in two opposite directions. each with a link. This is shown in FIG. According to Figure 7, each node is , an inbound link that receives input data and messages, and an inbound link that receives input data and messages. has an outbound link for sending messages.

このリンクは、簡単なプロトコルを有する。各ノードは、そのインバウンド・リ ンク上の遠隔ノードから受け取る歩調合せ応答と肯定応答に従って、そのアウト バウンド・リンク上でパケットを送信することができる。This link has a simple protocol. Each node has its inbound its output according to the pacing responses and acknowledgments it receives from remote nodes on the link. Packets can be sent on bound links.

直列リンク上のパケットは、下記の2種類に分類できる。Packets on serial links can be classified into two types:

メツセージ・パケットは、ノード内のソフトウェア・プロセスから発し、宛先ノ ード内のプロセスを宛先とする(プロセスの説明は、以下の制御装置の動作に関 する節とアダプタの動作に関する節にある)。メツセージ・パケットは、通常は 、コマンドと状況に使用される(メツセージ・パケット内で送られる異なる種類 のメツセージについては、以下で詳細に説明する)。A message packet originates from a software process within a node and is sent to a destination node. (The process descriptions below relate to the operation of the control unit.) section and section on adapter operation). Message packets are usually , used for commands and situations (different types sent within message packets) messages are explained in detail below).

データ・パケットは、1つのノード内のDMAチャネルから発し、宛先ノード内 のDMAチャネルを宛先とする。データ・パケットは、通常は、読取りデータま たは書込みデータを含む。A data packet originates from a DMA channel within one node and is transmitted within a destination node. DMA channel as the destination. Data packets are typically read data or or write data.

各パケットは、パケットのソースまたは宛先あるいはその両方を示すアドレス・ フィールドを含む。直列リンクの動作の詳細については、係属中の英国特註出願 第9026338゜5号および第9026336.9号を参照されたい。Each packet has an address that indicates the source and/or destination of the packet. Contains fields. For further information on the operation of serial links, see the pending UK special note application See No. 9026338.5 and No. 9026336.9.

メツセージ メツセージとは、宛先ノード内のプロセスを宛先とする直列リンク上のパケット である。そのパケットの第1データ・バイト(すなわち、そのパケットのデータ ・フィールドの第1バイl−)が、メツセージを識別する。後続バイトは、パラ メータである。message A message is a packet on a serial link destined for a process in the destination node. It is. The first data byte of the packet (i.e., the data of the packet - The first byte of the field (l-) identifies the message. Subsequent bytes are It is a meter.

はとんどのメツセージは、パラメータとしてTAG (タグ)を有する。これに よって、メツセージを、アダプタから送られる対応するコマンドに関連付けるこ とができる。Most messages have a TAG as a parameter. to this Therefore, it is possible to associate a message with the corresponding command sent by the adapter. I can do it.

アダプタから制御装置へのメツセージ SC3jCOMMAND (S CS Iコマンド)r−−−−一下一一下一下 一一一一下一−−−−−コl MESSAGE C0DE ITAG 11SC 5I EXT 1DASD ADDR,ESS 11−−一一−−−上一一二− 二−−−−上一一−−−−Hl DMA ADDR,ESS (ホスト・メモリ 内) ]1−−−−−−−−−−−−−−−−−−−−−−−−−−−@ICO MMA、ND DESCRIPTORBLOCK IL−−一一一一一−−−− −−−−−−〜−一一一一」これは、SC3Iコマンド記述子ブロックを制御装 置の待ち行列に転送するメツセージである。Message from adapter to control device SC3j COMMAND (S CS I command) r----1 lower 1 lower 1 lower 1111 lower 1-----Col MESSAGE C0DE ITAG 11SC 5I EXT 1DASD ADDR, ESS 11--11--Upper 112- 2------Upper 11---Hl DMA ADDR, ESS (Host memory ) ] 1−−−−−−−−−−−−−−−−−−−−−−−−−−@ICO MMA, ND DESCRIPTOR BLOCK IL--11111---- ---------~-1111'' This sets the SC3I command descriptor block to This is a message to be forwarded to the queue at the location.

DASD ADDrl、ESS (D A S Dアドレス)は、コマンドを実 行する予定の目標記憶装置を識別する。DASD ADDrl, ESS (DASD address) executes the command. Identify the target storage device you plan to run.

5C5I EXTは、ANS 1仕様″Small Co@puter Sys temsド・セットによって供給される機能を超える拡張または変更を提供する 。メツセージのこの部分をセットすると、DASDへの分割書込み、または制御 装置リンクへのアダプタ上での分割読取りが使用可能になる。5C5I EXT is ANS 1 specification "Small Co@puter Sys Provide extensions or modifications beyond the functionality provided by the TEMS document set . Setting this part of the message will cause split writing to DASD or control. Split read on adapter to device link is enabled.

DMA ADDRESS (DMAアト1/ス)は、SC8Iコマンド用のデー タ域の、システム・メモリ内の開始アドレスである。DMA ADDRESS (DMA AT1/S) is the data for SC8I command. is the starting address in system memory of the data area.

COMMAND DESCRIPTORBLOCK (CDB) (コマンド記 述子ブロック)は、5C3Iコマンド用のコマンド記述子ブロックである。CD Bは、5C3Iコマンド・セットのコマンドのうちの1つを含む。COMMAND DESCRIPTOR BLOCK (CDB) descriptor block) is a command descriptor block for the 5C3I command. CD B contains one of the commands of the 5C3I command set.

READY−FOR−READ (読取り実行可能)r−一一一一一下一一工− −−−−−コl MESSAGE C0DE I TAG I LINK AD DRESS IL−一一一一一二一一二−J このメツセージは、アダプタによって、DATA−READY (データ実行可 能)メツセージに応答して制御装置に送られる。READY-FOR-READ (readable) r-111111111- ------Col MESSAGE C0DE I TAG I LINK AD DRESS IL-111112112-J This message is sent as DATA-READY by the adapter. function) sent to the control device in response to a message.

TAGは、特定のREADYJOR−READメツセージに関連するコマンドを 識別する。LINK ADDR,ESS (リンク・アドレス)は、この読取り 動作のためにアダプタ内で割り振られたDMAチャネルを識別する。The TAG specifies the commands associated with a particular READYJOR-READ message. identify LINK ADDR, ESS (link address) Identify the DMA channels allocated within the adapter for operation.

ABORT (打切り) r−一一一一一下−7”−1 1MESSAGECODE1TAG11TAG21L−−一一−−工−−−工− −−」 、二のメツセージは、ホストから取り出したABOR”jSC3I (SC8丁 打切り)動作を実行している時に、アダプタが生成する。TA、G 1は、AB ORT−3C3Iコマンド動作を含むメ□−ルボックスを識別し、TAG 2は 、打ち切るべきコマンドを識別する。このメツセージは、制御装置に、コマンド が実行中である場合にはその実行を終了させ、実行がまだ始まっていない場合に は制御装置の待ち行列からそのコマンドを取り除かせる。ABORT (termination) r-11-11-7”-1 1MESSAGECODE1TAG11TAG21L--11--Eng.--Eng. --” , the second message is ABOR”jSC3I (SC8-double) taken out from the host. Generated by the adapter when performing an operation (abort). TA, G1 is AB Identify the mailbox containing the ORT-3C3I command operation, and TAG 2 , identify the command to abort. This message sends a command to the control device. Terminates its execution if it is running, or terminates its execution if it has not yet started. causes the command to be removed from the controller's queue.

RESET (リセッ1−) r −’−−−’−−−下一一下−711MESSAGE C0DE 1TAG  ITYPE 1DASD ADDR,ESS IL−一一一一一上一一工−− 工−J このメツセージは、制御装置内またはDASD内の選択された資源をリセットす るために、アダプタから制御装置に送られる。RESET (Reset 1-) r -'---'--711MESSAGE C0DE 1TAG ITYPE 1DASD ADDR, ESS IL-11111-11-- Engineering-J This message resets selected resources in the control unit or DASD. is sent from the adapter to the control device in order to

制御装置からアダプタへのメツセージ 1MESSAGECODE ITAG I LINKADDRESS 1)−− −−−−−一二一一二一−−−−一−−@lDMA 5TART ADDR,E SS (、ホスト・メモリ内)11−−−−−−−−−−−−−−一−−−−− @l DMA LENGTH(バイト) IL J これは、アダプタに、ホストのDMA、 5TART ADDR,ESS (D  MA開始アドレス)からDMA LENGTH(D M A長)だけデータを 転送するよう指令するメツセージである。、LINK ADDR,ESSは、デ ータ・パケットの宛先である、制御装置内のDMAチャネルを識別する。TAG は、データに関連するコマンドを識別する。Message from control device to adapter 1MESSAGECODE ITAG I LINKADDRESS 1) -- ------121121----1--@lDMA 5TART ADDR,E SS (in host memory) 11----------------1------ @l DMA LENGTH (byte) IL J This connects the host's DMA, 5TART ADDR, ESS (D Data by DMA LENGTH (DMA length) from MA start address) This is a message that instructs you to forward the message. , LINK ADDR, ESS is 1. Identifies the DMA channel within the control unit that is the destination of the data packet. TAG identifies commands related to data.

l MESSAGE C0DE I TAG 1)トー m−一工−−−−−− −−@ lDMA、 5TART ADDRESS (ホスト・メモリ内)lヒー−−− −−−−−−−−一−−−−−−−11DATA LENGTI(1 J これは、アダプタがまだこのTAGにDMAチャネルを割り振っていない場合に はアダプタにそれを行うよう指令し、指定されたDMA 5TART ADDR ESSから始まって指定されたDMALENGTHだけホスト・メモリへの転送 を準備するよう指令するメツセージである。アダプタは、READY−FORR EADメツセージで応答して、どのDMAチャネルがデータ・パケットの宛先と なるのかを制御装置に知らせる。l MESSAGE C0DE I TAG 1)To m-1工------ --@ lDMA, 5TART ADDRESS (in host memory) lHea--- -----------1---------11DATA LENGTI(1 J This occurs if the adapter has not yet allocated a DMA channel to this TAG. commands the adapter to do that, and the specified DMA 5TART ADDR Transfer specified DMALENGTH to host memory starting from ESS This is a message instructing people to prepare. The adapter is READY-FORR In response with an EAD message, determine which DMA channel is the destination of the data packet. Informs the control device of what will happen.

5TATUS (状況) r−一一一一一下−−下一−−コ l MESSAGE C0DE ITAG l5TATUS 1これは、TAG によって識別されるコマンドが完了した時に生成される5C3I状況を伝えるメ ツセージである。5TATUS (Situation) r-11111 lower--lower 1--ko l MESSAGE C0DE ITAG l5TATUS 1 This is TAG A message conveying the 5C3I status generated when the command identified by It is Tsage.

次に制御装置とアダプタの主な構成要素について述べる。Next, the main components of the control device and adapter will be described.

アダプタ ハードウェア アダプタ・ハードウェアの主な構成要素を第2図に示す。adapter hardware The main components of the adapter hardware are shown in FIG.

アダプタの核になるのは、マイクロプロセッサ・チップ(MPC)110であり 、これは、接続される制御装置とホスト・システムの間でのメツセージおよびデ ータの転送を制御する高性能制御装置を含む。また、2つの同一のアダプタ・リ ンク・チップ(ALC)120があり、それぞれが、マイクロチャネノベ2本の 直列リンクおよび16本のDMAチャネル(図示せず)へのインターフェースを 提供する。各直列リンクは、制御装置へまたはそこから伝送中のコマンド、デー タおよび状況用の4個の128バイト・パケット・バッファを有する。MPCと ALCの間のインターフェースは、入出力バス115である。The core of the adapter is a microprocessor chip (MPC) 110. , which handles messages and data between the attached control unit and the host system. Contains a high-performance controller that controls the transfer of data. Also, if two identical adapters There are 120 link chips (ALC), each of which can hold two microchannel novels. Serial link and interface to 16 DMA channels (not shown) provide. Each serial link is connected to the commands, data, and It has four 128-byte packet buffers for data and status. MPC and The interface between the ALCs is an input/output bus 115.

ALCの主な構成要素を第3図に示す。The main components of the ALC are shown in FIG.

データRAM データRAM121は、下記の区域を含む。data RAM Data RAM 121 includes the following areas.

1)8個の128バイト・パケット・バッファ(4個は各直列リンク用、2個は アウトバウンド用、2個はインバウンド用) 2)16個の8バイトDMAレジスタ: 各DMAチャネル毎に1個のDMAレ ジスタが設けられる。これらのレジスタは、DMAデータ転送の際に使用する。1) Eight 128-byte packet buffers (four for each serial link, two for each serial link) (one for outbound, two for inbound) 2) 16 8-byte DMA registers: one DMA register for each DMA channel. A register is provided. These registers are used during DMA data transfer.

3)アウトバウンド直列リンク・メツセージ用の32バイト・メツセージ・バッ ファ: このバッファは、高性能マイクロプロセッサが、制御装置光のREAD Y−FORREADメツセージを作成するのに使用する。適当なハードウェアを 設定することによって、その後、このバッファを制御装置に送ることができる。3) 32-byte message buffer for outbound serial link messages. F: This buffer is used by a high-performance microprocessor to read the control device light. Used to create Y-FORREAD messages. appropriate hardware By setting, this buffer can then be sent to the control device.

4)ホスト・インターフェース・レジスタ: メールボックスをアダプタに渡す 処理には、3つの内部レジスタが関係する。メールボックスおよびアダプタの動 作の″詳細は、後述する。4) Host interface register: Pass mailbox to adapter Three internal registers are involved in the process. Mailbox and adapter behavior The details of the work will be described later.

メールボックス・ポインタ・レジスタ: システムが読み書きすることのできる 4バイト・レジスタ。これは、連鎖内の最初のメールボックスを指すように、シ ステムによって初期設定される。現タグ・レジスタが最終タグ・レジスタに等し い時、または、アダプタをリセットした直後には、システムは、このレジスタを 読み取ることだけを許される。Mailbox pointer register: System can read and write 4-byte register. This points to the first mailbox in the chain. initialized by the stem. The current tag register is equal to the last tag register. The system clears this register at any time, or immediately after resetting the adapter. Only reading is allowed.

現タグ・レジスタ: これは、システムが読み書きすることのできる1バイト・ レジスタである。これを用いると、システムがアダプタの進行状況を見られるよ うになる。このレジスタは、アダプタのリセットによってクリアされ、ホストが 最終タグ・レジスタを書き込んだ直後にもクリアされる。Current Tag Register: This is a 1-byte register that the system can read and write. It is a register. This allows the system to see the progress of the adapter. I'm going to growl. This register is cleared by an adapter reset and the host Also cleared immediately after writing the last tag register.

アダプタは、メールボックスの処理を完了した後に、各メールボックスのタグを 現タグ・レジスタに記憶する。The adapter tags each mailbox after it completes processing the mailbox. Store in current tag register.

最終タグ・レジスタ: システムが読み書きすることのできる1バイト・レジス タ。このレジスタは、システムが幾つかのメールボックスを待ち行列に追加する 時に、システムによって書き込まれる。このレジスタは、最後のメールボックス に含まれるタグを示す。これによって、アダプタはリストの末尾に達した時を知 る。このレジスタに書込みが行われる時は、アダプタに対する割込みが発生する 。Final tag register: A 1-byte register that can be read and written by the system. Ta. This register allows the system to add some mailboxes to the queue. sometimes written by the system. This register is the last mailbox Indicates the tags included in. This allows the adapter to know when it has reached the end of the list. Ru. When this register is written, an interrupt is generated to the adapter. .

5)ホストからすべてのメールボックスを取り出すための32バイトのDMAパ ケット・バッファ二 制御装置向けの5CSI COMMAND、、ABORT およびRESETメツセージは、DMAバッファから直接に送られる(READ Y FOR−READメツセージは、メツセージ・バッファ内で作成され、アウ トバウンド・リンクを介して制御装置に送られる)。DMAバッファは、DMA 制御下でホスト・メモリを読み書きするのに使用できる。5) 32-byte DMA parameter to retrieve all mailboxes from host. 5CSI COMMAND, ABORT for controller/buffer controller and RESET messages are sent directly from the DMA buffer (READ Y FOR-READ messages are created in the message buffer and output (sent to the control unit via the bound link). DMA buffer is DMA Can be used to read and write host memory under your control.

データRAMは、直列リンク、マイクロプロセッサまたはリンク間転送、および 高性能マイクロプロセッサの間で時間多重化される。Data RAM can be serial links, microprocessor or link-to-link transfers, and Time multiplexed between high performance microprocessors.

状況RAM 各パケット・バッファは、それぞれパケット状況レジスタ(PSR)を必要とす る。これらのレジスタは、状況RAM122内に保持され、16ビツト幅である 。パケット・バッファおよび関連するパケット状況レジスタを、第7図に示す。Situation RAM Each packet buffer requires its own packet status register (PSR) Ru. These registers are held in status RAM 122 and are 16 bits wide. . The packet buffer and associated packet status registers are shown in FIG.

各レジスタは、下記の2つのフィールドを含む。Each register includes two fields:

DESTINATION (宛先) −アウトバウンド・データ・パケットの場 合、このフィールドは、対応するパケット・バッファの内容がそのリンクによっ て伝送される時に出力パケットのアドレス・フィールドに複写される値を含む。DESTINATION - For outbound data packets If the contents of the corresponding packet buffer are Contains the value that is copied to the address field of the output packet when it is transmitted.

この値は、送信に備えてパケットをパケット・バッファから取り出す時に、ハー ドウェアによって自動的にロードすることができる。インバウンド・パケッ)・ の場合、このフィールドは、入力パケットのアドレス・フィールドから抽出され たアドレスを含む。This value is used by the hardware when removing packets from the packet buffer in preparation for transmission. can be automatically loaded by software. Inbound packet)・ , this field is extracted from the address field of the input packet. Contains the address.

この値は、インバウンド・リンクのFSM(有限状態機械)によってPSRに書 き込まれ、その値は、このパケットの後続の経路指定を決定するのに使用される 。This value is written to the PSR by the inbound link's FSM (finite state machine). and its value is used to determine subsequent routing of this packet. .

BYTE C0UNT (バイト・カウント) −アウトバウンド・パケットの 場合、このフィールドは、対応するパケット・バッファ内に置かれているバイト 数を示す値を含む。リンクがパケットを送出する時、この値を、データ・バイト を1バイト送るごとに減分されるバイト・カウンタ (リンク・ハードウェアの 一部)に複写しなければならない。PSR内の値は、伝送中のエラーが原因でそ のパケットを再送信しなければならない場合に備えて保存される。インバウンド ・パケットの場合、このフィールドは、入力パケット内で受け取ったデータ・バ イトの数を示す値を含む。BYTE C0UNT (byte count) - of outbound packets , this field contains the bytes located in the corresponding packet buffer. Contains a value that indicates a number. When the link sends out a packet, it uses this value as a data byte. A byte counter that is decremented each time a byte is sent (link hardware must be copied in part). The value in the PSR may change due to an error during transmission. packets must be retransmitted. Inbound - For packets, this field contains the data packet received within the input packet. Contains a value indicating the number of items.

マイクロチャネル・インターフェース マイクロチャネルは、ホスト・メモリとインターフェースし、上記に定義したデ ータRAMホスト・インターフェース・レジスタを使用する。Microchannel interface The Micro Channel interfaces with the host memory and has the devices defined above. data RAM host interface registers.

DMAチャネル 各ALCには、O〜15の番号を付した16本のD M A、チャネル(図示せ ず)がある。これらのチャネルは、ホスI・・メモリとDMAパケット・バッフ ァの間でのデータのDM、A転送に使用される。DMA channel Each ALC has 16 DMAs, channels numbered 0 to 15 (not shown). ). These channels are connected to the host I...memory and DMA packet buffers. It is used for DM and A transfer of data between servers.

制御装置 ハードウェア 第4図に、制御装置の主な機能構成要素を示す。制御装置の核になるのは、MP Cチップ210であり、これは高性能制御装置(RPC)と、データ・バッファ 220との間でのデータの転送を制御するDMA制御装置とを含む。Control device hardware FIG. 4 shows the main functional components of the control device. The core of the control device is the MP C chip 210, which has a high performance controller (RPC) and a data buffer. 220.

DMAバス225は、DMA制御装置を2つの制御装置リンク・チップ230に 接続する。DMA bus 225 connects the DMA controller to two controller link chips 230. Connecting.

データ・バッファ220: アダプタとDASDの間のすべてのデータは、この データ・バッファを通過する。また、このバッファは、システムから要求される 場合に備えて、先読みデータを記憶するのにも使用される(以下の「先読み」に 関する節を参照されたい)。リンク・パケット・バッファとデータ・バッファの 間でデータを転送するため、16本のDMAチャネル(0〜ISの番号を付す) が設けられている。Data buffer 220: All data between the adapter and DASD is stored in this Pass through the data buffer. Also, this buffer is requested by the system It is also used to store read-ahead data in case the (Please refer to the relevant section). link packet buffer and data buffer 16 DMA channels (numbered 0 to IS) to transfer data between is provided.

装置(DA) リンク毎に2本のチャネルがあり、SA(直列アダプタ)リンク 毎に4本のチャネルがある。Device (DA) There are two channels per link, SA (Serial Adapter) link There are four channels for each.

データ・バッファは、DRAMモジュールのアレイからなる。このバッファ内の データは、データ保全性を確保するため、FCCと共に記憶される。データ・バ ッファは、DASD毎に7個の32にバイト・セグメントで割り振られる。1台 のDASD上で複数のタスクが実行される場合は、タスク毎に異なるセグメント が割り振られる。The data buffer consists of an array of DRAM modules. in this buffer Data is stored with the FCC to ensure data integrity. data bus Buffers are allocated in seven 32-byte segments per DASD. 1 unit When multiple tasks are executed on a DASD, each task has a different segment. will be allocated.

高性能制御装置は、制御装置リンク・チップ内で実施される一連の外部レジスタ を介して、制御装置へのインターフェースを制御する。入出力バス226は、マ イクロプロセッサが、これらのレジスタにアクセスするのに使用する。The high performance controller is a set of external registers implemented within the controller link chip. via the control interface to the control device. The input/output bus 226 used by the microprocessor to access these registers.

スタティックRAM240は、プログラムの実行に使用される。Static RAM 240 is used to execute programs.

EPROM250は、高性能制御装置の動作の際に使用されるマイクロコードを 記憶する。マイクロコードの構造と動作については、以下で詳細に説明する。EPROM250 stores microcode used in the operation of high-performance control equipment. Remember. The structure and operation of the microcode is discussed in detail below.

制御装置リンク・チップ (CLC) CLC内に含まれる主な機能区域を、第5図に示す。これらは、以下の通りであ る。Control unit link chip (CLC) The main functional areas contained within the CLC are shown in FIG. These are as follows: Ru.

1)2つのD A S D直列インターフェース(DAOおよびDAl) 2)1つのアダプタ直列インターフェース(SA)3)リンク・パケット・バッ ファ240および関連するパケット状況Iノジスタ242 パケット・バッファは、入力データと出力データを保持するのに使用される。連 続的リンク転送を行うため、A/Bバッファ実施態様を使用する。これによって 、リンクがバッファAを使用している間にD M A、論理回路がバッファBを 満たす(または空にする)ことができ、その逆も行えるようになる。このリンク が全二重であるということは、インバウンド・リンクとアウトバウンド・リンク の両方が、それぞれのパケット・バッファの組を必要とすることを意味する。制 御装置リンク・チップは、3つの直列インターフェースを含むので、これは、直 列リンクのサービスに、全体で12個のパケット・バッファが必要であることを 意味する。マイクロコードがその中で出力メツセージを作成することのできる、 追加のパケット・バッファも実施される (リンク毎にF個)。これを用いると 、高性能マイクロプロセッサが、A/Bパケット・バッファの一方をDMA転送 のサービスから引き上げずに、したがって、進行中のデータ転送に悪影響を及ぼ さずに、メツセージを作成できるようになる。1) Two DASD series interfaces (DAO and DAl) 2) One Adapter Serial Interface (SA) 3) Link Packet Back 240 and associated packet status I register 242 Packet buffers are used to hold input and output data. Communicating To perform continuous link transfers, an A/B buffer implementation is used. by this , while link uses buffer A, DM A, logic circuit uses buffer B. It can be filled (or emptied) and vice versa. this link is full duplex, which means that the inbound and outbound links means that both require their own set of packet buffers. system The controller link chip contains three serial interfaces, so this A total of 12 packet buffers are required to service the column link. means. Microcode can create output messages within it, Additional packet buffers are also implemented (F per link). Using this , a high-performance microprocessor performs DMA transfer of one of the A/B packet buffers. without withdrawing from the service and thus negatively impacting ongoing data transfers. You will be able to create messages without having to

CLC内の3つのリンクはそれぞれ、アラ1−バウンド、インバウンドまたはメ ツセージとして分類される5個のパケット・バッファを備える・ アウトバウンド: 各リンクは、DMAハードウェアのサービスを受ける2個の A/Bアウトバウンド・パケット・バッファを備える。これらのバッファは、デ ータ・バッファから得られ、DASD (DAプリンクまたはアダプタ(SAリ ンク)に送られるデータで満たされる。Each of the three links in the CLC can be one-bound, inbound, or Equipped with 5 packet buffers classified as packets. Outbound: Each link has two links serviced by DMA hardware. Provides an A/B outbound packet buffer. These buffers data buffer, DASD (DA link or adapter (SA link)) filled with data sent to the link).

インバウンド: 各リンクはまた、2個のA/Bインバウンド・パケット・バッ ファを備える。(アダプタまたはDASDからの)入力パケットが、これらのバ ッファに記憶され、入力パケットのアドレス・フィールドの内容に応じて、DM Aハードウェアまたはスピニカのサービスを受ける。Inbound: Each link also supports two A/B inbound packet packets. Equipped with fa. Incoming packets (from adapters or DASD) are DM buffer, depending on the contents of the address field of the input packet. A. Receive hardware or Spinica service.

メツセージ: 各リンク・インターフェースはまた、メツセージ・パケット・バ ッファを備える。これは、マイクロプロセッサが、アダプタまたはDASDに送 るアウトバウンド・メツセージを作成するのに使用する。Message: Each link interface also has a message packet Equipped with buffer. This is what the microprocessor sends to the adapter or DASD. used to create outbound messages.

4)DMAインターフェース論理回路: これは、DMA制御装置の監視下で、 パケット・バッファから制御装置データ・バッファにデータを転送する回路であ る。4) DMA interface logic circuit: This is under the supervision of the DMA controller, A circuit that transfers data from the packet buffer to the controller data buffer. Ru.

DMA動作 データは、アダプタと制御装置バッファの間、および装置と制御装置バッファの 間で、DMAによって転送される。制御装置のマイクロプロセッサは、制御装置 リンク・チップと共用データ・バッファの間の転送を調整するDMA制御装置を 含む。DMA operation Data is transferred between the adapter and the controller buffer, and between the device and the controller buffer. The information is transferred by DMA between the two. The control device microprocessor A DMA controller that coordinates transfers between the link chip and the shared data buffer. include.

制御装置リンク・チップには、CLC内のパケット・バッファと制御装置データ ・バッファの間でデータを転送するためのDMAインターフェースが組み込まれ ている。DMAインターフェースは、マイクロプロセッサ・チップ内に含まれる DMA制御装置によって監視される。マイクロプロセッサ・チップは、DMA要 求間のアービトレーションを行う論理回路を含む。The controller link chip contains packet buffers in the CLC and controller data. - Built-in DMA interface for transferring data between buffers ing. DMA interface is contained within the microprocessor chip Monitored by the DMA controller. Microprocessor chips require DMA Contains a logic circuit that arbitrates between requests.

DMA転送の前にアービトレーション段階があり、この間にCLCチップは、サ ービスを必要とするDMAチャネルに対する要求を示す信号を発生することがで きる。DMA制御装置は、これらの要求のうちの1つに許可を発行し、その後に CLCは転送を開始できる。各制御装置リンク・チップは、8本のDMAチャネ ルを使用して、データ転送をサービスすることができる。これらのDMAチャネ ルは、下記のように割り当てられる。There is an arbitration phase before a DMA transfer, during which the CLC chip can generate a signal indicating a request for a DMA channel that requires service. Wear. The DMA controller issues a grant to one of these requests and then The CLC can initiate the transfer. Each controller link chip has eight DMA channels. can be used to service data transfer. These DMA channels The files are allocated as follows:

チャネル0.1 +DAリンク第O番(第5図(7)DA O)チャネル2.3  :DAリンク第1番(第5図のDAI)チャネル4ないし7:アダプタ・リン ク(第5図の5A)(第2のCLCは、上記と同じ順序でチャネル8〜15を使 用する。) この配置を用いると、最高2本のDMAチャネルが各DASDにサービスできる ようになり、アダプタ・リンクは、最高4本のDMAチャネルのサービスを受け られるようになる。Channel 0.1 + DA link No. O (Figure 5 (7) DA O) Channel 2.3 : DA link No. 1 (DAI in Figure 5) Channels 4 to 7: Adapter link (5A in Figure 5) (The second CLC uses channels 8-15 in the same order as above. use ) Using this arrangement, up to two DMA channels can service each DASD. The adapter link can now service up to four DMA channels. You will be able to do it.

これらのチャネルを同時に使用して、直列リンクのパケット多重化機能を活用す ることができる。装置リンクは、アダプタ・リンクより高い優先順位を与えられ る。DMAバスを用いると、最高40 M B / sのデータ転送速度が可能 になる。Use these channels simultaneously to take advantage of the packet multiplexing capabilities of serial links. can be done. Device links are given higher priority than adapter links. Ru. Using a DMA bus, data transfer speeds of up to 40 MB/s are possible become.

パケット・バッファからデータ・バッファへの32バイト(DA)転送には、約 1.2マイクロ秒を要する。128バイト(SA)転送には、3゜6マイクロ秒 を要する。A 32 byte (DA) transfer from the packet buffer to the data buffer takes approximately It takes 1.2 microseconds. 3°6 microseconds for 128 byte (SA) transfer It takes.

アービトレーション中に、各CLCが、下記のようにDMAバス上に要求を出す 。During arbitration, each CLC issues a request on the DMA bus as follows: .

記憶(バッファへの書込み): インバウンド・リンク・パケットのアドレス・ フィールドが、そのデータがDMAチャネル宛であることを示す場合、そのパケ ットの受信時にDMA要求が出される。Storage (writing to buffer): Address of inbound link packet. If the field indicates that the data is destined for a DMA channel, then the packet A DMA request is issued upon receipt of a request.

取出しくバッファからの読取り): あるDMAチャネルに関連するリンク・パ ケット・バッファの一方または両方が空である場合、そのDMAチャネルに対す るDMA要求が出される。(reading from a buffer): reading the link parameters associated with a certain DMA channel. If one or both packet buffers are empty, the A DMA request is issued.

DMA記憶動作: DMA記憶動作は、インバウンド・パケット・バッファを空 にするのに使用される。DMA store operation: A DMA store operation empties the inbound packet buffer. used to make

DMA取出し動作: DMA取出し動作は、アウトバウンド・パケット・バッフ ァを満たすのに使用される。それぞれの転送は、通常は1個のパケット・バッフ ァ全体に対するものである。DMA retrieval operation: A DMA retrieval operation is performed using the outbound packet buffer. used to meet the requirements. Each transfer typically uses one packet buffer. This is for the whole area.

コマンド記述子待ち行列 CDB (さらにABORTおよびRESETを含む)は、初めてそれを受け取 ツタ時、SA RECEIVE MESSAGE (S A受信メツセージ)プ ロセスの制御下で、コマンド記述子待ち行列項目(CDQE)に記憶される。command descriptor queue CDB (also including ABORT and RESET) the first time it is received. At the time of ivy, SA RECEIVE MESSAGE (SA receive message) command descriptor queue entries (CDQEs) under the control of the process.

空き待ち行列: 最初は、すべてのCDQEが空きである。Free queue: Initially, all CDQEs are free.

空き待ち行列は、1つの要素が次の要素を指しており、これによってすべての空 きCDQEを発見できるようになっているという点でのみ待ち行列である。項目 の順序には意味がない。A free queue is one where one element points to the next It is a queue only in that it allows CDQE to be discovered. item The order of is meaningless.

新規コマンド待ち行列: 新規のコマンドが到着する時、SAタスクが、そのコ マンドを空き待ち行列の先頭にあるCDQEに複写する。このCDQEは、空き 待ち行列から削除され、新規コマンド待ち行列に追加される。打切りメツセージ も、CDQEに入れられ、新規コマンド待ち行列に追加される。New command queue: When a new command arrives, the SA task copy the command to the CDQE at the head of the free queue. This CDQE is empty Removed from queue and added to new command queue. Termination message is also placed in the CDQE and added to the new command queue.

装置コマンド待ち行列: 装置毎に1つずつ合計4つの装置コマンド待ち行列が ある。各待ち行列は、それ自体のCOMMAND (コマンド)プロセスによっ てサービスを受ける。Device command queue: There are four device command queues, one for each device. be. Each queue is run by its own COMMAND process. service.

QUEUE MANAGER(待ち行列マネジャ)プロセスは、新規コマンド待 ち行列のCDQE内で新規コマンドを発見した時、それの宛先となっている装置 を見つけ、対応する装置コマンド待ち行列にこのCDQEを転送する。The QUEUE MANAGER process waits for new commands. When a new command is found in the CDQE matrix, the device to which it is directed and forwards this CDQE to the corresponding device command queue.

メツセージ待ち行列: コマンドの処理が完了した時、そのCDQEに、関連す るCOMMANDプロセスによってSC8:[状況メツセージがロードされ、そ のCDQEは、装置コマンド待ち行列から移される。メツセージ待ち行列は、し たがって、SA TRANSM工T MESSAGE (S A送信メツセージ )プロセスに対する要求の待ち行列である。Message queue: When the processing of a command is completed, the associated SC8: [Status message is loaded by the COMMAND process that CDQE is removed from the device command queue. The message queue is Therefore, SA TRANSM T MESSAGE (SA transmission message ) is a queue of requests for a process.

同一の待ち行列が、異なるアダプタ・リンクを介して受信されるコマンドに使用 される。The same queue is used for commands received over different adapter links be done.

待ち行列連係: 空き待ち行列、新規コマンド待ち行列およびメツセージ待ち行 列の先頭ポインタおよび末尾ポインタは、メツセージ制御ブロック(MCB)内 のフィールドである。Queue linkage: Free queue, new command queue and message queue The column start and end pointers are located in the message control block (MCB). field.

装置コマンド待ち行列の先頭ポインタおよび末尾ポインタは、対応する装置制御 ブロック(DCB)内にある。先頭ポインタは、待ち行列の第1要素のアドレス を保持する。末尾ポインタは、最終要素のアドレスを保持する。The head and tail pointers of the device command queue are set to the corresponding device control It is in the block (DCB). The start pointer is the address of the first element in the queue. hold. The tail pointer holds the address of the last element.

各CDQEは、「次」ポインタを含む。CDQEは、複数の待ち行列のどれに含 まれてもよいが、1つのCDQEが同時に複数の待ち行列に含まれてはならない 。Each CDQE includes a "next" pointer. CDQE is not included in any of the multiple queues. A CDQE may not be included in more than one queue at the same time. .

次にアダプタおよび制御装置の動作について述べる。Next, the operation of the adapter and control device will be described.

アダプタ 動作 高速マイクロプロセッサ内で定義されたタスクが、アダプタの動作を制御する。adapter motion A task defined within a high speed microprocessor controls the operation of the adapter.

タスクは、割込みによって開始されるが、これは、ハードウェア事象からのもの でも、別のタスクからのソフトウェア割込みを介するものでもよい。ソフトウェ ア割込みとは、あるタスクが別のタスクに対して割込みをセットすることのでき る手段である。異なるタスク間の通信を第6図に示す。A task is started by an interrupt, which is caused by a hardware event. However, it may also be via a software interrupt from another task. software An interrupt is the ability for one task to set an interrupt for another task. It is a means of Communication between different tasks is shown in FIG.

タスク 状況: 状況タスクは、ホスI・・システムに提示すべき状況を管理する責任を 負う。状況は、他のタスクのうちの1つからこのタスクに渡され、またこれをハ ードウェアに書き込むことによって直接に提示されることもある。task Status: The status task is responsible for managing the status to be presented to the host I... system. bear. Status is passed to this task from one of the other tasks and is It may also be presented directly by writing to the hardware.

リンク;制御装置への4本の直列リンクを処理するために、1つのリンク・タス クがある。このタスクは、制御装置から受け取ったすべてのメツセージを解釈し 、適当な処置を取る責任を負う。Links; one link task to handle four serial links to the control unit There is a problem. This task interprets all messages received from the control device. , shall be responsible for taking appropriate measures.

メールボックス: 、二のタスクは、ホスト・システムからのメールボックス・ インターフェースを管理する。このタスクは、システムから各メールボックスを 受け取る責任を負う。Mailbox: The second task is to retrieve the mailbox from the host system. Manage interfaces. This task deletes each mailbox from the system. be responsible for receiving.

そのメールボックスが5END−SC5I (S CS I送出)コマンドであ る場合、そのコマンドをリンク・タスクに渡して、適当な制御装置に送る。The mailbox is the 5END-SC5I (SCS I send) command. If so, it passes the command to the link task and sends it to the appropriate controller.

(他にも定義されているタスクがあるが、この説明に直接には関係ないので説明 しない) ホスト・プロセッサから指令を受けた時、ア夛ブタは、ホスト・メモリからコマ ンドを取り出し、実行のためこれらを即座に適当な制御装置に転送する。コマン ドを取り出すための機構は、ホスト・システムのアーキテクチャに依存し、それ に応じて変わる。本明細書では、下記の機構をマイクロチャネル上で使用する。(There are other tasks defined, but they are not directly related to this explanation, so I will explain them here.) do not) When commanded by the host processor, the attacker extracts frames from host memory. commands and immediately transfers them to the appropriate control device for execution. command The mechanism for retrieving the code depends on the host system architecture and It changes depending on. Herein, the following mechanism is used on microchannels.

ホスト・システムは、ホスI・・メモリ内で作成されるメールボックスを使って サブシステムの動作を開始させる。各メールボックスは、特定のコマンドを識別 する一義的タグを含んでいる。たとえば、ホストがある動作をサブシステム内で 開始しようと望む時、ホスI・は、次に使用可能なメールボックス内でその動作 を作成し、最終タグ・レジスタに書き込む。The host system uses mailboxes created in memory. Start subsystem operation. Each mailbox identifies a specific command Contains a unique tag that For example, a host performs certain behavior within a subsystem. When it wishes to start, the host will start its operation in the next available mailbox. and writes it to the final tag register.

最終タグ・レジスタに書き込むと、アダプタ・マイクロプロセッサ内のメールボ ックス・タスクに割込みがかかる。メールボックス・タスクは、ホスト・メモリ からアダプタ・リンク・チップのうちの指定された1つ(マスク・チップ)の3 2バイI−D M A、バッファにメールボックスをDMA転送するよう、アダ プタ・ハードウェアに指令する。ホストからのすべてのメツセージが1、二のマ スク・チップ向けとなる。Writing to the final tag register causes the mailbox in the adapter microprocessor to The box task is interrupted. The mailbox task uses host memory 3 of the designated one of the adapter link chips (mask chip) from 2-by I-D M A, the adapter to DMA transfer the mailbox to the buffer. commands to the adapter hardware. All messages from the host are sent to one or two It is intended for school chips.

いったんDMAバッファに入ると、メールボックス・タスクがそのメールボック スを復号して、そのメールボックスの内容によって定義される動作の種類を決定 し、それが5END−5C3Iコマンドであると判った場合は、そのメールボッ クスが、適当な制御装置に送るためにSO3jcOMMANDメツセージに変換 される。SC5jcOMMANDメツセージは、メツセージ・パケットのデータ ・フィールド中で、32バイトのDMAバッファからリンク上を送られる。この パケットのアドレス・フィールドは、宛先のアドレスを含む。この場合は、宛先 は制御装置マイクロプロセッサである。コマンドが、マスク・チップのサービス を受けていない制御装置を宛先とするものである場合は、そのコマンドは、他の ALC内のDMAバッファに複写され、直列リンク上を送られる。Once in the DMA buffer, the mailbox task decrypt the mailbox to determine the type of behavior defined by the contents of that mailbox. and if it turns out to be a 5END-5C3I command, the mailbox message into a SO3jcOMMAND message for sending to the appropriate control device. be done. The SC5jc OMMAND message is the data of the message packet. - Sent over the link from a 32-byte DMA buffer in the field. this The address field of the packet contains the address of the destination. In this case, the destination is the control unit microprocessor. The command is to service the mask chip. If the command is directed to a control unit that has not been Copied to a DMA buffer in the ALC and sent over the serial link.

ホストは、多くの異なる動作ならびに5END 5C3Iコマンドを定義してい るが、それらの多くはアダプタによって実行され、制御装置に送る必要がない。The host defines many different operations as well as 5END and 5C3I commands. However, many of them are performed by adapters and do not need to be sent to the controller.

ただし、2つの動作すなわちABORT−3C5I COMMANDとRESE Tは、ABORTメツセージおよびRESETメツセージの形で適当な制御装置 に渡される。これらのメツセージのフォーマットの詳細は、前述のアダプタ/制 御装置メツセージのリスI・にある。However, two operations namely ABORT-3C5I COMMAND and RESE T is a suitable control device in the form of ABORT and RESET messages. passed to. For details on the format of these messages, please refer to the adapter/controller mentioned above. It is in the control device message list I.

ABORT−5CSI COMMANDとRESETの動作は、アダプタによっ て、5END 5C3I COMMANDと基本的に同じように処理される。メ ールボックス・タスクは、メールボックスを復号し、A、BORTメツセ−ジま たはRESETメツセージをDMAバッファから適当な制御装置に送る。この場 合も、どの制御装置を宛先とするかに応じて、そのメツセージを第2のALCの DMAバッファに複写する必要が生じることもある。ABORT-5CSI COMMAND and RESET operations depend on the adapter. It is basically processed in the same way as 5END 5C3I COMMAND. Mail The mailbox task decrypts the mailbox and sends it to A, BORT message or or RESET message from the DMA buffer to the appropriate controller. this place If so, the message is sent to the second ALC, depending on which control device it is addressed to. It may also be necessary to copy to a DMA buffer.

アダプタは、コマンドを発行する毎にタイマを起動する。The adapter starts a timer every time it issues a command.

これは、ホスト・システムに多数のタイマという負担を負わせずに、コマンドの 脱落や制御装置の中断を検出するのに役立つ。アダプタ遊休タスクが、周期的に タイマを更新し、動作が時間切れになっていないか検査する。This allows commands to be executed without burdening the host system with numerous timers. Useful for detecting dislodgements and control equipment interruptions. Adapter idle tasks periodically Update the timer and check if the operation has timed out.

制御装置 動作 制御装置の動作は、スピニカ・マイクロプロセッサに含まれるマイクロコード内 で定義されたタスクを使って行われる。Control device motion The operation of the control unit is performed within the microcode contained in the Spinica microprocessor. This is done using tasks defined in .

このプロセッサ内では、8つのタスクが定義されている。それには、下記のもの がある。Eight tasks are defined within this processor. For that, the following There is.

それぞれの装置とのインターフェースを管理する4つの装置(DA)タスク。Four device (DA) tasks manage the interface with each device.

アダプタおよびホストとのインターフェースを管理する1つのSAタスク。One SA task to manage adapters and interfaces with hosts.

全体制御に関するタスクであるコマンド制御タスク。新規の5csrコマンドは 、SAタスクからこのタスクに渡される。このタスクは、これらのコマンドを待 ち行列に入れ、復号し、命令をSAタスクと適当な装置タスクに送る。SAタス クとDAタスクは、データ転送を実行する。Command control tasks are tasks related to overall control. The new 5csr command is , passed from the SA task to this task. This task waits for these commands. It is then queued, decoded, and sends the instruction to the SA task and the appropriate device task. SA Tas The task and DA task perform data transfer.

制御装置は上記のタスクを使用するが、SAタスクとコマンド制御タスクは、サ ブタスクの概念を介して拡張される。The controller uses the above tasks, but the SA task and the command control task are Expanded through the concept of Butask.

制御装置は、独立のタスクまたは1タスク内のサブタスクとして実施される多数 のプロセスを有する。サブタスクは、サブタスク・スケジューラの制御下で実行 される。The controller can perform multiple tasks that are implemented as independent tasks or as subtasks within one task. process. Subtasks run under the control of a subtask scheduler be done.

第6図は、異なるプロセス間の通信を示すブロック図である。FIG. 6 is a block diagram showing communication between different processes.

制御ブロックは、この通信の際に、次のように使用される。The control block is used during this communication as follows.

あるプロセスが、制御ブロックに情報を入れ、別のプロセスに通知する。後者の プロセスは、その制御ブロック内の情報にアクセスする。制御ブロックは、プロ セス間でバスされる。One process puts information in a control block and notifies another process. the latter A process accesses information within its control blocks. The control block is professional Bused between sessions.

制御装置のプロセス SA RECEIVE MESSAGE (S A受信メツセージ’) (SA RXMSG)このプロセスは、アダプタから制御装置に送られるすべてのメツセ ージ、すなわち、5C3I COMMAND、 ABORT、 RESETおよ びREADY−FOR−READを処理する (これらのメツセージのフォーマ ットは、本明細書の他所にある)。アダプタからのメツセージ・パケットは、C LCのインバウンド・パケット・バッファで受信される。入力パケットのアドレ ス・フィールドの内容によって、そのパケットがメツセージとして識別され、高 性能制御装置のサービスを受ける。そのメツセージが、新規のCOMMAND、  ABORTまたはRESETである場合には、5ARECEIVE MESS AGEプロセスが、それをコマンド記述子待ち行列項目(CDQE)の空き待ち 行列の先頭に複写する。このCDQEは、その後QUEUE MANAGERプ ロセスに待ち行列登録される。そのメツセージがREADY−FORREADで ある場合には、そのメツセージは、適当なSA XFER(S A転送)プロセ ス(すなわち、読み取るべきデータを含む装置に関連するプロセス)に渡される 。control device process SA RECEIVE MESSAGE RXMSG) This process handles all messages sent from the adapter to the controller. 5C3I COMMAND, ABORT, RESET and and READY-FOR-READ (the format of these messages ). The message packet from the adapter is C Received in the LC's inbound packet buffer. Input packet address The contents of the field identify the packet as a message and Service performance control equipment. That message is a new COMMAND, If ABORT or RESET, 5ARECEIVE MESS The AGE process waits for a free command descriptor queue entry (CDQE). Copy to the beginning of the matrix. This CDQE is then used by the QUEUE MANAGER program. queued to the process. That message is READY-FORREAD In some cases, the message is sent to the appropriate SA XFER (SA forwarding) process. (i.e. the process associated with the device containing the data to be read) .

QUEUE MANAGER(待ち行列マネジャ)このプロセスは、コマンド制 御タスクのサブタスクであり、SA RECEIVE MESSAGEプロセス からの割込みを処理する。通常は、メツセージは5C3I COMMANDメツ セージであるが、ABORTまたはRESET(7) : トもある。SA R ECEIVE MESSAGEプロセスハ、そのメツセージをCDQEに複写し 、そのCDQEを空き待ち行列から「新規コマンド待ち行列」に移した後に、こ のプロセスに通知しており、次いでこのプロセスは、「新規コマンド」待ち行列 から装置固有の待ち行列にコマンドを移し、適当なコマンド・プロセスに通知す る。QUEUE MANAGERプロセスは、どのCOMMANDプロセスに通 知すべきかを決定するために、メツセージの制限付きの処理を幾つか実行する。QUEUE MANAGER This process is a command SA RECEIVE MESSAGE process is a subtask of the SA RECEIVE MESSAGE process. Handle interrupts from Usually, the message is 5C3I COMMAND message. ABORT or RESET (7): is also available. SA R ECEIVE MESSAGE process copies the message to CDQE. , after moving that CDQE from the free queue to the "new command queue". process, which then waits in the ``new command'' queue. to a device-specific queue and notify the appropriate command process. Ru. The QUEUE MANAGER process is connected to which COMMAND process. Perform some limited processing of the message to determine if it should be known.

COMMAND (コマンド) コマンド・プロセス(コマンド制御タスクの4つのサブタスクのうちの1つ)は 、装置コマンド待ち行列上のSC3Iコマンドを処理する。コマンド・プロセス には、並列に走行する4つ(サポートされる4台の装置のそれぞれに1つずつ) のインスタンスがある。通常は、各プロセスがそのプロセスの装置に宛てられた コマンドを処理する。COMMAND (command) The command process (one of the four subtasks of the command control task) , processes SC3I commands on the device command queue. command process has four running in parallel (one for each of the four supported devices) There is an instance of Typically, each process is addressed to its device. Process commands.

各コマンド・プロセスが、1つのコマンドをその待ち行列から取り上げ、 それがこの時点での実行するのに有効であることを確認し、個々のコマンドを処 理するルーチンを呼び出し、そのルーチンが、 そのコマンドの妥当性検査を行い、 SA XFER(S A)プo セx トDEVICE (DA)プo−t=ス ニ指令し、 SAとDAが完了するまで中断し、 SC3I状況を返し 通常は、SA TR,ANSMIT MESSAGEプロセスに通知して、SC 8工状況をアダプタに送る。Each command process picks up one command from its queue and Process each individual command, making sure it is valid to run at this point. calls a routine that handles Validate that command and SA 2 commands, Pause until SA and DA are completed, Return SC3I status Normally, the SA TR, ANSMIT MESSAGE process is notified and the SC 8 Send the work status to the adapter.

装置待ち行列が空になるまでその待ち行列内のコマンド毎にこの手順を繰り返し 、その後、この手順は、中断状態になり、QUEUE MANAGERプロセス が新規コマンドを待ち行列に追加した時に再開される。Repeat this step for each command in the device queue until the device queue is empty. , then this procedure goes into a suspended state and the QUEUE MANAGER process restarts when it adds a new command to the queue.

DEVICE(装置) 装置毎に1つのプロセスがある(別々のタスクとして実施される)。DAプロセ スは、COMMANDプロセスからの下記の要求を処理する。DEVICE There is one process per device (implemented as a separate task). DA process The process handles the following requests from the COMMAND process.

1)読取り 適当なルーチンを呼び出して、COMMANDプロセスが要求(、た読取りコマ ンドを処理する。このルーチンは、適当なりASDに5EEK (シーク)副指 令を発行し、DMAの初期設定すなわちDMAチャネルの割振りを行い、使用可 能なバッファ・サイズを計算し、使用可能な空間が存在する場合は、READ副 指令を用意し、これをDASDに対して発行し、そのDASDが、DASDから 制御装置内のデータ・バッファへのデータ転送を開始する。DMAアトIノスが 、READ副指令内でDASDに渡され、これを入力データ・パケットのアドレ ス・フィールド内で使用して、データの宛先を識別する。1) Read The COMMAND process requests (reads) the command by calling the appropriate routine. process the command. This routine sets the 5EEK (seek) secondary finger to the appropriate ASD. issue a command, perform initial DMA settings, that is, allocate a DMA channel, and make it available for use. Calculate the available buffer size and, if there is space available, Prepare a command, issue it to the DASD, and the DASD Begins data transfer to the data buffer in the control unit. DMA At I Nos , passed to DASD in the READ subcommand and assigns it to the address of the input data packet. used within a field to identify the destination of the data.

2)書込み この時、下記の要求ならびに工つフォーマットなどの他の専用コマンドがまだ発 行されていない場合に、5EEK副指令を発行する。2) Write At this time, the following requests and other special commands, such as the process format, may still be issued. If the command has not been executed, a 5EEK subcommand is issued.

3)現動作延長 4)事象停止 COMMANDプロセスは、下記の3つの事象のうちの1つを通知することによ って、DEVICEプロセスと通信する。3) Extension of current operation 4) Event stop The COMMAND process responds by notifying one of three events: and communicates with the DEVICE process.

NEWREQ 新規の要求が開始されたことを装置プロセスに知らせる。NEWREQ Informs the device process that a new request has started.

EXTREQ この事象は、要求を延長するのに使用する。EXTREQ This event is used to extend a request.

5TOP 装置プロセスに、現在進行中のすべての作業を停止するよう指示する 。5TOP Instruct the device process to stop all work currently in progress .

COMMANDプロセスからの要求を受け取った時、DEVICEプロセスは、 適当なりASD副指令を直列リンク上に送ることによって、DASDに対する適 当な処置を開始する。Upon receiving a request from the COMMAND process, the DEVICE process: By sending the appropriate ASD subcommands on the serial link, you can Start appropriate measures.

DASD副指令は、制御装置によって生成される低水準の読み書き副指令である 。制御装置がデータを読み書きできるようにするために下記の副指令が設けられ ている。以下で定義する副指令はそれぞれ、パケットのデータ・フィールド内で 直列リンクを介してDASDに送られる。すべての「副指令」パケットは、実行 のため、またはDASD内の他の構成要素への分配のため、DASD内のマイク ロプロセッサを宛先とする。DASD subcommands are low-level read/write subcommands generated by the controller. . The following subcommands are provided to enable the control device to read and write data. ing. Each of the subdirectives defined below is Sent to DASD via serial link. All "subdirective" packets are executed Microphones within the DASD for distribution to other components within the DASD destination processor.

10RDERC0DE ICYLINDERIHEAD IL−一一−−二−− 一一工一−」 これは、DASDに、先読み(アクティブの場合)を中止し、指定されたシリン ダおよびヘッドにシークするよう指令する副指令である。また、書込みコマンド の場合、単独のシーク副指令を用いると、制御装置は、コマンドを復号した直後 に、アダプタから書込みデータを受け取るのを待たずに、シークを開始できるよ うになる。DASDが読取り副指令または延長読取り副指令を完了する前に(状 況パケットが返されていない) 、5TOP (停止)副指令が発行される場合 、DASDは、即座にその読取り動作を打ち切り、5TOP AND 5EEK 副指令で指定されたシリンダおよびヘッドへのシークを開始し、打ち切られたR 、EAD (読取り)副指令の状況パケットを返す。10RDERC0DE ICYLINDERIHEAD IL-11--2-- 11th work 1-” This tells DASD to stop reading ahead (if active) and start reading the specified serial number. This is a subcommand that instructs the data and head to seek. Also, write command If a single seek subcommand is used, the controller immediately decodes the command Now you can start seeking without waiting for write data to be received from the adapter. I'm going to growl. Before the DASD completes a read subcommand or extended read subcommand (condition status packet is not returned), 5TOP (stop) subcommand is issued , DASD immediately aborts its read operation and 5TOP AND 5EEK R that started a seek to the cylinder and head specified by the subcommand and was aborted. , EAD (read) returns the status packet of the subcommand.

5TOP副指令の場合は状況パケットを送らない。In the case of 5TOP subcommand, no status packet is sent.

また、この副指令は、アダプタからABORT−5I”:S Iコマンド・メツ セージを受け取った時にD A S Dに送られる。この場合、シーク動作は開 始されない。Also, this subcommand is the ABORT-5I”:SI command from the adapter. When you receive the sage, it will be sent to DASD. In this case, the seek operation is It doesn't start.

READ (読取り)副指令 ロー −r ’−−下一一一一下−−下一一下一一−コ10RDERC0DE  1ADDRESS ICYLINDERIHEAD ILBAICOUNT 1 ヒーーーーー工−−−一上−−−−−工−−工−−工−−−」これは、DASD に、特定の論理ブロック・アトI/ス(LBA)を探索し、指定された数のブロ ックを読み取るよう指令する副指令である。パラメータは以下の通りである。READ sub-command Low -r'--Lower 1111--Lower 11 Lower 11-Co10RDERC0DE 1ADDRESS ICYLINDERIHEAD ILBAI COUNT 1 This is the DASD searches for a specific logical block address (LBA) and returns the specified number of blocks. This is a subcommand that instructs to read the block. The parameters are as follows.

シークの検査用の物理シリンダ(CYLINDER)と物理ヘッド(HEAD)  、論理ブロック・アドレス(LBA) 、および読み取るべきブロックの数の カウント(COUNT)。さらに、アドレス・フィールド(A、DDRESS  )は、この副指令の結果として返されるスヘてのデータ・パケットのアドレス・ フィールドに置かれるバイトを含む。Physical cylinder (CYLINDER) and physical head (HEAD) for seek inspection , the logical block address (LBA), and the number of blocks to read. Count (COUNT). Furthermore, the address field (A, DDRESS ) is the address of the entire data packet returned as a result of this subdirective. Contains the bytes placed in the field.

DASDは、要求されたデータを制御装置に送り、各ブロックの末尾にあるFC Cバイトを検査する。DASDが、欠陥ありとマークされたブロックに遭遇した 場合は、それらのブロックを自動的にスキップする。最後に、DASDは、エラ ーが検出されたか否かを示す状況を返す。The DASD sends the requested data to the control unit and the FC at the end of each block. Examine the C byte. DASD encounters a block marked as defective If so, those blocks will be automatically skipped. Finally, the DASD Returns a status indicating whether or not the

C0NDTTIONAL R’EAD (条件付き読取り)副指令この副指令は 、READ副指令と同じフォーマットを有し、選択されたシリンダおよびヘッド ・アドレスへのシーク動作を呼び出す。この副指令に含まれるLBAに対応する セクタの位置が指定され、カウント・フィールドで指定された数のI/コードが 、ディスクから読み取られる。アト1/ス・フィールドは、この副指令の結果と して返されるすべてのデータ・パケットのアドレス・フィールドに置かれるバイ トを含む。C0NDTTIONAL R’EAD (conditional read) subcommand This subcommand is , has the same format as the READ subcommand, and has the selected cylinder and head - Call a seek operation to the address. Corresponds to the LBA included in this sub-directive The sector location is specified and the number of I/codes specified in the count field is , read from disk. The at1/s field is the result of this sub-command. Bytes placed in the address field of every data packet returned by Including.

CoNDI丁l0NA、JREAD副指令が制御装置によって発行されるのは、 ホストが要求する読取りデータの量が、選択された量より多い時だけであること に留意されたい。要求されたデータの量が少ない場合には、C0NDITTON AL READの使用は保証されない。CoNDI DIN10NA, JREAD subcommand is issued by the control device when: Only when the amount of read data requested by the host is greater than the selected amount Please note that. If the amount of data requested is small, C0NDITTON Use of AL READ is not guaranteed.

このM指令を用いると、以下で詳細に説明する分割読取り動作が可能になる。Use of this M command enables a divided reading operation, which will be described in detail below.

WRITE (書込み)副指令 これは、D A、 S Dに、特定のLBAを探索し、指定された数のブロック を書き込むよう指令する副指令である。パラメータは、READ副指令(上記参 照)と同じであるが、書き込むべきデータを制御装置が供給する点が異なる。さ らに、アドレス・フィールドは存在しない。WRITE subcommand This searches for a specific LBA in DA, SD, and creates a specified number of blocks. This is a subcommand that instructs to write. The parameters are the READ subcommand (see above). (see), except that the control device supplies the data to be written. difference Additionally, there is no address field.

C0NDITIONAI、WRITE (条件付@書込ミ)副指令条件付き書込 み副指令は、WRITE副指令と同じフォーマットを有する。C0NDITIONAI, WRITE (conditional @ write mi) subcommand conditional write The read subcommand has the same format as the WRITE subcommand.

EXTEND (延長)副指令 r ””r−一下一一−コ 1ORDERCODEILBA1COUNTIL−−−一一工−−工−−−」 これは、前のREAD副指令、C0NDITIONAL−READ副指令、WR ITE副指令またはC0NDITIONAL WRITE副指令の動作を延長す る副指令である。「カウントJ (COUNT)は、現副指令が完了した後に読 み取るまたは書き込む必要のある個々のセクタの数を指定するパラメータである 。EXTEND subcommand r ””r-Ichige Ichi-ko 1ORDERCODEILBA1COUNTIL---11 工--- 工---" This is the previous READ subcommand, C0NDITIONAL-READ subcommand, WR Extends the operation of the ITE subcommand or C0NDITIONAL WRITE subcommand. This is a subcommand. "Count J (COUNT) is read after the current subcommand is completed. is a parameter that specifies the number of individual sectors that need to be read or written. .

LBAは、最初に読み取るまたは書き込むべきブロックのアドレスを定義するフ ィールドである。この値は、連続的な読取りまたは書込みが必要な場合、前の副 指令によって読み取られた、または書き込まれた最後のブロックのLBAよりも 1つ大きい値になる。LBAフィールドが、前の副指令の最後のLBAの後の最 初のブロックではない場合は、これらのLBAの間にあるブロックはスキップさ れ、読取りも書込みも行われない。LBA is a file that defines the address of the first block to be read or written. field. This value is used for previous sub-seconds if sequential reads or writes are required. than the LBA of the last block read or written by the command The value becomes one larger. The LBA field is the last LBA after the last LBA of the previous subdirective. If it is not the first block, blocks between these LBAs are skipped. and no reads or writes are performed.

EXTEND副指令が有効になるためには、DASDは、前の副指令が完了する 前にEXTEND副指令を受け取らなければならない。制御装置は、EXTEN Dを使って連続的書込みを実行し、または先読みを継続する。これらの動作は、 以下で詳細に説明する。For the EXTEND subcommand to take effect, the DASD must complete the previous subcommand. The EXTEND subcommand must be received before. The control device is EXTEN Use D to perform continuous writes or continue reading ahead. These actions are This will be explained in detail below.

動作全体が完了した時、コマンド・プロセスに適当な事象が通知される。When the entire operation is complete, the command process is notified of the appropriate events.

SA XFER(S A転送) これは、ホストと制御装置内の読取リバッファの間またはホストと制御装置内の 書込みバッファの間でデータを転送する、装置ごとのプロセスである。COMM ANDプロセスは、5AXFERプロセスに対して下記のコマンドを発行できる 。SA XFER (SA transfer) This is between the read rebuffer in the host and the control unit or between the host and the control unit. A per-device process that transfers data between write buffers. COMM The AND process can issue the following commands to the 5AXFER process: .

5end Read Data (読取りデータ送出)Get Write D ata (書込みデータ取得)Stop Current Transfer  (現転送停止)データ転送の実行に必要なパラメータは、制御ブロック内でCO MMANDプロセスからSA XFERプロセスに渡される。5end Read Data (send read data) Get Write D ata (write data acquisition) Stop Current Transfer (Current transfer stopped) The parameters necessary to execute the data transfer are stored in the control block. Passed from the MMAND process to the SA XFER process.

SA TRANSMIT (S A送信) (SATXMSG)これは、他のプ ロセスに代わってメツセージ(READY FOR−WRITE、 DATA− READYオヨび5TATUS) ヲ7タプタニ送ルプロセステアル。READ Y FORWRITEトDATA READYt!、SA XFERフo セス からこのプロセスに渡され、5TATUSメツセージは、COMMANDプロセ スから渡される。SA TRANSMIT (SATXMSG) This is used by other programs. Message on behalf of Rocess (READY FOR-WRITE, DATA- READY order 5 TATUS) 7. READ Y FORWRITE DATA READYt! , SA The 5TATUS message is passed to this process from the COMMAND process. Passed from.

読取り動作と書込み動作の例 次に、ホストからのコマンドの受取りに始まり、ホストへの完了状況の提示まで の典型的な読取り動作と書込み動作の例を記す。Examples of read and write operations Next, it begins with receiving commands from the host and ends with presenting completion status to the host. Examples of typical read and write operations are given below.

読取り動作の例 アダプタ 制御装置 DASD SC5I COMMAND (READ 4K) −−>コマンドを待ち行列に 登録 コマンドを復号 コマンドを検索 LBAを物理アビレスに変換 先読停止 <−−−−−−−−−−−−−−−−−−3TATUSハゝブフアを割り振る  シーク DASD DMAを初期設定 C0NDIT工0NAL READ (32K) −>・シーク完了 LBA探索 読取り <−−−−−−−−−−−−−−−−−DATAハ゛フファに最初のテ゛−夕が 入る ホス1−DMAを初期設定 SA DMAを初期設定 〈−−−一〜−−−−−−−DATA PACKETS最後のテ゛−タを送る <−−−−−−−−−−−−5CSjSTATUS状況を待ち行列に登録 EX TEND (4K) −−−−−−−−−−−> ・状況を提示 先読みテ゛−夕をセーフ゛ <−−−−−−一−−−−−−−−−−STA丁じS読取り 1、アダプタが、CDB内にREAD動作を含む5CSI COMMANDメツ セージを制御装置に送る。このメツセージは、読取りデータの転送元であるDA SDのアドレスと、そのデータの送り先になるホスト・メモリ内のアドレスを含 む。Example of read operation Adapter Control device DASD SC5I COMMAND (READ 4K) --> Queue command Registration decrypt command search command Convert LBA to physical aviles Prefetch stop <−−−−−−−−−−−−−−−−−−3TATUS hub hub allocation  seek Initialize DASD DMA C0NDIT 0NAL READ (32K) ->・Seek complete LBA search reading <−−−−−−−−−−−−−−−−−The first data is in the DATA buffer. enter Initialize host 1-DMA Initialize SA DMA <---1~---------DATA Send the last data of PACKETS <------------5CSj STATUS Register status in queue EX TEND (4K) −−−−−−−−−−−>・Show the situation Look-ahead data - Safe data <---------1----------STA reading S 1. The adapter has a 5CSI COMMAND message that includes READ operation in the CDB. Send the message to the control device. This message is sent to the DA from which the read data is being transferred. Contains the address of the SD and the address in host memory to which the data will be sent. nothing.

2、制御装置が、上述の通りにコマンドを処理し、装置タスクに制御を渡す。こ の装置タスクは、D A、 S Dに5TOP−AND−5EEK副指令を送る 。これによって、現在活動状態の先読み動作があれば打切られる。、(現在活動 状態の先読み動作がない場合は、この副指令は送られない)。2. The controller processes the command as described above and passes control to the device task. child The device task sends 5TOP-AND-5EEK subcommands to DA and SD. . This causes any currently active read-ahead operations to be aborted. , (currently active If there is no state read-ahead operation, this subcommand will not be sent.)

3、DASDが、先読み動作打切り状況を示す5TATUSを制御装置に返し、 その後、指定されたヘッドおよびシリンダへのシークを開始する。3. The DASD returns 5TATUS indicating the abort status of the prefetch operation to the control device, Then, seek to the specified head and cylinder is started.

4、制御装置の装置タスクが、転送すべき読取りデータのために32にセグメン トのデータ・バッファを割り振る。また、この装置タスクは、制御装置データ・ バッファへのデータ転送に使用するDMAチャネルを割り振る。4. The device task of the controller segments 32 for the read data to be transferred. allocate a data buffer for This device task also handles controller data Allocate a DMA channel to use for data transfer to the buffer.

S、この例では、次に、装置タスクが、割り振られたDMAチャネルのアドレス 、データ開始アドレスおよび転送すべきブロックの数を含むC0ND汀l0NA L−READ副指令を、DASDに送る。前述したように、要求されたデータの 量が少ない場合には、C0NDITIONAI、READ副指令ではなくて「通 常のJ READ副指令が送られる。S, in this example, the device task then determines the address of the allocated DMA channel. , the data start address and the number of blocks to be transferred. Send L-READ subcommand to DASD. As mentioned above, the requested data If the amount is small, use "COMMUNICATION" instead of C0NDITIONAI and READ subcommands. The usual J READ subcommand is sent.

6゜C0NDITIONAL−READ副指令を受け取った時、DASDは、L BAを探索し、データの転送を開始する。データ・パケットのアドレス・フィー ルドは、DMAチャネルのアドレスを含む。6゜When receiving the C0NDITIONAL-READ subcommand, the DASD Search BA and start data transfer. Data packet address fee The field contains the address of the DMA channel.

7、読取りデータが、直列リンクを介して制御装置に転送され、制御装置データ ・バッファ内の創り振られた空間に入れられる。7. The read data is transferred to the controller via the serial link and the controller data ・It is placed in a created space in the buffer.

8、制御装置がアダプタにDA TAj?EADYメツセージを送り、その結果 、ホストが、制御装置とホスト・メモリの間で読取りデータを転送するために使 用するホストDMAチャネルを初期設定する。上記の流れ図では、最初のデータ をバッファ内で受け取った後にDATA READYメツセージが送られるよう になっているが、このメツセージは、バッファ内でデータを受け取る前に送られ るのが普通である。このメツセージの目的は、ホストDMAを初期設定すること 、すなわち、ホストにデータを受け取る準備をさせることである。8. Is the control device connected to the adapter? Send an EADY message and the result , used by the host to transfer read data between the control unit and host memory. Initialize the host DMA channel to be used. In the above flowchart, the first data The DATA READY message is sent after receiving the data in the buffer. , but this message is sent before the data is received in the buffer. It is normal to The purpose of this message is to initialize the host DMA. , that is, to prepare the host to receive data.

9、アダプタが、DATA−READYメツセージに応答して、制御袋RL’ニ ー R,EADY FOR,READメツセージを送る。ホスト内でREADY −FOR,R,EADメツセージは、初期設定されたDMAチャネルを識別する もので、制御装置のSA RECErVEメツセージ・プロセスによって受け取 られ、SA XFERプロセスに渡される。このSAχFERプロセスは、SA  DMAを初期設定する、すなわちデータ・バッファからのデータ転送に使用す るDMAチャネルを割り振る。9. The adapter responds to the DATA-READY message by opening the control bag RL'. - Send R, EADY FOR, READ message. READY in host -FOR,R,EAD message identifies the initialized DMA channel and is received by the control unit's SARECErVE message process. and passed to the SA XFER process. This SAχFER process is Initialize the DMA, i.e. use it to transfer data from the data buffer. allocate a DMA channel.

10、データは、DASDからデータ・バッファ内で受け取られた時、直列リン クを介してホスト・メモリに転送される。10. When data is received in the data buffer from DASD, it is serially linked. transferred to host memory via the network.

最後のデータが送られた時、制御装置は、5CSI 5TAT?JSをアダプタ に返す。アダプタは、この状況を待ち行列に入れ、これをホストに提示する。When the last data is sent, the control device reads 5CSI 5TAT? JS adapter Return to. The adapter queues this status and presents it to the host.

書き込み動作の例 アダプタ 制御装置 DASD SC3jCOMMAND (WRITE) −>コマンドを待ち行列に登録 コマンドを復号 LBAを物理アドレスに変換 先読停止 <−−−−−−−−−−−−−−−−−−STATUSハ゛フファを割り振る  シーク DASD DMAを初期設定 テ゛−タ・パケット −−−−−−−−−−−−−−−−−>最初のテ゛−タが ハ゛ブファに入る DA DMAを初期設定 C0NDITIONAL WRITE −−−−−−>テ”−タ・パケット − −−−−−−−−−−−−>LBA探索 EXTEND −−−一−−−−−−−−−−−−−>・<−−−−−−−−− −−−−−一状況<−−−−−−−−−−−−−−5CSjSTATUS状況を 待ち行列に登録 状況を提示 書込み 1、アダプタが、書込み動作を定義する5C5I COMMANDメツセージを 制御装置に送る。Example of write operation Adapter Control device DASD SC3j COMMAND (WRITE) -> Register command in queue decrypt command Convert LBA to physical address Prefetch stop <−−−−−−−−−−−−−−−−−− Allocate STATUS buffer seek Initialize DASD DMA Data packet −−−−−−−−−−−−−−−−−>The first data is enter hubfa DA Initialize DMA C0NDITIONAL WRITE ----> Data packet - −−−−−−−−−−−>LBA search EXTEND −−−−−−−−−−−−−−−−−>・<−−−−−−−−− -------1 status <-------------5CSjSTATUS status Join the queue present the situation writing 1. The adapter sends the 5C5I COMMAND message that defines the write operation. Send to control device.

2、制御装置が、コマンドを処理しく前述した通りに)、制御が、COMMAN DプロセスからDEVICEプロセスに渡される。この例では、DEVICEプ ロセスは、D A S D 1m 5TOP ’AND 5EEK副指令を送る (先読み動作が現在活動状態である)。2. The control device processes the command (as described above), and the control Passed from D process to DEVICE process. In this example, the DEVICE Rocess sends D A S D 1 m 5 TOP 'AND 5 EEK sub-command (A read-ahead operation is currently active).

3、DASDが、先読みを停止し、先読み動作打切り状況を示す状況を制御装置 に送る。D A、 S Dが、5TOP−AND−5EEK副指令で指定された シリンダおよびヘッドへのシークを開始する。3. The DASD stops read-ahead and controls the status indicating the abort of read-ahead operation. send to D A, SD were specified by the 5TOP-AND-5EEK sub-command Begin seeking to cylinder and head.

4、制御装置のSA XFERプロセスが、データ・バッファ内の空間を割り振 り、ホストからの書込みデータのパケットの宛先となるSA DMAチャネルを 初期設定する。4. The control unit's SA XFER process allocates space in the data buffer. The SA DMA channel is the destination for write data packets from the host. Initialize.

5 、5A XFERプロセスが、SA TRANSMITプロセスに通知し、 このSA TRANSMITプロセスが、アダプタにREADY FOR−WR ITEメツセージを送る。このメツセージは、前のステップで初期設定されたD MAチャネルを識別するメツセージである。5, 5A XFER process notifies SA TRANSMIT process, This SA TRANSMIT process sends READY FOR-WR to the adapter. Send an ITE message. This message is the D This is a message that identifies the MA channel.

6、アダプタのリンク・タスクが、ホスト・メモリへのデータ転送に使用するD MAチャネルを割り振り、その後、書込みデータのパケットの、制御装置への転 送を開始する。6. D used by the adapter's link task to transfer data to host memory Allocates an MA channel and then transfers write data packets to the controller. Start sending.

7、制御装置の装置タスクが、データ・バッファとDASD間でのデータの転送 に使用するDMAチャネルを初期設定し、この例では、DASDが期待すべきL BAと書込みデータの量を識別t6 C0NDITIONAL−WRITE副指 令をDASDI:送る。DASDは、LBA探索を開始する。7. The device task of the controller transfers data between the data buffer and DASD. Initializes the DMA channel used for the Identify BA and amount of write data t6 C0NDITIONAL-WRITE secondary finger DASDI: Send the command. DASD starts LBA search.

8、書込みデータは、DMAチャネルを介してバッファで受け取られた時、バッ ファから第2のDMAチャネル上を直列リンクを介してDASDに転送される。8. When the write data is received in the buffer via the DMA channel, from the fiber to the DASD via a serial link on a second DMA channel.

先読み 先読みとは、全体で1つの長い逐次読取りを構成する1組のREADコマンドの 性能を向上させるために、制御装置が提供する機能である。これは、下記のよう に次の読取りを予測してDASDから制御装置のバッファへの読取りを継続する ことによって達成される。Look ahead A read ahead is a set of READ commands that together constitute one long sequential read. This is a function provided by the control device to improve performance. This is as below Continue reading from DASD to the controller's buffer in anticipation of the next read. This is achieved by

5C3IのREADコマンドを受け取ると、制御装置は、この読取りに割り振ら れている制御装置の32にセグメントのデータ・バッファに必要な数のセクタを 転送するようDASDに指示する。この実施態様では、制御装置は通常、ホスト からのコマンドが要求する量がそれより少ない時でも、32にのデータ(すなわ ち、割り振られたバッファ空間を満たす量のデータ)を要求する。ホストが要求 するデータは、DASDから到着した時、ホストに転送される。要求されたデー タをホストまで転送し終えた時、制御装置によって状況が生成される。その間に 、先読みデータの転送が継続する。Upon receiving a 5C3I READ command, the controller will allocate this read. Add as many sectors as required for the segment's data buffer to 32 of the control unit being installed. Instruct DASD to transfer. In this embodiment, the controller typically 32 data (i.e., even when commands from i.e., the amount of data that fills the allocated buffer space). requested by host When the data arrives from the DASD, it is transferred to the host. requested data A status is generated by the controller when the data has been transferred to the host. During , the transfer of read-ahead data continues.

DASDに対するREAD副指令で、ホストから要求された量より多くのデータ が指定されていた場合には、余分のデータは、制御装置バッファに記憶される。READ subcommand to DASD with more data than requested by host was specified, the extra data is stored in the controller buffer.

ホストがバッファ空間を使用可能にする時、制御装置によってDASDに送られ るEXTEND副指令によって、データ転送が延長される。EX、TEND副指 令を受け取ると、D A S Dは、そのEXTEND副指令で指定されたセク タをバッファの新しい末尾に転送する。Sent by the controller to the DASD when the host makes buffer space available. The EXTEND subcommand extends the data transfer. EX, TEND secondary finger Upon receiving the command, the D.A.S.D. data to the new end of the buffer.

1例として、アダプタから送られたREADコマンドが、4にのデータ(8セク タ)を要求し、制御装置が、装置に32Kを要求する場合には、要求された4に のデータがホストに転送されると同時に、バッファ内に4にの空間が生じる。制 御装置は、バッファを満たすため、4にの新規データを要求するEXTEND副 指令を装置に送る。As an example, a READ command sent from the adapter will contain data in 4 (8 sectors). If the controller requests 32K from the device, the requested 4K At the same time that 4 data are transferred to the host, 4 spaces are created in the buffer. system The controller sends an EXTEND secondary requesting new data to 4 to fill the buffer. Send commands to the device.

アダプタから次のREADコマンドを受け取った時、制御装置は、バッファを検 査して、要求されたデータが既に存在する(または、すぐに存在するようになる )か否かを調べる。そうである場合には、制御装置は、そのデータをホストに転 送する。そうでない場合には、制御装置は、DASDに新規の読取りを指示し、 活動状態の先読みがあれば打ち切る。DASDが新規転送を再度指令されるか、 または先読みバッファが満たされるまで、先読みは継続する。When the next READ command is received from the adapter, the controller checks the buffer. check to see if the requested data already exists (or will soon exist). ). If so, the controller transfers the data to the host. send If not, the controller instructs the DASD to do a new read; Abort if there is an active read ahead. Is the DASD commanded for new transfer again? Otherwise, read-ahead continues until the read-ahead buffer is filled.

連続的書込み 連続的(バック・ツー・バック)書込みとは、連続するブロックを書き込む連続 した書込みコマンドである。後続書込みの最初のブロックが、前の書込みの最後 のブロックの直後に続(。制御装置およびDASD内で連続的書込みに対する特 別なサポートを行うと、そうでない場合にはコマンドの間にDASDが回転する 必要があるのに対して、D A、 S Dは回転せずに書込みを行えるようにな る。Continuous writing Continuous (back-to-back) writing refers to sequential writing of successive blocks. This is the write command. The first block of a subsequent write is the last of the previous write. Immediately following the block of Additional support will otherwise cause the DASD to rotate during commands. However, D A and SD can now be written without rotating. Ru.

WR,TTEコマンドのコマンド固有ルーチンが、現在活動状態の装置転送を、 次の連続する書込みを含むように延長することができる点に達した時、このルー チンは、「肩越しに振り返り」、次の’CD Q Eがこのような書込みを含む か否かを検査する。含む場合は、このルーチンは、装置タスクに延長要求を発行 し、その装置タスクは、D A S DにEXTEND副指令を送る。D A、  S Dが、前の書込みを完了する前にEXTEND副指令を受け取った場合は 、そのDASDは、ただ単に、現書込みのカウントを、EXTEND副指令のカ ウント・パラメータで指定された量だけ延長する。The command-specific routines for the WR and TTE commands can transfer currently active device transfers. When it reaches a point where it can be extended to include the next consecutive write, this rule Chin “looked over his shoulder” and said that his next CD, QE, would contain such writing. Inspect whether or not. If so, this routine issues an extension request to the device task. Then, the device task sends an EXTEND subcommand to DAD. D A, If SD receives the EXTEND subcommand before completing the previous write, , the DASD simply updates the current write count with the count of the EXTEND subcommand. Extend by the amount specified by the mount parameter.

EXTEND副指令がDA、SDに達するのが遅すぎた場合には、DASDは、 最初の書込みを通常の形で行った後に状況を提示し、「失敗」状況を示してその EXTEND副指令を拒絶する。If the EXTEND subcommand reaches DA, SD too late, DASD Present the situation after the first write in normal form, then indicate the "failure" situation and correct it. Rejects the EXTEND subcommand.

その場合、制御装置は通常の書込みを生成する。EXTEND副指令は、それ自 体が延長の候補である。In that case, the controller generates a normal write. The EXTEND subcommand itself The body is a candidate for extension.

例 ホストが、セクタ○〜7に対するscs r書込みコマンドを送る。example The host sends an scsr write command for sectors ○ to 7.

制御装置が、セクタ0〜7に対するWRITE副指令を発行する。The control device issues a WRITE sub-command for sectors 0-7.

ホストが、セクタ8〜15に対するSC3工書込みコマンドを送る。The host sends an SC3 write command for sectors 8-15.

制御装置が、待ち行列内で連続的書込みを検出する。A controller detects consecutive writes in the queue.

制御装置が、8セクタ分のEXTEND副指令を発行する。The control device issues an EXTEND subcommand for 8 sectors.

EXTEND副指令が、WRITEの終了前に到着した場合、このDASDは、 その現ブロック・カウントを8だけ延長し、セクタ7の後には状況を返さず、そ の代わりに、セクタISの後で状況を返す。If the EXTEND subcommand arrives before the end of WRITE, this DASD Extends its current block count by 8, returns no status after sector 7, and Instead, return status after sector IS.

EXTEND副指令の到着が遅すぎた場合、このDASDは、WRITE副指令 に対する通常の状況を生成し、EXTEND副指令の受取りが遅すぎたことを制 御装置に伝える。その場合、制御装置は、セクタ8〜15に対するWRITE副 指令を再発行する。その後、セクタ8〜15が、次の回転の際に書き込まれる。If the EXTEND subcommand arrives too late, this DASD Generate the normal situation for and control that the EXTEND subcommand was received too late. to the control device. In that case, the control device will write the WRITE sub for sectors 8 to 15. Reissue the directive. Sectors 8-15 are then written during the next rotation.

EXTEND副指令を使用する連続的書込みの実施態様では、直列リンクのパケ ット多重化機能を利用する、すなわち、制御装置が、書込みデータをDA、SD に送っているのと同時に、直列リンクを介してEXTEND副指令を送ることが できなければならないことに留意されたい。In a continuous write implementation using the EXTEND subcommand, the serial link packet In other words, the control device sends write data to DA and SD. It is possible to send the EXTEND subcommand via the serial link at the same time as sending the EXTEND subcommand to Please note that you must be able to.

分割読取り 分割読取りとは、DA3つからの読取りを、現READ動作の範囲の最初のセク タではな(、ヘッドの下に最初に現れるその範囲に含まれるセクタから開始する ことによって得られる性能向上である。たとえば、セクタ4.5.61.、.1 5.16に対する読取りは、ヘッドの到着がたまたまセクタ4を読み取るには遅 すぎるが、セクタ6を読み取るには十分に早い場合には、6.7.811.。、 15.16.4.5という順序で読み取ることができる。したがって、DASD からの転送は、そうしない場合よりも11セクタ(すなわち、16−5)だけ早 く完了するはずである。split read Split reading means reading from three DAs to the first sector in the range of the current READ operation. (starting from the first sector included in that range that appears under the head This is the performance improvement obtained by For example, sector 4.5.61. ,.. 1 5.16, the head happens to arrive too late to read sector 4. but if it is fast enough to read sector 6, then 6.7.811. . , It can be read in the order 15.16.4.5. Therefore, DASD is 11 sectors (i.e., 16-5) faster than otherwise. It should complete quickly.

この最適化は、制御装置がDASI:N:、i初のセクタを読み取るよう指令す ることによって達成される。DASDは、そのセクタが所定の時間(たとえば1 ミリ秒)以上離れていることを発見した場合、その読取りを打ち切り、現LBA を制御装置に返す。その場合、制御装置は、同じ読取りを再発行するか、それと もその読取りを、現セクタから末尾までを転送する「末尾」読取りと、第1セク タから末尾の先頭までを転送する「先頭」読取りとに分割するかを決定する。This optimization commands the controller to read the first sector of DASI:N:,i. This is achieved by A DASD has a sector whose sectors are milliseconds), the read is aborted and the current LBA is returned to the control device. In that case, the controller must either reissue the same read or also divides the read into a "tail" read, which transfers from the current sector to the end, and a "tail" read, which transfers from the current sector to the end. Determine whether to divide the data into "start" reading, which transfers data from the data to the beginning of the end.

これをサポートするために、DASDに対するC0ND IT l0NA5R, EAD副指全指令用できる。この副指令は、第1セクタまでに長い遅延がある場 合には打ち切られる。上記の例では、データは、通常の順序で読み取られる場合 よりも、11セクタ分早(制御装置バッファに到着する。ただし、制御装置が、 ホストに送るデータを通常の順序に配列し直さなければならない場合には、分割 読取り動作の性能の利益は大幅に減少する6 本明細書に記載する技法は、制御装置バッファ内でデータを並べ直す必要をな( すことによって、「分割読取り」の潜在能力をより多く引き出すものである。こ れは、制御装置とアダプタの間でメツセージ・インターフェースを定義して、ホ ストDMAアドレスに対する必要な制御を制御装置に与えることによって達成さ れる。実際には、制御装置は、ホスト・メモリに対するランダム・アクセス権を 有する。データが制御装置のデータ・バッファに置かれる時に制御装置からアダ プタに送られるDATA−READYメツセージが、そのデータを送る先のホス ト・メモリ内のアドレスを指定する。分割読取り動作が進行中である時、制御装 置は、ホストからの当初のコマンド中で送られたアドレスから修正済み開始アド レスを計算し、このアドレスを、DATA READYメツセージに組み入れて ホストに送る。上記の例の場合、制御装置は、セクタ4の開始アドレスを知らさ れ、したがって、分割読取りデータの最初のセクタ(この場合はセクタ6)を送 る先のホスト内の修正済みアドレスを計算することができる。セクタ6〜16が 既にデータ・バッファ内にある場合は、制御装置は、単一のDATA READ Yメツセージを発行して、セクタ6〜16の転送を開始する。セクタ6〜16の 転送が完了する。制御装置はセクタ1〜5をバッファ内で得た時、DATA−R EADYメツセージをホストに発行して、セクタ1〜5の転送準備ができたこと と、セクタ1を送る先のホスト・メモリのアドレスを示す。To support this, C0ND IT l0NA5R for DASD, EAD secondary finger can be used for all commands. This subcommand is used if there is a long delay before the first sector. If so, it will be terminated. In the above example, if the data is read in normal order (arrives at the controller buffer 11 sectors earlier than If the data sent to the host must be rearranged into the normal order, split The performance benefit of read operations is significantly reduced6 The techniques described herein eliminate the need to reorder data within the controller buffer. By doing so, the potential of "divided reading" can be brought out even more. child It defines a message interface between the control device and the adapter and This is accomplished by giving the controller the necessary control over the host DMA address. It will be done. In practice, the controller has random access to host memory. have The data is read from the controller when it is placed in the controller's data buffer. The DATA-READY message sent to the host Specifies an address in default memory. When a split read operation is in progress, the control The location is the modified starting address from the address sent in the original command from the host. Calculate the response and include this address in the DATA READY message. Send to host. In the above example, the control device is informed of the starting address of sector 4. Therefore, the first sector of the split read data (sector 6 in this case) is sent. The corrected address in the destination host can be calculated. sectors 6 to 16 If it is already in the data buffer, the controller sends a single DATA READ A Y message is issued and transfer of sectors 6 to 16 is started. sectors 6-16 The transfer is complete. When the control device obtains sectors 1 to 5 in the buffer, DATA-R An EADY message is issued to the host and sectors 1 to 5 are ready for transfer. indicates the host memory address to which sector 1 is to be sent.

生データ読取り 制御装置がホスト・メモリの諸区域にランダムにアクセスできる、すなわち、ホ スト・アドレスを制御できる能力をもつので、別の性能上の利益も得られる。D ASDがデータの多数のセクタを制御装置バッファに転送している読取り動作中 に、そのDASDは、1セクタ(512バイト)の末尾まで待ってFCCを検査 する前に、そのセクタをホストまで送る。ここで述べるシステムでは、DASD は、1セクタ分のデータを保持するのに十分な緩衝記憶を有していない。データ は、ディスクから直列に読み取られ、128バイト・パケットにコンパイルされ て、制御装置に送られる。そのセクタが終わる時に、装置は、ECCを検査し、 そのデータの末尾に6つのECCバイトを付加する。そのセクタ内のすべてのデ ータが「良好」である場合は、エラーは示されず、制御装置はホストへの伝送を 継続する。このシステムでは、装置がデータの最終パケットを制御装置に送る前 に、したがって、装置がそのデータにエラーが含まれることを知る前に、データ のそのセクタの大部分が既に制御装置からホストに転送されていることに留意さ れたい。したがって、既にホスト内にあるデータは、「生」データであり、すな わち、ホストへの転送の前に検査が行われていない。raw data reading The controller can randomly access areas of host memory, i.e. The ability to control the host address also provides other performance benefits. D During a read operation where the ASD is transferring multiple sectors of data to the controller buffer Then, the DASD waits until the end of one sector (512 bytes) and checks the FCC. before sending the sector to the host. In the system described here, the DASD does not have enough buffer storage to hold one sector's worth of data. data is read serially from disk and compiled into 128-byte packets. and sent to the control device. When the sector ends, the device checks the ECC and Add 6 ECC bytes to the end of the data. All data in that sector If the data is ``good'', no error is indicated and the controller stops transmitting to the host. continue. In this system, before the device sends the final packet of data to the control device, Therefore, before the device knows that the data contains an error, the data Note that most of that sector has already been transferred from the controller to the host. I want to be. Therefore, data already in the host is "raw" data, i.e. That is, no checks are performed before forwarding to the host.

はとんどのデータ転送では、生データは、良好なデータでもある。すなわち、そ のデータが装置から転送される。データを検査なしでホストに直接に転送すると 、ホストへ転送する前にすべてのセクタを検査する従来のシステムに比べて、性 能上の利益がもたらされる。この直接方式お場合、データの多数のセクタをホス トが受け取るのに要する時間が、1セクタのデータが装置からホストへ移動する のに要する時間とほぼ等しい時間だけ短縮される。本明細書に記載のシステムな どの高性能システムでは、この利益によって、全体的オーバーヘッドをかなり削 減することができる。In most data transfers, raw data is also good data. In other words, that data is transferred from the device. Transferring data directly to the host without inspection , compared to traditional systems that inspect every sector before transmitting it to the host. performance benefits are brought about. This direct method allows you to host many sectors of data. The time it takes for one sector of data to move from the device to the host The amount of time saved is approximately equal to the time required for The system described herein In any high-performance system, this benefit can significantly reduce overall overhead. can be reduced.

上述したように、はとんどのデータ転送では、生データを送ると、検査済みのデ ータに比べて、性能上の利益がもたらされる。これとトレードオフになるのは、 転送データにエラーが存在する時の性能低下である。ある従来システムでは、生 データにエラーが1つ存在すると、そのデータ全体を再送信しなければならない 。制御装置がホスト・メモリに対するランダム・アクセス権を有する本発明では 、データのすべてを再送信する必要はない。As mentioned above, most data transfers involve sending the raw data and then sending the verified data. Provides performance benefits compared to data. The trade-off with this is This is a performance degradation when there are errors in the transferred data. In some conventional systems, If there is one error in the data, the entire data must be retransmitted. . In the present invention, the control device has random access rights to the host memory. , there is no need to retransmit all of the data.

あるセクタの終りに、DASDがそのデータ内にエラーが存在することを検出し た場合、ECCバイトによってそのことが制御装置に示され、制御装置に警告が 出る。制御装置は、ホストへの現パケット・データの送出を完了した時に、送信 を中止し、DATA RETRY (データ再試行)メツセージをホストに送る 。制御装置は、エラーを含んでいたセクタの再送信を要求する。DASDは、要 求されたセクタを、128バイト・パケットに入れて制御装置に再送信し、制御 装置は、そのデータをバッファに記憶する。再送信されたデータのブロックが良 好である場合は、制御装置は、ホストにそのデータをパスする。At the end of a sector, the DASD detects that there is an error in its data. If the Get out. When the controller has finished sending the current packet data to the host, it and sends a DATA RETRY message to the host. . The controller requests retransmission of the sector containing the error. DASD is essential The requested sector is put into a 128-byte packet and retransmitted to the control device. The device stores the data in a buffer. The retransmitted block of data is If so, the controller passes the data to the host.

制御装置は、再試行データの送り先となるホスト・メモリのアドレスを指定する DATA RETRYメツセージを、アダプタに送る。このDATA RETR Yメツセージは、アダプタに、ホスト・メモリへデータを転送するのに使用する 新規DMAチャネルをセットアツプするよう指示するメツセージである。アダプ タは、このDATA RETRYメツセージに対して、READY FORRE ADメツセージで応答する。DATA RETRYメツセージは、再試行される データの量を示す。The controller specifies the address in host memory to which retry data is to be sent. Send a DATA RETRY message to the adapter. This DATA RETR Y messages are used by the adapter to transfer data to host memory. This message instructs to set up a new DMA channel. adapter In response to this DATA RETRY message, the data Respond with AD message. DATA RETRY message will be retried Indicates the amount of data.

制御装置に送られる再試行データが依然として誤りを含む場合、制御装置は、あ る回数だけそのデータを再要求する。If the retry data sent to the controller still contains errors, the controller Re-request the data as many times as required.

所定の回数の試行後に制御装置がまだ良好なデータを受け取っていない場合、制 御装置は、そのバッファ内に保持されているデータ中の誤りの訂正を試みる。こ のために、制御装置は、rECCに対する作用」副指令を装置に送る。この副指 令は、装置に、どのバイトが誤りであるかを計算させ、また、それらのバイトの 訂正データを計算させる。訂正できるバイトの数は、実施態様に依存する。本明 細書のシステムでは、その数は2バイトである。装置は、訂正情報を制御装置に 送り、制御装置は、そのバッファ内に保持されたデータを訂正する。その後、制 御装置は、訂正済みのバイトを含むデータのブロックをホストに送る。If the controller still does not receive good data after a predetermined number of attempts, the control The control device attempts to correct errors in the data held in its buffer. child For this purpose, the controller sends an "action on rECC" subcommand to the device. This secondary finger The command causes the device to calculate which bytes are in error and also Calculate corrected data. The number of bytes that can be corrected is implementation dependent. Honmei In the detailed system, that number is 2 bytes. The device sends correction information to the control device. The sending controller corrects the data held in its buffer. After that, the control The controller sends a block of data containing the corrected bytes to the host.

ホスト FIG、1 FIG、2 FIG、3 1−IPc DASDリンク 7ダブタ・リンク FIG、5 FIG、6 FIG、7 データ記憶サブシステムと ホスI・・システムとの間のデータ転送データ記憶システムから、接続されたホ スト・データ処理システムにデータを転送するための技法を開示する。このサブ システムは、ディスク駆動装置など、1つまたは複数の直接アクセス記憶装置に 接続された装置制御装置を備える。システムは、このサブシステムにデータ転送 コマンドを発行して、システムと装置の間のデータ転送を開始する。読取りデー タまたは書込みデータが、制御装置内のバッファを介して、装置からホスI・へ 直接に転送される。読取り動作の場合、読取りコマンドが、転送しようとするデ ータと、それが送られる先のホスト・メモリ内の開始アドレスを指定する。装置 制御装置は、開始アト1/スを、実際にデータを送る先のアト1/スに訂正する 能力を有する。これによって、分割データ転送の場合に性能上の利益がもたらさ れる。さらに、読取り動作中にエラーが発生した場合、制御装置は、置換データ を送る先のホスト・アドレスを指定することができる1゜国際調査報告 DrT /l’!Q (H)nn+cchost FIG.1 FIG.2 FIG.3 1-IPc DASD link 7 dabuta link FIG.5 FIG.6 FIG.7 data storage subsystem and Data transfer to and from the host I...system from the data storage system to the connected host. Techniques for transferring data to a host data processing system are disclosed. this sub The system supports one or more direct access storage devices, such as disk drives. A connected device controller is provided. The system transfers data to this subsystem Issue commands to initiate data transfer between the system and the device. reading day data or write data from the device to the host I via a buffer in the control device. transferred directly. For read operations, the read command data and the starting address in host memory to which it is sent. Device The control device corrects the start address to the address to which the data is actually sent. have the ability. This provides performance benefits in case of piecemeal data transfers. It will be done. Additionally, if an error occurs during a read operation, the controller 1゜International search report DrT that allows you to specify the host address to which the report will be sent /l’! Q (H)nn+cc

Claims (7)

【特許請求の範囲】[Claims] 1.データを記憶する直接アクセス記憶装置に通信のために接続された装置制御 装置を備えるデータ記憶サブシステムから、接続されたホスト・データ処理シス テムにデータを転送する方法であって、 転送しようとするデータ・ブロックのシーケンスとデータシーケンスの第1ブロ ックの転送先のホスト・メモリ内の開始アドレスとを指定するデータ転送コマン ドを、システムから装置制御装置に送ってデータ転送を開始するステップと、コ マンドに応答してサブシステムからシステムへデータのシーケンスを転送するス テップとを含み、制御装置が、ホスト・メモリ内の開始アドレスを再指定する能 力を有する、データを転送する方法。1. A device control that is communicatively connected to a direct access storage device that stores data. from a data storage subsystem with a device to an attached host data processing system. A method of transferring data to a system, the method comprising: The sequence of data blocks to be transferred and the first block of the data sequence. A data transfer command that specifies the starting address in host memory to which the block is to be transferred. sending a code from the system to the equipment controller to initiate data transfer; A system that transfers sequences of data from a subsystem to a system in response to commands. the ability for the controller to respecify the starting address in host memory. A method of transferring data that has the power. 2.制御装置が、装置からの前記データ・シーケンスの非逐次式順序での転送を 要求し、制御装置が、ホストによって指定された開始アドレスを使用して、非逐 次式データの第1プロックを送る先のホスト・メモリ内の修正済み開始アドレス を計算し、制御装置が、非逐次式順序でデータをホストに転送し、データの第1 ブロックが、修正済み開始アドレスに送られることを特徴とする、請求項1に記 載のデータを転送する方法。2. A control device facilitates the transfer of said data sequence from the device in a non-sequential order. request and the control unit uses the starting address specified by the host to Modified starting address in host memory to send the first block of data to: , the controller transfers the data to the host in non-sequential order, and the first 2. The block according to claim 1, characterized in that the block is sent to a modified starting address. How to transfer your data. 3.制御装置が、コマンドで指定されたのと同じ順序での装置からのデータの転 送を要求し、制御装置が、前記データ・シーケンスの第1ブロックを、ホストに よって指定されたアドレスに送る、請求項1に記載のデータを転送する方法。3. The controller transfers data from the device in the same order specified in the command. the controller sends the first block of said data sequence to the host. The method of transferring data according to claim 1, wherein the data is sent to a specified address. 4.データ・シーケンスの一部分でエラーを検出した時、制御装置が、前記部分 を再伝送するよう装置に要求し、ホストからのコマンドで指定されたアドレスを 使用して、再伝送される部分を送る先のホスト・メモリ内のアドレスを計算する ことを特徴とする、請求項3に記載のデータを転送する方法。4. When an error is detected in a part of a data sequence, the controller requests the device to retransmit the address specified in the command from the host. to calculate the address in host memory to send the retransmitted portion to 4. A method for transferring data according to claim 3, characterized in that: 5.制御装置が、前記部分がエラーなしにホスト内で受け取られるか、あるいは 所定の回数だけ再伝送が試みられるまで、前記部分の再伝送を要求し、後者の場 合には、制御装置が、装置からの訂正データを要求し、該部分内のエラーを訂正 し、ホストからのコマンドで指定されたアドレスを使用して、訂正済みの部分を 送る先のホスト・メモリ内のアドレスを計算することを特徴とする、請求項4に 記載のデータを転送する方法。5. The control device determines whether said part is received in the host without error or request retransmission of said portion until a predetermined number of retransmission attempts have been made, and in the latter case If so, the controller requests correction data from the device and corrects the error in the part. the corrected part using the address specified in the command from the host. 5. The method according to claim 4, further comprising calculating an address in host memory to which the message is to be sent. How to transfer the data described. 6.直接アクセス記憶装置に通信のために接続された装置制御装置を備え、動作 の際に、データが、装置から制御装置を介してデータ処理システム内のメモリに 転送される、接続されたホスト・データ処理システムによってアクセス可能なデ ータを記憶するためのデータ記憶サブシステムであって、制御装置が、データ転 送先のホスト・メモリ内の開始アドレスを指定する能力を有することを特徴とす る、データ記憶サブシステム。6. comprising a device controller communicatively connected to a direct access storage device; When data is transferred from the device, through the controller, to memory in the data processing system. The data accessible by the attached host data processing system being transferred. a data storage subsystem for storing data, wherein the control device characterized by having the ability to specify the starting address in host memory of the destination data storage subsystem. 7.制御装置が、装置からホスト・メモリヘのデータ転送に使用されるデータ・ バッファを含む、請求項6に記載のデータ記憶サブシステム。7. The controller controls the data transfer used to transfer data from the device to host memory. 7. The data storage subsystem of claim 6, including a buffer.
JP3504263A 1991-02-19 1991-02-19 Method of transferring data between a data storage subsystem and a host data processing system Expired - Lifetime JPH06105425B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
PCT/GB1991/000256 WO1992015054A1 (en) 1991-02-19 1991-02-19 Data transfer between a data storage subsystem and host system
SG1996000502A SG44451A1 (en) 1991-02-19 1991-02-19 Data transfer between a data storage subsystem and host system

Publications (2)

Publication Number Publication Date
JPH05502315A true JPH05502315A (en) 1993-04-22
JPH06105425B2 JPH06105425B2 (en) 1994-12-21

Family

ID=20429190

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3504263A Expired - Lifetime JPH06105425B2 (en) 1991-02-19 1991-02-19 Method of transferring data between a data storage subsystem and a host data processing system

Country Status (2)

Country Link
JP (1) JPH06105425B2 (en)
SG (1) SG44451A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112187854A (en) * 2020-08-18 2021-01-05 华控清交信息科技(北京)有限公司 Task processing method and device for task processing

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54104751A (en) * 1978-02-03 1979-08-17 Nec Corp Data processor
JPS61241825A (en) * 1985-04-19 1986-10-28 Alps Electric Co Ltd Data transfer method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112187854A (en) * 2020-08-18 2021-01-05 华控清交信息科技(北京)有限公司 Task processing method and device for task processing
CN112187854B (en) * 2020-08-18 2023-10-20 华控清交信息科技(北京)有限公司 Task processing method and device for task processing

Also Published As

Publication number Publication date
SG44451A1 (en) 1997-12-19
JPH06105425B2 (en) 1994-12-21

Similar Documents

Publication Publication Date Title
JPH05502314A (en) Data transfer method
US5594882A (en) PCI split transactions utilizing dual address cycle
JP5159900B2 (en) Computer program, apparatus, and method for reducing access conflict of reserved device
US7761642B2 (en) Serial advanced technology attachment (SATA) and serial attached small computer system interface (SCSI) (SAS) bridging
US6425021B1 (en) System for transferring data packets of different context utilizing single interface and concurrently processing data packets of different contexts
US6401149B1 (en) Methods for context switching within a disk controller
US6065087A (en) Architecture for a high-performance network/bus multiplexer interconnecting a network and a bus that transport data using multiple protocols
US6549981B2 (en) Disk array system with controllers that automate host side of ATA interface
US6330626B1 (en) Systems and methods for a disk controller memory architecture
US6272499B1 (en) Linked lists of transfer descriptors scheduled at intervals
US20050235072A1 (en) Data storage controller
US7340551B2 (en) Bridge permitting access by multiple hosts to a single ported storage drive
JP2000010901A (en) Disk array controller
JP2011512591A5 (en)
US5555390A (en) Data storage method and subsystem including a device controller for respecifying an amended start address
US7962676B2 (en) Debugging multi-port bridge system conforming to serial advanced technology attachment (SATA) or serial attached small computer system interface (SCSI) (SAS) standards using idle/scrambled dwords
JP4100256B2 (en) Communication method and information processing apparatus
JP4053208B2 (en) Disk array controller
US5613141A (en) Data storage subsystem having dedicated links connecting a host adapter, controller and direct access storage devices
KR100638378B1 (en) Systems and Methods for a Disk Controller Memory Architecture
JP2001237868A (en) Method and system to attain efficient i/o operation in fiber channel node
JPH05502315A (en) Methods for transferring data between data storage subsystems and host data processing systems
JPH05502316A (en) data storage subsystem
WO1992015054A1 (en) Data transfer between a data storage subsystem and host system
JP4362199B2 (en) Data transmission device