Method for operating a storage device

By introducing input units, output units, main memory and memory into the storage device and performing backup operations, the problem of data loss when the storage device is disconnected from the server module is solved, and the secure backup of data and the size reduction of the storage device is realized. Small.

CN111143118BActive Publication Date: 2025-02-25SAMSUNG ELECTRONICS CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN201910801519.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-11-01
Filing Date
2019-08-28
Publication Date
2025-02-25
Estimated Expiration
2039-08-28

AI Technical Summary

Technical Problem

When the storage device is disconnected from the server module, there is a possibility of data loss, especially if the data cannot be fully backed up before disconnection.

Method used

A storage device is designed, the device including an input unit, an output unit, a main memory and a memory. By entering commands by the user, the controller performs a backup operation, transmits data in the main memory to the nonvolatile memory, and provides an operation status indication through the output unit to ensure that the data is safely backed up before disconnection.

Benefits of technology

It effectively avoids data loss when the storage device is disconnected from the server module, ensures data integrity and security, and reduces the physical size of the storage device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111143118B_ABST
    Figure CN111143118B_ABST
Patent Text Reader

Abstract

A method for operating a storage device is provided. A storage device configured to be connected to a host comprises: an output unit configured to provide at least one storage device operation status indication to a user; an input unit configured to accept at least one user input; a main memory configured to temporarily store data received from the host; a memory configured to store the data in a non-volatile memory space; and a controller configured to perform a backup operation in response to the user input accepted by the input unit, transfer data from the main memory to the memory during the backup operation, and provide the storage device operation status indication through the output unit during the execution of the backup operation.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application claims the priority benefit of Korean Patent Application No. 10-2018-0132681 filed on November 1, 2018, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein by reference in its entirety. Technical Field

[0002] The inventive concept relates to a storage device configured to be connected to and operate with a host device such as a server. The inventive concept also relates to a method of operating the storage device configured to be connected to and operate with a host device such as a server. Background Art

[0003] The server providing various services may include one or more server modules connected to one or more storage devices, respectively. According to the needs, the storage device can be connected to the server module or disconnected from the server module.

[0004] However, disconnecting the storage device from the server module (under fault conditions or when the storage device is operating in a specific state) creates the possibility of losing data. Recognizing that the storage device must be periodically disconnected from the server module for maintenance, the inherent possibility of losing data during the disconnection must be addressed. Summary of the invention

[0005] One aspect of the inventive concept provides a storage device configured to be connected to a host. The storage device includes: an output unit configured to provide at least one storage device operation status indication to a user; an input unit configured to accept at least one user input; a main memory configured to temporarily store data received from the host; a memory configured to store data in a non-volatile memory space; and a controller configured to perform a backup operation in response to the user input accepted by the input unit, transfer data from the main memory to the memory during the backup operation, and provide the storage device operation status indication through the output unit during the execution of the backup operation.

[0006] Another aspect of the inventive concept provides a method for operating a storage device configured to be connected to a host. The method includes: receiving data from the host and temporarily storing the data in a main memory; receiving a user input through an input unit; performing a backup operation in response to the user input, wherein the data temporarily stored in the main memory is transferred to a non-volatile memory provided by the memory during the backup operation; and providing a storage device operation status indication to a user through an output unit during the execution of the backup operation.

[0007] Another aspect of the inventive concept provides a method for operating a storage device configured to be connected to a host that operates continuously. The method includes: determining whether an input command is received through an input unit when the storage device is connected to the host, and performing a normal operation of communicating data from the host and temporarily storing the data in a main memory of the storage device; when it is determined that the input command is received, performing a backup operation during the transfer of the data temporarily stored in the main memory of the storage device to a non-volatile memory space provided by the memory; and providing a backup operation progress indication through an output unit during at least a portion of the execution of the backup operation.

[0008] Another aspect of the inventive concept provides a method for operating a storage device configured to be connected to a host that operates continuously. The method includes: determining whether an input command is received through an input unit when the storage device is connected to the host, and performing a normal operation of communicating data from the host and temporarily storing the data in a main memory of the storage device; when it is determined that the input command is received, further determining whether the storage device is communicating with the host, if the storage device is communicating with the host, performing a backup operation, and providing a backup operation progress indication through an output unit, otherwise if the storage device is not communicating with the host, determining whether a background operation is being performed, and if the background operation is being performed, completing the execution of the background operation, and providing a background operation progress indication through the output unit, otherwise if the background operation is not being performed, performing a recovery operation, and providing a recovery operation progress indication through the output unit. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] The above and other aspects, features and advantages of the present disclosure will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:

[0010] Figure 1 and Figure 2 are respective left / right perspective views of a storage device according to an embodiment of the inventive concept;

[0011] Figure 3 is a block diagram further illustrating the operation of a storage device according to an embodiment of the inventive concept;

[0012] Figure 4 is with Figure 1 , Figure 2 and Figure 3 Comparative examples of storage devices described in the related art;

[0013] Figure 5 is a block diagram of a memory that may be included in a storage device according to an embodiment of the inventive concept;

[0014] Figure 6is a perspective view showing a server to which a storage device according to an embodiment of the inventive concept may be connected;

[0015] Figure 7 and Figure 8 are various diagrams further illustrating possible connections between a server and a storage device according to an embodiment of the inventive concept;

[0016] Fig. 9 and Fig.10 are various flow charts further illustrating the operation of a storage device according to an embodiment of the inventive concept; and

[0017] Fig.11A , Fig. 11B , Fig. 12A and Fig. 12B are various diagrams illustrating possible connections of a storage device according to an embodiment of the inventive concept. DETAILED DESCRIPTION

[0018] Hereinafter, embodiments of the inventive concept will be described with reference to the accompanying drawings.

[0019] Figure 1 and Figure 2 1 and 2 are respective left / right perspective views of a storage device 10 according to an embodiment of the inventive concept.

[0020] Reference Figure 1 and Figure 2 , the storage device 10 is an external storage device that can be connected to an external interface of a host (not shown). In some embodiments, the storage device 10 can be a solid-state drive (SSD) device including a non-volatile memory. Various components of the storage device 10 can be physically mounted on the housing 11 and electrically connected to each other.

[0021] Figure 1 and Figure 2 The storage device 10 shown in the embodiment includes an interface 12 and an input unit 13 and an output unit 14, wherein the interface 12 provides a mechanical and / or electrical (hereinafter referred to as "mechanical / electrical") connection with a host. Here, the input unit 13 and the output unit 14 are physically separated from each other, wherein the output unit 14 is configured to provide one or more storage device operation status indications, and the input unit 13 is configured to accept (or receive) one or more user inputs. In this regard, the input unit 13 may include one or more mechanically activated elements, hereinafter referred to as "buttons", which can be manipulated by a user to create one or more user inputs. The output unit 14 may include one or more light emitting diodes (LEDs), for example, LEDs 15, 16, 17, and 18. However, the number and arrangement of the LEDs included in the storage device according to the embodiments of the present invention are a matter of design choice.

[0022] As will be described below in some additional detail, output unit 14 includes one or more LEDs that can be illuminated differently in recognizable patterns that are respectively associated with storage device operating states. Thus, the LEDs can be used to provide different, visually discernible indications of storage device operating states.

[0023] The interface 12 may include one or more ports adapted for mechanical / electrical connection to a host. In this regard, the host may have many different forms, but in some embodiments, the host to which the storage device 10 is connected via the interface 12 may be a server module. In some embodiments of the present inventive concept, the interface 12 may be disposed on a rearward-facing side surface of the storage device 10 opposite to the frontward-facing side surface of the storage device 10, wherein the input unit 13 and the output unit 14 may be disposed together on the frontward-facing side surface of the storage device 10. In this context, the term "frontward-facing" refers to a side surface of the storage device 100 close to a user, while the term "rearward-facing" refers to a side surface close to the host.

[0024] Once the host and the storage device 10 are connected, a predetermined input command may be generated in response to activation of a button included in the input unit 13. In response to the input command, the controller of the storage device 10 may temporarily store data communicated from the host via the interface 12. In this regard, the data may initially be stored in a main memory (i.e., including one or more volatile memory devices, such as dynamic random access memory (DRAM), synchronous RAM (SRAM), etc.) that provides relatively high-speed, volatile data storage.

[0025] When data is temporarily stored in whole or in part in the main memory, the data may be communicated (or transferred) from the main memory to the memory providing non-volatile data storage in response to an input command. During the temporary storage of data in the main memory and / or the transfer of data to the memory, the controller may activate one or more LEDs of the output unit 14 to visually indicate the progress of the data storage operation. For example, the controller may activate LEDs 15 to 18 differently according to different modes (e.g., a first LED mode may indicate that data is stored in the memory, a second LED mode may indicate that the storage device 10 is waiting for data from the host, a third LED mode may indicate that the data storage operation is completed, etc.) according to the status of the data storage operation.

[0026] Therefore, the controller may turn on the first LED 15 during the data storage operation, and once the data storage operation is completed, the controller may turn off the first LED 15. In this way, the user can easily recognize the current operating state of the storage device 10 by visually inquiring the LED of the output unit 14.

[0027] The controller may operate LEDs 15 to 18 of the output unit 14 independently or collectively according to a specific operating mode of the storage device 10 , the progress (or status) of an ongoing data storage operation, the receipt of an input command, or the like.

[0028] For example, when the storage device 10 is communicating (i.e., sending and / or receiving) data with the host after receiving an input command, the controller may operate the LEDs 15 to 18 in a first mode. When the storage device 10 is performing background operations, the controller may operate the LEDs 15 to 18 in a second mode. Here, the term "background operation" is generally used to refer to one or more operations that can be performed by the storage device 10 itself without necessarily involving the host. Background operations may include specific internal operations performed in response to software and / or firmware resident in the storage device 10.

[0029] Once the storage device 10 is connected to the host via the interface 12, one or more data storage operations may be performed. The data storage operations may take many different forms, but will generally involve the communication of data from the host (e.g., a server) to the storage device 10, temporary storage of the communicated data in a volatile memory space (e.g., main memory) provided by the storage device 10, and subsequent transfer (or programming) of the temporarily stored data to a non-volatile memory space (e.g., memory) provided by the storage device 10. Here, data may be communicated in various ways between these system elements.

[0030] exist Figure 1 and Figure 2 In the embodiment shown in FIG, the input unit 13 and the output unit 14 are provided together on the other side surface of the housing 11 opposite to the one side surface including the interface 12. With this configuration, the user can activate the button on the input unit 13 while visualizing the LED of the output unit 14.

[0031] Figure 3 and Figure 4 are various block diagrams further illustrating operations of the memory devices 100 and 300 according to embodiments of the inventive concept.

[0032] Reference Figure 3 , the storage device 100 is an external storage device connected to the host 200. The storage device 100 may include an input unit 110, an output unit 120, a memory 130, an interface 140, a controller 150, and a main memory 160, wherein the input unit 110, the output unit 120, the memory 130, the interface 140, the controller 150, and the main memory 160 communicate data, address information, and / or commands via a bus 170.

[0033] The interface 140 of the storage device 100 may be connected to a host controller interface (HCI) 210 of the host 200 .

[0034] In one example, the host 200 is a server that operates continuously without downtime or power interruption. That is, the host 200 may be connected to a continuous backup or self-generating device to eliminate unplanned interrupted operation. In such a continuous operation environment of the host 200, the storage device 100 must be able to routinely connect to the host 200 and / or be able to disconnect from the host 200 in a manner that does not interrupt the operation of the host 200. However, as the storage device 100 is disconnected from the host 200, data temporarily stored in the main memory 160 but not yet transferred (or copied) to the memory 130 may be inadvertently lost.

[0035] To avoid this possibility, certain embodiments of the inventive concept allow a user who desires to disconnect the storage device 100 from the host 200 to visually inquire about the status of the storage device 100 before disconnecting the storage device 100 from the host 200. That is, the user can press a button on the input unit 110 and confirm the status or progress of the data storage operation being performed by the storage device 100 by visualizing the output unit 120. After confirming that all ongoing data storage operations are actually completed (i.e., all data previously communicated from the host 200 are securely stored in the non-volatile memory provided by the memory 130), the user can confidently disconnect the storage device 100 from the host 200.

[0036] Reference Figure 4 , the storage device 300 may include a power failure protection (PLP) circuit 310, a capacitor module 320, a memory 330, an interface 340, a controller 350, and a main memory 360. The respective operations of the memory 330, the interface 340, the controller 350, and the main memory 360 may be the same as those previously described with reference to Figure 3 The operations described for the memory 130 , the interface 140 , the controller 150 , and the main memory 160 are similar.

[0037] in this regard, Figure 4 The storage device 300 shown in FIG. 3 may be understood as a comparative example considered for embodiments of the present inventive concept. In particular, Figure 4 The storage device 300 includes a PLP circuit 310 and a capacitor module 320, wherein the PLP circuit 310 can be used to charge a capacitor included in the capacitor module 320 when the storage device 300 is electrically connected to the host 200. The capacitor module 320 may include an electrolytic capacitor, a tantalum dielectric capacitor, and the like.

[0038] Given this comparative configuration, when the storage device 300 is disconnected from the host 200 during the continuous operation of the host 200, the capacitor module 320 charged by the PLP circuit 310 can be used as a power source for limited operation of the storage device 300. Therefore, after the storage device 300 is disconnected from the host 200, the storage device 300 can operate for a limited period of time using the power supplied by the capacitor module 320. Therefore, during this limited period of time, data temporarily stored in a data buffer associated with the interface 340 and / or data temporarily stored in the main memory 360 can be backed up, thereby avoiding data loss due to the disconnection of the storage device 300 from the host 200.

[0039] In order to connect as many storage devices 300 as possible to a plurality of server modules included in a server such as the host 200, it may be important to reduce the size of the storage device 300. However, since the storage device 300 must include the large-capacity capacitor module 320, certain physical size parameters of the storage device 300 become inevitable. As a result, the number of storage devices 300 that can be connected to the host 200 is disadvantageously limited.

[0040] In contrast, embodiments of the present invention (such as, Figure 3 The storage device 100 of the embodiment of the present invention can ensure that the data storage operation is completed before the storage device 100 is disconnected from the host 200. For example, in one method, user activation of a button on the input unit 110 of the storage device 100 can cause a specific backup operation to be performed, thereby transferring data stored in a volatile memory space (e.g., a buffer associated with the interface 140, the main memory 160) to a non-volatile memory space (e.g., the memory 130). After visually querying the output unit 120 to confirm the completion of the ongoing data storage operation and / or the completion of the backup operation, the user can safely disconnect the storage device 100 from the host 200. Thus, a disproportionate volume of the physical space required by the storage device 300 is occupied. Figure 4 The PLP circuit 310 and the capacitor module 320 may be completely omitted or may be greatly reduced in size with respect to the storage device 100. As a result, a greater number of storage devices 100 may be connected to the host 200 to improve the operating performance of the host 200.

[0041] Figure 5 According to the embodiment of the present invention, Figure 3 The memory 130 of the storage device 100 is a block diagram of a memory 330 included in the memory 130.

[0042] Reference Figure 5, the memory 330 may include a memory cell array 331 and a memory controller, wherein the memory controller includes a decoder circuit 332 , a read / write circuit 333 , and a control logic 334 .

[0043] The memory cell array 331 may include a plurality of nonvolatile memory cells. In some embodiments, at least some of the memory cells may be arranged and connected in memory cell strings. The memory cell array 331 may include a plurality of memory cell strings, and the plurality of memory cell strings may be divided into a plurality of blocks.

[0044] In some embodiments, the decoder circuit 332 may be connected to the memory cell via a word line WL, a string selection line SSL, a ground selection line GSL, etc. The read / write circuit 333 may be connected to the memory cell via a bit line BL. In example embodiments, the decoder circuit 332 may select a memory cell into which data is to be written or from which data is to be read, and may receive address information for selecting the memory cell.

[0045] The read / write circuit 333 may write data to or read data from a memory cell. The read / write circuit 333 includes a plurality of page buffers. Each of the plurality of page buffers may be connected to at least one bit line BL. Operations of the decoder circuit 332 and the read / write circuit 333 may be controlled by a control logic 334. The control logic 334 may control the decoder circuit 332 and the read / write circuit 333 in response to a command CMD sent externally.

[0046] At least some of the memory cells included in the memory cell array 331 are nonvolatile memory cells. In some embodiments of the inventive concept, when the memory cells included in the memory cell array 331 are nonvolatile memory cells, Figure 3 When a button in the input unit 110 of the storage device 100 is activated, the controller 150 may cause various data stored (or buffered) in a volatile memory space (e.g., the main memory 160 or a buffer associated with the interface 140) to be transferred to the memory 330 to prevent the loss of such data when the storage device 100 is disconnected from the continuously operating host 200.

[0047] Figure 6 is a perspective view illustrating a server 400 that may include one or more storage devices according to an embodiment of the inventive concept.

[0048] Reference Figure 6 , the server 400 includes a plurality of unit servers 410, 420, 430, and 440. The unit servers 410 to 440 respectively include base frames 411 to 441 and server modules 415 to 445 installed in the base frames 411 to 441. For example, the base frames 411 to 441 may be cabinet-type racks in which the server modules 415 to 445 may be stacked and installed.

[0049] The server modules 415 to 445 may be mounted in the base frames 411 to 441 and may have a size defined according to a predetermined standard. For example, each of the server modules 415 to 445 may have a height defined in units of 1U, where 1U has a length of 1.75 inches. At least some of the server modules 415 to 445 may have heights different from each other. Interconnections for power supply, network, etc. may be connected to at least one of the front and rear surfaces of the server modules 415 to 445.

[0050] According to various needs, the storage device may be externally connected to the server modules 415 to 445. The storage device externally connected to the server modules 441 to 445 may be an SSD device, and may exchange data with the server modules 441 to 445 through a predetermined interface. The interface of the storage device may be provided on a surface of the storage device having a short axis to connect a large number of storage devices to the server modules 441 to 445.

[0051] It is necessary to reduce the size of the storage device in order to connect as many storage devices as possible to the server modules 441 to 445. In order to prevent data loss that may occur when the storage device is disconnected from the server modules 441 to 445 while the server 400 is continuously operating, a capacitor module may be included in the storage device to supply power for a predetermined time after the storage device is disconnected from the server modules 441 to 445. However, as described above, since the capacitor module includes an element having a relatively large size, it may be difficult to reduce the size of the storage device.

[0052] In certain embodiments of the present inventive concept, in order to solve the above problems, the capacitor module does not need to be included in the storage device. Instead, the storage device may be provided with an input unit having a button and an output unit having an LED that provides a visual status indication for an ongoing data storage operation and / or backup operation, so that the storage device can be safely disconnected from the server 400 even during the continuous operation of the server 400. Since the input unit and the output unit can be implemented in a relatively small size compared to the capacitor module and the PLP circuit, the overall size of the storage device can be reduced.

[0053] Figure 7 and Figure 8 Connection structures between a server and a storage device according to an embodiment of the inventive concept are respectively illustrated.

[0054] exist Figure 6 and Figure 7In the embodiment shown in , the unit server 410 may include a plurality of server modules 415 mounted on a base frame 411. The height of each server module 415 may be 1U. The interface may be provided on a surface of the storage device 500 having a short axis B instead of a long axis A to connect as many storage devices 500 as possible to each server module 415.

[0055] Reference Figure 8 The unit server 450 includes a base frame 451 and a server module 455. The height of each server module 455 may be 2U or more. Figure 7 Unlike the embodiment shown in Figure 8 In the embodiment shown in FIG. 4 , the storage device 500 can be connected to the unit server 450 in an upright manner. Figure 7 Similar to the embodiment shown in Figure 8 In the embodiment shown in , the interface of each storage device 500 can be placed on a surface having a short axis B instead of a long axis A.

[0056] Fig. 9 and Fig.10 are various flow charts illustrating operations of a memory device according to an embodiment of the inventive concept.

[0057] Reference Figure 1 , Figure 2 , Figure 3 and Fig. 9 , a method of operating a storage device (such as the exemplary storage devices 10 and 100 previously described in the aforementioned embodiments), assuming that the storage device 100 is initially connected to a host 200 (e.g., a server) (S10). It is further assumed that, consistent with the aforementioned embodiments, the host 200 operates continuously without an unplanned power interruption. Here, the mechanical / electrical connection between the storage device 100 and the host 200 may be made through or by means of an interface 140. In certain embodiments of the present inventive concept, the interface 140 of the storage device 100 may be disposed on a side surface of a housing extending along a short axis of the storage device 100 so that the host 200 can effectively connect as many storage devices 100 as possible.

[0058] In the case where the storage device is connected to the host 200 via the interface 140 and operates normally, the controller 150 of the storage device 100 may determine (or detect) when an input command is received (S11). Here, the term "input command" may be any identifiable control signal (electrical, optical, or mechanical) generated by the storage device 100 in response to an input received through the input unit 110. For example, one type of input command may be an electrical signal generated in response to a user pressing a button associated with the input unit 110. As previously described, one or more buttons may be conveniently provided on a user-accessible housing side surface of the storage device 100 with respect to the input unit 110. As long as no input command is received (S11: No), the storage device 100 may continue to operate and communicate data with the host 200.

[0059] However, when an input command is received (S11: Yes), the controller 150 may cause the storage device 100 to perform (or implement) a backup operation (S12). During the execution of the backup operation (until all data has been safely stored in the non-volatile memory space of the storage device 100), the output unit 120 may provide a backup operation progress indication (S13). After the backup operation is completed, the storage device 100 may be disconnected from the host 200 without the risk of data loss (S14).

[0060] In the aforementioned method, the backup operation may be configured differently according to the design and operation requirements of the host 200 and the storage device 100. For example, the backup operation may include at least: (1) transferring (e.g., copying) data stored in a buffer associated with the interface 140 to a non-volatile memory space provided by the memory 130; and (2) transferring data temporarily stored in the main memory 160 to a non-volatile memory space provided by the memory 130. In this context, the term "non-volatile memory space" means providing and using one or more types of data storage media capable of storing data in a non-volatile manner (i.e., data storage media capable of retaining stored data without the application of power) (e.g., NAND flash memory). Conversely, the term "volatile memory space" means providing and using one or more types of data storage media that cannot reliably store data in a non-volatile manner (e.g., DRAM, SRAM, etc.).

[0061] As previously described, the output unit 120 of the storage device 100 can be used to continuously provide operational information about the status of the storage device 100. Such operational information can take many different forms, but may include specific indications (e.g., LED status) that are visually recognizable by the user. At least during the execution of the backup operation (S12), the controller 150 can use the output unit 120 to output a backup operation progress indication. For example, the controller 150 can cause the output unit 120 to display a second LED activation pattern (e.g., flashing the LED), and the second LED activation pattern indicates that the backup operation is being performed. In contrast, during normal connection and operation of the storage device 100 and the host 200 (i.e., during the execution of a "normal" data communication operation between the storage device 100 and the host 200, as opposed to the special execution of the backup operation, background operation, and / or recovery operation), the controller 150 can cause the output unit 120 to display a first LED activation pattern indicating normal operation.

[0062] Those skilled in the art will recognize that a variety of "indications" can be used by the output unit 120 to effectively inform the user of the operating status of the storage device 100 and / or the host 200. One or more LEDs can be used to provide visual indications. In this regard, the LEDs can be multi-colored and / or arranged differently. Alternatively or additionally, audio or tactile functions can be used by the output unit 120 to further inform the user of the operating status of the storage device 100 and / or the host 200.

[0063] Regardless of the specific nature of the indication provided by the output unit 120, the user can confidently disconnect the storage device 100 from the host 200 without worrying about losing data by appropriately querying the indication. Therefore, in certain embodiments of the present inventive concept, the user can visually query the display pattern of one or more LEDs provided by the output unit 120 to determine the status, execution progress, and / or completion status of the backup operation.

[0064] Reference Figure 1 , Figure 2 , Figure 3 and Fig.10, another method of operating the storage device 100 according to an embodiment of the inventive concept again assumes that the storage device 100 is properly connected to the host 200 that is continuously operating (S101). Similarly, the controller 150 determines when an input command is received (S102). When it is determined that the input command has been received (S102: Yes), the controller 150 further determines whether the storage device 100 is currently communicating with the host 200 (S103) (i.e., whether the storage device 100 is communicating data with the host 200). For example, this further determination may be made by causing the controller 150 to inquire about the state of the interface 140 (e.g., checking a registry value designated as indicating the state of the interface 140). In certain embodiments of the inventive concept, the interface 140 may be a peripheral component interconnect express (PCI Express) interface, and therefore, the controller 150 may determine whether data communication between the host 200 and the storage device 100 is ongoing based on the state of a PCI reset field (PERST) value among a set of conventionally understood registry values. Alternatively, the interface 140 may be a Serial Advanced Technology Attachment (SATA) interface, and thus the controller 150 may determine whether data communication between the host 200 and the storage device 100 is in progress based on a power disable (PWRDIS) value.

[0065] When it is determined that the host 200 and the storage device 100 are communicating (S103: Yes), the controller 150 may cause the storage device 100 to perform (or implement) a backup operation (S107). As previously described, the backup operation may be used to transfer data stored in the volatile memory space of the storage device to a non-volatile memory space, such as a non-volatile memory space provided by the memory 130. Same or similar to the above description, during the execution of the backup operation, the output unit 120 of the storage device 100 may be used to provide a backup operation progress indication (S108). Once the backup operation is completed and the output unit 120 accordingly indicates that the backup operation is completed, the storage device 100 may be safely disconnected from the host 200 (S109).

[0066] However, if the controller determines that the host 200 and the storage device 100 are not currently communicating (S103: No), the controller 150 may further determine whether a background operation is currently being performed (S104) (i.e., whether the background operation is in progress). As will be appreciated by those skilled in the art, various background operations may be routinely performed during normal connection and operation of the storage device 100 and the host 200. For example, during an idle period in data communication between the storage device 100 and the host 200, a specific background operation may be performed by firmware.

[0067] When it is determined that the background operation is in progress (S104: Yes), the controller 150 may provide a background operation progress indication (S105). The background operation progress indication may be different from or the same as the backup operation progress indication. In this regard, the controller 150 may monitor the execution of the background operation until the background operation is completed while continuously providing the background operation progress indication (S106). Once the background operation is completed (S106: Yes), the controller 150 may cause the storage device 100 to perform the backup operation (S107).

[0068] However, when the controller 150 determines that the background operation is not in progress (S104: No) after previously determining that the storage device 100 is not currently communicating with the host 200 (S103: No), the controller 150 may cause the storage device 100 to perform a recovery operation associated with one or more abnormal operating states (S110). During the execution of the recovery operation, the controller 150 may provide a recovery operation progress indication using the output unit 120 (S111). For example, while executing the recovery operation, the controller 150 may store debugging information in the form of a log file or the like in the memory 130 or elsewhere, and may restart the storage device 100 after the recovery operation is completed.

[0069] In the above example, the backup operation progress indication, the background operation progress indication, and the restore operation progress indication may be different or the same LED patterns generated by the operation of the output unit 120 .

[0070] Fig.11A , Fig. 11B , Fig. 12A and Fig. 12B are various diagrams further illustrating a method of operation of a memory device according to an embodiment of the inventive concept.

[0071] Reference Fig.11A , a user may press a button 703 associated with a storage device 700 connected to the host server module 600. The storage device 700 may include a button 703 mounted on a side surface of a housing 701 of the storage device 700 that faces forward (i.e., faces the front of the user) and an LED 704. Here, user activation of the button 703 is interpreted by a controller of the storage device 700 as an input command to start execution of a backup operation.

[0072] In this regard, normal connection and operation of the storage device 700 may be indicated by constant illumination of the LED 704 (i.e., a first storage device operating state indication), while execution of a backup operation of the storage device 700 (following user activation of the button 703) may be indicated by flashing or blinking illumination of the LED 704 (i.e., a second storage device operating state indication or backup operation progress indication). Once the backup operation is complete, the controller returns the LED 704 to the first storage device operating state indication, or changes the LED 704 output to a third storage device operating state indication (e.g., non-illumination).

[0073] However, the completion of the backup operation is indicated by the storage device 700, and the user can confidently disconnect the storage device 700 from the host server module 600 without worrying about losing data by simply asking (e.g., viewing) the lighting status of the LED 704. Fig. 11B .

[0074] In this way, possible data loss due to uncontrolled or unclear state disconnection of storage device 700 from host server module 600 can be avoided without complex and expensive power failure protection functions, such as those associated with capacitor modules. This approach can also reduce the physical size of storage device 700.

[0075] Now refer to Fig. 12A and Fig. 12B , presents in many aspects the same Fig.11A and Fig. 11B An alternative operating method of the storage device 710 is similar to the storage device 700 .

[0076] here, Fig.11A and Fig. 11B The single LED 704 of the storage device 710 is replaced by a plurality of LEDs 714 (including discrete LEDs 715, 716, 717, and 718). Thus, when a user activates a button 713 disposed on a front-facing surface of a housing 711 of the storage device 710, the plurality of LEDs 714 may be variously illuminated to generate different mode indications: (for example) a first storage device operation status indication associated with normal connection and operation of the storage device 710; a second storage device operation status indication associated with a backup operation being performed by the storage device 710 or a backup operation progress indication; and a third storage device operation status indication associated with completion of the backup operation.

[0077] Refer to About Fig.10 The method described, Fig.11A and Fig. 11B A single LED 704 or Fig. 12A and Fig. 12BThe plurality of LEDs 714 may also be used to provide other storage device operating status indications, such as storage device operating status indications associated with background operations being performed, completion of background operations, performing recovery operations, and / or completion of recovery operations. The different LED indications may be transient or steady state in nature. Colored LEDs may be used to emphasize various storage device operating states.

[0078] As can be understood from the foregoing example embodiments, different operations can be performed by a storage device connected to a continuously operating host. One or more of these operations can be initiated by a user pressing a button. For example, when a button is pressed once, the storage device can cause a backup operation to be performed, and when the button is pressed twice or for a long time, it can cause a restore operation to be performed. Alternatively, the storage device can include multiple buttons, and one or more input commands can be generated in response to different operations of the multiple buttons.

[0079] As can be further understood from the aforementioned exemplary embodiments, the storage device connected to the server may include an input unit having a button and an output unit having an LED. When an input command is generated by pressing the button, the storage device may perform a backup operation to store data in a nonvolatile memory, and may output the status of the progress of the backup operation using the LED. By pressing the button and confirming the status of the progress of the background operation through the LED, the user can safely disconnect the storage device from the server after the backup operation is completed.

[0080] While example embodiments have been shown and described above, it will be apparent to those skilled in the art that modifications and variations may be made without departing from the scope of the inventive concept as defined by the appended claims.

Claims

1. A method of operating a storage device configured to be connected to a host, the method comprising: receiving data from a host and temporarily storing the data in a main memory; receiving user input via an input unit; performing a backup operation in response to determining that the user input is received and the storage device is communicating with the host, wherein data temporarily stored in the main memory is transferred to a non-volatile memory provided by the storage device during the backup operation; completing the background operation in response to determining that the user input was received, the storage device is not communicating with the host, and the storage device is performing the background operation; performing a restore operation in response to determining that the user input was received and the storage device is neither communicating with the host nor performing a background operation; and During execution of each of the backup operation, the background operation, and the restore operation, a storage device operation status indication is provided to a user through an output unit.

2. The method according to claim 1, wherein: The storage device includes an interface that provides a mechanical / electrical connection between the storage device and a host.

3. The method according to claim 2, wherein: The output unit and the input unit are disposed on a side surface of the storage device facing forward; as well as The interface is disposed on a rearwardly facing side surface of the storage device opposite the forwardly facing side surface.

4. The method according to claim 2, wherein: The interface is either Peripheral Component Interconnect Express or Serial Advanced Technology Attachment.

5. The method according to claim 2, further comprising: Data is transferred from a buffer associated with the interface to non-volatile storage provided by the memory during a backup operation.

6. The method according to claim 1, wherein: The output unit includes at least one light emitting diode, and during the execution of the backup operation, the step of providing the user with an indication of the operating status of the storage device through the output unit includes: A lighting pattern of the at least one light emitting diode corresponding to the execution of the backup operation is provided.

7. The method according to claim 6, wherein: The at least one light emitting diode includes a plurality of light emitting diodes, and at least two light emitting diodes among the plurality of light emitting diodes have different colors.

8. The method according to claim 1, wherein: The input unit includes at least one button.

9. A method of operating a storage device configured to be connected to a host that operates continuously, the method comprising: determining whether an input command is received through the input unit when the storage device is connected to the host, and performing a normal operation of communicating data from the host and temporarily storing the data in a main memory of the storage device; in response to determining that an input command is received while the storage device is performing a normal operation to perform a backup operation during which data temporarily stored in a main memory of the storage device is transferred to a nonvolatile memory space provided by the memory; completing the background operation in response to determining that the input command was received, the storage device is not performing a normal operation, and the storage device is performing a background operation; performing a recovery operation in response to determining that an input command is received and the storage device is neither performing a normal operation nor performing a background operation; providing, via the output unit, an indication of the progress of the backup operation during at least a portion of the execution of the backup operation; as well as A background operation indication is provided through the output unit during execution of the background operation and a resume operation indication is provided through the output unit during execution of the resume operation.

10. The method according to claim 9, further comprising: In response to the backup operation progress indication, the storage device is disconnected from the host.

11. The method according to claim 10, wherein: The storage device includes an interface providing mechanical / electrical connection between the storage device and the host, the output unit and the input unit are arranged on the front-facing side surface of the storage device, and the interface is arranged on the rear-facing side surface of the storage device opposite to the front-facing side surface.

12. The method according to claim 9, further comprising: Data is transferred from a buffer associated with the interface to non-volatile storage provided by the memory during a backup operation.

13. The method according to claim 9, wherein: The output unit includes at least one light emitting diode, and the step of providing an indication of the progress of the backup operation includes providing a lighting pattern of the at least one light emitting diode corresponding to the execution of the backup operation.

14. The method according to claim 13, wherein: The at least one light emitting diode includes a plurality of light emitting diodes, and at least two light emitting diodes among the plurality of light emitting diodes have different colors.

15. A method of operating a storage device configured to be connected to a host that operates continuously, the method comprising: determining whether an input command is received through the input unit when the storage device is connected to the host, and performing a normal operation of communicating data from the host and temporarily storing the data in a main memory of the storage device; When it is determined that the input command is received, further determining whether the storage device is communicating with the host; If the storage device is communicating with the host, a backup operation is performed and a progress indication of the backup operation is provided through the output unit; otherwise if the storage device is not communicating with the host, determining whether a background operation is being performed; as well as If the background operation is being executed, the execution of the background operation is completed and a background operation progress indication is provided through the output unit. Otherwise, if the background operation is not being executed, a recovery operation is performed and a recovery operation progress indication is provided through the output unit.

16. The method according to claim 15, wherein: The storage device includes an interface providing mechanical / electrical connection between the storage device and the host, the output unit and the input unit are arranged on the front-facing side surface of the storage device, and the interface is arranged on the rear-facing side surface of the storage device opposite to the front-facing side surface.

17. The method according to claim 16, further comprising: During the backup operation, data temporarily stored in the main memory is transferred to the non-volatile memory provided by the memory, and data is transferred from the buffer associated with the interface to the non-volatile memory provided by the memory.

18. The method according to claim 16, wherein: The output unit includes at least one light emitting diode, and the step of providing an indication of the progress of the backup operation includes providing a first lighting pattern of the at least one light emitting diode corresponding to the execution of the backup operation.

19. The method according to claim 18, wherein: The step of providing an indication of the progress of the background operation includes providing a second lighting pattern of the at least one light emitting diode that is different from the first lighting pattern, the second lighting pattern corresponding to the execution of the background operation.

20. The method according to claim 19, wherein: The step of providing an indication of the progress of the restore operation includes providing a third lighting pattern of the at least one light emitting diode that is different from the first lighting pattern and the second lighting pattern, the third lighting pattern corresponding to the execution of the restore operation.

Citation Information

Patent Citations

  • Frequency hopping in ofdma wireless networks

    KR1020180132681A

  • Storage device and system and data storage method

    CN104050108A

  • Evaluation method and evaluation system for semiconductor storage device

    US20090217111A1