JP2011048691A - Information processing apparatus and control device - Google Patents
Information processing apparatus and control device Download PDFInfo
- Publication number
- JP2011048691A JP2011048691A JP2009197373A JP2009197373A JP2011048691A JP 2011048691 A JP2011048691 A JP 2011048691A JP 2009197373 A JP2009197373 A JP 2009197373A JP 2009197373 A JP2009197373 A JP 2009197373A JP 2011048691 A JP2011048691 A JP 2011048691A
- Authority
- JP
- Japan
- Prior art keywords
- address
- data
- controller
- command
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明は、情報処理装置および制御装置に関するものである。 The present invention relates to an information processing apparatus and a control apparatus.
データ格納装置の一種であるハードディスクドライブのインタフェースには、SCSI(Small Computer System Interface)、ATA(Advanced Technology Attachment)などがある(例えば特許文献1参照)。さらに、データ転送の高速化のために、シリアルATAなどが実現されている。 As an interface of a hard disk drive which is a kind of data storage device, there are SCSI (Small Computer System Interface), ATA (Advanced Technology Attachment), and the like (see, for example, Patent Document 1). Further, serial ATA or the like has been realized for speeding up data transfer.
また、近年、ハードディスクドライブ内のデータの読み書きの高速化のために、シリアルATA方式のハードディスクドライブについてネイティブコマンドキューイング(Native Command Queuing:NCQ)が実現されている。 In recent years, native command queuing (NCQ) has been realized for serial ATA hard disk drives in order to speed up the reading and writing of data in the hard disk drives.
NCQでは、ハードディスクドライブは、複数のコマンドを受け取ると、コマンドの供給順序に拘わらずに、データアクセス時間が短くなるように複数のコマンドの実行順序を決定して、コマンドを実行する。そして、ライトコマンドの場合、コマンド実行時に、ハードディスクドライブが、書き込むためのデータをコントローラ側へ要求し、コントローラ側は、その要求に対応するデータをハードディスクドライブへ送信する。 In NCQ, when receiving a plurality of commands, the hard disk drive determines the execution order of the plurality of commands so as to shorten the data access time regardless of the command supply order, and executes the commands. In the case of a write command, the hard disk drive requests data to be written to the controller when executing the command, and the controller transmits data corresponding to the request to the hard disk drive.
ハードディスクドライブのある記憶領域にイレース用データを上書きすることでその記憶領域のデータを消去するイレース処理を行うことがある。イレース用データは、意味のないデータである。イレース処理を行う場合、CPU(Central Processing Unit)などのプロセッサがイレースの対象となる記憶領域の各アドレスについてライトコマンドを発行してイレース用データを上書きさせることが考えられる。この場合、システムメモリにイレース用データが用意され、ライトコマンドに従って、コントローラがそのシステムメモリからそのイレース用データを読み出しハードディスクドライブに送信する。しかしながら、そのようにした場合、多数のライトコマンドに起因して、システムメモリとコントローラとの間の通信路(例えばバス)のトラフィックが増加し、その通信路を使用する別の処理に遅延が生じてしまう可能性がある。 An erase process may be performed to erase data in the storage area by overwriting the erase data in a storage area of the hard disk drive. The erase data is meaningless data. When performing an erase process, it is conceivable that a processor such as a CPU (Central Processing Unit) issues a write command for each address of a storage area to be erased to overwrite the erase data. In this case, erase data is prepared in the system memory, and in accordance with a write command, the controller reads the erase data from the system memory and transmits it to the hard disk drive. However, in such a case, due to a large number of write commands, traffic on the communication path (for example, bus) between the system memory and the controller increases, and another process using the communication path is delayed. There is a possibility that.
そこで、コントローラに対して直接、イレース用データを供給し、イレース処理時には、システムメモリへアクセスすることなく、イレース用データをハードディスクドライブへ供給することが考えられる。 Therefore, it is conceivable that erase data is directly supplied to the controller, and during the erase process, the erase data is supplied to the hard disk drive without accessing the system memory.
しかしながら、イレース処理と通常のデータライト処理とが混在して発生する場合、上述のNCQのように、ハードディスク側でコマンドの順番が変更されると、コントローラ側は、コマンド実行時にハードディスク側からデータを要求されたときに、イレース用データを供給するのか、通常のデータライト処理のためにシステムメモリ上のデータを供給するのかを判定することが困難である。 However, when erase processing and normal data write processing occur together, if the order of commands is changed on the hard disk side as in the above-mentioned NCQ, the controller side transfers data from the hard disk side when executing the command. When requested, it is difficult to determine whether to supply erase data or to supply data in the system memory for normal data write processing.
このように、コマンドをキューイングしコマンドの順番を並び替えて実行するハードディスクドライブへ、システムメモリへアクセスすることなく、イレース用データを正しく供給することが困難である。 As described above, it is difficult to correctly supply the erasing data without accessing the system memory to the hard disk drive for queuing the commands and rearranging the order of the commands.
なお、この問題は、ハードディスクドライブに限らず、コントローラから供給されたコマンドの実行順序を変更して最適化する他のデータ格納装置でも発生し得る。 This problem may occur not only in the hard disk drive but also in other data storage devices that optimize by changing the execution order of commands supplied from the controller.
本発明は、コマンドをキューイングしコマンドの順番を並び替えて実行するデータ格納装置へ、システムメモリへアクセスすることなく、イレース用データを正しく供給することができる情報処理装置および制御装置を得ることを目的とする。 The present invention provides an information processing apparatus and control apparatus that can correctly supply erasing data without accessing a system memory to a data storage apparatus that executes commands by queuing commands and rearranging the order of the commands. With the goal.
上記の課題を解決するために、本発明では以下のようにした。 In order to solve the above problems, the present invention is configured as follows.
本発明に係る情報処理装置は、システムメモリと、データ格納装置のある記憶領域へデータをライトする際に、システムメモリにおけるデータのアドレスをセットしたライトコマンドを制御装置に対して発行し、データ格納装置のある記憶領域のデータをイレースする際に、所定のアドレスをセットしたライトコマンドを制御装置に対して発行するコマンド発行手段と、イレース用データを生成するデータ生成部と、データ格納装置へコマンドを供給し、コマンドの実行時にそのコマンドで書き込まれるデータの要求をデータ格納装置から受信すると、そのデータのアドレスを出力し、そのアドレスに対応して供給されたデータをデータ格納装置へ送信するコントローラと、コントローラから出力されたアドレスがイレース時の所定のアドレスであるか否かを判定するアドレス判定部と、アドレス判定部により、コントローラから出力されたアドレスがイレース時の所定のアドレスであると判定された場合、データ生成部により生成されたデータをコントローラへ供給し、アドレス判定部により、コントローラから出力されたアドレスがイレース時の所定のアドレスではないと判定された場合、システムメモリ上のそのアドレスのデータをコントローラへ供給するデータ選択部とを備える。 The information processing apparatus according to the present invention, when writing data to a system memory and a storage area in the data storage device, issues a write command in which the address of the data in the system memory is set to the control device, and stores the data When erasing data in a storage area of the device, command issuing means for issuing a write command with a predetermined address set to the control device, a data generating unit for generating erase data, and a command to the data storage device When a command for data written by the command is received from the data storage device when the command is executed, the controller outputs the address of the data and transmits the data supplied corresponding to the address to the data storage device And the address output from the controller is the predetermined address at the time of erasing. If the address determination unit and the address determination unit determine that the address output from the controller is a predetermined address at the time of erasing, the data generated by the data generation unit is sent to the controller. And a data selection unit that supplies data of the address in the system memory to the controller when the address determination unit determines that the address output from the controller is not a predetermined address at the time of erasure.
これにより、データ格納装置から要求されるデータのアドレスに基づいて、イレース用データを供給すべきか否かが判定されるため、コマンドをキューイングしコマンドの順番を並び替えて実行するデータ格納装置へ、システムメモリへアクセスすることなく、イレース用データを正しく供給することができる。 Thus, since it is determined whether or not the erasing data should be supplied based on the address of the data requested from the data storage device, the command is queued and the data storage device that executes the command in the rearranged order. The erasing data can be correctly supplied without accessing the system memory.
本発明に係る制御装置は、イレース用データを生成するデータ生成部と、データ格納装置へコマンドを供給し、コマンドの実行時にそのコマンドで書き込まれるデータの要求をデータ格納装置から受信すると、そのデータのアドレスを出力し、そのアドレスに対応して供給されたデータをデータ格納装置へ送信するコントローラと、コントローラから出力されたアドレスがイレース時の所定のアドレスであるか否かを判定するアドレス判定部と、アドレス判定部により、コントローラから出力されたアドレスがイレース時の所定のアドレスであると判定された場合、データ生成部により生成されたデータをコントローラへ供給し、アドレス判定部により、コントローラから出力されたアドレスがイレース時の所定のアドレスではないと判定された場合、システムメモリ上のそのアドレスのデータをコントローラへ供給するデータ選択部とを備える。 The control device according to the present invention supplies a command to the data generation unit that generates the data for erasure and the data storage device, and receives a request for data written by the command when the command is executed from the data storage device. A controller for outputting the address of the data and transmitting the data supplied corresponding to the address to the data storage device, and an address determination unit for determining whether the address output from the controller is a predetermined address at the time of erasing When the address determination unit determines that the address output from the controller is a predetermined address at the time of erasing, the data generated by the data generation unit is supplied to the controller, and the address determination unit outputs the data from the controller. It is determined that the specified address is not the predetermined address at the time of erasing. If, and a data data selector for supplying to the controller address on the system memory.
これにより、データ格納装置から要求されるデータのアドレスに基づいて、イレース用データを供給すべきか否かが判定されるため、コマンドをキューイングしコマンドの順番を並び替えて実行するデータ格納装置へ、システムメモリへアクセスすることなく、イレース用データを正しく供給することができる。 Thus, since it is determined whether or not the erasing data should be supplied based on the address of the data requested from the data storage device, the command is queued and the data storage device that executes the command in the rearranged order. The erasing data can be correctly supplied without accessing the system memory.
また、本発明に係る制御装置は、上記の制御装置に加え、次のようにしてもよい。この場合、イレース時の所定のアドレスは、所定のアドレス領域におけるアドレスであり、アドレス判定部は、コントローラから出力されたアドレスがアドレス領域に属する場合、コントローラから出力されたアドレスがイレース時の所定のアドレスであると判定する。 In addition to the control device described above, the control device according to the present invention may be configured as follows. In this case, the predetermined address at the time of erasing is an address in a predetermined address area, and the address determination unit, when the address output from the controller belongs to the address area, the address output from the controller is the predetermined address at the time of erasing. It is determined that it is an address.
また、本発明に係る制御装置は、上記の制御装置のいずれかに加え、次のようにしてもよい。この場合、データ生成部は、コントローラから出力されたアドレスに応じて異なる値を有するイレース用データを生成する。 In addition to any of the above control devices, the control device according to the present invention may be configured as follows. In this case, the data generating unit generates erasing data having different values according to the address output from the controller.
また、本発明に係る制御装置は、上記の制御装置のいずれかに加え、次のようにしてもよい。この場合、イレース時の所定のアドレスは、複数のアドレス領域のいずれかにおけるアドレスであり、アドレス判定部は、コントローラから出力されたアドレスが複数のアドレス領域のいずれかに属する場合、コントローラから出力されたアドレスがイレース時の所定のアドレスであると判定し、データ生成部は、コントローラから出力されたアドレスが属するアドレス領域に応じて異なる値を有するイレース用データを生成する
。
In addition to any of the above control devices, the control device according to the present invention may be configured as follows. In this case, the predetermined address at the time of erasing is an address in one of a plurality of address areas, and the address determination unit outputs from the controller when the address output from the controller belongs to any of the plurality of address areas. The data generation unit generates erase data having different values depending on the address area to which the address output from the controller belongs.
また、本発明に係る制御装置は、上記の制御装置のいずれかに加え、次のようにしてもよい。この場合、イレース時の所定のアドレスは、システムメモリからデータ格納装置へデータを転送するために使用されるデータバッファのアドレス以外のアドレスである。 In addition to any of the above control devices, the control device according to the present invention may be configured as follows. In this case, the predetermined address at the time of erasing is an address other than the address of the data buffer used for transferring data from the system memory to the data storage device.
これにより、イレース用データのために、システムメモリの記憶領域を確保する必要がない。 Thus, it is not necessary to secure a storage area of the system memory for erasing data.
また、本発明に係る制御装置は、上記の制御装置のいずれかに加え、次のようにしてもよい。この場合、データ格納装置は、ネイティブコマンドキューイング機能を有するシリアルATA規格のハードディスクドライブであり、コントローラは、ネイティブコマンドキューイング機能を有するシリアルATA規格のハードディスクドライブのためのハードディクスドライブコントローラである。 In addition to any of the above control devices, the control device according to the present invention may be configured as follows. In this case, the data storage device is a serial ATA standard hard disk drive having a native command queuing function, and the controller is a hard disk drive controller for a serial ATA standard hard disk drive having a native command queuing function.
本発明によれば、コマンドをキューイングしコマンドの順番を並び替えて実行するデータ格納装置へ、システムメモリへアクセスすることなく、イレース用データを正しく供給することができる。 According to the present invention, it is possible to correctly supply erasing data to a data storage device that executes commands by queuing commands and rearranging the order of the commands without accessing the system memory.
以下、図に基づいて本発明の実施の形態を説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図1は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。図1に示す情報処理装置1は、ハードディスクドライブ(HDD)2に接続されている。この実施の形態では、HDD2は、NCQ機能を有するシリアルATA規格のハードディスクドライブである。
FIG. 1 is a block diagram showing the configuration of the information processing apparatus according to the embodiment of the present invention. An
情報処理装置1は、CPU11、RAM(Random Access Memory)などのシステムメモリ12、および制御装置13を有する。CPU11、システムメモリ12および制御装置13は、バス14で互いに接続されている。バス14は、データバス、アドレスバスおよびコントロールバスを有する。情報処理装置1は、例えば、ASIC(Application Specific Integrated Circuit)として構成される。
The
CPU11は、図示せぬ記録媒体に格納されているプログラムに従って動作し、各種処理を実行するプロセッサである。CPU11は、HDD2のイレース処理時およびHDD2のデータライト処理時に、バス14を介してライトコマンドを制御装置13に供給する。ライトコマンドでは、HDD2におけるアドレスと、システムメモリ12におけるアドレスとが指定される。
The
CPU11は、HDD2のある記憶領域へデータをライトする際に、システムメモリ12におけるデータのアドレスをセットしたライトコマンドを制御装置13に対して発行し、HDD2のある記憶領域のデータをイレースする際に、システムメモリ12上のアドレスの代わりに所定のアドレスをセットしたライトコマンドを制御装置13に対して発行する。
When the
この実施の形態では、イレース処理時に設定されるアドレスは、連続する複数のアドレス(つまり、アドレス領域)のうちの1つであり、HDD2における連続する複数のデータ領域をイレースする場合には、その連続する複数のアドレスが順番にイレース処理時に設定される。
In this embodiment, the address set at the time of erasing is one of a plurality of continuous addresses (that is, an address area), and when erasing a plurality of continuous data areas in the
なお、イレース処理時に設定されるアドレスは、システムメモリ12からHDD2へデータを転送するために使用されるデータバッファのアドレス以外のアドレスである。
The address set during the erase process is an address other than the address of the data buffer used for transferring data from the
例えば、通常のデータライトの場合には、0x00000000〜0xBFFFFFFFのアドレス領域が使用され、イレースの場合には、0xC0000000〜0xFFFFFFFFのアドレス領域が使用される。イレース時に設定されるアドレスには、上述のアドレス領域内のアドレスが順番に使用され、上述のアドレス領域内の最後のアドレスの次のアドレスとして最初のアドレスが使用されるようにしてもよい。 For example, in the case of normal data write, the address area of 0x0000000 to 0xBFFFFFFF is used, and in the case of erase, the address area of 0xC0000000 to 0xFFFFFFFF is used. As addresses set at the time of erasing, addresses in the above address area may be used in order, and the first address may be used as the next address after the last address in the above address area.
システムメモリ12は、所定の記憶領域において、データライト処理でHDD2に書き込むためのデータを格納する。
The
制御装置13は、HDD2用のホストコントローラである。制御装置13は、SATAコントローラ21、データ生成部22、データ選択部23、アドレス判定部24、およびダイレクトメモリアクセスコントローラ(DMAC)25を有する。
The
SATAコントローラ21は、HDD2へコマンドを供給し、コマンドの実行時にそのコマンドで書き込まれるデータの要求をHDD2から受信すると、そのデータのアドレスを出力し、そのアドレスに対応して供給されたデータをHDD2へ送信する。この実施の形態では、SATAコントローラ21は、ネイティブコマンドキューイング機能を有するシリアルATA規格のハードディスクドライブのためのHDDコントローラである。
When the
データ生成部22は、イレース用データを生成する回路である。
The
データ選択部23は、アドレス判定部24により、SATAコントローラ21から出力されたアドレスがイレース時の所定のアドレスであると判定された場合、データ生成部22により生成されたデータをSATAコントローラ21へ供給し、アドレス判定部24により、SATAコントローラ21から出力されたアドレスがイレース時の所定のアドレスではないと判定された場合、システムメモリ12上のそのアドレスのデータをDMAC25で読み出してSATAコントローラ21へ供給する回路である。
The
アドレス判定部24は、SATAコントローラ21から出力されたアドレスがイレース時の所定のアドレスであるか否かを判定する回路である。この実施の形態では、アドレス判定部24は、SATAコントローラ21から出力されたアドレスが、上述の連続する複数のアドレスのうちのいずれかに一致する場合、SATAコントローラ21から出力されたアドレスが、イレース時の所定のアドレスであると判定する。
The
DMAC25は、バス14に接続され、システムメモリ12にアクセスする回路である。
The
次に、上記装置の動作について説明する。 Next, the operation of the above apparatus will be described.
図2は、図1に示す装置によるイレース処理および通常のデータライト処理を説明するフローチャートである。 FIG. 2 is a flowchart for explaining erase processing and normal data write processing by the apparatus shown in FIG.
CPU11は、アプリケーションなどの各種処理においてイレース処理またはデータライト処理の要求が発生すると、バス14を介して、ライトコマンドを制御装置13に供給する。通常のデータライトのためのアドレス領域が0x00000000〜0xBFFFFFFFであり、イレースのためのアドレス領域が0xC0000000〜0xFFFFFFFFである場合、イレース処理のライトコマンドには、例えばアドレス0xD0000000がセットされ、通常のデータライト処理のライトコマンドには、例えばアドレス0x00000000がセットされる。
The
制御装置13のSATAコントローラ21は、そのライトコマンドを受信すると(ステップS1)、ATAのプロトコルに従って、そのライトコマンドに対応するコマンドをHDD2へ送信する(ステップS2)。
When receiving the write command (step S1), the
図3は、図1におけるSATAコントローラ21によるコマンド管理を説明する図である。図3に示すように、このとき、SATAコントローラ21は、HDD2へ送信するコマンドに固有の値のタグと、そのコマンドについてのアドレス(CPU11からのライトコマンドで指定されたアドレス、つまり、システムメモリ12のアドレスまたはイレース処理の所定のアドレス)とを互いに関連付けて保持する。一方、HDD2では、そのコマンドとともにタグが受信され、そのコマンドがキューイングされるとともに、そのタグがコマンドに関連付けられて保持される。
FIG. 3 is a diagram for explaining command management by the
このようにして、CPU11からのライトコマンドごとに、SATAコントローラ21は、HDD2にコマンドを送信する。
In this way, the
一方、HDD2では、キューイングされた複数のコマンドの実行順序が決定され、実行するコマンドのデータが、SATAコントローラ21に順番に要求される。このとき、上述のタグにより、実行するコマンドがSATAコントローラ21に通知される。
On the other hand, in the
SATAコントローラ21は、そのデータ要求を受信すると(ステップS3)、指定されたタグに関連付けて保持しているアドレスを出力する。アドレス判定部24は、そのアドレスが上述のイレース処理時の所定のアドレスであるか否かを判定する(ステップS4)。通常のデータライトのためのアドレス領域が0x00000000〜0xBFFFFFFFであり、イレースのためのアドレス領域が0xC0000000〜0xFFFFFFFFである場合、例えばアドレス0xD0000000がSATAコントローラ21から出力されると、アドレス判定部24は、そのアドレスが上述のイレース処理時の所定のアドレスであると判定し、例えばアドレス0x00000000がSATAコントローラ21から出力されると、アドレス判定部24は、そのアドレスが上述のイレース処理時の所定のアドレスではないと判定する。
When receiving the data request (step S3), the
アドレス判定部24は、SATAコントローラ21からのアドレスが上述のイレース処理時の所定のアドレスであると判定した場合、データ選択部23に、データ生成部22からのイレース用データを選択させる。データ選択部23は、そのイレース用データをSATAコントローラ21に供給し、SATAコントローラ21は、そのイレース用データをHDD2へ送信する(ステップS5)。HDD2は、そのデータを受信すると、コマンドに従って書き込む。
When the
一方、アドレス判定部24は、SATAコントローラ21からのアドレスが上述のイレース処理時の所定のアドレスではないと判定した場合、DMAC25に、システムメモリ12におけるそのアドレスからデータを読み出させる(ステップS6)。そして、アドレス判定部24は、データ選択部23に、その読み出されたデータを選択させる。データ選択部23は、そのデータをSATAコントローラ21に供給し、SATAコントローラ21は、そのデータをHDD2へ送信する(ステップS7)。HDD2は、そのデータを受信すると、コマンドに従って書き込む。
On the other hand, if the
このようにして、HDD2におけるコマンドの実行順序に沿って、適切に、そのコマンドに対応するデータ(イレース処理のためのイレース用データまたはデータライト処理のためのシステムメモリ12におけるデータ)が、HDD2に供給される。
In this way, data corresponding to the command (erase data for erase processing or data in the
以上のように、上記実施の形態によれば、CPU11は、HDD2のある記憶領域へデータをライトする際に、システムメモリ12におけるデータのアドレスをセットしたライトコマンドを制御装置13に対して発行し、HDD2のある記憶領域のデータをイレースする際に、所定のアドレスをセットしたライトコマンドを制御装置13に対して発行する。データ選択部23は、アドレス判定部24により、コントローラ21から出力されたアドレスがイレース時の所定のアドレスであると判定された場合、データ生成部22により生成されたデータをコントローラ21へ供給し、アドレス判定部24により、コントローラ21から出力されたアドレスがイレース時の所定のアドレスではないと判定された場合、システムメモリ12上のそのアドレスにおけるデータをコントローラ21へ供給する。SATAコントローラ21は、HDD2へコマンドを供給し、HDD2からコマンドの実行時にそのコマンドで書き込まれるデータの要求を受信すると、そのデータのアドレスを出力し、そのアドレスに対応して供給されたデータをHDD2へ送信する。
As described above, according to the above embodiment, when writing data to a storage area of the
これにより、HDD2から要求されるデータのアドレスに基づいて、イレース用データを供給すべきか否かが判定されるため、NCQ機能を有するHDD2へ、システムメモリ12へアクセスすることなく、イレース用データを正しく供給することができる。
Thus, since it is determined whether or not the erase data should be supplied based on the address of the data requested from the
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。 The above-described embodiments are preferred examples of the present invention, but the present invention is not limited to these, and various modifications and changes can be made without departing from the scope of the present invention. is there.
例えば、上記実施の形態において、イレース用のアドレス領域として複数のアドレス領域を割り当て、ライトコマンドに設定されるアドレスの属するアドレス領域に応じて異なる値のイレース用データをHDD2へ供給するようにしてもよい。その場合、CPU11は、HDD2に供給すべき値に応じたアドレスをライトコマンドにセットし、アドレス判定部24は、SATAコントローラ21からのアドレスの属するアドレス領域を特定し、データ生成部22は、特定されたアドレス領域に対応する値のイレース用データをデータ選択部23へ出力する。
For example, in the above-described embodiment, a plurality of address areas may be allocated as erase address areas, and different values of erase data may be supplied to the
また、上記実施の形態において、HDD2の代わりに、コマンドをキューイングしコマンドの順番を並び替えて実行する他の形式のデータ格納装置を使用してもよい。
In the above embodiment, instead of the
本発明は、例えば、ハードディスクドライブ上のデータのイレースに適用可能である。 The present invention is applicable to, for example, erasing data on a hard disk drive.
1 情報処理装置
2 ハードディスクドライブ(データ格納装置の一例)
11 CPU(コマンド発行手段の一例)
12 システムメモリ
21 SATAコントローラ(コントローラの一例)
22 データ生成部
23 データ選択部
24 アドレス判定部
1
11 CPU (an example of command issuing means)
12
22
Claims (7)
システムメモリと、
前記データ格納装置のある記憶領域へデータをライトする際に、前記システムメモリにおける前記データのアドレスをセットしたライトコマンドを前記制御装置に対して発行し、前記データ格納装置のある記憶領域のデータをイレースする際に、所定のアドレスをセットしたライトコマンドを前記制御装置に対して発行するコマンド発行手段と、
イレース用データを生成するデータ生成部と、
前記データ格納装置へコマンドを供給し、前記コマンドの実行時にそのコマンドで書き込まれるデータの要求を前記データ格納装置から受信すると、そのデータのアドレスを出力し、そのアドレスに対応して供給されたデータを前記データ格納装置へ送信するコントローラと、
前記コントローラから出力されたアドレスが前記イレース時の前記所定のアドレスであるか否かを判定するアドレス判定部と、
前記アドレス判定部により、前記コントローラから出力されたアドレスが前記イレース時の所定のアドレスであると判定された場合、前記データ生成部により生成されたデータを前記コントローラへ供給し、前記アドレス判定部により、前記コントローラから出力されたアドレスが前記イレース時の所定のアドレスではないと判定された場合、前記システムメモリ上のそのアドレスのデータを前記コントローラへ供給するデータ選択部と、
を備えることを特徴とする情報処理装置。 In an information processing apparatus having a control device that controls a data storage device that executes commands by queuing commands and rearranging the order of the commands,
System memory,
When writing data to a storage area in the data storage device, a write command in which the address of the data in the system memory is set is issued to the control device, and data in the storage area in the data storage device is Command issuing means for issuing a write command with a predetermined address set to the control device when erasing;
A data generator for generating data for erasure;
When a command is supplied to the data storage device and a request for data to be written by the command is received from the data storage device when the command is executed, the address of the data is output and the data supplied corresponding to the address is output A controller for transmitting to the data storage device;
An address determination unit that determines whether the address output from the controller is the predetermined address at the time of erasure;
When it is determined by the address determination unit that the address output from the controller is a predetermined address at the time of erasure, the data generated by the data generation unit is supplied to the controller, and the address determination unit A data selection unit for supplying data of the address on the system memory to the controller when it is determined that the address output from the controller is not a predetermined address at the time of erasing;
An information processing apparatus comprising:
イレース用データを生成するデータ生成部と、
前記データ格納装置へコマンドを供給し、前記コマンドの実行時にそのコマンドで書き込まれるデータの要求を前記データ格納装置から受信すると、そのデータのアドレスを出力し、そのアドレスに対応して供給されたデータを前記データ格納装置へ送信するコントローラと、
前記コントローラから出力されたアドレスがイレース時の所定のアドレスであるか否かを判定するアドレス判定部と、
前記アドレス判定部により、前記コントローラから出力されたアドレスが前記イレース時の所定のアドレスであると判定された場合、前記データ生成部により生成されたデータを前記コントローラへ供給し、前記アドレス判定部により、前記コントローラから出力されたアドレスが前記イレース時の所定のアドレスではないと判定された場合、システムメモリ上のそのアドレスのデータを前記コントローラへ供給するデータ選択部と、
を備えることを特徴とする制御装置。 In the control device that controls the data storage device that queues the commands from the control device and executes the commands in the rearranged order,
A data generator for generating data for erasure;
When a command is supplied to the data storage device and a request for data to be written by the command is received from the data storage device when the command is executed, the address of the data is output and the data supplied corresponding to the address is output A controller for transmitting to the data storage device;
An address determination unit that determines whether the address output from the controller is a predetermined address at the time of erasure;
When it is determined by the address determination unit that the address output from the controller is a predetermined address at the time of erasure, the data generated by the data generation unit is supplied to the controller, and the address determination unit A data selection unit that supplies data of the address on the system memory to the controller when it is determined that the address output from the controller is not a predetermined address at the time of erasing;
A control device comprising:
前記アドレス判定部は、前記コントローラから出力されたアドレスが前記アドレス領域に属する場合、前記コントローラから出力されたアドレスが前記イレース時の所定のアドレスであると判定すること、
を特徴とする請求項2記載の制御装置。 The predetermined address at the time of erasing is an address in a predetermined address area,
The address determination unit determines that the address output from the controller is a predetermined address at the time of erasure when the address output from the controller belongs to the address area;
The control device according to claim 2.
前記アドレス判定部は、前記コントローラから出力されたアドレスが前記複数のアドレス領域のいずれかに属する場合、前記コントローラから出力されたアドレスが前記イレース時の所定のアドレスであると判定し、
前記データ生成部は、前記コントローラから出力されたアドレスが属するアドレス領域に応じて異なる値を有するイレース用データを生成すること、
を特徴とする請求項2記載の制御装置。 The predetermined address at the time of erasing is an address in one of a plurality of address areas,
The address determination unit determines that the address output from the controller is a predetermined address at the time of erasure when the address output from the controller belongs to any of the plurality of address areas;
The data generation unit generates erasure data having different values depending on an address area to which an address output from the controller belongs;
The control device according to claim 2.
前記コントローラは、ネイティブコマンドキューイング機能を有するシリアルATA規格のハードディスクドライブのためのハードディクスドライブコントローラであること、
を特徴とする請求項2記載の制御装置。 The data storage device is a serial ATA standard hard disk drive having a native command queuing function,
The controller is a hard disk drive controller for a serial ATA hard disk drive having a native command queuing function;
The control device according to claim 2.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009197373A JP5216719B2 (en) | 2009-08-27 | 2009-08-27 | Information processing apparatus and control apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009197373A JP5216719B2 (en) | 2009-08-27 | 2009-08-27 | Information processing apparatus and control apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011048691A true JP2011048691A (en) | 2011-03-10 |
JP5216719B2 JP5216719B2 (en) | 2013-06-19 |
Family
ID=43834921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009197373A Expired - Fee Related JP5216719B2 (en) | 2009-08-27 | 2009-08-27 | Information processing apparatus and control apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5216719B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013137772A (en) * | 2011-12-27 | 2013-07-11 | Apple Inc | High-performance ahci interface |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005518681A (en) * | 2001-03-20 | 2005-06-23 | ワールドコム・インコーポレイテッド | Shared dedicated access line (DAL) gateway to route discrimination |
JP2006023854A (en) * | 2004-07-06 | 2006-01-26 | Sharp Corp | Information processor, storage device, storage controller and program |
JP2006031268A (en) * | 2004-07-14 | 2006-02-02 | Sharp Corp | Information processor and storage controller |
JP2006171907A (en) * | 2004-12-13 | 2006-06-29 | Kyocera Mita Corp | Information processor and nonvolatile memory controller |
JP2009187646A (en) * | 2008-02-08 | 2009-08-20 | Kyocera Mita Corp | Encrypting/decrypting apparatus for hard disk drive, and hard disk drive apparatus |
-
2009
- 2009-08-27 JP JP2009197373A patent/JP5216719B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005518681A (en) * | 2001-03-20 | 2005-06-23 | ワールドコム・インコーポレイテッド | Shared dedicated access line (DAL) gateway to route discrimination |
JP2006023854A (en) * | 2004-07-06 | 2006-01-26 | Sharp Corp | Information processor, storage device, storage controller and program |
JP2006031268A (en) * | 2004-07-14 | 2006-02-02 | Sharp Corp | Information processor and storage controller |
JP2006171907A (en) * | 2004-12-13 | 2006-06-29 | Kyocera Mita Corp | Information processor and nonvolatile memory controller |
JP2009187646A (en) * | 2008-02-08 | 2009-08-20 | Kyocera Mita Corp | Encrypting/decrypting apparatus for hard disk drive, and hard disk drive apparatus |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013137772A (en) * | 2011-12-27 | 2013-07-11 | Apple Inc | High-performance ahci interface |
US8713204B2 (en) | 2011-12-27 | 2014-04-29 | Apple Inc. | High-performance AHCI interface |
Also Published As
Publication number | Publication date |
---|---|
JP5216719B2 (en) | 2013-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4829365B1 (en) | Data storage device and data writing method | |
US8171239B2 (en) | Storage management method and system using the same | |
US20080320209A1 (en) | High Performance and Endurance Non-volatile Memory Based Storage Systems | |
US20180275921A1 (en) | Storage device | |
JP5275623B2 (en) | Memory controller and memory system | |
US10209897B2 (en) | Storage device and control method of the same | |
JP2000067574A (en) | Semiconductor memory | |
JP5914148B2 (en) | SSD (solid state drive) device | |
JP2012128644A (en) | Memory system | |
US20080025706A1 (en) | Information recording apparatus and control method thereof | |
JP2007011522A (en) | Deletion method of data, storage device and computer system | |
JP2007233896A (en) | Storage device and control method thereof | |
KR20190057779A (en) | Device controller that schedules memory accesses to a host memory, and storage device including the same | |
JP2011018222A (en) | Device and method for interleave control and memory system | |
JP2006178923A5 (en) | ||
JP2007193865A (en) | Information recording device and its control method | |
KR20180126656A (en) | Data storage device and operating method thereof | |
KR20100102283A (en) | Flash memory apparatus and method of controlling the same | |
KR101740679B1 (en) | Storage device wihh bi-directional communication techniques and system including the same | |
JP5216719B2 (en) | Information processing apparatus and control apparatus | |
JP2007011659A (en) | Interface device, disk drive, and interface control method | |
JP2008108281A (en) | Semiconductor disk device | |
JP2007280330A (en) | Nonvolatile storage device and nonvolatile storage system | |
KR20210060253A (en) | Memory controller, memory system and operationg method of the same | |
JP2020091776A (en) | Information processing equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111025 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120914 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120925 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121120 |
|
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: 20130206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130304 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5216719 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160308 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |