JPH1097489A - 磁気ディスク装置のブロック長変換方法及びブロック長変換装置 - Google Patents

磁気ディスク装置のブロック長変換方法及びブロック長変換装置

Info

Publication number
JPH1097489A
JPH1097489A JP24835696A JP24835696A JPH1097489A JP H1097489 A JPH1097489 A JP H1097489A JP 24835696 A JP24835696 A JP 24835696A JP 24835696 A JP24835696 A JP 24835696A JP H1097489 A JPH1097489 A JP H1097489A
Authority
JP
Japan
Prior art keywords
magnetic disk
block length
signal
disk device
data
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.)
Pending
Application number
JP24835696A
Other languages
English (en)
Inventor
Takashi Ishii
隆 石井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP24835696A priority Critical patent/JPH1097489A/ja
Publication of JPH1097489A publication Critical patent/JPH1097489A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

(57)【要約】 【課題】書き込み動作時に本来不要な読み込み動作を不
要とし、また従来システムで使用しているOS、磁気デ
ィスクコントローラを継続使用して、ブロック長の異な
る磁気ディスク装置を利用することを可能にする。 【解決手段】磁気ディスク装置40のブロック長を特定
な値として動作するホストと、特定な値よりも大きいブ
ロック長の磁気ディスク装置40を有するシステムにお
いて、ホストからと磁気ディスク装置40との間でデー
タ転送する際に、データ書き込み時に不足するデータを
不要なデータで補い、データ読出し時に不要なデータを
捨てることでブロック長を変換するブロック長変換装置
42を具備する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ブロック長の異な
る磁気ディスク装置の互換性を確保するための磁気ディ
スク装置のブロック長変換方法及びブロック長変換装置
に関する。
【0002】
【従来の技術】従来、磁気ディスク装置のセクタ長は2
56バイトが標準であったことがあり、ブロック長をそ
のサイズに特化した多くのOS(オペレーティングシス
テム)やアプリケーションが作成され使用されている。
【0003】しかし、現在では磁気ディスク装置のセク
タ長の標準は、磁気ディスク装置の大容量化等に伴い、
512バイトとなっている。このため、従来作成された
ブロック長を256バイトに特化したOSやアプリケー
ションは、何らかのシステムレベルでの対応を行わない
限り使用できない状況になってきている。
【0004】現在、このような状況下で、既存のソフト
ウエア資産を継続利用するためのシステムレベルでの対
応技術として、OSレベルにおける処理によって、バッ
ファメモリ領域を用意し、アプリケーションのセクタ長
依存性をそのバッファを利用して吸収する方式や、さら
にOSをも無変更で対応するために、磁気ディスクコン
トローラH/W上にバッファメモリを設けて同様にブロ
ック長依存性を排除する方式等が使われている。
【0005】これらの方式では、上位からの書き込み要
求を受け取った場合、例えば、その要求長が256バイ
トである場合、このサイズが磁気ディスクのセクタ長に
満たないため、単純に書き込みすることが出来ない。
【0006】この場合、セクタ長512バイトに満たな
い256バイトの書き込みデータに対し、まず磁気ディ
スク装置から256バイトのデータ読み出して、その
後、256バイトの書き込みデータとを合成することで
512バイトとした上で、磁気ディスクへの再書き込み
を行なう手順が必要となっている。
【0007】
【発明が解決しようとする課題】このように従来技術に
おいては、セクタ長512バイトの磁気ディスク装置に
対するブロック長を256バイトとした書き込み要求に
ついては、従来では不要であった読み込み動作が必要と
なるために、従来システムと比較して速度的に性能が劣
る場合があった。
【0008】また、従来技術では既存のOSまたは磁気
ディスクコントローラを変更する必要があり、既存シス
テムの延命等のために使用することを目的とする場合に
は変更コストが高いことが問題となる場合がある。
【0009】本発明は前記のような事情を考慮してなさ
れたもので、書き込み動作時に本来不要な読み込み動作
を不要とし、また従来システムで使用しているOS、磁
気ディスクコントローラを継続使用して、ブロック長の
異なる磁気ディスク装置を利用することが可能な磁気デ
ィスク装置のブロック長変換方法及びブロック長変換装
置を提供することを目的とする。
【0010】
【課題を解決するための手段】本発明は、磁気ディスク
装置のブロック長を特定な値として動作するホストと、
前記特定な値よりも大きいブロック長の磁気ディスク装
置を有するシステムにおいて、前記ホストと前記磁気デ
ィスク装置との間でデータ転送する際に、データ書き込
み時に不足するデータを不要なデータで補い、データ読
出し時に不要なデータを捨てることでブロック長を変換
する変換実行手段を具備したことを特徴とする。
【0011】このような構成によれば、磁気ディスク装
置のブロック内の有効データ長をホストシステムと同一
にする変換手段を設けたことにより、ブロック長変換用
のデータのバッファリングが不要となり、ブロック長変
換を速度的な性能劣化を招くことなく実行できる。
【0012】また、前記ホストと接続されたSCSIバ
スと、制御対象とする磁気ディスク装置との間に設けら
れたことを特徴とする。これにより、ホスト側における
既存のシステムのソフトウェア(アプリケーション、オ
ペレーティングシステム)、及びディスクコントローラ
ハードウェアを継続使用しながら、ブロック長変換装置
を実装することができる。
【0013】また、前記SCSIバスを監視して前記ホ
ストからの要求コマンドを自動判定し、ブロック長変換
が必要な特定のコマンドであるか否かを判定するコマン
ドコード判定手段を有し、前記変換実行手段は、前記コ
マンドコード判定手段によってブロック長変換が必要な
特定のコマンドであると判定された場合にのみ、ブロッ
ク長を変換することを特徴とする。
【0014】これにより、メディアアクセス系以外のデ
ータ転送系コマンド(リードディフェクトリスト等)を
使用するシステムで、既存のシステムを変更することな
く、ブロック長変換が必要なデータ転送に対してのみ選
択してブロック長変換が実行される。
【0015】また、前記ホストと前記磁気ディスク装置
との間のデータ転送が同期転送モードであるか非同期転
送モードであるかを判定する同期転送判定手段を有し、
前記変換実行手段は、前記同期転送判定手段による判定
結果に従って、ブロック長を変換することを特徴とす
る。
【0016】これにより、同期転送モードと非同期転送
モードの両方を使用するシステムにおいて、既存のシス
テムを変更することなく、転送モードに応じたブロック
長変換が実施できる。
【0017】また、前記SCSIバスを監視して、自動
的に制御対象とする磁気ディスク装置のSCSIIDを
判定するID判定手段を有し、前記変換実行手段は、前
記ID判定手段によって制御対象とする磁気ディスク装
置のSCSIIDであることが判定された際に、ブロッ
ク長を変換することを特徴とする。これにより、既存の
システムにおいてSCSIID識別用の変更を行なうこ
となく、ブロック長変換装置側からSCSIIDを識別
することができる。
【0018】
【発明の実施の形態】以下、図面を参照して本発明の実
施の形態について説明する。図1は本実施形態に係わる
システムの概略構成を示すブロック図、図2は本実施形
態におけるブロック長変換装置の構成を同じディスクモ
ジュール内の磁気ディスク装置と示すブロック図であ
る。
【0019】本実施形態におけるブロック長変換装置
は、セクタ長256バイトとして設計されたアプリケー
ションやOS(オペレーティングシステム)を、セクタ
長512バイトの磁気ディスク装置を使用した環境で使
用可能とするため、読み込み、書き込み時にブロック長
変換を行なう。
【0020】具体的には、セクタ長512バイトの磁気
ディスク装置の1セクタ中の256バイトのみに有効デ
ータを格納し、残りの256バイトには無効データを格
納することにより、ブロック長256バイトのホストか
らのデータ書き込み時に、1セクタ書き込みのために必
要な256バイトのデータの不足を実質的に無くし、性
能を劣化させる読み出し処理を省略するものである。
【0021】このため例えば、従来、セクタ長256バ
イトの記憶容量500Mバイトの磁気ディスク装置を使
用しており、同−のユーザ容量の磁気ディスク装置をセ
クタ長512バイトの磁気ディスク装置で構成する場合
には、1Gバイトの記憶容量を持つ磁気ディスク装置が
使用されることになる。
【0022】図1は本実施形態に係わるシステムの概略
構成を示すブロック図である。図1に示すように、コン
ピュータ本体10にSCSI(Small Computer System
Interface )バス12を介して、複数のディスクモジュ
ール14,16,18が接続されている。
【0023】コンピュータ本体10には、アプリケーシ
ョン20、オペレーティングシステム22のもとで、磁
気ディスクコントローラ(ホスト)24が各ディスクモ
ジュール14,16,18に対する制御を行なう。
【0024】図1に示すシステム構成例では、ディスク
モジュール14が、セクタ長512バイトの磁気ディス
ク装置31と本願発明によるブロック長変換装置32か
ら構成される新しいディスクモジュールである。また、
ディスクモジュール18も、セクタ長512バイトの磁
気ディスク装置34と本願発明によるブロック長変換装
置35から構成される新しいディスクモジュールであ
る。ディスクモジュール16は、セクタ長256バイト
の旧ディスクモジュールである。磁気ディスク装置3
1、磁気ディスク装置33、磁気ディスク装置34は、
SCSIバス12を介してデイジーチェーン接続されて
いる。
【0025】本実施形態では、図1に示すように、本発
明によるブロック長変換装置32,35を、SCSIバ
ス12に接続される磁気ディスク装置31,34に対し
てそれぞれ1台設けている。
【0026】ただし、実際にセクタ長512バイトの磁
気ディスク装置を、従来使用していたセクタ長256バ
イトの磁気ディスク装置の置き換え等で使用する場合に
は、その容量等を従来互換と見せる必要があるが、これ
らの処理に関しては、本実施形態では対処しないものと
する。また、本実施形態では、SCSI仕様で認められ
ているマルチホスト構成、マルチコマンド動作は対象外
としている。
【0027】こうした場合、本発明によるブロック長変
換装置を実際のシステムに適用する時には、以下で説明
するブロック長変換装置における機能の他にも、これら
に対処するための処理を実行する機能が既存システムの
何れかのレベルで実施されるものとする。
【0028】本実施形態のブロック長変換装置による読
み込み、書き込み時のブロック長変換は、SCSIバス
信号を監視し、接続された磁気ディスク装置に対する書
き込み、または読み出しコマンドのデータフェーズが検
出された場合に、REQ信号(磁気ディスクコントロー
ラ24に対してデータ転送を要求する信号)、ACK信
号(REQに対する応答を示す信号)に適切な変更を加
えることにより、1ブロック分の転送において256バ
イト分の有効データ転送を実現する。
【0029】基本的には、データフェーズにおいて、磁
気ディスク装置側からのREQ信号が256個発生する
まで待ち、256個発生した後は、次の256個のRE
Q信号を磁気ディスクコントローラ24に対してマスク
して到達させない。また、この時のREQ信号に対して
磁気ディスク装置が期待するACK信号についてはブロ
ック長変換装置から返送する。データ転送が連続ブロッ
クに及ぶ場合には、以降のREQ/ACK信号について
も同様の処理を施す。
【0030】本実施形態では、以上の機能を実現するた
めに、ブロック長変換装置を図2に示すようにして構成
している。図2は、セクタ長512バイトの磁気ディス
ク装置に対して、本発明によるブロック長変換装置が設
けられたディスクモジュールの詳細な構成を示す図であ
る。
【0031】図2に示すように、ディスクモジュール
は、SCSIバス12を介してコンピュータ本体10
(磁気ディスクコントローラ24)と接続される磁気デ
ィスク装置40と、磁気ディスク装置40とコンピュー
タ本体10との間に設けられたブロック長変換装置42
から構成されている。
【0032】磁気ディスク装置40は、セクタ長512
バイトであり、磁気ディスクコントローラ24との間で
直接、参照信号(DATA/P/CD/IO/MSG/
SEL/RST/ATN)を送受する。また、磁気ディ
スク装置40は、操作対象信号(ACK/REQ/BS
Y)をブロック長変換装置42を介して送受する。
【0033】磁気ディスク装置40は、磁気ディスクコ
ントローラ24との間のREQ信号をREQ1信号とし
てブロック長変換装置42に通知し、ACK信号がAC
K1信号としてブロック長変換装置42から通知され
る。また、磁気ディスク装置40は、BSY信号(SC
SIバス12が使用中であることを示す信号)がBSY
1としてブロック長変換装置42と接続されている。従
って、ブロック長変換装置42が設けられたディスクモ
ジュールにおけるACK1信号、REQ1信号、BSY
1信号は、ブロック長変換装置42を介して、SCSI
バス12のACK信号、REQ信号、BSY信号とそれ
ぞれ分離され、ブロック長変換装置42の制御のもとで
論理的に接続される。
【0034】ブロック長変換装置42は、図2に示すよ
うに、フェーズ判定部50、セレクション・リセレクシ
ョン判定部52、ID判定部54、コマンドコード判定
部56、同期転送判定部58、及び変換実行部60の機
能が設けられている。
【0035】フェーズ判定部50は、SCSIバス12
の動作状況を示すフェーズを認識するもので、SCSI
バス12の信号状態を監視することでフェーズを判定
し、各判定部に対して通知する。
【0036】フェーズ判定部50は、CD信号(データ
バス上の信号が制御情報かデータかを示す信号)、IO
信号(データバス上の転送方向を示す信号)、MSG信
号(バスの状態がメッセージフェーズであることを示す
信号)に応じてフェーズを判定する。フェーズには、バ
ス・フリーフェーズ、アービトレーションフェーズ、セ
レクション・リセレクションフェーズ、情報転送フェー
ズ(メッセージ、コマンド、データ、ステータスの各フ
ェーズ)を含む。
【0037】セレクション・リセレクション判定部52
は、SCSIバス12に流れている信号が、接続された
磁気ディスク装置40用の信号であるか否かを判定する
ものである。
【0038】セレクション・リセレクション判定部52
は、フェーズ判定部50によってセレクション・リセレ
クションフェーズにあることが通知された際、すなわち
磁気ディスクコントローラ24から磁気ディスク装置の
選択要求がある際、または磁気ディスク装置が磁気ディ
スクコントローラ24に対して再選択を要求する際に、
このフェーズ中のデータバス(DATA0−7)の状態
を監視し、磁気ディスク装置40のSCSIID(ID
番号)に対応するビットがアサートされていれば、その
後のBSY(SCSIバス12を使用することを示す信
号)によって通知されるBSY期間中において磁気ディ
スク装置40に対する信号がSCSIバス12に流れて
いると判定する。すなわち、磁気ディスク装置40が選
択される際には、BSY信号(本実施形態ではBSY1
信号)をアクティブにするので、セレクション・リセレ
クション判定部52は、BSY1信号を利用して、SC
SIバス12に流れている信号が、磁気ディスク装置4
0用の信号であるか否かを判定する。なお、接続されて
いる磁気ディスク装置40のSCSIID(ID番号)
は、ID判定部54により通知される。
【0039】ID判定部54は、自ブロック長変換装置
42に接続された磁気ディスク装置40のSCSIID
を判定し、セレクション・リセレクション判定部52に
通知するものである。
【0040】通常、磁気ディスク装置40のSCSII
Dが磁気ディスク装置40に設けられたID設定ピンに
より設定されるため、ブロック長変換装置42は、直
接、磁気ディスク装置40のID設定ピンの状態を検出
することはできず、またSCSIバス信号を監視しただ
けでは、単純に接続された磁気ディスク装置40のSC
SIIDを検知できない。
【0041】このため、ID判定部54は、セレクショ
ンフェーズに対するBSY信号の状態を監視することに
より、接続された磁気ディスク装置40のSCSIID
を検出する。すなわち、セレクションフェーズ開始時に
はSCSIバス12上のBSY信号と、接続された磁気
ディスク装置40のBSY1信号とを分離しておく。磁
気ディスク装置40は、セレクションフェーズにおい
て、磁気ディスクコントローラ24からデータバス(D
ATA0−7)の自ID番号に対応するビット(SCS
IID)がアサートされ選択要求されたことを検出する
と、BSY1信号をアクティブにする。ID判定部54
は、SCSIバス12上のBSY信号がアサートされて
おらず(他の磁気ディスク装置が選択されていない)、
磁気ディスク装置40のBSY1信号がアサートされて
いれば、その時点でデータバス(DATA0−7)上で
アサートされているビットが磁気ディスク装置40のS
CSIIDであると判断でき、これを記憶する。
【0042】ただし、正確には、セレクションフェーズ
中には磁気ディスク装置40のSCSIIDと共に磁気
ディスクコントローラ24のSCSIIDもアサートさ
れるが、本発明での利用形態(シングルホスト)では当
該信号を磁気ディスク装置40のSCSIIDと見なし
ても問題とはならない。
【0043】なお、ID判定部54における処理を実施
する場合には、セレクション・リセレクション判定部5
2がセレクションフェーズにおいて対象判定を実施する
必要が実質的にはなくなるが、リセレクションフェーズ
においてはID判定部54では接続判定ができないた
め、セレクション・リセレクション判定部52は必要で
ある。
【0044】コマンドコード判定部56は、ブロック長
変換(REQ/ACK信号の変換処理)が必要となる書
き込み、読み出しコマンドを判定するものである。SC
SIバスコマンドでは、磁気ディスク等のメディアに対
する書き込み、読み出しコマンド以外にもデータフェー
ズを伴うコマンド(例えばリードディフェクトリスト
等)があり、これらのコマンド実行中にREQ/ACK
信号の変換処理を実施すると不都合が生ずる。このた
め、コマンドコード判定部56は、処理中のコマンドが
メディアに対する読み込み、書き込みコマンドであるか
否かの判定を行なう。
【0045】コマンドコード判定部56は、コマンドフ
ェーズの第1バイト目の転送タイミングでデータバス
(DATA0−7)上にコマンドコードが出力されるた
め、フェーズ判定部50からコマンドフェーズにあるこ
とが通知された際に、第1バイト目の転送タイミングで
出力されるコマンドコードを監視してブロック長変換の
実施が必要なコードである否かを判定する。
【0046】コマンドコード判定部56は、この時点
で、対象とする書き込み、読み出しコマンドが検出され
た場合には、次にコマンドフェーズが行われるまでの期
間のデータフェーズが変換対象であると判定する。
【0047】同期転送判定部58は、磁気ディスクコン
トローラ24と磁気ディスク装置40との間で設定され
たデータフェーズにおけるデータ転送形態が、非同期転
送モードであるか同期転送モードであるかを判定するも
のである。
【0048】本実施形態におけるブロック長変換装置4
2が非同期転送モードと同期転送モードでの処理内容が
異なり、同期転送を使用するシステムでは、非同期転送
も併用することがあるため、同期転送判定部58は、シ
ステム稼働中に何れの転送モードが使用されているかの
判定を行なう。
【0049】SCSI規格では、データフェーズの転送
形態として、図3に示すような、非同期転送モードと同
期転送モードがある。非同期転送モードの場合、図3
(a)に示すように、REQ信号とACK信号がハンド
シェイク動作をするため基本的には両者のパルス数は等
しい。一方、同期転送モードの場合、図3(b)に示す
ように、磁気ディスク装置40は、ACK信号の応答を
待たずにREQ信号にアサートできる。このため、同期
転送モードの場合、REQ信号とACK信号の対応が変
動するため、これに対応するブロック長変換が必要とな
るため非同期転送モードに比べて、ブロック長変換の制
御が複雑となる。
【0050】ブロック長変換装置42は、データフェー
ズの開始時点では、磁気ディスク装置40に接続される
ACK1信号(読み出し時)またはREQ1信号(書き
込み時)と、SCSIバス12上のACK信号、REQ
信号とをそれぞれ分離しておく。
【0051】非同期転送モードあるいは同期転送モード
が設定された磁気ディスク装置40は、まず、第1ワー
ド目の転送を行なうために、ACK1信号の状態に関わ
らずREQ1信号をアサートする。
【0052】非同期転送モードの場合、磁気ディスク装
置40は、図3(1)に示すように、REQ信号のアサ
ートに対してACK信号の返送(REQの立ち下がりに
応じた立ち下がり)があった後に、REQ信号のアサー
ト状態を取りやめる(立上がる)。従って、同期転送判
定部58は、磁気ディスク装置40からのREQ1信号
のアサートに対して、ACK信号を返送せずに一定期間
待っても、REQ信号のアサート状態が保たれている場
合には非同期転送モードであると判定できる。
【0053】同期転送モードの場合、磁気ディスク装置
40は、図3(2)に示すように、REQ信号のアサー
トに対するACK信号の返送に関係なく、規定のパルス
幅期間の後、アサート状態を取りやめる。従って、同期
転送判定部58は、REQ1信号がアサートされた後に
一定期間待ち、その期間中にREQ1信号がアサート状
態を取りやめた場合には同期転送モードであると判定で
きる。
【0054】変換実行部60は、各種判定部の判定結果
に基づき、磁気ディスク装置40に対する制御対象コマ
ンドのデータフェーズであると判定された場合には、R
EQ信号/ACK信号(REQ1信号/ACK1信号)
を適切に制御することによりブロック長変換を実行す
る。
【0055】基本的に、転送要求がREQ信号により磁
気ディスク装置40側から発せられるが、最初の256
バイト分は磁気ディスクコントローラ24にそのまま要
求を伝え、次の256バイト分については変換実行部6
0がREQ1信号をマスクし、ホスト側の磁気ディスク
コントローラ24には要求を伝達しない。代わりに、変
換実行部60は、この期間に発生するREQ1信号に対
する応答信号として必要なACK1信号を返送する。
【0056】転送長が512バイトを超える場合には5
12バイト毎に、前述のような動作を繰り返す。この処
理を実現するため、変換実行部60は、REQ1カウン
タ60a、ACKカウンタ60b、転送カウンタ60c
を使用する。
【0057】REQ1カウンタ60aは、変換対象コマ
ンドのデータフェーズ中に、磁気ディスク装置40が出
力するREQ信号のパルス数をカウントする9ビットカ
ウンタである。
【0058】ACKカウンタ60bは、変換対象コマン
ドのデータフェーズ中に、磁気ディスクコントローラ2
4が出力するACK信号のパルス数をカウントする9ビ
ットカウンタである。
【0059】転送カウンタ60cは、ブロック長変換時
に転送制御のために使用する9ビットカウンタである。
非同期転送モードの場合、REQ信号とACK信号はハ
ンドシェイク動作をするため、基本的には両者のパルス
数は等しい。このため、REQ1カウンタ60aとAC
Kカウンタ60bの値は若干のタイミングディレイを伴
うものの、基本的には同じ値を格納することになる。
【0060】一方、同期転送モードの場合、REQ信号
はACK信号の応答を待たずに同期転送オフセット分
(例えばREQ信号とACK信号のパルスの数の差が1
6以内)のパルスを、前もって発生することができるた
め、REQ1カウンタ60aとACKカウンタ60bの
値は基本的には異なったものとなる。
【0061】同期転送モードを想定した制御を実施すれ
ば非同期転送モードにも対応できるため、本発明では同
期転送モードを想定した制御方法をとるものとする。
(ただし、信号波形の生成規則に関しては非同期モード
と同期モードで異なり、その部分についてはSCSI規
格に則った個別な手法を用いるものとする)。
【0062】REQ信号のマスク動作に関しては、基本
的にはREQ1カウンタ60aの値を使用し、256バ
イト分のパルスをカウントし、非マスク、マスク状態を
生成する。
【0063】REQ信号マスク中の磁気ディスク装置に
対するACK1信号の生成は、基本的にはマスク動作以
前に磁気ディスクコントローラ24に到達したREQ信
号の応答として返送されるACK信号が全て到達するの
を待って生成を開始する。このため、ACKカウンタ6
0bにより、磁気ディスクコントローラ24からのAC
K信号パルス数を確認する。
【0064】また、変換実行部60が生成するACK信
号(パルス数)は、REQ信号に対して発生されるもの
であるからマスク中のREQ信号(パルス数)を超えて
はならない。このため、変換実行部60は、生成したA
CKパルス数を転送カウンタ60cでカウントし、RE
Q1カウンタ60aの値と常時比較し、転送カウンタ値
がREQカウンタ値よりも小さい場合に限り、ACKパ
ルスを生成する。
【0065】次に、本実施形態における動作について説
明する。はじめに、動作概要について説明する。一般
に、SCSIバス12に接続される磁気ディスク装置に
対する読み込み、または、書き込み処理は、転送長とし
てその磁気ディスク装置のブロック長の倍数を指定する
ことにより実行される。
【0066】このため、現在の磁気ディスク装置におい
ては、標準的なブロック長が512バイトであるため、
512バイトの整数倍の転送長のみが処理可能である。
これに対して、従来のセクタ長256バイトの磁気ディ
スク装置を対象として作成されたシステム(オペレーテ
ィングシステム22、アプリケーション20、磁気ディ
スクコントローラ24)では、ブロック長として256
バイトを使用しているため、転送長として256バイト
の整数倍が指定される。
【0067】本実施形態におけるブロック長変換装置4
2は、図2に示したように、磁気ディスクコントローラ
24(ホスト)と磁気ディスク装置40間に置かれ、ホ
スト側の処理要求を解析し、磁気ディスク装置40に対
する処理要求を適切に変換することにより、ブロック長
が異なる磁気ディスクコントローラ24と磁気ディスク
間の読み出し、書き込みコマンドを正常に動作させる。
【0068】本発明は磁気ディスクコントローラ24か
らのコマンド要求自体は変換せずに磁気ディスク装置4
0に伝え、実際のデータ転送が行なわれる時点(データ
フェーズ)で、512バイトの転送を実行しようとする
磁気ディスク40側と256バイトの転送のみを実行し
ようとする磁気ディスクコントローラ24(ホスト)側
の不整合を、書き込み動作時には不足する256バイト
分のデータをダミー転送し、読み込み時には256バイ
ト分の過剰な転送を捨てる処理を実行することにより、
ホストと磁気ディスク装置との間で256バイトの有効
データ転送を実現する。
【0069】変換実行部60は、フェーズ判定部50、
セレクション・リセレクション判定部52、ID判定部
54、及びコマンドコード判定部56による判定結果に
基づいて、ブロック長変換(REQ/ACK信号の変換
処理)が必要であることが判定された場合に、REQ1
カウンタ60a、ACKカウンタ60b、転送カウンタ
60cを用いて処理を実行する。
【0070】図4には磁気ディスク装置40からの読み
込み(Readコマンド)時の制御方法、図5には磁気
ディスク装置40への書き込み(Writeコマンド)
時の制御方法を示している。
【0071】まず、磁気ディスク装置40からの読み込
み(Readコマンド)時について説明する。この場
合、変換実行部60は、転送カウンタ60cにおいてA
CK1信号のパルス数をカウントする。
【0072】図4(1)に示すように、REQ1カウン
タ60aの値が000〜255の範囲内であり、ACK
カウンタ60bの値が000〜255の範囲内である場
合、変換実行部60は、磁気ディスク装置40からRE
Q1信号を、そのままREQ信号として磁気ディスクコ
ントローラ24に伝達する。また、変換実行部60は、
REQ信号に対して応答された磁気ディスクコントロー
ラ24からのACK信号のパルス数(ACKカウンタ6
0bの値)よりも、転送カウンタ60cの値(ACK1
信号のパルス数)が少なければ、ACK1信号を生成し
て磁気ディスク装置40に通知する。すなわち、REQ
信号のタイミングに合わせて、変換実行部60は、最初
の256バイト分の本来のデータの読み出しを実行させ
る。
【0073】図4(2)に示すように、REQ1カウン
タ60aの値が256〜511の範囲内であり、ACK
カウンタ60bの値が000〜255の範囲内である場
合、変換実行部60は、磁気ディスク装置40からRE
Q1信号をマスクし、REQ信号を磁気ディスクコント
ローラ24に伝達しない。また、変換実行部60は、R
EQ信号に対して応答された磁気ディスクコントローラ
24からのACK信号のパルス数(ACKカウンタ60
bの値)よりも、転送カウンタ60cの値(ACK1信
号のパルス数)が少なければ、全てのREQ信号に応答
するACK信号を受けてないのでACK1信号を生成し
て磁気ディスク装置40に通知する。すなわち、変換実
行部60は、最初の256バイト分の本来のデータの読
み出しが継続されるが、無効なデータ分に対するREQ
1信号に対応するREQ信号をマスクすることで、磁気
ディスクコントローラ24からACK信号が返されない
ようにする。
【0074】図4(3)に示すように、REQ1カウン
タ60aの値が256〜511の範囲内であり、ACK
カウンタ60bの値が256〜511の範囲内である場
合、変換実行部60は、磁気ディスク装置40からRE
Q1信号をマスクし、REQ信号を磁気ディスクコント
ローラ24に伝達しない。また、変換実行部60は、無
効なデータに対応する磁気ディスク装置40からのRE
Q1信号の数(REQ1カウンタ値)よりも、転送カウ
ンタ60cの値(ACK1信号のパルス数)が少なけれ
ば、全てのREQ1信号に応答するACK1信号を返送
していないのでACK1信号を生成して磁気ディスク装
置40に通知する。すなわち、変換実行部60は、無効
なデータ分に対するREQ1信号に対応するREQ信号
をマスクし、REQ1信号に応じてACK1信号を返送
することで無効なデータを捨てさせる。
【0075】図4(4)に示すように、REQ1カウン
タ60aの値が000〜255の範囲内であり、ACK
カウンタ60bの値が256〜511の範囲内である場
合、変換実行部60は、磁気ディスク装置40からRE
Q1信号を、そのままREQ信号として磁気ディスクコ
ントローラ24に伝達する。また、変換実行部60は、
転送カウンタ60cのカウンタ値がオーバーフローする
までACK1信号を生成して磁気ディスク装置40に通
知する。すなわち、変換実行部60は、REQ信号のタ
イミングに合わせて、最初の256バイト分の本来のデ
ータの読み出しを実行させる。
【0076】次に、磁気ディスク装置40への書き込み
(Writeコマンド)時について説明する。この場
合、変換実行部60は、転送カウンタ60cにおいてR
EQ信号のパルス数、またはACK1信号のパルス数を
カウントする。
【0077】図5(1)に示すように、REQ1カウン
タ60aの値が000〜255の範囲内であり、ACK
カウンタ60bの値が000〜255の範囲内である場
合、変換実行部60は、転送カウンタ60cのカウンタ
値(送信したREQ信号のパルス数)が、REQ1カウ
ンタ60aのカウンタ値より少ない場合にはREQ信号
を生成して磁気ディスクコントローラ24に伝達する。
また、変換実行部60は、REQ信号に対して磁気ディ
スクコントローラ24から応答されたACK信号に応じ
てACK1信号を生成し、そのまま磁気ディスク装置4
0に伝達する。すなわち、ACK1信号のタイミングに
合わせて、変換実行部60は、最初の256バイト分の
本来のデータの書き込みを実行させる。
【0078】図5(2)に示すように、REQ1カウン
タ60aの値が256〜511の範囲内であり、ACK
カウンタ60bの値が000〜255の範囲内である場
合、変換実行部60は、転送カウンタ60cのカウンタ
値(送信したREQ信号のパルス数)がオーバーフロー
するまでREQ信号を生成し、磁気ディスクコントロー
ラ24に送信する。また、変換実行部60は、REQ信
号に対して応答された磁気ディスクコントローラ24か
らのACK信号に応じてACK1信号を生成し、そのま
ま磁気ディスク装置40に伝達する。すなわち、変換実
行部60は、256バイトを越える無効なデータに対す
るREQ1信号が磁気ディスク装置40から出力されて
いるが、REQ1信号(REQ信号)の000〜255
の全てに応答するACK信号が伝達されていないので、
磁気ディスクコントローラ24からのACK信号をその
まま伝達し、有効なデータの書き込みを実行させる。
【0079】図5(3)に示すように、REQ1カウン
タ60aの値が256〜511の範囲内であり、ACK
カウンタ60bの値が256〜511の範囲内である場
合、変換実行部60は、磁気ディスク装置40からRE
Q1信号をマスクし、REQ信号を磁気ディスクコント
ローラ24に伝達しない。また、変換実行部60は、無
効なデータに対応する磁気ディスク装置40からのRE
Q1信号の数(REQ1カウンタ値)よりも、転送カウ
ンタ60cの値(ACK1信号のパルス数)が少なけれ
ば、全てのREQ1信号に応答するACK1信号を返送
していないのでACK1信号を生成して磁気ディスク装
置40に通知する。すなわち、変換実行部60は、無効
なデータ分に対するREQ1信号に対応するREQ信号
をマスクし、REQ1信号に応じてACK1信号を返送
することで無効なデータ(この時のDATA0−7の
値)を書き込ませる。
【0080】図5(4)に示すように、REQ1カウン
タ60aの値が000〜255の範囲内であり、ACK
カウンタ60bの値が256〜511の範囲内である場
合、変換実行部60は、磁気ディスク装置40からRE
Q1信号をマスクし、REQ信号を磁気ディスクコント
ローラ24に伝達しない。また、変換実行部60は、転
送カウンタ60cのカウンタ値がオーバーフローするま
でACK1信号を生成して磁気ディスク装置40に通知
する。
【0081】以上の説明では、512バイト以内のデー
タ転送の場合について説明しているが、512バイトを
超えるデータ転送長の場合には次のような状況が発生す
る。例えば、ブロック長変換装置42によるACK1信
号の生成が256バイトに満たない時点で、磁気ディス
ク装置40は、次の512バイト用のREQ1信号を生
成する。
【0082】ブロック長変換装置42は、このREQ1
信号に応じてREQ信号を、磁気ディスクコントローラ
24(ホスト)に伝達すると、そのREQ信号に応答す
るACK信号がホストから返送される。その時点で、ブ
ロック長変換装置42によって生成されたACK1信号
が256バイト分に満たない場合には、磁気ディスクコ
ントローラ24からのACK信号と競合が発生してしま
う。
【0083】こうした状況に対しては、磁気ディスク装
置40からの読み込みの場合、磁気ディスクコントロー
ラ24からのACK信号をブロック長変換装置42が生
成するACK信号パルスが256個返送されるまで待た
せることで解決することもできるが、磁気ディスク装置
40に対する書き込み動作の場合には、ACK信号と同
時に磁気ディスクコントローラ24側は書き込みデータ
をも転送するため、ACK信号を待たせる場合にはデー
タのバッファリングも必要となり、ハードウェア量が増
大するため本実施形態では採用しない。
【0084】本実施形態におけるブロック長変換装置4
2は、このようなバッファリングを実施しないで済むよ
うに(ハードウェア量が増大しないように)、このよう
な場合、REQ信号のマスク状態を継続することで、R
EQ信号に応答するACK信号が出されないようにす
る。
【0085】そして、ブロック長変換装置42は、磁気
ディスク装置40に対してACK1信号の返送が終わっ
た後、REQ1カウンタ60aによってカウントされた
個数分のREQ信号を生成し、磁気ディスクコントロー
ラ24に伝達する。
【0086】このようにして、従来システムの磁気ディ
スクコントローラ24による書き込み要求に対して、セ
クタ長512バイトの磁気ディスク装置40において読
み込み動作を行なうことなく書き込みが実行できるため
に、従来システムにおいてセクタ256バイトの磁気デ
ィスク装置を利用する場合と比較しても速度的に性能が
劣ることがない。
【0087】また、SCSIバス12と磁気ディスク装
置40との間に挿入するようにしてブロック長変換装置
42を実装することで実現できるので、既存システムの
ソフトウェア資産(アプリケーション20、オペレーテ
ィングシステム22)や、ハードウェアである磁気ディ
スクコントローラ24を継続使用することができる。
【0088】なお、前述したブロック長変換装置42に
おいては、ID判定部54を設けて、接続された磁気デ
ィスク装置40のSCSIIDをSCSIバス12の監
視によって判定するものとしているが、ブロック長変換
装置42にSCSIID設定用の外部ピンを設けること
により、ID判定部54を省略し、同時にBSY信号に
対する制御を不要にした構成とすることもできる。
【0089】また、前述した実施形態においては、同期
転送モードをサポートするために煩雑な処理が必要とな
っているが、非同期転送モードのみのをサポートとすれ
ば信号生成規則が単純化され、変換実行部60に設けら
れるカウンタとしては転送カウンタ60cのみで対応可
能となり、同期転送判定部58を省略することもでき
る。
【0090】すなわち、転送カウンタ60cによって単
純にREQ1信号のパルス数をカウントし、0−255
の範囲にある場合にはREQ信号を磁気ディスクコント
ローラ24(ホスト)に伝達し、ACK信号についても
磁気ディスク装置40に伝達する。255−511の範
囲にある場合にはREQ1信号をマスクし、ホストには
REQ信号を伝達しない。この期間のACK1信号に対
して、ブロック長変換装置42は、REQ1信号を返送
することで対応する。
【0091】
【発明の効果】以上詳述したように本発明によれば、書
き込み動作時に本来不要な読み込み動作を不要とし、ま
た従来システムで使用しているOS、磁気ディスクコン
トローラを継続使用して、ブロック長の異なる磁気ディ
スク装置を利用することが可能となるものである。
【図面の簡単な説明】
【図1】本発明の実施形態に係わるシステムの概略構成
を示すブロック図。
【図2】本実施形態におけるブロック長変換装置が設け
られたディスクモジュールの詳細な構成を示す図。
【図3】非同期転送モードと同期転送モードのデータフ
ェーズ転送形態を説明するための図。
【図4】本実施形態における磁気ディスク装置40から
の読み込み(Readコマンド)時の制御方法を説明す
るための図。
【図5】本実施形態における磁気ディスク装置40への
書き込み(Writeコマンド)時の制御方法を説明す
るための図。
【符号の説明】
10…コンピュータ本体 12…SCSIバス 14,16,18…ディスクモジュール 20…アプリケーション 22…オペレーティングシステム 24…磁気ディスクコントローラ(ホスト)24 31,33,34,40…磁気ディスク装置 32,35,42…ブロック長変換装置 50…フェーズ判定部 52…セレクション・リセレクション判定部 54…ID判定部 56…コマンドコード判定部 58…同期転送判定部 60…変換実行部 60a…REQ1カウンタ 60b…ACKカウンタ 60c…転送カウンタ

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 磁気ディスク装置のブロック長を特定な
    値として動作するホストと、前記特定な値よりも大きい
    ブロック長の磁気ディスク装置を有するシステムにおい
    て、 前記ホストと前記磁気ディスク装置との間でデータ転送
    する際に、データ書き込み時に不足するデータを不要な
    データで補い、データ読出し時に不要なデータを捨てる
    ことでブロック長を変換する変換実行手段を具備したこ
    とを特徴とするブロック長変換装置。
  2. 【請求項2】 前記ホストと接続されたSCSIバス
    と、制御対象とする磁気ディスク装置との間に設けられ
    たことを特徴とする請求項1記載のブロック長変換装
    置。
  3. 【請求項3】 前記SCSIバスを監視して前記ホスト
    からの要求コマンドを自動判定し、ブロック長変換が必
    要な特定のコマンドであるか否かを判定するコマンドコ
    ード判定手段を有し、 前記変換実行手段は、前記コマンドコード判定手段によ
    ってブロック長変換が必要な特定のコマンドであると判
    定された場合にのみ、ブロック長を変換することを特徴
    とする請求項2記載のブロック長変換装置。
  4. 【請求項4】 前記ホストと前記磁気ディスク装置との
    間のデータ転送が同期転送モードであるか非同期転送モ
    ードであるかを判定する同期転送判定手段を有し、 前記変換実行手段は、前記同期転送判定手段による判定
    結果に従って、ブロック長を変換することを特徴とする
    請求項2記載のブロック長変換装置。
  5. 【請求項5】 前記SCSIバスを監視して、自動的に
    制御対象とする磁気ディスク装置のSCSIIDを判定
    するID判定手段を有し、 前記変換実行手段は、前記ID判定手段によって制御対
    象とする磁気ディスク装置のSCSIIDであることが
    判定された際に、ブロック長を変換することを特徴とす
    る請求項2記載のブロック長変換装置。
  6. 【請求項6】 磁気ディスク装置のブロック長を特定な
    値として動作するホストと、前記特定な値よりも大きい
    ブロック長の磁気ディスク装置を有するシステムにおい
    て、 前記ホストと前記磁気ディスク装置との間でデータ転送
    する際に、データ書き込み時に不足するデータを不要な
    データで補い、データ読出し時に不要なデータを捨てる
    ことでブロック長を変換する磁気ディスク装置のブロッ
    ク長変換方法。
JP24835696A 1996-09-19 1996-09-19 磁気ディスク装置のブロック長変換方法及びブロック長変換装置 Pending JPH1097489A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24835696A JPH1097489A (ja) 1996-09-19 1996-09-19 磁気ディスク装置のブロック長変換方法及びブロック長変換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24835696A JPH1097489A (ja) 1996-09-19 1996-09-19 磁気ディスク装置のブロック長変換方法及びブロック長変換装置

Publications (1)

Publication Number Publication Date
JPH1097489A true JPH1097489A (ja) 1998-04-14

Family

ID=17176890

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24835696A Pending JPH1097489A (ja) 1996-09-19 1996-09-19 磁気ディスク装置のブロック長変換方法及びブロック長変換装置

Country Status (1)

Country Link
JP (1) JPH1097489A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000200153A (ja) * 1999-01-07 2000-07-18 Nec Corp デ―タ転送システムおよびデ―タ転送方法
JP2000311067A (ja) * 1999-04-27 2000-11-07 Toshiba Corp 代替磁気ディスク装置
JP2004145675A (ja) * 2002-10-25 2004-05-20 Nec Corp データ入出力装置
JP2014523043A (ja) * 2011-08-18 2014-09-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 第2のブロック・サイズのブロック内の第1のブロック・サイズのブロックをエミュレートするディスク・ドライブからの通知を介した破壊的書き込みのインジケーションのための方法、システム、およびコンピュータ・プログラム(第2のブロック・サイズのブロック内の第1のブロック・サイズのブロックをエミュレートするディスク・ドライブからの通知を介した破壊的書き込みのインジケーション)
JP2018169803A (ja) * 2017-03-30 2018-11-01 株式会社アクセル データ処理装置、データ転送装置、データ処理方法、及びデータ転送プログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000200153A (ja) * 1999-01-07 2000-07-18 Nec Corp デ―タ転送システムおよびデ―タ転送方法
JP2000311067A (ja) * 1999-04-27 2000-11-07 Toshiba Corp 代替磁気ディスク装置
JP2004145675A (ja) * 2002-10-25 2004-05-20 Nec Corp データ入出力装置
JP2014523043A (ja) * 2011-08-18 2014-09-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 第2のブロック・サイズのブロック内の第1のブロック・サイズのブロックをエミュレートするディスク・ドライブからの通知を介した破壊的書き込みのインジケーションのための方法、システム、およびコンピュータ・プログラム(第2のブロック・サイズのブロック内の第1のブロック・サイズのブロックをエミュレートするディスク・ドライブからの通知を介した破壊的書き込みのインジケーション)
US9207883B2 (en) 2011-08-18 2015-12-08 International Business Machines Corporation Indication of a destructive write via a notification from a disk drive that emulates blocks of a first block size within blocks of a second block size
US9372633B2 (en) 2011-08-18 2016-06-21 International Business Machines Corporation Indication of a destructive write via a notification from a disk drive that emulates blocks of a first block size within blocks of a second block size
JP2018169803A (ja) * 2017-03-30 2018-11-01 株式会社アクセル データ処理装置、データ転送装置、データ処理方法、及びデータ転送プログラム

Similar Documents

Publication Publication Date Title
US7069350B2 (en) Data transfer control system, electronic instrument, and data transfer control method
US5894583A (en) Variable timeout method for improving missing-interrupt-handler operations in an environment having I/O devices shared by one or more systems
US5812875A (en) Apparatus using a state device and a latching circuit to generate an acknowledgement signal in close proximity to the request signal for enhancing input/output controller operations
WO1999041864A1 (en) Method and apparatus for minimizing asynchronous transmit fifo under-run and receive fifo over-run conditions
US6806882B2 (en) Method of and apparatus for forming image
JP4313607B2 (ja) バス接続回路及びバス接続システム
US6892312B1 (en) Power monitoring and reduction for embedded IO processors
US6948025B2 (en) System and method for transferring data between an IEEE 1394 device and a SCSI device
US6167480A (en) Information packet reception indicator for reducing the utilization of a host system processor unit
US6445718B1 (en) Serial interface circuit
US20050256998A1 (en) Bus bridge device
JP5200646B2 (ja) 割込制御装置および画像処理装置
JPH1097489A (ja) 磁気ディスク装置のブロック長変換方法及びブロック長変換装置
KR100843199B1 (ko) 고속 아이.디.이. 인터페이스 장치 및 그 방법
US6973520B2 (en) System and method for providing improved bus utilization via target directed completion
US20060218313A1 (en) DMA circuit and computer system
US7571266B2 (en) Peripheral device in a computerized system and method
WO1998041924A1 (en) Methods and apparatus for arbitrating and controlling arbitration for access to a serial bus
JPH11232214A (ja) 情報処理装置用プロセッサおよびその制御方法
US8151028B2 (en) Information processing apparatus and control method thereof
EP1079305A2 (en) USB data monitoring apparatus
US20040111537A1 (en) Method, system, and program for processing operations
JPH09204311A (ja) 情報処理システム
JPH05158627A (ja) ディスク装置
KR100441884B1 (ko) 패킷 처리 엔진과 메인 프로세서간에 고속 블록 데이터전송을 수행하는 네트워크 시스템 및 그것의 dma운영방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051003

A131 Notification of reasons for refusal

Effective date: 20051025

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Effective date: 20051226

Free format text: JAPANESE INTERMEDIATE CODE: A523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060613

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070313