JPH0452967B2 - - Google Patents
Info
- Publication number
- JPH0452967B2 JPH0452967B2 JP60235807A JP23580785A JPH0452967B2 JP H0452967 B2 JPH0452967 B2 JP H0452967B2 JP 60235807 A JP60235807 A JP 60235807A JP 23580785 A JP23580785 A JP 23580785A JP H0452967 B2 JPH0452967 B2 JP H0452967B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- write
- magnetic tape
- buffer
- instruction
- 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
Links
Landscapes
- Digital Magnetic Recording (AREA)
Description
【発明の詳細な説明】
〔目次〕
概 要
産業上の利用分野
従来の技術
発明が解決しようとする問題点
問題点を解決するための手段(第1図)
作 用
実施例
(a) 一実施例の全体構成の説明(第2図)
(b) 先取り制御部の構成の説明(第3図、第4
図) (c) 起動処理動作の説明(第5図、第6図) (d) 対ホスト処理動作の説明(第7図、第8図) (e) 対ドライブ処理動作の説明(第9図、第10
図) (f) 全体動作の説明(第11図) (g) 他の実施例の説明 発明の効果 〔概要〕 上位から転送された命令を複数蓄積しうるバツ
フアを備え、命令を先取りする磁気テープ装置の
命令先取り制御方法において、論理的にEOTを
発して命令先取り制御する第1のモードと、実際
のEOT検出によつて命令先取り制御する第2の
モードとを設けることにより、テープ終端領域近
傍でのストリーミング制御による書込みを有効に
行うようにしたものである。
図) (c) 起動処理動作の説明(第5図、第6図) (d) 対ホスト処理動作の説明(第7図、第8図) (e) 対ドライブ処理動作の説明(第9図、第10
図) (f) 全体動作の説明(第11図) (g) 他の実施例の説明 発明の効果 〔概要〕 上位から転送された命令を複数蓄積しうるバツ
フアを備え、命令を先取りする磁気テープ装置の
命令先取り制御方法において、論理的にEOTを
発して命令先取り制御する第1のモードと、実際
のEOT検出によつて命令先取り制御する第2の
モードとを設けることにより、テープ終端領域近
傍でのストリーミング制御による書込みを有効に
行うようにしたものである。
本発明は、複数の命令の格納可能なバツフアを
有する磁気テープ装置において、当該バツフアに
上位からの命令を先取りしうる命令先取り制御方
法及びその装置に関する。
有する磁気テープ装置において、当該バツフアに
上位からの命令を先取りしうる命令先取り制御方
法及びその装置に関する。
コンピユータの外部記憶装置として広く磁気テ
ープ装置が利用されており、近年特に磁気デイス
ク装置等の他に外部記憶装置のバツクアツプ用と
して用いられている。
ープ装置が利用されており、近年特に磁気デイス
ク装置等の他に外部記憶装置のバツクアツプ用と
して用いられている。
このような磁気テープ装置においては、第12
図に示す如く、磁気テープへ書込み及び読出しを
行う磁気ヘツドと、磁気テープの走行駆動を行う
磁気テープ駆動部とを有するテープドライブ部1
と、ホストコントローラからの命令によりこれを
制御する制御部CTとが設けられて構成されてい
る。
図に示す如く、磁気テープへ書込み及び読出しを
行う磁気ヘツドと、磁気テープの走行駆動を行う
磁気テープ駆動部とを有するテープドライブ部1
と、ホストコントローラからの命令によりこれを
制御する制御部CTとが設けられて構成されてい
る。
近年、この制御部CT内にバツフアBFを設け、
ホストコントローラからの命令、データを先取り
し、バツフアBF内に蓄えておき、テープドライ
ブ部1に対しバツフアBF内の命令、データを順
次実行させる命令先取り制御を行うものが開発さ
れ、実用に供されている。
ホストコントローラからの命令、データを先取り
し、バツフアBF内に蓄えておき、テープドライ
ブ部1に対しバツフアBF内の命令、データを順
次実行させる命令先取り制御を行うものが開発さ
れ、実用に供されている。
このような磁気テープ装置は、バツフア付き磁
気テープ装置と称され、ホストコントローラから
の命令に対し、非同期でテープドライブ部1を動
作できるので、ホストコントローラ側では一命令
に対しテープドライブ部1の動作完了を待つ必要
なく、命令を継続的に発行でき、又テープドライ
ブ部1もホストコントローラからの命令を待つこ
となく継続的に動作が実行できるから、処理効率
の向上が得られ、特にストリーミングモードの動
作効率を向上しうる。
気テープ装置と称され、ホストコントローラから
の命令に対し、非同期でテープドライブ部1を動
作できるので、ホストコントローラ側では一命令
に対しテープドライブ部1の動作完了を待つ必要
なく、命令を継続的に発行でき、又テープドライ
ブ部1もホストコントローラからの命令を待つこ
となく継続的に動作が実行できるから、処理効率
の向上が得られ、特にストリーミングモードの動
作効率を向上しうる。
このようなバツフアBFを有して命令を先取り
するために、バツフアBFは複数の命令の蓄積し
うる命令バツフアと、複数のデータの蓄積しうる
データバツフアとで構成され、例えば、命令バツ
フアには最大64命令、データバツフアには最大
256KByteのデータを格納しうるようにして、先
取り命令、データを増加しうるようにしている。
するために、バツフアBFは複数の命令の蓄積し
うる命令バツフアと、複数のデータの蓄積しうる
データバツフアとで構成され、例えば、命令バツ
フアには最大64命令、データバツフアには最大
256KByteのデータを格納しうるようにして、先
取り命令、データを増加しうるようにしている。
一方、第13図Aに示す如く磁気テープ16は
無限長でなく、有限長のため、終端には、EOT
(END OF TAPE)マーカが貼付されており、
EOT検出後のテープウオーニングエリア
(TWA)は約3mしか使用できない。
無限長でなく、有限長のため、終端には、EOT
(END OF TAPE)マーカが貼付されており、
EOT検出後のテープウオーニングエリア
(TWA)は約3mしか使用できない。
従つて、ライト系の処理においては、先取り命
令・データがEOT検出時に3m分以上であると、
これを磁気テープ16上にライトできなくなり、
何等かの対策が必要となる。
令・データがEOT検出時に3m分以上であると、
これを磁気テープ16上にライトできなくなり、
何等かの対策が必要となる。
従来、このため磁気テープの終端であるEOT
を検出する以前にテープ終端近傍信号EWAを、
例えばEOTの約20m分前に発生し、これによつ
て第13図Bの如く、バツフアBFのデータバツ
フアの蓄積可能量(データバイト数)を減少させ
ていた。例えば第13図Bの如く最大256KByte
のデータの蓄積できるデータバツフアに対し、こ
れを128KByteに減少し、データバツフアのデー
タ蓄積量が128KByte以下にならないと、ホスト
コントローラからのライトデータの受付けを許可
しないようにして、係る書込み不能を防止するよ
うにしていた。
を検出する以前にテープ終端近傍信号EWAを、
例えばEOTの約20m分前に発生し、これによつ
て第13図Bの如く、バツフアBFのデータバツ
フアの蓄積可能量(データバイト数)を減少させ
ていた。例えば第13図Bの如く最大256KByte
のデータの蓄積できるデータバツフアに対し、こ
れを128KByteに減少し、データバツフアのデー
タ蓄積量が128KByte以下にならないと、ホスト
コントローラからのライトデータの受付けを許可
しないようにして、係る書込み不能を防止するよ
うにしていた。
係る従来技術によれば、データバツフアの容量
を制限することによつて、間接的にライト系命令
の先取り数を制限しようとするものであつた。
を制限することによつて、間接的にライト系命令
の先取り数を制限しようとするものであつた。
一方、係るバツフア付き磁気テープ装置の性能
は、命令先取り数に大きく影響され、命令先取数
が多いほうがストリーミング走行を長く維持で
き、性能的に優れている。
は、命令先取り数に大きく影響され、命令先取数
が多いほうがストリーミング走行を長く維持で
き、性能的に優れている。
しかしながら、EOT以降のテープウオーニン
グエリア(TWA)に書込み可能な長さは限られ
ており、EOT検出時に命令先取り数が多過ぎる
と、先取りした全ての命令を実行することができ
なくなる。
グエリア(TWA)に書込み可能な長さは限られ
ており、EOT検出時に命令先取り数が多過ぎる
と、先取りした全ての命令を実行することができ
なくなる。
このため、EOT付近までは先取り数をできる
だけ多くし、EOTが近付いたら書込み可能な数
に減らすことが必要である。
だけ多くし、EOTが近付いたら書込み可能な数
に減らすことが必要である。
しかしながら、従来技術では、データバツフア
の容量制限を行うことから、先取りされるライト
系命令自体が不当に先取り制限されたり、ライト
系命令のうち先取り制限されないものも生じ、テ
ープ終端領域の近傍において効率の良いストリー
ミング走行が困難であるという問題が生じてい
た。
の容量制限を行うことから、先取りされるライト
系命令自体が不当に先取り制限されたり、ライト
系命令のうち先取り制限されないものも生じ、テ
ープ終端領域の近傍において効率の良いストリー
ミング走行が困難であるという問題が生じてい
た。
即ち、テープ終端領域近傍におけるライト系命
令を先取り制限し過ぎて、ストリーミング走行が
行われなかつたり、ライト系命令の先取りが多過
ぎて、ストリーミング走行は行われてもTWA内
で全ての命令が実行できないという事態が生じて
いた。
令を先取り制限し過ぎて、ストリーミング走行が
行われなかつたり、ライト系命令の先取りが多過
ぎて、ストリーミング走行は行われてもTWA内
で全ての命令が実行できないという事態が生じて
いた。
本発明は、テープ終端領域近傍において効率良
くストリーミング走行ができ、且つ先取つたライ
ト系命令をTWA内に確実に実行しうる磁気テー
プ装置の命令先取り制御方法及びその装置を提供
することを目的とする。
くストリーミング走行ができ、且つ先取つたライ
ト系命令をTWA内に確実に実行しうる磁気テー
プ装置の命令先取り制御方法及びその装置を提供
することを目的とする。
第1図は本発明の原理説明図である。
本発明では、磁気テープ16の終端近傍領域
(EWA)において2つのモードを有している。
(EWA)において2つのモードを有している。
第1のモード(ロジカルEOTモードと称す)
では磁気テープドライブ部1が磁気テープ16を
走行して、EWAを検出すると、制御部CTが
EWA検出時点から磁気テープの走行距離を計数
し、計数値ECTRが一定値EPTRに達すると、テ
ープ終端領域検出とみなし、疑似的なEOTを得
るようにし、この間のEWAでは第1図Bの実線
の如く命令先取り数を減少しない。
では磁気テープドライブ部1が磁気テープ16を
走行して、EWAを検出すると、制御部CTが
EWA検出時点から磁気テープの走行距離を計数
し、計数値ECTRが一定値EPTRに達すると、テ
ープ終端領域検出とみなし、疑似的なEOTを得
るようにし、この間のEWAでは第1図Bの実線
の如く命令先取り数を減少しない。
この疑似EOTは通常のEOT検出と同一の効果
を持ち、これによつて、実際に磁気テープに設け
られたEOTマーカを検出することなく、それ以
前にEOTの取扱いが行われる。
を持ち、これによつて、実際に磁気テープに設け
られたEOTマーカを検出することなく、それ以
前にEOTの取扱いが行われる。
この第1のモードにおいてEWA検出時点を疑
似EOTとせず、磁気テープ16の一定距離走行
後に疑似EOT検出とするが、これは、EWA検出
機構がドライブのサーボ制御機構を利用したもの
であり、EWA検出点を任意の時点に少ない誤差
で設定することができるだけの精度を有さないた
めである。EWA検出精度を高めるためにサーボ
制御機構の精度を過剰に高くすることは装置のコ
スト上昇を招く。
似EOTとせず、磁気テープ16の一定距離走行
後に疑似EOT検出とするが、これは、EWA検出
機構がドライブのサーボ制御機構を利用したもの
であり、EWA検出点を任意の時点に少ない誤差
で設定することができるだけの精度を有さないた
めである。EWA検出精度を高めるためにサーボ
制御機構の精度を過剰に高くすることは装置のコ
スト上昇を招く。
一方、第2のモード(フイジカルEOTモード
と称す)では、EWA検出から実際にEOTマーカ
を検出するまでをアーリーウオーニングエリア
EWAとし、この間のEWAにおいて第1図Bの点
線の如く、先取りしうる命令数を減少しようとす
るものである。
と称す)では、EWA検出から実際にEOTマーカ
を検出するまでをアーリーウオーニングエリア
EWAとし、この間のEWAにおいて第1図Bの点
線の如く、先取りしうる命令数を減少しようとす
るものである。
この第1のモードと第2のモードに切換えは
EWAにおいて、第1のモードで動作途中にリー
ド系命令実行によつて第1のモードの実行が不能
となつた場合に行うと、効率の良いストリーミン
グ走行が実行できる。又、操作パネルによつてモ
ードを選択するようにして、第1のモードと第2
のモードを選択してもよい。
EWAにおいて、第1のモードで動作途中にリー
ド系命令実行によつて第1のモードの実行が不能
となつた場合に行うと、効率の良いストリーミン
グ走行が実行できる。又、操作パネルによつてモ
ードを選択するようにして、第1のモードと第2
のモードを選択してもよい。
本発明では、第1のモードでは論理的な疑似
EOTを得ているので、第1図Aに示す如くEOT
検出時点を早くすることにより、TWAを長くで
きる。このため、TWAに書込むことのできるブ
ロツク数が多くなるため、第1図Bの実線に示す
如く、EWAにおけるライト系命令の先取り数を
減らす必要がなくなる。
EOTを得ているので、第1図Aに示す如くEOT
検出時点を早くすることにより、TWAを長くで
きる。このため、TWAに書込むことのできるブ
ロツク数が多くなるため、第1図Bの実線に示す
如く、EWAにおけるライト系命令の先取り数を
減らす必要がなくなる。
従つて、EWAにおいてもストリーミング走行
を続行し且つTWAにおいて全ての先取りライト
系命令を実行できる。
を続行し且つTWAにおいて全ての先取りライト
系命令を実行できる。
即ち、第1図Cの実線の如く、EOT付近まで
は、命令先取り数はできるだけ多くし、EOTが
近づいたら、書込み可能な数に減らすという理想
的な先取り制御が可能となる。
は、命令先取り数はできるだけ多くし、EOTが
近づいたら、書込み可能な数に減らすという理想
的な先取り制御が可能となる。
一方、第2のモードでは、通常と同様のEWA
において、ライト系命令の蓄積可能数を制限する
ため、ライトデータを伴わないイレーズ、ライト
テープマーク等のライト系命令も制限されるか
ら、磁気テープ内に全てのライト系命令の実行が
でき、ライト系命令の処理不能を防止することが
できる。
において、ライト系命令の蓄積可能数を制限する
ため、ライトデータを伴わないイレーズ、ライト
テープマーク等のライト系命令も制限されるか
ら、磁気テープ内に全てのライト系命令の実行が
でき、ライト系命令の処理不能を防止することが
できる。
即ち、ライトデータを伴わないライト系命令で
あるイレーズやライトテープマークも制限され、
ライト系命令を不当に制限することなく、第1図
Cの点線の如く、先取つたライト系命令を全て
TWA内に実行できる。
あるイレーズやライトテープマークも制限され、
ライト系命令を不当に制限することなく、第1図
Cの点線の如く、先取つたライト系命令を全て
TWA内に実行できる。
(a) 一実施例の全体構成の説明
第2図は、本発明の一実施例の説明のための全
体構成図である。
体構成図である。
図中、第12図で示したものと同一のものは同
一の記号で示してあり、1はリール間直接駆動方
式の磁気テープドライブユニツト(以下ドライブ
と称す)であり、巻取リール(マシンリール)1
1と供給リール(フアイルリール)12の間に磁
気テープ16がテンシヨンアーム15のローラ1
5a、磁気ヘツド14、アイドラ13を介して巻
取リール11に至るよう構成され、磁気ヘツド1
4の両側ではガイド17a,17bによつてガイ
ドされている。
一の記号で示してあり、1はリール間直接駆動方
式の磁気テープドライブユニツト(以下ドライブ
と称す)であり、巻取リール(マシンリール)1
1と供給リール(フアイルリール)12の間に磁
気テープ16がテンシヨンアーム15のローラ1
5a、磁気ヘツド14、アイドラ13を介して巻
取リール11に至るよう構成され、磁気ヘツド1
4の両側ではガイド17a,17bによつてガイ
ドされている。
一方、巻取リール11、供給リール12は各々
駆動モータ10a,10bによつて回転駆動さ
れ、更に駆動モータ10a,10bにはロータリ
ーエンコーダ18a,18bが設けられ駆動モー
タ10a,10bの回転量を検出できるようにし
ている。又、アイドラ13にもロータリーエンコ
ーダ19aが設けられ、これによつて実際のテー
プの走行位置の監視を可能とし、一方、テンシヨ
ンアーム15には張力検出器19bが設けられ、
テープ張力の検出を可能としている。
駆動モータ10a,10bによつて回転駆動さ
れ、更に駆動モータ10a,10bにはロータリ
ーエンコーダ18a,18bが設けられ駆動モー
タ10a,10bの回転量を検出できるようにし
ている。又、アイドラ13にもロータリーエンコ
ーダ19aが設けられ、これによつて実際のテー
プの走行位置の監視を可能とし、一方、テンシヨ
ンアーム15には張力検出器19bが設けられ、
テープ張力の検出を可能としている。
2はドライブ制御部であり、後述する命令・デ
ータ先取り制御部からの命令及びデータによつて
テープ走行駆動及びヘツド書込み又は読取り駆動
を行うものであり、各ロータリーエンコーダ18
a,18b,19aの出力を受けて走行状態を監
視し、又張力検出器19bの出力より張力を監視
し、駆動回路20,21を介し両駆動モータ10
a,10bを制御して、テープ張力を一定にしつ
つテープを走行駆動するとともに磁気ヘツド14
にライトデータを与え書込みを行わせ且つ磁気ヘ
ツド14からのリードデータを受けるものであ
る。
ータ先取り制御部からの命令及びデータによつて
テープ走行駆動及びヘツド書込み又は読取り駆動
を行うものであり、各ロータリーエンコーダ18
a,18b,19aの出力を受けて走行状態を監
視し、又張力検出器19bの出力より張力を監視
し、駆動回路20,21を介し両駆動モータ10
a,10bを制御して、テープ張力を一定にしつ
つテープを走行駆動するとともに磁気ヘツド14
にライトデータを与え書込みを行わせ且つ磁気ヘ
ツド14からのリードデータを受けるものであ
る。
3は命令・データ先取り制御部であり、ホスト
コントローラからのライト系又はリード系の命令
及びライトデータを受け、これらを蓄え、ライト
系命令ならドライブ制御部2へライト命令及びラ
イトデータを送り、ライト動作せしめ、且つ正常
終了なら次のブロツクのライト命令及びライトデ
ータを送り、正常終了でなければドライブ制御部
2へライトリトライ動作せしめるものである。
コントローラからのライト系又はリード系の命令
及びライトデータを受け、これらを蓄え、ライト
系命令ならドライブ制御部2へライト命令及びラ
イトデータを送り、ライト動作せしめ、且つ正常
終了なら次のブロツクのライト命令及びライトデ
ータを送り、正常終了でなければドライブ制御部
2へライトリトライ動作せしめるものである。
命令・データ先取り制御部3は、後述する命令
バツフアとデータバツフアを有し、ホストコント
ローラに対しては磁気テープ装置として動作し、
ドライブ制御部2に対してはホストコントローラ
として動作するアダプタである。
バツフアとデータバツフアを有し、ホストコント
ローラに対しては磁気テープ装置として動作し、
ドライブ制御部2に対してはホストコントローラ
として動作するアダプタである。
(b) 先取り制御部の構成の説明
第3図は第2図構成における要部、即ち、命
令・データ先取り制御部3の構成図である。
令・データ先取り制御部3の構成図である。
図中、30はマイクロプロセツサ(以下MPU
と称す)であり、後述するプログラムメモリのマ
イクロプログラムに従つてホストコントローラか
らの命令及びデータの受信制御及びデータ、ステ
ータスの送信制御を行うとともに、ドライブ制御
部2へ命令、データの送信制御及びドライブ制御
部からのデータ、ステータスの受信制御を行い、
更にドライブ1の状態制御の処理を行うもの、3
1aはプログラムメモリであり、MPU30が実
行すべきプログラムを格納しておくもの、31b
はランダムアクセスメモリ(以下RAMと称す)
であり、MPU30の処理に必要な各種データ、
命令、パラメータを格納しておくものであり、命
令バツフアエリアCBUF、命令バツフア管理エリ
アCA及びデータバツフア管理エリアDA、各種
モード管理エリアEA、リード命令レジスタRCを
有するものである。
と称す)であり、後述するプログラムメモリのマ
イクロプログラムに従つてホストコントローラか
らの命令及びデータの受信制御及びデータ、ステ
ータスの送信制御を行うとともに、ドライブ制御
部2へ命令、データの送信制御及びドライブ制御
部からのデータ、ステータスの受信制御を行い、
更にドライブ1の状態制御の処理を行うもの、3
1aはプログラムメモリであり、MPU30が実
行すべきプログラムを格納しておくもの、31b
はランダムアクセスメモリ(以下RAMと称す)
であり、MPU30の処理に必要な各種データ、
命令、パラメータを格納しておくものであり、命
令バツフアエリアCBUF、命令バツフア管理エリ
アCA及びデータバツフア管理エリアDA、各種
モード管理エリアEA、リード命令レジスタRCを
有するものである。
命令バツフアエリアCBUFには、ライト系コマ
ンド時には、ホストコントローラから先取りした
命令及びその命令により転送されたデータのデー
タバツフア内の先頭アドレス、バイトカウント数
などがリード系コマンド時には先読みしたブロツ
クのリード実行結果、リードデータのデータバツ
フア内の先頭アドレス、バイト数などが格納さ
れ、命令バツフア管理エリアCAには、命令記憶
数CBSTKと、バツフアサイズCBSiZEと、最終
制限値CBEが格納される。命令記憶数CBSTKと
しては、ライト系コマンド時には、命令バツフア
エリアCBUFに記憶され、未だ実行されていない
先取り命令数が、リード系コマンド時には先読み
ブロツク数が格納され、バツフアサイズCBSiZE
は、命令バツフアエリアCBUFの大きさを命令数
で示したものであり、最終制限値は、ロジカル
EOTモードでない時のフイジカルEOTモード時
のEWAにおけるライト系命令先取り数の最終制
限値である。
ンド時には、ホストコントローラから先取りした
命令及びその命令により転送されたデータのデー
タバツフア内の先頭アドレス、バイトカウント数
などがリード系コマンド時には先読みしたブロツ
クのリード実行結果、リードデータのデータバツ
フア内の先頭アドレス、バイト数などが格納さ
れ、命令バツフア管理エリアCAには、命令記憶
数CBSTKと、バツフアサイズCBSiZEと、最終
制限値CBEが格納される。命令記憶数CBSTKと
しては、ライト系コマンド時には、命令バツフア
エリアCBUFに記憶され、未だ実行されていない
先取り命令数が、リード系コマンド時には先読み
ブロツク数が格納され、バツフアサイズCBSiZE
は、命令バツフアエリアCBUFの大きさを命令数
で示したものであり、最終制限値は、ロジカル
EOTモードでない時のフイジカルEOTモード時
のEWAにおけるライト系命令先取り数の最終制
限値である。
データバツフア管理エリアDAには、データバ
ツフアの空き容量を単位数(1KByte単位)で示
すバツフア空き容量FSEGと、データバツフアへ
の書込みを行うデータ転送時のデータバツフアの
先頭アドレスを示すバツフアアドレスBADRと、
処理の対象となるデータブロツクの最大長を示す
最大ブロツク長MAXLとが格納される。
ツフアの空き容量を単位数(1KByte単位)で示
すバツフア空き容量FSEGと、データバツフアへ
の書込みを行うデータ転送時のデータバツフアの
先頭アドレスを示すバツフアアドレスBADRと、
処理の対象となるデータブロツクの最大長を示す
最大ブロツク長MAXLとが格納される。
モード管理エリアEAには、ロードポイントか
らの書込み時の記録密度(1600rpi又は6250rpi)
を決定するための書込み記録密度とロジカル
EOTモードであることを示すLEOTフラグと、
ロジカルEOTモード時にEWA検出後のテープ走
行距離を格納する走行カウンタECTRが格納され
る。
らの書込み時の記録密度(1600rpi又は6250rpi)
を決定するための書込み記録密度とロジカル
EOTモードであることを示すLEOTフラグと、
ロジカルEOTモード時にEWA検出後のテープ走
行距離を格納する走行カウンタECTRが格納され
る。
32aはドライブインターフエイス回路であ
り、ドライブ制御部2との間で制御信号等のやり
とりを行うためのもの、32bはホストインター
フエイス回路であり、ホストコントローラとの間
で制御信号等のやりとりをするもの、33はデー
タ転送制御回路であり、後述するデータバツフア
を制御してホストコントローラ或いはドライブ制
御部2との間のデータ転送を制御するものであ
り、ホストコントローラへデータ転送要求信号を
発し且つドライブ制御部2からのデータ転送要求
信号を受けデータ転送制御を行うものであり、デ
ータバツフアへのストアアドレスカウンタ
SCTR、データバツフアからのロードアドレスカ
ウンタLCTR、バツフアロード時のバイトカウン
タBCTRなどを有するものである。
り、ドライブ制御部2との間で制御信号等のやり
とりを行うためのもの、32bはホストインター
フエイス回路であり、ホストコントローラとの間
で制御信号等のやりとりをするもの、33はデー
タ転送制御回路であり、後述するデータバツフア
を制御してホストコントローラ或いはドライブ制
御部2との間のデータ転送を制御するものであ
り、ホストコントローラへデータ転送要求信号を
発し且つドライブ制御部2からのデータ転送要求
信号を受けデータ転送制御を行うものであり、デ
ータバツフアへのストアアドレスカウンタ
SCTR、データバツフアからのロードアドレスカ
ウンタLCTR、バツフアロード時のバイトカウン
タBCTRなどを有するものである。
34はデータバツフアであり、データ転送制御
回路33によつて制御され、ホストコントローラ
からのライトデータを蓄え、ドライブ制御部2へ
転送し、逆にドライブ制御部2からのリードデー
タを蓄え、ホストコントローラへ転送するための
ものであり、例えば256キロバイトの容量を持つ
もの、35はデータバスであり、MPU30とプ
ログラムメモリ31a、RAM31b、ドライブ
インターフエイス回路32a、ホストインターフ
エイス回路32b、データ転送制御回路33とを
接続しコマンド、データのやりとりを行うもので
ある。
回路33によつて制御され、ホストコントローラ
からのライトデータを蓄え、ドライブ制御部2へ
転送し、逆にドライブ制御部2からのリードデー
タを蓄え、ホストコントローラへ転送するための
ものであり、例えば256キロバイトの容量を持つ
もの、35はデータバスであり、MPU30とプ
ログラムメモリ31a、RAM31b、ドライブ
インターフエイス回路32a、ホストインターフ
エイス回路32b、データ転送制御回路33とを
接続しコマンド、データのやりとりを行うもので
ある。
36aは制御信号線であり、ドライブ制御部2
へコマンド等を送信し、逆にドライブ制御部2か
らステータス等を受信するためのもの、36bは
テープエンド近傍領域検出信号線であり、ドライ
ブ制御部2からのテープエンド近傍領域検出
(EWA)信号の転送のためのもの、36cは割込
み線であり、ドライブインターフエイス回路32
aよりMPU30へ割込みを通知するもの、37
aはデータ転送制御信号線であり、ドライブ制御
部2からデータ転送要求信号をデータ転送制御回
路33へ伝え、データ転送終了信号をドライブ制
御部2へ伝えるためのもの、37bはライトデー
タバスであり、データバツフア34からライトデ
ータをドライブ制御部2へ伝えるためのもの、3
7cはリードデータバスであり、ドライブ制御部
2からのリードデータをデータバツフア34へ伝
えるためのもの、38は制御信号線であり、ホス
トコントローラとコマンド、ステータスのやりと
りを行うためのもの、39aはデータ転送制御信
号線であり、ホストコントローラへデータ転送要
求信号を伝え、ホストコントローラからのデータ
転送終了信号を伝えるためのもの、39bはライ
トデータバスであり、ホストコントローラからの
ライトデータをデータバツフア34へ伝えるため
のもの、39cはリードデータバスであり、ホス
トコントローラへデータバツフア34からリード
データを伝えるためのものである。
へコマンド等を送信し、逆にドライブ制御部2か
らステータス等を受信するためのもの、36bは
テープエンド近傍領域検出信号線であり、ドライ
ブ制御部2からのテープエンド近傍領域検出
(EWA)信号の転送のためのもの、36cは割込
み線であり、ドライブインターフエイス回路32
aよりMPU30へ割込みを通知するもの、37
aはデータ転送制御信号線であり、ドライブ制御
部2からデータ転送要求信号をデータ転送制御回
路33へ伝え、データ転送終了信号をドライブ制
御部2へ伝えるためのもの、37bはライトデー
タバスであり、データバツフア34からライトデ
ータをドライブ制御部2へ伝えるためのもの、3
7cはリードデータバスであり、ドライブ制御部
2からのリードデータをデータバツフア34へ伝
えるためのもの、38は制御信号線であり、ホス
トコントローラとコマンド、ステータスのやりと
りを行うためのもの、39aはデータ転送制御信
号線であり、ホストコントローラへデータ転送要
求信号を伝え、ホストコントローラからのデータ
転送終了信号を伝えるためのもの、39bはライ
トデータバスであり、ホストコントローラからの
ライトデータをデータバツフア34へ伝えるため
のもの、39cはリードデータバスであり、ホス
トコントローラへデータバツフア34からリード
データを伝えるためのものである。
従つて、MPU30はデータバス35を介し
RAM31b、ホストインターフエイス回路32
b、ドライブインターフエイス回路32a、デー
タ転送制御回路33との間で書込み、読出しを行
い、所望の処理を行う。
RAM31b、ホストインターフエイス回路32
b、ドライブインターフエイス回路32a、デー
タ転送制御回路33との間で書込み、読出しを行
い、所望の処理を行う。
即ち、ホストコントローラと制御信号線38を
介しMPU30の制御によりホストインターフエ
イス回路32bがコマンド、ステータスのやりと
りを行い、ドライブ制御部2と制御信号線36a
を介しMPU30の制御によりドライブインター
フエイス回路32aがコマンド、ステータスのや
りとりを行う。
介しMPU30の制御によりホストインターフエ
イス回路32bがコマンド、ステータスのやりと
りを行い、ドライブ制御部2と制御信号線36a
を介しMPU30の制御によりドライブインター
フエイス回路32aがコマンド、ステータスのや
りとりを行う。
一方、MPU30の指示によりデータ転送制御
回路33が、データ転送制御信号線39aを介し
ホストコントローラにデータ転送要求を発し、こ
れに応じてホストコントローラはライトデータを
ライトデータバス39bを介しデータバツフア3
4へ送り、蓄積せしめる。又、ドライブ制御部2
からのデータ転送制御信号線37aのデータ転送
要求により、データ転送制御回路33はライトデ
ータバス37bを介しデータバツフア34のライ
トデータをドライブ制御部2へ発する。
回路33が、データ転送制御信号線39aを介し
ホストコントローラにデータ転送要求を発し、こ
れに応じてホストコントローラはライトデータを
ライトデータバス39bを介しデータバツフア3
4へ送り、蓄積せしめる。又、ドライブ制御部2
からのデータ転送制御信号線37aのデータ転送
要求により、データ転送制御回路33はライトデ
ータバス37bを介しデータバツフア34のライ
トデータをドライブ制御部2へ発する。
更に、データ転送制御回路33はMPU30の
指示によりドライブ制御部2からリードデータバ
ス37cを介するリードデータをデータバツフア
34に蓄え、ホストコントローラへリードデータ
バス39cを介しデータバツフア34のリードデ
ータを送信する。
指示によりドライブ制御部2からリードデータバ
ス37cを介するリードデータをデータバツフア
34に蓄え、ホストコントローラへリードデータ
バス39cを介しデータバツフア34のリードデ
ータを送信する。
尚、ドライブ制御部2は、ロータリーエンコー
ダ19aによる走行位置の監視によつてテープ終
端領域近傍を検出してEWA信号を信号線36b
に発し、EOT検出によつてTWA信号を信号線3
6aに発する。
ダ19aによる走行位置の監視によつてテープ終
端領域近傍を検出してEWA信号を信号線36b
に発し、EOT検出によつてTWA信号を信号線3
6aに発する。
このような先取り制御部3とホストコントロー
ラ、デバイス1間のインターフエイスは、第4図
Aに示す如く、ホストコントローラからの起動信
号GOとコマンド信号が与えられることによつて
MPU30はホストインターフエイス回路32b
を介し応答信号FBYをホストコントローラへ返
答し、更にコマンド実行中を示すデータビジー
DBYをホストコントローラへ与える。
ラ、デバイス1間のインターフエイスは、第4図
Aに示す如く、ホストコントローラからの起動信
号GOとコマンド信号が与えられることによつて
MPU30はホストインターフエイス回路32b
を介し応答信号FBYをホストコントローラへ返
答し、更にコマンド実行中を示すデータビジー
DBYをホストコントローラへ与える。
コマンド信号がデータ転送を伴うライト系コマ
ンドなら、データ転送制御回路33からホストコ
ントローラへライトストローブパルスWSTBを
与えて、ホストコントローラからはライトストロ
ーブパルスWSTBに同期してライトデータが転
送され、データバツフアに順次格納される。ホス
トコントローラは最終のライトデータと同時にラ
ストワード信号LWDをデータ転送制御回路33
へ送出し、制御回路33はこのラストワード信号
LWDを検出するとライトストローブパルス
WSTBの送出を止め、データ転送を終了し、受
信動作の正常/異常を示すステータス信号をホス
トコントローラへ与え、データビジーDBYをオ
フしてライトデータの転送動作を終了する。尚、
受信コマンドは命令バツフアCBUFに格納され
る。
ンドなら、データ転送制御回路33からホストコ
ントローラへライトストローブパルスWSTBを
与えて、ホストコントローラからはライトストロ
ーブパルスWSTBに同期してライトデータが転
送され、データバツフアに順次格納される。ホス
トコントローラは最終のライトデータと同時にラ
ストワード信号LWDをデータ転送制御回路33
へ送出し、制御回路33はこのラストワード信号
LWDを検出するとライトストローブパルス
WSTBの送出を止め、データ転送を終了し、受
信動作の正常/異常を示すステータス信号をホス
トコントローラへ与え、データビジーDBYをオ
フしてライトデータの転送動作を終了する。尚、
受信コマンドは命令バツフアCBUFに格納され
る。
一方、コマンドがリードコマンドなら、テープ
ドライブ1から読取つたリードデータをリードス
トローブパルスRSTBとともにホストコントロー
ラへ転送する。リードデータ転送の終了はデータ
ビジーDBYをオフすることによつてホストコン
トローラへ通知される。
ドライブ1から読取つたリードデータをリードス
トローブパルスRSTBとともにホストコントロー
ラへ転送する。リードデータ転送の終了はデータ
ビジーDBYをオフすることによつてホストコン
トローラへ通知される。
このようなインターフエイス手順は、第4図B
に示す如く先取り部3とドライブ1との間も同一
であり、先取り部3の命令バツフアCBUF、デー
タバツフア34がフルの状態では、ホストコント
ローラからGO信号、ライトコマンドが到来して
もバツフアCBUF、データバツフア34が空くま
でデータビジーDBYを上げないようにしてデー
タ転送を待たせるようにしている。
に示す如く先取り部3とドライブ1との間も同一
であり、先取り部3の命令バツフアCBUF、デー
タバツフア34がフルの状態では、ホストコント
ローラからGO信号、ライトコマンドが到来して
もバツフアCBUF、データバツフア34が空くま
でデータビジーDBYを上げないようにしてデー
タ転送を待たせるようにしている。
(c) 一実施例の起動処理動作の説明
第5図は本発明の一実施例動作の起動処理フロ
ー図、第6図は第5図における初期設定処理フロ
ー図である。
ー図、第6図は第5図における初期設定処理フロ
ー図である。
電源が投入されると、MPU30はドライブ
インターフエイス回路32aを介し、ドライブ
の書込み記録密度設定を調べ、RAM31bの
エリアEAの書込み記録密度にドライブの書込
み記録密度設定を記憶する。そして第6図Aの
初期設定処理(1)を行う。
インターフエイス回路32aを介し、ドライブ
の書込み記録密度設定を調べ、RAM31bの
エリアEAの書込み記録密度にドライブの書込
み記録密度設定を記憶する。そして第6図Aの
初期設定処理(1)を行う。
即ち、MPU30はRAM31の命令バツフ
ア管理エリアCAの命令記憶数CBSTKを零ク
リアし、データバツフア管理エリアDAのバツ
フア空き容量FSEGを最大の256単位
(256KByte)とし、データバツフアアドレス
BADRを“00”に設定する。
ア管理エリアCAの命令記憶数CBSTKを零ク
リアし、データバツフア管理エリアDAのバツ
フア空き容量FSEGを最大の256単位
(256KByte)とし、データバツフアアドレス
BADRを“00”に設定する。
更に、データバツフア管理エリアDAの最大
ブロツク長MAXLを最小の8単位(8KByte)
に設定し、エリアEAのロジカルEOTモードフ
ラグをオフとして初期設定(1)を終了する。
ブロツク長MAXLを最小の8単位(8KByte)
に設定し、エリアEAのロジカルEOTモードフ
ラグをオフとして初期設定(1)を終了する。
次に電源投入時あるいはREW命令、UNL命
令実行後の初期設定終了後又はホストからの起
動待ちルーチンにおいて、MPU30はバス3
5を介しドライブインターフエイス回路32a
を介し磁気テープが供給リール12にセツトさ
れたオンライン状態にあるかを調べる。
令実行後の初期設定終了後又はホストからの起
動待ちルーチンにおいて、MPU30はバス3
5を介しドライブインターフエイス回路32a
を介し磁気テープが供給リール12にセツトさ
れたオンライン状態にあるかを調べる。
オンライン状態にあれば、MPU30はバス
35を介しホストインターフエイス回路32b
のレジスタの内容を調べ、ホストからREW(リ
ワインド)命令又はUNL(アンロード)命令が
到来しているかを調べる。
35を介しホストインターフエイス回路32b
のレジスタの内容を調べ、ホストからREW(リ
ワインド)命令又はUNL(アンロード)命令が
到来しているかを調べる。
REW命令又はUNL命令が到来していれば、
MPU30はドライブ制御部2の実行処理モー
ドがリード系か、ライト系か又は実行中でない
かを調べる。
MPU30はドライブ制御部2の実行処理モー
ドがリード系か、ライト系か又は実行中でない
かを調べる。
実行処理モードがリード系なら、ドライブ1
の先読みを停止させる。即ち、ドライブ制御部
2が実行中の処理を終了したならばドライブイ
ンターフエイス回路32aを介し制御線36a
よりドライブ制御部2に、新たな処理を命じな
いようにし、リード系処理を停止させる。
の先読みを停止させる。即ち、ドライブ制御部
2が実行中の処理を終了したならばドライブイ
ンターフエイス回路32aを介し制御線36a
よりドライブ制御部2に、新たな処理を命じな
いようにし、リード系処理を停止させる。
一方、実行処理モードがライト系なら、命令
バツフアCBUF内の全てのライト系命令を実行
させる。
バツフアCBUF内の全てのライト系命令を実行
させる。
そして、全命令の実行後、実行中の処理なし
の場合又はドライブの先読み処理の停止後、
MPU30はドライブインターフエイス回路3
2aを介しREW命令(テープをBOTまで戻
す)又はUNL命令(テープを巻取る)を与え
てドライブ1にこれを実行させ、ステツプの
初期設定(1)へ戻る。
の場合又はドライブの先読み処理の停止後、
MPU30はドライブインターフエイス回路3
2aを介しREW命令(テープをBOTまで戻
す)又はUNL命令(テープを巻取る)を与え
てドライブ1にこれを実行させ、ステツプの
初期設定(1)へ戻る。
一方、REW命令又はUNL命令が到来してい
ないと、MPU30はバス35を介しホストイ
ンターフエイス回路32bのレジスタの内容を
調べ、ホストからの起動(GO)があるかを調
べる。
ないと、MPU30はバス35を介しホストイ
ンターフエイス回路32bのレジスタの内容を
調べ、ホストからの起動(GO)があるかを調
べる。
ホストからの起動がなければ、起動待ちとな
り、ステツプへ戻る。
り、ステツプへ戻る。
ホストからの起動あり、即ちGO信号受信と
判断すると、MPU30はバス35を介しホス
トインターフエイス回路32bのレジスタの内
容を調べ、与えられた命令が何かを判断する。
判断すると、MPU30はバス35を介しホス
トインターフエイス回路32bのレジスタの内
容を調べ、与えられた命令が何かを判断する。
与えられた命令がリード系ならステツプ
へ、記録密度設定ならステツプへ進み、その
処理ルーチンを実行する。
へ、記録密度設定ならステツプへ進み、その
処理ルーチンを実行する。
命令が記録密度設定なら、MPU30はホス
トインターフエイス回路32bを介しデータビ
ジーDBYをオンとして通知し、更にドライブ
インターフエイス回路32aを介しドライブ1
の磁気テープ16がロードポイントLDP、即
ちBOTの位置にあるかを調べる。
トインターフエイス回路32bを介しデータビ
ジーDBYをオンとして通知し、更にドライブ
インターフエイス回路32aを介しドライブ1
の磁気テープ16がロードポイントLDP、即
ちBOTの位置にあるかを調べる。
ロードポイントLDPにあれば、記録密度設
定命令が有効であるので、MPU30はドライ
ブインターフエイス回路32aを介し、ドライ
ブに対して記録密度設定命令を実行し後に、
RAM31bのエリアEAの書込み記録密度に
ホストから指示された記録密度をセツトする。
定命令が有効であるので、MPU30はドライ
ブインターフエイス回路32aを介し、ドライ
ブに対して記録密度設定命令を実行し後に、
RAM31bのエリアEAの書込み記録密度に
ホストから指示された記録密度をセツトする。
ロードポイントLDPになければ、記録密度
設定命令は無効でありドライブに対する記録密
度設定命令の実行及び書込み記録密度のセツト
は必要ない。
設定命令は無効でありドライブに対する記録密
度設定命令の実行及び書込み記録密度のセツト
は必要ない。
その後、MPU30はホストインターフエイ
ス回路32bを介しホストへ終了報告し、デー
タビジーDBYをオフして、ステツプへ戻る。
ス回路32bを介しホストへ終了報告し、デー
タビジーDBYをオフして、ステツプへ戻る。
一方、与えられた命令がライト系なら、
MPU30はドライブ制御部2の実行処理モー
ドがリード系か、ライト系か又は実行中でない
かを調べる。
MPU30はドライブ制御部2の実行処理モー
ドがリード系か、ライト系か又は実行中でない
かを調べる。
実行処理モードがリード系なら、ドライブ1
の先読み処理を停止させる。即ち、ドライブ制
御部2が実行中の処理を終了したならばドライ
ブインターフエイス回路32aを介し制御線3
6aよりドライブ制御部2に、新たな処理を命
じないようにし、リード系処理を停止させる。
の先読み処理を停止させる。即ち、ドライブ制
御部2が実行中の処理を終了したならばドライ
ブインターフエイス回路32aを介し制御線3
6aよりドライブ制御部2に、新たな処理を命
じないようにし、リード系処理を停止させる。
次に、第6図Bの初期設定(2)を実行し、
MPU30はRAM31bの命令バツフア管理
エリアCAの命令記憶数CBSTKを零クリアし、
データバツフア管理エリアDAのバツフア空き
容量FSEGを最大の256とし、データバツフア
アドレスBADRを“00”に設定する。
MPU30はRAM31bの命令バツフア管理
エリアCAの命令記憶数CBSTKを零クリアし、
データバツフア管理エリアDAのバツフア空き
容量FSEGを最大の256とし、データバツフア
アドレスBADRを“00”に設定する。
このステツプの終了後又はドライブ制御部
2が実行中でなければ、第6図Cの初期設定(3)
のバツフアサイズのセツトを行う。
2が実行中でなければ、第6図Cの初期設定(3)
のバツフアサイズのセツトを行う。
先づ、MPU30は、ドライブインターフエ
イス回路32aを介し信号線36bのEWA(テ
ープ終端近傍領域)信号がオンかオフかを調
べ、オフ(未だテープ終端近傍領域へ到つてい
ない)なら、RAM31bのエリアEAの
LEOTモードフラグをオンし、走行カウンタ
ECTRを零クリアする。
イス回路32aを介し信号線36bのEWA(テ
ープ終端近傍領域)信号がオンかオフかを調
べ、オフ(未だテープ終端近傍領域へ到つてい
ない)なら、RAM31bのエリアEAの
LEOTモードフラグをオンし、走行カウンタ
ECTRを零クリアする。
一方、EWA信号がオンなら、RAM31b
のLEOTモードフラグがオン(YES)、オフ
(NO)かを調べ、オフなら、命令バツフア管
理エリアCAの最終制限値CBEをバツフアサイ
ズCBSiZEへ移し、リターンする。
のLEOTモードフラグがオン(YES)、オフ
(NO)かを調べ、オフなら、命令バツフア管
理エリアCAの最終制限値CBEをバツフアサイ
ズCBSiZEへ移し、リターンする。
逆にLEOTモードフラグがオン又は前述の走
行カウンタECTRの零クリア後、MPU30は、
RAM31bの命令バツフア管理エリアCAの
バツフアサイズCBSiZEに最大値の「64」をセ
ツトし、リターンする。
行カウンタECTRの零クリア後、MPU30は、
RAM31bの命令バツフア管理エリアCAの
バツフアサイズCBSiZEに最大値の「64」をセ
ツトし、リターンする。
次に、MPU30はテープ位置を調整すべく、
ドライブ制御部2にテープ位置調整のための命
令(スペースまたはバツフアスペース)をドラ
イブインターフエイス回路32aを介し命じ
る。
ドライブ制御部2にテープ位置調整のための命
令(スペースまたはバツフアスペース)をドラ
イブインターフエイス回路32aを介し命じ
る。
そして第7図の後述するライト系処理ルーチ
ンへ進む。
ンへ進む。
一方、ステツプで実行処理モードがライト
系なら直ちにライト系処理ルーチンへ進む。
系なら直ちにライト系処理ルーチンへ進む。
ステツプで転送された命令がリード系な
ら、MPU30はドライブ制御部2の実行処理
モードがリード系か、ライト系か又は実行中で
ないかを調べる。
ら、MPU30はドライブ制御部2の実行処理
モードがリード系か、ライト系か又は実行中で
ないかを調べる。
実行処理モードがリード系なら、MPU30
は先づリード方向が一致しているかを調べリー
ド方向不一致ならドライブ1の先読み処理を停
止させる。即ち、ドライブ制御部2が実行中の
処理を終了したならばドライブインターフエイ
ス回路32aを介し制御線36aよりドライブ
制御部2に、新たな処理を命じないようにし、
リード系処理を停止させる。
は先づリード方向が一致しているかを調べリー
ド方向不一致ならドライブ1の先読み処理を停
止させる。即ち、ドライブ制御部2が実行中の
処理を終了したならばドライブインターフエイ
ス回路32aを介し制御線36aよりドライブ
制御部2に、新たな処理を命じないようにし、
リード系処理を停止させる。
更に、MPU30はステツプと同一の初期
設定(2)を実行し、次にステツプと同一のテー
プ位置調整を行う。
設定(2)を実行し、次にステツプと同一のテー
プ位置調整を行う。
一方、実行処理モードがライト系なら、命令
バツフアCBUF内の全ての命令を実行させる。
バツフアCBUF内の全ての命令を実行させる。
そして、全命令の実行後、実行中の処理なし
の場合又はドライブ処理の停止後、前述の先読
みリード系命令をRAM31bのリード命令レ
ジスタRCにセツトする。
の場合又はドライブ処理の停止後、前述の先読
みリード系命令をRAM31bのリード命令レ
ジスタRCにセツトする。
そして、このセツト後又は、リード方向一致
なら、第8図のリード系処理ルーチンへ進む。
なら、第8図のリード系処理ルーチンへ進む。
従つて、ホストからの起動がライト系コマン
ドであれば、リード系処理中でも、ライト系処
理に切換わり、ライト系処理なら、ライト系処
理を続行する。
ドであれば、リード系処理中でも、ライト系処
理に切換わり、ライト系処理なら、ライト系処
理を続行する。
そして初期設定(1)で最大ブロツク長MAXL
は最小の8単位に、初期設定(1)又は(2)で命令記
憶数CBSTKは零、データバツフア空き容量
FSEGは最大の256、データバツフアアドレス
BADRは(00)に、更に初期設定(3)でバツフ
アサイズCBSiZEは、LEOTモードのオン/オ
フに応じ、最大の64又は最終制限値CBEにセ
ツトされる。
は最小の8単位に、初期設定(1)又は(2)で命令記
憶数CBSTKは零、データバツフア空き容量
FSEGは最大の256、データバツフアアドレス
BADRは(00)に、更に初期設定(3)でバツフ
アサイズCBSiZEは、LEOTモードのオン/オ
フに応じ、最大の64又は最終制限値CBEにセ
ツトされる。
又、ロードポイントLDPからの書込み時に
おける記録密度がRAM31bのエリアEAに
設定される。
おける記録密度がRAM31bのエリアEAに
設定される。
(d) 対ホスト処理動作の説明
第7図は対ホストライト系処理フロー図であ
る。
る。
MPU30は第5図によつてホストコントロ
ーラからライト系コマンドによつて起動される
と、ライト系コマンドが格納可能かを調べるた
め、RAM31bの命令バツフア管理エリア
CAの命令記憶数CBSTKと命令バツフアサイ
ズCBSiZEをバス35を介し読み出し比較す
る。CBSiZE≦CBSTK、即ち記憶可能な命令
数までライト系命令が命令バツフアCBUFに格
納されていると、命令バツフアCBUFへのライ
ト系コマンドの格納を保留する。
ーラからライト系コマンドによつて起動される
と、ライト系コマンドが格納可能かを調べるた
め、RAM31bの命令バツフア管理エリア
CAの命令記憶数CBSTKと命令バツフアサイ
ズCBSiZEをバス35を介し読み出し比較す
る。CBSiZE≦CBSTK、即ち記憶可能な命令
数までライト系命令が命令バツフアCBUFに格
納されていると、命令バツフアCBUFへのライ
ト系コマンドの格納を保留する。
一方、CBSiZE>CBSTKであれば、ライト
系命令の命令バツフアCBUFへの格納可能なた
め、MPU30は係るライト系命令がデータバ
ツフア34を使用するものかどうかを調べる。
イレーズ、ライトテープマークのデータバツフ
ア34を使用しないものであれば、データビジ
ーDBYをオンとし、ステツプの最終制限値
CBEの初期設定ステツプに進む。
系命令の命令バツフアCBUFへの格納可能なた
め、MPU30は係るライト系命令がデータバ
ツフア34を使用するものかどうかを調べる。
イレーズ、ライトテープマークのデータバツフ
ア34を使用しないものであれば、データビジ
ーDBYをオンとし、ステツプの最終制限値
CBEの初期設定ステツプに進む。
第5図Aで示した如く上位(ホスト)から起
動(GO)とコマンドが与えられると、下位
(先取り制御部3)はその命令が実行可能なら、
実行中であることを示すデータビジーDBY信
号をオンとし上位へ返す。この関係は先取り制
御部3を上位とし、ドライブ制御部2を下位と
した場合も同様である。
動(GO)とコマンドが与えられると、下位
(先取り制御部3)はその命令が実行可能なら、
実行中であることを示すデータビジーDBY信
号をオンとし上位へ返す。この関係は先取り制
御部3を上位とし、ドライブ制御部2を下位と
した場合も同様である。
逆に、MPU30はライト系命令がデータバ
ツフア34を使用する通常のライト命令である
と、データバツフア34への自動転送の許可判
断を行う。
ツフア34を使用する通常のライト命令である
と、データバツフア34への自動転送の許可判
断を行う。
即ち、先づ、MPU30はRAM31bのデ
ータバツフア管理エリアDAの空きバツフア容
量FSEGと最大ブロツク長MAXLを読出し、
空きバツフア容量FSEGが最大ブロツク長
MAXL以上か否かを調べる。空きバツフア容
量FSEGが最大ブロツク長MAXL以下なら、
ライトデータの受信を保留し、データバツフア
34が最大ブロツク長MAXL分空くまで待ち、
空きバツフア容量FSEGが最大ブロツク長
MAXL以上なら、転送許可する。従つて、前
述のデータビジーDBY信号をオンとして、ホ
ストコントローラへ転送可を通知する。
ータバツフア管理エリアDAの空きバツフア容
量FSEGと最大ブロツク長MAXLを読出し、
空きバツフア容量FSEGが最大ブロツク長
MAXL以上か否かを調べる。空きバツフア容
量FSEGが最大ブロツク長MAXL以下なら、
ライトデータの受信を保留し、データバツフア
34が最大ブロツク長MAXL分空くまで待ち、
空きバツフア容量FSEGが最大ブロツク長
MAXL以上なら、転送許可する。従つて、前
述のデータビジーDBY信号をオンとして、ホ
ストコントローラへ転送可を通知する。
次に、MPU30は、ドライブインターフエ
イス回路32aを介しドライブ1の磁気テープ
16がロードポイントLDPの位置にあるかを
調べる。
イス回路32aを介しドライブ1の磁気テープ
16がロードポイントLDPの位置にあるかを
調べる。
ロードポイントLDPの位置になければ、既
に最終制限値CBEはセツトされているので、
次の自動転送ステツプへ進む。一方、ロード
ポイントLDPの位置にあれば、書込み記録密
度によつて最終制限値CBEのセツトを行う。
に最終制限値CBEはセツトされているので、
次の自動転送ステツプへ進む。一方、ロード
ポイントLDPの位置にあれば、書込み記録密
度によつて最終制限値CBEのセツトを行う。
即ち、MPU30は、RAM31bのモード
エリアEAの書込み記録密度を調べ、書込み記
録密度が1600rpiなら、RAM31bの命令バツ
フア管理エリアCAの最終制限値CBEに「8」
を、6250rpiなら同様に最終制限値CBEに「16」
を初期セツトし、ステツプに進む。
エリアEAの書込み記録密度を調べ、書込み記
録密度が1600rpiなら、RAM31bの命令バツ
フア管理エリアCAの最終制限値CBEに「8」
を、6250rpiなら同様に最終制限値CBEに「16」
を初期セツトし、ステツプに進む。
次に、MPU30は係るライト系命令がデー
タバツフア34を使用するものかどうかを調べ
る。
タバツフア34を使用するものかどうかを調べ
る。
データバツフア34を使用しないものなら、
ステツプの命令格納ステツプへ進む。
ステツプの命令格納ステツプへ進む。
一方、データバツフア34を使用するものな
ら、データ転送を実行する。
ら、データ転送を実行する。
即ち、MPU30は、RAM31bのデータ
バツフア管理エリアDAの先頭バツフアアドレ
スBADRを読出し、データ転送制御回路33
のストアアドレスカウンタSCTRにセツトし、
データ転送制御回路33を起動する。これによ
つてデータ転送制御回路33はデータ転送制御
信号線39aよりデータ転送要求をホストコン
トローラへ発する。
バツフア管理エリアDAの先頭バツフアアドレ
スBADRを読出し、データ転送制御回路33
のストアアドレスカウンタSCTRにセツトし、
データ転送制御回路33を起動する。これによ
つてデータ転送制御回路33はデータ転送制御
信号線39aよりデータ転送要求をホストコン
トローラへ発する。
従つて、ホストコントローラはライトデータ
をライトデータバス39bよりデータバツフア
34へ転送し、データ転送制御回路33のスト
アアドレスカウンタSCTRのアドレスに従つて
ライトデータがデータバツフア34へ蓄積され
る。ストアアドレスカウンタSCTRはライトデ
ータが1バイト転送される毎にカウントアツプ
する。
をライトデータバス39bよりデータバツフア
34へ転送し、データ転送制御回路33のスト
アアドレスカウンタSCTRのアドレスに従つて
ライトデータがデータバツフア34へ蓄積され
る。ストアアドレスカウンタSCTRはライトデ
ータが1バイト転送される毎にカウントアツプ
する。
データ転送制御回路33がデータ転送終了と
判定すると、MPU30はデータ転送制御回路
33のストアアドレスカウンタSCTRを読出し
データバツフア管理エリアDAのバツフアアド
レスBADRとの差を計算して転送されたライ
トデータのバイト数BCを求める。
判定すると、MPU30はデータ転送制御回路
33のストアアドレスカウンタSCTRを読出し
データバツフア管理エリアDAのバツフアアド
レスBADRとの差を計算して転送されたライ
トデータのバイト数BCを求める。
次に、MPU30はRAM31bの命令バツ
フアCBUF及びデータバツフア管理エリアDA
の更新を行う。
フアCBUF及びデータバツフア管理エリアDA
の更新を行う。
先づ、RAM31bの命令バツフアCBUFの
当該命令欄にRAM31bのデータバツフア管
理エリアDAのバツフアアドレス(即ちライト
データの先頭アドレス)BADRと、算出され
たライトデータのバイト数BCを格納する。
当該命令欄にRAM31bのデータバツフア管
理エリアDAのバツフアアドレス(即ちライト
データの先頭アドレス)BADRと、算出され
たライトデータのバイト数BCを格納する。
次に、RAM31bのデータバツフア管理エ
リアDAの空き容量FSEGからデータバツフア
34の使用単位数USEGを差し引き、この空き
容量FSEGを更新し、更に、バツフアアドレス
BADRに使用単位数USEGを加算し、先頭アド
レスBADRを更新する。
リアDAの空き容量FSEGからデータバツフア
34の使用単位数USEGを差し引き、この空き
容量FSEGを更新し、更に、バツフアアドレス
BADRに使用単位数USEGを加算し、先頭アド
レスBADRを更新する。
次に、MPU30は前述の使用単位数(受信
ブロツク長)USEGとRAM31bのデータバ
ツフア管理エリアDAの最大ブロツク長MAXL
とを比較する。
ブロツク長)USEGとRAM31bのデータバ
ツフア管理エリアDAの最大ブロツク長MAXL
とを比較する。
この比較によつて、使用単位数USEGが最大
ブロツク長MAXLより大なら、データバツフ
ア管理エリアDAの最大ブロツク長MAXLをこ
の使用単位数USEGに更新する。更に、記録密
度と最大ブロツク長MAXLに応じて最終制限
値CBEを変更する。
ブロツク長MAXLより大なら、データバツフ
ア管理エリアDAの最大ブロツク長MAXLをこ
の使用単位数USEGに更新する。更に、記録密
度と最大ブロツク長MAXLに応じて最終制限
値CBEを変更する。
即ち、MPU30はRAM31bのエリアEA
の書込み記録密度とエリアDAの最大ブロツク
長MAXLを読出し、記録密度が1600rpiの場合
には、最大ブロツク長MAXLが「16」より大
なら最終制限値を最小の「2」に、最大ブロツ
ク長が「16」以下なら最終制限値CBEを「4」
に設定する。
の書込み記録密度とエリアDAの最大ブロツク
長MAXLを読出し、記録密度が1600rpiの場合
には、最大ブロツク長MAXLが「16」より大
なら最終制限値を最小の「2」に、最大ブロツ
ク長が「16」以下なら最終制限値CBEを「4」
に設定する。
同様に記録密度が6250rpiの場合には、最大
ブロツク長MAXLが「32」より大なら最終制
限値CBEを「2」に、最大ブロツク長MAXL
が「17」〜「32」の間では最終制限値CBEを
「4」に、最大ブロツク長MAXLが「16」以下
なら最終制限値CBEを「8」に設定する。
ブロツク長MAXLが「32」より大なら最終制
限値CBEを「2」に、最大ブロツク長MAXL
が「17」〜「32」の間では最終制限値CBEを
「4」に、最大ブロツク長MAXLが「16」以下
なら最終制限値CBEを「8」に設定する。
逆に、使用単位数USEGが最大ブロツク長
MAXL以下なら、最大ブロツク長MAXL、最
終制限値CBEの更新は行わず、ステツプへ
進む。
MAXL以下なら、最大ブロツク長MAXL、最
終制限値CBEの更新は行わず、ステツプへ
進む。
次に、MPU30は受信したライト系命令の
格納処理を行う。
格納処理を行う。
先づ、MPU30はRAM31bの命令バツ
フアCBUFにホストインターフエイス回路32
bの受信コマンドを格納する。
フアCBUFにホストインターフエイス回路32
bの受信コマンドを格納する。
次に、MPU30はRAM31bの命令バツ
フア管理エリアCAを更新すべく、命令記憶数
CBSTKに「1」加算して更新する。
フア管理エリアCAを更新すべく、命令記憶数
CBSTKに「1」加算して更新する。
更に、MPU30は、ドライブインターフエ
イス回路32aを調べ、制御線36bのEWA
(テープ終端近傍検出)信号がオンかオフかを
調べる。オフであれば、磁気テープ16がテー
プ終端近傍に達していないので、ステツプへ
進む。
イス回路32aを調べ、制御線36bのEWA
(テープ終端近傍検出)信号がオンかオフかを
調べる。オフであれば、磁気テープ16がテー
プ終端近傍に達していないので、ステツプへ
進む。
一方、オンであれば、テープ終端近傍に達し
ているので、RAM31bのエリアEAの
LEOTフラグを調べLEOTモードなら、命令バ
ツフアサイズCBSiZEの変更を要しないので、
ステツプに進む。
ているので、RAM31bのエリアEAの
LEOTフラグを調べLEOTモードなら、命令バ
ツフアサイズCBSiZEの変更を要しないので、
ステツプに進む。
逆に、LEOTモードでなければ、MPU30
はRAM31bのエリアCAの命令バツフアサ
イズCBSiZEと最終制限値CBEを読み出し比較
する。
はRAM31bのエリアCAの命令バツフアサ
イズCBSiZEと最終制限値CBEを読み出し比較
する。
命令バツフアサイズCBSiZEが最終制限値
CBE以下ならば、命令バツフアサイズCBSiZE
を変更せず、ステツプへ進む。逆に命令バツ
フアサイズCBSiZEが最終制限値CBEより大な
らば、命令バツフアサイズCBSiZEから「2」
を減算し、更新してステツプへ進む。
CBE以下ならば、命令バツフアサイズCBSiZE
を変更せず、ステツプへ進む。逆に命令バツ
フアサイズCBSiZEが最終制限値CBEより大な
らば、命令バツフアサイズCBSiZEから「2」
を減算し、更新してステツプへ進む。
次に、MPU30はドライブ制御部2が処理
実行中かを調べ、処理実行中でなければ(停止
中であれば)、第9図にて後述するドライブ起
動処理を行う。
実行中かを調べ、処理実行中でなければ(停止
中であれば)、第9図にて後述するドライブ起
動処理を行う。
処理実行中又はドライブ起動処理が行われる
と、MPU30は、ドライブインターフエイス
回路32aを介しドライブ制御部2がEOTを
検出したことを示すTWA信号が制御線36a
より生じているかを調べる。
と、MPU30は、ドライブインターフエイス
回路32aを介しドライブ制御部2がEOTを
検出したことを示すTWA信号が制御線36a
より生じているかを調べる。
又、LEOTモードなら、MPU30は、後述
する第10図の対ドライブ処理によつて更新さ
れる走行カウンタECTRが一定値EPTRを越え
たロジカルEOT検出(オン)かを調べる。
する第10図の対ドライブ処理によつて更新さ
れる走行カウンタECTRが一定値EPTRを越え
たロジカルEOT検出(オン)かを調べる。
EOT検出でTWA信号が生じていれば又は
LEOT検出(オン)ならば、MPU30は
RAM31bの命令バツフア管理エリアCAの
命令記憶数(未実行命令数)CBSTKが零かを
調べ、零でなければ、ドライブの実行によつて
零になるまで待つ。これはEOT,LEOT以降
の処理においてはホストからの命令とドライブ
が実行する命令の同期をとるためである。
LEOT検出(オン)ならば、MPU30は
RAM31bの命令バツフア管理エリアCAの
命令記憶数(未実行命令数)CBSTKが零かを
調べ、零でなければ、ドライブの実行によつて
零になるまで待つ。これはEOT,LEOT以降
の処理においてはホストからの命令とドライブ
が実行する命令の同期をとるためである。
TWA信号が生じていない時には、又は
LEOTがオフである時には、MPU30はデー
タ転送制御回路33の状態から前述のステツプ
のライトデータ転送がデータバツフア34の
空き容量不足によつてオーバーフローしたかを
調べる。
LEOTがオフである時には、MPU30はデー
タ転送制御回路33の状態から前述のステツプ
のライトデータ転送がデータバツフア34の
空き容量不足によつてオーバーフローしたかを
調べる。
オーバーフローした場合には、前述と同様同
期をとるため、MPU30はRAM31bの命
令バツフア管理エリアCAの命令記憶数(未実
行命令数)CBSTKが零かを調べ、零でなけれ
ば、ドライブの実行によつて零になるまで待
つ。
期をとるため、MPU30はRAM31bの命
令バツフア管理エリアCAの命令記憶数(未実
行命令数)CBSTKが零かを調べ、零でなけれ
ば、ドライブの実行によつて零になるまで待
つ。
バツフアオーバーフローが生じていない時又
はCBSTKが零となると、ホストコントローラ
へMPU30はホストインターフエイス回路3
2bより終了報告(正常受信又はエラー)する
とともにデータビジーDBY信号をオフとし、
第5図の起動待ちルーチンへ戻る。
はCBSTKが零となると、ホストコントローラ
へMPU30はホストインターフエイス回路3
2bより終了報告(正常受信又はエラー)する
とともにデータビジーDBY信号をオフとし、
第5図の起動待ちルーチンへ戻る。
第8図は対ホストリード系処理フロー図であ
る。
る。
第5図の起動処理フローのステツプによつ
てリード系命令を受け、起動処理が行われる
と、MPU30はホストインターフエイス回路
32bを介しデータビジーDBYをオンにし、
ホストコントローラへ実行開始を通知する。
てリード系命令を受け、起動処理が行われる
と、MPU30はホストインターフエイス回路
32bを介しデータビジーDBYをオンにし、
ホストコントローラへ実行開始を通知する。
次に、MPU30は、RAM31bのエリア
CAの先読みブロツク数CBSTKに「1」減算
する。
CAの先読みブロツク数CBSTKに「1」減算
する。
更に、MPU30はドライブ制御部2が処理
実行中かを調べ、処理実行中でなければ(停止
中であれば)、第9図にて後述するドライブ起
動処理を行う。
実行中かを調べ、処理実行中でなければ(停止
中であれば)、第9図にて後述するドライブ起
動処理を行う。
又、MPU30は前述のエリアCAの命令記憶
数(先読みブロツク数)CBSTKが「0」以上
かを調べ、「0」より小のマイナスであれば、
リードデータはデータバツフア34に転送され
ていないから、CBSTKが「0」以上、即ち、
ドライブ1からリードデータが1ブロツク以上
データバツフア34に転送されるまで待つ。
数(先読みブロツク数)CBSTKが「0」以上
かを調べ、「0」より小のマイナスであれば、
リードデータはデータバツフア34に転送され
ていないから、CBSTKが「0」以上、即ち、
ドライブ1からリードデータが1ブロツク以上
データバツフア34に転送されるまで待つ。
先読みブロツク数CBSTKが「0」以上とな
ると、ドライブ1からリードデータがデータバ
ツフア34に転送されているはずであるから、
MPU30は、RAM31bの命令バツフア
CBUFからリード実行結果と、リードデータの
データバツフア34内先頭アドレスRADRと、
リードバイト数RBCを読出す。
ると、ドライブ1からリードデータがデータバ
ツフア34に転送されているはずであるから、
MPU30は、RAM31bの命令バツフア
CBUFからリード実行結果と、リードデータの
データバツフア34内先頭アドレスRADRと、
リードバイト数RBCを読出す。
次にMPU30は前述のステツプでRAM
31bの命令バツフアCBUFから読出したリー
ド実行結果から、ドライブが当該ブロツクを処
理した時にロードポイントLDPを検出してい
たかどうかを調べる、ロードポイントLDPを
検出していたならばリード方向を調べ、リード
リバース方向ならブロツク検出以前にBOTに
達してしまつており、リードデータはデータバ
ツフア34に転送されていないためステツプ
へ進む。
31bの命令バツフアCBUFから読出したリー
ド実行結果から、ドライブが当該ブロツクを処
理した時にロードポイントLDPを検出してい
たかどうかを調べる、ロードポイントLDPを
検出していたならばリード方向を調べ、リード
リバース方向ならブロツク検出以前にBOTに
達してしまつており、リードデータはデータバ
ツフア34に転送されていないためステツプ
へ進む。
一方、リード方向がリードフオワード方向な
らロードポイントLDPから最初のブロツクの
リードであつたので、リード実行結果から記録
密度を調べる。リード実行結果の記録密度は読
取つた磁気テープの記録密度を示している。
らロードポイントLDPから最初のブロツクの
リードであつたので、リード実行結果から記録
密度を調べる。リード実行結果の記録密度は読
取つた磁気テープの記録密度を示している。
そして記録密度が1600rpiなら、RAM31b
の命令バツフア管理エリアCAの最終制限値
CBEに「8」を、6250rpiなら同様に最終制限
値CBEに「16」をセツトする。
の命令バツフア管理エリアCAの最終制限値
CBEに「8」を、6250rpiなら同様に最終制限
値CBEに「16」をセツトする。
更に、MPU30は、ロードポイントLDPを
検出していなかつた場合又は最終制限値CBE
のセツト後、リード実行結果から、リード実行
時にフアイルの区切りを示すテープマークが検
出されたかを調べ、テープマークが検出された
のであればリードデータはデータバツフア34
に転送されていないので、データ転送を行わ
ず、ステツプへ進む。
検出していなかつた場合又は最終制限値CBE
のセツト後、リード実行結果から、リード実行
時にフアイルの区切りを示すテープマークが検
出されたかを調べ、テープマークが検出された
のであればリードデータはデータバツフア34
に転送されていないので、データ転送を行わ
ず、ステツプへ進む。
逆にテープマークが検出されていなければ、
ステツプの自動転送ステツプへ進む。
ステツプの自動転送ステツプへ進む。
先づ、MPU30は前述のリード系命令がデ
ータ転送を伴うものか否かを判別する。データ
転送を伴なわないリード系命令としては、スペ
ース(Space)、バツクスペース(Back−
Space)、スペースフアイル(Space File)、バ
ツクスペースフアイル(Back Space File)が
ある。
ータ転送を伴うものか否かを判別する。データ
転送を伴なわないリード系命令としては、スペ
ース(Space)、バツクスペース(Back−
Space)、スペースフアイル(Space File)、バ
ツクスペースフアイル(Back Space File)が
ある。
データ転送を伴うリード系命令なら、ホスト
コントローラへのデータ転送を実行する。
コントローラへのデータ転送を実行する。
即ち、MPU30は、RAM31bの命令バ
ツフアCBUFから読出した先頭バツフアアドレ
スRADRをデータ転送制御回路33のロード
アドレスカウンタLCTRに、リードバイト数を
バイトカウンタBCTRにセツトし、データ転
送制御回路33を起動する。
ツフアCBUFから読出した先頭バツフアアドレ
スRADRをデータ転送制御回路33のロード
アドレスカウンタLCTRに、リードバイト数を
バイトカウンタBCTRにセツトし、データ転
送制御回路33を起動する。
これによつてデータ転送制御回路33は、リ
ードストローブパルスRSTB(第4図A)とと
もにロードアドレスカウンタLCTRのアドレス
に従つてデータバツフア34内のリードデータ
をホストコントローラに転送する。ロードアド
レスカウンタLCTRは、リードデータを1バイ
ト転送する毎にカウントアツプする。
ードストローブパルスRSTB(第4図A)とと
もにロードアドレスカウンタLCTRのアドレス
に従つてデータバツフア34内のリードデータ
をホストコントローラに転送する。ロードアド
レスカウンタLCTRは、リードデータを1バイ
ト転送する毎にカウントアツプする。
データ転送制御回路33がリードバイト数分
のデータ転送終了と判定すると、MPU30は
RAM31bのエリアDAの空き容量FSEGに使
用単位数USEGを加算し、更新する。
のデータ転送終了と判定すると、MPU30は
RAM31bのエリアDAの空き容量FSEGに使
用単位数USEGを加算し、更新する。
一方、データ転送を伴わないリード系命令で
もリードデータはデータバツフア34内に転送
されているので、同様に空き容量FSEGの更新
を行う。
もリードデータはデータバツフア34内に転送
されているので、同様に空き容量FSEGの更新
を行う。
次に、MPU30は前述のリード系命令がフ
アイルサーチ(File Search)系命令(スペー
スフアイル又はバツクスペースフアイル)かを
調べ、フアイルサーチ系命令なら、ステツプ
に戻る。即ち、フアイルサーチ系命令をリード
(Read)命令に分割していることになる。
アイルサーチ(File Search)系命令(スペー
スフアイル又はバツクスペースフアイル)かを
調べ、フアイルサーチ系命令なら、ステツプ
に戻る。即ち、フアイルサーチ系命令をリード
(Read)命令に分割していることになる。
一方、ステツプでフアイルサーチ系命令で
ない時又はステツプでリード方向がリバース
の場合又はテープマーク検出の場合には、ホス
トコントローラMPU30はホストインターフ
エイス回路32bより終了報告(正常受信又は
エラー)するとともにデータビジーDBY信号
をオフとし、第5図の起動待ちルーチンへ戻
る。
ない時又はステツプでリード方向がリバース
の場合又はテープマーク検出の場合には、ホス
トコントローラMPU30はホストインターフ
エイス回路32bより終了報告(正常受信又は
エラー)するとともにデータビジーDBY信号
をオフとし、第5図の起動待ちルーチンへ戻
る。
このようにして、ライト系処理では、ロジカ
ルEOTモードでは、バツフアサイズCBSiZEは
ステツプで減少制限せずに、ロジカルEOT
オンによつてステツプで通常のEOTオンと
同様に先取り命令の禁止を行う。
ルEOTモードでは、バツフアサイズCBSiZEは
ステツプで減少制限せずに、ロジカルEOT
オンによつてステツプで通常のEOTオンと
同様に先取り命令の禁止を行う。
一方、ロジカルEOTモードでないフイジカ
ルEOTモードの時には、記録密度と最大ブロ
ツク長MAXLに応じて最終制御値CBEが変更
され(ステツプ)、EWAにおいては、ステツ
プでバツフアサイズが順次減少される。
ルEOTモードの時には、記録密度と最大ブロ
ツク長MAXLに応じて最終制御値CBEが変更
され(ステツプ)、EWAにおいては、ステツ
プでバツフアサイズが順次減少される。
又、リード系処理では、リード系命令の種類
を問わず先読みが行なわれる。
を問わず先読みが行なわれる。
(e) 対ドライブ処理動作の説明
第9図は対ドライブ起動処理フロー図である。
() MPU30はドライブ起動を行うべく、
RAM31bの命令バツフアCBUFより次に実
行すべき命令を読み出し、ライト系命令かを調
べる。
RAM31bの命令バツフアCBUFより次に実
行すべき命令を読み出し、ライト系命令かを調
べる。
ライト系命令でなければ、即ち、リード系命
令なら、MPU30は、RAM31bのエリア
CAの先読みブロツク数CBSTKが零より小の
マイナスかを調べるCBSTKが零以上であれば
すでに先読みを行つているので起動しても良い
かを調べる。起動不可(先読み時にエラーを検
出して停止している)の時はリターンする。
令なら、MPU30は、RAM31bのエリア
CAの先読みブロツク数CBSTKが零より小の
マイナスかを調べるCBSTKが零以上であれば
すでに先読みを行つているので起動しても良い
かを調べる。起動不可(先読み時にエラーを検
出して停止している)の時はリターンする。
一方、起動可なら、RAM31bのエリア
CAの先読みブロツク数CBSTKが「63」より
小かを調べる。小でなければRAM31bの命
令バツフアCBUFがフルのため、リターンす
る。
CAの先読みブロツク数CBSTKが「63」より
小かを調べる。小でなければRAM31bの命
令バツフアCBUFがフルのため、リターンす
る。
一方、先読みブロツク数が63ケより小なら、
空き容量FSEGが64Kバイト以上かを調べ、以
下ならデータ転送不可としてリターンする。
空き容量FSEGが64Kバイト以上かを調べ、以
下ならデータ転送不可としてリターンする。
() ステツプ()で空き容量FSEGが64K
バイト以上なら、ドライブ1からのデータ転送
可能なため、MPU30はRAM31bの先頭
アドレスBADRをデータ転送制御回路33の
ストアアドレスカウンタSCTRにセツトし、デ
ータ転送制御回路33をスタンバイ状態とす
る。
バイト以上なら、ドライブ1からのデータ転送
可能なため、MPU30はRAM31bの先頭
アドレスBADRをデータ転送制御回路33の
ストアアドレスカウンタSCTRにセツトし、デ
ータ転送制御回路33をスタンバイ状態とす
る。
次に、MPU30はドライブインターフエイ
ス回路32aよりEWA信号がオンか、オフか
を調べ、オン(YES)なら、EWAにあるか
ら、RAM31bのLEOTモードフラグをオフ
とし、LEOTモードを解除する。
ス回路32aよりEWA信号がオンか、オフか
を調べ、オン(YES)なら、EWAにあるか
ら、RAM31bのLEOTモードフラグをオフ
とし、LEOTモードを解除する。
更に、MPU30はリード系命令がリードリ
バースかを調べ、リードリバースならロジカル
EOTをオフとする。
バースかを調べ、リードリバースならロジカル
EOTをオフとする。
このオフの後又は、EWA信号オフ又はリー
ドリバースでない場合には、MPU30はドラ
イブインターフエイス回路32aを介し、起動
(GO)信号と当該リード系命令とをドライブ
1へ発行し、リターンする。
ドリバースでない場合には、MPU30はドラ
イブインターフエイス回路32aを介し、起動
(GO)信号と当該リード系命令とをドライブ
1へ発行し、リターンする。
() 一方、ステツプ()でライト系命令と
判定すると、ドライブへの自動転送準備を行
う。
判定すると、ドライブへの自動転送準備を行
う。
即ち、MPU30はRAM31bの命令バツ
フアCBUFから当該ライト系命令を読出し、こ
の命令がデータ転送を伴う命令かを調べる。デ
ータ転送を伴う命令であれば、MPU30は
RAM31bの命令バツフアCBUFの先頭アド
レスWADR及びバイト数WBCをデータ転送制
御回路33のロードアドレスカウンタLATR、
バイトカウンタBCTRに各々セツトする。
フアCBUFから当該ライト系命令を読出し、こ
の命令がデータ転送を伴う命令かを調べる。デ
ータ転送を伴う命令であれば、MPU30は
RAM31bの命令バツフアCBUFの先頭アド
レスWADR及びバイト数WBCをデータ転送制
御回路33のロードアドレスカウンタLATR、
バイトカウンタBCTRに各々セツトする。
更にデータ転送制御回路33をスタンバイ状
態にする。このスタンバイ状態後又は、前述の
データ転送を伴なわないライト系命令(イレー
ズ、ライトテープマーク等)であれば、MPU
30は読出した命令と、起動(GO)信号をド
ライブインターフエイス回路32aを介し制御
線36aよりドライブ制御部2へ発行し、リタ
ーンする。
態にする。このスタンバイ状態後又は、前述の
データ転送を伴なわないライト系命令(イレー
ズ、ライトテープマーク等)であれば、MPU
30は読出した命令と、起動(GO)信号をド
ライブインターフエイス回路32aを介し制御
線36aよりドライブ制御部2へ発行し、リタ
ーンする。
一方、ドライブ部2は、前述のステツプ
(),()で起動信号及び命令を受けると、
データビジーDBYをオンとして返答し、当該
命令の実行に入る。
(),()で起動信号及び命令を受けると、
データビジーDBYをオンとして返答し、当該
命令の実行に入る。
例えばデータ転送を伴うライト系命令なら、
データ転送準備完了後、データ転送制御信号線
37aよりデータ転送要求をデータ転送制御回
路33へ送る。これによつてデータ転送制御回
路33はデータバツフア34のロードアドレス
カウンタLCTRで示す先頭アドレスからバイト
カウンタBCTRのバイト数分ライトデータを
ライトデータバス37bを介しドライブ制御部
2へ送り、これを実行せしめ磁気テープ16に
ライトさせる。
データ転送準備完了後、データ転送制御信号線
37aよりデータ転送要求をデータ転送制御回
路33へ送る。これによつてデータ転送制御回
路33はデータバツフア34のロードアドレス
カウンタLCTRで示す先頭アドレスからバイト
カウンタBCTRのバイト数分ライトデータを
ライトデータバス37bを介しドライブ制御部
2へ送り、これを実行せしめ磁気テープ16に
ライトさせる。
また、ドライブ制御部2において係るライト
系コマンドの実行が終了すると、終了報告を制
御線36aを介しドライブインターフエイス回
路32aへ上げる。ドライブインターフエイス
回路32aは、これによつてMPU30に割込
みをかけ、第5図乃至第8図の処理を中断せし
める。
系コマンドの実行が終了すると、終了報告を制
御線36aを介しドライブインターフエイス回
路32aへ上げる。ドライブインターフエイス
回路32aは、これによつてMPU30に割込
みをかけ、第5図乃至第8図の処理を中断せし
める。
第10図は対ドライブライト/リード処理フロ
ー図である。
ー図である。
() MPU30はドライブより終了報告を受
けると、終了した命令種別がリード系かライト
系かを調べ、リード系ならステツプ()へ進
む。
けると、終了した命令種別がリード系かライト
系かを調べ、リード系ならステツプ()へ進
む。
一方、終了した命令種別がライト系なら、
MPU30はドライブインターフエイス回路3
2aを介しEWA信号がオンかオフかを調べる。
オフ(NO)であればステツプ()へ進む。
MPU30はドライブインターフエイス回路3
2aを介しEWA信号がオンかオフかを調べる。
オフ(NO)であればステツプ()へ進む。
EWA信号がオン(YES)であれば、終端近
傍領域(EWA)内であるから、MPU30は
RAM31bのエリアEAのLEOTモードフラ
グを調べLEOTモードかを判別する。
傍領域(EWA)内であるから、MPU30は
RAM31bのエリアEAのLEOTモードフラ
グを調べLEOTモードかを判別する。
LEOTモードでなければ、通常のフイジカル
EOTモードであるから、ステツプ()へ進
む。
EOTモードであるから、ステツプ()へ進
む。
逆にLEOTモードなら、走行カウンタの歩進
及びLEOT検出点の検出のためステツプ()
へ進む。
及びLEOT検出点の検出のためステツプ()
へ進む。
() 先づ、MPU30はRAM31bのエリ
アEAの書込み記録密度を調べる。
アEAの書込み記録密度を調べる。
記録密度が6250rpiか1600rpiかの判断は、以
下の走行カウンタの歩進及びLEOT検出点の検
出処理におけるライトテープマーク長WTM、
イレーズ長ERS、IBG長、判定値EPTRを異な
らせるためであり、処理自体は全く同一であ
る。
下の走行カウンタの歩進及びLEOT検出点の検
出処理におけるライトテープマーク長WTM、
イレーズ長ERS、IBG長、判定値EPTRを異な
らせるためであり、処理自体は全く同一であ
る。
即ち、MPU30は命令バツフアCBUFの命
令がライト命令、イレーズバリアブル命令、ラ
イトテープマーク命令、イレーズ固定命令かを
調べる。
令がライト命令、イレーズバリアブル命令、ラ
イトテープマーク命令、イレーズ固定命令かを
調べる。
命令がライト命令又はイレーズバリアブル命
令なら、命令バツフアCBUFのバイト数RBC
を使用単位数USEGに変換し、RAM31bの
エリアEAの走行カウント値ECTRに加算更新
する。又、命令がライトテープマーク命令な
ら、固定値であるライトテープマーク長WTM
を同様に走行カウント値ECTRに加算更新す
る。
令なら、命令バツフアCBUFのバイト数RBC
を使用単位数USEGに変換し、RAM31bの
エリアEAの走行カウント値ECTRに加算更新
する。又、命令がライトテープマーク命令な
ら、固定値であるライトテープマーク長WTM
を同様に走行カウント値ECTRに加算更新す
る。
更に、命令がイレーズ固定命令なら、固定イ
レーズ長ERSを同様に走行カウント値ECTRに
加算更新する。
レーズ長ERSを同様に走行カウント値ECTRに
加算更新する。
そして、更に、IBG長を走行カウント値
ECTRに加算更新する。
ECTRに加算更新する。
次に、MPU30は、LEOT検出点の検出の
ため、この走行カウント値ECTRと判定値
EPTRとを比較する。
ため、この走行カウント値ECTRと判定値
EPTRとを比較する。
ECTR≧EPTRならLEOT検出点に達してい
るため、ロジカルEOTオンとする。ECTR<
EPTRならロジカルEOTはオンとしない。
るため、ロジカルEOTオンとする。ECTR<
EPTRならロジカルEOTはオンとしない。
() 次に、MPU30は係るライト系命令が
データバツフア34を使用する命令かを調べ、
使用する命令であれば、RAM31bのデータ
バツフア管理エリアDAの空き容量FSEGに使
用単位数USEGを加算し、空き容量FSEGを更
新する。
データバツフア34を使用する命令かを調べ、
使用する命令であれば、RAM31bのデータ
バツフア管理エリアDAの空き容量FSEGに使
用単位数USEGを加算し、空き容量FSEGを更
新する。
次に、この更新後、又はデータバツフア34
を使用していない時には、RAM31bの命令
バツフア管理エリアCAの命令記憶数CBSTK
を「1」減算し、更新する。
を使用していない時には、RAM31bの命令
バツフア管理エリアCAの命令記憶数CBSTK
を「1」減算し、更新する。
更に、MPU30は、RAM31bの命令記
憶数CBSTKが零かを調べ、零なら第5図又は
第7図のルーチンへ戻り、零でなければ、第9
図のステツプ()以降を実行する。
憶数CBSTKが零かを調べ、零なら第5図又は
第7図のルーチンへ戻り、零でなければ、第9
図のステツプ()以降を実行する。
このようにしてドライブはホストコントロー
ラと非同期に命令バツフアの命令を順次実行し
ていく。
ラと非同期に命令バツフアの命令を順次実行し
ていく。
() 一方、ステツプ()で命令種別がリー
ド系と判定されると、MPU30は命令がリー
ドリバースであつたかを調べ、リードリバース
であつたならばドライブインターフエイス回路
32aを介し、ドライブ1がロードポイント
LDPを検出しているかどうかを調べる。ロー
ドポイント検出信号が上がつていない場合、及
び命令がリードフオワードであつた場合はドラ
イブインターフエイス回路32aを介しテープ
マーク検出信号が上つているかを調べる。
ド系と判定されると、MPU30は命令がリー
ドリバースであつたかを調べ、リードリバース
であつたならばドライブインターフエイス回路
32aを介し、ドライブ1がロードポイント
LDPを検出しているかどうかを調べる。ロー
ドポイント検出信号が上がつていない場合、及
び命令がリードフオワードであつた場合はドラ
イブインターフエイス回路32aを介しテープ
マーク検出信号が上つているかを調べる。
テープマーク検出信号も上つていなければ、
ドライブ処理終了によるデータバツフア34に
転送されたリードデータのバイト数BCを計算
する。
ドライブ処理終了によるデータバツフア34に
転送されたリードデータのバイト数BCを計算
する。
即ち、MPU30はデータ転送制御回路33
のストアアドレスカウンタSCTRを読出しデー
タバツフア管理エリアDAのバツフアアドレス
BADRとの差を計算して転送されたリードデ
ータのバイト数BCを求める。
のストアアドレスカウンタSCTRを読出しデー
タバツフア管理エリアDAのバツフアアドレス
BADRとの差を計算して転送されたリードデ
ータのバイト数BCを求める。
次に、MPU30はRAM31bの命令バツ
フアCBUF及びデータバツフア管理エリアDA
の更新を行う。
フアCBUF及びデータバツフア管理エリアDA
の更新を行う。
先づ、RAM31bの命令バツフアCBUFの
当該命令欄にRAM31bのデータバツフア管
理エリアDAのバツフアアドレス(即ち先読み
リードデータの先頭アドレス)BADRと、算
出されたリードデータのバイト数BCを格納す
る。
当該命令欄にRAM31bのデータバツフア管
理エリアDAのバツフアアドレス(即ち先読み
リードデータの先頭アドレス)BADRと、算
出されたリードデータのバイト数BCを格納す
る。
次に、RAM31bのデータバツフア管理エ
リアDAの空き容量FSEGからデータバツフア
34の使用単位数USEGを差し引き、この空き
容量FSEGを更新し、更に、バツフアアドレス
BADRに使用単位数USEGを加算し、先頭アド
レスBADRを更新する。
リアDAの空き容量FSEGからデータバツフア
34の使用単位数USEGを差し引き、この空き
容量FSEGを更新し、更に、バツフアアドレス
BADRに使用単位数USEGを加算し、先頭アド
レスBADRを更新する。
更に、MPU30はドライブ1がフオワード
方向の動作で且つEOTの検出をしたかを調べ
る。
方向の動作で且つEOTの検出をしたかを調べ
る。
これによつてYESであれば、リード実行結
果(EOT検出)を命令バツフアCBUFの当該
リードデータの格納欄に格納し、第5図又は第
8図のルーチンへ戻る。
果(EOT検出)を命令バツフアCBUFの当該
リードデータの格納欄に格納し、第5図又は第
8図のルーチンへ戻る。
同様にテープマーク検出、リードリバースに
おいてロードポイントLDP検出の場合も、命
令バツフアCBUFにこれを格納し、第5図又は
第8図のルーチンへ戻る。
おいてロードポイントLDP検出の場合も、命
令バツフアCBUFにこれを格納し、第5図又は
第8図のルーチンへ戻る。
一方前述のMPU30のEOT検出等の調べに
よつてNOであれば、同様にリード実行結果
(不検出)を命令バツフアCBUFの当該リード
データの格納欄に格納する。
よつてNOであれば、同様にリード実行結果
(不検出)を命令バツフアCBUFの当該リード
データの格納欄に格納する。
更に、MPU30はRAM31bのエリアCA
の先読みブロツク数CBSTKが63以上かを調
べ、63以上なら、先読みリード不可として第5
図又は第8図のルーチンへ戻り、63より小なら
先読みリードを実行すべく第9図のステツプ
()へ戻る。
の先読みブロツク数CBSTKが63以上かを調
べ、63以上なら、先読みリード不可として第5
図又は第8図のルーチンへ戻り、63より小なら
先読みリードを実行すべく第9図のステツプ
()へ戻る。
(f) 全体動作の説明
以上、第5図から第10までの動作を要約する
と、次の如くなる。
と、次の如くなる。
ライト系動作においては、
(1) 通常のフイジカルEOTモードとは別にロジ
カルEOTモードが設けられている。
カルEOTモードが設けられている。
即ち、第11図Aに示す如く、磁気テープド
ライブ部1が磁気テープ16を走行して、磁気
テープの終端近傍領域(EWA)を検出すると、
先取り制御部3が終端領域近傍時点から磁気テ
ープの走行距離を計数し、計数値ECTRが一定
値EPTRに達すると、テープ終端領域検出とみ
なし、疑似的なEOTを得るようにしている。
ライブ部1が磁気テープ16を走行して、磁気
テープの終端近傍領域(EWA)を検出すると、
先取り制御部3が終端領域近傍時点から磁気テ
ープの走行距離を計数し、計数値ECTRが一定
値EPTRに達すると、テープ終端領域検出とみ
なし、疑似的なEOTを得るようにしている。
この疑似EOT(ロジカルEOT)は通常のフ
イジカルEOT検出と同一の効果を待ち、これ
によつて実際に磁気テープに設けられたEOT
マーカを検出することなく、それ以前にEOT
の取扱いが行われる。
イジカルEOT検出と同一の効果を待ち、これ
によつて実際に磁気テープに設けられたEOT
マーカを検出することなく、それ以前にEOT
の取扱いが行われる。
これによつて第11図Aに示す如くEOT検
出時点を早くすることにより、TWAを長くで
きる。このため、TWAに書込むことのできる
ブロツク数が多くなるため、第11図Bの実線
に示す如く、EWAにおけるライト系命令の先
取り数を減らす必要がなくなる。
出時点を早くすることにより、TWAを長くで
きる。このため、TWAに書込むことのできる
ブロツク数が多くなるため、第11図Bの実線
に示す如く、EWAにおけるライト系命令の先
取り数を減らす必要がなくなる。
従つて、ホストコントローラは、ライト系命
令の先取り制限をEWAにおいては受けないの
でストリーミング走行の性能低下を防止でき
る。
令の先取り制限をEWAにおいては受けないの
でストリーミング走行の性能低下を防止でき
る。
即ち、第11図cの実線の如く、EOT付近
までは、命令先取り数はできるだけ多くし、
EOTが近づいたら、書込み可能な数に減らす
という理想的な先取り制御が可能となる。
までは、命令先取り数はできるだけ多くし、
EOTが近づいたら、書込み可能な数に減らす
という理想的な先取り制御が可能となる。
これによつて、TWAに書込み不能となるこ
ともなく、性能低下を防止することができる。
ともなく、性能低下を防止することができる。
(2) 従つて、第5図ステツプの初期設定()、
即ち第6図cにおいて、LEOTモードならバツ
フアサイズCBSiZEは最大の「64」で減少制限
を受けない。
即ち第6図cにおいて、LEOTモードならバツ
フアサイズCBSiZEは最大の「64」で減少制限
を受けない。
即ち、ロジカルEOTモードであれば、第7
図のステツプにおいて、バツフアサイズ
CBSiZEの漸次減少、即ち減少制限は行われな
い。
図のステツプにおいて、バツフアサイズ
CBSiZEの漸次減少、即ち減少制限は行われな
い。
そして、第10図のステツプ()におい
て、アーリーウオーニングエリアEWA検出か
らテープ走行距離が走行カウント値ECTRとし
て計測され、これが制限値EPTRに達すると、
ロジカルEOTポイント検出として、LEOTオ
ンとなり、第7図のステツプで通常のフイジ
カルEOT検出と同一の扱いが行われる。
て、アーリーウオーニングエリアEWA検出か
らテープ走行距離が走行カウント値ECTRとし
て計測され、これが制限値EPTRに達すると、
ロジカルEOTポイント検出として、LEOTオ
ンとなり、第7図のステツプで通常のフイジ
カルEOT検出と同一の扱いが行われる。
従つて、LEOTモードでは、LEOT点検出ま
で第11図Bの実線の如くバツフアサイズ
CBSiZEの制限を受けず、LEOT点検出で、
EOTモードと同様、実質的にCBSiZEは零とな
る。
で第11図Bの実線の如くバツフアサイズ
CBSiZEの制限を受けず、LEOT点検出で、
EOTモードと同様、実質的にCBSiZEは零とな
る。
このため、LEOTモードでは、第1図cの実
線の如く、LEOT点検出から命令記憶数
CBSTKが減少していく。
線の如く、LEOT点検出から命令記憶数
CBSTKが減少していく。
(3) 更にLEOTモードにおいて、第9図のステツ
プ()の如く、テープ走行距離計数開始後
(EWAオン後)に、リード系命令の受信、実行
などにより計数値の保証ができなくなつた時に
は、ロジカルEOTモードがオフとなつて、フ
イジカルEOTモードに移行する。
プ()の如く、テープ走行距離計数開始後
(EWAオン後)に、リード系命令の受信、実行
などにより計数値の保証ができなくなつた時に
は、ロジカルEOTモードがオフとなつて、フ
イジカルEOTモードに移行する。
(4) 一方、通常のフイジカルEOTモードであれ
ば、第5図のステツプの初期設定()、即
ち第6図cにおいてバツフアサイズCBSiZEは
最終制限値CBEにより変更される。
ば、第5図のステツプの初期設定()、即
ち第6図cにおいてバツフアサイズCBSiZEは
最終制限値CBEにより変更される。
又、第7図のステツプにおいて、この最終
制限値CBEは記録密度と最大ブロツク長によ
り変更される。
制限値CBEは記録密度と最大ブロツク長によ
り変更される。
即ち、最終制限値CBEは、第11図c及び
Dの如く記録密度と最大ブロツク長により決定
するようにしたものである。
Dの如く記録密度と最大ブロツク長により決定
するようにしたものである。
例えば、第11図Cの記録密度6250rpiの高
密度記録においては、最大ブロツク長MAXL
に応じて命令先取り最終期限値CBEを「16」
から「8」、「4」、「2」に、記録密度1600rpi
の低密度記録においては、最大ブロツク長
MAXLに応じて命令先取り最終制限値CBEを
「8」から「4」、「2」に変更するようにした
ものである。
密度記録においては、最大ブロツク長MAXL
に応じて命令先取り最終期限値CBEを「16」
から「8」、「4」、「2」に、記録密度1600rpi
の低密度記録においては、最大ブロツク長
MAXLに応じて命令先取り最終制限値CBEを
「8」から「4」、「2」に変更するようにした
ものである。
このため、EOT検出時には、記録密度と最
大ブロツク長に応じTWAを十分利用できる分
のライト系命令を先取りすることができ、
TWAを有効に利用することができる。
大ブロツク長に応じTWAを十分利用できる分
のライト系命令を先取りすることができ、
TWAを有効に利用することができる。
更に、フイジカルEOTモードであれば、第
7図のステツプにおいてアーリーウオーニン
グエリアEWA内では、バツフアサイズ
CBSiZEは最終制限値CBE以上なら「2」づつ
減少していく。
7図のステツプにおいてアーリーウオーニン
グエリアEWA内では、バツフアサイズ
CBSiZEは最終制限値CBE以上なら「2」づつ
減少していく。
例えば、命令バツフアに蓄積しうるライト系
命令が64であつたものを第11図Bの点線の如
く、漸次減少するようにする。
命令が64であつたものを第11図Bの点線の如
く、漸次減少するようにする。
従つて、ライト系命令の蓄積可能数を制限す
るため、ライトデータを伴わないイレーズ、ラ
イトテープマーク等のライト系命令も制限され
るから、磁気テープ内(特にTWA内)に全て
のライト系命令の実行ができ、ライト系命令の
処理不能を防止することができる。
るため、ライトデータを伴わないイレーズ、ラ
イトテープマーク等のライト系命令も制限され
るから、磁気テープ内(特にTWA内)に全て
のライト系命令の実行ができ、ライト系命令の
処理不能を防止することができる。
即ち、テープ終端近傍に達しEWA信号がオ
ンとなると、バツフアサイズCBSiZEは最大値
「64」からホストコントローラからのライト系
コマンド受信毎に「2」づつ減少され、即ち命
令格納許可数が漸次減少する。更にTWA
(EOT)信号が発せられると、命令記憶数
CBSTKが零となるまで終了報告をしない。
ンとなると、バツフアサイズCBSiZEは最大値
「64」からホストコントローラからのライト系
コマンド受信毎に「2」づつ減少され、即ち命
令格納許可数が漸次減少する。更にTWA
(EOT)信号が発せられると、命令記憶数
CBSTKが零となるまで終了報告をしない。
このため、先取り命令数は第1図cの点線で
示す如く漸次減少する。
示す如く漸次減少する。
このような漸次減少する様にすると、ホスト
コントローラは次のコマンドを受付けるまでの
時間が極度に長びかされることがない。これに
対し一挙に減少してしまうと、ホストコントロ
ーラは、(蓄積済の命令数)−(減少後の蓄積可
能命令数−1)だけの数の命令をドライブが実
行するまで次の命令が受付けられないので、ホ
ストコントローラの時間監視によつてタイムオ
ーバーによる装置異常と見なされてしまい不都
合が生じてしまう。
コントローラは次のコマンドを受付けるまでの
時間が極度に長びかされることがない。これに
対し一挙に減少してしまうと、ホストコントロ
ーラは、(蓄積済の命令数)−(減少後の蓄積可
能命令数−1)だけの数の命令をドライブが実
行するまで次の命令が受付けられないので、ホ
ストコントローラの時間監視によつてタイムオ
ーバーによる装置異常と見なされてしまい不都
合が生じてしまう。
従つて漸次減少によりこの不都合が防止でき
る。
る。
この漸次減少は、最終制限値CBE以上であ
る時に行われ、最終制限値CBEは記録密度と
最大ブロツク長に応じて順次変更される。
る時に行われ、最終制限値CBEは記録密度と
最大ブロツク長に応じて順次変更される。
(5) 又、第7図のステツプの如く、ホストコン
トローラから起動(GO)がかかり、ライト系
コマンドが与えられると、先づ命令バツフアの
命令記憶可能数内であるかを調べ、命令記憶可
能数内であれば、このコマンドを受付け、命令
記憶可能数を越えると、このコマンドの受付け
を保留してデータビジーDBYを上げない。
トローラから起動(GO)がかかり、ライト系
コマンドが与えられると、先づ命令バツフアの
命令記憶可能数内であるかを調べ、命令記憶可
能数内であれば、このコマンドを受付け、命令
記憶可能数を越えると、このコマンドの受付け
を保留してデータビジーDBYを上げない。
即ち、第4図Bの如く、ドライブ側が命令バ
ツフア内の命令を実行し、命令記憶可能数以内
になるまでデータビジーを上げず、命令記憶可
能数以内となると、データビジーを上げ、処理
実行中をホストコントローラへ通知する。
ツフア内の命令を実行し、命令記憶可能数以内
になるまでデータビジーを上げず、命令記憶可
能数以内となると、データビジーを上げ、処理
実行中をホストコントローラへ通知する。
同様に、ステツプにおいて、データバツフ
アの空き容量が最大ブロツク長以上であるかを
調べ最大ブロツク長以上であれば、ホストコン
トローラからのライトデータの転送を受け、最
大ブロツク長以下なら、データ転送を保留して
データビジーDBYを上げない。
アの空き容量が最大ブロツク長以上であるかを
調べ最大ブロツク長以上であれば、ホストコン
トローラからのライトデータの転送を受け、最
大ブロツク長以下なら、データ転送を保留して
データビジーDBYを上げない。
従つて、ドライブ側が命令バツフア内の命令
を実行し、データバツフアの空き容量が最大ブ
ロツク長以上になるまでデータビジーを上げ
ず、最大ブロツク長以上になると、データビジ
ーを上げ、転送受付けを可能とする。
を実行し、データバツフアの空き容量が最大ブ
ロツク長以上になるまでデータビジーを上げ
ず、最大ブロツク長以上になると、データビジ
ーを上げ、転送受付けを可能とする。
そして、ステツプにおいて、転送されたブ
ロツク長が最大ブロツク長より大なら、実際に
転送されたブロツク長を次回より最大ブロツク
長として採用する。
ロツク長が最大ブロツク長より大なら、実際に
転送されたブロツク長を次回より最大ブロツク
長として採用する。
このため、リトライ回数の減少及び待ち時間
の短縮の効果が生じる。
の短縮の効果が生じる。
(g) 他の実施例の説明
上述の実施例では、ロジカルEOTモードで動
作中にリード系命令の受信実行によつて前述の(3)
で説明した如く走行カウンタの計数値が保証でき
なくなつた場合にフイジカルEOTモードに移行
するようにしているが、操作パネルよりの指示で
RAM31bのエリアEAのLEOTモードフラグ
を強制オフすることによつて、フイジカルEOT
モードのみの動作が可能とするようにしてもよ
い。
作中にリード系命令の受信実行によつて前述の(3)
で説明した如く走行カウンタの計数値が保証でき
なくなつた場合にフイジカルEOTモードに移行
するようにしているが、操作パネルよりの指示で
RAM31bのエリアEAのLEOTモードフラグ
を強制オフすることによつて、フイジカルEOT
モードのみの動作が可能とするようにしてもよ
い。
又、上述の実施例では、フイジカルEOTモー
ドにおいて、ライト系の命令の蓄積可能数をホス
トからのライト系コマンド受信毎に漸次減少して
いるが、一挙に減少してもよく、ドライブ側の複
数命令実行毎に漸次減少するようにしてもよい。
ドにおいて、ライト系の命令の蓄積可能数をホス
トからのライト系コマンド受信毎に漸次減少して
いるが、一挙に減少してもよく、ドライブ側の複
数命令実行毎に漸次減少するようにしてもよい。
更にドライブ制御部2と命令データ先取り制御
部が一体であつてもよく、ドライブ1もテープバ
ツフアを有するものであつてもよい。
部が一体であつてもよく、ドライブ1もテープバ
ツフアを有するものであつてもよい。
しかも、最大ブロツク長MAXLも受信ブロツ
クにより変更せず、ステツプ的に変更するように
してもよい。
クにより変更せず、ステツプ的に変更するように
してもよい。
以上本発明を実施例により説明したが、本発明
は本発明の主旨に従い種々の変形が可能であり、
本発明からこれらを排除するものではない。
は本発明の主旨に従い種々の変形が可能であり、
本発明からこれらを排除するものではない。
以上説明した様に、本発明によれば、第1のモ
ード(ロジカルEOTモード)と第2のモード
(フイジカルEOTモード)との両方の命令先取り
制御モードを有しているので、アーリーウオーニ
ングエリアEWAにおいても、ライト系命令先取
り数を制限せず、ストリーミング走行を長く維持
でる第1のモードと、EWAにおいて、ライト系
命令先取り数を適度に制限し、ストリーミング走
行を効率良く維持しながらテープウオーニングエ
リアTWAに書込めるブロツクを最大としうる第
2のモードとを自動又は手動によつて選択するこ
とができるという効果を奏し、ストリーミング動
作を円滑且つ効率良くテープ終端近傍領域EWA
で実行しうる命令先取り制御が可能となる。
ード(ロジカルEOTモード)と第2のモード
(フイジカルEOTモード)との両方の命令先取り
制御モードを有しているので、アーリーウオーニ
ングエリアEWAにおいても、ライト系命令先取
り数を制限せず、ストリーミング走行を長く維持
でる第1のモードと、EWAにおいて、ライト系
命令先取り数を適度に制限し、ストリーミング走
行を効率良く維持しながらテープウオーニングエ
リアTWAに書込めるブロツクを最大としうる第
2のモードとを自動又は手動によつて選択するこ
とができるという効果を奏し、ストリーミング動
作を円滑且つ効率良くテープ終端近傍領域EWA
で実行しうる命令先取り制御が可能となる。
第1図は本発明の原理説明図、第2図は本発明
の一実施例全体構成図、第3図は第2図構成の要
部構成図、第4図は第2図構成のデータ転送動作
説明図、第5図は本発明の一実施例起動処理フロ
ー図、第6図は第5図の初期設定処理フロー図、
第7図は本発明の一実施例のホストに対するライ
ト系処理フロー図、第8図はホストに対するリー
ド系処理フロー図、第9図はドライブに対する起
動処理フロー図、第10図はドライブに対するラ
イト/リード処理フロー図、第11図は全体動作
の説明図、第12図は磁気テープ装置の命令先取
り制御説明図、第13図は従来技術の説明図であ
る。 図中、1……磁気テープドライブ部、2……ド
ライブ制御部、3……命令・データ先取り制御
部、CBUF……命令バツフア、34……データバ
ツフア。
の一実施例全体構成図、第3図は第2図構成の要
部構成図、第4図は第2図構成のデータ転送動作
説明図、第5図は本発明の一実施例起動処理フロ
ー図、第6図は第5図の初期設定処理フロー図、
第7図は本発明の一実施例のホストに対するライ
ト系処理フロー図、第8図はホストに対するリー
ド系処理フロー図、第9図はドライブに対する起
動処理フロー図、第10図はドライブに対するラ
イト/リード処理フロー図、第11図は全体動作
の説明図、第12図は磁気テープ装置の命令先取
り制御説明図、第13図は従来技術の説明図であ
る。 図中、1……磁気テープドライブ部、2……ド
ライブ制御部、3……命令・データ先取り制御
部、CBUF……命令バツフア、34……データバ
ツフア。
Claims (1)
- 【特許請求の範囲】 1 磁気ヘツドと磁気テープ駆動機構を有する磁
気テープドライブ部と、 上位から与えられた命令を複数先取り蓄積しう
るバツフア部と、 該バツフア部の蓄積された命令に従つて該磁気
テープドライブ部を制御して該命令を実行する制
御部とを備える磁気テープ装置において、 該制御部が該磁気テープドライブ部によつて走
行される磁気テープの終端領域近傍を検出した
後、ライト系命令の実行中に該終端領域近傍検出
時から該磁気テープの走行距離を計数し、 該計数値が一定値に達したことでテープ終端領
域を検出したものとみなし、該終端領域近傍検出
から該テープ終端領域検出とみなした時までの間
該先取りしうる命令数を減少しない第1のモード
を実行し、 且つ該第1のモードの実行を中断した場合又は
該第1のモードを実行しない場合に、 該終端領域近傍検出に基づいて該磁気テープの
終端領域検出までの間該先取りしうる命令数を減
少するようにしたことを特徴とする磁気テープ装
置の命令先取り制御方法。 2 磁気ヘツドと磁気テープ駆動機構を有する磁
気テープドライブ部と、 上位から与えられた命令を複数先取り蓄積しう
るバツフア部を有する命令先取り制御部と、 該バツフア部の蓄積された命令に従つて該磁気
テープドライブ部を制御して該命令を実行するド
ライブ制御部とを備える磁気テープ装置であつ
て、 該命令先取り制御部は、該バツフア部に先取り
しうる命令数を管理するとともに、 ライト系命令実行中に該ドライブ制御部からの
該磁気テープの終端領域近傍を示す検出信号に基
いて該磁気テープの走行距離を計数し、該計数値
が一定値に達したことでテープ終端領域検出とみ
なし、該終端領域近傍検出から該テープ終端領域
検出とみなした時までの間該先取りしうる命令数
を減少しない第1のモードと、 該終端領域近傍検出信号に基づいて該終端領域
近傍検出から該ドライブ制御部からの終端領域検
出時までの間該先取りしうる命令数を減少する第
2のモードとを有することを特徴とする磁気テー
プ装置の命令先取り制御装置。
Priority Applications (8)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60235807A JPS6295755A (ja) | 1985-10-22 | 1985-10-22 | 磁気テ−プ装置の命令先取り制御方法及びその装置 |
| US06/883,630 US4757396A (en) | 1985-07-12 | 1986-07-09 | Magnetic tape system with command prefetch means |
| AU60031/86A AU576090B2 (en) | 1985-07-12 | 1986-07-10 | Magnetic tape system |
| EP86305345A EP0213703B1 (en) | 1985-07-12 | 1986-07-11 | Magnetic tape system with command prefetch means |
| DE86305345T DE3689021T2 (de) | 1985-07-12 | 1986-07-11 | Magnetbandsystem mit Befehlsvorauswahlmittel. |
| CA513624A CA1273710C (en) | 1985-07-12 | 1986-07-11 | MAGNETIC TAPE SYSTEM WITH INSTRUCTION PREREADING DEVICE |
| KR8605635A KR920004769B1 (en) | 1985-07-12 | 1986-07-12 | Magnetic tape system having command pretetching means |
| CA000614390A CA1280510C (en) | 1985-07-12 | 1989-09-28 | Magnetic tape system with command prefetch means |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60235807A JPS6295755A (ja) | 1985-10-22 | 1985-10-22 | 磁気テ−プ装置の命令先取り制御方法及びその装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6295755A JPS6295755A (ja) | 1987-05-02 |
| JPH0452967B2 true JPH0452967B2 (ja) | 1992-08-25 |
Family
ID=16991540
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60235807A Granted JPS6295755A (ja) | 1985-07-12 | 1985-10-22 | 磁気テ−プ装置の命令先取り制御方法及びその装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6295755A (ja) |
-
1985
- 1985-10-22 JP JP60235807A patent/JPS6295755A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6295755A (ja) | 1987-05-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4435762A (en) | Buffered peripheral subsystems | |
| US4517641A (en) | Lookahead I/O device control subsystem | |
| US5226141A (en) | Variable capacity cache memory | |
| EP0080876B1 (en) | Cache control method and apparatus | |
| US6038619A (en) | Disk drive initiated data transfers responsive to sequential or near sequential read or write requests | |
| JP3257916B2 (ja) | 外部記憶装置 | |
| US5410666A (en) | On-line dumping system and disk sub system | |
| JPH07104817B2 (ja) | データレコード転送方法 | |
| JPH08212054A (ja) | バッファ・メモリを動作させる方法及び関連する装置 | |
| JPH08212015A (ja) | ドライブ装置 | |
| US5136692A (en) | Memory disk buffer manager | |
| JPH0451851B2 (ja) | ||
| JPS6292022A (ja) | データ転送制御方法 | |
| CA1273710A (en) | Magnetic tape system with command prefetch means | |
| JPH0477367B2 (ja) | ||
| JPH0452967B2 (ja) | ||
| CA1322596C (en) | Seeking multitasking disk controller | |
| JPH07105084A (ja) | 磁気テープ先読み制御装置 | |
| JPH0452966B2 (ja) | ||
| JPH0452965B2 (ja) | ||
| US6088818A (en) | Data read apparatus and data read method | |
| US5581458A (en) | Bufered intelligent digital tape controller with onboard ECC and featuring global control variables | |
| JPH0451850B2 (ja) | ||
| JPH0456334B2 (ja) | ||
| EP0278425B1 (en) | Data processing system and method with management of a mass storage buffer |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |