JP2006244696A - 光学式記録ディスクドライブ装置に用いるデータ処理装置 - Google Patents
光学式記録ディスクドライブ装置に用いるデータ処理装置 Download PDFInfo
- Publication number
- JP2006244696A JP2006244696A JP2006085604A JP2006085604A JP2006244696A JP 2006244696 A JP2006244696 A JP 2006244696A JP 2006085604 A JP2006085604 A JP 2006085604A JP 2006085604 A JP2006085604 A JP 2006085604A JP 2006244696 A JP2006244696 A JP 2006244696A
- Authority
- JP
- Japan
- Prior art keywords
- data
- page
- processing
- processing unit
- area
- 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.)
- Pending
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
【課題】CD−ROM等のデータに対する高速な処理を可能とするデータ処理装置を提供する。
【解決手段】コンパクトディスクに記録されるサブコードおよびメインデータに対して、1セクタ単位で、所定のデコード処理または所定のエンコード処理を行い、該処理中に前記サブコードおよび前記メインデータを一時的に格納するバッファRAMを有するデータ処理回路において、前記バッファRAMの記憶領域を所定の大きさ毎に分割し、該分割によって得られる該所定の大きさの領域を1ページとする各ページ領域内の所定領域に、同一セクタ内の前記サブコードまたは前記メインデータ中に含まれる時間情報、ユーザデータおよびエラー情報を、ページ領域とセクタを一対一に対応づけて所定のフォーマットにしたがい、一時的に格納する。
【選択図】図1
【解決手段】コンパクトディスクに記録されるサブコードおよびメインデータに対して、1セクタ単位で、所定のデコード処理または所定のエンコード処理を行い、該処理中に前記サブコードおよび前記メインデータを一時的に格納するバッファRAMを有するデータ処理回路において、前記バッファRAMの記憶領域を所定の大きさ毎に分割し、該分割によって得られる該所定の大きさの領域を1ページとする各ページ領域内の所定領域に、同一セクタ内の前記サブコードまたは前記メインデータ中に含まれる時間情報、ユーザデータおよびエラー情報を、ページ領域とセクタを一対一に対応づけて所定のフォーマットにしたがい、一時的に格納する。
【選択図】図1
Description
本発明は、コンパクトディスクシステム、例えば、CD−ROM(Compact Disk ROM)システム、CD−R(Compact Disk Recordable)システム、CD−RW(Compact Disk ReWritable)システム等におけるデータ処理装置に関する。
従来よりコンパクトディスク等の記録媒体の記録装置に関し種々の技術が開発されている(例えば特許文献1〜5参照)。図17に、コンパクトディスクシステムの構成図を示す。図17に示されるコンパクトディスクシステムは、コンパクトディスク(以下、CDと称す)10に記録されたデータを読み出すデコード処理と、CDに対してデータを書き込むエンコード処理を行うものである。コンパクトディスクシステムは、CD10に格納されているデータを読み出す検出部11と、読み出したデータをEFM(Eight to fourteen Modulation)デコードし、シリアルデジタルデータに変換するCDデコード回路13と、CDデコード回路13からのシリアルデジタルデータに対して所定のデータ処理を行い、外部インタフェースを介してホストコンピュータ19に処理したデータを転送するとともに、またホストコンピュータから出力されるデータをエンコードするための所定の処理を行うデータ処理回路15と、データ処理回路15が処理するデータを一時的に格納するバッファRAM17と、エンコード時にホストコンピュータ19からデータ処理回路15を介して出力されるエンコード用データに対して所定の処理を行うCDエンコード回路14と、CDエンコード回路14で処理されたデータをCDに書き込む書き込み部12とからなる。
図18は、CDシステムにおけるデータ処理(デコード処理)の流れを説明するための図である。図中の()内の数字は各フィールドのデータ長を示すバイト数を表す。CDシステムにおいて、CD10から読み出されるデータはフレームを単位として読み出され、各フレームは、EFMデコードされた後、図18(a)に示されるフォーマットとなる。図18(a)に示すフォーマットのフレーム21はサブコードとメインデータとパリティ符号とを有する。サブコードは時間情報や曲間信号等の情報を含む。パリティ符号は誤り訂正の際に用いられる。
図18(b)は、フレーム21に示される1バイトのサブコード22と、パリティ符号を用いて誤り訂正された後の24バイトのメインデータ23とを示す。サブコード22は、98個のフレームで1つのブロックを構成する。以下、1ブロック分のサブコードをサブコードブロックと称す。図18(c)に示されるように、このサブコードブロック24は、2バイトの同期信号と96バイトのサブコードとからなる。同期信号はサブコードブロックの先頭を見つけるために使用される。またこの時、メインデータについても、98個のフレーム23を1ブロックとして、データブロック25が構成される。
CDから読み出されるデータのフォーマットには、音楽データ用のCD−DAフォーマットに加えて、CD−ROMデータ用のCD−ROMフォーマットがある。データがCD−ROMフォーマットであるか否かは、サブコードデータ中のコントロールビットにより判断される。音楽データであるときは、図18(c)に示されるフォーマットでデータが処理される。CD−ROMフォーマットのデータにおいては、音楽データの場合よりも高い信頼性が要求される。このため、データがCD−ROM用データである時は、データ処理回路15において、さらにエラー訂正処理が行われる。CD−ROMフォーマットにおいて、データは前述の1ブロックを1セクタとして取り扱われる。図18(d)に、CD−ROMフォーマットにおける、代表的なモードであるモード1の場合のフォーマットを示す。図示されるように、CD−ROMフォーマットにおいて、メインデータの1ブロックは、同期信号(12バイト)と、ヘッダ(4バイト)と、ユーザデータ(2048バイト)と、誤り検出符号(EDC)(4バイト)と、「ゼロ」のデータ(8バイト)と、誤り訂正符号(ECC)(276バイト)とから構成される。
検出部11によりCD10から読み出されたデータは、CDデコード回路13において、図18(a)から図18(c)で示されるようにデータが処理される。その後、データ処理回路15において図18(d)で示されるフォーマットに従ってデータの処理がなされホストコンピュータ19に出力される。この時、データ処理回路15では、ユーザデータ、サブコード、およびエラー情報のデータは、バッファRAM17において互いに関連付けられて管理されている。
図19は、この時の従来のデータ処理回路でのデータ管理方法を説明するための図である。図19に示される方法では、ユーザデータを格納するデータ領域、時間情報等を含むサブコードを格納するサブコード領域、誤り訂正のための情報を含むエラー情報を格納するエラー情報領域をそれぞれ設定して、それぞれの種類のデータをそれぞれの領域で管理している。
特開平6−309106号公報
特開平3−259461号公報
特開平6−162660号公報
特開平9−35270号公報
特開平8−96507号公報
このような従来の管理方法では、データに対して読み出しまたは書き込み処理する際には、処理毎に、ユーザデータ、サブコード、およびエラー情報等のそれぞれの領域の先頭アドレスとオフセット値から処理すべきデータのアドレスを計算する必要があった。すなわち、先頭アドレスとオフセット値とをレジスタに設定し、加算器で加算することによりアドレスを計算する必要があった。この時、アドレス計算に用いられるレジスタや加算器は、アドレス全ビットを格納できるだけの大きさが必要であった。また、図19に示すようにデータが格納されている場合は、セクタ毎にそれぞれの領域のデータを対応づけるために別途テーブルを設けて管理する必要があり、処理が煩雑となる。今後、益々高速なCDの読み出しまたは書き込み処理が要求されると、このようなデータ処理回路では対応できなくなる。
また、CDにデータを書き込む処理であるエンコード処理時においては、ホストコンピュータ19から転送されたデータはバッファRAM17に格納された後、CDエンコード回路14に出力され、CDにデータが書き込まれる。このエンコード処理においては、バッファRAM17のバッファアンダーラン状態の問題がある。「バッファアンダーラン状態」とは、バッファRAM17に格納されたデータをCDへ書き込む動作中に、ホストコンピュータ19からバッファRAM17へのデータの供給が、CDへの書き込みに追い付かず、バッファRAM17において新たに書き込むデータがなくなる状態、すなわち、バッファRAM17が空になる状態のことである。このようなバッファアンダーラン状態になり、CDへのデータの書き込みが途中で途切れると、データ書き込みが途切れた領域より後の領域についてCDへのアクセスが不可能となる。したがって、ホストからのデータ転送が途切れないように、バッファアンダーラン状態を検出し、バッファRAM17に対してデータを継続して出力することが必要となる。
従来、データ処理回路において、このバッファアンダーラン状態の検出はファームウェアによりアドレスポインタを管理することにより行われていた。すなわち、データ処理回路15内にある制御部がファームウェアに従い、ホストコンピュータからバッファRAM17へ転送中のデータのアドレスとバッファRAMからCDエンコード回路14に転送中のデータのアドレスとをそれぞれ示すアドレスポインタを設定し、1セクタが処理される毎に、それぞれのアドレスに基づいて所定の演算を行うことによりバッファアンダーラン状態の検出を行っていた。データ処理回路15中の制御部は、バッファアンダーラン状態を検出すると、ファームウェアのプログラムに従い、データが途切れないようにバッファRAM17へ所定データの書き込みを行っていた。このように、従来では、データ処理回路15中のファームウェアによりこれらの処理が制御されていたため、データ処理回路15中の制御部において大きな負荷となり、データ処理回路15における処理速度の向上の妨げとなっていた。
本発明は、このような問題を解決すべくなされたものであり、その目的とするところは、CD−ROM等のデータの高速な処理を可能とするデータ処理装置を提供することにある。
本発明に係る第1データ処理装置は、光学式記録ディスクに記録されるサブコードおよびメインデータに対して、1セクタ単位で、所定のデコード処理または所定のエンコード処理を行い、該処理中に前記サブコードおよび前記メインデータを一時的に格納するバッファRAMを有するデータ処理装置において、前記バッファRAMの記憶領域を所定の大きさ毎に分割し、該分割によって得られる該所定の大きさの領域を1ページとする各ページ領域内の所定領域に、同一セクタ内の前記サブコードまたは前記メインデータ中に含まれる時間情報、ユーザデータおよびエラー情報を、ページ領域とセクタを一対一に対応づけて所定のフォーマットにしたがい、一時的に格納する。
また、前記第1データ処理装置は、光学式記録ディスクに記録されたデータを読み出し所定のデータ処理を行うCDデコード回路を介して前記サブコードおよび前記メインデータを入力し、所定のデコード処理後、ホストコンピュータに前記デコード処理されたデータを出力するデータ処理装置であって、前記CDデコード回路から入力された前記メインデータを所定のページ領域内の所定領域に格納するCD−DA処理部と、前記CD−DA処理部が処理すべきデータを格納するページ領域を指定するページ値を格納するCDページレジスタと、前記CDデコード回路から入力された前記サブコードを所定のページ領域内の所定領域に格納するサブコード処理部と、前記サブコード処理部が処理すべきデータを格納するページ領域を指定するページ値を格納するサブコードページレジスタと、前記CD−DA処理部により前記ページ領域に格納された前記メインデータを誤り訂正した後、所定のフォーマットに従い前記メインデータ中に含まれるユーザデータ、エラー情報を含む所定データを所定のページ領域内の所定領域に格納するセクタ処理部と、前記セクタ処理部が処理すべきデータを格納するページ領域を指定するページ値を格納するセクタページレジスタと、前記エセクタ処理部により前記ページ領域に格納されたデータを前記ホストコンピュータに転送するホスト処理部と、前記ホスト処理部が処理すべきデータを格納するページ領域を指定するページ値を格納するホストページレジスタとを備えてもよい。
また、前記第1データ処理装置は、ホストコンピュータから入力された前記サブコードおよび前記ユーザデータを所定のエンコード処理した後、光学式記録ディスクへのデータ書き込みのための所定処理を行うCDエンコード回路に出力するデータ処理装置において、前記ホストコンピュータから入力された前記サブコードおよび前記ユーザデータを所定のページ領域内の所定領域に格納するホスト処理部と、前記ホスト処理部が処理すべきデータを格納するページ領域を指定するページ値を格納するホストページレジスタと、前記ホスト処理部により前記ページ領域に格納された前記サブコードを処理した後、前記CDエンコード回路に出力するサブコード処理部と、前記サブコード処理部が処理すべきデータを格納するページ領域を指定するページ値を格納するサブコードページレジスタと、前記ホスト処理部により前記ページ領域に格納された前記ユーザデータに対してヘッダ、サブヘッダ、ECC/EDCを計算した後、該ユーザデータ、該ヘッダ、該サブヘッダおよび該ECC/EDCを所定のフォーマットに従い所定のページ領域内の所定の領域にメインデータとして格納するセクタ処理部と、前記エセクタ処理部処理すべきデータを格納するページ領域を指定するページ値を格納するセクタページレジスタと、前記セクタ処理部により処理され、前記ページ領域に格納された前記メインデータを前記CDエンコード回路に出力するCD−DA処理部と、前記CD−DA処理部が処理すべきデータを格納するページ領域を指定するページ値を格納するCDページレジスタとを備えてもよい。
また、前記第1データ処理装置において、前記バッファRAM内の領域は所定の大きさのページ領域に分割され、さらにそのページ領域は、所定のフォーマットに従い、所定のデータ領域に分割されてもよい。このとき、このページ領域内のデータ領域に、関連のあるユーザデータ、時間情報およびエラー情報等が管理される。前記のそれぞれの処理部に対応するページレジスタは、各処理部が処理すべきデータを格納するページ領域を示すページ値を格納する。前記CD−DA処理部、前記サブコード処理部、前記セクタ処理部および前記ホスト処理部は、前記ページレジスタより指定される前記ページ領域内の前記所定のデータ領域のデータに対し、書き込みまたは読み出し処理を行う。
また、前記第1データ処理装置において、処理されるデータ領域を確定するために、前記各ページレジスタのいずれかに格納されたページ値に対するオフセット値を格納するオフセット値格納手段と、当該データ領域のデータ長を格納するデータ長格納手段とを有してもよい。
また、前記第1データ処理装置において、事前に設定された複数のデータ領域の中から所望のデータ領域を選択する選択手段を有してもよい。
さらに、前記第1データ処理装置において、前記ホスト処理手段は、前記ホストコンピュータから転送されたデータを格納するFIFO手段と、予め決められたデータを出力するデータ出力手段と、前記バッファRAMにおいて前記CDエンコード回路に新たに転送するデータがなくなる状態であるバッファアンダーラン状態を検出する検出手段と、前記バッファRAMに出力するデータを切り替える出力切り替え手段とを備えてもよい。このとき、前記出力切り替え手段は、前記検出手段の検出結果に基づき、バッファアンダーラン状態でないときは前記FIFO手段からの出力データを選択し、バッファアンダーラン状態になったときは前記データ出力手段からの出力データを選択し、選択された出力データを前記バッファRAMに出力する。これにより、バッファアンダーラン状態になったときにおいても、バッファRAMにデータを途切れることなく出力する。
また、前記第1データ処理装置においては、バッファアンダーラン状態では、CDページレジスタに格納される値はホストページレジスタに格納される値に追いつく。このため、前記検出手段は、前記ホストページレジスタに格納されるページ値と前記CDページレジスタに格納されるページ値とを比較し、前記CDページレジスタに格納されるページ値が前記ホストページレジスタに格納されるページ値に追い付いたときにバッファアンダーラン状態であるとすることによりバッファアンダーラン状態を検出することができる。
本発明に係る第2データ処理装置は、ホストコンピュータから転送されたデータを、所定のエンコード処理を行うために一時的にバッファRAMに格納し、前記所定のエンコード処理後のデータを前記バッファRAMから読み出して光学式記録ディスクに記録するデータ処理装置において、前記ホストコンピュータから転送されたデータを出力する第1のデータ出力手段と、所定のデータを出力する第2のデータ出力手段と、前記バッファRAMにおいて前記光学式記録ディスクに新たに転送するデータがなくなる状態であるバッファアンダーラン状態を検出する検出手段と、前記バッファRAMに出力するデータを切り替える出力切り替え手段とを備える。このとき、前記出力切り替え手段は、前記検出手段の検出結果に基づき、バッファアンダーラン状態でないときは前記第1のデータ手段からの出力データを選択し、バッファアンダーラン状態になったときは前記第2のデータ出力手段からの出力データを選択し、選択された出力データを前記バッファRAMに出力する。これにより、バッファアンダーラン状態になった場合においても、バッファRAMにデータを途切れることなく出力する。
本発明に係る第1データ処理装置によれば、前記バッファRAMにおいて、記憶領域を所定の大きさのページ領域に分割し、同一セクタ内のユーザデータ、時間情報、エラー情報等のデータを同一ページ内に格納する。このため、これらのデータ相互間の関連づけがページ値により行われる。これにより、セクタ毎にそれぞれのデータを対応づけるためのテーブルを必要とせず、データの管理が容易に行える。また、アドレス計算において、ページ値を上位アドレスとし、各ページ領域内の所定領域の先頭を表すオフセット値を下位アドレスとして前記バッファRAM内のデータのアドレスを生成することが可能となる。その結果、データの読み出し/書き込み時の高速な処理が可能となり、また、アドレス生成回路が簡単な回路構成で実現できる。この時、ページ値およびオフセット値を格納する格納手段のビット長も少なくてよいため、アドレス計算時に用いられるレジスタの大きさも小さくできる。
本発明に係る第2データ処理装置によれば、バッファアンダーラン状態になっても、コンパクトディスクに対して書き込みデータを継続して供給する機能を簡単なハードウェア構成できる。また、このような機能をハードウェアにより実現するため、データ処理装置の処理速度を向上できる。
以下、添付の図面を用いて本発明の実施形態であるデータ処理回路を説明する。以下に説明するデータ処理回路は、CD−DAフォーマット、CD−ROMフォーマットの両フォーマットに対応したデータ処理を行うものであるが、特に、CD−ROMフォーマットのデータ処理について詳細な説明を行う。まず、データ処理回路の構成および動作を説明する前に、データ処理回路におけるバッファRAM内でのデータ管理フォーマットについて説明する。
<バッファRAMにおけるデータ管理フォーマット>
図1は、データ処理回路15がバッファRAM17内においてデータ管理するためのフォーマットを示す図である。図1(A)に示されるように、バッファRAM17内の領域はページエリアとバッファエリアとに分割されている。さらに、ページエリアは4096バイトを1ページとして、ページ0からページnまでのn+1個のページ領域に分割されている。各ページ領域はページ値により特定される。データ処理回路は、CDデコード回路13から出力される1ブロックのデータを1ページのページ領域に格納する。すなわち、バッファRAM17内の領域をページ単位で分割し、CDから読み出された1ブロックのユーザデータ、時間情報等を含んだサブコードおよびエラー情報等を同じページ領域内に格納する。これにより、これらをページ値により関連づけて管理する。
図1は、データ処理回路15がバッファRAM17内においてデータ管理するためのフォーマットを示す図である。図1(A)に示されるように、バッファRAM17内の領域はページエリアとバッファエリアとに分割されている。さらに、ページエリアは4096バイトを1ページとして、ページ0からページnまでのn+1個のページ領域に分割されている。各ページ領域はページ値により特定される。データ処理回路は、CDデコード回路13から出力される1ブロックのデータを1ページのページ領域に格納する。すなわち、バッファRAM17内の領域をページ単位で分割し、CDから読み出された1ブロックのユーザデータ、時間情報等を含んだサブコードおよびエラー情報等を同じページ領域内に格納する。これにより、これらをページ値により関連づけて管理する。
<ページ構成>
図1(B)および図1(C)は、1ページ領域内の構成を表す。CD−DAフォーマットの場合は、図1(C)に示されるように、メインデータ領域(2352バイト)と、EDB領域(294バイト)と、ブロックエラーフラグ領域(2バイト)と、予約領域(40バイト)と、サブコード領域(96バイト)と、予備領域(1312バイト)とから構成される。ここで、EDB領域は、CDデコード回路13から出力される図18(a)で示されるフレーム21を誤り訂正した後のエラーに関する情報である誤り検出バイト(以降、「EDB」と称す)を格納し、ブロックエラーフラグ領域は、EDBの値に基づいて算出されるブロックエラーフラグを格納する。CD−ROMフォーマットの場合は、図1(B)に示されるように、CD−DAフォーマットにおけるメインデータ領域(2352バイト)が、さらに、同期信号領域(12バイト)と、ヘッダ領域(4バイト)と、サブヘッダ領域(8バイト)と、ユーザデータ領域(2328バイト)とから構成される。
図1(B)および図1(C)は、1ページ領域内の構成を表す。CD−DAフォーマットの場合は、図1(C)に示されるように、メインデータ領域(2352バイト)と、EDB領域(294バイト)と、ブロックエラーフラグ領域(2バイト)と、予約領域(40バイト)と、サブコード領域(96バイト)と、予備領域(1312バイト)とから構成される。ここで、EDB領域は、CDデコード回路13から出力される図18(a)で示されるフレーム21を誤り訂正した後のエラーに関する情報である誤り検出バイト(以降、「EDB」と称す)を格納し、ブロックエラーフラグ領域は、EDBの値に基づいて算出されるブロックエラーフラグを格納する。CD−ROMフォーマットの場合は、図1(B)に示されるように、CD−DAフォーマットにおけるメインデータ領域(2352バイト)が、さらに、同期信号領域(12バイト)と、ヘッダ領域(4バイト)と、サブヘッダ領域(8バイト)と、ユーザデータ領域(2328バイト)とから構成される。
<1.実施の形態1>
以下に、実施の形態1のデータ処理回路の構成および動作について説明する。本実施形態のデータ処理回路は、前述のフォーマットにしたがってバッファRAM17内においてデータを管理する。
以下に、実施の形態1のデータ処理回路の構成および動作について説明する。本実施形態のデータ処理回路は、前述のフォーマットにしたがってバッファRAM17内においてデータを管理する。
<1.1.データ処理回路の構成>
図2に、本実施形態のデータ処理回路のブロック構成図を示す。データ処理回路15は、システム制御部31と、セクタ処理部33と、CD−DA処理部35と、サブコード処理部37と、ホスト処理部39と、バッファ管理部41とがそれぞれ内部データバス62および内部アドレスバス63を介して接続された構成となっている。システム制御部31および各処理部33、35、37、39、41(以降、これらを「マスタ」と称す)は、それぞれ、それらが処理すべきデータが格納されたバッファRAM17内のデータ領域であるページ領域のページ値を格納するためのレジスタと、各マスタが処理を終了したページ領域のページ値を格納し、他のマスタまたはシステムがその値を読み出し、処理の進行を確認するためのレジスタとを有する。以下、本実施形態では、前者のレジスタのことを「第1xxページレジスタ」、後者のレジスタを「第2xxページレジスタ」と称す。ここで、「xx」には、各ページレジスタにより指定されるページ領域内のデータを処理するマスタを表す文字列が入る。これらのレジスタを「ページレジスタ」と総称する。また、ページ値は0からnへ順次インクリメントされ、nを越えると0にセットされる。このように、ページ値は循環する。
図2に、本実施形態のデータ処理回路のブロック構成図を示す。データ処理回路15は、システム制御部31と、セクタ処理部33と、CD−DA処理部35と、サブコード処理部37と、ホスト処理部39と、バッファ管理部41とがそれぞれ内部データバス62および内部アドレスバス63を介して接続された構成となっている。システム制御部31および各処理部33、35、37、39、41(以降、これらを「マスタ」と称す)は、それぞれ、それらが処理すべきデータが格納されたバッファRAM17内のデータ領域であるページ領域のページ値を格納するためのレジスタと、各マスタが処理を終了したページ領域のページ値を格納し、他のマスタまたはシステムがその値を読み出し、処理の進行を確認するためのレジスタとを有する。以下、本実施形態では、前者のレジスタのことを「第1xxページレジスタ」、後者のレジスタを「第2xxページレジスタ」と称す。ここで、「xx」には、各ページレジスタにより指定されるページ領域内のデータを処理するマスタを表す文字列が入る。これらのレジスタを「ページレジスタ」と総称する。また、ページ値は0からnへ順次インクリメントされ、nを越えると0にセットされる。このように、ページ値は循環する。
システム制御部31は、処理を行うページ領域を示すページ値を格納したレジスタである第1システムページレジスタ45と、処理を終了したページ領域を示すページ値を格納した第2システムページレジスタ47とを有し、データ処理回路15内の各マスタの動作を制御する。また、第1システムページレジスタ45で示される、システム制御部31が処理を行うページを「システム制御ページ」と称す。
CD−DA処理部35は、処理を行うページ値を格納するレジスタである第1CDページレジスタ53と、処理を終了したページ値を格納するレジスタである第2CDページレジスタ55とを有する。CD−DA処理部35は、前段のCDデコード回路13から出力される1ブロック(2352バイト)のデータを図1(C)に示されるページ構成に従い、バッファRAM17内の先頭から2352バイトのメインデータ領域(000h〜92Fh)に格納するとともに、EDB領域(930h〜A55h)にエラー情報を格納する。また、第1CDページレジスタ53で示される、CD−DA処理部35が処理を行うページを「CD−DA処理ページ」と称す。
セクタ処理部33は、処理を行うページ値を格納したレジスタである第1セクタページレジスタ49と、処理を終了したページ値を格納したレジスタである第2セクタページレジスタ51とを有する。セクタ処理部33は、CD−DA処理部35がバッファRAM17内にデータを格納した後、データがCD−ROMフォーマットデータである時に、このデータに対してさらに誤り訂正処理を行い、図1(B)に示されるページ構成のフォーマットに従い先頭から2352バイトの領域(000h〜92Fh)にデータを格納するとともにEDB領域(930h〜A55h)にエラー情報を格納する。また、第1セクタページレジスタ49で示される、セクタ処理部33が処理を行うページを「セクタ処理ページ」と称す。
サブコード処理部37は、処理を行うページ値を格納したレジスタである第1サブコードページレジスタ57と、処理を終了したページ値を格納したレジスタである第2サブコードページレジスタ59とを有する。サブコード処理部37は、CDデコード回路13から出力される1ブロックのデータ中のサブコードを図1(B)または(C)に示されるページ内の構成のサブコード領域(980h〜ADFh)に格納する。また、第1サブコードページレジスタ57で示される、サブコード処理部37が処理を行うページを「サブコード処理ページ」と称す。
ホスト処理部39は、処理を行うページ値を格納したレジスタである第1ホストページレジスタ60と、処理を終了したページ値を格納したレジスタである第2ホストページレジスタ61とを有する。さらにホスト処理部39は、図2には示されてないが、転送データを指定するためのいくつかのレジスタを有する(詳細は後述)。ホスト処理部39は、ホストコンピュータ19との間でSCSIやATAPI等のインタフェースを介してデータの転送を行う。また、図1(B)または(C)に示されるページ構成中のブロックエラーフラグ領域(A56h〜A57h)にデータを格納する。また、第1ホストページレジスタ60で示される、ホスト処理部39が処理を行うページを「ホスト処理ページ」と称す。
<1.2データ処理回路のデコード処理における動作>
以下に、図3を用いて、本実施形態のデータ処理回路15によるCD−ROMフォーマットデータのデコード処理の動作を説明する。各マスタは、1ブロック毎すなわち1セクタ毎に処理を完了するように制御される。CDデコード回路13で処理されたデータのうち2352バイトのメインデータはCD−DA処理部35に、96バイトのサブコードはサブコード処理部37に、1セクタ毎にそれぞれ入力される。図3において、「BSYNC」は2352バイト毎のブロックを区切るための同期信号を表し、この信号に基づき1セクタ毎のデータが読み込まれる。またTrn0、Trn1、・・・は、各マスタで処理されているデータが何番目のセクタ中のデータであるかを表している。
以下に、図3を用いて、本実施形態のデータ処理回路15によるCD−ROMフォーマットデータのデコード処理の動作を説明する。各マスタは、1ブロック毎すなわち1セクタ毎に処理を完了するように制御される。CDデコード回路13で処理されたデータのうち2352バイトのメインデータはCD−DA処理部35に、96バイトのサブコードはサブコード処理部37に、1セクタ毎にそれぞれ入力される。図3において、「BSYNC」は2352バイト毎のブロックを区切るための同期信号を表し、この信号に基づき1セクタ毎のデータが読み込まれる。またTrn0、Trn1、・・・は、各マスタで処理されているデータが何番目のセクタ中のデータであるかを表している。
デコード処理を開始する時は、システム制御部31により第1CDページレジスタ53、第1サブコードページレジスタ57は「0」に設定されている。また、第1セクタページレジスタ49、第1ホストページレジスタ60もシステム制御部31により所定のタイミングで「0」に設定される。最初に、CDデコード回路13から最初のセクタのデータTrn0が入力されると、CD−DA処理部35は、2352バイトのデータを図1(C)のページ構成におけるメインデータ領域(000h〜929h)に格納し、また誤り訂正の結果生成される誤り検出バイト(EDB)をEDB領域(930h〜955h)に格納する。第1サブコードページレジスタ57も「0」であるため、サブコード処理部37が、CDデコード回路13からのデータTrn0の中の96バイトのサブコードをページ0の領域内のサブコード領域(A80h〜9DFh)に格納する。
ブロックエラーフラグ領域(A56h〜A7Fh)には、システム制御部31によりEDBから算出されたブロックエラーフラグが格納される。CD−DA処理部35およびサブコード処理部37が、データTrn0について処理を終了すると、第1CDページレジスタ53および第1サブコードページレジスタ59の値がインクリメントされ、「1」になる。またこの時、第2CDページレジスタ55および第2サブコードページレジスタ59の値は、処理を終了したページである「0」に設定される。CD−DA処理部35およびサブコード処理部37はそれぞれのページレジスタの値に従い、次のデータの処理を行う。
すなわち、CDデコード回路13から2番目のセクタのデータTrn1が入力される。CD−DA処理部35およびサブコード処理部37は、データTrn1を処理し、ページ1内のデータ領域、EDB領域およびサブコード領域にそれぞれデータを格納する。セクタ処理部33は、CD−DA処理部35により処理が終了したデータに対して誤り訂正を行う。従ってセクタ処理部33は、第2CDページレジスタ55を参照し、ページ0のデータに対して誤り訂正を行う。すなわち、セクタ処理部33は、CD−DA処理部35によりページ0のユーザデータ領域に格納された2352バイトのデータおよびEDB領域に格納されたエラー情報を読み出し、誤り訂正処理を行う。その後、図1(B)に示されるフォーマットに従いページ0にデータを再度格納する。セクタ処理部33がページ0のデータの処理を終了すると、第1セクタページレジスタ49はインクリメントされ「1」になり、第2セクタページレジスタ51に「0」が設定される。
次に、CD−DA処理部35およびサブコード処理部37が、CDデコード回路13から出力される3番目のデータTrn2を処理する。この時、前述のようにインクリメントされるため、第1CDページレジスタ53および第1サブコードページレジスタ57には「2」が格納されている。第1セクタページレジスタ49には「1」が格納されているため、セクタ処理部33はページ1のデータに対して誤り訂正を行う。ホスト処理部39は第2セクタページレジスタ51を参照し、セクタ処理部33の処理が終了したページ0のデータをホストへ転送する。転送終了後、第1ホストページレジスタ60はインクリメントされ「1」になり、第2ホストページレジスタ61は「0」に設定される。
次に、CD−DA処理部35およびサブコード処理部37は、3番目のデータTrn2の処理を終了すると、CDデコード回路13から出力される4番目のデータTrn3を処理する。セクタ処理部33は第1セクタページレジスタで示されるページ値(ページ2)のデータに対して誤り訂正を行う。ホスト処理部39は第1ホストページレジスタで示されるページ値(ページ1)のデータをホストへ転送する。以降、同様にして、それぞれの処理部でページレジスタにより指定されるページ毎にデータが処理され、処理されたデータから順次ホストコンピュータ19に転送される。
尚、上記説明においては、CD−ROMフォーマットの場合においてのデータ処理について説明したが、CD−DAフォーマットの場合においては、セクタ処理部33による処理は行われず、CD−DA処理部35によるデータ処理終了後、データがホストコンピュータ19へ転送される。
<1.3転送データ領域の指定>
次に、ホストコンピュータへデータを転送する際の転送データ領域の指定について説明する。データ転送はホスト処理部39により行われる。このため、ホスト処理部39は、ページレジスタ60、61以外に、図4に示すように転送データを指定するための転送データ指定レジスタ71と、任意の転送データ領域の先頭アドレスを与えるオフセット値を格納するレジスタ(WK(n)SA、n=0、1、2)73〜75と、データ長を格納するためのレジスタ(WK(n)LEN、n=0、1、2)77〜79とを有している。
次に、ホストコンピュータへデータを転送する際の転送データ領域の指定について説明する。データ転送はホスト処理部39により行われる。このため、ホスト処理部39は、ページレジスタ60、61以外に、図4に示すように転送データを指定するための転送データ指定レジスタ71と、任意の転送データ領域の先頭アドレスを与えるオフセット値を格納するレジスタ(WK(n)SA、n=0、1、2)73〜75と、データ長を格納するためのレジスタ(WK(n)LEN、n=0、1、2)77〜79とを有している。
図5に、転送データ指定レジスタ71のフォーマットを示す。転送データ指定レジスタ71は、b0からb7までの8ビットからなり、各ビットにフラグを立てること、すなわち、そのビットを「1」に設定することにより転送するデータ領域を指定する。以下に各ビットにより指定される領域を説明する。ビットb7は、図1(B)に示されるページ構成の000h〜00Bhの12バイトのデータ領域(同期信号)を指定する。ビットb6は、ページ構成の00Ch〜00Fhの4バイトのデータ領域(ヘッダ)を指定する。ビットb5は、ページ構成の010h〜017hの8バイトのデータ領域(サブヘッダ)を指定する。ビットb4は、ページ構成の018h〜817hの2048バイトのデータ領域(ユーザデータ)を指定する。ビットb3は、ページ構成の818h〜92Fhの280バイトのデータ領域(EDC/ECC)を指定する。ビットb2は、WK(2)SAレジスタ75で指定される先頭アドレスから、WK(2)LENレジスタ79で指定されるバイト長のデータ領域を指定する。ビットb1、b0も同様に、WK(n)SAレジスタ、(n=1、0)74、73で指定される先頭アドレスから、WK(n)LENレジスタ、(n=1、0)78、77で指定されるバイト長のデータ領域を指定する。
ビットb7からビットb3までのビットは、CD−ROMフォーマットに従った所定のデータ領域のデータを転送する際にフラグが設定され、ビットb2からビットb0は、任意のデータ領域を指定する際にフラグが設定される。これらのレジスタの設定は、ホストコンピュータ19からの指令に基づいてシステム制御部31により行われ、転送データ指定レジスタの各ビットにより指定されたデータ領域のデータは、ホスト処理部39によりホストへ転送される。
各マスタが、バッファRAM17にアクセスを行う時は、バッファ管理部41に対してアクセス要求を行う。バッファ管理部41は、複数のマスタから要求があった時は、調停を行い、1つのマスタに対してアクセス許可を与える。アクセスが許可されたマスタは、アドレスをバッファ管理部41に送信する。図6は、この時のシステム制御部31とバッファ管理部41との間でのデータの授受について説明するための図である。
図6に示されるように、システム制御部31は、バッファ管理部41との間でアクセス許可のやりとりを行う制御部67を有する。制御部67は、各マスタがバッファ管理部41に対しアクセスの要求を行い、その後、バッファ管理部41からアクセス許可が得られた時に、アドレスおよびデータをバッファ管理部41に転送する。これにより、バッファRAM17へのアクセスを行う。この時、システム制御部31において、第1システムページレジスタ45に格納された12ビットのページ値を上位アドレスとし、システム制御部31から入力されるページの先頭からのオフセット値である12ビットの値を下位アドレスとすることにより、加算器で演算されることなしに24ビットのアドレスが生成される。生成されたアドレスは、内部アドレスバス63を介してバッファ管理部41に送信され、バッファRAM17においてデータの書き込みまたは読み出しが行われる。この時、データは内部データバス62を介して転送される。
このように、本実施形態のデータ処理回路15においては、バッファRAM17に格納された処理すべきデータのアドレスは、ページ値を上位アドレスとし、ページの先頭アドレスからのオフセット値を下位アドレスとするため、複雑な演算を必要とせず、単に上位と下位のアドレスを繋ぎ合わせるだけで容易に生成されるので、処理速度が速くなり、また簡単な回路でアドレスを生成することができる。また、この時、計算に用いられるレジスタの長さも12ビットあればよく、従来のように24ビットの大きさを必要としない。他のマスタにおいても、同様にして、各マスタが、それぞれの処理内容に応じて下位アドレスを計算することにより、アドレスを生成する。
以上のようにして、本実施形態のCDシステムにおけるデータ処理回路15においては、バッファRAM17のメモリ領域をページ領域に分割し、CDから読み出した同一ブロック内のユーザデータ、時間情報を含むサブコードおよびエラー情報等のデータを、同一ページに格納して管理することにより、これらの情報がページ値により対応づけられ、データの読み出し時において、アドレス計算が簡単になる。これによりCD読み出し時において、高速なデータ処理が可能となる。
上記説明においては、CDからのデータの読み出し時におけるデータ処理(デコード処理)について説明したが、以下では、ホストコンピュータから出力されるデータをCD−R等に書き込む際のデータ処理であるエンコード処理について説明する。
<1.4データ処理回路のエンコード処理における動作>
エンコード処理においては、ホストコンピュータ19から出力されるデータの書き込み前に、リンク用の所定データを1セクタ分、「ランイン」と呼ばれる所定データを4セクタ分、それぞれ書き込んだ後に、6セクタ目からホストコンピュータ19から出力されるデータの書き込みを行う。ホストコンピュータ19から転送されるデータの書き込みが終了した後、最後に「ランアウト」と呼ばれる所定データを2セクタ分書き込み、エンコード処理を終了する。リンク用データ、「ラインイン」および「ラインアウト」等の所定データは、システム制御部により、バッファRAM17のページ領域に書き込まれる。エンコード処理において各マスタが処理するページ領域内の所定領域は、デコード処理の場合と同様である。
エンコード処理においては、ホストコンピュータ19から出力されるデータの書き込み前に、リンク用の所定データを1セクタ分、「ランイン」と呼ばれる所定データを4セクタ分、それぞれ書き込んだ後に、6セクタ目からホストコンピュータ19から出力されるデータの書き込みを行う。ホストコンピュータ19から転送されるデータの書き込みが終了した後、最後に「ランアウト」と呼ばれる所定データを2セクタ分書き込み、エンコード処理を終了する。リンク用データ、「ラインイン」および「ラインアウト」等の所定データは、システム制御部により、バッファRAM17のページ領域に書き込まれる。エンコード処理において各マスタが処理するページ領域内の所定領域は、デコード処理の場合と同様である。
エンコード処理において、ホスト処理部39は、ホストコンピュータ19からSCSI等のインタフェースを介して入力されたユーザデータおよびサブコードをバッファRAMのページ領域に格納する。セクタ処理部33は、ホスト処理部39で処理されたページ領域のユーザデータに対して、ヘッダ、サブヘッダ、ECC/EDCを計算し、図1(B)に示されるページ構成のフォーマットに従って、第1セクタページレジスタ49で指定されるページ領域に、ユーザデータ、ヘッダ、サブヘッダおよびECC/EDCを格納する。サブコード処理部37は、ホスト処理部39で処理されたページ領域のサブコードに対して誤り訂正処理のためのCRC演算を行い、CDエンコード回路14に出力する。CD−DA処理部35は、セクタ処理部33で処理されたデータ、すなわち、第1CDページレジスタ53により示されるページ領域に格納されたデータをCDエンコード回路14に出力する。
以下に、データ処理回路15のエンコード処理においてホストコンピュータ19から転送されるデータを書き込む時の処理について説明する。図7は、リンク用の所定データおよびランインのデータが書き込まれた後のデータ処理の流れを示す図である。このため、最初、第1ホストページレジスタ60はページ値として「6」を格納している。
エンコード開始時のリンク用所定データの書き込み後、ホストコンピュータ19から、ユーザデータおよびサブコードを含んだ1番目のセクタのデータTrn0が転送されると、ホスト処理部39は、第1ホストページレジスタ60で示されるバッファRAM17内のページ6の領域にこれらのデータを格納する。ホスト処理部39において、ページ6のデータ処理が終了すると、第1ホストページレジスタ60はインクリメントされる。ホスト処理部39は、このレジスタの値に従い、2番目のセクタのデータであるTrn1を処理する。
サブコード処理部37は、ホスト処理部39が処理したページ領域のデータに対して処理を行う。すなわち、第1サブコードページレジスタ57に従い、ページ6に格納されるサブコードTrn0に対してCRC演算を行い、CDエンコード回路14に出力する。サブコード処理部37においてページ6のサブコードの処理が終了した後、第1サブコードページレジスタ57の値がインクリメントされる。同様に、ホスト処理部39で処理されたページ領域のデータに対して、セクタ処理部33は、第1セクタページレジスタ49で示されるページ6のユーザデータTrn0に対して、ヘッダ、サブヘッダ、ECC/EDCを計算し、所定のフォーマットに従って、ページ6の領域に、ユーザデータ、ヘッダ、サブヘッダおよびECC/EDCを格納する。セクタ処理部33において、ページ6のデータ処理が終了した後、第1セクタページレジスタ51がインクリメントされる。
さらに、ホスト処理部39は、3番目のセクタのデータTrn2をページ8の領域に格納する。この時、CD−DA処理部35は、第1CDページレジスタ53に格納されたページに従い、セクタ処理部33が処理を終了したページ6のデータTrn0をCDエンコード回路14に出力する。この処理が終了した後、第1CDページレジスタ53はインクリメントされる。同様に、サブコード処理部37、セクタ処理部33は、それぞれのページレジスタの値に従い処理を行う。以降、同様にして順次エンコード処理が行われる。
以上のように、エンコード処理においても、デコード処理と同様にして、各マスタは、ページレジスタに格納されるページ値に従い、バッファRAM内のページ領域のデータを処理する。このため、データのアドレス指定において、複雑なアドレス計算を必要とせず、高速なエンコード処理が可能となる。なお、図7において、サブコード処理部は、セクタ処理部は同じタイミングで処理を行っているが、CD−DA処理部と同じタイミングで処理を行うようにしてもよい。
<2.実施の形態2>
次に、データ処理回路の別の実施の形態について説明する。本実施形態のデータ処理回路も、バッファRAM17内のデータに対しては、実施の形態1の場合と同様に図1に示すフォーマットにしたがってアクセスする。図8に、本実施形態のデータ処理回路のブロック構成図を示す。本実施形態のデータ処理回路の構成は、基本的には実施の形態1のデータ処理回路と同じであるが、各マスタ31、33、35、37、39が1つのページレジスタ45a、49a、53a、57a、60aのみを有している点が相違する。これらのページレジスタは実施の形態1における各マスタが処理すべきバッファRAM17内のページの値を格納する第1ページレジスタにそれぞれ対応している。
次に、データ処理回路の別の実施の形態について説明する。本実施形態のデータ処理回路も、バッファRAM17内のデータに対しては、実施の形態1の場合と同様に図1に示すフォーマットにしたがってアクセスする。図8に、本実施形態のデータ処理回路のブロック構成図を示す。本実施形態のデータ処理回路の構成は、基本的には実施の形態1のデータ処理回路と同じであるが、各マスタ31、33、35、37、39が1つのページレジスタ45a、49a、53a、57a、60aのみを有している点が相違する。これらのページレジスタは実施の形態1における各マスタが処理すべきバッファRAM17内のページの値を格納する第1ページレジスタにそれぞれ対応している。
<2.1.データ処理回路の動作>
以下に、本実施形態のデータ処理回路のデコード処理における動作を説明する。本実施形態のデータ処理回路の動作は基本的に実施の形態1の場合と同様である。すなわち、各マスタはそれぞれのページレジスタに格納される値で指定されるバッファRAM17内の領域のデータに対して所定の処理を行う。この場合の各マスタの動作およびページレジスタの値は図9に示すようになり、図3に示す実施の形態1の場合の動作と基本的に同様であるので、相違点のみ説明する。
以下に、本実施形態のデータ処理回路のデコード処理における動作を説明する。本実施形態のデータ処理回路の動作は基本的に実施の形態1の場合と同様である。すなわち、各マスタはそれぞれのページレジスタに格納される値で指定されるバッファRAM17内の領域のデータに対して所定の処理を行う。この場合の各マスタの動作およびページレジスタの値は図9に示すようになり、図3に示す実施の形態1の場合の動作と基本的に同様であるので、相違点のみ説明する。
本実施形態におけるデコード処理回路は、第2ページレジスタを有しておらず、第2ページレジスタに関連する動作以外は実施の形態1の場合と全く同様に動作する。すなわち、第2ページレジスタの値のインクリメント動作を行わない点、および、各マスタが他のマスタのデータ処理の進行状況を確認するために第2ページレジスタを参照しない点が異なる。以下に、本実施形態において、マスタの進行状況の確認動作について説明する。
前述したように、セクタ処理部33はCD−DA処理部35により処理が終了したデータに対して誤り訂正を行うため、セクタ処理部33は、セクタページレジスタ49aの値で示される領域のデータが、CD−DA処理部35により処理済みか否かを確認する必要がある。実施の形態1では、セクタ処理部33はこの確認を第2CDページレジスタ55の値を参照することにより行っていた。しかし、本実施形態のデータ処理回路では第2ページレジスタを有していないため、セクタページレジスタ49aの値(セクタ処理ページ)とCDページレジスタ53aの値(CD−DA処理ページ)とを比較することによりこの判断を行う。すなわち、セクタ処理部33は、CD−DA処理ページとセクタ処理ページとを比較し、セクタ処理ページがCD−DA処理ページより小さいときに、セクタ処理ページで示されるデータがCD−DA処理部35により処理が終了していると判断し、そのデータについてエラー訂正処理を開始する。このようにすることで、セクタ処理部33は、CD−DA処理部35による処理が終了したデータを認識することができ、CD−DA処理部35より先行して未処理のデータを処理するということを防止できる。同様に、ホスト処理部39も、ホストページレジスタ60aの値(ホスト処理ページ)とセクタページレジスタ49aの値とを比較することにより、セクタ処理部33による処理済みデータを認識し、セクタ処理部33により処理が完了したデータについて転送を行うことができる。また、エンコード処理時においても、デコード処理時とは逆に、セクタ処理部33はセクタ処理ページとホスト処理ページとを比較することによりホスト処理部39の進行状況を確認し、CD−DA処理部35はCD−DA処理ページとセクタ処理ページとを比較することによりセクタ処理部33の進行状況を確認しながら、それぞれの処理を進めることができる。
このように、本実施形態のデータ処理回路においても、実施の形態1の場合と全く同様に、ページ管理されたバッファRAM17内の所定領域にデータを格納しながら、CD−ROMフォーマットのデータに対してデコードおよびエンコード処理を行うことができ、実施の形態1の場合より簡単な回路構成で同様の機能が実現できる。
<2.2.バッファアンダーラン状態に対応するためのデータ処理回路の構成および動作>
以下にバッファアンダーラン状態に対応するための本実施形態のデータ処理回路の構成および動作を説明する。
以下にバッファアンダーラン状態に対応するための本実施形態のデータ処理回路の構成および動作を説明する。
まず、バッファアンダーラン状態の検出について説明する。本実施形態のデータ処理回路では、前述のように各処理部はページ単位でデータを順次処理する。例えば、図10に示すように、システム制御部31がページ3のデータを、ホスト処理部39はページ2のデータを、セクタ処理部33はページ1のデータを、CD−DA処理部35およびサブコード処理部37はページ1のデータを処理している。このように、通常状態でのエンコード処理においては、ホスト処理部39→セクタ処理部33、サブコード処理部37→CD−DA処理部35の順に処理が進んでいく。バッファアンダーラン状態時においては、セクタ処理部33、CD−DA処理部35およびサブコード処理部37での処理は進み、ホスト処理部39での処理は停滞しているため、これらのページレジスタ49a、53a、57aの値が、ホストページレジスタ60aの値に追いついてしまう。この点から、本実施形態のデータ処理回路はCDページレジスタ53aの値(CD−DA処理ページ)とホストページレジスタ60aの値(ホスト処理ページ)とを比較することにより、バッファアンダーラン状態を検出する。
図11にデータ処理回路におけるバッファアンダーラン検出回路を示す。この図に示すようにバッファアンダーラン検出回路は比較回路81とANDゲート82とから構成される。比較回路81にはCDページレジスタ53aの値であるCD−DA処理ページとホストページレジスタ60aの値であるホスト処理ページとが入力され、比較回路81はCD−DA処理ページに1を加えた値とホスト処理ページとを比較している。これは、CD−DA処理部35はセクタ処理部33で処理済みのデータを処理するため、バッファアンダーラン状態において、セクタ処理部33がホスト処理部39に追い付いたときは、CD−DA処理ページはホスト処理ページより1つ前のページになるためである。比較回路81は、CD−DA処理ページに1を加えた値がホスト処理ページに等しいかまたは大きくなったときに検出信号を出力する。また、動作開始時にはCD−DA処理ページはホスト処理ページに等しいため、開始時の誤動作をキャンセルするために、ANDゲートでは前述の検出信号と動作開始時を示すスタート信号との論理積が取られている。これにより、正確にバッファアンダーラン状態を検出することができるようになっている。
このように、本実施形態のデータ処理回路においては、ホストページレジスタ60aの値(ホスト処理ページ)とCDページレジスタ53aの値(CD−DA処理ページ)とを比較することによりバッファアンダーラン状態を容易に検出することができ、バッファアンダーラン状態の検出回路を簡単な構成で実現できる。また、同様に、バッファオーバーラン状態(デコード時において、バッファRAM17の空き領域がなくなる状態)の検出回路も簡単な構成で実現できる。
本実施形態のデータ処理回路においては、このようなバッファアンダーラン検出回路によりバッファアンダーラン状態が検出されたときは、ホスト処理部39によりバッファRAM17に対して所定データ(本実施形態では「0」のデータ)が書き込まれるようになっている。以下に、このときのホスト処理部39の構成および動作について説明する。
図12は、ホスト処理部39においてバッファRAM17、ホストコンピュータ19およびシステム制御部31に対するデータのやりとりを説明するためにホスト処理部39の構成の一部を示した図である。ホスト処理部39は、データの先入れ先出しバッファ機能を有するFIFO84と、FIFO84に入力されるデータを切り替える第1マルチプレクサ85と、バッファRAM17に入力するデータを切り替える第2マルチプレクサ86と、バッファRAM17に対してデータの入出力を行うためのバッファRAMI/F87と、ホストコンピュータ19に対してデータの入出力を行うためのホストバスI/F88と、システム制御部31に対してデータの入出力を行うためのシステム制御部I/F89とを有する。第1マルチプレクサ85の入力は、ホストバスI/F88、バッファRAMI/F87およびシステム制御部I/F89に接続され、出力はFIFO84に接続されている。FIFO84の出力は、ホストバスI/F88、第2マルチプレクサ85の入力A、およびシステム制御I/F89に接続されている。第2マルチプレクサ86の出力はバッファRAMI/F87に接続されている。さらに、第2マルチプレクサ86の入力Bには「0」のデータのみを出力するゼロデータ生成部90が接続されている。また、第1マルチプレクサ85の入力はシステム制御部31により選択される。第2マルチプレクサ86の入力はバッファアンダーラン検出回路の出力に基づき選択される。
上記のように構成されたホスト制御部39において、FIFO84に対するデータの入出力は以下の6通りに制御される。
(1)ホストコンピュータ19からのデータがバッファRAM17に書き込まれる場合バッファアンダーラン状態でない場合、第1マルチプレクサ85および第2マルチプレクサ86において入力Aが選択される。これにより、ホストコンピュータ19からホストバスI/F88を介して入力されたデータがFIFO84に入力され、所定ビット数のデータがFIFO84に格納された後、第2マルチプレクサ86およびバッファRAMI/F87を介してバッファRAM17に出力される。また、バッファアンダーラン状態になったときは、第2マルチプレクサ86において入力Bが選択される。これにより、バッファRAM87にはゼロデータ生成部90より「0」のデータが書き込まれる。
(2)ホストコンピュータ19がバッファRAM17からデータを読み出す場合この場合、第1マルチプレクサ85において入力Bが選択される。これにより、バッファRAM17からのデータはバッファRAMI/F87を介してFIFO84に入力され、所定ビット数のデータがFIFO84に格納された後、ホストバスI/F88を介してホストコンピュータ19に出力される。
(3)システム制御部31からのデータをバッファRAM17に書き込む場合この場合、第1マルチプレクサ85において入力Cが、第2マルチプレクサ86において入力Aが選択される。これにより、システム制御部I/F31を介して入力されたデータはFIFO84に入力され、所定ビット数のデータがFIFO84に格納された後、第2マルチプレクサ86およびバッファRAMI/F87を介してバッファRAM17に出力される。また、リンクデータ等の「0」のデータを書き込みたい場合は、第2マルチプレクサ86において入力Bが選択されることにより、バッファRAM17には「0」のデータが書き込まれる。
(4)システム制御部31がバッファRAM17からデータを読み出す場合この場合、第1マルチプレクサ85において入力Bが選択される。これにより、バッファRAM17のデータはFIFO84に入力され、所定ビット数のデータがFIFO84に格納された後、システム制御部31に出力される。これは、システム制御部31がバッファRAM17に書き込んだコマンド等を読み出す場合に用いられる。
(5)ホストコンピュータ19からのデータをシステム制御部31に出力する場合この場合、第1マルチプレクサ85において入力Aが選択される。これにより、ホストコンピュータ19から入力されたデータはホストバスI/F88を介してFIFO84に入力され、所定ビット数のデータがFIFO84に格納された後、システム制御部I/F89を介してシステム制御部31に出力される。
(6)システム制御部31が用意したデータをホストコンピュータ19が読み出す場合この場合、第1マルチプレクサ85において入力Cが選択される。これにより、システム制御部31からのデータはシステム制御部I/F89を介してFIFO84に入力され、所定ビット数のデータがFIFO84に格納された後、ホストバスI/Fを介してホストコンピュータ19に出力される。
このように、第1および第2マルチプレクサ85、86の入力を切り替えることによりFIFO84の入出力先を切り替えることができる。また、前述のように、バッファアンダーラン検出回路によりバッファアンダーラン状態が検出されたときは、第2マルチプレクサ86において入力Bが選択されることにより、バッファRAM17に「0」のデータが書き込まれる。
以上のように、ホスト処理部39においてFIFO84および第2マルチプレクサ86を設け、バッファアンダーラン状態時に第2マルチプレクサ86の入力を切り替えることにより、バッファアンダーラン状態時にも途切れることなく書き込みデータの供給が可能となる。このように、簡単なハードウェア構成でバッファアンダーラン状態に対応した回路が実現できるため、システム制御部31の負荷を低減でき、処理の高速化が可能となる。
なお、第2マルチプレクサ86は、システム制御部31により、バッファアンダーラン状態の検出にかかわらず任意のタイミングでその入力の切り替えが制御されてもよく、これによりバッファRAM17に対して任意のタイミングで所定データの書き込むようにしてもよい。また、実施の形態1のデータ処理回路においても、ホスト処理部39において、本実施形態と同様の構成にすることによりバッファアンダーランに対応した回路を容易に実現できる。
<2.3.ホストインタフェース>
図13は本データ処理回路において、ホストコンピュータ19に対するインタフェース規格としてSCSIを用いる場合の構成を示した図である。この場合、図に示すようにホスト処理部39およびシステム制御部31はSCSIコントローラ91に接続される。SCSIコントローラ91はSCSIバスを介してホストコンピュータ19とのデータのやりとりを行う。また、ホスト処理部39内のFIFO84とSCSIコントローラとの間のデータの転送はホスト処理部39内のDMAコントローラ(図示せず)により制御される。図14はホスト処理部39とSCSIコントローラ91との間の制御信号の一部を示した図である。データのやりとりを開始するときは、SCSIコントローラ91からデータ転送要求のためのDREQ信号がアクティブにされる。ホスト処理部39内のDMAコントローラはこれを受けて、データを用意し、/ACK信号、IOストローブ信号である/DIOWR信号(IOライト信号)または/DIORD信号(IOリード信号)を出力する。ここで、信号名中の「/」の記号はアクティブ・ローで動作することを示す。このように、SCSIインタフェースを用いる場合は、ホスト処理部39内のDMAコントローラが転送のタイミングを制御する。すなわち、ホスト処理部39は、自身がデータ転送のタイミングを制御する機能である「マスタ機能」を備えている。なお、上記SCSIコントローラ39のかわりにIEEE1394規格に信号を制御するコントローラを用いてもよい。
図13は本データ処理回路において、ホストコンピュータ19に対するインタフェース規格としてSCSIを用いる場合の構成を示した図である。この場合、図に示すようにホスト処理部39およびシステム制御部31はSCSIコントローラ91に接続される。SCSIコントローラ91はSCSIバスを介してホストコンピュータ19とのデータのやりとりを行う。また、ホスト処理部39内のFIFO84とSCSIコントローラとの間のデータの転送はホスト処理部39内のDMAコントローラ(図示せず)により制御される。図14はホスト処理部39とSCSIコントローラ91との間の制御信号の一部を示した図である。データのやりとりを開始するときは、SCSIコントローラ91からデータ転送要求のためのDREQ信号がアクティブにされる。ホスト処理部39内のDMAコントローラはこれを受けて、データを用意し、/ACK信号、IOストローブ信号である/DIOWR信号(IOライト信号)または/DIORD信号(IOリード信号)を出力する。ここで、信号名中の「/」の記号はアクティブ・ローで動作することを示す。このように、SCSIインタフェースを用いる場合は、ホスト処理部39内のDMAコントローラが転送のタイミングを制御する。すなわち、ホスト処理部39は、自身がデータ転送のタイミングを制御する機能である「マスタ機能」を備えている。なお、上記SCSIコントローラ39のかわりにIEEE1394規格に信号を制御するコントローラを用いてもよい。
図15は本データ処理回路において、ホストコンピュータ19に対するインタフェース規格としてATAPIインタフェースを用いる場合の構成を示した図である。この場合、図に示すようにホスト処理部39およびシステム制御部31はATAPIバスに接続される。また、ホスト処理部39内のFIFO84とATAPIバスとの間のデータの転送はホスト処理部39内のDMAコントローラ(図示せず)により制御される。図1616はホスト処理部39とATAPIバスとの間の制御信号の一部を示した図である。データのやりとりを開始するときは、ホスト処理部39からデータ転送要求のためのREQ信号が出力される。ATAPIバスはこれを受けて、/ACK信号、IOストローブ信号である/DIOWR信号(IOライト信号)または/DIORD信号(IOリード信号)を出力する。このようにATAPIインタフェースを用いる場合は、ホスト処理部39内のDMAコントローラはATAPIバスから与えられたタイミングで動作する。すなわち、ホスト処理部39は、外部より与えられたデータ転送のタイミングで動作する機能である「スレーブ機能」を備えている。
以上のように、本実施形態のデータ処理回路は、ホスト処理部39がマスタ機能やスレーブ機能を有しており、システム制御部31によりそれらの機能のいずれかが選択されることにより、ホストインタフェースとしてSCSIやIEEE1394等のマスタ機能を要するインタフェース規格およびATAPI等のスレーブ機能を要するインタフェース規格に対して対応できる。
10…コンパクトディスク、 11…検出部、 12…書き込み部、 13…CDデコード回路、 14…CDエンコード回路、 15…データ処理回路、17…バッファRAM、 19…ホストコンピュータ、 21…CDフレーム、22…サブコード、 23…誤り訂正後のデータ(1フレーム)、 24…サブコードブロック、 25…データ(1ブロック)、 27…CD−ROMフォーマット(モード1)、 29…誤り訂正後のユーザデータ、 31…システム制御部、 33…セクタ処理部、 35…CD−DA処理部、 37…サブコード処理部、 39…ホスト処理部、 41…バッファ管理部、 45…第1システムページレジスタ、 45a…システムページレジスタ、 47…第2システムページレジスタ、 49…第1セクタページレジスタ、 49a…セクタページレジスタ、 51…第2セクタページレジスタ、 53…第1CDページレジスタ、 53a…CDページレジスタ、 55…第2CDページレジスタ、 57…第1サブコードページレジスタ、 57a…サブコードページレジスタ、59…第2サブコードページレジスタ、 60…第1ホストページレジスタ、60a…ホストページレジスタ、 61…第2ホストページレジスタ、 62…内部データバス、 63…内部アドレスバス、 66…メモリ制御部、 67…制御部、 71…転送データ指定レジスタ、 73…WK(0)SAレジスタ、74…WK(1)SAレジスタ、 75…WK(2)SAレジスタ、 77…WK(0)LENレジスタ、 78…WK(1)LENレジスタ、 79…WK(2)LENレジスタ、 81…比較回路、 82…ANDゲート、 84…FIFO、 85…第1マルチプレクサ、 86…第2マルチプレクサ、 87…バッファRAMI/F、 88…ホストバスI/F、 89…システム制御部I/F、 90…ゼロデータ生成部、 91…SCSIコントローラ。
Claims (2)
- 光学式記録ディスクに記録されるサブコードおよびメインデータに対して、1セクタ単位で、所定のデコード処理または所定のエンコード処理を行い、該処理中に前記サブコードおよび前記メインデータを一時的に格納するバッファRAMを有するデータ処理装置において、
前記バッファRAMの記憶領域を所定の大きさ毎に分割し、該分割によって得られる該所定の大きさの領域を1ページとする各ページ領域内の所定領域に、同一セクタ内の前記サブコードまたは前記メインデータ中に含まれる時間情報、ユーザデータおよびエラー情報を、ページ領域とセクタを一対一に対応づけて所定のフォーマットにしたがい、一時的に格納することを特徴とするデータ処理装置。 - ホストコンピュータから転送されたデータを、所定のエンコード処理を行うために一時的にバッファRAMに格納し、前記所定のエンコード処理後のデータを前記バッファRAMから読み出して光学式記録ディスクに記録するデータ処理装置において、
前記ホストコンピュータから転送されたデータを出力する第1のデータ出力手段と、
所定のデータを出力する第2のデータ出力手段と、
前記バッファRAMにおいて前記光学式記録ディスクに新たに転送するデータがなくなる状態であるバッファアンダーラン状態を検出する検出手段と、
前記検出手段の検出結果に基づき、バッファアンダーラン状態でないときは前記第1のデータ出力手段からの出力データを選択し、バッファアンダーラン状態になったときは前記第2のデータ出力手段からの出力データを選択し、選択された出力データを前記バッファRAMに出力する出力切り替え手段と
を備えたことを特徴とするデータ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006085604A JP2006244696A (ja) | 1996-08-08 | 2006-03-27 | 光学式記録ディスクドライブ装置に用いるデータ処理装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20968596 | 1996-08-08 | ||
JP2006085604A JP2006244696A (ja) | 1996-08-08 | 2006-03-27 | 光学式記録ディスクドライブ装置に用いるデータ処理装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12124397A Division JP3872165B2 (ja) | 1996-08-08 | 1997-05-12 | 光学式記録ディスクドライブ装置に用いるデータ処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006244696A true JP2006244696A (ja) | 2006-09-14 |
Family
ID=37050928
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006085604A Pending JP2006244696A (ja) | 1996-08-08 | 2006-03-27 | 光学式記録ディスクドライブ装置に用いるデータ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006244696A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110097898A (zh) * | 2018-01-29 | 2019-08-06 | 三星电子株式会社 | 页面大小感知调度方法和非暂时性计算机可读记录介质 |
-
2006
- 2006-03-27 JP JP2006085604A patent/JP2006244696A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110097898A (zh) * | 2018-01-29 | 2019-08-06 | 三星电子株式会社 | 页面大小感知调度方法和非暂时性计算机可读记录介质 |
CN110097898B (zh) * | 2018-01-29 | 2022-10-18 | 三星电子株式会社 | 页面大小感知调度方法和非暂时性计算机可读记录介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3872165B2 (ja) | 光学式記録ディスクドライブ装置に用いるデータ処理装置 | |
JP4744569B2 (ja) | Avデータの記録再生に適した記録方法と再生方法及び、その記録ドライブと再生ドライブ及び、情報記録システムと情報再生システム及び、情報記録媒体 | |
KR900004758B1 (ko) | 대용량 기억 디스크 드라이브 불량 매체 처리방법 | |
JP2007059060A (ja) | 記録可能なコンパクトディスク用のコントローラ、コンピュータシステムおよびcd−rディスクに信号データのセットを表す信号を記録する方法 | |
US5535327A (en) | Method and apparatus for communicating formatted data from a mass storage device to a host computer | |
JPH08106733A (ja) | 情報記憶媒体利用システム | |
EP1158518B1 (en) | Management method for reproduction errors and disk drive making use of the method | |
US7551530B2 (en) | Optical disc recording system | |
US6282688B1 (en) | Recording apparatus | |
JP3607034B2 (ja) | 光ディスク書込制御装置 | |
JP2007334973A (ja) | 記録方法及び光ディスク記録装置 | |
JP2006244696A (ja) | 光学式記録ディスクドライブ装置に用いるデータ処理装置 | |
JPH11306124A (ja) | データ転送方法および装置 | |
JPH04212755A (ja) | 光ディスクの信号処理方法 | |
JP3917710B2 (ja) | 信号処理回路 | |
JP4196512B2 (ja) | Avデータの記録再生に適した記録方法と再生方法及び、その記録ドライブと再生ドライブ及び、情報記録システムと情報再生システム及び、情報記録媒体 | |
JP2637594B2 (ja) | 情報記録再生装置 | |
JPH0528651A (ja) | 情報記録再生装置 | |
JP2001283515A (ja) | 光ディスクコントローラー | |
JP2000339869A (ja) | 光デイスク装置 | |
JP3808654B2 (ja) | 記録再生装置 | |
JPH03189719A (ja) | ディスク記憶装置 | |
JP2007052920A (ja) | 信号処理回路 | |
JPH10154389A (ja) | 情報記録媒体並びにこれを再生する再生装置、及び情報記録媒体の模擬装置 | |
JPH11220693A (ja) | 動画像記録装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070911 |
|
A521 | Written amendment |
Effective date: 20071112 Free format text: JAPANESE INTERMEDIATE CODE: A523 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071204 |