(57)【特許請求の範囲】
【請求項１】
データ蓄積媒体上に記録された複数のデータのフレームを含む少なくとも１つのデータトラックを有するデータ蓄積媒体から外部装置へデータを転送するのに使用する復号器であって、
少なくとも1つのデータのフレームを受信し、データのフレームに関する少なくとも1つの特徴を決定し、データのフレームに関する少なくとも1つの特徴に基づいてデータのフレームにタグデータを付加し、タグが付されたデータのフレームを出力するように成された入力手段と、
入力手段に結合し且つ、入力手段からのタグが付されたデータのフレームを受信し、タグが付されたデータのフレームを蓄積し、その後に、タグが付されたデータのフレームを出力するように成されたフレーム管理手段と、
フレーム管理手段に結合し且つ、フレーム管理手段からのタグが付されたデータのフレームを受信し、且つ、タグが付されたデータのフレームを、タグが付されたデータのフレーム内のタグデータに基づいて外部装置へ供給するように成され、前記タグデータは、送信タグ、スキップタグ、ポーズタグ及び、停止タグを有するタグの組の少なくとも1つから選択される出力手段と
を有する復号器。
【請求項２】
少なくとも1つの特徴が、データのフレームは、一度書込まれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからの主領域フレーム、可変長パケットの書かれたトラックからの主領域フレーム及び、可変長パケットの書かれたトラックからの有効なリンク領域フレームを有するデータのフレームの組の少なくとも1つから選択された、と認識するときには、入力手段は、更に、送信タグをデータのフレームに加えるように成される請求項１記載の復号器。
【請求項３】
少なくとも1つの特徴が、データのフレームは、固定長パケットの書かれたトラックからのリンク領域フレームである、と認識するときには、入力手段は、更に、スキップタグをデータのフレームに加えるように成される請求項１記載の復号器。
【請求項４】
少なくとも1つの特徴が、フレームのデータは、可変長パケットの書かれたトラックからのリンク領域フレームである、と認識するときには、入力手段は、更に、ポーズタグをデータのフレームに加えるように成される請求項１記載の復号器。
【請求項５】
少なくとも1つの特徴が、データのフレームは、有効なデータのフレームではない、と認識するときには、入力手段は、更に、停止タグをデータのフレームに加えるように成される請求項１記載の復号器。
【請求項６】
少なくとも1つの特徴が、データのフレームは、一度書込まれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからの主領域フレーム、可変長パケットの書かれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからのリンク領域フレーム、及び、可変長パケットの書かれたトラックからのリンク領域フレームを有するデータのフレームの組の少なくとも1つから選択されていない、と認識するときには、入力手段は、更に、ポーズタグをデータのフレームに加えるように成される請求項１記載の復号器。
【請求項７】
タグが付加されたフレームに関連したタグデータが送信タグの場合にのみ、出力手段は、更に、タグが付加されたデータのフレームを外部装置へ供給するように成される請求項１記載の復号器。
【請求項８】
データのフレームは、第1のフィールドにデータを有する複数のフィールドを有し、且つ、入力手段はタグデータを生成するために第1のフィールド内のデータを変更するように更に成される請求項1記載の復号器。
【請求項９】
コンピュータシステムで使用される蓄積装置であって、サーボ組立体と、サーボ組立体上に配置され、且つ、複数のデータのフレームを有する少なくとも１つのデータのトラックが記録された蓄積媒体と、
少なくともデータのトラックの一部分を読み出し、且つ読み出し信号を出力するように機能的に成された読み出し組立体と、
読み出し組立体に結合し、且つ、読み出し信号を受信し且つ、読み出し信号の少なくとも一部分に基づいて、少なくとも1つのデータのフレームを出力するように成されたデータエンジンと、
データエンジンに結合し、且つ、データのフレームを受信し、データのフレームに関するある特徴を決定し、データのフレームに関する少なくとも1つの特徴に基づいてデータのフレームにタグデータを付加し、タグの付加されたデータのフレームを出力する入力手段と、
入力手段に結合し、且つ、入力手段からタグの付加されたデータのフレームを受信し、タグの付加されたデータのフレームを蓄積し、且つ、続いてタグの付加されたデータのフレームを出力するように成されたフレーム管理手段と、
フレーム管理手段に結合し、且つ、フレーム管理手段からタグの付加されたデータのフレームを受信し且つ、タグの付加されたデータのフレーム内のタグデータに基づいて、外部装置へタグの付加されたデータのフレームを供給するように成され、前記タグデータは、送信タグ、スキップタグ、ポーズタグ及び、停止タグを有するタグの少なくとも１つから選択する出力手段と
を有する蓄積装置。
【請求項１０】
データ蓄積媒体から外部装置へデータを転送するのに使用する方法であって、
複数のデータのフレームを有する少なくとも1つのデータトラックを有するデータ蓄積媒体から少なくとも1つのデータのフレーム読み出すステップと、
データのフレームに関するある特徴を決定するステップと、データのフレームに関する少なくとも１つの特徴に基づいて、データのフレームにタグデータを付加するステップと、
タグの付加されたデータのフレーム内のタグデータに基づいて外部装置へ、タグの付加されたデータのフレームを供給するステップとを有し、前記タグデータは、送信タグ、スキップタグ、ポーズタグ及び、停止タグを有するタグの少なくとも１つから選択する方法。
【請求項１１】
少なくとも1つの特徴が、データのフレームは、一度書込まれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからの主領域フレーム、可変長パケットの書かれたトラックからの主領域フレーム、及び、可変長パケットの書かれたトラックからの有効なリンク領域フレームを有するデータのフレームの組の少なくとも1つから選択された、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームに送信タグを付加することを更に含む請求項１０記載の方法。
【請求項１２】
少なくとも1つの特徴が、データのフレームは、固定長パケットの書かれたトラックからのリンク領域フレーム又は、スリップフレームである、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームにスキップタグを付加することを更に含む請求項１０記載の方法。
【請求項１３】
少なくとも1つの特徴が、データのフレームは、可変長パケットの書かれたトラックからのリンク領域フレームである、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームにポーズタグを付加することを更に含む請求項１０記載の方法。
【請求項１４】
少なくとも1つの特徴が、データのフレームは、有効なデータのフレームではない、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームに停止タグを付加することを更に含む請求項１０記載の方法。
【請求項１５】
少なくとも1つの特徴が、データのフレームは、一度書込まれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからの主領域フレーム、可変長パケットの書かれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからのリンク領域フレーム、及び、可変長パケットの書かれたトラックからのリンク領域フレームを有するデータのフレームの組の少なくとも1つから選択されていない、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームにポーズタグを付加することを更に含む請求項１０記載の方法。
【請求項１６】
タグの付加されたデータのフレームを外部装置へ供給するステップは、タグの付加されたフレームに関連したタグデータが送信タグである場合にのみ、外部装置へ、タグの付加されたデータのフレームを供給することを更に含む請求項１０記載の方法。
【請求項１７】
タグデータをデータのフレームに付加するステップは、タグデータを生成するために、データのフレーム内のデータを変更することを更に含む請求項１０記載の方法。
【請求項１８】
データのフレームは、一度書込まれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからの主領域フレーム、可変長パケットの書かれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからのリンク領域フレーム、及び、可変長パケットの書かれたトラックからのリンク領域フレームを有するデータのフレームの組の少なくとも1つから選択されてるかどうかを決定するために、データのフレームに関するある特徴を決定するステップは、データ蓄積媒体の選択された部分からデータを読み出すことを更に含む請求項１０記載の方法。
【発明の詳細な説明】
【０００１】
発明の背景
本発明は、一般的には、データ蓄積装置に関し、特に、蓄積装置から外部装置へのデータ転送に関連する処理要求を非常に減少するのに採用され得る方法と配置に関する。
【０００２】
例えば、コンパクトディスク（ＣＤ）やディジタルバーサタイルディスク（ＤＶＤ）等の光ディスクは、非磁気的なデータ蓄積媒体であり、比較的大きな量のディジタル情報が、媒体の面に微小なくぼみを作るレーザビームを用いて蓄積される。蓄積データは低パワーレーザを用いてくぼみの存在又は、不存在を検出することで読み出される。
【０００３】
現在は、多くの異なる形式の光ディスクシステム（即ち、光ディスク、フォーマット、装置）が利用できる。現在のパーソナルコンピュータ（ＰＣ）で最も一般的に使用されてる光ディスクシステムは、コンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）である。ＣＤ−ＲＯＭは、一度データが蓄積されＣＤ−ＲＯＭドライブを用いて何度でも読み出せる読み出し専用光蓄積媒体を提供する。ＣＤ−ＲＯＭディスクは、ディジタル画像、オーディオ，ビデオ、及び／又はテキストデータの混在したストリームを蓄積することができる。ディジタルバーサタイルディスク読み出し専用メモリ（ＤＶＤ―ＲＯＭ）は、更なる容量を有する。将来は、ＤＶＤ−ＲＯＭも更に高速化される。他の進んだ光ディスクシステムでは、ユーザが、光ディスクにデータを書き込むことができる。例として、コンパクトディスクレコーダブル（ＣＤ−Ｒ）システムでは、ユーザーが光ディスクの各部に一度だけデータを書き込むことができ、一方、コンパクトディスクリライダブル（ＣＤ−Ｗ）システムでは、ユーザーが光ディスクの各部に何度でもデータを書き込むことができる。他の有名な光ディスクシステムは、光磁気コンパクトディスク（ＣＤ−ＭＯ）を含み、何度でも再書込みできる。
【０００４】
これらの例の光ディスクシステムからのデータの読み出しは、典型的には、ＰＣプロセッサ又は、ホストプロセッサが、光ディスクからデータのブロックが走査され、周辺バスを介してホストプロセッサ又は、主記憶に転送する要求を行うことにより開始する。データのブロックは典型的には、データの複数の小ブロック又は、フレームを有する。これらのデータのフレームは、典型的には、光ディスクドライブ内で、前処理され、論理的にグループに集められ、周辺バスを介してホストプロセッサへ送られる。例によれば、ＰＣで使用される例示的な１６ＸＣＤ−ＲＯＭドライブは、典型的には、取り出したデータを前処理するディジタル信号処理配置と、典型的には、１２８キロバイトのダイナミックランダムアクセスメモリ（ＤＲＡＭ）の中に、単一バーストでフレームのグループをホストプロセッサに送る前に、２から３キロバイト長のデータのフレームを蓄積するバッファ管理配置を有する。
【０００５】
光ディスクドライブ設計者が直面する問題の1つは、光ディスクの形式／フォーマットによりデータのフレームには異なる形式があり，又、ある状況では、これらの全フレームはホストプロセッサに転送される必要が無いということである。
【０００６】
例えば、ＣＤ−ＲＯＭディスクは、典型的には、ある”リードイン”及び、”リードアウト”領域に関連したデータフレームを有する。これらの”リード領域フレーム”は、適切に位置決めし、光ディスクに記録されたトラックを読み出し、また、ディスクの許された境界内に待機するために光ディスクドライブ内で使用するテーブルオブコンテンツ（ＴＯＣ）記述子を有する。更なる例では、ＣＤ−Ｒ、ＣＤ−ＲＷ及び、他の同様な記録可能光ディスクは、典型的には、後続するデータの書き込みブロックとの間に記録される複数の”リンク領域フレーム”を採用する。これらのリンク領域フレームも、適切に位置決めし、トラックに記録されたデータのブロックを読み出すために光ディスクドライブ内で使用される。
【０００７】
したがって、光ディスクドライブは、データのブロック内のどのフレームがホストプロセッサに転送されるべきであり、また、どのフレームがスキップされ、又は、無視され及び、ホストプロセッサに転送されないかを決定する能力があることが望ましい。どのフレームがホストプロセッサに転送されるべきであるかを決定するタスクは、典型的には、例えばファームウェアを用いた実時間ファームウェアプログラムに応答するプロセッサ等の、更に各データのフレームを処理又は、試験できる、バッファマネージャ内で行われる。このフレーム毎の試験処理は、バッファ管理配置及び、時々他の処理資源にも、負荷が重い傾向がある。更に新世代の光ディスクドライブは、現行の光ディスクフォーマットの変更を採用する、又は、光ディスクが読み出される速度が上昇する可能性がある。したがって、従来のファームウェアによるプロセッサの処理能力では、将来必要な処理要求や必要な時間制約を維持できなくなる可能性がある。
【０００８】
光ディスクドライブは、通常は、異なる光ディスクフォーマット／形式と互換性があることが望ましいことを考慮すると、光ディスクドライブでの処理負荷を効果的に減少し、且つ、光ディスクドライブからホストプロセッサへフレームを効果的に転送する方法及び、配置が必要である。
【０００９】
発明の概要
本発明による方法及び、配置は、記録媒体に記録されたデータに関するある知られた及び／又は、決定できる特徴を考慮し且つ、各データのフレームにタグデータを選択的に付加することことにより、蓄積装置から外部装置へのデータのフレームの転送を能率的にすることで、データ蓄積装置の処理負荷を非常に減少する。そして、タグデータは、例えば、動作が蓄積媒体内でデータのフレームを処理するのにどのような動作が要求されるか等の、各データのフレームの特性を決定するのに使用される。ディジタル論理で実現できるこの”タグの付加”機構は、データのフレームのかなりの部分に対するオーバーヘッドの処理を軽減する傾向にある。それゆえ、蓄積装置に関連した待ち時間は、同様に減少される。
【００１０】
本発明のある特徴に従って、本発明の種々の実施例は、光ディスクドライブ、磁気ドライブ／テープ，及び、同様なデータ蓄積装置を含む種々のデータ蓄積装置で使用できる。
【００１１】
これを考慮し、上述の要求等は、本発明のある実施例による、データ蓄積媒体から外部装置へデータを転送するのに使用する復号器により達成される。データ蓄積媒体は、典型的には、少なくとも１つのデータトラックを有する。各データトラック内には、複数の小ブロック又は、データのフレームがある。復号器は、入力配置、フレーム管理配置及び、出力配置を含む。入力配置は、少なくとも１つのデータのフレームを受信するように成される。入力配置は、データのフレームに関するある特徴を決定でき、且つ、少なくとも１つのこれらの特徴に基づいて、データのフレームにデータタグを付加することができる。データのフレームにタグが付加されると、入力配置は、データタグを付加されたデータのフレームをフレーム管理配置に供給する。フレーム管理配置は、タグが付加されたデータのフレームを受信しタグが付加されたデータのフレームを蓄積し、そして、続いて、タグが付加されたデータのフレームを出力配置へ供給する。出力配置は、タグが付加されたデータのフレームを受信し、そして、タグが付加されたデータのフレームに関連したタグデータに基づいて、タグが付加されたデータのフレームを外部装置へ供給する。
【００１２】
本発明の他の実施例により、タグデータは４つの形式のうちの１つである。第１の形式は、関連するタグが付加されたデータのフレームは、例えば、ホストプロセッサのような外部装置へ転送できることを本質的に意味する”送信タグ”である。次の形式のデータタグは、”スキップタグ”である。データのフレームがスキップタグに関連しているときには、タグが付加されたデータのフレームは、本質的に、スキップされ外部装置へ転送されない。第３の形式のタグデータの”ポーズタグ”がデータのフレームと関連している場合には、タグが付加されたデータのフレームに対して、更に、タグデータが、送信タグ、スキップタグ又は、停止タグに変更されるべきかどうかを決定する処理を必要とする。第４の形式のタグデータは”停止タグ”である。タグが付加されたデータのフレームが、停止タグに関連しているときには、更なる処理が必要なエラー状態がある。
【００１３】
本発明の更なる実施例により、更なる例では、特徴が、データのフレームは、１）一度書込まれたトラックからの主領域フレーム、２）固定長パケットの書かれたトラックからの主領域フレーム、３）可変長パケットの書かれたトラックからの主領域フレーム、４）可変長パケットの書かれたトラックからの有効なリンク領域フレームのいずれかであると認識するときには、送信タグがデータのフレームに付加される。同様に、特徴が、データのフレームは、固定長パケットの書かれたトラックからのリンク領域フレームであると認識するときにはスキップタグがデータのフレームに付加され、特徴が、データのフレームは、可変長パケットの書かれたトラックからのリンク領域フレームであると認識するときにはポーズタグがデータのフレームに付加される。特徴が、データのフレームは、有効なデータのフレームでないと認識するときには停止タグがデータのフレームに付加される。例えば、データのフレームが無効なアドレス内であるときには、停止タグが付加される。更に、データのフレームを読むことができ、又は、同期問題を有し、又は、データエラーの場合で、上記特徴に合致しない場合には、データのフレームにポーズタグが付加される。
【００１４】
上述の要求他は、更に、本発明のある実施例により、コンピュータシステムで使用される蓄積装置により達成される。蓄積装置は、サーボ組立体と、蓄積媒体と、読み出し組立体と、データエンジンと、入力配置と、フレーム管理配置、及び、出力配置を有する。例えば光ディスク、磁気ディスク又は、その組合せ等の蓄積媒体は、サーボ組立体上に配置され、読み出し組立体は、蓄積媒体からデータのトラックの少なくとも部分を読み出し且つ、読み出し信号を出力すのに使用される。データエンジンは、読み出し信号を受信し、読み出し信号の少なくとも部分に基づいて、少なくとも１つのデータのフレームを出力する。そして、データのフレームは、入力配置に供給される。入力配置は、データのフレームに関するある特性を決定し、データのフレームにタグデータを付加し、タグの付加されたデータのフレームをフレーム管理配置へ出力する。フレーム管理配置は、それを蓄積し、続いて、出力配置へ出力する。そして、出力配置は、タグの付加されたデータのフレーム内のタグデータに基づいて、外部装置へタグの付加されたデータのフレームを供給する。
【００１５】
本発明の他の実施例により、データ蓄積装置から外部装置へデータを転送するのに使用する方法が提供される。その方法は、データ蓄積媒体から少なくとも1つのデータのフレーム読み出すステップと、データのフレームに関するある特徴を決定するステップと、データのフレームに関する少なくとも１つの特徴に基づいて、データのフレームにタグデータを付加するステップ、及び、タグの付加されたデータのフレーム内のタグデータに基づいて、タグの付加されたデータのフレームを外部装置に供給するステップとを有する。本発明のある実施例により、データのフレームにタグデータを付加するステップは、データのフレームの特性に基づいて、送信タグ、スキップタグ、ポーズタグ及び、停止タグを選択するステップを更に有する。データのフレームにタグを付加することは、論理的及び／又は物理的に行える。本発明のある実施例による例により、タグデータをデータのフレームに付加するステップは、タグデータを生成するために、バッファされたデータのフレーム内のタグデータ内で、（例えば、データの２値のビット／バイの特定のシーケンスを付加し）データを物理的に変更するステップを更に有する。
【００１６】
本発明の更なる特徴、優位点及び、優れた特徴は、以下の記載で説明され、当業者には明らかとなろう。本発明の優位点は、特に請求項で示された手段及び、組合せにより達成され得る。
【００１７】
発明の詳細な記載
図１は、ＰＣ等の従来のコンピュータシステム１０を示し、ホストプロセッサ１２、主メモリ１４、バス１６及び、蓄積装置１８を有する。ホストプロセッサ１２は、典型的には、主メモリ１４及び、蓄積装置１８の両方からデータを読み出し及び／又は書きこむように成される。蓄積装置１８から読み出されたデータは、典型的には、プロセッサ１２により処理される前に、主メモリ１４に記録される。同様に、ある配置では、データはホストプロセッサ１２により主メモリ１４から読まれ、バス１６を介して蓄積装置１８へ供給され、蓄積媒体に書きこまれる。バス１６は、典型的には、例えば、小型コンピュータシステムインターフェース（ＳＣＳＩ）、アドバンストテクノロジアタッチメントパケットインターフェース（ＡＴＡＰＩ）、ＩＥＥＥ１３９４シリアルバス又は、同様のフォーマットのバス等の周辺バスである。
【００１８】
簡単のために、以後は、ホストプロセッサ１２が、蓄積装置１８から読み出されるデータのブロック要求し、ホストプロセッサ１２及び／又は主メモリ１４へバス１６を介してデータが供給される読み出し動作に焦点を当てる。
【００１９】
図２は、例示的な蓄積装置１８の主なサブシステムを示すブロック図である。蓄積装置１８は、例えば、ＣＤ又は、ＤＶＤなどの記録媒体２２を有する。記録媒体２２は典型的には、蓄積装置１８から取り外し可能である。蓄積装置１８に適切に挿入されたときには、記録媒体２２は蓄積装置１８内で支持され、サーボ組立体２４により回転される。サーボ組立体２４は、典型的には、スピンドルモータと支持配置（いずれも図示していない）を有する。サーボ組立体２４はドライブコントローラ２６に接続される。ドライブコントローラ２６は、典型的には、１つ又はそれ以上のソフトウェアに従って蓄積装置１８内の種々のサブシステムを制御し、且つホストプロセッサ１２とバス１６を介して通信するように成された、マイクロプロセッサである。
【００２０】
データは、読み出し／書きこみ組立体２８により、記録媒体２２から読み出される（又は、書きこまれる）。読み出し動作に関しては、読み出し／書きこみ組立体２８はレーザダイオード及び、レーザピックアップを有する（いずれも図示していない）。読み出し／書きこみ組立体２８は、読み出し（又は、書きこみ）動作中は、コントローラ２６の制御下で、サーボ組立体２４により記録媒体２２に亘って選択的に位置決めされる。データは、通常は、一定のピット（例えば、データビット）サイズを有する連続した螺旋トラックに沿って，記録媒体２２に蓄積される。従って、１回転当りの情報量は、蓄積媒体の内側よりも外側の方が大きい。
【００２１】
読み出し／書きこみ組立体２８は、記録媒体２２に対して移動でき、それにより、特定のトラック上に位置決めされることができ、所望のデータを読み出すために記録媒体が回転されるにつれて、トラックを追従する。
【００２２】
読み出し／書きこみ組立体２８によりアナログ信号が読み出され、例えば、ディジタル信号処理装置（ＤＳＰ）等のデータエンジン３０へ供給される。データエンジン３０は、例えば、従来のアナログディジタル変換技術を使用して、アナログ信号をディジタルデータストリームへ変換する。蓄積装置の形式によって、データエンジン３０はデスクランブル、訂正、抜き出し、除外及び／又は他の変更をデータストリーム中のあるデータに行うようにすることもできる。例えば、あるＣＤ−ＲＯＭでは、データエンジン３０は、アナログ信号から主データ（ＭＤ）及び、サブコードデータを抜き出すために、従来の復調技術（例えば、データスライス）及び、クロスインターリーブドリードソロモン符号（ＣＩＲＣ）訂正技術を採用する。従来のＣＤ−ＲＯＭのデータは、約２３５２バイトのＭＤと９６バイトのサブコードデータの各々を有するデータのフレームに分離される。サブコードデータフォーマットは実際には、９８バイトであるが、２つのバイト又はスロットは、サブコードフレームを検出するためにブランクのままである。残りの９６スロットは、それぞれ１バイトのサブコードデータを有する。図示されているように、データエンジン３０はドライブコントローラ２６に接続され、ドライブコントローラ２６に応答する。
【００２３】
データエンジン３０からの結果のディジタルデータは、ブロック復号器３２へ供給される。ブロック復号器３２は、バスインターフェース３５とバス１６を介してホストプロセッサ１２へディジタルデータを転送するように成される。読み出し動作中は、ブロック復号器３２は、ドライブメモリ３４へデータのフレームを集めて蓄積する。そして、ブロック復号器３２は、バスインターフェース３５とバス１６を介して、ドライブメモリ３４からホストプロセッサ１２へ、単一バースト転送で、フレームのグループ（例えば、約４から８フレーム）を転送する。ブロック復号器３２は以下で詳細に説明される。ブロック復号器３２はドライブコントローラ２６に接続され、ドライブコントローラ２６に応答する。
【００２４】
ドライブメモリ３４は、典型的には、ブロック復号器３２には接続されているが、その他には接続されていない従来型のＤＲＡＭチップである。ドライブメモリ３４のサイズとパラメータは、蓄積装置１８の動作速度、ブロック復号器３２の動作及び待ち時間、及び、ホストプロセッサ１２の動作及び、待ち時間により変わる。ＣＤ−ＲＯＭでは、ブロック復号器が、バーストでフレームのグループを転送する場合には、ドライブメモリ３４には少なくとも約５０フレームのデータを蓄積できる能力を有するのが普通である。例として、ドライブメモリ３４は通常は、１６ＸＣＤ−ＲＯＭでは約１２８キロバイトを必要とし、３２ＸＣＤ−ＲＯＭでは約２５６キロバイトを必要とする。
【００２５】
蓄積装置１８は、更に、バス１６と接続するためのバスインターフェース３５を有する。バスインターフェース３５は、バス１６の特定のフォーマットに特に設計された従来のインターフェース回路である。このように、例えば、ある配置では、バスインターフェース３５は、ＳＣＳＩ，ＡＴＡＰＩ、１３９４又は、他の同様のバスインターフェースである。バスインターフェース３５は、更に、ドライブコントローラ２６と接続し、ドライブコントローラ２６に応答する。
【００２６】
図３は、図２に示す例示的なブロック復号器３２のブロック図を示す。ブロック復号器３２は、データエンジンインターフェース論理３６、誤り訂正論理３７、バッファマネージャ３８、ホストインターフェース４０及び、コントローラインターフェース論理４２を有する。データエンジンインターフェース論理３６は、データエンジン３０とデータを交換するように成され、誤り訂正論理３７とドライブコントローラ２６からコントローラインターフェース論理４２を介した命令に応答する。ホストインターフェース論理４０は、バスインターフェース３５とデータを交換するように成され、バッファマネージャ３８からと、コントローラインターフェース論理４２を介したドライブコントローラ２６からの命令に応答する。同様に、コントローラインターフェース論理４２は、ドライブコントローラ２６、誤り訂正論理３７、バッファマネージャ３８、データエンジンインターフェース論理３６、及び、ホストインターフェース論理４０との間で制御情報を交換することができるように成される。
【００２７】
名前が示すように、誤り訂正論理３７は、データエンジンインターフェース論理３６を介して、データエンジン３０から受信されたディジタルデータの中の誤りを訂正するために設けられる。これは、典型的には、各フレーム内のあるデータを推定する従来のデータ訂正技術を採用し、特定の形式の誤りを検出することを含み、そして、例えば、フレーム内の破壊された又は、正しくないデータを、自動的に変更する、又は、コントローラインターフェース４２を介してコントローラ２６から更なる援助を要求することにより、可能なときには検出した誤りを訂正する。
【００２８】
読み出し動作の指示で、バッファマネージャ３８は、誤り訂正論理３７からデータのフレームを受信し、ドライブメモリ３４へ選択的にデータのフレームを蓄積する。バッファマネージャ３８は、さらに、ホストプロセッサ１２へ転送するために、ホストインターフェース論理４０へあるフレームを供給するように配置される。以下に詳細に説明するように、バッファマネージャ３８が必要な場合には、コントローラインターフェース４２を介してコントローラ２６に動作的に結合され、割り込みを発生し、ドライブコントローラ２６からの援助を更に要求する。
【００２９】
図４は、図３に示すブロック復号器３２の１つ又はそれ以上の機能／回路で具体化された、又は、採用された従来のバッファ管理処理５０を示す。バッファ管理処理５０は、選択されたデータのフレームをホストプロセッサ１２へ伝送する。
【００３０】
バッファ管理処理５０は、論理的に又は、物理的に又は、その他で、ドライブメモリ３４に蓄積できる蓄積されたフレーム５２等の蓄積されたデータのフレームの複数のキュー（例えば、５４，５８，６０及び、６２）を管理することができる。例えば、転送キュー６０と呼ぶキューの１つは、結果的にホストプロセッサ１２へ転送されるデータのフレームを有する。図４に示される矢印は、バッファ管理処理５０が、論理的に又は、物理的に又は、その他で、フレームをあるキューに組織化する又は、配置することを示す。
【００３１】
新しいフレームデータが到着したときに、バッファ管理処理５０は新しいフレーム５８内の新しいデータを、空キュー６２からヘイスタック（ｈａｙｓｔａｃｋ）キュー５４へ配置する。ヘイスタックキュー５４へ所定の閾値フレーム数が配置されると、バッファ管理処理５０はコントローラ２６へ割り込みを発生する。割り込みが発生すると、コントローラ２６は、ヘイスタックキュー５４内の各フレーム５２を評価し、次に何をするかを決定する。コントローラ２６が、フレーム５２はホストプロセッサ１２へ転送できると決定したときには、バッファ管理処理５０は、フレーム５２がホストプロセッサ１２により要求されるまでに、フレーム５２をデータキュー５８へ配置する。データキュー５８内のフレームがホストプロセッサ１２により要求されたときには、バッファ管理処理５０は要求されたフレームを転送キュー６０へ配置する。一旦転送キュー６０に入ると、フレームは、例えば、ホストインターフェース論理４０により、ホストプロセッサ１２へ転送される。転送キュー６０からフレーム５２の転送に続いて、バッファ管理処理５０は、フレーム５２を空キュー６２内に配置する。これにより、後続する到着する新しいフレーム５６を蓄積するのに使用する関連したメモリ資源を本質的に開放にする。
【００３２】
所定のフレーム５２に対するコントローラ２６による評価が、フレーム５２はホストプロセッサ１２へ転送するべきでないと決定したときには、フレーム５２は、空キュー６２に配置される。このような方法で、バッファ管理処理５０は、ホストプロセッサ１２へ特定のフレームを送ることは適切であるかを決定するために、データのフレームを並べ変えることができる。
【００３３】
従来のＣＤ−ＲＯＭドライブでは、要求されたとしても、ホストプロセッサ１２へ転送することになっていないデータのフレームが幾つかある。これらは，限定はされないが、ＣＤ−ＲＯＭのリードイン又は、リードアウト領域から読まれたフレームである。
【００３４】
図５は、ＣＤ−ＲＯＭに記録されたデータ７０を示す。示されているように、データ７０は、本質的に、リードイン領域７２を含み、次に１から９９トラック７４とリードアウト領域７６が続く。リードイン領域７２内には、例えば、各トラックの開始と終了境界の、テーブルオブコンテンツ（ＴＯＣ）部７３がある。同様に、例えば、トラック７４ａの、各トラック内には、トラック７４ａに関する特定の情報を有する特定のトラック記述子７５がある。トラック記述子７５は、典型的には、トラックの最初の１５０フレーム内に含まれている。リードアウト領域７６は、データ７０の最後に記録され、且つ、典型的には、例えば、読み出し動作中のＣＤ−ＲＯＭの走査が誤ってトラック７４を通過した場合に、サーボ組立体２４を使用して読み出し/書きこみ組立体２８の回復及び、再位置決めを行うために、コントローラ２６により使用される情報を含む。
【００３５】
ある明かな例外として、リードイン領域７２、トラック記述子７５及び、リードアウト領域７６に記録されているフレームは、典型的には、ホストプロセッサ１２へ転送されない。実際、そのような要求及び／又は転送は通常エラー状態と考えられる。
【００３６】
トラック記述子ブロックは、トラックに関する情報を見つけるために、コントローラ２６により使用される。例えば、コントローラ２は、トラック記述子ブロックを、トラックが、パケットが書きこまれたトラックである場合及び、そのようなら、トラック内のパケットは固定長か可変長かどうか、そして、固定長なら固定長は幾つかを決定するのに使用できる。従来技術では知られているように、パケットが書きこまれたトラックでは、データは光ディスクに、１トラックを構成するために、固定長か又は、可変長のいずれかで、複数のパケットで記録される。
【００３７】
図６は、どのようにトラック８０内で２つのパケットが連結されているかを示すための、例示的なパケットの書きこまれたトラック８０の部分を示す。図示のように、パケットの書きこまれたトラック８０は、第１パケットに関連する複数のフレーム８８を含む第１データ領域８２、及び、第２パケットに関連する複数のフレーム８９を含む第２データ領域８６を有する。リンク領域８４は、第１データ領域８２と第２データ領域８６の間に配置される。リンク領域８４は、最初の記録動作時にフレー８８のすぐ後に書き込まれた複数のランアウトブロック９０を有する。続く記録動作で、幾つかのランインブロック９４が、フレーム８９の記録前に記録される。ランアウトブロック９０及び、ランインブロック９４は、本質的には、あるパケットから次のパケットへ遷移が起こったことを認識させ、それにより、後続の書きこまれたパケットデータに同期するために、蓄積装置１８に必要な情報を提供する。
【００３８】
ランアウトブロック９０とランインブロック９４の間では、リンクブロック９２があり、最初の書きこみ動作及び、後続の書きこみ動作の両方の間に書きこまれたデータを含み得る。このように、例えば、リンクブロック９２は、あるものは最初の書きこみ動作からのそして、あるものは後続の書きこみ動作からの、重ね合わされたデータビットを含み得る。
【００３９】
固定長パケットに関しては、ランアウトブロック９０、リンクブロック９２、及び、ランインブロック９４内のブロックは、通常は、ホストプロセッサ１２へ転送されない。しかし、可変長パケットについては、ランアウトブロック９０、リンクブロック９２、及び、ランインブロック９４内のブロックは、ホストプロセッサ１２へ転送され得る。このように、蓄積装置１８は、固定長と可変長の書きこまれたトラックを区別する更なる能力が必要である。以下で述べるように、このような判定するのに必要な情報は、典型的には、（例えば、トラック記述子、ＴＯＣ等の中の）記録媒体２２に記録されたデータ内に設けられる。
【００４０】
バッファ管理処理５０の複雑さは、それゆえ、パケットが書かれたトラックを読み出すために増加する。この複雑さは、蓄積装置１８に関連した待ち時間を増加し得る。例えば、待ち時間は、ホストプロセッサ１２が、リンク領域８４からの部分である複数のフレームを含むデータのブロックの転送を要求したときに、増加する。ホストプロセッサ１２がリンク領域８４に関連したフレームを要求しないなら、バッファ管理処理５０は、転送キュー６０から空キュー６２へ不要なフレームを移動する必要がある。この更なる分析は、典型的には、コントローラ２６が割り込みされることを必要とし、また、フレームの単一の転送よりもむしろ複数の転送をする結果となる。これらの両副作用は、蓄積装置１８の待ち時間を増加しがちである。
【００４１】
従って、どのフレームがホストプロセッサ１２へ転送されるかを決定するのにに関連した処理負荷を効果的に減少する、改良された方法及び、配置が必要である。
【００４２】
以下で示すように、本発明のある実施例に従って、蓄積装置１８で行われることが必要な様々な判断を能率的にする、改良された方法及び配置が提供される。本発明のある特徴に従って、改良されたブロック復号器は、更なる機能を有する。例えば、各々の新たなフレーム５６とマークについてのある属性を認識する、又は、コントローラ２６を割り込みする及び／又はフレームの転送を複数の転送に分ける必要性を減少させるように新たなフレーム５６を識別する、ディジタル論理で実現される。このように、フレーム５２をヘイスタックキュー５４からデータキュー５８へ移動する判断を、簡単化することができ、及び／又は、リンク領域８４に関連したフレームを転送キュー６０から空キュー６２へ転送する判断を簡単化することができる。
【００４３】
これを考慮すると、（上述の）ＴＯＣ７３とトラック記述子７５に加えて、記録媒体２２に記録されたデータに関する更なる情報が、フレームの形式に関わらず各有効なフレーム内で、利用できる。図７は、約２．５キロバイト長の例示的な従来のフレーム８８ａを示す。図に示されているように、フレーム８８ａは、ユーザデータが記録されている主データ領域１００、サブコード領域１０２及び、フォーマットされたＱ領域１０４及び、予備（未使用）領域１０６を有する。
【００４４】
図８は、データエンジン３０からのデータの中にある様々なデータフィールドを示す。ブロック復号器３２は、データフレームを整列し、アドレス情報及び、トラックのモード情報を見つけるために、同期データフィールド（ＳＹＮＣ）１１０、分−秒−フレーム（ＭＳＦ）アドレス１１２及び、モードバイト（ＭＯＤＥ）１１４を使用する。情報は主データ領域１００’へ転送される。（例えば、ＣＲＣの）誤り検出符号１１８及び、（例えば、Ｃ３符号の）誤り訂正符号（ＥＣＣ）１２２が、主データ（ＭＤ）１１６の正しさを検査するために、誤り訂正器３７で使用される。図７に示されているように、領域１０２及び、１０４に蓄積されるサブコードを含む更なるデータストリームもある。例として、従来のモード１フォーマットのヘッダでは、これらのフィールドは、１２バイトのＳＹＮＣ１１０、ＭＳＦアドレス１１２、ＭＯＤＥ１１４、ＭＤ１１６、誤り検出符号（ＥＤＣ）１１８、予備フィールド（ＳＰＡＲＥ）１２０及び、誤り訂正符号（Ｃ３）１２２を有する。
【００４５】
上述の情報の部分を使用し、本発明の実施例による方法及び、配置は、優位に、蓄積装置１８に関連する待ち時間及び、特に、フレームを転送キュー６０からホストプロセッサ１２へ転送する際に、バッファ管理処理５０により発生された待ち時間を減少する。ハードウェア及び／又はソフトウェアで実現できるこれらの方法及び配置は、基本的に、各々の新しいフレーム５６を処理する際の初期に加えることができる、命令符号（オペコード）タグ２４０（図１１参照）を採用する。
【００４６】
オペコードタグ２４０は、例えば、ホストプロセッサ１２への転送中に、後続する処理の速度を向上するために蓄積装置１８内で使用される。本発明の好適な実施例によれば、例えば、図１１のフレーム８８’に図示されているようなオペコードタグ２４０は、予備領域１０６’に加えられるか又は、含まれる２値データの形式を有する。この２値データは、バッファ管理処理５０内で発生する必要のある特定の動作を識別する。
【００４７】
図９は、蓄積装置１８’（即ち、図２及び、３の蓄積装置１８の改良版）で使用する、処理２００のフローを示す図である。処理２００は、蓄積装置１８’に記録媒体２２を取り付ける初期ステップ２０２を有する。例えば、ステップ２０２は、光ディスクをＣＤドライブ、ＤＶＤドライブ又は、同様なドライブに挿入することを含むことができる。次にステップ２０４では、記録媒体２２に記録されたデータ７０の選択部分が読み出され特定の情報が集められる。例えば、ＴＯＣ７３は、データ７０に記録されたトラック７４の数及び、各トラック７４の開始及び、終了位置に関する情報を集めるために、読み出される。更に、各トラックのトラック記述子７５は、トラックは一度書きこまれたトラック又は、固定長或は可変長のパケットが書かれたトラックのいずれかであるかに関する情報を集めるために読み出されることができる。トラックに関する特徴を提供するこの情報は、蓄積装置１８内で蓄積又は、維持されているテーブルに含まれる。
【００４８】
次にステップ２０６では、蓄積装置１８は、ホストプロセッサ１２からの読み出し要求命令の受信を待つ。読み出し要求命令に応じて、処理２００はステップ２０８に進み、ここでは、蓄積装置２２から要求されたデータブロック又は、その部分が読み出される。このステップでは、ハードウェアはタグの定義に関して設定されることができる。各新しいフレーム５６が読み出されると、幾つかの有効性の検査が行われる。例えば、読み出しデータが有効かどうかを決定するために、同期試験が行われる。フレームが同期試験を通過すると、従来のＣＲＣが行われる。更に、例えば、読み出し動作で決定されるように、フレームのアドレスも、許容できるアドレス範囲内であるかどうかが確認される。フレームがアドレスの有効性試験で落ちると、ＳＴＯＰオペコードタグがステップ２１０及び、２１２で付加される。ＳＴＯＰオペコードタグは、本質的に、フレームに問題があることを示す。例えば、不正なアドレスを有する既知の違反フレームに対して、ＳＴＯＰオペコードは使用される。例えば、壊れたデータ又は、不明のデータに対して使用されるＰＡＵＳＥオペコードタグと比べる。ＳＴＯＰオペコードタグと異なり、ＰＡＵＳＥオペコードタグについては、コントローラ２６はすぐに割り込まれ、ホスト１２から要求が来る前に、リトライ動作が行われ得る。
【００４９】
ステップ２０８でフレームは有効であると判定されると、ステップ２１０で、トラック及び、フレームの形式に応じて、ＳＥＮＤ，ＳＫＩＰ，又は、ＰＡＵＳＥオペコードタグのいずれかがフレームに与えられる。
【００５０】
一回書き込みトラック（例えば、ＣＤ−ＲＯＭ又は、ＤＶＤ−ＲＯＭ）に対しては、フレームはホストプロセッサ１２へ転送できるので、ステップ２１４でＳＥＮＤオペコードタグが付加される。フレームは、ステップ２１４で生成されたテーブルの情報に基づいて、１回書きこみトラック又は、パケットが書かれたトラックのいずれかの部分であるか決定される。
【００５１】
固定長パケットの書かれたトラックに関しては、ステップ２１６では、フレームの形式（即ち、リンク領域フレーム又は、データ領域フレーム）により、２つのオペコードタグが付加され得る。例えば、図８に示すように、フレームのヘッダのモードフィールド１１４を使用してフレームの形式が決定される。このように、例えば、モードフィールド１１４のデータのバイトの最初の３ビット１１５は、フレームがリンクフレームかデータ領域フレームかを識別する。フレームが、固定長パケットの書かれたトラックのリンク領域フレームならば、ホストプロセッサ１２はフレームを受信しない。ＳＫＩＰオペコードタグがリンク領域フレームに付加され、フレームはホストプロセッサ１２へ転送されない。フレームがデータ領域フレームなら、ホストプロセッサ１２はフレームを受信することが許される。ＳＥＮＤオペコードタグがデータ領域フレームに付加され、ホストプロセッサ１２へ転送される。
【００５２】
可変長パケットの書かれたトラックに対しては、ステップ２１８で、、フレームの形式（即ち、リンク領域フレーム又は、データ領域フレーム）により、２つのオペコードタグが付加され得る。例えば、図８に示すように、フレームのヘッダのモードフィールド１１４を使用してフレームの形式が決定される。フレームがリンク領域フレームなら、ホストプロセッサ１２はフレームを受信することが許される。しかし、ホストプロセッサ１２へ転送する前に、更なる処理がフレームに行われることを必要とする。図６を参照すると、リンク領域８４内には７ブロックのデータがあることが分かる。しかし、通常は、データエンジン３０は、リンクブロック９２内のデータの重なりによる７ブロックのデータよりも、８ブロックのデータを出力する。従って、しばしば”スリップ”として参照されるこの余分なデータのブロックは、識別され、ホストプロセッサ１２へ転送されないようにする必要がある。これにより、ＰＡＵＳＥオペコードタグがリンク領域フレームに付加され、フレームはホストプロセッサ１２に転送されない。しかし代わりに例えば、コントローラ２６により更に処理されるために保持される。コントローラ２６は、リンクブロックを更新／訂正し、ＳＥＮＤのオペコードタグデータを上書きし、またＳＫＩＰタグデータを他のフレームへ書きこみ得る。フレームがデータ領域フレームの場合には、ホストプロセッサ１２はフレームを受信することが許される。このように、ＳＥＮＤオペコードタグがデータ領域フレームに付加され、フレームはホストプロセッサ１２へ転送される。
【００５３】
有効なフレームが上述の１つの形式に合致すると決定できなかった場合には、ステップ２２０では、例えば、コントローラ２６で更なる処理を行えるように、ＰＡＵＳＥオペコードタグが付加される。ＰＡＵＳＥオペコードタグは、誤り訂正不能、同期スリップ等が検出されたときも、使用できる。このように、方法及び、配置は、次の世代の蓄積装置又は、他の知られていない／明らかでない蓄積媒体のフォーマットで使用できるように意図されてる。しかし、ＰＡＵＳＥオペコードに応答する更なる処理は、蓄積装置の待ち時間を減少するよりは、むしろ増加する結果となり得ると認識される。
【００５４】
本発明の好適な実施例により、処理２００は、図２及び／又は３に示されるように、ブロック復号器内のディジタル論理で実現される。例えば、同期、ＣＲＣ及び、アドレス範囲及び、モード試験及び、オペコードタグ発生／付加は、データエンジンインターフェース論理３６及び／又は誤り訂正論理３７の改良版内で行うことができる。これらの試験は、当業者にはよく知られており、また、従来の蓄積装置でも使用される。さらに、当業者には、ディジタル論理及び／又はソフトウェア／ファームウェア論理は、本発明の方法及び、配置を実行する蓄積装置１８の改良版の１つ又はそれ以上サブシステムで採用できることがわかる。例えば、コントローラ２６上で実行されるファームウェアプログラムは、処理２００の様々なステップを更に行うため、変更できる。
【００５５】
図１０は、蓄積装置１８’で使用する更なる処理３００を示すフロー図である。処理３００は、ステップ３０２を有し、ホストプロセッサ１２へのデータの転送を行うために転送バッファカウンタがロードされる。転送バッファカウンタは、例えば、転送キュー６０内にあり既に関連するオペコードタグ２４０を有するフレーム８８’の数を有する。
【００５６】
ステップ３０４で決定したように、オペコードタグ２４０がＰＡＵＳＥに等しい場合には、処理３００は、コントローラ２６がオペコードタグをＳＥＮＤかＳＫＩＰのいずれかに変えるのを待つ。例えば、フレーム８８’が、可変長パケットの書かれたトラックからのリンク領域フレームであったのでＰＡＵＳＥとマークされたなら、そして、フレームが後にスリップフレームであると決定されないなら、オペコードタグ２４０はＳＥＮＤに変更される。逆に、フレーム８８’が、後にスリップフレームであると決定される場合には、オペコードタグ２４０はＳＫＩＰに変更される。オペコードタグ２４０がＳＫＩＰに等しいなら、ステップ３１２で、ステップ３０６と一致して、フレームは空キュー６２へ配置される。
【００５７】
ステップ３０６で決定されるように、オペコードタグがＳＥＮＤなら、データのフレームは、ホストプロセッサ１２へ転送される。そして、ステップ３１０で、バッファカウントは減少される。次に、フレーム又は、スロットは、ステップ３１２で、空キュー６２へ移動される。
【００５８】
ステップ３１４では、転送カウントがゼロであるかどうかが決定される。転送カウントがゼロであるなら、処理３００は終了する。転送カウントがゼロでないなら、処理されるデータのフレームが更にあり、ステップ３０４で処理３００は戻る。
【００５９】
ステップ３０６を参照すると、オペコードタグがＳＥＮＤでないなら、処理３００はステップ３０８へ進む。ステップ３０８では、オペコードタグがＳＫＩＰであるかどうかが決定される。オペコードタグがＳＫＩＰなら、処理３００はステップ３１２、そして、上述のように、続いてステップ３１４へ進む。
【００６０】
ステップ３１６で決定されるように、オペコードタグがＳＫＩＰでなく、しかしＳＴＯＰである場合には、処理３００は終了する。
【００６１】
特定の配置が必要な場合には、ホストプロセッサ１２へフレーム８８’を転送する前に、オペコードタグ２４０はフレーム８８’から削除できることが認識される。しかし、多くの配置では、オペコードタグ２４０の付加された情報はホストプロセッサ１２に悪影響を及ぼさないので、これは、不要である。
【００６２】
本発明の好適な実施例では、処理３００はディジタル論理で実現される。例えば、ステップ３０２，３０６及び、３１２はブロック復号器３２及び／又はコントローラ２６の改良版内で実行でき、ステップ３０４，３０８及び、３１０はホストインターフェース論理４０及び／又はコントローラ２６の改良版内で実行できる。ディジタル論理及び／又はソフトウェア／ファームウェア論理は、本発明の方法及び、配置を実行するために、蓄積装置１８の改良版内の１つ又はそれ以上のサブシステム採用できることは当業者には更に理解されるであろう。このように、コントローラ２６上で動作するファームウェアプログラムは処理３００内の様々なステップを行うように改良できる。
【００６３】
本発明は、現在最も実用的で好ましいと考えられる実施例と共に説明したが、本発明は開示した実施例には限定されず、請求項の範囲内の、様々な変更及び、等価な配置をカバーすると理解されるべきである。
【図面の簡単な説明】
【図１】  複数のデータフレームを有するデータのブロックを選択的にホストプロセッサに、バス又は、同様なネットワーク接続を介して転送するように配置された蓄積装置を有する、従来のコンピュータシステムを示す図である。
【図２】  少なくとも１つのデータのブロックが記録された蓄積媒体と、蓄積媒体からデータブロックを読み出すための図１の蓄積装置を示すブロック図であり、例示的な蓄積装置は、読み出し／書きこみ組立体、サーボ組立体、コントローラ、データエンジン、ブロック復号器、ドライブメモリ及び、バスインターフェースを有する。
【図３】  蓄積装置からホストプロセッサへデータブロックの選択された部分を転送する図２のブロック復号器を示すブロック図であり、例示的なブロック復号器は、データエンジンインターフェース、誤り訂正器、バッファマネージャ、ホストインターフェース及び、コントローラインターフェースを有する。
【図４】  蓄積装置からホストプロセッサへデータブロックの選択されたフレームを転送する例えば図２のブロック復号器で使用される従来のバッファ管理処理を示す図であり、例示的なブロック復号器は、少なくとも一部分は続いてホストプロセッサへ転送される、受信及び、蓄積されたデータフレームの複数のキュー（ｑｕｅｕｅｓ）又は、スタックを、論理的、物理的又は、その他で管理することができる。
【図５】  例えば、光蓄積ディスク等の、図２に示すような蓄積媒体に記録された例示的なフォーマットされたデータを示す図であり、フォーマットされたデータは、テーブルオブコンテンツ（ＴＯＣ）部を持つリードイン領域、複数のデータ（即ちデータの小さな部分）のフレームを有する少なくとも１つのトラックとリードアウト領域を有する。
【図６】  複数のリンクブロックで分離された固定長又は可変長のいずれかの複数の分離したパケット内に書かれた図５に示すトラックの部分を示す図である。
【図７】  ドライブメモリに蓄積された図５に示す例示的なデータのフレームに含まれる主データ領域及び、予備（未使用）領域等の、異なる領域を示す図である。
【図８】  図７に示す例示的にフォーマットされた主データ領域にある異なるデータフィールドを示す図である。
【図９】  改良された蓄積装置で使用する処理のフローを示す図であり、処理は、本発明の実施例に従って、ある基準に基づいてデータのフレームに命令コードタグを付加し、更に、命令コードタグに基づいてデータのフレームを処理する。
【図１０】  改良された蓄積装置で使用する処理のフローを示す図であり、処理は、本発明の実施例に従って、ある基準に基づいてデータのフレームに命令コードタグを付加し、更に、命令コードタグに基づいてデータのフレームを処理する。
【図１１】  本発明の実施例に従った、命令コードタグを有するタグの付加されたデータのフレームを示す図である。
【図１】
0004256590.tif 000002
【図２】
0004256590.tif 000003
【図３】
0004256590.tif 000004
【図４】
0004256590.tif 000005
【図５】
0004256590.tif 000006
【図６】
0004256590.tif 000007
【図７】
0004256590.tif 000008
【図８】
0004256590.tif 000009
【図９】
0004256590.tif 000010
【図１０】
0004256590.tif 000011
【図１１】
0004256590.tif 000012