(57)【要約】【課題】  複数のＣＰＵを使用したシステムにおいて、容易に全体プログラムを不揮発性メモリに書き込む。【解決手段】  通信器４と、通信データの格納用の揮発性メモリ７と、通信器４の通信処理、揮発性メモリ７に格納される通信データを制御するＣＰＵ３４と、ＣＰＵ３４のプログラムが格納されたＲＯＭメモリ３７と、装置全体を制御するＣＰＵ３１と、ＣＰＵ３１の全体プログラムの格納用の不揮発性メモリ６と、ＣＰＵ３１の別の実行可能なプログラムが格納されたＲＯＭメモリ３５と、ＣＰＵ３１のプログラムの実行開始先を不揮発性メモリ６とＲＯＭメモリ３５に切り換え可能な外部入力端子８とを備え、起動時に外部入力端子８の設定に応じて実行開始先を切り換え、ＲＯＭメモリ３５に、不揮発性メモリの全体プログラムの書き換え用プログラムを格納する。【選択図】  図１
2007058499.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データの情報処理を行う装置であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、
前記通信データの格納用に設けられた揮発性メモリと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、
前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリと、
前記装置の全体を制御する第２制御器（ＣＰＵ）と、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、
前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリと、
前記第２制御器のプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な外部入力端子と、
を備え、
当該情報処理装置の起動時において、前記外部入力端子の設定に応じて実行開始先を切り換える、
ことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
当該情報処理装置の起動時において、前記第１制御器が停止状態で、前記第２制御器が先に実行開始する、
ことを特徴とする情報処理装置。
【請求項３】
請求項１または請求項２に記載の情報処理装置において、
前記第２ＲＯＭメモリに、前記不揮発性メモリの全体プログラムの書き換え用プログラムを格納する、
ことを特徴とする情報処理装置。
【請求項４】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データの情報処理を行う装置であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、
前記通信データの格納用に設けられた揮発性メモリと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、
前記第１制御器のプログラムがあらかじめ格納されたＲＯＭメモリと、
前記装置の全体を制御する第２制御器（ＣＰＵ）と、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、
前記第２制御器のリセット（実行開始）時にプログラムの実行開始先を前記不揮発性メモリと前記揮発性メモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能な第１レジスタと、
前記第２制御器の実行開始指令を前記第１制御器のプログラムで設定可能な第２レジスタと、
を備え、
前記ＲＯＭメモリにあらかじめ前記第２制御器で実行可能なプログラムを組み込んでおき、
前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに前記第２制御器で実行可能なプログラムを格納（コピー）し、
前記第１制御器は、前記第１レジスタの設定を切り換え、前記第２レジスタを設定して前記第２制御器を実行開始させる、
ことを特徴とする情報処理装置。
【請求項５】
請求項４に記載の情報処理装置において、
前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに、前記不揮発性メモリの全体プログラムの書き換え用プログラムを格納し実行する、
ことを特徴とする情報処理装置。
【請求項６】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データの情報処理を行う装置であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、
前記通信データの格納用に設けられた揮発性メモリと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、
前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリと、
前記装置の全体を制御する第２制御器（ＣＰＵ）と、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、
前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリと、
前記第２制御器のリセット時にプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能なレジスタと、
を備え、
前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに前記第２制御器の動作状態を示す情報を設定し、
前記第１制御器が前記第２制御器の動作状態を示す情報を読み取ることによって前記第２制御器の動作状態を監視できるようにし、
前記第１制御器が前記第２制御器の動作状態に応じて、前記レジスタの設定を切り換え、前記第２制御器をリセットし、前記第２制御器の実行開始先を切り換える、
ことを特徴とする情報処理装置。
【請求項７】
請求項６に記載の情報処理装置において、
前記第２ＲＯＭメモリ、前記不揮発性メモリの全体プログラムの書き換え用プログラムを格納する、
ことを特徴とする情報処理装置。
【請求項８】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データの情報処理を行う装置であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、
前記通信データの格納用に設けられた揮発性メモリと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、
前記第１制御器のプログラムがあらかじめ格納されたＲＯＭメモリと、
前記装置の全体を制御する第２制御器（ＣＰＵ）と、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、
前記第２制御器の全体プログラムの実行を開始するかしないかの切り換えを操作者が設定可能な外部入力端子と、
を備え、
当該情報処理装置の起動時において、前記外部入力端子の設定に応じて前記第２制御器の全体プログラムの実行を開始するかしないかを切り換える、
ことを特徴とする情報処理装置。
【請求項９】
請求項８に記載の情報処理装置において、
当該情報処理装置の起動時において、前記第１制御器と前記第２制御器が同時に実行開始し、前記第２制御器の動作状態が前記第１制御器の動作に影響を与える、
ことを特徴とする情報処理装置。
【請求項１０】
請求項８または請求項９に記載の情報処理装置において、
前記第１制御器は、前記不揮発性メモリの全体プログラムの書き換え用プログラムを実行する、
ことを特徴とする情報処理装置。
【請求項１１】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データの情報処理を行う装置であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、
前記通信データの格納用に設けられた揮発性メモリと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、
前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリと、
前記装置の全体を制御する第２制御器（ＣＰＵ）と、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、
前記第１制御器または前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリと、
前記第１制御器または前記第２制御器のプログラムの実行開始先を前記第１ＲＯＭメモリと第２ＲＯＭメモリのいずれにするか、または前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な第１外部入力端子と、
前記第１制御器または前記第２制御器のプログラムの実行を開始するかしないかの切り換えを操作者が設定可能な第２外部入力端子と、
を備え、
当該情報処理装置の起動時において、前記第１外部入力端子の設定に応じて実行開始先を切り換える、
さらに当該情報処理装置の起動時において、前記第２外部入力端子の設定に応じてプログラムの実行を開始するかしないかを切り換える、
ことを特徴とする情報処理装置。
【請求項１２】
請求項１１に記載の情報処理装置において、
前記第２ＲＯＭメモリに、前記不揮発性メモリの全体プログラムの書き換え用プログラムを格納する、
ことを特徴とする情報処理装置。
【請求項１３】
請求項３または請求項５または請求項７または請求項１０または請求項１２に記載の情報処理装置において、
前記不揮発性メモリに格納される全体プログラムの書き換え用プログラムは、前記不揮発性メモリの格納状態を判断する格納状態判断部をさらに備えており、
前記格納状態判断部は、前記格納状態判断部にあらかじめＲＯＭ化された固定のコード（あるいは固定値）と、前記不揮発性メモリに格納される全体プログラムに対しあらかじめ決められた計算式によって生成されるコードとを比較することで判断する、
ことを特徴とする情報処理装置。
【請求項１４】
請求項１３に記載の情報処理装置において、
前記格納状態判断部は、予め特定しておいた前記不揮発性メモリの一部領域だけを判断する、
ことを特徴とする情報処理装置。
【請求項１５】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データを不揮発性メモリに書き込む方法であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、
前記通信データの格納用に設けられた揮発性メモリを準備するステップと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、
前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリを準備するステップと、
前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、
前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリを準備するステップと、
前記第２制御器のプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な外部入力端子を準備するステップと、
前記外部入力端子の設定に応じて、前記第２制御器のプログラムの実行開始先が前記不揮発性メモリか前記第２ＲＯＭメモリかを判断する第１のステップと、
前記第２制御器のプログラムの実行開始先が前記第２ＲＯＭメモリと判断し、前記第２ＲＯＭメモリに格納された前記不揮発性メモリの別の実行可能なプログラムを実行する第２のステップと、
を含むことを特徴とするデータ書き込み方法。
【請求項１６】
請求項１５に記載のデータ書き込み方法において、
情報処理装置の起動時において、前記第１制御器が停止状態で、前記第２制御器が先に実行開始する、
ことを特徴とするデータ書き込み方法。
【請求項１７】
請求項１５または請求項１６に記載のデータ書き込み方法において、
前記第２のステップにおいて、全体プログラムの書き換え用プログラムを実行する、
ことを特徴とするデータ書き込み方法。
【請求項１８】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データを不揮発性メモリに書き込む方法であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、
前記通信データの格納用に設けられた揮発性メモリを準備するステップと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、
前記第１制御器のプログラムがあらかじめ格納されたＲＯＭメモリを準備するステップと、
前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、
前記第２制御器のリセット（実行開始）時にプログラムの実行開始先を前記不揮発性メモリと前記揮発性メモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能な第１レジスタを準備するステップと、
前記第２制御器の実行開始指令を前記第１制御器のプログラムで設定可能な第２レジスタを準備するステップと、
前記第１制御器が、前記第１ＲＯＭメモリにあらかじめ組み込んでおいた前記第２制御器で実行可能なプログラムを、前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに格納（コピー）する第１のステップと、
前記第１制御器が、リセット（実行開始）時にプログラムの実行開始先を前記不揮発性メモリと前記揮発性メモリのいずれにするかの切り換えに対し、前記第１制御器のプログラムで設定可能な前記第１レジスタの設定を前記揮発性メモリに切り換える第２のステップと、
前記第１制御器が、前記第２制御器の実行開始指令を前記第１制御器のプログラムで設定可能な前記第２レジスタを設定して前記第２制御器を実行開始させる第３のステップと、
前記第２制御器が、前記揮発性メモリに格納されたプログラムを実行する第４のステップと、
を含むことを特徴とするデータ書き込み方法。
【請求項１９】
請求項１８に記載のデータ書き込み方法において、
前記第１のステップにおいて、前記第１ＲＯＭメモリに前記第２制御器で実行可能な前記不揮発性メモリの全体プログラムの書き換え用プログラムを組み込んでおき、
前記第４のステップにおいて、前記不揮発性メモリの全体プログラムの書き換え用プログラムを実行する、
ことを特徴とするデータ書き込み方法。
【請求項２０】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データを不揮発性メモリに書き込む方法であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、
前記通信データの格納用に設けられた揮発性メモリを準備するステップと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、
前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリと、
前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、
前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリを準備するステップと、
前記第２制御器のリセット時にプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能なレジスタを準備するステップと、
前記第１制御器が、前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに設定された前記第２制御器の動作状態を示す情報を読み取ることによって前記第２制御器の動作状態を監視する第１のステップと、
前記第１制御器が、前記第２制御器の動作状態を判断する第２のステップと、
前記第１制御器が、前記第２制御器が暴走状態と判断した場合に、前記第２制御器のリセット時にプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能な前記レジスタの設定を前記第２ＲＯＭメモリに切り換える第３のステップと、
前記第１制御器が、前記第２制御器をリセットする第４のステップと、
前記第２制御器が、前記第２ＲＯＭメモリに格納されたプログラムを実行する第５のステップと、
を含むことを特徴とするデータ書き込み方法。
【請求項２１】
請求項２０に記載のデータ書き込み方法において、
前記第５のステップにおいて、前記不揮発性メモリの全体プログラムの書き換え用プログラムを実行する、
ことを特徴とするデータ書き込み方法。
【請求項２２】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データを不揮発性メモリに書き込む方法であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、
前記通信データの格納用に設けられた揮発性メモリを準備するステップと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、
前記第１制御器のプログラムがあらかじめ格納されたＲＯＭメモリを準備するステップと、
前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、
前記第２制御器の全体プログラムの実行を開始するかしないかの切り換えを操作者が設定可能な外部入力端子を準備するステップと、
前記外部入力端子の設定により、前記第２制御器の全体プログラムの実行を開始しないようにする第１のステップと、
前記ＲＯＭメモリに格納されたプログラムを実行する第２のステップと、
を含むことを特徴とするデータ書き込み方法。
【請求項２３】
請求項２２に記載のデータ書き込み方法において、
情報処理装置の起動時において、前記第１制御器と前記第２制御器が同時に実行開始し、前記第２制御器の動作状態が前記第１制御器の動作に影響を与える、
ことを特徴とするデータ書き込み方法。
【請求項２４】
請求項２２または請求項２３に記載のデータ書き込み方法において、
前記第２のステップにおいて、前記不揮発性メモリの全体プログラムの書き換え用プログラムを実行する、
ことを特徴とするデータ書き込み方法。
【請求項２５】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データを不揮発性メモリに書き込む方法であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、
前記通信データの格納用に設けられた揮発性メモリを準備するステップと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、
前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリを準備するステップと、
前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、
前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、
前記第１制御器または前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリを準備するステップと、
前記第１制御器または前記第２制御器のプログラムの実行開始先を前記第１ＲＯＭメモリと第２ＲＯＭメモリのいずれにするか、または前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な第１外部入力端子を準備するステップと、
前記第１制御器または前記第２制御器のプログラムの実行を開始するかしないかの切り換えを操作者が設定可能な第２外部入力端子を準備するステップと、
前記第２外部入力端子の設定により、前記第１制御器のプログラムの実行を開始しないようにする第１のステップと、
前記第１外部入力端子の設定により、前記第２制御器の実行開始先が前記不揮発性メモリか前記第２ＲＯＭメモリかを判断する第２のステップと、
前記第２制御器の実行開始先が前記第２ＲＯＭメモリと判断すると、前記第２ＲＯＭメモリに格納されたプログラムを実行する第３のステップと、
を含むことを特徴とするデータ書き込み方法。
【請求項２６】
請求項２５に記載のデータ書き込み方法において、
前記第３のステップにおいて、前記不揮発性メモリの全体プログラム及び前記第１ＲＯＭメモリ（開発時においてＲＡＭメモリ）の書き換え用プログラムを実行する、
ことを特徴とするデータ書き込み方法。
【請求項２７】
ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データの情報処理を行う装置であって、
前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、
前記通信データの格納用に設けられた揮発性メモリと、
前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を含む装置全体を制御する制御器（ＣＰＵ）と、
前記制御器の全体プログラムの格納用に設けられた不揮発性メモリと、
前記制御器の別の実行可能なプログラムがあらかじめ格納されたＲＯＭメモリと、
前記制御器のプログラムの実行開始先を前記不揮発性メモリと前記ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な外部入力端子と、
を備え、
当該情報処理装置の起動時において、前記外部入力端子の設定に応じて実行開始先を切り換える、
ことを特徴とする情報処理装置。
【請求項２８】
請求項２７に記載の情報処理装置において、
前記ＲＯＭメモリに、前記不揮発性メモリの全体プログラムの書き換え用プログラムを格納する、
ことを特徴とする情報処理装置。
【請求項２９】
ホストコンピュータとの間でデータ通信を実施する装置であって、
前記装置を制御する制御器（ＣＰＵ）と、
前記制御器の全体プログラムの格納用に設けられた不揮発性メモリと、
前記不揮発性メモリに格納される全体プログラムの書き換え手段と、
を備え、
前記不揮発性メモリに格納される全体プログラムの書き換え手段は、前記不揮発性メモリの格納状態を判断する格納状態判断部をさらに備えており、
前記格納状態判断部は、前記格納状態判断部にあらかじめＲＯＭ化された固定のコード（あるいは固定値）と、前記不揮発性メモリに格納される全体プログラムに対しあらかじめ決められた計算式によって生成されるコードとを比較することで判断する、
ことを特徴とする情報処理装置。
【請求項３０】
請求項２９に記載の情報処理装置において、
前記格納状態判断部は、予め特定しておいた前記不揮発性メモリの一部領域だけを判断する、
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光ディスク装置等の情報処理装置、および情報処理装置が有する不揮発性メモリにデータを書き込む方法に関する。
【背景技術】
【０００２】
光ディスク装置等の情報処理装置では、ホストコンピュータとの間でパラレルデータ通信を実施することでデータを生成したうえで、得られたデータに対して各種の情報処理（例えば、光ディスクに書き込む／読み出す処理）を実施する。
【０００３】
情報処理装置において、ホストコンピュータとのパラレルデータ通信を実施するプログラム（以下、通信用プログラムという）等はＲＯＭメモリに格納され、ＲＯＭメモリに格納された通信用プログラム等の制御等を実施する装置全体のプログラム（以下、全体プログラムといい、一般にはファームウェア（以下Ｆ／Ｗ）と呼ばれる）は、不揮発性メモリ（Ｆｌａｓｈ ＲＯＭ等）に格納される。通常動作には、不揮発性メモリに書き込まれている全体プログラムを、不揮発性メモリ上で実行することで、各種の情報処理を実施している。その際、ホストコンピュータとの間のパラレルデータ通信で生成されるデータを含めて情報処理中に生成されるデータは、揮発性メモリ（キャッシュメモリ：ＳＤＲＡＭ等）に一時記録される。
【０００４】
さらに、上記光ディスク装置等の情報処理装置は、例えば、記録型ＤＶＤ(Digital Versatile Disk:商標名)やＢＤ(Blue-ray Disk:商標名)といった新たなメディアへの対応のため高機能化が進み、システム全体が大規模になってきている。そのため、システム全体を制御するＣＰＵの処理能力が不足するケースが発生してきている。これに対し、ＣＰＵの高速化や、複数のＣＰＵによる並列処理化などが考えられる。実際に、これまで１つのＣＰＵでシステム全体を制御していた上記光ディスク装置等の情報処理装置において、高機能化に対応するため、コストや消費電力の低減を考慮し、複数のＣＰＵにより処理の負荷を分散させてシステム全体を制御するといったケースが生じてきている。
【０００５】
さらに情報処理装置の製造時や修理時においては、ホストコンピュータ側から情報処理装置の不揮発性メモリに全体プログラムを書き込む処理が実施される。その際において情報処理装置は、全体プログラムが未格納の状態（製造時）、もしくは全体プログラムは格納されているもののその動作が不完全な状態（修理時）となっている。
【０００６】
さらに不揮発性メモリに全体プログラムが格納されているか否かを判断する格納状態判断部を備えた情報処理装置においては、格納状態判断部が不揮発性メモリの全体プログラムの格納状態判断用コード（例えばチェックサムコード等）を不揮発性メモリの全体プログラムの中に埋め込んでおくことで格納状態を判断する方法が考案されている。
【特許文献１】特開２００１−０７５７９６号公報
【特許文献２】特開２０００−１０５６９４号公報
【特許文献３】特開２０００−０１０６６６号公報
【特許文献４】特開２００２−１５７１３７号公報
【特許文献５】特開２００１−２４３１２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前述したように情報処理装置の製造時や修理時においては、全体プログラムが未格納の状態（製造時）、もしくは全体プログラムは格納されているもののその動作が不完全な状態（修理時）となっているが、これに対し、従来、１つのＣＰＵを使用したシステム（以下１ＣＰＵシステム）において、ＲＯＭメモリから実行開始される場合に、パラレルデータ通信よりホストコンピュータから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリに書き込むことができる装置構成や方法が考案されている。
【０００８】
しかしながら、複数のＣＰＵを使用したシステム（以下複数ＣＰＵシステム）の場合、それぞれのＣＰＵの起動手順や動作状態が他のＣＰＵの動作に影響を与えてしまう。そのため、例えば、ＲＯＭメモリを持つＣＰＵ（以下第１ＣＰＵ）と不揮発性メモリを持つＣＰＵ（以下第２ＣＰＵ）の２つのＣＰＵを使用するシステム（以下２ＣＰＵシステム）において、ＣＰＵの起動手順や動作状態を考慮すると、以下の４パターンの課題が発生する。
【０００９】
（第２ＣＰＵから起動する場合）
不揮発性メモリが製造時もしくは修理時の場合、第２ＣＰＵが暴走してしまうため、システム全体が全く動作せず、何もできなくなる。
【００１０】
（第１ＣＰＵから起動する場合）
第１ＣＰＵが不揮発性メモリへアクセス不可のため、全体プログラムの書き込みや、不揮発性メモリの全体プログラムの書き込み状態の確認等ができない。
【００１１】
（第１ＣＰＵと第２ＣＰＵが同時に起動する場合）
第２ＣＰＵが第１ＣＰＵの動作に影響を与える場合、第２ＣＰＵが暴走し第１ＣＰＵの動作に影響を与えるため、システムとして動作保証できない。
【００１２】
第２ＣＰＵが第１ＣＰＵの動作に影響を与えない場合も、第１ＣＰＵは動作するが、第２ＣＰＵの動作状態を第１ＣＰＵが把握できず、システムとして動作保証できなくなる。
【００１３】
（第１ＣＰＵと第２ＣＰＵのプログラムがいずれも未格納もしくは格納されているもののその動作が不完全な状態の場合）
特に開発中に第１ＣＰＵのＲＯＭメモリをＲＡＭメモリに置き換える場合があり、必ずＣＰＵが暴走し、システムが破綻する。
【００１４】
そのため、複数ＣＰＵシステムにおいても、上記課題を解決し、容易に全体プログラムを不揮発性メモリに書き込むことができる装置構成や方法が要望されている。
【００１５】
例えば図２（ａ）に示す従来の１ＣＰＵシステムの光ディスク装置（情報処理装置）では、ＲＯＭメモリ（ＩＲＯＭ）のプログラム（マイクロコード）と不揮発性メモリ（ＦｌａｓｈＲＯＭ）の全体プログラム（Ｆ／Ｗ）が時分割に処理されるため、他方のプログラムの動作を意識する必要がなかった。しかし、本発明における図２（ｂ）に示す２ＣＰＵシステムの光ディスク装置（情報処理装置）では、不揮発性メモリ（ＦｌａｓｈＲＯＭ）の全体プログラム（Ｆ／Ｗ）とＲＯＭメモリ（ＩＲＯＭ）のプログラム（マイクロコード）が２つのＣＰＵで独立並行処理されるため、他方のプログラムの動作状態を意識する必要がある。
【００１６】
さらに不揮発性メモリに全体プログラムが格納されているか否かを判断する格納状態判断部を備えた情報処理装置において、格納状態判断部が不揮発性メモリの全体プログラムの格納状態判断用コード（例えばチェックサムコード等）を不揮発性メモリの全体プログラムの中に埋め込んでおくことで格納状態を判断する方法では、全体プログラムの中に埋め込まれる格納状態判断用コードの格納位置が固定位置に決められてしまう。
【００１７】
しかしながら、全体プログラムの構成上、固定位置にしたくない場合などにおいて、全体プログラムの構成を再構築する必要がある、あるいは全体プログラムの構成を再構築する場合にも制限を受ける等の不都合が生じていた。
【００１８】
そのため、格納状態判断用コードの格納位置を固定位置にしなくても良い方法が要望されている。
【課題を解決するための手段】
【００１９】
前記従来の課題を解決するために、本発明は、ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データの情報処理を行う情報処理装置において次のように構成する。
【００２０】
その際、ＲＯＭメモリを持つ第１ＣＰＵと不揮発性メモリを持つ第２ＣＰＵの起動手順により解決手段が変わる。
【００２１】
（第２ＣＰＵから起動する場合）
この情報処理装置は、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、前記通信データの格納用に設けられた揮発性メモリと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリと、前記装置の全体を制御する第２制御器（ＣＰＵ）と、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリと、前記第２制御器のプログラムの実行開始先を不揮発性メモリと第２ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な外部入力端子とを備える。
【００２２】
当該情報処理装置の起動時において、前記外部入力端子の設定に応じて実行開始先を切り換える。
【００２３】
さらに前記第２ＲＯＭメモリに、前記不揮発性メモリの全体プログラムの書き換え用プログラムを格納する。
【００２４】
本発明の構成では、不揮発性メモリに全体プログラムが未格納もしくは格納されているもののその動作が不完全な状態においても、第２ＣＰＵが実行可能なプログラムが別のＲＯＭメモリに用意されており、起動時に端子設定でハード的に実行開始先を切り換え可能なので、第２ＣＰＵを暴走させずにすむ。
【００２５】
さらに当該情報処理装置の起動時において、前記第１制御器が停止状態で、前記第２制御器が先に実行開始する場合において極めて有効である。
【００２６】
しかも起動時に不揮発性メモリの全体プログラムの書き換え用プログラムを実行させることで、容易に全体プログラムを不揮発性メモリに書き込むことができる。
【００２７】
また本発明における解決手段は、従来の１ＣＰＵシステムへ適用しても有効である。
【００２８】
（第１ＣＰＵから起動する場合）
この情報処理装置は、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、前記通信データの格納用に設けられた揮発性メモリと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、前記第１制御器のプログラムがあらかじめ格納されたＲＯＭメモリと、前記装置の全体を制御する第２制御器（ＣＰＵ）と、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、前記第２制御器のリセット（実行開始）時にプログラムの実行開始先を前記不揮発性メモリと前記揮発性メモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能な第１レジスタと、前記第２制御器の実行開始指令を前記第１制御器のプログラムで設定可能な第２レジスタとを備える。
【００２９】
前記ＲＯＭメモリにあらかじめ前記第２制御器で実行可能なプログラムを組み込んでおく。
【００３０】
前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに前記第２制御器で実行可能なプログラムを格納する。
【００３１】
前記第１制御器は、前記第１レジスタの設定を切り換え、前記第２レジスタを設定して前記第２制御器を実行開始させる。
【００３２】
さらに、前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに、前記不揮発性メモリの全体プログラムの書き換え用プログラムを組み込んでおく。
【００３３】
本発明の構成では、不揮発性メモリに全体プログラムが未格納もしくは格納されているもののその動作が不完全な状態においても、
第２ＣＰＵのハード資源を使用するために第１ＣＰＵと第２ＣＰＵでプログラム実行可能な共有の揮発性メモリを用意し、この揮発性メモリに第２ＣＰＵで実行可能なプログラムを格納して第２ＣＰＵを起動し実行させる。第２ＣＰＵの実行開始先はレジスタ設定等で切り換え可能とするので、第２ＣＰＵを暴走させることなく、しかもＲＯＭメモリに不揮発性メモリの全体プログラムの書き換え用プログラムを組み込んでおき実行させることで、容易に全体プログラムを不揮発性メモリに書き込むことができる。
【００３４】
（第１ＣＰＵと第２ＣＰＵが同時に起動する場合）
この情報処理装置は、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、前記通信データの格納用に設けられた揮発性メモリと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリと、前記装置の全体を制御する第２制御器（ＣＰＵ）と、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリと、前記第２制御器のリセット時にプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能なレジスタとを備える。
【００３５】
前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに前記第２制御器の動作状態を示す情報を設定する。
【００３６】
前記第１制御器が前記第２制御器の動作状態を示す情報を読み取ることによって前記第２制御器の動作状態を監視できるようにする。
【００３７】
前記第１制御器が前記第２制御器の動作状態に応じて、前記レジスタの設定を切り換え、前記第２制御器をリセットし、前記第２制御器の実行開始先を切り換える。
【００３８】
さらに前記第２ＲＯＭメモリに、前記不揮発性メモリの全体プログラムの書き換え用プログラムを格納する。
【００３９】
本発明の構成では、不揮発性メモリに全体プログラムが未格納もしくは格納されているもののその動作が不完全な状態において、第２ＣＰＵが第１ＣＰＵの動作に影響を与えない場合に、第２ＣＰＵが暴走している場合にも、第１ＣＰＵが第２ＣＰＵの動作状態を監視できるようにし、第２ＣＰＵが暴走状態と判断した場合、第２ＣＰＵの実行開始先をＲＯＭメモリ上のプログラムに切り換えて、第２ＣＰＵをリセットするので、システム全体の動作保証が可能となる。
【００４０】
さらに第２ＣＰＵをリセット後、不揮発性メモリの全体プログラムの書き換え用プログラムを実行させることで、システム全体の動作を復帰させることが可能となり、しかも容易に全体プログラムを不揮発性メモリに書き込むことができる。
【００４１】
また、この情報処理装置は、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、前記通信データの格納用に設けられた揮発性メモリと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、前記第１制御器のプログラムがあらかじめ格納されたＲＯＭメモリと、前記装置の全体を制御する第２制御器（ＣＰＵ）と、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリとを備える。
【００４２】
また、この情報処理装置において、前記第２制御器の全体プログラムの実行を開始するかしないかの切り換えを操作者が設定可能な外部入力端子を備える。
【００４３】
当該情報処理装置の起動時において、前記外部入力端子の設定に応じて前記第２制御器の全体プログラムの実行を開始するかしないかを切り換える。
【００４４】
さらに前記第１制御器は、前記不揮発性メモリの全体プログラムの書き換え用プログラムを実行する。
【００４５】
本発明の構成では、不揮発性メモリに全体プログラムが未格納もしくは格納されているもののその動作が不完全な状態において、第２ＣＰＵが第１ＣＰＵの動作に影響を与える場合に、第２ＣＰＵが全体プログラムを実行開始するかしないかを起動時に端子設定で切り換え可能なので、第２ＣＰＵが暴走して第１ＣＰＵの動作に影響を与えることがなく、しかも第１ＣＰＵに全体プログラムの書き換えプログラムを持たせて実行させれば、前述の第１ＣＰＵから起動する場合と同様の方法を用いることで容易に全体プログラムを不揮発性メモリに書き込むことができる。
【００４６】
さらに、当該情報処理装置の起動時において、前記第１制御器と前記第２制御器が同時に実行開始し、前記第２制御器の動作状態が前記第１制御器の動作に影響を与える場合において極めて有効である。
【００４７】
しかも切り換え可能にすることで、不揮発性メモリに全体プログラムが格納されている場合には、第２ＣＰＵを起動時に実行開始させることができる。
【００４８】
（第１ＣＰＵと第２ＣＰＵのプログラムがいずれも未格納もしくは格納されているもののその動作が不完全な状態の場合）
この情報処理装置において、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器と、前記通信データの格納用に設けられた揮発性メモリと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）と、前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリと、前記装置の全体を制御する第２制御器（ＣＰＵ）と、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリと、前記第１制御器１または前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリと、前記第１制御器または前記第２制御器のプログラムの実行開始先を前記第１ＲＯＭメモリと第２ＲＯＭメモリのいずれにするか、または前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な第１外部入力端子と、前記第１制御器または前記第２制御器のプログラムの実行を開始するかしないかの切り換えを操作者が設定可能な第２外部入力端子とを備える。
【００４９】
当該情報処理装置の起動時において、前記第１外部入力端子の設定に応じて実行開始先を切り換える。
【００５０】
さらに当該情報処理装置の起動時において、前記第２外部入力端子の設定に応じてプログラムの実行を開始するかしないかを切り換える。
【００５１】
さらに前記第２ＲＯＭメモリに、前記不揮発性メモリの全体プログラムの書き換え用プログラムを格納する。
【００５２】
本発明の構成では、不揮発性メモリに全体プログラムが未格納もしくは格納されているもののその動作が不完全な状態、かつ開発時等のため、第１ＣＰＵのＲＯＭメモリをＲＡＭメモリに置き換えて使用する場合等において、第１ＣＰＵまたは第２ＣＰＵが実行可能なプログラムが別のＲＯＭメモリに用意されており、起動時に端子設定でハード的に実行開始先を切り換え可能で、かつ第１ＣＰＵまたは第２ＣＰＵがプログラムを実行開始するかしないかを起動時に端子設定で切り換え可能なので、第１ＣＰＵまたは第２ＣＰＵが暴走することなく、かつ他方のＣＰＵの動作に影響を与える場合にも影響を与えることがなく、しかもＲＯＭメモリに第１ＣＰＵと第２ＣＰＵのプログラムの書き換えプログラムを持たせて実行させれば、容易に全体プログラムを不揮発性メモリに書き込むことができる。
【００５３】
しかも切り換え可能にすることで、量産時にＲＯＭメモリと不揮発性メモリにプログラムが格納されている場合には、第１ＣＰＵと第２ＣＰＵを起動時に正常に実行開始させることができる。
【００５４】
本発明によれば、上記４パターンの課題を解決し、複数のＣＰＵを使用したシステムにおいても、ＣＰＵが暴走することなく、容易にしかも確実に全体プログラムを不揮発性メモリに迅速に書き込むことができる。
【００５５】
さらに、前記格納状態判断コードの格納位置を、前記全体プログラムの構成上、固定位置にしたくないという課題を解決するために、本発明は、ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データの情報処理を行う情報処理装置において次のように構成する。
【００５６】
この情報処理装置は、前記不揮発性メモリの全体プログラムの書き換え用プログラムは、前記不揮発性メモリの格納状態を判断する格納状態判断部をさらに備える。
【００５７】
前記格納状態判断部は、前記格納状態判断部にあらかじめＲＯＭ化された固定のコード（あるいは固定値）と、前記不揮発性メモリに格納される全体プログラムに対しあらかじめ決められた計算式によって生成されるコードとを比較することで判断する。
【００５８】
本発明によれば、全体プログラムの格納状態を判断するための格納状態判断コードを、全体プログラムの構成上、固定位置にしたくない場合において、あらかじめ固定のコードをＲＯＭ化しておくので、全体プログラムの構成を再構築する必要がなくなる。あるいは全体プログラムの構成を再構築する場合にも制限を受けることがなくなる。
【００５９】
なお、上記格納状態判断部は、予め特定しておいた前記不揮発性メモリの一部領域だけを判断するのが好ましい。これにより、状態判断部による判断に必要となる時間が必要最小限となり、その分、制御動作が迅速化する。
【００６０】
なお、本発明による上記判断方法は、前述の２ＣＰＵシステムである光ディスク装置等の情報処理装置に限らず、不揮発性メモリ等の書き換え可能なメモリを有し、そのメモリの格納状態判断を実施する場合に広く有効である。
【００６１】
なお、起動時とは、情報処理装置の電源が落とされたうえで再起動（電源再投入）される時点や、電源が投入された状態でソフトウェア上で情報処理装置がリセットされた時点をいう。
【００６２】
また、本発明は、ホストコンピュータとの間でパラレルデータ通信を実施して得られる通信データを不揮発性メモリに書き込む方法において次のように構成する。
【００６３】
（第２ＣＰＵから起動する場合）
このデータ書き込み方法において、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、前記通信データの格納用に設けられた揮発性メモリを準備するステップと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリを準備するステップと、前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリを準備するステップと、前記第２制御器のプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な外部入力端子を準備するステップと、前記外部入力端子の設定に応じて、前記第２制御器のプログラムの実行開始先が前記不揮発性メモリか前記第２ＲＯＭメモリかを判断する第１のステップと、前記第２制御器のプログラムの実行開始先が前記第２ＲＯＭメモリと判断し、前記第２ＲＯＭメモリに格納された前記不揮発性メモリの別の実行可能なプログラムを実行する第２のステップとを含む。
【００６４】
さらに、前記第２のステップにおいて、全体プログラムの書き換え用プログラムを実行する。
【００６５】
本発明では、全体プログラムの書き換え用プログラムを実行するに際し、前記制御器１を起動し前記通信プログラムを実行するようにすれば、既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリに書き込むことができる方法等を用いることで、不揮発性メモリの全体プログラムの書き換えが可能である。
【００６６】
さらに情報処理装置の起動時において、前記第１制御器が停止状態で、前記第２制御器が先に実行開始する場合において極めて有効である。
【００６７】
（第１ＣＰＵから起動する場合）
このデータ書き込み方法において、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、前記通信データの格納用に設けられた揮発性メモリを準備するステップと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、前記第１制御器のプログラムがあらかじめ格納されたＲＯＭメモリを準備するステップと、前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、前記第２制御器のリセット（実行開始）時にプログラムの実行開始先を前記不揮発性メモリと前記揮発性メモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能な第１レジスタを準備するステップと、前記第２制御器の実行開始指令を前記第１制御器のプログラムで設定可能な第２レジスタを準備するステップと、前記第１制御器が、前記第１ＲＯＭメモリにあらかじめ組み込んでおいた前記第２制御器で実行可能なプログラムを、前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに格納（コピー）する第１のステップと、前記第１制御器が、リセット（実行開始）時にプログラムの実行開始先を前記不揮発性メモリと前記揮発性メモリのいずれにするかの切り換えに対し、前記第１制御器のプログラムで設定可能な前記第１レジスタの設定を前記揮発性メモリに切り換える第２のステップと、前記第１制御器が、前記第２制御器の実行開始指令を前記第１制御器のプログラムで設定可能な前記第２レジスタを設定して前２制御器を実行開始させる第３のステップと、前記第２制御器が、前記揮発性メモリに格納されたプログラムを実行する第４のステップとを含む。
【００６８】
さらに、前記第１のステップにおいて、前記第１ＲＯＭメモリに前記第２制御器で実行可能な前記不揮発性メモリの全体プログラムの書き換え用プログラムを組み込んでおき、前記第４のステップにおいて、前記不揮発性メモリの全体プログラムの書き換え用プログラムを実行する。
【００６９】
本発明では、全体プログラムの書き換え用プログラムを実行するに際し、前記第１制御器の前記通信プログラムを利用するようにすれば、既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリに書き込むことができる方法等を用いることで、不揮発性メモリの全体プログラムの書き換えが可能である。
【００７０】
（第１ＣＰＵと第２ＣＰＵが同時に起動する場合）
このデータ書き込み方法において、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、前記通信データの格納用に設けられた揮発性メモリを準備するステップと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリと、前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリを準備するステップと、前記第２制御器のリセット時にプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能なレジスタを準備するステップと、前記第１制御器が、前記第１制御器と前記第２制御器で共用可能な前記揮発性メモリに設定された前記第２制御器の動作状態を示す情報を読み取ることによって前記第２制御器の動作状態を監視する第１のステップと、前記第１制御器が、前記第２制御器の動作状態を判断する第２のステップと、前記第１制御器が、前記第２制御器が暴走状態と判断した場合に、前記第２制御器のリセット時にプログラムの実行開始先を前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを前記第１制御器のプログラムで設定可能な前記レジスタの設定を前記第２ＲＯＭメモリに切り換える第３のステップと、前記第１制御器が、前記第２制御器をリセットする第４のステップと、前記第２制御器が、前記第２ＲＯＭメモリに格納されたプログラムを実行する第５のステップとを含む。
【００７１】
さらに、前記第５のステップにおいて、前記不揮発性メモリの全体プログラムの書き換え用プログラムを実行する。
【００７２】
本発明では、全体プログラムの書き換え用プログラムを実行するに際し、前記第１制御器の前記通信プログラムを利用するようにすれば、既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリに書き込むことができる方法等を用いることで、不揮発性メモリの全体プログラムの書き換えが可能である。
【００７３】
また、このデータ書き込み方法において、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、前記通信データの格納用に設けられた揮発性メモリを準備するステップと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、前記第１制御器のプログラムがあらかじめ格納されたＲＯＭメモリを準備するステップと、前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、前記第２制御器の全体プログラムの実行を開始するかしないかの切り換えを操作者が設定可能な外部入力端子を準備するステップと、前記外部入力端子の設定により、前記第２制御器の全体プログラムの実行を開始しないようにする第１のステップと、前記ＲＯＭメモリに格納されたプログラムを実行する第２のステップとを含む。
【００７４】
さらに、前記第２のステップにおいて、前記不揮発性メモリの全体プログラムの書き換え用プログラムを実行する。
【００７５】
本発明では、全体プログラムの書き換え用プログラムを実行するに際し、前述の第１ＣＰＵから起動する場合における全体プログラムの書き込み方法、及び既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリに書き込むことができる方法等を用いることで、不揮発性メモリの全体プログラムの書き換えが可能である。
【００７６】
さらに、情報処理装置の起動時において、前記第１制御器と前記第２制御器が同時に実行開始し、前記第２制御器の動作状態が前記第１制御器の動作に影響を与える場合において極めて有効である。
【００７７】
（第１ＣＰＵと第２ＣＰＵのプログラムがいずれも未格納もしくは格納されているもののその動作が不完全な状態の場合）
このデータ書き込み方法において、前記ホストコンピュータとの間で前記パラレルデータ通信を行う通信器を準備するステップと、前記通信データの格納用に設けられた揮発性メモリを準備するステップと、前記通信器の通信処理、および前記揮発性メモリに格納される前記通信データの情報処理を制御する第１制御器（ＣＰＵ）を準備するステップと、前記第１制御器のプログラムがあらかじめ格納された第１ＲＯＭメモリを準備するステップと、前記装置の全体を制御する第２制御器（ＣＰＵ）を準備するステップと、前記第２制御器の全体プログラムの格納用に設けられた不揮発性メモリを準備するステップと、前記第１制御器または前記第２制御器の別の実行可能なプログラムがあらかじめ格納された第２ＲＯＭメモリを準備するステップと、前記第１制御器または前記第２制御器のプログラムの実行開始先を前記第１ＲＯＭメモリと第２ＲＯＭメモリのいずれにするか、または前記不揮発性メモリと前記第２ＲＯＭメモリのいずれにするかの切り換えを操作者が設定可能な第１外部入力端子を準備するステップと、前記第１制御器または前記第２制御器のプログラムの実行を開始するかしないかの切り換えを操作者が設定可能な第２外部入力端子を準備するステップと、前記第２外部入力端子の設定により、前記第１制御器のプログラムの実行を開始しないようにする第１のステップと、前記第１外部入力端子の設定により、前記第２制御器の実行開始先が前記不揮発性メモリか前記第２ＲＯＭメモリかを判断する第２のステップと、前記第２制御器の実行開始先が前記第２ＲＯＭメモリと判断すると、前記第２ＲＯＭメモリに格納されたプログラムを実行する第３のステップとを含む。
【００７８】
さらに、前記第３のステップにおいて、前記不揮発性メモリの全体プログラム及び前記第１ＲＯＭメモリ（開発時においてＲＡＭメモリ）の書き換え用プログラムを実行する。
【００７９】
本発明では、全体プログラムの書き換え用プログラムを実行するに際し、あらかじめ前記不揮発性メモリ等に格納しておいた通信用プログラム等を前記第１ＲＯＭメモリ（開発時においてＲＡＭメモリ）に格納し、前記第１制御器を起動して通信用プログラムを利用するようにすれば、既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリに書き込むことができる方法等を用いることで、不揮発性メモリの全体プログラムの書き換えが可能である。
【発明の効果】
【００８０】
本発明によれば、複数のＣＰＵを使用したシステムにおいても、ＣＰＵが暴走することなく、容易にしかも確実に全体プログラムを不揮発性メモリに迅速に書き込むことができる。
【００８１】
また本発明によれば、全体プログラムの格納状態を判断するための格納状態判断コードを、全体プログラムの構成上、固定位置にしたくない場合において、全体プログラムの構成を再構築する必要がなくなる。あるいは全体プログラムの構成を再構築する場合にも制限を受けることがなくなる。
【発明を実施するための最良の形態】
【００８２】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００８３】
図１は、本発明の情報処理装置の実施の形態である光ディスク装置の構成を示すブロック図である。図１において、一本線の矢印は制御の流れを示し、二本線の矢印はデータの流れを示す。
【００８４】
この光ディスク装置１は、ホストコンピュータＨとの間で、パラレルデータ通信を介して受信する通信データを光ディスクＤに書き込むとともに、光ディスクＤから読み出したデータをパラレルデータ通信によりホストコンピュータＨに送信するという情報処理を実施している。
【００８５】
光ディスク装置１は、光ディスク駆動器２と、光ディスク制御器３と、通信器４と、不揮発性メモリ６と、揮発性メモリ７と、外部入力端子８とを備える。この光ディスク装置１では、光ディスク制御器３は、光ディスク装置１に組み込まれる２つのＣＰＵで（実行されるソフトウェアで）制御される。
【００８６】
光ディスク駆動器２は、光ディスクＤに対して、光ピックアップ（図示省略）を介してデータの読み書きを実施する。通信器４は、ホストコンピュータＨとの間でパラレルデータ通信を実施する。この光ディスク装置１では、パラレルデータ通信の１種であるＡＴＡＰＩ（Attachment Packet Interface）規格のパラレルデータ通信を実施しているが、他のパラレルデータ通信規格に基づいて通信してもよい。
【００８７】
不揮発性メモリ６は、いわゆるフラッシュＲＯＭから構成されており、光ディスク装置１の全体プログラム（いわゆるファームウェア）が不揮発状態（電源０ｆｆでも消滅しない状態）で格納される記録器である。なお、ここでいう全体プログラムには、光ディスク駆動器２の駆動用プログラムも含まれる。
【００８８】
なお、この全体プログラムは光ディスク制御器３に組み込まれるＣＰＵ３１で実行される。
【００８９】
なお、通信器４の通信用プログラムは、光ディスク制御器３に搭載された内蔵のＲＯＭメモリ３７に格納されており、光ディスク制御器３に組み込まれるＣＰＵ３４で実行される。
【００９０】
揮発性メモリ７は、ＳＤＲＡＭ等から構成されており、通信器４を介してホストコンピュータＨとの間でやりとりされる通信データを一時的に記録（バッファリング）する揮発性（電源０ｆｆで消滅する）の記録器であって、光ディスク装置１の通常動作時においては、上記通信データのバッファリング処理を実施する。
【００９１】
なお、内部レジスタ７１は、ＣＰＵ３１とＣＰＵ３４で共用可能な揮発性メモリ７上に存在し、ＣＰＵ３１の動作状態を示す情報が設定される。
【００９２】
光ディスク制御器３は、光ディスク装置１全体を制御する制御機器であって、ＣＰＵ３１と、駆動制御部３２と、インターフェース制御部３３と、ＣＰＵ３４と、ＲＯＭメモリ３５と、ＲＯＭメモリ３７と、内部レジスタ３８，３９とを有する。
【００９３】
ＣＰＵ３１は、この光ディスク装置１全体を統括制御する。駆動制御部３２は、ＣＰＵ３１の指示に基づいて、光ディスク駆動器２の駆動制御を行う。ＣＰＵ３４は、ＲＯＭメモリ３７に格納されている通信器４の通信用プログラム等を実行する。インターフェース制御部３３は、ＣＰＵ３４の指示に基づいて、通信器４が実施するパラレルデータ通信（ＡＴＡＰＩ通信）の通信プロトコルの制御を行う。ＲＯＭメモリ３５は、例えば不揮発性メモリ６の全体プログラムの書き換え用プログラムや、不揮発性メモリ６にデータ（光ディスク装置１の全体プログラム等）が格納されているか否かの判断を行う格納状態判断部の機能を有するプログラム等が格納されている。ＲＯＭメモリ３７は、通信器４の通信用プログラム等が格納されている。内部レジスタ３８，３９は、ＣＰＵ３１（またはＣＰＵ３４）のリセット（実行開始）時にプログラムの実行開始先を不揮発性メモリ６と揮発性メモリ７のいずれにするかの切り換えをＣＰＵ３４のプログラムで設定可能な機能、あるいはＣＰＵ３１（またはＣＰＵ３４）の実行開始指令をＣＰＵ３４（またはＣＰＵ３１）のプログラムで設定可能な機能を有する。
【００９４】
外部入力端子８は、例えば、設定スイッチ８１と設定スイッチ８２で構成されており、光ディスク装置１の操作者によってこの設定スイッチ８１と設定スイッチ８２のオン／オフ設定が変えられることで、光ディスク制御器３に組み込まれるＣＰＵ３１またはＣＰＵ３４の実行開始先や、あるいは実行開始するか否かを切換可能なハードウェアのスイッチである。
【００９５】
以下、この光ディスク装置１における不揮発性メモリ６へのデータ（全体プログラム）書き込み動作（書き込み制御方法）を説明する。
【００９６】
光ディスク装置１は、不揮発性メモリ６上に全体プログラムが未格納もしくは格納されているが不具合がある状態において、２ＣＰＵシステムの場合、それぞれのＣＰＵの起動手順や動作状態が他のＣＰＵの動作に影響を与えてしまう。そのため、全体プログラムを動作させてホストコンピュータＨから全体プログラムをダウンロードすることができない。そこで次のようにして全体プログラムをホストコンピュータＨからダウンロードして不揮発性メモリ６にインストールする。
【００９７】
本発明の光ディスク装置１が実施する全体プログラムの書き込み動作とは、光ディスク装置１の製造作業途中であって、この光ディスク装置１の全体プログラムが不揮発性メモリ６に未格納である状態において、新規に全体プログラムを不揮発性メモリ６に書き込む動作と、全体プログラムに不具合のある光ディスク装置１の修理中において全体プログラムを不揮発性メモリ６に更新書き込みする動作のことである。したがって、書き込み動作には、格納後の全体プログラムに何らかの不具合が生じしているか否かを判断する動作と、不具合が生じた全体プログラムを正常なものに更新する動作とを含む。
【００９８】
光ディスク装置１において、全体プログラムの書き込み動作は、光ディスク装置１のリセット時に実施される。なお、光ディスク装置１のリセット（起動）には、光ディスク装置１の電源が落とされた（ＯＦＦ）のち、再起動（ＯＮ）する際のリセット（以下、ハードリセットという）と、光ディスク装置１の電源は維持された状態で、不揮発性メモリ６内の全体プログラムやホストコンピュータＨがソフトウェア上に実施するリセット（以下、ソフトリセットという）とが存在する。
【００９９】
まず、全体プログラムの書き込み動作の説明を行うまえに、外部入力端子８の設定について説明する。外部入力端子８には、複数のＯＮ／ＯＦＦ設定スイッチ８１，８２が設けられている。各設定スイッチ８１，８２には、光ディスク制御器３に組み込まれるＣＰＵ３１またはＣＰＵ３４の実行開始先を切り換える設定スイッチ８１と、ＣＰＵ３１またはＣＰＵ３４の実行を開始するか否かを切り換える設定スイッチ８２とを有する。
【０１００】
全体プログラムを書き込む際には、光ディスク装置１の操作者（この場合は製造担当者）は、予め設定スイッチ８１，８２を次のように設定する。
・設定スイッチ８１をＣＰＵ３１の実行開始先がＲＯＭメモリ３５（または揮発性メモリ７）になるように設定する。
・設定スイッチ８２をＣＰＵ３１の実行を開始しないように設定する。
【０１０１】
このような外部入力端子８の設定にしたのち、全体プログラムの書き込み動作が実施される。この書き込み動作は、光ディスク装置１がリセットされたことを制御上のトリガーにしてその動作を開始する。
【０１０２】
（ＣＰＵ３１から起動する場合）
請求項１〜３，１５〜１７に対応し、ＣＰＵ３４は第１制御器、ＲＯＭメモリ３７は第１ＲＯＭメモリ、ＣＰＵ３１は第２制御器、ＲＯＭメモリ３５は第２ＲＯＭメモリに、それぞれ相当している。
【０１０３】
全体プログラムの書き込み動作は、図４のフローチャートに示すステップを実施する。
【０１０４】
まず、光ディスク制御器３は、外部入力端子８の設定スイッチ８１の設定により、ＣＰＵ３１の実行開始先が不揮発性メモリ６かＲＯＭメモリ３５かを判断する（Ｓ４０１）。ＣＰＵ３１の実行開始先がＲＯＭメモリ３５と判断すると、ＲＯＭメモリ３５に格納された不揮発性メモリ６の全体プログラムの書き換え用プログラムを実行する（Ｓ４０２）。また、Ｓ４０１にて、ＣＰＵ３１の実行開始先が不揮発性メモリ６の場合、不揮発性メモリ６の全体プログラムが実行され（Ｓ４０４）、プログラムが未格納等の場合にはＣＰＵ３１が暴走する。
【０１０５】
この書き換え用プログラムにおいて、ＣＰＵ３４を起動し通信プログラムを実行するようにすれば（Ｓ４０３）、既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータＨから情報処理装置に全体プログラムを送信し，容易に全体プログラムを不揮発性メモリ６に書き込むことができる方法等を用いることで、不揮発性メモリ６の全体プログラムを書き換えることができる。
【０１０６】
（ＣＰＵ３４から起動する場合）
請求項４，５，１８，１９に対応し、ＣＰＵ３４は第１制御器、ＣＰＵ３１は第２制御器、内部レジスタ３８は第１レジスタ、内部レジスタ３９は第２レジスタに、それぞれ相当している。
【０１０７】
全体プログラムの書き込み動作は、図５のフローチャートに示すステップを実施する。
【０１０８】
まず、ＣＰＵ３４は、ＲＯＭメモリ３７にあらかじめ組み込んでおいたＣＰＵ３１で実行可能な不揮発性メモリ６の全体プログラムの書き換え用プログラムを、ＣＰＵ３４とＣＰＵ３１で共用可能な揮発性メモリ７に格納（コピー）する（Ｓ５０１）。さらにＣＰＵ３４は、リセット（実行開始）時にプログラムの実行開始先を不揮発性メモリ６と揮発性メモリ７のいずれにするかの切り換えに対し、ＣＰＵ３４のプログラムで設定可能な内部レジスタ３８の設定を揮発性メモリ７に切り換える（Ｓ５０２）。さらにＣＰＵ３４は、ＣＰＵ３１の実行開始指令をＣＰＵ３４のプログラムで設定可能な内部レジスタ３９を設定してＣＰＵ３１を実行開始させる（Ｓ５０３）。さらに、ＣＰＵ３１は、揮発性メモリ７に格納された不揮発性メモリ６の全体プログラムの書き換え用プログラムを実行する（Ｓ５０４）。
【０１０９】
この書き換え用プログラムにおいて、ＣＰＵ３４の通信用プログラムを利用するようにすれば（Ｓ５０５）、既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリ６に書き込むことができる方法等を用いることで、不揮発性メモリ６の全体プログラムを書き換えることができる。
【０１１０】
（ＣＰＵ３１とＣＰＵ３４が同時に起動する場合）
請求項６〜１０，２０〜２４に対応し、ＣＰＵ３４は第１制御器、ＲＯＭメモリ３７は第１ＲＯＭメモリ、ＣＰＵ３１は第２制御器、ＲＯＭメモリ３５は第２ＲＯＭメモリに、それぞれ相当している。
【０１１１】
全体プログラムの書き込み動作は、図６のフローチャートに示すステップを実施する。
【０１１２】
まず、ＣＰＵ３４は、ＣＰＵ３４とＣＰＵ３１で共用可能な揮発性メモリ７に設定されたＣＰＵ３１の動作状態を示す情報を読み取ることによってＣＰＵ３１の動作状態を監視する（Ｓ６０１）。この時、ＣＰＵ３１は、プログラムが未格納等の場合、暴走する。さらにＣＰＵ３４は、ＣＰＵ３１の動作状態を判断する（Ｓ６０２）。さらにＣＰＵ３４は、ＣＰＵ３１が暴走状態と判断した場合に、ＣＰＵ３１のリセット時にプログラムの実行開始先を不揮発性メモリ６とＲＯＭメモリ３５のいずれにするかの切り換えをＣＰＵ３４のプログラムで設定可能な内部レジスタ３８の設定をＲＯＭメモリ３５に切り換える（Ｓ６０３）。さらにＣＰＵ３４は、ＣＰＵ３１をリセットする（Ｓ６０４）。さらにＣＰＵ３１は、ＲＯＭメモリ３５に格納された不揮発性メモリ６の全体プログラムの書き換え用プログラムを実行する（Ｓ６０５）。なお、Ｓ６０２にて、ＣＰＵ３１が暴走状態ではないと判断した場合、通常の実行が行われる（Ｓ６０７）。
【０１１３】
この書き換え用プログラムにおいて、ＣＰＵ３４の通信プログラムを利用するようにすれば（Ｓ６０６）、既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータＨから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリ６に書き込むことができる方法等を用いることで、不揮発性メモリ６の全体プログラムの書き換えることができる。
【０１１４】
また、全体プログラムの書き込み動作は、図７のフローチャートに示すステップを実施する。
【０１１５】
まず、光ディスク制御器３は、外部入力端子８の設定スイッチ８２の設定により、ＣＰＵ３１の全体プログラムの実行を開始しないようにする（Ｓ７０１）。ＲＯＭメモリ３７に格納された不揮発性メモリ６の全体プログラムの書き換え用プログラムを実行する（Ｓ７０２）。さらにＣＰＵ３１は、不揮発性メモリ６の全体プログラムの書き換え用プログラムを実行する（Ｓ７０３）。
【０１１６】
この書き換え用プログラムにおいて、前述のＣＰＵ３４が先に実行される場合における全体プログラムを書き込む方法、及び既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリ６に書き込むことができる方法等を用いることで、不揮発性メモリ６の全体プログラムの書き換えが可能である。
【０１１７】
（ＣＰＵ３１とＣＰＵ３４のプログラムがいずれも未格納もしくは格納されているもののその動作が不完全な状態の場合）
請求項１１〜１４，２５，２６に対応し、ＣＰＵ３４は第１制御器、ＲＯＭメモリ３７は第１ＲＯＭメモリ、ＣＰＵ３１は第２制御器、ＲＯＭメモリ３５は第２ＲＯＭメモリ、外部入力端子８の設定スイッチ８１は第１外部入力端子、外部入力端子８の設定スイッチ８２は第２外部入力端子に、それぞれ相当している。
【０１１８】
全体プログラムの書き込み動作は、図８のフローチャートに示すステップを実施する。
【０１１９】
まず、光ディスク制御器３が、外部入力端子８の設定スイッチ８２の設定により、ＣＰＵ３４のプログラムの実行を開始しないようにする（Ｓ８０１）。さらに、光ディスク制御器３が、外部入力端子８の設定スイッチ８１の設定により、ＣＰＵ３１の実行開始先が不揮発性メモリ６かＲＯＭメモリ３５かを判断する（Ｓ８０２）。さらにＣＰＵ３１の実行開始先がＲＯＭメモリ３５と判断すると、ＲＯＭメモリ３５に格納された不揮発性メモリ６の全体プログラム及びＲＯＭメモリ３７（開発時においてＲＡＭメモリ）の書き換え用プログラムを実行する（Ｓ８０３）。Ｓ８０２にて、ＣＰＵ３１の実行開始先が不揮発性メモリ６の場合、不揮発性メモリ６の全体プログラムを実行する（Ｓ８０４）。プログラムが未格納等の場合、ＣＰＵ３１が暴走する。
【０１２０】
この書き換え用プログラムにおいて、あらかじめ不揮発性メモリ６等に格納しておいた通信用プログラム等をＲＯＭメモリ３７（開発時においてＲＡＭメモリ）に格納し、ＣＰＵ３４を起動して通信用プログラムを利用するようにすれば（Ｓ８０５）、既に考案されている１ＣＰＵシステムにおいてパラレルデータ通信によりホストコンピュータＨから情報処理装置に全体プログラムを送信し、容易に全体プログラムを不揮発性メモリに書き込むことができる方法等を用いることで、不揮発性メモリ６の全体プログラムの書き換えが可能である。
【０１２１】
また、以下に、不揮発性メモリ６の全体プログラムの書き換え用プログラムが、不揮発性メモリ６の格納状態を判断する格納状態判断部を備え、格納状態判断コードの格納位置を、不揮発性メモリ６の全体プログラムの構成上、固定位置にしたくない場合における、本発明を実施するための最良の形態について、図３を参照しながら説明する。
【０１２２】
図３（ａ）は、不揮発性メモリ６の全体プログラムであるＦ／Ｗの全体領域（チェックサムコードを除く）のチェックサムコードをＦ／Ｗの最後の領域の固定位置に格納しておく場合の例を示す。これに対し、図３（ｂ）は、不揮発性メモリ６の全体プログラムであるＦ／Ｗの全体領域のチェックサムコードが、あらかじめＲＯＭメモリ３５に固定値として格納しておく場合の例を示す。本発明による後者の例では、Ｆ／Ｗのチェックサム計算結果が、あらかじめＲＯＭメモリに格納されたチェックサムコードになるよう、全体プログラムの任意の領域にコードを埋め込む。
【０１２３】
本発明による手法を用いることにより、Ｆ／Ｗの構成上、チェックサムコードを固定位置に置きたくない場合において、Ｆ／Ｗの任意の空き領域にチェックサムコードを埋め込むことと等価となり、従来システムにあらたに機能追加する場合にもＦ／Ｗの構成を再構築する必要がなくなる。また、コスト等を考慮し、Ｆ／Ｗを格納する不揮発性メモリのサイズを小さくする等により、Ｆ／Ｗの構成を再構築する場合にも（空き領域さえあれば）制限を受けなくてすむ。
【０１２４】
なお、Ｆ／Ｗの全体領域を対象にチェックサム計算を実施しなくても、予め特定しておいたＦ／Ｗの一部領域だけをチェックサム計算の対象にすれば、チェックサム計算時間が必要最小限となり、その分、制御動作が迅速化する。
【産業上の利用可能性】
【０１２５】
本発明の情報処理装置およびデータ書き込み方法は、光ディスク装置といったホストコンピュータとの間で送受信する通信データの情報処理を行う構成に有用である。
【図面の簡単な説明】
【０１２６】
【図１】本発明の実施の形態における光ディスク装置の構成を示すブロック図である。
【図２】本発明の課題における１ＣＰＵシステム及び２ＣＰＵシステムの光ディスク装置の構成を示すブロック図である。
【図３】本発明の実施の形態のＦ／Ｗのチェックサムコードが固定位置の場合と固定値の場合を示す概念（イメージ）図である。
【図４】本発明の実施の形態の光ディスク装置の書き込み動作の第１の動作を示すフローチャートである。
【図５】本発明の実施の形態の光ディスク装置の書き込み動作の第２の動作を示すフローチャートである。
【図６】本発明の実施の形態の光ディスク装置の書き込み動作の第３の動作を示すフローチャートである。
【図７】本発明の実施の形態の光ディスク装置の書き込み動作の第４の動作を示すフローチャートである。
【図８】実施の形態の光ディスク装置の書き込み動作の第５の動作を示すフローチャートである。
【符号の説明】
【０１２７】
１  光ディスク装置
２  光ディスク駆動器
３  光ディスク制御器
３１  ＣＰＵ（第２制御器）
３２  駆動制御部
３３  インターフェース制御部
３４  ＣＰＵ（第１制御器）
３５  ＲＯＭメモリ（第２ＲＯＭメモリ）
３７  ＲＯＭメモリ（第１ＲＯＭメモリ）
３８  内部レジスタ（第１レジスタ）
３９  内部レジスタ（第２レジスタ）
４  通信器
６  不揮発性メモリ
７  揮発性メモリ
７１  内部レジスタ
８  外部入力端子
８１  外部入力端子の設定スイッチ（第１外部入力端子）
８２  外部入力端子の設定スイッチ（第２外部入力端子）
Ｈ  ホストコンピュータ
【図１】
2007058499.tif 000003
【図２】
2007058499.tif 000004
【図３】
2007058499.tif 000005
【図４】
2007058499.tif 000006
【図５】
2007058499.tif 000007
【図６】
2007058499.tif 000008
【図７】
2007058499.tif 000009
【図８】
2007058499.tif 000010