(57)【特許請求の範囲】
【請求項１】
複数のアドレスを指定してデバイスにアクセス可能なバスと、
前記バスから第一のアドレスを指定されることで第一選択信号をディスクデバイスのデータレジスタに出力する第一アドレスデコードと、
前記バスから前記第一のアドレスとは異なる第二のアドレスを指定されることで第二選択信号を前記データレジスタに出力する第二アドレスデコードと、
前記第一選択信号及び前記第二選択信号の論理和信号を出力する選択信号合成回路と、
前記選択信号合成回路の出力信号に呼応して所定数のグレイコードを発生するグレイコードステートマシンと、
前記第一アドレスデコードに接続されて前記グレイコードステートマシンが出力する第一のグレイコードが入力されてから第二のグレイコードが入力されるまでの間に前記第一選択信号を遅延した第一遅延選択信号を出力する第一ウエイト数セレクタと、
前記第二アドレスデコードに接続されて前記グレイコードステートマシンが出力する前記第一のグレイコードが入力されてから前記第二のグレイコードの後に発生する第三のグレイコードが入力されるまでの間に前記第二選択信号を遅延した第二遅延選択信号を出力する第二ウエイト数セレクタと、
前記第一遅延選択信号及び前記第二遅延選択信号の論理和信号を出力するウエイト信号合成回路と、
前記ウエイト信号合成回路の出力信号に基づいて前記第一アドレスデコード又は前記第二アドレスデコードのいずれかを選択するシーケンサと
を具備するディスクドライブインターフェース装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディスクデバイスのインターフェース装置に関し、特にランダムアクセスとシーケンシャルアクセスでアクセス速度を使い分けるインターフェース装置に適用されるものである。
【０００２】
【従来の技術】
従来、ＣＰＵからレジスタを介してデータ転送デバイスをアクセスする際に、デバイスの製造会社、型式の性能によって応答速度が異なる。これに合わせて、インターフェースのアクセス速度をディスクデバイス内部コントローラに対してモード設定を切換えるハードウエアを使っていた。
【０００３】
また、デバイスを内部制御するレジスタは応答速度が遅いので、データ転送用レジスタよりも数分の一の遅いアクセス速度にする必要があった。
【０００４】
特に、複数コマンドをシーケンシャルに連続して発してシーケンシャルにデータ転送を行う、シーケンシャルアクセスの場合には、ランダムアクセスの場合と異なり、ディスク媒体メディアから内部キャッシュメモリへのデータ転送の電子回路による処理遅延があった。
【０００５】
【発明が解決しようとする課題】
上述した従来のディスクデバイスのインターフェース装置では、シーケンシャルアクセスの場合にディスク媒体メディアから内部キャッシュメモリへのデータ転送の電子回路による処理遅延の存在のため、標準で定められているサイクル周期に対応するサイクルであっても、高レートでの連続アクセスではデータの内部キャッシュへの転送レートが間に合わず、ディスク内部コントローラの動作が停止するエラーが発生するという不都合があった。
【０００６】
本発明は以上の点を考慮してなされたもので、高速処理を可能とするディスクデバイスのインターフェース装置を提案しようとするものである。
【０００７】
【課題を解決するための手段】
かかる課題を解決するため本発明のディスクデバイスのインターフェース装置では、メモリマップドＩ／ＯでＣＰＵに接続するデバイスインターフェースで、ＣＰＵがアクセスできるアドレスが多く空くのを活用し、いくつかのアドレスグループ毎に同一ディスクデバイスの同一機能レジスタへ別々のアクセス速度でアクセスさせる。
【０００８】
具体的には、ホストＣＰＵのアドレスエリアを複数個のアドレスエリアに分けてメモリマップドＩ／Ｏで接続して、各々毎にホストのアドレス信号をアドレスデコードし、それぞれのアドレスデコード信号の論理和を同一デバイス内のコントロール／ステータス／データ機能の各レジスタへチップセレクト信号として接続し、その他の同一アドレス信号を接続してアクセスする。
ここで、各々のアドレスデコード結果信号毎に、ＣＰＵに対するウエイト信号発生器のウエイトクロック数を別々に対応させる。
【０００９】
本発明によれば、以下の作用をする。
１つのデバイスに対して複数のアドレスの中からランダムアクセス、シーケンシャルアクセス、レジスタパラメタ設定アクセスのそれぞれに適する速度でアクセスするアドレスを選択することによって、ホストに対する処理待ちウエイト時間を発生させ、これによってホストから発生されている各バス信号のウエイト信号に対応する継続時間幅の拡大が得られる。これは、ディスクデバイスをアクセスするホストインターフェースにとって、特にシーケンシャルアクセスの場合に対応可能な速度に、アクセスに使用するアドレスを切り替えることによって、変更調節することができる。
【００１０】
また、低速から高速までの各種リムーバブルストレージデバイスに対して適したレートでアクセスする。また、機能設定などのアクセスレート周期をディスクデバイス内部のインターフェースハードウエアに設定調節する処理作業を省略することになり、処理オーバーヘッドを減少させる。
【００１１】
また、制御ソフトウエアを使用するホストからのアドレス選択だけでアクセス速度を変更するので、ディスクデバイスにデータ転送途中にコマンド発行を改めて行うことでなくて、ホストのアドレス選択の切換により、最高速度から最低速度までソフトウエアプログラムにより転送サイクルレートを自在に切り替えする。さらに、インターフェース内部にデバイスへのアクセス速度周期の切換調整値を設定保持する設定回路が不要になる。
【００１２】
【発明の実施の形態】
以下、適宜図面を参照しながら本発明の実施の形態を詳述する。
図１は、本発明の実施の形態のディスクドライブインターフェース装置の構成を示すブロック図である。
図１において、シーケンサは１であり、プロセッサユニット内蔵のシーケンサやプログラムメモリに基づくＣＰＵ、特にパイプライン処理により高速処理作業を行うＲＩＳＣ（Ｒｅｄｕｃｅｄ  Ｉｎｓｔｒｕｃｔｉｏｎ  Ｓｅｔ  Ｃｏｎｍｐｕｔｅｒ）−ＣＰＵを使用する。プログラムは図示はしないメモリ上に存在してそれに基づいてシーケンス処理動作を行う。バスは２であり、ホストシーケンサ１のアドレスバス、データバス、コントロールバスを含む。
【００１３】
３はウエイト発生器であり、後述するアドレスデコード＃０〜＃ｎ（なお、図１では＃５までを示している。）までのアドレスデコード結果信号のそれぞれに対応してシーケンサ１に処理ステップ動作の処理待ちウエイト信号を入力する。その内部では、後述するアドレスデコード＃０〜＃ｎまでのアドレスデコード結果信号出力を受けて入力され、ハードウエアで割り当てられているクロック数分の時間期間をウエイト信号として合成し、シーケンサ１に出力する。
【００１４】
ディスクドライブは４であり、本実施の形態では、ＡＴＡ／ＡＴＡＰＩ−４標準に準拠するインターフェースをもつディスクデバイスを使用している。固定アドレスのデータレジスタ４１を持っていて、データレジスタ４１に繰り返し読み出し、または書き込みを行うことによって、データ転送を行う。さらにはコントロール部４２、データをドライブ内部でキャッシュするデータキャッシュ４３、そしてディスクドライブのサーボおよび機構ユニット４４が含まれている。
【００１５】
アドレスデコード＃０〜＃ｎは、それぞれ５０〜５ｎであり、これはシーケンサホストの１が持つアドレス信号から複数の選択されたアドレス信号が各々に入力された場合にそれを変換してディスクデバイス内部のデータレジスタのアドレスを選択するアドレスデコード信号を出力する。このアドレスデコード信号はどれか１つが発生した場合に同じデータレジスタを選択指定するために、論理和回路を通してディスクデバイス４内部のデータレジスタ４１の選択信号として入力している。
【００１６】
また、これと同時に、先に説明したウエイト発生器３もこれらのアドレスデコード５０〜５ｎのデコード結果出力信号が入力されている。ウエイト発生器３は、それぞれのアドレスデコード結果信号の入力に対応するクロック数のウエイト信号を、ホストシーケンサ１にウエイト信号出力する。
【００１７】
図２は、本実施の形態のアドレスマップを示す図である。
図２のアドレスマップのシーケンサのもつアドレス領域範囲Ｍ−００で見ると、アドレス領域内でのディスクデバイス４内部の同一のデータレジスタ４１に対して、それぞれ複数のアドレスＭ−００からＭ−０ｎ（なお、図２ではＭ−０５までを示している。）を対応させて、各々のアドレス信号のデコード結果信号でアドレス指定している。
【００１８】
そして、アドレス指定のためには論理和処理回路を介している。これはホストシーケンサがバス２上ではアドレスを同時には１つしか発生しないために、そのアドレスデコード結果信号の複数の論理和入力であっても、実際には、同時には１つしか入力されないために、アドレスデコード５０〜５ｎからの信号出力のうちどれか１つを選択する動作を行っている。
【００１９】
例えば、ＲＩＳＣ−ＣＰＵコントローラであるＣＰＵの場合には、アドレス範囲は物理デバイスに対応する物理アドレスとして００００００００ｈから１ＦＦＦＦＦＦＦｈを持っている。このうちのエリア５のアドレス範囲１４００００００ｈ〜１７ＦＦＦＦＦＦｈ中から複数のアドレスを選択使用して、ディスクデバイス４を接続する。
【００２０】
ここで、アドレスデコード対象となる複数アドレスを、アドレスデコード＃０（５０）に対応するものはＭ−００であって、具体的には１４００００００ｈ、アドレスデコード＃１（５１）に対応するものはＭ−０１であって、具体的には１４０００１００ｈ、アドレスデコード＃２（５２）に対応するものはＭ−０２であって、具体的には１４０００２００ｈ、アドレスデコード＃３（５３）に対応するものはＭ−０３であって、具体的には１４０００３００ｈ、アドレスデコード＃４（５４）に対応するものはＭ−０４であって、具体的には１４０００４００ｈ、アドレスデコード＃５（５５）に対応するものはＭ−０５であって、具体的には１４０００５００ｈ、アドレスデコード＃ｎ（５ｎ）に対応するＭ−０ｎまで、順次アドレスを割り当て配置していく。
【００２１】
図３は、本実施の形態のウエイト信号発生器の信号論理和合成回路の構成を示すブロック図である。
図３において、シーケンサ１内部には、ＣＰＵ１０がある。これは本実施の形態では並列パイプライン処理を利用することで高速処理を実現している、ＲＩＳＣ−ＣＰＵである。そのＣＰＵは、アドレス、データ、コントロールの各バスの各信号を出力しているもとである。
【００２２】
そして、このＣＰＵ１０は図示しないシステムクロック同期で動作しており、その制御回路がシステムクロック制御回路１１である。そしてこのシステムクロック制御回路１１は、ウエイト発生器３の出力であるウエイト信号を受けて入力している期間中は、クロック供給をホールドする。この結果、ＣＰＵ１０の処理ステップを一時停止させることになり、これでＣＰＵ１０での処理動作の同期ウエイト動作が実現される。
【００２３】
バス２、各アドレスデコード＃０〜＃ｋ（５０〜５ｋ）は上述したとおりである。そして各アドレスデコード＃０〜＃ｋ（５０〜５ｋ）の出力である選択信号ＣＳ＃０〜ＣＳ＃ｋは、図１で説明したように一方でディスクデバイス４に出力されるとともに、ウエイト発生器３に出力される。これがホストシーケンサ１の処理ステップ動作をクロック同期でウエイト待ちさせている。
【００２４】
シーケンサの出力バス信号をウエイト動作させて、各バス制御信号の現在状態をホールドすることによって、結果的にデバイスへのアクセス制御信号、アドレスデータ信号の発生時間幅を拡張している。この結果、高速なシステムクロックサイクル周期では応答できないより低速なクロックサイクルレートをアクセスに必要としているディスクデバイス４を、高速動作のシステムクロックのバス２に接続して、応答確実なアクセスを実現する。
【００２５】
次に、ウエイト発生器３の内部構成を説明する。図３において、３０はウエイト数セレクタ＃０、３１はウエイト数セレクタ＃１、３２はウエイト数セレクタ＃２、そして３ｋはウエイト数セレクタ＃ｋとしての各論理回路である。各々が、図示されるように各対応するアドレスデコーダ＃０〜＃ｋからの選択信号ＣＳ＃０〜ＣＳ＃ｋのうちの１つを入力され、それぞれウエイト信号＃０〜ウエイト信号＃ｋをウエイト信号合成回路１３３に出力する。
【００２６】
このとき、シーケンサのアドレスデバイス信号は同時には１アドレスしかバス２上には存在しないので、選択信号ＣＳ＃０〜ＣＳ＃ｋは、信号発生している場合でも、あるタイミングではどれかひとつだけが発生している。また、内部は通過時間を高速化するために、半クロックサイクル以内とするスイッチ選択回路構成にしてある。
【００２７】
また、ウエイト数セレクタ＃０〜＃ｋまでの各ウエイト数セレクタ回路は、それぞれ所定のウエイト数を発生する論理回路を内蔵していて、その構成は後述する図４において説明する。そして、各ウエイト数セレクタ回路出力のウエイト信号＃０〜＃ｋを出力する。
また、他方、ＣＳ＃０からＣＳ＃ｋの入力信号は、ＣＳ信号合成回路１３１でどれかの信号があったときに出力するために論理和をとっていて、グレイコードステートマシン１３２に出力する。
【００２８】
グレイコードステートマシン１３２は、ＣＳ信号合成回路１３１の出力論理和信号を入力されていて、通常ＣＳ＃０〜ＣＳ＃ｋの入力がないときには出力信号が偽なので、リセットが続行されたままでいる。そしてＣＳ＃０〜ＣＳ＃ｋの入力があるときには出力信号が真となり、リセットが解除されてステートが０からスタートしてｎまで、カウント進行される。そして各ステート信号＃０〜＃ｎは、上述の各ウエイト数セレクタ＃０〜＃ｋのそれぞれに出力される。そして、各ステート信号＃０〜＃ｋは各ステート進行をグレイコード値に割り当ててあり、各ステート間での遷移時にハザードの発生による誤動作を防止している。
【００２９】
各ウエイト数セレクタ＃０〜＃ｋはこの各ステート信号＃０〜＃ｎから必要なウエイト数をクロック同期で＃０から開始して所定のステート信号番号出力までを選ぶことによってウエイト数の時間期間を設定する。
【００３０】
ウエイト信号合成部１３３は、出力されてくるウエイト信号＃０〜＃ｋを論理和をとることにより、いずれかのウエイト信号＃０〜＃ｋが入力されたらウエイト信号として出力する合成回路である。１３４は同期出力遅延素子、いわゆるＤラッチである。これは出力信号が配線パターンを経由してシーケンサ１に出力されるために、一旦同期化して出力し、ノイズ誤動作を防止している。以上がウエイト発生器３の動作である。
【００３１】
次に図３における第＃ｋ番目のウエイト数セレクタ回路を説明する。
図４は、本実施の形態の第＃ｋ番目のウエイト数セレクタ回路の構成を示すブロック図である。この実施の形態では、ウエイト数セレクタ回路＃ｋ（３ｋ）における＃ｋ番目のウエイト数はグレイコードステートマシン１３２からのグレイコードの各ステート信号入力＃０〜＃ｎまでのうち、開始ステートのステート＃０から数えてＪ個、つまりステート信号＃０〜＃（Ｊ−１）は、対応する番号のステート信号＃０〜＃（Ｊ−１）の入力が順次切り替わって入ってくるのに対応して、入力あるとき１つづつ順次オンとされる。これでウエイト同期クロック数Ｊ個の時間期間の、ウエイト信号＃ｋを合成している。
【００３２】
なお、図４に示した第＃ｋ番目のウエイト数セレクタ回路は、ウエイト数セレクタ回路＃Ｋのウエイト数はグレイコードステップカウントのクロック数をＪと設定するときの回路例である。また、グレイコードステートマシン１３２は、通常はリセット状態で、デコード入力でステートカウントを開始する。また、ウエイト数セレクタ回路＃ｋ（３ｋ）の各ＳＷ＃０〜＃（Ｊ−１）は、各ステート信号の入力でオン、入力なしでオフとなる。
【００３３】
図５は、本実施の形態のディスクドライブ内部の各ブロック構成図である。
図５は、通常のデータキャッシュ付きディスクデバイスであって、その内部にはデータレジスタ４１を含むホストインターフェース部４１１、キャッシュコントロール部４２、データキャッシュのバッファメモリ４３、そしてディスク記録再生信号処理回路４５、ディスクドライブサーボおよび機構ユニット４４、そしてそれらをドライブ内部で制御コントロールするドライブ内蔵ＣＰＵ４６、そのＣＰＵ４６のドライブ内蔵バス４７をもつ。
【００３４】
ホストインターフェース部４１１は、ＡＴＡ／ＡＴＡＰＩ−４インターフェース標準に準拠するインターフェース機能を提供する論理回路であって、その内部にはデータレジスタ４１があってこれを選択指定して読み出し、書き込みを繰り返すことによって、ディスクドライブ４に内在するディスクメディアを読み出し書き込み動作する。
【００３５】
ディスクのコントロールステータスレジスタ群４１２は、ディスクドライブの各制御機能書き込み設定に使用する、フィーチャ機能コード設定レジスタ、転送するデータ量をセクタ個数で設定するセクタカウントレジスタ、そしてデータ転送するディスクデバイス選択および転送開始するセクタの論理ブロックアドレスを指定するレジスタ、実行コマンドコードを設定するコマンドレジスタがあり、割り込み指示やソフトリセット書き込みに使用するデバイスコントロールレジスタがある。
【００３６】
そしてディスクドライブの各状態機能読み出しモニタに使用する、エラーレジスタ、各状態コード読み出しに使用するセレクタカウントレジスタ、各サブコード読み出しに使用する論理ブロック指定アドレスレジスタ、ディスクデバイスの内部動作状態を読み出ししてディスクドライブの内部処理ステップを次のステップに進行させる機能を持つステータスレジスタ、そしてディスクデバイスの内部動作状態を読み出すがディスクドライブの内部処理ステップを次の処理ステップに進行させる機能をもたないアルタネートステータスレジスタが含まれる。
【００３７】
なお、ＡＴＡＰＩ−４標準に準拠するパケットインターフェースを使用するディスクデバイスでは、データ転送するディスクデバイス選択および転送開始するセクタの論理ブロックアドレスを指定するレジスタはバイトカウントハイおよびバイトカウントローの各レジスタと呼ばれる。そして実行コマンドコードを設定するコマンドレジスタにはパケットインターフェース動作を指定する特定コードのＡ０ｈが書き込まれ、実際のコマンドコード値はデータ転送開始の一番最初の６ワードに１２バイトパケットコマンドデータ値としてワードデータ値で書き込まれる。
【００３８】
インターフェース制御論理回路４１３は、これらのディスクコントロールステータスレジスタ群４１２を参照して、それに基づいて動作制御をドライブ内蔵ＣＰＵ４６、キャッシュコントロール部４２、ディスク記録再生信号処理回路４５、ディスクドライブサーボおよび機構ユニット４４の処理動作制御信号を供給する機能を持つ。
【００３９】
さらにここでは、パケットインターフェースを使用するディスクドライブの場合には、データレジスタへ繰り返し書き込み設定された最初の６ワードデータのパケットコマンドデータを順次制御論理回路内部に取り込んでコマンドコード、転送長さを解釈し、ディスク転送動作を制御する制御情報信号を提供する処理機能を持つ。
【００４０】
ディスクドライブサーボおよび機構ユニット４４は、内部に記録再生アンプ（ＲＥＣ／ＰＢＡｍｐ）回路４４０があって、ディスク媒体メディア上のトラックに配置されている各セクタに対して書き込み信号を供給し、読み出し信号を読み出し増幅する機能を有する。そして、回転ディスクメディア上のトラッキングサーボ情報を読み出してトラッキング制御およびディスクスピンドルサーボ制御を行う。また、メディア上のシーク動作およびトラックジャンプアクセス動作を行う。また各パワーサイクル制御と動作のタイマ制御を行う機能を有する。
【００４１】
なお、ディスク記録再生信号処理回路４５は、記録チャンネル（ｃｈ）コーディング回路４５２および再生エラー訂正回路４５１を持つ。記録チャンネル（ｃｈ）コーディング回路４５２は、メディアの記録トラックに書き込みを行うチャンネルコーディング符号化処理を施して記録データ信号をディスクドライブサーボおよび機構ユニット４４の記録再生アンプ回路４４０に供給する機能を持つ。再生エラー訂正回路４５１は、メディアからの再生データ信号を読み出して、ＥＣＣエラー訂正処理する機能を持っている。
【００４２】
キャッシュコントロール部４２は、コントローラ４２０、キャッシュコントロール部内部バス４２１があり、メモリからのデータ読みだし機能を提供するブロックとしては、読み出しメモリブロック選択回路４２３、メモリ読み出し回路４２４、読み出し切り換えスイッチＳＷ１（４２５）がある。そしてメモリへのデータ書き込み機能を提供するブロックとしては、書き込み切り換えスイッチＳＷ２（４２８）、メモリ書き込み回路４２７、書き込みメモリブロック選択回路４２６がある。
【００４３】
そして、キャッシュコントロール部４２は、メモリステートマネジメント回路４２９があり、メモリのリセットやリフレッシュ、あるいはアドレスデータのアクセス変換の各機能コントロールを制御する機能を提供する。そしてなおかつこれらの制御機能と読み出しメモリブロック選択回路４２３および書き込みメモリブロック選択回路４２６が共に並列ＦＩＦＯ処理によってメモリにデータの書き込み読み出し動作する際には、アクセス制御の調停機能を提供する。
【００４４】
また、データキャッシュバッファメモリ４３は、Ｄ−ＲＡＭ（Ｄｙｎａｍｉｃ−Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｔｙ）あるいはＳＤ−ＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄ−ＲＡＭ）、ＲＤＲＡＭ、マルチバンクＤＲＡＭなどのメモリ回路であって、その全メモリ容量はディスクセレクタの複数集合を１ブロックとする数個のメモリブロック＃０〜＃ｍとしてキャッシュコントロール部４２内部の読み出しメモリブロック選択回路４２３、書き込みメモリブロック選択回路４２６からそれぞれアドレス選択されてアクセス取り扱いされる。
【００４５】
読み出し切換スイッチＳＷ１（４２５）は、メモリからの読み出しデータ信号をホストインターフェース部４１１のデータレジスタ４１に読み出しデータとして供給する経路、あるいはディスク記録再生信号処理回路４５内部のｃｈコーディング回路４５２に書き込みデータ信号として供給する経路を選択切換えする機能を持つ。
【００４６】
書き込み切換スイッチＳＷ２（４２８）は、メモリへの書き込みデータ信号として、ホストインターフェース部４１１のデータレジスタ４１からの書き込みデータ信号の供給を受ける経路、あるいはディスク記録再生信号処理回路４５内部のエラー訂正回路４５１からディスクのデータ読み出し信号の供給を受ける経路を選択切換えする機能を持つ。
【００４７】
書き込みメモリブロック選択回路４２６は、コントローラ４２０の制御信号の指示により、書き込みメモリブロック選択回路４２６の発生するアクセス信号により、データキャッシュバッファメモリ４３のメモリブロック＃０からディスクの複数セクタ単位分のデータを１ブロック単位として、順次書き込んでいく。そして、各メモリブロックがフル状態になると、次のメモリブロックに切り替えて次のデータを順次書き込んでいく。
【００４８】
読み出しメモリブロック選択回路４２３は、コントローラ４２０の制御信号の指示により、読み出しメモリブロック選択回路４２３の発生するアクセス信号により、データキャッシュバッファメモリ４３のメモリブロック＃０からディスクの複数セクタ単位分のデータを１ブロック単位として、順次書き込んでいく。そして、各メモリブロックがカラの状態になると、次のメモリブロックに切り替えて次のデータを順次読み出していく。
【００４９】
ここで、バッファ内のデータ超過のオーバーフロー、データ枯渇のアンダーフローを防止するための制御手順をキャッシュコントロール部４２で実施する。
ディスクデバイス４全体としての読み出し動作の制御の際は、まずディスクドライブサーボおよび機構ユニット４４内の媒体メディアからの読み出しデータを、キャッシュコントロール部４２を経由してメモリブロック＃０から書き込んで、所定のデータがいくつかのメモリブロックに蓄えられたら、ホストインターフェース部４１１への読み出しデータ送り出しのために、読み出し動作を行う制御手順をキャッシュコントロール部４２で実施する。
【００５０】
ディスクデバイス４全体としての書き込み動作の制御の際は、まず、ホストインターフェース部４１１からの書き込みデータをキャッシュコントロール部４２を経由してメモリブロック＃０から書き込んで、所定のデータがいくつかのメモリブロックに蓄えられたら、送り出しのために、ディスクドライブサーボおよび機構ユニット４４内の媒体メディアへの書き込みデータを読み出し動作を行う制御手順をキャッシュコントロール部４２で実施する。以上がディスクデバイス４内部の構成、動作機能の説明である。
【００５１】
次に、図６〜図１２を用いて、同一のデータレジスタへのアクセスであっても異なるアクセスサイクル動作を必要とすることをディスクドライブ内部動作の各アクセス種類のクラス分けによって説明する。
図６は、本実施の形態のランダムアクセスクラスを示す図である。
図６でランダムアクセスでのドライブ内部動作の概略を説明する。図６において、ランダムアクセスクラスにおいては、媒体メディア上の各セクタデータは、セクタ指定によるセクタの読み出し書き込み６０、あるいはセクタのマルチプル指定によるセクタのマルチプル読み出し書き込み６１、あるいはキュー付きコマンドの集合を一括処理してキュー付き読み出し書き込み６２することによって、セクタ集合単位でのデータを読み出し書き込みの処理を行う。
【００５２】
具体的には、図６において、ホストシーケンサ１からのコマンド発行処理Ｓ１を受けて、ディスクから１セクタデータを読み出してディスキャッシュに転送する処理Ｓ２を実行する。次いで、キャッシュからデータを読み出しホストに転送する処理Ｓ３を行い、一連のデータ転送処理の実行を終了処理Ｓ４する。
【００５３】
図７は、本実施の形態のコマンド発行ステップを示す図である。
図７でディスクデバイス４へのコマンド発行動作を説明する。ホストインターフェース部４１１は、そのディスクコントロールステータスレジスタ群４１２に転送セクタ数、転送開始論理ブロックアドレス位置を指定するコマンドパラメタおよびコマンドコードを書き込み設定する。これは論理回路ハードウエアであって、ＡＴＡ／ＡＴＡＰＩ−４標準で明記されているように、一番低速なアクセスサイクルの、この場合約３００ｎｓより遅いレートで書き込みする必要がある。
【００５４】
これは、データ転送に占める占有時間が転送開始の一瞬だけであって速度の遅いことは比較的問題にならないためと、ＡＴＡ／ＡＴＡＰＩ−４標準の転送プロトコルが、改訂を重ねる毎に一層高度複雑となってきた標準の各ステートの場合分けを、内部ハードウエアのステートマシン論理回路動作で実現するため、ハードウエア応答速度が遅くても実現容易としているためである。
このレジスタ設定値はインターフェース制御シーケンス回路４１３でコード変換解釈されて、ドライブ内蔵ＣＰＵ４６が制御コマンド情報を読み出し参照してディスクドライブ全体をコマンドの指示に従って処理動作させる。
【００５５】
図８は、本実施の形態のディスクからキャッシュへのデータ転送ステップを示す図である。
図８に示すように、ディスクドライブサーボおよび機構ユニット４４において、発行されたコマンドの指示制御に従って、読み書きヘッド、または読み書き光ピックアップは、媒体メディア上の指定されたトラックの読み出し開始セクタ上にシークアクセスされて配置されトラッキングがかけられる。キャッシュコントロール部４２ではＳＷ２（４２８）はディスクからの読み出しデータをデータキャッシュバッファメモリ４３に書き込む経路に選択制御し、ＳＷ１（４２５）はデータキャッシュバッファメモリ４３からの読み出しデータをホストインターフェース部４１１のデータレジスタ４１に書き込む経路に選択制御する。
【００５６】
そしてまずディスクドライブサーボおよび機構ユニット４４内のディスクメディアから１セクタ、あるいは複数セクタ１集合分のデータを媒体メディアから読み出す。そしてメモリ書き込み回路４２７および書き込みメモリブロック選択回路４２６を介して、データキャッシュバッファメモリ４３に転送してディスクキャッシュバッファメモリ４３への書き込みを実行する。
【００５７】
その準備レディ状態をキャッシュコントロール部４２で検出してドライブ内部のホストインターフェース部４１１のディスクコントロールステータスレジスタ群４２１のステータスレジスタにコード情報信号を供給する。
【００５８】
ここで、ホストシーケンサ１はこのステータスレジスタのコード情報を見て、ディスクドライブ４がデータ読み出し完了したことを確認して、ディスクドライブ４内部のホストインターフェース部４１１のデータレジスタ４１からの繰り返しデータ読み出しを開始する。この動作を受けたホストインターフェース部４１１は、キャッシュコントロール部４２と連携して機能動作して、データキャッシュバッファメモリ４３から蓄えられたデータを読み出して、ホストインターフェース部４１１へと順次データを供給する図６の処理Ｓ３を実行する。
【００５９】
図９は、本実施の形態のキャッシュからホストへのデータ転送ステップを示す図である。
この一連の動作において、キャッシュコントロール部４２は、１コマンドで指定されたセクタデータ量分をデータキャッシュバッファメモリ４３に読み込んでから、データキャッシュバッファメモリ４３から読み出しメモリブロック選択回路４２３およびメモリ読み出し回路４２４を介して、データをホストインターフェース部４１１内のデータレジスタ４１に転送する。これは、後半のデータ転送動作はメモリと論理回路の間のデータ転送動作のみになる。つまり電子回路ブロック間のデータ転送なので非常に高速なアクセスに対応することが可能になる。インターフェース標準に採用されているＡＴＡ／ＡＴＡＰＩ−４標準における、最も高速な転送レートでのデータ転送が実行される。
【００６０】
ここではディスク媒体メディアの読み出しエラー発生の際の訂正処理動作による時間遅れもなく、トラック内セクタ読み出しエラー発生の際に複数回の繰り返し読み出しを試みてデータ回復を試みる動作も発生しないのでそれによる実行処理時間遅れもない。さらにはメモリに使用しているＤＲＡＭセルのデータ保持のためのリフレッシュ動作や、データキャッシュバッファメモリ４３内の各メモリブロック単位毎の複数メモリブロック間での書き込みメモリブロック選択先や読み出しメモリブロック選択先の切換処理動作とデータアクセス動作との調停動作による時間遅れも発生しない。
【００６１】
図１０は、本実施の形態のシーケンシャルアクセスクラスを示す図である。
図１０によってシーケンシャルアクセスでのドライブ内部動作の概略を説明する。図１０に示すように、シーケンシャルアクセスクラスにおいては、媒体メディア上の各セクタデータは、セクタ指定による開始セクタでのシーケンシャル読み出し書き込み１００、あるいはセクタのマルチプル指定によるセクタのシーケンシャル読み出し書き込み継続中１０１、あるいはキュー付きコマンドの集合を順次コマンド発行を受け付け処理してエンド終了端セクタでのシーケンシャル読み出し書き込み１０２を行って、データ転送を行うことを繰り返し処理することによって、セクタ集合単位でのデータを読み出し書き込みの連続転送処理を行う。
【００６２】
具体的には、図１０において、ホストシーケンサ１からのコマンド発行処理Ｓ１を受けて、ディスクから１セクタデータを読み出してディスキャッシュに転送する処理Ｓ２０を実行する。次いで、キャッシュからデータを読み出しホストに転送する処理Ｓ３０を行う。ここで、コマンドコードでディスクドライブ内部のデータキャッシュバッファメモリ４３内部の所定の複数メモリブロック以上にわたる一連のデータ転送処理の実行を要求するコマンドの場合においては、Ｓ２ｎからＳ３ｎのように、キャッシュコントロール部４２は各メモリブロック毎に一方で書き込みつつ他方で読み出しを行う、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）動作でデータ転送を行う。そしてＳ４で終了処理Ｓ４する。
【００６３】
図１１は、本実施の形態のコマンド発行ステップを示す図である。図１１のコマンド発行ステップは図７と同様であり、最も遅い転送レートである。
図１２は、本実施の形態のディスクからキャッシュへおよびキャッシュからホストへの並列データ転送ステップを示す図である。図１２にディスクからキャッシュへ、キャッシュからホストへのＦＩＦＯデータ転送ステップを示す。
【００６４】
ディスクドライブサーボおよび機構ユニット４４内のディスクメディアからデータを読み出す。そしてメモリ書き込み回路４２７および書き込みメモリブロック選択回路４２６を介して、データキャッシュバッファメモリ４３にデータを転送してディスクキャッシュバッファメモリ４３へ順次データの書き込みを実行する。
【００６５】
そして、データキャッシュバッファメモリ４３からデータを読み出しメモリブロック選択回路４２３およびメモリ読み出し回路４２４を介して、データをホストインターフェース部４１１内のデータレジスタ４１に転送する。
【００６６】
ここでデータキャッシュバッファメモリ４３からデータレジスタ４１へデータ読み出し転送しているときに、並行して、ディスク媒体メディアからデータを読み出してデータキャッシュバッファメモリ４３の各メモリブロックに順次データを書き込みして、次のシーケンシャルアクセスでのデータ転送に備える。
【００６７】
特に、ここで、この所定の複数メモリブロック以上にわたる一連のデータ量は、現在最も普及しているＡＴＡ／ＡＴＡＰＩ−４インターフェースのもつ１コマンドでの所定サイズ以上の転送データ量、この場合データキャッシュバッファメモリ４３内の複数メモリブロック単位データを超えるとき、４ｋバイトないし最大転送指定量の１２８ｋバイトの転送指定で複数回以上のデータアクセスを受けたときをシーケンシャルアクセスと判断して、データキャッシュバッファメモリ４３からデータを読み出すのと一緒に、ディスク媒体メディアの各セクタからデータを読み出してデータキャッシュバッファメモリ４３に書き込み処理して、次のシーケンシャルなデータ転送に予め備えて良い。つまり、コマンド発行をシーケンシャルアクセスと判別してＦＩＦＯ動作に入って良い。
【００６８】
これによって、データキャッシュバッファメモリ４３からデータレジスタ４１へデータ転送している最中に、次のコマンドの発行によるデータ転送を予想してディスク媒体メディアからデータキャッシュバッファメモリ４３にデータ転送して備える。
【００６９】
これは今の読み出したデータセレクタの最終セクタの次の論理ブロックアドレス位置のセクタに次のコマンドの読み出し開始セクタが配置されていると想定して、データセクタ連続性を利用してデータセクタを順次連続して読み出していくことにより、読み出しを途切れさせて１回転以上、通常５４００回転／秒のディスクでは１回転は１１ミリ秒かかる、ディスク回転待ちするデータ転送に無効な不連続時間発生を、短縮するためである。
【００７０】
次のコマンド発行からデータをデータキャッシュバッファメモリ４３に転送する処理時間が短縮され、コマンド発行からデータ転送レディになるまでの時間、コマンドオーバーヘッド時間の大きな部分が短縮され、結果的により高速なディスクドライブとのシーケンシャルなアクセスが達成される。
【００７１】
ディスク媒体メディアからデータキャッシュバッファメモリ４３への転送は、データキャッシュバッファメモリ４３からデータレジスタ４１へのデータ転送よりも転送レートが高いので先読みしてホストインターフェース部４１１での読み出しを待つことができる。データキャッシュバッファメモリ４３のサイズはシーケンシャルアクセスに適したディスクドライブでは回転ディスクトラックの数周回分のセクタデータをキャッシュすることができている。
【００７２】
しかしここで通常は、ディスクメディアからの読み出しにはエラー訂正、トラックジャンプ、ヘッド切換などの動作によりデータ転送時間遅延、不連続の発生する要因が存在し、さらにはメモリ自体のＤＲＡＭとしての各種リフレッシュ動作、ＦＩＦＯ動作のためにメモリブロック切換動作が存在していることによるデータ転送時間不連続の発生する要因が存在する。メモリ自身の持つ周期的なリフレッシュマネジメント動作とデータアクセス動作との調停動作による処理時間遅れも存在する。
【００７３】
シーケンシャルデータアクセスを継続していくとこれらの時間不連続要因が発生し、このために予め先読みしていたバッファデータを読み尽くしてしまうことが発生する。特にこれはディスクドライブに高速にデータを入出力する際に発生する。これは各セクタ単位毎にデータ転送をしているときに、次のセクタデータ転送に準備レディができなくて、次のデータ転送が始められないことで転送がストップする。再びＦＩＦＯ動作を開始してシーケンシャルアクセスを継続するためには、キャッシュコントローラ４２０のソフトウエア制御に入って回復動作をし、その後にキャッシュコントロール部４２のハードウエアで転送を再開する処理動作を行ったあとでディスクの次の読み出し開始セクタを読み出す位置に到達するまでヘッドが回転待ちを行うことになってしまい、時間遅延損失が著しく大きいので、むしろシーケンシャルアクセスの場合には、転送レートを高く維持するためには、ランダムアクセスで使用するアクセスサイクルより遅いサイクルレートでアクセスしてバッファ内部のデータが常に枯渇しないようにする必要がある。
【００７４】
この限界には、ＡＴＡ／ＡＴＡＰＩ−４標準で規定された最高レートサイクルよりも数倍遅く、例えば３０ＭＨｚサイクル動作のシーケンサでランダムアクセスでは１６Ｍバイト／秒（つまり８Ｍワード／秒）転送可能なディスクデバイスが、シーケンシャルなアクセスでは７Ｍバイト／秒（つまり３．５Ｍワード／秒）を平均転送レートとして転送する性能保証するのが限界となる場合がある。
【００７５】
以上のことから、シーケンシャルアクセスでのデータ読み出しあるいは書き込みを継続していくときには、ランダムアクセスの場合よりも比較的低速にアクセスするべき必要がある。
【００７６】
ここで、最も高レートサイクルなランダムアクセス読み出し動作の場合は、アドレスデコード＃０と＃１をアドレス領域Ｍ−００にアドレス指定してデータレジスタ４１にアクセスを行う。
【００７７】
中程度の速度サイクルのデータ転送レートであるシーケンシャルアクセスの場合には、アドレスデコード＃３と＃４をアドレス領域Ｍ−００にアドレス指定してデータレジスタ４１にアクセスを行う。
【００７８】
最も遅い必要のあるレジスタ設定アクセスでは、アドレスデコード＃５を指定してアクセスする。ここでレジスタ設定のアクセスでデータレジスタ４１にアクセスする場合としては、ＡＴＡ／ＡＴＡＰＩ−４標準のうち、パケットインターフェースを採用しているデバイスの場合であり、パケットコマンド発行ののち最初の６ワード、つまり１２バイトのパケットコマンドデータをデータレジスタ４１に書き込む場合である。これはディスクドライブ４に書き込んでいるのではなくて、ホストインターフェース部４１１内部のインターフェース制御論理回路４１３で書き込まれたパケットコマンドデータをコード変換解釈しているので、レジスタ設定と同様の最も低速なアクセス動作とされる。
【００７９】
図１３は、本実施の形態のタイミングチャートである。
以上の動作を図１３のタイミングチャートで見ると、図１３Ｂおよび図１３Ｃに示すランダムアクセス読み出し書き込みタイミングとしては、バスサイクルが３０ｎｓ，３３ＭＨｚの場合には、２ウエイトをシーケンサにもたらし、その結果、ホストシーケンサ１は、図１３Ａに示すクロックに対して読み出しバス信号の３クロック後でデータを読み出す処理動作を実行する。この２ウエイトはランダムアクセスレートであり、ＡＴＡ／ＡＴＡＰＩ−４での最も高いサイクルレートとなる。実行サイクルレートは、読み出し信号アサート（ローアクティブ）期間は９０ｎｓであり、ネゲートを含めたトータルの１読み出しサイクルは１２０ｎｓである。
【００８０】
また、図１３Ｄに示すシーケンシャル読み出しタイミングは３ウエイトの発生をホストシーケンサ１にもたらし、その結果、ホストシーケンサ１は、図１３Ａに示すクロックに対して読み出しバス信号の４クロック後でデータを読み出す処理動作を実行する。この３ウエイトはシーケンシャルアクセスに必要な中程度に遅くしたレートであり、ＡＴＡ／ＡＴＡＰＩ−４での最も高いサイクルレートよりは低い。実行サイクルレートは、読み出し信号アサート（ローアクティブ）期間は１２０ｎｓであり、ネゲートを含めたトータルの１読み出しサイクルは１５０ｎｓとしている。
【００８１】
さらに、図１３Ｅに示すシーケンシャル書き込みレートは、シーケンシャル読み出しレートよりも遅く、これに適合させるためにさらに図１３Ａに示すクロックに対して１クロックの遅延ディレーを付加させる。つまり、シーケンシャル書き込みタイミングは４ウエイトの発生をホストシーケンサ１にもたらし、その結果、ホストシーケンサ１は、書き込みバス信号の５クロック後でデータを書き込み処理動作を実行する。この４ウエイトはシーケンシャル書き込みアクセスに必要な程度に遅くしたレートであり、ＡＴＡ／ＡＴＡＰＩ−４での最も高いサイクルレートよりは低い。この場合、実行サイクルレートは、書き込み信号アサート（ローアクティブ）期間は、１５０ｎｓであり、ネゲートを含めたトータルの１読み出しサイクルは１８０ｎｓとしている。
【００８２】
そして一番遅い必要のある図１３Ｆに示すレジスタ設定タイミングとして、パケットインターフェースを採用している場合にコマンドパケットデータをデータレジスタ４１に書き込みする場合があり、本実施の形態の場合は、この書き込みタイミングとしては、図１３Ａに示すクロックに対して９クロックのウエイト（８ウエイト）をシーケンサにもたらし、その結果、ホストシーケンサ１は、読み出しバス信号の１０クロック後でデータを読み出す処理動作を実行する。この８ウエイトはレジスタ設定アクセスレートであり、ＡＴＡ／ＡＴＡＰＩ−４標準では最も低いサイクルレートとなる。実行サイクルレートは、書き込み信号アサート（ローアクティブ）期間は２７０ｎｓであり、ネゲートを含めたトータルの１読み出しサイクルは３００ｎｓである。
【００８３】
図１４は、本実施の形態のホストシーケンサがＲＩＳＣ−ＣＰＵなどのパイプライン処理ＣＰＵでバス幅がディスクドライブのデータ幅よりも２ｎ倍広いせいで競合の発生する場合のタイミングチャートである。
なお、図１４は、例えば、ディスクドライブの１６ビットのデータ幅に対し、ＣＰＵ内部のデータレジスタが２倍の３２ビットのデータ幅である場合に適用される。
【００８４】
ここで特に、ホストシーケンサ１内部のＣＰＵとしてＲＩＳＣ−ＣＰＵなどのパイプライン処理を使用しているＣＰＵの場合、ＣＰＵ内部の汎用レジスタ長さがディスクドライブのインターフェースの１回の書き込みで取り扱うデータ単位の２ｍ倍のレジスタ幅である場合であって、この場合のＡＴＡ／ＡＴＡＰＩ−４準拠のディスクデバイスの場合は、１６ビットワード単位であって、ホストシーケンサ１のＣＰＵのレジスタ幅が３２ビットあるいは６４ビット幅の場合、命令長さはＲＩＳＣ−ＣＰＵでは各命令で同一コード長であって、一度のアクセスで２ｍ個の命令を取得して２ｍ回利用する構造になっている。
【００８５】
例えば、５段パイプライン処理の場合、インストラクションフェッチ、インストラクションデコード、実行、メモリアクセス、実行結果のレジスタへの書き戻しの５ステージがある。
【００８６】
ここで、このメモリアクセスはＣＰＵにとってのデータアクセス読み書き動作であって、そしてインストラクションフェッチとデータアクセス読み出し書き込みは同じバスを使用するために競合する。このため自動的に図１４Ｂの前半に示すようにスプリット引き延ばしをする。つまり、最初（奇数回）のアクセスはＣＰＵ内部のパイプライン処理回路でのデータバスのアクセス競合で自動的に図１４Ｂの前半に示すようにスプリット引き延ばしをする。特にＡＴＡ／ＡＴＡＰＩ−４準拠のインターフェースを採用するディスクデバイス４へのアクセスには１６ビットバスを使用するので、スプリット引き延ばしは図１４Ａに示すクロックに対して２クロック発生してしまう。
【００８７】
しかし、ここで、２ｍ個の命令を１度のアクセスで取得しているので、２回目以降２ｍ回までの命令実行ではインストラクションフェッチのアクセスは発生しないので、メモリアクセスと競合しない。このため、ディスクデバイス４にとっては、アクセスサイクルが短縮される。つまり、次の（偶数回）のアクセスはＣＰＵ内部のパイプライン処理回路でのデータバスのアクセス競合が発生しないので、図１４Ｂの後半に示すようにスプリット引き延ばしは発生しない。そして、スプリットなしで前半に比べて短くなる制御信号タイミングの方を基準タイミングとしてウエイト数を設定する。
【００８８】
ここで、２ｍ個の命令を取得できる場合の個数２ｍとは、例えば、１６ビット長のインストラクション命令コードを使用しているＣＰＵでは、３２ビットバス幅を持っているＣＰＵでは一度のアクセスで２個、６４ビットバス幅を持っているＣＰＵでは一度のアクセスで４個取得できる。
【００８９】
そして２ｍ回周期サイクル毎に先頭の読み出し書き込みアクセスでは、今回のメモリアクセスの発生と次のインストラクションフェッチとの競合の発生のために、１実行処理ステップ分のスプリット実行引き延ばし遅延が発生する。そのサイクルの２回目以降は取り込んだ命令を順次利用するだけなのでバスの競合が発生しない。これによって、読み出し書き込みの際のバス信号のアサート（ローアクティブ）期間は２クロック短縮される。これは読み出し書き込み制御信号の発生サイクルが不揃いになってしまうことを意味する。これはディスクデバイス４にとっては短い方のサイクルを最短サイクルとして、それ以上でアクセスされるべきであるから、実際はｍ回数に１回、最初のアクセスでは２クロック長くかかってしまう冗長時間が発生していることになる。
【００９０】
ここで、特に、アクセス順番で異なるアドレスデコードを利用して、アクセス信号のサイクル周期を結果的に均一に合わせてアクセスサイクルの冗長時間を削減する。
【００９１】
ランダムアクセスにおいては、ｍサイクル周期毎の最初のアクセスにおいて、アドレスデコード＃０を使用して最初の読み出し書き込みをし、次からそのｍサイクルの最終回まではアドレスデコード＃１を使用して、ウエイト発生器３で冗長時間分、この場合は２クロック長くウエイトを発生させて、結果的に読み出し書き込みの制御信号アサート（ローアクティブ）期間を各回均一に揃える。これによって、必要最小限のアサート（ローアクティブ）期間に制御信号発生期間を揃える。
【００９２】
シーケンシャルアクセスにおいては、ｍサイクル周期毎の最初のアクセスにおいて、アドレスデコード＃２を使用して最初の読み出し書き込みをし、次からそのｍサイクルの最終回まではアドレスデコード＃３を使用して、ウエイト発生器３で冗長時間分、この場合は２クロック長くウエイトを発生させて、結果的に読み出し書き込みの制御信号アサート（ローアクティブ）期間を各回均一に揃えることとする。これによって、シーケンシャルアクセスに必要最小限のアサート（ローアクティブ）期間に制御信号発生期間を揃えて、冗長時間を削減する。
【００９３】
【発明の効果】
本発明によれば、１つのデバイスに対して複数のアドレスの中から適する速度でアクセスするアドレスを選択すれば、低速から高速までの各種リムーバブルストレージデバイスに対して適したレートでアクセスできるという効果を奏する。
【００９４】
また、本発明によれば、機能設定などのアクセスレート周期を設定調節する処理作業オーバーヘッドが減少し、制御ソフトウエアを使用するホストからのアドレス選択だけでアクセス速度を変更できるので、転送開始中に切換え選択できるため、デバイスへのアクセス速度周期を切換え調節する設定回路が不要になるという効果を奏する。
【００９５】
また、本発明によれば、ＲＩＳＣ−ＣＰＵなどのパイプライン処理シーケンサ制御部を使用する際に、アクセスの順番で指定するアドレスを別にすることによって、発生するウエイト信号を別として、結果的に均一な読み書きのアクセス信号を生成させて、ディスクドライブアクセスに冗長時間の削減された最適なアクセス制御信号を得ることができるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の実施の形態のディスクドライブインターフェース装置の構成を示すブロック図である。
【図２】本発明の実施の形態のアドレスマップを示す図である。
【図３】本発明の実施の形態のウエイト信号発生器の信号論理合成回路部の構成を示すブロック図である。
【図４】本発明の実施の形態の第＃ｋ番目のウエイト数セレクタ回路の構成を示すブロック図である。
【図５】本発明の実施の形態のディスクドライブ内部の構成を示すブロック図である。
【図６】本発明の実施の形態のランダムアクセスクラスを示す図である。
【図７】本発明の実施の形態のコマンド発行ステップを示す図である。
【図８】本発明の実施の形態のディスクからキャッシュへのデータ転送ステップを示す図である。
【図９】本発明の実施の形態のキャッシュからホストへのデータ転送ステップを示す図である。
【図１０】本発明の実施の形態のシーケンシャルアクセスクラスを示す図である。
【図１１】本発明の実施の形態のコマンド発行ステップを示す図である。
【図１２】本発明の実施の形態のディスクからキャッシュへおよびキャッシュからホストへの並列データ転送ステップを示す図である。
【図１３】本発明の実施の形態のタイミングチャートを示す図であり、図１３Ａはクロック、図１３Ｂはランダムアクセス読み出しタイミング、図１３Ｃはランダムアクセス書き込みタイミング、図１３Ｄはシーケンシャルアクセス読み出しタイミング、図１３Ｅはシーケンシャルアクセス書き込みタイミング、図１３Ｆはレジスタ設定タイミングである。
【図１４】本発明の実施の形態のホストのシーケンサがパイプライン処理ＣＰＵの場合のタイミングチャートを示す図であり、図１４Ａはクロック、図１４Ｂはシーケンシャルアクセス読み出しタイミングである。
【符号の説明】
１……シーケンサ、２……バス、３……ウエイト発生器、４……ディスクドライブ、５……アドレスデコード、１０……ＣＰＵ、１１……システムクロック制御回路、３０〜３ｋ……ウエイト数セレクタ＃０〜＃ｋ、４１……データレジスタ、４２……キャッシュコントロール部、４３……データキャッシュバッファメモリ、４４……ディスクドライブサーボおよび機構ユニット、４６……ドライブ内蔵ＣＰＵ、５０〜５ｋ……アドレスデコード＃０〜＃ｋ、６０……セクタの読み出し書き込み、６１……セクタのマルチプル読み出し書き込み、６２……キュー付き読み出し書き込み、１００……シーケンシャル読み出し書き込みの開始セクタ、１０１……セクタのシーケンシャル読み出し書き込み継続中、１０２……シーケンシャル読み出し書き込みのエンド終了端、１３１……ＣＳ信号合成回路、１３２……グレイコードステートマシン、１３３……ウエイト信号合成回路、１３４……同期出力遅延素子、４１１……ホストインターフェース部、４１２……ディスクコントロールステータスレジスタ群、４１３……インターフェース制御論理回路、４２０……コントローラ、４２１……バス、４２３……読み出しメモリブロック選択回路、４２４……メモリ読み出し回路、４２５……ＳＷ１、４２６……書き込みメモリブロック選択回路、４２７……メモリ書き込み回路、４２８……ＳＷ２、４２９……メモリステートマネジメント回路、４４０……記録再生アンプ回路、４５１……エラー訂正回路、４５２……チャンネルコーディング回路
【図１】
0004379948.tif 000002
【図２】
0004379948.tif 000003
【図３】
0004379948.tif 000004
【図４】
0004379948.tif 000005
【図５】
0004379948.tif 000006
【図６】
0004379948.tif 000007
【図７】
0004379948.tif 000008
【図８】
0004379948.tif 000009
【図９】
0004379948.tif 000010
【図１０】
0004379948.tif 000011
【図１１】
0004379948.tif 000012
【図１２】
0004379948.tif 000013
【図１３】
0004379948.tif 000014
【図１４】
0004379948.tif 000015