Writing monitoring device
The write monitoring device addresses abnormal write and erase frequency issues in NAND flash storage by setting limits and alerting operators, enhancing lifespan management and application identification.
Patent Information
- Application Number
- JP2020011537
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2020-01-28
- Publication Date
- 2025-01-15
- Estimated Expiration
- 2040-01-28
Smart Images

Figure 0007613834000001 
Figure 0007613834000002 
Figure 0007613834000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a write monitoring device, and more particularly to a device for monitoring writing to a storage device used in a control device. [Background technology]
[0002] Control devices that control industrial machines such as machine tools are equipped with storage devices for storing control programs for controlling the industrial machines and for recording the operating conditions of the industrial machines. The control devices are often installed in environments where multiple industrial machines are operating, and operate under poor conditions where they are susceptible to the effects of vibrations and the like. For this reason, the control devices sometimes use semiconductor storage devices that use NAND flash, which has no moving parts and is less susceptible to the effects of vibrations (e.g., Patent Documents 1 to 4, etc.).
[0003] In semiconductor storage devices that use NAND flash, such as solid state drives (SSDs), data is written and read in units called pages, which are collections of memory cells. Data written to a page is erased in units called blocks, which are collections of multiple pages. Since semiconductor storage devices cannot overwrite data, when changing data within a page, the data in the entire block that contains that page is temporarily evacuated, the block is erased, and then the entire block is written back together with the changed data.
[0004] The memory cells of semiconductor storage using NAND flash deteriorate due to repeated writing and eventually reach the end of their life. For this reason, in semiconductor storage, the number of writes and erases for each block is counted, and write control (wear leveling) is performed so that the number of writes and erases for each block is as uniform as possible. Therefore, by acquiring the number of writes and erases for the block with the most number of writes and erases from the semiconductor storage, the life of the semiconductor storage can be managed. For example, the life of the semiconductor storage can be managed by outputting an alarm when the number of writes and erases for the block with the most number of writes and erases exceeds 90% of the maximum number of writes and erases allowed. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] JP 2011-070346 A [Patent Document 2] Special Publication No. 2010-511225 [Patent Document 3] JP 2009-037630 A [Patent Document 4] Japanese Patent Application Publication No. 11-250675 Summary of the Invention [Problem to be solved by the invention]
[0006] As described above, it is possible to manage the lifespan of a semiconductor storage device, but there is a demand for knowing an abnormal increase in the number of writes and erases before the lifespan is reached. For example, an abnormal operation of an application or a program error may cause an abnormal increase in the number of writes to the semiconductor storage device. In such a case, there is a demand for an operator to grasp at what point the lifespan of the semiconductor storage device is rapidly shortening, and to take measures as necessary. In other words, there is a demand for technology that makes it possible to manage changes in the lifespan of semiconductor storage at each point in time. [Means for solving the problem]
[0007] The write monitoring device of the present invention solves the above problem by setting an upper limit on the number of writes and erases (erase frequency) per predetermined monitoring interval in semiconductor storage, and sounding an alarm when writes and erases exceed that upper limit.
[0008] One aspect of the present invention is a write monitoring device for a semiconductor storage device, the write monitoring device comprising: an erase count acquisition unit that acquires an erase count for each block of the semiconductor storage device; and based on the erase count for each block of the semiconductor storage device acquired by the erase count acquisition unit, For multiple monitoring intervals an erase frequency calculation unit that calculates an erase frequency of a block of the semiconductor storage; For each of the plurality of monitoring intervals, The erase frequency of the blocks of the semiconductor storage calculated by the erase frequency calculation unit and, Predefined upper limit and comparing the upper limit value and a warning unit that outputs a warning when the number of writes exceeds the limit.
[0009] Another aspect of the present invention is a write monitoring method for a write monitoring device of a semiconductor storage device, the write monitoring method comprising: a first step of acquiring a number of erase operations for each block of the semiconductor storage device; and based on the number of erase operations for each block of the semiconductor storage device acquired in the first step, For multiple monitoring intervals A second step of calculating an erase frequency of a block of the solid-state storage; For each of the plurality of monitoring intervals, The frequency of erasing blocks of the semiconductor storage calculated in the second step and, Predefined upper limit and comparing the upper limit value and a third step of outputting a warning when the write limit is exceeded. Effect of the Invention
[0010] According to one aspect of the present invention, an operator can know that writing is being performed abnormally frequently on semiconductor storage, and can take measures such as identifying the application causing the problem. [Brief description of the drawings]
[0011] [Figure 1] FIG. 2 is a schematic hardware configuration diagram of a write monitoring device according to an embodiment. [Diagram 2] 1 is a schematic functional block diagram of a writing monitoring device according to a first embodiment. [Diagram 3] 13 is a flowchart showing a schematic operation flow of the writing monitoring device. [Figure 4] FIG. 11 is a schematic functional block diagram of a writing monitoring device according to a second embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] Hereinafter, an embodiment of the present invention will be described with reference to the drawings. 1 is a schematic hardware configuration diagram showing the main parts of a writing monitoring device according to an embodiment of the present invention. The writing monitoring device 1 of the present invention can be implemented as, for example, a control device that controls an industrial machine. The writing monitoring device 1 of the present invention can also be implemented on a personal computer attached to a control device that controls an industrial machine, a personal computer connected to the control device via a wired / wireless network, a fog computer, a cloud server, or the like. In this embodiment, an example is shown in which the writing monitoring device 1 is implemented on a control device that controls an industrial machine.
[0013] The CPU 11 provided in the writing monitoring device 1 according to this embodiment is a processor that controls the entire writing monitoring device 1. The CPU 11 reads a system program stored in the ROM 12 via the bus 22, and controls the entire writing monitoring device 1 in accordance with the system program. The RAM 13 temporarily stores temporary calculation data, display data, various data input from outside, and the like.
[0014] The non-volatile memory 14 is composed of a semiconductor storage using a NAND flash such as an SSD. The data written to the non-volatile memory 14 is retained even when the power supply of the writing monitor device 1 is turned off. The non-volatile memory 14 stores data and control programs read from an external device 72 via an interface 15, data and control programs input via an input device 71, and data acquired from other computers such as other control devices 3, fog computers 6, and cloud servers 7. The data and control programs stored in the non-volatile memory 14 may be expanded in the RAM 13 when executed / used. In addition, various system programs such as known analysis programs are written in advance in the ROM 12.
[0015] The interface 15 is an interface for connecting the CPU 11 of the writing monitoring device 1 to an external device 72 such as a USB device. For example, a control program and each parameter used for controlling an industrial machine can be read from the external device 72. In addition, the control program and each parameter edited in the writing monitoring device 1 can be stored in an external storage means via the external device 72, or can be transmitted to the control device 3 or another computer via the network 5.
[0016] The display device 70 displays various data loaded into the memory, data obtained as a result of executing control programs, system programs, etc., outputted via the interface 18. An input device 71 consisting of a keyboard, pointing device, etc., passes instructions, data, etc. based on operations by an operator to the CPU 11 via the interface 19.
[0017] The interface 20 is an interface for connecting the CPU 11 of the writing monitoring device 1 to a wired or wireless network 5. The network 5 is connected to a control device 3 that controls industrial machines, a fog computer 6, a cloud server 7, etc., and exchanges data with the writing monitoring device 1.
[0018] The interface 21 is an interface for connecting the CPU 11 of the writing monitoring device 1 and the industrial machine to be controlled. The CPU 11 analyzes the control program stored in the RAM 13 to the non-volatile memory 14, and controls the industrial machine based on the analysis result via the interface 21. The interface 21 also passes data detected by the industrial machine to the CPU 11.
[0019] 2 is a schematic block diagram showing functions of the writing monitoring device 1 according to the first embodiment of the present invention. Each function of the writing monitoring device 1 according to this embodiment is realized by the CPU 11 of the writing monitoring device 1 shown in FIG. 1 executing a system program and controlling the operation of each part of the writing monitoring device 1.
[0020] The write monitoring device 1 of this embodiment includes an erase count acquisition unit 100, an erase frequency calculation unit 110, and a warning unit 120. In addition, an erase count storage unit 200, which is an area for storing the erase count for each block of the non-volatile memory 14, is provided in advance on the RAM 13.
[0021] The erase count acquisition unit 100 is realized by the CPU 11 included in the write monitoring device 1 shown in FIG. 1 executing a system program read from the ROM 12, and the CPU 11 mainly performing arithmetic processing using the RAM 13 and the nonvolatile memory 14. The erase count acquisition unit 100 acquires the erase count for each block of the memory of the nonvolatile memory 14 from the nonvolatile memory 14 at every predetermined operation cycle (e.g., every second). The erase count acquisition unit 100 acquires the erase count for each block from the controller of the nonvolatile memory 14 using a known technology such as SMART (Self-Monitoring and Reporting Technology). The erase count acquisition unit 100 stores the acquired history of the erase count for each block in the erase count storage unit 200.
[0022] The erase frequency calculation unit 110 is realized by the CPU 11 included in the writing monitoring device 1 shown in FIG. 1 executing a system program read from the ROM 12, and the CPU 11 mainly performing arithmetic processing using the RAM 13 and the nonvolatile memory 14. The erase frequency calculation unit 110 calculates the number of erases (erase frequency) of blocks of the nonvolatile memory 14 per monitoring interval based on the number of erases for each block of the nonvolatile memory 14 acquired by the erase count acquisition unit 100. The erase frequency calculation unit 110 calculates the number of erases (erase frequency) of blocks of the nonvolatile memory 14 at a predetermined monitoring interval (for example, every second, every minute, every hour, every day, etc.) based on data stored in the erase count storage unit 200. The erase frequency calculation unit 110 may calculate the number of erases (erase frequency) of blocks of the nonvolatile memory 14 at multiple times. The erase frequency calculation unit 110 may calculate the number of erases (erase frequency) of blocks of the nonvolatile memory 14 at multiple different cycles of monitoring intervals. The nonvolatile memory 14 may calculate the erase frequency for each block of the nonvolatile memory. In addition, when wear leveling is functioning sufficiently in the nonvolatile memory 14, the erase frequency calculation unit 110 may calculate the erase frequency only for the block with the largest number of erases. The erase frequency calculation unit 110 outputs the calculated erase frequency of the block to the warning unit 120.
[0023] The warning unit 120 is realized by the CPU 11 included in the writing monitoring device 1 shown in FIG. 1 executing a system program read from the ROM 12, and mainly performing calculation processing by the CPU 11 using the RAM 13 and the nonvolatile memory 14, and output processing using the interface 18. The warning unit 120 compares the erasure frequency at each predetermined monitoring interval input from the erasure frequency calculation unit 110 with a predetermined upper limit value previously set for each monitoring interval, and outputs a warning when the upper limit value is exceeded. The warning unit 120 may display a warning on the display device 70, such as "The erasure frequency per minute at xx:xx in the nonvolatile memory 14 exceeds xx. Please check the operation status of the application at that time." Also, the warning may be output by a warning lamp or warning sound (not shown). The warning unit 120 may transmit and output a warning to a management computer such as the fog computer 6 or the cloud server 7 via the network 5.
[0024] The warning unit 120 may compare the erasure frequency at each monitoring interval, but may also compare the erasure frequency while narrowing down the monitoring interval in stages. Fig. 3 is a flowchart showing an example of a schematic operation of the writing monitoring device 1 according to this embodiment. In the operation example of Fig. 3, the monitoring intervals are set to 1 hour, 1 minute, and 1 second, and the erasure frequency is judged while narrowing down the monitoring intervals in order from the longest. The upper limit of the number of erasures at each monitoring interval is preset.
[0025] The erase count acquiring unit 100 acquires the erase count for each block from the non-volatile memory 14 at each predetermined operation cycle, and stores the erase count in the erase count storage unit 200 as a history. The erase frequency calculation unit 110 refers to the erase count storage unit 200 and calculates the number of erases of each block per hour (step SA02). Next, the warning unit 120 judges whether or not there is a time period in which the upper limit of the number of erases per hour is exceeded (step SA03). If there is a time period in which the upper limit of the number of erases per hour is exceeded, the erase frequency calculation unit 110 calculates the number of erases of each block per minute in that time period (step SA05). Next, the warning unit 120 judges whether or not there is a minute period in which the upper limit of the number of erases per minute is exceeded (step SA06). If there is a minute period in which the upper limit of the number of erases per minute is exceeded, the erase frequency calculation unit 110 further calculates the number of erases of each block per second in that minute period (step SA07). Then, the warning unit 120 judges whether or not there is a second period in which the upper limit of the number of erases per second is exceeded (step SA08). If there is a second interval in which the upper limit of the number of erasures per second is exceeded, the warning unit 120 outputs a warning (step SA09). If the upper limit is not exceeded in any monitoring interval, the warning unit 120 ends the operation without outputting a warning (step SA04).
[0026] The write monitoring device 1 according to the present embodiment, which is configured as described above, warns the operator that there is a time when writing is being performed abnormally frequently on the semiconductor storage. Therefore, the operator can understand at what point the lifespan of the semiconductor storage is rapidly shortening, and can take measures such as identifying the application causing the problem. In addition, as illustrated in Fig. 3, by determining the erase frequency while narrowing down the possibilities by setting a monitoring interval in stages, it becomes unnecessary to calculate the number of block erases in all minute and second intervals, and therefore the load of the erase frequency calculation process can be reduced.
[0027] 4 is a schematic block diagram showing functions of the writing monitoring device 1 according to the second embodiment of the present invention. Each function of the writing monitoring device 1 according to this embodiment is realized by the CPU 11 of the writing monitoring device 1 shown in FIG. 1 executing a system program and controlling the operation of each part of the writing monitoring device 1.
[0028] The writing monitoring device 1 of this embodiment further includes an application management unit 130 in addition to the functions of the writing monitoring device 1 according to the first embodiment. The application management unit 130 is realized by the CPU 11 included in the writing monitoring device 1 shown in FIG. 1 executing a system program read from the ROM 12, and the CPU 11 mainly performing arithmetic processing using the RAM 13 and the non-volatile memory 14. The application management unit 130 manages the operation status of applications running on the writing monitoring device 1. The application management unit 130 manages, for example, the operation start time and operation end time, continuous operation time, active state, etc. of each application. The application management unit 130 may manage the operation status of the application by referring to the log file, etc. of each application. The application management unit 130 may manage the operation status of the application by using a task management function, etc. of the OS (Operating System) of the writing monitoring device 1.
[0029] When the warning unit 120 according to the present embodiment receives information from the erase frequency calculation unit 110 that the erase frequency for each block of the non-volatile memory 14 during a predetermined monitoring interval has exceeded a predetermined threshold, the warning unit 120 acquires information on the application managed by the application management unit 130 and identifies the application that is running at that time. Then, the warning unit 120 outputs a warning together with the information on the identified application when there are multiple applications running at the time the warning is issued. In addition, as in the flowchart shown in FIG. 3, when the erase frequency is determined so as to narrow down the monitoring interval in stages, the warning unit 120 may output a warning together with information on the application that was running during the monitoring interval that exceeded the upper limit. In the case where the active state of the application can be acquired, the warning unit 120 may output a warning together with information on the application that was active at the time the warning was issued. In addition, the warning unit 120 may display a graph showing the progress of the erase count based on the history of the erase count stored in the erase count storage unit 200, and display the applications that were running at each time alongside the graph.
[0030] The write monitoring device 1 according to the present embodiment, which has the above configuration, warns an operator that writing is being performed abnormally frequently to the semiconductor storage, and outputs information on the application that is running at that time. This allows the operator to know that the lifespan of the semiconductor storage is rapidly shortening, and also allows the operator to take measures such as identifying the application that is causing the problem from among the applications that were running during the monitoring interval.
[0031] Although one embodiment of the present invention has been described above, the present invention is not limited to the above-described embodiment, and can be embodied in various forms by making appropriate modifications. [Explanation of symbols]
[0032] 1. Writing monitoring device 3. Control device 5. Network 6. Fog Computer 7. Cloud Server 11 CPU 12 ROM 13 RAM 14 Non-volatile memory 15,18,19,20,21 Interface 22 Bus 70 Display device 71 Input Devices 72 External equipment 100 Number of erasures acquired 110 Deletion frequency calculation unit 120 Warning section 130 Application Management Department 200 Erase count memory section
Claims
1. A write monitoring device for a semiconductor storage, comprising: an erase count acquisition unit that acquires an erase count for each block of the semiconductor storage; an erase frequency calculation unit that calculates an erase frequency of the blocks of the semiconductor storage for each of a plurality of monitoring intervals based on the erase count for each block of the semiconductor storage acquired by the erase count acquisition unit; a warning unit that compares the erasure frequency calculated by the erasure frequency calculation unit with a predetermined upper limit value at each of the plurality of monitoring intervals, and outputs a warning when the upper limit value is exceeded; A writing monitoring device comprising:
2. the warning unit compares the deletion frequency with a predetermined upper limit value while narrowing down the deletion frequency in ascending order of the monitoring interval; The writing monitoring device according to claim 1 .
3. An application management unit that manages an operating state of an application is further provided, When outputting the warning, the warning unit outputs information about an application that was operating when the erasure frequency exceeded an upper limit value. The writing monitoring device according to claim 1 .
4. A write monitoring method by a write monitoring device for a semiconductor storage, comprising: A first step of acquiring the number of erase operations for each block of the semiconductor storage; a second step of calculating an erase frequency of the blocks of the semiconductor storage for each of a plurality of monitoring intervals based on the number of erases of each block of the semiconductor storage acquired in the first step; a third step of comparing the frequency of erasing blocks of the semiconductor storage calculated in the second step with a predetermined upper limit value for each of the plurality of monitoring intervals, and outputting a warning when the frequency of erasing blocks exceeds the upper limit value; A write monitoring method comprising:
Citation Information
Patent Citations
Memory and method for controlling memory
JP1999250675A
Access frequency evaluation system and access frequency evaluation method
JP2007328620A
Information apparatus equipped with flash memory
JP2009037630A
Systems, methods, and computer program products that delay operations that shorten the lifespan of memory.
JP2010511225A
Memory system
JP2011070346A