Information processing device, information processing program, and image forming device
A system with controlled data storage and writing prioritization ensures stable operation in image forming devices using low-speed non-volatile memory, addressing the issue of slower performance.
Patent Information
- Application Number
- JP2021173305
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-11-30
- Filing Date
- 2021-10-22
- Publication Date
- 2025-10-22
- Estimated Expiration
- 2041-10-22
AI Technical Summary
Using flash memory as the sole non-volatile memory in image forming devices leads to slower operations, making it difficult to stabilize the device's overall performance.
Implement a system with a first storage control unit for non-volatile memory, a second storage control unit for volatile memory, a priority determination unit, a data write control unit, and a user operation determination unit to manage data storage and writing based on priority and user interaction, ensuring efficient use of low-speed non-volatile memory.
Enables stable operation without delaying the device, even when using low-speed non-volatile memory, by optimizing data management and user interaction.
Smart Images

Figure 0007757705000001 
Figure 0007757705000002 
Figure 0007757705000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing apparatus, an information processing program, and an image forming apparatus. [Background technology]
[0002] 2. Description of the Related Art Currently, image forming devices such as multifunction peripherals, printers, and scanners are provided with two types of nonvolatile memory: an EEPROM (Electrically Erasable Programmable Read Only Memory) and a flash memory.
[0003] EEPROM can be rewritten approximately one million times. For this reason, it is used in applications where data is written and read a relatively large number of times, such as for storing data in the engine control unit of an image forming apparatus. In contrast, flash memory can only be rewritten approximately 1,000 to 10,000 times. For this reason, it is used in applications where data is not often rewritten, such as for storing engine control programs.
[0004] Patent Document 1 (JP 2009-119823 A) discloses an image forming apparatus that includes a nonvolatile memory storing a control program for controlling a printing unit. The image forming apparatus also includes a control unit that executes a control process for controlling the printing unit based on the control program and a rewrite process for rewriting at least a portion of the data stored in the nonvolatile memory. Before executing the rewrite process, the control unit executes a termination process that transitions the printing unit to a termination state in which power can be cut off. This allows the image forming apparatus to respond appropriately even if power is cut off while data in the nonvolatile memory is being rewritten. Summary of the Invention [Problem to be solved by the invention]
[0005] Here, we consider using only flash memory as non-volatile memory to store both information that is not frequently rewritten, such as programs, and information that is frequently rewritten, such as data, which would eliminate the need for expensive EEPROM.
[0006] However, if flash memory is used solely as nonvolatile memory, the overall operation of the device will become slower, making it difficult to stabilize the operation.
[0007] The present invention has been made in consideration of the above-mentioned problems, and aims to provide an information processing device, an information processing program, and an image forming device that enable stable operation without delaying the operation of the entire device, even while using low-speed non-volatile memory. [Means for solving the problem]
[0008] In order to solve the above-mentioned problems and achieve the object, the present invention provides a first storage control unit that controls storage of data in a nonvolatile memory, a second storage control unit that controls storage of data in a volatile memory, a priority determination unit that determines the priority of data stored in the volatile memory in order to write the data to the nonvolatile memory, and a data write control unit that executes writing of data to the nonvolatile memory based on the priority. do a write execution determination unit that, when determining that the second storage control unit has read data from the volatile memory, controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory; and a user operation determination unit that determines a user operation status; With When the write execution determination unit determines that writing of data to the non-volatile memory is to be executed based on the determination result of the user operation determination unit, it controls the second memory control unit to read the data from the volatile memory and controls the first memory control unit to write the data read from the volatile memory to the non-volatile memory, and the user operation determination unit determines the user's operation status based on the presence or absence of a user, the user's position, the position of the user's hand, the distance between the user and the device, and the likelihood of the human body detection result, which are detected from the detection output of the human body detection sensor. [Effects of the Invention]
[0009] According to the present invention, it is possible to achieve stable operation without delaying the operation of the entire device, even when using a low-speed nonvolatile memory. [Brief explanation of the drawings]
[0010] [Figure 1]FIG. 1 is a diagram showing the device configuration of a color copying machine according to the first embodiment. [Figure 2] FIG. 2 is a block diagram showing the electrical configuration of the MFP. [Figure 3] FIG. 3 is a block diagram for explaining the electrical configuration of the engine control unit shown in FIG. [Figure 4] FIG. 4 is a functional block diagram of each function realized by the CPU of the engine control unit executing the memory control program. [Figure 5] FIG. 5 is a flowchart showing the flow of the memory control operation. [Figure 6] FIG. 6 is a diagram for explaining a mode of saving a control program from a nonvolatile memory to a volatile memory. [Figure 7] FIG. 7 is a functional block diagram of each function realized by the CPU of the engine control unit according to the second embodiment executing a memory control program. [Figure 8] FIG. 8 is a flowchart showing the flow of the memory control operation. [Figure 9] FIG. 9 is a diagram showing an example of a dialog box indicating that writing is in progress. DETAILED DESCRIPTION OF THE INVENTION
[0011] Hereinafter, a multifunction peripheral (MFP: an example of an image forming apparatus) according to an embodiment will be described with reference to the accompanying drawings.
[0012] (First embodiment) (Device configuration) FIG. 1 is a diagram showing the device configuration of an MFP according to a first embodiment. As an example, the MFP 9 according to this embodiment has multiple image forming functions, such as a copy function, a printer function, and a scanner function. The MFP 9 has four PCDU (Photo Conductor Development Unit) units 210 and a writing unit 209. The MFP 9 according to this embodiment also has an intermediate transfer belt 213 as a transfer body.
[0013] When a user issues a copy instruction via the operation unit 940, the original paper set in the scanner unit 216 is optically read and image data is generated. The writing unit 209 irradiates the photosensitive drum 212 of the PCDU unit 210 with laser light based on the image data. This creates an electrostatic latent image.
[0014] The PCDU unit 210 has the colors Y (yellow), M (magenta), C (cyan), and Bk (black) from the left on the paper surface of Fig. 1. Toner in a toner bottle 215 is temporarily stored in a sub-hopper and supplied to the PCDU unit 210, and then supplied to the photosensitive drum 212 via a toner supply roller and a developing roller 211. This causes the toner to adhere to the electrostatic latent image.
[0015] In the case of full-color printing, the following steps are performed for each color: writing → development → transfer to intermediate transfer belt 213 → cleaning, and the colors are superimposed on intermediate transfer belt 213 to create a full-color image. Waste toner that was not transferred by PCDU unit 210 is collected by a cleaning blade and transported to waste toner unit 208. Waste toner on intermediate transfer belt 213 is collected by intermediate transfer cleaning unit 214 and similarly transported to waste toner unit 208.
[0016] A sheet of paper fed from a paper feed unit 207 comes into contact with an intermediate transfer belt 213 at a secondary transfer unit 205. At this time, a bias voltage is applied to an intermediate transfer drive roller 204. As a result, the image on the intermediate transfer belt 213 is secondarily transferred onto the sheet of paper.
[0017] The paper is then transported to a fixing unit 203, where the toner is thermally fixed to the paper. Thereafter, the paper ejection unit 202 ejects the printed paper.
[0018] Furthermore, the MFP 9 according to the embodiment includes a human body detection sensor 960. The human body detection sensor 960 detects the proximity of a user to the MFP 9, the distance between the MFP 9 and the user, and the like.
[0019] (Electrical configuration) 2 is a block diagram showing the electrical configuration of the MFP 9. As shown in this Fig. 2, the MFP 9 includes a controller unit 910, a short-range communication circuit 920, an engine control unit 930, an operation panel 940, and a network I / F 950.
[0020] The controller unit 910 has a CPU 901, a system memory (MEM-P) 902, a north bridge (NB) 903, a south bridge (SB) 904, an ASIC (Application Specific Integrated Circuit) 906, a local memory (MEM-C) 907, an HDD controller 908, and an HDD 909. The NB 903 and the ASIC 906 are connected by an AGP (Accelerated Graphics Port) bus 921.
[0021] The CPU 901 is a control unit that performs overall control of the MFP 9. The NB 903 is a bridge that connects the CPU 901 with the MEM-P 902, the SB 904, and the AGP bus 921. The NB 903 has a memory controller that controls reading and writing to the MEM-P 902, a PCI (Peripheral Component Interconnect) master, and an AGP target.
[0022] The MEM-P902 has a ROM902a, which is memory for storing programs or data that realize the functions of the memory controller, and a RAM902b, which is used for expanding the programs or data and as a drawing memory during memory printing, etc. The programs stored in the RAM902b may be provided by being recorded in an installable or executable file format on a computer-readable recording medium such as a CD-ROM, CD-R, or DVD.
[0023] The SB 904 is a bridge for connecting the NB 903 with PCI devices and peripheral devices. The ASIC 906 is an integrated circuit (IC) for image processing purposes that has hardware elements for image processing, and serves as a bridge for connecting the AGP bus 921, PCI (Peripheral Component Interconnect) bus 922, HDD controller 908, and MEM-C 907.
[0024] This ASIC 906 has a PCI target and AGP master, an arbiter (ARB) that forms the core of the ASIC 906, and a memory controller that controls the MEM-C 907. The ASIC 906 also has a plurality of DMACs (Direct Memory Access Controllers) that perform image rotation and the like using hardware logic, and a PCI unit that transfers data between the scanner unit 931 and the printer unit 932 via a PCI bus 922. A USB interface or an IEEE1394 (Institute of Electrical and Electronics Engineers) interface may be connected to the ASIC 906.
[0025] The MEM-C907 is a local memory used as an image buffer for copying and a code buffer. The HDD909 is a storage device for storing image data, font data used during printing, and forms. The HDD controller 908 controls the writing and reading of data to the HDD909 under the control of the CPU901. The AGP bus 921 is a bus interface for a graphics accelerator card proposed to speed up graphics processing. The AGP bus 921 directly accesses the MEM-P902 at high throughput, thereby enabling the graphics accelerator card to operate at high speed.
[0026] The short-distance communication circuit 920 includes a short-distance communication circuit 920. The short-distance communication circuit 920 is a communication circuit such as NFC (Near Field Communication), Bluetooth (registered trademark), etc. Furthermore, the engine control unit 930 includes a scanner unit 931 and a printer unit 932.
[0027] The operation panel 940 has a display section 940a such as a touch panel that displays the current setting values or a selection screen, etc., and accepts input from the operator. The operation panel 940 also has an operation section 940b that has a numeric keypad for inputting setting values for image formation conditions, such as density setting conditions, and a start key for issuing an instruction to start copying.
[0028] The controller unit 910 controls the entire MFP 9, for example, performing drawing control, communication control, and processing of inputs from the operation panel 940. The scanner unit 931 or the printer unit 932 has image processing functions such as error diffusion processing and gamma conversion processing.
[0029] The MFP 9 can be switched between the document box function, copy function, printer function, and facsimile function in sequence using an application switching key on the operation panel 940. The MFP 9 enters document box mode when the document box function is selected, and enters copy mode when the copy function is selected. The MFP 9 also enters printer mode when the printer function is selected, and enters facsimile mode when the facsimile mode is selected.
[0030] The network I / F 950 is an interface for performing data communication using a communication network. The short-range communication circuit 920 and the network I / F 950 are electrically connected to the ASIC 906 via a PCI bus 922.
[0031] The PCI bus 922 is also connected to the above-mentioned human body detection sensor 960. The PCI bus 922 is also connected to a timer 961 that counts time and a document detection unit 962 that detects the presence or absence of a document to be scanned by the scanner unit 931 or a document to be copied.
[0032] (Electrical configuration of engine control unit) Fig. 3 is a block diagram for explaining the electrical configuration of engine control unit 930 shown in Fig. 2. In Fig. 3, controller unit 910 performs status management and UI (User Interface) of MFP 9, network communication with external devices, generation of print images, image processing, etc.
[0033] The engine control unit 930 controls actuators such as motors or solenoids of the MFP 9, and controls IOs such as sensors and LDs (Laser Diodes).
[0034] The CPU 307 of the engine control unit 930 is connected to a non-volatile memory 304, a volatile memory 305, and an ASIC (Application Specific Integrated Circuit) 303 via a bus line 306. The ASIC 303 controls image processing such as compression / decompression and synthesis, input / output processing, and communication processing between the controller unit 910 and the engine control unit 930.
[0035] The CPU 307 reads and executes programs stored in the nonvolatile memory 304. For example, an inexpensive, low-speed flash memory such as a NOR flash memory is used as the nonvolatile memory 304. This flash memory can be rewritten approximately 1,000 to 10,000 times. The time required to rewrite data in this flash memory is 500 to 1,000 msec.
[0036] Such nonvolatile memory 304 stores a memory control program (an example of an information processing program), various data used by various programs, characteristic values specific to the device, and the like.
[0037] Typically, such slow flash memory, which has low durability against data rewriting, is used in applications that do not require frequent rewriting, such as for storing programs for the engine control unit 930. An EEPROM, which is a nonvolatile memory that is fast and highly durable against data rewriting, is provided in combination with this flash memory, and this EEPROM is used for storing data for the engine control unit 930.
[0038] However, in the case of the MFP9 of the embodiment, an EEPROM, which is a nonvolatile memory that is high speed and highly durable against data rewriting, is not provided (and is not used in combination), and only a flash memory, which is low speed and has low durability against data rewriting, is used as the nonvolatile memory 304. And, this flash memory alone enables stable operation without delaying the operation of the entire device.
[0039] The volatile memory 305 is used as a work area when executing a program. In addition, some control programs are copied from the non-volatile memory 304 to the volatile memory 305. The CPU 307 reads and executes the programs copied to the volatile memory 305. As the volatile memory 305, for example, an SRAM (Static Random Access Memory) or a DRAM (Dynamic Random Access Memory) can be used.
[0040] (Software configuration of engine control unit) 4 is a functional block diagram of each function realized by the CPU 307 of the engine control unit 930 executing a memory control program stored in the nonvolatile memory 304. As shown in Fig. 4, by executing the memory control program, the CPU 307 realizes each of the functions of an update data priority determination unit 101, a user operation determination unit 102, a machine state determination unit 103, a write execution determination unit 104, and a save program selection unit 105. Furthermore, by executing the memory control program, the CPU 307 realizes each of the functions of a nonvolatile memory read / write unit 106, a volatile memory read / write unit 107, and an update data temporary storage unit 108.
[0041] An update data priority determination unit 101 (an example of a priority determination unit) determines the priority of all update data temporarily stored in the volatile memory 305. A user operation determination unit 102 determines the distance between the MFP 9 and the user, and the user's operation on the operation panel 940. A machine status determination unit 103 (an example of a device status determination unit) determines the machine status of the MFP 9, such as printing, waiting, energy saving, or error occurrence.
[0042] The write execution determination unit 104 determines whether or not to execute writing to the non-volatile memory 304 based on the determination result of the update data priority determination unit 101, the determination result of the user operation determination unit 102, and the determination result of the machine state determination unit 103. The save program selection unit 105 (an example of a save processing unit) selects some or all of the programs to be saved from the non-volatile memory 304 to the volatile memory 305.
[0043] The nonvolatile memory read / write unit 106 (an example of a first storage control unit) controls writing and reading of data to the nonvolatile memory 304. The volatile memory read / write unit 107 (an example of a second storage control unit) controls writing and reading of data to the volatile memory 305. The update data temporary accumulation unit 108, together with the volatile memory read / write unit 107, temporarily stores update data in the volatile memory 305.
[0044] In this example, the update data priority determination unit 101 to the update data temporary storage unit 108 are realized by software using a memory control program, but all or part of these may be realized by hardware such as an IC (Integrated Circuit).
[0045] The memory control program may be provided by being recorded in the form of file information in an installable or executable format on a computer-readable recording medium such as a CD-ROM or a flexible disk (FD). The memory control program may be provided by being recorded on a computer-readable recording medium such as a CD-R, a DVD (Digital Versatile Disk), a Blu-ray (registered trademark) disk, or a semiconductor memory. The memory control program may be provided by being installed via a network such as the Internet. The memory control program may be provided by being pre-installed in a ROM or the like within the device.
[0046] (Memory control operation) Fig. 5 is a flowchart showing the flow of memory control operations performed by the CPU 307 of the engine control unit 930 when it executes a memory control program stored in the nonvolatile memory 304. In the flowchart of Fig. 5, first, in steps S1 and S2, the volatile memory reading / writing unit 107 checks whether or not there is update data for the nonvolatile memory 304. If there is update data for the nonvolatile memory 304 (step S2: Yes), the update data temporary storage unit 108 and the volatile memory reading / writing unit 107 temporarily store the update data in the volatile memory 305 (step S3).
[0047] Next, in step S4, the update data priority determination unit 101 determines the priority of all update data temporarily stored in the volatile memory 305. The update data priority determination unit 101 determines the priority of the update data based on the presence or absence of highly important information in the update data, such as fixed SC (service call) occurrence information, the time elapsed since the previous update data was written, the amount of update, the number of updates, etc. That is, the update data priority determination unit 101 determines the priority of the update data based on the type of update data, the urgency of the update data, the importance of the update data, the time elapsed since the previous update or the frequency and number of updates, etc., which are measured based on the timing information from the timer 961.
[0048] Moreover, the update data with a high degree of urgency is data relating to the occurrence of a failure or error state of the MFP 9. Moreover, the data with a high degree of importance is data relating to setting values changed by the user, information relating to billing, etc.
[0049] The priority of the update data may be assigned to the entire update data, or to each individual update data, or may be assigned to each block recorded in the nonvolatile memory 304.
[0050] Next, in step S5, the user operation determination unit 102 determines the user operation. Specifically, the user operation determination unit 102 determines the user's operation status based on the detection output of the human presence detection sensor 960, such as the distance between the user and the MFP 9 (whether the user is near the MFP 9 or not), the user's position, the position and distance of the user's hand, the estimated operation content, the actual operation content of the operation unit 940, and the likelihood of the human body sensing result.
[0051] The human detection sensor 960 may be an optical sensor, a pyroelectric infrared sensor, an ultrasonic sensor, a sound sensor, a vibration sensor, a distance sensor, or the like.
[0052] Furthermore, when the operation unit 940 is a touch panel, a resistive, pressure-sensitive, or capacitance touch panel can be used as the user operation determination unit 102. By using this touch panel, it can be determined, for example, whether or not the user's hand is in proximity to a button that operates to turn the power on and off for the MFP 9.
[0053] In this way, the user operation determination unit 102 determines the operation status, such as whether the user is about to operate the MFP 9, whether the user is about to start printing or the like, or whether the user is about to shut down the power.
[0054] Next, in step S6, machine status determination unit 103 determines the machine status of MFP 9. Specifically, machine status determination unit 103 determines the machine status, such as printing, standby, in energy saving mode, error occurrence, etc. In addition, machine status determination unit 103 determines whether a network connection is established via network I / F 950, whether a print job is queued, whether operation unit 940 is being operated, what screen is being displayed during operation, whether printing can be started, etc. In addition, machine status determination unit 103 determines whether a document to be scanned or copied is set on the document platen, based on the detection output from document detection unit 962.
[0055] Next, in step S7, the write execution determination unit 104 determines whether or not to write the update data to the nonvolatile memory 304 based on the determination results of the update data priority determination unit 101 and the user operation determination unit 102.
[0056] Suppose that the write execution determination unit 104 obtains a determination result indicating high priority from the update data priority determination unit 101 and also obtains a determination result indicating that the user is about to start a printing operation from the user operation determination unit 102. In this case, if writing of update data to the nonvolatile memory 304 is started, there is a risk that the user will have to wait before executing printing until the writing of the update data is completed.
[0057] In this case, the write execution determination unit 104 waits until the user's printing is completed, and then controls the nonvolatile memory read / write unit 106 to write the update data to the nonvolatile memory 304 (step S8: Yes). This prevents the user from being unable to operate the MFP 9 until the writing to the nonvolatile memory 304 is completed.
[0058] Similarly, in step S9 following step S8: No, the write execution determination unit 104 determines whether or not to write update data to the non-volatile memory 304 based on the determination results of the update data priority determination unit 101 and the machine state determination unit 103.
[0059] For example, suppose that the write execution determination unit 104 obtains a determination result from the update data priority determination unit 101 indicating a high priority, but obtains a determination result from the machine status determination unit 103 indicating that the print job is queued. In this case, the write execution determination unit 104 controls the nonvolatile memory read / write unit 106 to write the update data to the nonvolatile memory 304 after printing is completed, so as not to keep the user waiting for printing (step S10: Yes).
[0060] Furthermore, as described above, when the operation unit 940 is a touch panel, a resistive, pressure-sensitive, or capacitive touch panel can be used as the user operation determination unit 102. By using this touch panel, it is possible to determine, for example, whether or not the user's hand is in proximity to a button that operates to turn the power on and off for the MFP 9. Furthermore, by determining whether or not the user's hand is in proximity to a button that operates to turn the power on and off for the MFP 9, it is possible to determine whether or not the user is trying to turn the power off.
[0061] If it is determined that the user is about to shut down the power supply, the write execution determination unit 104 immediately controls the nonvolatile memory read / write unit 106 to write update data to the nonvolatile memory 304. After this writing is completed, the CPU 901 controls to shut down the power supply.
[0062] Note that write execution determination unit 104 may control nonvolatile memory read / write unit 106 to write update data to nonvolatile memory 304 after waiting for a machine state determination result from machine state determination unit 103 indicating a transition to energy-saving mode. The MFP 9 transitioning to energy-saving mode means that the MFP 9 is not being operated by the user. Therefore, by waiting for the MFP 9 to transition to energy-saving mode before writing update data, it is possible to prevent the inconvenience of waiting for user operation.
[0063] In this example, the update data priority, user operation, and machine status are compared, but these may be compared at once, or the above-mentioned determination may be performed by changing the determination order.
[0064] Next, when writing update data (step S8: Yes, step S10: Yes), in step S11, the save program selection unit 105 selects a control program to be saved from the nonvolatile memory 304 to the volatile memory 305. This is to avoid a situation where the control program cannot be read from the nonvolatile memory 304 while the nonvolatile memory 304 is being rewritten, and the control program cannot perform any operations other than rewriting.
[0065] The control programs to be saved include a program for rewriting nonvolatile memory, a program for responding to user operations, a program for responding to notifications from the controller unit 910, or a program for handling errors.
[0066] In addition, a control program corresponding to a user operation predicted based on the determination result of the user operation determination unit 102 may be selected and saved. Also, a control program corresponding to the machine state of the MFP 9 may be selected and saved based on the determination result of the machine state determination unit 103.
[0067] Saving all the control programs in the non-volatile memory 304 to the volatile memory 305 would be difficult in terms of capacity or time. However, as described above, by selecting and saving only the minimum necessary control programs in accordance with the user's operation or the machine state, the inconvenience of being unable to save them in terms of capacity or time can be prevented.
[0068] For the same reason, the saved program may be compressed and stored in non-volatile memory 304 as shown in FIG. 6(a), and then expanded and deployed in volatile memory 305 when saved to volatile memory 305 as shown in FIG. 6(b).
[0069] Next, in step S12, the volatile memory read / write unit 107 reads the update data temporarily stored in the volatile memory 305, and the nonvolatile memory read / write unit 106 writes the update data to the nonvolatile memory 304, and the process returns to step S1. When writing such update data, all the update data may be written at once, or the update data may be written to the nonvolatile memory 304 in blocks.
[0070] (Effects of the embodiment) As is clear from the above description, the MFP 9 of the embodiment includes a write execution determination unit 104, which writes update data and the like from volatile memory 305 to nonvolatile memory 304 when it is determined to be necessary. However, if data is written carelessly, there is a concern that the limited number of writes to nonvolatile memory 304 may be exceeded. For this reason, the write execution determination unit 104 determines whether or not to write data based on the results of determination by the update data priority determination unit 101 regarding the importance, urgency, etc. of the update data, and then performs the write. This makes it possible to minimize writing and enable nonvolatile memory 304 to be used for a long period of time.
[0071] Furthermore, if nonvolatile memory 304 is, for example, a general flash memory, data cannot be read while it is being rewritten. Therefore, for the time required for rewriting, for example, 500 msec to 1000 msec, the control program cannot be read from nonvolatile memory 304 and executed. As a result, even if MFP 9 is operated, processing is not performed and a waiting time occurs, which causes a problem that even urgent processing cannot be executed.
[0072] For this reason, the MFP 9 of the embodiment uses saved program selection unit 105 to select a program that will be needed while rewriting data in nonvolatile memory 304. Then, the selected program is copied from nonvolatile memory 304 to volatile memory 305. This makes it possible to read and execute the selected program from volatile memory 305 as needed while rewriting data in nonvolatile memory 304, thereby preventing inconveniences such as waiting times for operations of the MFP 9 or the inability to execute urgent processing.
[0073] Furthermore, based on the determination result of the user operation determination unit 102, functions (programs) that the user is likely to use are saved, and functions (programs) that the user is unlikely to use are not saved, thereby reducing the time the user has to wait.
[0074] Furthermore, in the MFP 9 according to the embodiment, the user operation determination unit 102 updates the nonvolatile memory 304 at a timing when the user is not operating, thereby reducing the inconvenience of the user having to wait for the time required to rewrite the nonvolatile memory 304. Furthermore, if the user operation determination unit 102 predicts that the power to the MFP 9 will be shut off, the write execution determination unit 104 forcibly updates the nonvolatile memory 304 and then shuts off the power to the MFP 9. This allows data to be updated in the nonvolatile memory 304 before the power to the MFP 9 is shut off, preventing the inconvenience of the updated data being lost due to a power shutdown.
[0075] Furthermore, in the MFP 9 of the embodiment, update data priority determination unit 101 determines the priority of update data based on whether the update data contains highly important information such as fixed SC (service call) occurrence information, the time elapsed since the last update data was written, the update amount, and the number of updates. Based on the determination result of update data priority determination unit 101, write execution determination unit 104 determines whether or not to write update data, and writes the update data to non-volatile memory 304 at an appropriate timing. This makes it possible to prevent the inconvenience of losing update data due to, for example, a power outage.
[0076] In this way, the MFP9 of the embodiment does not use a high-speed, expensive non-volatile memory such as an EEPROM, but uses a low-speed, inexpensive non-volatile memory 304 such as a flash memory, thereby enabling stable operation without delaying the operation of the entire device.
[0077] (Second embodiment) Next, a second embodiment will be described.
[0078] The second embodiment differs from the first embodiment in that it displays that writing is in progress. In the following description of the second embodiment, the same parts as those in the first embodiment will be omitted, and only the parts that differ from the first embodiment will be described.
[0079] (Software configuration of engine control unit) 7 is a functional block diagram of each function realized by the CPU 307 of the engine control unit 930 according to the second embodiment executing a memory control program stored in the nonvolatile memory 304. As shown in FIG. 4, the CPU 307 realizes a write execution display unit 109 (an example of a notification unit) in addition to each function described in the first embodiment by executing the memory control program.
[0080] When nonvolatile memory reading / writing unit 106 writes data to nonvolatile memory 304, write execution display unit 109 displays on display unit 940a of operation panel 940 that writing is in progress, thereby notifying the user. Furthermore, when nonvolatile memory reading / writing unit 106 writes data to nonvolatile memory 304, write execution display unit 109 displays a cancel button B2 (see FIG. 9) or the like on display unit 940a of operation panel 940, thereby notifying the user that the writing can be canceled.
[0081] (Memory control operation) Fig. 8 is a flowchart showing the flow of a memory control operation performed by CPU 307 of engine control unit 930 when it executes a memory control program stored in nonvolatile memory 304. As shown in Fig. 8, when write execution determination unit 104 controls nonvolatile memory reading / writing unit 106 to write update data to nonvolatile memory 304 (step S8: Yes or step S10: Yes), write execution display unit 109 displays a dialog indicating that writing is being executed on display unit 940a of operation panel 940 (step S21).
[0082] 9 is a diagram showing an example of a dialog box indicating that writing is in progress. As shown in FIG. 9, the writing in progress display unit 109 displays an execute button B1 and a cancel button B2 in a dialog box 800 that notifies the user of a message indicating that writing is in progress, saying, "Data is being written. Do not turn off the main power." If the user wants to use the MFP 9 immediately, the cancel button B2 can be pressed to cancel the execution of writing to the non-volatile memory 304. This allows the user's convenience to be reflected.
[0083] The write execution display unit 109 may be configured to display the dialogue 800 only when writing takes a particularly long time.
[0084] Furthermore, by displaying a dialog 800, the write execution display unit 109 prevents the user from operating anything other than the dialog 800 while writing to the non-volatile memory 304 is in progress, thereby making it possible to comply with the present invention without making any changes to user interface (UI) programs other than the dialog 800, and reducing the amount of control programs to be saved.
[0085] In this embodiment, the write in progress display unit 109 displays the execute button B1 and the cancel button B2 in the dialog 800, but this is not limiting, and the execute button B1 and the cancel button B2 do not have to be displayed in the dialog 800. The reason why the execute button B1 and the cancel button B2 are not displayed in the dialog 800 is because it is anticipated that the determination of the user operation in step S5 may determine that the user is not nearby. Therefore, regardless of whether the execute button B1 and the cancel button B2 are displayed or not in the dialog 800, the write in progress display unit 109 may close the dialog 800 using the passage of time, the completion of processing, or the like as a trigger.
[0086] Returning to FIG. 8, if the cancel button B2 of the dialog 800 is pressed within a certain period of time (step S22: Yes), the write execution display unit 109 returns to step S1.
[0087] On the other hand, if the execute button B1 of the dialog 800 is pressed within a certain period of time, or if a certain period of time has elapsed (step S22: No), the write execution display unit 109 proceeds to the backup program selection process (step S11) and the process of writing the accumulated update data to non-volatile memory (step S12).
[0088] Finally, if a restart or the like is required to return the saved control program to its normal state, the saved program selection unit 105 restarts it (step S23) and returns to step S1.
[0089] As described above, according to this embodiment, the write execution display unit 109 allows the user to cancel the write execution if he / she wants to use it immediately, and by displaying a dialog 800 informing the user that the write execution is in progress, it is possible to limit the user interface (UI) that the user can operate and reduce the amount of control programs that need to be saved.
[0090] Finally, the above-described embodiments are presented by way of example only and are not intended to limit the scope of the present invention. This novel embodiment may be embodied in various other forms, and various omissions, substitutions, and modifications may be made without departing from the spirit of the invention. Such embodiments and modifications are within the scope and spirit of the invention, and are also included in the scope of the invention and its equivalents as defined in the claims. [Explanation of symbols]
[0091] 9 MFP 101 Update data priority determination unit 102 User operation determination unit 103 Machine status determination unit 104 Write execution determination unit 105 Backup program selection section 106 Non-volatile memory read / write unit 107 Volatile memory read / write unit 108 Update data temporary storage unit 109 Write in progress display 304 Non-volatile memory 305 Volatile Memory 307 Engine control unit CPU 930 Engine control unit 931 Scanner 932 Printer section 940 Operation unit 950 Network Interface (Network I / F) 960 Human Body Detection Sensor 961 Timer 962 Document detection unit [Prior art documents] [Patent documents]
[0092] [Patent Document 1] Japanese Patent Application Laid-Open No. 2009-119823
Claims
1. a first storage control unit that controls storage of data in the nonvolatile memory; a second storage control unit that controls storage of data in the volatile memory; a priority determination unit that determines the priority of data stored in the volatile memory in order to write the data to the nonvolatile memory; a write execution determination unit that, when determining that writing of data to the nonvolatile memory is to be executed based on the priority, controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory; a user operation determination unit that determines a user operation status; and when it is determined based on the determination result of the user operation determination unit that writing of data to the nonvolatile memory is to be executed, the write execution determination unit controls the second storage control unit to read the data from the volatile memory and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory; the user operation determination unit determines the user's operation status based on the presence or absence of a user, the user's position, the user's hand position, the distance between the user and the device, and the likelihood of the human body detection result, which are detected from the detection output of the human body detection sensor; Information processing device.
2. A first storage control unit that controls storage of data in a non-volatile memory; a second storage control unit that controls storage of data in the volatile memory; a priority determination unit that determines the priority of data stored in the volatile memory in order to write the data to the nonvolatile memory; a write execution determination unit that, when determining that writing of data to the nonvolatile memory is to be executed based on the priority, controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory; a user operation determination unit that determines a user operation status; and when it is determined based on the determination result of the user operation determination unit that writing of data to the nonvolatile memory is to be executed, the write execution determination unit controls the second storage control unit to read the data from the volatile memory and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory; the user operation determination unit determines the user's operation status based on whether or not the user's hand is in proximity to a button in an operation unit of the device that operates to turn on and off the power of the device; Information processing device.
3. A first storage control unit that controls storage of data in a nonvolatile memory; a second storage control unit that controls storage of data in the volatile memory; a priority determination unit that determines the priority of data stored in the volatile memory in order to write the data to the nonvolatile memory; a write execution determination unit that, when determining that writing of data to the nonvolatile memory is to be executed based on the priority, controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory; a device status determination unit that determines the status of the device based on whether or not the network interface is connected to a network; and when it is determined based on the determination result of the device state determination unit that writing of data to the nonvolatile memory is to be executed, the write execution determination unit controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory. Information processing device.
4. A first storage control unit that controls storage of data in a nonvolatile memory; a second storage control unit that controls storage of data in the volatile memory; a priority determination unit that determines the priority of data stored in the volatile memory in order to write the data to the nonvolatile memory; a write execution determination unit that, when determining that writing of data to the nonvolatile memory is to be executed based on the priority, controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory; a device state determination unit that determines the state of the device based on the presence or absence of a document on the document table detected by the document detection unit; and when it is determined based on the determination result of the device state determination unit that writing of data to the nonvolatile memory is to be executed, the write execution determination unit controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory. Information processing device.
5. A first storage control unit that controls storage of data in a nonvolatile memory; a second storage control unit that controls storage of data in the volatile memory; a priority determination unit that determines the priority of data stored in the volatile memory in order to write the data to the nonvolatile memory; a write execution determination unit that, when determining that writing of data to the nonvolatile memory is to be executed based on the priority, controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory; a save processing unit that copies data that is expected to be used during writing of data to the nonvolatile memory from the nonvolatile memory to the volatile memory and stores the data; An information processing device having the above.
6. The priority determination unit determines the priority of the data based on at least one of the importance of the data, the urgency of the data, the type of the data, and the time elapsed since the previous data was written.
6. The information processing device according to claim 1, wherein:
7. a user operation determination unit that determines a user operation status; When it is determined that writing of data to the nonvolatile memory is to be executed based on the determination result of the user operation determination unit, the write execution determination unit controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory.
6. The information processing device according to claim 3, wherein:
8. The user operation determination unit determines the user's operation status based on the presence or absence of a user, the user's position, the user's hand position, the distance between the user and the device, and the likelihood of the human body detection result, which are detected from the detection output of the human body detection sensor.
8. The information processing device according to claim 2 or claim 7,
9. The user operation determination unit determines the operation status of the user based on whether or not the user's hand is in a position close to a button on an operation unit of the device that operates to turn on and off the power of the device.
8. The information processing device according to claim 7,
10. further comprising a device state determination unit that determines the state of the device; When it is determined that writing of data to the nonvolatile memory is to be executed based on the determination result of the device state determination unit, the write execution determination unit controls the second storage control unit to read the data from the volatile memory, and controls the first storage control unit to write the data read from the volatile memory to the nonvolatile memory.
10. The information processing device according to claim 1, wherein the first and second inputs are input to the first and second inputs.
11. The device state determination unit determines the state of the device based on whether or not a network interface is connected to a network.
11. The information processing device according to claim 4 or claim 10,
12. the device state determination unit determines the state of the device based on the presence or absence of a document on a document table detected by a document detection unit. The information processing device according to claim 10 ,
13. The data storage device further includes a save processing unit that copies data that is expected to be used while data is being written to the nonvolatile memory from the nonvolatile memory to the volatile memory and stores the copied data therein.
5. The information processing device according to claim 1, wherein:
14. The data read from the volatile memory is written to the nonvolatile memory, and a notification unit is provided to notify the user that writing to the nonvolatile memory is in progress.
14. The information processing device according to claim 1, wherein:
15. The notification unit displays a cancel button for declaring cancellation of the execution of writing to the nonvolatile memory, and notifies that the execution of writing to the nonvolatile memory can be canceled. The information processing device according to claim 14,
16. Computer, a first write / read control unit that controls writing and reading of data to and from the nonvolatile memory; a second write / read control unit that controls writing and reading of data to and from the volatile memory; a priority determination unit that determines the priority of data to be written to the nonvolatile memory; a write execution determination unit that controls the second write / read control unit to read the data from the volatile memory based on a determination result of whether or not writing data to the nonvolatile memory is appropriate, the determination result being based on the priority determined by the priority determination unit, and controls the first write / read control unit to write the data read from the volatile memory to the nonvolatile memory; a user operation determination unit that determines a user operation status; and make it work, when it is determined based on the determination result of the user operation determination unit that writing of data to the nonvolatile memory is to be executed, the write execution determination unit controls the second write / read control unit to read the data from the volatile memory, and controls the first write / read control unit to write the data read from the volatile memory to the nonvolatile memory; the user operation determination unit determines the user's operation status based on the presence or absence of a user, the user's position, the user's hand position, the distance between the user and the device, and the likelihood of the human body detection result, which are detected from the detection output of the human body detection sensor; Information processing program.
17. An image forming apparatus comprising the information processing apparatus according to any one of claims 1 to 15.
Citation Information
Patent Citations
Picture forming device and control method for the same
JP1999194946A
Imaging apparatus
JP2002264434A
Control method of image formation device and this device
JP2009119823A
Data management device, information processor, and program
JP2009129026A
Controller, image formation device, control method, and control program
JP2012142821A