(57)【要約】【課題】スクランブルがかけられたインタリーブデータについて、デスクランブルおよびインタリーブ解除を行い、転送するデータ転送装置を提供する。【解決手段】インタリーブメモリ１３はインタリーブデータをデスクランブル単位で格納する。ＤＭＡ装置２  １５はインタリーブメモリ１３に格納されたインタリーブデータについて、各バイトの格納位置を示すデータ位置情報を出力する。デスクランブル装置２０はインタリーブメモリ１３から列毎にｎ（ｎは正の整数）バイトずつ読み出されたデータＤＩＮを入力とし、ＤＭＡ装置２  １５から出力されたデータ位置情報Ｓ２を基にして、デスクランブルを行う。【選択図】図１
2008159109.tif 000002
【特許請求の範囲】
【請求項１】
スクランブルがかけられたインタリーブデータについて、デスクランブルおよびインタリーブ解除を行い、主記憶装置に転送するデータ転送装置であって、
前記インタリーブデータは、Ａバイト／セクタ、Ｂセクタのスクランブルがかかった原データを、Ｃバイト毎に折り返して得たＣ行Ｄ列のデータ（Ａ，Ｂ，Ｃ，Ｄは正の整数であり、Ａ×Ｂ＝Ｃ×Ｄ）をインタリーブ単位とするものであり、
前記インタリーブデータを、デスクランブルを行う対象のひとまとまりであるデスクランブル単位で、格納するインタリーブメモリと、
前記インタリーブメモリに格納されたインタリーブデータについて、各バイトの格納位置を示すデータ位置情報と、インタリーブを解除するためのアドレス情報とを出力するＤＭＡ装置と、
前記インタリーブメモリから、列毎に、ｎ（ｎは正の整数）バイトずつ読み出されたデータを入力とし、前記ＤＭＡ装置から出力されたデータ位置情報を基にして、デスクランブルを行うデスクランブル装置とを備え、
前記主記憶装置に、前記デスクランブル装置の出力データを転送するとともに、前記ＤＭＡ装置から出力されたアドレス情報を与えるものであり、
前記デスクランブル装置は、
前記データ位置情報を基にして、バイト毎にシフト演算により更新されるフィルタ値を求めるフィルタ演算部と、
入力データと、前記フィルタ演算部によって求められたフィルタ値とをＥＸＯＲ演算するＥＸＯＲ演算部とを備えた
ことを特徴とするデータ転送装置。
【請求項２】
請求項１において、
前記インタリーブメモリは、デスクランブル単位として、ｎ行の前記インタリーブデータを格納する
ことを特徴とするデータ転送装置。
【請求項３】
請求項１において、
Ａは２０５２、Ｂは３２、Ｃは２１６、Ｄは３０４である
ことを特徴とするデータ転送装置。
【請求項４】
請求項１において、
前記フィルタ演算部は、
当該デスクランブル単位に対するフィルタ値の初期値を設定するフィルタ初期値設定部と、
フィルタ値をＣバイト分進める第１の演算部と、
フィルタ値を（Ａ−Ｃ）バイト分戻す第２の演算部とを備え、
最初のｎバイトデータが入力されたとき、前記フィルタ初期値設定部によって設定された初期値を出力し、
新たなｎバイトデータが入力された場合において、前のｎバイトデータとセクタが同一のときは、前記第１の演算部が演算を実行し、演算後のフィルタ値を出力する一方、前のｎバイトデータからセクタが１進んだときは、前記第２の演算部が演算を実行し、演算後のフィルタ値を出力するものである
ことを特徴とするデータ転送装置。
【請求項５】
請求項４において、
前記フィルタ演算部は、
新たなｎバイトデータが入力された場合において、当該新たなｎバイトデータが、前のｎバイトデータとセクタが同一の第１の部分と、セクタが１進んだ第２の部分とを含むとき、前記第１および第２の演算部がそれぞれ演算を実行し、前記第１の演算部による演算後のフィルタ値を前記第１の部分に対して出力する一方、前記第２の演算部による演算後のフィルタ値を前記第２の部分に対して出力する
ことを特徴とするデータ転送装置。
【請求項６】
請求項１において、
物理セクタ番号保持レジスタと、
前記物理セクタ番号保持レジスタに、物理セクタ番号を、インタリーブ単位毎に、設定するＣＰＵとを備え、
前記フィルタ演算部は、前記物理セクタ番号保持レジスタに保持された物理セクタ番号を基にして、フィルタ値の初期値を設定するものである
ことを特徴とするデータ転送装置。
【請求項７】
請求項６において、
更新用物理セクタ番号保持レジスタを備え、
前記ＣＰＵは、一のインタリーブ単位の転送中に、次のインタリーブ単位の物理セクタ番号を前記更新用物理セクタ番号保持レジスタに設定し、前記一のインタリーブ単位の転送が終了したとき、前記更新用物理セクタ番号保持レジスタに保持されていた物理セクタ番号を前記物理セクタ番号保持レジスタに設定する
ことを特徴とするデータ転送装置。
【請求項８】
請求項１において、
入力されたデータストリームを、中途までインタリーブ解除し、前記インタリーブデータとして前記インタリーブメモリに格納するものである
ことを特徴とするデータ転送装置。
【請求項９】
請求項８において、
前記データストリームについて同期異常が発生したとき、
前記デスクランブル装置は、デスクランブル単位のスキップ量を受け、このスキップ量に応じて、フィルタ値の初期値を更新する
ことを特徴とするデータ転送装置。
【請求項１０】
請求項８において、
前記データストリームは、光ディスクから再生されたものである
ことを特徴とするデータ転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、Ｂｌｕ−ｒａｙディスクに代表される光ディスクから得られる、スクランブルがかけられたインタリーブデータについて、デスクランブルおよびインタリーブ解除を行い、転送するデータ転送装置に関する。
【背景技術】
【０００２】
Ｂｌｕ−ｒａｙ規格では、映像データなどの生データは、スクランブル処理とデータの並べ替えを行うインタリーブ処理とが行われた上で、ディスクに記録される。このため、Ｂｌｕ−ｒａｙディスクは従来、図２４のような構成において、次のような手順によって処理が行われている。
【０００３】
まず、ディスク１上のデータについて、データ同期検出回路２によって復調および同期検出を行う。そして、デインタリーブ装置３によってデインタリーブすなわちインタリーブの解除を行い、データを主記憶装置４に展開する。このとき、まず第１のインタリーブをＳＲＡＭ等の中間バッファにおいて解除し、次に主記憶装置上で第２のインタリーブを解除するようにしてもよい（例えば、特許文献１参照）。
【０００４】
その後、誤り訂正装置（ＥＣＣ）５によってインタリーブに対応した誤り訂正を行う（例えば、特許文献２参照）。その後、デスクランブル装置６によってデータのスクランブルを解除し、ＥＤＣ演算装置７によってＥＤＣ演算を行って最後の誤り検出を行う。この結果が問題なければ、ホスト転送装置８を用いてホストへのデータ転送を行う。
【特許文献１】国際公開公報ＷＯ２００６／０３５５７２号
【特許文献２】国際公開公報ＷＯ２００４／１０９６９４号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、ＤＶＤの場合には、例えば図２５のような構成において、処理を行うことが可能である。すなわち、ディスク５１上のデータについて、データ同期検出回路５２によって復調および同期検出を行い、これとともにデスクランブル装置５３によってデスクランブルを行って主記憶装置５４に展開する。そして、誤り訂正装置５５によって再スクランブルを実施しながらＥＣＣを行い、これとともにＥＤＣ演算装置５６によってＥＤＣ計算を行う。場合によっては、補正計算を行い誤りの検出を行う。その後、ホスト転送装置５７を用いてデータ転送を行う。
【０００６】
図２４の構成では、主記憶装置４にスクランブルデータが展開され、かつ、４つのマスタが主記憶装置４へのアクセスを行う。これに対して図２５の構成では、主記憶装置５４に展開されるのはデスクランブルデータ（生データ）であり、また、主記憶装置５４には３つのマスタのみがアクセスする。このため、次のようなメリットを有する。
【０００７】
１．実際にＰＣ等でアクセスするデータ形式と同じデスクランブルデータが展開されるので、データ加工やデバッグが容易である。
【０００８】
２．マスタが３つに減るため、マスタあたりの主記憶装置への転送レートが上がる。
【０００９】
３．復調中のデスクランブル演算はフィルタ構造になっており、通常の復調に比べてデータ処理時間がまったく増加しないため、元々の転送レートを阻害しない。
【００１０】
ここで、図２４の構成を、図２５と同様の構成に改良するためには、次のような問題がある。すなわち、ＤＶＤの場合は、インタリーブ処理は行われないため、ディスクからのデータ復調の順番とスクランブル処理の順番とは同一である。このため、復調とともにデスクランブル処理を行うことは比較的容易である。ところが、Ｂｌｕ−ｒａｙディスクの場合、インタリーブの存在によって、ディスクからのデータ復調の順番と、データが意味をなす順番とが異なっている。このため、復調データをただ単純にデスクランブルすることはできず、インタリーブを考慮したデスクランブル処理を実行することが必要となる。
【００１１】
前記の問題に鑑み、本発明は、スクランブルがかけられたインタリーブデータについて、デスクランブルおよびインタリーブ解除を行い、転送するデータ転送装置を提供することを課題とする。
【課題を解決するための手段】
【００１２】
本発明は、スクランブルがかけられたインタリーブデータについて、デスクランブルおよびインタリーブ解除を行い、主記憶装置に転送するデータ転送装置として、前記インタリーブデータは、Ａバイト／セクタ、Ｂセクタのスクランブルがかかった原データを、Ｃバイト毎に折り返して得たＣ行Ｄ列のデータ（Ａ，Ｂ，Ｃ，Ｄは正の整数であり、Ａ×Ｂ＝Ｃ×Ｄ）をインタリーブ単位とするものであり、前記インタリーブデータを、デスクランブルを行う対象のひとまとまりであるデスクランブル単位で、格納するインタリーブメモリと、前記インタリーブメモリに格納されたインタリーブデータについて、各バイトの格納位置を示すデータ位置情報と、インタリーブを解除するためのアドレス情報とを出力するＤＭＡ装置と、前記インタリーブメモリから、列毎に、ｎ（ｎは正の整数）バイトずつ読み出されたデータを入力とし、前記ＤＭＡ装置から出力されたデータ位置情報を基にして、デスクランブルを行うデスクランブル装置とを備え、前記主記憶装置に、前記デスクランブル装置の出力データを転送するとともに、前記ＤＭＡ装置から出力されたアドレス情報を与えるものであり、前記デスクランブル装置は、前記データ位置情報を基にして、バイト毎にシフト演算により更新されるフィルタ値を求めるフィルタ演算部と、入力データと、前記フィルタ演算部によって求められたフィルタ値とをＥＸＯＲ演算するＥＸＯＲ演算部とを備えたものである。
【００１３】
本発明によると、Ａバイト／セクタ、Ｂセクタのスクランブルがかかった原データをＣバイト毎に折り返して得たＣ行Ｄ列のデータをインタリーブ単位とするインタリーブデータが、デスクランブルを行う対象のひとまとまりであるデスクランブル単位で、インタリーブメモリに格納される。そして、デスクランブル装置において、インタリーブメモリから列毎にｎバイトずつ読み出された入力データについて、ＤＭＡ装置から出力されたデータ位置情報を基にしてフィルタ値が求められ、このフィルタ値とＥＸＯＲ演算がなされる。デスクランブル装置の出力データは主記憶装置に転送され、また、ＤＭＡ装置から出力されたインタリーブを解除するためのアドレス情報が主記憶装置に与えられる。これによって、インタリーブ解除とともにデスクランブルが実行される。
【発明の効果】
【００１４】
本発明によると、スクランブルがかけられたインタリーブデータについて、インタリーブ解除とともに、デスクランブルが可能になり、主記憶装置にデスクランブルデータを展開することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態について、図面を参照して説明する。
【００１６】
（第１の実施形態）
図１は本発明の第１の実施形態に係るデータ転送装置の構成を示すブロック図である。図１のデータ転送装置は、入力されたデータストリームＤ１を、中途までインタリーブ解除し、インタリーブメモリ１３に格納する。そして、デスクランブル装置２０によって、インタリーブメモリ１３に格納されたインタリーブデータＤＩＮをデスクランブルし、デスクランブル後のデータＤＯＵＴをさらにインタリーブ解除して、主記憶装置１８に格納する。図２は図１におけるデスクランブル装置２０の内部構成を示すブロック図である。
【００１７】
ここで、スクランブルおよびインタリーブについて、Ｂｌｕ−ｒａｙの規格を例にとって説明する。
【００１８】
まず、インタリーブ前の映像等の生データは、主記憶装置上で２０４８バイト毎に区切られ、それぞれにエラー検出用のＥＤＣが４バイトずつ付加される。ＥＤＣが付加された後の２０５２バイトに対して、スクランブル処理が施される。
【００１９】
図３はスクランブル処理のための演算を示す図である。図３において、物理セクタ番号６００は４バイトの情報である。物理セクタ番号６００のビット５〜１９が、シード６０１のビット０〜１４の初期値として入力される。シード６０１のビット１５には初期値として“１”が入力される。このシード６０１の下位８ビットがスクランブル用のフィルタとして用いられる。すなわち、１バイトの生データとフィルタとしてのシード６０１の下位８ビットとをＥＸＯＲ演算した結果が、スクランブルデータとなる。次の１バイトデータにスクランブルをかける場合は、演算６０２を用いて８回シフト演算を行い、演算後のシード６０１の下位８ビットとＥＸＯＲ演算を行う。このような処理を、２０５２バイト分繰り返し実行する。
【００２０】
初期値として用いる物理セクタ番号は、この２０５２バイトごとにインクリメントされた番号が用いられる。よって、後述するインタリーブ単位である３２セクタの間は、初期値として用いるビット５〜１９の値は変化しないという特徴がある。
【００２１】
次に、得られたスクランブルデータを、図４に示すように、縦に１バイトずつ、３２セクタ分並べる。この２０５２バイト／セクタ、３２セクタのデータが、スクランブルがかかった原データとなる。
【００２２】
次に、図４のデータを縦に２１６バイト毎に折り返して、図５に示すような２１６行３０４列のデータを得る（２０５２×３２＝２１６×３０４）。
【００２３】
次に、図５のデータについて、各列にパリティを３２バイトずつ付加し、図６のようなデータを得る。なお、パリティ付加の方法については、本発明の本質とは関係がないため、その説明は割愛する。
【００２４】
さらに、図６のデータについて、隣り合う偶数列（列０を含む）と奇数列とを１つの列にまとめる。列をまとめる際には、偶数列のデータと奇数列のデータとを交互に並べる。これによって、図７に示すような４９６行１５２列のデータが得られる。
【００２５】
最後に、図７のデータを、図８に示すように、２行単位でシフトさせる。シフト量は、３バイトずつ増加させる。なお、シフト量が１５２バイトを超えた場合は、１５２で除した際の剰余に相当するシフト量とする。例えば、シフト量が１５０バイトの次は、シフト量は１バイトとなる。
【００２６】
このようにして生成された図８のようなデータについて、各行の１５２バイトのデータを４分割し、図９のフォーマットのようなデータストリームを得る。
【００２７】
本実施形態では、図９のようなデータストリームが、データストリームＤ１として入力されるものとする。このデータストリームＤ１は、例えば、光ディスクから復調装置によって再生されたものである。
【００２８】
図１において、ＦＩＦＯメモリ１１は、入力されたデータストリームＤ１を１バイトずつ出力する。ＤＭＡ装置１  １２は、データストリームＤ１と図５に示すフォーマットとの関係を記憶しており、インタリーブを解除するためのアドレス情報Ｓ１を出力する。ＤＭＡ装置１  １２から出力されたアドレス情報Ｓ１がインタリーブメモリ１３に与えられることによって、データストリームＤ１のインタリーブが中途まで解除されて、図５に示すようなインタリーブデータがインタリーブメモリ１３に格納される。
【００２９】
本実施形態では、図９のデータストリームについて、８行単位で、インタリーブを解除するものとする。これによって、インタリーブメモリ１３には、図１０（図５と同一）におけるデータＤＳ１のような４行分のデータが格納される。この４行からなるデータが、デスクランブルを行う対象のひとまとまりのデータとなる。これを、デスクランブル単位と呼ぶことにする。
【００３０】
図１０から分かるように、インタリーブメモリ１３に格納されたデスクランブル単位のインタリーブデータＤＳ１では、連続した４バイトのデータが、２１６バイト飛ばしで３０４列分並んでいる。本実施形態では、このようなインタリーブデータＤＳ１について、デスクランブル装置２０によって、デスクランブルを行う。
【００３１】
すなわち、ＦＩＦＯメモリ１４は、インタリーブメモリ１３から列毎に４バイトずつ読み出されたインタリーブデータを、デスクランブル装置２０の入力データＤＩＮとして順に出力する。ＤＭＡ装置２  １５は、インタリーブメモリ１３に格納されたインタリーブデータについて、各バイトの格納位置を示すデータ位置情報Ｓ２を出力する。物理セクタ番号保持レジスタ１６は、ＣＰＵ１７によって設定された物理セクタ番号Ｓ３を出力する。デスクランブル装置２０は、データ位置情報Ｓ２と物理セクタ番号Ｓ３とを用いて、デスクランブルのためのフィルタ値を求める。そして、このフィルタ値と入力データＤＩＮとをＥＸＯＲ演算し、デスクランブルされた出力データＤＯＵＴを求める。ＤＭＡ装置２  １５は、図５または図１０のデータと図４に示す原データとの関係を記憶しており、インタリーブを解除するためのアドレス情報Ｓ４を出力する。ＤＭＡ装置２  １５から出力されたアドレス情報Ｓ４が主記憶装置１８に与えられることによって、デスクランブル装置２０の出力データＤＯＵＴのインタリーブが解除されて、図４に示すような原データが主記憶装置１８に格納される。
【００３２】
図２を参照して、デスクランブル装置２０の詳細について説明する。なお、デスクランブルのための処理は、図３を用いて説明したスクランブルのための処理と同様であり、フィルタ値を演算し、得られたフィルタ値と入力データとをＥＸＯＲ演算することによって行われる。
【００３３】
図２に示すように、デスクランブル装置２０は、データ位置情報Ｓ２を基にして、バイト毎にシフト演算により更新されるフィルタ値を求めるフィルタ演算部１００と、入力データＤＩＮとフィルタ演算部１００によって求められたフィルタ値ＦＩＶとをＥＸＯＲ演算するＥＸＯＲ演算部１１０とを備えている。フィルタ演算部１００は、フィルタ初期値保持部１０１、フィルタ保持部１０３、および演算部１０２，１０４，１０５を備えている。
【００３４】
フィルタ初期値保持部１０１は、当該デスクランブル単位に対するフィルタ値の初期値を保持する。ここで保持される初期値は、第０列の４バイトに対するものである。最初のデスクランブル単位に対しては、物理セクタ番号Ｓ３から、フィルタ値の初期値が得られる。１つのデスクランブル単位について処理が終了すると、第０列における次の４バイトに対する初期値が必要になる。このため、演算部１０２がフィルタ更新のために、フィルタ初期値保持部１０１に保持されたフィルタ初期値に対して４バイト分シフトする演算を行う。演算結果は、新たなフィルタ初期値としてフィルタ初期値保持部１０１に保持される。フィルタ初期値保持部１０１および演算部１０２によって、フィルタ初期値設定部が構成されている。
【００３５】
また、第１の演算部としての演算部１０４は、フィルタ値を２１６バイト分進める機能を有し、第２の演算部としての演算部１０５は、フィルタ値を１８３６（＝２０５２−２１６）バイト分戻す機能を有する。フィルタ保持部１０３は演算部１０４，１０５による演算によって得られたフィルタ値ＦＩＶを保持し、ＥＸＯＲ演算部１１０に出力する。
【００３６】
ここで、図１０から分かるように、入力データＤＩＮは、２１６バイト飛ばしの４バイトデータとなる。また、例えば第９列から第１０列に、あるいは、第１８列から第１９列に移る際には、セクタが１進み、セクタ番号がインクリメントされるとともに、データ番号が１８３６だけ減る。このため、フィルタ値は１８３６バイト分戻す必要がある。なお、インタリーブ単位の後半、すなわち１０８行目以降は、セクタが１進む箇所が、第８列から第９列に移るところになる。このようなセクタが進む箇所は、ＤＭＡ装置２  １５から出力されたデータ位置情報Ｓ２によって得ることが可能である。
【００３７】
そこで、フィルタ演算部１００は次のように動作する。まず、あるデスクランブル単位について、最初の４バイトデータが入力されたとき、フィルタ初期値保持部１０１に保持されたフィルタ値の初期値を、そのままフィルタ値ＦＩＶとして出力する。新たな４バイトデータが入力された場合、前の４バイトデータとセクタが同一のときは、演算部１０４がフィルタ値を２１６バイト分進める演算を実行し、演算後のフィルタ値ＦＩＶを出力する。一方、前の４バイトデータからセクタが１進んだときは、演算部１０５がフィルタ値を１８３６バイト分戻す演算を実行し、演算後のフィルタ値ＦＩＶを出力する。
【００３８】
次のデスクランブル単位に対しては、演算部１０２がフィルタ更新のための演算を行い、フィルタ値の初期値をフィルタ初期値保持装置１０１に設定する。その後は上と同様の処理を行う。
【００３９】
このような処理を５４回繰り返し実行することによって、図１０に示す２１６行のデータ（１インタリーブ単位）のデスクランブルが完了する。なお、２１７行目以降はしばらくパリティ領域が続く。パリティ領域はデスクランブルが必要でない。このため、ＤＭＡ装置２  １５から出力されたデータ位置情報Ｓ２がパリティ領域を示すときは、フィルタ値ＦＩＶを０に設定することによって、ＥＸＯＲ演算を無効化すればよい。
【００４０】
ここで、スクランブル演算およびデスクランブル演算の具体的な演算方法について、説明する。
【００４１】
図３において、シード６０１の現在の値をS0(N)〜S15(N)とすると、１回シフトした値は、次のようになる。
S0(N+1) = S3(N)+S12(N)+S14(N)+S15(N)
S1(N+1) = S0(N)
S2(N+1) = S1(N)
S3(N+1) = S2(N)
：
S13(N+1) = S12(N)
S14(N+1) = S13(N)
S15(N+1) = S14(N)
すなわち、２回シフトした場合、
S0(N+2) = S2(N)+S11(N)+S13(N)+S14(N)
S1(N+2) = S3(N)+S12(N)+S14(N)+S15(N)
S2(N+2) = S1(N)
S3(N+2) = S2(N)
：
S13(N+2) = S12(N)
S14(N+2) = S13(N)
S15(N+2) = S14(N)
となり、繰り返して８回（１バイト）シフトした場合、
S0(N+8) = S0(N)+S5(N)+S7(N)+S8(N)+S9(N)+S11(N)+S12(N)
S1(N+8) = S1(N)+S6(N)+S8(N)+S9(N)+S10(N)+S12(N)+S13(N)
S2(N+8) = S2(N)+S7(N)+S9(N)+S10(N)+S11(N)+S13(N)+S14(N)
S3(N+8) = S3(N)+S8(N)+S10(N)+S11(N)+S12(N)+S14(N)+S15(N)
S4(N+8) = S0(N)+S9(N)+S11(N)+S12(N)
S5(N+8) = S1(N)+S10(N)+S12(N)+S13(N)
S6(N+8) = S2(N)+S11(N)+S13(N)+S14(N)
S7(N+8) = S3(N)+S12(N)+S14(N)+S15(N)
S8(N+8) = S0(N)
S9(N+8) = S1(N)
S10(N+8) = S2(N)
S11(N+8) = S3(N)
S12(N+8) = S4(N)
S13(N+8) = S5(N)
S14(N+8) = S6(N)
S15(N+8) = S7(N)
となる。このように、スクランブルフィルタは、ディスク上のデータによらず、相対的な演算によって進めることができる。
【００４２】
ここで、本実施形態で用いている２１６バイト進める演算は、次のようになる。
S0(N+1728)= S2(N)+S4(N)+S5(N)+S7(N)+S9(N)+S10(N)+S11(N)+S12(N)+S14(N)+S15(N)
S1(N+1728)=S0(N)+S3(N)+S4(N)+S5(N)+S6(N)+S8(N)+S10(N)+S11(N)+S12(N)
S2(N+1728)=S1(N)+S4(N)+S5(N)+S6(N)+S7(N)+S9(N)+S11(N)+S12(N)+S13(N)
S3(N+1728)=S2(N)+S5(N)+S6(N)+S7(N)+S8(N)+S10(N)+S12(N)+S13(N)+S14(N)
S4(N+1728)=S3(N)+S6(N)+S7(N)+S8(N)+S9(N)+S11(N)+S13(N)+S14(N)+S15(N)
S5(N+1728)=S0(N)+S7(N)+S8(N)+S9(N)+S10(N)+S12(N)+S13(N)+S14(N)
S6(N+1728)=S1(N)+S8(N)+S9(N)+S10(N)+S11(N)+S13(N)+S14(N)+S15(N)
S7(N+1728)=S0(N)+S2(N)+S4(N)+S9(N)+S10(N)+S11(N)+S12(N)+S13(N)+S14(N)
S8(N+1728)=S1(N)+S3(N)+S5(N)+S10(N)+S11(N)+S12(N)+S13(N)+S14(N)+S15(N)
S9(N+1728)=S0(N)+S2(N)+S6(N)+S11(N)+S12(N)+S14(N)
S10(N+1728)=S1(N)+S3(N)+S7(N)+S12(N)+S13(N)+S15(N)
S11(N+1728)=S0(N)+S2(N)+S8(N)+S14(N)+S15(N)
S12(N+1728)=S0(N)+S1(N)+S3(N)+S4(N)+S9(N)+S13(N)
S13(N+1728)=S1(N)+S2(N)+S4(N)+S5(N)+S10(N)+S14(N)
S14(N+1728)=S2(N)+S3(N)+S5(N)+S6(N)+S11(N)+S15(N)
S15(N+1728)=S0(N)+S3(N)+S6(N)+S7(N)+S12(N)+S13(N)+S15(N)
【００４３】
さらに、戻すスクランブル演算については、上述の１回シフトした演算から逆算することによって、式を求めることができる。すなわち、１回戻すシフトは次のようになる。
S0(N) = S1(N+1)
S1(N) = S2(N+1)
S2(N) = S3(N+1)
S3(N) = S4(N+1)
：
S13(N) = S14(N+1)
S14(N) = S15(N+1)
S15(N) = S0(N+1)+S4(N+1)+S13(N+1)+S15(N+1)
【００４４】
上式を利用して、進める演算と同様に、戻す演算の演算式も作成可能である。ここで、本実施形態で用いている１８３６バイト戻す演算は、次のようになる。
S0(N-14688)=S1(N)+S3(N)+S4(N)+S5(N)+S6(N)+S8(N)+S10(N)
S1(N-14688)=S2(N)+S4(N)+S5(N)+S6(N)+S7(N)+S9(N)+S11(N)
S2(N-14688)=S3(N)+S5(N)+S6(N)+S7(N)+S8(N)+S10(N)+S12(N)
S3(N-14688)=S4(N)+S6(N)+S7(N)+S8(N)+S9(N)+S11(N)+S13(N)
S4(N-14688)=S5(N)+S7(N)+S8(N)+S9(N)+S10(N)+S12(N)+S14(N)
S5(N-14688)=S6(N)+S8(N)+S9(N)+S10(N)+S11(N)+S13(N)+S15(N)
S6(N-14688)=S0(N)+S4(N)+S7(N)+S9(N)+S10(N)+S11(N)+S12(N)+S13(N)+S14(N)+S15(N)
S7(N-14688)=S0(N)+S1(N)+S4(N)+S5(N)+S8(N)+S10(N)+S11(N)+S12(N)+S14(N)
S8(N-14688)=S1(N)+S2(N)+S5(N)+S6(N)+S9(N)+S11(N)+S12(N)+S13(N)+S15(N)
S9(N-14688)=S0(N)+S2(N)+S3(N)+S4(N)+S6(N)+S7(N)+S10(N)+S12(N)+S14(N)+S15(N)
S10(N-14688)=S0(N)+S1(N)+S3(N)+S5(N)+S7(N)+S8(N)+S11(N)
S11(N-14688)=S1(N)+S2(N)+S4(N)+S6(N)+S8(N)+S9(N)+S12(N)
S12(N-14688)=S2(N)+S3(N)+S5(N)+S7(N)+S9(N)+S10(N)+S13(N)
S13(N-14688)=S3(N)+S4(N)+S6(N)+S8(N)+S10(N)+S11(N)+S14(N)
S14(N-14688)=S4(N)+S5(N)+S7(N)+S9(N)+S11(N)+S12(N)+S15(N)
S15(N-14688)=S0(N)+S4(N)+S5(N)+S6(N)+S8(N)+S10(N)+S12(N)+S15(N)
【００４５】
以上のように本実施形態によると、入力されたデータストリームについて中途までインタリーブ解除し、これによって得られたスクランブルがかけられたインタリーブについて、デスクランブルしつつインタリーブを解除することができる。
【００４６】
なお、本実施形態では、デスクランブル装置２０はインタリーブデータを４バイトずつ入力してデスクランブルするものとしたが、デスクランブル装置２０の入力データのバイト数はこれに限られるものではなく、任意のｎ（ｎは正の整数）バイトのデータを入力するようにしてもかまわない。
【００４７】
また、本実施形態では、インタリーブメモリ１３には４行からなるデスクランブル単位のデータが格納されるものとしたが、デスクランブル単位の行数はこれに限られるものではない。さらに、本実施形態では、インタリーブメモリ１３に格納されたデスクランブル単位のデータの行数とデスクランブル装置２０の入力データのバイト数とが同じであるものとして説明したが、これらは必ずしも同じである必要はなく、インタリーブメモリ１３に格納されたデータの行数が、デスクランブル装置２０の入力データのバイト数よりも大きくてもかまわない。例えば、インタリーブメモリ１３には８行のデータを格納し、デスクランブル装置２０の入力データを４バイトとして、２回に分けてデスクランブルを行うようにしてもよい。
【００４８】
（第２の実施形態）
本発明の第２の実施形態に係るデータ転送装置の構成は、第１の実施形態で示した図１と同様であり、その動作も第１の実施形態と同様である。ただし、第１の実施形態とは、デスクランブル装置の内部構成と動作が異なっている。
【００４９】
本実施形態では、図９のデータストリームについて、１６行単位で、インタリーブを解除するものとする。これによって、インタリーブメモリ１３には、図１１におけるデータＤＳ２のような８行分のデータが格納される。すなわち、本実施形態では、デスクランブル単位は８行からなるデータとなる。
【００５０】
図１２は本実施形態におけるデスクランブル装置２０Ａの内部構成を示すブロック図である。第１の実施形態で示した図２と対比すると、フィルタ演算部１００Ａは、演算部１０２に代えて演算部２０１を備えており、またフィルタ補正部２０２が追加されている。
【００５１】
本実施形態では、１つのデスクランブル単位について処理が終了すると、第０列における次の８バイトに対するフィルタ初期値が必要になる。このため、演算部２０１がフィルタ更新のために、フィルタ初期値保持部１０１に保持されたフィルタ初期値に対して８バイト分シフトする演算を行う。演算結果は、新たなフィルタ初期値としてフィルタ初期値保持部１０１に保持される。
【００５２】
また本実施形態では、次のような新たな課題が生じる。すなわち、デスクランブル装置２０Ａに入力された新たな８バイトデータが、前の８バイトデータとセクタが同一の部分と、セクタが１進んだ部分とを含む場合がある。例えば、図１１に示すように、第９列における第１０８行と第１０９行との間がセクタ０とセクタ１との境界になる。本実施形態のようにデスクランブル単位を８行からなるデータとしたとき、１０８が８で割り切れないため、データＤＳ２における第９列の８バイトデータには、その前の第８列の８バイトデータとセクタが同一の４バイトと、セクタが１進んだ４バイトとが含まれることになる。なお、このようにセクタが混在するのは、第１０３〜１１０行のデスクランブル単位（データＤＳ２）における第（１９ｍ＋９）列（ｍ＝０〜１５）の８バイトデータである。
【００５３】
そこで、本実施形態では、この課題に対処するために、フィルタ補正部２０２を追加している。図１３は入力された８バイトデータにセクタが混在する場合のフィルタ更新処理を概念的に示す図である。図１３に示すように、新たな８バイトデータが入力された場合、前の８バイトデータとセクタが同一のときは、演算部１０４がフィルタ値を２１６バイト分進める演算を実行する。演算後のフィルタ値はフィルタ保持部１０３に格納され、ＥＸＯＲ演算部１１０に出力される。このとき、フィルタ補正部２０２は特に動作は行わない。
【００５４】
一方、新たな８バイトデータが、前の８バイトデータとセクタが同一の第１の部分と、セクタが１進んだ第２の部分とを含む場合は、演算部１０４，１０５がそれぞれ演算を実行する。そして、演算部１０４による演算（２１６バイト分スキップ）後のフィルタ値を第１の部分に対して出力する一方、演算部１０５による演算（１８３６バイト分バック）後のフィルタ値を第２の部分に対して出力する。具体的には例えば、演算部１０４による演算結果をフィルタ保持部１０３に格納する一方、演算部１０５による演算結果をフィルタ補正部２０２に格納し、フィルタ保持部１０３に保持されたデータの下位４バイト分とフィルタ補正部２０２に保持されたデータの上位４バイト分とを合わせて、フィルタ値としてＥＸＯＲ演算部１１０に出力する。
【００５５】
次の８バイトデータに対しては、フィルタ保持部１０３に保持されたデータに対して演算部１０５が演算（１８３６バイト分バック）を実行することによって、フィルタ値を生成することが可能である。なおこのとき、フィルタ補正部２０２に保持されたデータに対して演算部１０４が演算（２１６バイト分スキップ）を実行することによっても、フィルタ値を生成することが可能である。
【００５６】
なお、入力された８バイトデータにセクタが混在する場合のフィルタ更新処理は、図１３に示したものに限られるものではなく、その他にもいくつか考えられる。図１４は他のフィルタ更新処理を概念的に示す図である。すなわち、演算部１０４が下位４バイト分のフィルタ値に対して演算（２１６バイト分スキップ）を行う一方、演算部１０５が上位４バイト分のフィルタ値に対して演算（１８３６バイト分スキップ）を行う。そして、演算結果を合わせてフィルタ値としてＥＸＯＲ演算部１１０に出力する。次の８バイトデータに対しては、下位４バイト分のフィルタ値に対して演算部１０５が演算（１８３６バイト分バック）を実行するとともに、上位４バイト分のフィルタ値に対して演算部１０４が演算（２１６バイト分スキップ）を実行することによって、フィルタ値を生成することが可能である。図１４の処理では、フィルタ補正部２０２は不要となる。
【００５７】
（第３の実施形態）
図１５は本発明の第３の実施形態に係るデータ転送装置の構成を示すブロック図である。第１の実施形態で示した図１の構成と対比すると、更新用物理セクタ番号保持レジスタ３１が新たに設けられている点が異なる。
【００５８】
第１の実施形態では、ＣＰＵ１７が物理セクタ番号保持レジスタ１６に物理セクタ番号をインタリーブ単位毎に設定していた。この場合、例えば光ディスクからのデータが滞りなく転送されるとき、転送速度が倍速読み出し等によって速くなればなるほど、それに応じて、ＣＰＵ１７が物理セクタ番号を更新するスピードが要求される。このため、転送速度が速くなりすぎると、物理セクタ番号の更新処理が破綻するおそれがある。
【００５９】
そこで本実施形態では、更新用物理セクタ番号保持レジスタ３１を新たに設けている。ＣＰＵ１７は、一のインタリーブ単位の転送中に、次のインタリーブ単位のための物理セクタ番号を更新用物理セクタ番号保持レジスタ３１に設定する。そして、一のインタリーブ単位の転送が終了したとき、更新用物理セクタ番号保持レジスタ３１に保持されていた物理セクタ番号を物理セクタ番号保持レジスタ１６に設定する。転送の終了は、ＤＭＡ装置２  １５からの終了信号Ｓ５によって通知される。
【００６０】
これによって、ＣＰＵ１７に過度の処理速度を要することなく、インタリーブ単位間の初期値更新をシームレスに行うことが可能となる。
【００６１】
（第４の実施形態）
図１６は本発明の第４の実施形態に係るデータ転送装置の構成を示すブロック図である。また図１７は図１６におけるデスクランブル装置２０Ｂの内部構成を示すブロック図である。
【００６２】
本実施形態では、第２の実施形態と同様に、図９のデータストリームについて、１６行単位で、インタリーブを解除するものとする。これによって、インタリーブメモリ１３には、図１１におけるデータＤＳ２のような８行分のデータが格納される。すなわち、本実施形態では、デスクランブル単位は８行からなるデータとなる。
【００６３】
また、本実施形態では、データストリームＤ１の再生のために同期検出を行う同期検出部（図示せず）が前段に設けられているものとする。データストリームＤ１について同期異常（データずれ）が発生したとき、この同期検出部から、データ同期を補正するためのデータジャンプを通知する信号ＳＡが出力される。ＤＭＡ装置１  １２は信号ＳＡを受けたとき、デスクランブル単位のスキップ量を演算し、このスキップ量を表す信号ＳＳＫを出力する。デスクランブル装置２０ＢはＤＭＡ装置２  １５を介して信号ＳＳＫを受け、信号ＳＳＫが表すスキップ量に応じて、フィルタ値の初期値を更新する。この更新のために、フィルタ演算部１００Ｂは、フィルタ初期値保持部１０１に保持されたフィルタ初期値に対して１６バイト分シフトする演算を行う演算部４０１を備えている。
【００６４】
同期検出は一般に、ＳＹＮＣと呼ばれる同期検出信号を基にして行われる。図９のデータストリームでは、左端の１バイトがＳＹＮＣに当たる。Ｂｌｕ−ｒａｙの規格では、３１行毎に（これをアドレス単位という）、ＳＹＮＣに周期性がある。
【００６５】
図１８は本実施形態における動作を説明するために、１インタリーブ単位のデータを書き直した図である。図１８における各マスはフレームを表しており、１フレームは図９のデータストリームの１行分のデータに相当する。各マスの中の数字は、（フレーム番号、アドレス単位番号）である。インタリーブ単位、アドレス単位およびフレームは次のような関係にある。
・１アドレス単位＝３１フレーム
・１インタリーブ単位＝１６アドレス単位
本実施形態では、図９のデータストリームについて１６行単位でインタリーブ解除を行うので、図１８では１６フレーム毎に行を変えて記載している。図１８の各行のことを、ここでは面と呼ぶ。例えば、１つの面に相当する１６フレームのデータＤＳ３が、デスクランブル単位となる。
【００６６】
図１９は通常時のインタリーブ動作タイミングを示す図である。図１９に示すように、まずＤＭＡ装置１  １２が、転送開始からタイミングＴ１までの時間帯Ｐ１１において、第１面のデータ（図１８におけるデータＤＳ３）についてインタリーブ解除を行う。次にＤＭＡ装置２  １５が、タイミングＴ１からの時間帯Ｐ２１において、中途までインタリーブ解除された第１面のデータについてさらにインタリーブ解除を行う。これと同時に、ＤＭＡ装置１  １２は、タイミングＴ２までの時間帯Ｐ１２において、第２面のデータについてインタリーブ解除を行う。次にＤＭＡ装置２  １５が、タイミングＴ２からの時間帯Ｐ２２において、中途までインタリーブ解除された第２面のデータについてさらにインタリーブ解除を行う。このように、次々にインタリーブ解除が行われる。
【００６７】
本実施形態では、同期検出部から信号ＳＡによってデータジャンプが通知された場合、転送中のアドレス単位のデータは破棄し、ＤＭＡ装置１  １２は即座に、次のアドレス単位を含む面のデータの転送を開始するものとする。
【００６８】
この場合、どのフレームを転送しているかによって、面の移動量、すなわちデスクランブル単位のスキップ量が異なる。例えば図１８において、第１面のフレーム（０，０）〜（１５，０）を転送中にデータジャンプが通知されたとき、次のアドレス単位の先頭フレーム（０，１）は次の第２面にある。このため、面を１つ進める必要がある。また、第２面のフレーム（１６，０）〜（０，１）を転送中にデータジャンプが通知されたときは、フレームによって面の移動量が異なる。すなわち、フレーム（１６，０）〜（３０，０）では、次のアドレス単位の先頭フレーム（０，１）は同じ第２の面にあるため、面を移動する必要がない。一方、フレーム（０，１）では、次のアドレス単位の先頭フレーム（０，２）は次の次の第４面にあるため、面を２つ進める必要がある。さらに、第３面のフレーム（１，１）〜（１６，１）を転送中にデータジャンプが通知されたとき、次のアドレス単位の先頭フレーム（０，２）は次の第４面にある。このため、面を１つ進める必要がある。
【００６９】
以後同様に考えていくと、各フレームと面の移動量との関係は、図２０のようになる。これを、現在のアドレス単位番号およびフレーム番号を用いた関係式で表すと、次のようになる。
面の移動量  ＝
２  …  アドレス単位番号  ＞  フレーム番号  のとき
１  …  アドレス単位番号＋１６  ＞フレーム番号  のとき
０  …  それ以外のとき
【００７０】
ＤＭＡ装置１  １２は、信号ＳＡによってデータジャンプが通知されたとき、現在転送しているフレームのアドレス単位番号およびフレーム番号に応じて、上式に従って、面の移動量、すなわちデスクランブル単位のスキップ量を演算する。演算されたスキップ量は、信号ＳＳＫによってＤＭＡ装置２  １５に通知される。
【００７１】
図２１は同期異常が発生したときの動作を示すフローチャートである。
【００７２】
まず、同期検出部が同期異常（データジャンプ）を通知したとき（Ｓ１１）、ＤＭＡ装置１  １２は面の移動すなわちデスクランブル単位のスキップが必要か否かを判断する（Ｓ１２）。ここで、データジャンプが発生したがスキップは必要でないときは、ＤＭＡ装置２  １５およびデスクランブル装置２０Ｂの動作への影響は全くない。このため、特に動作は行わない。
【００７３】
一方、スキップが必要であるときは、ＤＭＡ装置２  １５に信号ＳＳＫによってスキップ量が通知される（Ｓ１３）。この場合、ＤＭＡ装置２  １５がデータ転送中であるか否か（Ｓ１４）によって、その後の動作が異なる。
【００７４】
まず、ＤＭＡ装置２  １５がデータ転送中でないときは、ＤＭＡ装置２  １５からデスクランブル装置２０Ｂに信号ＳＳＫによってスキップ量が通知される。デスクランブル装置２０Ｂは、スキップ量が１のときは、演算部２０１が８バイト分シフトする演算を実行してフィルタ初期値を更新し、スキップ量が２のときは、演算部４０１が１６バイト分シフトする演算を実行してフィルタ初期値を更新する（Ｓ１６）。
【００７５】
図２２はこの場合の動作タイミングの一例を示す図である。ここでは、ＤＭＡ装置１  １２が第２面データを転送中（期間Ｐ１２Ａ）において、フレーム（０，１）を転送中のタイミングＴ１Ａにおいてデータジャンプが通知されたものとする。本実施形態の前提となる仕様から、第２面データのうちフレーム（１６，０）からフレーム（０，１）の途中までのデータは破棄される。次に送信されるデータストリームＤ１は、次のアドレス単位の先頭フレーム（０，２）からのデータとなる。ＤＭＡ装置１  １２は、第４面データとしてフレーム（０，２）〜（１，２）を転送する（期間Ｐ１４Ａ）。この場合、フレーム（１７，１）〜（３０，１）は不定値となる。
【００７６】
このとき、スキップ量として２が、ＤＭＡ装置１  １２からＤＭＡ装置２  １５に通知される。ＤＭＡ装置２  １５は、現在転送中ではないので、デスクランブル装置２０Ｂにスキップ量として２を通知する。デスクランブル装置２０Ｂはフィルタ初期値を２スクランブル単位分更新する。具体的には、演算部４０１が１６バイト分シフトする演算を実行してフィルタ初期値を更新する。この結果、フィルタ初期値保持部１０１には、第４面データに対応するスクランブル単位用のフィルタ初期値が保持される。タイミングＴ４においてＤＭＡ装置１  １２が第４面データの転送を終了すると、ＤＭＡ装置２  １５が転送を開始し、デスクランブル装置２０Ｂにおいてデスクランブルが実行される。
【００７７】
図２１に戻り、ＤＭＡ装置２  １５にスキップ量が通知されたとき（Ｓ１３）、ＤＭＡ装置２  １５がデータ転送中であるときは（Ｓ１４のＹＥＳ）、ＤＭＡ装置２  １５は通知されたスキップ量を一旦スキップ量保持部４１に保持させる。そして、データ転送を終了したときに、スキップ量保持部４１に保持されたスキップ量を信号ＳＳＫによってデスクランブル装置２０Ｂに通知する。デスクランブル装置２０Ｂは、通知されたスキップ量に応じてフィルタ初期値を更新する。
【００７８】
図２３はこの場合の動作タイミングの一例を示す図である。ここでは、ＤＭＡ装置１  １２が第８面データを転送中（期間Ｐ１８Ａ）であり、かつ、ＤＭＡ装置２  １５が第７面データを転送中（期間Ｐ２７）において、ＤＭＡ装置１  １２がフレーム（１，４）を転送中のタイミングＴ７Ａにおいてデータジャンプが通知されたものとする。本実施形態の前提となる仕様から、第８面データのうちフレーム（１９，３）からフレーム（１，４）の途中までのデータは破棄される。次に送信されるデータストリームＤ１は、次のアドレス単位の先頭フレーム（０，５）からのデータとなる。ＤＭＡ装置１  １２は、第１０面データとしてフレーム（０，５）〜（４，５）を転送する（期間Ｐ１１０Ａ）。この場合、フレーム（２０，４）〜（３０，４）は不定値となる。
【００７９】
このとき、スキップ量として２が、ＤＭＡ装置１  １２からＤＭＡ装置２  １５に通知される。ＤＭＡ装置２  １５は、現在転送中であることから、デスクランブル装置２０Ｂにスキップ量を通知せず、スキップ量保持部４１にスキップ量を保持させる。そして、第７面データの転送を終了させる。転送終了時には、デスクランブル装置２０Ｂにおいてフィルタ初期値が更新される。
【００８０】
その後、ＤＭＡ装置２  １５は、スキップ量保持部４１に保持されていたスキップ量をデスクランブル装置２０Ｂに通知する。デスクランブル装置２０Ｂは、スキップ量として２を受けて、フィルタ初期値を２スクランブル単位分更新する。具体的には、演算部４０１が１６バイト分シフトする演算を実行してフィルタ初期値を更新する。この結果、フィルタ初期値保持部１０１には、第１０面データに対応するスクランブル単位用のフィルタ初期値が保持される。タイミングＴ１０においてＤＭＡ装置１  １２が第１０面データの転送を終了すると、ＤＭＡ装置２  １５が転送を開始し、デスクランブル装置２０Ｂにおいてデスクランブルが実行される。
【００８１】
本実施形態によると、光ディスク等においてて発生しうる同期異常に追従して、インタリーブ中のデスクランブルを実施可能である。これにより、同期異常後のデータが正常に転送されるため、後段の誤り訂正で訂正できる可能性があり、データリーダビリティが向上する。また、小さい単位の同期異常（フレーム単位）については、すべてデスクランブル前のインタリーブ中に収まるため無視でき、回路追加が不要である。
【００８２】
なお、本実施形態では、同期異常が発生したとき、データジャンプを行うものとして説明を行ったが、同様の手法を、データバックを行う場合にも応用することが可能である。
【００８３】
また、本実施形態では、データジャンプを行うとき、ＤＭＡ装置１がデータを破棄することを前提としたが、データを破棄しない仕様としてもよい。この場合は、図２１のフローにおいてステップＳ１４のＮＯの分岐を削除したアルゴリズムによって実現可能である。すなわち、データジャンプが発生したとき、ＤＭＡ装置１  １２はデータジャンプが起こった面についてデータ転送を終了し、ＤＭＡ装置２  １５がその面のデータ転送を開始する。また通知されたスキップ量は、ＤＭＡ装置２  １５の転送終了までスキップ量保持部４１に保持される。これとともに、ＤＭＡ装置１  １２は次の面のデータをインタリーブメモリ１３の別の空間に転送する。ＤＭＡ装置２  １５の転送が終了すると、スキップ量に応じてフィルタ初期値が更新される。
【００８４】
なお、上述の各実施形態では、Ｂｌｕ−ｒａｙの規格に従って、２０５２バイト／セクタ、３２セクタのスクランブルがかかった原データを２１６バイト毎に折り返して得た２１６行３０４列のデータをインタリーブ単位としたが、本発明はこれに限られるものではない。一般に、Ａバイト／セクタ、Ｂセクタのスクランブルがかかった原データをＣバイト毎に折り返して得たＣ行Ｄ列（Ａ，Ｂ，Ｃ，Ｄは正の整数であり、Ａ×Ｂ＝Ｃ×Ｄ）のデータをインタリーブ単位として、本発明を実現することは可能である。
【産業上の利用可能性】
【００８５】
本発明は、インタリーブ及びスクランブルを伴ったデータを高速転送するような通信分野、特に光ディスクの分野において広く利用可能である。
【図面の簡単な説明】
【００８６】
【図１】本発明の第１の実施形態に係るデータ転送装置の構成を示すブロック図である。
【図２】図１におけるデスクランブル装置の内部構成を示すブロック図である。
【図３】スクランブル処理のための演算を示す図である。
【図４】スクランブルがかかった原データを示す図である。
【図５】インタリーブ方法を説明するための図であり、図４の原データから得られたデータを示す図である。
【図６】インタリーブ方法を説明するための図であり、図５のデータにパリティが付されたデータを示す図である。
【図７】インタリーブ方法を説明するための図であり、図６のデータから得られたデータを示す図である。
【図８】インタリーブ方法を説明するための図であり、図７のデータから得られたデータを示す図である。
【図９】データストリームのフォーマットを示す図である。
【図１０】インタリーブメモリに格納されるデスクランブル単位となるデータを示す図である。
【図１１】インタリーブメモリに格納されるデスクランブル単位となるデータを示す図である。
【図１２】本発明の第２の実施形態におけるデスクランブル装置の内部構成を示すブロック図である。
【図１３】本発明の第２の実施形態におけるフィルタ更新処理を概念的に示す図である。
【図１４】本発明の第２の実施形態におけるフィルタ更新処理を概念的に示す図である。
【図１５】本発明の第３の実施形態に係るデータ転送装置の構成を示すブロック図である。
【図１６】本発明の第４の実施形態に係るデータ転送装置の構成を示すブロック図である。
【図１７】図１６におけるデスクランブル装置の内部構成を示すブロック図である。
【図１８】１インタリーブ単位のデータを示す図である。
【図１９】通常時のインタリーブ動作タイミングを示す図である。
【図２０】図１８における各フレームと、データジャンプ発生時における面の移動量との関係を示す図である。
【図２１】本発明の第４の実施形態における同期異常が発生したときの動作を示すフローチャートである。
【図２２】同期異常が発生したときの動作タイミングの一例を示す図である。
【図２３】同期異常が発生したときの動作タイミングの一例を示す図である。
【図２４】従来のＢｌｕ−ｒａｙディスクのシステム構成の例である。
【図２５】ＤＶＤのシステム構成の例である。
【符号の説明】
【００８７】
１３  インタリーブメモリ
１５  ＤＭＡ装置
１６  物理セクタ番号保持レジスタ
１７  ＣＰＵ
１８  主記憶装置
２０，２０Ａ，２０Ｂ  デスクランブル装置
３１  更新用物理セクタ番号保持レジスタ
１００，１００Ａ，１００Ｂ  フィルタ演算部
１０１  フィルタ初期値保持部
１０２  演算部
１０４  演算部（第１の演算部）
１０５  演算部（第２の演算部）
１１０  ＥＸＯＲ演算部
【図１】
2008159109.tif 000003
【図２】
2008159109.tif 000004
【図３】
2008159109.tif 000005
【図４】
2008159109.tif 000006
【図５】
2008159109.tif 000007
【図６】
2008159109.tif 000008
【図７】
2008159109.tif 000009
【図８】
2008159109.tif 000010
【図９】
2008159109.tif 000011
【図１０】
2008159109.tif 000012
【図１１】
2008159109.tif 000013
【図１２】
2008159109.tif 000014
【図１３】
2008159109.tif 000015
【図１４】
2008159109.tif 000016
【図１５】
2008159109.tif 000017
【図１６】
2008159109.tif 000018
【図１７】
2008159109.tif 000019
【図１８】
2008159109.tif 000020
【図１９】
2008159109.tif 000021
【図２０】
2008159109.tif 000022
【図２１】
2008159109.tif 000023
【図２２】
2008159109.tif 000024
【図２３】
2008159109.tif 000025
【図２４】
2008159109.tif 000026
【図２５】
2008159109.tif 000027