JP4571523B2 - スクランブル回路、エンコード装置、エンコード方法及び記録装置 - Google Patents

スクランブル回路、エンコード装置、エンコード方法及び記録装置 Download PDF

Info

Publication number
JP4571523B2
JP4571523B2 JP2005060364A JP2005060364A JP4571523B2 JP 4571523 B2 JP4571523 B2 JP 4571523B2 JP 2005060364 A JP2005060364 A JP 2005060364A JP 2005060364 A JP2005060364 A JP 2005060364A JP 4571523 B2 JP4571523 B2 JP 4571523B2
Authority
JP
Japan
Prior art keywords
data
buffer
order
scramble
user data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005060364A
Other languages
English (en)
Other versions
JP2006244631A (ja
Inventor
剛生 有山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2005060364A priority Critical patent/JP4571523B2/ja
Priority to US11/366,629 priority patent/US7836375B2/en
Publication of JP2006244631A publication Critical patent/JP2006244631A/ja
Application granted granted Critical
Publication of JP4571523B2 publication Critical patent/JP4571523B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1866Error detection or correction; Testing, e.g. of drop-outs by interleaving
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10629Data buffering arrangements, e.g. recording or playback buffers the buffer having a specific structure
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/1075Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data
    • G11B2020/10759Data buffering arrangements, e.g. recording or playback buffers the usage of the buffer being restricted to a specific kind of data content data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B2020/1264Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting concerns a specific kind of data
    • G11B2020/1265Control data, system data or management information, i.e. data used to access or process user data
    • G11B2020/1267Address data
    • G11B2020/1271Address data the address data being stored in a subcode, e.g. in the Q channel of a CD
    • G11B2020/1272Burst indicator subcode [BIS]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs

Description

本発明は、光ディスクにデータを記録する際の記録速度の向上を図った記録装置、並びに記録装置に適用されるエンコード装置及びエンコード方法、エンコード装置に好適に使用可能なスクランブル回路に関する。
CD、CD−R/RW、CD−ROMなどのいわゆる第1世代の光ディスク、DVD(Digital Versatile Disc)などのいわゆる第2世代光ディスクに次いで、光源波長を405nm(青紫色)に短波長化したいわゆる第3世代光ディスクと呼ばれるブルーレイディスクが開発されている。ブルーレイディスクは、光源波長の短波長化の他、対物レンズの開口数NA(numerical aperture)を0.85に高め、ビーム・スポット面積をDVDに比して1/5程度に縮めることで、DVDの約5倍の面記録密度で記録マークを読み書き可能となっている。さらに、ディスク基板上に相変化記録層を設け、この上に0.1mmの透明なカバー層で覆うことでディスクとレーザ光の光軸との相対的な傾きによる収差を低減する構造が取られている。
ブルーレイディスクのデータ構成は規格により以下のように定められている。図20は、ブルーレイディスクのデータ構成を説明する図である。ブルーレイ規格においては、ディスク301には、記録データがRUB(Recording Unit Block)302と呼ばれる単位を1記録単位として記録される(以下クラスタともいう)。RUB302は、ランイン(Run-in)303、ランアウト(Run-out)305と呼ばれるデータ上書きのためのバッファ領域、ギャップ領域と、これらの領域間に配置されるフィジカルクラスタ(Physical Cluster)304とからなる。ランイン303は2760cbs(channel bits)、ランアウト305は1104cbsからなり、フィジカルクラスタ304は1932cbs×496frames=958272cbsからなる。ランイン303及びランアウト305を合わせると2フレーム(後述するレコーディング・フレーム(Recording Frame))分のチャネルビット長となる。フィジカルクラスタ304は、ユーザ・データ、及びディスクのアドレス情報などを含むBIS(Burst indicator subcode)からなる。
フィジカルクラスタ304は、496のレコーディング・フレーム306から構成される。各レコーディング・レーム306の先頭にはシンク領域(frame sync)が配置される。こうして、フィジカルクラスタ304を構成する496のレコーディング・フレームと、ランイン303及びランアウト305の2フレームとを合わせた498フレームから1RUB302が構成される。
レコーディング・フレーム306は1932チャネルビットで構成され、17PP(Parity Preserve/Prohibit RMTR)変調されている。これを復調した復調後のデータから、DSV(Digital Sum Value)制御(dc-control)ビットが削除されて、ECCクラスタが得られる。
図21は、ECCクラスタのフォーマットを示す模式図である。ECCクラスタ401には、496フレームからなり、ユーザ・データ402、ECCパリティ404とBIS403とが含まれる。ユーザ・データ402、ECCパリティ404を抜き出したものが、LDC(long distance code)クラスタであり、496フレームのうち64フレームがECCパリティ404である。また、BIS403を抜き出したものがBISクラスタとなる。
BISクラスタは、ディスクのアドレス情報を含む。BISクラスタのアドレス情報(9byte)は、ECCクラスタの496フレームが16分割され、31フレーム毎のアドレスユニット(Address Unit)とされた当該アドレス・ユニット毎に割り当てられる。BISとしては3フレームで9bytes(1フレーム当たり3bytes)揃うが、アドレスは最初の4bytesに含まれる。したがって、各アドレス・ユニットの最初の2フレームを取得することで、各アドレス・ユニットのアドレス情報(アドレス・ユニット・ナンバ)を得ることができる。BISクラスタは、デ・インタリーブされることでBISブロックと呼ばれるフォーマットとなる。また、LDCクラスタもデ・インタリーブされることで、LDCブロックと呼ばれるフォーマットとなる。
図22はLDCブロック501を示す模式図である。このLDCブロックは、図21に示すECCクラスタからユーザ・データ402、ECCパリティ404部分を抜き出し、横方向(1フレーム)152byte、縦方向496フレームとなったデータについてデ・インタリーブされたものである。デ・インタリーブは、2段階で行なわれる。先ず、2フレーム毎に、シフト量を3バイトずつ増加させて紙面右方向にローテーションする。次に偶数フレームの各バイトを奇数フレームの各バイト間に挿入する。これにより、横方向(1フレーム)が2倍の304byte、縦方向が半分の248フレームからなるデータとすることで完了する。
図22において、LDCブロック501のうちECCパリティ503を除いた部分がデータ・ブロック(data block)502とよばれ、1データ・ブロックは、32セクタ(Sec0〜Sec31)で構成される。1セクタは2048bytesのユーザ・データ504と4bytesのEDC(error detecting code)505の2052bytesからなる。記録を行うデータの並び順方向をレコーディング・フレーム方向Pとし、ユーザ・データとしての並び順方向をユーザ・データ方向Qとすると、レコーディング・フレーム方向Pは紙面横方向(行方向)、ユーザ・データ方向Qは紙面縦方向(列方向)となり、データの記録方向とユーザ・データの並び順は、異なる方向となっている。
1セクタは、ユーザ・データ方向Qに、216bytesのユーザ・データが折り返して配置される。すなわち、ユーザ・データ504は1列(216bytes)毎にレコーディング・フレーム方向Pに順に配列される構造となっている。よって、2052bytesの1セクタSecは、ユーザ・データ方向Qに9列と1/2列となる。4bytesのEDC505は各セクタSecにおいて2048bytesのユーザ・データ504の最後に配置されるため、最初のセクタのセクタ番号を0(Sec0)とすると、偶数番号セクタのEDC505は、248フレームの途中の位置に存在することとなる。
図23は、ユーザ・データとアドレス情報とからRUBを生成するまでの各データのエンコード順序を示す図である。LDCクラスタとBISクラスタとは別々に生成される。LDCクラスタD6は以下のように生成される。すなわち、ユーザ・データD1にEDCが付加されて(ステップSP1)データ・フレームD2とされる。EDC付加処理は、セクタSec毎に行われ、1セクタ分のデータをユーザ・データ方向Qに所定の演算を施すことでEDCが付加された状態のセクタSecを得ることができる。
EDCが付加されたEDC付加データ(Data Frame)D2にスクランブル処理を施して(ステップSP2)スクランブル済データ(Scrambled Data Frame)D3とする。スクランブル処理は、EDCが付加された1セクタ、2052bytesのデータを、ユーザ・データ方向Qの順に所定の演算を施すことで行なわれる。そして、このスクランブル済データD3を行列再配置し(ステップSP3)データ・ブロックD4とする(ステップSP4)。次に、データ・ブロックD4に対し、ECCパリティを付加して(ステップSP4)LDCブロックD5を生成し、これに上述のインタリーブを施して(ステップSP5)LDCクラスタD6を得る。
一方、BISクラスタD11の生成においては、先ず、ユーザ・コントロール・データD8をインタリーブし(ステップSP6)、アドレス・ユニット・ナンバD7にECCを付加してインタリーブし(ステップSP7)、これらのデータからアクセス・ブロック(Access Block)D9を生成する。このアクセス・ブロックD9にBIS ECCを付加して(ステップSP8)BISブロックD10を生成し、これにインタリーブを施して(ステップSP9)BISクラスタD11を得る。
そして、LDCクラスタD6及びBISクラスタD11を結合して(ステップSP10)ECCクラスタD12とし、このECCクラスタD12に同期信号(frame sync)及びDSV制御ビットを付加して(ステップSP11)フィジカルクラスタD13を生成する。このフィジカルクラスタD13に対し、ランイン及びランアウトを付加し、更に17PP変調を施す(ステップSP12)ことで、495のレコーディング・フレームD14とその前後にランインD14及びランアウトD14が配置されたRUBD14を生成する。
図24は、ステップSP2のスクランブル処理を行うスクランブル回路を示す模式図である。図24に示すPS0〜PS31の32ビットは、物理セクターナンバ(Physical Sector Number)である。物理セクターナンバは、データ2KBのセクタに対する物理アドレスで、4バイト(32ビット)となる。1RUBを構成する1クラスタ64KB単位で記録再生する場合、1クラスタには32個の物理セクターナンバが割り当てられることになる。32ビットの物理セクターナンバのうち、PS5〜PS19の15ビットがクラスタナンバ(RUB単位のクラスタアドレスCN)である。
スクランブル回路601は、下記の多項式に基づく16bitsのシフト・レジスタ602及びXOR回路603〜605からなる。
Φ(x)=X16+X15+X13+X4+1
S0〜S15はシフト・レジスタ602に保持されるデータ(以下、16bitsシフト・レジスタ値という。)を示す。シフト・レジスタ602は、シフトクロックCKsの1クロック毎に、データSjの値をS(j+1)にシフトする(j=0〜14)。スクランブルの方法は、スクランブルを行うデータブロック(RUB)の先頭で、パラレルロード信号PLに基づいて、シフト・レジスタ602に対してデータS0〜S15がロードされる。この場合、データS0〜S14として、物理セクターナンバにおけるPS5〜PS19の値がスクランブル初期値としてセクタ毎にロードされプリセットされる。なお、このようにプリセットされる物理セクターナンバは、クラスタの最初の物理セクターナンバである。データS15のスクランブル初期値としては、固定値「1」がロードされる。
このようにシフト・レジスタ602のデータS0〜S15として、物理セクターナンバの内のクラスタナンバがスクランブル初期値としてプリセットされるが、その際の最初の下位8bitsS0〜S7が、最初のスクランブリングバイト(以下、スクランブル値という)となる。
シフト・レジスタ602は、ユーザ・データ方向Qに1byte入力(Dk)するタイミングに同期して、スクランブル初期値からシフトクロックにより8ビットシフトさせた16bitsシフト・レジスタ値の下位8bitsをスクランブル値(Sk)として出力する。ユーザ・データをスクランブルしたスクランブル後のデータ(スクランブル済データ)D'kは、下記に示すように、入力データDkとDk入力タイミングで出力されるスクランブル値Skとの排他的論理和として求められる。
D'k=Dk xor Sk(k=0,1,・・・,2051)
ただし、xorは排他的論理和を示す。
ここで、スクランブル処理においては、シフト・レジスタ602から得られるスクランブル値Skと、図22に示すセクタSecを構成する2052bytesのユーザ・データ方向Qの順のデータDkとからスクランブル済データD'kが求められる。
このようにフォーマットされたブルーレイディスクの再生装置が特許文献1に開示されている。図25は、特許文献1に記載の従来の再生装置を示すブロック図である。ディスク701は、記録及び再生動作時においてスピンドルモータ752によって一定線速度(CLV)で回転駆動される。そして光学ピックアップ(光学ヘッド)751によってディスク701へのデータの記録又はディスク701からのデータの再生が行われる。
ピックアップ751は、レーザ光源となるレーザダイオード、反射光を検出するためのフォトディテクタ、及びレーザ光の出力端となる対物レンズを有し、レーザ光を対物レンズを介してディスク記録面に照射し、その反射光をフォトディテクタに導く光学系(図示せず)が形成される。このピックアップ751は、スレッド機構753によりディスク半径方向に移動可能とされる。レーザダイオードは、波長405nmのいわゆる青色レーザを出力する。また光学系によるNAは0.85であり、レーザドライバ763からのドライブ信号(ドライブ電流)によってレーザ発光駆動される。ディスク701からの反射光情報はフォトディテクタによって検出され、受光光量に応じた電気信号とされてマトリクス回路754に供給される。
マトリクス回路754には、フォトディテクタとしての複数の受光素子からの出力電流に対応して電流電圧変換回路及びマトリクス演算/増幅回路等を備え、マトリクス演算処理により必要な信号を生成する。例えば再生データに相当する高周波信号(再生データ信号)、サーボ制御のためのフォーカスエラー信号、トラッキングエラー信号、及びグルーブのウォブリングに係る信号としてプッシュプル信号等を生成する。
マトリクス回路754から出力される再生データ信号はリード/ライタ回路(RW回路)755へ、フォーカスエラー信号及びトラッキングエラー信号はサーボ回路761へ、ウォブリンググルーブの検出情報であるプッシュプル信号はウォブル回路758へ、それぞれ供給される。
ディスク701がリライタブルディスクの場合において、グルーブのウォブリングに係る信号としてマトリクス回路754から出力されるプッシュプル信号は、ウォブル回路758において処理される。ADIP情報としてのプッシュプル信号は、ウォブル回路758においてMSK復調、HMW復調され、ADIPアドレスを構成するデータストリームに復調されてアドレスデコーダ759に供給される。アドレスデコーダ759は、ウォブル回路758から供給されるウォブル信号を用いたPLL処理でクロックを生成し、例えば記録時のエンコードクロックとして各部に供給する。
ここで、記録時においては、AVシステム720から記録データが転送され、ECC/スクランブル回路757におけるメモリに送られてバッファリングされる。この場合ECC/スクランブル回路757は、バファリングされた記録データのエンコード処理として、エラー訂正コード付加やスクランブル処理、サブコード等の付加を行う。ECCエンコード処理及びECCデコード処理は、RS(248,216,33)、符号長248、データ216、ディスタンス33のRS(reed solomon)コードを用いたECCフォーマットに対応する処理となる。またECCエンコード及びスクランブル処理されたデータは、変復調回路756においてRLL(1−7)PP方式の変調が施され、リーダ/ライタ回路755に供給される。記録時においてこれらのエンコード処理のための基準クロックとなるエンコードクロックは上述のウォブル信号から生成したクロックを用いる。
エンコード処理により生成された記録データは、リーダ/ライタ回路755で記録補償処理として、記録層の特性、レーザ光のスポット形状、記録線速度等に対する最適記録パワーの微調整やレーザドライブパルス波形の調整などが行われた後、レーザドライブパルスとしてレーザドライバ763に送られる。レーザドライバ763では供給されたレーザドライブパルスをピックアップ751内のレーザダイオードに与え、レーザ発光駆動を行う。これによりディスク701に記録データに応じたピット(フェイズチェンジマーク)が形成されることになる。
スピンドルサーボ回路762はスピンドルモータ702をCLV回転させる制御を行う。スピンドルサーボ回路762は、ウォブル信号に対するPLL処理で生成されるクロックを、現在のスピンドルモータ752の回転速度情報として獲得し、これを所定のCLV基準速度情報と比較することで、スピンドルエラー信号を生成する。
以上のようなサーボ系及び記録再生系の各種動作はマイクロコンピュータによって形成されたシステムコントローラ760により制御される。システムコントローラ760は、AVシステム720からのコマンドに応じて各種処理を実行する。例えばAVシステム720から書込命令(ライトコマンド)が出されると、システムコントローラ760は、まず書き込むべきアドレスにピックアップ751を移動させる。そしてECC/スクランブル回路757、変復調回路756により、AVシステム720から転送されてきたデータ(例えばMPEG2などの各種方式のビデオデータや、オーディオデータ等)について上述したようにエンコード処理を実行させる。そして上記のようにリーダ/ライタ回路755からのレーザドライブパルスがレーザドライバ763に供給されることで、記録が実行される。なお、これらのデータの記録時や再生時には、システムコントローラ260は、アドレスデコーダ759によって検出されるADIPアドレス、或いはBISに含まれるアドレスを用いてアクセスや記録再生動作の制御を行う。
この特許文献1に記載の技術においては、ブルーレイディスクのリンキングデータ(ランイン及びランアウト)をメインデータ(ユーザ・データ)と同様の方法でスクランブルすることで、RAM互換に優れ、トラッキングサーボにも有利となるROM媒体等の提供を図ったものである。
特開2004−192749号公報 「次世代光ディスク 解体新書」,日経エレクトリニクス ブックス,2003年10月7日
ところで、図22に示したように、各セクタにおいて付加されるEDC505は、セクタ毎にユーザ・データ方向Qの順に所定の演算を施すことで得られるものである。また、図24に示すスクランブル回路601においては、EDCが付加された一のセクタの2052bytes毎に、各データのユーザ・データ方向Qの順に対してのスクランブル値Skを出力するものであり、スクランブル処理に際してもユーザ・データ方向Qの順にスクランブル済データが得られることとなる。
一方で、ディスクに対するデータの記録方向は、レコーディング・フレーム方向Pであり、この方向Pの順にデータを変調する必要がある。すなわち、少なくとも変調前までには、データの並び順をユーザ・データ方向Qからレコーディング・フレーム方向Pの順に並び替えて出力することが必要となる。
これに対し、上述したEDC505は、ユーザ・データの最後に付加される構成を有し、偶数セクタにおいては、EDC505は、ユーザ・データ方向Qの途中に配置される構成を有する。よって、EDC付加データを例えばレコーディング・フレーム方向Pにデータを転送しようとすると、偶数番号セクタにおいては、全てのデータが揃わないうちにEDCを転送しなければならないことになるが、EDC505は、1セクタのユーザ・データに対して所定の演算を行なって得るものであるため、ユーザ・データが全て揃わない状態でEDC505を求めることは通常は不可能である。また、スクランブル処理においても、上述のようにセクタ毎のEDC付加データのユーザ・データ方向Qの順にスクランブル値が算出されるため、レコーディング・フレーム方向Pの順にスクランブル済データを獲得しようとすると、すなわち、レコーディング・フレームPの順にスクランブル処理を行う場合、216bytesに1byte(216回に1回)の割合でユーザ・データをスクランブル回路101に入力することとなる。なお、奇数番セクタにおいては、最初の折り返しは、108byteとなる。
従って、EDC付加処理、スクランブル処理、ECC付加処理などのエンコードを予め行っておき、その後、レコーディング・フレーム方向にデータを転送する必要がある。ここで、EDC付加処理、スクランブル処理、ECC付加処理などのエンコード処理を施したユーザ・データがアドレスの小さい方からデータ・バッファ内にバッファされているとすると、レコーディング・フレーム方向にデータを転送しようとすると例えば216bytesとびのアドレスへのアクセスが必要となる。よって、ランダムアクセスが可能なデータ・バッファが必要となる。しかしながら、データ・バッファとして、SDRAM(シンクロナスDRAM)等のランダムアクセスを高速に行うことに不向きな記憶装置で構成した場合、ランダムアクセスを高速にすることができず、高倍速記録の障害となる。
上述のように、ブルーレイディスクにおいては、EDCを生成する際の順序及びスクランブル処理する順序であるユーザ・データ方向Qとは異なるレコーディング・フレーム方向Pへのデータ転送が必要である。すなわち、少なくとも、記録単位の1RUBのユーザ・データについて、EDCの付加及びスクランブルを行い(パスS1)、その後、ユーザ・データ方向Qのデータをレコーディング・フレーム方向Pで読み出す処理(パスS2)を必要とする。このように2パスでエンコードすることが必須である構成上、データ・バッファはEDC、ECCを含んで最小2クラスタ(1クラスタは75391bytes)以上の容量が必要となる。一般的にこのようなデータ・バッファはメモリで構成されるが、DRAMで構成した場合、ランダムアクセスにより高倍速記録に追従できるデータ転送レートを確保することができず、高倍速記録を実行することができない。また、SDRAM等をユーザデータ・バッファとして用いた場合、バースト転送等を使用することで、連続したアドレスであればある程度のデータを高速転送することが可能であると考えられるが上述の通り、レコーディング・フレーム方向Pのデータ転送には高速ランダムアクセスが必要なため、高倍速記録が困難である。
一方、データ・バッファをSRAMなどのランダムアクセスを高速に行えるような記憶装置で構成すれば、ランダムアクセスを実行しても高い転送レートでのデータ供給が可能であるものの、コストが大幅に増大することとなり現実的でない。
上述した課題を解決するために、本発明にかかるエンコーダ装置は、ユーザ・データに対し所定の演算を施し演算済データとして出力するエンコード装置であって、前記ユーザ・データはディスクに記録する際の最小単位であるブロック毎に処理されるものであって、第1の順序で入力されるユーザ・データを格納するデータ・バッファと、前記第1の順序のユーザ・データに対して第1の演算を施した第1の順序演算結果を保持する演算値保持部と、ランダムアクセス可能でかつ前記ブロックより小さい容量からなるメモリからなり、前記データ・バッファからの前記ユーザ・データを含む格納データを前記第1の順序とは異なる第2の順序の第2順序データとして出力する置き換えバッファと、前記演算値保持部に保持された前記第1の順序演算結果に基づき、前記第2順序データに第2の演算を施し、前記第2の順序の前記演算済データを出力する第2の順序演算部とを有し、前記第1の演算は、前記データ・バッファに対して1ブロック分のアクセスにより、前記データ・バッファから読み出された前記第1の順序のユーザ・データに誤り検出符号を付加し、スクランブル処理する演算であり、前記演算値保持部は、前記誤り検出符号及び前記スクランブル処理においてスクランブル値を演算する際に得られるスクランブル演算値を前記第1の順序演算結果として保持し、前記第2の演算は、前記データ・バッファに対して1ブロック分のアクセスにより、前記スクランブル演算値を利用して前記第2の順序のスクランブル済みデータを前記演算済データとして出力するものである。
本発明によれば、前記置き換えバッファにより、ユーザ・データを含む格納データを第2順序データとし、前記演算値保持部に保持された第1の順序演算結果を利用することで第2の順序で演算済みデータを出力することができる。
本発明にかかるエンコード方法は、ユーザ・データに対し所定の演算を施し演算済データとして出力するためのエンコード方法であって、第1の順序のユーザ・データに対し、誤り検出符号を付加し、スクランブル処理を行う演算を施し、前記誤り検出符号及び前記スクランブル処理においてスクランブル値を演算する際に得られるスクランブル演算値を保存する第1の処理工程と、保存された前記誤り検出符号及び前記スクランブル演算値を利用して、前記ユーザ・データに誤り検出符号を付加してスクランブル処理したスクランブル済みデータを前記第1の順序とは異なる第2の順序で前記演算済データとして出力する第2の処理工程とを並列して実行し、前記ユーザ・データはディスクに記録する際の最小単位であるブロック毎に処理されるもであって、前記第1の処理工程は、前記ユーザ・データを格納したデータ・バッファに対して1ブロック分のアクセスにより行われ、前記第2の処理工程では、ランダムアクセス可能でかつ前記ブロックより小さい容量からなるメモリからなる置き換えバッファを使用して、前記データ・バッファに対して1ブロック分のアクセスにより、前記第2の順序のデータを出力するものである。
本発明においては、演算結果を得るための第1の処理と、第1の処理にて得られた演算結果を利用してユーザ・データを演算済データに変換するための第2の処理とを並列して実行することにより、第1の順序で入力されるユーザ・データを第1の順序とは異なる第2の順序に変換し、演算済データとして出力することができる。
本発明にかかる記録装置は、ユーザ・データに対し所定の演算を施し演算済データに変換して出力するエンコード回路と、前記演算済データを変調する変調回路と、変調された変調データを記録するディスクとを有する記録装置であって、前記ユーザ・データはディスクに記録する際の最小単位であるブロック毎に処理されるものであって、前記エンコード回路は、第1の順序で入力されるユーザ・データを格納するデータ・バッファと、前記第1の順序のユーザ・データに対して第1の演算を施した第1の順序演算結果を保持する演算値保持部と、ランダムアクセス可能でかつ前記ブロックより小さい容量からなるメモリからなり、前記データ・バッファから前記ユーザ・データを読み出し、前記第1の順序とは異なる第2の順序とした第2順序データを出力する置き換えバッファと、前記演算値保持部に保持された前記第1の順序演算結果に基づき、前記第2順序データに第2の演算を施し、前記第2の順序の前記演算済データを出力する第2の順序演算部とを有し、前記第1の演算は、前記データ・バッファに対して1ブロック分のアクセスにより、前記データ・バッファから読み出された前記第1の順序のユーザ・データに誤り検出符号を付加し、スクランブル処理する演算であり、前記演算値保持部は、前記誤り検出符号及び前記スクランブル処理においてスクランブル値を演算する際に得られるスクランブル演算値を前記第1の順序演算結果として保持し、前記第2の演算は、前記データ・バッファに対して1ブロック分のアクセスにより、前記スクランブル演算値を利用して前記第2の順序のスクランブル済みデータを前記演算済データとして出力するものである。
本発明によれば、第1の順序でスクランブルを行う第1の順序用演算器により演算される第1の順序のスクランブル値を第2の順序に変換して利用することで、第2の順序で入力される誤り検出符号付加データに対して第1の順序用演算器を利用しつつスクランブル処理をすることができる。
本発明によれば、大量データに対するランダムアクセスの発生による転送レートの低下を抑制し、高倍速記録を可能とするに適したスクランブル処理、エンコード処理が可能となる。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。この実施の形態は、本発明を、光ディスクにおける高倍速記録を可能とするエンコード装置及び記録装置に適用したものである。なお、以下の説明においては、光ディスクの一例として、ブルーレイディスクを例にとり、必要に応じてブルーレイ規格の物理仕様に準じたエンコード処理を実行するものとして説明するが、本発明にかかるエンコード装置及び記録装置は、ブルーレイディスクに限らず、他のディスクのエンコード装置及び記録装置に適用することも可能である。
また、特にユーザ・データのエンコード処理、ブルーレイディスクにおいては、上述したユーザ・データから少なくともスクランブル済データを生成するまでの間における処理に特徴を有する記録装置として説明するが、例えば再生装置と組み合わせて記録再生装置とすることもでき、また本実施の形態においてエンコード装置に適用するスクランブル回路は、本実施の形態にかかるエンコード装置に限らず、他の構成のエンコード装置、又はブルーレイディスク等の再生装置におけるデ・スクランブル回路に適用することも可能である。
実施の形態1.
(1)エンコード装置の概略
図1は、本発明の実施の形態1にかかるディスクエンコード装置及びこれを有する記録システムを示す模式図である。図1に示すように、本記録システム1は、記録装置3と、記録装置3に対しユーザ・データを転送するホスト2とから構成される。ホスト2は、例えばAV(audio- visual)システム又はパーソナル・コンピュータ(PC)等であって、記録装置3に対し、ユーザ・データの記録を指示したり、ディスクに記録されているデータの読み出し指示をするものである。
記録装置3は、ユーザ・データをエンコードするエンコード装置10と、エンコードしたユーザ・データに対し必要に応じてその他の付加情報を統合する統合部101と、統合部101にて統合されたデータの変調をする変調部102と、変調データに基づき記録動作を制御するディスクコントローラ103と、ディスク104とを有する。統合部で統合されるその他の付加データは、ブルーレイディスクであればアドレス情報(BIS)等である。
エンコード装置10は、ホスト2から転送されるユーザ・データにEDC付加、スクランブル処理、ECC付加等の変調前の処理がなされたデータを演算済データとして出力する。ブルーレイディスクであれば、エンコード装置10は、スクランブル処理後のスクランブル済データ(図21のD3参照)及びECCを統合部101に出力する。統合部101は、スクランブル済みデータD3に対し行列再配置をし、ECCを付加してインタリーブをしてECCクラスタ(図21のD6参照)とする。
また、図示しないBISを生成する他のエンコード装置(BIS用エンコード装置)において、ユーザ・コントロール・データ及びアドレス・ユニット・ナンバ(図21のD7、D8参照)からアクセス・ブロック(図21のD9参照)を生成し、またBISECCを生成する(図21のD10参照)。そして、当該BIS用エンコード装置からアクセス・ブロック及びBISECCが統合部101へ供給され、BISブロック(図21のD10参照)を生成し、更にこれをインタリーブしてBISクラスタ(図21のD11参照)とする。そして、LDCクラスタとBISクラスタとを結合してECCクラスタ(図21のD12参照)とし、フレームシンク、DSV制御ビットを付加してフィジカルクラスタ(図21のD13参照)として変調部102へ供給する。
変調部102は、レコーディング・フレームを17PP変調すると共にランイン及びランアウトを付加して、レコーディングユニットブロックRUB(図21のD14参照)を生成し、ディスクコントローラ103へ供給する。ディスクコントローラ103は、このRUBを1記録単位としてディスク104へデータの記録を実行する。
エンコード装置10は、ホスト1から転送されるユーザ・データをバッファリングするデータ・バッファ11、及びこのデータ・バッファ11からのデータの読み出しを制御するバッファ・コントローラ12を有する。また、バッファ・コントローラ12から読み出されたユーザ・データからEDCを生成するEDC生成部13、及びEDC生成部13にて生成されたEDCを一時保持するEDCバッファ14を有する。さらに、データ・バッファ11からのユーザ・データとEDCバッファ14に保持されているEDCとを統合する統合部15、EDCが付加されたデータ(以下、EDC付加データという)をスクランブル処理するスクランブル回路16、及びスクランブル回路16により生成されたスクランブル値を保持するスクランブル・バッファ17を有する。さらにまた、スクランブル回路16にてスクランブルされたデータ(以下、スクランブル済データという)からECCを生成するECC生成部18、及びECC生成部18により生成されたECCを一時保持するECCバッファ19を有する。
また、バッファ・コントローラ12によりデータ・バッファ11から読み出されたユーザ・データに対しEDCバッファ14に保持されているEDCを所定のタイミングで読み出し付加してEDC付加データとする統合部20、統合部20により統合されたEDC付加データを一時記憶する置き換えバッファ21、及び置き換えバッファ21により置き換えられたEDC付加データに対し、スクランブル・バッファ17に保持されているスクランブル中間値(スクランブル演算値)を使用してスクランブル処理を施したスクランブル済データを生成するスクランブル回路22を有する。そして、ECCバッファ19からのECCとスクランブル回路22からのスクランブル済データとが上述の統合部101に供給さる。



ここで、本実施の形態においては、EDC生成部13、統合部15、スクランブル回路16及びECC生成部18から第1の順序演算部が構成され、ユーザ・データ方向におけるデータ処理を行う。また、EDCバッファ14、スクランブル・バッファ17及びECCバッファ19から演算値保持部が構成される。なお、後述するように、EDCバッファ14、ECCバッファ19のいずれか一方又は両方をデータ・バッファ11内に設けることも可能である。更に、スクランブル回路22は、第2の順序演算部として第1の順序演算部による演算結果を利用してディスクのデータ記録方向であるレコーディング・フレーム方向Pの順にデータ処理を行う回路である。更に、バッファ・コントローラ12及び統合部20は、バースト転送における先頭アドレスを指定したり、EDCバッファ14からのEDC読み出しタイミングを制御する制御部として機能する。
また、本実施の形態にかかるエンコード装置10におけるデータ・バッファ11は、SDRAM等、リフレッシュ動作が必要であって、ランダムアクセス及びバースト転送が可能なメモリから構成される。以下の説明においては、SDRAMとして説明する。SDRAMは、連続したアドレスに限り、ランダムアクセスに比べ高速にアクセス可能なDRAMであり、バースト転送機能を利用すれば高速データ転送が可能となり、SRAM等の高速ランダムアクセス可能なメモリに比してコストを低減することができる。
また、置き換えバッファ21は、リフレッシュ動作が不要であって、ランダムアクセス可能なメモリから構成される。以下の説明においてはSRAMとして説明するが、高速にランダムアクセス可能であれば、SRAMに限らない。この置き換えバッファ21は、ユーザ・データ方向Qのデータをレコーディング・フレーム方向Pのデータに置き換えるために設けるものであり、レコーディング・フレーム方向Pの順にEDC付加データを高速転送可能である。ここで、ブルーレイディスクであれば、1記録単位を処理単位としてエンコードされ、エンコード処理は上述のように、ユーザ・データ方向QにEDC付加、スクランブル及びECC付加処理(パスS1)の後、一旦、1記録単位を並び換えてレコーディング・フレーム方向Pの順にデータ転送する(パスS2)ことが必要になり、SRAM等の高速ランダムアクセス可能な高価なメモリが1記録単位分、実際にパスS1及びパスS2の処理を同時並列して行うため、2記録単位以上の記憶容量を有する。これに対し、本実施の形態においては、データ・バッファ11からユーザ・データ方向のバーストサイズのデータを、レコーディング・フレーム方向にデータが揃うようバースト転送を繰り返す手法により、置き換えバッファ21の記憶容量を1記録単位未満とするものである。
このため、後述するスクランブル中間値によってレコーディング・フレーム毎のスクランブルを併用する。これらのことから、レコーディング・フレーム毎のアクセス及びスクランブルを高速に実行することができ、DRAMを使用して低コストでかつ高倍速記録が可能なデータのエンコードを実現するものである。
(2)エンコード方法の概略
先ず、本発明の理解を容易とするため、SDRAMを使用する場合の問題点について、ディスクのフォーマット及び本発明の概要と共に説明しておく。以下の説明においては、ユーザ・データ方向Pの順のアドレスが小さい順を先頭とし、ユーザ・データの先頭データからSDRAM等のデータ・バッファ11に一時保持されるものとして説明する。
ブルーレイディスクのように、EDC、スクランブル処理、ECCなどのエンコード処理の順序と、ディスクに記録する記録順序とが異なる場合、先ず、EDC付加処理、スクランブル処理、ECC付加処理などの処理を実行し、その後、これらの処理が完了したデータをレコーディング・フレーム方向に転送する必要がある。このように2回に分けたエンコード手法を、本明細書においては2パス構成のエンコードということとする。そして、EDC、ECCなどの付加データを生成するエンコード処理をパスS1、実際のレコーディング・フレーム方向のデータ転送処理をパスS2ということとする。このため、ブルーレイディスクに対する記録データのエンコード処理をする場合、ユーザ・データを変調前のデータとするまでのエンコード処理は、ユーザ・データ方向Qの順にEDC及びECCを生成する第1の工程(パスS1)と、レコーディング・フレーム方向Pにユーザ・データ等を転送する第2の工程(パスS2)とが必要となる。
図2は、ブルーレイディスクにおけるデータ・ブロックのバイト単位のデータの並び順を説明する図である。データ・ブロックD4は、32個のセクタにより構成される。1つのセクタは、2048bytesのユーザ・データに4bytesのEDCが付加された2052バイトのデータからなる。図3は、2つのセクタSec0、Sec1を拡大して示す図である。図中に示す数値は、バイト単位のユーザ・データ方向Qの順を示す。データ・ブロックD4は、304列216行からなる。ここで、C=列番号(0≦C≦303)、R=行番号(0≦R≦215)とする。
各セクタは、216バイトを列方向に並べ折り返して次の列に並べるため、例えばセクタSec0においては、C=9列目は1944〜2051番目のバイトデータとなり、R=107行目までとなる。R=108〜215行目は次のセクタSec1の0から107番目のバイトデータが配置される。このように、データ・ブロックD4は、偶数番目のセクタ(偶数セクタ)と奇数番目のセクタ(奇数セクタ)とを1つの単位(以下、アリアともいう)、すなわち、19列からなる2つのセクタ(エリア)毎に同じ順序で繰り返し配置されている。
セクタSec0〜セクタSec31は、図2及び図3に示すユーザ・データ方向Qの順序にてユーザ・データに対し所定の演算を施すことでEDCが付加され、スクランブルされた後、変調等が施されてディスクに記録されるが、この記録の際には、データ・ブロックは、図2中に矢印で示すレコーディング・フレーム方向Pの順に記録されることとなり、ユーザ・データ方向Qの列方向とは直交する方向となる。
このように、ユーザ・データ方向Qは、ブルーレイディスクにおける誤り検出符号付加の際の処理順序及びスクランブル処理の際の処理順序の方向となる。なお、再生処理の際には、同じく、ユーザ・データ方向Qの順にデ・スクランブル処理され、EDC検出処理がなされる。レコーディング・フレーム方向Pは、ブルーレイディスクにおけるデータの記録順序の方向となる。また、再生処理の際には、このレコーディング・フレーム方向Pの順でディスク104からデータが読み出される。
EDC生成部13は、ユーザ・データ方向Qに2048bytesのユーザ・データと4bytesの0データを入力することで、4ytesのEDCを生成するシフト・レジスタからなる。また、その後にスクランブル回路16に行われるスクランブル処理としては、EDCが付加されたEDC付加データからなる各セクタを同じくユーザ・データ方向Qに所定の演算を施すことでスクランブル済データを得ることができる。
このように、ブルーレイディスクにおいては、ディスクに対する記録・再生する順序と、EDC付加、スクランブル処理等の順序とは異なる順序となり、1記録単位であるRUBに含まれる1データ・ブロックについて、一旦、ユーザ・データ方向Qの順にEDC付加、スクランブル等の処理を行った後、再度レコーディング・フレーム方向Pの順に変調・記録又は読み出し・復調処理する必要がある。
図4及び図5は、以上のような処理を実行することができる記録システムの一例(以下、参照例1、2という)を示す模式図である。図6は、図4及び図5と比較した場合の本実施の形態にかかる記録システムを示す模式図である。なお、図6に示す本実施の形態にかかる光ディスクシステム1は、図1に示すそれを一部省略したものである。
通常、このようなフォーマットを有するブルーレイ規格を代表するデータのエンコード装置は、例えば図4に示す参照例1のように構成することができる。すなわち、図4に示すように、ホスト2から送られるユーザ・データ方向Qのユーザ・データを1RUB単位でデータ・バッファ(以下、SDRAMという)211に記憶する。そして、セクタ毎に読み出し、EDC生成部213にてEDCを付加し、これをスクランブル回路216にてスクランブル処理し、最後にECC生成部218にてECCを生成して付加し、これを再度データ・バッファ(SDRAM)211に書き戻す。EDC付加工程、スクランブル処理工程、ECC処理工程においては、全てユーザ・データ方向Qにデータが入力されて処理されるため、連続して処理が可能である。
一方、ディスク104に記録するのはこのユーザ・データ方向Qの順とは異なるレコーディング・フレーム方向Pの順となる。したがって、少なくとも変調前までにおいて、レコーディング・フレーム方向Pの順に並び替えが必要となる。しかしながら、例えば、スクランブル回路216においては、1byte毎、ユーザ・データ方向Qの順でスクランブル処理が行われるため、ユーザ・データ方向Qの順の先頭バイトをbyte0とすると、レコーディング・フレーム方向Pの順に処理する場合、ユーザ・データ方向Qのバイト列を、byte0→byte216→byte432と216byte飛びに必要となってしまう。なお、図2に示すように、1セクタはbyte0〜byte2051とすると、216byteで折り返すため奇数セクタの先頭列はbyte108となる。
すなわち、例えば統合部101にレコーディング・フレーム方向Pの順に、スクランブル済データを転送しようとすると、byte0の次に必要なbyte216のデータは、ユーザ・データ方向Qの1列分の処理後にしか得られない。よって、ユーザ・データ方向Qの順に処理したデータを1RUBに相当する分、SDARM211に書き戻し、これをレコーディング・フレーム方向Pの順に並び替えた状態で読み出すこととなり、SDRAM211に対してランダムアクセスが必要となる。
以上の理由からECC生成部218にて処理されたデータは、随時SDRAM211に書き戻される。そして、改めてこれをレコーディング・フレーム方向Pの順で読み出し、統合部101に転送するためには、1RUBに相当するデータのスクランブル処理後のデータを書き戻す工程(パスS1)の後に、SDRM211からレコーディング・方向Pに読み出す工程(パスS2)が必要となる。ただし、ユーザ・データ方向Qの順に書き戻されたデータをレコーディング・フレーム方向Pの順に読み出す処理はランダムアクセスとなる。しかしながら、SDRAM211は高速にランダムアクセスすることが不可能である。例えばパスS1とパスS2の処理をパラレルに処理したとしても、ECC付加後のデータをレコーディング・フレーム方向Pに転送する処理速度をこのままでは高速化することができない。
このように、データ・バッファをSDRAM211とした場合には、レコーディング・フレーム方向のデータ転送速度が間に合わず、高倍速記録を実行することが不可能である。これを解決する方法としては、図5に示すように、データ・バッファをDRAMではなく、高速にランダムアクセスすることができるSRAM等の一時記憶装置241(以下、SRAMという)とて設けることが考えられる。しかしながら、SRAM241は、パスS1の工程に使用するための記憶領域と、パスS2の工程に使用するための記憶領域とが必要となり、2記録単位に相当するデータを格納する記憶領域が必要である。なお、実際にはホスト2からユーザ・データを転送するための記憶領域も必要になるため、少なくとも3記録単位の記憶領域を確保する必要がある。このような大きな記憶領域をSRAMで用意することはコストが極めて増大してしまう。
以上のことから、本実施の形態においては、高速ランダムアクセス可能な高価なメモリをできるだけ小さいものとし、コストの増大を抑えつつ、高速データ転送を可能にする光ディスクシステムを提供するものである。このため、ホスト2からのユーザ・データを一時記憶するメモリとしては図6に示すように、図4と同じくSDRAM等からなるデータ・バッファ11を使用する。ここで、データ・バッファ11は、高速ランダムアクセスはできないものの、連続したアドレスであればある程度のデータを一括転送するバースト転送機能を有している。バースト転送等を用いて連続的にデータ取得を行うと、大幅に転送レートが向上するのは既知の事実であるが、図4で説明したように、高速にランダムアクセスするには不向きである。
これに対し、本実施の形態にかかる記録装置3は、データ・バッファ11にSDRAM等を使用しながらも、比較的小規模な回路の追加(破線部30)によって、高倍速のエンコードに対応することを可能とする。
その詳細は後述するが、レコーディング・フレーム方向Pのデータを先頭(216bytes又は212+Nbytes飛び)としたデータを、データ・バッファ11からのバースト転送を繰り返すことで得る。そして、このバースト転送で得たデータを高速にランダムアクセス可能な一時記憶装置であるSRAM等よりなる置き換えバッファ21に格納し、レコーディング・フレーム方向Pにデータを取り出すことで並び替えを行う。そして、並び替えが終了したデータに対し、216bytes(108bytes)毎のスクランブル中間値によって、レコーディング・フレーム毎のスクランブルを可能とする。このことにより、レコーディング・フレーム方向Pの高速データ転送を可能とし、よって高倍速記録に対応可能なシステムを提供する。なお、ブルーレイディスクにおいては、1セクタのユーザ・データは2048bytesであり、Nはデータ・バッファ11に置かれたセクタ毎のデータの間に挿入するデータ数を示す。本実施の形態においては、説明の簡単のため、N=0として説明を行う。
(3)エンコード装置の動作
次に、本実施の形態にかかる記録装置3の動作の概略について説明する。図7は、パスS1及びパスS2におけるデータ処理タイミングを示す図である。図7に示すように、ディスク104には、記録単位である1RUB毎にデータが記録される。ここで、t番目のRUBに含まれるユーザ・データの処理をパスS1において処理しているとき、(t−1)番目のRUBに含まれるユーザ・データの処理がパスS2により処理される。すなわち、パスS2の処理は、パスS1の処理結果に基づき実行されるもので、このように記録装置3は、t及び(t−1)番目のRUBに含まれるユーザ・データの処理を並列して実行することでRUBに含まれるユーザ・データをパイプライン的にエンコード処理する。この際、パスS1においては、ユーザ・データがユーザ・データ方向Qに転送され、パスS2においては、スクランブル済となったユーザ・データがレコーディング・フレーム方向Pに出力される。
パスS1では、先ずEDC生成部13でのEDCを生成しEDCバッファ14にEDCを保存し、次にスクランブル回路16でスクランブル処理しスクランブル・バッファ17にスクランブル中間値を保存し、最後にECC生成部18でECCを生成し、ECCバッファ19にECCを保存する。処理としてはこれらが順次行なわれるが、各回路における出力データが順次、次の処理回路へ入力されるため、各回路におけるパスS1での処理は並行処理となる。また、パスS2では、データ・バッファ11からバッファ・コントローラ12及び統合部20を介してユーザ・データにEDCを付加したEDC付加データを、置き換えバッファ21に書き込みした後、次にレコーディング・フレーム方向Pの順で読み出しスクランブル回路22におけるレコーディングフレームデータ毎のスクランブル処理を実行する。こうしてスクランブル済データとされた後、レコーディング・フレーム方向Pの順に統合部101に供給され、統合部101にてECCの付加及びインタリーブを行って変調前の処理を行う。パスS2においても、処理としては以上が順次行われるが、パスS1と同様各回路において並列処理がなされる。
したがって、ディスク104に記録する(t−1)番目のRUBのパスS2の処理時には、t番目のRUBのパスS1の処理が行われることなり、パスS2の(t−1)番目のRUBの処理の開始前にパスS1の(t−1)番目のRUBの処理が終了している。すなわち、図7に示すように、パスS1は、少なくともパスS2より1RUB先のデータの処理を実行することなる。
次に、記録装置3における動作について更に詳細に説明する。最初に、ホスト2は、記録装置3に対し、ディスク104へのユーザ・データの記録を指示すると共に、(t−1)番目及びt番目のRUBに対応するユーザ・データを転送する(S0)。この際、記録装置3は、パスS1及びパスS2の処理を同時並行して実行する。ここで、データ・バッファ11は、2RUBに含まれるユーザ・データを処理することが可能な記憶領域を有し、例えば1RUBに含まれるユーザ・データを記憶可能な記憶領域を2以上有する。例えばこれを記憶領域11a、11b(図示せず)とすると、一方の記憶領域11aにt番目のRUBに対応するユーザ・データを格納し、データ・バッファ11は、この記憶領域11aからバースト転送により高速にユーザ・データをEDC生成部13へ供給する。また、他方の記憶領域11bには、(t−1)番目のRUBに対応するユーザ・データが格納されており、当該(t−1)番目のRUBに対応するユーザ・データを使用して後述するパスS2の処理が実行される。
(3−1)パスS1の動作
先ず、パスS1について説明する。なお、図1において(S0)、(S1−1)、(S2−1)等の符号は、ブロック間のデータ処理順序を示す。例えば、(S1−1)は、パスS1の1番目の処理、(S2−1)はパスS2の1番目の処理の順序を示す。ホスト2からユーザ・データ方向Qの順に転送されたユーザ・データは、ユーザ・データ方向Qの順にデータ・バッファ11の例えば一方の記憶領域11aに一時保存されている。データ・バッファ11は上述したようにSDRAM等から構成され、記憶順序、すなわちユーザ・データ方向Qの順に連続したデータのバースト転送が可能な一時記憶装置である。バースト転送を開始するアドレス(先頭アドレス)は、ランダムに指定することができる。
バッファ・コントローラ12は、このデータ・バッファ11よりバースト転送等にてユーザ・データ方向Qの順のユーザ・データを取得し、EDC生成部13へ供給する(S1−1)と共に統合部15へ供給する(S1−2)。EDC生成部13は、所定の演算を施す演算器(図示せず)を有する。ブルーレイ規格におけるEDCは、ユーザ・データ方向Qの順に所定の演算を施すことで求めることができ、演算部としては、例えば図8に示すような32bitsシフト・レジスタをEDC演算用シフト・レジスタとして構成することができる。なお、パスS1の処理は、一のRUBに含まれるユーザ・データ単位(データ・ブロック単位)で行なわれるが、EDC生成部13、スクランブル回路16、ECCバッファ19等の各回路は、同時並列的に演算処理を実行する。
この演算シフト・レジスタは、ユーザ・データ方向Qの順に、1セクタ分の2048バイトのユーザ・データに4bytesの0データを付加した2052bytesをユーザ・データ方向Qの順序に入力すると、4bytesのEDCが生成される。こうしてEDCの生成は1セクタ単位で行われる。
ここで、ユーザ・データに対してEDCを付加する処理を、EDC演算器を使用せずにパスS2においても実行するため、本実施の形態におけるEDC生成部13は、EDC演算器により演算されたデータ・フレームD2から4bytesのEDCを取り出し、EDCバッファ14に保存する(S1−3)。このように、予めEDCを演算して求めておけば、パスS2においては、EDC付加の際に1セクタ単位で処理する必要がない。
EDC生成部13は、1RUBに含まれる32セクタ分のEDCをセクタ毎に順次演算し、EDCバッファ14に順次格納していく。したがって、EDCバッファ14は、32セクタ分のEDCを格納する領域を有する。また、パスS1実行中には、後述のパスS2が同時並列して実行され、この際に(t−1)番目のRUBに含まれる32セクタ分のEDCを使用する。このため、(t−1)番目のRUBに含まれる32セクタ分のEDCを記憶し出力するための領域を更に有する。よって、EDCバッファ14は、4bytes×32(セクタ)×2パス分の計256bytes以上の記憶容量を有する、例えばSRAM又はSDRAM等ランダムアクセス可能な一時記憶装置により構成される。EDCバッファ14は、このEDCを統合部15へ供給する(S1−4)。
統合部15は、データ・バッファ11から転送されるユーザ・データ方向Qの順のユーザ・データD1と上述のようにして生成されたEDCとを統合し、EDCが付加されたEDC付加データを生成してスクランブル回路16に出力する(S1−5)。
スクランブル回路16は、セクタ毎に、クラスタの先頭セクタのアドレス値で初期化されたスクランブル初期値を8ビットシフトし、その下位8bitsをスクランブル値として出力するスクランブル用シフト・レジスタと、このスクランブル値とユーザ・データ方向Qの順に入力されるEDC付加データとの排他的論理和を求める論理回路とを有する。スクランブル用シフト・レジスタは、スクランブル回路16にデータ・フレームD2が1バイトずつ入力されるタイミングで8bitsシフトしてスクランブル値を出力する。このスクランブル用シフト・レジスタは、上記初期値を順次シフトして所定の演算を施す図22示すシフト・レジスタとすることができる。
このように構成されるスクランブル回路16は、統合部15を介してユーザ・データ方向Qの順に1バイトずつ順にEDC付加データが入力され、この入力データDkの入力タイミングで、スクランブル用シフト・レジスタからスクランブル値Skが出力され、これらの排他的論理和を求めたスクランブル済データDk'を出力する。こうしてユーザ・データ方向Qの順にスクランブル処理がなされ、スクランブル済データとされる。この際、スクランブル回路16は、スクランブル値を求めたスクランブル用シフト・レジスタの保持値(16bits)を、スクランブル中間値として保持する。この16bitsのスクランブル中間値は、パスS2において、ユーザ・データ方向Qではなく、レコーディング・フレーム方向のスクランブル値を算出するために使用される。
ただし、全てのEDC付きユーザ・データに対応するスクランブル中間値を保持すると保持するデータ記憶量が多くなってしまう。上述のように、各セクタは、偶数セクタと奇数セクタとがセットになった1のエリアにおいては、全く同一のアドレスを有することとなる。また、1エリアにおいてEDC付加データをユーザ・データ方向にみたとき、各レコーディング・フレーム方向(行方向)Pのデータに対するスクランブル値は、上記スクランブル用シフト・レジスタを8bits(1回分)シフトしたのみで得られることがわかる。
すなわち、ブルーレイ規格においては、図2及び図3に示すように1クラスタ中のスクランブル値は、セクタに拘わらず、セクタに含まれるデータbyte0〜byte2051に対して同様の値が設定される。よって、レコーディング・フレーム方向P(レコーディング・フレームにおいて)20bytes目(20列目)のスクランブル値は0byte目(1列目)のスクランブル値と同様の値となる。すなわち、セクタを構成するユーザ・データ及びEDCに対し0から2051の順序を付した場合、19列からなる2つのセクタ(エリア)毎に各データ順序が揃うこととなる。また、ユーザ・データ方向Qで見た場合、各データ順序は連続しているので、スクランブル値は1バイト分(8ビット分)をシフトさせたのみの値となる。したがって、19列のうちの1行分のスクランブル中間値(16ビットシフトレジスタ値×19(列))から全てのスクランブル値を容易に求めることができる。
以上のような規則性がある場合には、後述するスクランブル回路22により本来の演算処理順序とは異なる順序に変換してもスクランブル処理することができる。本実施の形態においては、スクランブル中間値として保持するデータ量を、1エリアにおける1行分であるわずか19ワード分(16bits×19)とする。そして、これらに基づきレコーディング・フレーム方向Pのスクランブル値を算出し、レコーディング・フレーム方向Pでのスクランブルを後述するスクランブル回路22において実現する。このため保持すべきスクランブル中間値は、データ・ブロックの1行分をスクランブルするために必要なスクランブル中間値(304個)の1/16のデータ量とすることができる。
なお、スクランブル中間値は、スクランブル回路16によってスクランブル処理する途中で得られる値であるため、本実施の形態においては、スクランブル回路16からスクランブル中間値を得るものとして説明するが、予め演算したスクランブル中間値を保持するようにしてもよい。
本実施の形態においては、パスS1で処理される1RUBに含まれるEDC付きユーザ・データ(EDC付加データ)の最初の2つのセクタ(セクタSec0及びセクタSec1)をスクランブル処理した際において使用した、16ビット・シフト・レジスタの値(16ビット)をスクランブル・バッファ17に保持するスクランブル中間値とすることとする。スクランブル中間値は、スクランブル回路16のスクランブル処理の際に、順次スクランブル・バッファ17へ送られ記憶される(S1−6)。
また、パスS1実行中には、(t−1)番目のRUBに含まれる32セクタ分のデータをスクランブル処理する後述のパスS2を同時並列して実行するために、(t−1)番目のRUBに含まれる32セクタ分のスクランブル中間値を保持しておく記憶領域を有する。よってスクランブル・バッファ17は、38バイト(16bits×19)×2(パス)=76bytes以上の記憶容量を有する、SRAMなどのランダムアクセス可能な一時記憶装置から構成される。スクランブル処理についての詳細は後述する。
一方で、ユーザ・データ方向Qの順にスクランブル処理され得られたスクランブル済データは、同じ処理順序のまま、すなわちユーザ・データ方向Qの順にECC生成部18へ供給される(S1−7)。ECC生成部18は、1列分のデータ216bytesが供給されると、これに所定の演算を施し、32bytesのECCパリティを生成し、このECCパリティを順次ECCバッファ19へ供給する。このECCバッファ19においても、パスS1においてt番目のRUBに含まれるユーザ・データに付加するECCパリティ(図3参照)を演算して書き込むための領域と、パスS2において(t−1)番目のRUBに含まれるユーザ・データに付加するECCパリティを読み出し統合部101へ転送するための領域とが必要となる。よって、9728bytes(32×304bytes)×2(パス)以上の記憶容量を有するSRAM又はSDRAM等のランダムアクセス可能な一時記憶装置から構成される。なお、ECC生成部18にてECCパリティを生成し、順次統合部101へ供給するようにしてもよい。この場合は、統合部101にECCパリティ用のバッファを設ければよい。
(3−2)パスS2の動作
次に、パスS2について説明する。このパスS2の処理は、パスS1においてt番目のRUBの演算を実行中、上記と同様の工程を経て予め得られているEDCバッファ14、スクランブル・バッファ17及びECCバッファ19の値を利用し、(t−1)番目のRUBに相当するユーザ・データの演算を行なうものであって、ユーザ・データ方向Qの順序にバースト転送データサイズmでデータ・バッファ11からバースト転送されるユーザ・データを、レコーディング・フレーム方向Pの順に演算するものである。
先ず、バッファ・コントローラ12よりデータ・バッファ11からバースト転送にてユーザ・データを読み出す。繰り返しのバースト転送により読み出されたユーザ・データは、統合部20が所定のタイミングでEDCバッファ14からEDCを読み出しこれをユーザ・データに付加し、置き換えバッファ21に供給する。
ここで、バッファ・コントローラ12は、データ・バッファ11からユーザ・データ方向Qに1バースト転送サイズのmbytesのユーザ・データを繰り返し読み出し、レコーディング・フレーム方向Pの順にEDC付加データが配列するよう順次転送していく。すなわち、ユーザ・データ方向Qの216bytesのうちバースト転送サイズmbytesを、レコーディング・フレーム方向Pのバイト(304bytes)分、すなわち304回繰り返してバースト転送することで1RUB(データ・ブロック)に含まれるユーザ・データのレコーディング・フレーム方向Pのデータが、ユーザ・データ方向Qにmbytes揃うこととなる。
この置き換えバッファ21はSRAM、レジスタ等の高速にランダムアクセス可能な一時記憶装置からなる。ここで、レコーディング・フレーム方向Pの方向に、レコーディング・フレーム分のデータが揃うまでデータ・バッファ11からのバースト転送は繰り替えされる。この書き込みの間に、置き換えバッファ21に格納されたユーザ・データを今度はレコーディング・フレーム方向Pの順に高速に読み出すことが必要となる。よって、置き換えバッファ21においても、書き込み用と読み出し用とで、少なくともバースト転送サイズm×レコーディング・フレーム(304bytes)×2(書き込み用、読み出し用)のデータを記憶できる領域を有する。
スクランブル回路22は、スクランブル回路16と同様のスクランブル用シフト・レジスタを有する。このスクランブル用シフト・レジスタにより、スクランブル・バッファ17に保持されたスクランブル中間値を適宜更新してレコーディング・フレーム方向Pの順に入力されるEDC付加データに対応するスクランブル値を得ることができる。そして、得られたスクランブル値と入力されるEDC付加データとの排他的論理和を求めてスクランブル済データを出力する。
スクランブル・バッファ17がエリア0の1行目のスクランブル中間値を保持している場合には、これを順次スクランブル回路22に供給するのみでレコーディング・フレーム方向Pのスクランブル値は求まる。このスクランブル中間値をそれぞれ上記スクランブル用シフト・レジスタに入力し、8bitsシフトさせると次の行に対応するスクランブル中間値を得ることができる。こうしてスクランブル・バッファ17に保持されていたスクランブル中間値は、1レコーディング・フレームの処理毎に更新されることで、全てのデータに対するスクランブル中間値を出力することができる。生成されたスクランブル済データは、レコーディング・フレーム方向Pの順に統合部101に供給される。
統合部101は、レコーディング・フレーム方向Pの順に入力されるスクランブル済データにECCバッファ19から受け取ったECCを付加し、BISを挿入しECCクラスタ、フィジカルクラスタを生成し、17PP変調部102へこれを転送する。
本実施の形態においては、パスS1においてユーザ・データ方向Qの順に入力されたユーザ・データに基づき算出されたEDC及びスクランブル中間値を使用し、パスS2において、ユーザ・データにEDCを付加し、スクランブルしたスクランブル済データとし、これをレコーディング・フレーム方向Pの順に出力することができる。そして、このパスS2において予め演算したEDC及びスクランブル中間値を使用することでm×304bytes×2という小さいメモリ容量の置き換えバッファ21のみでスクランブル済データを、レコーディング・フレーム方向Pに出力することができる。
(4−1)置き換えバッファの動作
次に、パスS2の各動作について詳細に説明する。先ず、置き換えバッファ21に転送されるユーザ・データについて詳細に説明する。ブルーレイディスクでは、ユーザ・データ方向Qのデータは1列が216bytesである。ここでは、これを9分割した例えば24bytes毎にバースト転送する場合(バースト転送サイズm=24bytes)について説明する。
SDRAMは、バースト転送をクロックに同期して高速に行えるようにしたDRAMであり、例えば、SDRAMのメモリセルを独立して動作可能な4つのブロック(バンク)構成とし、8回連続のバースト転送を使用すれば、32bytesのバースト転送が可能となる。SDRAMは、最初のバースト転送すべきアドレスを指定してやれば所定のデータをバースト転送により高速にデータの転送可能である。
図9は、SDRAM11から置き換えバッファ21に転送されるデータを説明する図である。図10(a)及び図10(b)は、図9に示すそれぞれ領域A、Bを拡大して示す図である。また、図11は、置き換えバッファ21を示す模式図である。図10に示すように、バッファ・コントローラ12は、データ・バッファ11からの1回のバースト転送によりmbytesのデータを置き換えバッファ21へ転送する処理を、レコーディング・フレーム方向Pの順に304bytes分、すなわち304回繰り返し実行する。これにより、図9に示すデータ・ブロックD4のうち影を付けて示すデータが転送されることとなる。以下、このmフレームからなるデータ群を転送ブロックD4a、D4b、D4c、・・・D4iという。置き換えバッファ21は高速ランダムアクセス可能なSRAM、レジスタ等で構成され、図11に示すように、この転送ブロックD4aを格納可能な記憶領域を2以上有する。一方の記憶領域にバースト転送によりEDC付加データを書き込み中に、他方の記録領域から、既にバースト転送済みのEDC付加データを読み出し、スクランブル回路22に送るためである。なお、304回のバースト転送により転送されたデータは、置き換えバッファ21の例えばアドレス順に格納されるが、ランダムアクセス可能であるので、図9に示す如く、レコーディング・フレーム方向Pの順にフレーム毎の304bytesのデータを高速読み出し可能である。
ここで、図10(a)、図10(b)に領域A、領域Bを拡大して示すように、レコーディング・フレーム方向Pのデータは、ユーザ・データ方向Qの並びでみると216bytes飛びのデータとなるが、上述したように、ブルーレイ規格においては、1セクタは2048bytesのユーザ・データ+4byetsのEDCからなり、データ・バッファ11から転送されてくるデータは、ユーザ・データのみであるため、1セクタ分が2048bytesである。このため偶数セクタに隣接する、奇数セクタの最初の列バイト(以下、奇数先頭列という)は、216bytes飛びではなく、212bytes飛びのデータとなる。この奇数先頭列とは、セクタSec1におけるレコーディング・フレームPの順では9列目又は10列目であり、ユーザ・データ方向Qの順にbyte0〜byte107までは10列目、byte108〜byte215までは9列目を示す。したがって、レコーディング・フレーム方向Pにデータを読み出す際に奇数先頭列に該当するデータを読み出す場合には、216bytes飛びではなく212bytes飛びとなる。
ここで、本実施の形態においては、ユーザ・データにはEDCが付加されていない状態として説明しているが、ホスト2からユーザ・データを転送する際、又はデータ・バッファ11にユーザ・データを格納する際等において、例えばユーザ・データに予め4bytesのデータをEDCの替わりに予め付加したものとしてもよい。この場合は統合部20にて当該データと、EDCバッファ14から読み出した本来のEDCとを置き換えて、置き換えバッファ21に転送するようにしてもよい。この場合には、データ・バッファ11におけるアドレスも2052bytesを1単位とすることができ、EDC付加後の置き換えバッファ21におけるセクタ単位と同一となり、単にユーザ・データ2048に+4とするアドレス計算をするのみでよい。更に、1セクタを(2048+N)bytesとし、+Nバイトのセクタサイズ調整バイトを含むものとして取り扱えば、セクタのデータ単位が異なる他のフォーマットにおいても同様に利用することができる。
例えば、ブルーレイディスクにおいては、32のセクタから1記録単位のRUBを構成する。このセクタは、上述のように2048bytesに4bytesのEDCコードが付加され、2052bytesで構成される。ここで、2048バイトのユーザ・データに付加されるデータ量N(以下、セクタサイズ調整バイトともいう。N:byte)を調整可能することで、他のフォーマットを有するディスクに対するバッファ・コントロールとしても適用することができる。例えばN=16bytesとすれば、EDC等を含めた1セクタのデータサイズが2064bytesであるDVD等に適用することができる。セクタサイズ調整バイトN及びこれを有する場合のアドレス計算についての詳細は後述する。
図5に示す参照例のように、レコーディング・フレーム方向Pの順に高速データ転送を実行する場合、通常の構成では、1RUBに対応するデータ(以下、データ・ブロックともいう)を格納する記憶領域、すなわち216×304bytes分の記憶領域が必要である。これに対し、図9に示すように、本実施の形態においては、例えば216bytesを9分割した24bytesをバースト単位とする場合は、24×304bytes(m×304bytes)と極めて小さいSRAMのみで実現することができる。
置き換えバッファ21は、図11に示すように、1RUBの処理に使用するため、バースト転送サイズm×1レコーディング・フレーム分(304bytes)らなる記憶領域21aを2以上有する。すなわち、置き換えバッファ21の記憶領域21aは、1RUB分を処理するために必要な記憶容量より小さいものとなっている。そして、上述したように、パスS2において、1RUBに相当するユーザ・データの処理を実行するため、一の記憶領域21aに書き込み中に、他の記憶領域から書き込まれたユーザ・データを読み出しスクランブル処理するため、記憶領域として例えば記憶領域21aの他に、記憶領域21a同一サイズの記憶領域21bを有する。なお、記憶領域21a、21bの2面以上としてもよいことは勿論である。置き換えバッファ21におけるデータの並びは、上述したように、ユーザ・データ方向Q及びこれと同一方向のバースト転送方向Q'と、レコーディング・フレーム方向Pとは直交した方向となる。
置き換えバッファ21が記録領域を2面(記憶領域21a、21b)有する場合であって、一方の記憶領域21aを書き込み用、他方の記憶領域21bを読み出し用として使用している場合、書き込み用記憶領域21aに1転送ブロックのEDC付加データの転送が終了し、かつ他方の記憶領域21bからスクランブル回路22への出力が完了した時点で、記憶領域21a、21bを切り替える。切り替え後は、書き込み用記憶領域となった記憶領域21bに1転送ブロックのEDC付加データを書き込み、読み出し用記憶領域となった記憶領域21aからEDC付加データをスクランブル回路22へ読み出す処理を実行する。こうして、置き換えバッファ21は、一の転送ブロックの書き込み及び読み出しを終了する毎に書き込み用、読み出し用の記録領域を切り替える。ここで、書き込みよう記憶領域にEDC付加データ(転送ブロック)を書き込む際には、ユーザ・バッファ11からユーザ・データがバースト転送される。
(4−2)先頭アドレス制御方法
このバースト転送する際のデータ・バッファ11の先頭アドレスは、上述のように、216bytes又は212bytes飛びとなるため、バッファ・コントローラ12は、データ・バッファ11におけるバースト転送する際の最初のアドレスを計算して指定する必要がある。次に、バッファ・コントローラがデータ・バッファ11からバースト転送を行う場合の先頭アドレスを計算処理方法について詳細に説明する。データ・バッファ11において指定するバースト転送の最初のアドレス(以下、先頭アドレスという)は、バッファ・コントローラ12が前回の先頭アドレス等に基づき演算により求めてもよく、置き換えバッファ21の情報に基づき先頭アドレスを演算し、バッファ・コントローラ12を制御してもよく、先頭アドレス演算用回路をバッファ・コントローラ12及び置き換えバッファ21の外部に設けるようにしてもよい。ここでは、置き換えバッファ21の情報に基づき先頭アドレスを演算してバッファ・コントローラ12を制御する場合について説明する。
置き換えバッファ21には、例えば図9に示す転送ブロックD4aを一方の記憶領域21aに転送し終わると、他方の記憶領域21bに転送ブロックD4bのバースト転送を開始する。この転送ブロックD4bのバースト転送の間に、転送ブロックD4aのスクランブル処理がスクランブル回路22で実行される。上述のように、本実施の形態においては、データ・バッファ11におけるユーザ・データは2048bytesをセクタとして書き込まれており、置き換えバッファ21にはこれに4bytesのEDCを付加した2052bytesをセクタとして書き込む。よって、セクタ境界での次バースト転送先頭アドレスは単純に+216bytesとならない。そこで本実施の形態においては、バッファ・コントローラ12が、置き換えバッファ21の記憶領域に、例えば転送ブロックD4bが転送されるようにするため、データ・バッファ11におけるユーザ・データの先頭アドレスを指定する。このため、エンコード装置10は、バッファ・コントローラ12に対し先頭アドレスを供給する先頭アドレス計算回路を有している。
図12(a)は、置き換えバッファ21に格納されているユーザ・データのアドレスを示す模式図、図12(b)は、先頭アドレスを演算するバースト転送先頭アドレス計算回路40を示すブロック図である。なお、本実施の形態においては、先頭アドレス計算回路40は置き換えバッファ21内に配置するものとするが、置き換えバッファ21の外部に設けてもよいことは勿論である。
図12(b)に示すように、先頭アドレス計算回路40は、行カウンタ41及びiカウンタ42の2つのカウンタを有する。行カウンタ41は、データ・ブロックにおけるユーザ・データ方向Qの行番号R(図2参照)をカウントするカウンタであり、1セクタは、216bytesで折り返されているため、データ・ブロックは216行からなる。よって、行カウンタ41は0〜215までのカウントをする。ここで、1回のバースト転送ではm行1列のデータが転送され、1つの転送ブロックの転送終了するまでこれは304回繰り返される。よってこの行カウンタ41は、例えば、m=24とすると、0〜23を304回カウントし、305回目から、すなわち2番目の転送ブロックの転送が開始されると24〜47までをカウントする、という動作を繰り返す。
またiカウンタ42は、1エリアにおけるレコーディング・フレーム方向Pのデータをカウントするカウンタであり、上述のように1エリアは2セクタからなり、2セクタは19列のバイト列から構成される。よってiカウンタ42は、0〜18までのカウントをする。ここで、1つの転送ブロックは16エリアから構成されるため、1つの転送ブロックのデータ転送が終了する間にiカウンタ42は、0〜18のカウントを16回繰り返す。また、上述のように、1回のデータ転送によりm行1列のデータが転送されるため、例えば、mバイト毎にカウンタがインクリメントされる構成とすることができる。すなわち、行カウンタ41、iカウンタ42によって、入力されるデータがいずれの行、列に該当するデータであるかを判別できる構成となっている。
更に、先頭アドレス計算回路40は、比較器43〜46を有する。比較器43は、iカウント値が18であるか否かを判定する。比較器44は、行カウント値が108未満(R0〜R107)であるか否かを判定する。比較器45は、iカウント値が8であるか否かを判定する。比較器46は、iカウント値が9であるか否かを判定する。
また、先頭アドレス計算回路40は、論理回路51〜53を有する。論理回路51は、比較器44の反転出力及び比較器45の論理積を求めるAND回路であり、論理回路52は、比較器44及び比較器46の論理積を求めるAND回路である。そして、論理回路53は、比較器43、論理回路51、52の出力の論理和を求めるOR回路である。すなわち、論理回路53は、iカウント値が18である場合、行カウント値が108より小さくかつiカウント値が9である場合、及び行カウント値が108以上でありかつiカウント値が8である場合にのみ例えば「1」を出力する。以上のカウンタ41、42、比較器43〜46、論理回路51〜53からセクタ境界検出部40aが構成され、これにより入力データのセクタ境界を検出することができる。
更に、先頭アドレス計算回路40は、論理回路53の出力が「1」の場合は、212+Nを出力し、論理回路53の出力が「0」の場合に216を出力する選択器54を有する。また、先に出力した先頭アドレスと選択器54との出力を加算する加算器55と、加算器55の出力を先頭アドレスとして出力するアドレス出力部56と、アドレス出力部56のアドレスにバースト転送サイズmを加算する加算器57と、加算器57の加算結果を保存するアドレス保存部58とを有する。アドレス出力部56からの出力は、先頭アドレスとしてバッファ・コントローラ12に送られると共に、加算器55に送られる。また、転送ブロックの最初のバースト転送時のみ、当該先頭アドレスが加算器57にも出力される。
以上の選択器54、加算器55、及びアドレス出力部56からアドレス更新部40bが構成され、加算器57及びアドレス保存部58から次転送ブロック先頭アドレス保持部40cが構成される。バッファ・コントローラ12は、一のバースト転送を行う毎に、アドレス更新部40bが出力する先頭アドレスを受け取ってデータ・バッファ11における先頭アドレスを指定する。また、次転送ブロック先頭アドレス保持部40cは、現在転送中の転送ブロックの最初のバースト転送における先頭アドレスにバースト転送サイズmを加算した値を、次の転送ブロックにおける最初のバースト転送用の先頭アドレスとして保持する。
図13は、データ・バッファ11、置き換えバッファ21のアドレスを説明するための図である。上述したように、ブルーレイ規格であれば、ユーザ・データは2048bytesで1セクタを構成するため、データ・バッファ11に記憶されるユーザ・データは、各セクタ毎に、アドレス[0000]〜[2047]が繰り返し付加されることとなる。一方、置き換えバッファ21における各セクタは、4bytesのEDCを付加したEDC付加データとなっており、各セクタ毎にアドレス[0000]〜[2051]が繰り返し付加されることとなる。よって、セクタ境界においてEDC付加分の4bytesのずれが生じるため、置き換えバッファ21又はデータ・バッファ11におけるアドレス情報を利用して、先頭アドレス計算回路40によりデータ・バッファ11にて指定する先頭アドレスを計算する。
なお、本実施の形態においては、バースト転送先頭アドレス計算回路40は置き換えバッファ21のパラメータを使用して先頭アドレスを算出するものとして説明したが、バッファ・コントローラ12内の転送に必要なパラメータから先頭アドレスを演算するようにしてもよい。この場合は、バッファ・コントローラ12の内部又は外部に先頭アドレス計算回路40を設けることができる。
次に、この先頭アドレス計算回路40の動作について説明する。図14は、アドレス計算回路の計算方法を示すフローチャートである。なお、本実施の形態においては、例えば、データが置き換えバッファ21に入力される期間をTとすると、常に期間T毎にステップSP21からの処理が繰り返し実行されるものとして説明する。以下の説明においては、置き換えバッファ21における1セクタ(0〜2051番目までのデータ)のユーザ・データ方向の並び順(アドレス)を[****]のように示すこととする。また、本実施の形態においては、データ・バッファ11からのバースト転送サイズm=24として説明するが、バースト転送サイズは、24バイトに限るものではない。
先ず、データ・ブロックの最初の転送ブロックの転送時か否かが判断される(ステップSP21)。データ・ブロックの最初の転送ブロック(先頭転送ブロックD4a)を転送する場合(先頭転送ブロック初期化時)には、行カウンタ41の行カウント値を0とし(ステップSP22)、iカウンタ42のiカウント値を0とする(ステップSP23)。なお、置き換えバッファの一方の記憶領域に一の転送ブロックが転送される間、他方の記憶領域に既に転送済みの転送ブロックを使用し、スクランブル回路22にてスクランブル処理が実行される。記録装置3は図示せぬカウンタ等を含む制御部においてこのタイミングを検出し、バースト転送先頭アドレス計算回路40及びスクランブル回路22にこれを供給する。この先頭転送ブロック初期化時に、先頭転送ブロックの最初のバースト転送用先頭アドレス(=[0000])を、バッファ・コントローラ12から初期値としてロードする(ステップS24)。アドレス出力部56はこの初期値アドレス[0000]を加算器57に出力する。加算器57は、アドレス出力部56から出力されたアドレス[0000]にバースト転送サイズm=24を加算してアドレス[0024]をアドレス保存部58に出力する(ステップSP25)。ここで、アドレス保存部58に保存されるアドレス値は、次の転送ブロックにおける1列目(i=0)の先頭アドレスである。
一方、アドレス出力部56は受け取ったバースト転送用先頭アドレス(=[0000])をバッファ・コントローラ12に送る。先頭転送ブロック初期化時ではない場合(ステップSP21:NO)、304回目のバースト転送終了か否かが判断され、304回目のバースト転送終了ではない場合(ステップSP27:NO)、更に1〜303回目のバースト転送終了か否かが判断され(ステップSP28)、1〜303回目のバースト転送終了タイミングの場合(ステップSP29:YES)にはステップSP30〜ステップSP35を実行する。
この場合、先ず、セクタ境界検出部40aの行カウンタ41、iカウンタ42は、現在のタイミングが下記の条件1〜3に該当するか否かを、比較器43〜46及び論理回路51、52により判定する。判定する。
条件1.iカウント値=18
条件2.行カウント値<108、かつiカウント値=9
条件3.行カウント値≧108、かつiカウント値=8
なお、この判定は、本実施の形態においては、上述のステップSP28において1〜303回目の各バースト転送が終了したタイミングを検出すると行われるものとする。すなわち、このセクタ境界検出部40aは、アドレス出力部56がバッファ・コントローラ12に先頭アドレスを出力し、この先頭アドレスに基づきデータ・バッファ11からmバイトのデータがバースト転送された後、当該先頭アドレスが上記3つの条件に該当するか否かが判定される。
これらの条件はいずれもセクタ境界を検出するための条件であり、図13に影を付して示す領域に対する先頭アドレスを算出する場合を示す。セクタ境界B(エリア境界Bを含む)のみ216bytes飛びではなく212bytes飛びとなるためである。ここで、この先頭アドレス計算回路40は、iカウンタと行カウンタから1列次の列の先頭アドレスを出力アドレスとして算出するため入力と出力とではiの位置が1列ずれる構成となる。このため、セクタ境界B(エリア境界Bを含む)は、i=0、9、10に存在するがi=18、8、9を検出する構成になっている。すなわち、条件1は、セクタ境界のうちエリア境界Bを検出するための条件であり、条件2、3は、エリア内におけるセクタ境界(偶数セクタと奇数セクタとの境界)Bを検出するための条件を示す。なお、回路構成はこれに限らず、データ・バッファ11と置き換えバッファ21とのアドレスがずれる位置(セクタ境界)を検出し、補正することができる回路であればよい。こうして論理回路53における判定結果が選択器54へ出力される。
具体的には、iカウンタ42によるiカウント値=18ではなく(ステップSP30:NO)、行カウンタ41の行カウント値が108未満ではなく(ステップSP31:No)かつiカウント値=8ではない場合(ステップSP32:NO)及び、iカウント値=18ではなく(ステップSP30:NO)、行カウント値が108未満であり、かつiカウント値=9ではない場合(ステップSP33:NO)には、上記条件のいずれにも該当しないと判断し、論理回路53は「0」を出力する。
一方、iカウント値=18である場合(ステップSP30:YES)、iカウント値=18ではなく(ステップSP30:NO)、行カウント値が108以上であって(ステップS31:NO)かつiカウント値=8である場合(ステップSP32:YES)、及びiカウント値=18ではなく(ステップSP30:NO)、行カウント値が108未満であって(ステップS31:YES)かつiカウント値=9である場合(ステップSP33:YES)は、論理回路53は「1」を出力する。
このように論理回路53において、上記条件1〜3のいずれかに該当する場合は「1」、該当しない場合には「0」が出力され、選択器54に入力される。こうして上記条件1〜3により入力〜論理回路53において、入力されるアドレス情報がセクタ境界のアドレスを示すものか否かを判別する。
選択器54は、「1」が入力された場合、すなわち、条件1〜3のいずれかに該当した場合には、アドレスの更新を+212+Nとする。Nは、上述したように、1セクタを(2048+)Nバイトとし、セクタサイズを調整する可変の値である。ブルーレイディスクにおいては、1セクタに含まれるユーザ・データは2048bytesであり、本実施の形態においては、データ・バッファ11には、2048バイト毎にデータを格納するためN=0である。一方、「0」が入力された場合、すなわちいずれの条件にも該当しない場合には、+216を出力する。
加算器55は、選択器54からの出力(選択値(212+N)or216)を受け取り、アドレス出力部56が保持している値、すなわち前回のアドレス出力部56からの出力値と加算してアドレス出力部56へ出力する(ステップSP34、35)。アドレス出力部56は、これをバッファ・コントローラ12に出力する(ステップSP26)。一方、ステップSP28において、1〜303回目のバースト転送終了ではないと判定された場合、すなわち、現在のタイミングがバースト転送中であると判定された場合処理を終了する。一方、ステップSP27において304回目のバースト転送終了と判断された場合(ステップSP27:YES)、アドレス出力部56は、アドレス保存部58に保存されているバースト先頭アドレスを読み出す(ステップS29)。アドレス出力部56は、上述と同様、アドレス保存部58から読み出したバースト先頭アドレスを加算器57に出力し、加算器57は当該バースト先頭アドレスにバースト転送サイズm=24を加算した加算済アドレスを生成し、これをアドレス保存部58に保存する(ステップSP25)。同時にアドレス出力部56は、アドレス保存部58から読み出したバースト転送アドレスをバッファ・コントローラ12に出力する。
このように、アドレス出力部56は、一のデータ・ブロックの先頭転送ブロックの最初のバースト転送時には、バッファ・コントローラ12から先頭アドレスをロードし、バッファ・コントローラ12に出力する。また、上記先頭転送ブロック以外の転送ブロックの最初のバースト転送時には、その直前の転送ブロックの304回目のバースト転送終了時にアドレス保存部58からバースト転送アドレスを読み出し、バッファ・コントローラ12に出力する。これら以外のバースト転送終了時には、選択器54にて出力される212+N又は216を直前のバースト先頭アドレスに加算しバッファ・コントローラ12に出力する処理を、1クラスタ(1データ・ブロック)の処理が終了するまで繰り返すと再びステップSP21にて初期化時と判断される。なお、本実施の形態においては、アドレス出力部56は、1バースト転送終了後にバッファ・コントローラ12から読み出したアドレス、アドレス保存部58から読み出したアドレス又は選択器54、加算器55にて更新した先頭アドレスを出力するものとして説明したが、1バースト転送中にアドレスを計算するようにしてもよい。
具体的に説明する。1データ・ブロックの処理、すなわち先頭転送ブロックの書込みが開始される先頭転送ブロック初期化のタイミングで先ず、アドレス出力部56にはバッファ・コントローラ12から初期値(初期バースト転送先頭アドレス)としてアドレス[0000]が供給される。アドレス出力部56はこれを最初の列(i=0)のバースト先頭アドレスとしてバッファ・コントローラ12に供給すると共に加算器57に出力する。加算器57は、これにバースト転送サイズ=24を加算し、アドレス保存部58は、このアドレス[0024]を保存する。
セクタ境界検出部40aは、1回目のバースト転送終了時にアドレス出力部56が出力したアドレスがセクタ境界であるか否かを判定する。上記アドレス[0000]はセクタ境界ではないため、論理回路53から「0」が出力され、これにより、選択器54が216を出力する。加算器55は、初期値[0000]に216を加算し、アドレス出力部56に[0216]を出力する。アドレス出力部56は、この先頭アドレス[0216]を次の列(i=1)の先頭アドレスとしてバッファ・コントローラ12に供給する。バッファ・コントローラ12は、この受け取ったアドレス[0216]をデータ・バッファ11のバースト転送先頭アドレスとし、バースト転送を実行する。以降、アドレス計算回路40は、この動作を繰り返す。なお、アドレス出力部56は、i=0のバースト転送中又はバースト転送後に、i=1の先頭アドレスを算出してバッファ・コントローラ12に供給する。
そして、アドレス出力部56が初期値アドレス[0000]、アドレス[0216]、・・・[1728]を順次出力し、次に[1944]を置き換えバッファ21に出力し、10回目のバースト転送が終了した後、セクタ境界検出部40aは、このアドレス[1944]が上記3つの条件のうち、条件2に当てはまると判定する。これにより、論理回路53が「1」を出力する。すると選択回路54は212を出力し、加算器55は、2047→0となり、[0108]を出力する。このように、セクタ境界検出部40aによりセクタ境界Bを検出することでセクタ境界Bにおいても正しいアドレスの先頭アドレスを出力することができる。ここで、データ・バッファ11は、2048バイトからなる各セクタSecのうち、いずれのセクタSecからデータを読み出すかを示すポインタを有し、上記の場合、ポインタが次のセクタSec1を示すよう、例えばバッファ・コントローラ12から指示されることで、当該次のセクタSec1の先頭アドレス[0108]からのデータを読み出す。
また、先頭転送ブロックを転送するための先頭アドレスを最終エリアのi=18まで出力し、先頭転送ブロックの最後(=304回目)のバースト転送中又は転送後、すなわちアドレス出力部56が先頭アドレス[1836]を出力した後、アドレス出力部56は、アドレス保存部58に保存されている次の転送ブロックの先頭アドレスを読み出す。置き換えバッファ21は、データ・バッファ11から送られてくる最終バースト転送データを全て受け取り、第2の順序演算部へのデータ出力面のデータ全てを出力し終わった時点で記憶領域を切り替える。
ここで、一の記憶領域21aへの書込み中には、上述したように、他の記憶領域21bには既にバースト転送済みの転送ブロックが順次レコーディング・フレーム方向Pの順に読み出され、スクランブル回路22に順次供給される。
また、データ・バッファ11からバースト転送されるデータは、ホスト2から転送されたユーザ・データであり、EDCが付加されていない。したがって、置き換えバッファ21に入力する前にEDCを付加する必要がある。
ブルーレイ規格においては、偶数セクタにおいて最終データの次に付加されるEDCがユーザ・データ方向Qにおいて104〜107行目、すなわち、ユーザ・データ方向Qの順でデータを並べた際の途中に配置されることとなる(図2参照)。よって、レコーディング・フレーム方向Pの順に行方向に読み出した場合、104行目以降のデータ転送は、EDCが必要となる。一方で、EDCは、セクタ毎のユーザ・データを全て入力して得られるものであるため、上述したように、EDCを求めつつレコーディング・フレーム方向Pに読み出すことは不可能である。
これに対し、本実施の形態においては、(t−1)番目のRUBに含まれるユーザ・データの処理中には、既にパスS1において、(t−1)番目における当該ユーザ・データに対するEDCが演算され、EDCバッファ14に格納されている。よって、図9、図10(b)に示すように、例えばバースト転送サイズm=24である場合には、4番目の転送ブロックをバースト転送する場合であって、偶数セクタを転送する際、及び9番目の転送ブロックをバースト転送する場合であって奇数セクタを転送する際にはEDCを付加する必要がある。そこで、統合部20は、この4番目の転送ブロックを転送する際には、i=9かつ行番号R=104〜107の位置に、9番目の転送ブロックを転送する際には、i=18かつR=212〜215の位置に、パスS1にて予め算出して保持しておいたEDCをEDCバッファ17から読み出し、付加して置き換えバッファ21に格納する。統合部20のEDC付加タイミングは統合部20が行ってもよく、バッファ・コントローラ12により制御してもよい。
(4−3)スクランブル方法
次に、置き換えバッファ21にバースト転送された転送ブロックをレコーディング・フレーム方向Pの順に読み出しスクランブル処理する。次に、パスS2におけるスクランブル処理について説明する。
スクランブル回路22は、クランブル中間値を使用してレコーディング・フレーム方向Pの順にスクランブル処理を実行する。ここで、スクランブル処理は、レコーディング・フレーム毎に実行する。図15は、スクランブル回路22の詳細及びその周辺回路を示すブロック図である。予め、パスS1でスクランブル・バッファ17の一方の記憶領域には、上述のように、1記録単位RUBに含まれるデータをスクランブル処理するために必要なスクランブル中間値(16bits×19)が格納されている。なお、他方の記憶領域は、パスS1においてスクランブル処理中のスクランブル中間値を随時退避するために使用されている。スクランブル中間値は、この一方の記憶領域(以下、スクランブル・バッファ17aという)からスクランブル回路22に供給され、スクランブル回路22において各ユーザ・データに対応するスクランブル中間値に演算しなおされ、そこから下位8bitsがスクランブル値として取り出され、ユーザ・データと排他的論理和を取ることでスクランブル済データを生成する。
このため、スクランブル回路22には、スクランブル・バッファ17aに保存されている19個のスクランブル中間値S(i)が供給される。このスクランブル中間値は、スクランブル・バッファ17が、パスS1においてスクランブル回路16がスクランブル処理する際に、生成し、使用した値から、スクランブル中間値の初期値16bits及び以後108bytes毎のスクランブル中間値S(i)を保存したものである。なお、本実施の形態においては、スクランブル回路16の演算結果を利用してスクランブル中間値及び初期値を退避させることで得るものとするが、これらの値を予め記憶しておいてもよい。
スクランブル・バッファ17aは、16bitsのスクランブル中間値を19個保存する19個の保存部scramble_value[0]〜scramble_value[18]を有する。スクランブル回路16からスクランブル・バッファ17aへの具体的な退避の順番は、scramble_value[0]にスクランブル中間値の初期値、scramble_value[10]に108bytes後のスクランブル中間値、scramble_value [1]に216(=108×2)bytes後のスクランブル中間値、scramble_value [11]に324(=108×3)bytes後のスクランブル中間値、scramble_value[2]に、・・・と同様に退避されている。
なお、以下の説明においては、アドレス[****]に対応するスクランブル中間値をS[0000]、データをD[0000]のように示すこととする。すなわち、セクタの先頭データD[0000]に対応するスクランブル中間値をS[0000]、次(ユーザ・データ方向Qの順)のデータD[0001]に対応するスクランブル中間値をS[0001]のように示す。1セクタのデータに対しスクランブル処理するためには、S[0000]〜S[2051]のスクランブル中間値が必要となる。なお、S[0000]は、スクランブル用シフト・レジスタに入力される初期値である。各スクランブル中間値の下位8bitsと、EDCが付加されたデータD[0000]〜D[2051]とが排他的論理和されスクランブル済データに変換される。
スクランブル回路22は、これらのスクランブル中間値及びレコーディング・フレーム方向Pの順にEDC付加データが入力され、スクランブル処理する。このため、スクランブル中間値が入力され、これをシフトしてユーザ・データ方向Qの順で次のEDC付加データに対するスクランブル中間値を演算するシフト・レジスタ31を有する。シフト・レジスタ31は、スクランブル・バッファ17の各保存部scramble_value[0]〜scramble_value[18]と共通に接続され、後述する所定のタイミングで各保存部scramble_value[0]〜scramble_value[18]に退避されているスクランブル中間値を順次更新し、各保存部scramble_value[0]〜scramble_value[18]に当該更新値を書き戻す。
スクランブル回路22は、更に、行カウンタ32と、行カウンタ値が108か否かを判定する比較器33と、行カウント値が108以外である場合は、シフト・レジスタ31の演算結果を保存部scramble_value[9]に選択入力し、行カウント値が108である場合にはS(0000)_tmpに保持しておいたS[0000]を保存部scramble_value[9]に選択入力する選択器34とを有する。更に、iカウンタ35と、iカウンタ35のタイミングで、保存部scramble_value[0]〜[18]に退避されているiカウント値に対応する値を選択し、その下位8ビットを取り出し、スクランブル値として出力するスクランブル値出力部36と、スクランブル値出力部36から出力されるスクランブル値と、置き換えバッファ21から読み出されるEDC付データとの排他的論理和をとるXOR回路37とを有する。こうしてXOR回路37にて、レコーディング・フレーム方向Pの順にスクランブル処理されたスクランブル済データがスクランブル回路22から出力される。
このスクランブル回路22においては、1RUBに相当するEDC付加データが入力される際の最初に行カウンタ32、iカウンタ35の初期値を0とする。行カウンタ32は上述の行カウンタ41と同じく、0〜215(R0〜R215)をカウントし、iカウンタ35は上述のiカウンタ42と同じく、0〜18をカウントする。
スクランブル・バッファ17aは、置き換えバッファ21からのEDC付加データ入力タイミングで、順次、各保存部scramble_value[0]〜scramble_value[18]に退避されている値を出力する。各保存部scramble_value[0]〜scramble_value[18]は、1フレーム分のEDC付加データが入力終了するまで(1行分のデータ入力終了まで)、すなわち16回繰り返し、現在保存されているスクランブル中間値を順次出力する。
シフト・レジスタ31は、1レコーディング・フレーム分のEDC付加データの入力が終了した時点で、各保存部scramble_value[0]〜scramble_value[18]から出力されるスクランブル中間値からユーザ・データ方向Qの順で次のEDC付加データに対応するスクランブル中間値を演算して出力する。以下、これを更新スクランブル中間値という。この更新スクランブル中間値は、当該更新スクランブル中間値の基礎となるスクランブル中間値を出力した保存部scramble_valueに退避される。すなわち、各保存部scramble_value[0]〜scramble_value[18]は、退避しているスクランブル中間値を出力し、更新スクランブル中間値を保存する。これにより、各保存部scramble_value[0]〜scramble_value[18]の最初のスクランブル中間値、すなわちスクランブル回路16から取得したスクランブル中間値がS[0000]、S[0216]、・・・、S[1836]であった場合(R=0の場合)、更新後には、各保存部scramble_value[0]〜scramble_value[18]には、S(0)、S(1)、・・・、S(18)=S[0001]、S[0217]、・・・、S[1837]が退避されていることとなる。各保存部scramble_value[0]〜scramble_value[18]は、これらの更新スクランブル中間値をR=1の間、すなわち16回繰り返し、順次出力する。以上の動作をR=215まで繰り返す。最終のレコーディング・フレームのスクランブル処理しているときには、S(0)、S(1)、・・・、S(18)=S[0215]、S[0431]、・・・、S[1943]に更新され、これが順次出力されることtなる。
シフト・レジスタ31は、例えば上述の図23に示す16bitsシフト・レジスタであり、例えばD[0001]に対応するスクランブル中間値が入力されると、8bitsシフトすることでD[0002]に対応するスクランブル中間値を更新スクランブル中間値として出力するものである。すなわち、このシフト・レジスタ31は、通常のユーザ・データ方向Qの順でスクランブル中間値を演算するシフト・レジスタである。ただし、本実施の形態においては、入力が、EDC付加データD[0000]に対応するスクランブル中間値の初期値S[0000]、D[0216]に対応するスクランブル中間値[0216]、D[0432]に対応するスクランブル中間値S[0432]、のようにレコーディング・フレーム方向Pの順であり、これらを更新し保存部scramble_valueに再び退避可能な構成となっている。すなわち、行カウント値が更新されるタイミング、すなわち一の行のレコーディング・フレームのスクランブル処理の終了後、次の行のレコーディング・フレームのスクランブル処理を開始する前に、S[0000]を更新したS[0001]を保存部scramble_value[0]に退避し、S[0216]を更新したS[0217]を保存部scramble_value[1]に退避し、というように順次各保存部scramble_value[0]〜scramble_value[18]に退避されているスクランブル中間値を更新する。スクランブル・バッファ17bはそれらを順次出力するため、スクランブル出力部36においては、S[0000]→S[0216]→S[0432]→・・・の順にスクランブル中間値を選択し、レコーディング・フレーム方向Pの順にスクランブル値を出力することができる。
ここで、上述したように、偶数セクタと奇数セクタとが共存する列(i=9)は、R0〜R107が偶数セクタ、R108〜R215が奇数セクタとなっている。よって、スクランブル値は、R108〜R215においては、S[0000]〜S[0107]となる。このため、i=9の列に対応するスクランブル中間値を順次更新して保存する保存部scramble_value[9]の値を、R108のときにS[0000]にリセットする必要がある。よって、行カウンタ32により行Rをカウントし、比較器108にてR108を検出し、R108が検出された場合、すなわち比較器33の出力が「1」のとき、選択器34によって、シフト・レジスタ31が演算したスクランブル値ではなく、スクランブル中間値の初期値S[0000]を選択出力する。こうして、保存部scramble_value[9]には、R108以降、R215までS[0000]→S[0001]→・・・→S[0214]→S[0215]とスクランブル中間値が更新された値が順次退避されていくことなる。
こうして、一旦パスS2における処理が終了すると、スクランブル・バッファ17aはリセットされる。このパスS2の処理中に、パスS1によって求められてスクランブル・バッファ17の他方の記憶領域には新たなスクランブル中間値が保持されている。1クラスタ分のデータの処理を終了すると、スクランブル回路22が新たなデータ・ブロックの処理を始める際には、このスクランブル・バッファ17の他方の領域に退避されたスクランブル中間値を再び使用してスクランブル処理を実行する。
図16は、スクランブル回路22の動作を示すフローチャートである。なお、本実施の形態においては、例えば、データがスクランブル回路22に入力される各タイミングにおいて、ステップSP41からの処理が繰り返し実行されるものとして説明する。図16に示すように、先ず、先頭転送ブロック初期化時(ステップSP41:YES)には、スクランブル回路22は、S(0000)_tmpからS[0000]を読み出し(ステップSP42)、iカウンタ35のiカウント値を0とし(ステップSP43)、行カウンタ32の行カウント値を0とする(ステップS44)。
スクランブル値出力部36には、iカウンタ35が示すスクランブル中間値S(i)がスクランブル・バッファ17aから供給される(ステップSP45)。スクランブル値出力部はスクランブル中間値S(i)の下位8ビットを抜き出したスクランブル値を出力し、XOR回路37に入力される。次いで、レコーディング・フレーム方向PのEDC付加データとXOR演算され、スクランブル済データとして統合部101に出力される。
そして、処理セクタが、最終エリア、すなわちセクタSec30又はSec31であるか否かが判断され(ステップSP47)、セクタSec0〜Sec29である場合には、iカウント値=18か否かが判断され(ステップSP48)、iカウント値が18の場合にはiカウント値を0にリセットし(ステップSP49)、18未満である場合はiカウント値をインクリメントする(ステップSP50)。
一方、処理セクタがセクタSec30又はSec31である場合(ステップSP47:YES)、行カウンタ32の行カウント値=107であるか否かが判断される(ステップSP51)。行カウント値=107ではない場合(ステップS51:NO)、及び行カウント値=107であってもiカウント値=9以外の場合(ステップSP52:NO)には、i番目のスクランブル中間値scramble_value[i]をシフト・レジスタ31にて更新し、スクランブル中間値scramble_value[i]を、更新した更新スクランブル中間値に置き換える(ステップSP53)。一方、行カウント値=107であってかつiカウント値=9である場合(ステップSP51:YES、ステップSP52:YES)、S(0000)_tmpからS[0000]を読み出しスクランブル中間値scramble_value[9]へ代入する。
そして、iカウント値が18の場合はiカウンタ35のカウント値を0にリセットして行カウンタ32のカウント値をインクリメントし(ステップSP55、56、57)、iカウント値が18未満である場合にはiカウント値をインクリメントする(ステップSP58)。これを1クラスタ分、本実施の形態においては、バースト転送サイズ=24バイトであるので、置き換えバッファ21の一面分のデータ×9面分の処理が終了するまで繰り返す。
本実施の形態においては、バースト転送等1回の転送サイズm×304bytes×2面(書き込み用及び読み出し用)の記憶容量を有する置き換えバッファ21、ECCパリティを一時保持するECCバッファ(9728bytes×2面)、EDCコードを一時保持するEDCバッファ(4bytes×32×2面)、スクランブル・バッファ(38bytes×2面)を設ける。
そして、パスS1、すなわちユーザ・データ方向Qでのエンコードで得られるEDC、スクランブル中間値、及びECCを予め一時保持しておく。そして、パスS2において、データ・バッファ11からユーザ・データを繰り返しバースト転送することで置き換えバッファ21に対する高速データ転送を可能とする。また、置き換えバッファ21をリフレッシュ動作が不要であってランダムアクセスが可能なメモリから構成することで、データ・バッファ11からバースト転送により得た連続したデータをレコーディング・フレーム方向Pの順に高速置き換えが可能となる。この場合、置き換えバッファ21は、データ・バッファ11の記憶容量未満の大きさ、例えばレコーディング・フレーム方向Pで読み出すための最小容量としても、パスS1にて演算し保持されているEDC、スクランブル中間値、及びECCを使用して演算結果を使用することで、レコーディング・フレーム方向Pの順に置き換えられたデータに対しスクランブル処理を実行することができる。
このことにより、従来では、SRAMなどの高速にランダムアクセス可能な一時記憶装置をユーザデータ・バッファ11として使用しない限り高倍速記録でのエンコード処理を実現できなかったのに対し、本実施の形態においては、ユーザデータ・バッファ11として高速ランダムアクセスには不向きなSDRAM等を用いながらも、比較的小規模な回路の追加によって低コストでかつ高倍速記録が可能なエンコード処理が可能となる。
実施の形態2.
次に、実施の形態2にかかるエンコード装置について説明する。図17は、本実施の形態にかかる光ディスク記録システムを示すブロック図である。なお、図17に示す本実施の形態及び後述する変形例において、図1に示す実施の形態1にかかる光ディスクシステムと同一の構成要素には同一の符号を付してその詳細な説明は省略する。
図17に示すように、本実施の形態にかかる光ディスクシステム1は、エンコード装置70において、EDCバッファ及びECCバッファを有していない点が実施の形態1とは異なる。このように、パスS1において演算されたえEDC、ECCは、個別にバッファを設けず、データ・バッファ11に書き戻すようにしてもよい。すなわち、EDCバッファ、ECCバッファは、高速にランダムアクセスすることを要しないため、SDRAM等から構成することができ、同じくSDRAM等から構成されるデータ・バッファ11内に記憶量領域を確保するようにしてもよい。
この場合、データ・バッファ11には、ユーザ・データ記憶領域と、EDC記憶領域と、ECC記憶領域を有することとなる。ここで、上述したように、EDCは、ユーザ・データの各セクタの最後に付加されるデータである。そこで、予め、データ・バッファ11にユーザ・データを格納する際に、このEDCのデータ領域を各セクタ間に設けるようにしてもよい。すなわち、実施の形態1においては、データ・バッファ11と置き換えバッファ21とでセクタサイズが異なることで先頭アドレスを演算する回路を設けるものとして説明したが、このように、セクタ間にEDCを書き戻す空き領域を設けておき、ここにEDCを書き込むことで、データ・バッファ11にはEDC付加データが格納されることなり、置き換えバッファ21におけるアドレスと一致する。
これにより、実施の形態1においては、セクタ境界で+212とし、それ以外で+216としてアドレスを換算しなおす先頭アドレス計算回路を設ける構成としていたが、本実施の形態においては、常に+216とすればよいため先頭アドレス計算回路が不要となる。更に、EDCをデータ・バッファ11に書き戻すことでユーザ・データにEDCを付加する統合部20も不要となり、エンコード装置を小型化、低コスト化することができる。
また、ユーザ・データのセクタ間に可変の空き領域(Nbytes)を設けることで、N=4とすればブルーレイディスクに対応し、例えばN=16とすれば、DVD−ROMの1セクタ(ID、IED、CPR_MAI、Main Data、EDC)のデータサイズ(2064bytes)に一致することとなり、ブルーレイディスクとDVD、すなわち異なるフォーマット構成を有する2以上のディスクのアドレス管理を共有化することができる。
図18及び図19は、実施の形態2の変形例及び他の変形例を示すブロック図である。図18に示すように、EDCのみをデータ・バッファ81に書き戻す構成のエンコーダ装置80としてもよい。また、図19に示すように、ECCのみをデータ・バッファ91に書き戻すエンコーダ装置90としてもよい。なお、ECCバッファ19は上述したように、統合部101内に設けるようにしてもよい。
以上の説明した実施の形態1、実施の形態2及びその変形例と、上述の参照例1,2との比較結果を下記表に示す。
Figure 0004571523
表1に示すように参照例1と比較すると、EDC、ECCを記憶するSDRAM等の記憶領域、レコーディング・フレーム方向Pに高速データ転送するための小規模な置き換えバッファ、レコーディング・フレーム方向Pの順にスクランブル処理するためのスクランブル中間値を保持するスクランブル・バッファ及びスクランブル回路が追加となるものの、高倍速記録を可能とする。
また、参照例2と比較すると同じく追加の回路が必要になるものの、データ・バッファ11をSRAM等の高速ランダムアクセス可能な高価なメモリとする必要がなく、高倍速のエンコード処理が可能でかつ低コスト化が可能なエンコード装置、記録装置、記録システムを提供することができる。
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、上述の実施の形態では、ハードウェアの構成として説明したが、これに限定されるものではなく、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、記録媒体に記録して提供することも可能であり、また、インターネットその他の伝送媒体を介して伝送することにより提供することも可能である。
本発明の実施の形態1にかかるディスクエンコード装置及びこれを有する記録システムを示す模式図である。 ブルーレイディスクにおけるデータ・ブロックのバイト単位のデータの並び順を説明する図である。 図2に示す32セクタのうち最初の2つのセクタSec0、Sec1を拡大して示す図である。 参照例1にかかる記録システムを示す模式図である。 参照例2にかかる記録システムを示す模式図である。 4及び図5と比較して実施の形態1にかかる記録システムを図4及び図5と比較して示す模式図である。 本発明の実施の形態1におけるパスS1及びパスS2におけるデータ処理タイミングを示す図である。 EDCを演算するシフト・レジスタの一例を示す図である。 データ・バッファから置き換えバッファに転送されるデータを説明する図である。 (a)及び(b)は、図9に示すそれぞれ領域A、Bを拡大して示す図である。 本発明の実施の形態1における置き換えバッファを示す模式図である。 (a)は、本実施の形態1における置き換えバッファに格納されているユーザ・データのアドレスを示す模式図、(b)は、本発明の実施の形態1におけるバースト転送先頭アドレス計算回路を示すブロック図である。 本発明の実施の形態1におけるデータ・バッファ、置き換えバッファのアドレスを説明するための図である。 本発明の実施の形態1におけるアドレス計算回路の計算方法を示すフローチャートである。 本発明の実施の形態1におけるスクランブル回路22の詳細及びその周辺回路を示すブロック図である。 本発明の実施の形態1におけるレコーディング・フレーム方向Pの順のスクランブル処理方法を示すフローチャートである。 本発明の実施の形態2にかかる光ディスク記録システムを示すブロック図である。 本発明の実施の形態2の変形例にかかる光ディスク記録システムを示すブロック図である。 本発明の実施の形態2の他の変形例にかかる光ディスク記録システムを示すブロック図である。 ブルーレイディスクのデータ構成を説明する図である。 ECCクラスタのフォーマットを示す模式図である。 LDCブロックを示す模式図である。 ユーザ・データとアドレス情報とからRUBを生成するまでの各データのエンコード順序を示す図である。 スクランブル処理を行うスクランブル回路を示す模式図である。 特許文献1に記載の従来の再生装置を示すブロック図である。
符号の説明
1 光ディスクシステム、
3 記録装置、
2 ホスト、
10,70,80 エンコード装置、
11,71,81 データ・バッファ、
11a,11b 記憶領域、
12 バッファ・コントローラ、
13 EDC生成部、
14 EDCバッファ、
15 統合部、
16 スクランブル回路、
17,17a スクランブル・バッファ、
18 ECC生成部、
19 ECCバッファ、
20 統合部、
21 置き換えバッファ、
21a,21b 記憶領域、
22 スクランブル回路、
31 シフト・レジスタ、
32,42 行カウンタ、
33 比較器、
34 選択器、
35,43 iカウンタ、
36 スクランブル値出力部、
37 XOR回路、
40 アドレス計算回路、
41 エリアカウンタ、
45〜49 比較器、
50〜53 論理回路、
54 選択器、
55 加算器、
56 アドレス出力部、
57 加算器、
58 アドレス保存部、

Claims (27)

  1. ユーザ・データに対し所定の演算を施し演算済データとして出力するエンコード装置であって、前記ユーザ・データはディスクに記録する際の最小単位であるブロック毎に処理されるものであって、
    第1の順序で入力されるユーザ・データを格納するデータ・バッファと、前記第1の順序のユーザ・データに対して第1の演算を施した第1の順序演算結果を保持する演算値保持部と、
    ランダムアクセス可能でかつ前記ブロックより小さい容量からなるメモリからなり、前記データ・バッファからの前記ユーザ・データを含む格納データを前記第1の順序とは異なる第2の順序の第2順序データとして出力する置き換えバッファと、
    前記演算値保持部に保持された前記第1の順序演算結果に基づき、前記第2順序データに第2の演算を施し、前記第2の順序の前記演算済データを出力する第2の順序演算部とを有し、
    前記第1の演算は、前記データ・バッファに対して1ブロック分のアクセスにより、前記データ・バッファから読み出された前記第1の順序のユーザ・データに誤り検出符号を付加し、スクランブル処理する演算であり、
    前記演算値保持部は、前記誤り検出符号及び前記スクランブル処理においてスクランブル値を演算する際に得られるスクランブル演算値を前記第1の順序演算結果として保持し、
    前記第2の演算は、前記データ・バッファに対して1ブロック分のアクセスにより、前記スクランブル演算値を利用して前記第2の順序のスクランブル済みデータを前記演算済データとして出力するエンコード装置。
  2. 前記データ・バッファは、リフレッシュ動作が必要であって、ランダムアクセス及びバースト転送が可能なメモリから構成され、
    前記置き換えバッファは、リフレッシュ動作が不要であって、ランダムアクセス可能なメモリから構成され、前記第2順序データを出力可能な最小記憶容量以上であって前記データ・バッファの記憶容量未満の記憶容量を有する
    ことを特徴とする請求項1記載のエンコード装置。
  3. 1の順序演算部を有し、
    前記演算値保持部は、前記第1の順序演算部の演算結果を前記第1の順序演算結果として保持する
    ことを特徴とする請求項1又は2記載のエンコード装置。
  4. 前記第1の順序演算部は、前記データ・バッファから読み出された前記第1の順序のユーザ・データに誤り検出符号を付加した誤り検出符号付きデータを出力する誤り検出符号演算回路と、
    前記誤り検出符号付きデータと当該誤り検出符号付きデータに対応するスクランブル値とからスクランブル済データを生成するスクランブル回路と、
    前記スクランブル済データから誤り訂正符号を生成する誤り訂正符号生成回路とを有する
    ことを特徴とする請求項3記載のエンコーダ装置。
  5. 前記演算値保持部は、前記誤り検出符号演算回路にて演算された誤り検出符号を保持する誤り検出符号保持部と、前記スクランブル回路のスクランブル処理に使用された演算値を保持するスクランブル演算値保持部とを有する
    ことを特徴とする請求項4記載のエンコーダ装置。
  6. 前記演算値保持部は、前記誤り訂正符号を保持する誤り訂正符号保持部を有する
    ことを特徴とする請求項4記載のエンコーダ装置。
  7. 前記誤り検出符号保持部は、前記データ・バッファに形成される
    ことを特徴とする請求項5記載のエンコーダ装置。
  8. 前記誤り訂正符号保持部は、前記データ・バッファに形成される
    ことを特徴とする請求項6記載のエンコーダ装置。
  9. 前記データ・バッファはSDRAMであり、置き換えバッファはSRAM又はレジスタである
    ことを特徴とする請求項1項記載のエンコーダ装置。
  10. 前記置き換えバッファは、前記ユーザ・データに対し前記誤り検出符号を付加した誤り検出符号付きデータを、前記第2順序データとして出力する
    ことを特徴とする請求項4記載のエンコーダ装置。
  11. 前記第1の順序はユーザ・データの並び順であり、前記第2の順序は、ディスクに対するデータ記録順である
    ことを特徴とする請求項1記載のエンコード装置。
  12. 前記ユーザ・データは、M行×L列(M、Lは整数)からなるブロック毎に処理されるものであって、
    前記ブロックは、ディスクに記録するための最小記録単位に含まれるユーザ・データを含み、複数のセクタからなり、
    前記第1の順序及び第2の順序は、前記ブロックのそれぞれ列方向及び行方向である
    ことを特徴とする請求項1項記載のエンコード装置。
  13. 前記ユーザ・データは、M行×L列(M、Lは整数)からなるブロック毎に処理されるものであって、前記データ・バッファからバースト転送により前記置き換えバッファに転送されるものであって、
    前記データ・バッファは、(M×L)バイトの記憶領域を2以上有し、
    前記置き換えバッファは、前記データ・バッファの1回のバースト転送サイズをm(m<Mの整数)バイトとすると、(m×L)バイトの記憶領域を2以上有する
    ことを特徴とする請求項1記載のエンコード装置。
  14. 前記ユーザ・データは、M行×L列(M、Lは整数)からなるブロック毎に処理されるものであって、前記データ・バッファからバースト転送により前記置き換えバッファに転送されるものであって、
    前記データ・バッファは、(M×L)バイトの記憶領域を2以上有し、
    前記置き換えバッファは、前記データ・バッファの1回のバースト転送サイズをm(m<Mの整数)バイトとすると、(m×L)バイトの記憶領域を2以上有する
    ことを特徴とする請求項10記載のエンコード装置。
  15. 前記セクタは、N(Nは0以上の整数)バイトのセクタサイズ調整バイトを含む
    ことを特徴とする請求項12記載のエンコード装置。
  16. 前記セクタは、N(Nは0以上の整数)バイトのセクタサイズ調整バイトを含み、
    前記ブロックは、前記データ・バッファにおいては前記セクタ調整バイトを除いたセクタとされ、前記置き換えバッファにおいては前記セクタ調整バイトを含むセクタとされる
    ことを特徴とする請求項12記載のエンコード装置。
  17. 前記データ・バッファは、前記第1の順序のmバイトのユーザ・データをバースト転送可能であって、
    前記mバイトのユーザ・データを前記データ・バッファから読み出すための先頭アドレスを指定し前記置き換えバッファへ当該mバイトのユーザ・データを転送する制御部を有する
    ことを特徴とする請求項12記載のエンコード装置。
  18. 前記制御部は、前記データ・バッファにおけるアドレスを前記置き換えバッファにおけるアドレスに変換するか、又は前記置き換えバッファにおけるアドレスを前記データ・バッファにおけるアドレスに変換するアドレス計算部を有し、前記データ・バッファのユーザ・データを前記置き換えバッファに転送する
    ことを特徴とする請求項17記載のエンコード装置。
  19. 前記制御部は、前記データ・バッファの前記ユーザ・データを前記mバイトずつ読み出すための先頭アドレスを指定するアドレス計算部と、mバイトずつ読み出した前記ユーザ・データに対し前記誤り検出符号を付加して誤り検出符号付きデータとし前記置き換えバッファへ供給する統合部とを有し、
    前記アドレス計算部は、前記データ・バッファにおける前記セクタの境界を検出するセクタ境界検出部と、前記セクタ境界検出結果に基づき前記先頭アドレスを順次算出して出力するアドレス更新部とを有する
    ことを特徴とする請求項17記載のエンコード装置。
  20. 前記アドレス計算部は、前記データ・バッファにおける前記セクタの境界を検出するセクタ境界検出部と、前記セクタ境界検出結果に基づき前記先頭アドレスを順次更新して出力するアドレス更新部と、前記(m×L)バイトの記憶領域に格納される転送ブロックの最初にバースト転送する先頭アドレスから、次の転送ブロックの最初にバースト転送する先頭アドレスを演算して保持する次転送ブロック先頭アドレス保存部とを有し、
    前記転送ブロックの1バースト転送中又は転送終了後に前記アドレス更新部の出力を前記セクタ境界検出結果に基づき順次更新して前記先頭アドレスとして出力し、前記転送ブロックのバースト転送終了の際には前記次転送ブロック先頭アドレス保存部から前記次先頭アドレスを読み出し出力する
    ことを特徴とする請求項18記載のエンコード装置。
  21. 前記セクタは、前記データ・バッファにおいては前記ユーザ・データのみからなり、前記置き換えバッファにおいては前記ユーザ・データに対し誤り検出符号を付加した誤り検出符号付きデータからなる
    ことをと特徴とする請求項19記載のエンコード装置。
  22. 前記第2の順序演算部は、前記第1の順序でスクランブル値を求める第1の順序用シフト・レジスタと、前記スクランブル演算値保持部の出力値からスクランブル値を得て当該スクランブル値と前記第2順序データとから前記演算済データを算出する論理回路とを有し、
    前記スクランブル演算値保持部は、前記第1の順序用シフト・レジスタが演算に使用する値を前記第1の順序演算結果として保持するものであって、当該第1の順序演算結果を前記第1の順序用シフト・レジスタにより順次更新して出力する動作を繰り返す
    ことを特徴とする請求項5記載のエンコード装置。
  23. 前記ユーザ・データは、ディスクに記録するための最小記録単位を構成するブロック毎に処理されるものであって、前記第1の順序及び第2の順序は、前記ブロックのそれぞれ列方向及び行方向であり、
    前記ブロックは複数のセクタからなり、前記セクタは、2つで一のエリアを構成し、前記各エリアは同一の前記スクランブル値を使用してスクランブルされるものであって、
    前記スクランブル演算値保持部は、前記エリアに含まれる一の行方向における前記スクランブル回路の演算結果を前記第1の順序演算結果として保持する
    ことを特徴とする請求項22記載のエンコード装置。
  24. ユーザ・データに対し所定の演算を施し演算済データとして出力するためのエンコード方法であって、
    第1の順序のユーザ・データに対し、誤り検出符号を付加し、スクランブル処理を行う演算を施し、前記誤り検出符号及び前記スクランブル処理においてスクランブル値を演算する際に得られるスクランブル演算値を保存する第1の処理工程と、
    保存された前記誤り検出符号及び前記スクランブル演算値を利用して、前記ユーザ・データに誤り検出符号を付加してスクランブル処理したスクランブル済みデータを前記第1の順序とは異なる第2の順序で前記演算済データとして出力する第2の処理工程とを並列して実行し、
    前記ユーザ・データはディスクに記録する際の最小単位であるブロック毎に処理されるもであって、
    前記第1の処理工程は、前記ユーザ・データを格納したデータ・バッファに対して1ブロック分のアクセスにより行われ、
    前記第2の処理工程では、ランダムアクセス可能でかつ前記ブロックより小さい容量からなるメモリからなる置き換えバッファを使用して、前記データ・バッファに対して1ブロック分のアクセスにより、前記第2の順序のデータを出力するエンコード方法。
  25. ユーザ・データに対し所定の演算を施し演算済データとして出力するためのエンコード方法であって、
    前記第1の処理では、前記第1の順序のユーザ・データを格納したデータ・バッファから読み出したユーザ・データに対し、誤り検出符号生成処理及びスクランブル処理を施し、その演算過程で得られる誤り検出符号及びスクランブル演算値を保持し、
    前記第2の処理では、前記データ・バッファから読み出したユーザ・データに前記誤り検出符号を付加し、前記置き換えバッファに転送し、前記置き換えバッファから前記第2の順序で読み出し前記スクランブル演算値に基づきスクランブル処理して前記演算済データを生成する
    ことを特徴とする請求項24記載のエンコード方法。
  26. 前記第1の処理及び前記第2の処理は、ディスクに対する最小記録単位に含まれるユーザ・データから構成されるブロック毎に行われるものであって、
    番目のブロックに対して前記第1の処理を実行している間、(t−1)番目のブロックに対して前記第2の処理を実行する
    ことを特徴とする請求項25記載のエンコード方法。
  27. ユーザ・データに対し所定の演算を施し演算済データに変換して出力するエンコード回路と、前記演算済データを変調する変調回路と、変調された変調データを記録するディスクとを有する記録装置であって、前記ユーザ・データはディスクに記録する際の最小単位であるブロック毎に処理されるものであって、
    前記エンコード回路は、
    第1の順序で入力されるユーザ・データを格納するデータ・バッファと、
    前記第1の順序のユーザ・データに対して第1の演算を施した第1の順序演算結果を保持する演算値保持部と、
    ランダムアクセス可能でかつ前記ブロックより小さい容量からなるメモリからなり、前記データ・バッファから前記ユーザ・データを読み出し、前記第1の順序とは異なる第2の順序とした第2順序データを出力する置き換えバッファと、
    前記演算値保持部に保持された前記第1の順序演算結果に基づき、前記第2順序データに第2の演算を施し、前記第2の順序の前記演算済データを出力する第2の順序演算部とを有し、
    前記第1の演算は、前記データ・バッファに対して1ブロック分のアクセスにより、前記データ・バッファから読み出された前記第1の順序のユーザ・データに誤り検出符号を付加し、スクランブル処理する演算であり、
    前記演算値保持部は、前記誤り検出符号及び前記スクランブル処理においてスクランブル値を演算する際に得られるスクランブル演算値を前記第1の順序演算結果として保持し、
    前記第2の演算は、前記データ・バッファに対して1ブロック分のアクセスにより、前記スクランブル演算値を利用して前記第2の順序のスクランブル済みデータを前記演算済データとして出力する記録装置。
JP2005060364A 2005-03-04 2005-03-04 スクランブル回路、エンコード装置、エンコード方法及び記録装置 Expired - Fee Related JP4571523B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005060364A JP4571523B2 (ja) 2005-03-04 2005-03-04 スクランブル回路、エンコード装置、エンコード方法及び記録装置
US11/366,629 US7836375B2 (en) 2005-03-04 2006-03-03 Scrambler circuit, encoding device, encoding method and recording apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005060364A JP4571523B2 (ja) 2005-03-04 2005-03-04 スクランブル回路、エンコード装置、エンコード方法及び記録装置

Publications (2)

Publication Number Publication Date
JP2006244631A JP2006244631A (ja) 2006-09-14
JP4571523B2 true JP4571523B2 (ja) 2010-10-27

Family

ID=36972430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005060364A Expired - Fee Related JP4571523B2 (ja) 2005-03-04 2005-03-04 スクランブル回路、エンコード装置、エンコード方法及び記録装置

Country Status (2)

Country Link
US (1) US7836375B2 (ja)
JP (1) JP4571523B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4620541B2 (ja) 2005-08-04 2011-01-26 ルネサスエレクトロニクス株式会社 誤り検出符号算出回路、誤り検出符号算出方法及び記録装置
JP2009514133A (ja) * 2005-10-31 2009-04-02 エヌエックスピー ビー ヴィ 光ディスクエンコード・デコードのシステムと方法
TWI332650B (en) 2007-01-31 2010-11-01 Realtek Semiconductor Corp Error detection code generating circuit and encoding circuit utilizing which and the method of which
JP4930251B2 (ja) * 2007-07-31 2012-05-16 富士通セミコンダクター株式会社 誤り訂正装置及びデスクランブル回路
US8848913B2 (en) 2007-10-04 2014-09-30 Qualcomm Incorporated Scrambling sequence generation in a communication system
US8787181B2 (en) * 2008-01-14 2014-07-22 Qualcomm Incorporated Resource allocation randomization
US8923249B2 (en) * 2008-03-26 2014-12-30 Qualcomm Incorporated Method and apparatus for scrambling sequence generation in a communication system
JP2010211862A (ja) * 2009-03-10 2010-09-24 Panasonic Corp 符号化装置及び光ディスク記録装置
JP5419653B2 (ja) * 2009-12-01 2014-02-19 ルネサスエレクトロニクス株式会社 記録装置及び記録方法
WO2013100939A1 (en) * 2011-12-28 2013-07-04 Intel Corporation Memory module architecture

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000228055A (ja) * 1999-02-04 2000-08-15 Matsushita Electric Ind Co Ltd 情報記録装置及びデータスクランブル回路
JP2000306342A (ja) * 1999-04-21 2000-11-02 Matsushita Electric Ind Co Ltd 誤り訂正符号化装置
JP2001177419A (ja) * 1999-12-15 2001-06-29 Matsushita Electric Ind Co Ltd エラー訂正装置及びプログラム記録媒体
JP2001292066A (ja) * 2000-01-31 2001-10-19 Sanyo Electric Co Ltd 誤り訂正装置および誤り訂正方法
JP2003123392A (ja) * 2001-10-11 2003-04-25 Sony Corp ディスク記録媒体、ディスクドライブ装置、再生方法
JP2003242720A (ja) * 2001-12-14 2003-08-29 Hitachi Ltd ディジタルデータ記録再生方法
JP2003263844A (ja) * 2002-03-07 2003-09-19 Nec Electronics Corp デジタルデータ符号化回路および符号化回路を備えたデジタルデータ符号化装置
JP2004192749A (ja) * 2002-12-13 2004-07-08 Sony Corp 再生専用記録媒体、再生装置、再生方法、ディスク製造方法
JP2005025912A (ja) * 2002-11-18 2005-01-27 Matsushita Electric Ind Co Ltd 誤り訂正方法及び回路、誤り訂正符号化方法及び回路、データ再生方法及び回路、データ記録方法及び回路

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4993029A (en) * 1989-03-13 1991-02-12 International Business Machines Corporation Method and apparatus for randomizing data in a direct access storage device
JP3500724B2 (ja) * 1994-09-05 2004-02-23 ソニー株式会社 データ再生方法およびデータ再生装置
US6128700A (en) * 1995-05-17 2000-10-03 Monolithic System Technology, Inc. System utilizing a DRAM array as a next level cache memory and method for operating same
EP0939403A3 (en) * 1998-02-25 1999-11-17 Matsushita Electric Industrial Co., Ltd. High-speed error correcting apparatus with efficient data transfer
EP1093121A1 (en) * 1999-10-13 2001-04-18 Matsushita Electric Industrial Co., Ltd. Information recording medium, and method and apparatus for recording and reproducing information using the same
US6874044B1 (en) * 2003-09-10 2005-03-29 Supertalent Electronics, Inc. Flash drive/reader with serial-port controller and flash-memory controller mastering a second RAM-buffer bus parallel to a CPU bus
DE60118570T2 (de) * 2000-08-03 2006-08-24 Matsushita Electric Industrial Co., Ltd., Kadoma Informationsaufzeichnungsmedium, informationsaufzeichnungs- und -wiedergabeverfahren, und informationsaufzeichnungs- und -wiedergabegerät
KR20040021039A (ko) * 2002-09-02 2004-03-10 엘지전자 주식회사 고밀도 광디스크의 에러정정 방법
US7197594B2 (en) * 2003-09-23 2007-03-27 Infineon Technologies Flash Gmbh & Co. Kg Circuit, system and method for encoding data to be stored on a non-volatile memory array
TWI266181B (en) * 2004-04-09 2006-11-11 Mediatek Inc Apparatus for accessing and outputting optical data

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000228055A (ja) * 1999-02-04 2000-08-15 Matsushita Electric Ind Co Ltd 情報記録装置及びデータスクランブル回路
JP2000306342A (ja) * 1999-04-21 2000-11-02 Matsushita Electric Ind Co Ltd 誤り訂正符号化装置
JP2001177419A (ja) * 1999-12-15 2001-06-29 Matsushita Electric Ind Co Ltd エラー訂正装置及びプログラム記録媒体
JP2001292066A (ja) * 2000-01-31 2001-10-19 Sanyo Electric Co Ltd 誤り訂正装置および誤り訂正方法
JP2003123392A (ja) * 2001-10-11 2003-04-25 Sony Corp ディスク記録媒体、ディスクドライブ装置、再生方法
JP2003242720A (ja) * 2001-12-14 2003-08-29 Hitachi Ltd ディジタルデータ記録再生方法
JP2003263844A (ja) * 2002-03-07 2003-09-19 Nec Electronics Corp デジタルデータ符号化回路および符号化回路を備えたデジタルデータ符号化装置
JP2005025912A (ja) * 2002-11-18 2005-01-27 Matsushita Electric Ind Co Ltd 誤り訂正方法及び回路、誤り訂正符号化方法及び回路、データ再生方法及び回路、データ記録方法及び回路
JP2004192749A (ja) * 2002-12-13 2004-07-08 Sony Corp 再生専用記録媒体、再生装置、再生方法、ディスク製造方法

Also Published As

Publication number Publication date
US20060206780A1 (en) 2006-09-14
JP2006244631A (ja) 2006-09-14
US7836375B2 (en) 2010-11-16

Similar Documents

Publication Publication Date Title
JP4571523B2 (ja) スクランブル回路、エンコード装置、エンコード方法及び記録装置
JP4620541B2 (ja) 誤り検出符号算出回路、誤り検出符号算出方法及び記録装置
US5732088A (en) Data recording/reproducing apparatus, method thereof, and data record medium
KR100654110B1 (ko) 에러검출코드 추가 회로, 에러 검출 회로 및 방법, 및디스크 장치
KR100654111B1 (ko) 스크램블러, 디스크램블러 및 방법, 및 디스크 장치
JP2002319242A (ja) 記録方法、記録装置、伝送装置、再生方法、再生装置、受信装置、記録媒体及び伝送媒体
JP4337341B2 (ja) 再生専用記録媒体、再生装置、再生方法、ディスク製造方法
JP2006209928A (ja) 光ディスク製造方法及び装置、光ディスク、並びに、光ディスク再生方法及び装置
US7475324B2 (en) Encoding apparatus for storing data to disk
US20040163026A1 (en) Optical recording method
JP2856072B2 (ja) 情報記録方法、情報再生方法および情報再生装置
KR100784740B1 (ko) 에러 검출 코드 산출 회로, 에러 검출 코드 산출 방법, 및 레코딩 장치
JP3969399B2 (ja) 記録方法及び記録装置
JP2003196925A (ja) コンパクトディスクへのデータ記録方法及びその装置
US7334180B2 (en) Optical encoding method
JP4775401B2 (ja) 再生専用記録媒体、再生装置、再生方法、ディスク製造方法
JP3384402B2 (ja) 情報再生方法及び情報再生装置
JP2004281043A (ja) 情報信号処理方法
US20110022929A1 (en) Error correcting apparatus, method of controlling memory of error correcting apparatus, and optical disc recording/reproducing apparatus
JP2000276852A (ja) 記録方法、記録媒体、エンコード装置及び記録装置
JP2012022493A (ja) ディスク装置、データ書込方法及びデータ読出方法
JP2004192806A (ja) 情報記録方法、情報再生方法
JPH10308080A (ja) 情報記録媒体
JP2006099955A (ja) ディジタル信号処理方法、情報記録再生装置及び情報記録媒体
JP2004247040A (ja) 情報記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090330

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090407

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100121

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: 20100810

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: 20100812

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130820

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees