JPH0430057B2 - - Google Patents

Info

Publication number
JPH0430057B2
JPH0430057B2 JP57077391A JP7739182A JPH0430057B2 JP H0430057 B2 JPH0430057 B2 JP H0430057B2 JP 57077391 A JP57077391 A JP 57077391A JP 7739182 A JP7739182 A JP 7739182A JP H0430057 B2 JPH0430057 B2 JP H0430057B2
Authority
JP
Japan
Prior art keywords
data
channel adapter
processor
long
channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP57077391A
Other languages
Japanese (ja)
Other versions
JPS57195376A (en
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 filed Critical
Publication of JPS57195376A publication Critical patent/JPS57195376A/en
Publication of JPH0430057B2 publication Critical patent/JPH0430057B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 <技術分野> 本発明は、ホストプロセツサー等のデータ処理
装置を仮想記憶システムの排他的制御下において
大量のデジタルデータの記憶のための仮想記憶シ
ステムに結合するための装置に関する。より詳細
には、本発明はデータフオーマツト及び圧縮演算
を実行する為と、ホストプロセツサーを仮想記憶
システムのプロセツサーにインタフエースするた
めの装置に関する。
DETAILED DESCRIPTION OF THE INVENTION <Technical Field> The present invention relates to a method for coupling a data processing device, such as a host processor, to a virtual storage system for the storage of large amounts of digital data under the exclusive control of the virtual storage system. Regarding the device. More particularly, the present invention relates to an apparatus for performing data formatting and compression operations and for interfacing a host processor to a virtual storage system processor.

<背景> 大量のデジタルデータを記憶させるためのより
廉価な且つアクセス時間の速い記憶装置を提供す
ることはコンピユーター及びデータ処理産業の長
年の課題であつた。大型コンピユータ装置がデー
タを記憶する階層レベル記憶装置を有することが
一般的になつている。選択は与えられたデータフ
アイルの使用頻度に基づいて行なわれる。すなわ
ち、用いられる記憶手段のアクセス時間と費用と
の中間で妥協がなされる。かくして、例えば、大
型コンピユーター装置はその最少頻度使用データ
フアイルをそれが与えられたテープ駆動装置に物
理的に送られ求められていたデータが記憶される
テープ上の点まで進む前にかなりのアクセスタイ
ムを必要とする磁気テープのリールに記憶させる
ことができる。この階層レベル記憶の次の段階は
磁気デイスク記憶装置が一般的であり、この磁気
デイスク記憶装置にはいくつかの型式がある。テ
ープについてもそうであるように、使用者が装着
できるデイスク装置を用いる際はオペレーターは
物理的デイスクフアイルを取り出し、それを駆動
装置上に装着する必要がある。しかしアクセス時
間はかなり短い。さらに速い型式のデイスク記憶
装置があり、これはいわゆる「固定ヘツドデイス
ク」と呼ばれている。この固定ヘツドデイスクの
構成ではデイスクが永久的にマウントされてい
る。その他の型式のデータ記憶装置にはソリツド
ステートシーケンシヤルアクセス記憶手段とラン
ダムアクセス記憶手段がある。
BACKGROUND It has been a long-standing challenge in the computer and data processing industries to provide less expensive storage devices with faster access times for storing large amounts of digital data. It has become common for large computer devices to have hierarchical level storage for storing data. The selection is made based on the frequency of use of a given data file. That is, a compromise is made between access time and cost of the storage means used. Thus, for example, a large computer device may require a significant amount of access time to advance its least frequently used data file to the point on the tape where it is physically sent to a given tape drive and the desired data is stored. can be stored on a reel of magnetic tape that requires The next step in this hierarchical level storage is typically magnetic disk storage, which comes in several types. As with tape, user-loadable disk drives require an operator to remove a physical disk file and load it onto the drive. However, the access time is quite short. There is an even faster type of disk storage, so-called "fixed head disks." In this fixed head disk configuration, the disk is permanently mounted. Other types of data storage include solid state sequential access storage and random access storage.

これらの手段は長期の記憶にはあまりにも不経
済であると一般的に認められており、実際に使わ
れているデータセツトを収容するためにだけ用い
られる。従来技術に一般的にみられることである
が、ユーザープログラムが与えられたデータフア
イルをアクセスすることを要求する時、ホストコ
ンピユーターはそのフアイルネームを与えられた
テープリール、すなわちデイスク駆動装置におけ
るフアイルの物理的な場所に変換し、テープ駆動
装置に与えられたテープリールを装着する命令を
出力したり、デイスクの特定の部分にアクセスし
たりする。記憶装置の型式や特定のユーザーフア
イルが与えられた記憶装置のどこに記憶されるべ
きであるかの選択はそのコンピユーター装置のユ
ーザーやオペレーターによつてされるのであり、
低い順位では課題処理がホストプロセツサーによ
つて実行される。従つて、このデータ記憶装置自
体はインテリジエントがなく、ホストから与えら
れる命令に応答するだけである。1979年10月18日
に出願された本願と共に係属中の米国出願第
85909号において、この装置の改善がなされてお
り、発明内容はホストプロセツサーがテープに記
憶を指向しているデータを受容しホストプロセツ
サーの命令、例えば「テープ装置」という命令を
デイスク駆動装置にその情報を記憶するのに適切
な命令に変換するための手段を含む仮想記憶装置
である。かくしてこの仮想記憶装置はホストプロ
セツサーに対するテープ駆動装置を模倣してい
る。このようにしてホストプロセツサー作動装置
を修正しなくてもさらに速いアクセス時間がホス
トプロセツサーに対して与えられる。
It is generally accepted that these methods are too uneconomical for long-term storage and are only used to accommodate datasets that are actually in use. As is common in the prior art, when a user program requests access to a given data file, the host computer assigns the file name to the file on the given tape reel, i.e., the disk drive. It converts to a physical location and issues commands to the tape drive to load a given tape reel or access a specific portion of the disk. The choice of the type of storage device and where a particular user file should be stored on a given storage device is made by the user or operator of the computer device;
At lower ranks, task processing is performed by the host processor. Therefore, this data storage device itself is not intelligent and only responds to commands given by the host. Co-pending U.S. application filed October 18, 1979
No. 85909, an improvement to this device was made, in which the host processor receives data destined for storage on tape and converts the host processor's commands, such as the command ``tape device,'' to a disk drive. A virtual storage device that includes means for converting that information into instructions suitable for storage on the device. This virtual storage device thus mimics a tape drive to the host processor. In this manner, faster access times are provided to the host processor without modification of the host processor operating system.

この概念をさらに発展させた装置が米国特許第
4467421号、に開示されている。この特許ではホ
ストプロセツサーがデータの結果的な記憶に対し
てほとんどもしくは全然制御を行なわず単にその
データを仮想記憶装置に書き込むようにホストプ
ロセツサー作動装置が改造されている。この仮想
記憶装置によつてどこに且つどんな種類の記憶装
置(一般的にはデイスク)にデータを記憶すべき
かを決定する。すなわち、ホストプロセツサーは
この機能から解放され、これにより有効処理能力
が改善される。記憶装置の使用効率はこのように
仮想記憶装置に関連させて用いると大幅に改善さ
れる。
A device that further develops this concept has been awarded a U.S. patent.
No. 4467421. In this patent, a host processor operating system is modified so that the host processor has little or no control over the resulting storage of the data and simply writes that data to virtual storage. This virtual storage determines where and on what type of storage (generally a disk) the data should be stored. That is, the host processor is freed from this function, thereby improving effective processing power. The efficiency of storage usage is greatly improved when used in conjunction with virtual storage in this manner.

仮想記憶装置の実際の配置構成には他の環境で
はコンピユーター自体が装置の中心であると認め
られる装置がある。好ましい実施例では
Magnuaon M80型コンピユーターが使われてい
る。このコンピユーターによつてどこに且つどん
な型式のデータ記憶装置を与えられたデータを記
憶すべきかを決定する。その主記憶装置は「キヤ
ツシユ」として使われ、この中ではデータがユー
ザーの選んだレコードサイズから「ページ」と呼
ばれる選ばれた長期記憶装置に記憶するのに便利
なレコードサイズに再フオーマツトされる。例え
ば、この好ましい実施例において、最も共通した
記憶モードはデイスク駆動装置に対してなされ、
またそのページサイズは1つのデイスクトラツク
に等しくなるように選択される。これによりアド
レスとフオーマツトが大幅に簡略化される。従つ
てデータがホストプロセツサーからレコード毎に
受信され、このデータはMagnuson CPUのソリ
ツドステート記憶装置内の記憶場所の「フレー
ム」に書き込まれる。かかるフレームがデータの
「ページ」で満たされると、このページは永久的
記憶のために同一サイズのデイスクフレームに書
き込まれる。かかるフレーム・バイプフレーム構
成はデイスク記憶装置を効率的に使用する上で重
要であり、また前述の特許において説明したよう
にコンピユーター全体の操作性に大幅な改善を行
なつている。
The actual arrangement of virtual storage devices includes devices where in other environments the computer itself would be recognized as the center of the device. In a preferred embodiment
A Magnuaon M80 type computer is used. The computer determines where and on what type of data storage device a given data should be stored. The main memory is used as a ``cache,'' in which data is reformatted from a user-selected record size to a convenient record size for storage in selected long-term storage devices called ``pages.'' For example, in this preferred embodiment, the most common storage mode is for disk drives;
The page size is also chosen to be equal to one disk track. This greatly simplifies addressing and formatting. Thus, data is received record by record from the host processor, and this data is written into "frames" of memory locations within the solid state memory of the Magnuson CPU. Once such a frame is filled with a "page" of data, this page is written to a disk frame of the same size for permanent storage. Such frame-by-frame configurations are important for efficient use of disk storage and, as explained in the aforementioned patents, have significantly improved overall computer operability.

本発明は上述の仮想記憶装置を1つ又はそれ以
上のホストプロセツサーにインターフエースする
のに用いられるハードウエア手段に関する。この
ハードウエア手段はそれ自体、ホストプロセツサ
ーから受信したデータのページ付けを実行するた
めの処理装置を含み、さらに冗長バイトを除去し
て必要な記憶を少くするためにデータの圧縮を行
なうための手段を含む。言うまでもなくこの圧縮
作用はユーザーレコードをバツクエンド記憶装置
に記憶するための適当なサイズにページ付けする
前に実行される。
The present invention relates to hardware means used to interface the above-described virtual storage device to one or more host processors. The hardware means itself includes a processing unit for performing pagination of data received from the host processor, and further for performing compression of the data to remove redundant bytes and reduce storage requirements. including means of Of course, this compression is performed prior to paging the user records to an appropriate size for storage in back-end storage.

<本発明の目的> 従つて、本発明の1つの目的は改善されたデジ
タルデータ記憶手段を提供することにある。
OBJECTS OF THE INVENTION Accordingly, one object of the invention is to provide improved digital data storage means.

本発明の別の目的は第1型式のホストプロセツ
サーを第2型式のプロセツサーを含む仮想記憶シ
ステムにインタフエースさせるための手段を提供
することにある。
Another object of the invention is to provide a means for interfacing a first type of host processor to a virtual storage system that includes a second type of processor.

本発明のさらに別の目的はかかるホストプロセ
ツサーからデータを受信した際、このデータを仮
想記憶システム内の記憶装置に記憶するのに便利
なブロツクサイズに仮想処理システム内の記憶装
置に書き込みを行なう前にデータの圧縮及びペー
ジ付けを実行するための装置を提供することにあ
る。
Yet another object of the present invention is to write data to a storage device within the virtual processing system upon receiving data from such a host processor in a block size convenient for storage in the storage device within the virtual storage system. The object of the present invention is to provide an apparatus for performing data compression and pagination before data compression and pagination.

本発明のさらにまた別の目的は複数のホストプ
ロセツサーを仮想記憶システムに接続させるため
の手段を提供することにある。
Yet another object of the present invention is to provide a means for connecting multiple host processors to a virtual storage system.

<本発明の要約> 本発明によると従属装置もしくはシステムを通
るデータの流れを制御するためのサブプロセツサ
ーを作動するマイクロプロセツサーを含む仮想記
憶装置用チヤンネルアダプターを提供することに
より上述の要求や本発明の諸目的を達成するもの
である。このマイクロプロセツサーは比較的低速
な且つ高インテリジエント装置であり、一方、こ
のサブプロセツサーは比較的低インテリジエント
な速度はかなり速い装置である。マイクロプロセ
ツサーとサブプロセツサーはそれぞれハードウエ
アー論理を制御する。マイクロプロセツサーが記
憶位置の割当て、データのページ付け、及び本発
明に係るチヤンネルアダプターを通つてデータが
流れる実際の径路を制御するのに対して、サブプ
ロセツサーすなわち「シーケンサー」は信号線の
切換えを制御し且つ実際に個別データバイトを転
送するハードウエアー論理を監視する。
SUMMARY OF THE INVENTION In accordance with the present invention, the above needs and the like are met by providing a channel adapter for virtual storage that includes a microprocessor operating a subprocessor for controlling the flow of data through a slave device or system. It achieves the objectives of the invention. The microprocessor is a relatively slow and highly intelligent device, while the subprocessor is a fairly fast device with relatively low intelligence. The microprocessor and subprocessor each control the hardware logic. While the microprocessor controls the allocation of storage locations, pagination of data, and the actual path that data takes through the channel adapter of the present invention, a subprocessor or "sequencer" handles the switching of signal lines. The hardware logic that controls and actually transfers the individual data bytes is monitored.

<実施例の説明> 上述のように、本発明は仮想記憶装置に関連
し、この仮想記憶装置は、チヤンネルアダプター
が1つもしくはそれ以上のホストプロセツサーと
上記仮想記憶装置システムとの間のインターフエ
ース機能を行い、この仮想記憶システムは与えら
れたユーザーレコードをどこに且つどんな種類の
データ記憶装置に記憶するべきかについてホスト
プロセツサーから独立して決定する。
DESCRIPTION OF EMBODIMENTS As mentioned above, the present invention relates to virtual storage, where a channel adapter connects one or more host processors to the virtual storage system. Performing interfacing functions, the virtual storage system makes decisions, independent of the host processor, as to where and on what type of data storage device a given user record should be stored.

第1図は、ホストプロセツサーと共に該システ
ムの全体的な配置構成を示し、且つチヤンネルア
ダプター及び仮想記憶システムを示している。ホ
ストプロセツサー30が種々の従来の入力及び出
力と共に示されている。入力及び出力は図中では
カード、印刷ペーパー出力及びコンソールで示
す。この仮想記憶装置の概念によると、ホストプ
ロセツサー30はインターフエースケーブル32
を介して少くとも2つのチヤンネルアダプター4
0に接続され、またこのアダプター40は仮想記
憶装置20に接続されている。チヤンネルアダプ
ター34が付加的に配設されており、図示の付加
的なホストプロセツサーに接続されている。この
ようにして、1個の仮想記憶装置20が少くとも
同じ数のチヤンネルアダプター34,40を通し
て複数のホストプロセツサーに使用することがで
きる。以下さらに詳しく説明するように、一般的
にホストプロセツサー毎に少くとも2つのチヤン
ネルアダプター34,40が配設され、このため
データの伝達実行のための交番的な経路が存在す
る。仮想記憶装置20はまたオペレーターと相互
的に作用をするコンソール42が与えられ且つイ
ンターフエースケーブル36により大容量記憶装
置38に接続されている。一般的にこの記憶装置
38はデイスクやテープ駆動装置とその他の型式
の記憶装置を含み得る。
FIG. 1 shows the overall layout of the system along with the host processor and shows the channel adapter and virtual storage system. A host processor 30 is shown with various conventional inputs and outputs. Inputs and outputs are shown in the diagram as cards, printed paper output, and consoles. According to this virtual storage concept, the host processor 30 connects the interface cable 32
At least two channel adapters via 4
0, and this adapter 40 is also connected to the virtual storage device 20. A channel adapter 34 is additionally provided and is connected to an additional host processor as shown. In this manner, one virtual storage device 20 can be used by multiple host processors through at least the same number of channel adapters 34,40. As will be explained in more detail below, there are typically at least two channel adapters 34, 40 per host processor, so that there are alternating paths for carrying out data transmission. Virtual storage 20 is also provided with a console 42 for operator interaction and is connected to mass storage 38 by an interface cable 36. Generally, this storage device 38 may include disk or tape drives and other types of storage devices.

ここで了解されることは第1図の符号38に示
すような磁気記憶装置のスペースを与えられたフ
アイルコードに割当てる時の従来の方法は、各デ
ータフアイルに対して最大サイズを選択すること
をユーザーに行なわせることであり、これだけの
スペースをフアイルに永久的に割当てることであ
つた。フアイルが固定されたサイズのものである
という比較的異常な状況を除いて、フアイルは十
分に利用されない。すなわち、実際のデータに完
全に満たされていない。ユーザーはスペースから
はみ出る危険を冒すよりむしろ必然的に大き目の
フアイルを組み立てるからである。このフアイル
の中にユーザーは適宜なレコード長さを指定し、
さらに、フアイルが処理されていない時、フアイ
ルをどこに且つどんな種類のデータ記憶装置(例
えばデイスク又はテープ)に記憶すべきかについ
て選択する。特定のユーザーフアイルを用いて仕
事を行ないたい時、ユーザーはその場所を指定し
且つフアイルのどの部分を記憶装置から計算用ホ
ストプロセツサー30に伝達するかについて指定
する。この計算が完了した後、フアイルは長期記
憶媒体の同一の場所に戻る。
It will be appreciated that the conventional method of allocating space on a magnetic storage device, such as that shown at 38 in FIG. 1, to a given file code is to select a maximum size for each data file. The idea was to force the user to do this and to permanently allocate this much space to the file. Files are underutilized except in relatively unusual situations where files are of a fixed size. That is, it is not completely filled with actual data. Users will inevitably build larger files rather than risk overflowing the space. In this file, the user specifies the appropriate record length,
Additionally, when a file is not being processed, there are choices as to where and on what type of data storage device (eg, disk or tape) the file should be stored. When a user wishes to work with a particular user file, the user specifies its location and specifies which portions of the file are to be transferred from storage to the computational host processor 30. After this calculation is complete, the file is returned to the same location on the long-term storage medium.

本発明によると、上述の本願と共に係属中の米
国出願によつてさらに詳しく説明したように、ユ
ーザーに代つて仮想記憶装置が与えられたユーザ
ーフアイルをどこに且つどんな型式のデータ記憶
装置に記憶するか決定する。従つて、ユーザーは
ただフアイルネームを指定するだけでよく、仮想
記憶装置はそのメモリをアクセスしてデータをど
こに記憶するか決定しその部分をホストプロセツ
サー30に読み込ませる。ホストプロセツサー3
0の外部で且つオペレーターの干渉なしに記憶ス
ペースの割当機能を実行するといくつかの重要な
利点が達成される。1つの最も重要な特徴はユー
ザーがフアイルサイズを指定する必要がなく、デ
ータの記憶に実際に必要な記憶スペースを与えら
れたフアイルに割当てるだけでよい。これによ
り、得られる記憶スペースをもつと有効に利用で
きる。第2の利点は仮想記憶装置がデータを、ユ
ーザーの目的によつて決定されたのでなく、記憶
目的に便利なブロツクサイズに再フオーマツトす
ることを可能にすることである。かくして、例え
ばユーザーフアイルは仮想記憶装置によつて結果
的な記憶場所として選択される記憶装置に記憶す
るのに便利なサイズを有するデータの「ページ」
に分割される。例えば、この好ましい実施例にお
いて、記憶の大部分はデイスク記憶装置上に配置
される。従つて、データの「ページ」は1つのデ
イスクトラツクの長さと等しいサイズに設定され
る。これはアドレス指定を大幅に簡略化すること
ができ、デイスクのスペースのより良い利用をも
たらす。このデータの「ページ付け」は、仮想記
憶装置20の中にデータのページを長期記憶媒体
38に書き込む前にアセンブルさせるキヤツシユ
ソリードステート記憶装置68を配設することに
よつて、仮想記憶装置中で実行される。好ましい
実施例において、仮想記憶装置20はMagnuson
M80コンピユーターを含む。このコンピユーター
の主記憶装置68がキヤツシユ・メモリになる。
かくして、例えば、ホストがデータを出力してい
る時、データは所望のデータページとサイズが等
しいデータ記憶領域に分割される仮想記憶装置2
0の記憶装置68に書き込まれる。なお、この分
割されたデータ記憶領域は「フレーム」と呼ばれ
る。データの与えられたフレームが満たされる
と、仮想記憶装置20はキヤツシユからデータを
デイスク駆動装置38の選択されたトラツクに出
力する。
In accordance with the present invention, as further described in the co-pending U.S. application cited above, where and on what type of data storage device is a user file provided with virtual storage stored on behalf of a user? decide. Therefore, the user only needs to specify a file name, and the virtual storage device accesses its memory to determine where to store the data and causes the host processor 30 to read that portion. host processor 3
Several important advantages are achieved by performing the storage space allocation function outside of 0 and without operator intervention. One of the most important features is that the user does not have to specify the file size, but only allocates to a given file the storage space actually needed to store the data. This allows the available storage space to be used effectively. A second advantage is that virtual storage allows data to be reformatted into block sizes convenient for storage purposes, rather than being determined by the user's purposes. Thus, for example, a user file is a "page" of data having a size convenient for storage in a storage device selected by virtual storage as the resulting storage location.
divided into For example, in this preferred embodiment, the majority of the storage is located on disk storage. Therefore, a "page" of data is sized equal to the length of one disk track. This can greatly simplify addressing and result in better utilization of disk space. This "paginating" of data is accomplished by providing cache read-state storage 68 in virtual storage 20 that allows pages of data to be assembled before being written to long-term storage 38. executed inside. In a preferred embodiment, virtual storage 20 is a Magnuson
Includes M80 computer. The main memory 68 of this computer becomes the cache memory.
Thus, for example, when the host is outputting data, the data is divided into data storage areas equal in size to the desired data pages in the virtual storage device 2.
0 storage device 68. Note that this divided data storage area is called a "frame". When a given frame of data is filled, virtual storage 20 outputs the data from the cache to the selected track of disk drive 38.

第1図で述べたように、チヤンネルアダプター
40はホストプロセツサー30と仮想記憶装置2
0との間のインタフエースを形成するのに用いら
れる。ページ付け機能が実行されるのはこれらの
チヤンネルアダプターの中である。すなわち、ユ
ーザーデータフアイルを従来技術におけるように
ユーザーにとつてではなく、記憶装置にとつて都
合のよいページ長のサブブロツクに再フオーマツ
ト化することである。さらに、データの圧縮を実
行することが好ましい。この圧縮作用にはデータ
から冗長度を除去すること、与えられたバイトが
繰返される回数を示す圧縮特性による冗長度の置
換えを含む。明らかに、かかるデータ圧縮をデー
タのページ付けの前に実行することが好ましく、
これはチヤンネルアダプターにおいても同様に実
行される。
As described in FIG. 1, the channel adapter 40 connects the host processor 30 and the virtual storage device 2.
used to form an interface with 0. It is within these channel adapters that pagination functions are performed. That is, the user data file is reformatted into sub-blocks of page length convenient for the storage device, rather than for the user as in the prior art. Furthermore, it is preferable to perform data compression. This compression involves removing redundancy from the data and replacing it with a compression characteristic that indicates the number of times a given byte is repeated. Obviously, it is preferable to perform such data compression before paging the data;
This is also done in the channel adapter as well.

第2図にチヤンネルアダプター60と仮想記憶
装置の中央プロセツサー(VCP)70の機能ブ
ロツク図を示す。チヤンネルアダプター60と中
心プロセツサー64は仮想記憶装置(VSS)バ
ス62に接続している。第2チヤンネルアダプタ
ー60は部分的にしか示していないが、これは複
数のチヤンネルアダプター60がただ1つの仮想
記憶装置中央プロセツサー70と関連して作動す
るただ1つの仮想記憶システムバス62に接続さ
れることを示す。前述のように、各チヤンネルア
ダプター60はホストプロセツサーインターフエ
ースユニツト74を介してホストプロセツサー3
0に接続されまた、システムバスインターフエー
ス76を介してVSSシステムバス62に接続さ
れている。各チヤンネルアダプター60内にチヤ
ンネルアダプタープロセツサー78、ホストプロ
セツサーデータハンドラ71及びオペレーシヨン
タグハンドラ73が存在している。オペレーシヨ
ンタグハンドラ73はホストプロセツサー30か
らの命令をチヤンネルアダプター60を通るデー
タの流れを制御するプロセツサー78とシステム
バスインターフエース76とに適用する。以下に
詳しく説明するように、チヤンネルアダプタープ
ロセツサー78は例えばZilog Z8000等のデータ
処理機能型マイクロプロセツサーを含む。この
Zilog Z8000はかなり複雑な決定作業に対する機
能を持つているが、ホストプロセツサーインター
フエース74に信号を切換えるような機能を実行
するには動作があまりにも遅い。従つて、第2図
のオペレーシヨンタグハンドラ中に存在する限定
されたインテリジエントを持つが速度はかなり速
い第2プロセツサーはチヤンネルアダプター78
に従属している。またこの第2プロセツサーはホ
ストプロセツサーインターフエース74に対する
プロトコールを事実上制御している。データをホ
ストプロセツサーインターフエース74からシス
テムインターフエース76に実際に移動する作業
はハードウエアで実行される。データの圧縮はこ
の径路上で起きる。このように圧縮されたデータ
はバス62を通つて仮想記憶装置64に送られ
る。前述のように、仮想記憶装置(VSS)64
は通常、Magnuson M80コンピユーター内に形
成される。図示の記憶装置68はMagnuson
M80の記憶装置であり、この中にデスク、テープ
等のバツクエンド記憶装置38に記憶された種々
のデータフアイルのアドレスが配置される。割当
はVSS中央プロセツサー70によつてなされる。
記憶装置68は例えば与えられたバツクエンドデ
ータ記憶装置38がデータを受信する状態になつ
ている間、1つもしくはそれ以上のデータページ
を短い時間にわたつて一時的に保持するためのキ
ヤツシユメモリをさらに含む。代わりにキヤツシ
ユメモリはバツクエンド記憶装置38からデータ
の与えられたページの全てをVSSシステムバス
62とチヤンネルアダプター60を通してホスト
プロセツサーに戻す前に保持するのに用いてもよ
い。記憶装置68はVCP64で実行されるソフ
トウエアプログラムも記憶する。最終的には、
VCP64は種々のバツクエンド記憶装置38及
びオペレーターコンソール42に接続するための
チヤンネル72を含む。
FIG. 2 shows a functional block diagram of the channel adapter 60 and the virtual storage central processor (VCP) 70. Channel adapter 60 and central processor 64 are connected to virtual storage system (VSS) bus 62. Although the second channel adapter 60 is only partially shown, it means that multiple channel adapters 60 are connected to a single virtual storage system bus 62 that operates in conjunction with a single virtual storage central processor 70. Show that. As previously mentioned, each channel adapter 60 connects to the host processor 3 via the host processor interface unit 74.
0 and to the VSS system bus 62 via a system bus interface 76. Within each channel adapter 60 are a channel adapter processor 78, a host processor data handler 71, and an operation tag handler 73. Operation tag handler 73 applies instructions from host processor 30 to processor 78 and system bus interface 76, which control the flow of data through channel adapter 60. As explained in more detail below, channel adapter processor 78 includes a data processing capable microprocessor, such as a Zilog Z8000. this
Although the Zilog Z8000 has the capability for fairly complex decision-making tasks, it is too slow to perform functions such as switching signals to the host processor interface 74. Therefore, the second processor with limited intelligence but much faster present in the operation tag handler of FIG. 2 is the channel adapter 78.
is subordinate to. This second processor also effectively controls the protocols to the host processor interface 74. The actual movement of data from host processor interface 74 to system interface 76 is performed in hardware. Data compression occurs along this path. The thus compressed data is sent to virtual storage device 64 via bus 62. As mentioned above, the virtual storage device (VSS) 64
is typically formed within a Magnuson M80 computer. The illustrated storage device 68 is a Magnuson
This is a storage device of the M80, in which addresses of various data files stored in a back-end storage device 38 such as a desk or tape are arranged. Assignments are made by the VSS central processor 70.
Storage device 68 may be, for example, a cache memory for temporarily holding one or more data pages for short periods of time while a given backend data storage device 38 is ready to receive data. further including. Alternatively, cache memory may be used to hold all of a given page of data from backend storage 38 before returning it to the host processor via VSS system bus 62 and channel adapter 60. Storage device 68 also stores software programs executed by VCP 64. eventually,
VCP 64 includes channels 72 for connecting to various backend storage devices 38 and operator console 42.

第3図に第2図のチヤンネルアダプター60の
詳細ブロツク図を示す。その主なコンポーネント
はZilog又はAMDZ8000マイクロプロセツサー8
0である。AMDZ8000はエラーを検知するため
に並列に接続している第2のZ8000 81によつて
2重にされてもよい。2つの8ビツト制御レジス
ター84及び85を通してZ8000マイクロプロセ
ツサー80に従属しているのはチヤンネルシーケ
ンサーユニツト86であり、このチヤンネルシー
ケンサーユニツト86は好ましい実施例では
Intel 8X 300マイクロコントローラーチツプであ
る。このマイクロコントローラチツプはさらに
2K×18ビツトPROM88によつて制御され適切
なシーケンスと作動制御を確実にしている。前述
のように、Z8000 80マイクロプロセツサーはデ
ータの流れを制御するが、チヤンネルシーケンサ
ー86は実際にそのかなり高い速度によつて制御
レジスターや信号ラインのゲート操作やハードウ
エアデータ移動の監視作業を処理する。かくし
て、チヤンネルシーケンサー86がマイクロプロ
セツサー80に従属していると言える間は、チヤ
ンネルシーケンサー86は高速データ処理の重要
な能力を発揮する。この能力はチヤンネルアダプ
ター60の作動にとつて重要である。
FIG. 3 shows a detailed block diagram of the channel adapter 60 of FIG. 2. Its main components are Zilog or AMDZ8000 microprocessor 8
It is 0. The AMD Z8000 may be duplicated with a second Z8000 81 connected in parallel to detect errors. Subordinate to the Z8000 microprocessor 80 through two 8-bit control registers 84 and 85 is a channel sequencer unit 86, which in the preferred embodiment is
It is an Intel 8X 300 microcontroller chip. This microcontroller chip also
It is controlled by a 2K x 18 bit PROM 88 to ensure proper sequencing and operational control. As previously mentioned, the Z8000 80 microprocessor controls the flow of data, but the channel sequencer 86 actually performs the tasks of gating control registers and signal lines and monitoring hardware data movement due to its considerably higher speed. Process. Thus, while channel sequencer 86 can be said to be subordinate to microprocessor 80, channel sequencer 86 provides significant high speed data processing capabilities. This capability is important to the operation of channel adapter 60.

第3図に続く図には第3図のチヤンネルアダプ
ター60の主コンポーネントの間をデータや制御
信号によつて取られる径路が示されている。第4
図乃至第8図の各図には1次1方向データ径路が
実線で、逆戻り径路が破線で示されている。各径
路が通つている主コンポーネントも示されてい
る。ここで了解されるように、これらの図は第3
図の一部であり、その残りの部分は図面を簡潔に
見せるために省略してある。これらの図と第3図
を一緒に見ると、チヤンネルアダプター全体の機
能が実行される状態が分る。かくして、例えば、
第4図はチヤンネルアダプター60を図の左にあ
るホストプロセツサー30に接続するチヤンネル
ケーブル32と、チヤンネルアダプター60と
VCP70を接続するVSSシステムバス64との
間の主データの結合を示す。この結合はデータが
ホストプロセツサー30によつて本発明に係る仮
想記憶装置20に書込まれる時、このデータによ
つて取られる径路になる。このデータはチヤンネ
ルバス32からレシーバー90に送られ、次いで
2:1マルチプレキサー92(単純なスイツチン
グユニツト)を通つてフアーストイン・フアース
トアウトバツフアー94に送られる。次に
PROM98の制御下で圧縮モードで作動するデ
ータ圧縮ロジツク96を通り第2フアーストイ
ン・フアーストアウトバツフアー100に送られ
る。データ圧縮を実行するのに用いることができ
るロジツクの詳細なハードウエアー図は第9図の
ところで述べる。このように圧縮されたデータは
出力バツフアー102から出力レジスター104
を通つてトラシーバー106に送られる。出力バ
ツフアー102において、FIFOバツフアー10
0(すなわち、8ビツトにパリテイービツトを加
えたもの)から送られる9ビツトデータワード
VSSバス64に伝達するのに便利な64データビ
ツト8パリテイビツトワードに組立てられる。デ
ータがVSSプロセツサー70(第2図)のキヤ
ツシユメモリで受信されると、実際のページ付け
作業、すなわち、長期記憶に便利なサイズを有す
るデータページの蓄積、が実行される。ページ付
け作業はデータが書込まれる記憶領域を指定する
Z8000マイクロプロセツサー80によつて起きる
(第5図参照)。
The figures following FIG. 3 illustrate the paths taken by data and control signals between the major components of the channel adapter 60 of FIG. Fourth
In each of FIGS. 8 to 8, the primary one-way data path is shown by a solid line, and the reverse path is shown by a broken line. The main components traversed by each path are also shown. It is understood herein that these figures
This is a portion of the figure, the rest of which has been omitted for the sake of brevity. When these figures and Figure 3 are viewed together, it can be seen that the overall function of the channel adapter is carried out. Thus, for example:
Figure 4 shows the channel cable 32 connecting the channel adapter 60 to the host processor 30 on the left side of the figure, and the channel adapter 60 and the channel cable 32 that connects the channel adapter 60 to the host processor 30 on the left side of the figure.
The main data coupling between the VCP 70 and the VSS system bus 64 is shown. This connection becomes the path taken by the data when it is written by the host processor 30 to the virtual storage device 20 of the present invention. This data is sent from the channel bus 32 to a receiver 90 and then through a 2:1 multiplexer 92 (a simple switching unit) to a first-in/first-out buffer 94. next
The data is passed through data compression logic 96 operating in a compressed mode under the control of PROM 98 to a second first-in/first-out buffer 100. A detailed hardware diagram of the logic that can be used to perform data compression is described in FIG. The data compressed in this way is transferred from the output buffer 102 to the output register 104.
The signal is sent to the transceiver 106 through the . In the output buffer 102, the FIFO buffer 10
A 9-bit data word sent from 0 (i.e., 8 bits plus the parity bit)
The 64 data bits are assembled into 8 parity bit words convenient for transmission on the VSS bus 64. Once the data is received in the cache memory of VSS processor 70 (FIG. 2), the actual pagination operation, ie, the accumulation of data pages of a convenient size for long-term storage, is performed. Pagination tasks specify the storage area where data is written.
It is generated by the Z8000 microprocessor 80 (see Figure 5).

第3図と第4図の破線径路は読み出し作業が実
行されている時に用いられるデータ径路を示す。
フアーストイン・フアーストアウトレジスター9
4及び100とデータ圧縮/減圧ロジツク96の
シーケンスが同一になるように、データはトラン
シーバー106から、データ入力バツフアー10
8、マルチプレツクスユニツト92、フアースト
イン・フアーストアウトレジスター94及び10
0、データ圧縮/減圧ロジツク96を通つて駆動
装置110からチヤンネルバスに戻される。第4
図のこれらの主なデータ流通径路はZ8000マイク
ロプロセツサー80によつて指令されると上述の
ようにチヤンネルシーケンサー86によつてシー
ケンスされ制御される。制御信号はマイクロプロ
セツサー80からコントロールレジスター84を
通つてチヤンネルシーケンサー86に送られ、こ
れによりZ8000バス122を8X300バス120か
ら分離する。第4図に示す直線径路は直接記憶ア
クセス(DMA)と呼ばれる。
The dashed paths in FIGS. 3 and 4 indicate the data path used when a read operation is being performed.
First-in/first-out register 9
Data is transferred from transceiver 106 to data input buffer 10 such that the sequence of data compression/decompression logic 96 is the same as that of
8. Multiplex unit 92, first-in/first-out registers 94 and 10
0 from drive 110 through data compression/decompression logic 96 and back to the channel bus. Fourth
These primary data flow paths of the figure, as commanded by the Z8000 microprocessor 80, are sequenced and controlled by the channel sequencer 86 as described above. Control signals are sent from microprocessor 80 through control register 84 to channel sequencer 86, thereby separating Z8000 bus 122 from 8X300 bus 120. The straight path shown in FIG. 4 is called Direct Memory Access (DMA).

ダイナミツクプログラム記憶装置116及び
PROM118はアドレスバス112及びZ8000バ
ス122に接続され、Z8000マイクロプロセツサ
ー80にその作動に必要な入力を与えている。同
様にして、制御信号は命令をシステム制御バスイ
ンターフエース126を通つてシステム制御バス
128に送る制御データレジスター124を介し
て送られる。Z8000マイクロプロセツサー80は
また制御信号をデータバス122を通してDMA
カウンター130に送り、且つ制御データレジス
ター132が要求する時、仮想記憶装置20から
制御データを受ける。Z8000マイクロプロセツサ
ー80は種々のレジスタ、タグ、オプコード等を
用いてチヤンネルシーケンサー86の作動を助
け、また図示しない種々の診断回路やエラー制御
回路を作動させる。これらの方法はパリテイーチ
エツクオペレーターがエラー検知などをする時に
適切な位置となるように、当業者には明白であ
る。
dynamic program storage 116 and
PROM 118 is connected to address bus 112 and Z8000 bus 122 to provide Z8000 microprocessor 80 with the necessary inputs for its operation. Similarly, control signals are sent through a control data register 124 that sends commands through a system control bus interface 126 to a system control bus 128. Z8000 microprocessor 80 also sends control signals to DMA via data bus 122.
counter 130 and receives control data from virtual storage 20 when control data register 132 requests it. Z8000 microprocessor 80 uses various registers, tags, opcodes, etc. to assist in the operation of channel sequencer 86 and also operates various diagnostic and error control circuits not shown. These methods will be obvious to those skilled in the art, as will be the appropriate location for a parity check operator to perform error detection and the like.

第5図乃至第8図に示す残りのデータ流通制御
径路を見ると、本発明に係るチヤンネルアダプタ
ー40の作動状態がさらに詳しく分る。かくし
て、例えば、第5図において、Z8000マイクロプ
ロセツサー80からVSSシステムデータバス6
4へなされるデータ流通経路は実線で示され、同
時にVSSシステムデータバス64からZ8000マイ
クロプロセツサー80に戻る制御信号の流通経路
は破線で示す。例えばZ8000マイクロプロセツサ
ー80はデータの各ページがホストプロセツサー
30に伝達される前に24バイトから成るヘツダ
ーを送ることができる。各ページ内の各ブロツク
はバイトヘツダーに先行される。この径路を介し
てVSS20とチヤンネルアダプター40がデー
タの移動のシーケンスに関して連通する。
Looking at the remaining data distribution control paths shown in FIGS. 5 to 8, the operating state of the channel adapter 40 according to the present invention can be seen in more detail. Thus, for example, in FIG.
The data flow paths to Z8000 microprocessor 80 are shown in solid lines, while the control signal flow paths from VSS system data bus 64 back to Z8000 microprocessor 80 are shown in dashed lines. For example, Z8000 microprocessor 80 can send a 24-byte header before each page of data is communicated to host processor 30. Each block within each page is preceded by a byte header. It is through this path that the VSS 20 and channel adapter 40 communicate regarding the sequence of data movement.

第6図において、ホストプロセツサー30から
チヤンネルシーケンサー86へなされる制御信号
の流通が実線で示され、同時に応答の流れが破線
で示されている。同様に第7図において、Z8000
マイクロプロセツサー80からホストプロセツサ
ー30に伝達するためのチヤンネルバスインター
フエース74へなされる制御信号の流通が実線で
示され、同時にホストプロセツサー30から
Z8000へ行なわれる制御信号の流通が破線で示さ
れている。かかる信号は例えば、チヤンネルアダ
プター60の作動に関係する細目に関して、ホス
トプロセツサー30から圧縮して結果的に長期記
憶用仮想記憶装置20に伝達するためのチヤンネ
ルアダプター60に伝達されるデータのフイール
ドサイズを有する信号になり得る。
In FIG. 6, the flow of control signals from host processor 30 to channel sequencer 86 is shown in solid lines, while the flow of responses is shown in dashed lines. Similarly, in Figure 7, Z8000
The flow of control signals from the microprocessor 80 to the channel bus interface 74 for transmission to the host processor 30 is shown in solid lines;
The flow of control signals to the Z8000 is shown by dashed lines. Such signals may include, for example, fields of data communicated from host processor 30 to channel adapter 60 for compression and subsequent communication to long-term storage virtual storage 20, regarding particulars related to the operation of channel adapter 60. It can be a signal with a size.

第8図では、チヤンネルシーケンサー86から
直接チヤンネルバス32になされる信号の流通が
示されている。この径路は普通は用いられず、ホ
ストプロセツサー30からの通信は従属チヤンネ
ルシーケンサー86を通してなされず、通常は
Z8000マイクロプロセツサー80を通してなされ
る。しかしこの径路は、例えば、チヤンネルアダ
プターがすでにデータを伝達するかもしくは組立
てるのにいつぱいな時にホストプロセツサー30
に「ビジー(busy)」信号を送るのに用いられ
る。ホストプロセツサー30は仮りに第2チヤン
ネルアダプター60がかかる目的でホストプロセ
ツサー30に接続されているとこの第2チヤンネ
ルアダプターを試す。チヤンネルバス32からチ
ヤンネルシーケンサー68へなされる逆径路(破
線)は診断用に用いられるだけである。
In FIG. 8, the distribution of signals from channel sequencer 86 directly to channel bus 32 is shown. This path is not normally used and communications from host processor 30 are not routed through slave channel sequencer 86 and are normally
This is done through the Z8000 microprocessor 80. However, this path may be used, for example, by the host processor 30 when the channel adapter is already transmitting data or is full to assemble.
used to send a "busy" signal to the Host processor 30 tries second channel adapter 60 if second channel adapter 60 is connected to host processor 30 for this purpose. The reverse path (dashed line) made from channel bus 32 to channel sequencer 68 is only used for diagnostic purposes.

第9図にデータを圧縮することができる1つの
可能なハードウエアの実施例を示す。一般的に8
ビツトの幅を持つバイトが第1レジスター100
に読込まれて、次にANDゲートとして示される
比較器104において、第2レジスター102の
内容と比較される。両者が同じ場合は、比較器1
04は高信号をフリツプ・フロツプ106の設定
入力に出力する。この信号がフリツプ・フロツプ
106の設定入力にとつて最初の高入力である場
合は、カウンター108は1にリセツトされる。
同時に、エスケープキヤラクター発生器110は
所定のキヤラクターを出力ライン112に出力す
る。他方、フリツプ・フロツプ106がすべてに
設定されている場合は、比較器104が高信号を
出力した唯一の結果はカウンター108の値を増
加させることである。レジスター100と102
の内容もNANDゲート114において比較され
る。かくして、一連の同一のバイトが比較器10
4において比較され、カウンター108において
計数された後に、もしバイトがレジスター100
に送られこのバイトがレジスター102に記憶さ
れているバイトと同じではない場合、フリツプ・
フロツプ106はリセツトされる。すなわち、フ
リツプ・フロツプ106から出される出力によつ
てカウンター108はその内容を出力ライン11
6に出力し、同時にレジスター102の内容、す
なわち繰返しバイトも出力ライン118上に出力
される。繰返し回数と繰返しバイトの例と一緒の
エスケープキヤラクターはこのようにして同一の
バイトの所定の位置に記憶される。ここで了解さ
れるように、この過程は繰返しバイトの数が圧縮
が実行されたことを示すのに必要なバイトの数に
少くとも等しい場合(この場合は4)にのみ有用
である。これは別のレジスターを図示したレジス
ターに加えることによつて且つANDゲート10
4とNANDゲート114に多重入力を与えるこ
とによつて単純に実行できる。前述のように、仮
想記憶装置20の全体的な機能はユーザーデータ
をデイスク駆動装置38等のバツクエンド記憶装
置に記憶するのに便利なサイズを持つフレームに
分割することにある。この前後関係で考えると、
チヤンネルアダプター60は仮想記憶装置中央プ
ロセツサー(VCP)70とホストプロセツサー
ソフトウエアーとの間のインターフエースの機能
を持つ。チヤンネルアダプター60は標準チヤン
ネルインターフエース74をもつたホストプロセ
ツサー30に取り付けられており且つVCP70
に接続される。すなわち、好ましい実施例では
Magnuson M80/40システムバスの延長線に補
正される。機能的には、チヤンネルアダプター6
0は5つの部分を含む。すなわち、1)チヤンネ
ルインターフエース74及びチヤンネルシーケン
サー86(上述の8X300ユニツト)、2)データ
圧縮/減圧ロジツク手段96、3)チヤンネルア
ダプタープロセツサー78とその記憶装置
(Z8000ユニツト)、4)ダイレクト記憶アクセス
ロジツク及び5)システムバスインターフエース
76である。1次チヤンネルアダプターの機能は
ホストプロセツサーユーザーの標準チヤンネルプ
ロトコールからデータの種々の長さブロツクを受
けること、できればこのデータを圧縮すると、こ
れらのブロツクをフレームにまとめること、及び
満たされたフレーム(ページと呼ばれる)の制御
をメツセージ手段によつて仮想記憶システム中央
プロセツサー70に送ることにある。従つて、1
フレームは仮想記憶システム中央プロセツサー7
0に含まれるソフトウエアーによつて割当てられ
る仮想記憶システム記憶装置38中の1トラツク
サイズを有するスペースとなる。フレームの制御
は初めに、メツセージを介してチヤンネルアダプ
ター60に送られる。次いで、仮想記憶システム
中央プロセツサー70は満たされたフレーム、す
なわちページのバツクエンドデイスク記憶装置へ
なされる移動を制御し、これによりフレームを自
由にして再使用に備える。好ましい実施例におい
て、フレームサイズは19064バイトである。逆作
用は読込み作業の際、同様に実行される。チヤン
ネルアダプター60の第2の機能はホストプロセ
ツサー30と仮想記憶システムプロセツサー70
のソフトウエアーとの間をメツセージが流通する
ようにすることにある。この作業はメツセージが
まとめられていない時と、デイスク駆動装置38
に記憶されていない時を除いて同様に実行され
る。
FIG. 9 shows one possible hardware implementation that can compress data. generally 8
A byte with a width of bits is stored in the first register 100.
and then compared with the contents of the second register 102 in a comparator 104, shown as an AND gate. If both are the same, comparator 1
04 outputs a high signal to the configuration input of flip-flop 106. If this signal is the first high input to the set input of flip-flop 106, counter 108 is reset to one.
At the same time, escape character generator 110 outputs a predetermined character on output line 112. On the other hand, if flip-flop 106 is set to all, the only result of comparator 104 outputting a high signal is to increase the value of counter 108. Registers 100 and 102
The contents of are also compared in NAND gate 114. Thus, a series of identical bytes are detected by comparator 10.
4 and counted in counter 108, if the byte is
If this byte is not the same as the byte stored in register 102, the flip
Flop 106 is reset. That is, the output from flip-flop 106 causes counter 108 to transmit its contents to output line 11.
6 and at the same time the contents of register 102, ie the repeat byte, are also output on output line 118. The escape character along with the repetition number and the example of the repetition byte are thus stored in the same byte in a predetermined position. As will be appreciated herein, this process is only useful if the number of repeat bytes is at least equal to the number of bytes needed to indicate that compression has been performed (in this case 4). This can be done by adding another register to the register shown and by adding an AND gate 10
This can be done simply by providing multiple inputs to NAND gate 114 and NAND gate 114. As previously mentioned, the overall function of virtual storage 20 is to divide user data into frames of a convenient size for storage on a back-end storage device such as disk drive 38. Considering this context,
Channel adapter 60 functions as an interface between virtual storage central processor (VCP) 70 and host processor software. A channel adapter 60 is attached to a host processor 30 having a standard channel interface 74 and a VCP 70.
connected to. That is, in the preferred embodiment
Corrected to be an extension of the Magnuson M80/40 system bus. Functionally, channel adapter 6
0 contains 5 parts. 2) data compression/decompression logic means 96; 3) channel adapter processor 78 and its storage (Z8000 unit); 4) direct storage. access logic and 5) system bus interface 76. The function of the primary channel adapter is to receive blocks of various lengths of data from the host processor user's standard channel protocol, to compress this data if possible, to assemble these blocks into frames, and to collect the filled frames ( control of the pages (referred to as pages) is sent by message means to the virtual storage system central processor 70. Therefore, 1
Frame is a virtual memory system central processor 7
0 will be the space having the size of one track in the virtual memory system storage device 38 that is allocated by the software included therein. Control of the frame is initially sent to channel adapter 60 via messages. The virtual storage system central processor 70 then controls the movement of filled frames, or pages, to back-end disk storage, thereby freeing the frames for reuse. In the preferred embodiment, the frame size is 19064 bytes. The reverse action is similarly performed during the reading operation. The second function of channel adapter 60 is to connect host processor 30 and virtual memory system processor 70.
The goal is to allow messages to flow between the software. This work is performed when the messages are not grouped and when the disk drive unit 38
It is executed in the same way except when it is not stored in .

上述のように、仮想記憶装置において、仮想ボ
リユームの概念すなわち指定されていない長さの
データフアイルは重要である。かかる仮想ボリユ
ームは少くとも1ページのデータから成る。かか
るボリユームが「開く」と、それに対するアクセ
スは仮想記憶システム中央プロセツサー70によ
つて作られ且つチヤンネルアダプター60によつ
てアクセスされる。「ストリームブロツク」によ
つて制御される。仮想記憶装置20に接続されて
いるホストプロセツサー30ならばどんなホスト
でも、いかなるボリユームに対してもアクセスで
き、而して本当の多重ホストプロセツサーが同一
のフアイルに対して同時のアクセスできる。これ
は従来では不可能な事である。
As mentioned above, the concept of virtual volumes, or data files of unspecified length, is important in virtual storage. Such a virtual volume consists of at least one page of data. When such a volume is "opened," access to it is made by the virtual storage system central processor 70 and accessed by the channel adapter 60. Controlled by the ``stream block''. Any host processor 30 connected to the virtual storage device 20 can access any volume, and true multi-host processors can access the same file simultaneously. . This is not possible conventionally.

データを開かれたボリユームに書き込むため
に、ホストプロセツサー30は「SET ID」命令
をチヤンネルアダプター60に発する。チヤンネ
ルアダプター60のハードウエアーロジツクは選
択を検知し且つ8X300チヤンネルシーケンサー8
6に監視されたレジスターに1ビツトをセツトす
る。チヤンネルシーケンサー86はチヤンネルタ
グを制御し且つチヤンネルアドレス及び命令を
Z8000マイクロプロセツサー80に使用できるレ
ジスターに記憶し、また割込み信号をZ8000マイ
クロプロセツサー80に送る。Z8000マイクロプ
ロセツサー80は8X300マイクロコントローラ8
6に命令を送ることによつてこの割込みに応答す
る。8X300マイクロコントローラー86は命令を
受けると応答して割込みの理由を発する。次いで
Z8000マイクロプロセツサー80は8X300マイク
ロコントローラ86に命令して初期の状態にさせ
且つチヤンネル32からデータバイトをチヤンネ
ルアドレスレジスター及びZ8000マイクロプロセ
ツサー80の命令レジスターに伝送させる。これ
らの4つのバイトはストリームブロツクI.D.を含
む。このストリームブロツクI.D.はZ8000マイク
ロプロセツサー80によつて変換されストリーム
ブロツクのシステム記憶アドレスとして処理され
る。Z8000マイクロプロセツサー80はストリー
ムブロツクアドレス及び他の制御データをシステ
ムバスインターフエースロジツクを制御するレジ
スターに書き込む。次いでストリームブロツクは
Magnuson M80/40バスプロトコールを用いて
いる仮想記憶システム記憶装置68からフエツチ
されZ8000記憶装置の中に配置される。Z8000マ
イクロプロセツサー80は次に終了状態をチヤン
ネル状態レジスター内に書き込み且つ8X300マイ
クロコントローラ86ユニツトに命令してホスト
プロセツサー30に直接に終了状態を与えさせ
る。かくして仮想記憶システム記憶装置68はホ
ストプロセツサー30からデータを受けられる体
制になる。
To write data to the opened volume, host processor 30 issues a "SET ID" command to channel adapter 60. The hardware logic of the channel adapter 60 detects the selection and connects the 8X300 channel sequencer 8.
Set 1 bit in the register monitored by 6. Channel sequencer 86 controls channel tags and provides channel addresses and instructions.
It is stored in a register available to the Z8000 microprocessor 80 and also sends an interrupt signal to the Z8000 microprocessor 80. Z8000 microprocessor 80 is 8X300 microcontroller 8
It responds to this interrupt by sending a command to 6. The 8X300 microcontroller 86 responds to instructions by issuing an interrupt reason. then
Z8000 microprocessor 80 commands 8X300 microcontroller 86 to enter an initial state and transmit data bytes from channel 32 to the channel address register and to the Z8000 microprocessor 80 instruction register. These four bytes contain the stream block ID. This stream block ID is translated by the Z8000 microprocessor 80 and treated as the stream block's system storage address. Z8000 microprocessor 80 writes stream block addresses and other control data to registers that control the system bus interface logic. Then the stream block
The virtual memory system is fetched from storage 68 and placed into Z8000 storage using the Magnuson M80/40 bus protocol. The Z8000 microprocessor 80 then writes the termination status into the channel status register and instructs the 8X300 microcontroller 86 unit to provide the termination status directly to the host processor 30. Virtual memory system storage 68 is thus ready to receive data from host processor 30.

次に、ホストプロセツサー30は上述のように
「SET ID」作用を繰返す書き込み命令を初期の
状態を通してチエインする。次にZ8000マイクロ
プロセツサー80は書き込みや圧縮等のデータ伝
送パラメーターをチヤンネルインターフエースロ
ジツク内に設定し、8X300マイクロコントロール
86に命令してデータ伝送を開始させる。このよ
うにして、インターフエースハードウエアーはチ
ヤンネル32からデータ圧縮ロジツク96に先行
するフアーストイン・フアーストアウトバツフア
94へのバイト連続データ伝送を制御する。この
作業バツフア94と100がいつぱいになるまで
駆動される。一方、Z8000マイクロプロセツサー
80によつてダイレクト記憶アクセス(DMA)
の伝送が開始する。次にDMAロジツクはバツハ
アーから送られるバイト連続データ8をバイトの
組に組立て、VSSシステムバス64を得て、デ
ータを仮想記憶システム記憶装置68に送る。ダ
イレクト記憶アクセスロジツクの作用には自動的
にアドレスを増加させることと、バイトを計数す
ることが含まれ、これによつてZ8000マイクロプ
ロセツサー80をこれらの仕事から解放し従つて
Z8000マイクロプロセツサー80がさらにもつと
速く作動するようにする。この作用の結果、デー
タは完全にシステムに伝送される。そうすると、
8X300マイクロコントローラ86は再びZ8000マ
イクロプロセツサー80に割込み、Z8000マイク
ロプロセツサー80は現在の状態を示すためにス
トリームブロツクを更新し、ヘツダーデータを記
憶されたブロツクに加え、そして8X300マイクロ
コントローラー86に命令して再びホストプロセ
ツサー30に対して作動が完了したことを示させ
る。十分なホストプロセツサーデータが仮想記憶
システム記憶装置68内のフレームに送られてこ
れを満たすと、このフレーム(ページ)の制御は
VCP70に送られる。
Host processor 30 then chains write instructions through the initial state that repeat the ``SET ID'' operation as described above. The Z8000 microprocessor 80 then sets data transmission parameters, such as writing and compression, in the channel interface logic and instructs the 8X300 microcontroller 86 to begin data transmission. In this manner, the interface hardware controls byte-sequential data transmission from channel 32 to first-in/first-out buffer 94 which precedes data compression logic 96. The work buffers 94 and 100 are driven until they are full. Meanwhile, direct memory access (DMA) is provided by the Z8000 microprocessor 80.
transmission begins. The DMA logic then assembles the byte-sequential data 8 sent from Batcher into byte sets, obtains the VSS system bus 64, and sends the data to virtual memory system storage 68. The actions of the direct memory access logic include automatically incrementing addresses and counting bytes, thereby relieving the Z8000 microprocessor 80 of these tasks and thus
This allows the Z8000 microprocessor 80 to operate even faster. As a result of this action, the data is completely transmitted to the system. Then,
The 8X300 microcontroller 86 interrupts the Z8000 microprocessor 80 again, the Z8000 microprocessor 80 updates the stream block to indicate the current state, adds the header data to the stored block, and sends the 8X300 microprocessor 86 back to the 8X300 microprocessor 86. command to again indicate to host processor 30 that the operation is complete. Once sufficient host processor data has been sent to fill a frame in virtual memory system storage 68, control of this frame (page) is
Sent to VCP70.

前述のように、データはフレーム方式で伝送さ
れる。従つてZ8000マイクロプロセツサー80の
作動はフレームを満たすように設定される。フレ
ームが、チヤンネル32がデータの終了を知らせ
る前に満たされる場合は、ブロツクは別のフレー
ムに続く。次のフレームは通常、仮想記憶システ
ム記憶装置68の最初の記憶装置に接触していな
いため、第2の直接記憶アクセスを設定すること
が必要になる。このことは前述のように本質的な
独立した作動である。当業者に明白なように、シ
ステムバスインターフエース76は直接記憶制御
下にあるデータ圧縮バツフア102およびZ8000
マイクロプロセツサー80から直接送られる仮想
記憶システム記憶装置68のデータ伝送、すなわ
ちデータ伝送作動と制御作動を処理する。これら
の作動は必要に応じてインターリーブしてもよ
い。読み出し作業は上述のように書込み作業と同
様である。特に、好ましい実施例においてデータ
圧縮/減圧ロジツク96を通る移動方向が設計を
簡略化するために両者のモードに共通の方向にな
つている。ただ異なる点は第4図に示すようにデ
ータの伝送が逆の方向で進むことである。
As mentioned above, data is transmitted in frames. The operation of the Z8000 microprocessor 80 is therefore set to fill the frame. If the frame is filled before channel 32 signals the end of the data, the block continues with another frame. Since the next frame typically does not touch the first storage device of virtual storage system storage 68, it will be necessary to establish a second direct storage access. This is essentially an independent operation as described above. As will be apparent to those skilled in the art, system bus interface 76 is connected to data compression buffer 102 and Z8000 under direct storage control.
It handles virtual memory system storage 68 data transmissions directly from microprocessor 80, ie, data transmission operations and control operations. These operations may be interleaved as desired. The read operation is similar to the write operation as described above. In particular, in the preferred embodiment, the direction of travel through the data compression/decompression logic 96 is common to both modes to simplify design. The only difference is that data transmission proceeds in the opposite direction, as shown in FIG.

特にここで述べなくても当業者にとつては本発
明の他の数多くの利点が認められるであろう。例
えば、上述のチヤンネルアダプター40全体にわ
たつて数多くの点に診断及びエラー補正ロジツク
を組込んで作動の便宜と信頼性を図ることができ
る。また、当業者が認めるようにチヤンネルアダ
プター40は仮想記憶装置プロセツサー70とし
てのMagnuson M80コンピユーターを含む仮想
記憶装置20と、IBM370CPU(特に前記のco−
pending applicationsに述べられているように
「MVS」作動システムを有したもの)とをインタ
ーフエースするように設計されているが、このチ
ヤンネルアダプター40の設計は他の仮想記憶シ
ステム中央プロセツサー70及び他のホストプロ
セツサー30に対して作動するように容易に修正
できる。
Numerous other advantages of the present invention will be apparent to those skilled in the art, although not specifically described herein. For example, diagnostic and error correction logic may be incorporated at numerous points throughout the channel adapter 40 described above for convenience and reliability of operation. Additionally, as those skilled in the art will appreciate, channel adapter 40 can be used to connect virtual storage 20, including a Magnuson M80 computer as virtual storage processor 70, and an IBM 370 CPU (particularly the aforementioned co-processor).
Although the design of channel adapter 40 is designed to interface with other virtual storage system central processors 70 and other It can be easily modified to work with a host processor 30.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明に係るチヤンネルアダプターに
接続された仮想記憶システムを含むデータ処理記
憶システムの全体図、第2図は本発明に係るチヤ
ンネルアダプターと仮想記憶装置処理装置のブロ
ツク図、第3図は本発明に係るチヤンネルアダプ
ターの詳細なブロツク図、第4図は第3図の本発
明に係るチヤンネルアダプターを通る主データ径
路を示すと同時に径路中の種々の段階を示す図、
第5図は仮想記憶装置データバスと本発明に係る
チヤンネルアダプターの中心であるマイクロプロ
セツサーとの間を流通する制御信号の流れを示す
図、第6図はマイクロプロセツサーからシーケン
サに行つたり戻つたりする制御信号の流れを示す
図、第7図はホストコンピユータとマイクロプロ
セツサーとの間を流通する制御信号の流れを示す
図、第8図はチヤンネルとシーケンサーとの間を
流通する制御信号の流れを示す図、第9図は本発
明に係るチヤンネルアダプターにおいてデータ圧
縮を実行するのに用いられ得るハードウエアーの
ブロツク図。
FIG. 1 is an overall diagram of a data processing storage system including a virtual storage system connected to a channel adapter according to the present invention, FIG. 2 is a block diagram of a channel adapter and a virtual storage processing device according to the present invention, and FIG. 3 4 is a detailed block diagram of a channel adapter according to the invention; FIG. 4 is a diagram showing the main data path through the channel adapter according to the invention of FIG.
Figure 5 is a diagram showing the flow of control signals flowing between the virtual storage data bus and the microprocessor which is the center of the channel adapter according to the present invention, and Figure 6 shows the flow of control signals flowing from the microprocessor to the sequencer. Figure 7 shows the flow of control signals flowing back and forth between the host computer and the microprocessor, and Figure 8 shows the flow of control signals flowing between the channel and the sequencer. FIG. 9 is a block diagram of hardware that may be used to perform data compression in a channel adapter according to the present invention.

Claims (1)

【特許請求の範囲】 1 長期記憶媒体と該長期記憶媒体へのデータ記
憶のための記憶場所を割り当てるためのプロセツ
サーとを含む仮想記憶システムとホストプロセツ
サーとに接続されたチヤンネルアダプターであつ
て、このチヤンネルアダプターが、 前記ホストプロセツサーと前記仮想記憶システ
ム中の前記プロセツサーとの間に接続され、前記
ホストプロセツサーによつて記憶のために供給さ
れたデータを前記長期記憶媒体に記憶するのに適
宜なサイズのブロツクに分割するチヤンネルアダ
プタープロセツサーと、 前記データを前記適宜なブロツクのサイズで前
記仮想記憶システム中の前記プロセツサーに供給
する装置と、 を備えたことを特徴とするチヤンネルアダプタ
ー。 2 前記チヤンネルアダプタープロセツサーが比
較的低速のインテリジエントプロセツサーと、該
インテリジエントプロセツサーに従属する比較的
高速のチヤンネルシーケンサーユニツトとを備え
ることを特徴とする特許請求の範囲第1項に記載
のチヤンネルアダプター。 3 冗長度を除去することにより前記データを圧
縮する手段と、前記長期記憶媒体への記憶のため
に前記圧縮されたデータを適宜なサイズのブロツ
クに分割する手段とを備えることを特徴とする特
許請求の範囲第1項に記載のチヤンネルアダプタ
ー。 4 複数のチヤンネルアダプターが複数のホスト
プロセツサーを前記仮想記憶システムに相互に関
連付けることを特徴とする特許請求の範囲第1項
に記載のチヤンネルアダプター。 5 前記長期記憶媒体が複数の磁気デイスク装置
であり、前記長期記憶媒体のための前記ブロツク
のサイズが該磁気デイスク装置の1つのトラツク
のサイズであることを特徴とする特許請求の範囲
第1項に記載のチヤンネルアダプター。 6 長期記憶媒体を含む仮想記憶システムに接続
され、任意のフオーマツトでソースから受信され
たデータを長期記憶媒体に記憶するためのチヤン
ネルアダプターであつて、 前記データがどこに且つどんなタイプの関連し
た長期記憶媒体に記憶されるかを決定する手段
と、 前記データを前記長期記憶媒体へ記憶するのに
適宜なブロツクサイズに分割する手段と、 前記ソースからデータを受け取り、前記分割す
る手段による前記分割に応答して前記仮想記憶シ
ステムへの前記データの流れを制御する手段と、 を備えることを特徴とするチヤンネルアダプタ
ー。 7 前記データを前記長期記憶媒体に記憶するの
に適宜なブロツクサイズに分割する前にデータの
圧縮を行う手段をさらに備えたことを特徴とする
特許請求の範囲第6項に記載のチヤンネルアダプ
ター。 8 複数の前記受信するための手段が、ホストプ
ロセツサーと前記仮想記憶システムとを相互に関
連付けるために設けられていることを特徴とする
特許請求の範囲第6項に記載のチヤンネルアダプ
ター。 9 前記長期記憶媒体が、前記長期記憶媒体のた
めの前記ブロツクのサイズが磁気デイスク装置の
1つのトラツクのサイズである複数の該磁気デイ
スク装置を含むことを特徴とする特許請求の範囲
第6項に記載のチヤンネルアダプター。 10 仮想記憶システムとホストプロセツサーと
の間に介入し、前記ホストプロセツサーから受信
したデータをユーザに選択されたフオーマツトに
分割し、且つ該分割されたデータを前記仮想記憶
システム内での記憶に適するように選択されたフ
オーマツトで前記仮想記憶システムに与えるため
の該チヤンネルアダプターであつて、 第1および第2のプロセツサー手段を備え、該
第1のプロセツサー手段がホストプロセツサー命
令と仮想記憶システム命令に応答し、且つ前記第
2のプロセツサー手段の動作を制御し、 前記第2のプロセツサー手段が前記第1のプロ
セツサー手段からの命令に応答して前記チヤンネ
ルアダプターを通る前記データの流れを方向づ
け、 前記第1のプロセツサー手段は比較的インテリ
ジエントであり、前記第2のプロセツサー手段は
比較的に高速であることを特徴とするチヤンネル
アダプター。 11 前記データを分割する前に前記データを圧
縮する手段をさらに含むことを特徴とする特許請
求の範囲第10項に記載のチヤンネルアダプタ
ー。
[Scope of Claims] 1. A channel adapter connected to a host processor and a virtual storage system including a long-term storage medium and a processor for allocating storage locations for data storage on the long-term storage medium, , the channel adapter is connected between the host processor and the processor in the virtual storage system to store data provided for storage by the host processor on the long-term storage medium. a channel adapter processor that divides the data into blocks of an appropriate size for processing, and a device that supplies the data in the appropriate block size to the processor in the virtual storage system. channel adapter. 2. Claim 1, wherein the channel adapter processor comprises a relatively low-speed intelligent processor and a relatively high-speed channel sequencer unit subordinate to the intelligent processor. Channel adapter as described in . 3. A patent characterized in that it comprises means for compressing said data by removing redundancy, and means for dividing said compressed data into blocks of appropriate size for storage on said long-term storage medium. The channel adapter according to claim 1. 4. The channel adapter of claim 1, wherein a plurality of channel adapters interconnect a plurality of host processors with the virtual storage system. 5. Claim 1, wherein the long-term storage medium is a plurality of magnetic disk devices, and the size of the block for the long-term storage medium is the size of one track of the magnetic disk device. Channel adapter as described in . 6. A channel adapter connected to a virtual storage system comprising a long-term storage medium for storing data received from a source in any format on the long-term storage medium, the channel adapter comprising: means for determining whether the data is to be stored on a medium; means for dividing said data into block sizes suitable for storage on said long-term storage medium; and means for receiving data from said source and responsive to said dividing by said means for dividing. and means for controlling the flow of data to the virtual storage system. 7. The channel adapter according to claim 6, further comprising means for compressing the data before dividing the data into appropriate block sizes for storage on the long-term storage medium. 8. The channel adapter of claim 6, wherein a plurality of said receiving means are provided for correlating a host processor and said virtual storage system. 9. Claim 6, wherein the long-term storage medium includes a plurality of magnetic disk drives, wherein the size of the block for the long-term storage medium is the size of one track of the magnetic disk drive. Channel adapter as described in . 10 Intervening between a virtual storage system and a host processor, dividing data received from the host processor into a format selected by the user, and transmitting the divided data within the virtual storage system. said channel adapter for presenting said virtual storage system in a format selected to be suitable for storage, said channel adapter comprising first and second processor means, said first processor means processing a host processor instruction and a virtual storage system; responsive to storage system instructions and controlling the operation of said second processor means, said second processor means directing said data flow through said channel adapter in response to instructions from said first processor means; Orientation: A channel adapter characterized in that said first processor means is relatively intelligent and said second processor means is relatively fast. 11. The channel adapter according to claim 10, further comprising means for compressing the data before dividing the data.
JP57077391A 1981-05-08 1982-05-08 Channel adaptor for virtual memory device Granted JPS57195376A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US26195081A 1981-05-08 1981-05-08

Publications (2)

Publication Number Publication Date
JPS57195376A JPS57195376A (en) 1982-12-01
JPH0430057B2 true JPH0430057B2 (en) 1992-05-20

Family

ID=22995574

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57077391A Granted JPS57195376A (en) 1981-05-08 1982-05-08 Channel adaptor for virtual memory device

Country Status (2)

Country Link
JP (1) JPS57195376A (en)
CA (1) CA1174373A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5118409A (en) * 1974-08-07 1976-02-14 Hitachi Ltd
JPS5322331A (en) * 1976-08-13 1978-03-01 Fujitsu Ltd Dynamic address conversion s ystem
JPS5398741A (en) * 1977-02-08 1978-08-29 Nec Corp High level recording and processing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5118409A (en) * 1974-08-07 1976-02-14 Hitachi Ltd
JPS5322331A (en) * 1976-08-13 1978-03-01 Fujitsu Ltd Dynamic address conversion s ystem
JPS5398741A (en) * 1977-02-08 1978-08-29 Nec Corp High level recording and processing system

Also Published As

Publication number Publication date
CA1174373A (en) 1984-09-11
JPS57195376A (en) 1982-12-01

Similar Documents

Publication Publication Date Title
US6065087A (en) Architecture for a high-performance network/bus multiplexer interconnecting a network and a bus that transport data using multiple protocols
US6421760B1 (en) Disk array controller, and components thereof, for use with ATA disk drives
KR100386348B1 (en) A circuit for aligning logical sectors with physical sectors in a disk storage system
US6401149B1 (en) Methods for context switching within a disk controller
US7272697B2 (en) Systems and methods for managing data stored in a multi-drive storage device
US6301625B1 (en) System and method for processing and tracking the completion of I/O requests in a disk array system
JP3415567B2 (en) USB transfer control method and USB controller
KR100352039B1 (en) A fly-by XOR that generates parity for data collected from the bus
US5694581A (en) Concurrent disk array management system implemented with CPU executable extension
KR101035225B1 (en) Controller apparatus and method for improved data transfer
USRE36989E (en) Virtual storage system and method
EP0485507B1 (en) Modular input/output system for supercomputers
EP0141742A2 (en) Buffer system for input/output portion of digital data processing system
JPH07282025A (en) Clock circuit
EP0715735A4 (en) Ata interface architecture employing state machines
US6105076A (en) Method, system, and program for performing data transfer operations on user data
WO1996018141A1 (en) Computer system
JP2539058B2 (en) Data processor
JPH06175786A (en) Disk array device
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
US4855900A (en) System for transferring data to a mainframe computer
JPH0430057B2 (en)
JPH08106443A (en) Data processing system and parallel computer
JP2502932B2 (en) Data transfer method and data processing system