1. Field of the Invention
The present invention is a technique relating to control at power-on by a storage control device on which a plurality of HDDs (Hard Disk Drives) are mounted.
2. Description of the Related Art
Disk array devices employing a plurality of storage devices (for example, an HDD) have been known. A disk array device is connected to a host, which is an upper device, and acts like a single storage device as viewed from the host. The disk array device is also connected to a lower device, for example, two storage devices, and performs mirroring (RAID 1) of the storage devices without being noticed by the host.
In an image processing apparatus including such a disk array device, at power-on of the apparatus, power is supplied to devices in the image processing apparatus. Once the power is supplied, two storage devices connected to the disk array device each perform initial operation such as spin-up and once the two storage devices become available for use, the two storage devices notify the disk array device, which is an upper device, of completion of the initial operation. Upon receipt of notification of completion of the initial operation from all the storage devices, the disk array device notifies the host of the completion of the initial operation. After the notification is completed, the disk array device controls the two storage devices to become available for responding to requests from the host (for example, Read request and Write request).
Here, for example, in a case where the disk array device is used in the image processing apparatus, at power-on of the apparatus, power needs to be supplied to devices performing various functions, such as a printing device and a scanner device, as well as the above-described disk array device and storage device. Meanwhile, the maximum power amount to be supplied to the image processing apparatus is limited according to the capacity of a power control unit mounted thereon. Even in case of power-on at which the power consumption is large, naturally, the power needs to be controlled so as not to exceed the maximum power amount.
Japanese Patent Laid-Open No. 2009-271637 discloses a technique of performing control so as to reduce peak power at power-on by delaying power supply to part of devices. Particularly, in a case where HDDs are used, the power consumption tends to become large upon performing of spin-up which is included in the initial operation. Therefore, power is supplied first to one of the two HDDs to allow the one HDD to perform the initial operation and then to the other HDD, thereby enabling the peak power to be reduced.
As described above, once the notification of the completion of the initial operation of all the plurality of HDDs is received, the disk array device can respond to a request from the host. Therefore, if timing of power supplied to each of the HDDs is shifted, the time at which the disk array device can respond to the request from the host is delayed by the amount of the time shifted. For example, in a case of the image processing device, a CPU which is a host reads out firmware for control and set values or the like on each of the devices from the storage device, develops the read data to a RAM or the like, and read out the stored data to controls each of the devices. Therefore, shifting the timing of power supplied to each of the HDDs consequently causes a delay in the time at which the image processing apparatus becomes available for use after the image processing apparatus is powered on.
A storage control device according to the present invention is a storage control device for controlling data stored in a first storage device and a second storage device, the storage control device comprising: a detection unit configured to detect activation states of the first storage device and the second storage device; and a control unit configured to permit a first processing request, with respect to the storage devices, the first processing request capable of being processed with only activation of the first storage device, in a case where the detection unit detects that only the first storage device is activated, and to permit processing requests, including the first processing request, with respect to the storage devices, in a case where the detection unit detects that the first storage device and the second storage device are activated.
Further features of the present invention will become apparent from the following description of exemplary embodiments (with reference to the attached drawings).
Embodiments of the present invention will be described below with reference to the attached drawings. It should be noted that a configuration shown in the following embodiment is a mere example, and the present invention is not limited to the configuration shown in the drawings.
The main controller 100 generally controls the MFP 1. The main controller 100 comprises a CPU 101, a ROM 102, a RAM 103, and an SRAM 104. The CPU 101 controls each of components in the main controller 100, the disk array device 200, the UI 500, the scanner 600, the printer 700, and the like. The ROM 102 stores programs and the like used by the CPU 101 and the RAM 103 functions as a work area or the like where the CPU 101 performs operations. The SRAM 104 stores each piece of data used by the CPU 101 in performing operations. The main controller 100 functions as an upper device (host) of the disk array device 200.
According to an instruction from the main controller 100, the disk array device 200 (storage control device) writes data to the HDD 301 and HDD 302 or reads data from the HDD301 and HDD302. The disk array device 200 has a mirroring control unit 201 and a data storage unit 202. The mirroring control unit 201 performs mirroring of the HDD 301 and HDD 302. Mirroring is a technique in which the same data is written to a plurality of HDDs (in the present embodiment, two HDDs), and upon the occurrence of failure in one of the HDDs, the data written to the other HDD is used to enable restoration of the data. The data storage unit 202 stores each piece of data for use in mirroring and employs, for example, a flush ROM, an SRAM which retains data with a button type battery, or the like. Data stored in the data storage unit 202 includes the types and the number of HDDs. According to the present embodiment, the data storage unit 202 stores permission state information indicating permission state with respect to a request from the upper device (the main controller 100 in
The power control unit 400 controls power to each of blocks of the MFP 1 shown in
The UI 500 provides a user, via a display, with various types of information and transmits input from the user via a button or the like to the main controller 100. The scanner 600 input an image of document obtained by reading the document and the printer 700 performs printing based on the image data input by the scanner 600 or the like.
In step S201, at power-on, the power control unit 400 supplies power first to the HDD 301, one of the storage devices, and then, in step S202, waits until the power consumption of the HDD 301 is reduced. The waiting time is set in designing of the image processing apparatus such that the peak power does not exceed the capacity of the power control unit. For example, in a case where the power does not exceeded the capacity of the power control unit 400 even after the power supply to the HDD 302 is started just one second from the start of power supply to the HDD 301, the power control unit 400 waits for one second, and subsequently, in step S203, the power control unit 400 supplies power to the HDD 302, the other storage device. In this manner, the power control unit 400 performs control by sliding the start-up timing of the HDDs such that the peak power does not exceed the capacity of the power control unit.
It should be noted that explanation has been given here of an example in which the power control unit 400 supplies power to the HDD 301 and HDD 302 in this order, but power may be supplied in the reverse order. The present embodiment is not limited to the case where power is supplied to the HDD 301 and HDD 302 in this specific order, but for example, the power may be supplied to the HDD 302, followed by a waiting time, and then to the HDD 301.
Further, explanation has been given here of the case where the power control unit 400 supplies power to the HDD 301, then waits for a predetermined period of time, and thereafter supplies power to the HDD 302. However, the power control unit 400 may be configured so as to monitor the power in use at start-up of the HDD 301 and after detection of the power consumption monitored being reduced to a predetermined value, supply power to the HDD 302.
First, with reference to
Once the notification of the completion of the initialization is received from the HDD 301, in step S302, the mirroring control unit 201 moves to a state in which among processing requests from the upper device, Read of data is only permitted. For example, the mirroring control unit 201 stores, in the data storage unit 202, permission state information indicating that Read of data is only permitted.
Next, in step S303, the mirroring control unit 201 confirms whether notification of completion of the initialization of the storage device whose completion of initialization is not yet confirmed. Namely, the mirroring control unit 201 confirms whether notification of completion of the initialization of the HDD 302 is received. Since according to the present embodiment, two HDDs are connected, once the notification of the completion of the initialization of the HDD 302 is received, the process proceeds to the next step S304. It should be noted that if a plurality of storage devices are further connected and mirroring is performed, the process may proceed to the next step S304 at the completion of the initialization of all the storage devices.
Once the notification of the completion of the initialization is received from the HDD 302, in step S304, the mirroring control unit 201 moves to a state in which among processing requests from the upper device, all the requests including Write of data are permitted. For example, the mirroring control unit 201 stores, in the data storage unit 202, permission state information indicating that all the requests including Read and Write are permitted.
Next, with reference to
In step S401, upon receiving a request from the main controller 100, the mirroring control unit 201 confirms whether the request is a Read request. If the request is the Read request, the mirroring control unit 201 moves to step S402. It should be noted that if the request from the main controller 100 is a request which can be responded by controlling one of the HDDs, such a request as well as the Read request is determined to be Yes and the process may proceed to step S402. For example, if the request is another processing request, such as a Write request, which requires simultaneous control of a plurality of HDDs, the request is determined to be No and the process proceeds to step S404.
In a case where Yes is determined in step S401, in step S402, the mirroring control unit 201 confirms whether one HDD (here, the HDD 301) is available for use. More specifically, in step S402, the mirroring control unit 201 repeats the confirmation in step S402 until the permission state information indicating that Read is only permitted is written to the data storage unit 202.
In a case where Yes is determined in step S402, that is, the permission state information indicating that Read is only permitted is written to the data storage unit 202, the mirroring control unit 201 proceeds to step S403. In step S403, the mirroring control unit 201 responds to the main controller 100 by controlling the HDD 301 to execute the processing requested by the main controller 100. For example, if the request is the Read request, the mirroring control unit 201 reads data from the HDD 301 to transfer the data to the RAM 103 to complete the processing. As described above, not only the Read request, but also a request which can be responded by controlling one of the HDDs may be executed here.
On the other hand, in a case where No is determined in step S401, that is, the request is determined not to be the Read request, in step S404, the mirroring control unit 201 confirms whether all the storage devices (here, the HDD 301 and HDD 302) are available for use. More specifically, the mirroring control unit 201 repeats the confirmation in step S404 until permission state information indicating that all the requests are permitted is written to the data storage unit 202.
In a case where Yes is determined in step S404, that is, the permission state information indicating that all the requests are permitted is written to the data storage unit 202, the process proceeds to step S405. In step S405, the mirroring control unit 201 responds to the main controller 100 by controlling the HDD 301 and HDD 302 to execute the processing requested by the main controller 100. For example, if the request is the Write request, the received data is written to the HDD 301 and HDD 302 to complete the processing.
It should be noted that in the above embodiment, the explanation has been given of the case where once the power control unit 400 receives the notification of the completion of the initialization of the HDD 301, the power control unit 400 moves to a state in which Read is only permitted and upon receipt of the Read request, the power control unit 400 controls the HDD 301 to respond to the request. However, the present embodiment does not specify the order of controlling the HDD 301 and HDD 302. That is, also in a case where the notification of the completion of the initialization is received first from the HDD 302, the power control unit 400 may move to a state in which Read is only permitted and, upon receipt of the Read request, control the HDD 302 to respond to the request.
Further, in the above embodiment, two types of requests, the Read request and the Write request, have been described as examples, but requests are not limited to these requests. Specifically, in a configuration in which mirroring is performed, a request which can be processed as long as at least one HDD is performed may be permitted with the at least one HDD in activation. Furthermore, in the configuration in which mirroring is performed, processing which cannot be processed before all or a plurality of HDDs are performed (that is, mirroring consistency cannot be achieved) may be processed in such a manner that permission is not given until the corresponding HDD is activated.
Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
According to the present invention, in a configuration in which mirroring of a plurality of HDDs is performed by using the disk array device and the timing of power supplied to the HDDs at power-on is shifted to reduce the peak power, it is possible to advance the timing at which the HDDs can be read.
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
This application claims the benefit of Japanese Patent Application No. 2015-023118, filed Feb. 9, 2015, which is hereby incorporated by reference wherein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2015-023118 | Feb 2015 | JP | national |