JP2004145675A - Data input/output device - Google Patents
Data input/output device Download PDFInfo
- Publication number
- JP2004145675A JP2004145675A JP2002310413A JP2002310413A JP2004145675A JP 2004145675 A JP2004145675 A JP 2004145675A JP 2002310413 A JP2002310413 A JP 2002310413A JP 2002310413 A JP2002310413 A JP 2002310413A JP 2004145675 A JP2004145675 A JP 2004145675A
- Authority
- JP
- Japan
- Prior art keywords
- data
- data transfer
- length
- input
- transfer length
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、上位装置と記憶装置との間でデータ転送を行なうデータ入出力装置の改良、より具体的には、データ転送の際に生じるオーバーヘッドを軽減して転送処理の効率化と安定化を図るための改良に関する。
【0002】
【従来の技術】
データバッファを介して上位装置と記憶装置との間でのデータ転送を行なうようにしたデータ入出力装置が公知である。
【0003】
図3はSCSIにおける上位装置と記憶装置との間に配備される従来のデータ入出力装置の一般例を示した機能ブロック図である。
【0004】
このデータ入出力装置10は、概略において、上位装置20に接続するSCSIインターフェイス11(上位装置側インターフェイス)と、記憶装置30に接続するドライブインターフェイス12(下位装置側インターフェイス)、および、SCSIインターフェイス11とドライブインターフェイス12との間で行なわれるデータの遣り取りに際してデータを一時記憶するデータバッファ13と、SCSIインターフェイス11およびドライブインターフェイス12を制御する入出力制御手段14とによって構成される。
【0005】
入出力制御手段14は上位装置20からの読み出しコマンドで指定されたデータ転送長をSCSIインターフェイス11に設定してSCSIインターフェイス11にデータ転送指令を出力し、これを受けたSCSIインターフェイス11が、データバッファ13に格納されているデータを不正長検出手段15を介して読み込み、このデータを上位装置20に転送する。
【0006】
ここで、上位装置20からの読み出しコマンドで指定されたデータ転送長がデータバッファ13に格納されているデータの実質的なデータ転送長と同一であるか或いは小さい場合には、SCSIインターフェイス11が設定どおりの転送長のデータをデータバッファ13から読み込んで上位装置20に転送することが可能であるため、SCSIインターフェイス11におけるデータ転送処理は正常に終了し、SCSIインターフェイス11から入出力制御手段14にデータ転送処理の正常な終了を表す終了信号が割り込み信号として送出されて、1サイクルのデータ転送が終了することになる。
【0007】
しかし、上位装置20からの読み出しコマンドで指定されたデータ転送長がデータバッファ13に格納されているデータの実質的なデータ転送長よりも大きい不正長のデータ転送が行なわれた場合には、SCSIインターフェイス11が設定どおりの転送長のデータをデータバッファ13から読み込んで上位装置20に転送することが不可能となるため、SCSIインターフェイス11におけるデータ転送処理は終了せず、入出力制御手段14にSCSIインターフェイス11からの終了信号が返らなくなり、入出力制御手段14の側ではデータ転送に関わる次の処理を開始できなくなるといった問題が生じる。
【0008】
このような問題を回避するために設けられているのが不正長検出手段15である。
【0009】
この不正長検出手段15は、データバッファ13からSCSIインターフェイス11に不正長のデータが読み込まれたことを検出し、入出力制御手段14に不正長検出信号を割り込み信号として送出することで、入出力制御手段14からの指令によってSCSIインターフェイス11におけるデータ転送処理を強制終了させ、更に、入出力制御手段14からの指令によってSCSIインターフェイス11をリセットさせて、入出力制御手段14がデータ転送に関わる次の処理を開始できるようにする。
【0010】
上位装置20からの読み出しコマンドで指定されたデータ転送長がデータバッファ13に格納されているデータの実質的なデータ転送長よりも大きい不正長のデータ転送が行なわれた場合の従来の処理について図4を参照して簡単に説明する。
【0011】
入出力制御手段14は、まず、上位装置20からの読み出しコマンドで指定されたデータ転送長をSCSIインターフェイス11に設定し(ステップb1)、SCSIインターフェイス11にデータ転送指令を出力して(ステップb2)、SCSIインターフェイス11によるデータ転送処理を開始させる。
【0012】
この場合、読み出しコマンドで指定されたデータ転送長がデータバッファ13に格納されているデータの実質的なデータ転送長よりも大きい不正長のデータ転送であるため、SCSIインターフェイス11が設定どおりの転送長のデータをデータバッファ13から読み込んで上位装置20に転送することは不可能となる。
【0013】
従って、SCSIインターフェイス11のデータ転送処理は正常に終了せず、SCSIインターフェイス11から入出力制御手段14には終了信号が返らず、入出力制御手段14は、不正長検出手段15から送出される不正長検出信号の割り込みを待ち、この不正長検出信号の割り込みが検出された時点、つまり、データバッファ13からSCSIインターフェイス11に読み込まれた不正長のデータがSCSIインターフェイス11側のデータ転送処理によって上位装置20に転送されたことが確認された時点で(ステップb3)、SCSIインターフェイス11に対して強制終了指令を送出する(ステップb4)。
【0014】
そして、入出力制御手段14からの強制終了指令を受けたSCSIインターフェイス11は、データ転送処理を中断し、データ転送処理の強制終了が実行されたことを表す強制終了完了信号を割り込み信号として入出力制御手段14に送出する。しかし、データ転送処理の中断により、SCSIインターフェイス11の内部処理で用いているレジスタやカウンタ等の値が不定となっているため、このままでは、SCSIインターフェイス11が次のデータ転送処理を正常に開始することができなくなる場合がある。
【0015】
そこで、SCSIインターフェイス11からの強制終了完了信号を検出した入出力制御手段14は(ステップb5)、SCSIインターフェイス11に対して、更に、リセット指令を送出する(ステップb6)。
【0016】
そして、リセット指令を検出したSCSIインターフェイス11が内部のレジスタやカウンタ等の値を初期化した後、次のデータ転送処理に対する準備が整ったことを表すリセット終了信号を割り込み信号として入出力制御手段14に送出する。
【0017】
最終的に、入出力制御手段14がSCSIインターフェイス11からのリセット終了信号を検出することで(ステップb7)、不正長のデータ転送に関わる1サイクルの処理が終了することになる。
【0018】
しかしながら、これらの強制終了指令や強制終了完了信号、および、リセット指令やリセット終了信号の遣り取り、更には、SCSIインターフェイス11内におけるデータ転送処理の中断制御等は、実質的なデータ転送処理とは関連のない制御、つまり、オーバーヘッドであって、処理操作の信頼性の低下や効率の低下を招く恐れのあるものである。
【0019】
オーバーヘッドを軽減したデータ入出力装置としては、例えば、特許文献1に開示されるように、上位装置から要求されたデータ転送長とデータバッファのバッファ長とを比較して必要とされるデータの転送回数を求め、この回数分だけデータの転送を繰り返し実行し、この間の結果通知を省略することでオーバーヘッドを軽減するようにした「ファイル装置制御装置」が提案されている。
【0020】
【特許文献1】
特開平4−373054号公報(段落番号0015,図2)
【0021】
【発明が解決しようとする課題】
しかし、特許文献1に開示された「ファイル装置制御装置」は、単に、上位装置と記憶装置との間の結果通知に伴って生じるオーバーヘッドの回数を軽減化するために転送処理を連続化しているに過ぎず、不正長のデータ転送要求によって生じるオーバーヘッド、より具体的には、SCSIインターフェイスと入出力制御手段との間で遣り取りされる強制終了指令,強制終了完了信号,リセット指令,リセット終了信号、および、データ転送処理の中断制御等を軽減するものではない。
【0022】
【発明の目的】
そこで、本発明の目的は、不正長のデータ転送要求によって生じるオーバーヘッドを大幅に軽減し、転送処理の効率化と安定化を図ることのできるデータ入出力装置を提供することにある。
【0023】
【課題を解決するための手段】
本発明は、上位装置に接続する上位装置側インターフェイスと、記憶装置に接続する下位装置側インターフェイスと、上位装置側インターフェイスと下位装置側インターフェイスとの間で受け渡されるデータの一時記憶に用いられるデータバッファと、上位装置側インターフェイスおよび下位装置側インターフェイスを制御する入出力制御手段とを備え、
入出力制御手段が上位装置側インターフェイスにデータ転送長を設定してデータ転送指令を出力することにより上位装置側インターフェイスによるデータ転送処理を開始させ、
該データ転送指令を受けた上位装置側インターフェイスが、入出力制御手段により設定されたデータ転送長に基いて、データバッファに格納されているデータを上位装置に転送するデータ転送処理を実行して入出力制御手段に終了信号を送出し、
この終了信号を受けた入出力制御手段がデータ転送に関わる次の処理を開始するように構成されたデータ入出力装置であり、
前記目的を達成するため、特に、
データバッファに記憶されているデータのデータ転送長を検出するデータ長検出手段を設けると共に、
入出力制御手段には、上位装置によって指令されたデータ転送長とデータ長検出手段により検出されたデータ転送長との大小関係を比較し、値の小さな方のデータ転送長を上位装置側インターフェイスに設定するデータ転送長選択設定機能を配備したことを特徴とする構成を有する。
【0024】
以上の構成によれば、まず、データバッファに記憶されているデータのデータ転送長がデータ長検出手段によって検出され、更に、入出力制御手段が、上位装置によって指令されたデータ転送長とデータ長検出手段により検出されたデータ転送長との大小関係を比較した上で、値の小さな方のデータ転送長が上位装置側インターフェイスに設定される。
従って、上位装置から不正長のデータ転送要求があった場合、つまり、上位装置から指定されたデータ転送長がデータバッファに格納されているデータの実質的なデータ転送長よりも大きい場合には、データバッファに格納されているデータの実質的なデータ転送長が上位装置側インターフェイスに設定されることになる。
次いで、入出力制御手段が上位装置側インターフェイスにデータ転送指令を出力することにより、上位装置側インターフェイスによるデータ転送処理が開始される。
この際、上位装置側インターフェイスは、入出力制御手段により設定されたデータ転送長、つまり、データバッファに格納されているデータの実質的なデータ転送長に基いてデータ転送処理を実行することになるので、入出力制御手段により設定されたデータ転送長とデータバッファから読み込まれたデータのデータ転送長とが一致し、正長のデータ転送の場合と同様に、データ転送処理を正常に終了して入出力制御手段に終了信号を送出することができる。
よって、データの転送の際に必要とされる内部処理は、入出力制御手段から上位装置側インターフェイスへのデータ転送長の設定と、データ転送指令の送出、および、上位装置側インターフェイスから入出力制御手段への終了信号の送出だけで済む。
このように、不正長のデータ転送において従来必要とされていた強制終了指令や強制終了完了信号、および、リセット指令やリセット終了信号の遣り取りや、更には、上位装置側インターフェイス内におけるデータ転送処理の中断制御が不要となるため、不正長のデータ転送に関連したオーバーヘッドが減少し、転送処理の効率化と安定化が達成される。
【0025】
また、データ長検出手段は、データバッファに格納されているデータのフォーマット情報に基いてデータ転送長を検出するように構成することができる。
【0026】
データのフォーマット情報を直接利用してデータ転送長を検出することにより、転送長検出のための格別の演算処理が不要となり、高速な内部処理が実現される。
【0027】
また、データ長検出手段は、データバッファに格納されているデータの先頭アドレスと最終アドレスとの差分に基いて当該データのデータ転送長を検出するように構成してもよい。
【0028】
この場合、データ転送長の検出に際しては簡単な減算処理を要するが、フォーマット情報を備えていないデータの転送長を確実に検出することができるメリットがある。
【0029】
更に、データバッファに格納されているデータのフォーマット情報の有無を判定する判定機能をデータ長検出手段に設け、フォーマット情報がある場合には当該フォーマット情報に基いてデータ転送長を検出する一方、フォーマット情報がない場合にはデータバッファに格納されているデータの先頭アドレスと最終アドレスとの差分に基いて当該データのデータ転送長を検出するように構成することも可能である。
【0030】
この場合、フォーマット情報を備えたデータに対しては、転送長検出のための演算処理を省略して高速な内部処理を実現でき、また、フォーマット情報を備えていないデータであっても、簡単な減算処理によってデータの転送長を確実に検出することができる。
【0031】
【発明の実施の形態】
以下、図面を参照して本発明の実紙形態について詳細に説明する。図1は本発明を適用した一実施形態のデータ入出力装置1の構成について示した機能ブロック図である。
【0032】
このデータ入出力装置1は、SCSIバスを介して上位装置20に接続するSCSIインターフェイス11(上位装置側インターフェイス)と、記憶装置30に接続するドライブインターフェイス12(下位装置側インターフェイス)、および、SCSIインターフェイス11とドライブインターフェイス12との間で行なわれるデータの遣り取りに際してデータを一時記憶するデータバッファ13を従来と同様にして備える。
【0033】
データ長検出手段2は、データバッファ13に記憶されているデータのデータ転送長を検出するためのもので、この実施形態に固有の構成要素である。
このデータ長検出手段2には、記憶装置30から先読みされてデータバッファ13に格納されているデータのフォーマット情報の有無を判定する判定機能が設けられ、データにフォーマット情報がある場合には、データバッファ13に格納されているデータのフォーマット情報に基いて当該データのデータ転送長を特定し、また、データにフォーマット情報がない場合には、データバッファ13に格納されているデータの先頭アドレスと最終アドレスとの差分をとって当該データのデータ転送長を求めるようになっている。
【0034】
入出力制御手段3は、SCSIインターフェイス11およびドライブインターフェイス12を制御するために必要とされる従来と同様の機能に加え、更に、上位装置20によって指令されたデータ転送長とデータ長検出手段2によって検出されたデータ転送長との大小関係を比較し、値の小さな方のデータ転送長をSCSIインターフェイス11に設定するデータ転送長選択設定機能が備えられている。
【0035】
次に、上位装置20からの読み出しコマンドがデータ入出力装置1に入力された際に入出力制御手段3が実施する処理について、図2のフローチャートを参照して説明する。
【0036】
上位装置20からの読み出しコマンドがデータ入出力装置1に入力されると、入出力制御手段3は、まず、上位装置20からの読み出しコマンドで指定されたデータ転送長をSCSIインターフェイス11を介して読み込んで一時記憶すると共に(ステップa1)、データ長検出手段2を介して、データバッファ13に格納されているデータの実際のデータ転送長を検出する(ステップa2)。
既に述べたとおり、データ長検出手段2は、データバッファ13に格納されているデータにフォーマット情報が付属していれば、このフォーマット情報に基いて当該データのデータ転送長を特定し、また、フォーマット情報がない場合には、データバッファ13に格納されているデータの先頭アドレスと最終アドレスとの差分を求め、この値を当該データの実質的なデータ転送長とする。
【0037】
次いで、入出力制御手段3は、上位装置20からの読み出しコマンドで指定されたデータ転送長とデータ長検出手段2により検出されたデータ転送長との大小関係を比較する処理を実行する(ステップa3)。
【0038】
そして、データ長検出手段2により検出されたデータ転送長が上位装置20からの読み出しコマンドで指定されたデータ転送長よりも大きければ(ステップa4の判定結果がYes)、上位装置20からの読み出しコマンドで指定されたデータ転送長、つまり、値の小さな方のデータ転送長をSCSIインターフェイス11に設定する一方(ステップa6)、上位装置20からの読み出しコマンドで指定されたデータ転送長がデータ長検出手段2により検出されたデータ転送長よりも大きければ(ステップa4の判定結果がNo)、データ長検出手段2によって検出されたデータ転送長、つまり、値の小さな方のデータ転送長をSCSIインターフェイス11に設定する(ステップa5)。
【0039】
次いで、入出力制御手段3は、SCSIインターフェイス11に対してデータ転送指令を出力し、SCSIインターフェイス11によるデータ転送処理を開始させた後(ステップa7)、データ転送処理の正常な終了を表す終了信号が割り込み信号としてSCSIインターフェイス11から入力されるのを待つ。
【0040】
一方、入出力制御手段3からのデータ転送指令を受けてデータ転送処理を開始したSCSIインターフェイス11は、入出力制御手段3によって予め設定されたデータ転送長に基いてデータバッファ13からデータを読み込み、このデータを上位装置20に転送することになる。
【0041】
ここで、上位装置20からの読み出しコマンドで指定されたデータ転送長がデータバッファ13に格納されているデータの実質的なデータ転送長よりも大きい不正長のデータ転送が行なわれる場合には、SCSIインターフェイス11には、データ長検出手段2により検出されたデータ転送長、つまり、データバッファ13に格納されているデータの実質的なデータ転送長が既に設定されているので(ステップa5参照)、入出力制御手段3により設定されたデータ転送長とデータバッファ13から読み込まれたデータのデータ転送長とが一致し、SCSIインターフェイス11は、正長のデータ転送処理の場合と全く同様にデータ転送処理を正常に終了して、入出力制御手段3に終了信号を送出することができる。
【0042】
従って、不正長のデータ転送を強制終了させるために入出力制御手段3からSCSIインターフェイス11に強制終了指令を送出したり、SCSIインターフェイス11に強制終了処理を実行させたり、強制終了処理の完了を表す強制終了完了信号をSCSIインターフェイス11から入出力制御手段3に帰還させたりする必要はない。また、入出力制御手段3からSCSIインターフェイス11に初期化のためのリセット指令を送出したり、更には、初期化処理の完了を表すリセット終了信号をSCSIインターフェイス11から入出力制御手段3に帰還させたりといった必要も一切ない。このように、データの転送処理と直接の関係のない信号の遣り取りや内部処理が不要となって不正長のデータ転送に関連したオーバーヘッドが大幅に軽減される。
【0043】
そして、SCSIインターフェイス11から送出された終了信号は、正長のデータ転送処理の場合と全く同様にして入出力制御手段3によって検出され(ステップa8)、1サイクルのデータ転送処理の終了を認識した入出力制御手段3は、直ちに次の処理、例えば、次のデータ転送処理を開始することができるようになる。
【0044】
一方、データ長検出手段2によって検出されたデータ転送長が上位装置20からの読み出しコマンドで指定されたデータ転送長よりも大きい不正長のデータ転送、もしくは、正長のデータ転送が行なわれた場合は、SCSIインターフェイス11には、従来と同様、上位装置20からの読み出しコマンドで指定されたデータ転送長が設定されているので(ステップa6参照)、SCSIインターフェイス11は設定どおりの転送長のデータをデータバッファ13から読み込んで上位装置20に転送することが可能であり、SCSIインターフェイス11は、従来と同様にデータ転送処理を正常に終了させて入出力制御手段3に終了信号を送出し、1サイクルのデータ転送処理を終えることができる。
【0045】
【発明の効果】
本発明のデータ入出力装置は、データバッファに記憶されているデータの実質的なデータ転送長を検出し、上位装置によって指令されたデータ転送長と実質的なデータ転送長との大小関係を比較して値の小さな方のデータ転送長を上位装置側インターフェイスに設定してデータ転送処理を開始させるようにしたので、上位装置から指定されたデータ転送長がデータバッファに格納されているデータの実質的なデータ転送長よりも大きい不正長のデータ転送が行なわれる場合であっても、入出力制御手段により上位装置側インターフェイスに設定されたデータ転送長とデータバッファから読み込まれたデータのデータ転送長とを一致させることができ、上位装置側インターフェイスにおけるデータ転送処理を強制的に中断させることなく正常に終了させることができる。
この結果、不正長のデータ転送を実行する上位装置側インターフェイスの制御に必要とされていた強制終了指令や強制終了完了信号、および、リセット指令やリセット終了信号の遣り取りや、上位装置側インターフェイス内におけるデータ転送処理の中断制御が不要となって不正長のデータ転送に関連したオーバーヘッドが減少し、データ転送処理の効率化と安定化が達成される。
【0046】
また、データバッファに格納されているデータのフォーマット情報に基いてデータ転送長を検出する構成を適用した場合には、転送長検出のための格別の演算処理が不要であり、転送長検出のアルゴリズムを新たに設けたにも関わらず高速な内部処理が実現される。
【0047】
一方、データバッファに格納されているデータの先頭アドレスと最終アドレスとの差分に基いてデータ転送長を検出する構成を適用した場合では、フォーマット情報を備えていないデータの場合であっても転送長を確実に検出することができる。しかも、転送長の検出は単純な減算処理で実現されているので、転送長検出のアルゴリズムによって内部処理が複雑化したり低速化したりする心配はない。
【0048】
更に、データバッファに格納されているデータのフォーマット情報の有無を判定し、フォーマット情報がある場合にはフォーマット情報に基いてデータ転送長を検出する一方、フォーマット情報がない場合にはデータバッファに格納されているデータの先頭アドレスと最終アドレスとの差分に基いてデータ転送長を検出するようにしたので、フォーマット情報を備えたデータに対しては転送長検出のための演算処理を省略して高速な内部処理を実現でき、また、フォーマット情報を備えていないデータに対しても、簡単な減算処理によってデータの転送長を素早く確実に検出できる。
【図面の簡単な説明】
【図1】本発明を適用した一実施形態のデータ入出力装置の構成について示した機能ブロック図である。
【図2】同実施形態のデータ入出力装置によるデータ転送処理について示したフローチャートである。
【図3】従来のデータ入出力装置の構成について示した機能ブロック図である。
【図4】従来のデータ入出力装置によるデータ転送処理について示したフローチャートである。
【符号の説明】
1 データ入出力装置
2 データ長検出手段
3 入出力制御手段
10 データ入出力装置
11 SCSIインターフェイス(上位装置側インターフェイス)
12 ドライブインターフェイス(下位装置側インターフェイス)
13 データバッファ
14 入出力制御手段
15 不正長検出手段
20 上位装置
30 記憶装置[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention improves the data input / output device for performing data transfer between a higher-level device and a storage device, and more specifically, improves the efficiency and stability of transfer processing by reducing the overhead generated during data transfer. It relates to improvement to achieve.
[0002]
[Prior art]
2. Description of the Related Art There is known a data input / output device configured to transfer data between a host device and a storage device via a data buffer.
[0003]
FIG. 3 is a functional block diagram showing a general example of a conventional data input / output device provided between a host device and a storage device in SCSI.
[0004]
The data input /
[0005]
The input / output control means 14 sets the data transfer length specified by the read command from the
[0006]
Here, if the data transfer length specified by the read command from the higher-
[0007]
However, if the data transfer length specified by the read command from the higher-
[0008]
The illegal length detecting means 15 is provided to avoid such a problem.
[0009]
The illegal length detection means 15 detects that illegal length data has been read from the
[0010]
FIG. 9 is a diagram illustrating a conventional process when an illegal length data transfer is performed in which the data transfer length specified by the read command from the
[0011]
First, the input / output control means 14 sets the data transfer length specified by the read command from the
[0012]
In this case, since the data transfer length specified by the read command is an illegal data transfer larger than the substantial data transfer length of the data stored in the
[0013]
Therefore, the data transfer processing of the
[0014]
When the
[0015]
Therefore, the input /
[0016]
After the
[0017]
Finally, when the input / output control means 14 detects the reset end signal from the SCSI interface 11 (step b7), one cycle of processing relating to the transfer of the data of the incorrect length is completed.
[0018]
However, the exchange of the forced termination command and the forced termination completion signal, the reset command and the reset termination signal, and the interruption control of the data transfer processing in the
[0019]
As a data input / output device with reduced overhead, for example, as disclosed in Patent Document 1, data transfer required by comparing a data transfer length requested by a host device with a buffer length of a data buffer is disclosed. A “file device control device” has been proposed in which the number of times is obtained, data transfer is repeatedly executed by the number of times, and the result notification during this time is omitted to reduce overhead.
[0020]
[Patent Document 1]
JP-A-4-373054 (paragraph number 0015, FIG. 2)
[0021]
[Problems to be solved by the invention]
However, the “file device control device” disclosed in Patent Literature 1 simply makes the transfer process continuous in order to reduce the number of overheads caused by the result notification between the higher-level device and the storage device. , And more specifically, an overhead caused by an incorrect length data transfer request, more specifically, a forced termination command, a forced termination completion signal, a reset command, a reset termination signal exchanged between the SCSI interface and the input / output control means, In addition, this does not reduce the interruption control of the data transfer processing.
[0022]
[Object of the invention]
SUMMARY OF THE INVENTION It is an object of the present invention to provide a data input / output device capable of greatly reducing overhead caused by an illegal length data transfer request and improving the efficiency and stability of transfer processing.
[0023]
[Means for Solving the Problems]
The present invention relates to a higher-level device-side interface connected to a higher-level device, a lower-level device-side interface connected to a storage device, and data used for temporary storage of data passed between the higher-level device-side interface and the lower-level device-side interface. A buffer, and input / output control means for controlling the upper device-side interface and the lower device-side interface,
The input / output control means sets the data transfer length in the higher-level device-side interface and outputs a data transfer command to start the data transfer process by the higher-level device-side interface,
Upon receiving the data transfer command, the higher-level device-side interface executes data transfer processing for transferring data stored in the data buffer to the higher-level device based on the data transfer length set by the input / output control means. Sending an end signal to the output control means,
A data input / output device configured to start the next process related to data transfer by the input / output control unit that has received the end signal;
To achieve the above objectives,
Data length detecting means for detecting the data transfer length of the data stored in the data buffer;
The input / output control unit compares the data transfer length commanded by the host device with the data transfer length detected by the data length detection unit and compares the smaller data transfer length with the host device interface. A configuration is provided in which a data transfer length selection setting function to be set is provided.
[0024]
According to the above configuration, first, the data transfer length of the data stored in the data buffer is detected by the data length detecting means, and further, the input / output control means controls the data transfer length and the data length specified by the host device. After comparing the magnitude relation with the data transfer length detected by the detecting means, the smaller data transfer length is set in the higher-level device-side interface.
Therefore, if there is a data transfer request of an incorrect length from the host device, that is, if the data transfer length specified by the host device is larger than the substantial data transfer length of the data stored in the data buffer, The substantial data transfer length of the data stored in the data buffer is set in the higher-level device-side interface.
Next, the input / output control unit outputs a data transfer command to the higher-level device-side interface, whereby the data transfer process by the higher-level device-side interface is started.
At this time, the upper device-side interface executes the data transfer process based on the data transfer length set by the input / output control means, that is, the substantial data transfer length of the data stored in the data buffer. Therefore, the data transfer length set by the input / output control means matches the data transfer length of the data read from the data buffer, and the data transfer process is normally terminated as in the case of the positive-length data transfer. An end signal can be sent to the input / output control means.
Therefore, internal processing required for data transfer includes setting of a data transfer length from the input / output control means to the higher-level device-side interface, transmission of a data transfer command, and input / output control from the higher-level device-side interface. It is only necessary to send an end signal to the means.
As described above, the exchange of the forced termination command and the forced termination completion signal, the reset command and the reset termination signal which have been conventionally required in the transfer of the illegal length data, and the data transfer processing in the higher-level device-side interface are further performed. Since the interruption control is not required, the overhead associated with the transfer of the illegally-length data is reduced, and the efficiency and stability of the transfer process are achieved.
[0025]
Further, the data length detecting means can be configured to detect the data transfer length based on the format information of the data stored in the data buffer.
[0026]
Detecting the data transfer length by directly using the format information of the data eliminates the need for special arithmetic processing for detecting the transfer length, thereby realizing high-speed internal processing.
[0027]
Further, the data length detecting means may be configured to detect the data transfer length of the data based on the difference between the start address and the end address of the data stored in the data buffer.
[0028]
In this case, a simple subtraction process is required to detect the data transfer length, but there is an advantage that the transfer length of data having no format information can be reliably detected.
[0029]
Further, a determination function for determining the presence / absence of format information of the data stored in the data buffer is provided in the data length detecting means, and when there is format information, the data transfer length is detected based on the format information. If there is no information, the data transfer length of the data can be detected based on the difference between the start address and the end address of the data stored in the data buffer.
[0030]
In this case, high-speed internal processing can be realized for data having format information by omitting the arithmetic processing for detecting the transfer length. The data transfer length can be reliably detected by the subtraction processing.
[0031]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, the actual paper form of the present invention will be described in detail with reference to the drawings. FIG. 1 is a functional block diagram showing a configuration of a data input / output device 1 according to an embodiment of the present invention.
[0032]
The data input / output device 1 includes a SCSI interface 11 (upper device interface) connected to a
[0033]
The data length detection means 2 is for detecting the data transfer length of the data stored in the
The data length detection means 2 is provided with a determination function for determining the presence or absence of format information of the data read in advance from the
[0034]
The input / output control means 3 has functions similar to those of the related art required for controlling the
[0035]
Next, a process performed by the input / output control unit 3 when a read command from the
[0036]
When a read command from the
As described above, if format information is attached to the data stored in the
[0037]
Next, the input / output control unit 3 executes a process of comparing the magnitude relationship between the data transfer length specified by the read command from the
[0038]
If the data transfer length detected by the data length detection means 2 is larger than the data transfer length specified by the read command from the higher-level device 20 (the determination result in step a4 is Yes), the read command from the higher-
[0039]
Next, the input / output control unit 3 outputs a data transfer command to the
[0040]
On the other hand, the
[0041]
Here, if the data transfer length specified by the read command from the higher-
[0042]
Therefore, the input / output control means 3 sends a forced termination command to the
[0043]
Then, the end signal sent from the
[0044]
On the other hand, when the data transfer length detected by the data length detection means 2 is an illegal length data transfer or a positive length data transfer larger than the data transfer length specified by the read command from the higher-
[0045]
【The invention's effect】
The data input / output device of the present invention detects the substantial data transfer length of the data stored in the data buffer and compares the magnitude relationship between the data transfer length commanded by the host device and the substantial data transfer length. Then, the data transfer length of the smaller value is set in the higher-level device-side interface and the data transfer process is started, so that the data transfer length specified by the higher-level device is substantially equal to the data stored in the data buffer. Even if an illegal data transfer longer than the typical data transfer length is performed, the data transfer length set by the input / output control means to the higher-level device-side interface and the data transfer length of the data read from the data buffer. Can be matched normally, without forcibly interrupting the data transfer process at the higher-level device-side interface. It is possible to completion.
As a result, the exchange of the forced termination command and the forced termination completion signal, and the reset command and the reset termination signal, which were required for controlling the higher-level device-side interface that executes the data transfer of the illegal length, and in the higher-level device-side interface This eliminates the need for interruption control of data transfer processing, reduces overhead associated with data transfer of an illegal length, and achieves efficient and stable data transfer processing.
[0046]
In addition, when the configuration for detecting the data transfer length based on the format information of the data stored in the data buffer is applied, no special arithmetic processing for detecting the transfer length is required, and the algorithm for detecting the transfer length is not required. , But high-speed internal processing is realized.
[0047]
On the other hand, when the configuration for detecting the data transfer length based on the difference between the start address and the end address of the data stored in the data buffer is applied, even if the data does not have format information, the transfer length is determined. Can be reliably detected. Moreover, since the detection of the transfer length is realized by a simple subtraction process, there is no concern that the algorithm of the transfer length detection complicates or slows down the internal processing.
[0048]
Furthermore, the presence or absence of format information of the data stored in the data buffer is determined. If there is format information, the data transfer length is detected based on the format information. The data transfer length is detected based on the difference between the start address and the end address of the data. Internal processing can be realized, and the transfer length of data can be quickly and reliably detected by simple subtraction processing even for data having no format information.
[Brief description of the drawings]
FIG. 1 is a functional block diagram showing a configuration of a data input / output device according to an embodiment to which the present invention is applied.
FIG. 2 is a flowchart showing a data transfer process by the data input / output device of the embodiment.
FIG. 3 is a functional block diagram showing a configuration of a conventional data input / output device.
FIG. 4 is a flowchart showing a data transfer process performed by a conventional data input / output device.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Data input / output device 2 Data length detection means 3 Input / output control means 10 Data input /
12 Drive interface (lower device side interface)
13
Claims (4)
前記入出力制御手段が前記上位装置側インターフェイスにデータ転送長を設定してデータ転送指令を出力することにより前記上位装置側インターフェイスによるデータ転送処理を開始させ、
該データ転送指令を受けた前記上位装置側インターフェイスが、前記入出力制御手段により設定されたデータ転送長に基いて、前記データバッファに格納されているデータを前記上位装置に転送するデータ転送処理を実行して前記入出力制御手段に終了信号を送出し、
この終了信号を受けた前記入出力制御手段がデータ転送に関わる次の処理を開始するように構成されたデータ入出力装置において、
前記データバッファに記憶されているデータのデータ転送長を検出するデータ長検出手段を設けると共に、
前記入出力制御手段には、前記上位装置によって指令されたデータ転送長と前記データ長検出手段により検出されたデータ転送長との大小関係を比較し、値の小さな方のデータ転送長を前記上位装置側インターフェイスに設定するデータ転送長選択設定機能を配備したことを特徴とするデータ入出力装置。A higher-level device-side interface connected to a higher-level device, a lower-level device-side interface connected to a storage device, and a data buffer used for temporary storage of data passed between the higher-level device-side interface and the lower-level device-side interface; Input / output control means for controlling the upper device side interface and the lower device side interface,
The input / output control means sets a data transfer length in the higher-level device-side interface and outputs a data transfer command to start data transfer processing by the higher-level device-side interface,
The higher-level device-side interface receiving the data transfer command performs a data transfer process of transferring data stored in the data buffer to the higher-level device based on the data transfer length set by the input / output control unit. Execute and send an end signal to the input / output control means,
In the data input / output device configured to start the next process related to data transfer, the input / output control unit that receives the end signal includes:
Along with data length detection means for detecting the data transfer length of the data stored in the data buffer,
The input / output control unit compares the data transfer length instructed by the host device with the data transfer length detected by the data length detection unit, and compares the smaller data transfer length with the data transfer length. A data input / output device, which is provided with a data transfer length selection setting function to be set in a device-side interface.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002310413A JP4238556B2 (en) | 2002-10-25 | 2002-10-25 | Data input / output device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002310413A JP4238556B2 (en) | 2002-10-25 | 2002-10-25 | Data input / output device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004145675A true JP2004145675A (en) | 2004-05-20 |
JP4238556B2 JP4238556B2 (en) | 2009-03-18 |
Family
ID=32455906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002310413A Expired - Fee Related JP4238556B2 (en) | 2002-10-25 | 2002-10-25 | Data input / output device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4238556B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04373054A (en) * | 1991-06-24 | 1992-12-25 | Hokkaido Nippon Denki Software Kk | Filing device controller |
JPH1097489A (en) * | 1996-09-19 | 1998-04-14 | Toshiba Corp | Method and device for block length conversion of magnetic disk unit |
JP2001337913A (en) * | 2000-05-25 | 2001-12-07 | Hitachi Ltd | Data transfer system and its device |
-
2002
- 2002-10-25 JP JP2002310413A patent/JP4238556B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04373054A (en) * | 1991-06-24 | 1992-12-25 | Hokkaido Nippon Denki Software Kk | Filing device controller |
JPH1097489A (en) * | 1996-09-19 | 1998-04-14 | Toshiba Corp | Method and device for block length conversion of magnetic disk unit |
JP2001337913A (en) * | 2000-05-25 | 2001-12-07 | Hitachi Ltd | Data transfer system and its device |
Also Published As
Publication number | Publication date |
---|---|
JP4238556B2 (en) | 2009-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
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 | |
US5694586A (en) | Controller using time-domain filter connected to a signal line to control a time at which signal line is sampled for receipt of information transfer signal | |
JP2004145675A (en) | Data input/output device | |
US7702820B2 (en) | Hardware accelerator and data transmission system and method using the same | |
JP3703439B2 (en) | Data transfer control device and method | |
EP0749071A2 (en) | Method and system for information transfer between hostcomputer and peripherals device | |
JP2000267951A (en) | Data transfer control system and its method | |
JP4100824B2 (en) | Printing system, control method thereof, and storage medium | |
JPH1091567A (en) | Input/output interface extension device | |
KR20130051821A (en) | Core system improved transfer latency in interrupt and vector register file data transfer method thereof | |
JP2835487B2 (en) | Printer buffer | |
JP3991531B2 (en) | Simulation system | |
JP2004062875A (en) | Printing system, printer, and printing control method | |
US7589859B2 (en) | Print apparatus, print control method, storage medium storing computer-readable program, and program | |
JP3904054B2 (en) | Medium recording paper discharge program, medium recording data identification program, paper discharge apparatus, data identification apparatus, paper discharge method, and data identification method | |
JP3593882B2 (en) | Printing apparatus and interface control method | |
JP2001005771A (en) | Printer interface system, its controlling method and recording medium recording its control program | |
JP3358199B2 (en) | I / O device status detection method | |
JP3695363B2 (en) | SCSI control method | |
JPH05265784A (en) | Disk device | |
JP2000296657A (en) | Printer, printing method and memory medium | |
JP3595704B2 (en) | Printer device and print output method | |
JP2004118517A (en) | Data transfer method and device, printing method, printer, control program for data transfer device, and storage medium | |
JP2017010122A (en) | Printing system, printing device, control method of printing system and control method of printing device | |
JP2925049B2 (en) | Input buffer control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060523 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070220 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080205 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20080306 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080306 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080407 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080515 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20080604 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20081125 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081208 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120109 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130109 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |