JP4256590B2 - データ蓄積装置で使用する命令コードで駆動されるバッファ管理装置 - Google Patents
データ蓄積装置で使用する命令コードで駆動されるバッファ管理装置 Download PDFInfo
- Publication number
- JP4256590B2 JP4256590B2 JP2000552663A JP2000552663A JP4256590B2 JP 4256590 B2 JP4256590 B2 JP 4256590B2 JP 2000552663 A JP2000552663 A JP 2000552663A JP 2000552663 A JP2000552663 A JP 2000552663A JP 4256590 B2 JP4256590 B2 JP 4256590B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- frame
- tag
- track
- written
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B19/00—Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
- G11B19/02—Control of operating function, e.g. switching from recording to reproducing
- G11B19/08—Control of operating function, e.g. switching from recording to reproducing by using devices external to the driving mechanisms, e.g. coin-freed switch
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1217—Formatting, e.g. arrangement of data block or words on the record carriers on discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1217—Formatting, e.g. arrangement of data block or words on the record carriers on discs
- G11B2020/1218—Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
- G11B2020/1225—Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc frame, i.e. a subunit of a sector containing user data, e.g. a sync frame
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
発明の背景
本発明は、一般的には、データ蓄積装置に関し、特に、蓄積装置から外部装置へのデータ転送に関連する処理要求を非常に減少するのに採用され得る方法と配置に関する。
【0002】
例えば、コンパクトディスク(CD)やディジタルバーサタイルディスク(DVD)等の光ディスクは、非磁気的なデータ蓄積媒体であり、比較的大きな量のディジタル情報が、媒体の面に微小なくぼみを作るレーザビームを用いて蓄積される。蓄積データは低パワーレーザを用いてくぼみの存在又は、不存在を検出することで読み出される。
【0003】
現在は、多くの異なる形式の光ディスクシステム(即ち、光ディスク、フォーマット、装置)が利用できる。現在のパーソナルコンピュータ(PC)で最も一般的に使用されてる光ディスクシステムは、コンパクトディスク読み出し専用メモリ(CD−ROM)である。CD−ROMは、一度データが蓄積されCD−ROMドライブを用いて何度でも読み出せる読み出し専用光蓄積媒体を提供する。CD−ROMディスクは、ディジタル画像、オーディオ,ビデオ、及び/又はテキストデータの混在したストリームを蓄積することができる。ディジタルバーサタイルディスク読み出し専用メモリ(DVD―ROM)は、更なる容量を有する。将来は、DVD−ROMも更に高速化される。他の進んだ光ディスクシステムでは、ユーザが、光ディスクにデータを書き込むことができる。例として、コンパクトディスクレコーダブル(CD−R)システムでは、ユーザーが光ディスクの各部に一度だけデータを書き込むことができ、一方、コンパクトディスクリライダブル(CD−W)システムでは、ユーザーが光ディスクの各部に何度でもデータを書き込むことができる。他の有名な光ディスクシステムは、光磁気コンパクトディスク(CD−MO)を含み、何度でも再書込みできる。
【0004】
これらの例の光ディスクシステムからのデータの読み出しは、典型的には、PCプロセッサ又は、ホストプロセッサが、光ディスクからデータのブロックが走査され、周辺バスを介してホストプロセッサ又は、主記憶に転送する要求を行うことにより開始する。データのブロックは典型的には、データの複数の小ブロック又は、フレームを有する。これらのデータのフレームは、典型的には、光ディスクドライブ内で、前処理され、論理的にグループに集められ、周辺バスを介してホストプロセッサへ送られる。例によれば、PCで使用される例示的な16XCD−ROMドライブは、典型的には、取り出したデータを前処理するディジタル信号処理配置と、典型的には、128キロバイトのダイナミックランダムアクセスメモリ(DRAM)の中に、単一バーストでフレームのグループをホストプロセッサに送る前に、2から3キロバイト長のデータのフレームを蓄積するバッファ管理配置を有する。
【0005】
光ディスクドライブ設計者が直面する問題の1つは、光ディスクの形式/フォーマットによりデータのフレームには異なる形式があり,又、ある状況では、これらの全フレームはホストプロセッサに転送される必要が無いということである。
【0006】
例えば、CD−ROMディスクは、典型的には、ある”リードイン”及び、”リードアウト”領域に関連したデータフレームを有する。これらの”リード領域フレーム”は、適切に位置決めし、光ディスクに記録されたトラックを読み出し、また、ディスクの許された境界内に待機するために光ディスクドライブ内で使用するテーブルオブコンテンツ(TOC)記述子を有する。更なる例では、CD−R、CD−RW及び、他の同様な記録可能光ディスクは、典型的には、後続するデータの書き込みブロックとの間に記録される複数の”リンク領域フレーム”を採用する。これらのリンク領域フレームも、適切に位置決めし、トラックに記録されたデータのブロックを読み出すために光ディスクドライブ内で使用される。
【0007】
したがって、光ディスクドライブは、データのブロック内のどのフレームがホストプロセッサに転送されるべきであり、また、どのフレームがスキップされ、又は、無視され及び、ホストプロセッサに転送されないかを決定する能力があることが望ましい。どのフレームがホストプロセッサに転送されるべきであるかを決定するタスクは、典型的には、例えばファームウェアを用いた実時間ファームウェアプログラムに応答するプロセッサ等の、更に各データのフレームを処理又は、試験できる、バッファマネージャ内で行われる。このフレーム毎の試験処理は、バッファ管理配置及び、時々他の処理資源にも、負荷が重い傾向がある。更に新世代の光ディスクドライブは、現行の光ディスクフォーマットの変更を採用する、又は、光ディスクが読み出される速度が上昇する可能性がある。したがって、従来のファームウェアによるプロセッサの処理能力では、将来必要な処理要求や必要な時間制約を維持できなくなる可能性がある。
【0008】
光ディスクドライブは、通常は、異なる光ディスクフォーマット/形式と互換性があることが望ましいことを考慮すると、光ディスクドライブでの処理負荷を効果的に減少し、且つ、光ディスクドライブからホストプロセッサへフレームを効果的に転送する方法及び、配置が必要である。
【0009】
発明の概要
本発明による方法及び、配置は、記録媒体に記録されたデータに関するある知られた及び/又は、決定できる特徴を考慮し且つ、各データのフレームにタグデータを選択的に付加することことにより、蓄積装置から外部装置へのデータのフレームの転送を能率的にすることで、データ蓄積装置の処理負荷を非常に減少する。そして、タグデータは、例えば、動作が蓄積媒体内でデータのフレームを処理するのにどのような動作が要求されるか等の、各データのフレームの特性を決定するのに使用される。ディジタル論理で実現できるこの”タグの付加”機構は、データのフレームのかなりの部分に対するオーバーヘッドの処理を軽減する傾向にある。それゆえ、蓄積装置に関連した待ち時間は、同様に減少される。
【0010】
本発明のある特徴に従って、本発明の種々の実施例は、光ディスクドライブ、磁気ドライブ/テープ,及び、同様なデータ蓄積装置を含む種々のデータ蓄積装置で使用できる。
【0011】
これを考慮し、上述の要求等は、本発明のある実施例による、データ蓄積媒体から外部装置へデータを転送するのに使用する復号器により達成される。データ蓄積媒体は、典型的には、少なくとも1つのデータトラックを有する。各データトラック内には、複数の小ブロック又は、データのフレームがある。復号器は、入力配置、フレーム管理配置及び、出力配置を含む。入力配置は、少なくとも1つのデータのフレームを受信するように成される。入力配置は、データのフレームに関するある特徴を決定でき、且つ、少なくとも1つのこれらの特徴に基づいて、データのフレームにデータタグを付加することができる。データのフレームにタグが付加されると、入力配置は、データタグを付加されたデータのフレームをフレーム管理配置に供給する。フレーム管理配置は、タグが付加されたデータのフレームを受信しタグが付加されたデータのフレームを蓄積し、そして、続いて、タグが付加されたデータのフレームを出力配置へ供給する。出力配置は、タグが付加されたデータのフレームを受信し、そして、タグが付加されたデータのフレームに関連したタグデータに基づいて、タグが付加されたデータのフレームを外部装置へ供給する。
【0012】
本発明の他の実施例により、タグデータは4つの形式のうちの1つである。第1の形式は、関連するタグが付加されたデータのフレームは、例えば、ホストプロセッサのような外部装置へ転送できることを本質的に意味する”送信タグ”である。次の形式のデータタグは、”スキップタグ”である。データのフレームがスキップタグに関連しているときには、タグが付加されたデータのフレームは、本質的に、スキップされ外部装置へ転送されない。第3の形式のタグデータの”ポーズタグ”がデータのフレームと関連している場合には、タグが付加されたデータのフレームに対して、更に、タグデータが、送信タグ、スキップタグ又は、停止タグに変更されるべきかどうかを決定する処理を必要とする。第4の形式のタグデータは”停止タグ”である。タグが付加されたデータのフレームが、停止タグに関連しているときには、更なる処理が必要なエラー状態がある。
【0013】
本発明の更なる実施例により、更なる例では、特徴が、データのフレームは、1)一度書込まれたトラックからの主領域フレーム、2)固定長パケットの書かれたトラックからの主領域フレーム、3)可変長パケットの書かれたトラックからの主領域フレーム、4)可変長パケットの書かれたトラックからの有効なリンク領域フレームのいずれかであると認識するときには、送信タグがデータのフレームに付加される。同様に、特徴が、データのフレームは、固定長パケットの書かれたトラックからのリンク領域フレームであると認識するときにはスキップタグがデータのフレームに付加され、特徴が、データのフレームは、可変長パケットの書かれたトラックからのリンク領域フレームであると認識するときにはポーズタグがデータのフレームに付加される。特徴が、データのフレームは、有効なデータのフレームでないと認識するときには停止タグがデータのフレームに付加される。例えば、データのフレームが無効なアドレス内であるときには、停止タグが付加される。更に、データのフレームを読むことができ、又は、同期問題を有し、又は、データエラーの場合で、上記特徴に合致しない場合には、データのフレームにポーズタグが付加される。
【0014】
上述の要求他は、更に、本発明のある実施例により、コンピュータシステムで使用される蓄積装置により達成される。蓄積装置は、サーボ組立体と、蓄積媒体と、読み出し組立体と、データエンジンと、入力配置と、フレーム管理配置、及び、出力配置を有する。例えば光ディスク、磁気ディスク又は、その組合せ等の蓄積媒体は、サーボ組立体上に配置され、読み出し組立体は、蓄積媒体からデータのトラックの少なくとも部分を読み出し且つ、読み出し信号を出力すのに使用される。データエンジンは、読み出し信号を受信し、読み出し信号の少なくとも部分に基づいて、少なくとも1つのデータのフレームを出力する。そして、データのフレームは、入力配置に供給される。入力配置は、データのフレームに関するある特性を決定し、データのフレームにタグデータを付加し、タグの付加されたデータのフレームをフレーム管理配置へ出力する。フレーム管理配置は、それを蓄積し、続いて、出力配置へ出力する。そして、出力配置は、タグの付加されたデータのフレーム内のタグデータに基づいて、外部装置へタグの付加されたデータのフレームを供給する。
【0015】
本発明の他の実施例により、データ蓄積装置から外部装置へデータを転送するのに使用する方法が提供される。その方法は、データ蓄積媒体から少なくとも1つのデータのフレーム読み出すステップと、データのフレームに関するある特徴を決定するステップと、データのフレームに関する少なくとも1つの特徴に基づいて、データのフレームにタグデータを付加するステップ、及び、タグの付加されたデータのフレーム内のタグデータに基づいて、タグの付加されたデータのフレームを外部装置に供給するステップとを有する。本発明のある実施例により、データのフレームにタグデータを付加するステップは、データのフレームの特性に基づいて、送信タグ、スキップタグ、ポーズタグ及び、停止タグを選択するステップを更に有する。データのフレームにタグを付加することは、論理的及び/又は物理的に行える。本発明のある実施例による例により、タグデータをデータのフレームに付加するステップは、タグデータを生成するために、バッファされたデータのフレーム内のタグデータ内で、(例えば、データの2値のビット/バイの特定のシーケンスを付加し)データを物理的に変更するステップを更に有する。
【0016】
本発明の更なる特徴、優位点及び、優れた特徴は、以下の記載で説明され、当業者には明らかとなろう。本発明の優位点は、特に請求項で示された手段及び、組合せにより達成され得る。
【0017】
発明の詳細な記載
図1は、PC等の従来のコンピュータシステム10を示し、ホストプロセッサ12、主メモリ14、バス16及び、蓄積装置18を有する。ホストプロセッサ12は、典型的には、主メモリ14及び、蓄積装置18の両方からデータを読み出し及び/又は書きこむように成される。蓄積装置18から読み出されたデータは、典型的には、プロセッサ12により処理される前に、主メモリ14に記録される。同様に、ある配置では、データはホストプロセッサ12により主メモリ14から読まれ、バス16を介して蓄積装置18へ供給され、蓄積媒体に書きこまれる。バス16は、典型的には、例えば、小型コンピュータシステムインターフェース(SCSI)、アドバンストテクノロジアタッチメントパケットインターフェース(ATAPI)、IEEE1394シリアルバス又は、同様のフォーマットのバス等の周辺バスである。
【0018】
簡単のために、以後は、ホストプロセッサ12が、蓄積装置18から読み出されるデータのブロック要求し、ホストプロセッサ12及び/又は主メモリ14へバス16を介してデータが供給される読み出し動作に焦点を当てる。
【0019】
図2は、例示的な蓄積装置18の主なサブシステムを示すブロック図である。蓄積装置18は、例えば、CD又は、DVDなどの記録媒体22を有する。記録媒体22は典型的には、蓄積装置18から取り外し可能である。蓄積装置18に適切に挿入されたときには、記録媒体22は蓄積装置18内で支持され、サーボ組立体24により回転される。サーボ組立体24は、典型的には、スピンドルモータと支持配置(いずれも図示していない)を有する。サーボ組立体24はドライブコントローラ26に接続される。ドライブコントローラ26は、典型的には、1つ又はそれ以上のソフトウェアに従って蓄積装置18内の種々のサブシステムを制御し、且つホストプロセッサ12とバス16を介して通信するように成された、マイクロプロセッサである。
【0020】
データは、読み出し/書きこみ組立体28により、記録媒体22から読み出される(又は、書きこまれる)。読み出し動作に関しては、読み出し/書きこみ組立体28はレーザダイオード及び、レーザピックアップを有する(いずれも図示していない)。読み出し/書きこみ組立体28は、読み出し(又は、書きこみ)動作中は、コントローラ26の制御下で、サーボ組立体24により記録媒体22に亘って選択的に位置決めされる。データは、通常は、一定のピット(例えば、データビット)サイズを有する連続した螺旋トラックに沿って,記録媒体22に蓄積される。従って、1回転当りの情報量は、蓄積媒体の内側よりも外側の方が大きい。
【0021】
読み出し/書きこみ組立体28は、記録媒体22に対して移動でき、それにより、特定のトラック上に位置決めされることができ、所望のデータを読み出すために記録媒体が回転されるにつれて、トラックを追従する。
【0022】
読み出し/書きこみ組立体28によりアナログ信号が読み出され、例えば、ディジタル信号処理装置(DSP)等のデータエンジン30へ供給される。データエンジン30は、例えば、従来のアナログディジタル変換技術を使用して、アナログ信号をディジタルデータストリームへ変換する。蓄積装置の形式によって、データエンジン30はデスクランブル、訂正、抜き出し、除外及び/又は他の変更をデータストリーム中のあるデータに行うようにすることもできる。例えば、あるCD−ROMでは、データエンジン30は、アナログ信号から主データ(MD)及び、サブコードデータを抜き出すために、従来の復調技術(例えば、データスライス)及び、クロスインターリーブドリードソロモン符号(CIRC)訂正技術を採用する。従来のCD−ROMのデータは、約2352バイトのMDと96バイトのサブコードデータの各々を有するデータのフレームに分離される。サブコードデータフォーマットは実際には、98バイトであるが、2つのバイト又はスロットは、サブコードフレームを検出するためにブランクのままである。残りの96スロットは、それぞれ1バイトのサブコードデータを有する。図示されているように、データエンジン30はドライブコントローラ26に接続され、ドライブコントローラ26に応答する。
【0023】
データエンジン30からの結果のディジタルデータは、ブロック復号器32へ供給される。ブロック復号器32は、バスインターフェース35とバス16を介してホストプロセッサ12へディジタルデータを転送するように成される。読み出し動作中は、ブロック復号器32は、ドライブメモリ34へデータのフレームを集めて蓄積する。そして、ブロック復号器32は、バスインターフェース35とバス16を介して、ドライブメモリ34からホストプロセッサ12へ、単一バースト転送で、フレームのグループ(例えば、約4から8フレーム)を転送する。ブロック復号器32は以下で詳細に説明される。ブロック復号器32はドライブコントローラ26に接続され、ドライブコントローラ26に応答する。
【0024】
ドライブメモリ34は、典型的には、ブロック復号器32には接続されているが、その他には接続されていない従来型のDRAMチップである。ドライブメモリ34のサイズとパラメータは、蓄積装置18の動作速度、ブロック復号器32の動作及び待ち時間、及び、ホストプロセッサ12の動作及び、待ち時間により変わる。CD−ROMでは、ブロック復号器が、バーストでフレームのグループを転送する場合には、ドライブメモリ34には少なくとも約50フレームのデータを蓄積できる能力を有するのが普通である。例として、ドライブメモリ34は通常は、16XCD−ROMでは約128キロバイトを必要とし、32XCD−ROMでは約256キロバイトを必要とする。
【0025】
蓄積装置18は、更に、バス16と接続するためのバスインターフェース35を有する。バスインターフェース35は、バス16の特定のフォーマットに特に設計された従来のインターフェース回路である。このように、例えば、ある配置では、バスインターフェース35は、SCSI,ATAPI、1394又は、他の同様のバスインターフェースである。バスインターフェース35は、更に、ドライブコントローラ26と接続し、ドライブコントローラ26に応答する。
【0026】
図3は、図2に示す例示的なブロック復号器32のブロック図を示す。ブロック復号器32は、データエンジンインターフェース論理36、誤り訂正論理37、バッファマネージャ38、ホストインターフェース40及び、コントローラインターフェース論理42を有する。データエンジンインターフェース論理36は、データエンジン30とデータを交換するように成され、誤り訂正論理37とドライブコントローラ26からコントローラインターフェース論理42を介した命令に応答する。ホストインターフェース論理40は、バスインターフェース35とデータを交換するように成され、バッファマネージャ38からと、コントローラインターフェース論理42を介したドライブコントローラ26からの命令に応答する。同様に、コントローラインターフェース論理42は、ドライブコントローラ26、誤り訂正論理37、バッファマネージャ38、データエンジンインターフェース論理36、及び、ホストインターフェース論理40との間で制御情報を交換することができるように成される。
【0027】
名前が示すように、誤り訂正論理37は、データエンジンインターフェース論理36を介して、データエンジン30から受信されたディジタルデータの中の誤りを訂正するために設けられる。これは、典型的には、各フレーム内のあるデータを推定する従来のデータ訂正技術を採用し、特定の形式の誤りを検出することを含み、そして、例えば、フレーム内の破壊された又は、正しくないデータを、自動的に変更する、又は、コントローラインターフェース42を介してコントローラ26から更なる援助を要求することにより、可能なときには検出した誤りを訂正する。
【0028】
読み出し動作の指示で、バッファマネージャ38は、誤り訂正論理37からデータのフレームを受信し、ドライブメモリ34へ選択的にデータのフレームを蓄積する。バッファマネージャ38は、さらに、ホストプロセッサ12へ転送するために、ホストインターフェース論理40へあるフレームを供給するように配置される。以下に詳細に説明するように、バッファマネージャ38が必要な場合には、コントローラインターフェース42を介してコントローラ26に動作的に結合され、割り込みを発生し、ドライブコントローラ26からの援助を更に要求する。
【0029】
図4は、図3に示すブロック復号器32の1つ又はそれ以上の機能/回路で具体化された、又は、採用された従来のバッファ管理処理50を示す。バッファ管理処理50は、選択されたデータのフレームをホストプロセッサ12へ伝送する。
【0030】
バッファ管理処理50は、論理的に又は、物理的に又は、その他で、ドライブメモリ34に蓄積できる蓄積されたフレーム52等の蓄積されたデータのフレームの複数のキュー(例えば、54,58,60及び、62)を管理することができる。例えば、転送キュー60と呼ぶキューの1つは、結果的にホストプロセッサ12へ転送されるデータのフレームを有する。図4に示される矢印は、バッファ管理処理50が、論理的に又は、物理的に又は、その他で、フレームをあるキューに組織化する又は、配置することを示す。
【0031】
新しいフレームデータが到着したときに、バッファ管理処理50は新しいフレーム58内の新しいデータを、空キュー62からヘイスタック(haystack)キュー54へ配置する。ヘイスタックキュー54へ所定の閾値フレーム数が配置されると、バッファ管理処理50はコントローラ26へ割り込みを発生する。割り込みが発生すると、コントローラ26は、ヘイスタックキュー54内の各フレーム52を評価し、次に何をするかを決定する。コントローラ26が、フレーム52はホストプロセッサ12へ転送できると決定したときには、バッファ管理処理50は、フレーム52がホストプロセッサ12により要求されるまでに、フレーム52をデータキュー58へ配置する。データキュー58内のフレームがホストプロセッサ12により要求されたときには、バッファ管理処理50は要求されたフレームを転送キュー60へ配置する。一旦転送キュー60に入ると、フレームは、例えば、ホストインターフェース論理40により、ホストプロセッサ12へ転送される。転送キュー60からフレーム52の転送に続いて、バッファ管理処理50は、フレーム52を空キュー62内に配置する。これにより、後続する到着する新しいフレーム56を蓄積するのに使用する関連したメモリ資源を本質的に開放にする。
【0032】
所定のフレーム52に対するコントローラ26による評価が、フレーム52はホストプロセッサ12へ転送するべきでないと決定したときには、フレーム52は、空キュー62に配置される。このような方法で、バッファ管理処理50は、ホストプロセッサ12へ特定のフレームを送ることは適切であるかを決定するために、データのフレームを並べ変えることができる。
【0033】
従来のCD−ROMドライブでは、要求されたとしても、ホストプロセッサ12へ転送することになっていないデータのフレームが幾つかある。これらは,限定はされないが、CD−ROMのリードイン又は、リードアウト領域から読まれたフレームである。
【0034】
図5は、CD−ROMに記録されたデータ70を示す。示されているように、データ70は、本質的に、リードイン領域72を含み、次に1から99トラック74とリードアウト領域76が続く。リードイン領域72内には、例えば、各トラックの開始と終了境界の、テーブルオブコンテンツ(TOC)部73がある。同様に、例えば、トラック74aの、各トラック内には、トラック74aに関する特定の情報を有する特定のトラック記述子75がある。トラック記述子75は、典型的には、トラックの最初の150フレーム内に含まれている。リードアウト領域76は、データ70の最後に記録され、且つ、典型的には、例えば、読み出し動作中のCD−ROMの走査が誤ってトラック74を通過した場合に、サーボ組立体24を使用して読み出し/書きこみ組立体28の回復及び、再位置決めを行うために、コントローラ26により使用される情報を含む。
【0035】
ある明かな例外として、リードイン領域72、トラック記述子75及び、リードアウト領域76に記録されているフレームは、典型的には、ホストプロセッサ12へ転送されない。実際、そのような要求及び/又は転送は通常エラー状態と考えられる。
【0036】
トラック記述子ブロックは、トラックに関する情報を見つけるために、コントローラ26により使用される。例えば、コントローラ2は、トラック記述子ブロックを、トラックが、パケットが書きこまれたトラックである場合及び、そのようなら、トラック内のパケットは固定長か可変長かどうか、そして、固定長なら固定長は幾つかを決定するのに使用できる。従来技術では知られているように、パケットが書きこまれたトラックでは、データは光ディスクに、1トラックを構成するために、固定長か又は、可変長のいずれかで、複数のパケットで記録される。
【0037】
図6は、どのようにトラック80内で2つのパケットが連結されているかを示すための、例示的なパケットの書きこまれたトラック80の部分を示す。図示のように、パケットの書きこまれたトラック80は、第1パケットに関連する複数のフレーム88を含む第1データ領域82、及び、第2パケットに関連する複数のフレーム89を含む第2データ領域86を有する。リンク領域84は、第1データ領域82と第2データ領域86の間に配置される。リンク領域84は、最初の記録動作時にフレー88のすぐ後に書き込まれた複数のランアウトブロック90を有する。続く記録動作で、幾つかのランインブロック94が、フレーム89の記録前に記録される。ランアウトブロック90及び、ランインブロック94は、本質的には、あるパケットから次のパケットへ遷移が起こったことを認識させ、それにより、後続の書きこまれたパケットデータに同期するために、蓄積装置18に必要な情報を提供する。
【0038】
ランアウトブロック90とランインブロック94の間では、リンクブロック92があり、最初の書きこみ動作及び、後続の書きこみ動作の両方の間に書きこまれたデータを含み得る。このように、例えば、リンクブロック92は、あるものは最初の書きこみ動作からのそして、あるものは後続の書きこみ動作からの、重ね合わされたデータビットを含み得る。
【0039】
固定長パケットに関しては、ランアウトブロック90、リンクブロック92、及び、ランインブロック94内のブロックは、通常は、ホストプロセッサ12へ転送されない。しかし、可変長パケットについては、ランアウトブロック90、リンクブロック92、及び、ランインブロック94内のブロックは、ホストプロセッサ12へ転送され得る。このように、蓄積装置18は、固定長と可変長の書きこまれたトラックを区別する更なる能力が必要である。以下で述べるように、このような判定するのに必要な情報は、典型的には、(例えば、トラック記述子、TOC等の中の)記録媒体22に記録されたデータ内に設けられる。
【0040】
バッファ管理処理50の複雑さは、それゆえ、パケットが書かれたトラックを読み出すために増加する。この複雑さは、蓄積装置18に関連した待ち時間を増加し得る。例えば、待ち時間は、ホストプロセッサ12が、リンク領域84からの部分である複数のフレームを含むデータのブロックの転送を要求したときに、増加する。ホストプロセッサ12がリンク領域84に関連したフレームを要求しないなら、バッファ管理処理50は、転送キュー60から空キュー62へ不要なフレームを移動する必要がある。この更なる分析は、典型的には、コントローラ26が割り込みされることを必要とし、また、フレームの単一の転送よりもむしろ複数の転送をする結果となる。これらの両副作用は、蓄積装置18の待ち時間を増加しがちである。
【0041】
従って、どのフレームがホストプロセッサ12へ転送されるかを決定するのにに関連した処理負荷を効果的に減少する、改良された方法及び、配置が必要である。
【0042】
以下で示すように、本発明のある実施例に従って、蓄積装置18で行われることが必要な様々な判断を能率的にする、改良された方法及び配置が提供される。本発明のある特徴に従って、改良されたブロック復号器は、更なる機能を有する。例えば、各々の新たなフレーム56とマークについてのある属性を認識する、又は、コントローラ26を割り込みする及び/又はフレームの転送を複数の転送に分ける必要性を減少させるように新たなフレーム56を識別する、ディジタル論理で実現される。このように、フレーム52をヘイスタックキュー54からデータキュー58へ移動する判断を、簡単化することができ、及び/又は、リンク領域84に関連したフレームを転送キュー60から空キュー62へ転送する判断を簡単化することができる。
【0043】
これを考慮すると、(上述の)TOC73とトラック記述子75に加えて、記録媒体22に記録されたデータに関する更なる情報が、フレームの形式に関わらず各有効なフレーム内で、利用できる。図7は、約2.5キロバイト長の例示的な従来のフレーム88aを示す。図に示されているように、フレーム88aは、ユーザデータが記録されている主データ領域100、サブコード領域102及び、フォーマットされたQ領域104及び、予備(未使用)領域106を有する。
【0044】
図8は、データエンジン30からのデータの中にある様々なデータフィールドを示す。ブロック復号器32は、データフレームを整列し、アドレス情報及び、トラックのモード情報を見つけるために、同期データフィールド(SYNC)110、分−秒−フレーム(MSF)アドレス112及び、モードバイト(MODE)114を使用する。情報は主データ領域100’へ転送される。(例えば、CRCの)誤り検出符号118及び、(例えば、C3符号の)誤り訂正符号(ECC)122が、主データ(MD)116の正しさを検査するために、誤り訂正器37で使用される。図7に示されているように、領域102及び、104に蓄積されるサブコードを含む更なるデータストリームもある。例として、従来のモード1フォーマットのヘッダでは、これらのフィールドは、12バイトのSYNC110、MSFアドレス112、MODE114、MD116、誤り検出符号(EDC)118、予備フィールド(SPARE)120及び、誤り訂正符号(C3)122を有する。
【0045】
上述の情報の部分を使用し、本発明の実施例による方法及び、配置は、優位に、蓄積装置18に関連する待ち時間及び、特に、フレームを転送キュー60からホストプロセッサ12へ転送する際に、バッファ管理処理50により発生された待ち時間を減少する。ハードウェア及び/又はソフトウェアで実現できるこれらの方法及び配置は、基本的に、各々の新しいフレーム56を処理する際の初期に加えることができる、命令符号(オペコード)タグ240(図11参照)を採用する。
【0046】
オペコードタグ240は、例えば、ホストプロセッサ12への転送中に、後続する処理の速度を向上するために蓄積装置18内で使用される。本発明の好適な実施例によれば、例えば、図11のフレーム88’に図示されているようなオペコードタグ240は、予備領域106’に加えられるか又は、含まれる2値データの形式を有する。この2値データは、バッファ管理処理50内で発生する必要のある特定の動作を識別する。
【0047】
図9は、蓄積装置18’(即ち、図2及び、3の蓄積装置18の改良版)で使用する、処理200のフローを示す図である。処理200は、蓄積装置18’に記録媒体22を取り付ける初期ステップ202を有する。例えば、ステップ202は、光ディスクをCDドライブ、DVDドライブ又は、同様なドライブに挿入することを含むことができる。次にステップ204では、記録媒体22に記録されたデータ70の選択部分が読み出され特定の情報が集められる。例えば、TOC73は、データ70に記録されたトラック74の数及び、各トラック74の開始及び、終了位置に関する情報を集めるために、読み出される。更に、各トラックのトラック記述子75は、トラックは一度書きこまれたトラック又は、固定長或は可変長のパケットが書かれたトラックのいずれかであるかに関する情報を集めるために読み出されることができる。トラックに関する特徴を提供するこの情報は、蓄積装置18内で蓄積又は、維持されているテーブルに含まれる。
【0048】
次にステップ206では、蓄積装置18は、ホストプロセッサ12からの読み出し要求命令の受信を待つ。読み出し要求命令に応じて、処理200はステップ208に進み、ここでは、蓄積装置22から要求されたデータブロック又は、その部分が読み出される。このステップでは、ハードウェアはタグの定義に関して設定されることができる。各新しいフレーム56が読み出されると、幾つかの有効性の検査が行われる。例えば、読み出しデータが有効かどうかを決定するために、同期試験が行われる。フレームが同期試験を通過すると、従来のCRCが行われる。更に、例えば、読み出し動作で決定されるように、フレームのアドレスも、許容できるアドレス範囲内であるかどうかが確認される。フレームがアドレスの有効性試験で落ちると、STOPオペコードタグがステップ210及び、212で付加される。STOPオペコードタグは、本質的に、フレームに問題があることを示す。例えば、不正なアドレスを有する既知の違反フレームに対して、STOPオペコードは使用される。例えば、壊れたデータ又は、不明のデータに対して使用されるPAUSEオペコードタグと比べる。STOPオペコードタグと異なり、PAUSEオペコードタグについては、コントローラ26はすぐに割り込まれ、ホスト12から要求が来る前に、リトライ動作が行われ得る。
【0049】
ステップ208でフレームは有効であると判定されると、ステップ210で、トラック及び、フレームの形式に応じて、SEND,SKIP,又は、PAUSEオペコードタグのいずれかがフレームに与えられる。
【0050】
一回書き込みトラック(例えば、CD−ROM又は、DVD−ROM)に対しては、フレームはホストプロセッサ12へ転送できるので、ステップ214でSENDオペコードタグが付加される。フレームは、ステップ214で生成されたテーブルの情報に基づいて、1回書きこみトラック又は、パケットが書かれたトラックのいずれかの部分であるか決定される。
【0051】
固定長パケットの書かれたトラックに関しては、ステップ216では、フレームの形式(即ち、リンク領域フレーム又は、データ領域フレーム)により、2つのオペコードタグが付加され得る。例えば、図8に示すように、フレームのヘッダのモードフィールド114を使用してフレームの形式が決定される。このように、例えば、モードフィールド114のデータのバイトの最初の3ビット115は、フレームがリンクフレームかデータ領域フレームかを識別する。フレームが、固定長パケットの書かれたトラックのリンク領域フレームならば、ホストプロセッサ12はフレームを受信しない。SKIPオペコードタグがリンク領域フレームに付加され、フレームはホストプロセッサ12へ転送されない。フレームがデータ領域フレームなら、ホストプロセッサ12はフレームを受信することが許される。SENDオペコードタグがデータ領域フレームに付加され、ホストプロセッサ12へ転送される。
【0052】
可変長パケットの書かれたトラックに対しては、ステップ218で、、フレームの形式(即ち、リンク領域フレーム又は、データ領域フレーム)により、2つのオペコードタグが付加され得る。例えば、図8に示すように、フレームのヘッダのモードフィールド114を使用してフレームの形式が決定される。フレームがリンク領域フレームなら、ホストプロセッサ12はフレームを受信することが許される。しかし、ホストプロセッサ12へ転送する前に、更なる処理がフレームに行われることを必要とする。図6を参照すると、リンク領域84内には7ブロックのデータがあることが分かる。しかし、通常は、データエンジン30は、リンクブロック92内のデータの重なりによる7ブロックのデータよりも、8ブロックのデータを出力する。従って、しばしば”スリップ”として参照されるこの余分なデータのブロックは、識別され、ホストプロセッサ12へ転送されないようにする必要がある。これにより、PAUSEオペコードタグがリンク領域フレームに付加され、フレームはホストプロセッサ12に転送されない。しかし代わりに例えば、コントローラ26により更に処理されるために保持される。コントローラ26は、リンクブロックを更新/訂正し、SENDのオペコードタグデータを上書きし、またSKIPタグデータを他のフレームへ書きこみ得る。フレームがデータ領域フレームの場合には、ホストプロセッサ12はフレームを受信することが許される。このように、SENDオペコードタグがデータ領域フレームに付加され、フレームはホストプロセッサ12へ転送される。
【0053】
有効なフレームが上述の1つの形式に合致すると決定できなかった場合には、ステップ220では、例えば、コントローラ26で更なる処理を行えるように、PAUSEオペコードタグが付加される。PAUSEオペコードタグは、誤り訂正不能、同期スリップ等が検出されたときも、使用できる。このように、方法及び、配置は、次の世代の蓄積装置又は、他の知られていない/明らかでない蓄積媒体のフォーマットで使用できるように意図されてる。しかし、PAUSEオペコードに応答する更なる処理は、蓄積装置の待ち時間を減少するよりは、むしろ増加する結果となり得ると認識される。
【0054】
本発明の好適な実施例により、処理200は、図2及び/又は3に示されるように、ブロック復号器内のディジタル論理で実現される。例えば、同期、CRC及び、アドレス範囲及び、モード試験及び、オペコードタグ発生/付加は、データエンジンインターフェース論理36及び/又は誤り訂正論理37の改良版内で行うことができる。これらの試験は、当業者にはよく知られており、また、従来の蓄積装置でも使用される。さらに、当業者には、ディジタル論理及び/又はソフトウェア/ファームウェア論理は、本発明の方法及び、配置を実行する蓄積装置18の改良版の1つ又はそれ以上サブシステムで採用できることがわかる。例えば、コントローラ26上で実行されるファームウェアプログラムは、処理200の様々なステップを更に行うため、変更できる。
【0055】
図10は、蓄積装置18’で使用する更なる処理300を示すフロー図である。処理300は、ステップ302を有し、ホストプロセッサ12へのデータの転送を行うために転送バッファカウンタがロードされる。転送バッファカウンタは、例えば、転送キュー60内にあり既に関連するオペコードタグ240を有するフレーム88’の数を有する。
【0056】
ステップ304で決定したように、オペコードタグ240がPAUSEに等しい場合には、処理300は、コントローラ26がオペコードタグをSENDかSKIPのいずれかに変えるのを待つ。例えば、フレーム88’が、可変長パケットの書かれたトラックからのリンク領域フレームであったのでPAUSEとマークされたなら、そして、フレームが後にスリップフレームであると決定されないなら、オペコードタグ240はSENDに変更される。逆に、フレーム88’が、後にスリップフレームであると決定される場合には、オペコードタグ240はSKIPに変更される。オペコードタグ240がSKIPに等しいなら、ステップ312で、ステップ306と一致して、フレームは空キュー62へ配置される。
【0057】
ステップ306で決定されるように、オペコードタグがSENDなら、データのフレームは、ホストプロセッサ12へ転送される。そして、ステップ310で、バッファカウントは減少される。次に、フレーム又は、スロットは、ステップ312で、空キュー62へ移動される。
【0058】
ステップ314では、転送カウントがゼロであるかどうかが決定される。転送カウントがゼロであるなら、処理300は終了する。転送カウントがゼロでないなら、処理されるデータのフレームが更にあり、ステップ304で処理300は戻る。
【0059】
ステップ306を参照すると、オペコードタグがSENDでないなら、処理300はステップ308へ進む。ステップ308では、オペコードタグがSKIPであるかどうかが決定される。オペコードタグがSKIPなら、処理300はステップ312、そして、上述のように、続いてステップ314へ進む。
【0060】
ステップ316で決定されるように、オペコードタグがSKIPでなく、しかしSTOPである場合には、処理300は終了する。
【0061】
特定の配置が必要な場合には、ホストプロセッサ12へフレーム88’を転送する前に、オペコードタグ240はフレーム88’から削除できることが認識される。しかし、多くの配置では、オペコードタグ240の付加された情報はホストプロセッサ12に悪影響を及ぼさないので、これは、不要である。
【0062】
本発明の好適な実施例では、処理300はディジタル論理で実現される。例えば、ステップ302,306及び、312はブロック復号器32及び/又はコントローラ26の改良版内で実行でき、ステップ304,308及び、310はホストインターフェース論理40及び/又はコントローラ26の改良版内で実行できる。ディジタル論理及び/又はソフトウェア/ファームウェア論理は、本発明の方法及び、配置を実行するために、蓄積装置18の改良版内の1つ又はそれ以上のサブシステム採用できることは当業者には更に理解されるであろう。このように、コントローラ26上で動作するファームウェアプログラムは処理300内の様々なステップを行うように改良できる。
【0063】
本発明は、現在最も実用的で好ましいと考えられる実施例と共に説明したが、本発明は開示した実施例には限定されず、請求項の範囲内の、様々な変更及び、等価な配置をカバーすると理解されるべきである。
【図面の簡単な説明】
【図1】 複数のデータフレームを有するデータのブロックを選択的にホストプロセッサに、バス又は、同様なネットワーク接続を介して転送するように配置された蓄積装置を有する、従来のコンピュータシステムを示す図である。
【図2】 少なくとも1つのデータのブロックが記録された蓄積媒体と、蓄積媒体からデータブロックを読み出すための図1の蓄積装置を示すブロック図であり、例示的な蓄積装置は、読み出し/書きこみ組立体、サーボ組立体、コントローラ、データエンジン、ブロック復号器、ドライブメモリ及び、バスインターフェースを有する。
【図3】 蓄積装置からホストプロセッサへデータブロックの選択された部分を転送する図2のブロック復号器を示すブロック図であり、例示的なブロック復号器は、データエンジンインターフェース、誤り訂正器、バッファマネージャ、ホストインターフェース及び、コントローラインターフェースを有する。
【図4】 蓄積装置からホストプロセッサへデータブロックの選択されたフレームを転送する例えば図2のブロック復号器で使用される従来のバッファ管理処理を示す図であり、例示的なブロック復号器は、少なくとも一部分は続いてホストプロセッサへ転送される、受信及び、蓄積されたデータフレームの複数のキュー(queues)又は、スタックを、論理的、物理的又は、その他で管理することができる。
【図5】 例えば、光蓄積ディスク等の、図2に示すような蓄積媒体に記録された例示的なフォーマットされたデータを示す図であり、フォーマットされたデータは、テーブルオブコンテンツ(TOC)部を持つリードイン領域、複数のデータ(即ちデータの小さな部分)のフレームを有する少なくとも1つのトラックとリードアウト領域を有する。
【図6】 複数のリンクブロックで分離された固定長又は可変長のいずれかの複数の分離したパケット内に書かれた図5に示すトラックの部分を示す図である。
【図7】 ドライブメモリに蓄積された図5に示す例示的なデータのフレームに含まれる主データ領域及び、予備(未使用)領域等の、異なる領域を示す図である。
【図8】 図7に示す例示的にフォーマットされた主データ領域にある異なるデータフィールドを示す図である。
【図9】 改良された蓄積装置で使用する処理のフローを示す図であり、処理は、本発明の実施例に従って、ある基準に基づいてデータのフレームに命令コードタグを付加し、更に、命令コードタグに基づいてデータのフレームを処理する。
【図10】 改良された蓄積装置で使用する処理のフローを示す図であり、処理は、本発明の実施例に従って、ある基準に基づいてデータのフレームに命令コードタグを付加し、更に、命令コードタグに基づいてデータのフレームを処理する。
【図11】 本発明の実施例に従った、命令コードタグを有するタグの付加されたデータのフレームを示す図である。
Claims (18)
- データ蓄積媒体上に記録された複数のデータのフレームを含む少なくとも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つの特徴に基づいて、データのフレームにタグデータを付加するステップと、
タグの付加されたデータのフレーム内のタグデータに基づいて外部装置へ、タグの付加されたデータのフレームを供給するステップとを有し、前記タグデータは、送信タグ、スキップタグ、ポーズタグ及び、停止タグを有するタグの少なくとも1つから選択する方法。 - 少なくとも1つの特徴が、データのフレームは、一度書込まれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからの主領域フレーム、可変長パケットの書かれたトラックからの主領域フレーム、及び、可変長パケットの書かれたトラックからの有効なリンク領域フレームを有するデータのフレームの組の少なくとも1つから選択された、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームに送信タグを付加することを更に含む請求項10記載の方法。
- 少なくとも1つの特徴が、データのフレームは、固定長パケットの書かれたトラックからのリンク領域フレーム又は、スリップフレームである、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームにスキップタグを付加することを更に含む請求項10記載の方法。
- 少なくとも1つの特徴が、データのフレームは、可変長パケットの書かれたトラックからのリンク領域フレームである、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームにポーズタグを付加することを更に含む請求項10記載の方法。
- 少なくとも1つの特徴が、データのフレームは、有効なデータのフレームではない、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームに停止タグを付加することを更に含む請求項10記載の方法。
- 少なくとも1つの特徴が、データのフレームは、一度書込まれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからの主領域フレーム、可変長パケットの書かれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからのリンク領域フレーム、及び、可変長パケットの書かれたトラックからのリンク領域フレームを有するデータのフレームの組の少なくとも1つから選択されていない、と認識するときには、データのフレームにタグデータを付加するステップは、データのフレームにポーズタグを付加することを更に含む請求項10記載の方法。
- タグの付加されたデータのフレームを外部装置へ供給するステップは、タグの付加されたフレームに関連したタグデータが送信タグである場合にのみ、外部装置へ、タグの付加されたデータのフレームを供給することを更に含む請求項10記載の方法。
- タグデータをデータのフレームに付加するステップは、タグデータを生成するために、データのフレーム内のデータを変更することを更に含む請求項10記載の方法。
- データのフレームは、一度書込まれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからの主領域フレーム、可変長パケットの書かれたトラックからの主領域フレーム、固定長パケットの書かれたトラックからのリンク領域フレーム、及び、可変長パケットの書かれたトラックからのリンク領域フレームを有するデータのフレームの組の少なくとも1つから選択されてるかどうかを決定するために、データのフレームに関するある特徴を決定するステップは、データ蓄積媒体の選択された部分からデータを読み出すことを更に含む請求項10記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/090,005 US6286061B1 (en) | 1998-06-02 | 1998-06-02 | System for applying a tag to a frame based on certain characteristics of the frame and transferring the frame as a function of the tag |
US09/090,005 | 1998-06-02 | ||
PCT/IB1999/000988 WO1999063526A2 (en) | 1998-06-02 | 1999-05-31 | Opcode-driven buffer manager for use in data storage devices |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002517873A JP2002517873A (ja) | 2002-06-18 |
JP4256590B2 true JP4256590B2 (ja) | 2009-04-22 |
Family
ID=22220660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000552663A Expired - Lifetime JP4256590B2 (ja) | 1998-06-02 | 1999-05-31 | データ蓄積装置で使用する命令コードで駆動されるバッファ管理装置 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6286061B1 (ja) |
EP (1) | EP1040468B1 (ja) |
JP (1) | JP4256590B2 (ja) |
KR (1) | KR100643669B1 (ja) |
CN (1) | CN1230821C (ja) |
AT (1) | ATE394777T1 (ja) |
DE (1) | DE69938647D1 (ja) |
TW (1) | TW509923B (ja) |
WO (1) | WO1999063526A2 (ja) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6535509B2 (en) * | 1998-09-28 | 2003-03-18 | Infolibria, Inc. | Tagging for demultiplexing in a network traffic server |
US6215526B1 (en) * | 1998-11-06 | 2001-04-10 | Tivo, Inc. | Analog video tagging and encoding system |
US6496876B1 (en) * | 1998-12-21 | 2002-12-17 | Micron Technology, Inc. | System and method for storing a tag to identify a functional storage location in a memory device |
US7389374B1 (en) | 2000-05-17 | 2008-06-17 | Marvell International Ltd. | High latency interface between hardware components |
US7281065B1 (en) | 2000-08-17 | 2007-10-09 | Marvell International Ltd. | Long latency interface protocol |
US6985426B2 (en) * | 2001-02-23 | 2006-01-10 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for recording optical information including dummy data, and optical disk having such data recorded thereon |
US6711659B2 (en) | 2001-09-27 | 2004-03-23 | Seagate Technology Llc | Method and system for data path verification |
US6728855B2 (en) | 2001-09-27 | 2004-04-27 | Seagate Technology Llc | Method and system for data path verification |
US6725172B2 (en) * | 2002-04-17 | 2004-04-20 | Agilent Technologies, Inc. | Systems and methods for tagging measurement values |
US7197699B2 (en) * | 2002-05-02 | 2007-03-27 | International Business Machines Corporation | Dynamic server page engines |
US7792121B2 (en) * | 2003-01-03 | 2010-09-07 | Microsoft Corporation | Frame protocol and scheduling system |
US7181701B2 (en) * | 2003-01-03 | 2007-02-20 | Microsoft Corporation | Glanceable information system and method |
US20040187077A1 (en) * | 2003-03-19 | 2004-09-23 | International Business Machines Corporation | Dynamic server page meta-engines with data sharing for dynamic content |
US7219350B2 (en) * | 2003-03-19 | 2007-05-15 | International Business Machines Corporation | Dynamic server page meta-engines with data sharing for dynamic content and non-JSP segments rendered through other engines |
GB2419026B (en) * | 2004-10-08 | 2009-05-06 | Hewlett Packard Development Co | Tape drive apparatus |
ES2630168T3 (es) * | 2004-11-19 | 2017-08-18 | Tivo Solutions Inc | Procedimiento y aparato para la transferencia segura y la reproducción de contenido multimedia |
US7962645B2 (en) * | 2005-01-31 | 2011-06-14 | International Business Machines Corporation | Apparatus, system, and method for automatically mapping a tape library system |
US7480747B2 (en) * | 2005-06-08 | 2009-01-20 | Intel Corporation | Method and apparatus to reduce latency and improve throughput of input/output data in a processor |
US7873982B2 (en) * | 2006-06-22 | 2011-01-18 | Tivo Inc. | Method and apparatus for creating and viewing customized multimedia segments |
US7661121B2 (en) * | 2006-06-22 | 2010-02-09 | Tivo, Inc. | In-band data recognition and synchronization system |
US8261300B2 (en) * | 2006-06-23 | 2012-09-04 | Tivo Inc. | Method and apparatus for advertisement placement in a user dialog on a set-top box |
US20080298468A1 (en) * | 2007-06-04 | 2008-12-04 | Mediaphy Corporation | Error tagging for decoder |
US20090138650A1 (en) * | 2007-11-26 | 2009-05-28 | Yen-Cheng Lin | Method and apparatus for managing firmware of an optical storage apparatus |
US8285923B2 (en) * | 2008-12-08 | 2012-10-09 | Western Digital Technologies, Inc. | Disk drive and method using native command queuing tags to identify logical block size and implement protection information |
US7995303B2 (en) * | 2009-08-31 | 2011-08-09 | International Business Machines Corporation | Overhead calculation in writing synchronized data to magnetic tape |
US8631284B2 (en) * | 2010-04-30 | 2014-01-14 | Western Digital Technologies, Inc. | Method for providing asynchronous event notification in systems |
US8762682B1 (en) | 2010-07-02 | 2014-06-24 | Western Digital Technologies, Inc. | Data storage apparatus providing host full duplex operations using half duplex storage devices |
CN111600961A (zh) * | 2020-05-22 | 2020-08-28 | 山东超越数控电子股份有限公司 | 一种通过can口传输位图文件的方法、系统、设备及介质 |
KR102278321B1 (ko) * | 2021-04-07 | 2021-07-16 | 김교봉 | Scada 소프트웨어에서 실시간 태그 데이터를 관리하는 장치 및 그 방법 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1989000313A1 (en) | 1987-07-01 | 1989-01-12 | Unisys Corporation | Fast-tag transfer improvement |
US5347642A (en) | 1989-11-30 | 1994-09-13 | Nec Electronics Inc. | Cache memory management unit |
JPH06124352A (ja) * | 1992-10-14 | 1994-05-06 | Sharp Corp | データ駆動型情報処理装置 |
US5249166A (en) * | 1993-02-12 | 1993-09-28 | Hamilton Rowan T | Optical disc audio reproduction device having track playback monitoring system |
JPH07169198A (ja) * | 1993-09-29 | 1995-07-04 | Nikon Corp | データ記録装置及びデータ記録方法 |
US5850500A (en) * | 1995-06-28 | 1998-12-15 | Kabushiki Kaisha Toshiba | Recording medium comprising a plurality of different languages which are selectable independently of each other |
US5584007A (en) * | 1994-02-09 | 1996-12-10 | Ballard Synergy Corporation | Apparatus and method for discriminating among data to be stored in cache |
US5734862A (en) * | 1994-05-31 | 1998-03-31 | Kulas; Charles J. | System for selectively buffering and displaying relevant frames from interleaving frames associated with respective animation sequences stored in a medium in response to user selection |
JPH08180418A (ja) * | 1994-12-27 | 1996-07-12 | Toshiba Corp | 記録媒体再生装置 |
TW332961B (en) * | 1996-02-09 | 1998-06-01 | Sony Co Ltd | Recording media |
US5937161A (en) * | 1996-04-12 | 1999-08-10 | Usa.Net, Inc. | Electronic message forwarding system |
-
1998
- 1998-06-02 US US09/090,005 patent/US6286061B1/en not_active Expired - Lifetime
-
1999
- 1999-05-31 CN CNB998012645A patent/CN1230821C/zh not_active Expired - Lifetime
- 1999-05-31 JP JP2000552663A patent/JP4256590B2/ja not_active Expired - Lifetime
- 1999-05-31 DE DE69938647T patent/DE69938647D1/de not_active Expired - Lifetime
- 1999-05-31 AT AT99921061T patent/ATE394777T1/de not_active IP Right Cessation
- 1999-05-31 KR KR1020007001050A patent/KR100643669B1/ko not_active IP Right Cessation
- 1999-05-31 EP EP99921061A patent/EP1040468B1/en not_active Expired - Lifetime
- 1999-05-31 WO PCT/IB1999/000988 patent/WO1999063526A2/en active IP Right Grant
- 1999-07-29 TW TW088112882A patent/TW509923B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
CN1230821C (zh) | 2005-12-07 |
CN1421035A (zh) | 2003-05-28 |
EP1040468B1 (en) | 2008-05-07 |
DE69938647D1 (de) | 2008-06-19 |
EP1040468A2 (en) | 2000-10-04 |
WO1999063526A2 (en) | 1999-12-09 |
WO1999063526A3 (en) | 2000-03-16 |
TW509923B (en) | 2002-11-11 |
ATE394777T1 (de) | 2008-05-15 |
JP2002517873A (ja) | 2002-06-18 |
KR20010022465A (ko) | 2001-03-15 |
KR100643669B1 (ko) | 2006-11-10 |
US6286061B1 (en) | 2001-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4256590B2 (ja) | データ蓄積装置で使用する命令コードで駆動されるバッファ管理装置 | |
KR100305110B1 (ko) | 광디스크를언더런상태로부터보호하는장치및방법 | |
JP3796858B2 (ja) | 光ディスク読出装置 | |
KR100673568B1 (ko) | 데이터 저장장치용 최소 프레임 버퍼 관리자 | |
US7533217B2 (en) | Optical disc apparatus with interruptible write operation | |
US6708307B1 (en) | Device and method for detecting synchronization patterns in CD-ROM media | |
US5940358A (en) | CD-R recording circuit with formatter to increase rate of generating control signals | |
US5802026A (en) | Disk player for constant angular velocity reproduction of a disk | |
JPH10149627A (ja) | 光ディスク記録装置 | |
US20020024907A1 (en) | Disk drive unit and disk drive method | |
JP3825511B2 (ja) | 情報記録再生装置 | |
JP2002367276A (ja) | 情報再生装置 | |
JP3759992B2 (ja) | 記録情報再生装置 | |
US6829671B1 (en) | Method and system for improved audio data retrieval from an optical media | |
JP2001357601A (ja) | 光ディスク装置およびそのディスクモータ制御方法 | |
US20060282611A1 (en) | Interruptible formatting | |
JP2004288331A (ja) | 情報記録再生装置 | |
KR100396886B1 (ko) | 호스트 컴퓨터로 광기기 디스크 드라이브의 서브코드데이터 제공 방법 | |
JP2002184119A (ja) | 追記型光ディスクの記録方法 | |
JPH11296310A (ja) | バッファアクセス装置及びこれを用いたcd−romデコーダ、dvdデコーダ、cd−romドライブ及びdvdドライブ | |
JP2002015529A (ja) | 光ディスク装置及びデータ処理方法 | |
JP2002093026A (ja) | 情報再生装置と情報再生方法 | |
JPH1166696A (ja) | ディスク再生装置 | |
JPH09223359A (ja) | 情報記録再生制御方式 | |
JP2001184843A (ja) | ディスク再生装置、ディスク再生システム及び方法並びにディスク再生用ソフトウェアを記録した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060529 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20070313 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080408 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20080422 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080707 |
|
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: 20090106 |
|
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: 20090130 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120206 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4256590 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120206 Year of fee payment: 3 |
|
R154 | Certificate of patent or utility model (reissue) |
Free format text: JAPANESE INTERMEDIATE CODE: R154 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 4 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 4 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 4 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130206 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140206 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |