(57)【要約】  本発明はリードソロモンプロダクトコードの軟判定復号化に関する。本発明によれば、符号化されたデータストリームのエラー訂正のための方法において、この方法は以下のステップを含む、すなわち、入力側バッファ２において復調されたデータストリームをセーブし、入力側バッファ２において第１の訂正プロセスをオンザフライで実施し、訂正の後で外部ＤＲＡＭ３にデータを転送し、エンベデッドＳＲＡＭ１１に外部ＤＲＡＭ３からデータをコピーし、エンベデッドＳＲＡＭ１１においてマルチパス訂正をスタートし、マルチパス訂正の後でエンベデッドＳＲＡＭ１１から外部ＤＲＡＭ３へ訂正されたデータをコピーバックするステップを含む。
2009514126.tif 000002
【特許請求の範囲】
【請求項１】
符号化されたデータストリームのエラー訂正のための方法において、該方法は以下のステップを含む、すなわち、
入力側バッファ（２）において復調されたデータストリームをセーブし、
入力側バッファ（２）において第１の訂正プロセスをオンザフライで実施し、
訂正の後で外部ＤＲＡＭ（３）にデータを転送し、
エンベデッドＳＲＡＭ（１１）に外部ＤＲＡＭ（３）からデータをコピーし、
エンベデッドＳＲＡＭ（１１）においてマルチパス訂正をスタートし、
マルチパス訂正（multipass correction）の後でエンベデッドＳＲＡＭ（１１）から外部ＤＲＡＭ（３）へ訂正されたデータをコピーバックする、
ステップを含む、符号化されたデータストリームのエラー訂正のための方法。
【請求項２】
１行より小さいストリーミング非連続性は直ちに入力側バッファ（２）において訂正され、他方で１行以上のストリーミング非連続性は外部ＤＲＡＭ（３）において訂正される、請求項１記載の方法。
【請求項３】
デインターリービングのために外部ＤＲＡＭ（３）を使用するステップをさらに含む、請求項１又は２記載の方法。
【請求項４】
データストリームは、データフレーム内のエラーを訂正するために水平方向及び垂直方向パリティデータを含むデータ行及び列から成るデータフレームを含んでいることを特徴とする、請求項１〜３のうちの１項記載の方法。
【請求項５】
入力側バッファ（２）のサイズはデータフレームの行あたりのバイト数の少なくとも２倍であることを特徴とする、請求項１〜４のうちの１項記載の方法。
【請求項６】
入力側バッファ（２）はＳＲＡＭであることを特徴とする、請求項１〜５のうちの１項記載の方法。
【請求項７】
ステータスメモリ（１２）にステータスビットを格納するステップをさらに含み、ステータスビットはデータフレームの行が正しいか否かを示すステータスビットである、請求項１〜６のうちの１項記載の方法。
【請求項８】
符号化されたデータストリームのエラー訂正のためのデバイスにおいて、
該デバイスは以下のものを含む、すなわち、
復調されたデータストリームをセーブし、第１の訂正プロセスをオンザフライで実施するための入力側バッファ（２）、
訂正の後でデータが転送される外部ＤＲＡＭ（３）、
訂正されたデータにマルチパス訂正を実施するためのエンベデッドＳＲＡＭ（１１）、  外部ＤＲＡＭ（３）からエンベデッドＳＲＡＭ（１１）へデータフレームをコピーするための手段（９）、
マルチパス訂正の後でエンベデッドＳＲＡＭ（１１）から外部ＤＲＡＭ（３）へ訂正されたデータをコピーバックするための手段（１３）、
を含む、符号化されたデータストリームのエラー訂正のためのデバイス。
【請求項９】
さらに、デインターリービングのための及び／又は外部ＤＲＡＭ（３）においてストリーミング非連続性を訂正するためのデインターリーバ（４）を含む、請求項８記載のデバイス。
【請求項１０】
記録媒体から読み出し及び／又は前記記録媒体に書き込みするための装置において、
該装置は、符号化されたデータストリームのエラー訂正のために、請求項１〜７のうちのいずれか１項記載の方法を使用する又は請求項８又は９記載のデバイスを有することを特徴とする、記録媒体から読み出し及び／又は前記記録媒体に書き込みするための装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はリードソロモンプロダクトコードの軟判定復号化に関する。さらに本発明はリードソロモンプロダクトコードにおけるエラーを訂正するためのシステムに関する。
【０００２】
デジタルバーサタイルディスク（ＤＶＤ）のような光学記録媒体に対しては、リードソロモン（ＲＳ）プロダクトコードがエラー訂正のために使用される。記録媒体に格納されたデータフレームは行及び列毎にフレームにおけるエラーを訂正するために水平方向及び垂直方向パリティデータを含む。フレームのデータ行及び列はいわゆるプロダクトコードを構成する。ＤＶＤの場合には、アウターコード（外符号）はＲＳコード（２０８，１９２，１７）であり、他方でインナーコード（内符号）はＲＳコード（１８２，１７２，１１）である。それゆえ、この場合には１つのデータフレームは２０８*１８２＝３７８５６バイトから成る。
【０００３】
マルチパスデバイスはメモリに少なくとも２つのデータフレームをセーブする。１つのデータフレームはインプット／アウトプットのためにセーブされ、第２のデータフレームは訂正のためにセーブされる。現在のシステムはデータを外部ＳＤＲＡＭ（シンクロナスダイナミックランダムアクセスメモリ）か又は内部ＳＲＡＭ（スタティックランダムアクセスメモリ）かのいずれかにセーブする。エラーの訂正の間のランダムアクセスのために、ＳＤＲＡＭアプローチは内部ＳＲＡＭを使用するアプローチよりもはるかに遅い。
【０００４】
ＵＳ６０３２２８３はＤＶＤコントローラのインプリメンテーションを開示している。インプット／アウトプットストリーミング及び訂正は外部ＳＤＲＡＭにおいて行われる。高速処理のためには、内部ＳＲＡＭが使用される。シンドロームは内部ＳＲＡＭにセーブされ、他方で訂正は外部ＳＤＲＡＭで行われる。訂正の間に、直交シンドロームがエラー値によってアップデートされる。それゆえ、付加的なハードウェアが必要とされるが、プロセスは加速される。開示されたインプリメンテーションはＳＤＲＡＭへのランダムアクセスが必要とされ、これが訂正をスローダウンさせるという欠点を有する。このインプリメンテーションにおけるマルチパス訂正のための内部ＳＲＡＭ消費量は約２*４９９２＝９９８４バイトである。
【０００５】
本発明の課題は、エラー訂正のための改善された方法を提供することである。
【０００６】
本発明によれば、上記課題は、符号化されたデータストリームのエラー訂正のための方法によって解決され、この方法は以下のステップを含む、すなわち、
入力側バッファにおいて復調されたデータストリームをセーブし、
入力側バッファにおいて第１の訂正プロセスをオンザフライで実施し、
訂正の後で外部ＤＲＡＭにデータを転送し、
エンベデッドＳＲＡＭに外部ＤＲＡＭからデータをコピーし、
エンベデッドＳＲＡＭにおいてマルチパス訂正（multipass correction）をスタートし、
マルチパス訂正の後でエンベデッドＳＲＡＭから外部ＤＲＡＭへ訂正されたデータをコピーバックする、
ステップを含む。この方法は、外部ＤＲＡＭと内部ＳＲＡＭとの混合を利用する。インプット／アウトプットストリーミングは比較的遅い外部ＤＲＡＭによって実施され、他方で訂正は高速内部ＳＲＡＭによって実施される。それゆえ、外部ＤＲＡＭからのデータが訂正のためだけに高速内部ＳＲＡＭにコピーされる。最初の訂正プロセス、いわゆる「インナー  １」の後で、データが外部ＤＲＡＭへとストリームされる。ＤＲＡＭにおいてフルＥＣＣブロックを集めた後で、データはエンベデッド内部ＳＲＡＭへとストリームされる。ＥＣＣブロックはエンベデッドＳＲＡＭにおいてマルチパス訂正を介して訂正され、完了後にストリームバックされる。このようにして外部ＤＲＡＭへのランダムアクセスの数は低減される。もしエラーがソートされるならば、「インナー  １」訂正プロセス及びデータの転送は同時に実施されうる。さらに内部ＳＲＡＭのサイズも低減される。内部ＳＲＡＭ訂正は訂正プロセスの間のハードウェア複雑性を簡素化する。
【０００７】
本発明の別の局面によれば、符号化されたデータストリームのエラー訂正のためのデバイスにおいて、このデバイスは以下のものを含む、すなわち、
復調されたデータストリームをセーブし、第１の訂正プロセスをオンザフライで実施するための入力側バッファ、
訂正の後でデータが転送される外部ＤＲＡＭ、
訂正されたデータにマルチパス訂正を実施するためのエンベデッドＳＲＡＭ、
外部ＤＲＡＭからエンベデッドＳＲＡＭへデータフレームをコピーするための手段、
マルチパス訂正の後でエンベデッドＳＲＡＭから外部ＤＲＡＭへ訂正されたデータをコピーバックするための手段、
を含む。このようなデバイスは本発明の方法のインプリメンテーションがそうであるように、必要とされるＳＲＡＭ及びＤＲＡＭへのランダムアクセスが低減されるという利点を有する。さらに、内部ＳＲＡＭアプローチのために、高いマルチパス訂正が可能となる。
【０００８】
有利には、データストリームは、データフレーム内のエラーを訂正するために水平方向及び垂直方向パリティデータを含むデータ行及び列から成るデータフレームを含んでいる。このようなデータストリームの例は、リードソロモンプロダクトコードによって符号化されたデータストリームである。このタイプのエラー訂正コードは記録媒体におけるデータストリームを符号化するために広く利用されており、これは本発明を様々な異なるデータストリームに対して適用可能にする。
【０００９】
有利には、入力側バッファのサイズはデータフレームの行あたりのバイト数の少なくとも２倍である。これによってデータフレームの現在の行を訂正している間にデータフレームの次に受信された行をセーブすることが可能となる。
【００１０】
有利には、入力側バッファはＳＲＡＭである。ＳＲＡＭは格納されたデータへの高速なランダムアクセスを可能にする。これはさらに訂正プロセスを増大する。
【００１１】
有利には、訂正プロセスの間にステータスビットがステータスメモリに格納され、ステータスビットはデータフレームの行が正しいか否かを示すステータスビットである。これらのステータスビットは次いで特定の符号語に対するプロセスを決定してスタートするためにコントロールユニットによって利用される。
【００１２】
有利には、本発明の方法又はデバイスは記録媒体から読み出し及び／又は記録媒体に書き込みするための装置によって利用される。
【００１３】
本発明のより良好な理解のために、図面を参照しつつ以下の記述において実施例を示す。本発明はこの実施例に限定されるものではなく、ここに示される特徴は本発明の範囲から離れることなく便宜上結合及び／又は修正されうるものである。
【００１４】
図１はデータ収集及び水平方向パス１のブロック線図を示し、
図２はマルチパス訂正のプロセスフローを示し、
図３はＳＲＡＭ２／ＳＤＲＡＭのデータフロータイミングを示す。
【００１５】
以下において本発明はシンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）に関して説明される。しかし、本発明は例えばダブルデータレートＲＡＭ（ＤＤＲ−ＲＡＭ）、エンハンスドシンクロナスＤＲＡＭ（ＥＳＤＲＡＭ）、シンクロナスリンク（Synchronous link）ＤＲＡＭ（ＳＬＤＲＡＭ）、ＲａｍｂｕｓＤＲＡＭ（ＲＤＲＡＭ）などのいかなる種類のダイナミックランダムアクセスメモリにも適用可能である。さらにＤＶＤのために使用される光学システムを参照する。もちろん、本発明は他のタイプのディスクシステム及び同じ様に符号化されたデータストリームを使用する他のアプリケーションにも適用可能である。
【００１６】
ＤＶＤでは入力データはインターリーブされたＥＣＣブロックにパッケージ化されている。エラー訂正コード（ＥＣＣ）ブロックは２０８行×１８２列のシンボルを有し、１シンボルは１バイトに相応する。
【００１７】
ＤＶＤデータフレームを復号化するためには、次のプロシージャが実行される：
・フレームナンバーに従ってデータを入力及びソートする
・ＥＣＣブロックをデインターリーブする
・水平方向にＥＣＣブロックを訂正する（ＰＩ訂正；インナーコレクション）
・垂直方向にＥＣＣブロックを訂正する（ＰＯ訂正；アウターコレクション）
・マルチパス：必要ならば、水平方向及び垂直方向訂正を再び実施する
・データフレームをデスクランブルする
・データフレームにおけるＥＤＣ（エラー検出コード）チェックを実施する。
【００１８】
２つのタイプの訂正がデータフローの間に実施される：
・水平方向：（１８２，１７２，１１）ＲＳコードにより２０８行を訂正
・垂直方向：（２０８，１９２，１７）ＲＳコードにより１８２列を訂正。
【００１９】
本発明によれば、１つのＥＣＣブロックに対するデータをホールドしている入力側バッファ２及び１つのＳＲＡＭバンク１１が使用される。第１の訂正パス、いわゆる「インナー  １（Inner 1）」訂正がオンザフライで行われ、他方でマルチパス訂正がエンベデッドＳＲＡＭバンク１１において行われる。２つの訂正プロセスのあいだのデータフローの短い記述は次のようなものである。第１の訂正プロセスにおいて、ブロックＥＣＣｎの復調されたデータストリームが「入力側バッファ」と呼ばれる小さいエンベデッドＳＲＡＭ１  ２にセーブされる。ブロックＥＣＣｎの訂正はエンベデッドＳＲＡＭ１  ２においてオンザフライで実施される。インナー１の訂正の後で、ブロックＥＣＣｎのデータは外部ＳＤＲＡＭ３に転送され、次の直交パスのためのステータスビットがステータスメモリ１２においてセットされる。第２の訂正プロセスにおいて、外部ＳＤＲＡＭ３にフルブロックＥＣＣｎを受信した後で、ブロックＥＣＣｎがＳＤＲＡＭ３からＳＲＡＭ２  １１にコピーされる間に、前のブロックＥＣＣｎ−１のマルチパス訂正されたデータがエンベデッドＳＲＡＭ２  １１から外部ＳＤＲＡＭ３へと読み戻される。データのコピーの間にステータスメモリ１２が読み出され、消去位置が計算される。エンベデッドＳＲＡＭ２  １１にフルブロックＥＣＣｎを受信した後で、マルチパス訂正がスタートされる。２つのプロセス、収集及びマルチパス、は互いに依存せずに作動している。
【００２０】
図１では収集及び水平方向パス１のブロック線図が示されている。入力側コントローラ１は入力側バッファ２においてブロックＥＣＣｎの１行をセーブする。入力側バッファ２のサイズは、有利には、現在の行を訂正している間に次に受信された行をセーブすることができるために、行あたりのバイトの数の少なくとも２倍である。入力側コントローラ１はストリーミング非連続性を検出する。１行より小さいどんな非連続性（バイト／フレーム）も入力側バッファ２において直ちに処理される。もし１行以上のストリーミング非連続性が検出されると、この情報が格納され、この行がデインターリーバ４によってＳＤＲＡＭ３の正しい位置に書き込まれる。１行を完了した後で、入力側コントローラ１は水平方向シンドロームユニット５をスタートする。水平方向シンドロームユニット５は入力側バッファ２から行を読み出し、修正されたシンドローム及び消去多項式を計算する。キーソルバ及びＣｈｉｅｎユニット（key solver and Chien unit）６は式を解き、エラー値及び位置を訂正ユニット７に転送する。最初の１０個の収集エラーの位置は第１の消去メモリ８に格納される。訂正ユニット７は行毎にバイト単位でのアクセスで入力側バッファ２内のブロックＥＣＣｎのデータを訂正する。もし行が訂正不能であるならば、この行ナンバーは訂正不能とマーキングされる。それゆえ、ステータスビットが行に添付され、ステータスビットは取得された符号語が正しいか否かを示す。１行の訂正の後で、入力側コントローラ１からの行ナンバー情報を考慮にいれて、この行が外部ＳＤＲＡＭ３へとデインターリーバ４を介して転送される。必要ならば、デインターリーバ４は行単位でＳＤＲＡＭ３にジャンプして入力側コントローラ１により検出されたストリーミング非連続性を訂正する。完全なブロックＥＣＣｎの取得の後で、マルチパス訂正の第２のプロセスが開始される。「訂正不能」は次の直交プロセスに対して「消去」として使用される。
【００２１】
ＳＤＲＡＭ３に１つのフルブロックＥＣＣｎを受信した後で、データがＳＲＡＭ２  １１にコピーされる。次のブロックＥＣＣｎ＋１がＳＲＡＭ１  ２を通過する間に、垂直方向訂正及びその後にマルチパス訂正がエンベデッドＳＲＡＭ２  １１において実施される。マルチパス訂正のプロセスフローは図２に示されている。この図では、数字の対が示されている場合には、括弧の中の数字は水平方向訂正に関し、他方で括弧なしの数字は垂直方向訂正に関する。コピーユニット９はブロックＥＣＣｎのデータをエンベデッドＳＲＡＭ２  １１にコピーする。それはさらに上述のステータスビットを「インナー１」パスのステータスメモリ１２にマッピングし、訂正不能なエラーの消去位置を計算し、これらの消去位置が第２の消去メモリ１０に書き込まれる。第２の消去メモリ１０は前の訂正プロセスで訂正不能であった最大１６行／１０列までの位置を格納する。フルブロックＥＣＣｎを受信した後で、コントロールユニット１４がスタートされる。このコントロールユニット１４はステータスメモリ１２から符号語の最後に書き込まれたステータスを読み出す。このステータスに従って、符号語に対するプロセスがスタートされる。シンドローム生成器５は最後の直交プロセスの消去位置を読み出し、符号語のシンドロームを計算する。シンドロームの計算の後で、それはこれらのシンドローム及び最後の直交消去位置によってキーソルバ及びＣｈｉｅｎサーチアルゴリズム６をスタートする。訂正ユニット７はバイト単位でのアクセスによりＳＲＡＭ２  １１内のＥＣＣブロックを訂正し、符号語のステータスをステータスメモリ１２に戻してセーブする。出力側／デスクランブラ１３はデータストリームをデスクランブルし、エラー検出コードチェックを実施し、データをＤＲＡＭトラックバッファエリアにコピーバックする。出力側／デスクランブラ１３はさらにセクタフィルタリングを実施しうる。
【００２２】
プロセスフローのために必要なメモリは次のように要約されうる、すなわち、
・消去メモリ１、ＳＲＡＭ１の行あたり１０バイト
・ステータスメモリ、３９０ビット＝４９バイト
・消去メモリ２、１６バイト
・ＳＲＡＭ１＜４キロバイト
・ＳＲＡＭ２  ３７８５６バイト
である。
【００２３】
図３はＳＲＡＭ挙動のより詳細なタイミング構造を示す。ＳＲＡＭとＳＤＲＡＭとの間のストリームはマルチパス訂正のための時間を低減する。この図から見て取れることは、図１及び図２に記載された２つのプロセスが切り離されていることである。入力側バッファ２からＳＤＲＡＭ３へのストリームはクリティカルに一時的にデータ入力側にリンクされるが、ＳＤＲＡＭ３からＳＲＡＭ２  １１への及びＳＲＡＭ２  １１からＳＤＲＡＭ３へのストリームはＳＤＲＡＭ３へのバスが空いている時はいつでも任意に伝送されうる。これはＳＤＲＡＭバッファのスピードに依存するだけである。
【図面の簡単な説明】
【００２４】
【図１】データ収集及び水平方向パス１のブロック線図を示す。
【図２】マルチパス訂正のプロセスフローを示す。
【図３】ＳＲＡＭ２／ＳＤＲＡＭのデータフロータイミングを示す。
【符号の説明】
【００２５】
１  入力側コントローラ
２  入力側バッファ（エンベデッドＳＲＡＭ１  ２）
３  外部ＳＤＲＡＭ
４  デインターリーバ
５  シンドロームユニット（シンドローム生成器）
６  キーソルバ及びＣｈｉｅｎユニット
７  訂正ユニット
８  第１の消去メモリ
９  コピーユニット
１０  第２の消去メモリ
１１  エンベデッドＳＲＡＭバンク（エンベデッドＳＲＡＭ２  １１）
１２  ステータスメモリ
１３  出力側／デスクランブラ
１４  コントロールユニット
【図１】
2009514126.tif 000003
【図２】
2009514126.tif 000004
【図３】
2009514126.tif 000005
【国際調査報告】
2009514126.tif 000006
2009514126.tif 000007
2009514126.tif 000008