JP6277797B2 - Storage medium control apparatus, storage medium control method, and program - Google Patents
Storage medium control apparatus, storage medium control method, and program Download PDFInfo
- Publication number
- JP6277797B2 JP6277797B2 JP2014052753A JP2014052753A JP6277797B2 JP 6277797 B2 JP6277797 B2 JP 6277797B2 JP 2014052753 A JP2014052753 A JP 2014052753A JP 2014052753 A JP2014052753 A JP 2014052753A JP 6277797 B2 JP6277797 B2 JP 6277797B2
- Authority
- JP
- Japan
- Prior art keywords
- mode
- processing
- combination
- data
- storage medium
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Description
本発明は、記憶媒体制御装置、記憶媒体制御方法およびプログラムに関する。 The present invention relates to a storage medium control device, a storage medium control method, and a program.
HDD(Hard disk drive)に高速アクセスするためにRAID(Redundant Arrays of Inexpensive Disks)0と呼ばれる複数のHDDを組み合わせて1台のHDDであるかのように構成し、複数のHDDにデータを分散して同時に記憶する方法がある。以下、「RAID0」を「ストライピング」と表記することがある。すなわち、複数の外部記憶装置(HDDなど)をまとめて一台の装置として管理するRAID技術の方式の一つで、複数の記憶装置に均等にデータを振り分け、それぞれの記憶装置に対して同時に読み込む、又は書き込むことにより、データの読み書きを高速化したものである。また、ストライピング先のディスクで最も遅いものの転送速度に台数を掛けたものが全体の転送速度になり、飛躍的にデータ転送が高速化されることになる。 A combination of multiple HDDs called RAID (Redundant Arrays of Independent Drives) 0 for high-speed access to HDDs (Hard Disk Drives) is configured as if it were a single HDD, and data is distributed to multiple HDDs. There is a way to remember at the same time. Hereinafter, “RAID0” may be referred to as “striping”. In other words, it is one of the RAID technology methods that collectively manage a plurality of external storage devices (such as HDDs) as a single device, and distributes data evenly to the plurality of storage devices and reads them simultaneously into each storage device. Or writing to increase the speed of data reading and writing. Also, the slowest transfer speed of the striped disks multiplied by the number of units becomes the overall transfer speed, and the data transfer speed is dramatically increased.
また、RAID0に対応したHDDホストコントローラにHDDを1台のみ接続して、RAID0(ストライピング)なしの構成で使用する場合に、HDDホストコントローラの転送帯域が無駄になることがある。そのため、HDDホストコントローラの転送帯域を最適化する方法として、RAID0(ストライピング)なしの構成の場合には、制御回路の一部のクロック周波数を、RAID0(ストライピング)ありの場合の構成の半分にする方法が知られている。 Also, when only one HDD is connected to an HDD host controller that supports RAID 0 and used in a configuration without RAID 0 (striping), the transfer bandwidth of the HDD host controller may be wasted. Therefore, as a method for optimizing the transfer band of the HDD host controller, in the case of a configuration without RAID 0 (striping), a part of the clock frequency of the control circuit is made half of the configuration with RAID 0 (striping). The method is known.
特許文献1には、インタフェース部の帯域とディスクアレイ装置部との間の能力の不適合を排し、システムの構築の柔軟性を高めることが可能なデータ記録再生装置が開示されている。特許文献1に記載のデータ記録再生装置は、複数のHDDによって並列冗長構成されたRAIDの複数のディスクアレイ装置であり、1ポート/2ポートの切り替えが可能な入出力インタフェース部と、データをストライピングして複数のHDD部に順次に供給し、複数のHDD部から供給されたデータを結合するストライピング・ECC部とを備え、ストライピング・ECC部から複数のHDD部までの間では、データのビット幅を16ビットに統一し、1ポートモードのときは動作クロック周波数を2ポートモードの半分に切り替えるものである。 Patent Document 1 discloses a data recording / reproducing apparatus capable of eliminating the mismatch of the capability between the bandwidth of the interface section and the disk array apparatus section and enhancing the flexibility of system construction. The data recording / reproducing apparatus described in Patent Document 1 is a plurality of RAID disk array apparatuses configured in parallel and redundantly by a plurality of HDDs, an input / output interface unit capable of switching between 1 port and 2 ports, and data striping And a striping / ECC unit that sequentially supplies data to a plurality of HDD units and combines data supplied from the plurality of HDD units, and the bit width of data between the striping / ECC unit and the plurality of HDD units. In the 1-port mode, the operation clock frequency is switched to half of the 2-port mode.
HDDに記憶するデータは、暗号化/復号化、及び圧縮/伸張の処理を実施される場合がある。暗号化/復号化、及び圧縮/伸張のデータ処理速度が、HDDデバイス、及びHDDホストコントローラの転送速度よりも遅い場合には、データ処理速度がボトルネック(妨げ要因)となるため、HDDホストコントローラのデータ転送帯域が無駄になるという問題がある。 Data stored in the HDD may be subjected to encryption / decryption and compression / decompression processing. When the data processing speed of encryption / decryption and compression / decompression is slower than the transfer speed of the HDD device and the HDD host controller, the data processing speed becomes a bottleneck (impeding factor). There is a problem that the data transfer bandwidth is wasted.
また、特許文献1に記載のデータ記録再生装置の動作周波数を変更する方法では、RAID0(ストライピング)ありの構成、又はRAID0(ストライピング)なしの構成の場合に、暗号化/復号化、及び圧縮/伸張などのデータ処理速度がボトルネックになる場合には、データ転送帯域を有効利用することができないため、無駄な電力を消費するという問題がある。 Further, in the method of changing the operating frequency of the data recording / reproducing apparatus described in Patent Document 1, encryption / decryption and compression / decompression are performed in a configuration with RAID 0 (striping) or a configuration without RAID 0 (striping). When the data processing speed such as decompression becomes a bottleneck, the data transfer bandwidth cannot be used effectively, and there is a problem that wasteful power is consumed.
本発明は、上記に鑑みてなされたものであって、暗号化/復号化、及び圧縮/伸張のデータ処理速度がシステム上のボトルネックになる場合でも、HDDホストコントローラのデータ転送帯域を最適化して消費電力を低減することができる記憶媒体制御装置、記憶媒体制御方法およびプログラムを提供することを目的とする。 The present invention has been made in view of the above, and optimizes the data transfer bandwidth of the HDD host controller even when the data processing speed of encryption / decryption and compression / decompression becomes a bottleneck on the system. It is an object of the present invention to provide a storage medium control apparatus, a storage medium control method, and a program that can reduce power consumption.
上述した課題を解決し、目的を達成するために、本発明に係る記憶媒体制御装置は、データを記憶する第1記憶媒体への前記データの書き込み処理、及び読み出し処理を制御するコントローラ部と、書き込み対象データに暗号化処理、及び暗号化された読み出し対象データに復号化処理を実施する第1モードと、前記書き込み対象データに暗号化処理、及び読み出し対象データに復号化処理を実施しない第2モードを有する暗号/復号部と、書き込み対象データに圧縮処理、及び圧縮された読み出し対象データに伸張処理を実施する第3モードと、前記書き込み対象データに圧縮処理、及び読み出し対象データに伸張処理を実施しない第4モードを有する圧縮/伸張部と、前記第1モードと前記第3モードの組合せ、前記第1モードと前記第4モードの組合せ、前記第2モードと前記第3モードの組合せ、前記第2モードと前記第4モードの組合せ、の各モードの組合せごとに、それぞれの処理の処理速度を比較して、遅い方のモードの前記処理速度に合わせて前記コントローラ部を動作させる動作周波数を低く設定する動作モード制御部と、現在の前記各モードの組合せに対応した前記動作周波数を選択して、前記動作周波数を切り替える周波数切替部と、を備えることを特徴とする。 In order to solve the above-described problems and achieve the object, a storage medium control device according to the present invention includes a controller unit that controls writing processing and reading processing of the data to a first storage medium that stores data; A first mode in which an encryption process is performed on the write target data and a decryption process is performed on the encrypted read target data; and a second mode in which the encryption process is not performed on the write target data and the decryption process is not performed on the read target data. An encryption / decryption unit having a mode, a third mode in which compression processing is performed on the write target data, and decompression processing is performed on the compressed read target data, and compression processing and decompression processing are performed on the write target data. A compression / decompression unit having a fourth mode not implemented, a combination of the first mode and the third mode, the first mode and the first mode; Compare the processing speed for each mode combination of the mode, the combination of the second mode and the third mode, the combination of the second mode and the fourth mode, An operating mode control unit that sets the operating frequency for operating the controller unit in accordance with the processing speed of the mode, and a frequency for switching the operating frequency by selecting the operating frequency corresponding to the current combination of the modes And a switching unit.
本発明によれば、暗号化/復号化、及び圧縮/伸張のデータ処理速度がシステム上のボトルネックになる場合でも、HDDホストコントローラのデータ転送帯域を最適化して消費電力を低減することができる、という有利な効果を奏する。 According to the present invention, even when the data processing speed of encryption / decryption and compression / decompression becomes a bottleneck on the system, the data transfer bandwidth of the HDD host controller can be optimized to reduce power consumption. , Has the advantageous effect of.
以下、添付図面を参照しながら、本発明に係る記憶媒体制御装置、記憶媒体制御方法およびプログラムの一実施形態を詳細に説明する。 DESCRIPTION OF EMBODIMENTS Hereinafter, an embodiment of a storage medium control device, a storage medium control method, and a program according to the present invention will be described in detail with reference to the accompanying drawings.
本実施形態の記憶媒体制御装置は、書き込み対象データに暗号化処理、及び暗号化された読み出し対象データに復号化処理を実施する第1モード、及び前記書き込み対象データに暗号化処理、及び読み出し対象データに復号化処理を実施しない第2モードと、書き込み対象データに圧縮処理、及び圧縮された読み出し対象データに伸張処理を実施する第3モード、及び前記書き込み対象データに圧縮処理、及び読み出し対象データに伸張処理を実施しない第4モードと、ストライピング処理動作モード、及び単体処理動作モードとの各モードの組合せごとに、それぞれの処理の処理速度を比較して、最も遅いモードの処理速度に合わせてDMAC(Direct Memory Access Controller)を動作させる動作周波数をclk1より低く設定する。これにより、記憶媒体制御装置は、DMACとメモリとの間のデータの転送速度を低下させて、暗号化/復号化、及び圧縮/伸張のデータ処理速度がシステム上のボトルネックになる場合でも、HDDホストコントローラ(DMAC)のデータ転送帯域を最適化して消費電力を低減することができる。なお、DMACは、請求項の「コントローラ部」に対応する。 The storage medium control apparatus according to the present embodiment includes a first mode in which encryption processing is performed on write target data and decryption processing is performed on the encrypted read target data, and encryption processing and read target is performed on the write target data. A second mode in which no decryption processing is performed on the data, a third mode in which compression processing is performed on the write target data, and decompression processing is performed on the compressed read target data, and the compression processing and read target data are performed on the write target data. Compare the processing speed of each process for each combination of the fourth mode in which no decompression processing is performed, the striping processing operation mode, and the single processing operation mode, and match the processing speed of the slowest mode. Operating frequency for operating DMAC (Direct Memory Access Controller) clk1 is set lower than. As a result, the storage medium control device reduces the data transfer speed between the DMAC and the memory, and even when the data processing speed of encryption / decryption and compression / decompression becomes a bottleneck on the system, The data transfer band of the HDD host controller (DMAC) can be optimized to reduce power consumption. The DMAC corresponds to a “controller section” in the claims.
以下では、本実施形態の記憶媒体制御装置の一例として、1つのデータを2つ以上のハードディスクドライブに分けて同時に書き読みするメモリシステムに適用した例を挙げて説明するがこれに限られるものではなく、本発明が適用されるメモリシステムの種類は任意である。 Hereinafter, as an example of the storage medium control device of the present embodiment, an example will be described in which the present invention is applied to a memory system in which one data is divided into two or more hard disk drives and simultaneously written and read. The type of the memory system to which the present invention is applied is arbitrary.
図1は、本実施形態に係る記憶媒体制御装置の機能的構成の一例を示す図である。本実施形態の記憶媒体制御装置100は、図1に示すように、HDD_A1と、HDD_B2と、SATA制御部A3と、SATA制御部B4と、RAID0制御部5と、暗号/復号器6と、圧縮/伸張器7と、DMAC(ダイレクトメモリアクセスコントローラ)8と、動作モード制御部9と、バススイッチ10と、メモリ11と、CPU12と、周波数セレクタ13とを備える。なお、以下ではHDD_A1と、HDD_B2とを区別する必要がない場合には、単にHDDと表記する。なお、以下ではDMAC8は、HDDホストコントローラに相当する。
FIG. 1 is a diagram illustrating an example of a functional configuration of the storage medium control apparatus according to the present embodiment. As shown in FIG. 1, the storage
本実施形態では、HDD_A1と、HDD_B2と、バススイッチ10と、メモリ11と、CPU12とは、ハードウェアモジュールで構成され、メモリ11と、CPU12と、SATA制御部A3と、SATA制御部B4と、RAID0制御部5と、暗号/復号器6と、圧縮/伸張器7と、DMAC8と、動作モード制御部9と、周波数セレクタ13については、これらの一部又は全部がソフトウェア(プログラム)、ハードウェア回路であってもよい。また、上記各部のうちの一部が記憶媒体制御装置100に搭載される形態であってもよい。
In the present embodiment, HDD_A1, HDD_B2, bus switch 10,
HDD_A1とHDD_B2は、各種プログラム、データ等を分散して記憶するための、例えば、SATA(Serial Advanced Technology Attachment)規格準拠のハードディスクドライブである。なお、インタフェースとして、SATAに限ることはなく、PCI Express、eMMC(embedded MMC)、UFS(Universal Flash Storage)および、USB(Universal Serial Bus)などを適用することができる。なお、HDD_A1とHDD_B2は、請求項の「第2記憶媒体」に対応する。 The HDD_A1 and HDD_B2 are hard disk drives compliant with, for example, the SATA (Serial Advanced Technology Attachment) standard for storing various programs, data, and the like in a distributed manner. Note that the interface is not limited to SATA, and PCI Express, eMMC (embedded MMC), UFS (Universal Flash Storage), USB (Universal Serial Bus), and the like can be applied. HDD_A1 and HDD_B2 correspond to “second storage medium” in the claims.
RAID0(ストライピング)を構成する場合には、HDD_A1とHDD_B2は同型のデバイスを使用する。また、RAID0を構成しないで、HDD_A1とHDD_B2をそれぞれ単独で使用する場合には、同型でなく任意のデバイスを接続することができる。また、HDD_A1、または、HDD_B2のどちらか1台のみを接続することもできる。なお、本実施形態では、HDD_A1とHDD_B2のデータの最大転送速度は、例えば300MByte/sと仮定する。 When configuring RAID 0 (striping), HDD_A1 and HDD_B2 use devices of the same type. Further, when the HDD_A1 and the HDD_B2 are used independently without configuring the RAID0, any device can be connected instead of the same type. Also, only one of HDD_A1 or HDD_B2 can be connected. In the present embodiment, it is assumed that the maximum data transfer rate of HDD_A1 and HDD_B2 is, for example, 300 MByte / s.
SATA制御部A3は、RAID0制御部5の制御の下、データの読み出し(リード)/書き込み(ライト)を実行する機能を有する。具体的には、例えば、RAID0制御部5が発行するコマンドに従って、HDD_A1に対して制御コマンドを発行し、データの読み出し/書き込みを実行する。SATA制御部A3は、データの読み出し時では、HDD_A1から読み出したデータをRAID0制御部5へ送信する。SATA制御部A3は、データの書き込み時では、RAID0制御部5から受信したデータをHDD_A1へ書き込みする。なお、本実施形態では、SATA制御部A3とHDD_A1との間のデータの最大転送速度は、例えば300MByte/sと仮定する。また、SATA制御部A3とRAID0制御部5との間のデータ転送速度は、周波数セレクタ13からRAID0制御部5へ供給されるクロック信号(クロック周波数)14で制御され、データの最大転送速度は、例えば300MByte/sと仮定する。 The SATA control unit A3 has a function of executing data reading (reading) / writing (writing) under the control of the RAID0 control unit 5. Specifically, for example, according to a command issued by the RAID0 control unit 5, a control command is issued to the HDD_A1, and data reading / writing is executed. The SATA control unit A3 transmits the data read from the HDD_A1 to the RAID0 control unit 5 when reading the data. The SATA control unit A3 writes the data received from the RAID0 control unit 5 to the HDD_A1 when writing data. In the present embodiment, it is assumed that the maximum data transfer rate between the SATA control unit A3 and the HDD_A1 is, for example, 300 MByte / s. The data transfer rate between the SATA control unit A3 and the RAID0 control unit 5 is controlled by a clock signal (clock frequency) 14 supplied from the frequency selector 13 to the RAID0 control unit 5, and the maximum data transfer rate is For example, assume 300 MByte / s.
SATA制御部B4は、RAID0制御部5の制御の下、データの読み出し(リード)/書き込み(ライト)を実行する機能を有する。具体的には、例えば、RAID0制御部5が発行するコマンドに従って、HDD_B2に対して制御コマンドを発行し、データの読み出し/書き込みを実行する。SATA制御部B4は、データの読み出し時では、HDD_B2から読み出したデータをRAID0制御部5へ送信する。SATA制御部B4は、データの書き込み時では、RAID0制御部5から受信したデータをHDD_B2へ書き込みする。なお、本実施形態では、SATA制御部B4とHDD_B2との間のデータの最大転送速度は、例えば、300MByte/sと仮定する。また、SATA制御部B4とRAID0制御部5との間のデータ転送速度は、周波数セレクタ13からRAID0制御部5へ供給されるクロック信号(クロック周波数)14に制御され、データの最大転送速度は、例えば300MByte/sと仮定する。 The SATA control unit B4 has a function of executing data reading (reading) / writing (writing) under the control of the RAID0 control unit 5. Specifically, for example, according to a command issued by the RAID0 control unit 5, a control command is issued to the HDD_B2, and data reading / writing is executed. The SATA control unit B4 transmits the data read from the HDD_B2 to the RAID0 control unit 5 when reading the data. The SATA control unit B4 writes the data received from the RAID0 control unit 5 to the HDD_B2 when writing data. In the present embodiment, it is assumed that the maximum data transfer rate between the SATA control unit B4 and the HDD_B2 is, for example, 300 MByte / s. The data transfer rate between the SATA control unit B4 and the RAID0 control unit 5 is controlled by a clock signal (clock frequency) 14 supplied from the frequency selector 13 to the RAID0 control unit 5, and the maximum data transfer rate is For example, assume 300 MByte / s.
SATA制御部A3及びB4は、RAID0制御部5から送信されるコマンド(書き込みコマンドまたは読み出しコマンド)を受信する。SATA制御部A3及びB4は、受信した書き込みコマンドに付加された情報(SATA制御部A3及びB4による書き込み制御の対象となる情報)の符号化処理を行う。この例では、SATA制御部A3及びB4は、HDD_A1及びHDD_B2に対する書き込みを行うべき情報に対して、ビットの誤り訂正処理(ECC処理)を行うための冗長情報(データビットの偶奇性を利用する場合、パリティーと呼ぶ)を付加する処理を行う。また、SATA制御部A3及びB4は、HDD_A1及びHDD_B2から読み出された情報に対する誤り訂正処理(ECC処理)を行う。 The SATA control units A3 and B4 receive the command (write command or read command) transmitted from the RAID0 control unit 5. The SATA control units A3 and B4 perform encoding processing of information added to the received write command (information subject to write control by the SATA control units A3 and B4). In this example, the SATA control units A3 and B4 use redundant information (data bit even / oddity) for performing bit error correction processing (ECC processing) on information to be written to HDD_A1 and HDD_B2. (Referred to as parity). The SATA control units A3 and B4 perform error correction processing (ECC processing) on information read from the HDD_A1 and HDD_B2.
SATA制御部A3及びB4は、受信した書き込みコマンドに従って、HDD_A1及びHDD_B2に対する情報の書き込みを行う。より具体的には、SATA制御部A3及びB4は、HDD_A1及びHDD_B2のうち、書き込みコマンドに付加された物理アドレスが示す領域に対して、SATA制御部A3及びB4によって符号化された情報を書き込む。また、SATA制御部A3及びB4は、受信した読み出しコマンドに従って、HDD_A1及びHDD_B2からの情報の読み出しを行う。より具体的には、SATA制御部A3及びB4は、HDD_A1及びHDD_B2のうち、読み出しコマンドに付加された物理アドレスが示す領域に格納された情報を読み出す。SATA制御部A3及びB4によって読み出された情報は、誤り訂正処理によって復号され、復号された情報が、読み出しコマンドに対する応答として、RAID0制御部5へ送られる。 SATA controllers A3 and B4 write information to HDD_A1 and HDD_B2 in accordance with the received write command. More specifically, the SATA controllers A3 and B4 write the information encoded by the SATA controllers A3 and B4 in the area indicated by the physical address added to the write command in the HDD_A1 and HDD_B2. The SATA control units A3 and B4 read information from the HDD_A1 and the HDD_B2 in accordance with the received read command. More specifically, the SATA control units A3 and B4 read out information stored in the area indicated by the physical address added to the read command in HDD_A1 and HDD_B2. The information read by the SATA control units A3 and B4 is decoded by error correction processing, and the decoded information is sent to the RAID0 control unit 5 as a response to the read command.
RAID0制御部5は、動作モード制御部9が指定するHDD記憶領域への読み出し(リード)/書き込み(ライト)を実行するためのSATA制御コマンドを生成し、SATA制御部A3とSATA制御部B4へコマンドを送信する。RAID0制御部5は、データを分割して1以上の記憶媒体(HDD)に同時に書き込み、及び読み出しを実行するRAID0(ストライピング)処理動作モードと、データを分割しないで1つの記憶媒体(HDD)に書き込み、及び読み出しを実行する単体処理動作モードとを備えている。以下、RAID0(ストライピング)処理動作モードを、「ストライピング処理動作モード」と表記する。なお、ストライピング処理動作モードと単体処理動作モードの動作モードの切り替えは、例えば、後述する動作モード制御部9の制御により行われるものとする。
The RAID0 control unit 5 generates a SATA control command for executing read (read) / write (write) to the HDD storage area designated by the operation
RAID0制御部5は、ストライピング処理動作モードでHDDに書き込みする場合、暗号/復号器6から受信したデータを、HDD_A1に記憶するデータと、HDD_B2に記憶するデータに分割し、分割したそれぞれのデータを、SATA制御部A3とSATA制御部B4へ送信する。また、RAID0制御部5は、ストライピング処理動作モードでHDDから読み出しする場合、HDD_A1とHDD_B2から読み出したデータを統合し、統合したデータを暗号/復号器6へ送信する。 When writing to the HDD in the striping processing operation mode, the RAID0 control unit 5 divides the data received from the encryption / decryption device 6 into data stored in the HDD_A1 and data stored in the HDD_B2, and each of the divided data is divided. , SATA control unit A3 and SATA control unit B4. Further, when reading from the HDD in the striping processing operation mode, the RAID0 control unit 5 integrates the data read from the HDD_A1 and the HDD_B2, and transmits the integrated data to the encryption / decryption device 6.
RAID0制御部5は、単体処理動作モードでHDDに書き込みする場合、暗号/復号器6から受信したデータを、HDD_A1、または、HDD_B2へ送信する。RAID0制御部5は、単体処理動作モードでHDDから読み出しする場合、HDD_A1、または、HDD_B2から読み出したデータを暗号/復号器6へ送信する。なお、HDD_A1、HDD_B2のどちらにアクセスするかの選択は、例えば、後述する動作モード制御部9の制御により行われるものとする。
When writing to the HDD in the single processing operation mode, the RAID0 control unit 5 transmits the data received from the encryption / decryption device 6 to the HDD_A1 or HDD_B2. When reading from the HDD in the single processing operation mode, the RAID0 control unit 5 transmits the data read from the HDD_A1 or HDD_B2 to the encryption / decryption device 6. Note that selection of which of HDD_A1 and HDD_B2 is to be accessed is made, for example, under the control of the operation
RAID0制御部5は、HDD_A1及びHDD_B2に対するデータの書き込みを要求する書き込み要求や、HDD_A1及びHDD_B2からのデータの読み出しを要求する読み出し要求をCPU12又は動作モード制御部9から受け付けることができる。例えば、書き込み要求は、書き込みの実行を要求する情報と、書き込みを要求するデータと、プログラム上の仮想空間アドレスのうち、その書き込みを要求するデータが割り当てられる場所を示す論理アドレスとを含んで構成される。一方、読み出し要求は、読み出しの実行を要求する情報と、プログラム上の仮想空間アドレスのうち、読み出しを要求するデータが割り当てられる場所を示す論理アドレスとを含んで構成される。上記論理アドレスは、CPU12又は動作モード制御部9によって指定される。
The RAID0 control unit 5 can accept a write request for requesting data write to the HDD_A1 and HDD_B2 and a read request for requesting data read from the HDD_A1 and HDD_B2 from the CPU 12 or the operation
RAID0制御部5は、書き込み要求を受け付けた場合、書き込みが要求されたデータ(書き込み要求に含まれるデータ、以下、「書き込み対象データ」と呼ぶ場合がある)を含む情報を、HDD_A1及びHDD_B2に書き込む制御(以下、「書き込み制御」と呼ぶ場合がある)を行う。本実施形態では、RAID0制御部5は、書き込みの実行を命令する書き込みコマンドを生成し、生成した書き込みコマンドに対して、書き込み対象データを含む情報(書き込み制御の対象となる情報)と、HDD_A1及びHDD_B2のうち、書き込み対象データが書き込まれる領域を示す物理アドレスとを付加してSATA制御部A3及びSATA制御部B4へ伝達する。 When receiving a write request, the RAID0 control unit 5 writes information including data requested to be written (data included in the write request, hereinafter sometimes referred to as “write target data”) to the HDD_A1 and the HDD_B2. Control (hereinafter sometimes referred to as “write control”) is performed. In the present embodiment, the RAID 0 control unit 5 generates a write command instructing execution of writing, and in response to the generated write command, information including data to be written (information to be subjected to write control), HDD_A1, and In the HDD_B2, a physical address indicating an area in which the write target data is written is added and transmitted to the SATA control unit A3 and the SATA control unit B4.
RAID0制御部5は、読み出し要求を受け付けた場合、論物変換テーブルを参照して、読み出し要求に含まれる論理アドレスに対応付けられた物理アドレスを特定し(論物変換を行い)、特定した物理アドレスが示す位置に格納された情報を読み出す制御を行う。本実施形態では、RAID0制御部5は、SATA制御部A3及びB4に対して読み出しの実行を命令する読み出しコマンドを生成し、その生成した読み出しコマンドに対して、上述の論物変換により得た物理アドレスを付加してSATA制御部A3及びSATA制御部B4へ伝達する。そして、RAID0制御部5は、読み出しコマンドに対する応答として、SATA制御部A3及びSATA制御部B4がHDD_A1及びHDD_B2から読み出した情報を受け取ることができる。 When the RAID 0 control unit 5 receives the read request, the RAID 0 control unit 5 refers to the logical-physical conversion table, specifies the physical address associated with the logical address included in the read request (performs logical-physical conversion), and specifies the specified physical Control is performed to read information stored at the position indicated by the address. In the present embodiment, the RAID0 control unit 5 generates a read command that instructs the SATA control units A3 and B4 to execute reading, and the physical command obtained by the above-described logical-physical conversion is generated for the generated read command. The address is added and transmitted to the SATA control unit A3 and the SATA control unit B4. Then, the RAID0 control unit 5 can receive information read from the HDD_A1 and the HDD_B2 by the SATA control unit A3 and the SATA control unit B4 as a response to the read command.
RAID0制御部5のデータの最大転送速度は、例えば、後述する周波数セレクタ13から供給されるクロック信号14で制御される。ここで、図2を参照して、供給クロック信号14ごとに、暗号/復号器6−RAID0制御部5間、RAID0制御部5−SATA制御部A3、B4間のデータ転送速度の一例について説明する。図2は、RAID0制御部における供給クロック信号とデータ転送速度の関係の一例を示す図である。
The maximum data transfer rate of the RAID 0 controller 5 is controlled by, for example, a
図2に示すように、周波数セレクタ13から供給されるクロック信号14の一例として、例えば、clk1、clk1/2、clk1/3、clk1/4の4種類を挙げて説明する。供給されるクロック信号14は、RAID0制御部5を動作させるための動作周波数のことを示す。以下、供給されるクロック信号14を「供給クロック信号」と表記する。なお、clk1の周波数は任意に設定されている。
As shown in FIG. 2, as an example of the
最初に、供給クロック信号14がclk1の場合、暗号/復号器6とRAID0制御部5との間のデータの最大転送速度は、例えば600MByte/sであり、RAID0制御部5とSATA制御部A3との間のデータの最大転送速度は、例えば300MByte/sであり、RAID0制御部5とSATA制御部B4との間のデータの最大転送速度は、例えば300MByte/sであると仮定する。供給クロック信号14がclk1/2の場合では、暗号/復号器6とRAID0制御部5との間のデータの最大転送速度は、例えば300MByte/sとなり、RAID0制御部5とSATA制御部A3との間のデータの最大転送速度は、例えば150MByte/sとなり、RAID0制御部5とSATA制御部B4との間のデータの最大転送速度は、例えば150MByte/sとなる。
First, when the
供給クロック信号14がclk1/3の場合では、暗号/復号器6とRAID0制御部5との間のデータの最大転送速度は、例えば200MByte/sとなり、RAID0制御部5とSATA制御部A3との間のデータの最大転送速度は、例えば100MByte/sとなり、RAID0制御部5とSATA制御部B4との間のデータの最大転送速度は、例えば100MByte/sとなる。供給クロック信号14がclk1/4の場合では、暗号/復号器6とRAID0制御部5との間のデータの最大転送速度は、例えば150MByte/sとなり、RAID0制御部5とSATA制御部A3との間のデータの最大転送速度は、例えば75MByte/sとなり、RAID0制御部5とSATA制御部B4との間のデータの最大転送速度は75MByte/sとなる。このように、複数の周波数の供給クロック信号14は、例えば同相逓倍である。
When the
図1に戻って説明を続ける。暗号/復号器6は、書き込み対象データを暗号化する暗号化モードと、暗号化された読み出し対象データを復号化する復号化モードと、何の処理もせずにデータ転送の中継をするスルーモードとを備えている。暗号/復号器6は、書き込み対象データに暗号化処理、及び暗号化された読み出し対象データに復号化処理を実施する第1モードと、前記書き込み対象データに暗号化処理、及び読み出し対象データに復号化処理を実施しない第2モードを有する。なお、各動作モードの切り替えは、例えば、後述する動作モード制御部9の制御により行われるものとする。
Returning to FIG. 1, the description will be continued. The encryption / decryption device 6 includes an encryption mode for encrypting write target data, a decryption mode for decrypting encrypted read target data, and a through mode for relaying data transfer without any processing. It has. The encryption / decryption unit 6 performs a first mode in which encryption processing is performed on write target data and decryption processing is performed on encrypted read target data, and encryption processing is performed on the write target data and decryption is performed on the read target data. A second mode in which the conversion processing is not performed. In addition, switching of each operation mode shall be performed by control of the operation
暗号/復号器6は、暗号化モード時では、圧縮/伸張器7から受信した書き込み対象データを暗号化し、RAID0制御部5へ送信する。暗号/復号器6は、復号化モード時では、RAID0制御部5から受信した暗号化された読み出し対象データを復号化し、圧縮/伸張器7へ送信する。暗号/復号器6は、スルーモード時では、暗号/復号の処理を実施せずに、圧縮/伸張器7とRAID0制御部5間のデータの送受信を中継する。 In the encryption mode, the encryption / decryption unit 6 encrypts the write target data received from the compression / decompression unit 7 and transmits it to the RAID 0 control unit 5. In the decryption mode, the encryption / decryption device 6 decrypts the encrypted read target data received from the RAID 0 control unit 5 and transmits it to the compression / decompression device 7. In the through mode, the encryption / decryption device 6 relays data transmission / reception between the compression / decompression device 7 and the RAID 0 control unit 5 without performing encryption / decryption processing.
なお、本実施形態では、暗号/復号器6は、常に、上述したclk1で動作し、暗号化/復号化のデータ処理速度は、例えば200MByte/sであると仮定する。また、スルーモード時のデータの最大転送速度は、例えば600MByte/sであると仮定する。なお、暗号/復号器6は、請求項の「暗号/復号部」に対応する。 In the present embodiment, it is assumed that the encryption / decryption device 6 always operates with the above-described clk1 and the data processing speed of encryption / decryption is, for example, 200 MByte / s. Further, it is assumed that the maximum data transfer rate in the through mode is, for example, 600 MByte / s. The encryption / decryption device 6 corresponds to an “encryption / decryption unit” in the claims.
圧縮/伸張器7は、書き込み対象データを圧縮する圧縮モードと、圧縮された読み出し対象データを伸張する伸張モードと、何の処理もせずにデータ転送の中継をするスルーモードとを備えている。圧縮/伸張器7は、書き込み対象データに圧縮処理、及び圧縮された読み出し対象データに伸張処理を実施する第3モードと、前記書き込み対象データに圧縮処理、及び読み出し対象データに伸張処理を実施しない第4モードを有する。なお、各動作モードの切り替えは、例えば、後述する動作モード制御部9の制御により行われるものとする。
The compression / decompression unit 7 includes a compression mode for compressing write target data, a decompression mode for decompressing compressed read target data, and a through mode for relaying data transfer without performing any processing. The compression / decompression unit 7 does not perform the compression process on the write target data and the decompression process on the compressed read target data, and does not perform the compression process on the write target data and the decompression process on the read target data. It has a fourth mode. In addition, switching of each operation mode shall be performed by control of the operation
圧縮/伸張器7は、圧縮モード時では、DMAC8から受信した書き込み対象データを圧縮し、暗号/復号器6へ送信する。圧縮/伸張器7は、伸張モード時では、暗号/復号器6から受信した圧縮された読み出し対象データを伸張し、DMAC8へ送信する。圧縮/伸張器7は、スルーモード時では、圧縮/伸張処理を実施せずに、DMAC8と暗号/復号器6間のデータの送受信を中継する。なお、本実施形態では、圧縮/伸張器7は、常に、上述したclk1で動作し、圧縮/伸張のデータ処理速度は、例えば133MByte/sであると仮定する。また、スルーモード時のデータの最大転送速度は、例えば600MByte/sであると仮定する。なお、圧縮/伸張器7は、請求項の「圧縮/伸張部」に対応する。 In the compression mode, the compressor / decompressor 7 compresses the write target data received from the DMAC 8 and transmits it to the encryption / decryption device 6. In the decompression mode, the compressor / decompressor 7 decompresses the compressed read target data received from the encryption / decryptor 6 and transmits it to the DMAC 8. In the through mode, the compression / decompression unit 7 relays data transmission / reception between the DMAC 8 and the encryption / decryption unit 6 without performing compression / decompression processing. In this embodiment, it is assumed that the compressor / decompressor 7 always operates with the above-described clk1, and the data processing speed of compression / decompression is, for example, 133 MByte / s. Further, it is assumed that the maximum data transfer rate in the through mode is, for example, 600 MByte / s. The compressor / expander 7 corresponds to the “compression / decompression unit” in the claims.
DMAC8は、ダイレクトメモリアクセスコントローラであり、データの転送処理を制御する。具体的には、DMAC8は、第1記憶媒体(メモリ11、例えば、RAMなど)へのデータの書き込み処理、及び読み出し処理を制御する。DMAC8は、バススイッチ10を介して、メモリ11にアクセスする。具体的には、例えばDMAC8は、HDDへデータを書き込みする時には、メモリ11から書き込み対象データを読み出して、圧縮/伸張器7へ送信する。また、DMAC8は、HDDからデータを読み出しする時には、圧縮/伸張器7から受信した読み込み対象データをメモリ11に書き込みする。なお、本実施形態では、メモリ11のアクセス領域の指定は、例えば、後述する動作モード制御部9の制御により行われるものとする。
The DMAC 8 is a direct memory access controller and controls data transfer processing. Specifically, the DMAC 8 controls data write processing and data read processing to the first storage medium (
また、DMAC8は、メモリ11との間のデータ転送速度を制御する。具体的には、DMAC8は、メモリ11がCPU12を介すことなくデータ転送を行うDMA転送において、通信の制御を行う。つまり、DMAC8は、CPU12を介さずにHDD_A1、及びB2とメモリ11との間で直接データ転送を行う。DMAC8とメモリ11との間のデータの最大転送速度は、周波数セレクタ13から供給される供給クロック信号14で制御される。なお、DMAC8は、請求項の「コントローラ部」に対応する。
The DMAC 8 controls the data transfer speed with the
ここで、図3を参照して、供給クロック信号14ごとに、DMAC8とメモリ11との間のデータ転送速度の一例について説明する。図3は、DMACにおける供給クロック信号とデータ転送速度の関係の一例を示す図である。図3に示すように、周波数セレクタ13から供給される複数の周波数の供給クロック信号14の一例として、例えば、clk1、clk1/2、clk1/3、clk1/4の4種類を挙げて説明する。供給クロック信号14は、DMAC8を動作させるための動作周波数のことを示す。なお、clk1の周波数は任意に設定される。
Here, an example of the data transfer rate between the DMAC 8 and the
最初に、供給クロック信号14がclk1の場合、DMAC8とメモリ11との間のデータの最大転送速度は、例えば600MByte/sであると仮定する。供給クロック信号14がclk1/2の場合では、DMAC8とメモリ11との間のデータの転送速度は、例えば300MByte/sとなる。供給クロック信号14がclk1/3の場合では、DMAC8とメモリ11との間のデータの転送速度は、例えば200MByte/sとなる。供給クロック信号14がclk1/4の場合、DMAC8とメモリ11との間のデータの転送速度は150MByte/sとなる。このように、複数の周波数の供給クロック信号14は、同相逓倍である。
First, when the
DMAC8は、メモリ11に対するデータの書き込みを要求する書き込み要求や、メモリ11からのデータの読み出しを要求する読み出し要求をCPU12又は動作モード制御部9から受け付けることができる。例えば、書き込み要求は、書き込みの実行を要求する情報と、書き込みを要求するデータと、プログラム上の仮想空間アドレスのうち、その書き込みを要求するデータが割り当てられる場所を示す論理アドレスとを含んで構成される。一方、読み出し要求は、読み出しの実行を要求する情報と、プログラム上の仮想空間アドレスのうち、読み出しを要求するデータが割り当てられる場所を示す論理アドレスとを含んで構成される。上記論理アドレスは、CPU12又は動作モード制御部9によって指定される。
The DMAC 8 can accept a write request for requesting data write to the
DMAC8は、書き込み要求を受け付けた場合、書き込みが要求されたデータ(書き込み要求に含まれるデータ、以下、「書き込み対象データ」と呼ぶ場合がある)を含む情報を、メモリ11に書き込む制御を行う。本実施形態では、DMAC8は、書き込みの実行を命令する書き込みコマンドを生成し、生成した書き込みコマンドに対して、書き込み対象データを含む情報(書き込み制御の対象となる情報)と、メモリ11のうち、書き込み対象データが書き込まれる領域を示す物理アドレスとを付加してメモリ11へ伝達する。
When the DMAC 8 receives a write request, the DMAC 8 performs control to write information including data requested to be written (data included in the write request, hereinafter sometimes referred to as “data to be written”) into the
DMAC8は、読み出し要求を受け付けた場合、論物変換テーブルを参照して、読み出し要求に含まれる論理アドレスに対応付けられた物理アドレスを特定し(論物変換を行い)、特定した物理アドレスが示す位置に格納された情報を読み出す制御を行う。本実施形態では、DMAC8は、読み出しの実行を命令する読み出しコマンドを生成し、その生成した読み出しコマンドに対して、上述の論物変換により得た物理アドレスを付加してメモリ11へ伝達する。そして、DMAC8は、読み出しコマンドに対する応答として、メモリ11から読み出した情報を受け取ることができる。
When the DMAC 8 receives a read request, the DMAC 8 refers to the logical-physical conversion table to identify a physical address associated with the logical address included in the read request (performs logical-physical conversion), and the identified physical address indicates Control to read the information stored in the position. In this embodiment, the DMAC 8 generates a read command instructing execution of reading, adds the physical address obtained by the above-described logical-physical conversion to the generated read command, and transmits the read command to the
図1に戻って説明を続ける。動作モード制御部9は、制御部21と、処理動作モード切替部22と、ストライピング領域判定部23、検出部24とを有する。本実施形態において、制御部21と、処理動作モード切替部22と、検出部24と、ストライピング領域判定部23とが動作モード制御部9の機能を提供する。
Returning to FIG. 1, the description will be continued. The operation
制御部21は、RAID0制御部5、暗号/復号器6、圧縮/伸張器7、DMAC8、周波数セレクタ13の各動作モードを制御する。また、制御部21は、CPU12により設定された動作モードに従い、圧縮/伸張器7、暗号/復号器6、RAID0制御部5の各動作モードを設定、又は各動作モードの切り替えを制御する。また、制御部21は、CPU12により設定された動作モードに従い、圧縮/伸張器7、暗号/復号器6、RAID0制御部5の各動作モードを設定し、各動作モードの組合せごとに、それぞれの処理のデータ処理速度を比較して、最も遅い処理速度に合わせて周波数セレクタ13が出力する供給クロック信号14を設定する。具体的には、制御部21は、書き込み対象データに暗号化処理、及び暗号化された読み出し対象データに復号化処理を実施する第1モード、及び前記書き込み対象データに暗号化処理、及び読み出し対象データに復号化処理を実施しない第2モードと、書き込み対象データに圧縮処理、及び圧縮された読み出し対象データに伸張処理を実施する第3モード、及び前記書き込み対象データに圧縮処理、及び読み出し対象データに伸張処理を実施しない第4モードと、ストライピング処理動作モード、及び単体処理動作モードとの各モードの組合せごとに、それぞれの処理のデータ処理速度を比較して、最も遅いモードのデータ処理速度に合わせてDMAC(コントローラ部)8を動作させる動作周波数をclk1より低く設定して、DMAC8とメモリ11との間のデータの転送速度を低下させる。すなわち、制御部21は、ストライピング処理動作モードと第1モードと第3モードの組合せ、ストライピング処理動作モードと第1モードと第4モードの組合せ、ストライピング処理動作モードと第2モードと第3モードの組合せ、ストライピング処理動作モードと第2モードと第4モードの組合せ、単体処理動作モードと第1モードと第3モードの組合せ、単体処理動作モードと第1モードと第4モードの組合せ、単体処理動作モードと第2モードと第3モードの組合せ、単体処理動作モードと第2モードと第4モードの組合せ、の各モードの組合せごとに、それぞれの処理の処理速度を比較して、最も遅いモードの処理速度に合わせてコントローラ部を動作させる動作周波数を低く設定する。
The control unit 21 controls each operation mode of the RAID 0 control unit 5, the encryption / decryption unit 6, the compression / decompression unit 7, the DMAC 8, and the frequency selector 13. Further, the control unit 21 sets each operation mode of the compressor / decompressor 7, the encryption / decryptor 6, and the RAID 0 control unit 5 according to the operation mode set by the CPU 12, or controls switching of each operation mode. Further, the control unit 21 sets each operation mode of the compression / decompression unit 7, the encryption / decryption unit 6, and the RAID0 control unit 5 according to the operation mode set by the CPU 12, and for each combination of each operation mode, The data processing speed of the processing is compared, and the
また、制御部21は、書き込み対象データに暗号化処理、及び暗号化された読み出し対象データに復号化処理を実施する第1モード、及び前記書き込み対象データに暗号化処理、及び読み出し対象データに復号化処理を実施しない第2モードと、書き込み対象データに圧縮処理、及び圧縮された読み出し対象データに伸張処理を実施する第3モード、及び前記書き込み対象データに圧縮処理、及び読み出し対象データに伸張処理を実施しない第4モードと、の各モードの組合せごとに、それぞれの処理のデータ処理速度を比較して、遅い方のモードのデータ処理速度に合わせてDMAC(コントローラ部)8を動作させる動作周波数をclk1より低く設定して、DMAC8とメモリ11との間のデータの転送速度を低下させる。すなわち、制御部21は、第1モードと第3モードの組合せ、第1モードと第4モードの組合せ、第2モードと第3モードの組合せ、第2モードと第4モードの組合せ、の各モードの組合せごとに、それぞれの処理の処理速度を比較して、遅い方のモードの処理速度に合わせてコントローラ部を動作させる動作周波数を低く設定する。
In addition, the control unit 21 performs a first mode in which an encryption process is performed on the write target data and a decryption process is performed on the encrypted read target data, and the write process data is encrypted and decrypted in the read target data. The second mode in which the data conversion process is not performed, the third mode in which the compression process is performed on the write target data, and the decompression process is performed on the compressed read target data, and the compression process and the decompression process are performed on the write target data. For each combination of modes in the fourth mode that does not perform the operation, the data processing speed of each processing is compared, and the operating frequency at which the DMAC (controller unit) 8 is operated in accordance with the data processing speed of the slower mode Is set lower than clk1 to reduce the data transfer rate between the DMAC 8 and the
ここで、図3及び図4を参照して、動作モード制御部9の制御部21での周波数セレクタ13が出力する供給クロック信号14の設定方法について説明する。図4は、ストライピング処理の有無の各モードと、暗号化処理、及び復号化処理の実施の有無の各モードと、圧縮処理、及び伸張処理の実施の有無の各モードとの組合せごとに、それぞれの処理のデータ処理速度を関係付けた情報の一例を示す図である。制御部21は、図4の例に示す、CPU12により設定された各モードの組合せごとに、各処理のデータ処理速度を関係付けた情報を予め保持する。なお、各処理のデータ処理速度は予め任意に設定することができる。
Here, with reference to FIG. 3 and FIG. 4, a setting method of the
図4の例に示すように、ストライピング処理「有り」のデータ処理速度は、600MByte/s、暗号化/復号化処理「有り」のデータ処理速度は、200MByte/s、圧縮/伸張処理「有り」のデータ処理速度は、133MByte/sの組合せである。また、ストライピング処理「有り」のデータ処理速度は、600MByte/s、暗号化/復号化処理「有り」のデータ処理速度は、200MByte/s、圧縮/伸張処理「無し」のデータ処理速度は、600MByte/sの組合せである。また、ストライピング処理「有り」のデータ処理速度は、600MByte/s、暗号化/復号化処理「無し」のデータ処理速度は、600MByte/s、圧縮/伸張処理「有り」のデータ処理速度は、133MByte/sの組合せである。また、ストライピング処理「有り」のデータ処理速度は、600MByte/s、暗号化/復号化処理「無し」のデータ処理速度は、600MByte/s、圧縮/伸張処理「無し」のデータ処理速度は、600MByte/sの組合せである。 As shown in the example of FIG. 4, the data processing speed of the striping process “present” is 600 MByte / s, the data processing speed of the encryption / decryption process “present” is 200 MByte / s, and the compression / decompression process is “present”. The data processing speed is a combination of 133 MByte / s. The data processing speed of the striping process “present” is 600 Mbyte / s, the data processing speed of the encryption / decryption process “present” is 200 Mbyte / s, and the data processing speed of the compression / decompression process “absent” is 600 MByte. / S combination. The data processing speed of the striping process “present” is 600 MByte / s, the data processing speed of the encryption / decryption process “absent” is 600 Mbyte / s, and the data processing speed of the compression / decompression process “present” is 133 MByte. / S combination. The data processing speed of the striping process “present” is 600 MByte / s, the data processing speed of the encryption / decryption process “None” is 600 MByte / s, and the data processing speed of the compression / decompression process “None” is 600 MByte. / S combination.
また、図4の例では、ストライピング処理「無し」のデータ処理速度は、300MByte/s、暗号化/復号化処理「有り」のデータ処理速度は、200MByte/s、圧縮/伸張処理「有り」のデータ処理速度は、133MByte/sの組合せである。また、ストライピング処理「無し」のデータ処理速度は、300MByte/s、暗号化/復号化処理「有り」のデータ処理速度は、200MByte/s、圧縮/伸張処理「無し」のデータ処理速度は、600MByte/sの組合せである。また、ストライピング処理「無し」のデータ処理速度は、300MByte/s、暗号化/復号化処理「無し」のデータ処理速度は、600MByte/s、圧縮/伸張処理「有り」のデータ処理速度は、133MByte/sの組合せである。また、ストライピング処理「無し」のデータ処理速度は、300MByte/s、暗号化/復号化処理「無し」のデータ処理速度は、600MByte/s、圧縮/伸張処理「無し」のデータ処理速度は、600MByte/sの組合せである。 In the example of FIG. 4, the data processing speed of the striping process “none” is 300 MByte / s, the data processing speed of the encryption / decryption process “present” is 200 Mbyte / s, and the compression / decompression process is “present”. The data processing speed is a combination of 133 MByte / s. In addition, the data processing speed of the striping process “none” is 300 MByte / s, the data processing speed of the encryption / decryption process “present” is 200 Mbyte / s, and the data processing speed of the compression / decompression process “none” is 600 MByte. / S combination. Further, the data processing speed of the striping process “none” is 300 Mbyte / s, the data processing speed of the encryption / decryption process “none” is 600 Mbyte / s, and the data processing speed of the compression / decompression process “present” is 133 Mbytes. / S combination. Further, the data processing speed of the striping process “none” is 300 MByte / s, the data processing speed of the encryption / decryption process “none” is 600 Mbyte / s, and the data processing speed of the compression / decompression process “none” is 600 MByte. / S combination.
そこで、例えば、制御部21は、図4の例に示した各モードの組合せごとに、各処理のデータ処理速度を関係付けた情報を用いて、RAID0制御部5がストライピング処理動作モードであり、暗号/復号器6がスルーモード(処理無し)であり、圧縮/伸張器7がスルーモード(処理無し)の組合せである場合、最も遅いデータ処理速度は、600MByte/sであると判断し、図3を参照して、周波数セレクタ13が出力する供給クロック信号14としては、clk1を設定する。
Therefore, for example, the controller 21 uses the information relating the data processing speed of each process for each combination of modes shown in the example of FIG. 4, and the RAID 0 controller 5 is in the striping process operation mode. When the encryption / decryption device 6 is in the through mode (no processing) and the compression / decompression device 7 is a combination of the through mode (no processing), it is determined that the slowest data processing speed is 600 MByte / s. 3, clk <b> 1 is set as the
また、制御部21は、図4の例に示した各モードの組合せごとに、各処理のデータ処理速度を関係付けた情報を用いて、RAID0制御部5が単体処理動作モード(ストライピング処理無し)であり、暗号/復号器6がスルーモード(処理無し)であり、圧縮/伸張器7がスルーモード(処理無し)の組合せである場合、最も遅いデータ処理速度は、300MByte/sであると判断し、図3を参照して、周波数セレクタ13が出力する供給クロック信号14としては、clk1/2を設定する。
Further, the control unit 21 uses the information relating the data processing speed of each process for each combination of modes shown in the example of FIG. 4, so that the RAID 0 control unit 5 uses the single processing operation mode (no striping process). When the encryption / decryption device 6 is in the through mode (no processing) and the compression / decompression device 7 is a combination of the through mode (no processing), it is determined that the slowest data processing speed is 300 MByte / s. Then, referring to FIG. 3, clk1 / 2 is set as the
また、制御部21は、図4の例に示した各モードの組合せごとに、各処理のデータ処理速度を関係付けた情報を用いて、RAID0制御部5がストライピング処理動作モードまたは単体処理動作モードであり、暗号/復号器6が暗号化モード(処理有り)または復号化モード(処理有り)であり、圧縮/伸張器7がスルーモード(処理無し)の組合せである場合、最も遅いデータ処理速度は、200MByte/sであると判断し、図3を参照して、周波数セレクタ13が出力する供給クロック信号14としては、clk1/3を設定する。
Further, the control unit 21 uses the information relating the data processing speed of each process for each combination of the modes shown in the example of FIG. 4, so that the RAID 0 control unit 5 performs the striping processing operation mode or the single processing operation mode. When the encryption / decryption device 6 is in the encryption mode (with processing) or the decryption mode (with processing) and the compression / decompression device 7 is a combination of the through mode (no processing), the slowest data processing speed Is determined to be 200 MByte / s, and with reference to FIG. 3, clk1 / 3 is set as the
また、制御部21は、図4の例に示した各モードの組合せごとに、各処理のデータ処理速度を関係付けた情報を用いて、圧縮/伸張器7が圧縮モード(処理有り)または伸張モード(処理有り)である場合、RAID0制御部5と暗号/復号器6の動作モードとの組合せには関係なく、最も遅いデータ処理速度は、133MByte/sであると判断し、図3を参照して、周波数セレクタ13が出力する供給クロック信号14としては、clk1/4を設定する。
The control unit 21 uses the information relating the data processing speed of each process for each mode combination shown in the example of FIG. In the mode (with processing), it is determined that the slowest data processing speed is 133 MByte / s regardless of the combination of the operation mode of the RAID 0 control unit 5 and the encryption / decryption unit 6, and see FIG. Then, clk1 / 4 is set as the
また、制御部21は、図4の例に示した各モードの組合せごとに、各処理のデータ処理速度を関係付けた情報を用いて、暗号/復号器6がスルーモード(処理無し)であり、圧縮/伸張器7がスルーモード(処理無し)の組合せである場合、遅い方のデータ処理速度は、600MByte/sであると判断し、図3を参照して、周波数セレクタ13が出力する供給クロック信号14としては、clk1を設定する。
Further, the controller 21 uses the information relating the data processing speed of each process for each combination of modes shown in the example of FIG. 4, and the encryption / decryption device 6 is in the through mode (no processing). When the compressor / decompressor 7 is a combination of the through mode (no processing), the slower data processing speed is determined to be 600 MByte / s, and the supply output by the frequency selector 13 with reference to FIG. As the
また、制御部21は、図4の例に示した各モードの組合せごとに、各処理のデータ処理速度を関係付けた情報を用いて、暗号/復号器6が暗号化モード(処理有り)または復号化モード(処理有り)、圧縮/伸張器7がスルーモード(処理無し)の組合せである場合、遅い方のデータ処理速度は、200MByte/sであると判断し、図3を参照して、周波数セレクタ13が出力する供給クロック信号14としては、clk1/3を設定する。
The control unit 21 uses the information relating the data processing speed of each process for each combination of modes shown in the example of FIG. When the decoding mode (with processing) and the compressor / decompressor 7 is a combination of the through mode (without processing), the slower data processing speed is determined to be 200 MByte / s, and referring to FIG. As the
また、制御部21は、図4の例に示した各モードの組合せごとに、各処理のデータ処理速度を関係付けた情報を用いて、圧縮/伸張器7が圧縮モード(処理有り)または伸張モード(処理有り)である場合、暗号/復号器6の動作モードの組合せには関係なく、遅い方のデータ処理速度は、133MByte/sであると判断し、図3を参照して、周波数セレクタ13が出力する供給クロック信号14としては、clk1/4を設定する。
The control unit 21 uses the information relating the data processing speed of each process for each mode combination shown in the example of FIG. In the case of the mode (with processing), it is determined that the slower data processing speed is 133 Mbyte / s regardless of the combination of the operation modes of the encryption / decryption device 6, and referring to FIG. As the
すなわち、制御部21は、ストライピング処理動作モードで、圧縮/伸張処理、暗号化/復号化処理の両方とも処理を実施しないモードの組合せの場合は、データ処理速度は600MByte/sとなり、clk1を設定する。また、制御部21は、ストライピング処理動作モードで、圧縮/伸張処理を実施しない場合であって、暗号化/復号化処理を実施するモードの組合せの場合は、データ処理速度は200MByte/sとなり、clk1/3を設定する。また、制御部21は、ストライピング処理動作モードで、圧縮/伸張処理を実施するモードの場合は、暗号化/復号化処理の実施の有無のモードの組合せにかかわらず、データ処理速度は、133MByte/sとなり、clk1/4を設定する。 That is, in the case of a combination of modes in which neither compression / decompression processing nor encryption / decryption processing is performed in the striping processing operation mode, the control unit 21 sets the data processing speed to 600 MByte / s and sets clk1. To do. Further, in the case where the compression / decompression process is not performed in the striping process operation mode and the combination of the modes in which the encryption / decryption process is performed, the control unit 21 has a data processing speed of 200 MByte / s, Set clk1 / 3. In addition, in the striping processing operation mode, the control unit 21 performs the compression / decompression processing regardless of the combination of the modes for whether or not the encryption / decryption processing is performed, and the data processing speed is 133 MByte / s and clk1 / 4 is set.
また、制御部21は、単体処理動作モードで、圧縮/伸張処理、暗号化/復号化処理の両方とも処理を実施しないモードの組合せの場合は、データ処理速度は300MByte/sとなり、clk1/2を設定する。また、制御部21は、単体処理動作モードで、圧縮/伸張処理を実施しない場合であって、暗号化/復号化処理を実施するモードの組合せの場合は、データ処理速度は200MByte/sとなり、clk1/3を設定する。また、制御部21は、単体処理動作モードで、圧縮/伸張処理を実施する場合は、暗号化/復号化処理の実施の有無のモードの組合せにかかわらず、データ処理速度は、133MByte/sとなり、clk1/4を設定する。 In the case of a combination of modes in which the compression / decompression process and the encryption / decryption process are not performed in the single processing operation mode, the control unit 21 has a data processing speed of 300 MByte / s, and clk1 / 2 Set. In addition, in the case where the compression / decompression process is not performed in the single processing operation mode and the combination of the modes in which the encryption / decryption process is performed, the control unit 21 has a data processing speed of 200 MByte / s, Set clk1 / 3. Further, when the compression / decompression process is performed in the single processing mode, the control unit 21 has a data processing speed of 133 Mbyte / s regardless of the combination of the modes with or without the encryption / decryption process. , Clk1 / 4 is set.
このように、制御部21は、ストライピング処理の有無の各モードと、暗号化処理、及び復号化処理の実施の有無の各モードと、圧縮処理、及び伸張処理の実施の有無の各モードとの組合せごとに、それぞれの処理のデータ処理速度を比較して、最も遅い方のモードのデータ処理速度に合わせてDMAC(コントローラ部)8を動作させる動作周波数を任意のclk1より低く設定して、DMAC8とメモリ11との間のデータの転送速度を低下させる。
In this way, the control unit 21 includes each mode of presence / absence of striping processing, each mode of presence / absence of execution of encryption processing and decryption processing, and each mode of presence / absence of execution of compression processing and decompression processing. For each combination, the data processing speeds of the respective processes are compared, and the operating frequency for operating the DMAC (controller unit) 8 is set lower than an arbitrary clk1 in accordance with the data processing speed of the slowest mode. And the data transfer speed between the
また、制御部21は、暗号化処理、及び復号化処理の実施の有無の各モードと、圧縮処理、及び伸張処理の実施の有無の各モードとの組合せごとに、それぞれの処理のデータ処理速度を比較して、遅い方のモードのデータ処理速度に合わせてDMAC(コントローラ部)8を動作させる動作周波数を任意のclk1より低く設定して、DMAC8とメモリ11との間のデータの転送速度を低下させる。
In addition, the control unit 21 determines the data processing speed of each process for each combination of each mode for performing the encryption process and the decryption process and each mode for performing the compression process and the decompression process. The operation frequency for operating the DMAC (controller unit) 8 is set lower than an arbitrary clk1 in accordance with the data processing speed of the slower mode, and the data transfer speed between the DMAC 8 and the
これによって、暗号化/復号化、及び圧縮/伸張のデータ処理速度がシステム上のボトルネックになる場合でも、HDDホストコントローラのデータ転送帯域を最適化して消費電力を低減することができる。なお、clk1の周波数は任意に設定されている。 As a result, even when the data processing speed of encryption / decryption and compression / decompression becomes a bottleneck on the system, the data transfer bandwidth of the HDD host controller can be optimized to reduce power consumption. The frequency of clk1 is arbitrarily set.
また、制御部21は、DMAC8がメモリ11に対してデータを書き込み、及び読み出しする時のメモリ11のアクセス領域(論理アドレス)の指定を行って制御する。
Further, the control unit 21 performs control by designating an access area (logical address) of the
また、制御部21は、RAID0制御部5が単体処理動作モードでHDDに書き込み/読み出しする場合、HDD_A1、又はHDD_B2のどちらにアクセスするかを制御する。 In addition, the control unit 21 controls which of the HDD_A1 and the HDD_B2 is accessed when the RAID0 control unit 5 writes / reads data to / from the HDD in the single processing operation mode.
図1に戻って説明を続ける。処理動作モード切替部22は、データを分割して1以上の第2記憶媒体(HDD)に同時に書き込み、及び読み出しを実行するストライピング処理動作モードと、データを分割しないで1つの第2記憶媒体(HDD)に書き込み、及び読み出しを実行する単体処理動作モードとを切り替える制御を行う。処理動作モード切替部22は、ストライピング処理動作モードと単体処理動作モードとを切り替える場合、制御コマンドを生成し、RAID0制御部5へコマンドを送信する。 Returning to FIG. 1, the description will be continued. The processing operation mode switching unit 22 divides data into a striping processing operation mode in which data is simultaneously written to and read from one or more second storage media (HDD), and one second storage medium (without dividing data). Control to switch between single processing operation modes for executing writing and reading to the HDD). The processing operation mode switching unit 22 generates a control command and transmits the command to the RAID0 control unit 5 when switching between the striping processing operation mode and the single processing operation mode.
また、処理動作モード切替部22は、後述するストライピング領域判定部23が記憶媒体(HDD)の記憶領域にアクセスする場合に、アドレス情報からストライピング処理領域であると判定した場合、ストライピング処理動作モードに切り替える。また、処理動作モード切替部22は、後述するストライピング領域判定部23が記憶媒体(HDD)の記憶領域にアクセスする場合に、アドレス情報から単体処理領域であると判定した場合、単体処理動作モードに切り替える。
The processing operation mode switching unit 22 switches to the striping processing operation mode when the striping
また、処理動作モード切替部22は、後述する検出部24が検出した記憶媒体(HDD)が1つだけの場合には、単体処理動作モードに切り替える。また、処理動作モード切替部22は、後述する検出部24が検出した記憶媒体(HDD)が複数の場合には、ストライピング処理動作モードに切り替える。
Further, the processing operation mode switching unit 22 switches to the single processing operation mode when there is only one storage medium (HDD) detected by the
ストライピング領域判定部23は、記憶媒体(HDD)の記憶領域にアクセスする場合に、データを書き込み、及び読み出しするためにアクセスする記憶媒体(HDD)の記憶領域がストライピング処理領域であるか否かを判定する。まず、動作モード制御部9は、予め記憶媒体(HDD)の記憶領域にアクセスするアドレス情報を用いて、記憶媒体(HDD)の記憶領域をストライピング処理領域と、単体処理領域とに分けて設定しておく。そして、ストライピング領域判定部23は、記憶媒体(HDD)の記憶領域にアクセスする場合に、アドレス情報からデータを書き込み、及び読み出しするための記憶媒体(HDD)の記憶領域がストライピング処理領域であるか否かを判定する。よって、記憶媒体(HDD)の記憶領域を、ストライピング処理領域と単体処理領域とを混在させて使用する場合には、記憶媒体(HDD)にアクセスするアドレス情報からRAID0制御部5の処理動作モードを自動で設定することができる。すなわち、CPU12が介在することなく、記憶媒体(HDD)にアクセスするアドレス情報を用いてRAID0制御部5の処理動作モードを自動で設定することができる。
When accessing the storage area of the storage medium (HDD), the striping
図5は、ストライピング処理領域と単体処理領域の一例について説明する図である。図5の例に示すように、HDD_A1では、アドレス0x0000_0000〜0x8000_0000までをストライピング処理領域(データ格納領域)31に設定し、アドレス0x8000_0000〜0xC000_0000までを単体処理領域(プログラム格納領域)41に設定したことを示している。 FIG. 5 is a diagram illustrating an example of the striping processing area and the single processing area. As shown in the example of FIG. 5, in HDD_A1, addresses 0x0000_0000 to 0x8000_0000 are set as the striping processing area (data storage area) 31 and addresses 0x8000_0000 to 0xC000_0000 are set as the single processing area (program storage area) 41. Is shown.
また、HDD_B2では、アドレス0x0000_0000〜0x8000_0000までをストライピング処理領域(データ格納領域)32に設定し、アドレス0x8000_0000〜0xC000_0000までは空き領域に設定し、アドレス0xC000_0000〜0xZ000_0000を単体処理領域(プログラム格納領域)42に設定したことを示している。 In HDD_B2, addresses 0x0000_0000 to 0x8000_0000 are set as a striping processing area (data storage area) 32, addresses 0x8000_0000 to 0xC000_0000 are set as free areas, and addresses 0xC000_0000 to 0xZ000_0000 are set as a single processing area (program storage area) 42. Indicates that it has been set.
なお、ストライピング処理領域31、32は、データを分割してHDD_A1、及びHDD_B2に分散させて記憶させるためのデータ格納領域である。また、単体処理領域41、42は、1つだけのHDD_A1、又はHDD_B2にデータを記憶させるためのプログラム格納領域である。このように、例えば、頻繁にアクセスするデータ格納領域31、32をストライピング処理領域とし、OS等のプログラム格納領域を単体処理領域41、42として使用することで、記憶容量とアクセス速度のバランスをとることができる。
The
図1に戻って説明を続ける。検出部24は、記憶媒体制御装置100と接続されている1以上の第2記憶媒体(HDD)を検出する。図6は、記憶媒体制御装置と接続されているHDDの検出の一例について説明する図である。図6の例に示すように、HDD_Ach1、HDD_Bch2の接続コネクタのGND端子と、動作モード制御部9の検出部24への入力信号(detect_a、detect_b)を接続し、この入力信号経路をプルアップしておくことで、HDDの接続を検知する。すなわち、HDDが接続されている場合は、detect_a、detect_bはLowレベルであり、HDDが接続されていない場合は、detect_a、detect_bはHighレベルである。また、detect_aとdetect_bのどちらか一方がHighレベルで、どちらか他方がLowレベルの場合は、2台以上のHDDが必要なRAID0(ストライピング)を構成していることはない。よって、動作モード制御部9の処理動作モード切替部22は、検出部24で検出したHDD(第2記憶媒体)が1つだけの場合には、RAID0制御部5の動作モードを単体処理モードに設定することで、CPU12によるソフトウェア制御を簡易化することができる。
Returning to FIG. 1, the description will be continued. The
図1に戻って説明を続ける。バススイッチ10は、バスラインの高速切り替え、又は切り離し等を行うスイッチである。バスラインは、上記の各構成要素を図1に示されているように電気的に接続する。バスラインとしては、例えば、アドレスバスやデータバス等である。バススイッチ10は、MEM−IFを介してDMAC8、メモリ11と接続される。また、バススイッチ10は、CPU−IFを介して動作モード制御部9、CPU12と接続される。すなわち、バススイッチ10は、DMAC8と動作モード制御部9とメモリ11とCPU12との間でのバスラインの切り替えを行う。
Returning to FIG. 1, the description will be continued. The bus switch 10 is a switch that performs high-speed switching or disconnection of a bus line. The bus line electrically connects the above-described components as shown in FIG. Examples of the bus line include an address bus and a data bus. The bus switch 10 is connected to the DMAC 8 and the
メモリ11は、記憶媒体であり、記憶媒体制御装置100用プログラムを記憶する。また、メモリ11は、各種のデータを記憶する。また、メモリ11は、CPU12のワークエリアとしても使用される。つまり、メモリ11は、ROM(Read Only Memory)やRAM(Random Access Memory)の機能を有する。なお、メモリ11は、請求項の「第1記憶媒体」に対応する。
The
CPU(Central Processing Unit)12は、記憶媒体制御装置100全体の動作を制御する。CPU12は、例えば、データをメモリ11から読み出させて、HDD_A1とHDD_B2とに均等にデータを振り分け、それぞれのHDDに対して同時に対象データの書き込み、又は読み出しを実行させる。
A CPU (Central Processing Unit) 12 controls the operation of the entire storage
周波数セレクタ13は、圧縮/伸張器7と暗号/復号器6に対して供給クロック信号(clk1)14を供給する。また、周波数セレクタ13は、動作モード制御部9が、暗号化処理、及び復号化処理の実施の有無の各モードと、圧縮処理、及び伸張処理の実施の有無の各モードと、ストライピング処理動作モード、及び単体処理動作モードの各モードとの組合せごとに設定した動作周波数(供給クロック信号14)を用いて、現在の各モードの組合せに対応した動作周波数を選択して、複数の周波数の供給クロック信号14の中から、DMAC8とRAID0制御部5に供給する供給クロック信号14を切り替える。上述したように、供給クロック信号14は、例えば、clk1、clk1/2、clk1/3、clk1/4の4種類から選択可能である。clk1/2の周波数はclk1の半分であり、clk1/3の周波数はclk1の3分の1であり、clk1/4の周波数はclk1の4分の1である。すなわち、上記の例では、複数の周波数の供給クロック信号14は、同相逓倍関係である。なお、clk1の周波数は任意に設定されている。なお、周波数セレクタ13は、請求項の「周波数切替部」に対応する。
The frequency selector 13 supplies a supply clock signal (clk1) 14 to the compressor / decompressor 7 and the encryption / decryptor 6. In addition, the frequency selector 13 is configured so that the operation
なお、上記の記憶媒体制御装置100用プログラムは、インストール可能な形式、または実行可能な形式のファイルで、記憶媒体等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。
Note that the above-described program for the storage
次に、図7を参照して、本実施形態に係る記憶媒体制御装置100における処理動作を説明する。図7は、本実施形態に係る記憶媒体制御装置の処理動作の一例を示すフローチャート図である。
Next, processing operations in the storage
記憶媒体制御装置100の動作モード制御部9は、CPU12からのデータの書き込み/読み出し要求を受けて、書き込み/読み出し対象データと、書き込まれる領域を示す物理アドレス/論理アドレスとを含む書き込み/読み出し要求をDMAC8及びRAID0制御部5に送信する(ステップS1)。次に、動作モード制御部9は、RAID0制御部5がストライピング処理動作モードであるか否かを判断する(ステップS2)。ストライピング処理動作モードである場合(ステップS2:Yes)、動作モード制御部9は、圧縮/伸張器7が圧縮処理、及び伸張処理モードであるか否かを判断する(ステップS3)。圧縮処理、及び伸張処理モードでない場合(ステップS3:No)、動作モード制御部9は、暗号/復号器6が暗号化処理、及び復号化処理モードであるか否かを判断する(ステップS4)。暗号化処理、及び復号化処理モードでない場合(ステップS4:No)、動作モード制御部9は、最も遅いデータ処理速度は600MByte/s(ステップS5)であると判断し、動作周波数(供給クロック信号14)をclk1に設定する(ステップS6)。次に、ステップS19に移行する。
Upon receiving a data write / read request from the CPU 12, the operation
ステップS2に戻り、ストライピング処理動作モードでない場合(ステップS2:No)、動作モード制御部9は、圧縮/伸張器7が圧縮処理、及び伸張処理モードであるか否かを判断する(ステップS7)。圧縮処理、及び伸張処理モードでない場合(ステップS7:No)、動作モード制御部9は、暗号/復号器6が暗号化処理、及び復号化処理モードであるか否かを判断する(ステップS8)。暗号化処理、及び復号化処理モードでない場合(ステップS8:No)、動作モード制御部9は、最も遅いデータ処理速度は300MByte/s(ステップS9)であると判断し、動作周波数をclk1/2に設定する(ステップS10)。次に、ステップS19に移行する。
Returning to step S2, if the operation mode is not the striping processing operation mode (step S2: No), the operation
ステップS3に戻り、圧縮処理、及び伸張処理モードである場合(ステップS3:Yes)、動作モード制御部9は、最も遅いデータ処理速度は133MByte/s(ステップS11)であると判断し、動作周波数をclk1/4に設定する(ステップS12)。次に、ステップS19に移行する。
Returning to step S3, when the compression processing and decompression processing modes are set (step S3: Yes), the operation
ステップS4に戻り、暗号化処理、及び復号化処理モードである場合(ステップS4:Yes)、動作モード制御部9は、最も遅いデータ処理速度は200MByte/s(ステップS13)であると判断し、動作周波数をclk1/3に設定する(ステップS14)。次に、ステップS19に移行する。
Returning to step S4, when it is in the encryption process and the decryption process mode (step S4: Yes), the operation
ステップS7に戻り、圧縮処理、及び伸張処理モードである場合(ステップS7:Yes)、動作モード制御部9は、最も遅いデータ処理速度は133MByte/s(ステップS15)であると判断し、動作周波数をclk1/4に設定する(ステップS16)。次に、ステップS19に移行する。
Returning to step S7, if the compression processing and decompression processing modes are set (step S7: Yes), the operation
ステップS8に戻り、暗号化処理、及び復号化処理モードである場合(ステップS8:Yes)、動作モード制御部9は、最も遅いデータ処理速度は200MByte/s(ステップS17)であると判断し、動作周波数をclk1/3に設定する(ステップS18)。次に、ステップS19に移行する。
Returning to step S8, when it is the encryption processing and decryption processing mode (step S8: Yes), the operation
ステップS19に移行し、次に、動作モード制御部9の処理動作モード切替部22は、各モードの組合せに対応した、ステップS6、ステップS10、ステップS12、ステップS14、ステップS16、ステップS18の各ステップで設定した動作周波数(供給クロック信号14)を選択して、周波数セレクタ13は動作周波数を切り替える(ステップS19)。次に、記憶媒体制御装置100の圧縮/伸張器7、暗号/復号器6、RAID0制御部5は、CPU12により設定された各モードの処理モードの設定に基づき、各処理を実行する(ステップS20)。次に、例えば、DMAC8は、切り替えられた動作周波数(供給クロック信号14)でメモリ11に対してデータの書き込み/読み出しを実行する。また、例えば、SATA制御部A3、B4は、HDD_A1、B2に対して、データの書き込み/読み出しを実行する(ステップS21)。そして、処理を終了する。
Next, the processing operation mode switching unit 22 of the operation
このように、上述した処理動作を、本実施形態の記憶媒体制御装置100に実行させる。これにより、本実施形態の記憶媒体制御装置100は、暗号化処理、及び復号化処理の実施の有無の各モードと、圧縮処理、及び伸張処理の実施の有無の各モードと、ストライピング処理動作モード、及び単体処理動作モードの各モードとの組合せごとに、それぞれの処理の処理速度を比較して、最も遅いモードの処理速度に合わせてDMAC(コントローラ部)8を動作させる動作周波数をclk1より低く設定して、DMAC8とメモリ11との間のデータの転送速度を低下させる。
In this manner, the storage
また、本実施形態の記憶媒体制御装置100は、暗号化処理、及び復号化処理の実施の有無の各モードと、圧縮処理、及び伸張処理の実施の有無の各モードとの組合せごとに、それぞれの処理の処理速度を比較して、遅い方のモードの処理速度に合わせてDMAC(コントローラ部)8を動作させる動作周波数をclk1より低く設定して、DMAC8とメモリ11との間のデータの転送速度を低下させる。
In addition, the storage
よって、本実施形態の記憶媒体制御装置100によれば、暗号化/復号化、及び圧縮/伸張のデータ処理速度がシステム上のボトルネックになる場合でも、HDDホストコントローラ(DMAC8)のデータ転送帯域を最適化して消費電力を低減することができる。
Therefore, according to the storage
以上、本発明の実施形態を説明したが、上述の各実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。本発明は、上述の各実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上述の各実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。また、以上の各実施の形態および変形例は任意に組み合わせることも可能である。 As mentioned above, although embodiment of this invention was described, each above-mentioned embodiment was shown as an example and is not intending limiting the range of invention. The present invention is not limited to the above-described embodiments as they are, and can be embodied by modifying the components without departing from the scope of the invention in the implementation stage. Further, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the above-described embodiments. For example, some components may be deleted from all the components shown in the embodiment. Further, the above embodiments and modifications can be arbitrarily combined.
なお、上述の各実施形態の記憶媒体制御装置100で実行される制御プログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
The control program executed by the storage
さらに、上述の各実施の形態の記憶媒体制御装置100で実行される制御プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上述の各実施の形態の記憶媒体制御装置100で実行される制御プログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
Further, the control program executed by the storage
1 HDD_A
2 HDD_B
3 SATA制御部A
4 SATA制御部B
5 RAID0制御部
6 暗号/復号器
7 圧縮/伸張器
8 DMAC
9 動作モード制御部
10 バススイッチ
11 メモリ
12 CPU
13 周波数セレクタ
14 供給クロック信号
21 制御部
22 処理動作モード切替部
23 ストライピング領域判定部
24 検出部
31、32 ストライピング処理領域(データ格納領域)
41、42 単体処理領域(プログラム格納領域)
1 HDD_A
2 HDD_B
3 SATA control part A
4 SATA control part B
5 RAID0 control unit 6 Encryption / decryption unit 7 Compression / decompression unit 8 DMAC
9 Operation mode control unit 10
13
41, 42 Single processing area (program storage area)
Claims (9)
書き込み対象データに暗号化処理、及び暗号化された読み出し対象データに復号化処理を実施する第1モードと、前記書き込み対象データに暗号化処理、及び読み出し対象データに復号化処理を実施しない第2モードを有する暗号/復号部と、
書き込み対象データに圧縮処理、及び圧縮された読み出し対象データに伸張処理を実施する第3モードと、前記書き込み対象データに圧縮処理、及び読み出し対象データに伸張処理を実施しない第4モードを有する圧縮/伸張部と、
前記第1モードと前記第3モードの組合せ、前記第1モードと前記第4モードの組合せ、前記第2モードと前記第3モードの組合せ、前記第2モードと前記第4モードの組合せ、の各モードの組合せごとに、それぞれの処理の処理速度を比較して、遅い方のモードの前記処理速度に合わせて前記コントローラ部を動作させる動作周波数を低く設定する動作モード制御部と、
現在の前記各モードの組合せに対応した前記動作周波数を選択して、前記動作周波数を切り替える周波数切替部と、を備える、
ことを特徴とする記憶媒体制御装置。 A controller for controlling the writing process and the reading process of the data to the first storage medium for storing data;
A first mode in which an encryption process is performed on the write target data and a decryption process is performed on the encrypted read target data; and a second mode in which the encryption process is not performed on the write target data and the decryption process is not performed on the read target data. An encryption / decryption unit having a mode;
A compression / compression mode having a third mode in which compression processing is performed on write target data and decompression processing is performed on compressed read target data, and a fourth mode in which compression processing is performed on the write target data and decompression processing is not performed on read target data. An extension,
Each of the combination of the first mode and the third mode, the combination of the first mode and the fourth mode, the combination of the second mode and the third mode, the combination of the second mode and the fourth mode For each combination of modes, an operation mode control unit that compares the processing speed of each process and sets the operating frequency for operating the controller unit in accordance with the processing speed of the slower mode;
A frequency switching unit that selects the operating frequency corresponding to the current combination of the modes and switches the operating frequency; and
A storage medium control device.
前記データを分割して1以上の前記第2記憶媒体に同時に書き込み、及び読み出しを実行するストライピング処理動作モードと、前記データを分割しないで1つの前記第2記憶媒体に書き込み、及び読み出しを実行する単体処理動作モードとを切り替える処理動作モード切替部と、を備え、
前記動作モード制御部は、前記ストライピング処理動作モードと前記第1モードと前記第3モードの組合せ、前記ストライピング処理動作モードと前記第1モードと前記第4モードの組合せ、前記ストライピング処理動作モードと前記第2モードと前記第3モードの組合せ、前記ストライピング処理動作モードと前記第2モードと前記第4モードの組合せ、前記単体処理動作モードと前記第1モードと前記第3モードの組合せ、前記単体処理動作モードと前記第1モードと前記第4モードの組合せ、前記単体処理動作モードと前記第2モードと前記第3モードの組合せ、前記単体処理動作モードと前記第2モードと前記第4モードの組合せ、の各モードの組合せごとに、それぞれの処理の処理速度を比較して、最も遅いモードの前記処理速度に合わせて前記コントローラ部を動作させる動作周波数を低く設定することを特徴とする請求項1に記載の記憶媒体制御装置。 One or more second storage media for storing data;
A striping processing operation mode in which the data is divided and simultaneously written and read on one or more second storage media, and the data is written and read on one second storage medium without being divided. A processing operation mode switching unit that switches between the single processing operation mode,
The operation mode control unit includes a combination of the striping process operation mode, the first mode, and the third mode, a combination of the striping process operation mode, the first mode, and the fourth mode, the striping process operation mode, and the A combination of the second mode and the third mode, a combination of the striping processing operation mode, the second mode and the fourth mode, a combination of the single processing operation mode, the first mode and the third mode, and the single processing. Combination of operation mode, first mode, and fourth mode, combination of single processing operation mode, second mode, and third mode, combination of single processing operation mode, second mode, and fourth mode For each combination of modes, compare the processing speed of each processing, the processing speed of the slowest mode Together storage medium control apparatus according to claim 1, characterized in that setting a low operating frequency for operating the controller.
前記処理動作モード切替部は、検出部で検出した前記第2記憶媒体が1つだけの場合には、前記単体処理動作モードに切り替えることを特徴とする請求項2に記載の記憶媒体制御装置。 A detection unit that detects one or more second storage media connected to the storage medium control device;
The storage medium control device according to claim 2, wherein the processing operation mode switching unit switches to the single processing operation mode when only one second storage medium is detected by the detection unit.
前記動作モード制御部は、予め前記第2記憶媒体の記憶領域にアクセスするアドレス情報を用いて、前記第2記憶媒体の記憶領域をストライピング処理領域と、単体処理領域とに分けて設定し、
前記ストライピング領域判定部は、前記第2記憶媒体の記憶領域にアクセスする場合に、前記アドレス情報から前記ストライピング処理領域であるか否かを判定し、
前記ストライピング処理領域である場合には、前記処理動作モード切替部は、前記ストライピング処理動作モードに切り替える、
ことを特徴とする請求項2に記載の記憶媒体制御装置。 A striping area determination unit that determines whether a storage area of the second storage medium to be accessed for writing and reading the data is a striping process area;
The operation mode control unit sets the storage area of the second storage medium into a striping process area and a single process area by using address information for accessing the storage area of the second storage medium in advance.
The striping area determination unit determines whether or not the striping process area is based on the address information when accessing the storage area of the second storage medium,
In the case of the striping processing area, the processing operation mode switching unit switches to the striping processing operation mode.
The storage medium control device according to claim 2.
書き込み対象データに暗号化処理、及び暗号化された読み出し対象データに復号化処理を実施する第1モードと、前記書き込み対象データに暗号化処理、及び読み出し対象データに復号化処理を実施しない第2モードを有する暗号/復号ステップと、
書き込み対象データに圧縮処理、及び圧縮された読み出し対象データに伸張処理を実施する第3モードと、前記書き込み対象データに圧縮処理、及び読み出し対象データに伸張処理を実施しない第4モードを有する圧縮/伸張ステップと、
前記第1モードと前記第3モードの組合せ、前記第1モードと前記第4モードの組合せ、前記第2モードと前記第3モードの組合せ、前記第2モードと前記第4モードの組合せ、の各モードの組合せごとに、それぞれの処理の処理速度を比較して、遅い方のモードの前記処理速度に合わせて前記コントローラステップを動作させる動作周波数を低く設定する動作モード制御ステップと、
現在の前記各モードの組合せに対応した前記動作周波数を選択して、前記動作周波数を切り替える周波数切替ステップと、を含む、
ことを特徴とする記憶媒体制御方法。 A controller step for controlling the writing process and the reading process of the data to the first storage medium for storing data;
A first mode in which an encryption process is performed on the write target data and a decryption process is performed on the encrypted read target data; and a second mode in which the encryption process is not performed on the write target data and the decryption process is not performed on the read target data. An encryption / decryption step having a mode;
A compression / compression mode having a third mode in which compression processing is performed on write target data and decompression processing is performed on compressed read target data, and a fourth mode in which compression processing is performed on the write target data and decompression processing is not performed on read target data. Stretching step;
Each of the combination of the first mode and the third mode, the combination of the first mode and the fourth mode, the combination of the second mode and the third mode, the combination of the second mode and the fourth mode An operation mode control step that compares the processing speed of each process for each mode combination, and sets the operating frequency for operating the controller step to match the processing speed of the slower mode;
A frequency switching step of selecting the operating frequency corresponding to the current combination of the modes and switching the operating frequency,
And a storage medium control method.
データを記憶する第1記憶媒体への前記データの書き込み処理、及び読み出し処理を制御するコントローラステップと、
書き込み対象データに暗号化処理、及び暗号化された読み出し対象データに復号化処理を実施する第1モードと、前記書き込み対象データに暗号化処理、及び読み出し対象データに復号化処理を実施しない第2モードを有する暗号/復号ステップと、
書き込み対象データに圧縮処理、及び圧縮された読み出し対象データに伸張処理を実施する第3モードと、前記書き込み対象データに圧縮処理、及び読み出し対象データに伸張処理を実施しない第4モードを有する圧縮/伸張ステップと、
前記第1モードと前記第3モードの組合せ、前記第1モードと前記第4モードの組合せ、前記第2モードと前記第3モードの組合せ、前記第2モードと前記第4モードの組合せ、の各モードの組合せごとに、それぞれの処理の処理速度を比較して、遅い方のモードの前記処理速度に合わせて前記コントローラステップを動作させる動作周波数を低く設定する動作モード制御ステップと、
現在の前記各モードの組合せに対応した前記動作周波数を選択して、前記動作周波数を切り替える周波数切替ステップと、
を実行させるためのプログラム。 In the storage medium control device,
A controller step for controlling the writing process and the reading process of the data to the first storage medium for storing data;
A first mode in which an encryption process is performed on the write target data and a decryption process is performed on the encrypted read target data; and a second mode in which the encryption process is not performed on the write target data and the decryption process is not performed on the read target data. An encryption / decryption step having a mode;
A compression / compression mode having a third mode in which compression processing is performed on write target data and decompression processing is performed on compressed read target data, and a fourth mode in which compression processing is performed on the write target data and decompression processing is not performed on read target data. Stretching step;
Each of the combination of the first mode and the third mode, the combination of the first mode and the fourth mode, the combination of the second mode and the third mode, the combination of the second mode and the fourth mode An operation mode control step that compares the processing speed of each process for each mode combination, and sets the operating frequency for operating the controller step to match the processing speed of the slower mode;
A frequency switching step of selecting the operating frequency corresponding to the current combination of the modes and switching the operating frequency;
A program for running
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014052753A JP6277797B2 (en) | 2014-03-14 | 2014-03-14 | Storage medium control apparatus, storage medium control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014052753A JP6277797B2 (en) | 2014-03-14 | 2014-03-14 | Storage medium control apparatus, storage medium control method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015176378A JP2015176378A (en) | 2015-10-05 |
JP6277797B2 true JP6277797B2 (en) | 2018-02-14 |
Family
ID=54255509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014052753A Expired - Fee Related JP6277797B2 (en) | 2014-03-14 | 2014-03-14 | Storage medium control apparatus, storage medium control method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6277797B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11593286B2 (en) | 2020-11-30 | 2023-02-28 | Kioxia Corporation | Memory system and information processing system |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012252579A (en) | 2011-06-03 | 2012-12-20 | Fuji Xerox Co Ltd | Image forming system, image forming apparatus, and program |
US11768628B2 (en) | 2019-10-23 | 2023-09-26 | Sony Interactive Entertainment Inc. | Information processing apparatus |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1185723A (en) * | 1997-09-12 | 1999-03-30 | Hitachi Ltd | Microcomputer and moving body communication equipment |
JP2000231455A (en) * | 1999-02-08 | 2000-08-22 | Sony Corp | Data recording and reproducing device |
US20040019741A1 (en) * | 2002-07-23 | 2004-01-29 | Pratt Thomas L. | Selectable internal RAID system |
JP2006236079A (en) * | 2005-02-25 | 2006-09-07 | Toshiba Corp | Computer and disk management method |
JP2007148789A (en) * | 2005-11-28 | 2007-06-14 | Sharp Corp | Data processor, image forming device, image forming method and print system |
JP4757038B2 (en) * | 2006-01-25 | 2011-08-24 | 株式会社日立製作所 | Storage system and storage control device |
TWI436269B (en) * | 2011-05-25 | 2014-05-01 | Giga Byte Tech Co Ltd | A computer system with multiple operation modes and a method of switching modes thereof |
-
2014
- 2014-03-14 JP JP2014052753A patent/JP6277797B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11593286B2 (en) | 2020-11-30 | 2023-02-28 | Kioxia Corporation | Memory system and information processing system |
Also Published As
Publication number | Publication date |
---|---|
JP2015176378A (en) | 2015-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11870709B2 (en) | Techniques for dynamically allocating resources in a storage cluster system | |
US9824228B2 (en) | Preserving redundancy in data deduplication systems by encryption | |
US9342466B2 (en) | Multiple volume encryption of storage devices using self encrypting drive (SED) | |
US7937542B2 (en) | Storage controller and storage control method for accessing storage devices in sub-block units | |
US20170317991A1 (en) | Offloading storage encryption operations | |
JP2014513484A (en) | Cryptographic transport solid state disk controller | |
WO2014170984A1 (en) | Storage system and method for controlling storage | |
US20200042500A1 (en) | Collaborative compression in a distributed storage system | |
US8074039B2 (en) | Redundant array of independent disks-related operations | |
US9459811B2 (en) | Disk array system and data processing method | |
US9323943B2 (en) | Decrypt and encrypt data of storage device | |
JPWO2015029230A1 (en) | Storage device and data control method | |
JP6277797B2 (en) | Storage medium control apparatus, storage medium control method, and program | |
JP2008524969A5 (en) | ||
US9465556B2 (en) | RAID 0 disk array system and data processing method for dividing reading command to reading command segments and transmitting reading command segments to disks or directly transmitting reading command to one of disks without dividing | |
CN112115076A (en) | User data encryption and decryption device and method | |
US20150121088A1 (en) | Method of managing aligned and unaligned data bands in a self encrypting solid state drive | |
JP5285756B2 (en) | Computer system having multiple operation modes and switching method thereof | |
WO2009027398A1 (en) | Mass storage system with improved usage of buffer capacity | |
JP5532516B2 (en) | Storage apparatus and encryption key changing method | |
US20160026582A1 (en) | Encrypt data of storage device | |
KR101972535B1 (en) | Semiconductor Storage Device | |
JP2008048268A (en) | Data processing apparatus and data transfer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170220 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171215 |
|
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: 20171219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180101 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6277797 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |