JP4095767B2 - ディスクドライブ装置 - Google Patents
ディスクドライブ装置 Download PDFInfo
- Publication number
- JP4095767B2 JP4095767B2 JP2000344699A JP2000344699A JP4095767B2 JP 4095767 B2 JP4095767 B2 JP 4095767B2 JP 2000344699 A JP2000344699 A JP 2000344699A JP 2000344699 A JP2000344699 A JP 2000344699A JP 4095767 B2 JP4095767 B2 JP 4095767B2
- Authority
- JP
- Japan
- Prior art keywords
- application program
- program
- nonvolatile memory
- area
- disk drive
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
【発明の属する技術分野】
本発明は、不揮発性メモリを含むマイクロコンピュータを搭載したディスクドライブ装置におけるアプリケーションプログラムのチェック技術に関し、特に、フラッシュメモリなどの不揮発性メモリに格納されたアプリケーションプログラムにおけるサム値チェックに適用して有効な技術に関するものである。
【0002】
【従来の技術】
本発明者が検討したところによれば、フラッシュメモリが備えられたマイクロコンピュータ、いわゆるフラッシュメモリ内蔵マイコンを搭載したディスクドライブ装置として、ATAPI(Advanced Technology Attachment Packet Interface)やSCSI(Small Computer System Interface)などのインタフェース仕様によるDVD−ROM(Digital Versatile Disk−Read Only Memory)ドライブ装置、CD−ROM(Compact Disc−ROM)ドライブ装置などがある。
【0003】
たとえば、フラッシュメモリ内蔵マイコンを搭載したATAPI DVD−ROMドライブ装置においては、ホストコンピュータとドライブ装置とをATAPIインタフェースで接続した状態で、ホストコンピュータからアプリケーションプログラムデータをドライブ装置に転送し、フラッシュメモリの書き換えを行う。また、フラッシュメモリの消去および書き込みはフラッシュメモリのブロック毎に一括して行う方法が採られている。
【0004】
このようなDVD−ROMドライブ装置では、フラッシュメモリの書き換え中に電源遮断などの事故が発生した場合に備えて、フラッシュメモリのブロックの一部分を書き換え禁止領域とし、この書き換え禁止領域に、アプリケーションプログラム領域の正当性を検査し、アプリケーションプログラム領域が破壊されていた場合には、ホストコンピュータからアプリケーションプログラムデータを受け取って、アプリケーションプログラム領域を書き換えるプログラムを配置する方式がある。この書き換え禁止領域に配置したプログラムをリブートプログラムと呼ぶ。
【0005】
たとえば、ブロック0〜3がそれぞれ1KB、ブロック4が28KB、およびブロック6,7が32KBにそれぞれ割り付けられたフラッシュメモリでは、ブロック0〜3の4KBにリブートプログラムが配置されており、この領域を書き換え禁止領域にする。
【0006】
また、アプリケーションプログラムはブロック4〜7に配置される。ブロック7の最後には、ブロック4〜7のサム値が格納される。このようなブロック割り当てにおいて、パワーオン時にリブートプログラムは、ブロック4〜7のサム値を計算し、ブロック7に予め格納されているサム値と一致するか比較することによって、ブロック4〜7のアプリケーションプログラムが正しいか否かを検査する。もし、アプリケーションプログラムが正しくない場合は、ホストコンピュータからアプリケーションプログラムデータを受け取って再書き込みを行う。
【0007】
なお、このようなフラッシュメモリ内蔵マイコンを搭載したDVD−ROMドライブ装置などに関する技術としては、たとえば国際公開WO97/38367号公報「ディスクドライブ装置及びコンピュータ装置」に記載される技術などが挙げられる。
【0008】
【発明が解決しようとする課題】
ところが、上記のようなDVD−ROMドライブ装置では、次のような問題点があることが本発明者により見い出された。
【0009】
近年、DVD−ROMドライブ装置の需要の急増化に伴い、ファームウェアのプログラムサイズも大きくなる傾向にあり、このファームウェアのプログラムサイズが大きくなることによってサム値の計算時間も長くなってしまう。
【0010】
DVD−ROMドライブ装置などのATAPIデバイスは、電源投入時、あるいはホストコンピュータなどからリセット信号を受け取った際にある規定の処理(マスタ/スレーブネゴシエーションなど)を定められた時間内に行うようにATAPI規格で定められている。
【0011】
しかしながら、ファームウェアのプログラムサイズが大きくなるとによってサム値の計算に時間がかかってしまうと、前述したATAPI規格に定められた時間内に、アプリケーションプログラムのサム値を計算した後に該アプリケーションプログラム領域のプログラムを実行することが困難となってしまうという問題がある。
【0012】
そこで、本発明の目的は、プログラムサイズが大きいアプリケーションプログラムであっても、短時間で確実にATAPI規格に定められた初期化動作を行うことのできるディスクドライブ装置を提供するものである。
【0013】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【0014】
【課題を解決するための手段】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【0015】
すなわち、本発明によるディスクドライブ装置は、不揮発性メモリに格納されるアプリケーションプログラムを、第1のアプリケーションプログラムと第2のアプリケーションプログラムとに分割し、該第1のアプリケーションプログラムはATAPI規格に定められた初期化を行う機能を有し、不揮発性メモリの書き換え可能領域に配置され、第2のアプリケーションプログラムは該第1のアプリケーションプログラム以外のすべての機能を有し、不揮発性メモリの書き換え可能領域に配置され、不揮発性メモリの書き換え禁止領域に、第1、第2のアプリケーションプログラムの正当性を検査するリブートプログラムが配置され、リブートプログラムが、第1、第2のアプリケーションプログラムの正当性を検査する際には、最初に第1のアプリケーションプログラムが配置されたブロックのサム値を検査し、該第1のアプリケーションプログラムが正常であれば第1のアプリケーションプログラムを起動させて第1のアプリケーションプログラムによってATAPI規格に定められた初期化を行った後、第2のアプリケーションプログラムが配置されたブロックのサム値を検査し、正常であれば第2のアプリケーションプログラムを起動させるものである。
【0016】
また、本発明によるディスクドライブ装置は、不揮発性メモリに格納されるアプリケーションプログラムを、第1のアプリケーションプログラムと第2のアプリケーションプログラムとに分割し、該第1のアプリケーションプログラムは、ATAPI規格に定められた初期化を行う機能を有し、前記不揮発性メモリの書き換え可能領域に配置され、該第2のアプリケーションプログラムは、第1のアプリケーションプログラム以外のすべての機能を有し、不揮発性メモリの書き換え可能領域に配置され、該不揮発性メモリの書き換え禁止領域に第1、第2のアプリケーションプログラムの正当性を検査するリブートプログラムが配置され、該リブートプログラムが、第1、第2のアプリケーションプログラムの正当性を検査する際には、最初に第1のアプリケーションプログラムが配置されたブロックのサム値を検査し、第1のアプリケーションプログラムが正常であれば第1のアプリケーションプログラムを起動させて第1のアプリケーションプログラムによってATAPI規格に定められた初期化を行い、第2のアプリケーションプログラムの起動が必要になると、第2のアプリケーションプログラムが配置されたブロックのサム値を検査し、正常であれば第2のアプリケーションプログラムを起動させるものである。
【0017】
さらに、本発明によるディスクドライブ装置は、不揮発性メモリに格納されるアプリケーションプログラムを、第1のアプリケーションプログラムと第2のアプリケーションプログラムとに分割し、該第1のアプリケーションプログラムは、ATAPI規格に定められた初期化を行う機能を有し、不揮発性メモリの書き換え可能領域に配置され、該第2のアプリケーションプログラムは、第1のアプリケーションプログラム以外のすべての機能を有し、不揮発性メモリの書き換え可能領域に配置され、不揮発性メモリの書き換え禁止領域に第1、第2のアプリケーションプログラムの正当性を検査するリブートプログラムが配置され、該リブートプログラムが、第1、第2のアプリケーションプログラムの正当性を検査する際には、最初に第1のアプリケーションプログラムが配置されたブロックのサム値を検査し、第1のアプリケーションプログラムが正常であれば第1のアプリケーションプログラムを起動させて第1のアプリケーションプログラムによってATAPI規格に定められた初期化を行い、アプリケーションプログラムのうち、任意の第2のアプリケーションプログラムの起動が必要になると、任意の第2のアプリケーションプログラムが配置されたブロックのサム値を検査し、正常であれば該ブロックに配置された第2のアプリケーションプログラムだけを起動させるものである。
【0018】
また、本発明によるディスクドライブ装置は、不揮発性メモリの書き換え可能領域にアプリケーションプログラムが配置され、該アプリケーションプログラムの先頭には、書き換え可能領域のそれぞれのブロックにおける先頭と末尾とに配置された少なくとも1バイトのアプリケーションプログラムの待避データが配置され、不揮発性メモリの書き換え禁止領域に、アプリケーションプログラムの正当性を検査するリブートプログラムが配置され、該リブートプログラムが、アプリケーションプログラムの正当性を検査する際には、待避データと書き換え可能領域のそれぞれのブロックにおける先頭と末尾とに配置された少なくとも1バイトのアプリケーションプログラムデータとが一致するか否かを照合し、一致した場合にはアプリケーションプログラムを起動させるものである。
【0019】
さらに、本発明によるディスクドライブ装置は、不揮発性メモリの書き換え可能領域にアプリケーションプログラムが配置され、該不揮発性メモリの書き換え禁止領域に、アプリケーションプログラムの正当性を検査するリブートプログラムが配置され、該リブートプログラムが、アプリケーションプログラムの正当性を検査する際には、アプリケーションプログラムが配置されていないブロックがある場合でもアプリケーションプログラムが配置されているブロックのサム値だけ検査し、正常であればブロックに配置された第2のアプリケーションプログラムを起動させるものである。
【0020】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【0021】
(実施の形態1)
図1は、本発明の実施の形態1によるディスクドライブ装置の機能ブロック図、図2は、本発明の実施の形態1によるディスクドライブ装置に設けられたマイクロコンピュータに備えられたフラッシュメモリのメモリマップを示す説明図、図3は、本発明の実施の形態1による起動時のフラッシュメモリにおけるプログラムの起動手順を示すフローチャートである。
【0022】
本実施の形態1において、ディスクドライブ装置は、たとえば、フラッシュメモリ内蔵マイコンが搭載されたATAPI DVD−ROMドライブ装置である。
【0023】
このディスクドライブ装置は、情報が記憶されているDVD−ROMディスク1、および該DVD−ROMディスク1に記憶されている情報を再生するDVD−ROM再生装置2などから構成されている。
【0024】
DVD−ROM再生装置2は、ATAPIバスを介して双方向に信号伝送可能にホストコンピュータ3に接続されている。DVD−ROM再生装置2は、マイクロコンピュータ4、ディジタル信号処理部5、プリアンプ6、ディスクモータ7、モータドライバ8、ピックアップ9、ならびにキャッシュDRAM10などから構成されている。
【0025】
DVD−ROMディスク1は、ディスクモータ7によって回転駆動される。ピックアップ9は、回転駆動されるDVD−ROMディスク1にレーザ光を照射し、その反射光をフォトダイオードからなる受光部で受光して光学変換して、DVD−ROMディスク1に記憶されている情報を読み出す。モータドライバ8は、ディスクモータ7の回転速度を制御する。
【0026】
また、ディジタル信号処理部5は、データストローブ回路11、サーボ回路12、DVD用信号処理回路13、RAMコントローラ14、CD用信号処理回路15、およびATAPIインタフェース回路16などから構成されている。
【0027】
データストローブ回路11は、データスライス回路、ならびにPLL(Phase Locked Loop)回路などから構成され、ピックアップ9から読み出されてプリアンプ6によって増幅された読み出し信号(高周波信号)を、2値(デジタル)化し、その2値化したデータに基づいてPLLクロックを出力する。
【0028】
サーボ回路12は、ピックアップ9に備えられたスレッドモータを制御して該ピックアップ9の位置を制御する。RAMコントローラ14は、キャッシュDRAM10に対するアクセス制御を行う。
【0029】
ATAPIインタフェース回路16は、パーソナルコンピュータなどのホストコンピュータ3に、ディスクドライブ装置などの機器をATAインタフェースに接続する際に用いられているインタフェースであり、ATAPIインタフェースに準拠したインタフェース制御を行う。
【0030】
DVD用信号処理回路13、およびCD用信号処理回路15は、EFM復調機能、サブコード復調機能、誤り訂正機能などをそれぞれ有する。EFM復調機能は、速度制御機能で検出された同期信号をもとに、EFM(Eight−to−Fourteen Modulation)変調されている読み出し信号を復調する。
【0031】
サブコード復調機能は、EFM復調機能に復調された読み出し信号の各フレームに含まれるサブコードを復調する。誤り訂正機能は、C1,C2の2系列のリードソロモン符号を組み合わせたCIRCという誤り訂正符号を用いて行うエラー訂正であり、その誤り訂正符号はフレームのパリティに対応される。
【0032】
データストローブ回路11によって2値化されディジタル信号は、EFM復調機能、サブコード復調機能によって処理され、かつC1,C2訂正が行われた記録情報は、RAMコントローラ14の制御により、キャッシュDRAM10に保持される。
【0033】
このキャッシュDRAM10に保持された読み出しデータは、単数もしくは複数セクタ単位でATAPIインタフェース回路16からホストコンピュータ3に出力される。
【0034】
マイクロコンピュータ4は、フラッシュメモリ(不揮発性メモリ)17、RAM18、プロセッサ、8ビットタイマ、16ビットタイマ、A/D変換器、SCI回路、ならびに入出力ポートなどの回路モジュールから構成されている。これら回路モジュールは、アドレスバス、データバスおよび制御信号バスからなる内部バスを共有してなる。
【0035】
フラッシュメモリ17は、電気的消去および書き込み可能な不揮発性メモリであり、プロセッサの動作プログラムや定数データを格納するためのメモリである。さらに、フラッシュメモリ17は、その記憶領域が所定のブロック単位で一括消去可能にされ、ブロック単位でデータを書き換え可能な構成を有する。
【0036】
プロセッサは、その動作プログラムに従って、プリアンプ6、およびディジタル信号処理部5などを制御する。RAM18はプロセッサのワーク領域などに利用されるワークRAMとされる。
【0037】
また、プロセッサが、ディジタル信号処理部5にアクセスするためのアクセス制御信号は、該プロセッサから直接出力されるように構成されている。プロセッサは、RAMコントローラ14に制御情報を設定し、RAMコントローラ14を介して、あるいは直接キャッシュDRAM10をアクセスすることができる。
【0038】
このように構成されるDVD−ROMドライブ装置において、フラッシュメモリ17には、リブートプログラムRPGと2つに分割されたアプリケーションプログラムAPG1,APG2とが格納される。
【0039】
次に、本実施の形態のフラッシュメモリ17における割り付け方法について、図2のメモリマップの説明図を用いて説明する。
【0040】
ここでは、フラッシュメモリ17のメモリ容量が256KBであり、図2に示すように、ブロックEB0〜EB7がそれぞれ4KB、ブロックEB8が32KB、およびブロックEB9〜EB11がそれぞれ64KBに各々割り付けられており、ブロックEB0が書き換え禁止領域であり、ブロックEB2〜EB11が書き換え可能領域にされている。
【0041】
ブロックEB0にはリブートプログラムRPGが格納されている。また、ブロックEB1,EB2にはアプリケーションプログラム(第1のアプリケーションプログラム)APG1が格納されており、ブロックEB3〜EB11にはアプリケーションプログラム(第2のアプリケーションプログラム)APG2が格納されている。
【0042】
リブートプログラムRPGは、アプリケーションプログラムAPG1,APG2の正当性を検査するプログラムであり、アプリケーションプログラムAPG1は、たとえば、ネゴシエーションの処理などの、電源投入などによるリセット後に、ある規定時間以内に実行しなければならない初期動作プログラムである。アプリケーションプログラムAPG2は、前述したアプリケーションプログラムAPG1以外のすべてのプログラムである。
【0043】
また、アプリケーションプログラムAPG1の最後(ブロックEB2)には、該アプリケーションプログラムAPG1におけるサム値S1が格納され、アプリケーションプログラムAPG2の最後(ブロックEB11)には、該アプリケーションプログラムAPG2におけるサム値S2が格納される。
【0044】
次に、図2、および図3のフローチャートを用いて、起動時のフラッシュメモリ17におけるプログラムの起動手順について説明する。
【0045】
まず、ディスクドライブ装置への電源投入によりリセット信号、あるいはホストコンピュータ3からのリセット信号によるリセットが解除されると(ステップS101)、ブロックEB1,EB2に格納されたアプリケーションプログラムAPG1のサム値を算出する(ステップS102)。
【0046】
そして、その算出値とブロックEB2に格納されているサム値S1とを照合し(ステップS103)、算出されたサム値と格納されているサム値S1とが一致するか否かを判断する(ステップS104)。
【0047】
このステップS104の処理において、算出値とサム値S1とが一致した場合には、初期動作プログラムであるアプリケーションプログラムAGP1を起動し、ATAPI規格に定められた初期化を行う(ステップS105)。
【0048】
また、ステップS104に処理において、算出値とサム値S1とが一致しない場合には、ブロックEB1,EB2に、アプリケーションプログラムAPG1の書き換えが行われる(ステップS106)。
【0049】
ステップS105の処理が終了すると、ブロックEB3〜EB11に格納されたアプリケーションプログラムAPG2のサム値が算出され(ステップS107)、その算出値とブロックEB2に格納されているサム値S2とが照合される(ステップS108)。
【0050】
そして、算出されたサム値と格納されているサム値S2とが一致するか否かを判断し(ステップS109)、サム値S2と算出値とが一致した場合には、アプリケーションプログラムAGP2が起動し(ステップS110)、ディスクドライブ装置として機能する。
【0051】
ここで、アプリケーションプログラムAPG2は、アプリケーションプログラムAPG1の実行後に直ちにサム値チェックを行わずに、たとえば、アプリケーションプログラムAPG2が必要となってから該アプリケーションプログラムAPG2のサム値チェックを行うようにしてもよい。
【0052】
あるいは、プリケーションプログラムAPG2のうち、必要となったアプリケーションプログラムAPG2が格納されたブロックだけのサム値チェックを行ってもよい。
【0053】
さらに、ステップS109の処理において、算出されたサム値とサム値S2とが一致しない場合には、ブロックEB3〜EB11にアプリケーションプログラムAPG2の書き換えが行われる(ステップS106)。
【0054】
それにより、本実施の形態1によれば、アプリケーションプログラムを2つに分割し、リセット後の短い時間に処理する必要のあるATAPI規格に定められた初期化を行うアプリケーションプログラムAGP1のサム値を優先してチェックし、最初にアプリケーションプログラムAGP1だけを実行させることにより、アプリケーションプログラムのプログラムサイズが大きくなっても、ATAPI規格に規定されている初期化処理を確実に規定時間内で実行することができ、ディスクドライブ装置の信頼性を向上させることができる。
【0055】
また、本実施の形態1では、アプリケーションプログラムを、リセット後にATAPI規格に定められた初期化を行うアプリケーションプラグラムAPG1と、該アプリケーションプログラムAPG1以外のすべてのプログラムであるアプリケーションプログラムAGP2とに分割してサム値をチェックする場合ついて記載したが、フラッシュメモリにアプリケーションプログラムが格納されていない未使用領域がある場合には、それら未使用領域のブロックにおけるサム値チェックを行わないようにすることによってもサム値チェックの時間を短縮することができる。
【0056】
フラッシュメモリのメモリ容量が256KBであり、図4に示すように、ブロックEB0〜EB7がそれぞれ4KB、ブロックEB8が32KB、およびブロックEB9〜EB11がそれぞれ64KBに各々割り付けられており、ブロックEB0が書き換え禁止領域であり、ブロックEB2〜EB11が書き換え可能領域にされているものとする。
【0057】
そして、ブロックEB0にはリブートプログラムRPGが格納され、ブロックEB1〜EB10にはアプリケーションプログラムAPG3が格納されており、残りのブロックEB11が未使用領域になっている場合、リセットの解除後には、ブロックEB1〜EB10に格納されたアプリケーションプログラムAPG3のサム値のみをチェックし、ブロックEB11におけR8サム値チェックは行わないようにする。
【0058】
たとえば、アプリケーションプログラムのプログラムサイズが、約150KB程度であった場合、フラッシュメモリのメモリ容量は128KBでは不足するので、メモリ容量が256KBのフラッシュメモリが用いられることになる。
【0059】
このような場合には、約100KB程度のブロックが未使用領域となり、サム値チェックを不要とすることができるので、アプリケーションプログラムAPG3のサム値チェックの時間を大幅に短縮することができる。
【0060】
これによっても、ATAPI規格に規定されている初期化処理を確実に規定時間内で実行することができ、ディスクドライブ装置の信頼性を向上させることができる。
【0061】
(実施の形態2)
図5は、本発明の実施の形態2によるディスクドライブ装置に設けられたマイクロコンピュータに備えられたフラッシュメモリのメモリマップを示す説明図である。
【0062】
本実施の形態2において、ディスクドライブ装置(図1)は、前記実施の形態1と同様に、フラッシュメモリ内蔵マイコンが搭載されたATAPI DVD−ROMドライブ装置であり、DVD−ROMディスク1、およびATAPIバスを介して双方向に信号伝送可能にホストコンピュータ3に接続されたDVD−ROM再生装置2などから構成されている。
【0063】
また、DVD−ROM再生装置2も、前記実施の形態1と同様にマイクロコンピュータ4、ディジタル信号処理部5、プリアンプ6、ディスクモータ7、モータドライバ8、ピックアップ9、ならびにキャッシュDRAM10などから構成されている。
【0064】
さらに、マイクロコンピュータ4の内部構成も実施の形態1と同様に、フラッシュメモリ17、RAM18、プロセッサ、8ビットタイマ、16ビットタイマ、A/D変換器、SCI回路、ならびに入出力ポートなどの回路モジュールから構成されている。これら回路モジュールは、アドレスバス、データバスおよび制御信号バスからなる内部バスを共有している。
【0065】
フラッシュメモリ17には、リブートプログラムRPGとアプリケーションプログラムAPG4とが格納される。また、フラッシュメモリ17のメモリ容量は256KBであり、図5に示すように、ブロックEB0〜EB7がそれぞれ4KB、ブロックEB8が32KB、およびブロックEB9〜EB11がそれぞれ64KBに各々割り付けられており、ブロックEB0が書き換え禁止領域であり、ブロックEB2〜EB11が書き換え可能領域にされている。
【0066】
ブロックEB0にはリブートプログラムRPGが格納されている。また、ブロックEB1〜EB11には、アプリケーションプログラムAPG4が格納されている。
【0067】
リブートプログラムRPGは、アプリケーションプログラムAPG4の正当性を検査するプログラムであり、アプリケーションプログラムAPG4は、ディスクドライブ装置のアプリケーションプログラムネゴシエーションの処理などの、電源投入などによるリセット後に、ある規定時間以内に実行しなければならない初期動作プログラムを含む、ディスクドライブ装置におけるすべてのアプリケーションプログラムである。
【0068】
また、アプリケーションプログラムAPG4の先頭、すなわちブロックEB1には、それぞれのブロックEB1〜EB11に格納されているアプリケーションプログラムAPG4の先頭と末尾の数バイト(少なくとも1バイト)程度のコピーデータ(待避データ)CDが格納されている。
【0069】
そして、ディスクドライブ装置に電源が投入された後のリセット信号、あるいはホストコンピュータ3からのリセット信号によるリセットが解除されると、ブロックEB1〜EB11毎に、先頭と末尾との予め設定された数バイトのプログラムデータを読み出し、アプリケーションプログラムAPG4の先頭に格納されているコピーデータCDと比較する。
【0070】
これら数バイトのプログラムデータとコピーデータCDとが、それぞれのブロックEB1〜EB11において、すべて一致する際には、アプリケーションプログラムAGP3を起動し、実行させる。
【0071】
さらに、数バイトのプログラムデータとコピーデータCDとが一致しないブロックがある場合には、ブロック単位でアプリケーションプログラムAPG4の書き換えを行う。
【0072】
それにより、本実施の形態2においても、アプリケーションプログラムAPG4のサムチェックが不要となるので、短時間にアプリケーションプログラムAPG4のチェックを終了することができ、アプリケーションプログラムAPG4のプログラムサイズが大きくなってもリセット後の短い時間に処理する必要のあるATAPI規格に定められた初期化を行う確実に規定時間内で実行することができ、ディスクドライブ装置の信頼性を向上させることができる。
【0073】
以上、本発明者によってなされた発明をその実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【0074】
たとえば、前記実施の形態においては、ATAPI DVD−ROMドライブ装置、SCSI DVD−ROMドライブ装置を例に説明したが、これに限定されるものではなく、ATAPI CD−ROMドライブ装置、ATAPI CD−RWドライブ装置、SCSI DVD−ROMドライブ装置、SCSI CD−ROMドライブ装置、ならびにSCSI CD−RWドライブ装置などにも効果的である。
【0075】
【発明の効果】
本願によって開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、以下のとおりである。
【0076】
(1)本発明によれば、リセット後の短い時間に処理する必要のあるATAPI規格に定められた初期化を行う第1のアプリケーションプログラムだけを優先して実行させることにより、プログラムサイズが大きくなっても、ATAPI規格に規定されている初期化処理を確実に規定時間内で実行することができる。
【0077】
(2)また、本発明では、未使用領域におけるブロックのサム値チェックを行わずにアプリケーションプログラムを起動させることにより、該アプリケーションプログラムのサム値チェックの時間を大幅に短縮することができる。
【0078】
(3)さらに、本発明においては、書き換え可能領域のそれぞれのブロックにおける先頭と末尾とに配置された少なくとも1バイトのアプリケーションプログラムの待避データと、それぞれのブロックにおける先頭と末尾とに配置された少なくとも1バイトのアプリケーションプログラムデータとを照合し、一致した場合に該アプリケーションプログラムを起動させるので、アプリケーションプログラムのサムチェックが不要となり、短時間にアプリケーションプログラムのチェックを終了することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態1によるディスクドライブ装置の機能ブロック図である。
【図2】本発明の実施の形態1によるディスクドライブ装置に設けられたマイクロコンピュータに備えられたフラッシュメモリのメモリマップを示す説明図である。
【図3】本発明の実施の形態1による起動時のフラッシュメモリにおけるプログラムの起動手順を示すフローチャートである。
【図4】本発明の他の実施の形態によるディスクドライブ装置に設けられたマイクロコンピュータに備えられたフラッシュメモリのメモリマップの一例を示す説明図である。
【図5】本発明の実施の形態2によるディスクドライブ装置に設けられたマイクロコンピュータに備えられたフラッシュメモリのメモリマップを示す説明図である。
【符号の説明】
1 DVD−ROMディスク
2 DVD−ROM再生装置
3 ホストコンピュータ
4 マイクロコンピュータ
5 ディジタル信号処理部
6 プリアンプ
7 ディスクモータ
8 モータドライバ
9 ピックアップ
10 キャッシュDRAM
11 データストローブ回路
12 サーボ回路
13 DVD用信号処理回路
14 RAMコントローラ
15 CD用信号処理回路
16 ATAPIインタフェース回路
17 フラッシュメモリ(不揮発性メモリ)
18 RAM
APG1 アプリケーションプログラム(第1のアプリケーションプログラム)
APG2 アプリケーションプログラム(第2のアプリケーションプログラム)
APG3 アプリケーションプログラム
APG4 アプリケーションプログラム
RPG リブートプログラム
Claims (5)
- 不揮発性メモリと、マイクロコンピュータとを搭載したディスクドライブ装置であって、
前記不揮発性メモリは、第1のアプリケーションプログラムと第2のアプリケーションプログラムとを格納し、
前記第1のアプリケーションプログラムは、ATAPI規格に定められた初期化を行う機能を有し、前記不揮発性メモリの書き換え可能な第1の領域に配置され、
前記第2のアプリケーションプログラムは、前記第1の領域とは異なる前記不揮発性メモリの書き換え可能な第2の領域に配置され、
前記不揮発性メモリの書き換え禁止領域に、前記第1、第2のアプリケーションプログラムの正当性を検査するリブートプログラムが配置され、
前記マイクロコンピュータは、前記リブートプログラムに基づいて、前記第1のアプリケーションプログラムの正当性を検査し、前記第1のアプリケーションプログラムが正常であれば前記第1のアプリケーションプログラムを起動させて前記第1のアプリケーションプログラムによってATAPI規格に定められた初期化を行った後、前記第2のアプリケーションプログラムの正当性を検査し、正常であれば前記第2のアプリケーションプログラムを起動させることを特徴とするディスクドライブ装置。 - 不揮発性メモリと、マイクロコンピュータとを搭載したディスクドライブ装置であって、
前記不揮発性メモリは、第1のアプリケーションプログラムと第2のアプリケーションプログラムとを格納し、
前記第1のアプリケーションプログラムは、ATAPI規格に定められた初期化を行う機能を有し、前記不揮発性メモリの書き換え可能な第1の領域に配置され、
前記第2のアプリケーションプログラムは、前記第1の領域とは異なる前記不揮発性メモリの書き換え可能な第2の領域に配置され、
前記不揮発性メモリの書き換え禁止領域に、前記第1、第2のアプリケーションプログラムの正当性を検査するリブートプログラムが配置され、
前記マイクロコンピュータは、前記リブートプログラムに基づいて、前記第1のアプリケーションプログラムの正当性を検査し、前記第1のアプリケーションプログラムが正常であれば前記第1のアプリケーションプログラムを起動させて前記第1のアプリケーションプログラムによってATAPI規格に定められた初期化を行い、前記第2のアプリケーションプログラムの起動が必要になると、前記第2のアプリケーションプログラムの正当性を検査し、正常であれば前記第2のアプリケーションプログラムを起動させることを特徴とするディスクドライブ装置。 - 不揮発性メモリと、マイクロコンピュータとを搭載したディスクドライブ装置であって、
前記不揮発性メモリは、第1のアプリケーションプログラムと第2のアプリケーションプログラムとを格納し、
前記第1のアプリケーションプログラムは、ATAPI規格に定められた初期化を行う機能を有し、前記不揮発性メモリの書き換え可能な第1の領域に配置され、
前記不揮発性メモリの書き換え禁止領域に、前記第1、第2のアプリケーションプログラムの正当性を検査するリブートプログラムが配置され、
前記第2のアプリケーションプログラムは、前記第1の領域とは異なる前記不揮発性メモリの書き換え可能な第2の領域に配置され、
前記マイクロコンピュータは、リブートプログラムに基づいて、前記第1のアプリケーションプログラムの正当性を検査し、前記第1のアプリケーションプログラムが正常であれば前記第1のアプリケーションプログラムを起動させて前記第1のアプリケーションプログラムによってATAPI規格に定められた初期化を行い、前記アプリケーションプログラムのうち、任意の第2のアプリケーションプログラムの起動が必要になると、前記任意の第2のアプリケーションプログラムが配置されたブロックのサム値を検査し、正常であれば前記ブロックに配置された第2のアプリケーションプログラムだけを起動させることを特徴とするディスクドライブ装置。 - 不揮発性メモリと、マイクロコンピュータとを搭載したディスクドライブ装置であって、
前記不揮発性メモリは、複数のブロックに分割されており、
前記不揮発性メモリの書き換え可能領域にアプリケーションプログラムが配置され、前記アプリケーションプログラムが格納される先頭のブロックに、前記アプリケーションプログラムを格納するすべてのブロックの先頭と末尾のデータと同じ値である待避データが格納されており、
前記不揮発性メモリの書き換え禁止領域に、前記アプリケーションプログラムの正当性を検査するリブートプログラムが配置され、
前記マイクロコンピュータは、前記リブートプログラムに基づいて、前記待避データと書き換え可能領域の前記アプリケーションプログラムを格納するすべてのブロックの先頭と末尾のデータとを照合し、一致した場合には前記アプリケーションプログラムを起動させることを特徴とするディスクドライブ装置。 - 不揮発性メモリと、マイクロコンピュータとを搭載したディスクドライブ装置であって、
前記不揮発性メモリは、複数のブロックに分割されており、
前記複数のブロックのそれぞれは、格納されたデータのサム値によって正当性を検査することが可能とされ、
前記不揮発性メモリの書き換え可能領域にアプリケーションプログラムが配置され、
前記不揮発性メモリの書き換え禁止領域に、前記アプリケーションプログラムの正当性を検査するリブートプログラムが配置され、
前記リブートプログラムが、前記アプリケーションプログラムの正当性を検査する際には、前記アプリケーションプログラムが配置されていないブロックがある場合でも前記アプリケーションプログラムが配置されているブロックのサム値だけ検査し、正常であれば前記アプリケーションプログラムを起動させることを特徴とするディスクドライブ装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000344699A JP4095767B2 (ja) | 2000-11-13 | 2000-11-13 | ディスクドライブ装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000344699A JP4095767B2 (ja) | 2000-11-13 | 2000-11-13 | ディスクドライブ装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002149350A JP2002149350A (ja) | 2002-05-24 |
JP2002149350A5 JP2002149350A5 (ja) | 2005-06-23 |
JP4095767B2 true JP4095767B2 (ja) | 2008-06-04 |
Family
ID=18818856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000344699A Expired - Fee Related JP4095767B2 (ja) | 2000-11-13 | 2000-11-13 | ディスクドライブ装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4095767B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4534498B2 (ja) | 2004-01-28 | 2010-09-01 | ソニー株式会社 | 半導体装置およびその起動処理方法 |
JP2009126451A (ja) * | 2007-11-27 | 2009-06-11 | Denso Corp | 車両用制御装置 |
JP5106147B2 (ja) * | 2008-01-23 | 2012-12-26 | アルパイン株式会社 | マルチプロセッサ処理システム |
-
2000
- 2000-11-13 JP JP2000344699A patent/JP4095767B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002149350A (ja) | 2002-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7076649B2 (en) | Disk drive and computer | |
KR100345970B1 (ko) | 디스크구동장치,데이터재생장치및유저데이터출력방지방법 | |
JP2004145954A (ja) | 情報記録装置と情報記録方法とプログラムと記録媒体 | |
JP4095767B2 (ja) | ディスクドライブ装置 | |
TWI396994B (zh) | 防電腦病毒擴散的控制器及其儲存系統與方法 | |
US20050152251A1 (en) | Method and apparatus for recording check data of file system on recording medium | |
JP3871007B2 (ja) | 記憶媒体およびプログラム起動方法 | |
JP2010244611A (ja) | 光ディスク装置 | |
US8526278B2 (en) | Recording method, recording device, optical disc, optical disc manufacturing method, and optical disc drive device | |
US6785762B2 (en) | Recording/reproducing device having plural disk units which access an information recording medium including a computer readable recording medium | |
JP3527572B2 (ja) | Cd−e書き込みシステム装置 | |
JP4198124B2 (ja) | 1チップ型半導体記憶デバイス | |
JP3643367B2 (ja) | ディスクドライブ装置 | |
JP2001243691A (ja) | ディスクドライブ装置 | |
US7532553B2 (en) | Computer-readable medium and method for configuring a digital versatile disc re-writeable device | |
JP3930344B2 (ja) | ディスクドライブ装置 | |
JP2005085039A (ja) | 記録再生装置と記録再生装置のファームウェア書き換え方法とプログラムとコンピュータ読み取り可能な記録媒体 | |
KR100573639B1 (ko) | 디스크드라이브장치 | |
JPH0830450A (ja) | 情報処理装置 | |
JP2001229028A (ja) | ディスク再生装置 | |
JP2005165885A (ja) | ドライブ装置における自己ファームウェア更新方法およびドライブ装置 | |
TW201110127A (en) | Embedded chip burning system, method of burning chip, and computer program product | |
JP2010205379A (ja) | 光ディスク装置及び計算機システム | |
JP2006331148A (ja) | データ検査方法及び装置 | |
JPH08203211A (ja) | 光ディスク装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040928 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040928 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070621 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070710 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080226 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080310 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110314 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110314 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313115 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110314 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110314 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120314 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130314 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130314 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140314 Year of fee payment: 6 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |