JP2006127140A - Method for rewriting firmware, disk drive device, and information processing system - Google Patents

Method for rewriting firmware, disk drive device, and information processing system Download PDF

Info

Publication number
JP2006127140A
JP2006127140A JP2004314286A JP2004314286A JP2006127140A JP 2006127140 A JP2006127140 A JP 2006127140A JP 2004314286 A JP2004314286 A JP 2004314286A JP 2004314286 A JP2004314286 A JP 2004314286A JP 2006127140 A JP2006127140 A JP 2006127140A
Authority
JP
Japan
Prior art keywords
rewriting
host system
firmware
rewrite
program
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.)
Granted
Application number
JP2004314286A
Other languages
Japanese (ja)
Other versions
JP4575112B2 (en
Inventor
Takao Aoki
隆雄 青木
Yasumasa Nakano
保政 中野
Hiroshi Kurihara
浩史 栗原
Kazuo Chottogi
一夫 一寸木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2004314286A priority Critical patent/JP4575112B2/en
Publication of JP2006127140A publication Critical patent/JP2006127140A/en
Application granted granted Critical
Publication of JP4575112B2 publication Critical patent/JP4575112B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To securely and reliably rewrite FW (firmware) of a magnetic disk device. <P>SOLUTION: The magnetic disk device 20 stores a FW code for rewriting in a magnetic disk 9 along with a FW rewriting program which can boot a host system 17. The magnetic disk device 20 sends replies if the device receives an acquisition request for drive information of the magnetic disk device 20 from the host system 17 side when power is next supplied to the host system 17. Afterwards, the magnetic disk device 20 renews a content of the FW code for rewriting stored in the magnetic disk 9 with a FW code 23 in a flash ROM 15 if the device receives a specific write command from the host system 17 side which has acquired the FW rewriting program. Thereby, the FW can be rewritten after the magnetic disk device body is recognized by the system side, not during start-up of the magnetic disk device 20. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、例えば磁気ディスク装置などのディスクドライブ装置に搭載されるファームウェアの書換方法、ディスクドライブ装置、及びこのディスクドライブ装置を備えて構成される情報処理システムに関する。   The present invention relates to a method for rewriting firmware mounted on a disk drive device such as a magnetic disk device, a disk drive device, and an information processing system including the disk drive device.

一般に、磁気ディスク装置は、その装置内部の制御がファームウェア(以下「FW」と称する)によって行われており、仕様変更や性能向上のためにFWに改良を加えることがある。このFWがフラッシュROMなどの書き換え可能な記憶素子に格納される構成の磁気ディスク装置であれば、FWの書き換えのためのコマンドを設け、それを実行することでFWを新しいものに書き換えることが可能である。したがって、磁気ディスク装置を内蔵した情報処理装置などでは、FWの書き換えのためのコマンドを実行することで、磁気ディスク装置を取り外すことなくFWの書き換えを行うことができる。   In general, the internal control of a magnetic disk device is performed by firmware (hereinafter referred to as “FW”), and the FW may be improved to change specifications or improve performance. If this FW is a magnetic disk device configured to be stored in a rewritable storage element such as a flash ROM, it is possible to rewrite the FW to a new one by providing a command for rewriting the FW and executing it. It is. Therefore, in an information processing apparatus with a built-in magnetic disk device, the FW can be rewritten without removing the magnetic disk device by executing a command for rewriting the FW.

ここで、ホストシステムの稼動中、すなわちOS(Operating System)の制御下では、一般に、FWの書換コマンドなどの特殊コマンドの実行が難しい、コマンド実行のタイムアウトが短くこの時間内にFWの書き換えを完了させることが難しい、さらには複数のタスクが並行して実行される環境下ではFWの書換処理を行うことが難しい、などといった様々な制約がある。   Here, when the host system is in operation, that is, under the control of the OS (Operating System), it is generally difficult to execute a special command such as a FW rewrite command. The command execution timeout is short and the FW rewrite is completed within this time. There are various restrictions such as that it is difficult to perform FW rewrite processing in an environment where a plurality of tasks are executed in parallel.

そこで、従来では、これらの制約を回避するためにFWの書換プログラムを記憶させたフロッピー(登録商標)ディスクを用いてホストシステムを起動させることで、ホストシステムが持つOSを起動させることなくFWの書き換えのためのコマンドを実行させる方法などが適用されていた。しかしながら、最近では、フロッピー(登録商標)ディスクを搭載していない情報処理装置などが増えてきていることもあり、OSを起動させずにFWの書き換えのためのコマンドを実行させることが困難なケースが多くなっている。   Therefore, conventionally, in order to avoid these restrictions, by starting the host system using a floppy (registered trademark) disk in which the FW rewrite program is stored, it is possible to start the FW without starting the OS of the host system. A method of executing a command for rewriting was applied. However, recently, information processing apparatuses that do not have a floppy (registered trademark) disk are increasing, and it is difficult to execute a command for rewriting FW without starting the OS. Is increasing.

したがって、OSの制御下で、FWの書き換えのためのオペレーションを行えるようにすることへの要請が高まり、そこで、ホストシステムの通常処理中に(OSの制御下で)、更新すべきFWデータを受け取って磁気ディスクに書き込んでおき、次回の電源投入時に磁気ディスク装置の起動シーケンスの一環としてFWの書換処理を行う方法が提案されている(例えば、特許文献1参照)。
特開2004−62663号公報
Accordingly, there is an increasing demand for an operation for rewriting the FW under the control of the OS. Therefore, during the normal processing of the host system (under the control of the OS), the FW data to be updated is updated. There has been proposed a method of receiving and writing to a magnetic disk, and performing FW rewrite processing as part of the startup sequence of the magnetic disk device at the next power-on (see, for example, Patent Document 1).
JP 2004-62663 A

しかしながら、上記文献の手法では、システム起動時のシーケンスにおいて、磁気ディスク装置本体が立ち上がる過程、つまり、磁気ディスク装置がシステム側に認識される前のビジー状態でFWの書き換えを実行するようにしているので、システムに電源が投入されてから磁気ディスク装置がレディ状態(ビジー状態が解除されてスタンバイ状態)になるまでに多くの時間を要することになる。このため、特に、BIOSによる上記磁気ディスク装置認識時などに、タイムアウトエラーが起こりシステムが正常に起動しない可能性などが懸念される。   However, in the method of the above-mentioned document, FW rewriting is executed in the process of starting up the magnetic disk device main body in the sequence at system startup, that is, in a busy state before the magnetic disk device is recognized by the system side. Therefore, it takes a long time for the magnetic disk device to be in a ready state (a busy state is canceled and in a standby state) after the system is powered on. For this reason, there is a concern that a timeout error may occur and the system may not start normally when the magnetic disk device is recognized by the BIOS.

そこで本発明は、上記課題を解決するためになされたもので、BIOS変更などの特殊な操作を必要とすることなく、ファームウェアの書き換えを安全且つ確実に行うことができるファームウェアの書換方法、ディスクドライブ装置、及び情報処理システムの提供を目的とする。   Accordingly, the present invention has been made to solve the above-described problem, and a firmware rewriting method and a disk drive capable of safely and surely rewriting firmware without requiring a special operation such as BIOS change. An object is to provide an apparatus and an information processing system.

上記目的を達成するために、本発明に係るファームウェアの書換方法は、ディスク媒体へのアクセスが可能なディスクドライブ装置とホストシステムとの間でのコマンドのやり取りを通じて、該ディスクドライブ装置が備える不揮発性メモリ内のファームウェアを書き換えるファームウェアの書換方法であって、書換用のファームウェアを、前記ホストシステムのブート及び前記不揮発性メモリ内のファームウェアの書き換えを実行可能な書換実行プログラムとともに前記ディスク媒体上に記憶させる書換準備ステップと、前記書換準備ステップの実行後の前記ホストシステムへの電源投入時に前記ディスクドライブ装置の仕様を含むドライブ情報の取得要求を該ホストシステム側から受信した場合、該ディスクドライブ装置が該ドライブ情報を返信するドライブ情報返信ステップと、前記ドライブ情報返信ステップの実行後、前記書換実行プログラムを取得した前記ホストシステム側から特定のコマンドが受信された場合、前記ディスクドライブ装置が、前記ディスク媒体上に記憶させておいた前記書換用のファームウェアの内容に前記不揮発性メモリ内のファームウェアを更新するステップと、を有することを特徴とする。   In order to achieve the above object, the firmware rewriting method according to the present invention is a nonvolatile memory provided in a disk drive device through exchange of commands between the disk drive device capable of accessing the disk medium and the host system. A firmware rewriting method for rewriting firmware in a memory, wherein the rewriting firmware is stored on the disk medium together with a rewrite execution program capable of booting the host system and rewriting the firmware in the nonvolatile memory. When the host system receives a drive information acquisition request including specifications of the disk drive device when the host system is powered on after execution of the rewrite preparation step and the rewrite preparation step, the disk drive device Drive feeling When a specific command is received from the host system side that has acquired the rewrite execution program after executing the drive information return step and the drive information return step, the disk drive device is placed on the disk medium. And updating the firmware in the non-volatile memory with the contents of the firmware for rewriting stored.

すなわち、この発明によれば、システム起動時のシーケンスにおいて、例えば、ディスクドライブ装置本体が立ち上がる過程で、ファームウェアの書き換えが実行されるのではなく、ディスクドライブ装置がシステム側に認識された後(BIOSから制御を移行された後)、書換実行プログラムが単独でファームウェアの書換処理を実行するので、BIOS変更などの特殊な操作を伴わずに、ファームウェアの書換処理を安全且つ確実に行うことができる。   That is, according to the present invention, in the sequence at system startup, for example, the firmware is not rewritten in the process of starting up the disk drive device main body, but after the disk drive device is recognized by the system (BIOS) Since the rewrite execution program executes the firmware rewrite process independently after the control is transferred from (1) to (5), the firmware rewrite process can be performed safely and reliably without any special operation such as BIOS change.

また、本発明のファームウェアの書換方法は、前記ディスク媒体上に設けられたブートプログラム格納領域内のブートプログラムの返信要求を、前記ホストシステム側から前記ディスクドライブ装置が受信した場合、該ブートプログラム格納領域とは異なるプログラム置換領域に格納された前記書換実行プログラムを前記返信要求の応答データとして返信するステップをさらに有することを特徴とする。   The firmware rewriting method according to the present invention stores the boot program when the disk drive device receives a boot program return request in the boot program storage area provided on the disk medium from the host system side. The method further comprises a step of returning the rewriting execution program stored in a program replacement area different from the area as response data of the reply request.

さらに、本発明のファームウェアの書換方法は、前記ディスク媒体上の全記憶領域のうち、所定の記憶単位で区画されたブロックの非存在領域に該当するアドレスへのリードコマンド又はライトコマンドが、前記特定のコマンドとして前記ホストシステム側から受信された場合、前記ディスクドライブ装置が、前記書換用のファームウェアと前記書換実行プログラムとの前記ディスク媒体への書込処理、及び/又は前記不揮発性メモリ内のファームウェアの更新処理を実行することを特徴とする。   Furthermore, in the firmware rewriting method of the present invention, a read command or a write command to an address corresponding to a non-existing area of a block partitioned by a predetermined storage unit among all the storage areas on the disk medium is When the command is received from the host system side as the command, the disk drive device writes the rewrite firmware and the rewrite execution program to the disk medium and / or the firmware in the nonvolatile memory. The update process is executed.

つまり、これらの発明では、ディスク媒体の物理容量の異なる複数の種類のディスクドライブ装置に対してのファームウェアの書換処理を考慮した場合、例えばプログラム置換領域などのアドレスが変わってしまうような状況が発生するが、このような状況にも容易に対応することが可能となる。また、これらの発明では、ディスク媒体上におけるブロックの非存在領域に属するアドレスへの特定のコマンド(リード/ライトコマンド)で、ファームウェアの書換処理のための一連のコマンドを実行させることができるので、ホストシステム側からのコマンドの発行を容易に行うことができる。   In other words, in these inventions, when the rewriting process of firmware for a plurality of types of disk drive devices having different physical capacities of disk media is taken into account, a situation occurs in which an address such as a program replacement area changes. However, it is possible to easily cope with such a situation. In these inventions, a series of commands for firmware rewrite processing can be executed by a specific command (read / write command) to an address belonging to a non-existing area of a block on a disk medium. It is possible to easily issue commands from the host system side.

また、本発明のファームウェアの書換方法は、前記書換準備ステップが、前記不揮発性メモリに格納されたファームウェアの書き換えを実行させるための書換処理モードで前記ホストシステムを起動させる書換要求フラグを前記不揮発性メモリにセットするステップをさらに有し、前記ホストシステムの起動時に、前記不揮発性メモリ内に記憶された前記書換要求フラグが検出された場合、該ホストシステムの起動過程で該書換要求フラグの解除を行うことを特徴とする。   Further, in the firmware rewriting method of the present invention, the rewriting preparation step sets the rewriting request flag for starting the host system in a rewriting processing mode for rewriting the firmware stored in the nonvolatile memory. A step of setting in a memory, and when the rewrite request flag stored in the non-volatile memory is detected at the time of starting the host system, the rewrite request flag is released in the process of starting the host system. It is characterized by performing.

この発明は、書換処理モードでのシステム起動後にファームウェアの書き換えが行われなかった場合でも、その次のシステムの起動においてファームウェアの書換処理を伴わない通常のモードでシステムを確実に起動させるためのものである。これにより、ホストシステムが全く起動しなくなってしまうという危険性を低減することができる。   The present invention is for reliably starting a system in a normal mode that does not involve a firmware rewriting process at the next system startup even when the firmware is not rewritten after the system is started in a rewriting process mode. It is. This can reduce the risk that the host system will not start at all.

さらに、本発明のファームウェアの書換方法は、前記書換処理モードで前記ホストシステムが起動した場合、前記ファームウェアの書換処理に関連する前記特定のコマンドに対して非該当のライトコマンドを無効にすることを特徴とする。
この発明によれば、ファームウェアの書換処理と関係のない誤った書込処理の発生を防止することができる。
Further, the firmware rewriting method according to the present invention includes disabling a write command not applicable to the specific command related to the firmware rewriting process when the host system is activated in the rewriting processing mode. Features.
According to the present invention, it is possible to prevent the occurrence of an erroneous writing process unrelated to the firmware rewriting process.

また、本発明のディスクドライブ装置は、ファームウェアが格納された不揮発性メモリを備えホストシステムとの間でのコマンドのやり取りを行う、ディスク媒体へのアクセスが可能なディスクドライブ装置であって、書換用のファームウェアを、前記ホストシステムのブート及び前記不揮発性メモリ内のファームウェアの書き換えを実行可能な書換実行プログラムとともに前記ディスク媒体上に記憶させる書換準備手段と、前記書換準備手段による記憶処理を経て前記ホストシステムへの電源投入時に、前記ディスクドライブ装置の仕様を含むドライブ情報の取得要求を該ホストシステム側から受信した場合、該ドライブ情報を返信するドライブ情報返信手段と、前記ドライブ情報返信手段による返信処理を経て前記書換実行プログラムを取得した前記ホストシステム側から特定のコマンドが受信された場合、前記ディスク媒体上に記憶させておいた前記書換用のファームウェアの内容に前記不揮発性メモリ内のファームウェアを更新する手段と、を具備することを特徴とする。   The disk drive device of the present invention is a disk drive device having a nonvolatile memory storing firmware and exchanging commands with a host system and capable of accessing a disk medium. Rewrite preparation means for storing the firmware on the disk medium together with a rewrite execution program capable of executing booting of the host system and rewriting of firmware in the nonvolatile memory, and storage processing by the rewrite preparation means. When a drive information acquisition request including the specifications of the disk drive device is received from the host system when the system is powered on, drive information return means for returning the drive information, and reply processing by the drive information return means Through the rewrite execution program Means for updating the firmware in the non-volatile memory to the contents of the rewriting firmware stored on the disk medium when a specific command is received from the obtained host system side. It is characterized by that.

さらに、本発明のディスクドライブ装置は、前記ディスク媒体上に設けられたブートプログラム格納領域と、前記ブートプログラム格納領域とは異なる領域として前記ディスク媒体上に設けられ、前記書換実行プログラムが格納されたプログラム置換領域と、前記ブートプログラム格納領域内の前記ブートプログラムの返信要求を、前記ホストシステム側から受信した場合、前記プログラム置換領域に格納された前記書換実行プログラムを前記返信要求の応答データとして返信するブートプログラム置換手段と、をさらに具備することを特徴とすることを特徴とする。   Furthermore, the disk drive device of the present invention is provided on the disk medium as an area different from the boot program storage area provided on the disk medium and the boot program storage area, and stores the rewrite execution program. When the host system side receives the program replacement area and the boot program return request in the boot program storage area, the rewrite execution program stored in the program replacement area is returned as response data of the reply request. And boot program replacement means.

また、本発明のディスクドライブ装置は、前記ディスク媒体上の全記憶領域のうち、所定の記憶単位で区画されたブロックの非存在領域に該当するアドレスへのリードコマンド又はライトコマンドが、前記特定のコマンドとして前記ホストシステム側から受信された場合、前記書換用のファームウェアと前記書換実行プログラムとの前記ディスク媒体への書込処理、及び/又は前記不揮発性メモリ内のファームウェアの更新処理を実行する手段、をさらに具備することを特徴とする。   In the disk drive device of the present invention, a read command or a write command to an address corresponding to a non-existing area of a block partitioned in a predetermined storage unit among all the storage areas on the disk medium is Means for executing writing processing of the rewriting firmware and the rewriting execution program to the disk medium and / or updating of firmware in the nonvolatile memory when received as a command from the host system side And the like.

さらに、本発明のディスクドライブ装置は、前記書換準備手段が、前記不揮発性メモリに格納されたファームウェアの書き換えを実行させるための書換処理モードで前記ホストシステムを起動させる書換要求フラグを前記不揮発性メモリにセットする手段を備え、前記ホストシステムの起動時に、前記不揮発性メモリ内に記憶された前記書換要求フラグが検出された場合、該ホストシステムの起動過程で該書換要求フラグの解除を行う手段をさらに具備することを特徴とする。
また、本発明のディスクドライブ装置は、前記書換処理モードで前記ホストシステムが起動した場合、前記ファームウェアの書換処理に関連する前記特定のコマンドに対して非該当のライトコマンドを無効にする手段をさらに具備することを特徴とする。
Furthermore, in the disk drive device of the present invention, the rewrite preparation means sets a rewrite request flag for starting the host system in a rewrite processing mode for rewriting firmware stored in the non-volatile memory. And means for canceling the rewrite request flag during the start-up process of the host system when the rewrite request flag stored in the nonvolatile memory is detected at the time of starting the host system. Furthermore, it is characterized by comprising.
The disk drive device according to the present invention further includes means for invalidating a write command not applicable to the specific command related to the firmware rewriting process when the host system is activated in the rewriting processing mode. It is characterized by comprising.

さらに、本発明の情報処理システムは、ファームウェアが格納された不揮発性メモリを備えディスク媒体へのアクセスが可能なディスクドライブ装置と、該ディスクドライブ装置との間でコマンドのやり取りを行うホストシステムとを有する情報処理システムであって、書換用のファームウェアを、前記ホストシステムのブート及び前記不揮発性メモリ内のファームウェアの書き換えを実行可能な書換実行プログラムとともに前記ディスク媒体上に記憶させる書換準備手段と、前記書換準備手段による記憶処理を経て前記ホストシステムへの電源投入時に、前記ディスクドライブ装置の仕様を含むドライブ情報の取得要求を該ホストシステム側から該ディスクドライブ装置が受信した場合、該ドライブ情報を返信するドライブ情報返信手段と、前記ドライブ情報返信手段による返信処理を経て前記書換実行プログラムを取得した前記ホストシステム側から特定のコマンドが前記ディスクドライブ装置により受信された場合、前記ディスク媒体上に記憶させておいた前記書換用のファームウェアの内容に前記不揮発性メモリ内のファームウェアを更新する手段と、を具備することを特徴とする。   Furthermore, an information processing system according to the present invention includes a disk drive device having a nonvolatile memory in which firmware is stored and capable of accessing a disk medium, and a host system for exchanging commands with the disk drive device. An information processing system having rewrite preparation means for storing rewrite firmware on the disk medium together with a rewrite execution program capable of booting the host system and rewriting the firmware in the nonvolatile memory; When the disk drive device receives a drive information acquisition request including the specification of the disk drive device from the host system side when the host system is turned on through the storage process by the rewrite preparation means, the drive information is returned. Drive information return means When a specific command is received by the disk drive device from the host system side that has acquired the rewrite execution program through a reply process by the drive information return means, the rewrite program stored on the disk medium is received. Means for updating the firmware in the nonvolatile memory with the contents of the firmware.

また、本発明の情報処理システムは、前記ディスク媒体上に設けられたブートプログラム格納領域と、前記ブートプログラム格納領域とは異なる領域として前記ディスク媒体上に設けられ、前記書換実行プログラムが格納されたプログラム置換領域と、前記ブートプログラム格納領域内の前記ブートプログラムの返信要求を、前記ホストシステム側から前記ディスクドライブ装置が受信した場合、前記プログラム置換領域に格納された前記書換実行プログラムを前記返信要求の応答データとして返信するブートプログラム置換手段と、をさらに具備することを特徴とする。
さらに、本発明の情報処理システムは、前記ディスク媒体上の全記憶領域のうち、所定の記憶単位で区画されたブロックの非存在領域に該当するアドレスへのリードコマンド又はライトコマンドが、前記特定のコマンドとして前記ホストシステム側から前記ディスクドライブ装置により受信された場合、前記書換用のファームウェアと前記書換実行プログラムとの前記ディスク媒体への書込処理、及び/又は前記不揮発性メモリ内のファームウェアの更新処理を実行する手段、をさらに具備することを特徴とする。
Further, the information processing system of the present invention is provided on the disk medium as a boot program storage area provided on the disk medium and as an area different from the boot program storage area, and stores the rewrite execution program. When the disk drive device receives from the host system the return request for the boot program in the program replacement area and the boot program storage area, the return request is sent to the rewrite execution program stored in the program replacement area. Boot program replacement means for returning the response data as response data.
Furthermore, in the information processing system of the present invention, a read command or a write command to an address corresponding to a non-existing area of a block partitioned in a predetermined storage unit among all the storage areas on the disk medium is When received as a command from the host system side by the disk drive device, the writing process of the rewriting firmware and the rewriting execution program to the disk medium and / or updating of the firmware in the nonvolatile memory Means for executing the processing.

このように本発明によれば、BIOS変更などの特殊な操作を必要とすることなく、ファームウェアの書き換えを安全且つ確実に行うことが可能なファームウェアの書換方法、ディスクドライブ装置、及び情報処理システムを提供することができる。   As described above, according to the present invention, there is provided a firmware rewriting method, a disk drive device, and an information processing system capable of safely and surely rewriting firmware without requiring a special operation such as BIOS change. Can be provided.

以下、本発明を実施するための最良の形態を図面に基づき説明する。
図1は、本発明の一実施形態に係る磁気ディスク装置を含む情報処理システムを機能的に示すブロック図である。
The best mode for carrying out the present invention will be described below with reference to the drawings.
FIG. 1 is a block diagram functionally showing an information processing system including a magnetic disk device according to an embodiment of the present invention.

同図に示すように、本実施形態の情報処理システム18は、CPU、メインメモリ、及びBIOSなどを有するホストシステム17と、このホストシステム17にホストインタフェース19を通じて接続された磁気ディスク装置(HDD)20とを、少なくとも備える例えばPC(Personal Computer)などよって実現されている。
ディスクドライブ装置としての磁気ディスク装置20は、図1に示すように、CPU1、磁気ディスク9、磁気ヘッド13、ボイスコイルモータ(以下「VCM」と称する)7、スピンドルモータ(以下「SPM」と称する)8、モータドライバ6、フラッシュROM15、ヘッドIC16、及びリード・ライトIC5などを主に備える。
As shown in the figure, the information processing system 18 of this embodiment includes a host system 17 having a CPU, a main memory, a BIOS, and the like, and a magnetic disk device (HDD) connected to the host system 17 through a host interface 19. 20 is realized by, for example, a PC (Personal Computer) provided at least.
As shown in FIG. 1, a magnetic disk device 20 as a disk drive device includes a CPU 1, a magnetic disk 9, a magnetic head 13, a voice coil motor (hereinafter referred to as “VCM”) 7, and a spindle motor (hereinafter referred to as “SPM”). 8) Mainly includes a motor driver 6, a flash ROM 15, a head IC 16, a read / write IC 5, and the like.

CPU1は、この磁気ディスク装置全体の制御及びモータドライバ6の制御を時分割で行う。不揮発性メモリであるフラッシュROM15には、当該磁気ディスク装置本体を制御するためのFW(ファームウェア)が記憶されている。CPU1が接続されるCPUバス12には、電源投入時にCPU1がファームウェアをフラッシュROM15からCPU−RAM10へコピーする(イニシャルロード)プログラムが記憶されているマスクROM11、装置本体の制御を行うためのプログラム及び変数等を格納するための上記CPU−RAM10、ハードディスクコントローラ(以下「HDC」と称する)3、並びに制御に必要な諸信号の生成を行うゲートアレイ2が接続されている。   The CPU 1 controls the entire magnetic disk device and the motor driver 6 in a time-sharing manner. The flash ROM 15 which is a non-volatile memory stores FW (firmware) for controlling the magnetic disk device main body. The CPU bus 12 to which the CPU 1 is connected has a mask ROM 11 storing a program for copying the firmware from the flash ROM 15 to the CPU-RAM 10 when the power is turned on (initial load), a program for controlling the apparatus main body, and the like. The CPU-RAM 10 for storing variables and the like, a hard disk controller (hereinafter referred to as “HDC”) 3, and a gate array 2 for generating various signals necessary for control are connected.

HDC3及びゲートアレイ2の制御用レジスタは、それぞれCPU1のメモリ空間の一部に割り当てられており、CPU1がこの領域に対して読み出し及び書き込みを行うことで、HDC3及びゲートアレイ2の制御を行う。
また、リード・ライトIC5の内部構成は、主として磁気ヘッド13の位置決め処理に必要な信号処理を行うサーボブロックと、データの読み出し・書き込みのための信号処理を行うリード・ライトブロックとに大別される。
The control registers of the HDC 3 and the gate array 2 are respectively allocated to a part of the memory space of the CPU 1, and the CPU 1 controls the HDC 3 and the gate array 2 by reading and writing to this area.
Also, the internal configuration of the read / write IC 5 is roughly divided into a servo block that mainly performs signal processing necessary for positioning processing of the magnetic head 13 and a read / write block that performs signal processing for reading and writing data. The

モータドライバ6は、CPU1からの制御により磁気ディスク9を定常回転させるためのSPM8の駆動電流、及び磁気ヘッド13を目的の位置に移動させるためのVCM7の駆動電流を、当該SPM8並びにVCM7にそれぞれ供給する。   The motor driver 6 supplies, to the SPM 8 and the VCM 7, the driving current of the SPM 8 for steady rotation of the magnetic disk 9 and the driving current of the VCM 7 for moving the magnetic head 13 to the target position, respectively, under the control of the CPU 1. To do.

ディスク媒体としての磁気ディスク9には、磁気ヘッド13の位置決めのためのサーボデータ信号が記録されている領域(サーボ領域)と、ホストシステム17から転送されるデータを記録するための領域(データ領域)とが、交互にかつ等間隔に配置されている。さらに、磁気ディスク9上には、その回転軸を中心とした同心円状にデータトラック(以下、単に「トラック」と称する)が配置されている。トラック上に磁気ヘッド13を追従させるための位置決めは、上記のサーボデータ信号から得られる情報を基に行われる。   On the magnetic disk 9 as a disk medium, an area (servo area) where servo data signals for positioning the magnetic head 13 are recorded and an area (data area) for recording data transferred from the host system 17 ) Are arranged alternately and at equal intervals. Further, on the magnetic disk 9, data tracks (hereinafter simply referred to as “tracks”) are arranged concentrically around the rotation axis. Positioning for causing the magnetic head 13 to follow the track is performed based on information obtained from the servo data signal.

具体的には、磁気ヘッド13の位置決め実施時に磁気ヘッド13から読み出され且つヘッドIC16で増幅されたアナログ信号は、リード・ライトIC5に送られ、このリード・ライトIC5のサーボブロックによりサーボデータとして抽出される。サーボデータは、さらにゲートアレイ2によって処理され、CPU1は、このデータを基にモータドライバ6を制御して、磁気ヘッド13の位置決めのための電流をVCM7に供給する。   Specifically, an analog signal read from the magnetic head 13 and amplified by the head IC 16 at the time of positioning of the magnetic head 13 is sent to the read / write IC 5 as servo data by the servo block of the read / write IC 5. Extracted. The servo data is further processed by the gate array 2, and the CPU 1 controls the motor driver 6 based on this data and supplies a current for positioning the magnetic head 13 to the VCM 7.

HDC3は、CPUバス12以外にゲートアレイ2、バッファRAM4、リード・ライトIC5に接続されている。また、HDC3は、機能ごとにホストシステム17とのインタフェース制御を行うホストブロックと、バッファRAMの制御を行うバッファブロックと、リード・ライトIC5及びゲートアレイ2と接続され、読み出し・書き込み処理を行うリード・ライトブロックなどとに分かれる。   The HDC 3 is connected to the gate array 2, the buffer RAM 4, and the read / write IC 5 in addition to the CPU bus 12. The HDC 3 is connected to the host block that controls the interface with the host system 17 for each function, the buffer block that controls the buffer RAM, the read / write IC 5 and the gate array 2, and performs read / write processing.・ Divided into light blocks.

データの読み出し時において、磁気ディスク9に記憶されているデータは、磁気ヘッド13によって読み出されて、さらにヘッドIC16によって増幅され、この増幅されたアナログ信号は、リード・ライトIC5によって復号化される。HDC3は、これをゲートアレイ2からの制御用の各信号にしたがって処理することで、ホストシステム17に転送すべきデータを生成する。生成されたこのデータは、一旦バッファRAM4に格納されてからホストシステム17に転送される。   At the time of reading data, the data stored in the magnetic disk 9 is read by the magnetic head 13 and further amplified by the head IC 16, and this amplified analog signal is decoded by the read / write IC 5. . The HDC 3 processes this according to each control signal from the gate array 2 to generate data to be transferred to the host system 17. The generated data is temporarily stored in the buffer RAM 4 and then transferred to the host system 17.

データの書き込み時において、ホストシステム17からHDC3に転送されたデータは、一旦バッファRAM4に格納された後、ゲートアレイ2からの制御用の各信号にしたがってHDC3からリード・ライトIC5へ送られる。リード・ライトIC5によって符号化された書き込みデータは、ヘッドIC16を経由して磁気ヘッド13によって磁気ディスク9に書き込まれる。   At the time of data writing, the data transferred from the host system 17 to the HDC 3 is temporarily stored in the buffer RAM 4 and then sent from the HDC 3 to the read / write IC 5 in accordance with each control signal from the gate array 2. Write data encoded by the read / write IC 5 is written to the magnetic disk 9 by the magnetic head 13 via the head IC 16.

次に、本実施形態の情報処理システム18が有する磁気ディスク装置20のFWの書換機能を実現するための構成を図2ないし図4に基づきその説明を行う。
ここで、図2は、フラッシュROM15の内部構成を示すメモリマップ、図3は、このメモリマップを構成するイニシャル・プログラム・ローダ(以下「IPL」と称する)置換要求フラグの内容を示す図である。また、図4は、磁気ディスク装置20が搭載する磁気ディスク9の記憶領域を示す図である。
Next, a configuration for realizing the FW rewriting function of the magnetic disk device 20 included in the information processing system 18 of the present embodiment will be described with reference to FIGS.
2 is a memory map showing the internal configuration of the flash ROM 15, and FIG. 3 is a diagram showing the contents of an initial program loader (hereinafter referred to as "IPL") replacement request flag constituting the memory map. . FIG. 4 is a diagram showing a storage area of the magnetic disk 9 mounted on the magnetic disk device 20.

まず、フラッシュROM15内のメモリマップについて説明する。
すなわち、このメモリマップは、図2に示すように、最適化パラメータ・設定データ21、書換要求フラグであるIPL置換要求フラグ22、及びFWコード23とで構成される。FWコード23は、磁気ディスク装置20全体の制御を行うための、CPU1で実行可能なプログラムであって、磁気ディスク装置20の電源投入直後に、マスクROM11内のイニシャルロードプログラムによって読み出され、CPU−RAM10にコピーされた後に実行される。
First, the memory map in the flash ROM 15 will be described.
That is, as shown in FIG. 2, the memory map includes optimization parameter / setting data 21, an IPL replacement request flag 22 that is a rewrite request flag, and an FW code 23. The FW code 23 is a program that can be executed by the CPU 1 for controlling the entire magnetic disk device 20, and is read out by the initial load program in the mask ROM 11 immediately after the magnetic disk device 20 is turned on. -Executed after being copied to the RAM 10.

IPL置換要求フラグ22は、磁気ディスク装置20の起動直後に1度だけ参照されるフラグである。そのフラグの値によって、IPL領域41へのリード及びライト要求をホストシステム17から受けた場合の動作が決定される。詳細については後述するが、IPL置換モード(磁気ディスク9上のIPL領域41へのリード及びライト時に、そのアクセス対象範囲をFW書換プログラム領域43に置換する書換処理モード)と、通常モード(IPL領域41へのリード及びライト時に、要求どおりIPL領域41へのアクセスを行うモード)との2つのモードが存在し、以後は磁気ディスク20が再度起動されるまでモードの変更は行われない。   The IPL replacement request flag 22 is a flag that is referenced only once immediately after the magnetic disk device 20 is started. The operation when a read / write request to the IPL area 41 is received from the host system 17 is determined by the value of the flag. Although details will be described later, an IPL replacement mode (a rewrite processing mode in which the access target range is replaced with the FW rewrite program area 43 at the time of reading and writing to the IPL area 41 on the magnetic disk 9) and a normal mode (IPL area) The mode is not changed until the magnetic disk 20 is started again after that.

また、IPL置換要求フラグ22は、その使用形態から「真」「偽」を表せればよいので最低限必要なデータ長は1ビットであるが、ビットを落とす方向での値の変更しかできないというフラッシュROMの特性を考慮し、複数回の値の再設定が行えるようにする目的で実際には数十バイト程度の領域を確保している。具体的には、図3に示すように、K番目の内容がそれぞれフラグKa、フラグKbと表される値の組が複数組(この場合はN組)存在する構成である。フラグKa及びフラグKbは、それぞれ1バイトのデータであって、常に同じ値が設定され、また、次の意味を持つ何れかの値が書き込まれている。   The IPL replacement request flag 22 only needs to represent “true” and “false” from the usage pattern, so the minimum required data length is 1 bit, but the value can only be changed in the direction of dropping bits. In consideration of the characteristics of the flash ROM, an area of about several tens of bytes is actually secured for the purpose of enabling resetting of values a plurality of times. Specifically, as shown in FIG. 3, there are a plurality of sets of values (in this case, N sets) in which the K-th content is represented by flags Ka and Kb, respectively. The flag Ka and the flag Kb are each 1-byte data, and the same value is always set, and any value having the following meaning is written.

FFH:未使用
55H:IPL置換要求あり
00H:使用済み
FFH: Not used 55H: IPL replacement requested 00H: Used

ここで、値の設定時には、先頭(フラグ1a及びフラグ1b)からN番目(フラグNaおよびフラグNb)まで順に値を検査し、FFHが初めて現れる位置を検索し、その位置のデータを書き換える。例えば、S番目のデータが該当位置である場合には、フラグSaとフラグSbとに設定値(55Hなど)を書き込み、フラグ1a〜フラグ(S−1)a、およびフラグ1b〜フラグ(S−1)bに対しては00Hを書き込む。   Here, when setting a value, the values are inspected in order from the head (flag 1a and flag 1b) to the Nth (flag Na and flag Nb), the position where FFH first appears is searched, and the data at that position is rewritten. For example, when the S-th data is the corresponding position, a set value (55H or the like) is written in the flag Sa and the flag Sb, and the flag 1a to the flag (S-1) a and the flag 1b to the flag (S- 1) Write 00H to b.

値の読み出し時には、先頭(フラグ1a及びフラグ1b)からN番目(フラグNa及びフラグNb)まで順に値を検査し、00H以外の値が初めて現れる位置を検索し、そのデータを読み出し値とする。また、読み出しデータが正しいことを確認するために、IPL置換要求フラグ22内の全バイト(フラグ1a〜フラグNbまで)の排他的論理和をとり、0になることを確認する。値が正しく設定されていれば、各組とも互いに同じ値を保持しており、組ごとの排他的論理和が0になるからである。また、00H/55H/FFH以外の値が現れた場合もデータが正しくないと判定する。データが正しくないと判定された場合、安全のため通常モードで動作させる。また、F番目に不正な値が検出された場合、フラグ1aからフラグFbまでを0に設定し、次回以降値の設定が行えるようにする。   When reading a value, the values are sequentially checked from the head (flag 1a and flag 1b) to the Nth (flag Na and flag Nb), a position where a value other than 00H appears for the first time is searched, and the data is used as a read value. Further, in order to confirm that the read data is correct, the exclusive OR of all the bytes (from flag 1a to flag Nb) in the IPL replacement request flag 22 is taken and it is confirmed that it becomes 0. This is because, if the values are set correctly, each set holds the same value, and the exclusive OR for each set becomes zero. Further, when a value other than 00H / 55H / FFH appears, it is determined that the data is not correct. If it is determined that the data is not correct, operate in normal mode for safety. When the Fth incorrect value is detected, the flags 1a to Fb are set to 0 so that the values can be set from the next time.

最適化パラメータ・最適化データ21は、磁気ディスク20のリード・ライト用の個別調整値や製造番号などの出荷設定内容が記録されており、装置出荷後には、通常、書き換えを行わない領域である。したがって、FWの書き換え前後でその値が保持される。これに対し、FWコード23及びIPL置換要求フラグ22は、FWの書き換えに伴い更新される。これらの領域の情報は、ファームウェアの書き換え手順中で消去(全てのビットを1とする)される。磁気ディスク9上のFWコード領域44には(図4参照)、その後、新しいファームウェア(書換用のファームウェア)が書き込まれる。IPL置換要求フラグ22は、消去されたままとしておき、このことにより、以前の使用状況によらず再度先頭(フラグ1a/フラグ1b)から使用することが可能となる。   The optimization parameter / optimization data 21 is recorded in the area of shipment settings such as individual adjustment values for read / write of the magnetic disk 20 and manufacturing number, and is normally not rewritten after the device is shipped. . Therefore, the value is held before and after rewriting of FW. On the other hand, the FW code 23 and the IPL replacement request flag 22 are updated as the FW is rewritten. Information in these areas is erased (all bits are set to 1) during the firmware rewrite procedure. In the FW code area 44 on the magnetic disk 9 (see FIG. 4), new firmware (rewriting firmware) is then written. The IPL replacement request flag 22 is left erased, so that it can be used again from the top (flag 1a / flag 1b) regardless of the previous usage status.

次に、磁気ディスク装置20が備える磁気ディスク9の記憶領域について説明する。
すなわち、図4は、磁気ディスク9上のLBA(Logical Block Addressing)のアドレス空間を含む全アドレス領域を示すものである。同図4に示すように、ユーザ領域31は、ライト、リードなどの通常のコマンドでアクセス可能な領域であり、この長さ(範囲)が、ユーザに開放されているHDD本体の記憶容量のスペックとなる、いわゆる装置容量(ユーザ容量)である。また、ユーザ領域31は、さらに、ブートプログラム格納領域であるIPL領域41と通常領域42とに区別される。IPL領域41は、ホストシステム17がシステムの起動時にブートアップのためにIPLを読み出すための固定的な位置に配置される必要がある。このため、IPL領域41は、ホストシステム17に合わせて配置されている(本実施形態ではユーザ領域31の先頭である)。また、IPL領域41には、システムの起動時にOSを立ち上げるための情報なども記憶されている。一方、通常領域42には、OS本体、各種アプリケーションプログラム、及びそのアプリケーションプログラムなどで扱われる種々のファイルなどが記憶されている。
Next, the storage area of the magnetic disk 9 provided in the magnetic disk device 20 will be described.
That is, FIG. 4 shows the entire address area including the LBA (Logical Block Addressing) address space on the magnetic disk 9. As shown in FIG. 4, the user area 31 is an area that can be accessed by normal commands such as write and read, and this length (range) is a specification of the storage capacity of the HDD main body that is open to the user. This is the so-called device capacity (user capacity). The user area 31 is further divided into an IPL area 41 that is a boot program storage area and a normal area 42. The IPL area 41 needs to be arranged at a fixed position for the host system 17 to read out the IPL for bootup when the system is started up. For this reason, the IPL area 41 is arranged according to the host system 17 (in this embodiment, it is the head of the user area 31). The IPL area 41 also stores information for starting up the OS when the system is started up. On the other hand, the normal area 42 stores the OS body, various application programs, and various files handled by the application programs.

なお、通常の使用形態(上記通常モードでのシステム起動時)では、IPL領域41と通常領域42との差異はないが、磁気ディスク装置20が上記IPL置換モードで起動した場合には、IPL領域41内の各ブロックにアクセス(ライト、リードなど)を行うと、その対象アドレスがFW書換プログラム領域43内の対応するブロックに置換される。つまり、IPL置換モードで起動された場合には、ホストシステム17がIPLを読み出そうとすると、本来のIPLに代わって、プログラム置換領域としてのFW書換プログラム領域43に書き込まれている書換実行プログラム(FW書換プログラム)が読み出されることになる。   In the normal usage mode (when the system is activated in the normal mode), there is no difference between the IPL area 41 and the normal area 42. However, when the magnetic disk device 20 is activated in the IPL replacement mode, the IPL area When each block in 41 is accessed (write, read, etc.), the target address is replaced with the corresponding block in the FW rewrite program area 43. That is, when the host system 17 starts in the IPL replacement mode, when the host system 17 tries to read the IPL, the rewrite execution program written in the FW rewrite program area 43 as the program replacement area instead of the original IPL. (FW rewriting program) is read out.

FWデータ領域32は、磁気ディスク装置の個体情報、各種パラメータ、スマート情報などを含む製造情報など記録する、例えばベンダー側が内部的に使用するシステム領域内に確保されている。つまり、FWデータ領域32は、ユーザ領域31とは異なる位置に配置され、通常のリード・ライトではアクセス不可能な領域である。また、FWデータ領域32は、さらにFW書換プログラム領域43とFWコード領域44とに区別される。FW書換プログラム領域43は、前述のFW書換プログラムを格納するための領域であり、FWコード領域44は、FW書換プログラムによってフラッシュROM15に書き込まれる新しいFWコード23を格納するための領域である。   The FW data area 32 is secured in a system area for recording, for example, manufacturing information including individual information of the magnetic disk device, various parameters, smart information, and the like, for example, used internally by the vendor. That is, the FW data area 32 is an area that is arranged at a different position from the user area 31 and is not accessible by normal read / write. The FW data area 32 is further divided into an FW rewriting program area 43 and an FW code area 44. The FW rewrite program area 43 is an area for storing the above-described FW rewrite program, and the FW code area 44 is an area for storing a new FW code 23 written to the flash ROM 15 by the FW rewrite program.

FWデータ領域32へのアクセスは、前述したIPL置換モード時のIPL領域41へのアクセスの他に、範囲A33内の各アドレスへのアクセスによって行うことができる。範囲A33は、対応する物理的なブロックが存在しないアドレスに配置され、その長さ(容量)は、FWデータ領域32の長さと等しく、範囲A33内の各アドレスに対するアクセスが発生した場合には、アドレスがFWデータ領域32内の対応する値に置換された上でアクセスが行われる。つまり、ホストシステム17は、FWデータ領域32へのアクセスを行うために範囲A33を指定する。   The FW data area 32 can be accessed by accessing each address in the range A33 in addition to the above-described access to the IPL area 41 in the IPL replacement mode. The range A33 is arranged at an address where the corresponding physical block does not exist, and its length (capacity) is equal to the length of the FW data area 32. When an access to each address in the range A33 occurs, Access is performed after the address is replaced with the corresponding value in the FW data area 32. That is, the host system 17 designates the range A33 in order to access the FW data area 32.

ここで、FWデータ領域32へのアクセスは、同領域内のアドレスをそのまま指定することでアクセスを可能にする方法も考えられるが、装置容量が変わるとFWデータ領域32の位置も変わり、複数機種で同一の仕様とならず、運用面で煩雑になるという課題がある。これを回避するために、本実施形態では、範囲A33などのアドレスを装置容量に対して十分大きい値としている。   Here, for the access to the FW data area 32, a method of enabling access by designating the address in the area as it is is considered. However, when the device capacity is changed, the position of the FW data area 32 is changed. However, there is a problem that the specifications are not the same, and the operation becomes complicated. In order to avoid this, in the present embodiment, an address such as the range A33 is set to a sufficiently large value with respect to the device capacity.

詳細には、セクタが実際に存在するユーザ領域31及びFWデータ領域32に対し、アドレスB34、アドレスC35は、図4に示すように、範囲A33と同様に、磁気ディスク9上の全記憶領域のうち、対応する物理的なブロックが存在しないアドレス領域(所定の記憶単位で区画されたブロックの非存在領域)、つまりセクタが割り当てられていないアドレス空間(磁気ディスク上の物理容量を超える領域[非物理領域])に配置され、領域長は1ブロック分である。これらは、ホストシステム17からFWの書き換えに必要な特定のコマンドを実行するために設けられており、本実施形態では、アドレスB34に対するライトコマンドを受信すると、磁気ディスク20は、ライトコマンドではなく、FWデータのチェックを行うとともに、フラッシュROM15内にIPL置換要求フラグ22をセットする。また、アドレスC35へのライトコマンドを受信すると、磁気ディスク20は、磁気ディスク9上のFWコード領域から44から更新すべきFWコードを読み出すとともに、読み出したFWコード23を実際にフラッシュROM15に書き込む処理を行う。これらの場合、ライトコマンドを利用するので実際にデータ転送が行われるが、その内容には意味がないので磁気ディスク20が受信したデータは捨てられる。   Specifically, for the user area 31 and the FW data area 32 where the sector actually exists, as shown in FIG. 4, the address B34 and the address C35 are the same as the range A33 in the entire storage area on the magnetic disk 9. Among them, the address area where the corresponding physical block does not exist (non-existence area of the block partitioned by a predetermined storage unit), that is, the address space to which the sector is not assigned (area exceeding the physical capacity on the magnetic disk [non-existence] Physical area]) and the area length is one block. These are provided to execute a specific command necessary for rewriting FW from the host system 17. In this embodiment, when a write command for the address B 34 is received, the magnetic disk 20 is not a write command. The FW data is checked and the IPL replacement request flag 22 is set in the flash ROM 15. When the write command to the address C35 is received, the magnetic disk 20 reads the FW code to be updated from 44 from the FW code area on the magnetic disk 9, and actually writes the read FW code 23 to the flash ROM 15. I do. In these cases, since the write command is used, the data transfer is actually performed. However, since the contents are meaningless, the data received by the magnetic disk 20 is discarded.

このように物理的なブロックが存在しないアドレスに対するライトコマンドで、FWの書き換えの一連のコマンドを実行するのはホストシステム17からのコマンド発行を容易にすることを目的としている。本実施形態では、FWの書き換え自体は通常のOS(オペレーティングシステム)の制御下では行わないが、FWデータを磁気ディスク装置20に転送するなどのFWの書換準備処理は、OSの制御下で行うことになる。この際、これらの処理を行うためのコマンドは、一般にベンダユニークコマンドとなり、OSの制御下でこれらを発行するのが難しいケースが存在する。そこで、コマンドコードに一般的なリードやライトのものを利用することで、OSの仕組みに基づくコマンドの実行を容易に実現させることが可能となる。   The purpose of executing a series of commands for rewriting FW with a write command for an address in which no physical block exists is to facilitate command issuance from the host system 17. In this embodiment, FW rewriting itself is not performed under the control of a normal OS (operating system), but FW rewriting preparation processing such as transferring FW data to the magnetic disk device 20 is performed under the control of the OS. It will be. At this time, the commands for performing these processes are generally vendor-unique commands, and there are cases where it is difficult to issue these commands under the control of the OS. Therefore, by using a general read or write command code, it is possible to easily realize command execution based on the OS mechanism.

次に、本実施形態の情報処理システム18によって行われる磁気ディスク装置20のFWの書換処理を図5ないし図7に基づきその説明を行う。ここで、図5は、 磁気ディスク装置20本体のFWの書換処理を示すフローチャート、図6は、ホストシステムと磁気ディスク装置との間でコマンドを送受して行われるFWの書換準備処理を示すフローチャート、図7は、ホストシステムと磁気ディスク装置との間でコマンドを送受して行われるFWの書換実行時の処理を示すフローチャートである。   Next, the FW rewriting process of the magnetic disk device 20 performed by the information processing system 18 of this embodiment will be described with reference to FIGS. FIG. 5 is a flowchart showing the FW rewrite process of the main body of the magnetic disk device 20, and FIG. 6 is a flowchart showing the FW rewrite preparation process performed by sending and receiving commands between the host system and the magnetic disk device. FIG. 7 is a flowchart showing processing at the time of executing FW rewrite performed by sending and receiving a command between the host system and the magnetic disk device.

まず、磁気ディスク装置20自身が行う処理について説明する。
図5に示すように、磁気ディスク装置20の電源が投入されると(ステップ1[S1])、初期化処理が行われる(S2)。この初期化処理は、マスクROM11がフラッシュROM15の内容(FWコード23、IPL置換要求フラグ22、最適化パラメタ・設定データ21)を読み出して、CPU−RAM10に格納し、そこに格納されたFWコード23に制御を移す処理が含まれ、以後、FWコード23のプログラム内容に応じた処理が行われる。
First, processing performed by the magnetic disk device 20 itself will be described.
As shown in FIG. 5, when the power of the magnetic disk device 20 is turned on (step 1 [S1]), an initialization process is performed (S2). In this initialization process, the mask ROM 11 reads the contents of the flash ROM 15 (FW code 23, IPL replacement request flag 22, optimization parameter / setting data 21), stores it in the CPU-RAM 10, and stores the FW code stored therein. 23 includes a process of transferring control, and thereafter, a process according to the program content of the FW code 23 is performed.

すなわち、CPU−RAM10にコピーされたIPL置換要求フラグ22がチェックされ(S3)、このフラグがセットされていれば(S3のYES)、装置本体がIPL置換モードとされ、IPL置換要求フラグがクリアされる(S4)。この場合、上で述べたように、今後、磁気ディスク9上のIPL領域41内のブロックに対するアクセスが生じた場合(図4参照)、その対象がFW書換プログラム領域43内の対応するブロックに置換される。一方、IPL置換要求フラグがセットされていなければ(S3のNO)、装置本体が通常モードとされる(S5)。   That is, the IPL replacement request flag 22 copied to the CPU-RAM 10 is checked (S3). If this flag is set (YES in S3), the apparatus main body is set to the IPL replacement mode, and the IPL replacement request flag is cleared. (S4). In this case, as described above, when an access to a block in the IPL area 41 on the magnetic disk 9 occurs in the future (see FIG. 4), the target is replaced with a corresponding block in the FW rewrite program area 43. Is done. On the other hand, if the IPL replacement request flag is not set (NO in S3), the apparatus main body is set in the normal mode (S5).

ここで、上記S4(ステップ4)では、フラッシュROM15内のIPL置換要求フラグ22のクリアも行うが、これはIPL置換モードで起動後にFWの書き換えを行わなかった場合に、その次の起動で確実に通常モードで起動させるためである。これにより、システムが通常モードで起動できなくなることが防止される。FWの書き換えが行われれば、前述のとおり、IPL置換要求フラグ22がクリアされるので、その次の起動では通常の動作となる。   Here, in S4 (step 4), the IPL replacement request flag 22 in the flash ROM 15 is also cleared. This is ensured at the next start when the FW is not rewritten after the start in the IPL replacement mode. This is for starting in the normal mode. This prevents the system from being unable to start in the normal mode. If the FW is rewritten, as described above, the IPL replacement request flag 22 is cleared, so that the next operation is a normal operation.

起動時の処理が完了すると、ホストシステム17からのコマンドを受信するためのアイドル処理に移る(S6)。アイドル処理では、ホストシステム17から一定時間以上コマンドが来なかった場合に、省電力のための処理(磁気ヘッド13のアンロードやSPM8の停止)や、磁気ディスク装置20の自己診断などを行うが、ホストシステム17からのコマンドを検出すると、直ちにそれらの処理を中断し、アイドル処理を抜けてコマンドを実行するための処理に移る。   When the startup process is completed, the process proceeds to an idle process for receiving a command from the host system 17 (S6). In the idle process, when no command is received from the host system 17 for a certain period of time, a process for power saving (unloading the magnetic head 13 or stopping the SPM 8), a self-diagnosis of the magnetic disk device 20, or the like is performed. When a command from the host system 17 is detected, these processes are immediately interrupted, and the process moves to the process for executing the command after leaving the idle process.

ホストシステム17側からコマンドを受信した場合、そのコマンドがライトコマンドであるか否かを調べ(S7)、ライトコマンドであれば(S7のYES)、FW書換プログラム領域43へのライトを行うか否かを判定する(S8)。前述したように、このFW書換プログラム領域43にライトを行うのは、IPL置換モードでのIPL領域41のライト(アドレスの置換によってFW書換プログラム領域43へのライト)と、範囲Aへのライト(アドレスの置換によりFW書換プログラム領域43を含むFWデータ領域32へのライト)との2つの場合である。   When a command is received from the host system 17 side, it is checked whether or not the command is a write command (S7). If it is a write command (YES in S7), whether or not writing to the FW rewriting program area 43 is performed. Is determined (S8). As described above, writing to the FW rewriting program area 43 is performed by writing the IPL area 41 in the IPL replacement mode (writing to the FW rewriting program area 43 by address replacement) and writing to the range A ( There are two cases: writing to the FW data area 32 including the FW rewriting program area 43 by address replacement).

ここで、上記S8で判定しているのは、前者の条件であるIPL領域41へのライトコマンドであるか否かであり、これが成立していれば、FW書換プログラム領域43内の該当アドレスへの書き込み処理を行い(S9)、これが完了したら次のコマンドを待つために上記アイドル処理(S6)に移る。
なお、FW書換プログラム領域43への書き込みは、本実施形態では後者の条件で行うため、前者の条件成立時の書き込みは本来不要である。したがって、上記S9の処理を行う代わりにホストシステム17に対してエラーを報告するようにしてもよいし、IPL置換モードでは、安全のために全てのアドレスに対するライトコマンド(実際の書き込み処理)を禁止(無効に)するという構成を採ってもよい。
Here, what is determined in S8 is whether or not it is a write command to the IPL area 41 which is the former condition. If this is established, the corresponding address in the FW rewrite program area 43 is set. Is written (S9), and when this is completed, the process proceeds to the idle process (S6) to wait for the next command.
Note that the writing to the FW rewriting program area 43 is performed under the latter condition in the present embodiment, so that the writing when the former condition is satisfied is essentially unnecessary. Therefore, an error may be reported to the host system 17 instead of performing the process of S9. In the IPL replacement mode, a write command (actual write process) for all addresses is prohibited for safety. A configuration of (invalidating) may be adopted.

また、上記S8の条件が成立していなければ、通常のライトを行うか否かの判定が行われる(S10)が、この時点では、対象アドレスが通常領域42内のものであることがその条件となるので、これが成立していれば(S10のYES)、通常のライト処理を行って(S11)、アイドル処理(S6)に戻り、非成立ならば(S10のNO)、S12、S13、S14で、順次、FW書き換え関連の各コマンドであるか否かを判定し、該当すれば次に述べる処理に対応するものを実行した後、アイドル処理(S6)に移る。いずれにも該当しなければ、ホストシステム17にエラーを報告し(S15)、アイドル処理(S6)に移行する。   If the condition of S8 is not satisfied, it is determined whether or not normal writing is performed (S10). At this time, the condition is that the target address is in the normal area 42. Therefore, if this is true (YES in S10), normal write processing is performed (S11), and the process returns to the idle process (S6). If not true (NO in S10), S12, S13, S14 Then, it is sequentially determined whether or not each command is related to FW rewriting, and if it is applicable, the processing corresponding to the processing described below is executed, and then the processing proceeds to idle processing (S6). If none of them correspond, an error is reported to the host system 17 (S15), and the process proceeds to the idle process (S6).

前記S12において、対象アドレスが範囲A33内の値であれば(S12のYES)、アドレス置換により、FWデータ領域32へのライト処理となる(S16)。これは、上記のFW書換プログラム領域43へライトを行う場合の後者の条件である。   In S12, if the target address is a value within the range A33 (YES in S12), write processing to the FW data area 32 is performed by address replacement (S16). This is the latter condition when writing to the FW rewriting program area 43 described above.

また、S13において、対象アドレスがアドレスB34に一致していれば(S13のYES)、磁気ディスク9上のFWデータ領域32の内容を読み出してこれが正しいFWデータ(FW書換プログラム及びFWコード)であるかのチェックを行い、正しい場合にのみ、次回の起動時にFWの書き換えを行うためにフラッシュROM15内のIPL置換要求フラグ22をセットする(S17)。   In S13, if the target address matches the address B34 (YES in S13), the contents of the FW data area 32 on the magnetic disk 9 are read and this is the correct FW data (FW rewriting program and FW code). Only when it is correct, the IPL replacement request flag 22 in the flash ROM 15 is set in order to rewrite the FW at the next startup (S17).

さらに、S14において、対象アドレスがアドレスC35に一致していれば(S14のYES)、磁気ディスク9上のFWデータ領域32の内容を読み出してこれが正しいFWデータ(FW書換プログラムおよびFWコード)であるかのチェックを行い、正しい場合にのみFWコード23をフラッシュROM15に実際に書き込み(S18)、新しいFWで磁気ディスク装置20を再起動させる。このコマンドは、通常、IPL置換モードで起動したときに、FW書換プログラム領域43から読み出されたFW書換プログラムにより実行されるが、それ以外の場合にも実行は可能である。   In S14, if the target address matches the address C35 (YES in S14), the contents of the FW data area 32 on the magnetic disk 9 are read and this is the correct FW data (FW rewriting program and FW code). The FW code 23 is actually written in the flash ROM 15 only when it is correct (S18), and the magnetic disk device 20 is restarted with a new FW. This command is normally executed by the FW rewriting program read from the FW rewriting program area 43 when started in the IPL replacement mode, but can be executed in other cases.

一方、上記したS7のコマンド判定において、受信したコマンドがライトコマンドでなかった場合には(S7のNO)、リードコマンドであるか否かの判定が行われる(S19)。リードコマンドに該当すれば(S19のYES)、モードがIPL置換モードであって、なおかつ対象アドレスがIPL領域41内の値であるか否かが判定される(S20)。この条件が成立すると(S20のYES)、IPL領域41内に存在するホストシステム17のOSを起動するための本来のIPLに代わり、FW書換プログラム領域43内に存在するFW書換プログラムを読み出すための処理が行われ(S21)、さらにアイドル処理(S6)に移行する。FW書換プログラム領域43が読み出されるのは、通常、ホストシステム17の起動時であり、この場合には通常のOSに代わりFW書換プログラムによってホストシステム17が起動することになる。   On the other hand, when the received command is not a write command in the command determination of S7 described above (NO in S7), it is determined whether or not it is a read command (S19). If it corresponds to the read command (YES in S19), it is determined whether or not the mode is the IPL replacement mode and the target address is a value in the IPL area 41 (S20). When this condition is satisfied (YES in S20), the FW rewriting program existing in the FW rewriting program area 43 is read instead of the original IPL for starting the OS of the host system 17 existing in the IPL area 41. Processing is performed (S21), and the process further proceeds to idle processing (S6). The FW rewriting program area 43 is normally read when the host system 17 is activated. In this case, the host system 17 is activated by the FW rewriting program instead of the normal OS.

また、上記S20において、その条件が成立しなければ(S20のNO)、通常のリードコマンドであるので、対象アドレスのチェックを行い(S22)、アドレスがユーザ領域31内の値であれば(S22のYES)、正しい値と判定し、通常の読み出し処理を行って(S23)、アイドル処理(S6)に移行する。アドレスが、ユーザ領域31内のものでなければ(S22のNO)、コマンドエラーをホストシステム17に報告し(S24)、アイドル処理(S6)に移行する。なお、本実施形態では、上記したようにS22において、アドレスがユーザ領域31内の値でないと判定されたら、無条件にコマンドエラーとしているが、ライトコマンド処理の場合と同様に、対象アドレスが範囲A33内のものであれば、それに対応するFWデータ領域32内のブロックのリードを行うようにしてもよい。   If the condition is not satisfied in S20 (NO in S20), it is a normal read command, so the target address is checked (S22), and if the address is a value in the user area 31 (S22). YES), it is determined that the value is correct, normal read processing is performed (S23), and the process proceeds to idle processing (S6). If the address is not in the user area 31 (NO in S22), a command error is reported to the host system 17 (S24), and the process proceeds to the idle process (S6). In the present embodiment, as described above, if it is determined in S22 that the address is not a value in the user area 31, a command error is made unconditionally. However, as in the case of the write command processing, the target address is in the range. If it is within A33, the corresponding block in the FW data area 32 may be read.

また、S19において、ホストシステム17から受信したコマンドがリードコマンドでないと判定された場合には(S19のNO)、受信したコマンドに応じた処理を行った後(S25)、アイドル処理(S6)に移行する。   If it is determined in S19 that the command received from the host system 17 is not a read command (NO in S19), the process corresponding to the received command is performed (S25), and then the idle process (S6) is performed. Transition.

さらに、本実施形態では、上述したように、OSの制御下でのコマンド実行を容易にするために、FWの書き換えに使用する各コマンドをライトコマンドに割り当てたが、これをライト以外の各コマンド(リードを含む)に割り当てたり、また、ベンダユニークのコマンドとして実装することも可能である。この場合、割り当てられたコマンドがリード以外であれば、そのための処理は上記S25に含まれることになり、また、コマンドがリードコマンドであれば、S22の後にさらに条件判断を追加されることになる。   Furthermore, in this embodiment, as described above, in order to facilitate command execution under the control of the OS, each command used for FW rewrite is assigned to a write command. It can be assigned to (including leads) or implemented as a vendor-specific command. In this case, if the assigned command is other than read, the processing for that is included in the above S25, and if the command is a read command, further condition judgment is added after S22. .

次に、ホストシステム17と磁気ディスク装置20との間でコマンドを送受して行われるFWの書換準備処理について説明を行う。
図6に示すように、ホストシステム17及び磁気ディスク装置20の電源が投入されると(S31、S61)、磁気ディスク装置20は、まず、IPL置換要求があるかのチェックを行い(上記図5のS3、S4、S5参照)、この時点では、まだFWデータを受け取っていない状態なので通常モードに設定される(S62)。
Next, the FW rewrite preparation process performed by sending and receiving commands between the host system 17 and the magnetic disk device 20 will be described.
As shown in FIG. 6, when the host system 17 and the magnetic disk device 20 are powered on (S31, S61), the magnetic disk device 20 first checks whether there is an IPL replacement request (FIG. 5 above). (See S3, S4, and S5), and since the FW data has not been received at this point, the normal mode is set (S62).

一方、ホストシステム17は、電源投入直後、BIOSによるシステム起動処理が行われ、その1つとして磁気ディスク装置20の認識処理を行う(S32)。磁気ディスク装置20がレディ状態となり、コマンドを受け付けられるようになると、ホストシステム17は、ドライブ情報取得コマンドを磁気ディスク装置20に対して発行し(S41)、それを受けて磁気ディスク装置20は、ホストシステム17への返信データを作成し(S63)、それをドライブ情報としてホストシステム17に転送する(S42)。   On the other hand, immediately after the power is turned on, the host system 17 performs a system activation process by the BIOS, and performs a recognition process of the magnetic disk device 20 as one of them (S32). When the magnetic disk device 20 is in a ready state and can receive a command, the host system 17 issues a drive information acquisition command to the magnetic disk device 20 (S41). Reply data to the host system 17 is created (S63), and it is transferred to the host system 17 as drive information (S42).

次に、ホストシステム17は、システムのブートアップのため、IPL領域41へのリードコマンドを発行して(S43)、磁気ディスク装置20の特定のアドレス(IPL領域41)を読み出し要求を行う(S33)。磁気ディスク装置20は、通常モードで起動しているので、このコマンドに対し指定されたアドレスをそのまま読み出し(S64)、読み出したデータ、すなわち、通常のIPLデータをホストシステム17に転送する(S44)。   Next, in order to boot up the system, the host system 17 issues a read command to the IPL area 41 (S43) and makes a read request for a specific address (IPL area 41) of the magnetic disk device 20 (S33). ). Since the magnetic disk device 20 is activated in the normal mode, the address designated for this command is read as it is (S64), and the read data, that is, normal IPL data is transferred to the host system 17 (S44). .

IPLデータを受け取ったホストシステム17は、それをプログラム実行可能なメモリに転送して実行することでOSの起動を行う(S34)。この間には、OS本体の読み出し、OS起動処理に伴う読み出し及び書き込みなど、多数のコマンドが磁気ディスク装置20に対して発行される(S45)。磁気ディスク装置20は、それらのコマンドを実行し(S65)、その要求に応じたデータをホストシステム17に返す(S46)。   Receiving the IPL data, the host system 17 starts the OS by transferring it to a program executable memory and executing it (S34). During this period, a number of commands such as reading of the OS main body and reading and writing accompanying the OS activation process are issued to the magnetic disk device 20 (S45). The magnetic disk device 20 executes these commands (S65) and returns data corresponding to the request to the host system 17 (S46).

OSの起動が完了し、ホストシステム17において、通常のオペレーションが実行され(S35)、磁気ディスク装置20がそれに伴って発行されるコマンドを実行する(S65)、という一般の処理が行われる。この後、OS上で動作するアプリケーションプログラムとして予め用意されているFW書換準備プログラムがユーザからの入力操作を伴って実行される(S36)。ここで、OS上で動作する上記FW書換準備プログラムの実行ファイルを含む当該プログラム本体は、磁気ディスク装置20の磁気ディスク9上の通常領域32に予め記憶されていてもよいし、また、CD−ROMやフロッピー(登録商標)ディスクなどの可搬型の外部記憶装置として提供されるものであってもよいし、さらには、Web上から提供されるものであってもよい。   A general process is performed in which the startup of the OS is completed, the host system 17 executes a normal operation (S35), and the magnetic disk device 20 executes a command issued accordingly (S65). Thereafter, an FW rewriting preparation program prepared in advance as an application program running on the OS is executed with an input operation from the user (S36). Here, the program main body including the execution file of the FW rewriting preparation program operating on the OS may be stored in advance in the normal area 32 on the magnetic disk 9 of the magnetic disk device 20, or a CD- It may be provided as a portable external storage device such as a ROM or a floppy (registered trademark) disk, or may be provided on the Web.

また、FW書換準備プログラムを実行する目的は、磁気ディスク装置20のFWをOSの実行中に書き換えることではなく、ホストシステム17及び磁気ディスク装置20の次回の電源投入時に磁気ディスク装置17のFWを書き換えるための手順が実行されるように準備を行うことである。これは、OSの制御下では、一般に、コマンド実行のタイムアウトが短い、他のタスク実行に伴うコマンドが非同期で実行される、などといった制約があり、この条件下でFWの書き換えを行うのが難しいからである。   The purpose of executing the FW rewriting preparation program is not to rewrite the FW of the magnetic disk device 20 during execution of the OS, but to change the FW of the magnetic disk device 17 when the host system 17 and the magnetic disk device 20 are turned on next time. It is to prepare to execute the procedure for rewriting. This is because, under the control of the OS, in general, there are restrictions such as a short command execution timeout, asynchronous execution of commands associated with other task executions, and it is difficult to rewrite FW under these conditions. Because.

詳細には、フラッシュROMに対するデータの書き換え時には、一般に、デバイスの消去、データの書き込みといった処理が行われ、ある程度の時間を要することから、磁気ディスク装置20のFW書き換え処理においてもコマンド実行のタイムアウトが短いという前者の制約条件を満たせないことがある。また、後者の制約条件に関しては、FWの書き換えが複数回のコマンド発行によって実現する構成において、それらの実行中に他のタスクによるFWの書き換えに無関係なコマンドを受信することによる磁気ディスク装置20の誤動作が生じるおそれがある。   Specifically, when data is rewritten to the flash ROM, generally, processing such as device erasure and data writing is performed, and a certain amount of time is required. Therefore, even in the FW rewriting processing of the magnetic disk device 20, a command execution timeout occurs. In some cases, the former constraint of being short cannot be satisfied. Further, regarding the latter constraint, in a configuration in which FW rewriting is realized by issuing a command a plurality of times, a command unrelated to FW rewriting by another task is received during execution of the FW rewriting. There is a risk of malfunction.

これに対応するために、FW書換準備プログラムでは、短時間で完了する処理のみが行われる。すなわち、S36において、FW書換準備プログラムが実行されると、まず書換用のFWデータが磁気ディスク装置20に転送される(S36a)。書換用のFWデータは、ホストシステム17におけるブートアップが可能なFW書換プログラムとFWコードから構成される。ホストシステム17は、当該書換用のFWデータの転送を、範囲A33へのライトコマンドという形で実行する(S47)。これを受信した磁気ディスク装置20は、書換用のFWデータを構成するFW書換プログラム及びFWコードを、それぞれFW書換プログラム領域43及びFWコード領域44に書き込み(S67)、その結果(成否)をホストシステム17に返す(S48)。   In order to cope with this, in the FW rewriting preparation program, only processing that is completed in a short time is performed. That is, when the FW rewriting preparation program is executed in S36, first, the FW data for rewriting is transferred to the magnetic disk device 20 (S36a). The FW data for rewriting is composed of an FW rewriting program and a FW code that can be booted up in the host system 17. The host system 17 executes the transfer of the FW data for rewriting in the form of a write command to the range A33 (S47). Receiving this, the magnetic disk device 20 writes the FW rewriting program and the FW code constituting the FW data for rewriting into the FW rewriting program area 43 and the FW code area 44, respectively (S67), and the result (success / failure) is hosted. It returns to the system 17 (S48).

なお、書換用のFWデータの転送、すなわち範囲A33へのライト処理は、単一のコマンドで行う必要はなく、複数回に分けて実行してもよい。また、この場合には、コマンドの実行順序や1コマンドあたりの転送データ量についても最終的に全データが揃えば特に制限はない。   Note that the transfer of the FW data for rewriting, that is, the write processing to the range A33 does not have to be performed with a single command, and may be performed in a plurality of times. In this case, the command execution order and the transfer data amount per command are not particularly limited as long as all the data is finally obtained.

上記S36aの実行後には、完全な書換FWデータが磁気ディスク9上のFWデータ領域32に存在していることになるが、これだけではまだ次回の電源投入時にはFWの書き換えは行われない。FWの書き換えが行われるようにするには、磁気ディスク装置20がIPL置換モードで起動しなければならないので、S36aに続けて書換用のFWデータのチェック処理を行う(S36b)。これはアドレスB34へのライトコマンド(S49)という形で実装されており、これを受信した磁気ディスク装置20は、FWデータ領域のデータを読み出してチェックし、これが正しいデータであれば次の電源投入時にIPL置換モードで起動させるためにフラッシュROM15内にIPL置換要求フラグ22をセットする(S68)。   After the execution of S36a, complete rewrite FW data exists in the FW data area 32 on the magnetic disk 9, but only this does not rewrite the FW at the next power-on. In order to rewrite the FW, the magnetic disk device 20 must be started in the IPL replacement mode, so the FW data for rewriting is checked following S36a (S36b). This is implemented in the form of a write command (S49) to address B34, and the magnetic disk device 20 that receives this command reads and checks the data in the FW data area. Sometimes, the IPL replacement request flag 22 is set in the flash ROM 15 in order to start in the IPL replacement mode (S68).

なお、IPL置換要求フラグ22がフラッシュROM15内に存在すること、及びフラッシュROMの15データ更新には時間がかかることは前述したが、IPL置換要求フラグ22の更新は、フラッシュROM15のビットを落とすことのみで実現していることからデバイスの消去処理を伴わず、書き込みデータ量も少ないことから処理のための時間はOSのタイムアウト時間に比べて十分に短くできる。また、本実施形態では、IPL置換要求フラグ22が、フラッシュROM15内に配置されているが、これを磁気ディスク9に記録する構成としてもよい。   As described above, the IPL replacement request flag 22 exists in the flash ROM 15 and it takes time to update 15 data in the flash ROM. However, updating the IPL replacement request flag 22 drops the bit in the flash ROM 15. Therefore, the time for processing can be made sufficiently shorter than the time-out time of the OS. In this embodiment, the IPL replacement request flag 22 is arranged in the flash ROM 15. However, the IPL replacement request flag 22 may be recorded on the magnetic disk 9.

上記S68の処理が完了すると、その実行結果はホストシステム17に報告され(S50)、S36のFW書換準備プログラムによる処理は終了する。この時点では既にIPL置換要求フラグ22は、セットされた状態であるが、これは電源投入直後にのみ参照されるものであることから、磁気ディスク装置20は、通常モードを維持し、以後も通常のオペレーションが可能である。   When the processing of S68 is completed, the execution result is reported to the host system 17 (S50), and the processing by the FW rewriting preparation program of S36 is completed. At this time, the IPL replacement request flag 22 is already set. However, since this is only referred to immediately after the power is turned on, the magnetic disk device 20 maintains the normal mode and continues thereafter. Is possible.

S36のFW書換準備プログラムによって行われる処理は、OSから見れば複数のタスクのうちの1つであるに過ぎず、この終了後は、ホストシステム17は、通常のオペレーションに戻り(S37)、一方、磁気ディスク装置20は、必要に応じて発行されるホストシステム17からのコマンドを実行する(S69)。そして、OSの終了処理も通常のオペレーションの一環として行われ、この後にホストシステム17、及び磁気ディスク装置20の電源が遮断されることで(S38、S70)、FW書換準備処理は完了となる。   The processing performed by the FW rewriting preparation program in S36 is only one of a plurality of tasks from the viewpoint of the OS, and after this end, the host system 17 returns to normal operation (S37). Then, the magnetic disk device 20 executes a command issued from the host system 17 as necessary (S69). The OS termination process is also performed as part of the normal operation. Thereafter, the host system 17 and the magnetic disk device 20 are powered off (S38, S70), and the FW rewriting preparation process is completed.

次に、ホストシステム17と磁気ディスク装置20との間でコマンドを送受して行われるFWの書換実行時の処理について説明を行う。
すなわち、図7に示すように、FW書換準備処理の完了後にホストシステム17及び磁気ディスク装置20の電源が投入されると(S71、S91)、磁気ディスク装置20は、まずIPL置換要求があるか否かのチェックを行い(上記図5のS3、S4、S5参照)、IPL置換要求フラグがセットされていることによりIPL置換モードに設定される(S92)。
Next, processing at the time of executing FW rewriting performed by transmitting and receiving commands between the host system 17 and the magnetic disk device 20 will be described.
That is, as shown in FIG. 7, when the host system 17 and the magnetic disk device 20 are powered on after completion of the FW rewriting preparation process (S71, S91), the magnetic disk device 20 first has an IPL replacement request. Whether or not is checked (see S3, S4 and S5 in FIG. 5), and the IPL replacement request flag is set, the IPL replacement mode is set (S92).

一方、ホストシステム17では、電源投入直後、FW書換準備処理で述べたのと同様にBIOSによるシステム起動処理が行われているが、その1つとして磁気ディスク装置20の認識処理を行う(S72)。磁気ディスク装置20がレディ状態となり、コマンドを受け付けられるようになると、ホストシステム17は、磁気ディスク装置20の仕様を含むドライブ情報の取得コマンド(ドライブ情報の返信要求)を磁気ディスク装置20に対して発行し(S81)、それを受けた磁気ディスク装置20は、ホストシステム17への返信データを作成し(S93)、それをドライブ情報としてホストシステム17に転送する(S82)。   On the other hand, in the host system 17, immediately after the power is turned on, the system activation process by the BIOS is performed in the same way as described in the FW rewriting preparation process. As one of them, the recognition process of the magnetic disk device 20 is performed (S72). . When the magnetic disk device 20 becomes ready and can accept a command, the host system 17 sends a drive information acquisition command (drive information return request) including the specifications of the magnetic disk device 20 to the magnetic disk device 20. Issuing (S81), the magnetic disk device 20 receiving it creates reply data to the host system 17 (S93) and transfers it to the host system 17 as drive information (S82).

次に、ホストシステム17は、システムのブートアップのため、S72において、FW書換準備処理の場合と同様に(通常の動作として)IPL領域41へのリードコマンドを発行する(S83)が、磁気ディスク装置20は、IPL置換モードに設定されているので、IPL領域41のデータに代わり、FW書換プログラム領域43のデータを読み出して(S94)、それをホストシステム17に転送する(S84)。   Next, in order to boot up the system, the host system 17 issues a read command to the IPL area 41 (as a normal operation) in S72 as in the case of the FW rewrite preparation process (S83). Since the apparatus 20 is set to the IPL replacement mode, the data in the FW rewrite program area 43 is read instead of the data in the IPL area 41 (S94) and transferred to the host system 17 (S84).

本来のIPLデータに代わりFW書換プログラムを受け取ったホストシステム17は、それを本来のIPLに対して行うのと同様にプログラム実行可能なメモリに転送して、実行する(S74)。これにより、BIOSの設定変更など特殊な操作を伴わずに、FW書換準備の次のシステム起動で自動的にFW書換プログラムが実行される。   The host system 17 that has received the FW rewriting program instead of the original IPL data transfers it to the program-executable memory and executes it in the same manner as it does for the original IPL (S74). As a result, the FW rewriting program is automatically executed at the next system start-up for FW rewriting preparation, without any special operation such as BIOS setting change.

FWの書き換えは、前述のとおり、アドレスC35に対するライトコマンドとして実装されているので、磁気ディスク装置20に対してはこのコマンドが発行され(S85)、それを受けて、磁気ディスク装置20は、FWコード領域44の内容を読み出して正しいFWコードであることを確認後、これをフラッシュROM15に書き込み、新しいFWで再起動(マスクROM11内のイニシャルロードプログラムの先頭からの実行)を行う(S95)。   As described above, the FW rewrite is implemented as a write command for the address C35, so this command is issued to the magnetic disk device 20 (S85), and the magnetic disk device 20 receives the FW in response to the command. After reading the contents of the code area 44 and confirming that it is a correct FW code, it is written in the flash ROM 15 and restarted with a new FW (execution from the beginning of the initial load program in the mask ROM 11) (S95).

この際、FWの書き換え処理には、ある程度の時間を要することになるが、FWの書き換えコマンドは、OSではなく専用のFW書き換えプログラムにより実行されているので、コマンド実行のタイムアウトが十分長く設定されており、タイムアウトエラーなどが生じるおそれがない。   At this time, although a certain amount of time is required for the FW rewrite process, since the FW rewrite command is executed by the dedicated FW rewrite program, not the OS, the command execution timeout is set sufficiently long. There is no risk of timeout errors.

また、本実施形態では、FW書き換えのための動作(FWコードの読み出しとチェック、フラッシュROMへの書き込み、新しいFWでの再起動)をアドレスC35へのライトコマンドという形で単一のコマンドとして実装しているが、FW書換プログラムの実行時には、磁気ディスク装置20に対して処理を要求する他のタスクは存在しないので、これらを別々のコマンドとして実装し、FW書換プログラムが各動作に対応したコマンドを順次実行していくという構成をとることも可能である。   In this embodiment, the operation for FW rewriting (reading and checking the FW code, writing to the flash ROM, restarting with a new FW) is implemented as a single command in the form of a write command to the address C35. However, when the FW rewrite program is executed, there are no other tasks that require processing to the magnetic disk device 20, so these are implemented as separate commands, and the FW rewrite program corresponds to each operation. It is also possible to adopt a configuration in which these are executed sequentially.

上記S74の最後の処理として、ホストシステム17は、FW書き換えが正常に完了したか否かを磁気ディスク装置20の実行結果を取得して(S86)、確認し、さらにFWが目的のものに更新されているかをドライブ情報取得コマンドの発行(S87)により確認する(S75)。これを受けた磁気ディスク装置20は、S93での処理と同様にホストシステム17に転送するデータを作成し(S96)、ホストシステム17に転送する(S88)が、この時点では既に新しいFWでの制御が行われているので、ドライブ情報に含まれるFWバージョンは新しいFWのものとなっているはずである。したがって、S75ではこれを確認することで、FWの書換処理が正しく行われたと判断し、以ってFWの書換処理は完了となる。   As the last process of S74, the host system 17 acquires the execution result of the magnetic disk device 20 to check whether or not the FW rewriting has been normally completed (S86), and further updates the FW to the target one. Is confirmed by issuing a drive information acquisition command (S87) (S75). In response to this, the magnetic disk device 20 creates data to be transferred to the host system 17 (S96) and transfers it to the host system 17 (S88) in the same manner as in S93. Since control is being performed, the FW version included in the drive information should be that of the new FW. Therefore, by confirming this in S75, it is determined that the FW rewriting process has been performed correctly, and thus the FW rewriting process is completed.

この後、ホストシステム17及び磁気ディスク装置20の電源が例えば遮断(S76、S97)(又はシステムがリブート)されるが、FWの書き換えに伴いIPL置換要求フラグ22がクリアされているので、次回電源が投入されれば、磁気ディスク装置20は、通常モードで起動し、ホストシステム全体においても通常どおりOSが起動する。   Thereafter, the host system 17 and the magnetic disk device 20 are powered off (S76, S97) (or the system is rebooted). However, since the IPL replacement request flag 22 is cleared as the FW is rewritten, Is turned on, the magnetic disk device 20 is activated in the normal mode, and the OS is activated as usual in the entire host system.

このように構成された本実施形態の情報処理システム18によれば、システム起動時のシーケンスにおいて、例えば、磁気ディスク装置20本体が立ち上がる過程で、ファームウェアの書き換えが実行されるのではなく、磁気ディスク装置20がホストシステム17側に認識された後(BIOSから制御を移行された後)、FW書換プログラムが単独でファームウェアの書換処理を実行するので、BIOS変更などの特殊な操作を伴わずに、ファームウェアの書換処理を安全且つ確実に行うことができる。   According to the information processing system 18 of the present embodiment configured as described above, in the sequence at the time of system startup, for example, in the process of starting up the main body of the magnetic disk device 20, the rewriting of firmware is not executed, but the magnetic disk After the device 20 is recognized by the host system 17 side (after the control is transferred from the BIOS), the FW rewriting program executes the firmware rewriting process alone, so that it is not accompanied by a special operation such as BIOS change. Firmware rewrite processing can be performed safely and reliably.

以上、本発明を実施の形態により具体的に説明したが、本発明は前記実施形態にのみ限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、上述した実施形態では、ディスクドライブ装置として磁気ディスク装置を適用したが、MOなどの光磁気ディスク装置や、また例えば光ディスク装置などを本発明に適用することも可能である。また、上記磁気ディスク装置20及びホストシステム17を備える情報処理システム18がPCを想定したものであったが、これに代えて、PCよりも大規模なPCサーバや、また例えばカーナビゲーションシステムなど、ホスト装置を有するあらゆる情報処理システムに対して本発明を適用することができる。   Although the present invention has been specifically described above by the embodiments, the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the invention. For example, in the above-described embodiment, a magnetic disk device is applied as the disk drive device. However, a magneto-optical disk device such as an MO or an optical disk device can also be applied to the present invention. Further, the information processing system 18 including the magnetic disk device 20 and the host system 17 is assumed to be a PC, but instead of this, a PC server having a larger scale than the PC, or a car navigation system, for example, The present invention can be applied to any information processing system having a host device.

本発明の一実施形態に係る磁気ディスク装置を含む情報処理システムを機能的に示すブロック図。1 is a block diagram functionally showing an information processing system including a magnetic disk device according to an embodiment of the present invention. 図1の磁気ディスク装置が備えるフラッシュROMの内部構成を示すメモリマップ。The memory map which shows the internal structure of flash ROM with which the magnetic disk apparatus of FIG. 1 is provided. 図2のメモリマップを構成するIPL置換要求フラグの内容を示す図。The figure which shows the content of the IPL replacement request flag which comprises the memory map of FIG. 図1の磁気ディスク装置が搭載する磁気ディスクの記憶領域を示す図。FIG. 2 is a diagram showing a storage area of a magnetic disk mounted on the magnetic disk device of FIG. 1. 図1の磁気ディスク装置本体のファームウェアの書換処理を示すフローチャート。3 is a flowchart showing a firmware rewrite process of the magnetic disk device main body in FIG. 1. 図1の情報処理システムにおいて、磁気ディスク装置のファームウェアの書き換え準備時の処理を示すフローチャート。3 is a flowchart showing processing at the time of preparation for rewriting firmware of a magnetic disk device in the information processing system of FIG. 1. 図1の情報処理システムにおいて、ホストシステムと磁気ディスク装置との間でコマンドを送受して行われるFWの書換実行時の処理を示すフローチャート。2 is a flowchart showing processing at the time of execution of FW rewrite performed by sending and receiving a command between a host system and a magnetic disk device in the information processing system of FIG. 1.

符号の説明Explanation of symbols

1…CPU、9…磁気ディスク、10…CPU−RAM、11…マスクROM、15…フラッシュROM、17…ホストシステム、18…情報処理システム、20…磁気ディスク装置、22…IPL置換要フラグ、23…FWコード、31…ユーザ領域、32…FWデータ領域、41…IPL領域、43…FW書換プログラム領域、44…FWコード領域。   DESCRIPTION OF SYMBOLS 1 ... CPU, 9 ... Magnetic disk, 10 ... CPU-RAM, 11 ... Mask ROM, 15 ... Flash ROM, 17 ... Host system, 18 ... Information processing system, 20 ... Magnetic disk apparatus, 22 ... IPL replacement required flag, 23 FW code, 31 User area, 32 FW data area, 41 IPL area, 43 FW rewrite program area, 44 FW code area.

Claims (13)

ディスク媒体へのアクセスが可能なディスクドライブ装置とホストシステムとの間でのコマンドのやり取りを通じて、該ディスクドライブ装置が備える不揮発性メモリ内のファームウェアを書き換えるファームウェアの書換方法であって、
書換用のファームウェアを、前記ホストシステムのブート及び前記不揮発性メモリ内のファームウェアの書き換えを実行可能な書換実行プログラムとともに前記ディスク媒体上に記憶させる書換準備ステップと、
前記書換準備ステップの実行後の前記ホストシステムへの電源投入時に前記ディスクドライブ装置の仕様を含むドライブ情報の取得要求を該ホストシステム側から受信した場合、該ディスクドライブ装置が該ドライブ情報を返信するドライブ情報返信ステップと、
前記ドライブ情報返信ステップの実行後、前記書換実行プログラムを取得した前記ホストシステム側から特定のコマンドが受信された場合、前記ディスクドライブ装置が、前記ディスク媒体上に記憶させておいた前記書換用のファームウェアの内容に前記不揮発性メモリ内のファームウェアを更新するステップと、
を有することを特徴とするファームウェアの書換方法。
A firmware rewriting method for rewriting firmware in a nonvolatile memory included in a disk drive device through exchange of commands between a disk drive device capable of accessing a disk medium and a host system,
A rewriting preparation step of storing rewriting firmware on the disk medium together with a rewriting execution program capable of booting the host system and rewriting the firmware in the nonvolatile memory;
If a drive information acquisition request including the specifications of the disk drive device is received from the host system when the host system is powered on after the rewriting preparation step, the disk drive device returns the drive information. Drive information reply step,
After the execution of the drive information return step, when a specific command is received from the host system side that has acquired the rewrite execution program, the disk drive device stores the rewrite information stored on the disk medium. Updating the firmware in the non-volatile memory with the contents of the firmware;
A method for rewriting firmware, comprising:
前記ディスク媒体上に設けられたブートプログラム格納領域内のブートプログラムの返信要求を、前記ホストシステム側から前記ディスクドライブ装置が受信した場合、該ブートプログラム格納領域とは異なるプログラム置換領域に格納された前記書換実行プログラムを前記返信要求の応答データとして返信するステップをさらに有することを特徴とする請求項1記載のファームウェアの書換方法。   When the disk drive device receives a boot program return request in the boot program storage area provided on the disk medium from the host system side, it is stored in a program replacement area different from the boot program storage area. The firmware rewriting method according to claim 1, further comprising a step of returning the rewriting execution program as response data of the reply request. 前記ディスク媒体上の全記憶領域のうち、所定の記憶単位で区画されたブロックの非存在領域に該当するアドレスへのリードコマンド又はライトコマンドが、前記特定のコマンドとして前記ホストシステム側から受信された場合、前記ディスクドライブ装置が、前記書換用のファームウェアと前記書換実行プログラムとの前記ディスク媒体への書込処理、及び/又は前記不揮発性メモリ内のファームウェアの更新処理を実行することを特徴とする請求項1又は2記載のファームウェアの書換方法。   A read command or a write command to an address corresponding to a non-existing area of a block partitioned by a predetermined storage unit among all the storage areas on the disk medium is received from the host system side as the specific command. In this case, the disk drive device executes the writing process of the rewriting firmware and the rewriting execution program to the disk medium and / or the updating process of the firmware in the nonvolatile memory. The firmware rewriting method according to claim 1 or 2. 前記書換準備ステップは、前記不揮発性メモリに格納されたファームウェアの書き換えを実行させるための書換処理モードで前記ホストシステムを起動させる書換要求フラグを前記不揮発性メモリにセットするステップをさらに有し、
前記ホストシステムの起動時に、前記不揮発性メモリ内に記憶された前記書換要求フラグが検出された場合、該ホストシステムの起動過程で該書換要求フラグの解除を行うことを特徴とする請求項1ないし3のいずれか1項に記載のファームウェアの書換方法。
The rewriting preparation step further includes the step of setting a rewrite request flag for starting the host system in the rewriting processing mode for rewriting firmware stored in the non-volatile memory in the non-volatile memory,
2. The rewrite request flag is canceled during the start-up process of the host system when the rewrite request flag stored in the nonvolatile memory is detected at the start-up of the host system. 4. The firmware rewriting method according to any one of 3 above.
前記書換処理モードで前記ホストシステムが起動した場合、前記ファームウェアの書換処理に関連する前記特定のコマンドに対して非該当のライトコマンドを無効にすることを特徴とする請求項4記載のファームウェアの書換方法。   5. The firmware rewrite according to claim 4, wherein when the host system is activated in the rewrite processing mode, a write command not applicable to the specific command related to the firmware rewrite processing is invalidated. Method. ファームウェアが格納された不揮発性メモリを備えホストシステムとの間でのコマンドのやり取りを行う、ディスク媒体へのアクセスが可能なディスクドライブ装置であって、
書換用のファームウェアを、前記ホストシステムのブート及び前記不揮発性メモリ内のファームウェアの書き換えを実行可能な書換実行プログラムとともに前記ディスク媒体上に記憶させる書換準備手段と、
前記書換準備手段による記憶処理を経て前記ホストシステムへの電源投入時に、前記ディスクドライブ装置の仕様を含むドライブ情報の取得要求を該ホストシステム側から受信した場合、該ドライブ情報を返信するドライブ情報返信手段と、
前記ドライブ情報返信手段による返信処理を経て前記書換実行プログラムを取得した前記ホストシステム側から特定のコマンドが受信された場合、前記ディスク媒体上に記憶させておいた前記書換用のファームウェアの内容に前記不揮発性メモリ内のファームウェアを更新する手段と、
を具備することを特徴とするディスクドライブ装置。
A disk drive device having a non-volatile memory storing firmware and exchanging commands with a host system and capable of accessing a disk medium,
Rewriting preparation means for storing firmware for rewriting on the disk medium together with a rewriting execution program capable of executing booting of the host system and rewriting of firmware in the nonvolatile memory;
When a power supply to the host system is turned on through storage processing by the rewrite preparation means, if a drive information acquisition request including the specifications of the disk drive device is received from the host system side, the drive information is returned to return the drive information Means,
When a specific command is received from the host system side that has acquired the rewrite execution program through a reply process by the drive information return means, the content of the rewrite firmware stored on the disk medium is Means for updating firmware in the non-volatile memory;
A disk drive device comprising:
前記ディスク媒体上に設けられたブートプログラム格納領域と、
前記ブートプログラム格納領域とは異なる領域として前記ディスク媒体上に設けられ、前記書換実行プログラムが格納されたプログラム置換領域と、
前記ブートプログラム格納領域内の前記ブートプログラムの返信要求を、前記ホストシステム側から受信した場合、前記プログラム置換領域に格納された前記書換実行プログラムを前記返信要求の応答データとして返信するブートプログラム置換手段と、
をさらに具備することを特徴とすることを特徴とする請求項6記載のディスクドライブ装置。
A boot program storage area provided on the disk medium;
A program replacement area provided on the disk medium as an area different from the boot program storage area and storing the rewrite execution program;
Boot program replacement means for returning the rewrite execution program stored in the program replacement area as response data of the reply request when a response to the boot program in the boot program storage area is received from the host system side When,
The disk drive device according to claim 6, further comprising:
前記ディスク媒体上の全記憶領域のうち、所定の記憶単位で区画されたブロックの非存在領域に該当するアドレスへのリードコマンド又はライトコマンドが、前記特定のコマンドとして前記ホストシステム側から受信された場合、前記書換用のファームウェアと前記書換実行プログラムとの前記ディスク媒体への書込処理、及び/又は前記不揮発性メモリ内のファームウェアの更新処理を実行する手段、
をさらに具備することを特徴とする請求項6又は7記載のディスクドライブ装置。
A read command or a write command to an address corresponding to a non-existing area of a block partitioned by a predetermined storage unit among all the storage areas on the disk medium is received from the host system side as the specific command. In this case, means for executing writing processing of the rewriting firmware and the rewriting execution program to the disk medium and / or updating processing of the firmware in the nonvolatile memory,
The disk drive device according to claim 6, further comprising:
前記書換準備手段は、前記不揮発性メモリに格納されたファームウェアの書き換えを実行させるための書換処理モードで前記ホストシステムを起動させる書換要求フラグを前記不揮発性メモリにセットする手段を備え、
前記ホストシステムの起動時に、前記不揮発性メモリ内に記憶された前記書換要求フラグが検出された場合、該ホストシステムの起動過程で該書換要求フラグの解除を行う手段をさらに具備することを特徴とする請求項6ないし8のいずれか1項に記載のディスクドライブ装置。
The rewrite preparation means comprises means for setting a rewrite request flag for starting the host system in the rewrite processing mode for rewriting firmware stored in the non-volatile memory in the non-volatile memory,
When the host system is booted, when the rewrite request flag stored in the non-volatile memory is detected, the host system further comprises means for releasing the rewrite request flag in the boot process of the host system. The disk drive device according to any one of claims 6 to 8.
前記書換処理モードで前記ホストシステムが起動した場合、前記ファームウェアの書換処理に関連する前記特定のコマンドに対して非該当のライトコマンドを無効にする手段をさらに具備することを特徴とする請求項9記載のディスクドライブ装置。   10. The apparatus according to claim 9, further comprising means for invalidating a write command not applicable to the specific command related to the firmware rewriting process when the host system is started in the rewriting process mode. The disk drive device described. ファームウェアが格納された不揮発性メモリを備えディスク媒体へのアクセスが可能なディスクドライブ装置と、該ディスクドライブ装置との間でコマンドのやり取りを行うホストシステムとを有する情報処理システムであって、
書換用のファームウェアを、前記ホストシステムのブート及び前記不揮発性メモリ内のファームウェアの書き換えを実行可能な書換実行プログラムとともに前記ディスク媒体上に記憶させる書換準備手段と、
前記書換準備手段による記憶処理を経て前記ホストシステムへの電源投入時に、前記ディスクドライブ装置の仕様を含むドライブ情報の取得要求を該ホストシステム側から該ディスクドライブ装置が受信した場合、該ドライブ情報を返信するドライブ情報返信手段と、
前記ドライブ情報返信手段による返信処理を経て前記書換実行プログラムを取得した前記ホストシステム側から特定のコマンドが前記ディスクドライブ装置により受信された場合、前記ディスク媒体上に記憶させておいた前記書換用のファームウェアの内容に前記不揮発性メモリ内のファームウェアを更新する手段と、
を具備することを特徴とする情報処理システム。
An information processing system having a disk drive device having a nonvolatile memory storing firmware and capable of accessing a disk medium, and a host system for exchanging commands with the disk drive device,
Rewriting preparation means for storing firmware for rewriting on the disk medium together with a rewriting execution program capable of executing booting of the host system and rewriting of firmware in the nonvolatile memory;
When the disk drive device receives a drive information acquisition request including the specification of the disk drive device from the host system side when the host system is powered on through the storage process by the rewrite preparation unit, the drive information is Drive information reply means to reply,
When a specific command is received by the disk drive device from the host system side that has acquired the rewrite execution program through a reply process by the drive information return means, the rewrite program stored on the disk medium is received. Means for updating the firmware in the non-volatile memory to the contents of the firmware;
An information processing system comprising:
前記ディスク媒体上に設けられたブートプログラム格納領域と、
前記ブートプログラム格納領域とは異なる領域として前記ディスク媒体上に設けられ、前記書換実行プログラムが格納されたプログラム置換領域と、
前記ブートプログラム格納領域内の前記ブートプログラムの返信要求を、前記ホストシステム側から前記ディスクドライブ装置が受信した場合、前記プログラム置換領域に格納された前記書換実行プログラムを前記返信要求の応答データとして返信するブートプログラム置換手段と、
をさらに具備することを特徴とする請求項11記載の情報処理システム。
A boot program storage area provided on the disk medium;
A program replacement area provided on the disk medium as an area different from the boot program storage area and storing the rewrite execution program;
When the disk drive apparatus receives the boot program return request in the boot program storage area from the host system side, the rewrite execution program stored in the program replacement area is returned as response data of the reply request. Boot program replacement means to
The information processing system according to claim 11, further comprising:
前記ディスク媒体上の全記憶領域のうち、所定の記憶単位で区画されたブロックの非存在領域に該当するアドレスへのリードコマンド又はライトコマンドが、前記特定のコマンドとして前記ホストシステム側から前記ディスクドライブ装置により受信された場合、前記書換用のファームウェアと前記書換実行プログラムとの前記ディスク媒体への書込処理、及び/又は前記不揮発性メモリ内のファームウェアの更新処理を実行する手段、
をさらに具備することを特徴とする請求項11又は12記載の情報処理システム。
A read command or a write command to an address corresponding to a non-existing area of a block partitioned in a predetermined storage unit among all the storage areas on the disk medium is sent from the host system side to the disk drive as the specific command. Means for executing a process of writing the rewriting firmware and the rewriting execution program to the disk medium and / or a process of updating the firmware in the non-volatile memory when received by a device;
The information processing system according to claim 11, further comprising:
JP2004314286A 2004-10-28 2004-10-28 Firmware rewriting method, disk drive device, and information processing system Active JP4575112B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004314286A JP4575112B2 (en) 2004-10-28 2004-10-28 Firmware rewriting method, disk drive device, and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004314286A JP4575112B2 (en) 2004-10-28 2004-10-28 Firmware rewriting method, disk drive device, and information processing system

Publications (2)

Publication Number Publication Date
JP2006127140A true JP2006127140A (en) 2006-05-18
JP4575112B2 JP4575112B2 (en) 2010-11-04

Family

ID=36721846

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004314286A Active JP4575112B2 (en) 2004-10-28 2004-10-28 Firmware rewriting method, disk drive device, and information processing system

Country Status (1)

Country Link
JP (1) JP4575112B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009110297A (en) * 2007-10-30 2009-05-21 Toshiba Corp Information processing apparatus and maintenance method of the same
CN109710292A (en) * 2018-12-28 2019-05-03 Tcl移动通信科技(宁波)有限公司 Mobile terminal brush machine controls processing method, mobile terminal and storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58211257A (en) * 1982-06-02 1983-12-08 Fujitsu Ltd Write controlling system of magnetic disk device
JPH09101887A (en) * 1995-10-06 1997-04-15 Nissin Electric Co Ltd Disk array device
JP2002108708A (en) * 2000-09-27 2002-04-12 Toshiba Corp Raid controller
JP2004062663A (en) * 2002-07-30 2004-02-26 Toshiba Corp Method and device for rewriting program execution in disk storage device
JP2004213427A (en) * 2003-01-06 2004-07-29 Workbit Corp Automatic execution control device and external recording device
JP2004296089A (en) * 2004-07-26 2004-10-21 Fujitsu Ltd Optical storage device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58211257A (en) * 1982-06-02 1983-12-08 Fujitsu Ltd Write controlling system of magnetic disk device
JPH09101887A (en) * 1995-10-06 1997-04-15 Nissin Electric Co Ltd Disk array device
JP2002108708A (en) * 2000-09-27 2002-04-12 Toshiba Corp Raid controller
JP2004062663A (en) * 2002-07-30 2004-02-26 Toshiba Corp Method and device for rewriting program execution in disk storage device
JP2004213427A (en) * 2003-01-06 2004-07-29 Workbit Corp Automatic execution control device and external recording device
JP2004296089A (en) * 2004-07-26 2004-10-21 Fujitsu Ltd Optical storage device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009110297A (en) * 2007-10-30 2009-05-21 Toshiba Corp Information processing apparatus and maintenance method of the same
CN109710292A (en) * 2018-12-28 2019-05-03 Tcl移动通信科技(宁波)有限公司 Mobile terminal brush machine controls processing method, mobile terminal and storage medium
CN109710292B (en) * 2018-12-28 2024-01-05 Tcl移动通信科技(宁波)有限公司 Mobile terminal machine brushing control processing method, mobile terminal and storage medium

Also Published As

Publication number Publication date
JP4575112B2 (en) 2010-11-04

Similar Documents

Publication Publication Date Title
JP3310060B2 (en) Storage device and control program rewriting method for the same
JP5220747B2 (en) Nonvolatile storage device and nonvolatile storage system
JP4245585B2 (en) Memory controller, flash memory system, and flash memory control method
JP4828816B2 (en) Memory card, semiconductor device, and memory card control method
US8266611B2 (en) Hard disk drive with disk embedded DOS boot image and firmware download method
JP2000148465A (en) Firmware changing method
JP3268130B2 (en) Data processing device using flash EEPROM
JP4046877B2 (en) Batch erase nonvolatile memory and mobile phone
JP5959958B2 (en) Storage device and data erasing method in storage device
US8667242B2 (en) Data access method and system, storage medium controller and storage system
JP6753257B2 (en) Information processing device, information processing system, information processing device control method and information processing device control program
JP5049835B2 (en) Hybrid recording device
CN113064604B (en) Firmware upgrading method and device
JP2014010498A5 (en)
JP2000163268A (en) Computer
JP4575112B2 (en) Firmware rewriting method, disk drive device, and information processing system
US8429336B2 (en) Disk drive and method of changing a program therefor
JP4794530B2 (en) Semiconductor device and mobile phone
JPH11282765A (en) External storage device using flash memory
JP3708914B2 (en) Method and apparatus for rewriting a program executed in a disk storage device
JP4735765B2 (en) Linux program startup system
JP4572205B2 (en) Flash memory drive device, control method thereof, and program thereof
JP2001344156A (en) Device with flash memory and data rewriting method
JP2005189907A (en) Disk device
JP2008003668A (en) System and method of rewriting control program, rewriting program, information processor, and program and method of controlling the same

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100225

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: 20100727

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100819

R151 Written notification of patent or utility model registration

Ref document number: 4575112

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130827

Year of fee payment: 3