JP6554881B2 - Semiconductor device and storage medium control method - Google Patents

Semiconductor device and storage medium control method Download PDF

Info

Publication number
JP6554881B2
JP6554881B2 JP2015078398A JP2015078398A JP6554881B2 JP 6554881 B2 JP6554881 B2 JP 6554881B2 JP 2015078398 A JP2015078398 A JP 2015078398A JP 2015078398 A JP2015078398 A JP 2015078398A JP 6554881 B2 JP6554881 B2 JP 6554881B2
Authority
JP
Japan
Prior art keywords
storage medium
unit
boot
information
boot information
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.)
Active
Application number
JP2015078398A
Other languages
Japanese (ja)
Other versions
JP2016200861A (en
Inventor
裕太 奥山
裕太 奥山
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.)
Socionext Inc
Original Assignee
Socionext Inc
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 Socionext Inc filed Critical Socionext Inc
Priority to JP2015078398A priority Critical patent/JP6554881B2/en
Publication of JP2016200861A publication Critical patent/JP2016200861A/en
Application granted granted Critical
Publication of JP6554881B2 publication Critical patent/JP6554881B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

本発明は、半導体装置および記憶媒体の制御方法に関する。   The present invention relates to a semiconductor device and a storage medium control method.

コンピュータ等の情報処理装置は、フラッシュメモリ、ハードディスク等の複数のセクタを有する記憶媒体を外部記憶装置として使用する。記憶媒体の先頭セクタは、マスターブートレコード(以下、MBR(Master Boot Record)とも称する)と呼ばれ、記憶媒体の起動時に最初にアクセスされる。   An information processing apparatus such as a computer uses a storage medium having a plurality of sectors such as a flash memory and a hard disk as an external storage device. The first sector of the storage medium is called a master boot record (hereinafter also referred to as MBR (Master Boot Record)), and is first accessed when the storage medium is activated.

例えば、起動ディスクとしてハードディスクが接続されたコンピュータは、電源が投入された場合、ハードディスクのMBRに格納された情報に基づいて、OS(Operating System)を起動する。したがって、ハードディスクのMBRに格納された情報が破壊された場合、コンピュータがOSを起動することは困難である。   For example, a computer to which a hard disk is connected as a startup disk starts up an operating system (OS) based on information stored in the MBR of the hard disk when the power is turned on. Therefore, when information stored in the MBR of the hard disk is destroyed, it is difficult for the computer to start the OS.

このため、MBRから読み出された情報が正常でない場合に、MBRに格納された情報を修復するコンピュータが提案されている(例えば、特許文献1参照)。この種のコンピュータは、ハードディスクのMBRとは別の領域(以下、バックアップMBRとも称する)に、MBRに格納する情報をコピーする。例えば、MBRに格納された情報が破壊された場合、コンピュータは、バックアップMBRに格納された情報をMBRにコピーし、MBRにコピーした情報に基づいてOSを起動する。このように、コンピュータは、起動ディスクとして使用されるハードディスクのMBRをOSの起動時に修復する。そして、コンピュータは、電源が切断される場合に、電源の切断時にMBRに保持している情報をバックアップMBRにコピーする。   For this reason, a computer that restores information stored in the MBR when the information read from the MBR is not normal has been proposed (for example, see Patent Document 1). This type of computer copies information stored in the MBR to an area different from the MBR of the hard disk (hereinafter also referred to as backup MBR). For example, when the information stored in the MBR is destroyed, the computer copies the information stored in the backup MBR to the MBR and starts the OS based on the information copied to the MBR. In this way, the computer repairs the MBR of the hard disk used as the boot disk when the OS is booted. Then, when the power is turned off, the computer copies the information held in the MBR when the power is turned off to the backup MBR.

なお、OSの起動を安全に実行するために、OSの起動処理に用いられるデータの安全性を確認してからOSを起動する方法が提案されている(例えば、特許文献2−4参照)。この種の方法では、OSの起動処理に用いられるデータのハッシュ値を算出し、算出したハッシュ値を用いてデータの安全性を確認する。   In order to safely start the OS, there has been proposed a method of starting the OS after confirming the safety of data used for the OS startup process (see, for example, Patent Documents 2-4). In this type of method, a hash value of data used for the OS activation process is calculated, and the safety of the data is confirmed using the calculated hash value.

また、所定のブロック単位でデータが消去されるフラッシュメモリでは、フラッシュメモリにアクセスするために必要な情報等を含むブートデータは、例えば、先頭のブロックに格納される。以下、ブートデータが格納されるブロックは、ブートブロックとも称される。例えば、フラッシュメモリを制御する制御装置は、フラッシュメモリを起動する場合、フラッシュメモリのブートブロックに格納されたブートデータを最初に読み出す。その後、フラッシュメモリを制御する制御装置は、フラッシュメモリに対するアクセスを、ブートブロックから読み出したブートデータに基づいて実行する。   In the flash memory from which data is erased in a predetermined block unit, boot data including information necessary for accessing the flash memory is stored in, for example, the first block. Hereinafter, a block in which boot data is stored is also referred to as a boot block. For example, when starting the flash memory, the control device that controls the flash memory first reads the boot data stored in the boot block of the flash memory. Thereafter, the control device that controls the flash memory executes access to the flash memory based on the boot data read from the boot block.

したがって、フラッシュメモリのブートブロックに格納されたブートデータが破壊された場合、フラッシュメモリに対する正常なアクセスが実行されない場合がある。このため、ブートデータを2つブートブロックに格納するフラッシュメモリを含む外部記憶装置が提案されている(例えば、特許文献5参照)。この種の外部記憶装置は、外部記憶装置の起動時に2つのブートブロックを参照する。   Therefore, when the boot data stored in the boot block of the flash memory is destroyed, normal access to the flash memory may not be executed. For this reason, an external storage device including a flash memory that stores two boot data in a boot block has been proposed (see, for example, Patent Document 5). This type of external storage device refers to two boot blocks when the external storage device is activated.

特開2012−243199号公報JP 2012-243199 A 特開2006−323814号公報JP 2006-323814 A 特開2007−102791号公報JP 2007-102791 A 特開2009−521760号公報JP 2009-521760 A 特開平11−110141号公報JP-A-11-110141

MBRに格納された情報をMBRとは別の領域に格納する記憶媒体では、MBRとは別の領域に格納された情報(MBRに格納された情報のバックアップ)と、MBRに格納された情報との両方が同時に破壊されるおそれがある。この場合、記憶媒体のMBRは正常に修復されないおそれがある。このため、記憶媒体の信頼度は低下する。   In a storage medium that stores information stored in the MBR in an area different from the MBR, information stored in an area other than the MBR (a backup of information stored in the MBR), information stored in the MBR, and Both may be destroyed at the same time. In this case, the MBR of the storage medium may not be repaired normally. For this reason, the reliability of a storage medium falls.

1つの側面では、本件開示の半導体装置および記憶媒体の制御方法は、記憶媒体の信頼度を向上することを目的とする。   In one aspect, the semiconductor device and the storage medium control method disclosed herein are intended to improve the reliability of the storage medium.

一観点によれば、半導体装置は、記憶媒体の起動時に参照されるブート領域に格納されたブート情報と、記憶媒体を識別する識別情報とを、アクセス対象の記憶媒体である第1記憶媒体から読み出すアクセス部と、第1記憶媒体から読み出された第1ブート情報が正常である場合、複数の記憶媒体のそれぞれのブート情報および識別情報を記憶する記憶部に、第1記憶媒体から読み出された第1ブート情報を第1記憶媒体の第1識別情報に対応付けて格納するバックアップ部と、第1記憶媒体から読み出された第1ブート情報が正常でなく、かつ、第1記憶媒体の第1識別情報が記憶部に記憶されている場合、第1記憶媒体の第1識別情報に対応する第2ブート情報を記憶部から読み出し、第1記憶媒体のブート領域に格納された第1ブート情報を記憶部から読み出した第2ブート情報を用いて修復する修復部とを有し、第1記憶媒体から読み出された第1ブート情報が正常である場合、バックアップ部は、第1記憶媒体から読み出された第1ブート情報を用いて第1のハッシュ値を算出し、第1記憶媒体から読み出された第1ブート情報を第1記憶媒体の第1識別情報に対応付けて記憶部に格納した後に、第1記憶媒体の第1識別情報に対応する第2ブート情報を記憶部から読み出し、記憶部から読み出した第2ブート情報を用いて第2のハッシュ値を算出し、第1のハッシュ値が第2のハッシュ値と等しい場合、第2のハッシュ値を第1記憶媒体の第1識別情報に対応付けて記憶部に格納する。 According to one aspect, the semiconductor device receives boot information stored in a boot area referred to when starting the storage medium and identification information for identifying the storage medium from the first storage medium that is the storage medium to be accessed. When the access unit to be read and the first boot information read from the first storage medium are normal, read from the first storage medium to the storage unit storing the boot information and the identification information of each of the plurality of storage media. A backup unit that stores the first boot information that is associated with the first identification information of the first storage medium, the first boot information read from the first storage medium is not normal, and the first storage medium When the first identification information is stored in the storage unit, the second boot information corresponding to the first identification information of the first storage medium is read from the storage unit and stored in the boot area of the first storage medium. boot Possess a restoration unit for repair using the second boot information read the broadcast from the storage unit, if the first boot information read from the first storage medium is normal, backup unit, a first storage medium A first hash value is calculated using the first boot information read from the first boot information, the first boot information read from the first storage medium is associated with the first identification information of the first storage medium, and the storage unit , The second boot information corresponding to the first identification information of the first storage medium is read from the storage unit, a second hash value is calculated using the second boot information read from the storage unit, Is equal to the second hash value, the second hash value is stored in the storage unit in association with the first identification information of the first storage medium.

別の観点によれば、記憶媒体の制御方法では、記憶媒体の起動時に参照されるブート領域に格納されたブート情報と、記憶媒体を識別する識別情報とを、アクセス対象の記憶媒体である第1記憶媒体から読み出し、第1記憶媒体から読み出された第1ブート情報が正常である場合、複数の記憶媒体のそれぞれのブート情報および識別情報を記憶する記憶部に、第1記憶媒体から読み出された第1ブート情報を第1記憶媒体の第1識別情報に対応付けて格納し、第1記憶媒体から読み出された第1ブート情報が正常でなく、かつ、第1記憶媒体の第1識別情報が記憶部に記憶されている場合、第1記憶媒体の第1識別情報に対応する第2ブート情報を記憶部から読み出し、第1記憶媒体のブート領域に格納された第1ブート情報を記憶部から読み出した第2ブート情報を用いて修復し、第1記憶媒体から読み出された第1ブート情報が正常である場合、第1記憶媒体から読み出された第1ブート情報を用いて第1のハッシュ値を算出し、第1記憶媒体から読み出された第1ブート情報を第1記憶媒体の第1識別情報に対応付けて記憶部に格納した後に、第1記憶媒体の第1識別情報に対応する第2ブート情報を記憶部から読み出し、記憶部から読み出した第2ブート情報を用いて第2のハッシュ値を算出し、第1のハッシュ値が第2のハッシュ値と等しい場合、第2のハッシュ値を第1記憶媒体の第1識別情報に対応付けて記憶部に格納する。 According to another aspect, in the storage medium control method, the boot information stored in the boot area referred to when the storage medium is started and the identification information for identifying the storage medium are the storage medium to be accessed. When the first boot information read from the first storage medium is normal and the first boot information read from the first storage medium is normal, the first boot information read from the first storage medium is stored in the storage unit storing the boot information and the identification information of each of the plurality of storage media. The issued first boot information is stored in association with the first identification information of the first storage medium, the first boot information read from the first storage medium is not normal, and the first boot information of the first storage medium When one identification information is stored in the storage unit, the second boot information corresponding to the first identification information of the first storage medium is read from the storage unit, and the first boot information stored in the boot area of the first storage medium Read from the memory Repair using the second boot information issued, when the first boot information read from the first storage medium is normal, first using the first boot information read from the first storage medium After calculating the hash value and storing the first boot information read from the first storage medium in the storage unit in association with the first identification information of the first storage medium, the first boot information is stored in the first identification information of the first storage medium. When the corresponding second boot information is read from the storage unit, the second hash value is calculated using the second boot information read from the storage unit, and the first hash value is equal to the second hash value, the second Are stored in the storage unit in association with the first identification information of the first storage medium.

本件開示の半導体装置および記憶媒体の制御方法は、記憶媒体の信頼度を向上できる。   The semiconductor device and the storage medium control method disclosed herein can improve the reliability of the storage medium.

半導体装置および記憶媒体の制御方法の一実施形態を示す図である。It is a figure which shows one Embodiment of the control method of a semiconductor device and a storage medium. 半導体装置および記憶媒体の制御方法の別の実施形態を示す図である。It is a figure which shows another embodiment of the control method of a semiconductor device and a storage medium. 図2に示した記憶部の一例を示す図である。It is a figure which shows an example of the memory | storage part shown in FIG. 図2に示した半導体装置の動作の一例を示す図である。FIG. 3 is a diagram illustrating an example of operation of the semiconductor device illustrated in FIG. 2. 図4に示したバックアップ処理の一例を示す図である。FIG. 5 is a diagram illustrating an example of a backup process illustrated in FIG. 4. 図4に示した修復処理の一例を示す図である。It is a figure which shows an example of the repair process shown in FIG. 図2に示した半導体装置の動作の別の例を示す図である。FIG. 3 is a diagram illustrating another example of the operation of the semiconductor device illustrated in FIG. 2. 半導体装置および記憶媒体の制御方法の別の実施形態を示す図である。It is a figure which shows another embodiment of the control method of a semiconductor device and a storage medium. 図2に示した半導体装置のハードウェア構成の一例を示す図である。FIG. 3 is a diagram illustrating an example of a hardware configuration of the semiconductor device illustrated in FIG. 2.

以下、実施形態について、図面を用いて説明する。   Hereinafter, embodiments will be described with reference to the drawings.

図1は、半導体装置および記憶媒体の制御方法の一実施形態を示す。図1の破線の矢印は、信号等の情報の流れを示す。図1に示す半導体装置10は、ハードウェアのみで実現されてもよく、記憶媒体の制御プログラム等のソフトウェアによりハードウェアを制御することにより実現されてもよい。   FIG. 1 shows an embodiment of a method for controlling a semiconductor device and a storage medium. The dashed arrows in FIG. 1 indicate the flow of information such as signals. The semiconductor device 10 shown in FIG. 1 may be realized only by hardware, or may be realized by controlling hardware by software such as a storage medium control program.

半導体装置10は、USB(Universal Serial Bus)メモリ、SDメモリカード、ハードディスク等の記憶媒体30と不揮発性メモリ等の記憶部20とに接続される。例えば、半導体装置10は、記憶媒体30が着脱可能に接続されるコンピュータおよび携帯機器等の情報処理装置に搭載される。   The semiconductor device 10 is connected to a storage medium 30 such as a USB (Universal Serial Bus) memory, an SD memory card, and a hard disk, and a storage unit 20 such as a nonvolatile memory. For example, the semiconductor device 10 is mounted on an information processing apparatus such as a computer and a portable device to which the storage medium 30 is detachably connected.

記憶媒体30は、記憶媒体30の起動時に半導体装置10に最初にアクセスされるマスターブートレコード(以下、MBRとも称する)32と、記憶媒体30が半導体装置10に認識された後にアクセス可能になるデータ領域34とを有する。MBR32は、複数のセクタのうちの先頭セクタであり、記憶媒体30の起動時に参照されるブート領域の一例である。例えば、記憶媒体30の起動時に参照されるパーティションテーブル等を含むブート情報BINF1は、記憶媒体30の先頭セクタであるMBR32に格納される。パーティションテーブルは、記憶媒体30のデータ領域34を複数の領域(パーティション)に分割した際の各パーティションに関する情報を有する。なお、記憶媒体30は、データ領域34を1つのパーティションとして使用してもよい。また、例えば、記憶媒体30を識別するシリアル番号等の識別情報IDINFは、記憶媒体30の規格等により決められた領域に格納される。   The storage medium 30 includes a master boot record (hereinafter also referred to as MBR) 32 that is first accessed by the semiconductor device 10 when the storage medium 30 is started up, and data that can be accessed after the storage device 30 is recognized by the semiconductor device 10. Region 34. The MBR 32 is a head sector of a plurality of sectors, and is an example of a boot area that is referred to when the storage medium 30 is activated. For example, boot information BINF 1 including a partition table and the like that is referred to when the storage medium 30 is started is stored in the MBR 32 that is the first sector of the storage medium 30. The partition table has information regarding each partition when the data area 34 of the storage medium 30 is divided into a plurality of areas (partitions). The storage medium 30 may use the data area 34 as one partition. Further, for example, identification information IDINF such as a serial number for identifying the storage medium 30 is stored in an area determined by the standard of the storage medium 30.

半導体装置10は、記憶媒体30が接続された場合、記憶媒体30のMBR32に最初にアクセスし、MBR32に格納されたブート情報BINF1を読み出す。そして、半導体装置10は、MBR32から読み出したブート情報BINF1が正常である場合、ブート情報BINF1に基づいて、記憶媒体30のデータ領域34にアクセスする。なお、半導体装置10は、MBR32から読み出したブート情報BINF1が正常でない場合、記憶媒体30のMBR32に格納されたブート情報BINF1を、記憶部20に記憶されたブート情報BINF2を用いて修復する。例えば、半導体装置10は、MBR32から読み出したブート情報BINF1を用いても記憶媒体30を認識できない場合、ブート情報BINF1が正常でないと判定する。半導体装置10によるMBR32の修復は、例えば、記憶媒体の制御方法に基づいて実行される。   When the storage medium 30 is connected, the semiconductor device 10 first accesses the MBR 32 of the storage medium 30 and reads the boot information BINF1 stored in the MBR 32. Then, when the boot information BINF1 read from the MBR 32 is normal, the semiconductor device 10 accesses the data area 34 of the storage medium 30 based on the boot information BINF1. When the boot information BINF1 read from the MBR 32 is not normal, the semiconductor device 10 restores the boot information BINF1 stored in the MBR 32 of the storage medium 30 using the boot information BINF2 stored in the storage unit 20. For example, if the storage medium 30 cannot be recognized using the boot information BINF1 read from the MBR 32, the semiconductor device 10 determines that the boot information BINF1 is not normal. The repair of the MBR 32 by the semiconductor device 10 is executed based on, for example, a storage medium control method.

半導体装置10は、アクセス部12、バックアップ部14および修復部16を有する。アクセス部12は、アクセス対象の記憶媒体30が半導体装置10に接続された場合、記憶媒体30のMBR32に格納されたブート情報BINF1と、記憶媒体30を識別する識別情報IDINFとを、記憶媒体30から読み出す。そして、アクセス部12は、記憶媒体30から読み出したブート情報BINF1および識別情報IDINFを、バックアップ部14および修復部16に転送する。   The semiconductor device 10 includes an access unit 12, a backup unit 14, and a repair unit 16. When the access target storage medium 30 is connected to the semiconductor device 10, the access unit 12 receives the boot information BINF 1 stored in the MBR 32 of the storage medium 30 and the identification information IDINF for identifying the storage medium 30. Read from. Then, the access unit 12 transfers the boot information BINF1 and the identification information IDINF read from the storage medium 30 to the backup unit 14 and the restoration unit 16.

バックアップ部14は、アクセス部12から受けたブート情報BINF1が正常である場合、アクセス部12から受けたブート情報BINF1をブート情報BINF2とし、ブート情報BINF2と識別情報IDINFとを互いに対応付けて記憶部20に格納する。すなわち、バックアップ部14は、記憶媒体30から読み出されたブート情報BINF1が正常である場合、記憶媒体30から読み出されたブート情報BINF1をブート情報BINF2として記憶媒体30の識別情報IDINFに対応付けて記憶部20に格納する。例えば、互いに異なる複数の記憶媒体30が半導体装置10に同時または異なる時刻に接続された場合、記憶部20は、複数の記憶媒体30のブート情報BINF2および識別情報IDINFを記憶する。   When the boot information BINF1 received from the access unit 12 is normal, the backup unit 14 sets the boot information BINF1 received from the access unit 12 as the boot information BINF2, and associates the boot information BINF2 and the identification information IDINF with each other. 20. That is, when the boot information BINF1 read from the storage medium 30 is normal, the backup unit 14 associates the boot information BINF1 read from the storage medium 30 with the identification information IDINF of the storage medium 30 as the boot information BINF2. And stored in the storage unit 20. For example, when a plurality of different storage media 30 are connected to the semiconductor device 10 at the same time or at different times, the storage unit 20 stores the boot information BINF2 and the identification information IDINF of the plurality of storage media 30.

修復部16は、記憶媒体30から読み出されたブート情報BINF1が正常でなく、かつ、記憶媒体30の識別情報IDINFが記憶部20に記憶されている場合、記憶媒体30の識別情報IDINFに対応するブート情報BINF2を記憶部20から読み出す。そして、修復部16は、記憶媒体30のMBR32に格納されたブート情報BINF1を、記憶部20から読み出したブート情報BINF2を用いて修復する。   The restoration unit 16 corresponds to the identification information IDINF of the storage medium 30 when the boot information BINF1 read from the storage medium 30 is not normal and the identification information IDINF of the storage medium 30 is stored in the storage unit 20. Boot information BINF2 to be read from the storage unit 20. Then, the repair unit 16 repairs the boot information BINF1 stored in the MBR 32 of the storage medium 30 using the boot information BINF2 read from the storage unit 20.

例えば、修復部16は、アクセス部12から受けたブート情報BINF1が正常でない場合、アクセス部12から受けた識別情報IDINFが記憶部20に記憶されているか否かを判定する。アクセス部12から受けた識別情報IDINFが記憶部20に記憶されている場合、修復部16は、アクセス部12から受けた識別情報IDINFに対応するブート情報BINF2を記憶部20から読み出す。そして、修復部16は、記憶部20から読み出したブート情報BINF2をブート情報BINF1として、アクセス部12を介して記憶媒体30のMBR32に格納する。これにより、記憶媒体30のMBR32に格納されるブート情報BINF1は、修復される。   For example, when the boot information BINF1 received from the access unit 12 is not normal, the restoration unit 16 determines whether or not the identification information IDINF received from the access unit 12 is stored in the storage unit 20. When the identification information IDINF received from the access unit 12 is stored in the storage unit 20, the restoration unit 16 reads the boot information BINF 2 corresponding to the identification information IDINF received from the access unit 12 from the storage unit 20. Then, the restoration unit 16 stores the boot information BINF2 read from the storage unit 20 as the boot information BINF1 in the MBR 32 of the storage medium 30 via the access unit 12. Thereby, the boot information BINF1 stored in the MBR 32 of the storage medium 30 is restored.

このように、複数の記憶媒体30のブート情報BINF2が識別情報IDINFに対応付けて記憶部20に記憶されているため、半導体装置10は、複数の記憶媒体30が使用される場合でも、MBR32の修復に使用するブート情報BINF2を選択できる。したがって、半導体装置10は、複数の記憶媒体30が使用される場合でも、MBR32に格納されたブート情報BINF1が破壊された記憶媒体30のMBR32を修復できる。   As described above, since the boot information BINF2 of the plurality of storage media 30 is stored in the storage unit 20 in association with the identification information IDINF, the semiconductor device 10 can store the MBR 32 even when the plurality of storage media 30 are used. Boot information BINF2 used for restoration can be selected. Therefore, the semiconductor device 10 can repair the MBR 32 of the storage medium 30 in which the boot information BINF1 stored in the MBR 32 is destroyed even when a plurality of storage media 30 are used.

なお、半導体装置10の構成は、図1に示す例に限定されない。例えば、記憶部20は、半導体装置10に含まれてもよい。また、記憶部20は、USBメモリ等のリムーバルディスクでもよい。あるいは、記憶部20に電源が常に供給される場合、記憶部20は、揮発性メモリでもよい。   The configuration of the semiconductor device 10 is not limited to the example illustrated in FIG. For example, the storage unit 20 may be included in the semiconductor device 10. The storage unit 20 may be a removable disk such as a USB memory. Alternatively, when power is always supplied to the storage unit 20, the storage unit 20 may be a volatile memory.

以上、図1に示す実施形態では、記憶媒体30の信頼度を向上できる。例えば、ブート情報BINF1のバックアップであるブート情報BINF2は、記憶媒体30とは別の記憶部20に記憶される。これにより、記憶媒体30のMBR32に格納されたブート情報BINF1と、ブート情報BINF1のバックアップであるブート情報BINF2とが同時に破壊されることを抑制することができる。   As described above, in the embodiment shown in FIG. 1, the reliability of the storage medium 30 can be improved. For example, boot information BINF2 that is a backup of the boot information BINF1 is stored in a storage unit 20 that is different from the storage medium 30. Thereby, it is possible to suppress the simultaneous destruction of the boot information BINF1 stored in the MBR 32 of the storage medium 30 and the boot information BINF2 that is a backup of the boot information BINF1.

ここで、ブート情報BINF1のバックアップであるブート情報BINF2とブート情報BINF1とを同じ記憶媒体に記憶する従来方法では、記憶媒体のMBRに格納されたブート情報BINF1とブート情報BINF2とが同時に破壊されるおそれがある。例えば、記憶媒体が半導体装置と非接続の場合でも、記憶媒体のMBRに格納されたブート情報BINF1を破壊した要因により、記憶媒体のMBRと別の領域に格納されたブート情報BINF2(ブート情報BINF1のバックアップ)も破壊されるおそれがある。   Here, in the conventional method of storing the boot information BINF2 and the boot information BINF1 which are backups of the boot information BINF1 in the same storage medium, the boot information BINF1 and the boot information BINF2 stored in the MBR of the storage medium are destroyed at the same time. There is a fear. For example, even when the storage medium is not connected to the semiconductor device, the boot information BINF2 (boot information BINF1) stored in a different area from the MBR of the storage medium due to the factor that destroyed the boot information BINF1 stored in the MBR of the storage medium. Backup) may also be destroyed.

これに対し、図1に示す実施形態では、記憶媒体30が半導体装置10と非接続の場合、記憶媒体30は記憶部20に接続されない。このため、記憶媒体30が半導体装置10と非接続の場合では、記憶媒体30のMBR32に格納されたブート情報BINF1を破壊した要因は、ブート情報BINF2を記憶した記憶部20に影響を与えない。したがって、図1に示す実施形態では、記憶媒体30のMBR32に格納されたブート情報BINF1とブート情報BINF2(ブート情報BINF1のバックアップ)とが同時に破壊されることを抑制できる。これにより、図1に示す実施形態では、記憶媒体30のMBR32を修復することができなくなることを抑制でき、記憶媒体30のデータ領域34にアクセスできなくなることを抑制できる。この結果、記憶媒体30の信頼度を向上することができる。   In contrast, in the embodiment shown in FIG. 1, when the storage medium 30 is not connected to the semiconductor device 10, the storage medium 30 is not connected to the storage unit 20. For this reason, when the storage medium 30 is not connected to the semiconductor device 10, the factor that destroyed the boot information BINF 1 stored in the MBR 32 of the storage medium 30 does not affect the storage unit 20 that stores the boot information BINF 2. Therefore, in the embodiment shown in FIG. 1, it is possible to prevent the boot information BINF1 and the boot information BINF2 (backup of the boot information BINF1) stored in the MBR 32 of the storage medium 30 from being destroyed at the same time. Thereby, in the embodiment shown in FIG. 1, it is possible to prevent the MBR 32 of the storage medium 30 from being repaired, and to prevent the data area 34 of the storage medium 30 from being accessed. As a result, the reliability of the storage medium 30 can be improved.

なお、識別情報IDINFを用いずに、ブート情報BINF2を記憶部20に格納する方法では、複数の記憶媒体30が半導体装置10に接続される場合、記憶媒体30のMBR2が誤ったブート情報BINF2で修復されるおそれがある。   In the method of storing the boot information BINF2 in the storage unit 20 without using the identification information IDINF, when a plurality of storage media 30 are connected to the semiconductor device 10, the MBR2 of the storage media 30 is the wrong boot information BINF2. May be repaired.

これに対し、図1に示す実施形態では、ブート情報BINF2を識別情報IDINFに対応付けて記憶部20に格納するため、複数の記憶媒体30が半導体装置10に接続される場合でも記憶媒体10のMBR32を修復できる。例えば、バックアップ部14は、互いに異なる複数の記憶媒体30が半導体装置10に同時または異なる時刻に接続された場合、複数の記憶媒体30の各ブート情報BINF2を複数の記憶媒体30の各識別情報IDINFに対応付けて記憶部20に格納する。また、修復部16は、修復対象の記憶媒体30の識別情報IDINFに対応するブート情報BINF2を、記憶部20に記憶された複数のブート情報BINF2のうちから選択して読み出す。そして、修復部16は、記憶部20から読み出したブート情報BINF2をブート情報BINF1として、アクセス部12を介して記憶媒体30のMBR32に格納する。このように、図1に示す実施形態では、半導体装置10に接続された複数の記憶媒体30のうち、MBR32に格納されたブート情報BINF1が破壊された記憶媒体30のMBR32を修復できる。   On the other hand, in the embodiment shown in FIG. 1, the boot information BINF2 is stored in the storage unit 20 in association with the identification information IDINF. Therefore, even when a plurality of storage media 30 are connected to the semiconductor device 10, MBR32 can be repaired. For example, when a plurality of different storage media 30 are connected to the semiconductor device 10 at the same time or at different times, the backup unit 14 uses the boot information BINF2 of the plurality of storage media 30 as the identification information IDINF of the plurality of storage media 30. And stored in the storage unit 20. Further, the restoration unit 16 selects and reads the boot information BINF2 corresponding to the identification information IDINF of the storage medium 30 to be restored from among the plurality of boot information BINF2 stored in the storage unit 20. Then, the restoration unit 16 stores the boot information BINF2 read from the storage unit 20 as the boot information BINF1 in the MBR 32 of the storage medium 30 via the access unit 12. As described above, in the embodiment illustrated in FIG. 1, the MBR 32 of the storage medium 30 in which the boot information BINF1 stored in the MBR 32 is destroyed among the plurality of storage media 30 connected to the semiconductor device 10 can be restored.

図2は、半導体装置および記憶媒体の制御方法の別の実施形態を示す。図1で説明した要素と同一または同様の要素については、同一または同様の符号を付し、これ等については、詳細な説明を省略する。図2の破線の矢印は、信号等の情報の流れを示す。図2に示す半導体装置100は、ハードウェアのみで実現されてもよく、記憶媒体の制御プログラム等のソフトウェアによりハードウェアを制御することにより実現されてもよい。半導体装置100は、USBメモリ、SDメモリカード、ハードディスク等の記憶媒体300に接続される。例えば、半導体装置100は、記憶媒体300が着脱可能に接続されるコンピュータおよび携帯機器等の情報処理装置に搭載される。   FIG. 2 shows another embodiment of a method for controlling a semiconductor device and a storage medium. The same or similar elements as those described in FIG. 1 are denoted by the same or similar reference numerals, and detailed description thereof will be omitted. The dashed arrows in FIG. 2 indicate the flow of information such as signals. The semiconductor device 100 shown in FIG. 2 may be realized only by hardware, or may be realized by controlling hardware by software such as a control program for a storage medium. The semiconductor device 100 is connected to a storage medium 300 such as a USB memory, an SD memory card, or a hard disk. For example, the semiconductor device 100 is mounted on an information processing apparatus such as a computer and a portable device to which the storage medium 300 is detachably connected.

記憶媒体300は、MBR320およびデータ領域340を有する。記憶媒体300、MBR320およびデータ領域340は、図1に示した記憶媒体30、MBR32およびデータ領域34と同一または同様である。例えば、MBR320は、複数のセクタのうちの先頭セクタであり、記憶媒体300の起動時に参照されるブート領域の一例である。したがって、記憶媒体300の起動時に参照されるパーティションテーブル等を含むブート情報BINF1は、記憶媒体300の先頭セクタであるMBR320に格納される。また、例えば、記憶媒体300を識別するシリアル番号等の識別情報IDINFは、記憶媒体300の規格等により決められた領域に格納される。   The storage medium 300 has an MBR 320 and a data area 340. The storage medium 300, MBR 320, and data area 340 are the same as or similar to the storage medium 30, MBR 32, and data area 34 shown in FIG. For example, the MBR 320 is the first sector of a plurality of sectors, and is an example of a boot area that is referred to when the storage medium 300 is activated. Therefore, the boot information BINF1 including the partition table and the like that is referred to when the storage medium 300 is started is stored in the MBR 320 that is the first sector of the storage medium 300. Further, for example, identification information IDINF such as a serial number for identifying the storage medium 300 is stored in an area determined by the standard of the storage medium 300 or the like.

半導体装置100は、複数のインターフェース部120(120A、120B、120C)と、半導体装置100の動作を制御する制御部110と、不揮発性メモリ等の記憶部200とを有する。なお、半導体装置100は、記憶部200を除いて定義されてもよい。   The semiconductor device 100 includes a plurality of interface units 120 (120A, 120B, 120C), a control unit 110 that controls the operation of the semiconductor device 100, and a storage unit 200 such as a nonvolatile memory. The semiconductor device 100 may be defined excluding the storage unit 200.

半導体装置100は、記憶媒体300のMBR320から読み出したブート情報BINF1が正常である場合、ブート情報BINF1に基づいて、記憶媒体300のデータ領域340にアクセスする。また、半導体装置100は、記憶媒体300のMBR320から読み出したブート情報BINF1が正常でない場合、記憶媒体300のMBR320に格納されたブート情報BINF1を、記憶部200に記憶されたブート情報BINF2を用いて修復する。半導体装置100によるMBR320の修復は、例えば、記憶媒体の制御方法に基づいて実行される。   When the boot information BINF1 read from the MBR 320 of the storage medium 300 is normal, the semiconductor device 100 accesses the data area 340 of the storage medium 300 based on the boot information BINF1. Further, when the boot information BINF1 read from the MBR 320 of the storage medium 300 is not normal, the semiconductor device 100 uses the boot information BINF1 stored in the MBR 320 of the storage medium 300 using the boot information BINF2 stored in the storage unit 200. to repair. The repair of the MBR 320 by the semiconductor device 100 is executed based on, for example, a storage medium control method.

インターフェース部120は、USBメモリ、SDメモリカード、ハードディスク等の記憶媒体300のインタフェースであり、半導体装置100で使用される記憶媒体300が接続される。なお、複数のインターフェース部120は、互いに同じ種類の記憶媒体300(例えば、USBメモリ)のインタフェースでもよいし、異なる種類の記憶媒体300(例えば、USBメモリおよびSDメモリカード等)のインタフェースでもよい。   The interface unit 120 is an interface of a storage medium 300 such as a USB memory, an SD memory card, or a hard disk, and is connected to the storage medium 300 used in the semiconductor device 100. The plurality of interface units 120 may be interfaces of the same type of storage medium 300 (for example, a USB memory) or may be interfaces of different types of storage media 300 (for example, a USB memory and an SD memory card).

例えば、記憶媒体300が接続されたインターフェース部120は、制御部110から供給される制御信号およびデータ等の情報を記憶媒体300に出力し、記憶媒体300から供給される制御信号およびデータ等の情報を制御部110に出力する。   For example, the interface unit 120 to which the storage medium 300 is connected outputs information such as control signals and data supplied from the control unit 110 to the storage medium 300, and information such as control signals and data supplied from the storage medium 300. Is output to the control unit 110.

制御部110は、アクセス制御部122と、バックアップ部140と、修復部160とを有する。アクセス制御部122は、アクセス対象の記憶媒体300がインターフェース部120に接続された場合、MBR320に格納されたブート情報BINF1と、識別情報IDINFとを、記憶媒体300からインターフェース部120を介して読み出す。そして、アクセス制御部122は、記憶媒体300から読み出したブート情報BINF1および識別情報IDINFを、バックアップ部140および修復部160に転送する。   The control unit 110 includes an access control unit 122, a backup unit 140, and a restoration unit 160. When the access target storage medium 300 is connected to the interface unit 120, the access control unit 122 reads the boot information BINF 1 and the identification information IDINF stored in the MBR 320 from the storage medium 300 via the interface unit 120. Then, the access control unit 122 transfers the boot information BINF1 and the identification information IDINF read from the storage medium 300 to the backup unit 140 and the restoration unit 160.

すなわち、インターフェース部120およびアクセス制御部122は、記憶媒体300のMBR320に格納されたブート情報BINF1と、記憶媒体300を識別する識別情報IDINFとを、アクセス対象の記憶媒体300から読み出すアクセス部の一例である。   That is, the interface unit 120 and the access control unit 122 are examples of an access unit that reads the boot information BINF1 stored in the MBR 320 of the storage medium 300 and the identification information IDINF that identifies the storage medium 300 from the access target storage medium 300. It is.

バックアップ部140は、ブート情報BINF2のハッシュ値HASH2(以下、第2のハッシュ値HASH2とも称する)を識別情報IDINFに対応付けて記憶部200に格納することを除いて、図1に示したバックアップ部14と同一または同様である。   The backup unit 140 is the backup unit shown in FIG. 1 except that the hash value HASH2 of the boot information BINF2 (hereinafter also referred to as the second hash value HASH2) is stored in the storage unit 200 in association with the identification information IDINF. 14 or the same.

例えば、バックアップ部140は、アクセス制御部122から受けたブート情報BINF1が正常である場合、アクセス制御部122から受けたブート情報BINF1を用いて第1のハッシュ値を算出する。   For example, when the boot information BINF1 received from the access control unit 122 is normal, the backup unit 140 calculates the first hash value using the boot information BINF1 received from the access control unit 122.

また、バックアップ部140は、アクセス制御部122から受けたブート情報BINF1をブート情報BINF2として、記憶媒体300の識別情報IDINFに対応付けて記憶部200に格納する。その後、バックアップ部140は、記憶媒体300の識別情報IDINFに対応するブート情報BINF2を記憶部200から読み出す。   Further, the backup unit 140 stores the boot information BINF1 received from the access control unit 122 in the storage unit 200 as boot information BINF2 in association with the identification information IDINF of the storage medium 300. Thereafter, the backup unit 140 reads the boot information BINF2 corresponding to the identification information IDINF of the storage medium 300 from the storage unit 200.

そして、バックアップ部140は、記憶部200から読み出したブート情報BINF2を用いて第2のハッシュ値HASH2を算出する。第1のハッシュ値が第2のハッシュ値HASH2と等しい場合、バックアップ部140は、第2のハッシュ値HASH2を記憶媒体300の識別情報IDINFに対応付けて記憶部200に格納する。   Then, the backup unit 140 calculates the second hash value HASH2 using the boot information BINF2 read from the storage unit 200. When the first hash value is equal to the second hash value HASH2, the backup unit 140 stores the second hash value HASH2 in the storage unit 200 in association with the identification information IDINF of the storage medium 300.

なお、第1のハッシュ値が第2のハッシュ値HASH2と異なる場合は、ブート情報BINF2の記憶部200への書き込みが失敗しているおそれがある。このため、バックアップ部140は、第1のハッシュ値が第2のハッシュ値HASH2と異なる場合、記憶媒体300から読み出されたブート情報BINF1をブート情報BINF2として、記憶部200に再度書き込みをしてもよい。これにより、正常でないブート情報BINF2が記憶部200に格納されることを抑制することができる。   If the first hash value is different from the second hash value HASH2, there is a possibility that writing of the boot information BINF2 to the storage unit 200 has failed. Therefore, when the first hash value is different from the second hash value HASH2, the backup unit 140 rewrites the boot information BINF1 read from the storage medium 300 as the boot information BINF2 in the storage unit 200. Also good. Thereby, it is possible to prevent the boot information BINF2 that is not normal from being stored in the storage unit 200.

このように、バックアップ部140は、記憶媒体300から読み出されたブート情報BINF1が正常である場合、ブート情報BINF2と、ブート情報BINF2から算出したハッシュ値HASH2とを、識別情報IDINFに対応付けて記憶部200に格納する。例えば、互いに異なる複数の記憶媒体300が半導体装置100に同時または異なる時刻に接続された場合、記憶部200は、複数の記憶媒体300のブート情報BINF2と、ブート情報BINF2のハッシュ値HASH2と、識別情報IDINFとを記憶する。   In this way, when the boot information BINF1 read from the storage medium 300 is normal, the backup unit 140 associates the boot information BINF2 and the hash value HASH2 calculated from the boot information BINF2 with the identification information IDINF. Store in the storage unit 200. For example, when a plurality of different storage media 300 are connected to the semiconductor device 100 at the same time or at different times, the storage unit 200 identifies the boot information BINF2 of the plurality of storage media 300 and the hash value HASH2 of the boot information BINF2. Information IDINF is stored.

修復部160は、記憶部200から読み出したブート情報BINF2が正常であるかをブート情報BINF2のハッシュ値HASH2を用いて判定することを除いて、図1に示した修復部16と同一または同様である。   The repair unit 160 is the same as or similar to the repair unit 16 shown in FIG. 1 except that the boot information BINF2 read from the storage unit 200 is normal using the hash value HASH2 of the boot information BINF2. is there.

例えば、修復部160は、アクセス制御部122から受けたブート情報BINF1が正常でない場合、アクセス制御部122から受けた識別情報IDINFが記憶部200に記憶されているか否かを判定する。アクセス制御部122から受けた識別情報IDINFが記憶部200に記憶されている場合、修復部160は、アクセス制御部122から受けた識別情報IDINFに対応するブート情報BINF2および第2のハッシュ値HASH2を記憶部200から読み出す。   For example, when the boot information BINF1 received from the access control unit 122 is not normal, the restoration unit 160 determines whether or not the identification information IDINF received from the access control unit 122 is stored in the storage unit 200. When the identification information IDINF received from the access control unit 122 is stored in the storage unit 200, the restoration unit 160 receives the boot information BINF2 and the second hash value HASH2 corresponding to the identification information IDINF received from the access control unit 122. Read from the storage unit 200.

そして、修復部160は、記憶部200から読み出したブート情報BINF2を用いて第3のハッシュ値を算出する。ハッシュ値HASH2が第3のハッシュ値と等しい場合、修復部160は、記憶部200から読み出したブート情報BINF2をブート情報BINF1として、アクセス制御部122およびインタフェース部120を介して記憶媒体300のMBR320に格納する。これにより、記憶媒体300のMBR320に格納されるブート情報BINF1は、修復される。   Then, the restoration unit 160 calculates a third hash value using the boot information BINF2 read from the storage unit 200. When the hash value HASH2 is equal to the third hash value, the restoration unit 160 sets the boot information BINF2 read from the storage unit 200 as the boot information BINF1 to the MBR 320 of the storage medium 300 via the access control unit 122 and the interface unit 120. Store. As a result, the boot information BINF1 stored in the MBR 320 of the storage medium 300 is restored.

なお、ハッシュ値HASH2が第3のハッシュ値と異なる場合、修復部160は、記憶媒体300のMBR320に格納されたブート情報BINF1の修復を中止する。このように、修復部160は、記憶媒体300から読み出されたブート情報BINF1が正常でなく、かつ、記憶媒体300の識別情報IDINFが記憶部200に記憶されている場合、MBR320の修復を中止するかを、ハッシュ値HASH2を用いて判定する。   If the hash value HASH2 is different from the third hash value, the restoration unit 160 stops restoring the boot information BINF1 stored in the MBR 320 of the storage medium 300. In this way, the restoration unit 160 stops the restoration of the MBR 320 when the boot information BINF1 read from the storage medium 300 is not normal and the identification information IDINF of the storage medium 300 is stored in the storage unit 200. It is determined using the hash value HASH2.

例えば、記憶部200からのブート情報BINF2の読み出しが失敗した場合、あるいは、記憶部200に記憶されているブート情報BINF2が破壊されていた場合等では、第2のハッシュ値HASH2が第3のハッシュ値と異なる。したがって、修復部160は、第2のハッシュ値HASH2が第3のハッシュ値と異なる場合にMBR320の修復を中止することにより、正常でないブート情報BINF2でMBR320を修復することを防止できる。   For example, when reading of the boot information BINF2 from the storage unit 200 fails or when the boot information BINF2 stored in the storage unit 200 is destroyed, the second hash value HASH2 is stored in the third hash value. Different from the value. Therefore, the restoration unit 160 can prevent the MBR 320 from being restored with the abnormal boot information BINF2 by stopping the restoration of the MBR 320 when the second hash value HASH2 is different from the third hash value.

なお、半導体装置100の構成は、図2に示す例に限定されない。例えば、記憶部200は、半導体装置100の外部に設けられてもよい。また、記憶部200は、USBメモリ等のリムーバルディスクでもよい。あるいは、記憶部200に電源が常に供給される場合、記憶部200は、揮発性メモリでもよい。   Note that the configuration of the semiconductor device 100 is not limited to the example illustrated in FIG. For example, the storage unit 200 may be provided outside the semiconductor device 100. The storage unit 200 may be a removable disk such as a USB memory. Alternatively, when power is always supplied to the storage unit 200, the storage unit 200 may be a volatile memory.

図3は、図2に示した記憶部200の一例を示す。記憶部200は、ブート情報BINF2、ハッシュ値HASH2、識別情報IDINFを記憶する複数の領域210を有する。各領域210は、識別情報IDINFと、識別情報IDINFに対応付けされたブート情報BINF2およびハッシュ値HASH2とを記憶する。例えば、複数の領域210のそれぞれのサイズは、互いに同じサイズに固定される。なお、複数の領域210のうちの所定数の領域210のサイズは、互いに異なるサイズでもよい。また、記憶部200は、記憶する識別情報IDINF等のデータ量に応じて、複数の領域210のそれぞれのサイズを識別情報IDINF毎に変更してもよい。   FIG. 3 shows an example of the storage unit 200 shown in FIG. The storage unit 200 includes a plurality of areas 210 that store boot information BINF2, hash value HASH2, and identification information IDINF. Each area 210 stores identification information IDINF, boot information BINF2 and hash value HASH2 associated with the identification information IDINF. For example, the sizes of the plurality of regions 210 are fixed to the same size. Note that the sizes of the predetermined number of regions 210 among the plurality of regions 210 may be different from each other. The storage unit 200 may change the size of each of the plurality of areas 210 for each identification information IDINF in accordance with the amount of data such as the identification information IDINF stored.

図4は、図2に示した半導体装置100の動作の一例を示す。図4に示す動作は、ハードウェアのみで実現されてもよく、記憶媒体の制御プログラム等のソフトウェアによりハードウェアを制御することにより実現されてもよい。図4に示す動作は、例えば、記憶媒体300が半導体装置100に接続される度に実行される。なお、図4では、記憶媒体300がインタフェース部120Aに接続された場合を例にして半導体装置100の動作を説明する。   FIG. 4 shows an example of the operation of the semiconductor device 100 shown in FIG. The operation shown in FIG. 4 may be realized only by hardware, or may be realized by controlling hardware by software such as a control program for a storage medium. The operation illustrated in FIG. 4 is executed each time the storage medium 300 is connected to the semiconductor device 100, for example. In FIG. 4, the operation of the semiconductor device 100 will be described by taking as an example the case where the storage medium 300 is connected to the interface unit 120A.

ステップS100では、制御部110は、インタフェース部120Aに接続された記憶媒体300のMBR320に格納されたブート情報BINF1と、記憶媒体300を識別する識別情報IDINFとを、記憶媒体300から取得する。例えば、アクセス制御部122は、ブート情報BINF1と識別情報IDINFとを記憶媒体300からインタフェース部120Aを介して読み出す。   In step S100, the control unit 110 acquires the boot information BINF1 stored in the MBR 320 of the storage medium 300 connected to the interface unit 120A and the identification information IDINF for identifying the storage medium 300 from the storage medium 300. For example, the access control unit 122 reads the boot information BINF1 and the identification information IDINF from the storage medium 300 via the interface unit 120A.

ステップS200では、制御部110は、ステップS100で取得したブート情報BINF1に基づいて初期処理を実行する。初期処理は、例えば、記憶媒体300を認識する処理等である。記憶媒体300の認識に成功した場合、記憶媒体300のデータ領域340は、アクセス可能になる。   In step S200, the control unit 110 executes initial processing based on the boot information BINF1 acquired in step S100. The initial process is, for example, a process for recognizing the storage medium 300. When the storage medium 300 is successfully recognized, the data area 340 of the storage medium 300 becomes accessible.

ステップS220では、制御部110は、ステップS100で取得したブート情報BINF1が正常か否かを判定する。例えば、制御部110は、ステップS200の初期処理が成功した場合、ブート情報BINF1が正常であると判定する。すなわち、制御部110は、記憶媒体300の認識に失敗した場合、ブート情報BINF1が正常でないと判定する。   In step S220, the control unit 110 determines whether or not the boot information BINF1 acquired in step S100 is normal. For example, the control unit 110 determines that the boot information BINF1 is normal when the initial process in step S200 is successful. In other words, when the recognition of the storage medium 300 fails, the control unit 110 determines that the boot information BINF1 is not normal.

なお、ステップS220の処理は、制御部110内のブロックのうち、図2に示したブロック(アクセス制御部122、バックアップ部140および修復部160)以外のブロックで実行されてもよいし、図2に示したブロックのいずれかで実行されてもよい。例えば、ステップS220の処理は、制御部110のアクセス制御部122で実行されてもよい。あるいは、ステップS220の処理は、バックアップ部140および修復部160の一方で実行されてもよいし、バックアップ部140および修復部160の両方で実行されてもよい。   Note that the processing in step S220 may be executed by blocks other than the blocks (access control unit 122, backup unit 140, and restoration unit 160) illustrated in FIG. 2 among the blocks in the control unit 110. FIG. May be executed in any of the blocks shown in FIG. For example, the process of step S220 may be executed by the access control unit 122 of the control unit 110. Alternatively, the process of step S220 may be executed by one of the backup unit 140 and the restoration unit 160, or may be executed by both the backup unit 140 and the restoration unit 160.

ステップS100で取得したブート情報BINF1が正常である場合、半導体装置100の動作は、ステップS300に移る。一方、ステップS100で取得したブート情報BINF1が正常でない場合、半導体装置100の動作は、ステップS700に移る。   When the boot information BINF1 acquired in step S100 is normal, the operation of the semiconductor device 100 proceeds to step S300. On the other hand, when the boot information BINF1 acquired in step S100 is not normal, the operation of the semiconductor device 100 proceeds to step S700.

ステップS300では、バックアップ部140は、インタフェース部120Aに接続された記憶媒体300のMBR320のバックアップが記憶部200に格納されているか否かを判定する。例えば、バックアップ部140は、ステップS100で取得した識別情報IDINFが記憶部200に記憶されている場合、記憶媒体300のMBR320のバックアップが記憶部200に格納されていると判定する。   In step S300, the backup unit 140 determines whether a backup of the MBR 320 of the storage medium 300 connected to the interface unit 120A is stored in the storage unit 200. For example, the backup unit 140 determines that the backup of the MBR 320 of the storage medium 300 is stored in the storage unit 200 when the identification information IDINF acquired in step S100 is stored in the storage unit 200.

記憶媒体300のMBR320のバックアップが記憶部200に格納されている場合、半導体装置100の動作は、ステップS400に移る。一方、記憶媒体300のMBR320のバックアップが記憶部200に格納されていない場合、半導体装置100の動作は、ステップS600に移る。   When the backup of the MBR 320 of the storage medium 300 is stored in the storage unit 200, the operation of the semiconductor device 100 proceeds to step S400. On the other hand, when the backup of the MBR 320 of the storage medium 300 is not stored in the storage unit 200, the operation of the semiconductor device 100 proceeds to step S600.

ステップS400では、バックアップ部140は、ステップS100で取得したブート情報BINF1のバックアップであるブート情報BINF2を、記憶部200から取得する。例えば、バックアップ部140は、ステップS100で取得した識別情報IDINFに対応するブート情報BINF2を記憶部200から読み出す。   In step S400, the backup unit 140 acquires boot information BINF2 that is a backup of the boot information BINF1 acquired in step S100 from the storage unit 200. For example, the backup unit 140 reads the boot information BINF2 corresponding to the identification information IDINF acquired in step S100 from the storage unit 200.

ステップS500では、バックアップ部140は、ステップS400で取得したブート情報BINF2(ブート情報BINF1のバックアップ)が正常か否かを判定する。例えば、バックアップ部140は、ブート情報BINF2の内容が記憶媒体300の規格等で決められた内容に適合しているか否かを判定する。なお、バックアップ部140は、ブート情報BINF2に基づく初期処理を実行した場合に、記憶媒体300の認識が成功するか否かを判定してもよい。   In step S500, the backup unit 140 determines whether or not the boot information BINF2 (backup of the boot information BINF1) acquired in step S400 is normal. For example, the backup unit 140 determines whether or not the content of the boot information BINF2 conforms to the content determined by the standard of the storage medium 300 or the like. Note that the backup unit 140 may determine whether or not the storage medium 300 is successfully recognized when the initial processing based on the boot information BINF2 is executed.

ステップS400で取得したブート情報BINF2が正常である場合、半導体装置100の動作は、ステップS520に移る。一方、ステップS400で取得したブート情報BINF2が正常でない場合、半導体装置100の動作は、ステップS600に移る。   When the boot information BINF2 acquired in step S400 is normal, the operation of the semiconductor device 100 proceeds to step S520. On the other hand, when the boot information BINF2 acquired in step S400 is not normal, the operation of the semiconductor device 100 proceeds to step S600.

ステップS520では、バックアップ部140は、ステップS400で取得したブート情報BINF2(ブート情報BINF1のバックアップ)と、ステップS100で取得したブート情報BINF1とに差が有るか否かを判定する。例えば、バックアップ部140は、ブート情報BINF2の内容とブート情報BINF1の内容とを直接比較して、ブート情報BINF2とブート情報BINF1とに差が有るか否かを判定する。   In step S520, the backup unit 140 determines whether there is a difference between the boot information BINF2 acquired in step S400 (backup of the boot information BINF1) and the boot information BINF1 acquired in step S100. For example, the backup unit 140 directly compares the contents of the boot information BINF2 and the contents of the boot information BINF1, and determines whether there is a difference between the boot information BINF2 and the boot information BINF1.

なお、バックアップ部140は、ハッシュ値を用いて、ブート情報BINF2とブート情報BINF1とに差が有るか否かを判定してもよい。例えば、バックアップ部140は、ステップS100で取得した識別情報IDINFに対応するハッシュ値HASH2(第2のハッシュ値HASH2)を記憶部200から読み出す。また、ステップS100で取得したブート情報BINF1のハッシュ値(第1のハッシュ値)を算出する。そして、バックアップ部140は、第1のハッシュ値と第2のハッシュ値HASH2とを比較して、ブート情報BINF2とブート情報BINF1とに差が有るか否かを判定する。なお、ステップS520の処理にハッシュ値が用いられる場合、ステップS400の処理およびステップS500の処理は、省かれてもよい。   Note that the backup unit 140 may determine whether or not there is a difference between the boot information BINF2 and the boot information BINF1 using the hash value. For example, the backup unit 140 reads the hash value HASH2 (second hash value HASH2) corresponding to the identification information IDINF acquired in step S100 from the storage unit 200. In addition, the hash value (first hash value) of the boot information BINF1 acquired in step S100 is calculated. Then, the backup unit 140 compares the first hash value and the second hash value HASH2, and determines whether there is a difference between the boot information BINF2 and the boot information BINF1. When a hash value is used for the process in step S520, the process in step S400 and the process in step S500 may be omitted.

ブート情報BINF2とブート情報BINF1とに差がない場合、記憶媒体300が半導体装置100に接続されたときの半導体装置100の処理は、終了する。一方、ブート情報BINF2とブート情報BINF1とに差が有る場合、半導体装置100の動作は、ステップS600に移る。   If there is no difference between the boot information BINF2 and the boot information BINF1, the processing of the semiconductor device 100 when the storage medium 300 is connected to the semiconductor device 100 ends. On the other hand, when there is a difference between the boot information BINF2 and the boot information BINF1, the operation of the semiconductor device 100 proceeds to step S600.

ステップS600では、バックアップ部140は、ステップS100で取得したブート情報BINF1のバックアップを記憶部200に格納するバックアップ処理を実行する。バックアップ処理の詳細は、図5で説明する。   In step S600, the backup unit 140 executes a backup process for storing the backup of the boot information BINF1 acquired in step S100 in the storage unit 200. Details of the backup processing will be described with reference to FIG.

ステップS700では、修復部160は、インタフェース部120Aに接続された記憶媒体300のMBR320のバックアップが記憶部200に格納されているか否かを判定する。例えば、修復部160は、ステップS100で取得した識別情報IDINFが記憶部200に記憶されている場合、記憶媒体300のMBR320のバックアップが記憶部200に格納されていると判定する。   In step S700, the restoration unit 160 determines whether the backup of the MBR 320 of the storage medium 300 connected to the interface unit 120A is stored in the storage unit 200. For example, when the identification information IDINF acquired in step S100 is stored in the storage unit 200, the restoration unit 160 determines that the backup of the MBR 320 of the storage medium 300 is stored in the storage unit 200.

記憶媒体300のMBR320のバックアップが記憶部200に格納されている場合、半導体装置100の動作は、ステップS800に移る。一方、記憶媒体300のMBR320のバックアップが記憶部200に格納されていない場合、半導体装置100の動作は、ステップS920に移る。   When the backup of the MBR 320 of the storage medium 300 is stored in the storage unit 200, the operation of the semiconductor device 100 proceeds to step S800. On the other hand, when the backup of the MBR 320 of the storage medium 300 is not stored in the storage unit 200, the operation of the semiconductor device 100 proceeds to step S920.

ステップS800では、修復部160は、記憶媒体300のMBR320に格納されたブート情報BINF1を修復する修復処理を実行する。修復処理の詳細は、図6で説明する。   In step S800, the repair unit 160 executes a repair process for repairing the boot information BINF1 stored in the MBR 320 of the storage medium 300. Details of the repair process will be described with reference to FIG.

ステップS900では、制御部110は、ステップS800で修復したブート情報BINF1に基づいて初期処理を実行する。例えば、ステップS800でのブート情報BINF1の修復が成功した場合では、半導体装置100は、記憶媒体300を認識して、記憶媒体300が接続されたときの処理を終了する。一方、ステップS800でのブート情報BINF1の修復が失敗した場合では、半導体装置100は、記憶媒体300の認識に失敗した状態で、記憶媒体300が接続されたときの処理を終了する。   In step S900, the control unit 110 executes initial processing based on the boot information BINF1 restored in step S800. For example, when the boot information BINF1 is successfully restored in step S800, the semiconductor device 100 recognizes the storage medium 300 and ends the process when the storage medium 300 is connected. On the other hand, when the restoration of the boot information BINF1 in step S800 has failed, the semiconductor device 100 ends the process when the storage medium 300 is connected in a state where the storage medium 300 has failed to be recognized.

ステップS920では、修復部160は、記憶媒体300のMBR320のバックアップが存在しない等のエラーを半導体装置100の外部(例えば、半導体装置100に接続された表示装置)に通知する。なお、ステップS920の処理は、省かれてもよい。   In step S920, the restoration unit 160 notifies the outside of the semiconductor device 100 (for example, a display device connected to the semiconductor device 100) such as no backup of the MBR 320 of the storage medium 300. Note that the process of step S920 may be omitted.

このように、半導体装置100は、記憶媒体300が接続された場合、記憶媒体300のMBR320のバックアップを記憶部200に格納する。また、半導体装置100は、半導体装置100に接続された記憶媒体300のMBR320が破壊されていた場合、記憶部200に格納したバックアップを用いて、記憶媒体300のMBR320を修復する。これにより、記憶媒体300の信頼度を向上させることができる。   Thus, the semiconductor device 100 stores the backup of the MBR 320 of the storage medium 300 in the storage unit 200 when the storage medium 300 is connected. Further, when the MBR 320 of the storage medium 300 connected to the semiconductor device 100 is destroyed, the semiconductor device 100 restores the MBR 320 of the storage medium 300 using the backup stored in the storage unit 200. Thereby, the reliability of the storage medium 300 can be improved.

なお、半導体装置100の動作は、図4に示す例に限定されない。例えば、半導体装置100は、ステップS220において、ステップS520の処理と同様の判定方法により、ブート情報BINF1が正常か否かを判定してもよい。この場合、ステップS200の処理は、ステップS600の処理の後に実行されてもよい。例えば、半導体装置100は、ステップS200の処理が省かれた場合、ステップS600の処理を実行した後に、ステップS900の処理を実行してもよい。   Note that the operation of the semiconductor device 100 is not limited to the example illustrated in FIG. For example, in step S220, the semiconductor device 100 may determine whether or not the boot information BINF1 is normal by a determination method similar to the process in step S520. In this case, the process of step S200 may be executed after the process of step S600. For example, when the process of step S200 is omitted, the semiconductor device 100 may execute the process of step S900 after executing the process of step S600.

また、ステップS500の処理は、省かれてもよい。例えば、ブート情報BINF2が正常でない場合、ステップS520の処理において、ブート情報BINF2と正常なブート情報BINF1とで差が有ると判定されるため、ステップS600のバックアップ処理は実行される。   Moreover, the process of step S500 may be omitted. For example, if the boot information BINF2 is not normal, it is determined in the process of step S520 that there is a difference between the boot information BINF2 and the normal boot information BINF1, so the backup process of step S600 is executed.

図5は、図4に示したバックアップ処理(ステップS600)の一例を示す。すなわち、図5は、図2に示したバックアップ部140の動作の一例を示す。なお、図5では、記憶媒体300がインタフェース部120Aに接続された場合を例にしてバックアップ部140の動作を説明する。   FIG. 5 shows an example of the backup process (step S600) shown in FIG. That is, FIG. 5 shows an example of the operation of the backup unit 140 shown in FIG. In FIG. 5, the operation of the backup unit 140 will be described by taking as an example a case where the storage medium 300 is connected to the interface unit 120A.

ステップS610では、バックアップ部140は、記憶媒体300のブート情報BINF2と識別情報IDINFとを記憶部200に格納する。例えば、バックアップ部140は、図4のステップS100で取得したブート情報BINF1を記憶媒体300のブート情報BINF2として、図4のステップS100で取得した識別情報IDINFに対応付けて記憶部200に格納する。   In step S610, the backup unit 140 stores the boot information BINF2 and the identification information IDINF of the storage medium 300 in the storage unit 200. For example, the backup unit 140 stores the boot information BINF1 acquired in step S100 of FIG. 4 in the storage unit 200 as boot information BINF2 of the storage medium 300 in association with the identification information IDINF acquired in step S100 of FIG.

ステップS620では、バックアップ部140は、ステップS610で記憶部200に格納したブート情報BINF2を読み出す。   In step S620, the backup unit 140 reads the boot information BINF2 stored in the storage unit 200 in step S610.

ステップS630では、バックアップ部140は、記憶部200から読み出したブート情報BINF2のハッシュ値HASH2を算出する。すなわち、バックアップ部140は、ステップS620で読み出したブート情報BINF2からハッシュ値HASH2を算出する。   In step S630, the backup unit 140 calculates the hash value HASH2 of the boot information BINF2 read from the storage unit 200. That is, the backup unit 140 calculates the hash value HASH2 from the boot information BINF2 read in step S620.

ステップS640では、バックアップ部140は、記憶媒体300から読み出したブート情報BINF1のハッシュ値HASH1(第1のハッシュ値)を算出する。すなわち、バックアップ部140は、図4のステップS100で取得したブート情報BINF1からハッシュ値HASH1を算出する。   In step S640, the backup unit 140 calculates a hash value HASH1 (first hash value) of the boot information BINF1 read from the storage medium 300. That is, the backup unit 140 calculates the hash value HASH1 from the boot information BINF1 acquired in step S100 in FIG.

ステップS650では、バックアップ部140は、ステップS630で算出したハッシュ値HASH2が、ステップS640で算出したハッシュ値HASH1と等しいか否かを判定する。ハッシュ値HASH2がハッシュ値HASH1と等しい場合、バックアップ部140の動作は、ステップS660に移る。一方、ハッシュ値HASH2がハッシュ値HASH1と異なる場合、バックアップ部140の動作は、ステップS670に移る。   In step S650, the backup unit 140 determines whether or not the hash value HASH2 calculated in step S630 is equal to the hash value HASH1 calculated in step S640. When the hash value HASH2 is equal to the hash value HASH1, the operation of the backup unit 140 proceeds to step S660. On the other hand, when the hash value HASH2 is different from the hash value HASH1, the operation of the backup unit 140 proceeds to step S670.

ステップS660では、バックアップ部140は、ステップS630で算出したハッシュ値HASH2を、図4のステップS100で取得した識別情報IDINFに対応付けて記憶部200に格納する。これにより、バックアップ処理は、正常に終了する。   In step S660, the backup unit 140 stores the hash value HASH2 calculated in step S630 in the storage unit 200 in association with the identification information IDINF acquired in step S100 of FIG. Thereby, the backup process ends normally.

ステップS670では、バックアップ部140は、ブート情報BINF2(図4のステップS100で取得したブート情報BINF1)の書き込みを再実行するか否かを判定する。例えば、ハッシュ値HASH2がハッシュ値HASH1と異なる場合、ブート情報BINF2の記憶部200への書き込みが失敗しているおそれがある。このため、例えば、バックアップ部140は、書き込みを再実行するか否かを選択させるメッセージ等を半導体装置100に接続された表示装置等に表示させ、書き込みを再実行するか否かを示す制御情報を受けるまで待機する。   In step S670, the backup unit 140 determines whether to rewrite the boot information BINF2 (boot information BINF1 acquired in step S100 of FIG. 4). For example, when the hash value HASH2 is different from the hash value HASH1, the writing of the boot information BINF2 into the storage unit 200 may have failed. For this reason, for example, the backup unit 140 displays a message or the like for selecting whether or not to rewrite data on a display device or the like connected to the semiconductor device 100 and indicates whether or not to rewrite data. Wait until you receive.

ブート情報BINF2の書き込みを再実行する場合、バックアップ部140の動作は、ステップS680に移る。一方、ブート情報BINF2の書き込みを再実行しない場合、バックアップ部140の動作は、ステップS690に移る。   When rewriting the boot information BINF2, the operation of the backup unit 140 proceeds to step S680. On the other hand, when the boot information BINF2 is not rewritten, the operation of the backup unit 140 proceeds to step S690.

ステップS680では、バックアップ部140は、アクセス制御部122およびインタフェース部120Aを介して、記憶媒体300のMBR320からブート情報BINF1を読み出す。ステップS680の処理が実行された後、バックアップ部140の動作は、ステップS610に戻る。これにより、ステップS680で記憶媒体300から読み出されたブート情報BINF1は、ブート情報BINF2として記憶部200に記憶される。   In step S680, the backup unit 140 reads the boot information BINF1 from the MBR 320 of the storage medium 300 via the access control unit 122 and the interface unit 120A. After the process of step S680 is executed, the operation of the backup unit 140 returns to step S610. Thereby, the boot information BINF1 read from the storage medium 300 in step S680 is stored in the storage unit 200 as the boot information BINF2.

ステップS690では、バックアップ部140は、図4のステップS100で取得した識別情報IDINFに対応するバックアップ(ステップS610で記憶部200に格納したブート情報BINF2、識別情報IDINF等)を、記憶部200から削除する。この場合、バックアップ処理は、ブート情報BINF1をバックアップせずに、終了する。   In step S690, the backup unit 140 deletes the backup corresponding to the identification information IDINF acquired in step S100 of FIG. 4 (boot information BINF2, identification information IDINF, etc. stored in the storage unit 200 in step S610) from the storage unit 200. To do. In this case, the backup process ends without backing up the boot information BINF1.

このように、バックアップ部140は、ブート情報BINF1のバックアップであるブート情報BINF2が記憶部200に正常に書き込めたか否かを、ブート情報BINF1のハッシュ値HSAH1およびブート情報BINF2のHASH2を用いて判定する。これにより、正常でないブート情報BINF2が記憶部200に格納されることを抑制することができる。   As described above, the backup unit 140 determines whether or not the boot information BINF2 that is the backup of the boot information BINF1 has been normally written in the storage unit 200 by using the hash value HSAH1 of the boot information BINF1 and the HASH2 of the boot information BINF2. . Thereby, it is possible to prevent the boot information BINF2 that is not normal from being stored in the storage unit 200.

なお、バックアップ部140の動作は、図5に示す例に限定されない。例えば、バックアップ部140は、ブート情報BINF2の書き込みの再実行を予め決められたリトライ回数に到達するまで試みてもよい。この場合、バックアップ部140は、ステップS670において、ブート情報BINF2の書き込みの再実行の回数がリトライ回数未満か否かを判定する。そして、ブート情報BINF2の書き込みの再実行の回数がリトライ回数未満の場合、バックアップ部140の動作は、ステップS680に移る。一方、ブート情報BINF2の書き込みの再実行の回数がリトライ回数以上の場合、バックアップ部140の動作は、ステップS690に移る。   Note that the operation of the backup unit 140 is not limited to the example shown in FIG. For example, the backup unit 140 may attempt to re-execute the writing of the boot information BINF2 until a predetermined number of retries is reached. In this case, in step S670, the backup unit 140 determines whether or not the number of re-executions of the boot information BINF2 is less than the number of retries. If the number of re-executions of writing the boot information BINF2 is less than the number of retries, the operation of the backup unit 140 proceeds to step S680. On the other hand, when the number of re-executions of writing the boot information BINF2 is equal to or greater than the number of retries, the operation of the backup unit 140 proceeds to step S690.

また、ステップS680の処理は、省かれてもよい。この場合、バックアップ部140は、図4のステップS100で取得したブート情報BINF1を再利用して、ブート情報BINF2の書き込みを再実行する。   Further, the process of step S680 may be omitted. In this case, the backup unit 140 reuses the boot information BINF1 acquired in step S100 in FIG. 4 and rewrites the boot information BINF2.

図6は、図4に示した修復処理(ステップS800)の一例を示す。すなわち、図6は、図2に示した修復部160の動作の一例を示す。なお、図6では、記憶媒体300がインタフェース部120Aに接続された場合を例にして修復部160の動作を説明する。   FIG. 6 shows an example of the repair process (step S800) shown in FIG. That is, FIG. 6 shows an example of the operation of the restoration unit 160 shown in FIG. In FIG. 6, the operation of the restoration unit 160 will be described by taking as an example a case where the storage medium 300 is connected to the interface unit 120A.

ステップS810では、修復部160は、図4のステップS100で取得した識別情報IDINFに対応するブート情報BINF2およびハッシュ値HASH2を、記憶部200から読み出す。   In step S810, the restoration unit 160 reads the boot information BINF2 and the hash value HASH2 corresponding to the identification information IDINF acquired in step S100 of FIG.

ステップS820では、修復部160は、記憶部200から読み出したブート情報BINF2のハッシュ値HASH3(第3のハッシュ値)を算出する。すなわち、修復部160は、ステップS810で読み出したブート情報BINF2からハッシュ値HASH3を算出する。   In step S820, the restoration unit 160 calculates the hash value HASH3 (third hash value) of the boot information BINF2 read from the storage unit 200. That is, the restoration unit 160 calculates the hash value HASH3 from the boot information BINF2 read in step S810.

ステップS830では、修復部160は、ステップS810で読み出したハッシュ値HASH2が、ステップS820で算出したハッシュ値HASH3と等しいか否かを判定する。ハッシュ値HASH2がハッシュ値HASH3と等しい場合、修復部160の動作は、ステップS850に移る。一方、ハッシュ値HASH2がハッシュ値HASH3と異なる場合、修復部160の動作は、ステップS840に移る。   In step S830, the restoration unit 160 determines whether or not the hash value HASH2 read in step S810 is equal to the hash value HASH3 calculated in step S820. When the hash value HASH2 is equal to the hash value HASH3, the operation of the restoration unit 160 proceeds to step S850. On the other hand, when the hash value HASH2 is different from the hash value HASH3, the operation of the restoration unit 160 proceeds to step S840.

ステップS840では、修復部160は、MBR320の修復を中止するか否かを判定する。例えば、ハッシュ値HASH2がハッシュ値HASH3と異なる場合、記憶部200に記憶されているブート情報BINF2が破壊されているおそれがある。このため、例えば、修復部160は、MBR320の修復を中止するか否かを選択させるメッセージ等を半導体装置100に接続された表示装置等に表示させ、MBR320の修復を中止するか否かを示す制御情報を受けるまで待機する。   In step S840, the restoration unit 160 determines whether to stop the restoration of the MBR 320. For example, when the hash value HASH2 is different from the hash value HASH3, the boot information BINF2 stored in the storage unit 200 may be destroyed. Therefore, for example, the repair unit 160 displays a message or the like for selecting whether or not to repair the MBR 320 on a display device or the like connected to the semiconductor device 100 and indicates whether or not to repair the MBR 320. Wait until control information is received.

MBR320の修復を中止する場合、修復部160は、MBR320に格納されたブート情報BINF1を修復せずに、修復処理を終了する。この場合、正常でないブート情報BINF2でMBR320が修復されることを防止することができる。一方、MBR320の修復を中止しない場合、修復部160の動作は、ステップS850に移る。   When stopping the repair of the MBR 320, the repair unit 160 ends the repair process without repairing the boot information BINF1 stored in the MBR 320. In this case, it is possible to prevent the MBR 320 from being repaired with the boot information BINF2 that is not normal. On the other hand, when the restoration of the MBR 320 is not stopped, the operation of the restoration unit 160 proceeds to step S850.

ステップS850では、修復部160は、記憶部200から読み出したブート情報BINF2をブート情報BINF1として、アクセス制御部122およびインタフェース部120Aを介して記憶媒体300のMBR320に格納する。これにより、修復処理は終了する。例えば、ハッシュ値HASH2がハッシュ値HASH3と等しい場合、ステップS850の処理により、記憶媒体300のMBR320に格納されるブート情報BINF1は正常に修復され、修復処理は正常に終了する。   In step S850, the restoration unit 160 stores the boot information BINF2 read from the storage unit 200 as the boot information BINF1 in the MBR 320 of the storage medium 300 via the access control unit 122 and the interface unit 120A. As a result, the repair process ends. For example, when the hash value HASH2 is equal to the hash value HASH3, the boot information BINF1 stored in the MBR 320 of the storage medium 300 is normally restored by the process of step S850, and the restoration process ends normally.

なお、修復部160の動作は、図6に示す例に限定されない。例えば、修復部160は、ハッシュ値HASH2がハッシュ値HASH3と異なる場合、ステップS840の処理を実行せずに、修復処理を終了してもよい。すなわち、ステップS840の処理は、省かれてもよい。   The operation of the restoration unit 160 is not limited to the example illustrated in FIG. For example, when the hash value HASH2 is different from the hash value HASH3, the repair unit 160 may end the repair process without executing the process of step S840. That is, the process of step S840 may be omitted.

あるいは、修復部160は、ブート情報BINF2の読み出しを予め決められた所定回数に到達するまで繰り返し実行してもよい。この場合、修復部160は、ステップS840において、ブート情報BINF2の読み出しの再実行の回数が所定回数未満か否かを判定する。そして、ブート情報BINF2の読み出しの再実行の回数が所定回数未満の場合、修復部160の動作は、ステップS810に戻る。これにより、ブート情報BINF2の読み出しの失敗に起因する修復処理の失敗を抑制することができる。一方、ブート情報BINF2の読み出しの再実行の回数が所定回数以上の場合、修復部160は、MBR320に格納されたブート情報BINF1を修復せずに、修復処理を終了する。   Alternatively, the restoration unit 160 may repeatedly execute the reading of the boot information BINF2 until a predetermined number of times is reached. In this case, the restoration unit 160 determines in step S840 whether or not the number of re-executions of reading the boot information BINF2 is less than a predetermined number. When the number of times of re-reading the boot information BINF2 is less than the predetermined number, the operation of the restoration unit 160 returns to step S810. As a result, it is possible to suppress the failure of the repair process due to the failure of reading the boot information BINF2. On the other hand, when the number of times of re-reading the boot information BINF2 is equal to or greater than the predetermined number, the restoration unit 160 ends the restoration process without restoring the boot information BINF1 stored in the MBR 320.

図7は、図2に示した半導体装置100の動作の別の例を示す。図7に示す動作は、ハードウェアのみで実現されてもよく、記憶媒体の制御プログラム等のソフトウェアによりハードウェアを制御することにより実現されてもよい。図7に示す動作は、例えば、記憶媒体300と半導体装置100とを非接続にする処理(記憶媒体の取り出し処理)が実行される度に実行される。なお、図7に示す動作は、記憶媒体300のMBR320に格納されたブート情報BINF1が更新された場合に実行されてもよい。   FIG. 7 shows another example of the operation of the semiconductor device 100 shown in FIG. The operation illustrated in FIG. 7 may be realized only by hardware, or may be realized by controlling hardware by software such as a control program for a storage medium. The operation illustrated in FIG. 7 is executed each time a process of disconnecting the storage medium 300 and the semiconductor device 100 (storage medium extraction process) is executed, for example. Note that the operation illustrated in FIG. 7 may be executed when the boot information BINF1 stored in the MBR 320 of the storage medium 300 is updated.

図7に示す動作では、図4に示した動作からステップS200の処理およびステップS900の処理が省かれ、ステップS910の処理が図4に示した動作に追加される。図4で説明したステップと同一または同様のステップについては、同一または同様の符号を付し、これ等については、詳細な説明を省略する。図7では、記憶媒体300とインタフェース部120Aとを非接続にする場合を例にして半導体装置100の動作を説明する。   In the operation illustrated in FIG. 7, the processing in step S200 and the processing in step S900 are omitted from the operation illustrated in FIG. 4, and the processing in step S910 is added to the operation illustrated in FIG. 4. Steps that are the same as or similar to the steps described in FIG. 4 are given the same or similar reference numerals, and detailed descriptions thereof are omitted. In FIG. 7, the operation of the semiconductor device 100 will be described by taking as an example a case where the storage medium 300 and the interface unit 120 </ b> A are disconnected.

ステップS100では、制御部110は、インタフェース部120Aに接続された記憶媒体300のMBR320に格納されたブート情報BINF1と、記憶媒体300を識別する識別情報IDINFとを、記憶媒体300から取得する。制御部110がステップS100の処理を実行した後、半導体装置100の動作は、ステップS220に移る。   In step S100, the control unit 110 acquires the boot information BINF1 stored in the MBR 320 of the storage medium 300 connected to the interface unit 120A and the identification information IDINF for identifying the storage medium 300 from the storage medium 300. After the control unit 110 executes the process of step S100, the operation of the semiconductor device 100 proceeds to step S220.

ステップS220では、制御部110は、ステップS100で取得したブート情報BINF1が正常か否かを、図4で説明したステップS520の処理と同様の判定方法により判定する。   In step S220, the control unit 110 determines whether or not the boot information BINF1 acquired in step S100 is normal by a determination method similar to the processing in step S520 described with reference to FIG.

ステップS300では、バックアップ部140は、インタフェース部120Aに接続された記憶媒体300のMBR320のバックアップが記憶部200に格納されているか否かを判定する。   In step S300, the backup unit 140 determines whether a backup of the MBR 320 of the storage medium 300 connected to the interface unit 120A is stored in the storage unit 200.

ステップS400では、バックアップ部140は、ステップS100で取得したブート情報BINF1のバックアップであるブート情報BINF2を、記憶部200から取得する。   In step S400, the backup unit 140 acquires boot information BINF2 that is a backup of the boot information BINF1 acquired in step S100 from the storage unit 200.

ステップS500では、バックアップ部140は、ステップS400で取得したブート情報BINF2(ブート情報BINF1のバックアップ)が正常か否かを判定する。   In step S500, the backup unit 140 determines whether or not the boot information BINF2 (backup of the boot information BINF1) acquired in step S400 is normal.

ステップS520では、バックアップ部140は、ステップS400で取得したブート情報BINF2(ブート情報BINF1のバックアップ)と、ステップS100で取得したブート情報BINF1とに差が有るか否かを判定する。   In step S520, the backup unit 140 determines whether there is a difference between the boot information BINF2 acquired in step S400 (backup of the boot information BINF1) and the boot information BINF1 acquired in step S100.

ブート情報BINF2とブート情報BINF1とに差がない場合、半導体装置100の動作は、ステップS910に移る。一方、ブート情報BINF2とブート情報BINF1とに差が有る場合、半導体装置100の動作は、ステップS600に移る。   If there is no difference between the boot information BINF2 and the boot information BINF1, the operation of the semiconductor device 100 proceeds to step S910. On the other hand, when there is a difference between the boot information BINF2 and the boot information BINF1, the operation of the semiconductor device 100 proceeds to step S600.

ステップS600では、バックアップ部140は、図5で説明したバックアップ処理を実行する。   In step S600, the backup unit 140 executes the backup process described with reference to FIG.

ステップS700では、修復部160は、インタフェース部120Aに接続された記憶媒体300のMBR320のバックアップが記憶部200に格納されているか否かを判定する。   In step S700, the restoration unit 160 determines whether the backup of the MBR 320 of the storage medium 300 connected to the interface unit 120A is stored in the storage unit 200.

ステップS800では、修復部160は、図6で説明した修復処理を実行する。修復部160がステップS800の処理を実行した後、半導体装置100の動作は、ステップS910に移る。   In step S800, the repair unit 160 executes the repair process described with reference to FIG. After the restoration unit 160 executes the process of step S800, the operation of the semiconductor device 100 proceeds to step S910.

ステップS910では、制御部110は、記憶媒体300の取り出し許可を半導体装置100の外部に通知する。例えば、制御部110は、半導体装置100から記憶媒体300を取り出してよいことを示すメッセージ等を半導体装置100に接続された表示装置に表示させる。   In step S <b> 910, the control unit 110 notifies the outside of the semiconductor device 100 of permission to take out the storage medium 300. For example, the control unit 110 displays a message indicating that the storage medium 300 may be taken out from the semiconductor device 100 on a display device connected to the semiconductor device 100.

ステップS920では、修復部160は、記憶媒体300のMBR320のバックアップが存在しない等のエラーを半導体装置100の外部(例えば、半導体装置100に接続された表示装置)に通知する。なお、ステップS920の処理は、省かれてもよい。   In step S920, the restoration unit 160 notifies the outside of the semiconductor device 100 (for example, a display device connected to the semiconductor device 100) such as no backup of the MBR 320 of the storage medium 300. Note that the process of step S920 may be omitted.

このように、半導体装置100は、記憶媒体300が半導体装置100から取り出される際に、記憶媒体300のMBR320のバックアップを記憶部200に格納する。これにより、記憶媒体300が半導体装置100に接続された後に、記憶媒体300のMBR320に格納されたブート情報BINF1が更新された場合でも、記憶媒体300のMBR320のバックアップを記憶部200に格納することができる。また、半導体装置100は、半導体装置100に接続された記憶媒体300のMBR320が破壊されていた場合、記憶部200に格納したバックアップを用いて、記憶媒体300のMBR320を修復する。これにより、記憶媒体300の信頼度を向上させることができる。   As described above, the semiconductor device 100 stores the backup of the MBR 320 of the storage medium 300 in the storage unit 200 when the storage medium 300 is removed from the semiconductor device 100. Thus, even when the boot information BINF1 stored in the MBR 320 of the storage medium 300 is updated after the storage medium 300 is connected to the semiconductor device 100, the backup of the MBR 320 of the storage medium 300 is stored in the storage unit 200. Can do. Further, when the MBR 320 of the storage medium 300 connected to the semiconductor device 100 is destroyed, the semiconductor device 100 restores the MBR 320 of the storage medium 300 using the backup stored in the storage unit 200. Thereby, the reliability of the storage medium 300 can be improved.

なお、半導体装置100の動作は、図7に示す例に限定されない。例えば、ステップS500の処理は、省かれてもよい。また、ステップS220の処理、ステップS700の処理、ステップS800の処理およびステップS920の処理は、省かれてもよい。   Note that the operation of the semiconductor device 100 is not limited to the example illustrated in FIG. For example, the process of step S500 may be omitted. Moreover, the process of step S220, the process of step S700, the process of step S800, and the process of step S920 may be omitted.

以上、図2から図7に示す実施形態においても、図1に示した実施形態と同様の効果を得ることができる。例えば、半導体装置100は、記憶媒体300のMBR320に格納されたブート情報BINF1のバックアップであるブート情報BINF2を、記憶媒体300の識別情報IDINFに対応付けて、記憶媒体300とは別の記憶部200に格納する。これにより、記憶媒体300の信頼度を向上させることができる。   As described above, also in the embodiment shown in FIGS. 2 to 7, the same effect as that of the embodiment shown in FIG. 1 can be obtained. For example, the semiconductor device 100 associates boot information BINF2 that is a backup of the boot information BINF1 stored in the MBR 320 of the storage medium 300 with the identification information IDINF of the storage medium 300, and is a storage unit 200 different from the storage medium 300. To store. Thereby, the reliability of the storage medium 300 can be improved.

さらに、半導体装置100は、記憶部200に書き込む前のブート情報BINF1から算出したハッシュ値HASH1と、記憶部200に書き込んだ後のブート情報BINF2から算出したハッシュ値HASH2とを比較する。そして、半導体装置100は、ハッシュ値HASH1とハッシュ値HASH2との比較結果に基づいて、ブート情報BINF2が記憶部200に正常に書き込めたか否かを判定する。これにより、正常でないブート情報BINF2が記憶部200に格納されることを抑制することができる。   Furthermore, the semiconductor device 100 compares the hash value HASH1 calculated from the boot information BINF1 before writing to the storage unit 200 and the hash value HASH2 calculated from the boot information BINF2 after writing to the storage unit 200. Then, the semiconductor device 100 determines whether or not the boot information BINF2 has been normally written in the storage unit 200 based on the comparison result between the hash value HASH1 and the hash value HASH2. Thereby, it is possible to prevent the boot information BINF2 that is not normal from being stored in the storage unit 200.

また、半導体装置100は、記憶媒体300のMBR320を修復する際に、記憶部200から読み出したブート情報BINF2から算出したハッシュ値HASH3と、記憶部200から読み出したハッシュ値HASH2とを比較する。そして、半導体装置100は、ハッシュ値HASH2とハッシュ値HASH3との比較結果に基づいて、記憶部200から読み出したブート情報BINF2が破壊されているか否かを判定する。これにより、正常でないブート情報BINF2でMBR320を修復することを防止できる。   Further, when the semiconductor device 100 restores the MBR 320 of the storage medium 300, the hash value HASH3 calculated from the boot information BINF2 read from the storage unit 200 is compared with the hash value HASH2 read from the storage unit 200. Then, the semiconductor device 100 determines whether or not the boot information BINF2 read from the storage unit 200 is destroyed based on the comparison result between the hash value HASH2 and the hash value HASH3. As a result, it is possible to prevent the MBR 320 from being repaired with the abnormal boot information BINF2.

図8は、半導体装置および記憶媒体の制御方法の別の実施形態を示す。図1から図7で説明した要素と同一または同様の要素については、同一または同様の符号を付し、これ等については、詳細な説明を省略する。図8の破線の矢印は、信号等の情報の流れを示す。図8に示す半導体装置102は、ハードウェアのみで実現されてもよく、記憶媒体の制御プログラム等のソフトウェアによりハードウェアを制御することにより実現されてもよい。   FIG. 8 shows another embodiment of a method for controlling a semiconductor device and a storage medium. The same or similar elements as those described in FIGS. 1 to 7 are denoted by the same or similar reference numerals, and detailed description thereof will be omitted. The dashed arrows in FIG. 8 indicate the flow of information such as signals. The semiconductor device 102 shown in FIG. 8 may be realized only by hardware, or may be realized by controlling hardware by software such as a storage medium control program.

半導体装置102では、図2に示した記憶部200が半導体装置100から省かれ、記憶部202がインターフェース部120に接続される。また、半導体装置102は、図2に示した制御部110の代わりに制御部112を有する。半導体装置102のその他の構成は、図2に示した半導体装置100と同一または同様である。   In the semiconductor device 102, the storage unit 200 illustrated in FIG. 2 is omitted from the semiconductor device 100, and the storage unit 202 is connected to the interface unit 120. Further, the semiconductor device 102 includes a control unit 112 instead of the control unit 110 illustrated in FIG. Other configurations of the semiconductor device 102 are the same as or similar to those of the semiconductor device 100 illustrated in FIG.

また、半導体装置102の動作は、図2に示した半導体装置100と同様である。例えば、半導体装置102は、記憶媒体300が着脱可能に接続されるコンピュータおよび携帯機器等の情報処理装置に搭載され、図2から図7で説明した実施形態と同様の記憶媒体の制御方法に基づいて、記憶媒体300のMBR320を修復する。   The operation of the semiconductor device 102 is the same as that of the semiconductor device 100 shown in FIG. For example, the semiconductor device 102 is mounted on an information processing apparatus such as a computer and a portable device to which the storage medium 300 is detachably connected, and is based on the storage medium control method similar to the embodiment described with reference to FIGS. Thus, the MBR 320 of the storage medium 300 is repaired.

半導体装置102は、複数のインターフェース部120(120A、120B、120C)と、半導体装置102の動作を制御する制御部112とを有する。また、半導体装置102には、不揮発性メモリ等の記憶部202と記憶媒体300とが接続される。図8に示す例では、インターフェース部120Aに記憶媒体300が接続され、インターフェース部120Bに記憶部202が接続される。なお、半導体装置102は、記憶部202を含めて定義されてもよい。   The semiconductor device 102 includes a plurality of interface units 120 (120A, 120B, 120C) and a control unit 112 that controls the operation of the semiconductor device 102. In addition, a storage unit 202 such as a nonvolatile memory and a storage medium 300 are connected to the semiconductor device 102. In the example illustrated in FIG. 8, the storage medium 300 is connected to the interface unit 120A, and the storage unit 202 is connected to the interface unit 120B. The semiconductor device 102 may be defined including the storage unit 202.

記憶部202は、USBメモリ等のリムーバルディスクであり、MBR220およびデータ領域240を有する。なお、記憶部202のMBR220およびデータ領域240は、図1に示したMBR32およびデータ領域34と同一または同様である。また、記憶部202は、インターフェース部120(図8に示した例では、インターフェース部120B)を介して制御部112に接続されることを除いて、図2に示した記憶部200と同様である。例えば、記憶部202は、複数の記憶媒体300のブート情報BINF2と、ブート情報BINF2のハッシュ値HASH2と、識別情報IDINFとを、データ領域240に記憶する。   The storage unit 202 is a removable disk such as a USB memory, and includes an MBR 220 and a data area 240. The MBR 220 and the data area 240 in the storage unit 202 are the same as or similar to the MBR 32 and the data area 34 shown in FIG. The storage unit 202 is the same as the storage unit 200 shown in FIG. 2 except that it is connected to the control unit 112 via the interface unit 120 (in the example shown in FIG. 8, the interface unit 120B). . For example, the storage unit 202 stores the boot information BINF2 of the plurality of storage media 300, the hash value HASH2 of the boot information BINF2, and the identification information IDINF in the data area 240.

例えば、記憶部202が接続されたインターフェース部120Bは、制御部112から供給されるブート情報BINF2、ハッシュ値HASH2および識別情報IDINF等の情報を記憶部202に出力する。また、インターフェース部120Bは、記憶部202から供給されるブート情報BINF2、ハッシュ値HASH2および識別情報IDINF等の情報を制御部112に出力する。   For example, the interface unit 120B to which the storage unit 202 is connected outputs information such as boot information BINF2, hash value HASH2, and identification information IDINF supplied from the control unit 112 to the storage unit 202. Further, the interface unit 120B outputs information such as the boot information BINF2, the hash value HASH2, and the identification information IDINF supplied from the storage unit 202 to the control unit 112.

制御部112は、アクセス制御部122と、バックアップ部142と、修復部162とを有する。図8では、インタフェース部120Aに記憶媒体300が接続され、インターフェース部120Bに記憶部202が接続された場合を例にしてアクセス制御部122等の動作の動作を説明する。   The control unit 112 includes an access control unit 122, a backup unit 142, and a restoration unit 162. In FIG. 8, the operation of the access control unit 122 and the like will be described by taking as an example a case where the storage medium 300 is connected to the interface unit 120A and the storage unit 202 is connected to the interface unit 120B.

アクセス制御部122は、アクセス対象の記憶媒体300がインターフェース部120Aに接続された場合、MBR320に格納されたブート情報BINF1と、識別情報IDINFとを、記憶媒体300からインターフェース部120Aを介して読み出す。そして、アクセス制御部122は、記憶媒体300から読み出したブート情報BINF1および識別情報IDINFを、バックアップ部142および修復部162に転送する。また、アクセス制御部122は、記憶部202がインターフェース部120Bに接続された状態で、記憶媒体300がインターフェース部120Aに接続された場合、インターフェース部120Bを介して記憶部202にアクセスする。   When the access target storage medium 300 is connected to the interface unit 120A, the access control unit 122 reads the boot information BINF1 and the identification information IDINF stored in the MBR 320 from the storage medium 300 via the interface unit 120A. Then, the access control unit 122 transfers the boot information BINF1 and the identification information IDINF read from the storage medium 300 to the backup unit 142 and the restoration unit 162. The access control unit 122 accesses the storage unit 202 via the interface unit 120B when the storage medium 300 is connected to the interface unit 120A while the storage unit 202 is connected to the interface unit 120B.

バックアップ部142は、図2に示したバックアップ部140と同様である。なお、バックアップ部142と記憶部202との間のデータ転送は、アクセス制御部122およびインターフェース部120Bを介して実行される。   The backup unit 142 is the same as the backup unit 140 shown in FIG. Note that data transfer between the backup unit 142 and the storage unit 202 is executed via the access control unit 122 and the interface unit 120B.

例えば、バックアップ部142は、記憶媒体300から読み出されたブート情報BINF1をブート情報BINF2として、アクセス制御部122およびインタフェース部120Bを介して記憶部202のデータ領域240に格納する。また、バックアップ部142は、ブート情報BINF2を、アクセス制御部122およびインタフェース部120Bを介して記憶部202のデータ領域240から読み出す。   For example, the backup unit 142 stores the boot information BINF1 read from the storage medium 300 as the boot information BINF2 in the data area 240 of the storage unit 202 via the access control unit 122 and the interface unit 120B. Further, the backup unit 142 reads the boot information BINF2 from the data area 240 of the storage unit 202 via the access control unit 122 and the interface unit 120B.

修復部162は、図2に示した修復部160と同様である。なお、修復部162と記憶部202との間のデータ転送は、アクセス制御部122およびインターフェース部120Bを介して実行される。例えば、修復部162は、ブート情報BINF2およびハッシュ値HASH2を、アクセス制御部122およびインタフェース部120Bを介して記憶部202のデータ領域240から読み出す。   The restoration unit 162 is the same as the restoration unit 160 illustrated in FIG. Note that data transfer between the restoration unit 162 and the storage unit 202 is executed via the access control unit 122 and the interface unit 120B. For example, the restoration unit 162 reads the boot information BINF2 and the hash value HASH2 from the data area 240 of the storage unit 202 via the access control unit 122 and the interface unit 120B.

なお、半導体装置102の構成は、図8に示す例に限定されない。例えば、記憶部202は、複数設けられてもよい。この場合、複数の記憶部202の1つは、他の記憶部202のMBR220に格納されたブート情報BINF1を記憶してもよい。   Note that the structure of the semiconductor device 102 is not limited to the example illustrated in FIG. For example, a plurality of storage units 202 may be provided. In this case, one of the plurality of storage units 202 may store the boot information BINF1 stored in the MBR 220 of the other storage unit 202.

以上、図8に示す実施形態においても、図1から図7に示した実施形態と同様の効果を得ることができる。例えば、半導体装置102は、記憶媒体300のMBR320に格納されたブート情報BINF1のバックアップであるブート情報BINF2を、記憶媒体300の識別情報IDINFに対応付けて、記憶媒体300とは別の記憶部202に格納する。これにより、記憶媒体300の信頼度を向上させることができる。   As described above, also in the embodiment shown in FIG. 8, the same effects as those in the embodiment shown in FIGS. 1 to 7 can be obtained. For example, the semiconductor device 102 associates boot information BINF2 that is a backup of the boot information BINF1 stored in the MBR 320 of the storage medium 300 with the identification information IDINF of the storage medium 300, and is a storage unit 202 different from the storage medium 300. To store. Thereby, the reliability of the storage medium 300 can be improved.

また、半導体装置102は、記憶部202に書き込む前のブート情報BINF1から算出したハッシュ値HASH1と、記憶部202に書き込んだ後のブート情報BINF2から算出したハッシュ値HASH2とを比較する。そして、半導体装置102は、ハッシュ値HASH1とハッシュ値HASH2との比較結果に基づいて、ブート情報BINF2が記憶部202に正常に書き込めたか否かを判定する。これにより、正常でないブート情報BINF2が記憶部202に格納されることを抑制することができる。   Further, the semiconductor device 102 compares the hash value HASH1 calculated from the boot information BINF1 before writing to the storage unit 202 and the hash value HASH2 calculated from the boot information BINF2 after writing to the storage unit 202. Then, the semiconductor device 102 determines whether or not the boot information BINF2 has been normally written in the storage unit 202 based on the comparison result between the hash value HASH1 and the hash value HASH2. Thereby, it is possible to prevent the boot information BINF2 that is not normal from being stored in the storage unit 202.

また、半導体装置102は、記憶媒体300のMBR320を修復する際に、記憶部202から読み出したブート情報BINF2から算出したハッシュ値HASH3と、記憶部202から読み出したハッシュ値HASH2とを比較する。そして、半導体装置102は、ハッシュ値HASH2とハッシュ値HASH3との比較結果に基づいて、記憶部202から読み出したブート情報BINF2が破壊されているか否かを判定する。これにより、正常でないブート情報BINF2でMBR320を修復することを防止できる。   Further, when the semiconductor device 102 restores the MBR 320 of the storage medium 300, the hash value HASH3 calculated from the boot information BINF2 read from the storage unit 202 is compared with the hash value HASH2 read from the storage unit 202. Then, the semiconductor device 102 determines whether or not the boot information BINF2 read from the storage unit 202 is destroyed based on the comparison result between the hash value HASH2 and the hash value HASH3. As a result, it is possible to prevent the MBR 320 from being repaired with the abnormal boot information BINF2.

図9は、図2に示した半導体装置100のハードウェア構成の一例を示している。なお、図2から図7で説明した要素と同様の要素については、同様の符号を付し、これ等については、詳細な説明を省略する。   FIG. 9 shows an example of the hardware configuration of the semiconductor device 100 shown in FIG. The same elements as those described in FIGS. 2 to 7 are denoted by the same reference numerals, and detailed description thereof will be omitted.

コンピュータ500は、例えば、LSI(Large Scale Integration)510、不揮発性メモリ560および光学ドライブ570を有する。LSI510および不揮発性メモリ560は、例えば、LSIボードに搭載される。   The computer 500 includes, for example, an LSI (Large Scale Integration) 510, a nonvolatile memory 560, and an optical drive 570. The LSI 510 and the nonvolatile memory 560 are mounted on, for example, an LSI board.

LSI510は、CPU(Central Processing Unit)520、USBインターフェース回路530、532、SDインターフェース回路534、メモリ540およびハードディスク550を有する。CPU520、メモリ540、ハードディスク550、USBインターフェース回路530、532、SDインターフェース回路534、不揮発性メモリ560および光学ドライブ570は、バスBUSに接続される。   The LSI 510 includes a CPU (Central Processing Unit) 520, USB interface circuits 530 and 532, an SD interface circuit 534, a memory 540, and a hard disk 550. The CPU 520, the memory 540, the hard disk 550, the USB interface circuits 530 and 532, the SD interface circuit 534, the nonvolatile memory 560, and the optical drive 570 are connected to the bus BUS.

CPU520は、例えば、メモリ540に格納された記憶媒体の制御プログラム等のアプリケーションプログラムを実行することで、図2に示した制御部110として機能する。したがって、図2に示した制御部110の機能は、CPU520により実現される。   The CPU 520 functions as the control unit 110 illustrated in FIG. 2 by executing an application program such as a storage medium control program stored in the memory 540, for example. Therefore, the function of the control unit 110 shown in FIG.

USBインターフェース回路530、532は、USBメモリ600(600A、600B)のインタフェースであり、SDインターフェース回路534は、SDメモリカード602のインタフェースである。また、USBメモリ600およびSDメモリカード602は、図2に示した記憶媒体300に対応する。すなわち、USBインターフェース回路530、532、SDインターフェース回路534は、図2に示したインターフェース部120に対応する。   The USB interface circuits 530 and 532 are interfaces of the USB memory 600 (600A and 600B), and the SD interface circuit 534 is an interface of the SD memory card 602. The USB memory 600 and the SD memory card 602 correspond to the storage medium 300 shown in FIG. That is, the USB interface circuits 530 and 532 and the SD interface circuit 534 correspond to the interface unit 120 illustrated in FIG.

メモリ540は、例えば、コンピュータ500のオペレーティングシステムを格納する。また、メモリ540は、例えば、半導体装置100の動作をCPU520が実行するための記憶媒体の制御プログラム等のアプリケーションプログラムを格納する。なお、記憶媒体の制御プログラム等のアプリケーションプログラムは、ハードディスク550に格納されてもよい。   The memory 540 stores the operating system of the computer 500, for example. The memory 540 stores application programs such as a storage medium control program for the CPU 520 to execute the operation of the semiconductor device 100. Note that application programs such as a storage medium control program may be stored in the hard disk 550.

不揮発性メモリ560は、USBメモリ600、SDメモリカード602等の記憶媒体のブート情報BINF2と、ブート情報BINF2のハッシュ値HASH2と、識別情報IDINFとを記憶する。すなわち、不揮発性メモリ560は、図2に示した記憶部200に対応する。   The nonvolatile memory 560 stores boot information BINF2 of a storage medium such as the USB memory 600 and the SD memory card 602, a hash value HASH2 of the boot information BINF2, and identification information IDINF. That is, the nonvolatile memory 560 corresponds to the storage unit 200 illustrated in FIG.

したがって、図2に示した半導体装置100の機能は、例えば、LSI510と不揮発性メモリ560とにより実現される。なお、図1に示した半導体装置10の機能および図8に示した半導体装置102の機能は、LSI510により実現される。例えば、図8に示した制御部112の機能は、CPU520により実現される。   Therefore, the function of the semiconductor device 100 shown in FIG. 2 is realized by the LSI 510 and the nonvolatile memory 560, for example. Note that the functions of the semiconductor device 10 shown in FIG. 1 and the functions of the semiconductor device 102 shown in FIG. For example, the function of the control unit 112 illustrated in FIG. 8 is realized by the CPU 520.

光学ドライブ570は、光ディスク等のリムーバブルディスク580を装着可能であり、装着したリムーバブルディスク580に記録された情報の読み出しおよび記録を行う。   The optical drive 570 can be mounted with a removable disk 580 such as an optical disk, and reads and records information recorded on the mounted removable disk 580.

記憶媒体の制御プログラム等のアプリケーションプログラムは、例えば、光ディスク等のリムーバブルディスク580に記録して頒布することができる。例えば、コンピュータ500は、記憶媒体の制御プログラム等のアプリケーションプログラムを、リムーバブルディスク580から光学ドライブ570を介して読み出し、メモリ540やハードディスク550に格納してもよい。また、コンピュータ500は、記憶媒体の制御プログラム等のアプリケーションプログラムを、インターネット等のネットワークに接続する通信装置を介してダウンロードし、メモリ540やハードディスク550に格納してもよい。   An application program such as a storage medium control program can be recorded on a removable disk 580 such as an optical disk and distributed. For example, the computer 500 may read an application program such as a storage medium control program from the removable disk 580 via the optical drive 570 and store the application program in the memory 540 or the hard disk 550. Further, the computer 500 may download an application program such as a control program for a storage medium via a communication device connected to a network such as the Internet and store it in the memory 540 or the hard disk 550.

半導体装置100のハードウェア構成は、図9に示す例に限定されない。例えば、コンピュータ500は、光学ドライブ570が省かれてもよい。   The hardware configuration of the semiconductor device 100 is not limited to the example shown in FIG. For example, in the computer 500, the optical drive 570 may be omitted.

以上の実施形態において説明した発明を整理して、付記として開示する。
(付記1)
記憶媒体の起動時に参照されるブート領域に格納されたブート情報と、前記記憶媒体を識別する識別情報とを、アクセス対象の前記記憶媒体である第1記憶媒体から読み出すアクセス部と、
前記第1記憶媒体から読み出された第1ブート情報が正常である場合、複数の記憶媒体のそれぞれのブート情報および識別情報を記憶する記憶部に、前記第1記憶媒体から読み出された前記第1ブート情報を前記第1記憶媒体の第1識別情報に対応付けて格納するバックアップ部と、
前記第1記憶媒体から読み出された前記第1ブート情報が正常でなく、かつ、前記第1記憶媒体の前記第1識別情報が前記記憶部に記憶されている場合、前記第1記憶媒体の前記第1識別情報に対応する第2ブート情報を前記記憶部から読み出し、前記第1記憶媒体の前記ブート領域に格納された前記第1ブート情報を前記記憶部から読み出した前記第2ブート情報を用いて修復する修復部と
を有することを特徴とする半導体装置。
(付記2)
付記1に記載の半導体装置において、
前記第1記憶媒体から読み出された前記第1ブート情報が正常である場合、前記バックアップ部は、
前記第1記憶媒体から読み出された前記第1ブート情報を用いて第1のハッシュ値を算出し、
前記第1記憶媒体から読み出された前記第1ブート情報を前記第1記憶媒体の前記第1識別情報に対応付けて前記記憶部に格納した後に、前記第1記憶媒体の前記第1識別情報に対応する前記第2ブート情報を前記記憶部から読み出し、前記記憶部から読み出した前記第2ブート情報を用いて第2のハッシュ値を算出し、
前記第1のハッシュ値が前記第2のハッシュ値と等しい場合、前記第2のハッシュ値を前記第1記憶媒体の前記第1識別情報に対応付けて前記記憶部に格納する
ことを特徴とする半導体装置。
(付記3)
付記2に記載の半導体装置において、
前記第1記憶媒体から読み出された前記第1ブート情報が正常でなく、かつ、前記第1記憶媒体の前記第1識別情報が前記記憶部に記憶されている場合、前記修復部は、
前記記憶部から読み出した前記第2ブート情報を用いて第3のハッシュ値を算出し、
前記第1記憶媒体の前記第1識別情報に対応する前記第2のハッシュ値を前記記憶部から読み出し、
前記記憶部から読み出した前記第2のハッシュ値が前記第3のハッシュ値と等しい場合、前記記憶部から読み出した前記第2ブート情報を前記第1記憶媒体の前記ブート領域に格納し、前記第2のハッシュ値が前記第3のハッシュ値と異なる場合、前記第1記憶媒体の前記ブート領域に格納された前記第1ブート情報の修復を中止する
ことを特徴とする半導体装置。
(付記4)
付記2または付記3に記載の半導体装置において、
前記バックアップ部は、前記第1のハッシュ値が前記第2のハッシュ値と異なる場合、前記第1記憶媒体の前記第1識別情報および前記第1記憶媒体の前記第1識別情報に対応する前記第2ブート情報を、前記記憶部から削除する
ことを特徴とする半導体装置。
(付記5)
付記1ないし付記4のいずれか1項に記載の半導体装置において、
前記ブート領域は、記憶媒体の先頭セクタである
ことを特徴とする半導体装置。
(付記6)
記憶媒体の制御方法において、
記憶媒体の起動時に参照されるブート領域に格納されたブート情報と、前記記憶媒体を識別する識別情報とを、アクセス対象の前記記憶媒体である第1記憶媒体から読み出し、
前記第1記憶媒体から読み出された第1ブート情報が正常である場合、複数の記憶媒体のそれぞれのブート情報および識別情報を記憶する記憶部に、前記第1記憶媒体から読み出された前記第1ブート情報を前記第1記憶媒体の第1識別情報に対応付けて格納し、
前記第1記憶媒体から読み出された前記第1ブート情報が正常でなく、かつ、前記第1記憶媒体の前記第1識別情報が前記記憶部に記憶されている場合、前記第1記憶媒体の前記第1識別情報に対応する第2ブート情報を前記記憶部から読み出し、前記第1記憶媒体の前記ブート領域に格納された前記第1ブート情報を前記記憶部から読み出した前記第2ブート情報を用いて修復する
ことを特徴とする記憶媒体の制御方法。
The invention described in the above embodiments is organized and disclosed as an appendix.
(Appendix 1)
An access unit that reads the boot information stored in the boot area referred to when starting the storage medium and the identification information for identifying the storage medium from the first storage medium that is the storage medium to be accessed;
When the first boot information read from the first storage medium is normal, the storage unit that stores the boot information and the identification information of each of the plurality of storage media stores the read information from the first storage medium. A backup unit that stores first boot information in association with first identification information of the first storage medium;
When the first boot information read from the first storage medium is not normal and the first identification information of the first storage medium is stored in the storage unit, the first storage medium The second boot information corresponding to the first identification information is read from the storage unit, and the first boot information stored in the boot area of the first storage medium is read from the storage unit. A semiconductor device comprising: a repair portion that is repaired by using the semiconductor device.
(Appendix 2)
In the semiconductor device according to attachment 1,
When the first boot information read from the first storage medium is normal, the backup unit
Using the first boot information read from the first storage medium to calculate a first hash value;
After the first boot information read from the first storage medium is stored in the storage unit in association with the first identification information of the first storage medium, the first identification information of the first storage medium The second boot information corresponding to is read from the storage unit, a second hash value is calculated using the second boot information read from the storage unit,
When the first hash value is equal to the second hash value, the second hash value is stored in the storage unit in association with the first identification information of the first storage medium. Semiconductor device.
(Appendix 3)
In the semiconductor device according to attachment 2,
When the first boot information read from the first storage medium is not normal and the first identification information of the first storage medium is stored in the storage unit, the restoration unit is
A third hash value is calculated using the second boot information read from the storage unit,
Reading the second hash value corresponding to the first identification information of the first storage medium from the storage unit;
When the second hash value read from the storage unit is equal to the third hash value, the second boot information read from the storage unit is stored in the boot area of the first storage medium; If the hash value of 2 is different from the third hash value, the restoration of the first boot information stored in the boot area of the first storage medium is stopped.
(Appendix 4)
In the semiconductor device according to appendix 2 or appendix 3,
When the first hash value is different from the second hash value, the backup unit corresponds to the first identification information of the first storage medium and the first identification information of the first storage medium. 2 Boot information is deleted from the said memory | storage part. The semiconductor device characterized by the above-mentioned.
(Appendix 5)
In the semiconductor device according to any one of appendix 1 to appendix 4,
The semiconductor device, wherein the boot area is a head sector of a storage medium.
(Appendix 6)
In a storage medium control method,
Read boot information stored in a boot area referred to when starting the storage medium and identification information for identifying the storage medium from the first storage medium that is the storage medium to be accessed;
When the first boot information read from the first storage medium is normal, the storage unit that stores the boot information and the identification information of each of the plurality of storage media stores the read information from the first storage medium. Storing first boot information in association with first identification information of the first storage medium;
When the first boot information read from the first storage medium is not normal and the first identification information of the first storage medium is stored in the storage unit, the first storage medium The second boot information corresponding to the first identification information is read from the storage unit, and the first boot information stored in the boot area of the first storage medium is read from the storage unit. A storage medium control method characterized by using and repairing.

以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。   From the above detailed description, features and advantages of the embodiments will become apparent. This is intended to cover the features and advantages of the embodiments described above without departing from the spirit and scope of the claims. Also, any improvement and modification should be readily conceivable by those having ordinary knowledge in the art. Therefore, there is no intention to limit the scope of the inventive embodiments to those described above, and appropriate modifications and equivalents included in the scope disclosed in the embodiments can be used.

10、100、102‥半導体装置;12‥アクセス部;16、160、162‥修復部;14、140、142‥バックアップ部;20、200、202‥記憶部;30、300‥記憶媒体;32、220、320‥MBR;34、240、340‥データ領域;120‥インタフェース部;122‥アクセス制御部;500‥コンピュータ;510‥LSI;520‥CPU;530、532‥USBインタフェース回路;534‥SDインタフェース回路;540‥メモリ;550‥ハードディスク;560‥不揮発性メモリ;570‥光学ドライブ;580‥リムーバブルディスク   DESCRIPTION OF SYMBOLS 10, 100, 102 ... Semiconductor device; 12 ... Access part; 16, 160, 162 ... Restoration part; 14, 140, 142 ... Backup part; 20, 200, 202 ... Storage part; 30, 300 ... Storage medium; 220, 320, MBR; 34, 240, 340, data area; 120, interface unit; 122, access control unit; 500, computer; 510, LSI, 520, CPU; 530, 532, USB interface circuit; Circuit: 540 Memory: 550 Hard disk; 560 Non-volatile memory; 570 Optical drive; 580 Removable disk

Claims (4)

記憶媒体の起動時に参照されるブート領域に格納されたブート情報と、前記記憶媒体を識別する識別情報とを、アクセス対象の前記記憶媒体である第1記憶媒体から読み出すアクセス部と、
前記第1記憶媒体から読み出された第1ブート情報が正常である場合、複数の記憶媒体のそれぞれのブート情報および識別情報を記憶する記憶部に、前記第1記憶媒体から読み出された前記第1ブート情報を前記第1記憶媒体の第1識別情報に対応付けて格納するバックアップ部と、
前記第1記憶媒体から読み出された前記第1ブート情報が正常でなく、かつ、前記第1記憶媒体の前記第1識別情報が前記記憶部に記憶されている場合、前記第1記憶媒体の前記第1識別情報に対応する第2ブート情報を前記記憶部から読み出し、前記第1記憶媒体の前記ブート領域に格納された前記第1ブート情報を前記記憶部から読み出した前記第2ブート情報を用いて修復する修復部と
を有し、
前記第1記憶媒体から読み出された前記第1ブート情報が正常である場合、前記バックアップ部は、
前記第1記憶媒体から読み出された前記第1ブート情報を用いて第1のハッシュ値を算出し、
前記第1記憶媒体から読み出された前記第1ブート情報を前記第1記憶媒体の前記第1識別情報に対応付けて前記記憶部に格納した後に、前記第1記憶媒体の前記第1識別情報に対応する前記第2ブート情報を前記記憶部から読み出し、前記記憶部から読み出した前記第2ブート情報を用いて第2のハッシュ値を算出し、
前記第1のハッシュ値が前記第2のハッシュ値と等しい場合、前記第2のハッシュ値を前記第1記憶媒体の前記第1識別情報に対応付けて前記記憶部に格納する
ことを特徴とする半導体装置。
An access unit that reads the boot information stored in the boot area referred to when starting the storage medium and the identification information for identifying the storage medium from the first storage medium that is the storage medium to be accessed;
When the first boot information read from the first storage medium is normal, the storage unit that stores the boot information and the identification information of each of the plurality of storage media stores the read information from the first storage medium. A backup unit that stores first boot information in association with first identification information of the first storage medium;
When the first boot information read from the first storage medium is not normal and the first identification information of the first storage medium is stored in the storage unit, the first storage medium The second boot information corresponding to the first identification information is read from the storage unit, and the first boot information stored in the boot area of the first storage medium is read from the storage unit. have a and repair parts to repair using,
When the first boot information read from the first storage medium is normal, the backup unit
Using the first boot information read from the first storage medium to calculate a first hash value;
After the first boot information read from the first storage medium is stored in the storage unit in association with the first identification information of the first storage medium, the first identification information of the first storage medium The second boot information corresponding to is read from the storage unit, a second hash value is calculated using the second boot information read from the storage unit,
When the first hash value is equal to the second hash value, the second hash value is stored in the storage unit in association with the first identification information of the first storage medium. Semiconductor device.
請求項に記載の半導体装置において、
前記第1記憶媒体から読み出された前記第1ブート情報が正常でなく、かつ、前記第1記憶媒体の前記第1識別情報が前記記憶部に記憶されている場合、前記修復部は、
前記記憶部から読み出した前記第2ブート情報を用いて第3のハッシュ値を算出し、
前記第1記憶媒体の前記第1識別情報に対応する前記第2のハッシュ値を前記記憶部から読み出し、
前記記憶部から読み出した前記第2のハッシュ値が前記第3のハッシュ値と等しい場合、前記記憶部から読み出した前記第2ブート情報を前記第1記憶媒体の前記ブート領域に格納し、前記第2のハッシュ値が前記第3のハッシュ値と異なる場合、前記第1記憶媒体の前記ブート領域に格納された前記第1ブート情報の修復を中止する
ことを特徴とする半導体装置。
The semiconductor device according to claim 1 ,
When the first boot information read from the first storage medium is not normal and the first identification information of the first storage medium is stored in the storage unit, the restoration unit is
A third hash value is calculated using the second boot information read from the storage unit,
Reading the second hash value corresponding to the first identification information of the first storage medium from the storage unit;
When the second hash value read from the storage unit is equal to the third hash value, the second boot information read from the storage unit is stored in the boot area of the first storage medium; If the hash value of 2 is different from the third hash value, the restoration of the first boot information stored in the boot area of the first storage medium is stopped.
請求項または請求項に記載の半導体装置において、
前記バックアップ部は、前記第1のハッシュ値が前記第2のハッシュ値と異なる場合、前記第1記憶媒体の前記第1識別情報および前記第1記憶媒体の前記第1識別情報に対応する前記第2ブート情報を、前記記憶部から削除する
ことを特徴とする半導体装置。
The semiconductor device according to claim 1 or 2 ,
When the first hash value is different from the second hash value, the backup unit corresponds to the first identification information of the first storage medium and the first identification information of the first storage medium. 2 Boot information is deleted from the said memory | storage part. The semiconductor device characterized by the above-mentioned.
記憶媒体の制御方法において、
記憶媒体の起動時に参照されるブート領域に格納されたブート情報と、前記記憶媒体を識別する識別情報とを、アクセス対象の前記記憶媒体である第1記憶媒体から読み出し、
前記第1記憶媒体から読み出された第1ブート情報が正常である場合、複数の記憶媒体のそれぞれのブート情報および識別情報を記憶する記憶部に、前記第1記憶媒体から読み出された前記第1ブート情報を前記第1記憶媒体の第1識別情報に対応付けて格納し、
前記第1記憶媒体から読み出された前記第1ブート情報が正常でなく、かつ、前記第1記憶媒体の前記第1識別情報が前記記憶部に記憶されている場合、前記第1記憶媒体の前記第1識別情報に対応する第2ブート情報を前記記憶部から読み出し、前記第1記憶媒体の前記ブート領域に格納された前記第1ブート情報を前記記憶部から読み出した前記第2ブート情報を用いて修復し、
前記第1記憶媒体から読み出された前記第1ブート情報が正常である場合、前記第1記憶媒体から読み出された前記第1ブート情報を用いて第1のハッシュ値を算出し、
前記第1記憶媒体から読み出された前記第1ブート情報を前記第1記憶媒体の前記第1識別情報に対応付けて前記記憶部に格納した後に、前記第1記憶媒体の前記第1識別情報に対応する前記第2ブート情報を前記記憶部から読み出し、前記記憶部から読み出した前記第2ブート情報を用いて第2のハッシュ値を算出し、
前記第1のハッシュ値が前記第2のハッシュ値と等しい場合、前記第2のハッシュ値を前記第1記憶媒体の前記第1識別情報に対応付けて前記記憶部に格納する
ことを特徴とする記憶媒体の制御方法。
In a storage medium control method,
Read boot information stored in a boot area referred to when starting the storage medium and identification information for identifying the storage medium from the first storage medium that is the storage medium to be accessed;
When the first boot information read from the first storage medium is normal, the storage unit that stores the boot information and the identification information of each of the plurality of storage media stores the read information from the first storage medium. Storing first boot information in association with first identification information of the first storage medium;
When the first boot information read from the first storage medium is not normal and the first identification information of the first storage medium is stored in the storage unit, the first storage medium The second boot information corresponding to the first identification information is read from the storage unit, and the first boot information stored in the boot area of the first storage medium is read from the storage unit. used to repair,
When the first boot information read from the first storage medium is normal, a first hash value is calculated using the first boot information read from the first storage medium,
After the first boot information read from the first storage medium is stored in the storage unit in association with the first identification information of the first storage medium, the first identification information of the first storage medium The second boot information corresponding to is read from the storage unit, a second hash value is calculated using the second boot information read from the storage unit,
When the first hash value is equal to the second hash value, the second hash value is stored in the storage unit in association with the first identification information of the first storage medium. A storage medium control method.
JP2015078398A 2015-04-07 2015-04-07 Semiconductor device and storage medium control method Active JP6554881B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015078398A JP6554881B2 (en) 2015-04-07 2015-04-07 Semiconductor device and storage medium control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015078398A JP6554881B2 (en) 2015-04-07 2015-04-07 Semiconductor device and storage medium control method

Publications (2)

Publication Number Publication Date
JP2016200861A JP2016200861A (en) 2016-12-01
JP6554881B2 true JP6554881B2 (en) 2019-08-07

Family

ID=57424275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015078398A Active JP6554881B2 (en) 2015-04-07 2015-04-07 Semiconductor device and storage medium control method

Country Status (1)

Country Link
JP (1) JP6554881B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7084160B2 (en) * 2018-03-02 2022-06-14 Necプラットフォームズ株式会社 Start control device, start control system, start control method, and start control program
JP7380016B2 (en) * 2019-09-27 2023-11-15 株式会社デンソーウェーブ air conditioning controller

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6792556B1 (en) * 2000-05-31 2004-09-14 Dell Products L.P. Boot record recovery
TWI342519B (en) * 2007-07-02 2011-05-21 Asustek Comp Inc Computer apparatus and starting method and module thereof
JP5077726B1 (en) * 2011-05-23 2012-11-21 Necインフロンティア株式会社 Computer, control method thereof and program
KR101994811B1 (en) * 2012-03-04 2019-07-01 삼성전자주식회사 Electronic apparatus, method for restore of mbr and computer-readable recording medium

Also Published As

Publication number Publication date
JP2016200861A (en) 2016-12-01

Similar Documents

Publication Publication Date Title
TW421739B (en) System for computer recovery using removable high capacity media
JP4371771B2 (en) Power management block used in non-volatile memory system
US6205558B1 (en) Recovery of file systems after modification failure
US7818556B2 (en) Storage apparatus, control method, and control device which can be reliably started up when power is turned on even after there is an error during firmware update
TW200941217A (en) Data updating method, memory system and memory device
WO2013103023A1 (en) Information processing device, information processing method, and computer program
US20080126784A1 (en) Storage apparatus, control method, and control device
JP6543122B2 (en) INFORMATION PROCESSING APPARATUS, METHOD OF INITIALIZING NONVOLATILE STORAGE DEVICE BY THE INFORMATION PROCESSING APPARATUS, AND PROGRAM
JP2006268503A (en) Computer system, disk unit and data update control method
US8522084B2 (en) Computer system and method employing separate storage area for computer program recovery
US8140836B2 (en) Information processing apparatus and program
JP6554881B2 (en) Semiconductor device and storage medium control method
JP3194900B2 (en) Memory management method for computer having hard disk drive
TW201617861A (en) Firmware updating method and electronic apparatus using the same
JP2010282645A (en) Linux program start-up system
JP2002041292A (en) Computer recovery device
US10061630B2 (en) Image forming apparatus that ensures operation while HDD is inoperative, and recording medium therefor
TWI416319B (en) Boot method for computer system using redundant array of independent disks
JP2007164392A (en) Computer
JP6221702B2 (en) Information processing apparatus, information processing method, and information processing program
JP2006344022A (en) Equipment and program starting method
JP2010044503A (en) Computer program, and recording medium
US10958802B2 (en) Image forming apparatus, control method of image forming apparatus, and storage medium
JP5487603B2 (en) RECORDING CONTROL DEVICE, RECORDING CONTROL METHOD, RECORDING CONTROL PROGRAM, AND STORAGE MEDIUM
JP4170133B2 (en) Information processing device

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20180209

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20180209

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20180209

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180308

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190131

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190624

R150 Certificate of patent or registration of utility model

Ref document number: 6554881

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150